當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于RocketIO接口的高速互連應(yīng)用研究與實(shí)現(xiàn)

摘要:在此立足于嵌入式應(yīng)用的背景,在理解RapidIO協(xié)議和Fibre Channel協(xié)議的基礎(chǔ)上,通過(guò)對(duì)嵌入在FPGA內(nèi)的RocketIO高速串行收發(fā)器工作原理的研究,結(jié)合某信號(hào)處理接口模塊的實(shí)際應(yīng)用,在系統(tǒng)內(nèi)實(shí)現(xiàn)RapidIO接口功能,在系統(tǒng)間實(shí)現(xiàn)Fibre Channle接口功能,總結(jié)出基于RocketIO接口的高速信號(hào)完整性設(shè)計(jì)的應(yīng)用特點(diǎn),并進(jìn)行簡(jiǎn)單的鏈路傳輸特性的測(cè)試,為高速互連系統(tǒng)的設(shè)計(jì)與研究提供了可靠的技術(shù)支撐。
關(guān)鍵詞:RocketIO;RapidI();Fibre Channel;嵌入式應(yīng)用

0 引言
    近年來(lái),多種新興的高性能互連技術(shù)相繼出現(xiàn),如RapidIO,PCI Express,F(xiàn)ibre Channel和InfiniBand等,它們大都采用基于報(bào)文交換的點(diǎn)到點(diǎn)互連結(jié)構(gòu)替代傳統(tǒng)并行總線結(jié)構(gòu),提供了高帶寬、低延遲、可擴(kuò)展的I/O互連,很大程度上克服了傳統(tǒng)并行總線結(jié)構(gòu)的種種弊端。其中RapidIO屬于系統(tǒng)內(nèi)部互連技術(shù),主要針對(duì)高性能嵌入式系統(tǒng)內(nèi)部互連,它可以作為處理器總線、本地I/O總線,還可以跨越背板連接處理器、存儲(chǔ)器和外部設(shè)備。RapidIO技術(shù)被定義為一種高性能,低引腳數(shù),基于報(bào)文交換的互連體系結(jié)構(gòu),能廣泛滿足嵌入式系統(tǒng)應(yīng)用的需求,支持芯片到芯片和板到板之間的互連技術(shù)。光纖通道(Fiber Channel,F(xiàn)C)是一種高速串行傳輸協(xié)議,具有高帶寬、高實(shí)時(shí)性、高可靠性、擴(kuò)展性好、傳輸速率高、抗干擾性強(qiáng)、拓?fù)浣Y(jié)構(gòu)和服務(wù)類型靈活、支持多種上層協(xié)議和底層傳輸介質(zhì)等特性,且可以在一路傳輸線上實(shí)現(xiàn)高達(dá)2.5 Gb/s的速率,具有相對(duì)于萬(wàn)兆以太網(wǎng),PCIe更高的傳輸速率。
    在嵌入式應(yīng)用方面,主流的FPGA中都已對(duì)差分信號(hào)提供了硬件支持,并且在片上集成了固化的Rocket IO模塊,以提供高超高速的串行通信支持。RocketIO位于數(shù)據(jù)傳輸協(xié)議的物理層,用以實(shí)現(xiàn)最基本的數(shù)據(jù)通信環(huán)境。
    本文從Xilinx的Virtex5系列FPGA的RocketIO高速串行收發(fā)器的工作原理入手,分別闡述了在一片F(xiàn)PGA上利用RapidIO協(xié)議和Fibre Chan nle協(xié)議實(shí)現(xiàn)高速信號(hào)傳輸?shù)姆椒ǎ⒎治隽薘ocketIO接口在硬件設(shè)計(jì)上需要注意的問(wèn)題。

