基于dsp數(shù)字濾波器的課程設(shè)計(jì)_第1頁
基于dsp數(shù)字濾波器的課程設(shè)計(jì)_第2頁
基于dsp數(shù)字濾波器的課程設(shè)計(jì)_第3頁
基于dsp數(shù)字濾波器的課程設(shè)計(jì)_第4頁
基于dsp數(shù)字濾波器的課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、摘要:數(shù)字濾波,是數(shù)字信號(hào)處理的基本核心內(nèi)容之一,占有極重要的地位。它通過對(duì)采樣數(shù)據(jù)信號(hào)進(jìn)行數(shù)學(xué)運(yùn)算處理來達(dá)到頻域?yàn)V波目的,是圖像處理、語音處理、模式識(shí)別、通信、軟件無線電、譜分析等應(yīng)用中的一個(gè)基本處理算法。與模擬濾波器相比,數(shù)字濾波器不用考慮器件的噪聲、電壓漂移、溫度漂移等問題,可以容易的實(shí)現(xiàn)不同幅度和相位頻率等特性指標(biāo),能夠處理低頻信號(hào),頻率響應(yīng)特性可做成非常接近于理想的特性,且精度可以達(dá)到很高,容易集成等,這些優(yōu)勢(shì)決定了數(shù)字濾波器的應(yīng)用很受歡迎?,F(xiàn)在通過DSP編程并結(jié)合TI公司的數(shù)字信號(hào)處理器TMs320VC5402設(shè)計(jì)了一款穩(wěn)定度高,低功耗的IIR數(shù)字濾波器系統(tǒng),并完成了軟硬調(diào)試工作。

2、 關(guān)鍵字:數(shù)字濾波器,DSP,IIR ,低功耗 ,穩(wěn)定Abstract:Digital filtering of digital signal processing, is one of the basic core contents, occupies an important position. It through sampling data signals of mathematical operation treatment to achieve the frequency domain filtering purposes, image processing, audio proc

3、essing, pattern recognition, communications, software radio, spectral analysis of applications such as a fundamental algorithms. Compared with simulation filter, digital filters need not consider device of noise, voltage drift, temperature drift, can easily achieve different amplitude and phase freq

4、uency characteristic indices, able to handle such low frequency signal, frequency response characteristics but make it very close to ideal characteristics, and the precision can reach high, easy integration etc, these advantages determines the application of digital filter is very popular. Now throu

5、gh DSP programming and combined with TI company's digital signal processor TMs320VC5402 design in a high degree of stability, low power consumption, IIR digital filter system and completed soft debugging. Keywords: Digital filters, DSP, IIR, low power consumption, stable 一、IIR數(shù)字濾波器的理論分析從IIR數(shù)字濾波器

6、的實(shí)現(xiàn)來看,有直接型、級(jí)聯(lián)型、并聯(lián)型和格型等基本網(wǎng)絡(luò)結(jié)構(gòu)。不同的結(jié)構(gòu)形式會(huì)有不同的運(yùn)算誤差,其穩(wěn)定性、運(yùn)算速度、所占用的存儲(chǔ)空間等也有所不同3。其中直接型僅需要N級(jí)延遲單元,且可作為級(jí)聯(lián)型和并聯(lián)型結(jié)構(gòu)中的基本單元,是最常用的IIR數(shù)字濾波器結(jié)構(gòu)之一。IIR數(shù)字濾波器的設(shè)計(jì)方法有兩類4,一類是借助于模擬濾波器的設(shè)計(jì)方法設(shè)計(jì)出模擬濾波器,利用沖激響應(yīng)不變法或雙線性變換法轉(zhuǎn)換成數(shù)字濾波器,然后用硬件或軟件實(shí)現(xiàn);另一類是直接在頻域或時(shí)域中進(jìn)行設(shè)計(jì),設(shè)計(jì)時(shí)需要作輔助工具。對(duì)系統(tǒng)傳遞函數(shù)為 對(duì)應(yīng)的差分方程為:的IIR數(shù)字波濾器來說,設(shè)計(jì)的任務(wù)就是尋求一種因果關(guān)系和物理上可實(shí)現(xiàn)的系統(tǒng)傳遞函數(shù)使H(z)滿足上

7、述的關(guān)系,為此可這樣使其頻率響應(yīng)能夠滿足所希望得到的頻域指標(biāo)。二、TMS320C5402的體系結(jié)構(gòu)TMS320VC5402處理器在本系列中處于先進(jìn)水平。它具有運(yùn)算速度快,內(nèi)部存儲(chǔ)空間大,外部接口性能好等優(yōu)點(diǎn)。所以我選擇了技術(shù)上比較先進(jìn),價(jià)格又較便宜的C5402作為硬件開發(fā)對(duì)象。下面結(jié)合C5402的實(shí)際情況,介紹一下該芯片的體系結(jié)構(gòu)。C5402共有144個(gè)引腳,其中有20根地址線AO-A19,16根數(shù)據(jù)線DO-D15,4個(gè)外部可屏蔽引腳INTO#-INT3#和一個(gè)不可屏蔽中斷引腳BIO#,剩下的引腳可以分成以下幾類:存儲(chǔ)器控制引腳,時(shí)鐘/晶振引腳,多通道緩沖串口引腳,主機(jī)接口通訊引腳,電源引腳,

