網絡開關盒電路
發布時間:2007/9/8 0:00:00 訪問次數:502
網絡開關產品一般用大量FIFO從一個網絡終端到另一個終端開關轉換數據。在這類應用中采用雙FIFO更能節省板空間。
圖1示出網絡開關盒電路設計,從圖中可見是采用FIFO開關轉換任意輸入和輸出總線之間的數據。數據流是單向的。雙FIFO不僅僅用于緩沖數據,而且也用于控制中央數據存儲器的地址使用率。在圖1中,示出4個輸入通路和4個輸出通路,然而,其設計結構很容易擴展,以適應所希望的很多總線。用IDT公司728×1 FIFO設計的網絡開關盒具有開關轉換9位寬總線的能力,而用728×5的網絡開關盒具有開關轉換18位總線的能力。
用一個FIFO存儲體緩沖輸入數據,每一個輸入總線用一個FIFO(在圖1中,“源FIFO”用A、B、C、D表示)。另一個FIFO存儲體用于緩沖輸出數據,每個輸出總線用一個FIFO(在圖中,“終端FIFO”用1、2、3、4表示)。
SRAM數據存儲單元用于保持通過源FIFO已接收到的和正等待傳輸到終端FIFO的信息單元。例如,ATM信息單元一般由5字節報頭(包含地址信息)和48字節數據串構成。網絡開關盒將不同地處理這些單元。為了更有效地處理單元信息,SRAM可以劃分為報頭區和數據區。
“FreeAddress”FIFO保持跟蹤SRAM存儲體中空閑地址單元。
最后一個FIFO單元稱之為“Available Cell”,保持對SRAM所存單元的跟蹤,等待引導到終端FIFO。每個“Available Cell”FIFO支持一個輸出數據總線和為這種特定總線保持SRAM連接單元的地址。在圖1中,4個“Available Cell”FIFO用1、2、3、4標號。
微控制器監控開關盒狀態,分配地址和控制數據流向。
網絡開關功能為:在接收至少一個數據單元之后,源FIFO的可編程準滿()標志置位到低態。處理器周期性地檢查每個源FIFO的標志。一旦一個單元寫到源FIFO,則相關標志變低態指示數據有效。處理器從空閑地址FIFO獲得一個有效SRAM地址,然后從源FIFO讀單元并把它寫入所選空閑地址的SRAM中。一旦此過程完成,處理器便從SRAM存取單元的報頭并識別那一個終端FIFO所匯集的數據用于譯碼和更新報頭。然后,處理器把單元的SRAM地址寫入終端FIFO的相應Available Cell FIFO。
只要有足夠的空間可用于寄存數據的一個單元,終端FIFO的可編程準空()標志置位到低態。處理器周期性地檢查每個終端FIFO的標志。只要空間可用于一個終端FIFO,則有關標志就變低態。處理器從終端FIFO的相應Available Cell FIFO獲得一個地址并用它鎖定存儲在SRAM存儲器中的一個單元。最后,處理器把單元傳遞到適當的終端FIFO并把新空閑單元地址寫入Free Address FIFO。
網絡開關產品一般用大量FIFO從一個網絡終端到另一個終端開關轉換數據。在這類應用中采用雙FIFO更能節省板空間。
圖1示出網絡開關盒電路設計,從圖中可見是采用FIFO開關轉換任意輸入和輸出總線之間的數據。數據流是單向的。雙FIFO不僅僅用于緩沖數據,而且也用于控制中央數據存儲器的地址使用率。在圖1中,示出4個輸入通路和4個輸出通路,然而,其設計結構很容易擴展,以適應所希望的很多總線。用IDT公司728×1 FIFO設計的網絡開關盒具有開關轉換9位寬總線的能力,而用728×5的網絡開關盒具有開關轉換18位總線的能力。
用一個FIFO存儲體緩沖輸入數據,每一個輸入總線用一個FIFO(在圖1中,“源FIFO”用A、B、C、D表示)。另一個FIFO存儲體用于緩沖輸出數據,每個輸出總線用一個FIFO(在圖中,“終端FIFO”用1、2、3、4表示)。
SRAM數據存儲單元用于保持通過源FIFO已接收到的和正等待傳輸到終端FIFO的信息單元。例如,ATM信息單元一般由5字節報頭(包含地址信息)和48字節數據串構成。網絡開關盒將不同地處理這些單元。為了更有效地處理單元信息,SRAM可以劃分為報頭區和數據區。
“FreeAddress”FIFO保持跟蹤SRAM存儲體中空閑地址單元。
最后一個FIFO單元稱之為“Available Cell”,保持對SRAM所存單元的跟蹤,等待引導到終端FIFO。每個“Available Cell”FIFO支持一個輸出數據總線和為這種特定總線保持SRAM連接單元的地址。在圖1中,4個“Available Cell”FIFO用1、2、3、4標號。
微控制器監控開關盒狀態,分配地址和控制數據流向。
網絡開關功能為:在接收至少一個數據單元之后,源FIFO的可編程準滿()標志置位到低態。處理器周期性地檢查每個源FIFO的標志。一旦一個單元寫到源FIFO,則相關標志變低態指示數據有效。處理器從空閑地址FIFO獲得一個有效SRAM地址,然后從源FIFO讀單元并把它寫入所選空閑地址的SRAM中。一旦此過程完成,處理器便從SRAM存取單元的報頭并識別那一個終端FIFO所匯集的數據用于譯碼和更新報頭。然后,處理器把單元的SRAM地址寫入終端FIFO的相應Available Cell FIFO。
只要有足夠的空間可用于寄存數據的一個單元,終端FIFO的可編程準空()標志置位到低態。處理器周期性地檢查每個終端FIFO的標志。只要空間可用于一個終端FIFO,則有關標志就變低態。處理器從終端FIFO的相應Available Cell FIFO獲得一個地址并用它鎖定存儲在SRAM存儲器中的一個單元。最后,處理器把單元傳遞到適當的終端FIFO并把新空閑單元地址寫入Free Address FIFO。