- 相關(guān)推薦
ADSP Tiger SHARC芯片TS101S及其應(yīng)用
摘要:ADSPTigerSHARC系列中的TS101S是AD公司最新推出的高性能定/浮點數(shù)字信號處理器。文章利用FBLMS算法在輸入信號為高度相關(guān)性時仍然具有較好的收斂速度這一特點,進(jìn)而通過FBLMS算法在TS101S上實現(xiàn)了自適應(yīng)濾波,并在EZ-KIT開發(fā)板上測試通過,同時驗證了該算法抑制同頻窄帶信號對雷達(dá)干擾的有效性。關(guān)鍵詞:ADSPTiserSHARC;FBLMS;窄帶干擾;TS101S
。币
利用數(shù)字信號處理器(DSP)來進(jìn)行模擬信號的處理同時具有很大的優(yōu)越性,其主要表現(xiàn)有精度高,靈活性大,可靠性好等方面。它不但可以廣泛應(yīng)用于通信系統(tǒng)、圖形/圖像處理、雷達(dá)聲納、醫(yī)學(xué)信號處理等實時信號處理領(lǐng)域。而且隨著人們對實時信號處理要求的不斷提高和大規(guī)模集成電路技術(shù)的迅速發(fā)展,數(shù)字信號處理器也發(fā)生著日新月異的變革。就AD公司而言,繼16-bit定點ADSP21xx和32-bit浮點ADSP21xxx系列之后,日前又推出了ADSPTigerSHARC系列的新型器件。這種TigerSHARC系列器件是基于AD2106x的下一代高性能芯片,其內(nèi)部集成有更大容量的RAM,它可以在單周期內(nèi)執(zhí)行4條指令,且可以很方便地實現(xiàn)多片并行處理系統(tǒng)的擴展,這些新添的特性更增加了高速實時信號處理的可行性。本文將介紹該系列中的TS101S芯片,以及利用該芯片實現(xiàn)FBLMS?Frequency-domainBlockLMS?算法的自適應(yīng)預(yù)測濾波的設(shè)計方法。此外,筆者還在EZ-KIT開發(fā)板上測試通過并驗證了該算法抑制同頻窄帶信號對雷達(dá)干擾的有效性。
2TS101S系統(tǒng)器件的結(jié)構(gòu)性能
。玻苯Y(jié)構(gòu)特點
。裕樱保埃保拥南到y(tǒng)結(jié)構(gòu)邏輯框圖如圖1所示。TS101S依舊采用超級哈佛結(jié)構(gòu)(SHARC),并運用流水線技術(shù),目前可以達(dá)到8級流水線(3級取指5級執(zhí)行),其結(jié)構(gòu)特點如下:
●具有特殊的指令集和較長的指令字,一個指令字可以同時控制芯片內(nèi)多個功能單元的操作;
●片內(nèi)集成有可由用戶自己定義的6Mbit大容量SRAM存儲器;
●具有2個獨立的計算單元,每個單元都有算術(shù)邏輯單元、乘法器、移位器、寄存器組及相關(guān)的數(shù)據(jù)對齊緩沖器,并可通過加速器支持Trellis解碼?如,Viterbi和Turbo解碼?和復(fù)數(shù)相關(guān)運算;
●帶有兩個IntegerALU,每個IALU含有兩個通用寄存器組,因而具有強大的地址產(chǎn)生能力,可支持環(huán)形緩沖和位反序?qū)ぶ罚?br />
●支持SIMD操作。
。玻仓饕阅
。裕樱保埃保泳哂袠O高的處理能力,它采用靜態(tài)超標(biāo)量結(jié)構(gòu),既有超標(biāo)量處理器所具備的大容量指令緩沖池和指令跳轉(zhuǎn)預(yù)測功能,又可以在程序執(zhí)行前就對指令級進(jìn)行并行操作并用編譯器預(yù)測出來。TS101S的其它重要性能指標(biāo)如下:
●指令周期為4ns(主頻250MHz)?運算能力達(dá)到250MIPS;
●DSP每周期能執(zhí)行4條指令,具有24個16-bit定點運算和6個浮點運算能力,能提供1500MIPS或6.0GOPS的性能;
●每周期可實現(xiàn)8×16bit乘與40bit累加或者2×16bit乘與80bit累加;
●支持32bitIEEE浮點數(shù)據(jù)和8bit/16bit/32bit/64bit定點數(shù)據(jù)格式。
。裕樱保埃钡钠渌湫托阅苤笜(biāo)如表1所列。
表1250M運行時通用算法性能
性能指村速度時鐘周期32-bit處,500百萬MACs/s峰值性能1024點復(fù)數(shù)FFT(基2)39.34μs98351024點輸入50抽頭FIR110μs27500單FIRMAC2.2ns0.5516-bit算法,20億次MACs/s峰值性能256點復(fù)數(shù)FFT(基2)4.4μs11001024點輸入50抽頭FIR28.8μs7200單FIRMAC0.56ns0.14單復(fù)數(shù)FIRMAC2.28ns0.57
雷達(dá)信號處理一般需要很高的實時性,比如在干擾抑制算法處理時,必須在一個回波脈沖周期內(nèi)完成相關(guān)算法。由上述分析可知,TS101S可以滿足高速實時數(shù)字信號處理的要求。下面以TS101S實現(xiàn)FBLMS自適應(yīng)算法抑制同頻窄帶信號對雷達(dá)的干擾為例進(jìn)一步介紹該芯片。
。常疲拢蹋停铀惴ǚ治雠c實現(xiàn)
自適應(yīng)過程一般采用典型LMS自適應(yīng)算法,但當(dāng)濾波器的輸入信號為有色隨機過程時,特別是當(dāng)輸入信號為高度相關(guān)時,這種算法收斂速度要下降許多,這主要是因為輸入信號的自相關(guān)矩陣特征值的分散程度加劇將導(dǎo)致算法收斂性能的惡化和穩(wěn)態(tài)誤差的增大。此時若采用變換域算法可以增加算法收斂速度。變換域算法的基本思想是:先對輸入信號進(jìn)行一次正交變換以去除或衰減其相關(guān)性,然后將變換后的信號加到自適應(yīng)濾波器以實現(xiàn)濾波處理,從而改善相關(guān)矩陣的條件數(shù)。因為離散傅立葉變換?DFT?本身具有近似正交性,加之有FFT快速算法,故頻域分塊LMS?FBLMS?算法被廣泛應(yīng)用。
FBLMS算法本質(zhì)上是以頻域來實現(xiàn)時域分塊LMS算法的,即將時域數(shù)據(jù)分組構(gòu)成N個點的數(shù)據(jù)塊,且在每塊上濾波權(quán)系數(shù)保持不變。其原理框圖如圖2所示。FBLMS算法在頻域內(nèi)可以用數(shù)字信號處理中的重疊保留法來實現(xiàn),其計算量比時域法大為減少,也可以用重疊相加法來計算,但這種算法比重疊保留法需要較大的計算量。塊數(shù)據(jù)的任何重疊比例都是可行的,但以50%的重疊計算效率為最高。對FBLMS算法和典型LMS算法的運算量做了比較,并從理論上討論了兩個算法中乘法部分的運算量。本文從實際工程出發(fā),詳細(xì)分析了兩個算法中乘法和加法的總運算量,其結(jié)果為:
復(fù)雜度之比=FBLMS實數(shù)乘加次數(shù)/LMS實數(shù)乘加次數(shù)=(25Nlog2N+2N-4)/[2N(2N-1)]?
采用ADSP的C語言來實現(xiàn)FBLMS算法的程序如下:
。妫铮(i=0;i<=30;i++)
{for(j=0;j<=n-1;j++)
{in[j]=input[i×N+j;]
。颍妫妫(in,tin,nf,wfft,wst,n);
。颍妫妫(w,tw,wf,wfft,wst,n);
。悖觯澹悖觯恚欤(inf,wf,inw,n);
。椋妫妫(inw,t,O,wfft,wst,n);
。妫铮(j=0,j<=N-1;j++)
{y[i×N+j]=O[N+j].re;
。錥i×N+j]=refere[i×N+j]-y[i×N+j];
temp[N+j]=e[i×N+j;}
。颍妫妫(temp,t,E,wfft,wst,n);
for(j=0;j<=n-1;j++)
{inf_conj[j]=conjf(inf[j]);}???
。悖觯澹悖觯恚欤(E,inf_conj,Ein,n);
ifft(Ein,t,Ein,wfft,wst,n);
。妫铮(j=0;j<=N-1;j++)
{OO[j]=Ein[j].re;
。鱗j]=w[j]+2*u*OO[j];}??
}
在EZ-KIT測試板中,筆者用匯編語言和C語言程序分別測試了典型LMS算法的運行速度,并與FBLMS算法的C語言運行速度進(jìn)行了比較,表2所列是其比較結(jié)果,從表2可以看出濾波器階數(shù)為64時,即使是用C語言編寫的FBLMS算法也比用匯編編寫的LMS算法速度快20%以上,如果濾波器的階數(shù)更大,則速度會提高更多。
表2FBLMS和LMS算法在運行速度比較
算法條件時鐘周期速度LMS-ASM1024點實數(shù)據(jù),64階12574935.030msLMS-C1024點實數(shù)據(jù),64階839486233.579msFBLMS-C1024點實數(shù)據(jù),64階9865243.946ms
【ADSP Tiger SHARC芯片TS101S及其】相關(guān)文章: