韓慶喜,劉志軍,張淑慧,王小群
(山東大學(xué) 信息科學(xué)與工程學(xué)院,山東 濟(jì)南250100)
DVB-S標(biāo)準(zhǔn)只是規(guī)定了信道編碼及調(diào)制方式,沒(méi)有提供具體的射頻調(diào)制方案,DVB-S標(biāo)準(zhǔn)要求載波的頻率范圍為950 MHz-2150 MHz,由于受到FPGA內(nèi)部資源運(yùn)算速度的限制,一般只能實(shí)現(xiàn)中頻調(diào)制[1]。傳統(tǒng)的射頻調(diào)制是在中頻調(diào)制后加模擬上變頻,如中頻調(diào)制之后采用AD8346[2]進(jìn)行射頻調(diào)制,但這樣就增加了設(shè)計(jì)的復(fù)雜度及成本。本文采用ADI公司最新推出的AD9789與FPGA相結(jié)合的方法實(shí)現(xiàn)了全數(shù)字DVB-S標(biāo)準(zhǔn)射頻調(diào)制。
AD9789[3]14 bit TxDAC芯片內(nèi)部集成了QAM編碼器、內(nèi)插器和數(shù)字上變頻器,可為有線基礎(chǔ)設(shè)施實(shí)現(xiàn)2.4 GHz的采樣率。AD9789 TxDAC支持DOCSIS-III、DVB_C 2個(gè)標(biāo)準(zhǔn),并不支持DVB-S標(biāo)準(zhǔn)。配置選項(xiàng)可以設(shè)置數(shù)據(jù)路徑來(lái)為QAM編碼器和SRRC濾波器設(shè)置旁路,從而使DAC能夠用于諸如無(wú)線基礎(chǔ)設(shè)施等多種應(yīng)用中。本文就是利用這一點(diǎn)實(shí)現(xiàn)了DVB_S的射頻調(diào)制,在FPGA內(nèi)部實(shí)現(xiàn)DVB-S信道編碼[3](隨機(jī)化、RS編碼、卷積交織、卷積壓縮編碼)、星圖映射、SRRC濾波器(滾降系數(shù)為 0.35),經(jīng)ODDR模塊給AD9789提供復(fù)數(shù)數(shù)據(jù)。其射頻調(diào)制方案如圖1所示。
DVB-S調(diào)制器符號(hào)率一般支持1 MS/s~45 MS/s可調(diào),這就需要對(duì)TS流進(jìn)行速率調(diào)整。整個(gè)DVB_S信道編碼有2次速率的變化:(1)RS編碼,它將188的包結(jié)構(gòu)變成204的包結(jié)構(gòu),數(shù)據(jù)輸出的速率為輸入的204/188倍。(2)卷積壓縮編碼,由于卷積壓縮編碼采用不同的編碼比率,如1/2、2/3、3/4、5/6、7/8,對(duì)應(yīng)的輸出數(shù)據(jù)速率就變成輸入數(shù)據(jù)速率的 1、3/4、2/3、3/5、4/7 倍, 針對(duì)符號(hào)率的設(shè)計(jì),本文提出了符號(hào)率的設(shè)計(jì)公式:FBAND=A×204/188×8×1/2×(N/N-1), 其中 A 為 TS 流的輸入數(shù)據(jù)速率,N 的取值為 2、3、4、6、7,之所以乘以 8是因?yàn)樵诰矸e編碼時(shí)要進(jìn)行數(shù)據(jù)的并串轉(zhuǎn)換。
本文采用插空包的方式實(shí)現(xiàn)RS編碼速率調(diào)整,其設(shè)計(jì)思路是在信道編碼之前對(duì)TS流進(jìn)行一次速率調(diào)整,將188的數(shù)據(jù)包變成204的數(shù)據(jù)包,這樣大大簡(jiǎn)化了后端的設(shè)計(jì),具體的操作就是通過(guò)FIFO實(shí)現(xiàn),由于TS流速率慢,所以先寫(xiě)FIFO,等到寫(xiě)滿一半,開(kāi)始讀,讀的時(shí)候每次只讀188個(gè)數(shù)據(jù),然后再在其后添加16 B數(shù)據(jù),添加0即可,這樣就變成了204個(gè)字節(jié)的包結(jié)構(gòu)。由于讀的速率很快,有可能讀空,所以要判斷FIFO內(nèi)部所剩下的數(shù)據(jù),當(dāng)不滿188 B時(shí),就插入204 B的空包,這樣可以保證速率調(diào)整之后的數(shù)據(jù)是連續(xù)的。符號(hào)率的設(shè)計(jì)公式變成:FBAND=B×8×1/2×(N/N-1),
只需要改變B及N的值就可以實(shí)現(xiàn)符號(hào)率的可變。
針對(duì)卷積壓縮編碼速率調(diào)整,本文采用重配置DCM[4]與FIFO結(jié)合的方式實(shí)現(xiàn),由于調(diào)制采用不同的編碼率,導(dǎo)致輸出的數(shù)據(jù)速率是可變的,這就使得數(shù)據(jù)的輸出時(shí)鐘是輸入時(shí)鐘的非整數(shù)倍,很難做到小數(shù)分頻,所以提出了用重配置DCM的方式提供可靠的時(shí)鐘對(duì)應(yīng)關(guān)系。經(jīng)卷積壓縮編碼后的數(shù)據(jù)輸出是不連續(xù)的,為了便于后續(xù)數(shù)據(jù)升采樣的處理,通過(guò)一個(gè)FIFO將數(shù)據(jù)打成勻速的。
AD9789包含一個(gè)用于器件配置和狀態(tài)寄存器回讀的 SPI(串行外設(shè)接口)端口。靈活的數(shù)字接口可以適應(yīng)4 bit~32 bit的數(shù)據(jù)總線寬度,并且可以接收實(shí)數(shù)或復(fù)數(shù)數(shù)據(jù),最多可接收4路輸入信號(hào)。每一路信號(hào)最大能經(jīng)過(guò)5級(jí)半帶插值濾波,插值之后的數(shù)據(jù)與NCO生成的正余弦信號(hào)相乘,再經(jīng)過(guò)通道增益變化,4路信號(hào)相加后再通過(guò)總增益調(diào)整、16倍插值和帶通濾波器實(shí)現(xiàn)數(shù)字上變頻,最后經(jīng)數(shù)模轉(zhuǎn)換輸出,其原理如圖2所示。4個(gè)通道的基帶處理模塊內(nèi)部結(jié)構(gòu)相同,如圖3所示。在本設(shè)計(jì)中,旁路掉QAM編碼器和SRRC濾波器,經(jīng)過(guò)5級(jí)半帶插值后,通過(guò)調(diào)節(jié)P/Q值,可實(shí)現(xiàn)不同符號(hào)率的調(diào)整。
基帶信號(hào)經(jīng)過(guò)插值后與NCO生成的正余弦信號(hào)相乘,從而把基帶信號(hào)頻譜調(diào)制到0~f /16之間完成基帶調(diào)制,即實(shí)現(xiàn)圖4(a)~圖(b)的轉(zhuǎn)換。經(jīng)過(guò)16倍插值濾波器后,形成16個(gè)奈奎斯特區(qū),后15個(gè)區(qū)內(nèi)的頻譜為第1奈奎斯特區(qū)基帶調(diào)制信號(hào)的鏡像頻譜,通過(guò)配置帶通濾波器的中心頻率,可濾除不需要的15個(gè)鏡像,得到要想的調(diào)制信號(hào),如圖4(c)所示。AD9789的這種特殊架構(gòu),使得輸出的調(diào)制信號(hào)頻率范圍為 0~fDAC,而fDAC最高可達(dá)2.4 GHz,完全可以滿足DVB-S標(biāo)準(zhǔn)L波段輸出的要求。
AD9789通過(guò)SPI接口進(jìn)行參數(shù)配置,配置時(shí)鐘SCLK不能超過(guò)25 MHz。寫(xiě)操作時(shí),在SCLK上升沿有效。讀操作時(shí),數(shù)據(jù)在SCLK下降沿有效。AD9789的配置指令由指令控制字和操作數(shù)2部分組成。指令控制字包括3部分:讀寫(xiě)操作指示位、一次讀寫(xiě)的字節(jié)個(gè)數(shù)和起始寄存器的地址。如果執(zhí)行寫(xiě)操作,操作數(shù)就是要寫(xiě)入寄存器的值。如果執(zhí)行讀操作,則操作數(shù)就是從相應(yīng)寄存器中讀到的值。缺省情況下,SDIO是輸入,SDO是輸出,讀寫(xiě)數(shù)據(jù)高位在前。
配置AD9789時(shí)需要注意,大部分寄存器都是立即更新,但 0x16~0x1D,0x22~0x23 除外。只有在 0x1E[7]為1后,0x16~0x1D寄存器數(shù)據(jù)才更新。只有當(dāng) 0x24[7]位由 0變?yōu)?1后,0x22~0x23才更新。0x1E[7]會(huì)自動(dòng)清零,但0x24[7]不會(huì)。為了保證來(lái)自FPGA的數(shù)據(jù)與AD9789的采樣時(shí)鐘相位一致,AD9789內(nèi)部集成可編程重定時(shí)器,使用三級(jí)寄存器來(lái)實(shí)現(xiàn)重定時(shí)功能,具體由內(nèi)部寄存器 0x21[2:0]、0x23[7:0]控制。配置 AD9789的流程如表1所示。
表1 配置AD9789的流程
AD9789的主要參數(shù)計(jì)算如下,速率調(diào)整參數(shù)P/Q值可由公式(1)求得:
其中,fDAC是 DAC工作時(shí)鐘,I為插值濾波器的插值倍數(shù),fBAUD是輸入碼流的符號(hào)率。另外,P/Q值的選取要滿足且Q值選定后,要經(jīng)過(guò)變化轉(zhuǎn)變成24 bit的二進(jìn)制表示,且最高位為1,P值也做同樣的調(diào)整。通道的NCO頻率參數(shù)FTW由公式 (2)、(3)聯(lián)合決定,其中,fCENTER是本通道的NCO頻率,F(xiàn)OUT為用戶想要輸出的頻點(diǎn),N為整數(shù),帶通濾波器中心頻率參數(shù)BPF_Center_Freq由公式(4)決定,fCENTER指的是 4路輸出頻點(diǎn)值相加之后的中心頻率。
下面就以輸出頻點(diǎn)1000 M,符號(hào)率為8.75 MS/s為例說(shuō)明具體的設(shè)計(jì)過(guò)程,ADF4350提供2240 MHz的時(shí)鐘,設(shè)置 0x22[5:4]=2’b01,內(nèi)部進(jìn)行 16倍分頻,生成 DCO的時(shí)鐘為140 MHz。公式(1)中 I=32,fBAND=8.75 MS/s,P/Q=16/32,轉(zhuǎn)換后的 P=24’h400000,Q=24’h800000,F(xiàn)TW1=24’h249249,BPF_Center_Freq=16’h7248,任意開(kāi)通一個(gè)通道即可。
AD9789的工作時(shí)鐘由ADF4350與ADCLK914聯(lián)合提供。ADF4350[6]是ADI公司推出的業(yè)界首款全集成的頻率合成器,內(nèi)置片上VCO(壓控振蕩器)與 PLL(鎖相環(huán)),支持 137.5 MHz~4.4 GHz范圍內(nèi)的連續(xù)調(diào)諧,且支持整數(shù)小數(shù)分頻,具有出色的相位噪聲性能,完全可以滿足本系統(tǒng)的要求。
ADCLK914[7]是一款采用ADI公司專利的互補(bǔ)雙極性(XFCB-3)硅鍺(SiGe)工藝技術(shù)制造的超快型時(shí)鐘/數(shù)據(jù)緩沖器。ADCLK914具備高壓差分信號(hào)(HVDS)輸出,適合用于驅(qū)動(dòng) ADI最新的高速數(shù)模轉(zhuǎn)換器(AD9789、AD9739)。
本系統(tǒng)中,在FPGA內(nèi)部完成信道編碼、星座映射及基帶成形。AD9789數(shù)據(jù)接口總線采用32 bit,LVDS模式,只使用一個(gè)通道。所以輸入為一路復(fù)數(shù)數(shù)據(jù)信號(hào),數(shù)據(jù)為16 bit的差分信號(hào)。根據(jù)所選的接口模式,在采樣時(shí)鐘上升沿,采樣得到的16 bit數(shù)據(jù)為I,在采樣時(shí)鐘下降沿,采樣得到的16位數(shù)據(jù)為Q,調(diào)用一個(gè)ODDR模塊,將基帶成形后的I路數(shù)據(jù)和Q路數(shù)據(jù)合二為一,以LVDS模式輸出,分別與AD9789的DP[15:0]和 DN[15:0]相連。ODDR的工作時(shí)鐘直接來(lái)自DCO,DCO是AD9789數(shù)據(jù)的采樣時(shí)鐘輸出,由 FDAC分頻產(chǎn)生,具體由內(nèi)部寄存器 0x22[5:4]決定,確保 FPGA輸出數(shù)據(jù)和AD9789的數(shù)據(jù)采樣時(shí)鐘速率相等。
本文詳細(xì)介紹了DVB_S可變符號(hào)率的設(shè)計(jì),利用新器件AD9789能實(shí)現(xiàn)數(shù)字上變頻的特性,結(jié)合FPGA,提出了一套解決全數(shù)字DVB-S射頻調(diào)制的方案,并給出了配置AD9789的詳細(xì)流程。結(jié)合具體實(shí)例,給出了重要參數(shù)的設(shè)置方法,與傳統(tǒng)的射頻調(diào)制相比,免去對(duì)片外混頻器和低通濾波器的需求,具有更佳的性能、更低的成本和更好的靈活性,可廣泛用于電纜調(diào)制解調(diào)器系統(tǒng)。
[1]陳守金,于鴻洋,葛錦環(huán).新型 DVB_C信道編碼、中頻調(diào)制的全數(shù)字實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2006(5).
[2]葛錦環(huán).基于FPGA的DVB-S QPSK調(diào)制器的設(shè)計(jì)與仿真[D].電子科技大學(xué)碩士學(xué)位論文,2006.
[3]ETSI.EN300 421.DigitalVideoBroaeasting(DVB).Framingstructure,channel coding and modulation for 11/12 GHz satellite serviees,1997.
[4]ug191,Virtex-5 Configuration User Guide,Xilinx Corporation,2007.
[5]AD9789 Datasheet.Analog Devices,2009.
[6]ADCLK914 Datasheet.Analog Devices,2008.
[7]ADF4350 Datasheet.Analog Devices,2008.