DSP與數(shù)字信號(hào)處理作業(yè)_第1頁
DSP與數(shù)字信號(hào)處理作業(yè)_第2頁
DSP與數(shù)字信號(hào)處理作業(yè)_第3頁
DSP與數(shù)字信號(hào)處理作業(yè)_第4頁
DSP與數(shù)字信號(hào)處理作業(yè)_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1、什么是DSP?簡述DSPs的特點(diǎn)?簡述DSPs與MCU、FPGA、ARM的區(qū)別?學(xué)習(xí)DSP開發(fā)需要哪些知識(shí)?學(xué)習(xí)DSP開發(fā)需要構(gòu)建什么開發(fā)環(huán)境?(15分)答:(1)DSP是Digital Signal Processing(數(shù)字信號(hào)處理的理論和方法)的縮寫,同時(shí)也是Digital Signal Processor(數(shù)字信號(hào)處理的可編程微處理器)的縮寫。通常流過器件的電壓、電流信號(hào)都是時(shí)間上連續(xù)的模擬信號(hào),可以通過A/D器件對連續(xù)的模擬信號(hào)進(jìn)行采樣,轉(zhuǎn)換成時(shí)間上離散的脈沖信號(hào),然后對這些脈沖信號(hào)量化、編碼,轉(zhuǎn)化成由0和1構(gòu)成的二進(jìn)制編碼,也就是常說的數(shù)字信號(hào)。DSP能夠?qū)@些數(shù)字信號(hào)進(jìn)行變換

2、、濾波等處理,還可以進(jìn)行各種各樣復(fù)雜的運(yùn)算,來實(shí)現(xiàn)預(yù)期的目標(biāo)。(2)DSP既然是特別適合于數(shù)學(xué)信號(hào)處理運(yùn)算的微處理器,那么根據(jù)數(shù)字信號(hào)處理的要求,DSP芯片一般具有下面所述的主要特點(diǎn):1)程序空間和數(shù)據(jù)空間分開,CPU可以同時(shí)訪問指令和數(shù)據(jù);2)在一個(gè)指令周期內(nèi)可以完成一次乘法和一次加法運(yùn)算;3)片內(nèi)具有快速RAM,通??梢酝ㄟ^獨(dú)立的數(shù)據(jù)總線在程序空間和數(shù)據(jù)空間同時(shí)訪問;4)具有低開銷和無開銷循環(huán)及跳轉(zhuǎn)的硬件支持;5)具有快速的中斷處理和硬件I/O支持;6)可以并行執(zhí)行多個(gè)操作;7)支持流水線操作,使得取址、譯碼和執(zhí)行等操作可以重復(fù)執(zhí)行。(3)DSP采用的是哈佛結(jié)構(gòu),數(shù)據(jù)空間和存儲(chǔ)空間是分開的

3、,通過獨(dú)立的數(shù)據(jù)總線在數(shù)據(jù)空間和程序空間同時(shí)訪問。而MCU采用的是馮·諾依曼結(jié)構(gòu),數(shù)據(jù)空間和存儲(chǔ)空間共用一個(gè)存儲(chǔ)器空間,通過一組總線(地址總線和數(shù)據(jù)總線)連接到CPU)。很顯然,在運(yùn)算處理能力上,MCU不如DSP;但是MCU價(jià)格便宜,在對性能要求不是很高的情況下,還是很具有優(yōu)勢的。ARM是Advanced RISC(精簡指令集)Machines的縮寫是面向低運(yùn)算市場的RISC微處理器。ARM具有比較強(qiáng)的事務(wù)管理功能,適合用來跑跑界面、操作系統(tǒng)等,其優(yōu)勢主要體現(xiàn)在控制方面,像手持設(shè)備90%左右的市場份額均被其占有。而DSP的優(yōu)勢是其強(qiáng)大的數(shù)據(jù)處理能力和較高的運(yùn)算速度,例如加密/解密、調(diào)