1 RocketIO介紹
    RocketIO為FPGA中內(nèi)嵌的硬核資源,是一種高速串行收發(fā)器,采用兩對(duì)差分線來(lái)進(jìn)行數(shù)據(jù)的發(fā)送和接收,可以實(shí)現(xiàn)兩個(gè)單工或一對(duì)全雙工的數(shù)據(jù)傳輸,通信碼率可以達(dá)到600 Mb/s~3.125 Gb/s。RocketIO收發(fā)器發(fā)送和接收串行差分信號(hào),工作于2.5 V的直流電壓下,采用CML(Current Mode Logic)模式,內(nèi)部帶有50 Ω或75 Ω的匹配電阻,采用串行數(shù)據(jù)收發(fā),可以在高頻條件下很好地避免數(shù)據(jù)間的串?dāng)_。


    RocketIO收發(fā)器結(jié)構(gòu)如圖1所示,主要包括PMA和PCS兩個(gè)子層,PMA子層中集成了SERDES,發(fā)送和接收緩沖,時(shí)鐘發(fā)生器及時(shí)鐘恢復(fù)電路。SERDES是一個(gè)串并轉(zhuǎn)換器,負(fù)責(zé)FPGA中本地的32位并行數(shù)據(jù)(也可以是16位或8位)與Rocket IO接口的串行數(shù)據(jù)之間的轉(zhuǎn)換。時(shí)鐘發(fā)生器及時(shí)鐘恢復(fù)電路用于將時(shí)鐘與數(shù)據(jù)綁定發(fā)送及將時(shí)鐘從接收到的數(shù)據(jù)流中恢復(fù)出來(lái),從而避免了在高速傳輸條件下時(shí)鐘與數(shù)據(jù)分開(kāi)傳輸所帶來(lái)的時(shí)鐘抖動(dòng)等問(wèn)題。PCS子層負(fù)責(zé)8 b/10 b編碼解碼和CRC校驗(yàn),并集成了負(fù)責(zé)通道綁定和時(shí)鐘修正的彈性緩沖。8 b/10 b編碼可以避免數(shù)據(jù)流中出現(xiàn)連0連1的情況,便于時(shí)鐘的恢復(fù)。通道綁定通過(guò)在發(fā)送數(shù)據(jù)流中加入字符來(lái)將幾個(gè)RocketIO通道綁定成一個(gè)一致的并行通道,從而來(lái)提高數(shù)據(jù)的吞吐率。彈性緩沖可以解決恢復(fù)的時(shí)鐘與本地時(shí)鐘不一致的問(wèn)題,并進(jìn)行數(shù)據(jù)率的匹配,從而使得通道綁定成為可能。

2 RocketIO在高速信號(hào)互連中的應(yīng)用
    以某信號(hào)處理模塊FC接口板卡為例,該模塊是一種高性能、具有高速串行接口、采用統(tǒng)一互連網(wǎng)絡(luò)的通用信號(hào)處理接口模塊,信號(hào)傳輸速率達(dá)到幾千兆位每秒,這時(shí)就需要具有足夠高傳輸速率的信號(hào)傳輸機(jī)制對(duì)信號(hào)進(jìn)行轉(zhuǎn)發(fā)。實(shí)現(xiàn)與主機(jī)板卡通信時(shí),采用RapidIO傳輸協(xié)議;實(shí)現(xiàn)系統(tǒng)網(wǎng)絡(luò)間通信時(shí),則可使用FibreChannle光纖通信協(xié)議。而RocketIO對(duì)多種高速傳輸協(xié)議的支持,可以使得RapidIO協(xié)議、Fibre Chan nle協(xié)議在同一片F(xiàn)PGA內(nèi)實(shí)現(xiàn),提高了系統(tǒng)的集成度,并使得信號(hào)的處理機(jī)制更加靈活。在本文的設(shè)計(jì)中,以Xilinx的Virtex5系列FPGA為平臺(tái),采用了RapidIO傳輸協(xié)議來(lái)實(shí)現(xiàn)與主機(jī)板卡的通信,采用Fibre channle協(xié)議來(lái)實(shí)現(xiàn)系統(tǒng)網(wǎng)絡(luò)間通信。本文涉及的接口模塊架構(gòu)如圖2所示。

