基于CPRI協(xié)議的5G基帶數據傳輸技術(shù)的研究與實(shí)現
作者/袁行猛 1,2 ,陳亮 3 ,徐蘭天 1,2(1.中國電子科技集團公司第四十一研究所,安徽 蚌埠 233010;2.電子信息測試技術(shù)安徽省重點(diǎn)實(shí)驗室,安徽 蚌埠233010;3.安徽省科學(xué)技術(shù)研究院,安徽 合肥 233000)
本文引用地址:http://dyxdggzs.com/article/201903/399033.htm 摘要:5G極高速的傳輸速率導致信號帶寬和基帶信號處理速度都將大大增加,對極高速數據流的實(shí)時(shí)處理和解析使得測試難度變得更加困難,CPRI協(xié)議作為現階段高速傳輸的一種協(xié)議,被本創(chuàng )新基金項目采用且用于數據傳輸,本研究基于Xilinx公司的xcvu9p系列芯片,使用FPGA中自帶的CPRI協(xié)議的IP核進(jìn)行例化和設計,為了使用該CPRI核,設計了數據轉換模塊,對數據進(jìn)行相應的處理,已滿(mǎn)足CPRI核對傳輸數據的要求。
關(guān)鍵詞: CPRI協(xié)議; FPGA; 5G極高速; 高速傳輸
*項目基金:中國電科技術(shù)創(chuàng )新基金項目《微波毫米波大帶寬大規模MIMO測試技術(shù)研究》
0 引言
隨著(zhù)技術(shù)的不斷革新與進(jìn)步,隨著(zhù)通信技術(shù)自身發(fā)展的需要以及持續增長(cháng)的用戶(hù)需求,掀起了新一代通信技術(shù)的發(fā)展熱潮。此外,智能終端設備的大量普及帶來(lái)了數據流量的激增。5G通訊的發(fā)展便提上日程,作為新一代通信的熱點(diǎn)技術(shù)將面臨很多的研究難題,除了要能夠分析6 GHz以下頻率的波形以外,還需要分析微波,毫米波等波形。5G技術(shù)最顯著(zhù)的挑戰主要在于5G極高速的傳輸速率導致信號帶寬和基帶信號處理速度都將大大增加,對極高速數據流的實(shí)時(shí)處理和解析使得測試難度變得更加困難 [1] 。
隨著(zhù)數據傳輸的要求不斷提高,因此無(wú)線(xiàn)接口聯(lián)盟(愛(ài)立信,華為,NEC,西門(mén)子和北電)發(fā)起并規定了CPRI協(xié)議的標準,CPRI作為通用公共無(wú)線(xiàn)接口提供了無(wú)線(xiàn)控制設備(REC)與無(wú)線(xiàn)設備(RE)或RE與RE之間的通信標準。通用的開(kāi)放標準極大節約了產(chǎn)品成本,有效提高了其通用性和靈活性。不僅解決了5G高速通信下數據的傳輸要求,同時(shí)所含有的控制信息(如:信號丟失、幀丟失等物理層的告警信息)能夠實(shí)現對數據的處理與控制,實(shí)現不同功率以及上下行之間的切換,提高了數據傳輸的可靠性 [2] 。
為了實(shí)現基帶處理單元(BBU)與射頻單元(RFU)之間數據的收發(fā)操作,滿(mǎn)足不同廠(chǎng)商之間的通信設備能夠互聯(lián),因此需要規定在某一種協(xié)議下進(jìn)行數據的傳輸操作。從核心網(wǎng)傳入BBU的基帶信號經(jīng)過(guò)基帶處理單元進(jìn)行處理(編碼、復用、調制和擴頻等)然后通過(guò)光纖傳入到射頻單元。數據的收發(fā)系統如圖1所示。
1 系統架構
基于CPRI協(xié)議的5G基帶數據傳輸系統如圖2所示,該系統實(shí)現了基帶單元BBU和射頻單元RFU之間基于CPRI協(xié)議的數據通路。
其中,CPRI協(xié)議用Xilinx公司的IP核實(shí)現,為了使用該CPRI核,需要設計數據轉換模塊。數據轉換模塊實(shí)現兩個(gè)基本功能:(1)比特重填。
?。?)速率匹配。
在發(fā)端,數據轉換模塊將連續采樣的IQ數據轉換為符合CPRI協(xié)議幀結構和速率的數據;在收端,數據轉換模塊將CPRI協(xié)議中的數據恢復為按指定采樣率連續采樣的IQ數據。
2 CPRI協(xié)議
CPRI超幀及基本幀結構 [3]
基本幀到(通用移動(dòng)通信系統)UMTS無(wú)線(xiàn)幀的逐級嵌套示意圖如圖3所示。對于CPRI 10 ms 的幀來(lái)說(shuō),一個(gè)BFN包含150個(gè)超幀,長(cháng)度為10 ms;每個(gè)超幀含有256個(gè)基本幀,長(cháng)度為66.67μs。每個(gè)基本幀幀長(cháng):1 Tc=1/3.84 MHz=,每個(gè)字傳輸時(shí)間:ns。一個(gè)基本幀包含16個(gè)字。
一個(gè)超幀的256個(gè)控制字按照每4個(gè)字一組被分成64個(gè)子信道所示。子信道用Ns來(lái)表示,Ns=0?63,每個(gè)子信道里的控制字序號 Xs=0?3,一個(gè)超幀的控制字序號 X=Ns+64×Xs,取值范圍為0?255。在數據傳輸過(guò)程中,基本幀中的控制字首先被傳輸,超幀中控制字與IQ數據交替進(jìn)行傳輸,圖4為單個(gè)超幀在時(shí)序上的子信道和控制字的說(shuō)明。對于子信道0,除了同步控制字(Xs=0),控制字節#Z.X.Y(Y≥1)的內容是保留的(“r”)。對于子信道2,控制字節# Z.X.Y(Y≥1)的內容是保留的(“r”)。
3 數據轉換設計
3.1 功能設計
(1)比特重填
連續采樣的發(fā)端數據I、Q各16 bit,組成32 bit數據通路,每幀為64組;而9830.4 Mb/s線(xiàn)速率、位寬的CPRI協(xié)議每個(gè)基本幀也為64個(gè)周期,但其中前4個(gè)周期傳送控制字(128 bit),CPRI核接收IQ數據流時(shí)會(huì )自動(dòng)忽略前四個(gè)周期數據,從其他端口讀入控制字。CPRI核的數據時(shí)序邏輯如圖5所示。
因此,需將IQ路數據的最低位比特刪去,各保留,將64周期30 bit的數據重排為60周期32 bit。
收端則將其重新恢復為64周期一幀的連續數據,IQ的最低位填0。比特重填示意圖如圖6。
(2)速率匹配
為了適應5G通信中30 kHz和60 kHz兩種子載波間隔的數據的基帶傳輸,發(fā)端和收端IQ數據采用MHz和245.76 MHz兩種采樣頻率,而CPRI核固定采用的數據讀入和輸出頻率。對于采樣率的輸入,需要用兩個(gè)基本幀的時(shí)間緩存,再用一個(gè)基本幀的時(shí)間輸出,接著(zhù)輸出一個(gè)全0的無(wú)效幀,等待下一幀數據。對應地,收端識別到有效幀并緩存之后,用兩個(gè)幀的時(shí)間輸出 [4] 。
3.2 算法設計
(1)乒乓緩存
設立兩個(gè)緩存,編號i=0或1,將當前輸入的數據緩存至緩存器i,下一個(gè)幀內從緩存器i輸出,同時(shí)把新的數據讀入緩存器~i(i的反),交替進(jìn)行讀入和讀出。
(2)比特重填
我們考慮了兩種基于緩存的比特重填方法,根據緩存器的硬件實(shí)現的不同,分為普通寄存器數組緩存和RAM核+小寄存器緩存。不論是那種緩存算法,都應實(shí)現用一個(gè)幀時(shí)間緩存,在下一個(gè)幀時(shí)間輸出(發(fā)端與新一幀幀頭同步,收端需延遲一個(gè)周期),實(shí)現連續的輸入輸出。
(3)普通寄存器數組緩存
用例如下面的語(yǔ)句構建普通的寄存器數組:Reg其中0~63和64~127號寄存器分別構成0、1兩個(gè)緩存器,可用地址最高比特區分。
在發(fā)端,緩存時(shí)連續緩存每個(gè)完整的32 bit輸入,讀出時(shí)進(jìn)行比特重組。設置兩個(gè)變量,s表示當前輸出的第一個(gè)符號在原始幀中的編號,b表示第一個(gè)符號已經(jīng)輸出過(guò)的比特數。則轉換器的輸出可以用圖7的符號合并邏輯構成:在收端,緩存時(shí)就將每個(gè)周期的32 bit拆開(kāi)放置在緩存器的兩個(gè)相鄰位置中,緩存邏輯可以如圖8表示。
輸出則直接從緩存器中讀出即可。
由此可以看出,這種緩存邏輯和RAM的最大不同是,會(huì )在同一個(gè)周期內對兩個(gè)寄存器進(jìn)行寫(xiě)入或讀取,這在標準的RAM核里是不會(huì )出現的。
(4)RAM核+小寄存器緩存
用Vivado的IP Catalog工具生成一個(gè)核,寬度32 bit,深度128。該核包含讀/寫(xiě)地址、讀/寫(xiě)數據、寫(xiě)使能、時(shí)鐘信號等端口。RAM可以實(shí)現乒乓緩存,但由于一個(gè)周期只能讀寫(xiě)一個(gè)位置,所以需要額外的緩存機制來(lái)實(shí)現發(fā)端周期的縮減/符號合并,和收端的周期擴增/符號拆分。
在發(fā)端,先用一個(gè)信源幀長(cháng)度時(shí)間將64個(gè)符號存入RAM中,再用一個(gè)CPRI基本幀時(shí)間依次讀出,注意寫(xiě)周期時(shí)間可能為讀周期的兩倍。設置一個(gè)120 bit的FIFO寄存器,用來(lái)緩存每個(gè)符號的高30 bit,最多只需要緩存4個(gè)符號,就可以實(shí)現在一個(gè)基本幀內完成CPRI數據的輸出。
該寄存器的行為如下:
(1)第1~4個(gè)周期:將RAM讀數據到FIFO中;
(2)第5~50個(gè)周期:從FIFO中讀出32 bit作為信號輸出給CPRI核,同時(shí)讀入新的30 bit。
(3)第51~64個(gè)周期:FIFO中的數據已不足32bit,需同時(shí)用FIFO中的數據和RAM讀出的數據構成iq_tx。
在收端,先用一個(gè)CPRI幀的時(shí)間將60個(gè)CPRI數據符號存入RAM中,輸出時(shí),設置一個(gè)32 bit的寄存器,將當前RAM讀出數據中除了當前恢復的信源符號以外其余的比特寫(xiě)入寄存器,下一個(gè)信源符號輸出為寄存器中的數據(高位)和RAM讀出數據(低位)的組合。
(5)無(wú)效幀設置
在CPRI協(xié)議中,256個(gè)基本幀組成一個(gè)超幀,這256個(gè)基本幀的控制字被劃分為64個(gè)子通道,編號Ns=0,1,?,63;每個(gè)通道4個(gè)控制字,編號??梢杂肗s和Xs表示一個(gè)基本幀在超幀中的編號。Xilinx的CPRI核在tx端和tx端模式中都會(huì )輸出ns和xs編號,需要注意tx端在iq_tx_enable信號有效時(shí),vendor_tx_ns/xs指示的是下一幀的編號,而rx端在basic_frame_first_word信號有效時(shí)指示的是上一幀的編號。CPRI核的通道編號的時(shí)序邏輯如圖9、圖10所示。
為了避免額外的標志信號,我們規定,在MHz的原始采樣頻率下,有效幀為Ns為偶數的幀,而Ns為奇數的幀為無(wú)效幀(全0)。這樣在收端可以根據編號直接判斷當前幀是否有效。如圖 11所示,其中顯示的tx_ns和rx_ns為4的幀是有效幀。
(6)慢速輸入輸出
另外在122.88 MHz時(shí),tx端的輸入緩存和rx端的輸出行為都需要隔周期進(jìn)行,而tx端的輸出和rx端的輸入緩存則連續進(jìn)行。以tx端為例,可以在rate_select信號為1(表示122.88 MHz原始采樣率)時(shí),設置信號進(jìn)行是否緩存的判斷。
4 仿真驗證
采用Vivado 2017.2軟件中的BehavioralSimulation(行為級仿真)進(jìn)行仿真驗證。
除了轉換模塊外,還增加了其他模塊構成簡(jiǎn)單的驗證系統。速率選擇模塊將外部的異步速率選擇信號,轉換為同步于CPRI核數據時(shí)鐘的信號,在一個(gè)Node B Frame的第一個(gè)周期變化。信源數據生成模塊可以采用理想同頻但異步與核的時(shí)鐘。一個(gè)模擬核模塊用于生成各種核的標志信號(如收發(fā)的幀頭標志信號、子通道號等),并將數據經(jīng)理想信道傳輸[5]。
經(jīng)仿真驗證,兩種緩存算法都可實(shí)現功能,收端轉換模塊可以正確恢復處理信源數據。
采用Xilinx VCU118開(kāi)發(fā)板進(jìn)行驗證,其中FPGA芯片型號為(速度等級-2LE)。額外增加一個(gè)頂層模塊,將開(kāi)發(fā)板上的可編程差分時(shí)鐘信號用IBUFGDS原語(yǔ)轉換為單端時(shí)鐘信號。
使用ILA監視器查看板子上的信號。
經(jīng)驗證發(fā)現,基于普通寄存器數組緩存的算法無(wú)法正確實(shí)現數據轉換,其原因可能是普通寄存器數組綜合出來(lái)的硬件性能滿(mǎn)足不了算法的讀寫(xiě)需求。而基于RAM核+小寄存器緩存的算法可正確實(shí)現系統功能,恢復信源信號。ILA監視器信號如圖12、13、14所示。
IP核聯(lián)合驗證:可以生成的CPRI IP核的示例工程,在核之外增加了增加了IQ數據、供應商數據、HDLC和Ethernet數據的產(chǎn)生和控制模塊等。我們在該工程基礎上,加入本研究中的數據轉換模塊,進(jìn)行了聯(lián)合仿真驗證,仿真結果可以實(shí)現正確的數據傳輸。如圖所示,其中txp、txn和rxp、rxn是CPRI核的發(fā)端和收端的單比特差分信號,即由射頻口傳輸的信號。仿真圖如圖17,分別展示了收發(fā)的幀頭。
5 結論
本研究完成了基于CPRI協(xié)議的5G基帶數據傳輸系統中數據轉換模塊的設計和驗證。為了構建基帶單元BBU和射頻單元RFU之間基于CPRI協(xié)議的數據通路,需將信源信宿的數據格式和CPRI協(xié)議/核的格式匹配。數據轉換模塊需要完成比特重填和速率匹配兩個(gè)功能,而難點(diǎn)在于高速硬件實(shí)現。比特重填是將連續采樣的每幀64周期的數據刪去低位比特后,空出控制字的四個(gè)周期,填充進(jìn)CPRI信號幀的后60周期內。收端則將CPRI幀中的數據重新恢復為連續數據。另外發(fā)端和收端IQ數據可能有兩種采樣頻率,而CPRI核則使用固定采用的數據讀入和輸出頻率,需要通過(guò)外部信號切換,實(shí)現兩種不同速率下的匹配傳輸。為此,本研究設計了乒乓緩存、比特重填、無(wú)效幀設置、慢速輸入輸出算法。其中比特重填考慮了基于普通寄存器數組緩存和基于RAM核+小寄存器緩存兩種算法。經(jīng)過(guò)仿真驗證和硬件驗證,在Xilinx VCU118開(kāi)發(fā)板上實(shí)現了數據轉換功能。
參考文獻:
[1]周代衛,王正也,周宇等.5G終端業(yè)務(wù)發(fā)展趨勢及技術(shù)挑戰[J].電信網(wǎng)技術(shù),2015,3:64-79.
[2]張小波.10Gbps以太網(wǎng)CPRI分組傳輸關(guān)鍵技術(shù)研究[J].電子科技大學(xué),2013:25.
[3]CPRI Specification V4.2.2010:15-18.
[4]郭彬,曹偉,陶安.LTE和LTE-Advanced系統中CPRI壓縮算法研究[J].信息通信技術(shù),2013,02:64-69.
[5]邢立佳,李一兵.基于Xilinx器件的CPRI協(xié)議實(shí)現方法[J].今日電子,2009,01:87-91.
作者簡(jiǎn)介:
袁行猛(1988-),男,助理工程師,主要研究方向:信號與信息處理。
本文來(lái)源于科技期刊《電子產(chǎn)品世界》2019年第4期第41頁(yè),歡迎您寫(xiě)論文時(shí)引用,并注明出處
評論