4、制/解調(diào)等。FPGA是Field Programmable Gate Array(現(xiàn)場可編程門陣列)的縮寫,它是在PAL、GAL、PLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物,是專用集成電路中集成度最高的一種。FPGA采用了邏輯單元陣列LCA(Logical Cell Array)的概念,內(nèi)部包括了可配置邏輯模塊CLB、輸入/輸出模塊IOB、內(nèi)部連線三個(gè)部分。用戶可以對FPGA內(nèi)部的邏輯模塊和I/O模塊進(jìn)行重置配置,已實(shí)現(xiàn)用戶自己的邏輯。它還具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編程來修改。使用FPGA來開發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少PCB面積,提高

5、系統(tǒng)的可靠性;同時(shí)FPGA可以用VHDL或Verilog HDL來編程,靈活性強(qiáng)。由于FPGA能夠進(jìn)行編程、除錯(cuò)、再編程和重復(fù)操作,因此可以充分地進(jìn)行設(shè)計(jì)開發(fā)和驗(yàn)證。當(dāng)電路有少量改動(dòng)時(shí),更能顯示出FPGA的優(yōu)勢,其現(xiàn)場編程能力可以延長產(chǎn)品在市場上的壽命,而這種能力可以用來進(jìn)行系統(tǒng)升級(jí)和除錯(cuò)。但價(jià)格比較高。(4)無論學(xué)習(xí)哪一款微處理器,無關(guān)乎兩個(gè)部分:一個(gè)是硬件,一個(gè)是軟件。硬件部分,最好有過MCU或者ARM之類相關(guān)微處理器的開發(fā)經(jīng)驗(yàn),因?yàn)橛布希鱾€(gè)處理器之間是有許多共同點(diǎn)的,設(shè)計(jì)時(shí)處理的方法很多是一樣的。軟件部分,需要會(huì)C或者C+,當(dāng)然,如果會(huì)匯編更好。除了這兩方面的技能之外,如果在信號(hào)處理

6、理論方面有一些基礎(chǔ),例如知道時(shí)域與頻域、s域、z域的變換,知道FFT、各種數(shù)字濾波器的知識(shí)。(5)CCS(Code Composer Studio)是開發(fā)DSP時(shí)所需的軟件開發(fā)環(huán)境,即編寫、調(diào)試DSP代碼都需要在CCS軟件中進(jìn)行。2、經(jīng)典的數(shù)字信號(hào)處理的算法主要包括哪些內(nèi)容?試分別簡述之?(15分)答:經(jīng)典的數(shù)字信號(hào)處理的算法主要包括FFT算法、DET算法和CORDIC算法。FFT算法是一種DFT的高效算法,稱為快速傅立葉變換(fast Fourier transform)。FFT算法可分為按時(shí)間抽取算法和按頻率抽取算法;DFT,離散傅立葉變換,是一種針對離散信號(hào)進(jìn)行的變換,適合計(jì)算機(jī)數(shù)據(jù)處理

7、的要求,將一個(gè)長度為N離散的信號(hào),分解為N/2+1個(gè)余弦波和N/2+1個(gè)正弦波。CORDIC(Coordinate Rotation Digital Computer)算法即坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算方法,是J.D.Volder1于1959年首次提出,主要用于三角函數(shù)、雙曲線、指數(shù)、對數(shù)的計(jì)算。該算法通過基本的加和移位運(yùn)算代替乘法運(yùn)算,使得矢量的旋轉(zhuǎn)和定向的計(jì)算不再需要三角函數(shù)、乘法、開方、反三角、指數(shù)等函數(shù)。3、簡述TI公司的DSPs的產(chǎn)品系列及其應(yīng)用范圍?(15分)答:目前,TI公司在市場上主要有三大系列DSP產(chǎn)品:1)TMS320C2000系列,面向數(shù)字控制、運(yùn)動(dòng)控制領(lǐng)域,主要包括:TMS320C

8、24xx/TMS320F24xx、TMS320C28xx/TMS320F28xx等。2)TMS320C5000系列,面向低功耗、手持設(shè)備、無線終端應(yīng)用領(lǐng)域,主要包括:TMS320C54x、TMS320C54xx、TMS320C55xx等。3)TMS320C6000系列,面向高性能、多功能、復(fù)雜應(yīng)用領(lǐng)域,例如圖像處理,主要包括:TMS320C62xx、TMS320C64xx、TMS320C67xx等。此外,還有面向低端應(yīng)用。價(jià)格可以和MCU競爭、功能稍微減弱的Piccolo平臺(tái)的產(chǎn)品,主要有TMS320F2803x/2x。面向高端視頻處理的達(dá)芬奇平臺(tái),例如DM642/DM6437/DM6467D

