簡單數字信號處理系統的實現-DSP設計報告_第1頁
簡單數字信號處理系統的實現-DSP設計報告_第2頁
簡單數字信號處理系統的實現-DSP設計報告_第3頁
簡單數字信號處理系統的實現-DSP設計報告_第4頁
簡單數字信號處理系統的實現-DSP設計報告_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PAGE1PAGE9目錄1、課程設計的題目與設計要求 21.1課程設計的題目 21.2課程設計的設計要求 22、設計的目的和意義 23、設計任務 24、設計的原理分析 24.1設計總體分析 24.2關鍵技術數字濾波器概述 24.3FIR和IIR數字濾波器的比較 34.4FIR濾波器設計方法 45、設計的流程圖 45.1總體設計方案流程圖 45.2MATLAB程序流程圖 55.3CCS匯編程序流程圖 56、設計的流程圖 66.1MATLAB程序及數據的生成 66.2匯編程序的實現 67、設計的效果圖 67.1MATLAB生成結果 67.2示波器的顯示效果 78*、正弦信號發生器的實現 88.1設計的要求 88.2查表法實現正弦波 89、小結與體會 810、參考文獻 8附錄1 9附錄2 12

簡單數字信號處理系統的實現1、課程設計的題目與設計要求1.1課程設計的題目課程設計的題目:簡單數字信號處理系統的實現1.2課程設計的設計要求利用C5402DSP實驗箱設計一個簡單數字信號處理系統,指標為:輸入信號AD采樣頻率為50KHZ;設計一個低通濾波器(FIR),要求截止頻率為4KHZ,過渡帶2KHZ,阻帶衰減大于40dB;將濾波后的信號通過DA輸出。2、設計的目的和意義本課程設計是學完《DSP芯片及應用技術》課程之后,讓學生綜合運用DSP軟硬件知識,進行實際DSP系統的硬件設計,連接和軟件編程調試,以加深對DSP基礎知識的理解,提高綜合應用知識的能力,分析解決問題的能力和DSP技術實踐技能,初步培養開發實用DSP系統的能力。3、設計任務課程設計的任務:(1)完成濾波器的選型和濾波器的設計;(2)使用C5402DSP實驗箱連接電路,編程實現設計的濾波器;(3)完成濾波器的性能測試;(4)完成課程設計說明書。4、設計的原理分析4.1設計總體分析圖1所示為一個典型的DSP系統。圖中的輸入信號可以有各種各樣的形式。例如,它可以是麥克風輸出的語音信號或是電話線來的已調數據信號,可以是編碼后在數字鏈路上傳輸或存儲在計算機里的攝像機圖像信號等。圖1典型的DSP系統輸入信號首先進行帶限濾波和抽樣,然后進行A/D(AnalogtoDigital)變換將信號變換成數字比特流。根據奈奎斯特抽樣定理,為保證信息不丟失,抽樣頻率至少必須是輸入帶限信號最高頻率的2倍。DSP芯片的輸入是A/D變換后得到的以抽樣形式表示的數字信號,DSP芯片對輸入的數字信號進行某種形式的處理,如進行一系列的乘累加操作(MAC)。數字處理是DSP的關鍵,這與其他系統(如電話交換系統)有很大的不同,在交換系統中,處理器的作用是進行路由選擇,它并不對輸入數據進行修改。因此雖然兩者都是實時系統,但兩者的實時約束條件卻有很大的不同。最后,經過處理后的數字樣值再經D/A(DigitaltoAnalog)變換轉換為模擬樣值,之后再進行內插和平滑濾波就可得到連續的模擬波形。4.2關鍵技術數字濾波器概述所謂數字濾波器,是指輸入輸出均為數字信號,通過一定的運算關系改變輸入信號中所含的頻率成分的相對比例,或者濾除某些頻率成分的器件。在時域內有如下關系:數字濾波器總體可以分為兩大類,一類稱為經典濾波器,輸入信號中的有用成分和希望濾除的成分占用不同的頻帶,通過適當的選頻濾波器可實現濾波;另一類稱為現代濾波器,如維納濾波器、卡爾曼濾波器等,其輸入信號中有用信號和希望濾除的乘法頻帶交疊。對于經典濾波器,從頻域上還可以分為低通、高通、帶通、帶阻濾波器。從時域特性上來看,數字濾波器還可以分為有限沖激響應數字濾波器(FIR)和無限沖激響應數字濾波器(IIR)。對于有限沖激響應數字濾波器(FIR)其輸出y(n)只取決于有限個過去和現在的輸入x(n),x(n-1)...x(n-m);對于無限沖激響應數字濾波器(IIR),它的輸出不僅取決于過去和現在的輸入,還跟過去的輸出有關。FIR和IIR濾波器不論是在性能還是在設計方法上都有著很大的區別,FIR濾波器可以根據給定的頻率特性直接設和IIR,其設計步驟如下:(1)確定指標:在設計一個濾波器前必須有一些指標,這些指標需要根據應用確定。(2)模型逼近:一旦確定了指標就可以利用一些基本原理和關系式提出一個濾波器模型來逼近給定的指標體系。這是濾波器設計所要研究的主要問題。(3)實現:上面兩步結果得到的濾波器通常是以差分方程系統函數或脈沖響應來描述的。根據這個描述用硬件和計算機軟件來實現。在數字濾波器中,FIR濾波器具有如下幾個優點:(1)可以在幅度特性隨意設計的同時保證精確嚴格的線性相位。(2)由于FIR濾波器的單位脈沖h(n)是有限長序列,因此FIR濾波器沒有不穩定的問題。(3)由于FIR濾波器一般為非遞歸結構,因此在有限精度運算下,不會出現遞歸型結構中的極限震蕩等不穩定現象,誤差較小。(4)FIR濾波器可采用FFT算法實現,從而提高運算效率。4.3FIR和IIR數字濾波器的比較在很多實際應用中如語音和音頻信號處理中,數字濾波器來實現選頻功能。因此,指標的形式應為頻域中的幅度和相位響應。在通帶中,通常希望具有線性相位響應。在FIR濾波器中可以得到精確的線性相位。在IIR濾波器中通帶的相位是不可能得到的,因此主要考慮幅度指標。IIR數字濾波器的設計和模擬濾波器的設計有著緊密的聯系,通常要設計出適當地模擬濾波器,再通過一定的頻帶變換把它轉換成為所需要的數字IIR濾波器。此外,任何數字信號處理系統中也還不可避免地用到模擬濾波器,比如A/D變換器前的抗混疊濾波器及D/A轉換后的平緩濾波器,因此模擬濾波器設計也是數字信號處理中應當掌握的技術。從性能上來說,IIR數字濾波器傳遞函數包括零點和極點兩組可調因素,對極點的唯一限制是在單位圓內。因此可用較低的階數獲得高的選擇性,所用的存儲單元少、計算量小、效率高。但是這個高效率是以相位的非線性為代價的。選擇性越好,則相位非線性越嚴重。FIR濾波器傳遞函數的極點是固定在原點,是不能動的,它只能靠改變零點位置來改變它的性能,所以要達到高的選擇性,必須用高的階數,對于同樣的濾波器設計指標,FIR濾波器所要求的階數可能比IIR濾波器高5^-10倍,結果成本高信號延時也較大,如果按線性相位要求來說,則IIR濾波器就必須加全通網絡進行相位校正,同樣大大增加了濾波器的階數和復雜性。而FIR濾波器卻可以得到嚴格的線性相位。從結構上看,IIR濾波器必須采用遞歸結構來配置極點,并保證極點位置在單位圓內。由于有限字長效應,運算過程中將對系數進行舍入處理,引起極點的偏移,這種情況有時會造成穩定性問題,甚至造成寄生振蕩。相反,FIR濾波器只要采用非遞歸結構,不論在理論上還是實際的有限精度運算中都不存在穩定性問題,因此造成的頻率特性誤差也較小。此外FIR濾波器可以采用快速傅立葉變換算法,在相同的階數條件下運算速度可以快的多。從設計工具看,IIR濾波器可以借助模擬濾波器的成果,因此一般都有有效的封閉形式的設計公式可供參考,計算工作量比較小,而且對計算工具的要求不高;FIR濾波器一般沒有封閉形式的設計公式。窗函數法設計FIR濾波器也僅給出了窗函數的計算公式,但是在計算通帶阻帶衰減時無顯示表達式。一般FIR濾波器的設計只有計算程序可循,因此它對計算工具要求較高。在設計和實現上FIR濾波器具有如下優越性:(1)相位響應可為嚴格的線性,因此它不存在延遲失真,只有固定的時間延遲。(2)由于不存在穩定性問題,所以設計相對簡單。(3)只包含實數算法,不涉及復數算法,不需要遞推運算,長度為M的濾波器(階數為M-1),它的計算值約為M/2。另外,也應看到,IIR濾波器雖然設計簡單,但主要是用于設計具有分段常數特性的濾波器,如低通、高通、帶通和帶阻等,往往脫離不了模擬濾波器的格局。而FIR濾波器則要靈活的多,尤其是他易于適應某些特殊應用,如構成數字微分器或希爾伯特變換器等,因而有更大的適應性和廣闊的應用領域。從上面的簡單比較可以看到IIR與FIR濾波器各有所長,所以在實際應用時應該從多方面考慮來加以選擇。從使用要求來看,在對相位要求不敏感的場合,如語言通信等選用IIR較為合適,這樣可以充分發揮其經濟高效的特點;對于圖像信號處理,數據傳輸等以波形攜帶信息的系統,則對線性相位要求較高。如果有條件,采用FIR濾波器較好。當然在實際應用中可能還要考慮更多方面的因素。4.4FIR濾波器設計方法FIR濾波器的差分方程:對式子進行Z變換,可得FIR濾波器的傳遞函數:FIR濾波器的結構:FIR數字濾波器的設計方法主要有窗函數法和頻率抽樣設計法,其中窗函數法是基本而有效的設計方法。其濾波結構圖如圖2所示。圖2濾波結構圖數字濾波器中,FIR具有如下幾個主要特點:(1)FIR濾波器無反饋回路,是一種無條件穩定系統;(2)FIR濾波器可以設計成具有線性相位特性。5、設計的流程圖5.1總體設計方案流程圖圖3總體設計方案流程圖5.2MATLAB程序流程圖圖4MATLAB程序流程圖5.3CCS匯編程序流程圖圖5匯編程序流程圖6、設計的流程圖6.1MATLAB程序及數據的生成MATLAB程序(1)根據讀取的數據,輸入MATLAB程序如下,(得到結果圖如圖6):f=[43.76,237.87,461.28,611.34,847.14,1281.30,1441.30,1632.74,1830.23,2093.66,2290.57,2426.79,2625.53,2854.32,3089.75,3238.17,3452.41,3618.89,3841.51,4068.83,4285.22,4475.37,4662.19,4819.76,5031.27,5364.79,5557.61,5922.10,6367.96,7029.61,7750.79,8117.45,8696.63,9124.52,9668.77,25000.48]f=f/1000H=[11.75,10.79,10.88,9.60,9.52,9.44,9.36,9.28,9.21,9.04,8.80,8.64,8.32,7.92,7.36,6.96,6.24,5.76,5.04,4.24,3.52,2.96,2.40,2.00,1.44,0.88,0.68,0.36,0.14,0.074,0.062,0.054,0.050,0.042,0.038,0.020]H=H/9.68H=20*log10(H)plot(f,H)xlabel('頻率/khz')ylabel('幅度/db')(2)根據以下程序,(得到結果圖如圖7):Window=chebwin(35,30);b=fir1(34,0.16,'low',Window);freqz(b,1,512)6.2匯編程序的實現編輯程序:(1)試驗準備 仿真器的仿真頭連接試驗箱的JTAG口,USB接頭與計算機連接,打開試驗箱電源,啟動計算機,啟動CodeComposerStudio2.2。創建工程:創建新的工程文件:選擇菜單“Projects”的“New…”項。建立新工程文件exam8.pjt。展開主窗口左側工程管理窗口中“Projects”下新建立的“exam8.pjt”,其中各項均為空。新建編輯源程序文件:選擇菜單“File”的“New…”的“SourceFile…”項,新建源程序文件,保存源程序文件為exam8.asm。編輯源程序文件內容。同樣,編輯命令鏈接文件exam.cmd。編輯中斷向量表文件vectors.asm。(詳見附錄1)(3)編譯鏈接產生可執行文件exam8.out,下載到DSP中執行。(4)用導線鏈接3KHZ正弦信號到AD輸入端,用示波器探頭連接VOUT端,觀察輸出波形。7、設計的效果圖7.1MATLAB生成結果圖6圖77.2示波器的顯示效果當輸入信號AD采樣頻率為50KHZ;頻率為0~4KHZ時,滿足過渡帶2KHZ,阻帶衰減大于40dB;將濾波后的信號通過DA輸出后效果圖如圖8所示。當不滿足時,輸出波形失真。圖8示波器的顯示效果8*、正弦信號發生器的實現8.1設計的要求利用C5402DSP實現一個正弦信號發生器,設計指標為:要求可以產生正弦波方波信號,要求信號的頻率100~1.5kHz范圍內可調,并且信號幅度可調,信號通過DA輸出。8.2查表法實現正弦波查表發是一種更為簡便的產生正弦波的方波。它只需將預先算好的正弦波波形數據存儲在正弦表里,將表中數據一次輸出就可產生正弦波。這種方法正弦波的一個周期的點數是不定的,不易調整;而產生的正弦波的頻率由數據輸出的頻率決定,可以通過定時器來調整。正弦表的產生DSP初始化程序正弦波頻率調整正弦波幅度調整中斷向量表文件連接命令文件(上述都詳見附錄2)9、小結與體會一周的課程設計結束了,這一周對于我來說收獲真的不少。運用DSP芯片進行簡單的數字信號處理,這個我一看就被吸引了的課題,讓我下定決心一定要好好學好做好這一次的課程設計。課程設計周開始,老師給了我們任務,按照書上的每一個步驟開始一點一滴做起。一開始進度有點慢,因為在沒有復習的情況下自己了解的東西真的太少。于是我開始有重點的學,在腦中形成對于DSP的整個體系,逐個學習擊破。我還利用課后的時間趕進度,發現當有目標的時候學東西真的好快。原本什么都不會,經過一個星期的課程設計,我居然可以很清晰地知道各個的流程及原理,并會自己編改一些效果出來,雖然還有一些細節需要改進。看著自己的編寫成果,想想自己每天熬夜看書學習,想想在設計過程中每一次面對困難又解決的快樂……不管會是怎么樣的結果,至少自己真正努力過,就不會有遺憾,一周,我一直抱著這樣的信念堅持到最后一刻。一周的課程設計結束了,回想起來,自己的收獲真的不少,努力總會有收獲,這是永遠都不變的道理。想想這一次的課程設計,自己也會多一點今后學習上的經驗和方法。設計結束了,我發現我對DSP更有興趣了,我也會好好努力把一些我還不是很了解的知識學好。10、參考文獻[1]鄒彥主編,DSP原理及應用[M],北京:電子工業出版社,2008。[2]丁玉美,高西全,數字信號處理[M],西安:西安電子科技大學出版社,2006。[3]薛年喜,ATLAB在數字信號處理中的應用[M],北京:清華大學出版社。[4]汪安民,程昱,DSP實用子程序集,北京:人民郵電出版社,2005。[5]劉泉,闕大順,數字信號處理原理與實現[M],北京:電子工業出版社,2005。附錄1編輯源程序文件內容:.mmregs.defstart.globalTINT0_ISRAD_ADDR.set0x0000DA_ADDR.set0x0001.datatable:.word12*32768/10000 .word17*32768/10000.word22*32768/10000.word23*32768/10000.word12*32768/10000.word-17*32768/10000.word-66*32768/10000.word-125*32768/10000.word-172*32768/10000.word-178*32768/10000.word-111*32768/10000.word49*32768/10000.word305*32768/10000.word632*32768/10000.word983*32768/10000.word1299*32768/10000.word1518*32768/10000.word1596*32768/10000.word1518*32768/10000.word1299*32768/10000.word983*32768/10000.word632*32768/10000.word305*32768/10000.word49*32768/10000.word-111*32768/10000.word-178*32768/10000.word-172*32768/10000.word-125*32768/10000.word-66*32768/10000.word-17*32768/10000.word12*32768/10000.word23*32768/10000.word22*32768/10000.word17*32768/10000.word12*32768/10000.bssbuffer,1xn.usect"xn",35b0.usect"b0",35STACK.usect"STACK",10H.text.align0x10start:STM#STACK+10H,SPSTM#0,CLKMDStatus:LDMCLKMD,AAND#01H,ABCStatus,ANEQSTM#03EFH,CLKMDK_IPTR.set0080hLDMPMST,AAND#7FH,AOR#K_IPTR,ASTLMA,PMSTPERIOD.set19STM#01H,TCRSTM#PERIOD,TIMSTM#PERIOD,PRDSTM#29H,TCRSTM#0008H,IMRSTM#0008H,IFRSSBXFRCTSTM#b0,AR1RPT#34MVPDtable,*AR1+STM#xn,AR2STM#b0+34,AR3STM#35,BKSTM#-1,AR0RSBXINTMend:nopBendnopnopTINT0_ISR:PSHMST0PSHMAR1STM#buffer,AR1PORTR#AD_ADDR,*AR2+0%FIR2:RPTZA,#34MAC*AR2+0%,*AR3+0%,ASTHA,*AR1PORTW*AR1,#DA_ADDRPOPMAR1POPMST0RETE.end同樣,編輯命令鏈接文件exam8.cmd,內容如下:-estartMEMORY{PAGE0:EPROM:org=0100Hlen=1000HVECS:org=0080Hlen=0080HPAGE1:SPRAM:org=1000Hlen=1000HDARAM:org=2000Hlen=1000H}SECTIONS{.text:>EPROMPAGE0.data:>EPROMPAGE0.bss:>SPRAMPAGE1xn:>DARAMPAGE1,align=64b0:>DARAMPAGE1,align=64.vectors:>VECSPAGE0}編輯中斷向量表文件vectors.asm,內容如下:.globalstart.globalTINT0_ISR.sect".vectors".align0x80RESET: B start NOP NOPNMI: RETE NOPNOPNOP SINT17.space4*16SINT18.space4*16SINT19.space4*16SINT20.space4*16SINT21.space4*16SINT22.space4*16SINT23.space4*16SINT24.space4*16SINT25.space4*16SINT26.space4*16SINT27.space4*16SINT28.space4*16SINT29.space4*16SINT30.space4*16INT0:RETE NOP NOP NOPINT1: RETE NOPNOPNOP INT2: RETE NOP NOP NOPTINT:B TINT0_ISR NOP NOP BRINT0: RETE NOP NOP NOP BXINT0: RETE NOP NOP NOP DMAC0: RETE NOP NOP NOP TINT1: RETE NOP NOP NOP INT3: RETE NOP NOP NOP HPINT: RETE NOP NOP NOP BRINT1: RETE NOP NOP NOP BXINT1: RETE NOP NOP NOPDMAC4: RETE NOP NOP NOP DMAC5: RETE NOP NOP NOP .endPAGE1