8、初始化和復(fù)位引腳,通用輸入/輸出引腳,以及用于測(cè)試的IEEE1149. 1標(biāo)準(zhǔn)JTAG口。三、IIR數(shù)字濾波器的設(shè)計(jì)流程在設(shè)計(jì)濾波器時(shí)首先要有清晰的思路,因此流程圖的設(shè)計(jì)至關(guān)重要。本設(shè)計(jì)采用的是基于DSP的IIR數(shù)字濾波,針對(duì)其要完成的功能,對(duì)其流程進(jìn)行了初步規(guī)劃,如圖8所示:圖1 IIR數(shù)字濾波器設(shè)計(jì)流程根據(jù)設(shè)計(jì)流程,通過DSP仿真軟件編譯出適合參數(shù)要求的匯編程序。運(yùn)用匯編語言進(jìn)行程序編寫使其具有更好的實(shí)時(shí)性,此外運(yùn)用匯編語言編寫更有助于以后的設(shè)計(jì)拓展。利用TMS320C5402實(shí)現(xiàn)IIR的程序中應(yīng)注意以下幾點(diǎn):(1)數(shù)據(jù)存放要求。因?yàn)椴捎肕AC指令和循環(huán)尋址,所以輸入數(shù)據(jù)和濾波器系數(shù)的存放

9、要按照一定的要求。數(shù)據(jù)塊和系數(shù)塊都要放在雙尋址數(shù)據(jù)存儲(chǔ)區(qū)。(2)循環(huán)尋址的使用。為了使用循環(huán)尋址,除了對(duì)數(shù)據(jù)的存放有要求外,先還要設(shè)置BK為塊長(zhǎng)N。由于使用了循環(huán)尋址,數(shù)據(jù)和系數(shù)的指針在操作后以循環(huán)的方式增加1。(3)數(shù)據(jù)的初始化。輸入數(shù)據(jù)塊要初始化為全0。這樣在運(yùn)算中不會(huì)對(duì)輸入產(chǎn)生影響。四、IIR數(shù)字濾波器的軟件和硬件設(shè)計(jì)4.1基于DSP的IIR數(shù)字濾波器的軟件設(shè)計(jì)4.1.1 IIR數(shù)字濾波器的數(shù)據(jù)存儲(chǔ)器設(shè)計(jì)TMS320C54X定點(diǎn)DSP提供了單周期乘/累加指令MAC和循環(huán)尋址方式,使IIR數(shù)字濾波器每個(gè)樣值的計(jì)算可以在一個(gè)周期內(nèi)完成。IIR數(shù)字濾波器每個(gè)樣值的計(jì)算就是實(shí)現(xiàn)兩數(shù)組對(duì)應(yīng)項(xiàng)乘積的

10、累加和。在計(jì)算時(shí)有前向通道和反饋通道兩部分,因此在計(jì)算設(shè)計(jì)時(shí)要充分考慮x(n)、y(n)和h(n)系數(shù)的存放位置,并正確初始化這兩個(gè)存儲(chǔ)塊指針,這樣在計(jì)算中才能夠準(zhǔn)確的提取數(shù)據(jù),實(shí)現(xiàn)乘加運(yùn)算。圖7是IIR濾波器數(shù)據(jù)存放和系數(shù)表:圖2 IIR濾波器數(shù)據(jù)存放和系數(shù)表在程序設(shè)計(jì)中,首先將數(shù)據(jù)放入相應(yīng)的段中, X數(shù)據(jù)指針AR2指向X0,同時(shí)將H(n)的指針AR1指向B0,利用乘加指令完成前向通道的一次運(yùn)算;接著修改指針,AR2指針增1,H(n)的指針AR1減1,依次完成前向通道的乘加運(yùn)算;反饋通道應(yīng)用同樣的方法進(jìn)行乘加。在程序設(shè)計(jì)時(shí),可以采用先增益后衰減的方法,亦可采用先衰減后增益的方法。但是采用先衰

11、減后增益的方式其系統(tǒng)動(dòng)態(tài)范圍和魯棒性較好,因此在設(shè)計(jì)中采用了后一種方法。 IIR濾波器的MATLAB輔助設(shè)計(jì)具體在MATLAB中設(shè)計(jì)IIR數(shù)字濾波器的設(shè)計(jì)步驟如下:按一定規(guī)則將給出的數(shù)字濾波器的技術(shù)指標(biāo)轉(zhuǎn)換為模擬低通濾波器的技術(shù)指標(biāo);根據(jù)轉(zhuǎn)換后的技術(shù)指標(biāo)使用濾波器選擇函數(shù),確定最小階數(shù)N和固有頻率Wn;運(yùn)用最小階數(shù)N產(chǎn)生模擬低通濾波器原型,運(yùn)用固有頻率把模擬低通濾波器原型轉(zhuǎn)換成模擬低通、高通、帶通、帶阻濾波器。本設(shè)計(jì)主要應(yīng)用產(chǎn)生低通濾波器,運(yùn)用脈沖響應(yīng)不變法或雙線性不變法把模擬濾波器轉(zhuǎn)換成數(shù)字濾波器。對(duì)于脈沖響應(yīng)不變法,它是將s域內(nèi)的H(s)轉(zhuǎn)換成z域內(nèi)的H(z),但是在映射時(shí),S域內(nèi)不能一一

12、對(duì)應(yīng)到Z域內(nèi)的單位圓上,因此容易在仿真中易產(chǎn)生混疊現(xiàn)象,影響實(shí)驗(yàn)效果?;诖?,本次設(shè)計(jì)在MATLAB的仿真中優(yōu)先考慮應(yīng)用雙線性變換法。MATLAB工具箱提供了幾種模擬濾波器的原型產(chǎn)生函數(shù),Butterworth濾波器原型,Chebyshev(I型、 II型)濾波器原型、橢圓濾波器原型等不同的模擬濾波器原型,從模擬濾波器向數(shù)字濾波器轉(zhuǎn)換的雙線性變換法和脈沖響應(yīng)不變法等方法,模擬IIR數(shù)字濾波器階數(shù)選擇函數(shù)以及數(shù)字濾波器直接設(shè)計(jì)函數(shù)等等。另外,MATLAB信號(hào)處理工具箱提供了幾個(gè)直接設(shè)計(jì)IIR數(shù)字濾波器的函數(shù)。這一整套設(shè)計(jì)函數(shù)給在MATLAB中設(shè)計(jì)IIR數(shù)字濾波器帶來了極大的方便。IIR低通數(shù)字濾

