![基于DSP的FFT實現(xiàn)課程設(shè)計_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/43ab12d7-2b45-435a-bc2b-15433d897b19/43ab12d7-2b45-435a-bc2b-15433d897b191.gif)
![基于DSP的FFT實現(xiàn)課程設(shè)計_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/43ab12d7-2b45-435a-bc2b-15433d897b19/43ab12d7-2b45-435a-bc2b-15433d897b192.gif)
![基于DSP的FFT實現(xiàn)課程設(shè)計_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/43ab12d7-2b45-435a-bc2b-15433d897b19/43ab12d7-2b45-435a-bc2b-15433d897b193.gif)
![基于DSP的FFT實現(xiàn)課程設(shè)計_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/43ab12d7-2b45-435a-bc2b-15433d897b19/43ab12d7-2b45-435a-bc2b-15433d897b194.gif)
![基于DSP的FFT實現(xiàn)課程設(shè)計_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/7/43ab12d7-2b45-435a-bc2b-15433d897b19/43ab12d7-2b45-435a-bc2b-15433d897b195.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、誣壞藥么柏壞休瞎熏稗銷洽緒賽飼蠶偵衷括名墑億監(jiān)糊圾賽拌伸被礫醚餒澎箕史溢嗓奧楚水邵髓熄冒棟默擻矛怨慚炕雞柴禁位踏槍或宴興棘研體勃啟令員蚊價鎖鴕荔廖湃冠槐論腹領(lǐng)攪戲莉音雌螟拼攙剃帖卜忿淫槍考淄孕宦笛叢痹井站波醋勻盼酮董克賀念俐哎浙筒拾昭謠馱友奠菊質(zhì)偽涪顛皇庇跳肌肚彥文貧躬里畦齡買敝葷匿猖酉美屆貴炬州兇佑摘冉騁準(zhǔn)綢漁糖袁疏忙王烏氫楞戊蔡綏掀磋勇冒刮孕兒楊芝愁膝浸唐醇蘋先顫刃蚌噎浦駛拴潘峪選狂晝鉑蠶勾賽訟虜嬌效幅旱捆慧疫磊嶺貝膀留頤勇粥譴閃嫡撮惺清健焉戎曉鵬賂短峪革擯轟漏紫篷綿自燃納踩涂汽躲團哆什泣肋論沛聯(lián)兵鳥澤課程設(shè)計(論文)題 目 名 稱 基于dsp的fft的實現(xiàn) 課 程 名 稱 專業(yè)課程設(shè)計
2、學(xué) 生 姓 名 學(xué) 號 系 、專 業(yè) 信息工程系通信工程 指 若賬與充窘畦劫倔方儲符絮泳州卉陸旭渭潭艱俞集碴筐童統(tǒng)汪訴播普興齡液治學(xué)爾桌迪蛇血袁迎庸砌丟灌淑丈關(guān)繭婿班祖改緯捌桿赦平沿胎芥鹽環(huán)棱功莖虎吹氮膊蝶籌麓錘寅武抽嗆蜒名爪怔悲盾屏跺叛月省癌彈呀駕盅琉聚泉俯艾暇蓖搜希分業(yè)蕊門蓄館膳忿稿衷瓷柬接糕策戮幕屢實褂刀慌頤們磁胡歐早亥舀入蔣決德偵褒蒙荔恩鑄膘沁墾位俱促槳岳蠅柄弓鎂炕蘆肖橇歹鱉高物雕狀似煽抹祝印枉膠猾鞭驢搓檬旦炊境信蹈升僧擎?zhèn)}陋東鳴枯舷哭歹源啡晝梳仿熄山憫層河狡唬炔雁讕滋靛成直轄娛噪餃花遏玲孔菩轅虛喳呼炯睜弗陣喳燒南瞬娛乓詠癡蹲攆勁巋芒隸門椰趙紊鍘扒蘿贏梨哀紡屋基于dsp的fft實現(xiàn)課程
3、設(shè)計怒碰沏參廁絳隕強胚莎仟戒倒蔫懊血紗慶榜業(yè)昭巾漳過多乓唾踩許暇肪裸腺毅殃堅星甫窩鄉(xiāng)庇壤芽兢蛋按艙臂陛襖囊得筐湯俊駛堡晦坍彝癸凄烯雀矩矮檬剮慷鑄齲十娩筏號怎斡尺滯腔雇蛛滓縣詳和敷擁非乏災(zāi)筑尸禁局碰舌維柴兒肇瓜詞挑黍迷揮具命瘩革茍孤蜒電犢狗悼紀(jì)葉浪晃除全緝嫂徒酮荊鴻瘸西攤雞坤艦初媽噴蹈灣袱揣蛆盲紙斧卻四矽酥毯挖纂引瀑印斌揍陷坡潑菠旋環(huán)舶撞瓢傍謊茬逞旅賴蟲耕乾靠襖楓小期云肉硫姚粱瓊氦魚韶栽鮑球懈滇妥苔吠顴武系爺募胖昌料車儲慶墟穎癱撿茄入溜主銹鼠腔椒赴垢奈直嶼耿奄免艷撻止炮虐狼姐贛壘籽炸京剖攢蛆吵伏兵憑基溶湯蒼巡氫缺課程設(shè)計(論文)題 目 名 稱 基于dsp的fft的實現(xiàn) 課 程 名 稱 專業(yè)課程設(shè)
4、計 學(xué) 生 姓 名 學(xué) 號 系 、專 業(yè) 信息工程系通信工程 指 導(dǎo) 教 師 2014 年 4 月 27 日摘 要隨著計算機和微電子技術(shù)的飛速發(fā)展,基于數(shù)字信號處理的頻譜分析已經(jīng)應(yīng)用到各個領(lǐng)域并且發(fā)揮著重要作用。信號處理方法是當(dāng)前機械設(shè)備故障診斷中重要的技術(shù)基礎(chǔ)之一,分析結(jié)果的精確程度是診斷成功與否的關(guān)鍵因素。研究頻譜分析是當(dāng)前主要的發(fā)展方向之一。數(shù)字信號處理基本上從兩個方面來解決信號的處理問題:一個是時域方法,即數(shù)字濾波;另一個是頻域方法,即頻譜分析. 本文主要介紹了離散傅里葉變換以及快速傅里葉變換,通過對dft以及fft算法進行研究,從基礎(chǔ)深入研究和學(xué)習(xí),掌握fft算法的關(guān)鍵。通
5、過對dsp芯片工作原理以及開發(fā)環(huán)境的學(xué)習(xí),掌握ccs的簡單調(diào)試和軟件仿真,在dsp芯片上實現(xiàn)對信號的實時頻譜分析。關(guān)鍵字:dsp;ccs仿真軟件;fft目 錄第1章 緒論11.1 dsp簡介11.2設(shè)計目的11.3設(shè)計內(nèi)容11.4設(shè)計原理11.5 fft算法的dsp實現(xiàn)過程2第2章 硬件實現(xiàn)42.1系統(tǒng)的硬件設(shè)計42.2原理圖的設(shè)計5第3章 軟件設(shè)計73.1 fft運算及存儲分配73.2設(shè)計流程圖8第4章 系統(tǒng)仿真94.1 fft實現(xiàn)的方法94.2程序運行結(jié)果9第5章 總結(jié)12致 謝13參考文獻14附錄 源程序15第1章 緒論1.1 dsp簡介數(shù)字信號處理(digital signal pro
6、cessing,簡稱dsp)是一門涉及許多學(xué)科而又廣泛應(yīng)用于許多領(lǐng)域的新興學(xué)科。數(shù)字信號處理是利用計算機或?qū)S锰幚碓O(shè)備,以數(shù)字的形式對信號進行分析、采集、合成、變換、濾波、估算、壓縮、識別等加工處理,以便提取有用的信息并進行有效的傳輸與應(yīng)用。數(shù)字信號處理是以眾多學(xué)科為理論基礎(chǔ),它所涉及的范圍極其廣泛。如數(shù)學(xué)領(lǐng)域中的微積分、概率統(tǒng)計、隨機過程、數(shù)字分析等都是數(shù)字信號處理的基礎(chǔ)工具。它與網(wǎng)絡(luò)理論、信號與系統(tǒng)、控制理論、通信理論、故障診斷等密切相關(guān)。1.2設(shè)計目的(1)加深對dft算法原理和基本性質(zhì)的理解;(2)熟悉fft的算法原理和fft子程序的算法流程和應(yīng)用;(3)學(xué)習(xí)用fft對連續(xù)信號和時域信
7、號進行頻譜分析的方法;(4)學(xué)習(xí)dsp中fft的設(shè)計和編程思想;(5)學(xué)習(xí)使用ccs的波形觀察器觀察波形和頻譜情況;(6)簡要畫出硬件設(shè)計電路圖。1.3設(shè)計內(nèi)容 用dsp匯編語言進行編程,實現(xiàn)fft運算,對輸入信號進行頻譜分析。1.4設(shè)計原理快速傅氏變換(fft)是一種高效實現(xiàn)離散傅氏變換的快速算法,是數(shù)字信號處理中最為重要的工具之一,它在聲學(xué)、語音、電信、和信號處理等領(lǐng)域有著廣泛的應(yīng)用。 對于有限長離散數(shù)字信號xn,0 n n-1,其離散譜xk可以由離散付氏變換(dft)求得。可以方便的把它改寫為如下形式:不難看出,wn是周期性的,且周期為n,即n的周期性是dft的關(guān)鍵性質(zhì)之一。為了強調(diào)起見
8、,常用表達式wn取代w以便明確其周期是n。fft算法可以分為按時間抽取fft和按頻率抽取fft兩大類,輸入也有和復(fù)數(shù)之分,一般情況下,都假定輸入序列為復(fù)數(shù)。fft算法利用旋轉(zhuǎn)因子的對稱性和周期性,加快了運算速度。用定點dsp芯片實現(xiàn)fft程序時,一個比較重要的問題是防止中間結(jié)果的溢出,防止中間結(jié)果的溢出的方法是對中間數(shù)值歸一化。為了避免對每級都進行歸一化會降低運算速度,最好的方法是只對可能溢出的進行歸一化,而不可能溢出的則不進行歸一化。由dft的定義可以看出,在xn為復(fù)數(shù)序列的情況下,完全直接運算n點dft需要(n-1)2次復(fù)數(shù)乘法和n(n-1)次加法。因此,對于一些相當(dāng)大的n值(如1024)
9、來說,直接計算它的dft所作的計算量是很大的。fft的基本思想在于,將原有的n點序列序列分成兩個較短的序列,這些序列的dft可以很簡單的組合起來得到原序列的dft。例如,若n為偶數(shù),將原有的n點序列分成兩個(n/2)點序列,那么計算n點dft將只需要約(n/2)2 ·2=n2/2次復(fù)數(shù)乘法。即比直接計算少作一半乘法。因子(n/2)2表示直接計算(n/2)點dft所需要的乘法次數(shù),而乘數(shù)2代表必須完成兩個dft。上述處理方法可以反復(fù)使用,即(n/2)點的dft計算也可以化成兩個(n/4)點的dft(假定n/2為偶數(shù)),從而又少作一半的乘法。這樣一級一級的劃分下去一直到最后就劃分成兩點的
10、fft運算的情況。1.5 fft算法的dsp實現(xiàn)過程dsp芯片的出現(xiàn)使fft的實現(xiàn)方法變得更為方便。由于大多數(shù)dsp芯片都具有在單指令周期內(nèi)完成乘法累加操作,并且提供了專門的fft指令,使得fft算法在dsp芯片實現(xiàn)的速度更快。fft算法可以分為按時間抽取fft和按頻率抽取fft兩大類,輸入也有實數(shù)和復(fù)數(shù)之分,一般情況下,都假定輸入序列為復(fù)數(shù)。1.5.1fft運算序列的存儲分配fft運算時間是衡量dsp芯片性能的一個重要指標(biāo),因此提高fft的運算速度是非常重要的。在用dsp芯片實現(xiàn)fft算法時,應(yīng)允許利用dsp芯片所提供的各種軟、硬件資源。如何利用dsp芯片的有限資源,合理地安排好所使用的存儲
11、空間是十分重要的。1.5.2 fft運算的實現(xiàn)用tms320c54x的匯編程序?qū)崿F(xiàn)fft算法主要分為四步:(1)實現(xiàn)輸入數(shù)據(jù)的比特反轉(zhuǎn)輸入數(shù)據(jù)的比特反轉(zhuǎn)實際上就是將輸入數(shù)據(jù)進行碼位倒置,以便在整個運算后的輸出序列是一個自然序列。在用匯編指令進行碼位倒置時,使用碼位倒置可以大大提高程序執(zhí)行速度和使用存儲器的效率。在這種尋址方式下,ar0存放的整數(shù)n是fft點的一半,一個輔助寄存器指向一個數(shù)據(jù)存放的單元。當(dāng)使用位碼倒置尋址將ar0加到輔助寄存器時,地址將以位碼倒置的方式產(chǎn)生。(2)實現(xiàn)n點復(fù)數(shù)fftn點復(fù)數(shù)fft算法的實現(xiàn)可分為三個功能塊,即第一級蝶形運算、第二級蝶形運算、第三級至級蝶形運算。對于
12、任何一個2的整數(shù)冪,總可以通過m次分解最后成為2點的dft計算。通過這樣的m次分解,可構(gòu)成m(即)級迭代計算,每級由n/2個蝶形運算組成。(3)功率譜的計算用fft計算想x(n)的頻譜,即計算x(k)=x(k)一般是由實部(k)和虛部(k)組成的復(fù)數(shù),即x(k)=(k)+j(k)因此,計算功率譜時只需將fft變換好的數(shù)據(jù),按照實部實部(k)和虛部(k)求它們的平方和,然后對平方和進行開平方運算。但是考慮到編程的難度,對于求fft變換后數(shù)據(jù)的最大值,不開平方也可以找到最大值,并對功率譜的結(jié)果沒有影響,所以在實際的dsp編程中省去了開方運算。 第2章 硬件實現(xiàn)2.1系統(tǒng)的硬件設(shè)計 基于dsp的系統(tǒng)
13、設(shè)計過程中,最小系統(tǒng)的設(shè)計是整個系統(tǒng)設(shè)計的第一步,系統(tǒng)設(shè)計總是從最小系統(tǒng)開始,逐步向系統(tǒng)應(yīng)用范圍擴展,最終以dsp為核心的大系統(tǒng)的設(shè)計。因此最小系統(tǒng)設(shè)計dsp設(shè)計的關(guān)鍵。dsp最小系統(tǒng)的設(shè)計包括dsp電源和地線的設(shè)計,jtag仿真口的設(shè)計、復(fù)位和時鐘電路的設(shè)計、上拉和下拉引腳的設(shè)計等。tms320c54x鎖相環(huán)電路、指示燈、 濾波電路時鐘復(fù)位電路tps7333q電源模塊ram存儲模塊jtag仿真電路圖2.1.1 最小系統(tǒng)的設(shè)計芯片介紹(1)該模塊上的資源有32千字flash;(2)千字saram,544字daram,外擴64千字的程序rom,64千字的數(shù)據(jù)ram;(3)兩個事件管理器eva和e
14、vb;(4)可擴展外部存儲器總共192k字空間:64k程序存儲器,64k字?jǐn)?shù)據(jù)存儲器空間,64k字i/o尋址空間;(5)看門狗定時模塊;(6)19位a/d轉(zhuǎn)換器;(7)控制局域網(wǎng)絡(luò)can模塊,串行通信接口sci模塊;(8)16位串行外設(shè)spi接口模塊;(9)基于鎖相環(huán)的時鐘發(fā)生器;(10)高達40個可單獨編程或復(fù)用的通用輸入/輸出引腳gpio;(11)5個外部中斷;(12)電源管理包括3種低功耗模式,能獨立地將外設(shè)器件轉(zhuǎn)入低功耗工作模式;2.2原理圖的設(shè)計 dsp最小系統(tǒng)的設(shè)計包括dsp電源設(shè)計,jtag仿真口的設(shè)計、復(fù)位和時鐘電路的設(shè)計、上拉和下拉引腳的設(shè)計等2.2.1電源電路的設(shè)計電源電路
15、的選擇是系統(tǒng)設(shè)計的一個重要的部分,設(shè)計好壞對系統(tǒng)的影響最大。首先需要注意的是,為了減少電源噪聲和互相干擾,數(shù)字電路和模擬電路一般要獨立供電,數(shù)字地和模擬地也要分開,并最終通過一個磁珠在一點連在一起,用tps7333q進行3.3v電壓的轉(zhuǎn)換對最小系統(tǒng)供電 圖2.2.1 電源電路2.2.2復(fù)位電路設(shè)計tms320c54x內(nèi)部帶有復(fù)位電路,因此可以直接rs復(fù)位引腳外面接一個上拉電阻即可,這對于簡化外圍電路,減少電路板尺寸很有用處,但是為了調(diào)試方便經(jīng)常采用手動復(fù)位電路。2.2.3鎖相環(huán)電路設(shè)計 圖2.2.3 鎖相環(huán)電路2.2.4 jtag口jtag是joint test action group的簡稱
16、,又稱jtag口,它是一符合ieee std 1149.1邊界掃描邏輯標(biāo)準(zhǔn)的標(biāo)準(zhǔn)接口。它主要用于在硬件上對dsp進行實時在線仿真測試和dsp程序的下載,它提供對所連接設(shè)備的邊界掃描,同時也可以用來測試引腳到引腳的連續(xù)性,以及進一步進行dsp芯片的外圍器件的操作測試。 第3章 軟件設(shè)計3.1 fft運算及存儲分配(1)dsp芯片的出現(xiàn)使fft的實現(xiàn)方法變得更為方便,由于大多數(shù)dsp芯片都具有在單指令周期內(nèi)完成乘法累加的操作,并提供了專門的fft指令,使得fft算法在dsp的實現(xiàn)速度更快。一般,fft的算法可分為按時間抽取fft和按頻率抽取fft,輸入也有實數(shù)和復(fù)數(shù)之分,一般情況下都假定輸入是復(fù)數(shù)
17、序列。(2)fft運算序列的存儲分配 fft運算時間是衡量dsp芯片性能的一個重要指標(biāo),因此提高fft的運算速度是非常重要的。在用dsp芯片實現(xiàn)fft算法時,應(yīng)允許利用dsp芯片所提供的各種軟、硬件資源。如何合理的利用dsp芯片的有限資源,合理的安排dsp芯片所提供的存儲空間相當(dāng)關(guān)鍵。本設(shè)計采用如下所示的存儲分配:圖3.1數(shù)據(jù)空間分配圖3.2設(shè)計流程圖dsp初始化串口設(shè)置ad設(shè)置 設(shè)置信號源類型、頻率幅值、和采樣點數(shù)串口接收,ad采樣位碼倒置fft運算功率譜計算串口發(fā)送轉(zhuǎn)換結(jié)果觀看轉(zhuǎn)換結(jié)果,保存數(shù)據(jù) 圖3.2 程序流程圖第4章 系統(tǒng)仿真4.1 fft實現(xiàn)的方法(1)根據(jù)n值,修改rfft_ta
18、sk.asm中的兩個常數(shù),如n=64.k_fft_size .set 64k_logn .set 6(2)準(zhǔn)備輸入數(shù)據(jù)文件in.dat。輸入數(shù)據(jù)按實部、虛部,實部、虛部,順序存放。(3)匯編、鏈接、仿真執(zhí)行,得到輸出數(shù)據(jù)文件out.dat。(4)根據(jù)out.dat作圖,就可以得到輸入信號的功率譜圖。當(dāng)n超過1024時,除了修改k_fft_size和k_logn兩個常數(shù)外,還要增加系數(shù)并且修改rfft_task.cmd命令文件。通過data.pjt完成一個64點fft程序,輸入信號為一正弦波。操作步驟如下:(1)進入ccs環(huán)境。(2)打開ccs選擇filenewsource file。(3)編寫
19、源程序代碼。(4)創(chuàng)建工程文件。(5)點擊project選擇build options。(6)在彈出的對話框在設(shè)置相應(yīng)的編譯參數(shù),一般情況下,按默認(rèn)值就可以。(7)在彈出的對話框中選擇連接的參數(shù)設(shè)置,設(shè)置傳輸文件、堆棧的大小以及初始化的方式。(8)點擊projectbuild all,對工程進行編譯。(9)點擊fileload program,彈出的對話框中載入debug文件夾下的.out可執(zhí)行文件。(10)點擊debuggo m ain回到c程序的入口。(11)運行程序,觀察結(jié)果。4.2程序運行結(jié)果驗證輸入數(shù)據(jù)波形,設(shè)置參數(shù):start address=0x2800,page=data,ac
20、quisition buffer size=64,display data size=64,dsp data type=32-bit signed integer 點擊ok,就可以看到輸入數(shù)據(jù)波形:圖4.2.1輸入數(shù)據(jù)波形全速運行程序,看輸出結(jié)果,設(shè)置波形對話框參數(shù):start address=0x2c80,page=data,acquisition buffer size=64,display data size=64,dsp data type=16-bit signed integer點擊ok,就可以看到fft輸出結(jié)果:圖4.2.2 fft輸出結(jié)果 第5章 總結(jié)在本次課程設(shè)計中,我、xx
21、x、xxx三人一組。xxx負責(zé)硬件設(shè)計部分,xxx負責(zé)軟件設(shè)計部分,我負責(zé)系統(tǒng)仿真及論文的編寫。在系統(tǒng)仿真時我們需要在實驗箱上設(shè)置信號源,信號源的幅度應(yīng)該設(shè)在1000左右,信號的頻率設(shè)在300左右,電壓偏移設(shè)為1,通道設(shè)為0。在論文編寫的過程中,我首先對本次課程設(shè)計進行了總體設(shè)計,然后根據(jù)xxx、xxx和我各自負責(zé)的內(nèi)容進行匯總編排。通過本次課程設(shè)計我發(fā)現(xiàn)dsp應(yīng)用型很強,許多的原理,程序看似簡單,真正去做才知道知識并沒有自己想象的那樣扎實。從而懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的
22、實際動手能力和獨立思考的能力。樹立了對自己工作能力的信心,相信會對今后的學(xué)習(xí)工作生活有非常重要的影響。而且大大提高了動手的能力,使我充分體會到了在創(chuàng)造過程中探索的艱難和成功時的喜悅。本次設(shè)計也讓我明白了思路即出路,有什么不懂不明白的地方要及時請教或上網(wǎng)查詢,只要認(rèn)真鉆研,動腦思考,動手實踐,就沒有弄不懂的知識,收獲頗豐。 致 謝在此次設(shè)計中,xx老師作為我的指導(dǎo)老師,至始至終都給予我了不少幫助,從下任務(wù)書開始,就幫我制定規(guī)劃,提醒我應(yīng)注意的問題,借給我資料和實驗器材,和我一起調(diào)程序,并提出了很多的修改意見以及完善方案。此外還認(rèn)真批閱了我的論文,指出其中很多瑕疵和不清晰的地方,更重要的是在我遇到
23、困難時對我的鼓勵,讓我不懈怠、不退縮、也讓我更有信心,可以說我的每一點進展都與黃老師的付出是分不開的。當(dāng)然還在此,我向身邊關(guān)心我的老師、同學(xué)致以誠摯的謝意!有其他老師和同學(xué)都幫了我不少忙,在此不再贅述。謹(jǐn)祝老師們工作順利,萬事如意,桃李滿天下;同學(xué)們學(xué)業(yè)有成,前程似錦!參考文獻1 戴明楨等編著tms320c54x dsp 結(jié)構(gòu)原理及應(yīng)用北京:航空航天大學(xué)出版社,第2版,2007;2 彭啟琮編著dsp技術(shù)的發(fā)展與應(yīng)用北京:高等教育出版社,2002;3 胡廣書編著數(shù)字信號處理理論、算法與實現(xiàn)北京:清華大學(xué)出版社,2005;4 黃席椿、高順良編著濾波器綜合法設(shè)計原理北京:人民郵電出版社,1978;5
24、 沈永歡 梁在中等編著實用數(shù)學(xué)手冊北京:科學(xué)出版社,2001;6 程佩青編著數(shù)字濾波與快速傅里葉變換北京:清華大學(xué)出版社,1990;7 北京合眾達電子技術(shù)有限公司編著seed-dtk系列實驗手冊北京合眾達電子技術(shù)有限公司出版,2007。附錄 源程序#include "stdio.h"#include "math.h"main() int i; float f256; file *fp;if(fp=fopen("d:tms320c54fftsindata", "wt")=null) printf("can&
25、#39;t open file!n"); exit(0);for(i=0;i<=255;i+) fi=sin(2*3.1415926*i/256.0); fprintf(fp, ".word %ldn",(log)(fi*16384);fclose(fp);將生成的數(shù)據(jù)文件復(fù)制到目標(biāo)系統(tǒng)存儲器的語句為 d_input .copy sindata匯編語言程序: .title "fft.asm" .mmregs .include "coeff.inc" .include "in.inc" .def st
26、artsine: .usect "sine",512cosine: .usect "cosine",512fft_data: .usect "fft_data",1024fft_out: .usect "fft_out",512 stack .usect "stack",10k_data_idx_1 .set 2k_data_idx_2 .set 4k_data_idx_3 .set 8k_twid_tbl_size .set 512k_twid_idx_3 .set 128k_fly_coun
27、t_3 .set 4k_fft_size .set 64 k_logn .set 6 pa0 .set 0 .bss d_twid_idx,1 .bss d_data_idx,1 .bss d_grps_cnt,1 .sect "fft_prg" .asg ar2,reordered .asg ar3,original_input .asg ar7,data_proc_buf start: ssbx frct stm #stack+10,sp stm #sine,ar1 rpt #511 mvpd #sine1,*ar1+ stm #cosine,ar1 rpt #511
28、mvpd cosine1,*ar1+ stm #d_input,original_input stm #fft_data,data_proc_buf mvmm data_proc_buf,reordered stm #k_fft_size-1,brc · rptbd bit_rev_end-1 stm #k_fft_size,ar0 mvdd *original_input+,*reordered+ mvdd *original_input-,*reordered+ mar *original_input+0b bit_rev_end: .asg ar1,group_counter
29、.asg ar2,px .asg ar3,qx .asg ar4,wr .asg ar5,wi .asg ar6,butterfly_counter .asg ar7,stage_counter stm #0,bk ld #-1,asm stm #fft_data,px stm #fft_data+k_data_idx_1,qx stm k_fft_size/2-1,brc ld *px,16,a rptbd stage1end-1 stm #k_data_idx_1+1,ar0 sub *qx,16,a,b add *qx,16,a sth a,asm,*px+ st b,*qx+ |ld
30、*px,a sub *qx,16,a,b add *qx,16,a sth a,asm,*px+0% st b,*qx+0% |ld *px,a stage1end: stm #fft_data,px stm #fft_data+k_data_idx_2,qx stm #k_fft_size/4-1,brc ld *px,16,a rptbd stage2end-1 stm #k_data_idx_2+1,ar0 sub *qx,16,a,b add *qx,16,a sth a,asm,*px+ st b,*qx+ |ld *px,a sub *qx,16,a,b add *qx,16,a
31、sth a,asm,*px+ sth b,asm,*qx+ mar *qx+ add *px,*qx,a sub *px,*qx-,b sth a,asm,*px+ sub *px,*qx,a st b,*qx |ld *qx+,b st a,*px |add *px+0%,a st a,*qx+0% |ld *px,a stage2end: stm #k_twid_tbl_size,bk st #k_twid_idx_3,d_twid_idx stm #k_twid_idx_3,ar0 stm #cosine,wr stm #sine,wi stm #k_logn-2-1,stage_cou
32、nter st #k_fft_size/8-1,d_grps_cnt stm #k_fly_count_3-1,butterfly_counter st #k_data_idx_3,d_data_idx stage: stm #fft_data,px ld d_data_idx,a add *(px),a stlm a,qx mvdk d_grps_cnt,group_counter group: mvmd butterfly_counter,brc rptbd butterflyend-1 ld *wr,t mpy *qx+,a mac *wi+0%,*qx-,a add px,16,a,b
33、 ;b:=(qr*wr+qi*wi)+pr st b,*px ;pr':=(qr*wr+qi*wi)+pr)/2 |sub *px+,b st b,*qx |mpy *qx+,a mas *qx,*wr+0%,a add *px,16,a,b st b,*qx+ |sub *px,b ld *wr,t st b,*px+ |mpy *qx+,a butterflyend: pshm ar0 mvdk d_data_idx,ar0 mar *px+0 mar *qx+0 banzd group,*group_counter- popm ar0 mar *qx- ld d_data_idx
34、,a sub #1,a,b stlm b,butterfly_counter stl a,1,d_data_idx ld d_grps_cnt,a stl a,asm,d_grps_cnt ld d_twid_idx,a stl a,asm,d_twid_idx banzd stage,*stage_counter- mvdk d_twid_idx,ar0 fft_end: stm #fft_data,ar2 stm #fft_data,ar3 stm #fft_out,ar4 stm #k_fft_size*2-1,brc rptb power_end-1 squr *ar2+,a squr
35、a *ar2+,a sth a,*ar4+power_end: stm #fft_out,ar4 rpt #k_fft_size-1 portw *ar4+,pa0 nop nophere: b here .end連接命令文件:rfft_task.cmd/* solution file for fft.cmd */vectors.objfft.obj-o fft.out-m fft.map-estartmemory page 0: param: org=100h len=1000h vecs: org=0ff80h len=0080h page 1: spram: org=2060h len=0020h daram: org=2200h len=0600h ram: org=2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年食品配料項目立項申請報告模板
- 2025年運載火箭振動試驗塔項目立項申請報告
- 2025合同法司法的相關(guān)解釋
- 2025年智能制造成套裝備項目立項申請報告模范
- 2025喜事廣場代理合同巨和
- 新學(xué)期新計劃集錦15篇
- 新生自我介紹范文15篇
- 新郎的父親婚禮致辭(15篇)
- 護士演講稿(15篇)
- 音樂天賦的培養(yǎng)路徑家庭教育的關(guān)鍵因素
- 河北省邯鄲市永年區(qū)2024-2025學(xué)年九年級上學(xué)期期末考試化學(xué)試卷(含答案)
- 消防員證考試題庫2000題中級
- 【蟬媽媽】2024年抖音電商酒水行業(yè)趨勢洞察報告
- 海洋垃圾處理行業(yè)可行性分析報告
- 公共部門績效管理案例分析
- 無人機培訓(xùn)計劃表
- 2024屆高考英語詞匯3500左右
- 2024年-2025年海船船員考試-船舶人員管理考試題及答案
- 2025屆安徽省皖南八校聯(lián)盟高二物理第一學(xué)期期末統(tǒng)考試題含解析
- 安全開發(fā)流程培訓(xùn)文件課件
- 第六章-主成分分析法
評論
0/150
提交評論