DSP復(fù)習(xí)總資料_第1頁
DSP復(fù)習(xí)總資料_第2頁
DSP復(fù)習(xí)總資料_第3頁
DSP復(fù)習(xí)總資料_第4頁
DSP復(fù)習(xí)總資料_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1、 C55x 的鏈接器命令文件中,SECTIONS命令的主要作用是 告訴鏈接器如何將輸入段組合成輸出段,以及在存儲器何處存放輸出 。MEMORY命令的主要作用是 定義目標(biāo)系統(tǒng)的存儲器配置圖,包括對存儲器各部分的命名,以及規(guī)定它們的起始地址和長度 。2、 若鏈接器命令文件的MEMORY部分如下所示: MEMORY PAGE 0: PROG: origin=C00h, length=1000h PAGE 1: DATA: origin=80h, length=200h 則下面說法不正確的是(B) A、 程序存儲器配置為4K字大小 B、程序存儲器配置為8K字大小 C、 數(shù)據(jù)存儲器配置為512字大小

2、 D、數(shù)據(jù)存儲器取名為DATA3、TI公司的定點DSP產(chǎn)品主要有TMS320C2000系列、TMS320C5000系列和 TMS320C6000 系列。4、TMS320VC5509 DSP的CPU具有1條讀程序數(shù)據(jù)總線,5條數(shù)據(jù)總線,與它們對應(yīng)的地址總線總共6條。5、DSP的內(nèi)部存儲器類型可分為隨機(jī)存取存儲器(RAM)和只讀存儲器(ROM)。其中RAM又可以分為兩 種類型:單尋址RAM(SARAM)和雙尋址RAM(DARAM)。6、COFF目標(biāo)文件中.text段通常包含可執(zhí)行代碼,.data段通常包含己初始化的數(shù)據(jù),.bss段中通常為未初始化的數(shù)據(jù)保留空間。7、DSP芯片按照其用途分類,可以分

3、為通用型和專用型兩種。8、復(fù)位電路有三種方式,分別是上電復(fù)位、手動復(fù)位、軟件復(fù)位。在鏈接器命令文件中,PAGE 0通常指程序存儲空間,PAGE 通常指數(shù)據(jù)存儲空間。 9、DSP處理器按數(shù)據(jù)格式分為兩類,分別是定點DSP和浮點DSP。10、TMS320C54X可編程定時器的定時周期 =(時鐘周期)*(TDDR+1)*(PRD +1)。11、仿真系統(tǒng)中,主機(jī)通過仿真器與目標(biāo)系統(tǒng)的JTAG接口相連。12、C55xDSP的存儲空間包括:統(tǒng)一的數(shù)據(jù)、程序空間和I/O空間。13、TI公司的定點DSP產(chǎn)品主要有 TMS320C2000 系列、TMS320C5000系列和 TMS320C6000 系列。14、

4、TMS320VC5509 DSP依據(jù)功能的不同,將其CPU分為了四個主要的單元,即指令緩沖單元、程序流程單元、地址數(shù)據(jù)流程單元、數(shù)據(jù)計算單元。1、 TMS320C55x 芯片的總線結(jié)構(gòu)有何特點,主要包括哪些總線?答:TMS320C55x DSP采用先進(jìn)的哈佛結(jié)構(gòu)并具有十二組總線,其獨立的程序總線和數(shù)據(jù)總線允許同時讀取指令和操作數(shù),實現(xiàn)高度的并行操作。采用各自分開的數(shù)據(jù)總線分別用于讀數(shù)據(jù)和寫數(shù)據(jù),允許CPU在同一個機(jī)器周期內(nèi)進(jìn)行兩次讀操作數(shù)和一次寫操作數(shù)。獨立的程序總線和數(shù)據(jù)總線允許CPU同時訪問程序指令和數(shù)據(jù)。 包括12條總線,分別是:PAB和PB、BAB和BB、CAB和CB、DAB和DB、E

