陳為剛,趙 干,李 思,楊晉生
(天津大學(xué)電子信息工程學(xué)院,天津300072)
歐洲地面數(shù)字電視廣播(DVB-T)標(biāo)準(zhǔn)采用編碼正交頻分復(fù)用(Coded Orthogonal Frequency Division Multiplexing,COFDM)技術(shù),具備較高的頻譜利用效率和強(qiáng)大的抗多徑干擾能力[1]。依據(jù)該標(biāo)準(zhǔn)建立的地面數(shù)字電視系統(tǒng)正為全世界范圍內(nèi)的電視用戶提供標(biāo)清和高清電視節(jié)目傳輸服務(wù)。
目前用于DVB-T信號(hào)接收的設(shè)備多采用專用功能的硬件芯片實(shí)現(xiàn),此種實(shí)現(xiàn)架構(gòu)憑借運(yùn)行效率高、性能穩(wěn)定等優(yōu)點(diǎn)得到了眾多設(shè)備生產(chǎn)商的認(rèn)可。但該實(shí)現(xiàn)架構(gòu)存在如下缺點(diǎn):首先,開發(fā)過程中較高的硬件制作成本導(dǎo)致不能充分對比不同設(shè)計(jì)方案的優(yōu)劣性;其次,難以伴隨數(shù)字電視傳輸標(biāo)準(zhǔn)的發(fā)展實(shí)現(xiàn)設(shè)備的快速更新。隨著軟件無線電概念的提出和發(fā)展,可通過模/數(shù)轉(zhuǎn)換盡早實(shí)現(xiàn)信號(hào)數(shù)字化,并通過各種數(shù)字信號(hào)處理設(shè)備完成基帶信號(hào)處理[2]。基于此方式可得到一種新的實(shí)現(xiàn)架構(gòu),即采用軟件無線電架構(gòu)實(shí)現(xiàn)DVB-T信號(hào)接收。采用軟件無線電架構(gòu)實(shí)現(xiàn)DVB-T接收機(jī)具有開發(fā)周期短和靈活度高的優(yōu)點(diǎn),可以快速實(shí)現(xiàn)對不同設(shè)計(jì)方案的驗(yàn)證和對比。意大利比薩大學(xué)研究小組利用通用軟件無線電外設(shè)(Universal Software Radio Peripheral,USRP)實(shí)現(xiàn) DVB-T 發(fā)射機(jī),證明了采用軟件無線電架構(gòu)的可行性[3]。但是,考慮到接收端算法較發(fā)送端更為復(fù)雜,利用軟件無線電架構(gòu)實(shí)現(xiàn)有一定的困難,因此,本文依據(jù)歐洲地面數(shù)字電視廣播標(biāo)準(zhǔn),基于由USRP和通用計(jì)算機(jī)組成的軟件無線電平臺(tái),實(shí)現(xiàn)DVB-T接收機(jī)。
軟件無線電是指以通用、標(biāo)準(zhǔn)、模塊化的硬件平臺(tái)為依托,通過軟硬件編程實(shí)現(xiàn)無線電處理的各種功能[4]。相比功能單一的硬件電路,軟件無線電的一個(gè)顯著特性是在軟硬件方面都具備可重構(gòu)性,即在不改變軟硬件結(jié)構(gòu)的情況下,可采用不同的參數(shù)配置和算法設(shè)計(jì)實(shí)現(xiàn)不同的無線電功能。
本文采用的軟件無線電平臺(tái)由USRP和通用計(jì)算機(jī)組成。USRP是一套基于數(shù)字中頻架構(gòu)的可配置軟件無線電射頻前端,由母板和覆蓋不同頻段的射頻子板組成,結(jié)構(gòu)如圖1所示。在接收路徑中,射頻子板的功能是對天線接收的信號(hào)進(jìn)行正交下變頻,產(chǎn)生I、Q兩路中頻模擬信號(hào)。母板主要由12位模/數(shù)轉(zhuǎn)換器(ADC)芯片、FPGA芯片和USB控制器芯片構(gòu)成。ADC芯片完成I、Q路中頻模擬信號(hào)的數(shù)字采樣;FPGA芯片對ADC采樣得到的中頻信號(hào)進(jìn)行數(shù)字下變頻,并通過級(jí)聯(lián)梳狀濾波器對采樣值進(jìn)行可變速率的抽取,形成低速率的基帶采樣信號(hào);USB控制器芯片用于控制USRP與通用計(jì)算機(jī)間的基帶信號(hào)傳輸。通用計(jì)算機(jī)采用軟件編程實(shí)現(xiàn)基帶信號(hào)的后續(xù)處理。

