一種基於fpga的atm信元交換裝置及方法
2023-06-06 22:09:56 1
專利名稱:一種基於fpga的atm信元交換裝置及方法
技術領域:
本發明涉及FPGA技術及ATM通信技術領域,具體來說是一種基於 FPGA實現的ATM信元交換方法及裝置。
背景技術:
異步傳輸模式(Asynchronous Transfer Mode, ATM)是一種包含傳輸、 組網和交換等技術內容的高速通信技術。ATM通信以固定長度信元(Cell) 作為復用與交換的基本單位,可以通過信元頭部虛擬信道標識(Virtual Channel Identifier, VCI)信息進行快速交換,延時很小。ATM信元長53 字節,其中5位元組用作信元頭,48位元組用作信息欄位。通過信元頭中的虛 擬信道標識來區分信元,ATM網絡利用這些標識通過高速交換機來中繼 數據。
以ATM串行組網的系統如圖1所示,系統由多個節點(110)通過 ATM網絡級聯方式構成,每個節點分配一個固定的VCI作為數據標識。 其中,節點(110) N接收來自節點N-l (110)的數據,將數據轉發給節 點(110)N+1,並發送自身數據給節點(110) N+l,數據流為單方向傳 輸。
通常,節點(110 )採用具有分段/重組(Segmentation And Reassembly, SAR)功能的處理器(120)實現節點數據信元發送,並通過UTOPIA接 口連接物理層晶片(140)。數據在網絡傳輸過程中,必須按照ATM協議 層次進行處理。其中,處理器(120)完成包括ATM層、AAL層、用戶 層的多層協議。隨著網絡數據帶寬的增加,要求處理器(120)性能不斷 增加,往往導致節點(110)數據傳輸帶寬受限,並且節點(110)的功耗 與尺寸也隨之增加,不利於系統進一步低功耗與小型化要求。
發明內容
為了克服採用處理器與物理層晶片直接連接帶來的節點數據帶寬低、 功耗與尺寸過大的問題和缺陷,本發明提供了 一種基於FPGA的ATM信元交換實現方法及裝置。
一種基於FPGA的ATM信元交換裝置,其特徵在於包括處理器和物 理層晶片以及一端與處理器相連,另一端與物理層晶片相連的FPGA。 所述的FPGA包括
UTOPIA主端控制器UTOPIA是採用異步傳輸沖莫式(ATM)的通用 測試及才喿作物理層4妄口 (Universal Test and Operations PHY Interface for ATM),而UTOPIA是其英文縮寫。
UTOPIA主端控制器通過UTOPIA接口用於完成物理層晶片與FPGA 內部的上行內存控制器、轉發內存控制器、下行內存控制器、VCI判斷模 塊的信號接口。
VCI判斷模塊用於對來自物理層晶片的ATM信元進行過濾操作, 並將結果通知UTOPIA從端控制器。 所述過濾操作為
1)通過FPGA晶片輸入信號設置或者FPGA預先設置VCI判斷模塊 的VCI值。
2 )如果ATM信元的信元頭所包含的VCI欄位與設置的VCI判斷模 塊的VCI值一致,則將該ATM信元保留在上行內存控制器的RAM單元 中,並將結果通知UTOPIA從端控制器。
如果ATM信元的信元頭所包含的VCI欄位與設置的VCI判斷模塊的 VCI值不 一致,則清除該ATM信元。
UTOPIA從端控制器用於完成處理器與FPGA內部的上行內存控制 器、下行內存控制器信號接口。
轉發內存控制器用於對來自物理層晶片的ATM信元進行緩存並將 來自物理層晶片的ATM信元轉發到物理層晶片。
包括
一接口子控制器,用於控制轉發內存控制器的RAM單元中的ATM 信元讀取與寫入操作;
若干RAM單元,用於轉發內存控制器中ATM信元的緩存。
上行內存控制器用於上行鏈路中來自物理層晶片的經VCI判斷模塊 判斷後保留的ATM信元的緩存和發送。
包括
5一接口子控制器,用於控制上行內存控制器的RAM單元中的ATM 信元讀取與寫入操作;
若千RAM單元,用於上行內存控制器中ATM信元的緩存。
下行內存控制器用於下行鏈路中來自處理器的ATM信元的緩存和 發送。
包括
一接口子控制器,用於控制下行內存控制器的RAM單元中的ATM 信元讀取與寫入才喿作;
若干RAM單元,用於下行內存控制器中ATM信元的緩存。
一種基於FPGA的ATM信元交換方法,包括FPGA完成處理器和物 理層晶片之間ATM信元的交換功能,其特徵在於FPGA預設ATM信元 的VCI值,判斷處理器和物理層晶片之間需要交換的ATM信元的傳輸類 型,根據不同的傳輸類型實施如下操作
當需要交換的ATM信元來自處理器時,FPGA將該ATM信元緩存後 轉發給物理層晶片;
當需要交換的ATM信元來自物理層晶片時,FPGA將該ATM信元緩 存後轉發給物理層晶片;同時,FPGA判斷該ATM信元的信元頭,將信 元頭VCI欄位與預設ATM信元的VCI值一致的ATM信元緩存後轉發給 處理器,將信元頭VCI欄位與預設ATM信元的VCI值不一致的ATM信 元清除。
所述的當需要交換的ATM信元來自處理器時,FPGA將該ATM信元 緩存後轉發給物理層晶片具體包括以下步驟
a. FPGA的UTOPIA從端控制器接收來自處理器的ATM信元,並存 儲於FPGA的下行內存控制器的RAM單元中;
b. FPGA的UTOPIA主端控制器發送FPGA的下行內存控制器的 RAM單元中的ATM信元給物理層晶片;
所述的當需要交換的ATM信元來自物理層晶片時,FPGA將該ATM 信元緩存後轉發給物理層晶片具體包括以下步驟
a. FPGA的UTOPIA主端控制器接收來自物理層晶片的ATM信元, 並存儲於FPGA的轉發內存控制器的RAM單元中;
b. FPGA的UTOPIA主端控制器將轉發內存控制器的RAM單元中的ATM信元轉發給物理層晶片。
所述的FPGA判斷該ATM信元的信元頭,將信元頭VCI欄位與預設 ATM信元的VCI值一致的ATM信元緩存後轉發給處理器,將信元頭VCI 欄位與預設ATM信元的VCI值不一致的ATM信元清除具體包括以下步 驟
a. FPGA的UTOPIA主端控制器接收來自物理層晶片的ATM信元, 並存儲於FPGA的上行內存控制器的RAM單元中;
b. FPGA的VCI判斷模塊對來自物理層晶片的ATM信元進行過濾操 作,並將結果通知FPGA的UTOPIA從端控制器;
所述過濾操作為
1 )通過FPGA晶片輸入信號設置或者FPGA預先設置VCI判斷模塊 的VCI值。
2 )如果ATM信元的信元頭所包含的VCI欄位與設置的VCI判斷模 塊的VCI值一致,則將該ATM信元保留在上行內存控制器的RAM單元 中,並將結果通知UTOPIA從端控制器;如果ATM信元的信元頭所包含 的VCI欄位與設置的VCI判斷模塊的VCI值不一致,則清除該ATM信元。
c. FPGA的UTOPIA從端控制器將FPGA的上行內存控制器的RAM 單元中保留的ATM信元進行發送。
本發明實現ATM信元交換的方法以ATM信元標準53位元組為單位, RAM單元的存儲單位同樣以53位元組為單位。
寬低、功耗與尺寸過大的缺^,一有效降;氐了處理器處理負荷,、不僅提供了 高速的數據傳輸帶寬,而且降低了節點的功耗,減小了節點的尺寸。
圖1為本發明節點級4關方式串行ATM組網系統;
圖2為本發明基於FPGA的ATM信元交換裝置的內部結構框圖3為本發明VCI判斷模塊過濾過程的操作示意框圖。
具體實施例方式
下面結合附圖對本發明一種基於FPGA的ATM信元交換裝置及方法通過實施例進行詳細說明。
如圖1所示,FPGA ( 130)通過UTOPIA接口連接處理器(120)與 物理層晶片(140),完成二者之間的ATM信元交換功能。物理層晶片(140) 接收的ATM信元通過FPGA (130 )進行ATM信元過濾處理,通過判斷 VCI欄位,FPGA ( 130)將保留下來的信元發送至處理器(120),同時, 物理層晶片(140)將所有接收到的ATM信元通過FPGA ( 130)直接轉 發給物理層晶片(140)。處理器(120)發送的信元通過FPGA (130)傳 送給物理層晶片(140)。
FPGA (130)實現ATM信元交換,降低了處理器(120)處理負荷, 不僅提供了高速的數據傳輸帶寬,而且降低了節點(110)的功耗,減小 了節點(110)的尺寸。
如圖2所示, 一種基於FPGA實現的ATM信元交換裝置,FPGA芯 片通過UTOPIA接口連接處理器與物理層晶片,完成二者之間的ATM信 元交換功能。
具體包括
UTOPIA主端控制器(240),用於完成物理層晶片與FPGA內部的上 行內存控制器(210)、轉發內存控制器(220)、下行內存控制器(230)、 VCI判斷模塊(260 )的信號接口 ,提供物理層晶片與FPGA的ATM信元 接收、發送操作。
VCI判斷模塊(260 ),用於對來自物理層晶片的ATM信元進行過濾 操作,並將結果通知UTOPIA從端控制器(250);
所述過濾操作為將ATM信元中的VCI值與VCI判斷模塊(260 )中 的VCI值一致的ATM信元保留並存儲在上行內存控制器(210 )的RAM 單元(211)中;清除ATM信元中的VCI值與VCI判斷模塊(260 )中的 VCI值不一致的ATM信元。
UTOPIA從端控制器(250),用於完成處理器與FPGA內部的上行內 存控制器(210)、下行內存控制器(230)信號接口,提供處理器與FPGA 的ATM信元接收、發送操作;
轉發內存控制器(220),用於完成UTOPIA主端控制器(240)與轉 發內存控制器(220 )的內部RAM單元(221)和接口子控制器(222 )的 信號接口,提供多個RAM單元(221)進行轉發ATM信元緩存,並將來自物理層晶片的ATM信元的轉發到物理層晶片。
上行內存控制器(210),用於完成UTOPIA主端控制器(240)、 VCI 判斷模塊(260)、 UTOPIA從端控制器(250)與上行內存控制器(210) 的內部RAM單元(211)和接口子控制器(212)的信號接口,提供多個 RAM單元(211)進行上行ATM信元緩存,並將保留的ATM信元發送到 處理器。
下行內存控制器(230 ),用於完成UTOPIA主端控制器(240 )、 UTOPIA 從端控制器(250)與下行內存控制器(230)的內部RAM單元(231 )和 接口子控制器(232)的信號接口,提供多個RAM單元(231)進行下行 ATM信元緩存,並將來自處理器的ATM信元發送到物理層晶片。
當物理層晶片接收到正確的ATM信元,物理層晶片通過UTOPIA接 口信號通知FPGA。 UTOPIA主端控制器(240)接收來自物理層晶片的 ATM信元,並將信元同時存儲於轉發內存控制器(220)的RAM單元(221 ) 與上行內存控制器(210)的RAM單元(211)中。其中,信元寫入操作 通過轉發內存控制器(220)內部的接口子控制器(222)與上行內存控制 器(210)內部的接口子控制器(212)完成。
同時,VCI判斷模塊(260 )對來自物理層晶片的ATM信元進行過濾 操作,根據結果將上行內存控制器(210)的RAM單元(212)中的ATM 信元保留或清除,並將結果通知UTOPIA從端控制器(250)。
UTOPIA從端控制器(250)在處理器控制下,完成上行內存控制器 (210)的RAM單元(211)中保留的ATM信元發送。其中,信元讀取 操作通過上行內存控制器(210)內部的接口子控制器(212)完成。
當轉發內存控制器(220)的RAM單元(221 )存儲了一個ATM信 元,UTOPIA主端控制器(240)發送ATM信元給物理層晶片。其中,信 元讀取操作通過轉發內存控制器(220 )內部的接口子控制器(222 )完成。
當處理器需要發送ATM信元時,UTOPIA從端控制器(250)在處理 器控制下,接收來自處理器的ATM信元,並存儲於下行內存控制器(230) 的RAM單元(231)中。其中,信元寫入操作通過下行內存控制器(230) 內部的接口子控制器(232)完成。
當下行內存控制器(230)的RAM單元(231)存儲了一個ATM信 元,UTOPIA主端控制器(240)發送ATM信元給物理層晶片。其中,信元讀取操作通過下行內存控制器(230 )內部的接口子控制器(232 )完成。
如圖3所示,對來自物理層晶片的信元過濾操作流程為FPGA復位 後處於空閒狀態,當接收到新的ATM信元時,對信元頭的VCI欄位進行 提取,與通過FPGA晶片輸入信號設置或者FPGA預先設置的VCI值進 行比較。如果兩者一致,則保留此信元,並置位Flag標識;否則清除此信 元,並清除Flag標識。
一種基於FPGA的ATM信元交換方法,包括FPGA完成處理器和物 理層晶片之間ATM信元的交換功能,其特徵在於FPGA預設ATM信元 的VCI值,判斷處理器和物理層晶片之間需要交換的ATM信元的傳輸類 型,根據不同的傳輸類型實施如下操作
當需要交換的ATM信元來自處理器時,FPGA將該ATM信元緩存後 轉發給物理層晶片;
當需要交換的ATM信元來自物理層晶片時,FPGA將該ATM信元緩 存後轉發給物理層晶片;同時,FPGA判斷該ATM信元的信元頭,將信 元頭VCI欄位與預設ATM信元的VCI值一致的ATM信元緩存後轉發給 處理器,將信元頭VCI字革殳與預設ATM信元的VCI值不一致的ATM信 元清除。
所述的當需要交換的ATM信元來自處理器時,FPGA將該ATM信元 緩存後轉發給物理層晶片具體包括以下步驟
a. FPGA的UTOPIA從端控制器接收來自處理器的ATM信元,並存 儲於FPGA的下行內存控制器的RAM單元中;
b. UFPGA的UTOPIA主端控制器發送FPGA的下行內存控制器的 RAM單元中的ATM信元給物理層晶片;
所述的當需要交換的ATM信元來自物理層晶片時,FPGA將該ATM 信元緩存後轉發給物理層晶片具體包括以下步驟
並存儲於FPGA的轉發內存控制器的RAM單元中;
b. FPGA的UTOPIA主端控制器將轉發內存控制器的RAM單元中的 ATM信元轉發給物理層晶片。
所述的FPGA判斷該ATM信元的信元頭,將信元頭與預設ATM信 元的VCI值一致的ATM信元緩存後轉發給處理器,將信元頭與預設ATM信元的VCI值不一致的ATM信元清除具體包括以下步驟
a. FPGA的UTOPIA主端控制器接收來自物理層晶片的ATM信元, 並存儲於FPGA的上行內存控制器的RAM單元中;
b. FPGA的VCI判斷模塊對來自物理層晶片的ATM信元頭進行過濾 操作,並將結果通知FPGA的UTOPIA從端控制器;
所述過濾操作為
1 )通過FPGA晶片輸入信號設置或者FPGA預先設置VCI判斷模塊 的VCI值。
2 )如果ATM信元的信元頭所包含的VCI欄位與設置的VCI判斷模 塊的VCI值一致,則將該ATM信元保留在上行內存控制器的RAM單元 中,並將結果通知UTOPIA從端控制器;如果ATM信元的信元頭所包含 的VCI欄位與設置的VCI判斷模塊的VCI值不一致,則清除該ATM信元。
c. FPGA的UTOPIA從端控制器將FPGA的上行內存控制器的RAM 單元中保留的ATM信元進行發送。
權利要求
1. 一種基於FPGA的ATM信元交換裝置,其特徵在於包括處理器和物理層晶片以及一端與處理器相連,另一端與物理層晶片相連的FPGA;所述的FPGA包括UTOPIA主端控制器用於完成物理層晶片與FPGA內部的上行內存控制器、轉發內存控制器、下行內存控制器、VCI判斷模塊的信號接口;VCI判斷模塊用於對來自物理層晶片的ATM信元進行過濾操作,並將結果通知UTOPIA從端控制器;所述過濾操作為將ATM信元中的VCI值與VCI判斷模塊中的VCI值一致的ATM信元保留並存儲在上行內存控制器的RAM單元中;清除ATM信元中的VCI值與VCI判斷模塊中的VCI值不一致的ATM信元;UTOPIA從端控制器用於完成處理器與FPGA內部的上行內存控制器、下行內存控制器信號接口;轉發內存控制器用於對來自物理層晶片的ATM信元進行緩存並將來自物理層晶片的ATM信元的轉發到物理層晶片;上行內存控制器用於上行鏈路中來自物理層晶片的ATM信元經VCI判斷模塊判斷後保留的ATM信元的緩存和發送;下行內存控制器用於下行鏈路中來自處理器的ATM信元的緩存和發送。
2. 根據權利要求1所述的基於FPGA的ATM信元交換裝置,其特徵 在於,所述的轉發內存控制器包括一接口子控制器,用於控制轉發內存控制器的RAM單元中的ATM 信元讀取與寫入操作;若干RAM單元,用於轉發內存控制器中ATM信元的緩存。
3. 根據權利要求1所述的基於FPGA的ATM信元交換裝置,其特徵 在於,所述的上行內存控制器包括一接口子控制器,用於控制上行內存控制器的RAM單元中的ATM 信元讀取與寫入操作;若干RAM單元,用於上行內存控制器中ATM信元的緩存。
4. 根據權利要求1所述的基於FPGA的ATM信元交換裝置,其特徵在於所述的下行內存控制器包括一接口子控制器,用於控制下行內存控制器的RAM單元中的ATM信元讀取與寫入4喿作;若干RAM單元,用於下行內存控制器中ATM信元的緩存。
5. —種基於FPGA的ATM信元交換方法,包括FPGA完成處理器和 物理層晶片之間ATM信元的交換功能,其特徵在於FPGA預設ATM信 元的VCI值,判斷處理器和物理層晶片之間需要交換的ATM信元的傳輸 類型,根據不同的傳輸類型實施如下操作當需要交換的ATM信元來自處理器時,FPGA將該ATM信元緩存後 轉發給物理層晶片;當需要交換的ATM信元來自物理層晶片時,FPGA將該ATM信元緩 存後轉發給物理層晶片;同時,FPGA判斷該ATM信元的信元頭,將信 元頭VCI字4爻與預設ATM信元的VCI值一致的ATM信元緩存後轉發給 處理器,將信元頭VCI字4爻與預設ATM信元的VCI值不一致的ATM信 元清除。
全文摘要
本發明公開了一種基於FPGA的ATM信元交換方法,完成處理器和物理層晶片之間ATM信元的交換,物理層晶片接收的ATM信元通過FPGA緩存後轉發給物理層晶片;同時,FPGA對物理層接收的ATM信元通過判斷VCI欄位進行過濾,將保留下來的ATM信元發送至處理器;當需要交換的ATM信元來自處理器時,FPGA將該ATM信元緩存後轉發給物理層晶片。本發明還公開了一種基於FPGA的ATM信元交換裝置,其中FPGA包括UTOPIA主端控制器、VCI判斷模塊、UTOPIA從端控制器、轉發內存控制器、下行內存控制器和上行內存控制器,完成處理器與物理層晶片之間的ATM信元交換。本發明降低處理器負荷和節點功耗,提供了高速的傳輸帶寬,減小了節點尺寸。
文檔編號H04L12/56GK101478498SQ20091009572
公開日2009年7月8日 申請日期2009年1月20日 優先權日2009年1月20日
發明者凡 周, 陳耀武 申請人:浙江大學