13、波器根據(jù)相關(guān)技術(shù)指標(biāo)進(jìn)行matlab仿真,從而計(jì)算出相應(yīng)的傳輸函數(shù)。其仿真結(jié)果結(jié)果如圖5所示: 圖3 利用matlab仿真圖根據(jù)以上仿真結(jié)果及相應(yīng)的系數(shù)和N值,在相關(guān)技術(shù)指標(biāo)不變的情況下,我選用了ChebyshevI型雙線性變換法。4.2基于DSP的IIR數(shù)字濾波器的硬件設(shè)計(jì) 硬件設(shè)計(jì)總體方案 TI公司的2000系列和5000系列的DSP都通用型的芯片,考慮到2000系列的DSP多用于控制方面,而5000系列較2000系列具有更高的時(shí)鐘頻率、更低的價(jià)格和更加強(qiáng)大的運(yùn)算功能,所以在數(shù)字濾波器系統(tǒng)的設(shè)計(jì)中采用了TI公司的一款高性能、低功耗的定點(diǎn)DSP: TMS320VC5402。該DSP具有較快的

14、運(yùn)算速度:運(yùn)算速度最快可達(dá)532MIPS;采用了低功耗設(shè)計(jì)方式:內(nèi)核電壓為1.8V,I/O電壓為3.3 V。數(shù)字濾波系統(tǒng)的具體方案框圖如圖6所示: 圖4數(shù)字濾波器系統(tǒng)方案框圖通常的設(shè)計(jì)中會(huì)采用SV供電并行的ADC(模數(shù)轉(zhuǎn)換)和DAC(數(shù)模轉(zhuǎn)換)芯片與DSP連接,傳輸數(shù)據(jù)過程中會(huì)占用總線的時(shí)間,而且需要采用多片電平轉(zhuǎn)換器件將SV電平轉(zhuǎn)換為3.3V的邏輯電平??紤]到TMS320VC5402的片上包含兩個(gè)McBSP(多通道緩沖串行口)接口,可以將這兩個(gè)通道模仿實(shí)現(xiàn)SPI的時(shí)序,因此本設(shè)計(jì)中采用了SPI接口器件,ADC芯片采用的是TLV 1570,實(shí)現(xiàn)將需要濾波信號(hào)從模擬轉(zhuǎn)換到數(shù)字信號(hào)的實(shí)時(shí)采樣。數(shù)模

15、轉(zhuǎn)換芯片采用的是TLV 5608,實(shí)現(xiàn)濾波后的信號(hào)從數(shù)字信號(hào)恢復(fù)為所需要的模擬信號(hào)。JTGA口供DSP芯片下載程序調(diào)試。復(fù)位電路設(shè)計(jì)為了確保系統(tǒng)能夠穩(wěn)定的工作,復(fù)位電路是系統(tǒng)中必不可少的電路。電源剛加上電時(shí),TMS320VC5402芯片處于復(fù)位狀態(tài),瓜S為低使芯片復(fù)位。為使芯片初始化正確,一般應(yīng)保證爪s為低至少持續(xù)3個(gè)CLKOuT周期。但是,在上電后,系統(tǒng)的晶體振蕩器一般需要幾百毫秒的穩(wěn)定期,般為100-200ms。對(duì)于實(shí)際的DSP應(yīng)用系統(tǒng),特別是產(chǎn)品化的DSP系統(tǒng),其可靠性是一個(gè)不容忽視的問題。由于DSP系統(tǒng)的時(shí)鐘頻率較高,在運(yùn)行時(shí)極有可能發(fā)生干擾和被干擾的現(xiàn)象,嚴(yán)重時(shí)系統(tǒng)可能會(huì)出現(xiàn)死機(jī)現(xiàn)象

16、。為了克服這種情況,除了在軟件上做一些保護(hù)措施外,硬件上也必須做相應(yīng)的處理。硬件上最有效的保護(hù)措施就是采用具有監(jiān)視(Watchdog)功能的自動(dòng)復(fù)位電路。自動(dòng)復(fù)位電路除了具有上電復(fù)位功能外,還具有監(jiān)視系統(tǒng)運(yùn)行并在系統(tǒng)發(fā)生故障或死機(jī)時(shí)再次復(fù)位的功能。其基本原理就是通過電路提供一個(gè)高低電平發(fā)生變化的信號(hào),如果在規(guī)定的時(shí)間內(nèi)這個(gè)信號(hào)不發(fā)生變化,自動(dòng)復(fù)位電路就認(rèn)為系統(tǒng)運(yùn)行不正常并重新對(duì)系統(tǒng)進(jìn)行復(fù)位。根據(jù)上述原理,在本系統(tǒng)的設(shè)計(jì)中采用了ADM706TAR 芯片。該芯片具有上電復(fù)位功能,電壓監(jiān)測(cè)功能和看門狗功能。圖5 復(fù)位電路時(shí)鐘電路設(shè)計(jì)給DSP芯片提供時(shí)鐘一般有兩種方法。一種是利用DSP芯片內(nèi)部所提供的

17、晶振電路,在DSP芯片的X1和x2cuN之閫連接一晶體可啟動(dòng)內(nèi)部振蕩器, 晶體應(yīng)為基本模式,且為并聯(lián)諧振。另一種方法是將外部的時(shí)鐘源直接輸入X2CLKIN引腳,X1懸空。采用封裝好的晶體震蕩器,這種方法使用方便,因此得到了廣泛的應(yīng)用,只要在引腳4 上加電壓,引腳二接地,就可以在引腳3上得到所需的時(shí)鐘。早期的DSP芯片一般工作頻率較低,因此其工作頻率與外部提供的頻率相等或者是外部頻率的2分頻和4分頻。隨著DSP芯片速度的提高,如果仍然采用這種方式,則要求夕部頻率很高,這樣會(huì)引發(fā)高頻干擾,影響系統(tǒng)的穩(wěn)定性。因此,現(xiàn)在的DSP芯片一般提供多種工作方式。不僅具有傳統(tǒng)的分頻方式,而且采用更加靈活的可編程

18、PLL方式。1MS320Vc5402內(nèi)部具有一個(gè)可編程鎖相環(huán)(PLL),可以配置為以下兩種工作模式:PLL模式,輸入時(shí)鐘乘以一個(gè)11 之間的常數(shù):DIV模式,輸入時(shí)鐘除以2或4。軟件可編程Pu。受一個(gè)存儲(chǔ)器映射(地址為58h)的時(shí)鐘模式寄存器CLKMD控制,CLKMD用于定義Pu。時(shí)鐘模塊的配置。復(fù)位后CLKMD的值根據(jù)DSP芯片三根輸入引腳Cu(MDl一Cu(MD3確定從而確定DSP的工作時(shí)鐘。表中是DSP復(fù)位時(shí)鐘模式設(shè)定,從表中可以看出,不同的CLKMDl一CLKMD3值對(duì)應(yīng)相應(yīng)的時(shí)鐘模式。例如:設(shè)CIKMDl一CLKMD3=010,則時(shí)鐘模式是PLL*5,如果外部的晶體頻率是20MHz,

19、則復(fù)位后DSP的工作頻率為5X20=100MHz17】。由于DSP的程序需要從外部低速EPROM中調(diào)入,可以采用較低工作頻率的DSP復(fù)位時(shí)鐘模式,待程序全部調(diào)入內(nèi)部快速RAM后,再用軟件重新配置CLKMD的值,使芯片工作在較高的頻率上。圖6 時(shí)鐘電路電源設(shè)計(jì)為了降低芯片的功耗,DsP5402芯片采用低電壓供電方式,并且采用內(nèi)核電壓和IO電壓分開的方式。TMS320VC5402芯片電源分為兩種,即內(nèi)核電壓(CVdd)和IO電壓(Dvdd),其中,IO電源一般采用33V電壓,而內(nèi)核電源電壓為18V。TMS320VC5402的電流消耗主要取決于器件的激活度,CVdd消耗的電流主要取決于CPU的激活度

20、。外設(shè)消耗的電流取決于正在工作的外設(shè)及其速度。一般的,與CPU相比,外設(shè)消耗的電流比較小。時(shí)鐘電路也需要消耗一小部分的電流,而且這部分電流是恒定的,與CPU和外設(shè)的激活度無關(guān)。CVdd為器件的所有內(nèi)部邏輯提供電流,包括CPU、時(shí)鐘電路和所有外設(shè)。DVdd只為外部接口引腳提供電壓,消耗的電流取決于外部輸出的速度和數(shù)量,以及在這些輸出上的負(fù)載電容。根據(jù)設(shè)計(jì)的具體電路可一計(jì)算出33V電源所消耗的電流<60mA, 18V電源所消耗的電流<30mA,因此可以得出該系統(tǒng)在全速工作的狀態(tài)下,最大功耗為250mA。在本系統(tǒng)的設(shè)計(jì)中采用了兩片AMSlll7來提供DSP芯片的加電源和內(nèi)核電源。AMSl

21、ll7為最大輸出電流可達(dá)800mA的LDO(Low Dropout Voltage Regulator),包含18V、33V等固定電壓輸出幾種類型。由于LDO的功耗為10,而系統(tǒng)的輸入電壓為5V,為將低整個(gè)系統(tǒng)的功耗,將AMSlll7-18的輸入直接接至0 AMSlll733的輸出端,而不是直接接到5V 電源電壓上,這樣系統(tǒng)功耗將降低51roW。系統(tǒng)在工作狀態(tài)下邏輯電平在不停的快速發(fā)生變化,因此系統(tǒng)的電源也會(huì)出現(xiàn)不同程度的波動(dòng),為保證系統(tǒng)的電源完整性,在輸入5V電源、33V電源、18V電源的輸出處都增加了大容量的儲(chǔ)能電容,在所有芯片的各個(gè)電源管腳處都增加了去耦電容。由于有兩個(gè)電源,需要考慮的個(gè)

22、問題是加電次序。理想情況下,DSP芯片上的兩個(gè)電源同時(shí)加電,但是在一些場(chǎng)合很難做到。如果不能做到同時(shí)加電,應(yīng)先對(duì)DVdd加電,然后對(duì)CVdd加電。DVdd應(yīng)不超過CVdd電壓2V。圖7 電源電路 JTAG接口設(shè)計(jì)JTAG(JointTestActionGroup)是1985年制定的檢測(cè)PCB和IC芯片的一個(gè)標(biāo)準(zhǔn),1990年被修改后成為IEEE的一個(gè)標(biāo)準(zhǔn),即IEEEll4911990。通過這個(gè)標(biāo)準(zhǔn),可對(duì)具有JTAG接口的芯片的硬件電路進(jìn)行邊界掃描和故障檢測(cè)。具有JTAG接口的芯片,相關(guān)JTAG引腳的定義為:TCK為損4試時(shí)鐘輸入;TDI為測(cè)試數(shù)據(jù)輸入,數(shù)據(jù)通過TDI引腳輸入JTAG接口;TDO為

23、測(cè)試數(shù)據(jù)輸出,數(shù)據(jù)通過TDO引腳從JTAG接ISl輸出;TMS為測(cè)試模式選擇,TMS用來設(shè)置JTAG接口處于某種特定的測(cè)試模式;TRST為測(cè)試復(fù)位,輸入引腳,低電平有效。設(shè)計(jì)一個(gè)DSP系統(tǒng),一般必須考慮系統(tǒng)的軟件硬件調(diào)試,調(diào)試DSP系統(tǒng)一般離不開DSP仿真器。而仿真器通過仿真接口實(shí)現(xiàn)與DSP之間的數(shù)據(jù)交互。設(shè)計(jì)仿真接口比較簡(jiǎn)單,只要根據(jù)DSP芯片所提供的接口類型按照相應(yīng)的接口標(biāo)準(zhǔn)即可。圖45為JTAG仿真接口定義。圖8 JTAG電路內(nèi)部存儲(chǔ)單元及外部存儲(chǔ)擴(kuò)展內(nèi)部存器TMS320C54X內(nèi)一般包括192K字的可尋址存儲(chǔ)器空間:64K字程序空間, 64K字?jǐn)?shù)據(jù)空問和64K字的I0空間。片內(nèi)存儲(chǔ)器的

24、結(jié)構(gòu)和容量根據(jù)芯片的型號(hào)有所區(qū)別,但都包含隨機(jī)存取存儲(chǔ)器(RAM)和只讀存儲(chǔ)器(ROM)。其中RAM又可以分為兩種類型:?jiǎn)卧L問RAM(SARAM)和雙訪問RAM(DARAM)。當(dāng)處理器發(fā)出的地址處在片內(nèi)存儲(chǔ)器的范圍內(nèi)時(shí),就對(duì)片內(nèi)的RAM或數(shù)據(jù)ROM尋址。當(dāng)數(shù)據(jù)存儲(chǔ)器地址產(chǎn)生器發(fā)出地址不在片內(nèi)存儲(chǔ)器的范圍內(nèi),處理器就會(huì)自動(dòng)對(duì)外部數(shù)據(jù)存儲(chǔ)器尋址。圖9 存儲(chǔ)器及擴(kuò)展電路外部總線及外部存儲(chǔ)器接口通常一個(gè)DSP系統(tǒng)除了DSP芯片外,還需要外部的存儲(chǔ)器。外部存儲(chǔ)器一般有兩種,一種是存儲(chǔ)程序和固定數(shù)據(jù)的EPROMPROM,一種是可讀可寫的快速RAM。目前市場(chǎng)上的EPROM工作電壓一般為5V,與33VDSP芯

25、片相接時(shí)需要考慮電平轉(zhuǎn)換,麗且體積都較大。FLASH存儲(chǔ)器與EPROM相比,具有更高的性能價(jià)格比,而且體積小、功耗低、可電擦寫,使用比較方便,33V Hash 可直接與DSP相接。因此采用Flash存儲(chǔ)器存儲(chǔ)程序和固定數(shù)據(jù)是一種比較好的選擇。TMS320VC5402通過外部總線與外部存儲(chǔ)器以及IO設(shè)備相連。外部總線接口由數(shù)據(jù)總線、地址總線以及一組控制信號(hào)組成,可以用來尋址片外存儲(chǔ)器和I0口【20】。主要外部接口信號(hào)見表41。圖10接口信號(hào)參數(shù)表為擴(kuò)展存儲(chǔ)器引腳信號(hào)定義外部接口總線是一組并行接口。它有兩個(gè)互相排斥的選通信號(hào):MSTRB#和IOSTRB#。前者用于訪問外部程序或者數(shù)據(jù)存儲(chǔ)器,后者用

26、于訪問IO設(shè)備。讀寫信號(hào)R/W#撐則控制數(shù)據(jù)傳送方向。外部數(shù)據(jù)準(zhǔn)備輸入信號(hào)(REDAY)與片內(nèi)軟件可編程等待狀態(tài)發(fā)生器一道, 可以使處理器與各種速度的存儲(chǔ)器以及I0設(shè)備接口。當(dāng)與慢速器件通信時(shí),CPU處于等待狀態(tài),直到慢速器件完成了它的操作并發(fā)出READY信號(hào)才繼續(xù)運(yùn)行。當(dāng)外部設(shè)備需要尋址DSP的終部程序、數(shù)據(jù)和帕存儲(chǔ)空間時(shí),可以利用HOLD#和 HOLDA#信號(hào),達(dá)到控制DSP外部資源的目的。CPU尋址片內(nèi)存儲(chǔ)器時(shí),外部數(shù)據(jù)總線鬣高阻狀態(tài),而地址總線以及存儲(chǔ)器選擇信號(hào)均保持先前的狀態(tài),此外,MSTRB#、IOSTRB#、RW#、IAQ#和MSC#信號(hào)均保持在無效狀態(tài)。4.2.8 AD轉(zhuǎn)換接口

27、電路設(shè)計(jì)在AD轉(zhuǎn)換器中,因?yàn)檩斎氲哪M信號(hào)在時(shí)間上是連續(xù)量,而輸出的數(shù)字信號(hào)代碼是離散量,所以進(jìn)行轉(zhuǎn)換時(shí)必須在一系列選定的瞬間(亦即時(shí)間坐標(biāo)軸上的一些規(guī)定點(diǎn)上)對(duì)輸入的模擬信號(hào)取樣,然后再把這些取樣值轉(zhuǎn)換為輸出的數(shù)字量。因此,一般的AD轉(zhuǎn)換過程是通過取樣、保持、量化和編碼這四個(gè)步驟完成的。取樣定理:在滿足取樣定理的條件下,可以用一個(gè)低通濾波器將信號(hào)vs還原為n,這個(gè)低通濾波器的電壓傳輸系數(shù)pt,月在低于。的范圍內(nèi)應(yīng)保持不變,而在,s_缸。以前應(yīng)迅速下降為零。因此,取樣定理規(guī)定了AD 轉(zhuǎn)換的頻率下限。因?yàn)槊看伟讶与妷恨D(zhuǎn)換為相應(yīng)的數(shù)字量都需要一定的時(shí)間,所以在每次取樣以后,必須把取樣電壓保持一段