圖1 USRP結(jié)構(gòu)
DVB-T標(biāo)準(zhǔn)在現(xiàn)有的甚高頻(VHF)和特高頻(UHF)頻段提供地面數(shù)字電視信號(hào)的傳輸服務(wù)。本文采用WBX寬帶子板,其頻率覆蓋50 MHz~2.2 GHz,滿足基本頻段要求。
根據(jù)實(shí)現(xiàn)功能的不同,接收機(jī)可分為三個(gè)部分:USRP射頻前端、內(nèi)接收機(jī)和外接收機(jī)。接收機(jī)實(shí)現(xiàn)架構(gòu)如圖2所示。USRP射頻前端實(shí)現(xiàn)接收信號(hào)的下變頻、模/數(shù)轉(zhuǎn)換和下采樣處理,將天線接收的模擬信號(hào)轉(zhuǎn)換為基帶數(shù)字信號(hào);內(nèi)接收機(jī)完成基帶數(shù)字信號(hào)的定時(shí)和頻率同步,并實(shí)現(xiàn)對信道參數(shù)的估計(jì)和均衡處理;外接收機(jī)對同步均衡后的信號(hào)進(jìn)行解調(diào)、信道譯碼和視頻解碼,實(shí)現(xiàn)接收視頻流的實(shí)時(shí)播放。

圖2 接收機(jī)實(shí)現(xiàn)架構(gòu)
USRP為接收機(jī)的射頻前端,可配置參數(shù)主要包括母板FPGA抽取系數(shù)和子板射頻中心頻率。DVB-T標(biāo)準(zhǔn)定義了6 MHz、7 MHz和8 MHz三種信道帶寬模式。三種帶寬模式編碼映射方式、交織方式和幀結(jié)構(gòu)完全相同,唯一不同的是采樣周期Ts,分別等于7/48 μs、1/8 μs和7/64 μs。采用第一代USRP作射頻前端時(shí),受限于USB 2.0總線的傳輸速率(Rmax=32 Mbyte/s),在I、Q路復(fù)采樣信號(hào)量化精度為Nbits=32 bit的情況下,最小采樣周期為

不滿足8 MHz信道帶寬模式對采樣周期的要求。接收機(jī)實(shí)現(xiàn)中針對7 MHz信道帶寬模式,在USRP模/數(shù)轉(zhuǎn)換器芯片AD9862固定采樣速率為64 MSample/s(兆采樣/s)情況下,F(xiàn)PGA抽取系數(shù)設(shè)置為8,即滿足該模式對采樣周期的要求。在射頻中心頻率配置方面,選擇與DVB-T固定頻道中心頻率一致。
國內(nèi)外學(xué)者已針對DVB-T信號(hào)的接收提出了眾多同步和信道估計(jì)方案,本文在考慮算法性能和復(fù)雜度的基礎(chǔ)上,選擇恰當(dāng)算法實(shí)現(xiàn)內(nèi)接收機(jī)各信號(hào)處理模塊。整個(gè)同步過程分為捕獲階段和跟蹤階段。捕獲階段完成定時(shí)、頻率偏差值的大致捕獲;跟蹤階段完成剩余偏差值的估計(jì)和跟蹤校正。接收機(jī)進(jìn)入穩(wěn)定跟蹤狀態(tài)之后,再進(jìn)行信道估計(jì)和頻域均衡。
1)符號(hào)定時(shí)與小數(shù)倍載波頻偏捕獲
內(nèi)接收機(jī)運(yùn)行過程中,首先需要完成對OFDM符號(hào)起始位置的捕獲。內(nèi)接收采用基于OFDM符號(hào)循環(huán)前綴的最小均方誤差估計(jì)算法,同時(shí)實(shí)現(xiàn)對OFDM符號(hào)起始位置和小數(shù)倍載波頻偏值的捕獲[5]。該算法不需要對接收信噪比進(jìn)行估計(jì),可有效降低捕獲的實(shí)現(xiàn)復(fù)雜度,實(shí)現(xiàn)結(jié)構(gòu)如圖3所示。

