

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> XXXX大 學</b></p><p><b> 課程設計說明書</b></p><p> 名稱 DSP原理與應用課程設計 </p><p> 2011年 12月26日至2011年12月31日共1周</p><p> 院 系
2、 </p><p> 班 級 </p><p> 姓 名 </p><p> 系 主 任 </p><p> 教研室主任 </p><p> 指導教師 </p>&l
3、t;p><b> 目錄</b></p><p><b> 目錄2</b></p><p><b> 第一章緒論3</b></p><p> 1.1數字信號處理概述3</p><p> 1.2DSP芯片的特點4</p><p>
4、; 1.2.1、哈佛結構4</p><p> 1.2.2 多總線結構5</p><p> 1.2.3流水線技術5</p><p> 1.2.4、多處理單元6</p><p> 1.2.5、特殊的DSP指令6</p><p> 1.2.6、指令周期短7</p><p>
5、1.2.7、運算精度高7</p><p> 1.2.8、硬件配置強7</p><p> 1.2.9、省電管理和低功耗7</p><p> 1.3、TMS320C5X的主要特性7</p><p> 1.4、用DSP實現正余弦函數的基本方法8</p><p> 第二章 CCS集成開發(fā)環(huán)境10</
6、p><p> 2.1 CCS開發(fā)應用程序的一般步驟10</p><p> 2.2、建立工程文件11</p><p> 2.2.1、工程文件的建立、打開和關閉11</p><p> 2.2.2、在工程文件中添加貨刪除文件11</p><p> 2.2.3、編輯源文件12</p><p&
7、gt; 2.2.4、工程的構建12</p><p><b> 2.3、調試12</b></p><p> 2.3.1、載入可執(zhí)行程序12</p><p> 2.3.2、使用反匯編工具12</p><p> 2.3.3、斷點13</p><p> 2.3.4、查看編輯內存14
8、</p><p> 第三章 用CCS環(huán)境編程,調試實現正弦函數信號15</p><p> 3.1產生正弦波的原理15</p><p><b> 3.2調試15</b></p><p> 3.2.1 編寫匯編源程序sin.asm和復位向量文件sin_v.asm15</p><p>
9、 3.2.2 編寫鏈接命令文件sin.cmd18</p><p> 3.2.3具體調試過程18</p><p> 3.3調試結果20</p><p> 第四章 設計心得23</p><p><b> 參考文獻24</b></p><p><b> 緒論</b&g
10、t;</p><p><b> 數字信號處理概述</b></p><p> 數字信號處理(Digital Signal Processing,簡稱DSP)是一門涉及許多學科而又廣泛應用于許多領域的新興學科。20世紀60年代以來,隨著計算機和信息技術的飛速發(fā)展,數字信號處理技術應運而生并得到迅速的發(fā)展。在過去的二十多年時間里,數字信號處理已經在通
11、信等領域得到極為廣泛的應用。 數字信號處理是利用計算機或專用處理設備,以數字形式對信號進行采集、變換、濾波、估值、增強、壓縮、識別等處理,以得到符合人們需要的信號形式。數字信號處理是圍繞著數字信號處理的理論、實現和應用等幾個方面發(fā)展起來的。數字信號處理在理論上的發(fā)展推動了數字信號處理應用的發(fā)展。反過來,數字信號處理的應用又促進了數字信號處理理論的提高。而數字信號處理的實現則是理論和應用之間的橋梁。</p><
12、p> 圖1.1是數字信號處理系統(tǒng)的簡化框圖。此系統(tǒng)先將模擬信號轉換為數字信號,經數字信號處理后,再轉換為模擬信號輸出。其中抗混疊濾波器的作用,是將輸入信號x(t)中高于折疊頻率(其值等于采樣頻率的一半)的分量濾除,以防止信號頻譜的混疊。隨后,信號經采樣和A/D轉換后,變成數字信號x(n)。數字信號處理器對x(n)進行處理,得到輸出數字信號y(n),經D/A轉換器變成模擬信號。此信號經低通濾波器,濾除不需要的高頻分量,最后輸出平滑
13、的模擬信號y(t)。</p><p><b> 圖1.1</b></p><p> 雖然數字信號處理的理論發(fā)展迅速,但在20世紀80年代以前,由于實現方法的限制,數字信號處理的理論還得不到廣泛的應用。直到20世紀70年代末80年代初世界上第一片單片可編程DSP芯片的誕生,才將理論研究結果廣泛應用到低成本的實際系統(tǒng)中,并且推動了新的理論和應用領域的發(fā)展??梢院敛豢鋸?/p>
14、地說,DSP芯片的誕生及發(fā)展對近20年來通信、計算機、控制等領域的技術發(fā)展起到十分重要的作用。</p><p><b> DSP芯片的特點</b></p><p> DSP芯片,也稱數字信號處理器, 是一種具有特殊結構的微處理器。DSP芯片的內部采用程序和數據分開的哈佛結構,具有專門的硬件乘法器,廣泛采用流水線操作,提供特殊的DSP指令,可以用來快速的實現各種數字
15、信號處理算法。它是一種特別適合于進行數字信號處理運算的微處理器具,其主機應用是實時快速地實現各種數字信號處理算法。根據數字信號處理的要求,DSP芯片一般具有如下主要特點:</p><p> 1.2.1、哈佛結構</p><p> DSP芯片普遍采用數據總線和程序總線分離的哈佛結構或改進的哈佛結構,比傳統(tǒng)處理器的馮·諾伊曼結構有更快的指令執(zhí)行速度。 </p>&
16、lt;p> (1) 馮·諾伊曼(Von Neuman)結構 </p><p> 該結構采用單存儲空間,即程序指令和數據共用一個存儲空間,使用單一的地址和數據總線,取指令和取操作數都是通過一條總線分時進行。</p><p> 當進行高速運算時,不但不能同時進行取指令和取操作數,而且還會造成數據傳輸通道的瓶頸現象,其工作速度較慢。</p>&
17、lt;p> ?。?)哈佛(Harvard)結構 </p><p> 該結構采用雙存儲空間,程序存儲器和數據存儲器分開,有各自獨立的程序總線和數據總線,可獨立編址和獨立訪問,可對程序和數據進行獨立傳輸,使取指令操作、指令執(zhí)行操作、數據吞吐并行完成,大大地提高了數據處理能力和指令的執(zhí)行速度,非常適合于實時的數字信號處理。微處理器的哈佛結構如圖1.2.2所示。 </p><p> 1.
18、2.2 多總線結構 </p><p> DSP芯片都采用多總線結構,可同時進行取指令和多個數據存取操作,并由輔助寄存器自動增減地址進行尋址,使CPU在一個機器周期內可多次對程序空間和數據空間進行訪問,大大地提高了DSP的運行速度。如:TMS320C54x系列內部有P、C、D、E等4組總線,每組總線中都有地址總線和數據總線,這樣在一個機器周期內可以完成如下操作: </p><p> (1
19、)從程序存儲器中取一條指令;</p><p> (2)從數據存儲器中讀兩個操作數;</p><p> ?。?)向數據存儲器寫一個操作數。</p><p> 1.2.3流水線技術 </p><p> DSP執(zhí)行一條之靈,需要通過取指、譯碼、取操作數和執(zhí)行等幾個階段。在DSP芯片中,采用流水線結構,在程序運行過程中這幾個階段是重疊的,如圖1
20、.2.3所示。這樣,在執(zhí)行本條指令的同時,還一次完成了后面三條指令的取操作數、譯碼和取指,大大增強了DSP的處理能力。利用這種流水線結構,加上執(zhí)行重復操作,就能保證在單指令周期內完成數字信號處理中用得最多的乘法 - 累加運算。如:</p><p> 1.2.4、多處理單元</p><p> DSP內部一般包括有多個處理單元,如算術邏輯運算單元(ALU)、輔助寄存器運算單元(ARAU)、
21、累加器(ACC)以及硬件乘法器(MUL)等。他們可以在一個指令周期內同時進行運算。DSP芯片在進行連續(xù)的乘加運算時,每一次乘加運算都是單周期的。這種多處理單元結構,特別適用于FIT和IIR濾波器。此外,許多DSP芯片的多處理單元結構還可以將一些特殊的算法,如FFT的位碼倒置尋址和取模運算等,在芯片內部用硬件實現以提高運行速度。</p><p> 1.2.5、特殊的DSP指令</p><p&g
22、t; 為了滿足數字信號處理的需要,在DSP的指令系統(tǒng)中,設計了一些完成特殊功能的指令。</p><p> 如:TMS320C54x中的FIRS和LMS指令,專門用于完成系數對稱的FIR濾波器和LMS算法。 </p><p> 1.2.6、指令周期短</p><p> 早期的DSP指令周期約200ns,采用4umNMOS制造工藝,其運算速度為5MIPS(每秒執(zhí)
23、行500萬條指令)。隨著集成電路工藝的發(fā)展,DSP廣泛采用亞微米CMOS制造工藝,其運算速度越來越快,以TMS320C54X為例,其運行速度可大100MIPS以上。</p><p> 1.2.7、運算精度高</p><p> 早期的DSP的字長為8位,后來逐步提高到16位、24位、32位。為防止運算過程中溢出,有的累加器達到40位。此外,一批浮點DSP,例如TMS320C3X、TMS3
24、20C4X等,提供了更大的動態(tài)范圍。</p><p> 1.2.8、硬件配置強</p><p> 新一代的DSP芯片具有較強的接口功能,除了具有串行口、定時器、主機接口(HPI)、DMA控制器、軟件可編程等待狀態(tài)發(fā)生器等片內外設外,還配有中斷處理器、PLL、片內存儲器、測試接口等單元電路,可以方便地構成一個嵌入式自封閉控制的處理系統(tǒng)。</p><p> 1.2
25、.9、省電管理和低功耗 </p><p> DSP功耗一般為0.5~4W,若采用低功耗技術可使功耗降到0.25W,可用電池供電,適用于便攜式數字終端設備。 </p><p> 1.3、TMS320C5X的主要特性</p><p> TMS320C54X是為實現低功耗、高性能而專門設計的定點DSP芯片,其主要應用是無線通信系統(tǒng)等。該芯片的內部結構與TMS320C
26、5X不同,因而指令系統(tǒng)與TMS320C5X和TMS320C2X等是互不兼容的。 </p><p> TMS320C54X的主要特點包括:</p><p> (1) 運算速度快。指令周期為25/20/15/12.5/10ns,運算能力為40/50/66/80/100 MIPS;</p><p> (2) 優(yōu)化的CPU結構。內部有1個40位的算術邏輯單元,2個40
27、位的累加器,2個40位加法器,1個17×17的乘法器和1個40位的桶形移位器。有4條內部總線和2個地址產生器。此外,內部還集成了維特比加速器,用于提高維特比編譯碼的速度。先進的DSP結構可高效地實現無線通信系統(tǒng)中的各種功能,如用TMS320C54X實現全速率的GSM 需12.7 MIPS,實現半速率GSM 需26.2 MIPS,而實現全速率GSM 語音編碼器僅需2.3 MIPS,實現IS-54/136 VSELP語音編碼僅需1
28、2.8 MIPS;</p><p> (3) 低功耗方式。TMS320C54X可以在3.3V或2.7V電壓下工作,三個低功耗方式(IDLE1、IDLE2和IDLE3)可以節(jié)省DSP的功耗,TMS320C54X特別適合于無線移動設備。用TMS320C54X實現IS54/136 VSELP語音編碼僅需31.1mW,實現GSM 語音編碼器僅需5.6mW;</p><p> (4) 智能外設。
29、除了標準的串行口和時分復用(TDM)串行口外,TMS320C54X還提供了自動緩沖串行口BSP(auto-Buffered Serial Port)和與外部處理器通信的HPI(Host Port Interface)接口。BSP可提供2K字數據緩沖的讀寫能力,從而降低處理器的額外開銷,指令周期為20ns時,BSP的最大數據吞吐量為50M bit/s,即使在IDLE方式下,BSP也可以全速工作。HPI可以與外部標準的微處理器直接接口。&l
30、t;/p><p> 1.4、用DSP實現正余弦函數的基本方法</p><p> 在通信、儀器和控制等領域的信號處理系統(tǒng)中,可能會用到正弦發(fā)生器。一般,產生正弦波的方法有兩種:</p><p> ?。?)查表法。此中方法用于對精度要求不是很高的場合。如果要求精度高,表就很大,相應的存儲器容量也要增大。</p><p> (2)臺勞級數展開法。
31、這是一種更為有效的方法。與查表法相比,需要的存儲單元很少,而且精度很高。</p><p> 一個角度θ的正弦和余弦函數,都可以展開成臺勞級數,取其前5項進行近似:</p><p> Sinθ=x-x3/3!+x5 /5!-x7/7!+x9/9!=x(1-x2/2*3(1-x2/4*5(1-x2/6*7(1-x2 /8*9)))</p><p> Cosθ=1-
32、x2 /2!+x 4/4!-x 6/6!+x8 /8!=1-x2 /2!(1-x2 /3*4(1-x2 /5*6(1-x 2/7*8)))</p><p> 上式中的X為θ的弧度值。</p><p> 也可以有遞推公式求正弦和余弦值:</p><p> Sin nθ=2cosθ*sin(n-1)θ-sin(n-2)θ</p><p>
33、 Cos nθ=2cosθ*cos(n-1)θ-cos(n-2)θ</p><p> 利用遞推公式計算正弦和余弦值需已知Cosθ和正、余弦的前兩個值。用這種方法,求少數點還可以,如產生連續(xù)正弦、余弦波,則積累誤差太大,不可取。</p><p> 第二章 CCS集成開發(fā)環(huán)境</p><p> 2.1 CCS開發(fā)應用程序的一般步驟</p><p
34、> 利用CCS集成開發(fā)環(huán)境,用戶可以在一個開發(fā)環(huán)境下完成工程定義、程序編輯、編譯鏈接、調試和數據分析等工作環(huán)節(jié).使用CCS開發(fā)應用程序的一般步驟為:</p><p> (1)打開或創(chuàng)建一個工程文件.工程文件中包括源程序(C或匯編)、目標文件、庫文件、連接命令文件和包含文件.</p><p> (2)編輯各類文件.如頭文件(.h文件),命令文件(.cmd文件)和源程序(.c,.a
35、sm文件)等.可以使用一般的編輯軟件或CCS集成編輯環(huán)境進行各類文件編輯.</p><p> (3)對工程進行編譯.如果有語法錯誤,將在構建(Build)窗口中顯示出來.用戶可以根據顯示的信息定位錯誤位置,更改錯誤.</p><p> ?。?)排除程序的語法錯誤后,用戶可以對計算結果/輸出數據進行分析,評估算法性能.CCS提供了探針、圖形顯示、性能測試等工具來分析數據、評估性能</
36、p><p> 圖2.1為一個典型的CCS集成環(huán)境窗口示例.整個窗口由主菜單、工具條、工程窗口、編輯窗口、圖形顯示窗口、內存單元顯示窗口和寄存器顯示窗口等構成.</p><p><b> 圖2.1</b></p><p> 2.2、建立工程文件</p><p> 與Visual Basic、Visual C以及Delp
37、hi等集成開發(fā)工具類似,CCS是采用工程(Project)來集中管理應用程序文檔的。一個工程包括匯編語言/C語言源程序、庫文件、鏈接命令文件和頭文件等。如圖2.2為工程文件名為sin的工程窗口。</p><p><b> 圖2.2</b></p><p> 2.2.1、工程文件的建立、打開和關閉</p><p> CCS集成開發(fā)環(huán)境要求,
38、對于每一個DSP開發(fā)應用項目,都要創(chuàng)建一個后綴名為.pjt的工程文件,以便于對開發(fā)應用項目的設計文檔進行管理。選擇Project→New,在彈出的對話框中鍵入新的工程文件名,如sin.pjt確認后一個新的工程文件sin.pjt便建立了,并顯示在工程文件窗口中。如要打開已有的工程文件,只要選擇Project→Open,在彈出的對話框中選擇需要的工程文件就可以了。若要關閉工程文件,只要在工程文件窗口中選擇要關閉的工程文件,再右擊后選擇Clo
39、se即可關閉。</p><p> 2.2.2、在工程文件中添加貨刪除文件</p><p> 工程文件創(chuàng)建后,就可以利用一下任何一種操作方法往工程文件中添加文件:</p><p> ?。?)在菜單欄中選擇Project→Add Files To Project。</p><p> (2)在工程窗口中右擊工程文件,在彈出的快捷菜單中選擇Ad
40、d Files To Project。</p><p> 若要移除某個文件,在彈出的快捷菜單中選擇Remove from Project即可刪除文件。</p><p> 2.2.3、編輯源文件</p><p> CCS集成編輯環(huán)境可以編輯任何文本文件(對C程序和匯編程序),可以打開多個窗口或對同一文件打開多個窗口,進行多窗口顯示.點擊主萊單命令File→
41、 New → Source File彈出編輯窗口進行編輯.</p><p> 2.2.4、工程的構建</p><p> 如上述工程文件已經建立,工程所需的文本文件(如.asm .c .cmd等文件)也已經編輯好,并且已經添加到工程文件中,即可進行工程構建了。</p><p><b> 2.3、調試</b></p><
42、p> 工程構建完成后,即可進入程序的調試階段。</p><p> 2.3.1、載入可執(zhí)行程序</p><p> 命令File → Load Program載入編譯鏈接好的可執(zhí)行程序.用戶也可以修改”Program Load”屬性,使得在構建工程后自動裝入可執(zhí)行程序.設置方法為選擇命令Options→Program Load.</p><p> 2.3.
43、2、使用反匯編工具</p><p> 在某些時候(例如調試C語言關鍵代碼),用戶可能需要深入到匯編指令一級.此時可以利用CCS的反匯編工具.用戶的執(zhí)行程序(不論是C程序或是匯編程序) 載入到目標板或仿真器時,CCS調試器自動打開一個反匯編窗口.如圖2.3所示.</p><p><b> 圖2.3</b></p><p><b>
44、 2.3.3、斷點</b></p><p> 設置斷點是調試程序的必要工具。在調試過程中,可以通過設置斷點來暫停程序運行,以便于檢查、分析程序的運行情況,觀察和修改中間變量、寄存器貨存儲單元的數值。CCS提供了兩類斷點:軟件斷點和硬件斷點。</p><p> 斷點設置,有兩種方法可以增加一條斷點。</p><p> ?。?)使用斷點對話框</p
45、><p> 選擇命令Debug →Breakpoints將彈出對話框如圖2-7所示。</p><p> 在”Breakpoint Type”欄中可以選擇”無條件斷點(Break at Location)”或”有條件斷點(Break at Location if expression is TRUE)”.在”Location”欄中填寫需要中斷的指令地址.用戶可以觀察反匯編窗口,確定指令所處地
46、址.對C代碼,由于一條C語句可能對應若干條匯編指令,難以用唯一地址確定位置.為此可以采用”filename line lineNumber”的形式定位源程序中的一條C語句.斷點類型和位置設置完成后,依次單擊”Add”和”O(jiān)K”按鈕即可.斷點設置成功后,該語句條用彩色光條顯示。</p><p> ?。?)采用工程工具條</p><p> 將光標移到需要設置斷點的語句上,點擊工程工具條上的”
47、設置斷點”按鈕.則該語句位置一斷點,默認情況下為”無條件斷點”.用戶也可以使用斷點對話框修改斷點屬性,例如將”無條件斷點”改為”有條件斷點”。</p><p><b> ?。?)斷點的刪除</b></p><p> 在圖2-7所示斷點對話框中,單擊”Breakpoint”列表中的一個斷點,然后點擊”Delete”按鈕可刪除此斷點.點擊”Delete all”按鈕或工
48、程工具條上的”取消所有斷點”按鈕,將刪除所有斷點。</p><p> ?。?)允許和禁止斷點</p><p> 在圖2.4所示斷點對話框中,單擊”Enable All”或”Disable All”將允許或禁止所有斷點.”允許”狀態(tài)下,斷點位置前的復選框有”對勾”符號.注意只有當設一斷點,并使其”允許”時,斷點才發(fā)揮作用。</p><p><b> 圖2
49、.4</b></p><p> 2.3.4、查看編輯內存</p><p> CCS允許顯示特定區(qū)域的內存單元數據.方法為選擇View Memory或單擊調試工具條上的”顯示內存數據”按鈕.在彈出對話框中輸入內存變量名(或對應地址)、顯示方式即可顯示指定地址的內存單元.為改變內存窗口顯示屬性(如數椐顯示格式,是否對照顯示等),可以在內存顯示窗口中單擊右鍵,從關聯萊單中選
50、Properties即彈出選項對話框.如圖2.5所示:</p><p><b> 圖2.5</b></p><p> 第三章 用CCS環(huán)境編程,調試實現正弦函數信號</p><p> 3.1產生正弦波的原理</p><p> 在通信、儀器和控制等領域的信號處理系統(tǒng)中,可能會用到正弦發(fā)生器。一般,產生正弦波的方法有
51、兩種:</p><p> 1、查表法。此中方法用于對精度要求不是很高的場合。如果要求精度高,表就很大,相應的存儲器容量也要增大。</p><p> 2、臺勞級數展開法。這是一種更為有效的方法。與查表法相比,需要的存儲單元很少,而且精度很高。</p><p> 一個角度θ的正弦和余弦函數,都可以展開成臺勞級數,取其前5項進行近似:</p><
52、p> Sinθ=x-x3/3!+x5 /5!-x7/7!+x9/9!=x(1-x2/2*3(1-x2/4*5(1-x2/6*7(1-x2 /8*9)))</p><p> Cosθ=1-x2 /2!+x 4/4!-x 6/6!+x8 /8!=1-x2 /2!(1-x2 /3*4(1-x2 /5*6(1-x 2/7*8)))</p><p> 上式中的X為θ的弧度值。</p
53、><p> 也可以有遞推公式求正弦和余弦值:</p><p> Sin nθ=2cosθ*sin(n-1)θ-sin(n-2)θ</p><p> Cos nθ=2cosθ*cos(n-1)θ-cos(n-2)θ</p><p> 利用遞推公式計算正弦和余弦值需已知Cosθ和正、余弦的前兩個值。用這種方法,求少數點還可以,如產生連續(xù)正弦、
54、余弦波,則積累誤差太大,不可取。</p><p><b> 3.2調試</b></p><p> 3.2.1 編寫匯編源程序sin.asm和復位向量文件sin_v.asm </p><p> 打開軟件,新建一個工程,并命名為sinoutput,在File菜單下新建一文件,并編寫程序,編寫完成后保存,并命名為sin.asm,具體程序清單見附
55、錄。</p><p> 此文件主要分為幾下幾個功能模塊:</p><p> 程序存儲器向數據存儲器傳輸數據</p><p> STM #d_coef_s, AR5</p><p><b> RPT #3</b></p><p> MVPD #table_s, *AR5+&
56、lt;/p><p> 數據代碼段.data的編寫即系數表的建立:</p><p> .data ;定義數據代碼段</p><p> table_s .word 01c7h ;c1=1/(8 * 9)</p><p> .word 030bh
57、 ;c2=1/(6 * 7)</p><p> .word 0666h ;c3=1/(4 * 5)</p><p> .word 1556h ;c4=1/(2 * 3)</p><p> 計算一個角度的正弦值</p><p> SQUR *AR2+, A ;
58、A=x^2</p><p> ST A, *AR2 ;AR2=> x^2</p><p> ||LD *AR4, B ;B=1</p><p> MASR *AR2+, *AR3+, B, A ;A=1- x^2/72</p><p><b> ;
59、T= x^2</b></p><p> MPYA A ;A=T*A=x^2(1- x^2/72)</p><p> STH A, *AR2 ;( d_temp)= x^2(1- x^2/72)</p><p> MASR *AR2-, *AR3+, B, A ;A=1- x^
60、2/42(1- x^2/72)</p><p> ;T= x^2(1- x^2/72)</p><p> MPYA *AR2+ ;B= x^2(1- x^2/42(1- x^2/72))</p><p> ST B, *AR2 ;(d_temp)=x^2(1- x^2/42(1- x^2/72))</p&g
61、t;<p> ||LD *AR4, B ;B=1</p><p> MASR *AR2- , *AR3+, B, A </p><p> ; A=1- x^2/20(1- x^2/42(1- x^2/72))</p><p> MPYA *AR2+ ;B= x^2(1- x^2/20(1- x^2/42(1
62、- x^2/72)))</p><p> ST B, *AR2 ;(d_temp)=B=…</p><p> ||LD *AR4, B ;B=1</p><p> MASR *AR2-,*AR3+,B,A </p><p> ;A=1- x^2/6(1- x^2/20(1- x^2/42(1-
63、 x^2/72)))</p><p> MPYA d_xs ;B=x(1-x^2/6(1-x^2/20(1-x^2/42(1-x^2/72))))</p><p> STH B, d_sinx ;sin(theta)</p><p> 計算從O(deg.)到90(deg.)的正弦值</p><p> STM
64、#90, BRC </p><p> RPTB loop1-1</p><p> LDM AR1, A</p><p> LD # d_xs, DP</p><p> STL A,@d_xs</p><p> STL A,@d_xc</p><p> CAL
65、L sinx ; (d sinx) = sin(x)</p><p> CALL cosx ; (d cosx) = cos(x)</p><p> LD #d_sinx,DP</p><p> LD @d_sinx,16,A ; A= sin(x)</p>&
66、lt;p> MPYA @d_cosx ; B= sin(x) * cos(x)</p><p> STH B,1, *AR6+ ;AR6-->2 * sin(x) * cos(x)</p><p> MAR *AR1+0</p><p> 計算從91(deg.)到179(deg.)的正弦值</p&
67、gt;<p> STM #sin_x+89,AR7 </p><p> STM #88, BRC</p><p> RPTB loop2-1</p><p> LD *AR7-,A</p><p> STL A, *AR6+</p><p> 計算從180(deg.)到
68、359(deg.)的正弦值</p><p> STM #179 , BRC </p><p> STM #sin_x, AR7</p><p> RPTB loop3-1</p><p> LD *AR7+, A</p><p><b> NEG A</b&
69、gt;</p><p> STL A, *AR6+</p><p> 計算一個角度的余弦值</p><p> SQUR *AR2+, A ; A= x-2</p><p> ST A, *AR2 ;(AR2)= x'2</p><p&g
70、t; ||LD *AR4,B ;B=1</p><p> MASR *AR2+, *AR3+,B,A ;A=I-x-2/56</p><p><b> ;T= x2</b></p><p> MPYA A ;A=T * A=x2(1-x2/56)&
71、lt;/p><p> STH A, *AR2 ;(d temp) =x'2(1-x2/56)</p><p> MASR *AR2-, *AR3+,B,A ;A=1-x2/30(1-x2/56)</p><p> ;T=x2(1-x2/56)</p><p> MPYA *AR2
72、+ ;B=x2(1-x'2/30(1-x2/56))</p><p> ST B, *AR2 ;(d temp)=x'2(1-x2/30(1-x'2/56))</p><p> ||LD *AR4, B ;B=1</p><p> MASR *
73、AR2-, * AR3+,B,A ;A=1-x2/12(1-x'2/30(1-x2/56))</p><p> SFTA A,-1,A ;-1/2</p><p><b> NEG A</b></p><p> MPYA *AR2+ ;B=-x'2/2(
74、1-x'2/12(1-x'2/30</p><p> ;(1-x'2/56) ))</p><p> MAR *AR2+</p><p><b> RETD</b></p><p> ADD *AR4,16,B ;B=1-x'2/2(1-x'2
75、/12(1-x2/30</p><p> ;(1-)c2/56)))</p><p> STH B, *AR2 ;cos(theta)</p><p> 3.2.2 編寫鏈接命令文件sin.cmd</p><p> 在File菜單下,新建一文件,編寫鏈接命令程序,命名為sin.cmd并保存。連接命令文件主要
76、是對程序和數據存儲空間的分配,并控制著整個程序的執(zhí)行。</p><p> 3.2.3具體調試過程</p><p> ?。?)、如上所述,先建立一個名為sinoutput的工程文件夾,在File菜單下新建編寫匯編源程序sin.asm、復位向量文件sin_v.asm和鏈接命令文件sin.cmd,并建立一個空的文件,命名為sin.DAT,以輸出數據所用。</p><p>
77、; ?。?)、文件建立完成后,加載到工程文件中,加載完成后,會出現如圖3.1所示的界面:</p><p><b> 圖3.1</b></p><p> 在加載的過程中,要注意對GEL函數的加載,加載完成后保存,并將軟件關閉重新啟動,再次打開軟件后,會在c5402sim.gel文件中發(fā)現如下所示的GEL函數設置:</p><p> Gel-
78、MapAdd(0x0000u,2,0x0001u,0,1);以設置I/O口:輸入口的地址為0x0001u,輸出口的地址為0x0000u。</p><p> 、對文件進行編譯,如果編譯沒有錯誤,即出現如圖3.2所示的提示框后,選擇File/Load Program命令,選擇sin.out文件,并加載。</p><p><b> 圖3.2</b></p>
79、<p> ?。?)、將數據文件與I/O口地址相關聯。選擇Tools/PortConnect命令,打開連接對話框。單擊Connect按鈕,在彈出的Connect對話框中,進行如圖3.3所示進行設置就可以了,設置完成后,會出現如圖3.4所示的窗口。</p><p><b> 圖3.3</b></p><p><b> 圖3.4</b>
80、</p><p><b> 3.3調試結果</b></p><p> 運行程序,計算結果共512個樣點,保存在sin.DAT中。選擇View/Graph/TimeFrequency命令,在彈出的對話框中設置參數(見圖3.5),就可</p><p><b> 圖3.5</b></p><p>
81、 以根據存儲器中的數據畫出正弦波了,如圖3.6所示。在sin.DAT中也會有輸出的數據,如圖3.7所示。</p><p><b> 圖3.6</b></p><p><b> 圖3.7</b></p><p><b> 第四章 設計心得</b></p><p> 每次課
82、程設計總會讓我們學到很多知識,讓我們將課本上學到的知識在實踐操作中,讓我們加深對課本理論知識的理解和掌握,也提高了我們得實踐操作能力。我覺得做課程設計是十分有意義的,這不僅是鍛煉培養(yǎng)獨立分析與解決問題的能力,也是一次團隊合作開發(fā)過程。</p><p> 通過這次用DSP來實現正弦函數的課程設計,我更熟悉了CCS的開發(fā)環(huán)境以及正弦波的設計、運行和調試整個過程。在用CCS軟件仿真的過程中,由于程序文件在書寫過程中出
83、現了格式的錯誤,有些字母漏掉或者輸入錯誤,導致我在仿真的過程中,編譯出現了很多的錯誤,影響了仿真的效率。不過,在我一遍遍的查找課本、同學的幫助下我終于更正了錯誤,最終得到正確的仿真波形圖,這使我意識到在進行實驗的過程中哪怕一個細節(jié)的錯誤也會導致實驗的失敗,也警示我在以后的工作和生活中要養(yǎng)成細心的習慣。</p><p> 在我們的生活和學習中,總會遇到這樣那樣的問題,解決問題需要有一個好的學習態(tài)度。DSP的實訓,
84、讓我知道,生活中我不僅有書本,更是有同學、朋友的,遇到問題不要一個人只看課本,還要和同學溝通,互相學習。畢竟三人行必有我?guī)熝?,遇到問題我們要向身邊的人學習。</p><p><b> 參考文獻</b></p><p> 1、《數字信號處理的硬件實現》 戴明楨主編 航空工業(yè)出版社 1998年5月</p><p> 2、《TMS320
85、C54X》DSP結構、原理及應用 戴明楨、周建江主編 北京航空航天大學出版社 2001年6月</p><p> 3、《DSP基本理論與應用技術》 李哲英主編 機械出版社 2003年4月</p><p> 4、《TMS320C54x DSP應用程序設計與開發(fā)》 劉益成編 機械工業(yè)出版社 2001年3月</p><p> 5、《DSP集成開發(fā)與應用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設計--dsp原理及應用
- dsp課程設計--dsp原理及應用實驗報告
- dsp原理與應用課程設計信號采集和濾波dsp程序設計
- 《微機原理與應用》課程設計
- dsp課程設計報告--dsp芯片應用系統(tǒng)設計
- dsp原理及應用課程設計--- 基于dsp的指紋生物特征識別統(tǒng)的設計
- dsp原理及應用課程設計--基于dsp的指紋生物特征識別統(tǒng)的設計
- dsp課程設計
- dsp技術及應用課程設計報告
- dsp課程設計---dsp芯片簡介
- dsp課程設計報告
- dsp課程設計實驗
- 微機原理及應用課程設計
- dsp課程設計報告
- dsp課程設計實驗
- dsp課程設計論文
- dsp課程設計cll
- dsp應用原理課程設計---基于tms320f2812 dsp處理器的信號儀的設計與實現
- dsp原理與應用課程設計---基于泰勒級數算法正弦信號的c54實現
- dsp課程設計fft的dsp實現
評論
0/150
提交評論