色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 基于網絡處理器的彈性分組環(huán)接入實現(xiàn)

          基于網絡處理器的彈性分組環(huán)接入實現(xiàn)

          作者: 時間:2007-08-03 來源:網絡 收藏
          摘要環(huán)技術是一種面向城域網的技術。在分析了的優(yōu)點之后,提出了一種環(huán)方案,利用IXP1200了以太網和環(huán)的接口轉換,并討論了方案的軟硬件協(xié)同設計方法。
          關鍵詞;IXP1200;彈性分組環(huán);POS

          1 引言

          城域網存在的主要問題是帶寬和QoS的問題,隨著局域網和廣域網技術的長足發(fā)展,城域網已成為整個通信網絡中的瓶頸。TDM的傳統(tǒng)SDH城域網已不能很好滿足日益增長的業(yè)務需求,近年來,提出了主要面向城域網的彈性分組環(huán)技術,并由IEEE 802.17工作組完成了標準化工作,于2004年6月24日發(fā)布了802.17-2004標準[1]。彈性分組環(huán)是一種雙環(huán)拓撲的技術,能夠在兩條單向環(huán)路上沿相反方向傳輸數據。它結合了以太網的經濟性、靈活性和SDH的高帶寬效率及可靠性,利用空間重用、統(tǒng)計復用和環(huán)路保護來提高帶寬利用率和保證用戶的網絡質量。

          網絡處理器是經過專門設計和高度優(yōu)化來完成各種網絡功能的專用指令處理器,又是軟件可編程的芯片,表現(xiàn)出高效的并行處理能力和適應性。其中,IXP1200是Intel公司推出的網絡處理器產品,它以優(yōu)異的性能被廣泛應用于通信網絡領域。文獻[2]探討了基于IXP1200的路由器技術,文獻[3]則詳細介紹了IXP1200中的微引擎設計方法??梢姡捎谟布母咝院蛙浖目蓴U展性,利用IXP1200網絡處理器來彈性分組環(huán)的是一種可行而有效的方案。

          2 網絡處理器介紹

          網絡處理器一般由一個核心處理器和若干個智能協(xié)處理器組成,并發(fā)同步完成數據包的處理。同時還集成了一些專用硬件處理單元,如CRC校驗、Hash單元等,在處理線速上已經達到并超過10Gbps。它兼顧了GPP的靈活性和ASIC的執(zhí)行效率,為從第2層到第7層的多種應用提供了良好的支持。

          IXP1200網絡處理器是Intel公司推出的第一代成熟網絡處理器[4],它集成了1個StrongARM核以及6個獨立的32位RISC微引擎,再加上硬件的多線程支持,可以高速的數據處理。其中,StrongARM核最高的工作頻率為232MHz,用于管理和控制任務,如地址學習、路由表的維護以及網絡管理等。微引擎則工作于數據層面,用于實現(xiàn)數據分組的分類、處理和轉發(fā)等功能。每個微引擎支持4個線程,單個時鐘周期即可完成算術邏輯運算和移位操作,實現(xiàn)零開銷的上下文切換,這些性能使得6個微引擎在1秒鐘內能夠轉發(fā)高達300萬個第3層數據分組。

          IXP1200還提供了豐富的外部接口單元,其中SRAM單元和SDRAM單元提供了連接存儲芯片的接口,最大數據吞吐率分別達到464Mbps和928Mbps;PCI單元為外部主處理器和MAC設備等提供了32位PCI 2.2總線,最大數據吞吐率達到264Mbps;FBI單元為外部MAC設備提供了高速的IX總線,用于實現(xiàn)各種網絡的功能,最大數據吞吐率達到6.6Gbps。

          3 彈性分組環(huán)的接入實現(xiàn)方案

          彈性分組環(huán)具有雙環(huán)拓撲結構,包括兩條沿相反方向傳輸數據的單向環(huán),分別稱之為環(huán)路0和環(huán)路1。圖1顯示了彈性分組環(huán)的站點結構。

          按照802.17-2004標準,彈性分組環(huán)包括四個層面,由下至上分別為:物理層與物理層適配子層、MAC數據通路子層、MAC控制子層和MAC客戶子層[1]。其中,彈性分組環(huán)的接入在MAC客戶子層完成。設計的彈性分組環(huán)接入平臺功能主要包括:

          (1)對來自以太網的業(yè)務數據,若目的地址為以太網則直接轉發(fā)出去;若目的地址為彈性分組環(huán)網,則對以太網包進行深度處理,完成RPR幀格式封裝,對各種不同的業(yè)務數據進行優(yōu)先級分類,并轉發(fā)到彈性分組環(huán)接口等。

          (2)對來自彈性分組環(huán)的業(yè)務數據進行判別,丟棄重新接入環(huán)路的業(yè)務數據,對轉發(fā)到以太網的業(yè)務數據進行處理,轉換為以太網幀轉發(fā)出去。

          (3)完成地址學習、地址映射、路由表維護、業(yè)務調度和流量管理等。

          圖1 彈性分組環(huán)站點結構圖

          圖2 基于IXP1200的彈性分組環(huán)接入平臺硬件結構

          3.1 硬件設計

          利用IXP1200網絡處理器設計的彈性分組環(huán)接入平臺硬件結構如圖2所示。

          接入平臺主要設計了以下幾個單元:

          (1)網絡處理器單元:包括1塊IXP1200網絡處理器,作為整個接入平臺的核心處理部分,主要完成數據幀格式的轉換、CRC校驗、數據轉發(fā)、地址學習、路由表建立和維護、業(yè)務調度以及流量管理等功能。

          (2)以太網接口單元:包括1塊以太網MAC層芯片IXF440和1塊以太網收發(fā)器LXT9763,并通過變壓器連接到4路以太網接口。

          (3)彈性分組環(huán)接口單元:通過FPGA完成IX總線到彈性分組環(huán)POS接口的轉換,提供兩路POS接口,分別接入彈性分組環(huán)網的環(huán)路0和環(huán)路1。

          (4)調試接口單元:包括1個RJ45網口和1個RS232串口。IXP1200的PCI單元通過82559ER芯片完成PCI到以太網接口的轉換,并通過變壓器連接到網口;UART單元通過變壓器連接到串口。網口和串口用于接入平臺的調試,在調試完成后可以當作普通通信口使用。

          (5)存儲器單元:包括128M字節(jié)的SDRAM 、8M字節(jié)的SRAM和8M字節(jié)的FLASH。其中SDRAM主要用于存儲應用代碼、大型數據結構和路由表;SRAM主要用于存儲路由表索引和暫存數據;而FLASH主要用于存儲系統(tǒng)引導代碼。

          3.2 軟件設計

          接入平臺的軟件設計主要包括IXP1200內部StrongARM核及微引擎的軟件設計和基于FPGA實現(xiàn)的IX Bus/POS接口轉換設計兩部分。

          3.2.1 StrongARM核和微引擎的軟件開發(fā)

          IXP1200網絡處理器是一塊軟件可編程的芯片,內部的StrongARM核和微引擎都有獨立的軟件系統(tǒng),分別完成控制層面和數據層面的功能。其軟件體系結構如圖3所示。

          StrongARM核的軟件結構包括操作系統(tǒng)、板極支持包、驅動和網絡應用等模塊。操作系統(tǒng)采用VxWorks,它是專門為實時嵌入式系統(tǒng)設計開發(fā)的操作系統(tǒng)軟件,為用戶提供了高效的實時任務調度、中斷管理和豐富的系統(tǒng)資源、網絡協(xié)議等。板極支持包用于完成硬件初始化。驅動模塊包括微引擎、IX總線以及其它I/O接口的驅動程序。通信模塊通過共享內存和消息隊列等方式完成StrongARM核和微引擎之間的通信。網絡應用模塊則完成路由表管理、異常數據包處理、公平控制和拓撲保護等。StrongARM核的軟件開發(fā)主要用與VxWorks配套的集成開發(fā)軟件Tornado完成[5]。

          微引擎的開發(fā)則采用Intel專門設計的開發(fā)平臺Developer Workbench,既可以進行硬件調試,也可以進行軟件仿真[6]。IXP1200中,6個微引擎共同完成數據層面的功能。其中微引擎0和微引擎1分別接受來自以太網和彈性分組環(huán)的數據,完成數據的分類和初步處理;微引擎2和微引擎3分別對來自以太網和彈性分組環(huán)的數據進行深度處理,完成CRC校驗和幀格式轉換;微引擎4進行隊列調度和流量管理;微引擎5讀取調度線程分配的任務將數據包發(fā)送出去。

          圖3 IXP1200的軟件體系結構

          圖4 IX Bus/POS接口轉換實現(xiàn)的結構框圖

          3.2.2 IX Bus/POS接口轉換實現(xiàn)

          IXP1200對外部網絡設備提供了IX總線接口,通過接口轉換設計,能夠使其應用到有線通信、無線基站通信和以太網通信等多個領域。由于這些電路最終都通過IX總線和IXP1200連接,因此不會對系統(tǒng)的軟件結構產生影響。靈活的接口轉換設計可以大大擴展IXP1200的應用范圍?;贔PGA芯片的設計實現(xiàn)了IX總線到POS接口的轉換,其中POS接口采用了POS-PHY Level 2協(xié)議。設計的結構框圖如圖4所示。

          在接口轉換中,依據其功能將其劃分成為接收模塊和發(fā)送模塊。定義從POS接口到IX總線的數據傳輸路徑為接收路徑,而從IX總線到POS接口的數據傳輸路徑為發(fā)送路徑。

          接收路徑又分為數據通道和控制通道。數據通道主要負責數據的發(fā)送和復用等操作,接收來自POS接口的數據,進行奇偶校驗和數位轉換并存入接收數據緩存器RDFIFO,再發(fā)送到IX總線??刂仆ǖ乐饕山邮諣顟B(tài)機來完成數據收發(fā)的時序控制。另外還要根據包頭、包尾等包指示信息、包長計算結果和奇偶校驗結果生成標簽存入接收標簽緩存器RTFIFO中,在數據向IX總線發(fā)送時,根據包長確定接收數據緩存器的讀出字節(jié)數,并同時恢復出相應的包指示和錯誤指示信息。

          發(fā)送路徑類似于接收路徑,分為數據通道和控制通道。數據通道中,將IX總線的數據送入發(fā)送數據緩存器TDFIFO,然后根據目的端口向相應的POS接口發(fā)送,并產生POS接口的奇偶校驗信號。而控制通道在由發(fā)送狀態(tài)機完成數據收發(fā)的時序控制之外,同樣生成標簽信息送入發(fā)送標簽緩存器TTFIFO,控制數據的轉發(fā),并且恢復相關的指示信息。

          設計具有以下特點:

          (1)64位IX 總線分為兩組32位總線:一組為發(fā)送路徑,一組為接收路徑。兩組路徑有獨立的端口選擇和驅動時鐘,可以完全獨立地工作。

          (2)每個端口有2個25632bit的數據FIFO:一個用于存儲發(fā)送數據,一個用于存儲接收數據。由于定義的數據單元大小為64Bytes,所以每個數據FIFO可以容納16個數據單元。

          (3)每個端口有2個1611bit的標簽FIFO:一個用于存儲發(fā)送標簽,一個用于存儲接收標簽。每個標簽對應一個數據單元。

          (4)具有易擴展性,目前支持2個端口,根據應用的變化,稍微修改程序即可增加支持的端口數。

          (5)支持POS-PHY Level 2協(xié)議,采用單物理層包級傳輸模式,根據應用可以擴展到多物理層支持和其它傳輸模式。

          4 結論

          提出了一種基于IXP1200網絡處理器的彈性分組環(huán)接入方案,便捷地實現(xiàn)了以太網和彈性分組環(huán)之間的數據幀格式轉換和接口轉換功能。

          本文的創(chuàng)新點為在彈性分組環(huán)的接入平臺中使用了IXP1200網絡處理器,并通過軟硬件設計實現(xiàn)了其接入功能。IXP1200網絡處理器的硬件高效性保證了高速的數據處理能力,而軟件可編程性可以大大縮減從研發(fā)到進入市場的時間周期,并提供良好的擴展性能。本設計中,支持4路以太網接口和2路POS接口,通過StrongARM和微引擎的軟件開發(fā),以及IX總線接口轉換程序的設計,可以實現(xiàn)更多路數據以及更多類型網絡的接入。

          參考文獻

          [1] IEEE 802.17 Resilient Packet Ring Working Group. http://www.ieee802.org/17/
          [2] 劉建華,王勇. 基于網絡處理器的可編程路由器技術研究. 微計算機信息, 2005,21(10-2):p51~53
          [3] 管文建,薛質. 網絡處理器中微引擎設計. 微計算機信息, 2005,21(11-3):p137~139
          [4] IXP1200 Datasheet. http://www.intel.com
          [5]王學龍. 嵌入式VxWorks系統(tǒng)開發(fā)與應用. 北京: 人民郵電出版社, 2003
          [6]石晶林,程勝,孫江明. 網絡處理器原理、設計與應用. 北京: 清華大學出版社, 2003



          評論


          相關推薦

          技術專區(qū)

          關閉