圖3 符號(hào)定時(shí)與小數(shù)倍載波頻偏捕獲實(shí)現(xiàn)結(jié)構(gòu)
2)整數(shù)倍載波頻偏捕獲
接收機(jī)與發(fā)射機(jī)晶振頻率的差別,可能造成較大的載波頻率偏差。若傳輸過程中存在整數(shù)倍載波頻偏,則FFT變換后OFDM符號(hào)中所有子載波產(chǎn)生整體移位,導(dǎo)致解調(diào)數(shù)據(jù)完全錯(cuò)誤。DVB-T標(biāo)準(zhǔn)中連續(xù)導(dǎo)頻在每個(gè)OFDM符號(hào)中占用固定子載波,內(nèi)接收機(jī)基于連續(xù)導(dǎo)頻采用頻域相關(guān)算法,實(shí)現(xiàn)對整數(shù)倍載波頻偏值的捕獲[6]。采用頻域相關(guān)算法,運(yùn)算復(fù)雜度與使用連續(xù)導(dǎo)頻的數(shù)目成正比。DVB-T標(biāo)準(zhǔn)2K模式共有45個(gè)連續(xù)導(dǎo)頻,內(nèi)接收機(jī)實(shí)現(xiàn)中使用直流載波附近的15個(gè)連續(xù)導(dǎo)頻,完成整數(shù)倍載波頻偏值的捕獲。
3)符號(hào)定時(shí)精同步
完成對OFDM符號(hào)起始位置的捕獲后,剩余符號(hào)定時(shí)偏差主要有兩部分:一部分是符號(hào)起始位置捕獲值與實(shí)際值的差值;另一部分是采樣偏差導(dǎo)致的符號(hào)定時(shí)漂移。DVB-T標(biāo)準(zhǔn)中離散導(dǎo)頻在每個(gè)OFDM符號(hào)中等間隔分布,內(nèi)接收機(jī)采用基于相鄰離散導(dǎo)頻相位差的估計(jì)算法,實(shí)現(xiàn)對OFDM符號(hào)定時(shí)偏差值的精確估計(jì)[7]。
4)剩余載波頻偏估計(jì)
剩余載波頻偏導(dǎo)致接收星座點(diǎn)發(fā)生相位旋轉(zhuǎn)并具有累加效應(yīng)。內(nèi)接收機(jī)基于相鄰OFDM符號(hào)連續(xù)導(dǎo)頻相位差,采用最小平方準(zhǔn)則估計(jì)算法,實(shí)現(xiàn)對剩余載波頻偏值的估計(jì)[8-9]。內(nèi)接收機(jī)實(shí)現(xiàn)中預(yù)先建立最小平方準(zhǔn)則系數(shù)矩陣,并存儲(chǔ)為查找表,可有效避免重復(fù)運(yùn)算。此外,為減小估計(jì)抖動(dòng),首先將剩余載波頻偏估計(jì)值通過環(huán)路濾波器進(jìn)行平滑濾波,然后再進(jìn)行反饋和補(bǔ)償。
5)信道估計(jì)與均衡
衰落信道下各子載波信號(hào)會(huì)產(chǎn)生不同程度的相位旋轉(zhuǎn)和幅度畸變,需要進(jìn)行信道估計(jì)和均衡,保證相干解調(diào)的正確進(jìn)行。內(nèi)接收機(jī)基于每個(gè)OFDM符號(hào)中等間隔分布的離散導(dǎo)頻信號(hào),首先在頻域內(nèi)采用最小二乘算法估計(jì)導(dǎo)頻位置的信道響應(yīng)值;然后,采用頻域線性插值方法預(yù)測非導(dǎo)頻位置處的信道響應(yīng)值;最后,在頻域內(nèi)采用相除方式實(shí)現(xiàn)對全部子載波信號(hào)的均衡處理。
外接收機(jī)根據(jù)DVB-T標(biāo)準(zhǔn)定義的發(fā)射信號(hào)生成方式,反向處理恢復(fù)原始傳送流(Transport Stream,TS)。為正確提取系統(tǒng)信息,同時(shí)保證RS碼譯碼器的輸入為完整RS碼碼字,外接收機(jī)首先需要實(shí)現(xiàn)超幀同步。超幀同步利用本地存儲(chǔ)的同步字序列與差分解調(diào)后傳輸參數(shù)信令(Transmission Parameter Signaling,TPS)中的同步字序列進(jìn)行滑動(dòng)相關(guān),若相關(guān)結(jié)果大于預(yù)設(shè)閾值且?guī)?hào)序列為“00”,則可確定超幀的起始位置。
超幀同步后,對每個(gè)OFDM符號(hào)中的數(shù)據(jù)子載波進(jìn)行硬判決解調(diào)和解內(nèi)交織,并將解交織比特序列送入卷積碼譯碼器。卷積碼譯碼器采用硬判決維特比譯碼算法進(jìn)行譯碼。譯碼完成后,將譯碼信息比特序列轉(zhuǎn)換為字節(jié)序列,并采用移位寄存器法實(shí)現(xiàn)基于字節(jié)的解卷積交織[10]。卷積交織/解交織產(chǎn)生的總延時(shí)為11個(gè)RS碼碼字,因此RS碼譯碼器在接收11個(gè)RS碼碼字后啟動(dòng)。數(shù)據(jù)解擾是在檢測到取反同步字節(jié)(0xB8)后,將接收數(shù)據(jù)與DVB-T標(biāo)準(zhǔn)定義的偽隨機(jī)序列進(jìn)行異或運(yùn)算。最后,借助開源多媒體音視頻處理工具FFmpeg,對接收TS流進(jìn)行解碼和播放。
接收機(jī)實(shí)現(xiàn)中,USRP的參數(shù)配置以及內(nèi)接收機(jī)和外接收機(jī)對基帶信號(hào)的處理全部在通用計(jì)算機(jī)中完成。選擇恰當(dāng)?shù)男盘?hào)處理方式并設(shè)計(jì)合理的軟件流程,對提高接收機(jī)程序運(yùn)行效率尤為重要。同時(shí),為實(shí)現(xiàn)接收視頻的實(shí)時(shí)播放,需完成視頻顯示界面的開發(fā)。
在通用計(jì)算機(jī)中實(shí)現(xiàn)基帶信號(hào)處理的方式有兩種:借助軟件開發(fā)工具如GNU Radio、LabVIEW等,通過構(gòu)建流圖并創(chuàng)建信號(hào)處理模塊實(shí)現(xiàn);調(diào)用USRP應(yīng)用程序編程接口(Application Programming Interface,API)函數(shù)讀取基帶信號(hào),并編寫信號(hào)處理函數(shù)實(shí)現(xiàn)。本文采用第二種方式,該方式不必使用其他軟件,可實(shí)現(xiàn)對各運(yùn)算單元輸入/輸出數(shù)據(jù)的完全控制,因此通用性更強(qiáng)。
內(nèi)接收機(jī)和外接收機(jī)流程如圖4所示,各運(yùn)算單元采用封裝的C++函數(shù)實(shí)現(xiàn),封裝函數(shù)的接口參數(shù)為本運(yùn)算單元的輸入、輸出數(shù)據(jù)。接收機(jī)主程序通過控制函數(shù)調(diào)用,實(shí)現(xiàn)各運(yùn)算單元的連接,保證數(shù)據(jù)處理的連續(xù)性。

