陳洋,管國(guó)云,聶在平
(電子科技大學(xué)電子工程學(xué)院,四川 成都611731)
直接數(shù)字頻率(DDS)技術(shù)由于具有頻率分辨率高、工作帶寬較寬、短的轉(zhuǎn)換時(shí)間、相位連續(xù)變化、具有任意輸出波形的能力以及調(diào)制能力等優(yōu)點(diǎn),廣泛應(yīng)用于測(cè)井信號(hào)源設(shè)計(jì)。傳統(tǒng)的基于查找表的DDS受限于ROM容量限制,因此限制了幅度量化精度;同時(shí)由于相位截?cái)嗾`差,輸出信號(hào)的雜散較高[1],一般DDS產(chǎn)品都在-70dB左右?;赗OM表結(jié)構(gòu)的DDS具有任意輸出波形的能力。另外一些產(chǎn)生數(shù)字正余弦信號(hào)的方法基于的是三角函數(shù)的計(jì)算,包括泰勒級(jí)數(shù)展開以及CORDIC算法。前者實(shí)現(xiàn)需要乘法器,硬件的復(fù)雜度和速度受到限制。CORDIC只需要移位與加減法運(yùn)算容易實(shí)現(xiàn),可根據(jù)需要裁減迭代次數(shù),具有很大的靈活性,特別是只要有足夠的字長(zhǎng)和迭代次數(shù)就可以達(dá)到任意的量化精度。因此,它可以不失精度地產(chǎn)生正余弦信號(hào)[2]。
Delta Sigma調(diào)制技術(shù)由于其高線性、高精度和低成本而廣泛應(yīng)用于ADC和DAC中,特別是在音頻應(yīng)用領(lǐng)域。它采用過采樣和噪聲整形技術(shù),實(shí)現(xiàn)在相對(duì)窄到中頻段的范圍內(nèi)達(dá)到高的分辨率[3-4]。
在許多應(yīng)用場(chǎng)合需要多通道低頻高信噪比正余弦信號(hào),傳統(tǒng)的實(shí)現(xiàn)方法是采用多個(gè)DDS芯片,或者是采用DSP、FPGA等外加高精度的DAC芯片實(shí)現(xiàn)。這樣實(shí)現(xiàn)多路信號(hào)源將占用較大的硬件資源與電路板空間。本文提出的多通道正余弦信號(hào)發(fā)生器的方案綜合利用了DDS技術(shù)與Delta Sigma調(diào)制技術(shù)的優(yōu)勢(shì),采用全數(shù)字單片F(xiàn)PGA實(shí)現(xiàn),相對(duì)于傳統(tǒng)方法,有效簡(jiǎn)化了多通道高信噪比信號(hào)源的設(shè)計(jì),增加了設(shè)計(jì)的靈活性,降低了實(shí)現(xiàn)成本。
圖1為多通道正余弦信號(hào)源原理方案。它由頻率、相位、控制接口以及基于CORDIC的多通道DDS、基于Delta Sigma調(diào)制器的1bit DAC、模擬低通重構(gòu)濾波器組成。
圖1 多通道正余弦信號(hào)源原理方案
DDS輸出頻率fout由輸入頻率控制字決定,有
式中,fclk為DDS時(shí)鐘頻率;N為相位累加寬度;M為通道的個(gè)數(shù)。FTW為頻率控制字,當(dāng)FTW為常數(shù)時(shí),DDS電路產(chǎn)生固定頻率??紤]后級(jí)的Delta SigmaM倍過采樣率后,輸出上限頻率降低M倍。FTW的最小值為1時(shí)為DDS的最小頻率分辨率。圖2為多通道(以4通道為例)正余弦信號(hào)源架構(gòu)的系統(tǒng)方案。它包括3大部分,分別是基于時(shí)分復(fù)用的CORDIC的正余弦發(fā)生器、1bit Delta Sigma調(diào)制器DAC以及模擬低通濾波。多路選擇器依時(shí)序選擇頻率控制字進(jìn)入時(shí)序相位累加器,相位控制字進(jìn)入相位加法器,這樣可以實(shí)現(xiàn)4路相位的同時(shí)累加,相位累加器的輸出進(jìn)入CORDIC計(jì)算模塊,CORDIC處于正余弦計(jì)算模式,實(shí)現(xiàn)相位到幅度的轉(zhuǎn)化。CORDIC的時(shí)鐘頻率為Sigma Delta調(diào)制器的4倍,輸出經(jīng)過解多路復(fù)用器,依次將4路的正余弦值并行輸入到1bit DAC,實(shí)現(xiàn)多位到1位的轉(zhuǎn)化,因此,輸出不需外接DAC芯片,簡(jiǎn)化硬件設(shè)計(jì)。設(shè)計(jì)的4通道正余弦信號(hào)源為實(shí)現(xiàn)14bit的精度,CORDIC設(shè)計(jì)為16級(jí)流水線[12],所達(dá)到信噪比約為80dB。由于設(shè)計(jì)側(cè)重于低頻信號(hào)源應(yīng)用場(chǎng)合,因此輸出信號(hào)頻率上限設(shè)定為200kHz作為系統(tǒng)結(jié)構(gòu)測(cè)試和驗(yàn)證,這個(gè)值可以通過改變CORDIC的主頻時(shí)鐘、Delta Sigma階數(shù)、過采樣率等靈活設(shè)置。設(shè)計(jì)Delta Sigma為五階1bit 44倍過采樣率的單環(huán)級(jí)聯(lián)諧振反饋(CRFB)[4]結(jié)構(gòu),因此時(shí)鐘頻率為17.6MHz,主頻累加器時(shí)鐘70.4MHz。采用32bit相位累加器,頻率分辨率為0.016 4Hz,最后4路1bit數(shù)據(jù)流經(jīng)過模擬低通重構(gòu)濾波器濾除高頻量化噪聲,得到4路高信噪比的正余弦波信號(hào)。在系統(tǒng)架構(gòu)圖中只顯示CORDIC計(jì)算輸出正余弦中的1個(gè)。在架構(gòu)中頻率調(diào)制可以根據(jù)需要加入,但這不是必需的,簡(jiǎn)便起見這里省去。該系統(tǒng)架構(gòu)中也存在相位截?cái)嗾`差,因此限制了無雜散動(dòng)態(tài)范圍(SFDR)[5],為提高因?yàn)橄辔唤財(cái)嗾`差而降低SFDR,文獻(xiàn)中已經(jīng)提出一些降低雜散的技術(shù)。比如抖動(dòng)技術(shù)[5]、誤差反饋技術(shù)[6]以及 Delta Sigma噪聲整形技術(shù)[7],可以根據(jù)應(yīng)用需要采用這些技術(shù)進(jìn)一步提高SFDR。
圖2 新穎的時(shí)分復(fù)用四通道正余弦信號(hào)源架構(gòu)
在多路相位累加的設(shè)計(jì)中,最關(guān)鍵的是時(shí)序累加的實(shí)現(xiàn),它僅采用1個(gè)加法器以及4個(gè)寄存器就可以實(shí)現(xiàn)多路累加,有效降低了硬件資源消耗。圖3為相位累加器的工作時(shí)序。假定初始4個(gè)寄存器的值為0,這一假定是合理的,因?yàn)橛布想娨院蠖加幸粋€(gè)復(fù)位過程。設(shè)4個(gè)頻率控制字分別為1、2、3、4,時(shí)鐘上升沿有效。
圖3 多路累加器時(shí)序圖
圖3中REG1-4為4路寄存器,F(xiàn)TW表示進(jìn)入加法器的頻率控制字,ADD為加法器的輸出。虛線是4路累加第1、第2個(gè)周期,從圖2可以清楚地看出,通過TDM控制器循環(huán)切換多路選擇器實(shí)現(xiàn)多路分時(shí)累加。同時(shí)REG1的輸出作為相位累加器的輸出。TDM控制器控制CORDIC的輸出,通過解多路復(fù)用器依次將結(jié)果正確地輸出到對(duì)應(yīng)通道。TDM控制器僅是簡(jiǎn)單的狀態(tài)機(jī)或2bit計(jì)數(shù)器,硬件資源占用極小。
Volder[8-9]在1959年最初提出的CORDIC 算法是用于計(jì)算平面直角坐標(biāo)系和極坐標(biāo)系之間進(jìn)行自由變換的乘法器。Walther[10]將CORDIC算法進(jìn)行了推廣,他將圓周、線性以及雙曲線的變換都包含進(jìn)來。CORDIC作為一種只需要移位和加減法運(yùn)算的迭代算法非常有效地計(jì)算各種基本函數(shù)。CORDIC的核心思想是采用逐步逼近的迭代,直到得到所需要的精度。相對(duì)于傳統(tǒng)的方法,CORDIC需要較少的復(fù)雜硬件,特別適用于對(duì)資源消耗比速度要求敏感的應(yīng)用場(chǎng)合。同時(shí)由于CORDIC算法的簡(jiǎn)單以及靈活性,CORDIC也非常適合于VLSI實(shí)現(xiàn)[11]。設(shè)計(jì)中采用圓周旋轉(zhuǎn)模式計(jì)算正余弦函數(shù)。硬件實(shí)現(xiàn)CORDIC結(jié)構(gòu)可以采用2種基本架構(gòu):狀態(tài)機(jī)控制的迭代結(jié)構(gòu)和高速全流水線結(jié)構(gòu)[2,9]。由于第1種結(jié)構(gòu)采用單個(gè)的移位和加減法電路,串行順序執(zhí)行,1個(gè)迭代Nbit的CORDIC核需要N個(gè)時(shí)鐘周期計(jì)算1個(gè)值,速度較慢。
圖4 流水線CORDIC
圖4為流水線結(jié)構(gòu)[2]。對(duì)于N級(jí)流水線結(jié)構(gòu)在最初的N個(gè)時(shí)鐘周期后,每1個(gè)時(shí)鐘周期都將計(jì)算出1個(gè)新值,并且當(dāng)流水線級(jí)數(shù)確定后,每一級(jí)的移位數(shù)是常數(shù),采用了流水線結(jié)構(gòu)工作頻率更高。對(duì)速度要求較快的場(chǎng)合都是采用該結(jié)構(gòu)。關(guān)于CORDIC的量化誤差已經(jīng)在文獻(xiàn)[12]中作了詳細(xì)的分析。誤差主要為有限字長(zhǎng)表示角度的量化誤差以及舍入誤差??梢詤⒖嘉墨I(xiàn)中的方法估計(jì)目標(biāo)精度下所需要的位寬和迭代次數(shù)。將CORDIC應(yīng)用于正余弦信號(hào)的產(chǎn)生在文獻(xiàn)[2]中已經(jīng)有過詳細(xì)的敘述。綜合資源、速度、精度等各方面的考慮,在該架構(gòu)中采用16級(jí)流水線CORDIC實(shí)現(xiàn)相位到幅度的轉(zhuǎn)化,以達(dá)到所要求的信噪比。
基于Delta Sigma調(diào)制器的DAC在FPGA上的已有諸多實(shí)現(xiàn)[13-14],但都僅限于音頻應(yīng)用領(lǐng)域,因此,結(jié)合時(shí)鐘頻率與信號(hào)帶寬,一般過采樣率大于64。設(shè)計(jì)中多通道正余弦信號(hào)的DAC轉(zhuǎn)換也是由數(shù)字Delta Sigma調(diào)制器(DSDM)完成的,但是由于信號(hào)帶寬大幅增加,為了在并不顯著提高時(shí)鐘頻率的情況下同時(shí)降低過采樣率,只能通過增加調(diào)制器的階數(shù)。因此,在應(yīng)用中采用過采樣率為44的五階1bit單環(huán)級(jí)聯(lián)諧振反饋(CRFB)結(jié)構(gòu),同時(shí)優(yōu)化0點(diǎn)分布。DSM 的所有系數(shù)a[i]、b[i]、c[i]以及g[i]都是在Matlab環(huán)境下的Delta Sigma Toolbox得到。為了在硬件實(shí)現(xiàn)中減少資源消耗,避免出現(xiàn)乘法器,這些系數(shù)經(jīng)過量化、縮放以后都可以用二進(jìn)制的小數(shù)冪的組合表示[4]。圖5為CRFB的結(jié)構(gòu)。
圖5 五階Sigma Delta調(diào)制器
系數(shù)量化修改后,當(dāng)輸入頻率為200kHz、-8dB滿幅度正弦波信號(hào),進(jìn)行仿真最大信噪比(SNR)達(dá)到97.3dB達(dá)到16bit的精度,可以滿足前級(jí)16bit數(shù)據(jù)輸入。
模擬低通濾波器濾除1bit數(shù)字流中高頻量化噪聲,完成模擬信號(hào)的重構(gòu)。由于1bit數(shù)據(jù)流是大幅度的雙電平信號(hào),大部分的能量集中在帶外。如果數(shù)據(jù)流直接進(jìn)入有源濾波器,那么因?yàn)橛性礊V波器中運(yùn)放壓擺率的限制而導(dǎo)致輸出信號(hào)將出現(xiàn)諧波失真[4]。所以在集成電路實(shí)現(xiàn)中第1級(jí)都采用開關(guān)電容濾波器(SCF),然后再由連續(xù)時(shí)間濾波器(CTF)完成最終的濾波任務(wù)[4]。設(shè)計(jì)中采用FPGA實(shí)現(xiàn),這種結(jié)構(gòu)并不適合在非芯片設(shè)計(jì)中實(shí)現(xiàn)。濾波器的性能最終決定重構(gòu)信號(hào)的質(zhì)量,因此在本文的設(shè)計(jì)中第1級(jí)采用三階無源RC低通濾波器,后級(jí)采用三階有源濾波器,一共為級(jí)聯(lián)六階低通濾波器,可以滿足高頻帶外抑制要求。
系統(tǒng)中數(shù)字部分所有模塊都采用Verilog編寫,并且在ModelSim中進(jìn)行仿真,采用ISE10.1進(jìn)行綜合。全部設(shè)計(jì)都在Xilinx Spartan 3XC3S400-5pq208中實(shí)現(xiàn)。
表1 綜合結(jié)果
圖6采用16級(jí)CORDIC流水線結(jié)構(gòu),4路頻率分別為200、100、20、10kHz正弦波的仿真結(jié)果。
圖6 CORDIC產(chǎn)生的4路正弦波
圖7為輸出200kHz信號(hào)的測(cè)試結(jié)果。測(cè)量結(jié)果由Agilent 33250AMix Signal Analyzer得到,分辨率帶寬為51Hz,F(xiàn)FT點(diǎn)數(shù)為16 384,將數(shù)據(jù)導(dǎo)入MATLAB計(jì)算所得到信噪比大約為78.6dB,測(cè)試結(jié)果與理論計(jì)算基本吻合。
圖7 200kHz正弦波測(cè)量頻譜圖
(1)采用FPGA實(shí)現(xiàn)了一種多通道的正余弦新型信號(hào)發(fā)生器。它以CORDIC算法實(shí)現(xiàn)多通道時(shí)分復(fù)用產(chǎn)生正余弦信號(hào)為基礎(chǔ),通過數(shù)字Delta Sigma調(diào)制技術(shù)實(shí)現(xiàn)1bit DAC,有效降低硬件實(shí)現(xiàn)復(fù)雜度與實(shí)現(xiàn)成本,只需要外接簡(jiǎn)單的模擬低通濾波器就能產(chǎn)生多通道的模擬正余弦信號(hào)。
(2)由于CORDIC、Delta Sigma結(jié)構(gòu)的靈活性,可以根據(jù)實(shí)際需要產(chǎn)生所需頻率和精度的信號(hào)。
(3)設(shè)計(jì)架構(gòu)由于Delta Sigma調(diào)制技術(shù)過采樣的本質(zhì)要求,所以比基于查找表結(jié)構(gòu)的DDS輸出上限頻率低,當(dāng)要求輸出頻率相對(duì)時(shí)鐘頻率較高時(shí),輸出信號(hào)質(zhì)量會(huì)大幅下降。當(dāng)要求信號(hào)輸出頻率較低時(shí)該結(jié)構(gòu)是特別適用的架構(gòu)。
[1] Analog Devices Corporation.A Technical Tutorial on Digital Signal Synthesis[R].Analog Devices,Inc,1999.
[2] Esteban O Garcia,Rene Cumplido,Miguel Arias.Pipelined CORDIC Design on FPGA for a Digital Sine and Cosine Waves Generator[C]∥Proceedings of the 3rd International Conference on Electrical and Electronics Engineering,Veracuz,September 2006,2006:1-4.
[3] Aziz P M,Sorensen H V,Jvnder Spiegel.An Overview of Sigma-delta Converters[C]∥IEEE Signal Processing Magazine,1996,13(1):61-84.
[4] Norsworthy S R,Schreier R,Temes G C.Delta-Sigma Data Converters:Theory,Design,and Simulation[M].Piscataway,NJ:IEEE Press,1997.
[5] Nicholas H,Samueli H.An Analysis of the Output Spectrum of Direct Digital Frequency Synthesizers in the Presence of Phase-accumulator Truncation[C]∥Frequency Control Symp,1987:495-502.
[6] Vankka J.A Direct Digital Synthesizer with a Tunable Error Feedback Structure[C]∥IEEE Trans on Communication,1997,45(4):416-420.
[7] Yongchul Song,Beomsup Kim.A 14-bit Direct Digital Frequency Synthesizer with Sigma-Delta Noise Shaping[J].IEEE J.Solid-State Circuits,2004,39(5):847-851.
[8] Volder J.The CORDI Computing Technique[C]∥IRE Trans on Electronic Computer.1959,39 (5):841-851.
[9] Uwe Meyer-Baese.Digital Signal Processing with Filed Programmable Gate Arrays[M].New York,USA:Springer-Verlag,2000:70-75.
[10] Walther J.A Unified Algorithm for Elementary Function[C]∥ Proc.AFIPS Spring Joint Computing Conf.1971,38:379-385.
[11] Hu.CORDIC-based VLSI Architecture for Digital Signal Processing[J].IEEE Signal Processing Magazine.1992,9(3):16-35.
[12] Hu Y H.The Quantization Effects of the CORDIC Algorithm[J].IEEE Trans on Signal Processing,1992,40(4):834-844.
[13] Xiaoxiao Li,Lee A.An FPGA Implemented 24-bit Audio DAC with 1-bit Sigma-Delta Modulator[C]∥2010IEEE Asia Pacific Conference on Circuits and System,2010:768-771.
[14] Cheung C,Pun K P,Yuen S C L,et al.An FPGA-based Re-configurable 24-bit 96kHz Sigma-Delta Audio DAC[C]∥Proceedings of 2003IEEE International Conference on Field-Programmable Technology,2003:110-117.