5、AB和EB、FAB和FB。2、 DSP 為了降低功耗采取了哪些措施?答:雙電壓供電;多種工作模式3、 什么是定點DSP芯片和浮點DSP芯片?各有什么優(yōu)缺點? 答:按數(shù)據(jù)的定點格式工作的DSP芯片稱為定點DSP; 按數(shù)據(jù)的浮點格式工作的DSP芯片稱為浮點DSP; 定點DSP的價格便宜,功耗低,但運算精度低; 浮點DSP的價格較高,C語言編程調(diào)試方便,運算精度高。5、簡述流水線操作的基本原理。流水線操作是各指令以機(jī)器周期為單位相差一個時鐘周期,連續(xù)并行工作的情況。其本質(zhì)是DSP多條總線彼此獨立地同時工作,使得同一條指令在不同機(jī)器周期內(nèi)占用不同總線資源。同時,不同指令在同一機(jī)器周期內(nèi)占用不同總線資源

6、。6、簡述COFF文件中“ 段”的概念,有哪些常用的段?答:段是COFF文件中最重要的概念。每個目標(biāo)文件都分成若干段。段是存儲器中占據(jù)相鄰空間的代碼或數(shù)據(jù)塊。一個目標(biāo)文件中的每個段都是分開的和各不相同的。 .text 段(文本段),通常包含可執(zhí)行代碼; .data 段(數(shù)據(jù)段),通常包含初始化數(shù)據(jù); .sect段已初始化段,由匯編器偽指令建立的自定義段。 .bss段未初始化段; .usect段未初始化段,由匯編命令建立的命名段(自定義段)。7、簡述鏈接器命令文件中MEMORY和SECTIONS兩條指令的作用。 答:MEMORY偽指令用來定義目標(biāo)系統(tǒng)的存儲器配置空間,包括對存儲器各部分命名,以及

7、規(guī)定它們的起始地址和長度。 SECTIONS偽指令用來指定鏈接器將輸入段組合成輸出段方式,以及輸出段在存儲器中的位置,也可用于指定子段。8、簡述馮·諾依曼結(jié)構(gòu)、哈佛結(jié)構(gòu)和改進(jìn)的哈佛結(jié)構(gòu)之間的區(qū)別。 答:馮·諾伊曼(Von Neuman)結(jié)構(gòu)采用單存儲空間,即程序指令和數(shù)據(jù)共用一個存儲空間,使用單一的地址和數(shù)據(jù)總線,取指令和取操作數(shù)都是通過一條總線分時進(jìn)行。當(dāng)進(jìn)行高速運算時,不但不能同時進(jìn)行取指令和取操作數(shù),而且還會造成數(shù)據(jù)傳輸通道的瓶頸現(xiàn)象,其工作速度較慢。 哈佛(Harvard)結(jié)構(gòu)采用雙存儲空間,程序存儲器和數(shù)據(jù)存儲器分開,有各自獨立的程序總線和數(shù)據(jù)總線,可獨立編址和獨

8、立訪問,可對程序和數(shù)據(jù)進(jìn)行獨立傳輸,使取指令操作、指令執(zhí)行操作、數(shù)據(jù)吞吐并行完成,大大地提高了數(shù)據(jù)處理能力和指令的執(zhí)行速度,非常適合于實時的數(shù)字信號處理。 改進(jìn)型的哈佛結(jié)構(gòu)是采用雙存儲空間和數(shù)條總線,即一條程序總線和多條數(shù)據(jù)總線。允許在程序空間和數(shù)據(jù)空間之間相互傳送數(shù)據(jù),使這些數(shù)據(jù)可以由算術(shù)運算指令直接調(diào)用,增強(qiáng)芯片的靈活性;提供了存儲指令的高速緩沖器(cache)和相應(yīng)的指令,當(dāng)重復(fù)執(zhí)行這些指令時,只需讀入一次就可連續(xù)使用,不需要再次從程序存儲器中讀出,從而減少了指令執(zhí)行作需要的時間。9、簡述DSP處理器中斷系統(tǒng)分為幾種中斷答:硬件中斷:由片外管腳和片內(nèi)外設(shè)引起的中斷,又分為可屏蔽中斷和非屏

9、蔽中斷。 軟件中斷:軟件中斷是由程序指令產(chǎn)生的中斷請求。10、簡述DSP定時器的組成部分、各部分分別起什么作用? 答:定時器主要由定時寄存器TIM、定時周期寄存器PRD、定時控制寄存器TCR及相應(yīng)的邏輯控制電路組成。定時周期寄存器PRD用來存放定時時間,定時寄存器TIM為16位減1計數(shù)器,定時控制寄存器TCR存放定時器的控制位和狀態(tài)位,邏輯控制電路用來控制定時器協(xié)調(diào)工作。11、根據(jù)你的理解,試列舉 DSP 芯片的特點?答:哈佛結(jié)構(gòu);多總線結(jié)構(gòu);指令系統(tǒng)的流水線操作;專用的硬件乘法器;特殊的DSP指令;快速的指令周期;豐富的外設(shè) 12、名詞解釋指令周期:執(zhí)行一條指令所需的時間,常以ns為單位。M