圖4 接收機(jī)流程
為提高程序運(yùn)行效率,接收機(jī)編程實(shí)現(xiàn)中采用多線程模式。根據(jù)實(shí)現(xiàn)復(fù)雜度,將整個(gè)接收機(jī)劃分為3個(gè)線程:內(nèi)接收機(jī)線程、外接收機(jī)線程和視頻解碼播放線程。各線程獨(dú)立運(yùn)行,并通過循環(huán)阻塞隊(duì)列實(shí)現(xiàn)線程間的數(shù)據(jù)交互,循環(huán)阻塞隊(duì)列結(jié)構(gòu)如圖5所示。

圖5 循環(huán)阻塞隊(duì)列結(jié)構(gòu)
接收機(jī)程序啟動(dòng)后,首先申請能夠存放N×M_BYTES byte的內(nèi)存,其中N為隊(duì)列節(jié)點(diǎn)數(shù)目,M_BYTES表示每個(gè)節(jié)點(diǎn)的字節(jié)長度。讀寫線程通過調(diào)用get函數(shù)和put函數(shù),實(shí)現(xiàn)隊(duì)列數(shù)據(jù)的讀取和寫入操作。若隊(duì)列空,則get函數(shù)阻塞;若隊(duì)列滿,則put函數(shù)阻塞。接收機(jī)實(shí)現(xiàn)中,需要建立兩個(gè)循環(huán)阻塞隊(duì)列,分別用于實(shí)現(xiàn)內(nèi)接收機(jī)線程與外接收機(jī)線程、外接收機(jī)線程與視頻解碼播放線程間的數(shù)據(jù)交互。各線程并行運(yùn)行,可較大程度提高程序運(yùn)行效率,保證接收機(jī)實(shí)時(shí)穩(wěn)定運(yùn)行。
在實(shí)現(xiàn)接收機(jī)的基礎(chǔ)上,進(jìn)一步采用QT用戶圖形化界面開發(fā)工具,開發(fā)了視頻顯示與配置界面,如圖6所示。通過該界面可對USRP母板FPGA抽取系數(shù)和子板射頻中心頻率進(jìn)行配置,啟動(dòng)后可實(shí)現(xiàn)接收視頻流的實(shí)時(shí)播放。