28、時(shí)間??梢?,進(jìn)行AD轉(zhuǎn)換時(shí)所用的輸入電壓,實(shí)際上是每次取樣結(jié)束時(shí)的n值。量化和編碼:我們知道,數(shù)字信號(hào)不僅在時(shí)間上是離散的,而且在數(shù)值上的變化也不是連續(xù)的。這就是說,任何一個(gè)數(shù)字量的大小,都是以某個(gè)最小數(shù)量單位的整倍數(shù)來表示的。因此,在用數(shù)字量表示取樣電壓時(shí),也必須把它化成這個(gè)最小數(shù)量單位的整倍數(shù),這個(gè)轉(zhuǎn)化過程就叫做量化。所規(guī)定的最小數(shù)量單位叫做量化單位,用表示。顯然,數(shù)字信號(hào)最低有效位中的1表示的數(shù)量大小,就等于。把量化的數(shù)值用二進(jìn)制代碼表示,稱為編碼。這個(gè)二進(jìn)制代碼就是AD轉(zhuǎn)換的輸出信號(hào)。單片集成AD轉(zhuǎn)換器的轉(zhuǎn)換精度是用分辨率和轉(zhuǎn)換誤差來描述的。分辨率:它說明AD轉(zhuǎn)換器對(duì)輸入信號(hào)的分辨能力

29、,AD轉(zhuǎn)換器的分辨率以輸出二進(jìn)制(或十進(jìn)制)數(shù)的位數(shù)表示。從理論上講,n位輸出的AD轉(zhuǎn)換器能區(qū)分20個(gè)不同等級(jí)的輸入模擬電壓,能區(qū)分輸入電壓的最小值為滿量程輸入的12“。在最大輸入電壓一定時(shí),輸出位數(shù)愈多,量化單位愈小,分辨率愈高。例如AD 轉(zhuǎn)換器輸出為10位二進(jìn)制數(shù),輸入信號(hào)最大值為3V,那么這個(gè)轉(zhuǎn)換器應(yīng)能區(qū)分輸入信號(hào)的最小電壓為3mV。轉(zhuǎn)換誤差:表示AD轉(zhuǎn)換器實(shí)際輸出的數(shù)字量和理論上的輸出數(shù)字量之間的差別。常用最低有效位的倍數(shù)表示。例如給出相對(duì)誤差±1LSB,這就表明實(shí)際輸出的數(shù)字量和理論上應(yīng)得到的輸出數(shù)字量之間的誤差小于最低位的一個(gè)字。根據(jù)模數(shù)轉(zhuǎn)換器件的特點(diǎn),在本數(shù)字濾波器系統(tǒng)

30、中選擇了Tl公司的TLVl570芯片,它是一款8通道10位27到55V低電壓模數(shù)轉(zhuǎn)換芯片。由于DSP的Io電壓為33V,因此選擇33V電壓供給TLVl570器件可以省略電平轉(zhuǎn)換器件。TLVl570在3V電壓下的采樣頻率為625KSPS,因此對(duì)于輸入信號(hào)來說最高頻率不能超過300K。系統(tǒng)的分辨率為3mV,最大誤差±1LSB。圖47 為TLVl570的功能時(shí)序圖。從功能時(shí)序圖可以看出該器件包含一個(gè)8通道輸入多路復(fù)用器,一個(gè)高速的10位ADC,一個(gè)內(nèi)部的電壓參考源和一個(gè)高速的串行接口。TLVl570的高速串行接口包含五根信號(hào)線:SCLK串行時(shí)鐘輸入、SDIN串行數(shù)據(jù)輸入、SDOUT串行數(shù)據(jù)

31、輸出、Fs幀同步信號(hào)、CS#片選信號(hào)。其中每個(gè)取樣和轉(zhuǎn)換過程需要16個(gè)系統(tǒng)工作時(shí)鐘,因此只有當(dāng)幾()一(1,16)九。時(shí),系統(tǒng)才能正常的工作。圖11A/D轉(zhuǎn)換電路 DA轉(zhuǎn)換接口電路設(shè)計(jì)數(shù)字量是用代碼按數(shù)位組合起來表示的,對(duì)于有權(quán)碼,每位代碼都有一定的權(quán)。為了將數(shù)字量轉(zhuǎn)換成模擬量,必須將每1位的代碼按其權(quán)的大小轉(zhuǎn)換成相應(yīng)的模擬量,然后將這些模擬量相加,即可得到與數(shù)字量成正比的總模擬量,從而實(shí)現(xiàn)了數(shù)字一模擬轉(zhuǎn)換。這就是構(gòu)成DA轉(zhuǎn)換器的基本思路。DA轉(zhuǎn)換器的轉(zhuǎn)換精度通常用分辨率和轉(zhuǎn)換誤差來描述。分辨率,DA轉(zhuǎn)換器模擬輸出電壓可能被分離的等級(jí)數(shù)。輸入數(shù)字量位數(shù)越多,輸出電壓可分離的等級(jí)越多,即分辨率越

32、高。在實(shí)際應(yīng)用中,往往用輸入數(shù)字量的位數(shù)表示DA轉(zhuǎn)換器的分辨率。此外,DA轉(zhuǎn)換器也可以用能分辨的最小輸出電壓(此時(shí)輸入的數(shù)字代碼只有最低有效位為l,其余各位都是0)與最大輸出電壓(此時(shí)輸入的數(shù)字代碼各有效位全為1)之比給出。N位DA轉(zhuǎn)換器的分辨率可表示為1(281)。它表示DA轉(zhuǎn)換器在理論上可以達(dá)到的精度。轉(zhuǎn)換誤差,轉(zhuǎn)換誤差的來源很多,轉(zhuǎn)換器中各元件參數(shù)值的誤差,基準(zhǔn)電源不夠穩(wěn)定和運(yùn)算放大器的零漂的影響等。DA轉(zhuǎn)換器的絕對(duì)誤差(或絕對(duì)精度)是指輸入端加入最大數(shù)字量時(shí),DA轉(zhuǎn)換器的理論值與實(shí)際值之差。該誤差值應(yīng)低于LSB2。由于模數(shù)轉(zhuǎn)換選擇了10位器件,為了簡(jiǎn)化程序代碼,減少DSP的運(yùn)算工作量,

