DVB-S射頻調制的FPGA實現(xiàn)
1 系統(tǒng)構架
AD9789[3] 14 bit TxDAC芯片內部集成了QAM編碼器、內插器和數(shù)字上變頻器,可為有線基礎設施實現(xiàn)2.4 GHz的采樣率。AD9789 TxDAC支持DOCSIS-III、DVB_C 2個標準,并不支持DVB-S標準。配置選項可以設置數(shù)據(jù)路徑來為QAM編碼器和SRRC濾波器設置旁路,從而使DAC能夠用于諸如無線基礎設施等多種應用中。本文就是利用這一點實現(xiàn)了DVB_S的射頻調制,在FPGA內部實現(xiàn)DVB-S信道編碼[3](隨機化、RS編碼、卷積交織、卷積壓縮編碼)、星圖映射、SRRC 濾波器(滾降系數(shù)為0.35),經ODDR模塊給AD9789提供復數(shù)數(shù)據(jù)。其射頻調制方案如圖1所示。
2 可變符號率的設計
DVB-S調制器符號率一般支持1 MS/s~45 MS/s可調,這就需要對TS流進行速率調整。整個DVB_S信道編碼有2次速率的變化:(1)RS編碼,它將188的包結構變成204的包結構,數(shù)據(jù)輸出的速率為輸入的204/188倍。(2)卷積壓縮編碼,由于卷積壓縮編碼采用不同的編碼比率,如1/2、2/3、3/4、5/6、7/8,對應的輸出數(shù)據(jù)速率就變成輸入數(shù)據(jù)速率的1、3/4、2/3、3/5、4/7倍,針對符號率的設計,本文提出了符號率的設計公式:FBAND=A×204/188×8×1/2×(N/N-1),其中A為TS流的輸入數(shù)據(jù)速率,N的取值為2、3、4、6、7,之所以乘以8是因為在卷積編碼時要進行數(shù)據(jù)的并串轉換。
本文采用插空包的方式實現(xiàn)RS編碼速率調整,其設計思路是在信道編碼之前對TS流進行一次速率調整,將188的數(shù)據(jù)包變成204的數(shù)據(jù)包,這樣大大簡化了后端的設計,具體的操作就是通過FIFO實現(xiàn),由于TS流速率慢,所以先寫FIFO,等到寫滿一半,開始讀,讀的時候每次只讀188個數(shù)據(jù),然后再在其后添加16 B數(shù)據(jù),添加0即可,這樣就變成了204個字節(jié)的包結構。由于讀的速率很快,有可能讀空,所以要判斷FIFO內部所剩下的數(shù)據(jù),當不滿188 B時,就插入204 B的空包,這樣可以保證速率調整之后的數(shù)據(jù)是連續(xù)的。符號率的設計公式變成:FBAND=B×8×1/2×(N/N-1),只需要改變B及N的值就可以實現(xiàn)符號率的可變。
針對卷積壓縮編碼速率調整,本文采用重配置DCM[4]與FIFO結合的方式實現(xiàn),由于調制采用不同的編碼率,導致輸出的數(shù)據(jù)速率是可變的,這就使得數(shù)據(jù)的輸出時鐘是輸入時鐘的非整數(shù)倍,很難做到小數(shù)分頻,所以提出了用重配置DCM的方式提供可靠的時鐘對應關系。經卷積壓縮編碼后的數(shù)據(jù)輸出是不連續(xù)的,為了便于后續(xù)數(shù)據(jù)升采樣的處理,通過一個FIFO將數(shù)據(jù)打成勻速的。
3 AD9789基本結構[5]
AD9789 包含一個用于器件配置和狀態(tài)寄存器回讀的 SPI(串行外設接口)端口。靈活的數(shù)字接口可以適應4 bit~32 bit的數(shù)據(jù)總線寬度,并且可以接收實數(shù)或復數(shù)數(shù)據(jù),最多可接收4路輸入信號。每一路信號最大能經過5級半帶插值濾波,插值之后的數(shù)據(jù)與NCO生成的正余弦信號相乘,再經過通道增益變化,4路信號相加后再通過總增益調整、16倍插值和帶通濾波器實現(xiàn)數(shù)字上變頻,最后經數(shù)模轉換輸出,其原理如圖2所示。4個通道的基帶處理模塊內部結構相同,如圖3所示。在本設計中,旁路掉QAM編碼器和SRRC濾波器,經過5級半帶插值后,通過調節(jié)P/Q值,可實現(xiàn)不同符號率的調整。
4 AD9789上變頻原理及配置流程[5]
基帶信號經過插值后與NCO生成的正余弦信號相乘,從而把基帶信號頻譜調制到0~fDAC/16之間完成基帶調制,即實現(xiàn)圖4(a)~圖(b)的轉換。經過16倍插值濾波器后,形成16個奈奎斯特區(qū),后15個區(qū)內的頻譜為第1奈奎斯特區(qū)基帶調制信號的鏡像頻譜,通過配置帶通濾波器的中心頻率,可濾除不需要的15個鏡像,得到要想的調制信號,如圖4(c)所示。AD9789的這種特殊架構,使得輸出的調制信號頻率范圍為0~fDAC,而fDAC最高可達2.4 GHz,完全可以滿足DVB-S標準L波段輸出的要求。
AD9789通過SPI接口進行參數(shù)配置,配置時鐘SCLK不能超過25 MHz。寫操作時,在SCLK上升沿有效。讀操作時,數(shù)據(jù)在SCLK下降沿有效。AD9789的配置指令由指令控制字和操作數(shù)2部分組成。指令控制字包括3部分:讀寫操作指示位、一次讀寫的字節(jié)個數(shù)和起始寄存器的地址。如果執(zhí)行寫操作,操作數(shù)就是要寫入寄存器的值。如果執(zhí)行讀操作,則操作數(shù)就是從相應寄存器中讀到的值。缺省情況下,SDIO是輸入,SDO是輸出,讀寫數(shù)據(jù)高位在前。
波段開關相關文章:波段開關原理
評論