《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于FPGA的軟件無線電可編程DDC的設(shè)計
基于FPGA的軟件無線電可編程DDC的設(shè)計
摘要: 本文所設(shè)計的簡單DDC系統(tǒng)可以完成基本的下變頻功能,,適用于各種需要進(jìn)行下變頻的場合,。并可免去使用專業(yè)DDC芯片的麻煩,有效實(shí)現(xiàn)所期望的功能,。程序設(shè)計和實(shí)驗(yàn)表明,,將接收進(jìn)來的經(jīng)過采樣量化的數(shù)字中頻信號進(jìn)行數(shù)字式下變頻在單片F(xiàn)PGA中完成是完全可行的,。 
關(guān)鍵詞: FPGA 軟件無線電 DDC
Abstract:
Key words :

  0 引言

  近年來,,軟件無線電已經(jīng)成為通信領(lǐng)域一個新的發(fā)展方向,,數(shù)字下變頻技術(shù)(DIGItal Down CONverter-DDC)是軟件無線電的核心技術(shù)之一,也是計算量最大的部分,,一般通過FPGA或?qū)S眯酒扔布?shí)現(xiàn),。

  現(xiàn)場可編程門陣列(FPGA)是一種由用戶自行配置的高密度專用數(shù)字集成芯片,具有小型化,、低功耗,、可編程、數(shù)字化和快速方便實(shí)用的特點(diǎn)。FPGA的靈活性與高速處理的能力,,使其由一種靈活的邏輯設(shè)計平臺發(fā)展為重要的信號處理元件,,在各種軟件無線電產(chǎn)品中得到了廣泛的應(yīng)用。

  本文設(shè)計和實(shí)現(xiàn)了基于FPGA的可編程DDC(DDC),,用于寬帶數(shù)字中頻軟件無線電接收機(jī)中,,完成數(shù)字下變頻、數(shù)據(jù)抽取等功能,。采用自頂向下的模塊化設(shè)計方法,,將整個DDC劃分為基本單元,實(shí)現(xiàn)這些功能模塊并組成模塊庫,。在具體應(yīng)用時,,優(yōu)化配置各個模塊來滿足具體無線通信系統(tǒng)性能的要求。

  DDC由數(shù)控振蕩器(NCO),、數(shù)字混頻器和積分清洗濾波器三部分組成,,如圖1所示。從原理上比較,,DDC和模擬下變頻器是一致的,,都是輸入信號與本地振蕩信號混頻,然后經(jīng)低通濾波器濾除高頻分量,,得到基帶信號,。

  