10、AC(Multiply-Accumulate Unit )時間:一次乘加運算的時間。大部分DSP芯片可在一個指令周期內(nèi)完成一次乘法和加法操作。FFT執(zhí)行時間:運行一個N點FFT程序所需的時間。FFT是典型的DSP算法運算,因此FFT運算時間常作為衡量 DSP芯片運算能力的一個指標(biāo)。IPS/MFLOPS( Million Instructions Per Second/Million Floating-point Operations per Second):每秒執(zhí)行百萬條指令和每秒百萬條浮點操作。MOPS:每秒執(zhí)行百萬次操作。 BOPS:每秒執(zhí)行十億次操作。13、問題:假定輸入時鐘頻率CLKI

11、N為20MHz,而DSP需要的工作時鐘為160MHz。解: (1)需要將時鐘發(fā)生電路設(shè)為鎖定模式;(2)根據(jù)倍頻次數(shù)PLL_MULT與分頻次數(shù)PLL_DIV的關(guān)系所以:PLL_MULT =8×(PLL_DIV+1)PLL_DIV和PLL_MULT為(0,8),(1,16),(2,24)或(3,32)(3) 取PLL_DIV和PLL_MULT為(0,8),若要求DPLL失鎖或退出省電狀態(tài)后重新鎖定,即IOB=IAI=1。則:MOV #0X6413,PORT(#CLKMD)0110 0100 0001 001114、C5509 DSP片內(nèi)有兩個定時器:Timer0,Timer1;具有定時

12、或計數(shù)功能。計數(shù)器在每個時鐘周期減1,當(dāng)減到0就產(chǎn)生一個輸出信號。該輸出信號可用于中斷CPU或觸發(fā)DMA傳輸(稱為定時器事件)。定時長度為20比特:4比特的預(yù)定標(biāo)器和16比特的主計數(shù)器。其中,4比特的預(yù)定標(biāo)值由預(yù)定標(biāo)寄存器PRSC定義:16比特主定時器的值由定時周期寄存器PRD定義。設(shè)定時器的工作時鐘周期為Tclock,則定時長度T可用下式計算: TTclock×(PRD+1)×(TDDR+1)15、定時器的設(shè)置步驟:1)CPU將定時長度的預(yù)定標(biāo)值和周期值分別寫入TDDR和PRD。2)將控制寄存器TCR中的TLB設(shè)為1,使定時器把PRD值和 TDDR值分別拷貝到它的工作寄存

13、器TIM和PSC中。3)把控制寄存器TCR中的TSS字段設(shè)為0啟動定時器。16、假定定時器0的工作時鐘為160MHz,請配置定時長度為5ms的定時器。根據(jù)定時器公式:即(PRD+1)×(TDDR+1)800000取TDDR=15(0x0F)、PRD=49999(0xC34F)。17、DSP的存儲結(jié)構(gòu)1)程序空間:用于存取執(zhí)行的指令代碼和執(zhí)行指令時用到的表。2)數(shù)據(jù)空間:用于存儲指令需要的數(shù)據(jù)、映射寄存器(MMR);3)I/O空間:提供對外設(shè)寄存器的訪問。數(shù)據(jù)空間被分成128個主數(shù)據(jù)頁(0-127),每個數(shù)據(jù)頁64K的字地址,指令通過7比特的主數(shù)據(jù)頁指針和16比特的偏移量,可以訪問任何

14、一個主數(shù)據(jù)頁中的任何一個地址。18、存儲映射寄存器(MMR)位于第0數(shù)據(jù)頁,占用00 0000h00 005Fh地址的數(shù)據(jù)空間19、C55x支持三種類型的尋址方式絕對尋址模式、直接尋址模式、間接尋址模式20、TMS320C5509支持32個中斷服務(wù)程序(ISR),中斷處理的四個步驟:(1) CPU接收中斷請求,掛起當(dāng)前程序;(2) 響應(yīng)中斷請求:可屏蔽中斷須滿足某些條件,非屏蔽中斷立即響應(yīng)。(3) 準(zhǔn)備中斷服務(wù)程序 CPU完成當(dāng)前的指令執(zhí)行,清除流水線中未譯碼的指令。 在數(shù)據(jù)堆棧和系統(tǒng)堆棧中保存相關(guān)寄存器的內(nèi)容, 從中斷矢量表中取出中斷矢量,中斷矢量指針(IVPD、IVPH)指向中斷服務(wù)程序。

