文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)02-0103-04
WCDMA [1]是國際電信聯(lián)盟(ITU)采納的第三代無線通信標(biāo)準(zhǔn)之一,它采用頻分雙工(FDD)方式,具有業(yè)務(wù)靈活、頻譜效率高、容量和覆蓋范圍廣等優(yōu)勢。
軟件無線電(SDR)[2]是于上世紀(jì)90年代提出的一種無線通信系統(tǒng)的體系結(jié)構(gòu)。目前主要的軟件無線電平臺有通用處理器(GPP)、FPGA和DSP等。FPGA可以并行處理數(shù)據(jù),DSP具有強(qiáng)大的數(shù)字信號處理能力,因此它們在軟件無線電中得到了廣泛的應(yīng)用,但是FPGA和DSP的編程和調(diào)試對開發(fā)人員具有很高的要求[3]。近年來,隨著GPP性能的不斷提高,GPP在軟件無線電系統(tǒng)中的應(yīng)用也越來越廣泛。本文主要討論了基于GPP和Windows操作系統(tǒng)的軟件無線電系統(tǒng)。
GPP SDR通常采用如圖1所示的解決方案,GPP完成基帶數(shù)據(jù)的處理,硬件平臺完成對射頻的控制和與GPP的數(shù)據(jù)通信,射頻端完成數(shù)據(jù)的發(fā)射和接收。GPP與硬件平臺進(jìn)行通信的通用接口有多種方式,如PCIe[4-5]、USB2.0[6]。USB3.0和GE(千兆以太網(wǎng))等。USB2.0技術(shù)因為其接插方便,已被廣泛用于各種設(shè)備中。但是由于USB2.0的傳輸速率有限,使其在軟件無線電中應(yīng)用受到了一定的限制[6]。目前正在推廣的USB3.0技術(shù)解決了USB2.0的傳輸速率問題。本文將主要分析USB3.0在基于GPP的軟件無線電系統(tǒng)中的應(yīng)用,利用USB3.0技術(shù)實現(xiàn)WCDMA系統(tǒng)基帶數(shù)據(jù)的傳輸。在設(shè)計中針對WCDMA系統(tǒng)對硬件平臺傳輸?shù)囊?例如下行對于上行傳輸?shù)恼{(diào)度、HARQ響應(yīng)等,在硬件平臺上驗證了USB3.0技術(shù)應(yīng)用于WCDMA軟件無線電系統(tǒng)的可行性。
1 WCDMA系統(tǒng)需求及分析
1.1 WCDMA系統(tǒng)帶寬要求
在進(jìn)行硬件平臺設(shè)計之前,需要知道WCDMA系統(tǒng)的傳輸數(shù)據(jù)量及其帶寬。WCDMA系統(tǒng)以10 ms為一幀,每一幀由5個2 ms的子幀組成,每一幀又可分為15個時隙,每個時隙有2 560個碼片[7],其幀結(jié)構(gòu)如圖2所示。根據(jù)奈奎斯特采樣定率,要進(jìn)行無失真的恢復(fù)信號,系統(tǒng)的采樣頻率必須為信號帶寬的2倍。另一方面,為了能在基帶信號抽取時得到更高的信噪比,將下行信道的采樣頻率定為系統(tǒng)碼片速率的4倍,即3.84 MS/s×4=15.36 MS/s,對每一個采樣使用3 B進(jìn)行量化,則下行信道一秒的數(shù)據(jù)量為46.08 MB,每一個2 ms下行子幀的數(shù)據(jù)量為90 KB。對于上行信道,使用3.84 MHz的時鐘進(jìn)行采樣,然后用3 B進(jìn)行量化,則上行一秒的數(shù)據(jù)量為11.52 MB,每一個2 ms上行子幀的數(shù)據(jù)量為22.5 KB。WCDMA系統(tǒng)工作模式是頻分雙工(FDD),在同一個時間上下行的信道都有數(shù)據(jù)需要進(jìn)行傳輸,所以在上面的采樣率下WCDMA系統(tǒng)的帶寬要求為57.6 MB/s。
1.2 WCDMA系統(tǒng)延時要求
為了能在硬件平臺上實現(xiàn)WCDMA系統(tǒng)的基帶數(shù)據(jù)傳輸,需要滿足上面提出的各項要求。本文以WCDMA終端系統(tǒng)的HARQ為例展開討論。在WCDMA的協(xié)議中規(guī)定,一個下行子幀的HARQ響應(yīng)信息應(yīng)放在其被收下5 ms后的上行子幀中,WCDMA系統(tǒng)HARQ響應(yīng)時間如圖3所示。在①號位置收完一個下行子幀,則其HARQ的ACK/NAK反饋必須在其5 ms后的上行子幀中,即②號位置后的上行子幀中(圖中的深色為一個下行子幀和與之對應(yīng)的攜帶了HARQ反饋信息的上行子幀)。①號和②號位置之間的時間為5 ms。因此,可以將這些時間分為三部分:基帶采樣信號從射頻傳送到硬件平臺,并從硬件平臺傳向GPP的時間;GPP處理時間;GPP把數(shù)據(jù)發(fā)送到硬件平臺,硬件平臺發(fā)向射頻端的時間。
2 硬件平臺設(shè)計
基于前文提出的GPP SDR解決方案,針對WCDMA系統(tǒng)對基帶數(shù)據(jù)傳輸?shù)膬蓚€要求,采用了USB3.0控制器和FPGA組成的基帶數(shù)據(jù)傳輸系統(tǒng),其結(jié)構(gòu)如圖4所示。FPGA作為控制的核心,完成從射頻端采集數(shù)據(jù)發(fā)向USB3.0控制器和從USB3.0控制器采集數(shù)據(jù)發(fā)向射頻端的操作。USB3.0控制器主要完成GPP與硬件平臺進(jìn)行通信的USB3.0協(xié)議和基于USB3.0協(xié)議的數(shù)據(jù)傳輸。為了滿足這一要求,設(shè)計中使用了一款USB3.0控制器的外設(shè)芯片CYUSB3014[8],它引入了ARM9處理器作為內(nèi)核,內(nèi)部采用AHB總線方式,加載了ThreadX操作系統(tǒng),在此基礎(chǔ)上實現(xiàn)了USB3.0通信協(xié)議同時向下兼容USB2.0和USB1.0的通信協(xié)議,它與FPGA的接口是可編程的Slave FIFO接口[9],接口能達(dá)到3.2 Gb/s的傳輸速率。在緩存方面,設(shè)計時在硬件平臺上增加了兩塊1 GB的DDRII內(nèi)存,F(xiàn)PGA對內(nèi)存讀寫操作的最高傳輸速率能達(dá)到5.3 Gb/s。由于USB3.0控制器、DDRII內(nèi)存和射頻接口這三部分的傳輸速率各個不相同,因此,在它們之間加入了FIFO進(jìn)行速率的變換,此模塊不會影響硬件平臺的傳輸速率。綜上所述,可以發(fā)現(xiàn)FPGA與USB3.0控制器、DDRII及射頻端的接口速率恒定,因此USB3.0控制器與GPP進(jìn)行通信的速率決定了硬件平臺的傳輸速率。
3 硬件平臺性能分析
3.1 系統(tǒng)傳輸速率分析
3.1.1 傳輸速率影響因素
從第2節(jié)中的分析可以看到硬件平臺的傳輸速率是由USB3.0的傳輸所決定,因此,USB3.0的實際傳輸速率將是本文分析的重點。
USB3.0采用了與USB2.0相同的4種傳輸方式:塊傳輸方式、同步傳輸方式、控制傳輸方式和中斷傳輸方式。為了能確保數(shù)據(jù)傳輸?shù)恼_性,在設(shè)計中將塊傳輸方式作為USB3.0控制器與GPP進(jìn)行數(shù)據(jù)傳輸?shù)姆绞剑浒L為1 KB。在通信方式上,USB3.0采用全雙工的通信方式,所以在反饋機(jī)制上USB3.0對Endpoint增加了“突發(fā)”操作,即Device或者h(yuǎn)ost在沒有收到確認(rèn)信息的情況下,還能繼續(xù)傳送一定數(shù)量的包,每個包大小為1 KB。“突發(fā)”長度越長則傳輸?shù)乃俾示驮礁撸珻YUSB3014最大能支持16個突發(fā)。在實驗中將USB3.0控制器能支持的最大突發(fā)設(shè)為16個。除了“突發(fā)”的長度會影響系統(tǒng)的傳輸速率,USB3.0控制器內(nèi)部緩存的大小也會影響傳輸?shù)乃俾省?br/>
為了適應(yīng)高速的傳輸和緩存,在USB3.0控制器CYUSB3014的內(nèi)部采用了DMA的機(jī)制[10],建立了兩個傳輸?shù)腸hannel,其內(nèi)部的結(jié)構(gòu)如圖5所示。從圖中可以看到channel中有多個數(shù)據(jù)緩存,其內(nèi)部的傳輸是以緩存作為單位量,當(dāng)一個緩存被生產(chǎn)者寫滿后,CYUSB3014會產(chǎn)生響應(yīng)信息,通知Consumer從緩存中讀取數(shù)據(jù)進(jìn)行傳輸。而緩存大小設(shè)置是不同的,每次傳輸?shù)臄?shù)據(jù)量也不相同,傳輸?shù)乃俾室矔煌?/p>
3.1.2 傳輸速率的測試和分析
上一節(jié)討論了在傳輸方式和“突發(fā)”長度一定的情況下,緩存的大小對傳輸?shù)乃俾视兄匾挠绊?。在實驗中針對緩存大小對傳輸速率的影響進(jìn)行了測試,傳輸?shù)乃俾屎途彺娴拇笮〕烧嚓P(guān),緩存越大則傳輸?shù)乃俾示驮礁?。由?節(jié)可知,下行一個子幀的數(shù)據(jù)量為90 KB,因此可以將緩存的大小設(shè)為6 KB,此時一個下行子幀的數(shù)據(jù)被分成15次傳輸,在此條件下USB3.0的傳輸速率為200 Mb/s,從吞吐率上來看完全滿足系統(tǒng)的要求,下面將討論在此速率下能否滿足WCDMA系統(tǒng)對傳輸延遲時間的要求。
3.2 回環(huán)延遲分析
3.2.1 回環(huán)延遲時間測試方案
如上文所述,為了能滿足WCDMA系統(tǒng)的HARQ要求,系統(tǒng)的回環(huán)延遲時間也將成為討論的重點。從第1節(jié)可以知道,系統(tǒng)的延遲時間由三部分組成,這三部分的時間和必須小于WCDMA系統(tǒng)的HARQ響應(yīng)時間。第二部分的時間為GPP處理所需要的時間,不屬于本文討論的重點。第一部分和第三部分的時間是由硬件平臺所產(chǎn)生的延遲時間,這兩部分的時間越短,則GPP能處理的時間就越長。為了能給GPP更多的處理時間,在滿足系統(tǒng)性能情況下,將GPP端發(fā)送上行子幀的時間設(shè)定為收到一個下行子幀的前18 KB數(shù)據(jù)之后,這樣GPP端對每個下行子幀基帶采樣數(shù)據(jù)的接收被分為兩部分,第一部分為18 KB,第二部分為72 KB。在圖6中用數(shù)據(jù)傳輸?shù)姆绞侥M了一次WCDMA系統(tǒng)的HARQ的過程。一個子幀在①號位置開始被硬件平臺接收,則其對應(yīng)的HARQ的反饋信息應(yīng)在②號位置的上行子幀中被發(fā)到空口上。圖6中的⑤號部分的時間為GPP處理的時間。
為了能直觀地反映硬件平臺的延遲時間,設(shè)計時去掉了GPP處理的時間,所以把計時的起點選在了圖6中的③號點上,計時的終點為④號點即硬件平臺收到了上行一幀的數(shù)據(jù)后,此時計算出的時間就為在硬件平臺上所消耗的時間,把這部分的時間稱為“回環(huán)延遲時間”。由于USB3.0的傳輸速率受到GPP上USB的帶寬、GPP內(nèi)核使用情況等影響,導(dǎo)致數(shù)據(jù)從硬件平臺傳輸?shù)紾PP內(nèi)存的時間為不定值。從圖6中可以看出,從計時點③開始,上行一個子幀的數(shù)據(jù)需要在3 ms內(nèi)完成發(fā)送(即④號點的位置必須在②號位置的前面),否則一個上行子幀的數(shù)據(jù)就不能按時完成發(fā)送,造成上行丟包。
3.2.2 回環(huán)延遲時間結(jié)果及分析
在設(shè)計中選用了主板自帶USB3.0接口的臺式計算機(jī)進(jìn)行測試,計算機(jī)的參數(shù)如下:
CPU:Inter(R)Core(TM)i5-2300 CPU @2.8 GHz
內(nèi)存:4.00 GB
操作系統(tǒng):32位Win7
編程環(huán)境:VS2008
測試的結(jié)果如圖7所示,橫坐標(biāo)為延遲時間,縱坐標(biāo)為回環(huán)延遲時間的概率分布。
從測試結(jié)果可以看出,回環(huán)延遲時間主要集中在0.6~1 ms之間,GPP有比較充裕的時間進(jìn)行數(shù)據(jù)的處理。從圖7中的統(tǒng)計可以看出延遲時間大于3 ms的概率為1.55×10-4,而WCDMA系統(tǒng)對空中接口丟包率的數(shù)量級要求為10-3,由于硬件平臺的延遲而帶來的丟包率遠(yuǎn)小于系統(tǒng)的空中接口的丟包率,所以此硬件平臺能夠滿足WCDMA系統(tǒng)的要求。如需滿足更高的延時需求,則可以選擇基于Windows的實時操作系統(tǒng),比如IntervalZero[11],這部分工作有待未來的研究中繼續(xù)進(jìn)行。
本文分析了USB3.0技術(shù)應(yīng)用于基于GPP的軟件無線電系統(tǒng)的可行性,并通過帶有USB3.0控制器和FPGA組成的硬件平臺,實現(xiàn)了WCDMA系統(tǒng)基帶數(shù)據(jù)的高速傳輸。通過分析和實驗,在本文的硬件平臺框架下USB3.0的最高傳輸速率能達(dá)到260 Mb/s, 應(yīng)用于WCDMA系統(tǒng)的最高傳輸速率能達(dá)到200 Mb/s,回環(huán)延遲時間為0.7 ms左右,該結(jié)果證明USB3.0技術(shù)在GPP軟件無線電系統(tǒng)的基帶數(shù)據(jù)傳輸上能夠滿足WCDMA系統(tǒng)的帶寬和延時的要求。
參考文獻(xiàn)
[1] 3GPP TS 25.201 V10.0.0. Physical channels and mapping of transport channels onto physical channels(FDD)[S].2010.
[2] JOHNSON P. New research lab leads to unique radio receiver[J]. E-Systems Team, 1985,5(4):6-7.
[3] PAWLOWSKI P, DABROWSKI A, SKRZYPEK P. Software defined radio-design and implementation of complete platform[C]. IEEE 14th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS), Cottbus,2011.
[4] TAN K, Zhang Jiansong, Fang Ji, et al. Sora: high performance software radio using general purpose multi-core processors[C]. In 6th USENIX Symposium on Networked Systems Design & Implementation (NSDI) 2009, USENIX, 2009.
[5] Guo Peng, Qi Xin, Xiao Limin,et al. A novel GPP-based software-defined radio architecture[C].1st International ICST Workshop on C-RAN,Kunming,2012.
[6] Zhou Jing, Qi Xin, Su Xin,et al. Investigation on USB 2.0 in Software-Defined Radio[C]. 1st International ICST Workshop on C-RAN,Kunming,2012.
[7] 3GPP TS 25.211 V10.0.0. Physical channels and mapping of transport channels onto physical channels(FDD)[S].2010.
[8] Cypress semiconductor.EZ-USB?誖FX3 SuperSpeed USB Controller[S].2012.
[9] Cypress Semiconductor. Designing with the EZ-USB FX3 Slave FIFO Interface[S].2012.
[10] Cypress Semiconductor.FX3 Programmers Manual[S].2012.
[11] Interval Zero RTX RTOS[OL].[2012-06-20].www.intervalzero.com.