33、并根據(jù)數(shù)模轉(zhuǎn)換器件的特點(diǎn),在本數(shù)字濾波器系統(tǒng)中選擇了Tl公司的TL,V5608芯片,它是一款8通道10位27到55V低電壓數(shù)模轉(zhuǎn)換芯片。由于DSP的10電壓為33V,因此選擇33V電壓供給聊1570器件可以省略電平轉(zhuǎn)換器件。圖12D/A轉(zhuǎn)換電路DSP系統(tǒng)的硬件設(shè)計(jì)之后,軟件設(shè)計(jì)就成為系統(tǒng)設(shè)計(jì)的關(guān)鍵,一個(gè)DSP系統(tǒng)在很大程度上取決于軟件設(shè)計(jì)是否合理與可靠。在DSP進(jìn)行數(shù)字濾波運(yùn)算前必須進(jìn)行一些初始化程序。在本系統(tǒng)中初始化程序主要包括:DSP芯片的初始化、矢量表初始和兩個(gè)串行端口的初始化【24】。DSP5402共有三個(gè)控制和狀態(tài)寄存器,對(duì)CPU的控制是通過CPU狀態(tài)和控制寄存器來完成的。分別為狀態(tài)

34、寄存器0(STO)、狀態(tài)寄存器1(STl)和處理器模式狀態(tài)寄存器(PMST)。DSP不同條件和模式下的狀態(tài)都包含ST0和STl: PMST包含存儲(chǔ)器設(shè)置狀態(tài)和控制信息。由于這些寄存器是存儲(chǔ)器映像,所以可以像對(duì)數(shù)據(jù)存儲(chǔ)器操作那樣對(duì)它們進(jìn)行讀出和寫入。在調(diào)用子程序或中斷服務(wù)子程序時(shí),可以將它們保存下來,返回時(shí)再恢復(fù)。DSP芯片的初始化是設(shè)定DSP芯片工作狀態(tài)的重要步驟,只有正確進(jìn)行DSP 芯片的初始化,才能保證芯片的正確運(yùn)行。在調(diào)試軟件的過程中,如果發(fā)現(xiàn)程序運(yùn)行不正確,應(yīng)首先查看芯片各寄存器的初始化狀態(tài)設(shè)置是否正確,然后再調(diào)試用戶程序,否則就會(huì)降低調(diào)試效率。1MS320Vc5402芯片加電復(fù)位之后

35、處于預(yù)先設(shè)定的狀態(tài),無論是狀態(tài)寄存器還是控制寄存器都有一個(gè)確定的數(shù)值。對(duì)寄存器進(jìn)行初始化主要包括:狀態(tài)寄存器ST0、狀態(tài)寄存器STl、處理器模式控制寄存器PMST、軟件等待狀態(tài)寄存器SWWSR、組交換控制寄存器BSCR和時(shí)鐘模式寄存器CLKMD25。中斷矢量表是每個(gè)DSP系統(tǒng)必須用至4的,對(duì)中斷矢量表進(jìn)行初始化是DSP 初始化的一個(gè)重要的組成部分,正確設(shè)置中斷矢量包括:1)根據(jù)DSP芯片對(duì)各中斷矢量的設(shè)置位置編寫一個(gè)子程序。在TMS320VC5402中,要求每個(gè)中斷矢量占4個(gè)字,如果跳轉(zhuǎn)指令不夠4個(gè)字,可用NOP指令填充,每個(gè)NOP占一個(gè)字。2)設(shè)置PMST控制寄存器。該寄存器的高9位是IPT

36、R,用于設(shè)置矢量表的起始地址。3)連接時(shí)將矢量表重定位到IPTR指定的地址。TMS320VC5402芯片包含兩個(gè)多通道緩沖串行口,在本系統(tǒng)的設(shè)計(jì)中兩個(gè)串口分別接DA和AD芯片。McBSP通過一系列存儲(chǔ)器映射控制寄存器來進(jìn)行配置和操作。為了是MeBSP接口工作在所希望的模式下,必須在初始化時(shí)多相關(guān)寄存器進(jìn)行正確的配置。五、基于DSP的IIR程序設(shè)計(jì)及軟件調(diào)試5.1 圖54是利用DSP實(shí)現(xiàn)數(shù)字濾波的流程圖,說明如下:利用DSP實(shí)現(xiàn)FIR 數(shù)字濾波的子程序設(shè)計(jì)思路如下:1、查詢SPCRll寄存器的第二位,當(dāng)為1時(shí)說明read ready,將DRRll的值讀入AR3所指向的地址,該值為最新的采樣值。將

37、最新的采樣值減去200h,然后AR3的值減一。3、執(zhí)行MAC指令。4、將累加器的值送給變量Y。并將Y加上200h。5、查詢SPCR20寄存器的第二位, 當(dāng)為1時(shí)說明write ready,將Y值附給DXRl0,該值為濾波器輸出值。6、循環(huán)執(zhí)行上面步驟。圖13為DSP實(shí)現(xiàn)數(shù)字濾波器流程圖本設(shè)計(jì)的程序工程中包含4個(gè)文件:filterc,initasm,vectorsasm,flitercmd。四個(gè)文件實(shí)現(xiàn)不同的功能。filterc文件為C語言編寫的源文件,在本設(shè)計(jì)中主要功能是將各個(gè)子程序結(jié)合起來,便于閱讀。initasm文件為匯編語言編寫的源文件,是本設(shè)計(jì)中的主要文件,包含了各個(gè)初始化程序的具體操