9、ENG,有面向移動(dòng)終端的雙核處理器OMAP平臺(tái),例如OMAP3530。4、結(jié)合MATLAB、DSP技術(shù)談?wù)劵贒SPs的FFT的開發(fā)過程?(15分)答:MATLAB中已經(jīng)提供了FFT的算法,F(xiàn)FT可以采用直接調(diào)用的方式:FFT正變換:X=FFT(x);X=FFT(x,N);反變換x=IFFT(X);x=IFFT(X,N);實(shí)際DSP應(yīng)用中,F(xiàn)FT采用的是按時(shí)間抽選的基2FFT算法。下圖所示為8點(diǎn)DIT的FFT運(yùn)算流圖:程序?qū)崿F(xiàn)流程圖如下所示:5、結(jié)合自己的專業(yè)設(shè)計(jì)一種基于DSPs的數(shù)字信號(hào)處理系統(tǒng)。要求包括硬件設(shè)計(jì)與軟件設(shè)計(jì),設(shè)計(jì)中的某個(gè)算法要求利用MATLAB進(jìn)行仿真或者利用DSP的實(shí)驗(yàn)箱進(jìn)

10、行實(shí)現(xiàn)(40分)答:通過F28335DSP編程實(shí)現(xiàn)FFT和IFFT,給定模擬采樣輸入,進(jìn)行256點(diǎn)的FFT變換和反變換。程序及DSP運(yùn)行結(jié)果波形如下:#include "DSP2833x_Device.h"#include "DSP2833x_Examples.h"#include <math.h> #define pi 3.141593 / float小數(shù)點(diǎn)后6位#define NL 256;int N=NL; /FFT點(diǎn)數(shù)float InputNL;/輸入的信號(hào)序列struct Complex/ 定義復(fù)數(shù)結(jié)構(gòu)體 float real,im

11、ag;struct Complex Wn;/定義旋轉(zhuǎn)因子struct Complex Vn;/每一級(jí)第一個(gè)旋轉(zhuǎn)因子虛部為0,實(shí)部為1struct Complex T;/存放旋轉(zhuǎn)因子與X(k+B)的乘積float outputNL=0;/ 輸出的FFT幅值(復(fù)數(shù)的模)struct Complex SampleNL;/ 采樣輸入的實(shí)數(shù)轉(zhuǎn)化為復(fù)數(shù)struct Complex MUL(struct Complex a,struct Complex b)/定義復(fù)乘 struct Complex c; c.real=a.real*b.real-a.imag*b.imag; c.imag=a.real*b.

12、imag+a.imag*b.real; return(c);void MYiFFT(struct Complex *xin,int N)/輸入為復(fù)數(shù)指針*xin,做N點(diǎn)FFT int L=0; / 級(jí)間運(yùn)算層 int J=0; / 級(jí)內(nèi)運(yùn)算層 int K=0,KB=0; / 蝶形運(yùn)算層 int M=1,Nn=0;/ N=2M float B=0; / 蝶形運(yùn)算兩輸入數(shù)據(jù)間隔 /* 以下是為倒序新建的局部變量*/ int LH=0,J2=0,N1=0,I,K2=0; struct Complex T; /*以下是倒序*/ LH=N/2; / LH=N/2 J2=LH; N1=N-2; for(I

13、=1;I<=N1;I+) if(I<J2) T=xinI; xinI=xinJ2; xinJ2=T; K2=LH; while(J2>=K2) J2-=K2; K2=K2/2;/ K2=K2/2 J2+=K2; /* 以下為計(jì)算出M */ Nn=N; while(Nn!=2)/ 計(jì)算出N的以2為底數(shù)的冪M M+; Nn=Nn/2; /* 蝶形運(yùn)算 */ for(L=1;L<=M;L+) / 級(jí)間 B=pow(2,(L-1); Vn.real=1; Vn.imag=0; Wn.real=cos(pi/B); Wn.imag=sin(pi/B); for(J=0;J<

14、B;J+) / 級(jí)內(nèi) for(K=J;K<N;K+=2*B) / 蝶形因子運(yùn)算 KB=K+B; T=MUL(xinKB,Vn); xinKB.real=xinK.real-T.real;/原址運(yùn)算,計(jì)算結(jié)果存放在原來的數(shù)組中 xinKB.imag=xinK.imag-T.imag; xinK.real=xinK.real+T.real; xinK.imag=xinK.imag+T.imag; Vn=MUL(Wn,Vn);/ 旋轉(zhuǎn)因子做復(fù)乘相當(dāng)于指數(shù)相加,得到的結(jié)果 / 和J*2(M-L)是一樣的,因?yàn)樵诘我蜃舆\(yùn)算 / 層中M與L都是不變的,唯一變x化的是級(jí)內(nèi)的J / 而且J是以1為步長

