版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、一、選擇題二、判別題三、填空題1累加器A分為三個部分,分別為( )、( )、( )。答:AG,AH,AL2TMS320VC5402型DSP的內(nèi)部采用( )條( )位的多總線結(jié)構(gòu)。答:8,16 3TMS320VC5402型DSP采用( )總線結(jié)構(gòu)對程序存儲器和數(shù)據(jù)存儲器進(jìn)行控制。答:哈佛4TMS329VC5402型DSP有( )個輔助工作寄存器。答:8個5DSP處理器TMS320VC5402中DARAM的容量是( )字。答:16K字6TI公司的DSP處理器TMS320VC5402有( )個定時器。答:2 7在鏈接器命令文件中,PAGE通常指( )存儲空間。答:數(shù)據(jù)8C54x的中斷系統(tǒng)的中斷源分為
2、( )中斷和( )中斷。答:硬件、軟件9TI公司DSP處理器的軟件開發(fā)環(huán)境是( )。答:CCS(CodeComposerStudio) 10DSP處理器TMS320VC5402外部有( )根地址線。答:20根11直接尋址中從頁指針的位置可以偏移尋址( )個單元。答:12812在鏈接器命令文件中,PAGE 0通常指( )存儲空間。 答:程序13C54x系列DSP處理器中,實現(xiàn)時鐘頻率倍頻或分頻的部件是( )。答:鎖相環(huán)PLL 14TMS320C54x系列DSP處理器上電復(fù)位后,程序從指定存儲地址( )單元開始工作。答:FF80h 15TMS320C54x系列DSP處理器有( )個通用I/O引腳,
3、分別是( )和( )。答:2個,BIO,XF 16DSP處理器按數(shù)據(jù)格式分為兩類,分別是( )、( )。答:定點(diǎn)DSP和浮點(diǎn)DSP17TMS320C54x型DSP的ST1寄存器中,INTM位的功能是( )。答:開放/關(guān)閉所有可屏蔽中斷18TMS320C54XDSP主機(jī)接口HPI是( )位并行口。答:8 19.在C54X系列中,按流水線工作方式,分支轉(zhuǎn)移指令分為哪兩種類型:( )、( )。答:無延遲分支轉(zhuǎn)移,延遲分支轉(zhuǎn)移20.C54x的程序中,“.bss”段主要用于( )。 答:為變量保留存儲空間21.從數(shù)據(jù)總線的寬度來說,TMS320C54X是( )位的DSP處理器。答:16位22.TMS32
4、0C54X型DSP處理器的內(nèi)核供電電壓( )伏。答:1.8v23.TMS320C5402系列DSP處理器最大的數(shù)據(jù)存儲空間為( )字。答:64K 25.DSP技術(shù)是利用專用或通用數(shù)字信號處理芯片,通過( )運(yùn)算的方法對信號進(jìn)行處理。答:數(shù)值運(yùn)算26.C54x的程序中,“.text”段是( )段,主要包含( )。答:文本段,可執(zhí)行文本27.C54x系列DSP上電復(fù)位后的工作頻率是由片外3個管腳( ) ( ) ( )來決定的。答:CLKMD1、CLKMD2、CLKMD3 28.DSP處理器TMS320C5402最大的程序存儲空間為( )字。答:1M 29.從應(yīng)用領(lǐng)域來說,MCU(單片機(jī))主要用于(
5、 );DSP處理器主要應(yīng)用于( )。答:控制領(lǐng)域;信號處理 30.TMS320C54XDSP提供一個用16位堆棧指針(SP)尋址的軟件堆棧。當(dāng)向堆棧中壓入數(shù)據(jù)時,堆棧是從( )地址向( )地址方向填入。 答:高 低 31.TMS320C54XDSP軟硬件復(fù)位時,復(fù)位中斷向量的地址為程序空間的( )。 答:FF80H 32.TMS320C54X可編程定時器的定時周期=(時鐘周期)*(分頻系數(shù)TDDR+1)*( +1)。答:PRD 33.DSP處理器的英文全稱( )。答:DigitalSignalProcessor 34.DSP處理器TMS320VC5402的IO管腳供電電壓( )伏。答:3.3v
6、35.C54x的程序中,“.data”段是( )段,主要用于( )。答:數(shù)據(jù)段,通常包含初始化數(shù)據(jù);36.DSP處理器TMS320C5402的I/O空間為( )字。答:64K 37TMS320C5402型DSP的累加器是( )位。答:40 38TMS320C5402型DSP的MP/MC管腳的功能是( )。 答:微計算機(jī)或是微處理器工作模式39TMS320C5402型DSP的CPU采用( )寄存器作為專用硬件實現(xiàn)移位功能。答:桶形移位寄存器40匯編語句“STLA,y”中“y”表示( )尋址方式。 答:直接尋址 41TMS320C54X型DSP的ST1寄存器中,CPL位的功能是指示( )。答:直接
7、尋址采用何種指針(DP或SP) 42解釋匯編語句“READA*AR1”的功能:( )。答:以累加器A的內(nèi)容作為地址讀取程序存儲單元,將讀取的數(shù)據(jù)存入以AR1的內(nèi)容作為地址的數(shù)據(jù)存儲單元中43TMS320C54X具有兩個通用I/O口,( )用于輸入外設(shè)的狀態(tài);( )用于輸出外設(shè)的控制信號。答:BIO,XF 44.哈佛結(jié)構(gòu)是采用雙存儲空間,即 ( )和( )分開編址,允許同時取指令和取操作數(shù),效率高。答: 程序空間、數(shù)據(jù)空間45. 改進(jìn)的哈佛結(jié)構(gòu)是允許 ( )與( )之間直接進(jìn)行數(shù)據(jù)傳送。答:程序存儲器、數(shù)據(jù)存儲器46.諾依曼結(jié)構(gòu)是采用單存儲空間,即 ( )和 ( )共用一個存儲空間,使用單一的地
8、址和數(shù)據(jù)總線,取( )和( )都是通過一條總線分時進(jìn)行。答:程序指令、數(shù)據(jù)、指令、取操作數(shù)47.流水線技術(shù)是每條指令可通過片內(nèi)多功能單元完成( )、( )、( )和( )等多個步驟,實現(xiàn)多條指令的( )執(zhí)行,從而在不提高系統(tǒng)時鐘頻率的條件下減少每條指令的執(zhí)行時間。答:取指、譯碼、取操作數(shù)、執(zhí)行指令、并行48TMS320C54x采用改進(jìn)的哈佛結(jié)構(gòu)。存儲空間由三個獨(dú)立可選的存儲空間組成:存儲容量大小分別為( )字的程序存儲空間、( )的數(shù)據(jù)存儲空間、( )的I/O存儲空間。答:64k,64k字,64k字49 TMS320C54x的處理器工作方式狀態(tài)寄存器PMST提供了三個控制位:MP/非MC、OV
9、LY、DROM,用于在存儲空間中配置片內(nèi)存儲器。當(dāng)“MP/非MC”=( 1 )時工作于MP方式; OVLY=( 0 )時片內(nèi)RAM不映射到程序空間; DROM=( 0 )時片內(nèi)ROM不映射到數(shù)據(jù)空間。答:1,0,050 PMST工作方式狀態(tài)寄存器中的IPTR(15-7bit)的作用是( 用于設(shè)置中斷矢量頁地址 )。答:用于設(shè)置中斷矢量頁地址51外部程序存儲空間的訪問控制信號為( PS )、MSTRB、RW。答:PS52外部數(shù)據(jù)存儲空間的訪問控制信號為( DS )、MSTRB、RW。答:DS四、程序閱讀題1.閱讀下面的程序片斷,寫出運(yùn)行結(jié)果。.mmregsbei:.set18;定義常量 LD#b
10、ei,A 問題:(1)“.mmregs”的作用是什么? (2)運(yùn)行此段程序后,累加器A的結(jié)果是多少?答:定義存儲器映像寄存器的符號名稱A的結(jié)果是18 2.閱讀下面的程序,回答問題。 .sect.vectors rst:B_c_int00 ;復(fù)位中斷向量的入口NOPNOP.space18*4*16 tint:Btimeout ;定時器0的中斷向量的入口NOPNOP 問:(1)“.sect”偽指令的作用是什么? (2)標(biāo)號“rst”的地址為6000H,請問標(biāo)號“tint”的地址是多少?答:定義一個自定義段名的程序段604Ch 3.閱讀下面的命令連接文件(簡稱CMD文件)和程序文件:CMD文件:ME
11、MORY PAGE0:PROG:origin=0x1000,length=0x1000PAGE1:DATA:origin=0x2000,length=0x1000 SECTIONS.text:PROGPAGE0.data: DATAPAGE1 程序文件:.data table:.word 1,2,3,4;變量初始化.text start:STM#0,SWWSR;插入0個等待狀態(tài)問:(1)MEMORY和SECTIONS的作用各是什么?(2)標(biāo)號“table”和“start”的地址分別是什么,分別位于程序空間還是數(shù)據(jù)空間?答:(1)MEMORY和SECTIONS鏈接偽指令,用來指定目標(biāo)存儲器結(jié)構(gòu)和
12、地址分配。 (2)標(biāo)號start:1000h(程序空間);標(biāo)號table: 2000h(數(shù)據(jù)空間) 4.閱讀下面的程序,回答問題。 MEMORY PAGE0:PROG:origin=0x2000,length=0x1000PAGE1:DATA:origin=0x3000,length=0x1000 SECTIONS.text:PROGPAGE0.bss : DATAPAGE1 匯編程序: .bssa,4;分配4個單元給a.bssx,4.bssy,1STM#a,AR3 STM#x,AR4RPT#3 MAC*AR3+,*AR4+,ASTLA,*(y)問題:(1)指令“STM#a,AR3”的作用是什
13、么?執(zhí)行此句指令后,寄存器AR3的內(nèi)容是多少?(2)指令“MAC*AR3+,*AR4+,A”執(zhí)行了幾次?每執(zhí)行一次寄存器AR3和AR4的內(nèi)容如何變化?(3)這段代碼的功能是什么?答:(1)將標(biāo)號a的地址賦給輔助工作寄存器AR3,AR3=3000h。(2)執(zhí)行了4次,每執(zhí)行一次輔助工作寄存器AR3和AR4的內(nèi)容增一。 (3)5.閱讀下面的程序,回答問題。MEMORY PAGE0:PROG:origin=0x2000, length=0x1000PAGE1:DATA:origin=0x4000, length=0x1000 SECTIONS.text:PROGPAGE0STACK: DATAPAG
14、E1 匯編程序: size:.set0x0120 stack: .usect“.STACK”,size;本命令也可寫成 stack .usect“STACK”,size.text STM#stack+size,SP問題:(1)指令“stack:.usect“.STACK”,size”的作用是什么?(2)標(biāo)號“stack”的存儲器地址是多少?(3)執(zhí)行這段代碼之后,SP寄存器的內(nèi)容是多少?答:(1)定義一個未初始化段,段名為”STACK”,目的是為變量stack保留size個單元的存儲空間。 (2)stack的存儲空間為0x4000; (3)SP=0x4120;6. 閱讀下面的程序,回答問題。M
15、EMORYPAGE0:EPROM:org=0E000h,len=100hVECS:org=0FF80h,len=04hPAGE1:SPRAM:org=0060h,len=20hDARAM:org=0080h,len=100hSECTIONS .text:EPROM PAGE0.data:EPROM PAGE0.bss:SPRAM PAGE1STACK :DARAM PAGE1vectors:VECSPAGE0 匯編程序: .usect“STACK”,10h;.sect “vectors” ;.bss x 4;.datadata:.word 1 2 3;.text 問題:(1)該文件是如何配置程
16、序空間和數(shù)據(jù)空間的?(2)該文件中出現(xiàn)了幾個段?哪些是初始化段?哪些是未初始化段?各段是如何分配的?答:(1)該文件使用MEMORY偽指令將程序空間劃分為兩個小區(qū)間:名為EPROM的區(qū)間其起始地址為0E000h,長度為100h字;名為VECS的區(qū)間其起始地址為0FF80h,長度為4字。將數(shù)據(jù)空間也分為了兩個小區(qū)間:名為SPRAM的區(qū)間其起始地址為0060h,長度為20h字;名為DARAM的區(qū)間其起始地址為0080h,長度為100h字。 (2)出現(xiàn)了5個段,.text,.data和vectors是初始化段,.bss和STACK段是未初始化段。.text和 .data分配到程序空間的EPROM區(qū)間
17、;.bss分配到數(shù)據(jù)空間SPRAM區(qū)間;STACK段分配到數(shù)據(jù)空間的DARAM區(qū)間;vectors段分配到程序空間的VECS區(qū)間。7.閱讀下面的程序片段,寫出運(yùn)行結(jié)果。.mmregsDAT0.SET60H LD#004h,DPST#0345h,DAT0;DAT0為數(shù)據(jù)存儲器地址,其內(nèi)容為#345hSTM#0002h,TMPYDAT0,ANOP NOP 問題:(1)寄存器T的作用是什么? (2)執(zhí)行“MPY DAT0,A”后,累加器A的內(nèi)容是什么?答:寄存器T的作用是暫存被乘數(shù), 累加器A的內(nèi)容為0x68A或68Ah 9.閱讀下面的程序,回答問題。MEMORY PAGE0:PROG:origin
18、=0x2000,length=0x1000PAGE1: DATA:origin=0x3100,length=0x1000 SECTIONS.text:PROGPAGE0.bss:DATAPAGE1 匯編程序: .bssx,16;x占16個字.bssy,16.text STM#x,AR2STM#y,AR3RPT#15;將緊跟此后面的命令重復(fù)執(zhí)行 數(shù)+1 次MVDD*AR2+,*AR3+問題:(1)變量“x”的存儲器地址是多少?位于哪個存儲空間(程序還是數(shù)據(jù)存儲空間)。(2)語句“STM#x,AR2”的作用是什么?執(zhí)行此句指令后,寄存器AR2的內(nèi)容是多少?(3)語句“MVDD*AR2+,*AR3+
19、”的執(zhí)行了多少次?每執(zhí)行一次寄存器AR2和AR3的內(nèi)容如何變化?(4)此段代碼的功能是什么?答:(1)變量“x”的存儲器地址是0x3100;位于數(shù)據(jù)存儲空間.(2)將變量“x”的地址賦給輔助工作寄存器AR2,AR2=3100h.(3)執(zhí)行了16次,每執(zhí)行一次輔助工作寄存器AR2和AR3的內(nèi)容增一。(4)將數(shù)組變量“x”的數(shù)據(jù)傳送到數(shù)組變量“y”中。10閱讀下面的程序,回答后面的問題。 .bssx,10.bssy,1STM#x,AR1STM#9,AR2LD#0,Aloop:ADD*AR1+,ABANZloop,*AR2-;非零跳轉(zhuǎn)STLA,*(y) 問:(1)解釋語句“.bssx,10”的含義。
20、(2)解釋語句“STLA,*(y)”的含義。(3)這一段程序?qū)崿F(xiàn)什么功能?答:(1)給x保留10個空間(2)將累加器A的低16位數(shù)據(jù)存儲到變量y中。 (3) 10-2閱讀下面的程序,回答y等于多少?55 或 37H。.bss x,10 .bss y,1 stm #x,ar1; st #1,*ar1+; st #2,*ar1+; st #3,*ar1+; st #4,*ar1+; st #5,*ar1+; st #6,*ar1+; st #7,*ar1+; st #8,*ar1+; st #9,*ar1+; st #10,*ar1+; STM #x,AR1 STM #9,AR2 LD #0,Al
21、oop: ADD *AR1+,A BANZ loop,*AR2- ;非零跳轉(zhuǎn) STL A, * (y)10-3閱讀下面的程序,回答y等于多少?55 或 37H。.mmregs .def CodeStart .bss x,10 .bss y,1 .datacon:.word 1,2,3,4,5,6,7,8,9,10CodeStart: stm #x,ar1;rpt #9 mvkd con,*ar1+; STM #x,AR1 STM #9,AR2 LD #0,Aloop: ADD *AR1+,A BANZ loop,*AR2- ;非零跳轉(zhuǎn) STL A, * (y) .end11閱讀下面的程序,回答
22、后面的問題。.global start; 定義全局標(biāo)號 .mmregs.data x:.word 1,2,3, 4, 5, 6, 7, 8, 9, 10 .bss y,1 .textstart: STM #x,AR1 STM #9,AR2 LD #0,Aloop: ADD *AR1+,A BANZ loop,*AR2- ;非零跳轉(zhuǎn) STL A, * (y) .end問:(1)解釋語句“x:.word 1,2,3, 4, 5, 6, 7, 8, 9,10”的含義。(2)解釋語句“STLA,*(y)”的含義。(3) 運(yùn)行結(jié)果y=?答:(1)給x分配10個數(shù)據(jù)。(2)將累加器A的低16位數(shù)據(jù)存儲到變
23、量y中。 (3)y=0x0037即y=55。 12.閱讀程序,回答后面的問題(塊操作:重復(fù)執(zhí)行連續(xù)多條指令)STM#6,AR4begin:STM#9,BRC;9BRC(BRC為塊重復(fù)次數(shù)寄存器),(PC)+2 RSA (RSA為塊重復(fù)起始地址寄存器)。RPTBnext-1;塊重復(fù)指令(指定塊重復(fù)結(jié)束地址),將NEXT-1 REA (REA為塊重復(fù)結(jié)束地址寄存器)。nop next:LD#0,B banzbegin,*AR4 問題:(1)BRC寄存器是做什么用途? (2) 其中的“nop”語句被執(zhí)行了多少次?(3) 語句“banzbegin,*AR4”的作用是什么?答:(1)BRC(塊重復(fù)計數(shù)器
24、)保存著RPTB指令的循環(huán)次數(shù)。(2)10次。(3)判斷AR4的內(nèi)容是否為零,若不為零,跳轉(zhuǎn)到標(biāo)號begin。13.閱讀程序,回答后面的問題。(塊操作)STM#9,AR4begin:STM#7,BRC;塊重復(fù)次數(shù)設(shè)置RPTBnext-1;塊結(jié)束地址設(shè)置nop next:LD#0,B banzbegin,*AR4-問(1)BRC寄存器是做什么用途? (2)其中的“nop”語句被執(zhí)行了多少次?答:(1)BRC保存著RPTB指令的循環(huán)次數(shù)(2)8次15.閱讀下面的程序,回答問題。(塊重復(fù)操作).bssx,8 LD#0001H,16,B; #0001H左移16位賦給BSTM#7,BRCSTM#x,AR
25、4RPTBnext-1 ADD*AR4,16,B,A;重復(fù)執(zhí)行的語句STH A,*AR4+ ;重復(fù)執(zhí)行的語句,把A的高字存入x數(shù)組中next: LD#0,B問題:(1)寄存器“BRC”的功能是什么?(2)匯編語句“ADD*AR4,16,B,A”執(zhí)行了多少次?(3)執(zhí)行語句“LD#0001H,16,B ”后,累加器B的內(nèi)容是多少?答: (1)寄存器“BRC”的功能是暫存塊循環(huán)的次數(shù)(2)8次(3)B=0xH;14.閱讀下面的程序片斷,回答下面的問題(除法運(yùn)算) DAT0.SET60HDAT1.SET61H DAT2.SET 62HDAT3 .SET 63H LD#004h,DPST#83h,DA
26、T0 ST#0041h,DAT1RSBXSXMLDDAT0,ARPT#15SUBCDAT1,A; 移位減法,完成除法運(yùn)算。相當(dāng)于A/DAT1.STLA,DAT2STHA,DAT3問:在CPL=0的情況下,(1)語句“STLA,DAT2”,其中DAT2所指的地址是多少?(2)存儲單元(DAT2)和(DAT3)的內(nèi)容是多少?答:(1)0262h (2)(DAT2)=02H(商),(DAT3)=01H(余數(shù))16.閱讀下面的程序:(宏操作) .mmregs DAT0 .SET 60H DAT1 .SET 61H DAT2 .SET 62H DAT3 .SET 63H add3 .macro P1,P
27、2,P3,ADDRP ;宏定義,4個參數(shù) LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .endm ;宏結(jié)束CodeStart: ST #004h,DAT0 ST #03h,DAT1 ST #2h,DAT2 ADD3 DAT0,DAT1,DAT2,DAT3問題:(1)語句“.mmregs”的含義。(2)語句“ADD3DAT0,DAT1,DAT2,DAT3”是一條什么類型的語句?作用是什么?(3)執(zhí)行此段程序后,存儲單元(DAT3)的運(yùn)行結(jié)果多少?答 :(1)定義存儲器映像寄存器的符號名稱。(2)宏調(diào)用。執(zhí)行三個數(shù)相加。(3)9H17 已知(30H)=50H,AR2
28、=40H,AR3=60H,AR4=80H。(存儲器數(shù)據(jù)傳輸).mmregs .def CodeStartCodeStart: st #50h,30h; stm #40h,AR2; stm #60h,AR3; stm #80h,AR4; MVKD #30H,*AR2 ;(40H)=50H MVDD *AR2, *AR3;(60H)=50H MVMM AR3, AR4 ;AR4=60HEND b END; .end運(yùn)行上述程序后,(30H),(40H), *AR3,和AR4的值分別等于多少?答:(30H)=50H (40H)=50H *AR3=50H AR4=60H18.已知指令執(zhí)行前,AR3內(nèi)容
29、為0100H,數(shù)據(jù)存儲器0100H中的內(nèi)容為1234H。(向數(shù)據(jù)存儲器傳送數(shù)據(jù)) MVDK *AR3+,1200H 問:執(zhí)行后,數(shù)據(jù)存儲器1200H中的內(nèi)容為多少?AR3中的內(nèi)容為多少?答:執(zhí)行后,數(shù)據(jù)存儲器1200H中的內(nèi)容為1234H,AR3中的內(nèi)容為0101H。19. 閱讀程序 x:.word 1,2,3,4,5; .bss y,1;LD #0,A; SUM: STM #x,AR3 STM #4,AR2loop: ADD *AR3+,A BANZ loop,*AR2- STL A,*(y)問:(1)該程序?qū)崿F(xiàn)什么功能?(2)程序運(yùn)行結(jié)果y等于多少?【答:(1)x連續(xù)5個存儲單元相加,結(jié)果
30、賦值給y。 (2)y=15】20已知DSP的三個時鐘引腳狀態(tài)CLKMD1-CLKMD3=110,外部晶振=10MHz,參數(shù)設(shè)置表: CLKMD1CLKMD2CLKMD3CLKMD復(fù)位值時鐘方式000E007HPLL150019007HPLL100104007HPLL51001007HPLL2110F007HPLL11110000H2分頻101F000H4分頻 STM#00H,CLKMD Status:LDMCLKMD,AAND#01H,ABCStatus,ANEQ;A不等于0跳轉(zhuǎn)到StatusSTM#4007H,CLKMD 問題:(1)DSP復(fù)位后,DSP的工作時鐘是多少?(2)執(zhí)行上面的程序
31、片段后,DSP的工作時鐘是多少?答:(1)10MHz (2)50MHz21.已知DSP的三個時鐘引腳狀態(tài)CLKMD1-CLKMD3=111,外部晶振=10MHz,參數(shù)設(shè)置表:CLKMD1CLKMD2CLKMD3CLKMD復(fù)位值時鐘方式000E007HPLL150019007HPLL100104007HPLL51001007HPLL2110F007HPLL11110000H2分頻101F000H4分頻STM#00H,CLKMD Status:LDMCLKMD,AAND#01H,A BCStatus,ANEQSTM#9007H,CLKMD 問題(1)DSP復(fù)位后,DSP的工作時鐘是多少?(2)執(zhí)行
32、上面的程序片段后,DSP的工作時鐘是多少?答:(1)5MHz (2)100MHz 22.已知DSP的三個時鐘引腳狀態(tài)CLKMD1-CLKMD3=101,外部晶振=10MHz,參數(shù)設(shè)置表: CLKMD1CLKMD2CLKMD3CLKMD復(fù)位值時鐘方式000E007HPLL150019007HPLL100104007HPLL51001007HPLL2110F007HPLL11110000H2分頻101F000H4分頻STM#00H,CLKMD Status:LDMCLKMD,AAND#01H,ABCStatus,ANEQSTM#9007H,CLKMD 問題:(1)DSP復(fù)位后,DSP的工作時鐘是多
33、少? (2)執(zhí)行上面的程序片段后,DSP的工作時鐘是多少?答:(1)2.5MHz (2)100MHz23、試分別說明下列有關(guān)定時器初始化和開放定時中斷語句的功能(針對5402處理器),請回答設(shè)置過程。TCR寄存器15-1211109-6543-0保留SoftFreePSCTRBTSSTDDR分頻計數(shù)器=1:重新加載;0:常態(tài)0:啟動;1:停止分頻初值STM#0004H,IFR STM#0080H,IMRRSBXINTMSTM#0279H,TCR答:清除外部中斷2標(biāo)志位 允許定時器T1(或DMAC1)中斷。在復(fù)位以后,中斷被配置為定時器T1中斷。 使能所有可屏蔽中斷。設(shè)置定標(biāo)計數(shù)器的值PSC=9
34、;設(shè)置定時器分頻系數(shù)TDDR=9;設(shè)置TRB=1即以PRD中的值重新加載TIM,以TDDR中的值加載PSC;設(shè)置TSS=1即定時器停止工作。24.閱讀以下DSP的C程序,回答問題。TCR寄存器15-1211109-6543-0保留SoftFreePSCTRBTSSTDDR分頻計數(shù)器=1:重新加載;0:常態(tài)0:啟動;1:停止分頻初值#include “c5416regs.h” /用符號代表寄存器main()asm(“ssbx INTM”);/ 關(guān)閉可屏蔽中斷。進(jìn)行設(shè)置時不許打擾設(shè)置通用定時器IMR = 0x8; / 使能TINT(TINT=1),即開放定時器中斷TCR = 0x41F;/ 停止定
35、時器,置計數(shù)器分頻系數(shù)=16TIM = 0; /時鐘計算器清0PRD = 0xf423; / 周期寄存器=62500TCR = 0x42F;/ 啟動定時器,重加載,16分頻 。其中,時鐘周期為8MHzIFR = 0xffff;/ 清IFRasm(“rsbx INTM”);/ 開中斷,等待中斷。每16*62500/8=125ms定時器產(chǎn)生一次中斷while ( 1 ); / 執(zhí)行其它主程序問題:(1) asm(“ssbx INTM”)的含義? (2) TCR = 0x42F的含義? (3) IFR = 0xffff 的含義? (4) 假設(shè)時鐘周期為8MHz,則定時器中斷周期是多少?答:(1)關(guān)閉
36、可屏蔽中斷。 (2)啟動定時器,重加載,8分頻(分頻初值=7)。 (3)清中斷標(biāo)志寄存器IFR。 (4)16*62500/=0.125s=125ms24、已知中斷向量TINT=013H,中斷向量地址指針I(yè)PTR=0111H,求中斷向量地址。答:中斷向量地址=(B)9+(10011)A 絕對尋址利用16位地址尋址存儲單元STLA,*(y)將AL內(nèi)容存入y所在的存儲單元累加器尋址將累加器中的內(nèi)容作為地址READAx將A的內(nèi)容作為地址讀程序存儲器,并存入x存儲單元直接尋址利用數(shù)據(jù)頁指針和堆棧指針尋址LDx,A(DP+x的低7位地址)給A間接尋址利用輔助寄存器作為地址指針LD*AR1,A(AR1)-A
37、存儲器映像寄存器尋址快速尋址存儲器映象寄存器LDMST1,B(ST1)B堆棧尋址壓入/彈出數(shù)據(jù)存儲器和存儲器映像寄存器MMRPSHMAG(SP)-1 SP,(AG)(SP) 2.在C54x的匯編語言中,使用“#”、“*”、“”符號作為操作數(shù)的前綴各表示什么意思?答:使用“#”號作為前綴,匯編器將操作數(shù)作為立即數(shù)處理。即使操作數(shù)是寄存器或地址,也將作為立即數(shù)。使用“*”符號作為前綴,匯編器將操作數(shù)作為間接地址,即把操作數(shù)的內(nèi)容作為地址。使用“”符號作為前綴,匯編器將操作數(shù)作為直接地址,即操作數(shù)由直接地址碼賦值。 3.簡述COFF文件中“段”的概念,有哪些常用的段?答:段是COFF文件中最重要的概
38、念。每個目標(biāo)文件都分成若干段。段是存儲器中占據(jù)相鄰空間的代碼或數(shù)據(jù)塊。一個目標(biāo)文件中的每個段都是分開的和各不相同的。.text段(文本段),通常包含可執(zhí)行代碼;.data段(數(shù)據(jù)段),通常包含初始化數(shù)據(jù);.sect段已初始化段,由匯編器偽指令建立的自定義段。.bss段未初始化段;.usect段未初始化段,由匯編命令建立的命名段(自定義段)。 4.簡述鏈接器命令文件中MEMORY和SECTIONS兩條指令的作用。答:MEMORY偽指令用來定義目標(biāo)系統(tǒng)的存儲器配置空間,包括對存儲器各部分命名,以及規(guī)定它們的起始地址和長度。SECTIONS偽指令用來指定鏈接器將輸入段組合成輸出段方式,以及輸出段在存
39、儲器中的位置,也可用于指定子段。5.與中斷設(shè)置相關(guān)的寄存器有哪4種?答:與中斷相關(guān)的寄存器有:IFR、IMR、PMST(IPTR位)、ST1(INTM位)。6.簡述DSP處理器中斷系統(tǒng)分為幾種中斷,如何清除中斷標(biāo)志? 答:硬件中斷:由片外管腳和片內(nèi)外設(shè)引起的中斷,又分為可屏蔽中斷和RS、NMI兩個非屏蔽中斷。軟件中斷:軟件中斷是由程序指令產(chǎn)生的中斷請求,都為非屏蔽中斷。有三種情況將清除中斷標(biāo)志:(1)軟件和硬件復(fù)位,即C54x的復(fù)位引腳RS=0;(2)相應(yīng)的IFR標(biāo)志位置1;(3)使用相應(yīng)的中斷號響應(yīng)該中斷,即使用INTR#K指令。7.簡述PMST寄存器中IPTR的作用。 答:C54x的中斷向
40、量地址是由PMST寄存器中的IPTR(9位中斷向量指針)和左移2位后的中斷向量序號所組成。 中斷向量地址=IPTR+(左移2位的中斷向量序號)8. 簡述改變中斷向量表位置方法。答:(1)中斷向量表應(yīng)設(shè)置成段;(2)在鏈接命令文件中,段應(yīng)指向相應(yīng)的地址;(3)IPTR應(yīng)該指向段設(shè)置的起始地址。9.簡述DSP處理器TMS320VC5402在微計算機(jī)工作模式中上電啟動的過程。 答:DSP上電復(fù)位后,程序PC指針跳轉(zhuǎn)到0xff80位置,在芯片的0xff80這個單元中存儲著跳轉(zhuǎn)指令、程序自動跳轉(zhuǎn)到0xF800,開始執(zhí)行自舉裝載程序,自舉裝載程序?qū)⑵獯鎯ζ鞯某绦虬徇\(yùn)到DSP程序存儲空間的某個地方,自舉裝
41、載程序的最后一條指令是跳轉(zhuǎn)指令,程序接著跳轉(zhuǎn)到剛才搬運(yùn)在程序存儲空間的某個地址,從而開始程序的自動運(yùn)行。8.已知DSP的工作時鐘為20MHZ,現(xiàn)需要用定時器定時10ms,請問PRD和TDDR寄存器的初始值如何確定?答:(PRD)=19999,(TDDR)=9;或(PRD)=49999,(TDDR)=49.簡述C54x系列DSP定時器的組成部分、各部分分別起什么作用?答:定時器主要由定時寄存器TIM、定時周期寄存器PRD、定時控制寄存器TCR及相應(yīng)的邏輯控制電路組成。定時周期寄存器PRD用來存放定時時間,定時寄存器TIM為16位減1計數(shù)器,定時控制寄存器TCR存放定時器的控制位和狀態(tài)位,邏輯控制
42、電路用來控制定時器協(xié)調(diào)工作。 10.簡述C54x系列DSP的定時器工作過程。 答:定時分頻系數(shù)和周期數(shù)分別裝入TCD和PRC寄存器中;每來一個定時脈沖CLKOUT,計數(shù)器PSC減1;當(dāng)PSC減至0時,PSC產(chǎn)生借位信號; 在PSC的借位信號作用下,TIM減1計數(shù),同時將分頻系數(shù)裝入PSC,重新計數(shù); 當(dāng)TIM減到0時,定時時間到,由借位產(chǎn)生定時中斷TINT和定時輸出TOUT,并將PRD中的時間常數(shù)重新裝入TIM。9.簡述TI公司C2000,C5000,C6000系列處理器的應(yīng)用范圍。答:C2x、C24x稱為C2000系列,主要用于數(shù)字控制系統(tǒng); C54x、C55x稱為C5000系列,主要用于功
43、耗低、便于攜帶的通信終端; C62x、C64x和C67x稱為C6000系列,主要用于高性能復(fù)雜的通信系統(tǒng),如移動通信基站。 10.簡述鏈接命令文件(.cmd文件)的功能。 答:鏈接命令文件(.cmd文件)指定存儲器的結(jié)構(gòu)和段的定位,有MEMORY和SECTIONS兩條指令。MEMORY偽指令用來定義目標(biāo)系統(tǒng)的存儲器配置空間,包括對存儲器各部分命名,以及規(guī)定它們的起始地址和長度。 SECTIONS偽指令用來指定鏈接器將輸入段組合成輸出段方式,以及輸出段在存儲器中的位置,也可用于指定子段。11.在C54x的程序中,“.text”和“.sect”段有什么區(qū)別? 答:在程序中,所有的“.text”段在
44、編譯時合并為一個“.text”段,并將其定位在一個連續(xù)的存儲空間中。在“.sect”定義的段中,由于不同的段均有不同的段名,因此不同段名的“.sect”段不會合并為一個段,而且可以分別定位在程序存儲空間的不同位置。14.宏指令與子程序有哪些區(qū)別? 答:宏指令和子程序都可以被多次調(diào)用,但是把子程序匯編成目標(biāo)代碼的過程只進(jìn)行一次,而在用到宏指令的每個地方都要對宏指令中的語句逐條地進(jìn)行匯編。在調(diào)用前,由于子程序不使用參數(shù),故子程序所需要的寄存器等都必須事先設(shè)置好;而對于宏指令來說,由于可以使用參數(shù),調(diào)用時只要直接代入?yún)?shù)就行了。 15TMS320C54XDSP的程序代碼或數(shù)據(jù)以段的形式裝載于存儲器中
45、,段可分為哪兩種基本類型?有哪5條偽指令來建立和管理各種各樣的段?并指明各偽指令的功能。答:段分為初始化段和未初始化段。.text段(文本段),通常包含可執(zhí)行代碼;.data段(數(shù)據(jù)段),通常包含初始化數(shù)據(jù);.sect段已初始化段,由匯編器偽指令建立的自定義段。.bss段未初始化段;.usect段未初始化段,由匯編命令建立的命名段(自定義段)。16.如何實現(xiàn)DSP由一種工作頻率切換到另外一種工作頻率?答:步驟1:復(fù)位PLLNDIV,選擇DIV方式;步驟2:檢測PLL的狀態(tài),讀PLLSTATUS位;步驟3:根據(jù)所要切換的倍頻,確定乘系數(shù);步驟4:由所需要的牽引時間,設(shè)置PLLCOUNT的當(dāng)前值;
46、步驟5:設(shè)定CLKMD寄存器。 18CCS主菜單命令中建立一個工程分哪幾個步驟? 分為3個步驟:新建工程、添加源文件、編譯生成.out文件。19CCS的File/New命令新建的文件一般是什么文件后綴?CCS的Project/New命令新建的文件是什么文件后綴?File/New新建的文件后綴一般是.c或.asm或.cmd等。Project/New新建的文件后綴是.pjt。20CCS的View/Memory命令打開的顯示窗口可以顯示什么存儲器空間的數(shù)據(jù)?程序存儲器、數(shù)據(jù)存儲器、I/O空間的數(shù)據(jù)。21在程序運(yùn)行到斷點(diǎn)停下來后,若想顯示CPU 核心寄存器的當(dāng)前值,應(yīng)使用CCS的View命令下拉菜單下
47、的什么命令? View/Register/CPU Registers23動畫執(zhí)行命令(Animate)與全速運(yùn)行命令(Run)在什么情況下執(zhí)行效果相同?在什么情況下執(zhí)行效果不同?未設(shè)任何斷點(diǎn)或設(shè)斷點(diǎn)設(shè)在程序運(yùn)行不到的地方。在程序可運(yùn)行到的地方設(shè)置斷點(diǎn)。24對于CCS工程文件,鏈接器命令文件的后綴名是什么?庫文件的后綴名是什么?頭文件的后綴名是什么?.cmd .lib .h25若要檢查和編輯變量在斷點(diǎn)處值,應(yīng)打開什么窗口查看?打開該窗口的命令步驟是什么?觀察窗口 view/Watch Windows26在CCS集成開發(fā)環(huán)境下,對工程文件進(jìn)行編譯產(chǎn)生的裝載文件后綴是什么? 裝載命令是什么? 裝載文件主文件名有什么特征? .out File/load program 裝載文件主文件名與工程文件主文件名相同使用ADD完成加法格式:ADD Smem ,SHIFT,src ,dst ld temp1,a;將變量temp1裝入寄存器A add temp2,a;將變量temp2與寄存器A相加 ;結(jié)果放入A中 stla,temp3;將結(jié)果(低16位)存入變量 ;temp3中。 注意,這里完成計算temp3=temp1+temp2,我們沒有特意考慮temp1和temp2是整數(shù)還是小數(shù),在加法和下面的減法中整數(shù)運(yùn)算
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 香檳現(xiàn)場活動策劃方案(3篇)
- 籃板貼紙施工方案(3篇)
- 志愿社活動策劃方案(3篇)
- 市政雨天施工方案(3篇)
- 公司茶藝活動策劃方案(3篇)
- 地毯烤肉活動策劃方案(3篇)
- 汽車售后服務(wù)流程標(biāo)準(zhǔn)化手冊(標(biāo)準(zhǔn)版)
- 整形美容醫(yī)院員工培訓(xùn)
- 2025年大學(xué)連鎖經(jīng)營管理(連鎖品牌管理)試題及答案
- 2025年中職護(hù)理學(xué)基礎(chǔ)(護(hù)理基礎(chǔ)理論)試題及答案
- 2025年青島衛(wèi)生局事業(yè)單位考試及答案
- 紀(jì)委檔案規(guī)范制度
- 杭州錢塘新區(qū)建設(shè)投資集團(tuán)有限公司2025年度第三次公開招聘工作人員備考題庫及完整答案詳解
- 眼科質(zhì)控課件
- 安徽信息會考題庫及答案
- 2025年中級消防監(jiān)控題庫及答案
- 隧道施工廢水處理人員培訓(xùn)方案
- 煤礦瓦斯爆炸應(yīng)急預(yù)案
- 2025年射頻識別技術(shù)面試題庫及答案
- 揀貨主管年終總結(jié)
- 2025役前訓(xùn)練考試題庫及答案
評論
0/150
提交評論