38、作和實(shí)現(xiàn)數(shù)字濾波的具體代碼。vectorsasm文件為中斷矢量表初始化子程序文件,中斷矢量表是每個(gè)DSP系統(tǒng)必須用到的,對(duì)中斷矢量表進(jìn)行初始化是DSP初始化的一個(gè)重要的部分。filtertrod為鏈接器命令文件【17-18】。5.2 在IIR濾波器結(jié)構(gòu)中,直接H型結(jié)構(gòu)是最常用的濾波器結(jié)構(gòu),因?yàn)檫@種結(jié)構(gòu)的二階形式可作為級(jí)連型和并聯(lián)型結(jié)構(gòu)中的基本節(jié)。圖14二階直接II型IIR濾波器二階直接II型結(jié)構(gòu)濾波器的差分方程為: d(n)=x(n)+ald(n一1)+a2d(n-2)y(n)=bod(n)+bld(n一1)+b2d(n-2、式中,d(n),d(n一1),d(n-2)對(duì)應(yīng)于圖中具有不同延遲的中

39、間節(jié)點(diǎn)值。在利用1MS320vc5402實(shí)現(xiàn)IIR程序中要注意的事項(xiàng)同實(shí)現(xiàn)FIR的基本相同。5.3 IIR數(shù)字濾波的軟件調(diào)試圖 15利用DSP的IIR數(shù)字濾波效果圖(1)圖 16利用DSP的IIR數(shù)字濾波效果圖(2)在效果圖中,上面波形為DSP實(shí)驗(yàn)箱產(chǎn)生的濾波前的效果圖,下面波形為進(jìn)行IIR濾波后的效果圖。從兩圖的比較可以看出,所設(shè)計(jì)的IIR濾波器收到了較好的效果,完成了設(shè)計(jì)要求。在編寫及調(diào)試的過程中主要遇到以下問題:(1)在編寫程序的過程中要對(duì)所涉及的存儲(chǔ)單元進(jìn)行初始化,這樣在數(shù)據(jù)或是代碼段進(jìn)行匯編時(shí)才不會(huì)出現(xiàn)問題。(2)編寫程序需要對(duì)數(shù)據(jù)段、代碼段、堆棧段進(jìn)行設(shè)置。要編寫相應(yīng)的.cmd(鏈

40、接命令文件)文檔對(duì)其進(jìn)行合理化的分配空間。(3)在編寫程序時(shí)一定要編寫相應(yīng)的中斷向量表文件,這樣在匯編時(shí)才不會(huì)出錯(cuò)。六 結(jié)束語 通過對(duì)本課題的研究,自己從中取得了一些成績(jī),理論水平也得到了一定的提高,同時(shí)也暴露了一些問題:首先,對(duì)一個(gè)課題必須要閱讀大量的文獻(xiàn)和書籍來獲得一定的感性認(rèn)識(shí),然后才能有自己的想法,這是一條必經(jīng)之路。其次,理論基礎(chǔ)知識(shí)很重要,論文涉及了很多的算法,會(huì)用到很多基礎(chǔ)知識(shí),如果用的時(shí)候再去學(xué)會(huì)浪費(fèi)時(shí)間,因此要在平時(shí)注意搜集相關(guān)的資料,多學(xué)一些有用實(shí)用的技術(shù),這樣在以后的學(xué)習(xí)和工作中才能夠做到游刃有余。最后,要有信心,遇到困難要向別人請(qǐng)教,這樣可以大大加快研究進(jìn)程。以上是我做論

41、文的一些心得體會(huì),這些對(duì)我以后的學(xué)習(xí)會(huì)有很大的幫助。由于本人的時(shí)間和能力有限,本次的開發(fā)系統(tǒng)還存在一些不足之處,整個(gè)系統(tǒng)還需要進(jìn)一步完善。文中也難免有不足之處,懇請(qǐng)老師批評(píng)指正。同時(shí),對(duì)評(píng)審設(shè)計(jì)的老師表示衷心的感謝!參考文獻(xiàn)1潘松,黃繼業(yè),王國(guó)棟. 現(xiàn)代DSP技術(shù)M. 西安電子科技大學(xué)出版社. 20045.2王潞鋼,陳林康,曾岳南,許賢昶. DSP C2000程序員高手進(jìn)階M. 機(jī)械工業(yè)出版社. 2004.10.3趙紅怡. DSP技術(shù)與應(yīng)用實(shí)例M. 電子工業(yè)出版社. 2003.6.4胡慶鐘,李小剛,吳鈺淳. TMS320C55X DSP原理、應(yīng)用和設(shè)計(jì)M. 機(jī)械工業(yè)出版社. 2005.10.5

42、丁玉美,高西全. 數(shù)字信號(hào)處理M. 西安電子科技大學(xué)出版社. 2006.7.6劉順蘭,吳杰,高西全. 數(shù)字信號(hào)處理M. 西安電子科技大學(xué)出版社. 2003.8.7樓順天,劉小東,李博菡. 基于MATLAB 7.X的系統(tǒng)分析與設(shè)計(jì)信號(hào)處理M. 西安電子科技大學(xué)出版社. 2005.5.8清源科技. TMS320C54X DSP應(yīng)用程序設(shè)計(jì)教程M. 機(jī)械工業(yè)出版社. 2004.1.9陳學(xué)平. Protel M2004. 人民郵電出版社. 2005.9.10戴明楨,周建江TMS320C54XDSP結(jié)構(gòu)、原理及應(yīng)用M北京:北京航空航天大學(xué)出版社,2002年3月附實(shí)驗(yàn)程序1、IIR數(shù)字濾波器源文件:.title "iir.asm" .mmregs .def _start .global _mainDX .usect "DX",3DY .usect "DY&

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論