摘 要: 介紹一種利用新器件特性實現全數字上變頻的方法,包括射頻頻率范圍內從基帶信號的插值濾波器的設計、載波信號的產生,到針對射頻信號高采樣率的并行處理方法以及與數模轉換器件的接口設計。與傳統模擬方案相比,本設計具有更佳的性能、更低的成本和更好的靈活性,可廣泛用于電纜調制解調器系統。
關鍵詞: 多相濾波;直接數字頻率合成;輸出并串轉換器
?
傳統的調制方式包括模擬調制和數字調制,模擬調制中的基帶信號和載波都是模擬信號。隨著軟件無線電技術理論的發展以及大規模集成電路的廣泛應用,原來的模擬通信系統的基帶處理部分采用數字電路逐漸數字化、軟件化,這樣就可通過可編程器件的可編程性對工作頻率、系統帶寬、調制方式、信源編碼等進行編程控制,實現不同的通信功能系統,靈活性大為增強[1]。然而,根據奈奎斯特抽樣理論,要對通信系統的射頻部分進行數字化處理,要求數字信號的采樣頻率至少是模擬射頻信號最高頻率的2倍以上,由于以往數字處理器件以及DA轉換器件的處理速度的限制,傳統通信系統的基帶信號為數字信號,載波仍然是模擬載波。
近期,Xilinx公司發布了Virtex5系列FPGA,借助于該FPGA擁有的用于實現高性能DSP的550 MHz DSP48E slice以及實現終級并行連接功能的1.25 Gb/s SelectIO 技術,可以直接實現數字射頻信號的調制,Maxim公司也發布了采樣率高達4.3 GS/s的DA轉換器MAX5881,可以從50 MHz~1 000 MHz直接進行模擬射頻信號合成。本文介紹了如何使用Virtex5系列FPGA進行數字射頻信號調制以及通過MAX5881輸出模擬射頻信號的“全數字”上變頻技術。之所以稱為“全數字”,是因為其基帶信號和載波全部都是時間離散的信號,完成調制的器件也是數字器件。
1 系統總體結構設計
按照通信調制基本理論,上變頻需要將調制好的信號從基帶頻率搬移到射頻頻率,對于基帶信號,其帶寬一般較窄,因此在很多應用場合中都是根據Nyquist采樣定理,再結合工程實際,采用2.5~4倍的基帶信號最高頻率進行采樣。而作為載波的DDS輸出波形,其頻率相對較高。如果用基帶信號對載波進行正交調制,即是數字信號的相乘,要求基帶和載波具有相同的數據速率。所以,在進行正交調制之前必須對基帶數字信號進行插值濾波,提高其數據速率。提高基帶信號的數據速率有兩種途徑:一種是簡單的數據保持方法;另一種是嚴格的插值濾波法。簡單的數據保持法是將序列的每一個采樣點做簡單的保持(或重復采樣)直到下一個采樣點到來。這種近似的處理辦法相當簡單,但效果不佳,只適合于數字調制方式或基帶信號帶寬很窄、對信號精度要求不高的場合。本設計采用嚴格的插值濾波,先經過零值內插,然后再濾波得到。信號從基帶頻率插值到4 GHz,插值倍數比較大,故采用多相濾波結構的FIR濾波器實現。
經過插值后的數據與DDS產生的載波頻率相乘,乘法器使用Virtex5系列FPGA內的高性能DSP模塊實現,該模塊是FPGA內部的硬件模塊,可運行在550 MHz。為了保證信號的精度同時減少資源的使用,基帶信號用12位有符號數表示,載波信號用10位無符號數表示,二者相乘后為22位有符號數。由于MAX5881為12位輸入精度,截取22位有符號數的高12位作為FPGA的輸出。
2 FPGA與MAX5881的接口設計
MAX5881是Maxim推出的首款12位、4.3 GS/s數模轉換器,器件提供出色的雜散、噪聲和鄰道性能。MAX5881的輸出刷新速率高達4.3GS/s,其數據接口的輸入速率也需要比傳統數模轉換器件高。針對這種高帶寬的數據接口,設計了如圖1所示的FPGA與DAC的數據接口[2]。
?
MAX5881在DDR模式下工作時鐘速率高達2.15 GHz,有獨立的模擬和數字時鐘,數據接口的時鐘由MAX5881輸出,用于簡化和FPGA的接口。MAX5881輸出的數據時鐘DATACLKP/DATACLKN是由CLKP/CLKN引腳上的高精度模擬時鐘源分頻產生的,因而時鐘周期的抖動非常小,適合作為FPGA的工作時鐘。
為了保證FPGA生成的數據傳輸到MAX5881接口端與CLKP/CLKN的相位對齊關系,采用了“系統同步化”設計。這一設計的過程是將時鐘管理單元(DCM)的CLK0從芯片內部經過一個OSERDES輸出到電路板,然后再將時鐘作為反饋時鐘送回DCM。PCB板上的時鐘反饋路徑長度等于從FPGA到MAX5881的數據路徑長度減去DATACLK路徑的長度,這就保證了時鐘反饋路徑產生的延時等于FPGA到MAX5881的數據傳輸路徑延時減去MAX5881的DATACLK輸出到FPGA的延時,因而由DCM提供的延時恰好補償FPGA的數據與時鐘路徑延時。此時到達MAX5881的數據變化發生在DATACLK的上升沿與下降沿。為了保證MAX5881的建立與保持時間要求,還要對數據與DATACLK之間的相位關系進行微調。這個附加的延時可以通過增長反饋路徑的長度或者在反饋路徑上加入一個FPGA ODELAY模塊來實現。
MAX5881包括四個12位復用低壓差分信號(LVDS)輸入端口,每個端口以雙倍數據速率(DDR)或四倍數據速率(QDR)模式工作在1 075 MHz。該器件接受1/2 DAC刷新速率的時鐘,在時鐘上升沿和下降沿均觸發轉換。輸入數據速率為1/4 DAC刷新速率或1/2時鐘速率。將MAX5881的CLKDIV引腳置為低電平并將FPGA的OSERDES配置為DDR模式,此時,MAX5881輸出DATACLKP/DATACLKN的頻率等于其輸入引腳CLKP/CLKN頻率的1/4。對應MAX5881的采樣頻率,CLKP/CLKN的頻率為2 GHz,DATACLKP/DATACLKN的頻率為500 MHz。這個500 MHz的時鐘信號驅動FPGA的OSERDES模塊。由于OSERDES模塊工作在DDR模式,在DATACLKP/DATACLKN的上升沿與下降沿都有數據輸出,因此FPGA輸出的數據速率為1 GHz。由于FPGA內部邏輯仍然不能直接產生1 GHz的數據,因此FPGA使用了并行處理方式,首先生成4路250 MHz的數據,然后通過OSERDES模塊串行輸出1 GHz的數據。采用這種方式降低了FPGA的時序要求,系統運行更加穩定。
3 數字射頻信號上變頻
3.1 多相濾波器結構
本設計中,假定被調制信號的采樣頻率為250 MHz,需要進行16倍插值才能達到4 GHz的采樣率。考慮到速度與資源的要求,采用了兩級4倍插值濾波器級聯的方式,每一級都采用了多相濾波的方式來實現。
傳統的4倍插值濾波方式是將每兩個原始數據中間插入3個0,設原始數據序列為[a,b,c,d…],則4倍插值后的序列[x1,x2,x3,x4…]=[a,0,0,0,b,0,0,0,c,0,0,0,d,0,0,0…]。本設計中250 MHz的數據經過插入3個0值后,數據速率已經達到1 GHz,用x序列表示輸入信號,c序列表示抽頭系數, y表示輸出信號。則可以直觀地發現,輸入序列x中有3/4的數據是0,這些數據對FIR濾波器的乘法器毫無意義,因此將濾波器的抽頭系數分為4組。圖2給出了第一個子濾波器的抽頭系數的計算流程。從圖中可以看出,該組抽頭系數如同一把梳子,計算得到輸出yn,而yn+1,yn+2,yn+3則由其他三組抽頭系數計算得到。第一個子濾波器從第一個輸入開始計算,第二個子濾波器從第二個輸入開始計算,依此類推。當第一個子濾波器的四組抽頭系數都計算完一遍后,各組抽頭系數向右移一個單元格,計算得到輸出yn+4,yn+5,yn+6,yn+7,依此類推。每一組子濾波器獨立工作在250 MHz,四組子濾波器輸出數據組合成1 GHz,降低了每個子濾波器的工作頻率。
3.2 濾波器參數計算
多相濾波器盡管結構不同于普通FIR插值濾波器,但原理與普通的FIR濾波器等效,可以按照傳統的濾波器參數設計方法計算多相濾波器的參數。對于4倍插值的多相濾波器,由于濾波器的抽頭系數必須分配到4組子濾波器中,因此濾波器的抽頭系數必須是4的整數倍。設計了歸一化通帶截止頻率0.2、阻帶起始頻率0.4的40階FIR濾波器,使用FDATool計算了抽頭系數,幅頻特性如圖3所示,并對該濾波器系數使用Matlab進行了仿真,仿真圖形如圖4所示。
?
3.3 直接頻率合成正弦載波技術
直接數字頻率合成技術(DDS)具有較高的頻率分辨率,可實現快速的頻率切換且在頻率改變時能夠保持相位的連續,通過FPGA很容易實現頻率、相位和幅度的控制。因此,DDS的應用越來越廣泛,在數字化的調制解調模塊中,DDS取代了VCO(模擬的壓控振蕩器)而被大量采用。
DDS的基本原理是通過一個可控的相位累加器的輸出作為一個ROM查找表的地址輸入,根據ROM查找表存儲的數據輸出數字正弦波形。相位累加器的頻率控制字k根據輸出模擬頻率來計算[3]。本設計中MAX5881的刷新速率為4.0 GS/s,為了保證輸出正弦波的質量,一個周期內最少應該有2.5個取樣點,據此設定DDS輸出正弦波頻率最大1.6 GHz,MAX5881最小輸出頻率為50 MHz,因此可輸出射頻信號頻率范圍為50 MHz~1.6 GHz。
本設計中,調制信號是16路250 MHz的數據,正弦載波信號相應地為16路250 MHz數據,根據設計要求綜合考慮后,為了獲得優秀的波形和盡可能大的頻率范圍,對幅度為1 024的正弦波的一個周期進行4 096采樣,對應12位地址信號,用Matlab軟件計算得到每一點對應的幅度值,為避免波形數據出現負值,對幅度值平移處理后量化成10位二進制數據存放在ROM中。在250 MHz時鐘的每個周期,需要從ROM查找表中連續讀出16個相位連續的值,每次相位累加的值,Fout為輸出頻率,Fclk是基準周期的16倍4 GHz,N為ROM表的深度,輸出波形的頻率分辨率
。
3.4 輸出并串轉換技術
經過多相插值濾波后的調制頻率與DDS輸出的正弦載波相乘后,基帶信號頻率搬移到相應的射頻頻段,這時的信號是16路并行信號,需要經過FPGA的輸出并串轉換器(OSERDES)串行化后輸出4路信號,最后按照MAX5881的時序要求從FPGA的I/O口輸出。
Virtex-5 OSERDES 是專用的并串轉換器,具有專門用來幫助實現高速源同步接口的特定時鐘控制和邏輯資源。OSERDES 使用CLK和CLKDIV兩個時鐘進行數據速率轉換。CLK是高速串行時鐘,CLKDIV是分頻并行時鐘。CLK和CLKDIV由DCM保證相位對齊。一個 OSERDES 模塊中的數據并串轉換器接收來自內部資源的四位并行數據,將數據串行化,然后通過 OQ 輸出將數據送至IOB。并行數據串行化是按照從數據輸入引腳的最低位到最高的順序進行的(即D1輸入引腳上的數據傳輸到OQ引腳的首位)。本設計是在雙倍數據速率 DDR模式下使用數據并串轉換器,CLK頻率為500 MHz,CLKDIV頻率為250 MHz,輸出串行數據速率為1GHz[4]。
本設計主要應用了Virtex5系列FPGA新的高性能DSP模塊、高速SelectIO資源,結合MAX5881高達4.3 GS/s的數據分辨率,實現了由基帶信號到50 MHz~1.6 GHz頻率范圍內射頻信號的上變頻,解決了傳統調制方法的上變頻部分無法采用數字方式實現的難題。本設計極大地簡化了RF模塊的設計,省去了傳統模擬方案中很多必需的器件,如:上變頻調制器或混頻器、下變頻混頻器、 固定和可變頻率合成器、放大器和濾波器等,因此單通道成本低于模擬方案。相對于傳統的數模混合調制系統,本設計系統靈活,便于仿真驗證,充分發揮了全數字系統的優點,有一定使用和推廣的價值。
參考文獻
[1] 王煒,趙可萍,鄭易.基于FPGA的調制信號電路設計[J].微計算機信息,2007,23(2-2).
[2] Interfacing the MAX5881 Direct RF Synthesis DAC to FPGAs[EB/OL].http://www.maxim-ic.com.cn.
[3] 李曉杰,王秀琴.直接數字頻率合成器的設計[J].煤礦機械,2008,29(7).
[4] ug190:Virtex-5 FPGA Data Sheet[EB/OL].http://www.xilinx.com.