[!--empirenews.page--]
2.1 應(yīng)用RapidIO協(xié)議買現(xiàn)板間互連
    RapidIO是一種基于高性能包交換的開(kāi)放式互連技術(shù),主要功能是完成系統(tǒng)內(nèi)部芯片到芯片和板到板之間的高速傳輸數(shù)據(jù),能夠提供高帶寬、低時(shí)延、軟件獨(dú)立和高容錯(cuò)性的數(shù)據(jù)傳輸解決方案。同時(shí)支持點(diǎn)對(duì)點(diǎn)或點(diǎn)對(duì)多點(diǎn)的通信、DMA操作、消息傳遞模式交換數(shù)據(jù)以及多種拓?fù)浣Y(jié)構(gòu)等功能。
    RapidIO采用3層分級(jí)體系結(jié)構(gòu),分別為物理層、傳輸層、邏輯層。物理層規(guī)范在整個(gè)分級(jí)結(jié)構(gòu)的底部,包括器件級(jí)接口的細(xì)節(jié),如包傳輸機(jī)制、流量控制、電氣特性和低級(jí)錯(cuò)誤管理。傳輸層規(guī)范在中間層,定義RapidIO地址空間和在端點(diǎn)器件間傳輸包所需的路由信息。邏輯層規(guī)范定義全部協(xié)議和包的格式,它們?yōu)槎它c(diǎn)器件發(fā)起和完成事物提供必要的信息。
    RapidIO串行物理層,通常稱為串行RapidIO,是針對(duì)板上或通過(guò)背板的器件間的電氣連接。串行物理層定義器件間的全雙工串行鏈路,在每個(gè)方向上使用單向差分信號(hào)。RapidIO串行物理層實(shí)現(xiàn)鏈路訓(xùn)練、鏈路初始化,支持RapidIO器件間的包傳送,包括包和控制符號(hào)的傳送、流量控制、錯(cuò)誤管理和其他器件到器件的功能。RapidIO物理層核與RocketIO收發(fā)器連接邏輯結(jié)構(gòu)框圖如圖3所示。


    由于RapidIO邏輯層包被定義為一連串的比特,并且與物理層實(shí)現(xiàn)無(wú)關(guān),所以RapidIO協(xié)議在串行與并行接口,銅線與光纖介質(zhì)下都能正確工作。
    其RapidIO串行物理層有如下特征:
    (1)采用8 b/10 b編碼方案將發(fā)送時(shí)鐘嵌入到數(shù)據(jù)中。
    (2)在每個(gè)方向上支持一個(gè)串行差分對(duì)或支持4個(gè)并列的串行差分對(duì)。
    (3)使用專用的8 b/10 b碼(稱為K碼)來(lái)管理鏈路,管理流量控制、包定界和錯(cuò)誤報(bào)告。
    (4)支持每通道1.25 Gb/s,2.5 Gb/s和3.125 Gb/s波特率(數(shù)據(jù)速率分別為1.0 Gb/s,2.0 Gb/s和2.5 Gb/s)的傳送速率。
2.2 應(yīng)用Fibre Channel協(xié)議實(shí)現(xiàn)系統(tǒng)間互連
    光纖通道技術(shù)是綜合計(jì)算機(jī)通道和數(shù)據(jù)網(wǎng)絡(luò)概念提出的一個(gè)不同于傳統(tǒng)的通道和網(wǎng)絡(luò)結(jié)構(gòu)的互連方案,采用通道技術(shù)控制信號(hào)傳輸,使用仲裁或交換方式處理共享沖突,并采用了基于信用的流量控制策略。
    Fibre Channel模型分為5層,分別為:FC-0,F(xiàn)C-1,F(xiàn)C-2,F(xiàn)C-3和FC-4。FC-0層定義了連接的物理端口特性,包括介質(zhì)和連接器、驅(qū)動(dòng)器、接收機(jī)、發(fā)射機(jī)等的物理特性、電器特性和光特性、傳輸速率以及其他的一些連接端口特性。在本設(shè)計(jì)中,F(xiàn)C-0層處理由光電收發(fā)器實(shí)現(xiàn)光信號(hào)與電信號(hào)轉(zhuǎn)換;FC-1層是信號(hào)編碼和解碼層,F(xiàn)C-1層處理由FPGA的RocketIO完成串并/并串轉(zhuǎn)換、8 b/10 b編解碼、有序集及位同步等;FC-1層使用8 b/10 b編碼方式,這意味著每傳輸10 b數(shù)據(jù),實(shí)際得到8 b的有效數(shù)據(jù),其他兩位是冗余位。信號(hào)可以被編碼成2種字符集:K字符集(特殊的控制信號(hào)和命令)和D字符集(普通數(shù)據(jù))。FC-2層是幀協(xié)議層,是FC用來(lái)識(shí)別、解釋和處理FC網(wǎng)絡(luò)信息流的核心層。FC-2層規(guī)定信息單元的組成格式、原語(yǔ)序列協(xié)議、端口類型、服務(wù)類型、數(shù)據(jù)的分段與重組、流量控制、差錯(cuò)恢復(fù)策略、節(jié)點(diǎn)初始化、節(jié)點(diǎn)的注冊(cè)和節(jié)點(diǎn)的注銷等功能。FC-0,F(xiàn)C-1和FC-2層這3層共同組成了FC物理層。FC-3層是FC的公共服務(wù)層,定義了如帶寬頻率分片、搜索組和多播等通用服務(wù)。FC-4:該層是FC協(xié)議模型的最高層,在本系統(tǒng)的設(shè)計(jì)中,使用了匿名簽署消息傳輸協(xié)議(FC-AE-ASM)來(lái)滿足系統(tǒng)中數(shù)據(jù)的傳輸需要。
    在FC核的嵌入式應(yīng)用中。使用一個(gè)或2個(gè)RocketIO收發(fā)器來(lái)提供1 Gb/s,2 Gb/s或4 Gb/s的接口速率,利用FPGA中的8 b/10 b編解碼器、CRC產(chǎn)生和校驗(yàn)單元以及接收彈性緩沖進(jìn)行設(shè)計(jì)。FC核內(nèi)部提供了32 b寬的Client接口,F(xiàn)C幀數(shù)據(jù)采用32 b/s訪問(wèn)。FC核的時(shí)鐘在配置時(shí)已固定,分別可采用53.125 MHz和106.25 MHz。


    FC核與RocketIO收發(fā)器連接邏輯結(jié)構(gòu)框圖如圖4所示。[!--empirenews.page--]

