數(shù)字下變頻器有多種芯片可供選擇,如Harris公司Gray-Chip公司的產(chǎn)品。然而這些器件無法滿足雷達(dá)對抗偵察數(shù)字接收機(jī)高多DSP的數(shù)字下變頻器。本文以某雷達(dá)對抗偵察數(shù)字接收機(jī)為例,介紹一種基于TI公司的DSP TMS320C6416的數(shù)字下變頻器。
1 數(shù)字下變頻的基本原理
數(shù)字下變頻的基本原理見圖1。
經(jīng)A/D變換后的中頻信號通過兩個(gè)乘法器構(gòu)成混頻器,產(chǎn)生I、Q兩種信號再通過低通濾波、抽取輸出降低了采樣頻率的基帶信號。以某種數(shù)字接收機(jī)為例,其中頻頻率fc=200MHz,中頻帶寬B=20MHz,中頻采樣頻率fs=500MHz,下變頻時(shí)可以直接將中頻頻率變到0,也就是令圖1中的f0=fc,此時(shí)位于中頻帶寬內(nèi)對稱于中頻頻率的信號頻譜分量將發(fā)生混疊。為避免這種現(xiàn)象可將中頻下變頻到一個(gè)較低的頻率而不是0,設(shè)f0=190MHz,則下變頻后的信號位于0~20MHz,通過低通濾波10倍抽取,相當(dāng)于對變頻后的信號以50MHz的采樣頻率采樣。利用DSP實(shí)現(xiàn)數(shù)字下變頻的第一步是選擇能滿足上述數(shù)據(jù)處理要求的DSP。對于混頻運(yùn)算,由于采樣頻率為500MHz,為實(shí)現(xiàn)時(shí)處理則要求DSP至少具有500MIPS的處理能力,同時(shí)考慮到后續(xù)濾波抽取運(yùn)算的需要,選用TI公司的高性能DSP芯片TMS320C6416。
2 TMS320C6416芯片的性能特點(diǎn)
TMS320C6416是TI公司最新推出的高性能定點(diǎn)DSP,其時(shí)鐘頻率可達(dá)600MHz,最高處理能力為4800MIPS,軟件與C62X完成兼容,采用先進(jìn)的甚長指令結(jié)構(gòu)(VLIW)的DSP內(nèi)核有6個(gè)ALU(32/40bit),每個(gè)時(shí)鐘周期可以執(zhí)行8條指令,所有指令都可以條件執(zhí)行。該DSP具有Viterbi譯碼協(xié)處理器(VCP)和Turbo譯碼協(xié)處理器(TCP);采用兩級緩存結(jié)構(gòu),一級緩存(L1)由128Kbit的程序緩存和128Kbit的數(shù)據(jù)緩存組成,二級緩存(L2)為8Mbit;有2個(gè)擴(kuò)展存儲(chǔ)器接口(EMIF),一個(gè)為64bit(EMIFA),一個(gè)為16bit(EMIFA),可以與異步(SRAM、EPROM)/同步存儲(chǔ)器(SDRAM、SBSRAM、ZBTSRAM、FIFO)無縫連接,最大可尋址范圍為1280MB;具有擴(kuò)展的直接存儲(chǔ)器訪問控制器(EDMA),可以提供64條獨(dú)立的DMA通道;主機(jī)接口(HPI)總線寬度可由用戶配置(32/16bit),具有32bit/33MHz,3.3V的PCI主/從接口,該接口符合PCI標(biāo)準(zhǔn)2.2版,有3個(gè)多通道串口(McBSPs),每個(gè)McBSPs最多可支持256個(gè)通道,能直接與T1/E1、MVIP、SCSA接口,并且與Motorola的SPI接口兼容,片內(nèi)還有一個(gè)16針的通用輸入輸出接口(GPIO)。
TMS320C6416與TI公司C6系列其它DSP相比有以下明顯的不同:首先是處理能力顯著提高。C6416的最大處理能力為4800MPIS,是1997年推出的C6201處理能力的3倍,執(zhí)行1024點(diǎn)復(fù)數(shù)FFT的時(shí)間為10.003μs,比C6201快了6倍多;其次是片內(nèi)集成外設(shè)顯著增加,其中VCP和TCP可以顯著提高片上的譯碼能力,PCI接口可以方便地與具有PCI總線的主機(jī)直接互連,無需額外的PCI接口芯片;別外原有集成外設(shè)性能提高,其EDMA可以提供64條獨(dú)立的DMA通道,而C6201僅有4個(gè)DMA通道,其EMIF數(shù)據(jù)線寬度可選,片內(nèi)存儲(chǔ)區(qū)和McBSPs的數(shù)量都有所增加,這使得C6416編程更靈活,使用更方便。
3 數(shù)字下變頻在TMS320C6416DSP上的實(shí)現(xiàn)基于TMS320C6416的數(shù)字下變頻器硬件結(jié)構(gòu)比較簡單,是一個(gè)基于共享存儲(chǔ)區(qū)的多DSP處理器。
3.1 數(shù)字下變頻器的硬件結(jié)構(gòu)
本文討論的數(shù)字下變頻器是基于多DSP的雷達(dá)對抗偵察數(shù)字接收機(jī)的組成部分。數(shù)字下變頻是在DSP上由軟件完成的,沒有單獨(dú)的數(shù)字下變頻電路,該數(shù)字接收機(jī)的硬件結(jié)構(gòu)見圖2。
該數(shù)字接收機(jī)采用主從機(jī)方式。多DSP并行處理機(jī)作為系統(tǒng)的從處理機(jī)主要負(fù)責(zé)對數(shù)據(jù)的實(shí)時(shí)處理,主處理機(jī)主要完成整機(jī)的控制、顯示及其它人機(jī)交互功能。ADC的采樣頻率為500MHz,中頻帶寬為20MHz。主處理機(jī)選用的高性能的通用微處理器,整機(jī)的數(shù)據(jù)總線可以選擇通用的PCI總線。其特點(diǎn)是傳輸速度快,最高可達(dá)132Mbytes/s,開發(fā)比較便捷。也可選用CPCI或VME總線,其中CPCI兼有PCI總線的優(yōu)點(diǎn)同時(shí)結(jié)構(gòu)堅(jiān)固,符合軍用標(biāo)準(zhǔn),也可以采用VME總線結(jié)構(gòu)。以上總線結(jié)構(gòu)可以根據(jù)用戶的需要確定。該數(shù)字接收機(jī)的數(shù)據(jù)處理是由多DSP從處理機(jī)完成的,該從處理機(jī)的DSP個(gè)數(shù)可以根據(jù)不同用戶對算法的要求來確定,對于I、Q兩通道的數(shù)字下變頻運(yùn)算需要4片C6416芯片。圖3以4片DSP為例給出了該多DSP處理機(jī)的硬件框圖。該并行處理機(jī)工作在共享存儲(chǔ)區(qū)方式下,SDRAM和SBSRAM是全局共享存儲(chǔ)區(qū),AD和DSP之間通過FIFO按照DMA方式進(jìn)行數(shù)據(jù)交換,主機(jī)不直接與DSP的HPI口連接,而是通過一個(gè)總線接口電路,采用不同的接口芯片實(shí)現(xiàn)與不同總線結(jié)構(gòu)的主機(jī)接口。
3.2 數(shù)字下變頻的軟件實(shí)現(xiàn)
在該數(shù)字接收機(jī)的原理樣機(jī)階段,筆者在C6416 Simulator上實(shí)現(xiàn)了該數(shù)字下變頻算法。以一個(gè)通道為例,該軟件包括混頻和濾波抽取兩部分,考慮到算法的通用性采用了C語言,并對代碼進(jìn)行了優(yōu)化。這兩部分分別在一片DSP上實(shí)現(xiàn),其中一片實(shí)現(xiàn)混頻,一片實(shí)現(xiàn)濾波抽取。這兩片DSP采用乒乓緩存方式并行工作,其軟件流程見圖4。從圖4中可以看出DSP1實(shí)現(xiàn)混頻,存儲(chǔ)區(qū)SBSA及SBSB通過DMA方式實(shí)現(xiàn)的,從FIFO來的數(shù)據(jù)也通過DMA方式讀入。由于DMA方式可以在DSP運(yùn)算的同時(shí)完成數(shù)據(jù)的交換,所以數(shù)據(jù)交換不占用額外的時(shí)間,實(shí)現(xiàn)了混頻和濾波抽取的并行運(yùn)算?;祛l運(yùn)算實(shí)際就是乘法運(yùn)算。通常為節(jié)省片內(nèi)存儲(chǔ)空間可以根據(jù)正余因子的對稱性存儲(chǔ)半個(gè)周期的數(shù)據(jù),但該數(shù)字接收機(jī)中,復(fù)振蕩信號的頻率為190MHz,采樣頻率為500MHz,每周期僅3.8個(gè)樣值點(diǎn),所以沒有必要存儲(chǔ)半個(gè)周期。實(shí)際應(yīng)用中存儲(chǔ)50個(gè)樣值點(diǎn),也就是19個(gè)周期,其余的由對稱性給出。由于C6416采用16bit定點(diǎn)算法,為防止溢出復(fù)振蕩信號可由下式給出: W(n)=k%26;#215;sin(2πf/fs%26;#215;n) n=0,1,……,49 (1) 這里k=32767,f=190MHz,fs=500MHz,同時(shí)混頻運(yùn)算的結(jié)果要右移15位,對應(yīng)的C6416代碼如下: for(j=0;j>15; } 其中IN[n]為采樣數(shù)據(jù),OUT[n]為混頻后的結(jié)果,SINNUM是復(fù)振蕩信號長度。
低通抽取濾波器實(shí)現(xiàn)的關(guān)鍵是通過合理確定抽取的位置來減少運(yùn)算量。從圖1可以看出抽取是在濾波之后完成的,實(shí)際上根據(jù)變采樣率系統(tǒng)的結(jié)構(gòu)互易性,抽取也可放在濾波之前。這相當(dāng)于把低通濾波和抽取看作一個(gè)濾波器,則
其中K為抽取率,h(i)為低通濾波器的單位樣值響應(yīng)。當(dāng)>>1時(shí),當(dāng)抽取率為10時(shí),經(jīng)實(shí)驗(yàn)證明這種算法的運(yùn)算時(shí)間約為先濾波后抽取運(yùn)算時(shí)間的1/10。該濾波器是利用MATLAB的FDAT00l工具包設(shè)計(jì)的。設(shè)計(jì)時(shí)綜合考慮其性能及C6416的處理能力,確定此為一個(gè)17階、截止頻率為25MHz的濾波器。軟件實(shí)現(xiàn)抽取濾波時(shí)為防止溢出,采取了與混頻相似的處理方法,相應(yīng)的C6416代碼如下: sum=0; for(j=0;j>15; } IN[i]=sum;其中,RATE為抽取率,H[n]為濾波器系數(shù),HNUM為其長度。 圖5 某中頻采樣信號波形頻譜及數(shù)字下變頻后的波形頻譜為驗(yàn)證以上算法的可行性,筆者在C6416 Simulator上作為大量實(shí)驗(yàn)。圖5(a)、(b)分別給出了某采樣信號的波形與頻譜,該信號為簡單脈沖,頻率為201MHz;(c)、(d)分別是下變頻后的信號波形與頻譜。從圖5中可以看出下變頻后的信號有和采樣信號相同的包絡(luò),頻率被搬移到了11MHz,其數(shù)據(jù)長度僅為采樣信號長度的1/10,可以大大減輕后續(xù)處理的運(yùn)算量。
對于20MHz帶寬的中頻信號,以500MHz采樣時(shí),使用兩片C6416就可以實(shí)時(shí)實(shí)現(xiàn)一個(gè)通道(I或者Q)的數(shù)字下變頻,滿足了設(shè)計(jì)要求。采樣長度(bit定點(diǎn)數(shù))采樣時(shí)間(μs)混 頻低通濾波周期數(shù)時(shí)間(μs)周期數(shù)時(shí)間(μs) 2000 4 1812 3.02 2165 3.61 4000 8 3612 6.02 4215 7.19 8000 16 7212 12.02 8615 14.35 16000 32 14412 24.02 12215 20.36 注:表中給出的混頻及低通濾波時(shí)間是10次實(shí)驗(yàn)的平均結(jié)果,采樣頻率為500MHz,C6416的時(shí)鐘頻率為600MHz。