與傳統(tǒng)ASIC相比,FPGA和結(jié)構(gòu)化ASIC的優(yōu)勢在于重用靈活性高、上市時間快、性能佳而成本低。FPGA和專用的IP模塊可用于現(xiàn)有的商用AdvancedTCA平臺,可用來開發(fā)可擴(kuò)展的交換接口控制器(FIC),以加快產(chǎn)品開發(fā)的設(shè)計并使線卡方案具有魯棒性和成本效益。
當(dāng)今通信和計算系統(tǒng)制造商正在基于模塊化系統(tǒng)架構(gòu)設(shè)計下一代平臺,以縮短開發(fā)周期、降低新設(shè)備的資本開支,并在增加新功能和服務(wù)時最大限度地減少運營費用。模塊化平臺使設(shè)備制造商能夠在一套通用的構(gòu)建模塊上設(shè)計多種類型的系統(tǒng),從而通過實現(xiàn)一定的規(guī)模經(jīng)濟(jì)效應(yīng)保持競爭力。
圖1:一個SPI4.2到ASI交換接口控制器的功能圖。左邊是SPI4.2到NPU的接口,右邊是ASI到交換結(jié)構(gòu)的連接。
實現(xiàn)模塊化的必不可少的一步是使設(shè)備制造商共同創(chuàng)建一組用于電路板和機(jī)架的通用物理互連標(biāo)準(zhǔn)。AdvancedTCA就是由PCI工業(yè)計算機(jī)制造商組織(PICMG)定義的一種系統(tǒng)構(gòu)造參數(shù),它為諸如機(jī)架尺寸、線卡、I/O模塊、交換接口(星狀和網(wǎng)狀結(jié)構(gòu)拓?fù)洌?、額定功率等等平臺單元提供了標(biāo)準(zhǔn)規(guī)范。AdvancedTCA標(biāo)準(zhǔn)的主要目標(biāo)是提供一個基于標(biāo)準(zhǔn)的硬件平臺,這個硬件平臺由機(jī)架和存儲刀片、網(wǎng)絡(luò)處理器卡、控制平面刀片,以及管理模塊的組合來構(gòu)建模塊化運營級產(chǎn)品,這些產(chǎn)品針對電信接入?yún)R聚平臺和邊緣平臺應(yīng)用。
AdvancedTCA背板接口的工業(yè)標(biāo)準(zhǔn)集的定義,使系統(tǒng)集成商在他們的交換接口卡和線卡之間互連具有更大的靈活性和互操作性。AdvancedTCA網(wǎng)絡(luò)接口采用開放的接口協(xié)議,并采用子規(guī)范PICMG 3.1-3.5提供可互操作的電路板。這些子規(guī)范支持以太網(wǎng)、光纖通道、Infiniband、PCI Express、StarFabric、高級交換互連(ASI)和串行RapidIO。一些大型OEM向AdvancedTCA規(guī)范的轉(zhuǎn)移標(biāo)志著從定制、專有的和基于互連的平臺向基于開放標(biāo)準(zhǔn)的COTS平臺轉(zhuǎn)移。
PCI Express和ASI
系統(tǒng)可擴(kuò)展性和模塊化需要通用互連以支持多種應(yīng)用中芯片和/或子系統(tǒng)的無縫集成。隨著背板性能從40Gbps提升到160甚至320Gbps,必須仔細(xì)設(shè)計以確保交換結(jié)構(gòu)和數(shù)據(jù)流源頭之間的接口不會出現(xiàn)傳輸瓶頸。交換接口必須在支持關(guān)鍵的結(jié)構(gòu)需求,諸如數(shù)據(jù)吞吐、流控制和按流排隊的同時,以良好的信號完整性高效地傳輸2.5Gbps到超過10Gbps的數(shù)據(jù)流。
圖2:包含ASI報頭、可選的PI0和PI1報頭及一個PI2報頭的TLP。
PCI Express和ASI是兩種標(biāo)準(zhǔn)的交換結(jié)構(gòu)技術(shù),它們有潛力使標(biāo)準(zhǔn)、最新的交換設(shè)備和交換接口器件的市場急劇增長。PCI Express具有跨越從計算到通信生態(tài)系統(tǒng)的制造、技術(shù)支持和產(chǎn)品開發(fā)的經(jīng)濟(jì)規(guī)模。把PCI Express移植到串行互連的好處在于:具有物理和性能上的可擴(kuò)展性;改善了可靠性;實現(xiàn)了全雙工傳輸;布線和電纜連接更簡單、成本更低。
ASI通過定義兼容的擴(kuò)展來增強(qiáng)PCI Express,從而解決諸如對等通信的支持、QoS、多播和支持多協(xié)議封裝的要求。PCI Express和ASI是互補(bǔ)協(xié)議,許多系統(tǒng)兩者都采用以滿足目前尚無法實現(xiàn)的設(shè)計要求。隨著新型組幀器、網(wǎng)絡(luò)處理單元(NPU)和交換結(jié)構(gòu)采用ASI,有必要將ASI與其它接口規(guī)范橋接起來,例如與SPI3、SPI4.2和CSIX橋接。這種橋接功能可以方便地與交換接口控制器集成在一起。
FIC架構(gòu):
一個SPI4.2到ASI控制器的功能(圖1)包括:
1. ASI到SPI4.2的雙向橋接,可從2.5Gbps擴(kuò)展到20Gbps(x1、x4或x8路);
2. 為端點和橋接組裝和分拆ASI事務(wù)層數(shù)據(jù)包(TLP);
3. 支持1到64,000個連接隊列(CQ);
4. 在SPI4.2上支持多達(dá)16個通道;
5. 可編程通道映射到SPI4.2;
6. 支持一個可旁路的、三個有序的和一個多播虛擬通道(VC);
7. 可編程最大數(shù)據(jù)包長度為64到80字節(jié);
8. 鏈路層基于信用量的流控制;
圖3:PI2封裝示例。通過去除SPI4.2協(xié)議控制字(PCW)并增加ASI報頭、可選PI0和PI1報頭以及PI2報頭,初始SPI4.2突發(fā)數(shù)據(jù)流被轉(zhuǎn)換到ASI TLP之中。
9. CRC生成和誤碼校驗;
10. 處理連續(xù)的背靠背數(shù)據(jù)包結(jié)束符(EOP);
11. DIP4奇偶位生成和校驗;
12. 狀態(tài)通道組幀、DIP2生成和校驗;
13. 狀態(tài)同步生成丟失和檢測;
14. 訓(xùn)練序列生成和檢測;
15. 全同步設(shè)計(800Mbps);
16. 與OIF兼容的SPI4階段2;
17. 與ASI-SIG兼容,ASI核心架構(gòu)規(guī)范修訂版1.0。
在SPI4.2到ASI方向,必要時對進(jìn)入的SPI4.2數(shù)據(jù)包進(jìn)行分段,并根據(jù)流量類型(單播或多播)和等級映射到VC FIFO緩沖器。用戶在SPI4到VC映射表中對緩沖到SPI4.2接口的通道映射信息進(jìn)行編程,接口上的數(shù)據(jù)包按照表中所示傳輸?shù)较鄳?yīng)的緩沖器。ASI調(diào)度器讀取隊列并將TLP發(fā)送到交換結(jié)構(gòu)。
每一個SPI4.2通道FIFO緩沖器的填充水平被轉(zhuǎn)換為“空虛-未滿-飽滿”狀態(tài),并通過接收狀態(tài)通道(RSTAT)發(fā)送到對等的SPI4.2發(fā)送器。當(dāng)有空間時,在SPI4.2接口上接收的數(shù)據(jù)包被傳輸?shù)较鄳?yīng)的VC FIFO緩沖器。
SPI4.2和每一個VC支持最多16個通道(通道0到15)。下面是從SPI4.2到VC的示范通道分配:
1. SPI4.2通道0到7被映射為8個可旁路虛擬通道(BVC);
2. SPI4.2通道8到11被映射為4個有序虛擬通道(OVC);
3. SPI4.2通道12到15被映射為4個多播虛擬通道(MVC)。
ASI到SPI4.2的輸出數(shù)據(jù)包流
在ASI到SPI4.2方向,采用可編程地址映射表(圖2),從指定VC的交換結(jié)構(gòu)輸出的ASI TLP和流量等級被映射到16個SPI4.2通道中的一個。用戶在VC到SPI4表中對VC到SPI4.2接口的通道映射信息進(jìn)行編程。數(shù)據(jù)復(fù)用(MUX)記錄表RAM(VCS4記錄表RAM)包含從VC接口FIFO緩沖器讀數(shù)據(jù)到把數(shù)據(jù)傳送至SPI4.2接口的調(diào)度。VCS4記錄表RAM有16個位置。
VCS4數(shù)據(jù)MUX和地址映射模塊根據(jù)VCS4記錄表RAM規(guī)定的順序從VC FIFO通道讀數(shù)據(jù)。SPI4.2源模塊在必要時分拆隊列并重組數(shù)據(jù)包,增加SPI4.2有效載荷控制操作,并通過SPI4.2接口將它們發(fā)往NPU。SPI4.2源模塊也執(zhí)行信用量管理,并根據(jù)從對等的SPI4.2接收器收到的流控制信息進(jìn)行調(diào)度。
ASI提供若干協(xié)議接口(PI),它們提供可選功能或使各種協(xié)議適配到ASI基礎(chǔ)架構(gòu)。
協(xié)議接口描述
PI0封裝被用于多播路由。為0的第二個PI表示生成樹數(shù)據(jù)包,非0的第二個PI表示多播路由,多播組尋址通過多播組索引字段實現(xiàn)。
PI1將連接隊列識別信息傳遞到下游對等交換單元或端點。當(dāng)發(fā)生擁塞時,下游對等交換單元可以發(fā)送識別上游對等交換單元的違規(guī)連接隊列的PI5擁塞管理消息。
PI2提供分段和重組(SAR)服務(wù)及封裝。PI2報頭包含有利于數(shù)據(jù)包描述的包起始(SOP)和包結(jié)束(EOP)信息。此外,PI2封裝規(guī)定了可以在PI2容器內(nèi)排列有效載荷數(shù)據(jù)的可選前置塊(PPD)和末塊(EPD)字節(jié)。
如果SPI4.2突發(fā)數(shù)據(jù)包長度與ASI TLP有效載荷長度相等的話(圖3),PI2封裝可以用于描述數(shù)據(jù)包并將數(shù)據(jù)流映射到關(guān)聯(lián)域(Context)。此時,所接收到的SPI4.2突發(fā)數(shù)據(jù)已經(jīng)被分段為ASI接口支持的有效載荷長度。因此,以數(shù)據(jù)包描述的觀點來看,PI2僅僅需要表示SOP和EOP。
對于中間的突發(fā)數(shù)據(jù),PI2 SAR代碼就是“居中的”。注意,由于非EOP SPI4.2突發(fā)數(shù)據(jù)必須是多個16字節(jié),所以中間數(shù)據(jù)包SPI4.2有效載荷將始終是32位排列,與ASI有效載荷匹配。
圖4:在PI2分段的例子中,SPI4.2數(shù)據(jù)包被分為三個ASI TLP,去掉了SPI4.2協(xié)議控制字,對于每一個TLP,ASI報頭要加上可選的PI0和PI1報頭及PI2報頭。
對于終端突發(fā)數(shù)據(jù),如果在最后的TLP字中的所有字節(jié)都有效或與末塊終接(terminal with end pad),則PI2 SAR代碼就是“終端”,來表示最后的字中有效字節(jié)的數(shù)目。
如果SPI4.2突發(fā)數(shù)據(jù)包長度超過ASI TLP有效載荷長度的話,PI2 SAR被用于將SPI4.2數(shù)據(jù)包分段和重組。接收到的SPI4.2突發(fā)數(shù)據(jù)包在橋接中被分段為ASI接口支持的有效載荷的長度(圖4)。
至于封裝,三個TLP的PI2 SAR代碼被分別設(shè)置為代表“初始”、“中間”和“終止”或“末塊終接”。對于重組,來自每一個關(guān)聯(lián)域的AS片段被重組成完整的數(shù)據(jù)包。一旦獲得完整的數(shù)據(jù)包,它就被映射到一個SPI4.2通道并在突發(fā)數(shù)據(jù)包中輸出。來自SPI4.2不同通道的突發(fā)數(shù)據(jù)包可以交織在一起。
映射流量類型、等級和目的端口
交換接口必須與數(shù)據(jù)一起傳輸若干重要屬性。這些屬性包括流量類型(單播或多播)、等級、目的端口和擁塞管理。這些參數(shù)都在AS中得到支持。然而,在SPI4.2中,該信息被映射在SPI4.2通道編號中或SPI4.2有效載荷內(nèi)的專有報頭。
SPI4.2利用三級擁塞指示(空虛、未滿、飽滿)進(jìn)行基于信用量的流控制。通過預(yù)置與空虛和未滿狀態(tài)相對應(yīng)的最大突發(fā)數(shù)據(jù)量(Maxburst1和Maxburst2),發(fā)送器會再次裝滿信用量。
圖5:典型單10Gbps端口中的雙網(wǎng)絡(luò)處理器及配備專用FIC的全雙工線卡。
ASI具有多個流控制選項:VC,它是一個基于信用量的流控制;用于源速率控制的令牌桶;按照類或者流隊列的基于狀態(tài)的流控制。
橋接內(nèi)的擁塞管理是橋接架構(gòu)和緩沖機(jī)制的不可缺少的組成部分。橋接可以采用兩種基本架構(gòu),或者采用具有很少或沒有緩沖的直通(flow-through),或者每一個接口采用單級或兩級緩沖。
在直通架構(gòu)中,流控制信息被生成并在外部作用于橋上。該方法簡化了橋的設(shè)計,但是,增加了源和流控制的目的端口之間的延遲時間,因此可能需要增加緩沖資源。
在有緩沖的架構(gòu)中,橋接本身遵照流控制信息,因此需要內(nèi)部緩沖。內(nèi)部橋接緩沖可以由兩個接口共享(單級),或每一個接口配備自己的關(guān)聯(lián)緩沖器,稱為兩級緩沖處理。
入口網(wǎng)絡(luò)處理器接收端口被配置為物理器件接口的SPI4,而發(fā)送端口被配置為交換接口的SPI4.2,連接到專有的FIC(圖5)。FIC支持全雙工SPI4.2接口和多達(dá)24個速率為2.5Gbps的全雙工PCI Express SERDES(串行化/解串化)鏈路,一個10Gbps的全雙工鏈路端口需要4個SERDES鏈路。不用的SERDES鏈路可以通過器件配置寄存器的設(shè)置來關(guān)閉供電。在這個10Gbps的例子中,NPU通過PCI本地總線接口配置EP1SGX40內(nèi)部的“配置和狀態(tài)”寄存器。
專有FIC參考設(shè)計
專有FIC參考設(shè)計平臺是采用英特爾的IXDP2401先進(jìn)開發(fā)平臺設(shè)計和驗證的。AdvancedTCA機(jī)架把連接AdvancedTCA高速交換接口的兩個IXMB2401網(wǎng)絡(luò)處理器承載卡(carrier card)互連起來,承載卡是采用一塊IXP2400處理器設(shè)計的PICMG3.x兼容板。承載卡采用標(biāo)準(zhǔn)組件結(jié)構(gòu),包含4個子卡槽位和一個可選交換接口子卡槽位,以便連接到AdvancedTCA背板上區(qū)域2的交換接口引腳。
專有的、基于FPGA的交換接口子卡(mezzanine card)槽位的設(shè)計使其可插入承載卡,并提供一個可重配置的FIC和可選的流量管理開發(fā)板。FIC使處理器與AdvancedTCA交換結(jié)構(gòu)相互連接。利用包含兼容PCI Express與XAUI的多通道收發(fā)器的可重復(fù)編程器件,可以提供可擴(kuò)展的開發(fā)平臺,以便快速設(shè)計和驗證2.5Gbps到10Gbps的AdvancedTCA FIC設(shè)計(圖6)。
工作模式
參考設(shè)計的主要工作模式接收來自處理器入口端的32位SPI3或16位SPI4.2數(shù)據(jù),通過FPGA集成收發(fā)器將數(shù)據(jù)流傳輸?shù)紸dvancedTCA背板,并將背板數(shù)據(jù)流通過32位SPI3或16位SPI4.2接口傳回處理器的出口端。
集成收發(fā)器經(jīng)由處理器的SlowPort出口來配置。參考設(shè)計支持若干其它工作模式,包括SPI4.2接口環(huán)回、ASI接口環(huán)回、流量管理、交換結(jié)構(gòu)數(shù)據(jù)包生成和監(jiān)測。
FPGA和結(jié)構(gòu)化ASIC FIC
采用專有的多FPGA和結(jié)構(gòu)化ASIC技術(shù),可以開發(fā)可擴(kuò)展的PCI Express、ASI橋和端點。內(nèi)建兼容PCI Express收發(fā)器的高密度、高性能的FPGA,可以提供:1. 具有可擴(kuò)展的2.5鏈路的整體解決方案;2. 對每一個通道運行速率高達(dá)1Gbps的接口進(jìn)行動態(tài)相位校正(DPA);3. 多種封裝選擇和高達(dá)40,000邏輯單元的密度選項。
圖6:功能模塊框圖。
可選的FPGA結(jié)合獨立的兼容PCI Express的SERDES,如PMC-Sierra的PM8358 QuadPHY 10GX器件可用于對成本的關(guān)注超過對性能和擴(kuò)展功能需求的應(yīng)用,從而提供低成本的1x、2x和4x(路)靈活的解決方案。高密度、高性能FPGA與獨立的、兼容PCI Express的SERDES的結(jié)合,可被移植到專用的結(jié)構(gòu)化ASIC,以提供所需要的最高密度、最快性能和最大數(shù)量的應(yīng)用。
評論
查看更多