已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、概念及简述题(简述不是详述)(共40分)(1)分别简述TMS320系列DSP的特点、TMS320C2000系列DSP的特点。TMS320系列DSP的特点:采用哈佛结构、采用多总线结构、采用流水线技术、配有专用的硬件乘法-累加器、具有特殊DSP指令、快速的指令周期、硬件配置强、支持多处理结构、省电管理和低功耗;TMS320C2000系列DSP的特点:处理能力强、片内具有较大的闪速存储器、功耗低、资源配置灵活。(2)简述实时处理的概念。实时处理是指在信息或数据产生的同时进行处理处理的结果可以立即用来影响或控制进行中的现象或过程. 处理过程能够用与硬件转换相同的速度去接收和处理样本数据,这意味着处理过程不中断,能够处理连续的数据流。(3)简述处理器的基本组成,并指出冯诺依曼结构和哈佛结构的区别。处理器的基本组成:中央处理器(CPU)、内部总线结构、功能寄存器、数据存储器、程序存储器、I/O口、串行口、中断系统、定时器;冯.诺依曼结构:采用单存储空间,即程序指令和数据公用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行的;哈佛结构:采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大提高了数据处理能力和指令的执行速度,非常适合与实时的数字信号处理。(4)简述DSP的发展趋势。DSP的内核结构将进一步改善、DSP和微处理器的融合、DSP和高档的CPU的融合、DSP和SOC的融合、DSP和FPGA的融合、实时操作系统RTOS与DSP的结合、DSP的并行处理结构、功耗越来越低。(5)简述TMS320F2812的性能特点、列出TMS320F2812的在片外设。TMS320F2812的性能特点:静态的CMOS技术、32位CPU、片内存储器、外部存储器接口、时钟与系统控制、密匙、在片外设、通用I/O;TMS320F2812的在片外设:3个32位定时器、1个UART、1个SPI、2个SCIs、1个eCAN、1个McBSP、2个事件管理器(EVA、EVB)、1个12位的ADC(可实现16通道异步A/D转换)。(6)简述TMS320F2812处理器CPU的组成及特点。TMS320F2812处理器CPU的组成:保护流水线机制、独立的寄存器空间、算术逻辑单元ALU、地址寄存器算术单元ARAU、桶形移位器、乘法器;TMS320F2812处理器CPU的特点:16X16位和32X32位乘法累加操作、哈佛总线结构、快速中断响应和处理、统一的存储器规划、4M的线性程序地址、4M的线性数据地址、高效的代码(C/C+和汇编语言)、TMS320F24X/LF240X处理器源代码兼容。(7)简述OVC/OVCU的工作过程以及OVM对ACC操作的影响。OVC/OVCU的工作工程:对有符号数的操作,OVC是一个有符号的6位循环溢出计数器:当溢出模式关闭,ACC正常溢出时,OVC反映溢出信息:ACC正向溢出,OVC加1;ACC负向溢出,OVC减1。 当溢出模式开启,ACC产生溢出时,OVC不受影响,但进行以下处理:ACC正向溢出,ACC=7FFF FFFFH;ACC负向溢出,ACC=8000 0000H。对无符号数操作,OVC是一个有符号的6位循环进位计数器:当ADD操作产生一个进位时,计数器加1;当SUB操作产生一个借位时,计数器减1。OVM对ACC操作的影响:当ACC进行加减运算而结果产生溢出时,OVM=0或1决定CPU如何处理溢出:OVM=0(溢出模式关闭),ACC中产生的溢出反映到OVC;OVM=1(溢出模式开启),ACC正向溢出(7FFF FFFFH8000 0000H),则ACC填充7FFF FFFFH,ACC负向溢出(8000 0000H7FFF FFFFH),则ACC填充8000 0000H。(8)简述中断的概念、可屏蔽中断的初始化及其中断处理流程。中断的概念:硬件或者软件使得CPU停止执行当前的程序,转而执行另外的子程序;可屏蔽中断的初始化:状态寄存器ST1中的可屏蔽中断全局使能位INTM清零,中断标志寄存器IFR相应位置1,可屏蔽中断局部使能寄存器IER相应位置1;中断处理流程:向CPU发出中断请求置IFR寄存器相应位为1判断寄存器IER相应位是否为1(假定为1)判断INTM全局使能位是否为0(假定为0开中断)清零IFR寄存器相应位清空流水线保存返回地址取中断向量中断现场保护清零寄存器IER相应位置INTM和DBGM为1,将LOOP、EALLOW和IDLESTAT等位清零将中断向量装载PC执行中断服务子程序返回。(9)简述非连续程序续流的分类及其特点。非连续程序流的分类:中断、分支、调用、返回和重复操作;非连续程序流的特点:指令执行从当前连续的程序流转移到另外的新的程序流。(10)简述ITNM、N、V、VMAP等状态标志位对处理器的影响。INTM:中断全局屏蔽位。INTM可以全局使能和禁止所有的CPU可屏蔽中断,当INTM=0时,可屏蔽中断被全局使能,当INTM=1时,可屏蔽中断被全局禁止;N:负标志位。在某些操作中,若操作结果为负则N被置位;若操作结果为正则N被清0。测试ACC内容的正负,实际是测试ACC的符号位(D31),若D31=1,则ACC是负数,N=1;若D31=0,则ACC是正数,N=0。测试AH、AL和其他的16位寄存器或数据存储器的内容的正负也是测试符号位(D15);V:溢出标志。如果操作引起保存结果的寄存器产生溢出,则V置1;如果没有溢出,V不改变。一旦V被锁定,它就保持置位直到复位或者被测试V的条件分支指令来清除(不管测试条件如何);VMAP:向量映像位。VMAP决定CPU的中断向量映射到程序存储器的低端还是高端,当VMAP=0,CPU的中断向量映射到程序存储器的底部;当VMAP=1,CPU的中断向量映射到程序存储器的高端。(11)简述INTR NMI指令与硬件NMI的特点,如有区别则请指出。TNTR NMI指令与硬件产生的NMI相同,不能被INTM、DBGM全局中断使能位和寄存器IFR、IER、DBGIER相应的局部中断使能位所屏蔽,TNTR NMI指令与硬件NMI一旦产生,CPU马上转向执行相应的中断服务子程序。但是当CPU处于停止模式(仿真模式)时,没有中断被服务。(12)简述TRAP #0指令与硬件RS的特点,如有区别则请指出。TRAR #0指令:不能等同与复位信号(初始化),没有进行全部初始化,它只是强制执行与RESET中断向量相应的中断服务;硬件RS:当硬件RS发生时,进行全部初始化,CPU所有当前的操作被停止,流水线被清空,CPU寄存器被复位,然后执行相应的中断服务。(13)简述TMS320F2812的寄存器分类及各寄存器的特点。累加器ACC:是CPU的主要工作寄存器,是可单独进行16位/8位访问的32位寄存器。乘法运算类寄存器:被乘数寄存器(XT),存放32位乘法的一个被乘数(32位有符号整数),可分为两个独立的16位寄存器;结果寄存器(P),存放乘法运算结果,可分为两个独立的16位寄存器,对这个寄存器的内容进行移位操作时由乘积移位模式(PM)位决定。数据指针类寄存器:数据页指针(DP):16位寄存器,用于直接寻址,存放数据空间的数据页指针;堆栈指针(SP):16位寄存器,实现系统的软件堆栈(堆栈寻址),对低64K字数据空间进行寻址,复位后SP的初值为0400H。辅助寄存器(XAR0XAR7):主要用于地址指针指向寄存器和通用目的寄存器。程序控制类寄存器:程序计数器(PC):当流水线满的时候,22位PC指针总是指向当前操作的指令;返回程序计数器(RPC):存放返回地址;中断控制寄存器(IFR、IER、DBGIER)状态寄存器:ST0、ST1。可以和数据寄存器交换数据,也可以保存机器的状态和为子程序恢复状态。(14)简述TRAP指令和INRTR指令的特点。TRAP:可以初始化任何中断,包括自定义中断,忽略中断控制寄存器IFR、IER相应位是否置1,指令不会对IFR、IER产生影响。INTR:可以初始化INT1INT4、DLOGINT、RTOSINT、NMI等中断,指令不受可屏蔽中断全局使能位TNTM和可屏蔽中断局部使能寄存器IER或DBGIER相应位的影响,一旦指令被译码,CPU强制执行相应的中断服务。(15)简述直接寻找方式,并举例说明。DP(数据页指针):在这种寻址方式中,16位的DP寄存器作为固定的页指针,在指令中提供6位或7位的偏移量,这些偏移量与中的值相连接。这种寻址方式对固定寻址的数据结构,如外围寄存器和CC+中的全局或静态变量来说,都是一种有效的方法。例如:MOVW DP,#VarA;用VarA所在的页值装载DP指针ADD AL,VarA; 将VarA存储单元内容加至ALMOV VarB,AL; 将AL内容存入VarB存储单元,VarB与VarA应在同一个64字的数据页内MOVW DP,#VarC;用VarC所在的页值装载DP指针SUB AL,VarC; 从AL中减去VarC存储单元内容MOV VarD,AL; 将AL内容存入VarD存储单元,VarC与VarD应在同一个64字的数据页内,而VarC、VarD与VarA、VarB在不同的数据页内(AMODE=0时的“loc16/loc32”语法下的实例)(16)简述堆栈寻址方式,并举例说明。SP(堆栈指针):在这种寻址方式中,16位的SP指针用于访问软件堆栈的信息。C28X的软件堆栈从低地址到高地址变化(进栈操作),堆栈指针总是指向下一个空位置。在指令中可提供以SP堆栈指针为基准的6位偏移量,用于访问堆栈数据,或者在数据入栈和出栈操作后用于修改堆栈指针。例如:ADD AL,*-SP5;将(SP-5)个字的堆栈单元的16位内容加至ALMOV *-SP8,AL;将AL中的16位内容存入(SP-8)个字的堆栈单元ADDL ACC,*-SPl2;将(SP-12)个字的堆栈单元的32位内容加至ACCLMOVL *-SP34,ACC;将ACC中的32位内容存入(SP-34)个字的堆栈单元(AMODE=0时的“loc16/loc32”*-SP6bit语法下的实例)(17)简述间接寻址方式,并举例说明。XAR0XAR7(辅助寄存器指针):在这种寻址方式中,用32位的XARn寄存器作为数据指针。可根据一个3位立即数偏移量或其他16位寄存器的内容,对当前寄存器的内容进行操作后修改数据指针。例如:MOVL XAR2,#Arrayl;将Arrayl的起始地址装入XAR2MOVL XAR3,#Array2;将Array2的起始地址装入XAR3MOV AR0,#N-1;用循环次数N装载AR0Loop:MOVL ACC,*XAR2+;将XAR2所指定的存储单元的内容装入ACC,且XAR2增量MOVL *XAR3+,ACC;将ACC内容存入由XAR3所指定的存储单元,且XAR3增量BANZ Loop,AR0-;循环直至AR0=0,AR0减量(C28x间接寻址方式下“loc16/loc32”XAPn+语法下的实例)(18)简述C2xLP反进位寻址方式,并举例说明。例如:MOVZ DP,#RegAPtr;将包含RegAPtr的页地址装入DPMOVZ AR2,RegAPtr;将RegAPtr所包含的内容装入AR2,AR2H=0MOVZ AR3,RegBPtr;将RegBPtr所包含的内容装入AR3,AR3H=0;RegAPtr和RegBPtr处于同一个128字数据页内,两者都处于低64K数据存储器空间NOP *,ARP2;将ARP指针指向XAR2MOV *,#0x0404;将0404H送入XAR2所指定的存储单元NOP *,ARP3;将ARP指针指向XAR3MOV *,#0x8000;将8000H送入XAR3所指定的存储单元(C2xLP间接寻址方式下“loc16/loc32”*语法下的实例)(19)简述循环间接寻址方式(AMODE=0和1),并举例说明。例如: ;计算有限脉冲响应滤波器(XN为数据阵列,CN为系数阵列)MOVW DP,#Xpointer;将Xpointer的页地址装入DPMOVL XAR6,Xpointer;将当前的Xpointer值装入XAR6MOVL XAR7,#C;将C阵列的起始地址装入XAR7MOV AR1,#N;将N阵列的大小装入AR1SPM-4; 设置乘积移位模式为右移4位ZAPA;ACC=0,P=0,OVC=0RPT #N-1;下一条指令重复执行N次QMACL P,*AR6%+,*XAR7+;ACC=ACC+P4.;P=(*AR6%+ *XAR7+)32ADDL ACC,PARARP)TC=1,elseTC=0CMPR2:if(AR0ARARP)TC=1,elseTC=0CMPR3:if(AR0 !=ARARP)TC=1,elseTC=0(2)MOV DP,#10bit装载数据页面指针:用10位常数装载数据页寄存器。其它高6位不变:DP(9:0)= #10bit;DP(15:10)= 不变;(3)MOVZ DP,#10bit装载数据页面和清高位:用一个10位常数装载数据页寄存器并将高6位清零:DP(9:0)= #10bit;DP(15:10)= 0;(4)NOT AX求AX寄存器中的值的“非”:用其“非”取代指定AX寄存器(AH或AL)的内容:AX=AX XOR 0xFFFF;(5)NEG AX求AX寄存器中的值的负数:对AX求负:If(AX=0x8000) AX=0x8000; V=1;Else AX=-AX;If(AX=0x0000) C=1;Else C=0;(6)MOVB loc16,AX.LSB保存AX寄存器的最低字节:用指定的AX寄存器(AH.LSB或AL.LSB)的最低有效字节装载“loc16”寻址模式指定位置的8位数。“loc16”操作数的形式决定哪8位用于装载AX,哪8位保持不变。If(loc16=*+XARnoffset) If(offset为偶数) loc16.LSB=AX.LSB; loc16.MSB=不变; If(offset为奇数) loc16.LSB=不变; loc16.MSB=AX.LSB;Else loc16.LSB=AX.LSB; loc16.MSB=不变;(7)MOVB AX.LSB, loc16装载AX寄存器的最低字节,MSB=0x00:来自“loc16”地址单元的位值装载到指定AX寄存器的最低有效字节。AX寄存器的最高有效字节清零。“loc16”操作数的形式指定了哪个8位用于装载AX.LSB。If(loc16=*+XARnoffset) If(偏移量为偶数) AX.LSB=loc16.LSB; If(偏移量为奇数) AX.LSB=loc16.MSB;Else AX.LSB=loc16.LSB; AX.MSB=0x00;(8)SUB ACC,loc160.16从累加器中减去16位地址的内容移位后的值:从ACC累加器中减去左移后的“loc16”地址单元的值。若符号扩展方式有效(SXM=1),移位时进行符号扩展;否则移位时为0扩展(SXM=0),最低位填0:If(SXM=1) 符号扩展方式使能 ACC=ACC S:loc16 移位位数;Else 禁止符号扩展方式 ACC=ACC 0:loc16 移位位数;(9)SUB ACC,#16bit0.15从累加器中减去移位后的值:从ACC累加器减去左移后的16位立即常数。若符号扩展方式使能(SXM=1),移位时进行符号扩展;否则移位时为0扩展(SXM=0),最低位填0:If(SXM=1) 符号扩展方式使能 ACC=ACC S:16bit 移位位数;Else 禁止符号扩展方式 ACC=ACC 0:16bit 移位位数;(10)ADD ACC, loc16 0.16(loc16)地址单元中的数加到累加器,结果保存到ACC:“loc16”地址单元的16位数左移后加到ACC累加器中。若符号扩展模式使能(SXM=1),则移位时进行符号扩展,否则进行0扩展(SXM=0),最低位填0:If(SXM=1) 符号扩展模式使能 ACC=ACC + S:loc16 移位位数;Else 符号扩展模式禁止 ACC=ACC + 0:loc16 T(3:0); 算术右移Else 禁止符号扩展方式 ACC=0:ACC T(3:0); 逻辑右移(12)SFR ACC,1.16右移累加器116位:ACC累加器按移位位数右移。移位的类型(算术或逻辑)由符号扩展方式(SXM)位指定:If(SXM=1) 符号扩展方式使能 ACC=S:ACC 移位位数; 算术右移Else 禁止符号扩展方式 ACC=0:ACC 移位位数; 逻辑右移(13)MOVP T,loc16装载T寄存器,并保存P寄存器到累加器:用“loc16”寻址地址单元中的16位数装载T寄存器。P寄存器按乘积移位方式(PM)位指定的移位位数移位,P寄存器的内容移位后装载到ACC累加器中。T=loc16;ACC=P PM;(14)MOVS T,loc16装载T寄存器,并从累加器中减去P:用“loc16”寻址地址单元中的16位数装载T寄存器。P寄存器按乘积移位方式(PM)位指定的移位位数移位,从ACC累加器中减去P寄存器移位后的值。T=loc16;ACC=ACC - P PM;(15)TBIT loc16,#bit位测试:测试“loc16”地址单元中的指定位:TC=loc16(bit);(16)TCLR loc16,#bit测试并清零指定位:测试“loc16”地址单元指定的位,然后对相同的位清零:TC=loc16(bit);loc16(bit)=0;(17)LB 22bitAddr长跳转(22位程序地址):用22位程序地址装载PC指针:PC=22bit;(18)LB *XAR7间接长跳转:用XAR7寄存器的低22位装载PC指针:PC=XAR7(21:0);(19)NORM ACC,XARn+规格化ACC和修改所选辅助寄存器:规格化ACC累加器的有符号数并改变指定的辅助寄存器(XAR0XAR7):If(ACC != 0x0000 0000) If(ACC(31) XOR ACC(30) =0) ACC=ACC 0) ACC=0x7FFF FFFF; V=1;if(OVC0) ACC=0x8000 0000; V=1;if(OVC=0) ACC=不变; OVC=0;(23)SQRA loc16对loc16作平方,P与累加器相加结果送累加器:把先前乘积值(保存在P寄存器)按乘积移位方式(PM)指定的值移位后加到ACC累加器。把“loc16”地址单元的值装载到T寄存器并且平方后保存到P寄存器:ACC=ACC+P PM;T=loc16;P=Tloc16;(24)BAR 16bitOffset, ARn, ARm, EQ/NEQ与辅助寄存器比较后跳转:比较两个辅助寄存器ARn和Arm寄存器的16位数,若条件为真,则跳转;否则不跳转继续执行程序:if(测试条件为真)PC=PC+有符号16位偏移量;if(测试条件为假)PC=PC+2;(25)BANZ 16bitOffset, ARn-若辅助寄存器不等于零,则跳转:若指定的辅助寄存器的16位数不为0,则加有符号16位的偏移量到PC值,强迫控制程序跳到新的地址(PC+16bitOffset)。16位偏移量在加之前符号扩展到22位,然后辅助寄存器中的值减1。在比较中不使用辅助寄存器的高16位(ARnH),减后也不会影响它:If(ARn !=0)PC=PC+有符号16位偏移量;ARn=ARn-1;ARnH=不改变;(26)CSB ACC计算符号位:引入ACC累加器中0或1的数目来计算ACC累加器中的符号位,结果减1保存到T寄存器中:T=0,1符号位T=1,2符号位T=31,32符号位(27)MAC P, loc16, *XAR7/+乘并累加:本指令采用以下步骤:先前的乘积(保存在P寄存器中)按乘积移位方式(PM)指定的移位位数移位后加到ACC累加器。用“loc16”寻址地址单元的内容装载T寄存器。用XAR7寄存器指向的程序存储器地址单元中的有符号16位数乘以T寄存器的有符号16位数,32位结果保存到P寄存器中,而且XAR7寄存器加1。ACC=ACC+P PM;T=loc16;P=signed Tsigned Prog*XAR7 or *XAR7+;(28)DMOV loc16移动16位地址的内容:复制“loc16”地址单元的内容到下一个最高地址:loc16+1=loc16;(29).byte/.char.byte和.char伪指令将一个或多个字节放入当前段的连续字中。每个字节自己放在一个字中;8个MSBs(最高位)填0。Value(值)可以是下列情况中的一种:一个表达式,汇编器把它当作8位有符号数来计算和处理。包含在双引号内的字符串。字符串中每一个字符代表一个单独的数。Value(数)未被合并或作符号扩展;每个字节占据一个完整的16位字的低8位。汇编器将多于8位的值截断。每个.byte指令可以使用多达100个Value(值)参数,但每行长度不能超过200个字符。如果用户使用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 西京学院《景观小品设计》2021-2022学年第一学期期末试卷
- 西京学院《电力电子技术》2022-2023学年期末试卷
- 西华师范大学《篆刻技法》2021-2022学年第一学期期末试卷
- 西华师范大学《影视叙事艺术研究》2021-2022学年第一学期期末试卷
- 西华师范大学《西方行政学说史》2021-2022学年第一学期期末试卷
- 西华师范大学《区域分析方法》2023-2024学年第一学期期末试卷
- 西华师范大学《教师书写与板书设计》2021-2022学年第一学期期末试卷
- 版油气开发专业危害因素辨识与风险防控 专项测试题及答案
- 交通运输综合执法(单多选)复习试题及答案
- 2024年专用设备行业政策分析:专用设备行业标准保障行业稳定发展
- 浙江重症医学专科护士理论考核试卷与答案
- 胰腺癌的影像学表现课件
- 电梯维保报价单【模板】
- 2023年四川凉山州木里重点国有林保护局招聘18人笔试备考试题及答案解析
- 产品质量风险辨识与控制清单范例
- 电力电缆试验
- 压疮与失禁性皮炎鉴别
- 思想意识形态渗透就在你我身边
- 2023跨界联名营销趋势报告-SocialBeta
- 小学一年级写字教案()
- 做好车险续保工作探讨课件
评论
0/150
提交评论