摘要:基于時分長期演進(jìn)(timedivision- longtermevolution,TD-LTE)射頻一致性測試系統(tǒng)中數(shù)據(jù)交互的分析研究,為了很好地滿足現(xiàn)場可編程門陣列(fieldprogrammablegatearray,FPGA)間的大容量數(shù)據(jù)交互,設(shè)計了一種高速的嵌入式技術(shù)串行高速輸入輸出口(serialrapidIO, SRIO),實現(xiàn)2塊FPGA芯片間的互連,保證在TD-LTE系統(tǒng)中上行和下行數(shù)據(jù)處理的獨立性和交互的便捷。基于Xilinx公司的Virtex-6系列XC6VLX475T芯片,給出了SRIO接口的整體性設(shè)計方案,經(jīng)過ModelSim軟件仿真,確定適合項目需要的數(shù)據(jù)交互的格式類型和事務(wù)類型,對接口代碼進(jìn)行綜合、板級驗證、聯(lián)機(jī)調(diào)試等,在ChipScope軟件上對比分析數(shù)據(jù)傳輸?shù)恼_性,通過測試模塊統(tǒng)計比較發(fā)送和接收信號的誤比特率, 確定了SRIO接口在高速數(shù)據(jù)傳輸?shù)姆€(wěn)定性和可靠性,成功驗證了SRIO接口在FPGA之間數(shù)據(jù)的互連互通,并將該方案作為一種新的總線技術(shù)應(yīng)用于TD-LTE射頻一致性測試儀系統(tǒng)開發(fā)中。
0 引言
隨著移動通信技術(shù)研究的不斷深入, 3GPPLTE逐漸成為支撐世界電信業(yè)務(wù)的重要移動通信系統(tǒng)。在時分長期演進(jìn)(timedivision-longtermevolution,TD-LTE)系統(tǒng)的研究中,頻分多址技術(shù)、多輸入多輸出(multipleinputmultipleoutput, MIMO)技術(shù)[1]等各種創(chuàng)新技術(shù)的應(yīng)用,使得系統(tǒng)的處理能力要求越來越高,高速數(shù)字信號處理(digitalsignalprocessor,DSP)以及大規(guī)模現(xiàn)場可編程門陣列(fieldprogram-mablegatearray,F(xiàn)PGA)被廣泛應(yīng)用[2],僅僅依靠提高單處理器的性能來提高處理能力越來越艱難,必須采用實時并行處理技術(shù)。多處理芯片并行處理是滿足系統(tǒng)處理能力要求的有效解決途徑,因此,芯片之間的互連顯得尤為重要。傳統(tǒng)的分級共享總線帶寬和速率都很低,其性能已經(jīng)達(dá)到極限,不能滿足TD-LTE的高速處理需求。
傳統(tǒng)并行總線互連所需要引腳數(shù)較多,給器件封裝、測試和焊接都帶來了一些問題,也會增加在系統(tǒng)中應(yīng)用的復(fù)雜度。而串行高速輸入輸出口(se-rialrapidIO,SRIO)接口具有速度快、管腳數(shù)少、系統(tǒng)成本低、可以實現(xiàn)點對點或點對多點通信等優(yōu)點。SRIO接口已經(jīng)成功應(yīng)用在多DSP處理芯片間 的數(shù)據(jù)互連[3] 。在多FPGA處理芯片系統(tǒng)架構(gòu)的TD-LTE系統(tǒng)中,基帶處理信息交互急需一種新的 高速互連接口。本文在對SRIO協(xié)議[4] 及相關(guān)技術(shù) 進(jìn)行深入研究后,設(shè)計了一種基于可靠的開放式互連協(xié)議標(biāo)準(zhǔn),實現(xiàn)2塊FPGA芯片之間的數(shù)據(jù)交互方案,提高了數(shù)據(jù)交互能力,并對傳輸時延進(jìn)行分析,滿足TD- LTE射頻一致性測試系統(tǒng)的性能要求。
1 SRIO技術(shù)
1.1 SRIO的簡介
SRIO屬于系統(tǒng)內(nèi)部互連技術(shù),適用于高性能的 嵌入式設(shè)備的系統(tǒng)內(nèi)部互連, 還提供了嵌入式系統(tǒng)開發(fā)者所需的可擴(kuò)展性、魯棒性和效率。RapidIO采用包交換技術(shù),在網(wǎng)絡(luò)處理器(networkprocessingunit,NPU)、中央處理器(centralprocessingunit,CPU)和DSP之間的通信具有高速、低延遲、穩(wěn)定可靠的互連性,可行的應(yīng)用包括多處理器、存儲器、網(wǎng)絡(luò)設(shè)備中的存儲器映射I/O器件、存儲子系統(tǒng)和通用計算平臺的數(shù)據(jù)交互,具有廣闊的應(yīng)用前景。
2011年5月發(fā)布的RapidIOv2.1規(guī)范提供了2種接口模式(1x和4x)[5] , 1x使用較少的邏輯資源,數(shù)據(jù)帶寬也比較低;4x需要更多的邏輯資源,但是提供了更高的帶寬和更好的可靠性。時鐘采用內(nèi)部的差分時鐘,支持的波特率[6] 分別有1.25, 2.5,3.125和5Gboud,滿足不同的應(yīng)用需求,還支持多 種事物類型,包括讀/寫非共享寄存器、流寫、維護(hù)、門鈴和信箱服務(wù)等。
1.2 SRIO規(guī)范
SRIO采用3層分級體系結(jié)構(gòu)[4],如圖1所示。
?
①邏輯層。定義了多種規(guī)范,包括I/O邏輯操作、消息傳遞、共享存儲、流量控制和數(shù)據(jù)流,以及接口的全部協(xié)議和包的格式。它們?yōu)槎它c器件發(fā)起和完成事物提供必要的信息。
②傳輸層。定義了RapidIO的地址空間,并提供報文在端點設(shè)備間傳輸所需的路由信息。
③物理層。處于整個分級結(jié)構(gòu)的底部,定義了設(shè)備級接口的細(xì)節(jié),明確說明了包傳輸機(jī)制、流量控制、電氣特性和低級錯誤管理[7] 。
1.3 SRIO接口寫時序
根據(jù)實際應(yīng)用時FPGA用戶端通過SRIO接口 發(fā)送數(shù)據(jù)所生成的時序圖[6] ,可知其接口的基本時序圖如圖2所示。
?
圖2中,sys_clk是系統(tǒng)時鐘,是由輸入的差分 時鐘經(jīng)過時鐘模塊得到的,比普通單端時鐘更穩(wěn)定;ireq_sof_n是開始信號,標(biāo)志著一個數(shù)據(jù)幀的開始;ireq_eof_n是結(jié)束信號,一個數(shù)據(jù)幀的結(jié)束標(biāo)志;ireq_vld_n為有效信號,該信號為低時所傳送的數(shù)據(jù)有效;ireq_rdy_n是開始標(biāo)志位;ireq_byte_en_n是數(shù)據(jù)的位使能信號,圖2中數(shù)據(jù)D6對應(yīng)的ireq_byte_en_n低8位為高,意味著D6的低8位未被使能,還有其他許多的格式控制信號就不在這一一列舉。
2 SRIO的邏輯設(shè)計與實現(xiàn)
SRIO接口作為FPGA間的數(shù)據(jù)交互通道,數(shù)據(jù) 通過接口由主機(jī)傳送到從機(jī)以及由從機(jī)傳回至主機(jī)的過程,在FPGA中由6個主要的模塊完成:接口控制、時鐘、復(fù)位控制、邏輯核、物理核、緩存控制。下面將介紹系統(tǒng)內(nèi)部實現(xiàn)方案以及各個模塊的功 能及Veriolg語言[8]實現(xiàn)方法[9]。
為了仿真和實現(xiàn)圖的顯示直觀方便,這里采用回環(huán)的方式來論證,即發(fā)送和接收為同一主機(jī),目標(biāo)地址與源地址相同。
接口控制模塊是整個系統(tǒng)的起始端和結(jié)束端,用戶可以通過該模塊來控制所需交互數(shù)據(jù)大小、類型和格式。隨機(jī)存儲器(randomaccessmemory,RAM)是FPGA用來傳輸數(shù)據(jù)的中轉(zhuǎn)站,通過控制RAM中的數(shù)據(jù)來實現(xiàn)SRIO在2塊FPGA芯片之間數(shù)據(jù)交互功能。
SRIO使用的是專用的差分時鐘,頻率為156.25MHz或125MHz,不同的時鐘對應(yīng)的傳輸速率不一樣,差分時鐘的用戶約束為NET“sys_clkn”LOC=“G9”;NET“sys_clkp”LOC=“G10”。這里差分時鐘先是經(jīng)過差分時鐘緩存(IBUFDS_GTXE1)和時鐘 分頻管理單元(MMCM_ADV)后, 得到2個時鐘UCLK和UCLK_DV4,用來驅(qū)動其他模塊工作。
2.1 FPGA設(shè)計方案的硬件環(huán)境
FPGA是選用2塊Xilinx公司的Virtex-6系列 XC6VLX475T芯片。基于采用第三代Xilinx ASMBLTM架構(gòu)的40nm制造工藝, Virtex-6FPGA系列還擁有新一代開發(fā)工具和早已針對Virtex-5FP-GA而開發(fā)的廣泛IP庫支持。Virtex-6FPGA把先 進(jìn)的硬件芯片技術(shù)、創(chuàng)新的電路設(shè)計技術(shù)以及架構(gòu)上的增強(qiáng)完美結(jié)合在一起,與前代Virtex器件以及競爭FPGA產(chǎn)品相比,功耗大大降低,性能更高并且成本更低。
2.2 FPGA內(nèi)部實現(xiàn)方案框圖
根據(jù)SRIO接口構(gòu)成系統(tǒng)的原理可以設(shè)計出SRIO接口硬件實現(xiàn)原理方案框圖,如圖3所示。SRIO完成2塊FPGA芯片間的數(shù)據(jù)交互,原理圖兩部分是對稱的。
復(fù)位模塊為整個工程產(chǎn)生復(fù)位信號,這里采用 的是異步復(fù)位同步釋放,當(dāng)一個系統(tǒng)復(fù)位信號出現(xiàn)時這個模塊會發(fā)出一個鏈路復(fù)位信號。
邏輯層接口由3個部分組成:用戶接口、鏈路接口和維護(hù)接口。用戶接口又由4個信號端口構(gòu)成,分別為初始請求ireq、初始響應(yīng)iresp、目標(biāo)請求treq和目標(biāo)響應(yīng)tresp。用戶可以通過接口控制模塊來配置這4個信號端口,來實現(xiàn)數(shù)據(jù)向遠(yuǎn)端的或?qū)懖僮鳌f溌方涌谑怯脕砼c物理層通信和緩存器的數(shù)據(jù)交互。維護(hù)操作可以用來發(fā)送某些信息,例如,不含端點的器件的錯誤指示符或狀態(tài)信息。數(shù)據(jù)載荷通常放在目標(biāo)端點的隊列中并向本地處理器產(chǎn)生一個中斷。
緩存器可以平衡系統(tǒng)性能與資源使用之間的平衡,發(fā)送和接收的緩存區(qū)間大小是可以配置的。緩存核可以處理所有從物理層返回的數(shù)據(jù)包,包括包的重發(fā)和錯誤恢復(fù)。它能夠保證數(shù)據(jù)包正確到達(dá)接收端和物理層的驗證。
物理層核( phy sicallayer,PHY )負(fù)責(zé)處理鏈路調(diào)整、初始化和協(xié)議,包括插入循環(huán)冗余校驗碼(cyclical redundancy check,CRC
)和確認(rèn)標(biāo)識符到輸出的信息包中。PHY使用專用的8B/10B碼(即K碼)來管理鏈路,管理內(nèi)容包括流量控制、包定界和錯誤報告。
最后在接口控制模塊中加入數(shù)據(jù)收集模塊,收集有效的發(fā)送數(shù)據(jù)ireq_data和接收數(shù)據(jù)treq_data,再用matlab軟件對比分析誤碼率。
3 數(shù)據(jù)交互仿真與實現(xiàn)
本文使用Xilinx ISE13.4軟件,聯(lián)合ModelSim仿真軟件仿真了不同事物格式和類型下多數(shù)據(jù)包傳輸。圖4主要顯示了事物格式字段值為5、事物類型字段值為4的情況下數(shù)據(jù)交互的控制信號和數(shù)據(jù)信號的整體波形,由于篇幅的原因,圖4只給出了部分發(fā)送端和接收端的信號,包括數(shù)據(jù)信號treq_data_i、開始控制信號treq_sof_n_i、結(jié)束控制信號treq_eof_n_i、準(zhǔn)備控制信號treq_rdy_n_o、有效控制信號treq_vld_n_i、事務(wù)格式treq_ftype_i和事物類型treq_ttype_i等。經(jīng)過仿真對比分析,驗證了發(fā)送和接收數(shù)據(jù)是相同的,且相應(yīng)的控制信號滿足協(xié)議要求,仿真實現(xiàn)了2塊FPGA芯片間的數(shù)據(jù)交互功能。
對上述設(shè)計的程序進(jìn)行綜合、布局布線,將代碼下載到硬件平臺后能夠正常運行,通過ChipScope軟件,可以進(jìn)一步從實際情況測試接口的正確性和穩(wěn)定性。通過數(shù)據(jù)采集,可以得到SRIO在硬件平臺上數(shù)據(jù)交互的測試波形圖,如圖5所示。FPGA以NWRITE(Ftype=5,Ttype=4)事務(wù)類型發(fā)送數(shù)據(jù),而接收端從物理接口接收數(shù)據(jù)并以逆向解析出用戶數(shù)據(jù)。
用matlab軟件對比發(fā)送和接收數(shù)據(jù),計算統(tǒng)計得到的誤碼率低于10-10,滿足高速低誤碼率傳輸系統(tǒng)的要求,而且各個控制信號都符合協(xié)議要求。由圖5可知,數(shù)據(jù)傳輸時延為122個時鐘周期,接口在硬件平臺上運行的實際情況與設(shè)計方案是相符的,滿足接口通信的要求,實現(xiàn)了數(shù)據(jù)的正確接收并且具有較好的穩(wěn)定性。從而能夠更好地用在實際的開發(fā)平臺中。
4 總 結(jié)
SRIO針對高性能嵌入式系統(tǒng)芯片間和板間互連設(shè)計,是未來嵌入式系統(tǒng)互連的最佳選擇之一。本文詳細(xì)介紹了SRIO基本規(guī)范、系統(tǒng)組成基本原理、硬件環(huán)境和關(guān)鍵模塊設(shè)計。經(jīng)過軟件仿真和硬件平臺,驗證了2塊FPGA芯片之間數(shù)據(jù)交互的可行性。并將此模塊應(yīng)用于TD-LTE射頻一致性測試儀表系統(tǒng)開發(fā)中,如圖6所示(TD-LTE射頻一致性測試儀基帶發(fā)送板)。通過實驗證明,其工作可靠,達(dá)到了設(shè)計要求,為下一步數(shù)據(jù)的正確處理提供了可靠保證。
評論