DSP复习.docx
- 文档编号:15942541
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:14
- 大小:77.94KB
DSP复习.docx
《DSP复习.docx》由会员分享,可在线阅读,更多相关《DSP复习.docx(14页珍藏版)》请在冰点文库上搜索。
DSP复习
C54x的串行口形式包括(BCDE)
A、单路同步串口
B、标准同步串口
C、缓冲同步串口
D、多路缓冲串口
E、时分多路同步串口
7、程序存储器ROM的工作方式有(ACE)
A、读操作
B、写操作
C、维持操作
D、显示操作
E、编程操作
1.从功能结构上,’C54XDSP的CPU可以划分成运算部件和控制部件两大部分。
2.’C54xDSP的寻址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、间接寻址、存储器映象寄存器寻址、堆栈寻址。
3.在’C54xDSP寻址和指令系统中,Xmem和Ymem表示16位双寻址操作数,Dmad为16位立即数,表示数据存储器地址,Pmad为16位立即数,表示程序存储器地址。
4.程序计数器的值可以通过复位操作、顺序执行指令、分支转移,累加器转移,块重复,子程序调用,从累加器调用子程序,中断等操作改变。
5.解决MMR写操作的流水线冲突时,一般可用采用推荐指令和插入空操作指令的方法。
6.COFF目标文件中.text段通常包含可执行代码,.data段通常包含己初始化的数据,.bss段中通常为未初始化的数据保留空间。
7.DSP芯片的开发工具可以分为代码生成工具和代码调试工具两类。
8.
14.TMS320C54x芯片的流水线操作共有多少个操作阶段?
每个阶段执行什么任务?
完成一条指令都需要那些操作周期?
6个操作阶段:
预取指、取指、译码、寻址、读数、执行。
1、预取指P:
在T1机器周期内,CPU将PC中的内容加载到程序地址总线PAB,找到指令代码的存储单元。
2、取指F:
在T2机器周期内,CPU从选中的程序存储单元中,取出指令代码加载到程序总线PB。
3、译码D:
在T3机器周期内,CPU将PB中的指令代码加载到指令译码器IR,并对IR中的内容进行译码,产生执行指令所需要的一系列控制信号。
4、寻址A:
即寻址操作数。
在T4周期内,根据指令的不同,CPU将数据1或数据2的读地址同时将两个读地址分别加载数据地址总线DAB和CAB中,并对辅助寄存器或堆栈指针进行修正。
5、读数R:
CPU在T5机器周期内,将读出的数据1和数据2分别加载到数据总线DB和CB中。
若是并行操作指令,在完成上述操作的过程中,同时数据3的写地址加载到数据地址总线EAB中。
6、执行X:
在T6机器周期内,CPU按照操作友要求执行指令,并将写数据3加载到EB中,写入指定的存储单元。
1、什么是冯诺依曼结构和哈弗结构?
有何区别?
哈佛结构是一种将程序指令存储和数据存储分开的存储器结构。
中央处理器首先到程序指令存储器中读取程序指令内容,解码后得到数据地址,再到相应的数据存储器中读取数据,并进行下一步的操作(通常是执行)。
程序指令存储和数据存储分开,可以使指令和数据有不同的数据宽度。
冯·诺伊曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同。
2、请列举可编程DSP芯片的主要特点(6条特点及以上)。
(6分)
(1)哈佛结构
(2)多总线结构
(3)流水线技术
(4)多处理器结构
(5)指令周期短、功能强
(6)运算精度高
(7)功耗低
(8)外设丰富,硬件配置强
1、TMS320C55x芯片的总线结构有何特点,主要包括哪些总线?
它们的功能是什么?
(6分)
答:
TMS320C55xDSP采用先进的哈佛结构并具有12组总线,其独立的程序总线和数据总线允许同时读取指令和操作数,实现高度的并行操作。
采用各自分开的数据总线分别用于读数据和写数据,允许CPU在同一个机器周期内进行两次读操作数和一次写操作数。
独立的程序总线和数据总线允许CPU同时访问程序指令和数据。
包括12条总线,分别是:
PAB和PB、BAB和BB、CAB和CB、DAB和DB、EAB和EB、FAB和FB。
功能:
3、DSP为了降低功耗采取了哪些措施?
(6分)
答:
双电压供电;多种工作模式
4、TMS320C55x有哪些寻址方式,它们是如何寻址的?
试为每种寻址方式列举一条指令(6分)
答:
直接寻址模式,mov#K16,DP;
间接寻址模式,mov*AR0,AC0;
绝对寻址模式,mov*(#0x011234),T2;
MMR寻址模式,mov*abs16(#AR2),T2;
寄存器位寻址模式,btstp@30,AC1;
圆形寻址模式。
5、将C源程序转换成可执行文件需要经过哪些步骤?
(6分)
答:
创建C源文件;创建工程文件;创建连接器命令文件;编译整个工程文件;链接;生成可执行文件
6、常用的TMS320C55x汇编命令有哪些,它们的作用是什么?
(5分)
1.什么是定点DSP芯片和浮点DSP芯片?
各有什么优缺点?
解:
按数据的定点格式工作的DSP芯片称为定点DSP;
按数据的浮点格式工作的DSP芯片称为浮点DSP;
定点DSP的价格便宜,功耗低,但运算精度低;
浮点DSP的价格较高,C语言编程调试方便,运算精度高。
四、阅读指令并填空(每题5分,共25分)
1.BANZ2000h,*AR3-
2.CMPRGT,AR3
3.ADD*AR3+,14,A
4.SUBA,-8,B
5.MPY*AR3+,A
五、程序题(15分)
写出计算
的主要汇编程序,并给程序添加注释,画出程序的流程图。
解:
程序及注释:
.bssx,20;给变量x分配20个字单元
.bssy,1;给变量y分配1个字单元
STM#x,AR1;取x地址
STM#19,AR2;设置循环次数
LD#0,A;累加器清零
loop:
ADD*AR1+,A;累加x分量
BANZloop,*AR2-;循环是否结束,没有结束则继续累加
STLA,@y;把结果存入y
流程图:
一、填空题(共30分,每空1分)
1.DSP的狭义理解为数字信号处理器,广义理解为数字信号处理方法。
2.在直接寻址中,指令代码包含了数据存储器地址的低7位。
当ST1中直接寻址编辑方式位CPL=0时,与DP相结合形成16位数据存储器地址;当ST1中直接寻址编辑方式位
CPL=1时,加上SP基地址形成数据存储器地址。
3.TMS320C54有两个通用引脚,BIO和XF,BIO输入引脚可用于监视外部接口器件的状态;XF输出引脚可以用于与外部接口器件的握手信号。
39~32
保护位
31~16
高阶位
15~0
低阶位
4.累加器又叫做目的寄存器,它的作用是存放从ALU或乘法器/加法器单元输出的数据。
它的存放格式为
5.桶形移位器的移位数有三中表达方式:
立即数;ASM;T低6位
6.DSP可以处理双16位或双精度算术运算,当C16=0位双精度运算方式,当C16=1
为双16位运算方式。
7.复位电路有三种方式,分别是上电复位;手动复位;软件复位。
8.立即数寻址指令中在数字或符号常数前面加一个#号,来表示立即数。
9.位倒序寻址方式中,AR0中存放的是FFT点数的一半。
10.一般,COFF目标文件中包含三个缺省的段:
.text段;.data段和.bss段。
11.汇编源程序中标号可选,若使用标号,则标号必须从第一列开始;程序中可以有注释,注释在第一列开始时前面需标上星号或分号,但在其它列开始的注释前面只能标分号。
12.’C5402有23条外部程序地址线,其程序空间可扩展到1M,内程序区在第0页。
13.指令执行前有关寄存器及数据存储器单元情况如下图所示,请在下图分别填写指令执行后有关寄存器及数据存储器单元的内容。
ADD*AR3+,14,A
A0000001200
A0000002700
C1
C1
AR30101
AR30100
0100h1500
0100h1500
数据存储器
二、简答(共40分)
1.TMS320C54x有多少条16位总线?
这些总线各有什么作用?
(6分)
答:
’C54x共有4组8条16位总线
1条程序总线(PB):
传送取自程序存储器的指令代码和立即操作数。
3条数据总线(CB、DB、EB):
CB和EB传送从数据存储器读出的操作数;EB传送写到存储器中的数据。
4条地址总线(PAB、CAB、DAB、EAB)传送相应指令所学要的代码。
2.TMS320C54x片内存储器一般包括哪些种类?
如何控制存储器片内或片外的分配?
(6分)
答:
TMS320C54x的片内存储空间分为3个可选择的存储空间:
64K的程序空间,64K的数据空间和64K的I/O空间,所有TMS320C54x芯片都包括RAM、SARAM、DARAM。
程序空间:
MP/MC=14000H~FFFFH片外
MP/MC=04000H~EFFFH片外FF00H~FFFFH片内
OVLY=10000H~007FH保留0080H~007FH片内
OVLY=00000H~3FFFH片外
数据空间:
DROM=1F000H~FEFFH只读空间FF00H~FFFH保留
DROM=0F000H~FEFFH片外
3.当TMS320C54xCPU接收到可屏蔽的硬件中断时,满足哪些条件中断才能被响应?
(6分)
答:
(1)出现多个中断时,此中断的优先级最高
(2)INTM=0允许全局中断
(3)IMR中的响应相应位为1,开放此中断。
4.循环寻址中,如何确定循环缓冲的起始地址?
如果循环缓冲大小为17,其起始地址必须从什么地址开始?
BK初始化为多少?
(4分)
5.TMS320C54x硬件复位地址为多少?
如何确定中断向量地址?
计算INT0(IPTR=001H)的中断向量地址。
(6分)
答:
复位后,复位向量地址为:
0080H
确定地址方式:
IPTR+左移2位后的中断向量序列号
10H左移2位后成为40H,IPTR=001H,则中断向量地址为00C0H
6.若辅助寄存器AR0的值为0x0005H,AR3的值为0x030FH,请分别给出下列寻址方式修改后的辅助寄存器的值。
(6分)
*AR3+;AR3=0310H
*AR3+0;AR3=0314H
*AR3(15);AR3=0324H
7.分别解释以下指令的功能。
(6分)
LD#80h,A;把立即数80H装入累加器A
LD80h,A;把80H为地址的数据装如累加器A
LD#80h,16,A;把立即数80H左移16位后装如累加器A
三、程序填空(共22分,每空2分)
1.实现计算z=x+y-w的程序。
.title"example1.asm"
.mmregs
STACK.usect"STACK",10h
.bssx,1
.bss y,1
.bssw,1
.bssz,1
.defstart
.data
table:
.word10,26,23
.text
start:
STM#0,SWWSR
STM#STACK+10h,SP;初始化堆栈指针SP
STM#x,AR1
RPT#2
MVPDtable,*AR1+;数据从程序存储器传送到数据存储器
CALLSUMB
end:
Bend
SUMB:
LD@x,A
ADD@y,A
SUB@w,A;实现减法运算
STLA,@z
RET
.end
2.实现对数组X[5]={1,2,3,4,5}的初始化,然后将数据存储器中的数组X[5]复制到数组Y[5]。
最后实现数组X和数组Y中对应元素相乘并累加,即z=1*1+2*2+3*3+4*4+5*5
.mmregs
.bssx,5
.bssy,5
.bssz,1
.defstart
table:
.word1,2,3,4,5
.text
start:
STM#x,AR1
RPT4
MVPDtable,*AR1+;从程序存储器传送到数据存储器数组X[5]
STM#x,AR2
STM#y,AR3
RPT4
MVDD*AR1,*AR3;从数据存储器数组X[5]传送到Y[5]
SSBXFRCT;准备整数乘法
STM#x,AR2
STM#y,AR3
STM#z,AR4
RPTZ4
MAC*AR2+,*AR3+,A
STLA,*AR4
End:
Bend
.end
四、分析程序回答问题(共8分)
.def_c_int00
.mmregs
stack:
.usect"stack",10h
.bssa,4
.bssx,4
.bssy,1
.data
table:
.word1,2,4,3
.word8,6,4,2
.text
_c_int00:
STM#stack+10h,sp
STM#a,AR1
RPT#7
MVPDtable,*AR1+
CALLsum
end:
Bend
sum:
STM#a,AR3
STM#x,AR4
RPTZA,#3
MAC*AR3+,*AR4+,A
STLA,@y
ret
.end
(1)说明该程序的功能:
(4分)
答:
a1*x1=a2*x2+a3*x3+a4*x4
(2)说明以下各量的理论值(4分)
A:
2Aa1的地址:
81H内容:
1
AR1:
88HAR3:
84H
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 复习