15、(4) 執(zhí)行中斷服務(wù)程序ISR包含中斷返回指令,當(dāng)中斷返回時,自動恢復(fù)以前保存在寄存器中的內(nèi)容。21、可屏蔽中斷處理流程:22、鏈接器命令文件(1)作用 利用鏈接器命令語言來編制鏈接器命令文件(.cmd),應(yīng)用MEMORY和SECTIONS命令可靈活自行配置目標(biāo)系統(tǒng)的存儲空間,為各段指定地址。 允許用戶將鏈接信息放入一個文件中,以便于在相同情況下的多次調(diào)用。(2) 內(nèi)容 輸入文件名 鏈接器選項 MEMORY和SECTIONS命令,MEMORY用于指定目標(biāo)存儲器配置,SECTIONS用于指定段的地址; 23、鏈接命令文件matrixmpy.cmd內(nèi)容如下:matrixmpy.obj ;輸入的目標(biāo)

16、文件-o matrixmpy.out ;輸出的可執(zhí)行文件-e mpy_start ;程序的入口地址MEMORY PAGE 0: DARAM : org0000C0h len0FF3Fh SARAM : org010000h len03FF00h SECTIONS mpy_result: > DARAM PAGE 0 mpy _prog: > SARAM PAGE 0 mpy_ data: > SARAM PAGE 0 該命令文件分為三個部分:1)輸入/輸出文件和選項部分;2)由MEMORY命令定義目標(biāo)存儲器的配置;3)由SECTIONS命令定義各段的定位。MEMORY命令:S

17、ECTIONS命令可以指定各個段的存儲地址,一般語法如下。SECTIONS name : property, property, property, name : property, property, property, 其中:name 表示段的名稱,是在程序中定義的,如:mpy_prog。property 為該段的屬性,包括段的內(nèi)容以及如何定位等。24、軟件開發(fā)流程25、存儲器分配26、例題鏈接命令文件如下,請參看每個語句注釋a.obj b.ob c.obj /*輸入被鏈接的文件名*/-o prog.out /*選擇輸出的可執(zhí)行文件名prog.out*/-m prog.map /*選擇ma

18、p 文件名prog.map*/-l rts2800.lib /*鏈接運行時支持庫*/MEMORY /* MEMORY 命令*/RAM: origin=100h length=100h /*RAM 存儲器的起始地址與長度*/ROM: origin=1000h length=100h /*ROM 存儲器的起始地址與長度*/SECTIONS /*SECTIONS 命令*/.text: >ROM /*將.text 段分配到ROM*/.data: >ROM /*將.data 段分配到ROM*/.bss: >RAM /*將.bss 段分配到RAM*/.pint: >ROM /*將.

19、pint 段等分配到對應(yīng)的存儲器*/27、例題將DSP 的數(shù)據(jù)存儲器80000H 開始的16 個單元復(fù)制到80100H 開始的單元。main( )int i;unsigned int *px, *py, *pz; /定義3 個指向無符號整型的指針px=(unsigned int *)0x80000;py=(unsigned int *)0x80100;for ( i=0, pz=px; i<16;i+, pz+ )(*pz)=i; /0x800000x8000F 單元分別賦值015for ( i=0, pz=py; i<16;i+,pz+ )(*pz)=0x1234; /0x801000x8010F 單元均賦值0x1234for ( i=0; i<16; i+, px+, py+ )(*py)=(*px); /將80000H 開始的16 個單元復(fù)制到80100H 開始的單元。while(1) ;28、直接在 C 語言程序中相應(yīng)位置嵌入?yún)R編語句,只需在匯編語句加上雙引號和小括號,前面加asm 標(biāo)識符號, 稱為 ASM 語句(ASM Statement)。一般格式為,asm (“ 匯編語句”)例如,asm (“NOP”);29、關(guān)鍵字interrupt該擴(kuò)展關(guān)鍵字用來說明定義的函數(shù)是一個中斷函

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論