3 RocketIO接口的信號(hào)完整性設(shè)計(jì)
    在實(shí)際應(yīng)用中,參考時(shí)鐘、電源供電以及高速傳輸線路的設(shè)計(jì)與布局是影響數(shù)據(jù)傳輸效果的最重要因素。為了保證Rocket IO能可靠工作,在RocketIO接口設(shè)計(jì)過(guò)程中需要注意以下的問(wèn)題:
    (1)電源供電。該系列FPGA器件中每個(gè)RocketIO高速串行收發(fā)器包括5類電源引腳,分別為MGTAVCCPLL,MGTAVCC,MGTAVTTRX,MGTAVTT TX,MGTAVTTRXC,這些引腳對(duì)噪聲的影響都非常敏感,為了保證高速電路能夠可靠工作,RocketIO需要和周圍的噪聲源進(jìn)行隔離。因此需要對(duì)RocketIO收發(fā)器進(jìn)行專門的供電,且每個(gè)供電引腳必須有獨(dú)立的LC濾波網(wǎng)絡(luò),其連接關(guān)系如圖5所示。


    (2)高速信號(hào)。RocketIO高速串行收發(fā)器采用高速差分信號(hào)線,由于所傳輸?shù)牟罘中盘?hào)頻率很高,高速差分對(duì)走線應(yīng)當(dāng)有最高的優(yōu)先級(jí),兩根差分信號(hào)線必須在長(zhǎng)度上盡量匹配,長(zhǎng)度失配會(huì)產(chǎn)生共模噪聲和輻射,嚴(yán)重的失配會(huì)產(chǎn)生時(shí)鐘抖動(dòng)和不可預(yù)知的時(shí)序問(wèn)題,差分線必須盡量匹配,端接電阻50 Ω和75 Ω可選,50 Ω用于芯片和芯片之間互連,75 Ω用于芯片和電纜之間互連;高速差分線不要打孔,要布在電路板中同一層。
    (3)參考時(shí)鐘。RocketIO不能使用經(jīng)過(guò)數(shù)字時(shí)鐘管理模塊(DCM)倍頻的參考時(shí)鐘,因?yàn)镈CM倍頻會(huì)引入過(guò)大的時(shí)鐘抖動(dòng),在RocketIO的高速數(shù)據(jù)傳輸條件下會(huì)引起不必要的錯(cuò)誤。RocketIO的時(shí)鐘由差分時(shí)鐘輸入后,只經(jīng)過(guò)一級(jí)BUFG,將時(shí)鐘引入FPGA的全局時(shí)鐘樹(shù),然后直接連入到RocketIO的參考時(shí)鐘引腳上。

4 測(cè)試驗(yàn)證
    在完成硬件設(shè)計(jì)后,可利用ChipScope Proh分析工具測(cè)試RocketIO的工作性能,通過(guò)內(nèi)置在收發(fā)器內(nèi)的誤碼率測(cè)試器,設(shè)置RocketIO為串行閉環(huán)方式,并運(yùn)行軟件進(jìn)行測(cè)試即可得到實(shí)時(shí)的數(shù)據(jù)傳輸狀態(tài)。如圖6所示可觀察到鏈路上的傳輸特性,并可得誤碼率可達(dá)到10-12,符合設(shè)計(jì)指標(biāo)要求。



5 結(jié)語(yǔ)
    本文從Virtex5系列FPGA的RocketIO高速串行收發(fā)器入手,根據(jù)接口設(shè)計(jì)需要闡述了應(yīng)用RapidIO協(xié)議和FC協(xié)議實(shí)現(xiàn)高速傳輸?shù)脑O(shè)計(jì)思想及工作原理。并分析了高速傳輸在硬件設(shè)計(jì)過(guò)程需要注意的一些問(wèn)題,為高速接口設(shè)計(jì)的研究奠定了基礎(chǔ),具有一定的科研價(jià)值和實(shí)踐意義。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