附錄2(1)正弦表的產生 .datasin64: .word0,1,4,8,13,19,26,34 .word43,53,64,75,87,99,112,124 .word137,150,162,174,186,197,207,217 .word225,233,239,245,249,252,254,255 .word255,254,252,249,245,239,233,225 .word217,207,197,186,174,162,150,137 .word124,112,99,87,75,64,53,43 .word34,26,19,13,8,4,1,0(2)DSP初始化程序.title"sin.asm" .mmregs .globalstart .globalTINT0SV .globalINT2SVIN_ADDR.set2HAD_ADDR.set0HDA_ADDR.set1HOFFSET.set07F0HSTACK.usect"STACK",10H .include"sintab_WF.asm" .bssbuffer,1 .bssampl,1 .bssfrqidx,1sinx.usect"sinx",64 .textstart: STM#STACK+10H,SP STM#0,CLKMDStatus: LDMCLKMD,A AND#01H,A BCStatus,ANEQ STM#03EFH,CLKMD;=====================;K_IPTR.set0080h LDMPMST,A AND#7FH,A OR#K_IPTR,A STLMA,PMST;=====================; SSBXFRCT STM#sinx,AR1 RPT#64-1 MVPD#sin64,*AR1+ STM#64,BK STM#1,AR0 STM#sinx,AR2;=====================;PERIOD .set9 STM#10H,TCR STM#PERIOD,PRD STM#29H,TCR STM#000CH,IMR STM#000CH,IFR RSBXINTMend: nop Bend (3)正弦波頻率調整INT2SV: PSHMST0 PSHMAR1 STM#frqidx,AR1 PORTR#IN_ADDR,*AR1 LD*AR1,A AND#07FH,A STLA,*AR1 LD#PERIOD,A ADD*AR1,A STM#10H,TCR STLMA,PRD STM#29H,TCR POPMAR1 POPMST0 RETE(4)正弦波幅度調整TINT0SV: PSHMST0 PSHMAR1 PSHMAR3 STM#buffer,AR1 STM#ampl,AR3 PORTR#AD_ADDR,*AR3 LD*AR3,A AND#0FFFH,A SUB#OFFSET,A STLA,*AR3 MPY*AR3,*AR2+0%,A SFTLA,#-7 STLA,*AR1 PORTW*AR1,#DA_ADDR POPMAR3 POPMAR1 POPMST0 RETE(5)中斷向量表文件.globalstart.globalTINT0_ISR.sect".vectors".align0x80RESET: B start NOP NOPNMI:

溫馨提示

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

評論

0/150

提交評論