DDC原理圖 www.elecfans.com

 

  1 DDC的設(shè)計

  1.1 數(shù)控振蕩器的設(shè)計

  NCO是DDC中的重要組成部分,NCO的目標(biāo)是產(chǎn)生頻率可變的正交正,、余弦樣本信號,。NCO產(chǎn)生正弦波樣本通常可采用查表法,。即通過輸入的相位數(shù)據(jù)來尋址查表以輸出相應(yīng)的正弦波幅值,。如圖2所示,碼發(fā)生器由相位累加器和查找表構(gòu)成,。累加器按已定的步長進(jìn)行累加,,在每個參考時鐘周期累加,并將結(jié)果存入寄存器,。當(dāng)結(jié)果溢出時重復(fù)執(zhí)行,,累加的過程可以看作NCO輸出頻率的周期。使用查找表選擇相應(yīng)的SIN和COS值輸出,。若使用字長為N位寬的累加器,對于某一頻率控制字A,,輸出頻率fout與輸入頻率控制字A的關(guān)系為:

  

 

  其中,,fclk為系統(tǒng)時鐘。只要改變控制字A的大小,就可以控制輸出頻率fout,。fout變化的最小步長△f由累加器的數(shù)據(jù)寬度決定,。即:

  

 

  1.2 數(shù)字混頻器和積分清洗濾波器的設(shè)計及實(shí)現(xiàn)

  在本設(shè)計中,全部過程均采用數(shù)字化處理,,DDC由一對載波混頻器和一對積分清洗濾波器組成,。載波混頻器主要用來實(shí)現(xiàn)下變頻,積分清洗濾波器用來去掉高頻分量,,數(shù)據(jù)信息通過監(jiān)測相鄰兩個符號時間內(nèi)的相位變化來解調(diào)數(shù)據(jù),。兩路信號在經(jīng)過積分清洗濾波器后,輸出信號的函數(shù)形式仍然不變,,只是信號的幅值發(fā)生了變化,。

  由于利用FPGA設(shè)計時,采用的是數(shù)字化的解調(diào)過程,,因此在用VHDL實(shí)現(xiàn)時,,需要將送過來的基于比特數(shù)據(jù)類型的位矢量先轉(zhuǎn)化為有符號數(shù),然后再進(jìn)行數(shù)字運(yùn)算,,運(yùn)算過程結(jié)束后,,再將其轉(zhuǎn)化為位矢量以便于進(jìn)行信號的傳輸。兩個載波混頻器的輸入信號為前端送來的2比特的采樣數(shù)據(jù),,取值分別為±1和±3,,其中,“00”代表‘1’,,“01”代表‘3’,,“10”代表‘-1’,“11”代表‘-3’,,同樣,,本地載波取值±1,±3,,這樣經(jīng)過載波混頻后得到了±1,、±3、±9等6個值,。將這6個值用三位二進(jìn)制數(shù)表示,,高位為符號位,0表示正,,1表示負(fù),,低位為數(shù)據(jù)位00、01,、10分別代表1,、3,、9。所以載波混頻器比較簡單,,用簡單的門電路就可以實(shí)現(xiàn),,圖3為混頻器的綜合圖。對于本系統(tǒng)來說,,雖然載波NCO的輸出不是一個方波,,但對整體設(shè)計沒什么影響。

  

 

  

混頻器綜合圖 www.elecfans.com

 

  在實(shí)現(xiàn)積分清洗濾波時,,采取了前后兩個樣點(diǎn)相加(基于主時鐘mainclk),,然后由chip時鐘(chipclk)進(jìn)行抽樣輸出。這樣做可以回避低通濾波器的同步問題,。因?yàn)槿绻扇±奂?0次(Tchip=10Tmain)然后輸出累加量方式的話,,需要準(zhǔn)確確定Iout和Qout的chip同步點(diǎn),這樣才能恢復(fù)出正確的基帶信號,。因此接收進(jìn)來的QPSK信號經(jīng)過下變頻和低通濾波后的波形如圖5中的i out和q out所示,。

  2 DDC的系統(tǒng)仿真

  通過VHDL語言編寫NCO模塊,其在Modelsim中的仿真如圖4所示,。

  

NCO模塊仿真圖 www.elecfans.com

 

  其中:clk為基準(zhǔn)時鐘信號;i和q分別為sin,、cos兩路載波輸出;carr clock為載波周期時鐘,用來記錄載波周期個數(shù);load p為裝載初始相位有效信號;p_init為初始相位值;fctrl為頻率控制字,。本設(shè)計用的是全局時鐘作為工作時鐘,,所以雖然載波NCO的輸出不是一個方波,但對整體設(shè)計沒什么影響,,本地載波在一個周期內(nèi)有4個相位,,輸出為系統(tǒng)時鐘的分頻信號。

  圖5是數(shù)字混頻器仿真圖,,其中,,sAMPle in為接收到的信號,本文中用偽隨機(jī)碼;sin in,、cos in為輸入的兩路載波信號;i out,、q out為輸出結(jié)果。

  

數(shù)字混頻器仿真圖 www.elecfans.com

 

  3 結(jié)論

  本文所設(shè)計的簡單DDC系統(tǒng)可以完成基本的下變頻功能,,適用于各種需要進(jìn)行下變頻的場合,。并可免去使用專業(yè)DDC芯片的麻煩,有效實(shí)現(xiàn)所期望的功能,。程序設(shè)計和實(shí)驗(yàn)表明,,將接收進(jìn)來的經(jīng)過采樣量化的數(shù)字中頻信號進(jìn)行數(shù)字式下變頻在單片F(xiàn)PGA中完成是完全可行的。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。