15、的,如J*W等效于W+W+W.J個(gè)W相加 void MYFFT(struct Complex *xin,int N)/輸入為復(fù)數(shù)指針*xin,做N點(diǎn)FFT int L=0; / 級(jí)間運(yùn)算層 int J=0; / 級(jí)內(nèi)運(yùn)算層 int K=0,KB=0; / 蝶形運(yùn)算層 int M=1,Nn=0;/ N=2M float B=0; / 蝶形運(yùn)算兩輸入數(shù)據(jù)間隔 /* 以下是為倒序新建的局部變量*/ int LH=0,J2=0,N1=0,I,K2=0; struct Complex T; /*以下是倒序*/ LH=N/2; / LH=N/2 J2=LH; N1=N-2; for(I=1;I<=N

16、1;I+) if(I<J2) T=xinI; xinI=xinJ2; xinJ2=T; K2=LH; while(J2>=K2) J2-=K2; K2=K2/2;/ K2=K2/2 J2+=K2; /* 以下為計(jì)算出M */ Nn=N; while(Nn!=2)/ 計(jì)算出N的以2為底數(shù)的冪M M+; Nn=Nn/2; /* 蝶形運(yùn)算 */ for(L=1;L<=M;L+) / 級(jí)間 B=pow(2,(L-1); Vn.real=1; Vn.imag=0; Wn.real=cos(pi/B); Wn.imag=-sin(pi/B); for(J=0;J<B;J+) / 級(jí)

17、內(nèi) for(K=J;K<N;K+=2*B) / 蝶形因子運(yùn)算 KB=K+B; T=MUL(xinKB,Vn); xinKB.real=xinK.real-T.real;/原址運(yùn)算,計(jì)算結(jié)果存放在原來的數(shù)組中 xinKB.imag=xinK.imag-T.imag; xinK.real=xinK.real+T.real; xinK.imag=xinK.imag+T.imag; Vn=MUL(Wn,Vn);/ 旋轉(zhuǎn)因子做復(fù)乘相當(dāng)于指數(shù)相加,得到的結(jié)果 / 和J*2(M-L)是一樣的,因?yàn)樵诘我蜃舆\(yùn)算 / 層中M與L都是不變的,唯一變x化的是級(jí)內(nèi)的J / 而且J是以1為步長的,如J*W等效于

18、W+W+W.J個(gè)W相加 /*功能:計(jì)算復(fù)數(shù)的模形參:*Sample指向需要取模的復(fù)數(shù)結(jié)構(gòu)體 N為取模點(diǎn)數(shù) *output存放取模后數(shù)值的數(shù)組*/void ModelComplex(struct Complex *Sample,int N,float *output) int i; for(i=0;i<N;i+) outputi=sqrt(Samplei.real*Samplei.real+Samplei.imag*Samplei.imag)*2/N;void main(void) Uint16 i=0; InitSysCtrl(); DINT; InitPieCtrl(); IER = 0x0000; IFR = 0x0000; for(i=0;i<NL;i+) Inputi=1.0*sin(2*pi*i/(NL-1)+1.0/3*sin(2*pi*i*3/(NL-1)+1.0/5*sin(2*pi*i*5/(NL-1); for(i=0;i<NL;i+) /輸入

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論