圖6 接收機(jī)視頻顯示界面(截圖)
針對所實(shí)現(xiàn)接收機(jī),利用標(biāo)準(zhǔn)調(diào)制信號(hào)驗(yàn)證其接收功能的正確。發(fā)射端采用荷蘭DekTec公司生產(chǎn)的調(diào)制卡DTA-115產(chǎn)生符合DVB-T標(biāo)準(zhǔn)的調(diào)制信號(hào);接收端采用主頻3.4 GHz,Intel Core i7-3770 CPU的通用計(jì)算機(jī)作為宿主機(jī)運(yùn)行接收機(jī)程序。經(jīng)驗(yàn)證,接收機(jī)可實(shí)現(xiàn)對7 MHz信道帶寬、2K模式、內(nèi)碼碼率1/2、QPSK映射、1/4保護(hù)間隔模式信號(hào)的實(shí)時(shí)穩(wěn)定接收,接收TS流比特速率為4.354 Mbit/s。
進(jìn)一步,在室內(nèi)場景下對接收TS包的誤包率進(jìn)行了測試。實(shí)際測試中,射頻中心頻率為226.5 MHz,收發(fā)天線距離為3.5 m,測試結(jié)果如圖7所示。發(fā)射端通過設(shè)定功率參數(shù)改變發(fā)射功率的大小,接收機(jī)根據(jù)RS碼譯碼結(jié)果,對接收TS包的誤包率進(jìn)行統(tǒng)計(jì)。可以看出,在發(fā)射功率為-8 dBm時(shí),TS包誤包率降低至1.3×10-6。該系統(tǒng)被用于海洋上綜合業(yè)務(wù)通過TS流的傳輸,具有良好的擴(kuò)展性和較低的成本。

圖7 TS包誤包率測試結(jié)果
本文依據(jù)歐洲地面數(shù)字電視傳輸標(biāo)準(zhǔn),選擇合適的信號(hào)同步和信道估計(jì)算法,基于由通用軟件無線電外設(shè)和通用計(jì)算機(jī)組成的軟件無線電平臺(tái)實(shí)現(xiàn)了DVB-T接收機(jī)。測試表明,接收機(jī)可實(shí)現(xiàn)對固定模式DVB-T信號(hào)的穩(wěn)定接收和視頻實(shí)時(shí)播放。
[1]ETSI EN 300 744 V1.6.1,Digital Video Broadcasting(DVB):framing structure,channel coding and modulation for digital terrestrial television[S].2009.
[2]MITOLA J.Software radios:survey,critical evaluation and future directions[J].IEEE Aerospace and Electronic Systems Magazine,1993,8(4):25-36.
[3]PELLEGRINI V,BACCI G,LUISE M.Soft-DVB:a fully-software GNURadio-based ETSI DVB-T modulator[EB/OL].[2013-07-10].http://tvlivre.org/sites/tvlivre/files/PellegriniBacciLuise_WSR08_CR.pdf.
[4]陶玉柱,胡建旺,崔佩璋.軟件無線電技術(shù)綜述[J].通信技術(shù),2011,44(1):37-39.
[5]LEE D,CHEUN K.Coarse symbol synchronization algorithms for OFDM systems in multipath channels[J].IEEE Communications Letters,2002,6(10):446-448.
[6]HAN D S,SEO J H,KIM J J.Fast carrier frequency offset compensation in OFDM systems[J].IEEE Trans.Consumer Electronics,2001,47(3):364-369.
[7]AI B,YANG Z X,PAN C Y,et al.On the synchronization techniques for wireless OFDM systems[J].IEEE Trans.Broadcasting,2006,52(2):236-244.
[8]SPETH M,F(xiàn)ECHTEL S,F(xiàn)OCK G,et al.Optimum receiver design for OFDM-based broadband transmission-Part II:A case study[J].IEEE Trans.Communications,2001,49(4):571-578.
[9]周加銃.DVB-T COFDM接收系統(tǒng)中關(guān)鍵技術(shù)研究與設(shè)計(jì)[D].上海:同濟(jì)大學(xué),2007.
[10]陳慶旭,孫曼,植涌.基于FPGA的DVB-C系統(tǒng)編碼器的設(shè)計(jì)[J].電視技術(shù),2012,36(3):4-6.