DSP复习材料.docx
《DSP复习材料.docx》由会员分享,可在线阅读,更多相关《DSP复习材料.docx(12页珍藏版)》请在冰豆网上搜索。
DSP复习材料
一、填空题
1。
中央算术逻辑部分主要组成包括:
中央算术逻辑单元CALU,32位累加器ACC,输出定标移位器。
2.TMS320LF240x系列DSP芯片的地址映像被组织位3个可独立选择的空间:
程序存储器空间(64K字),数据存储器空间(64K字);输入/输出(I/O)空间(64K字).
3。
数据存储器空间有3个片内的DARAM块,分别为B0,B1,B2,B0块既可配置为数据存储器,也可配置为程序存储器。
(P21)CNF=0,DARAMB0被映射到片外程序空间;CNF=1,DARAMB0被映射到片内程序空间。
复位时,B0被配置为数据存储空间。
4.TMS320LF2407系列DSP芯片,系统复位后程序指针指向0000h处,程序从该处开始执行,一般要在该处加一条跳转指令使CPU自动转入用户程序的入口。
0000h—003Fh用于存储系统的中断向量表,当有中断请求信号时,CPU从该处取出中断子程序的入口地址。
5。
0060h-007Fh为双口存储器DARAM(B2),为用户数据区。
0200h-02FFh为双口存储器DARAM(B0),当CNF=0时为用户数据区.0300h-03FFh为双口存储器DARAM(B1),用户数据区。
0800h-0FFFh为2K字的单口存储器SARAM,为用户数据区.
6.在使用数据存储器时,将数据存储器空间一共分为512页,每一页由128个字组成。
在程序编写用指令LDP,可加载数据页范围为0-511,使用该指令后,将影响ST0的低9位。
7.中断屏蔽寄存器IMR和中断标志寄存器IFR存放在数据存储器的第0页,其地址分别为:
0004h和0006h
8.要访问I/O空间,可以IN和OUT两条指令。
9.TMS320LF240x系列DSP的寻址方式有:
立即寻址方式,直接寻址方式,间接寻址方式
10.在寻址方式中,立即操作数都是以符号#为前缀
11.在DSP程序中,直接寻址通常是将指令中的数据页指针DP和操作数合并起来作为被访问的地址
12。
LDP#4;数据页设为4(0200h~027Fh)。
ADD9H,5;将数据地址0209h
处的内容左移5位后加至累加器。
13。
通过向状态寄存器ST0中的3位辅助寄存器指针(ARP)装入0~7,可以选择特定的辅助寄存器。
ARP可由MAR指令、LST指令来装载。
执行过程中,当前AR中的内容用作被访问数据存储器的地址
14.汇编语句格式一般包含4部分:
标号、指令、操作数和注释
15。
TMS320LF240x的汇编语言共86条,分为6大类,分别是累加器、算术和逻辑指令;辅助寄存器和数据页指针指令;TREG、PREG和乘法指令;跳转指令;控制指令;I/O和存储器操作指令
16.在DSP软件进行调试之前,一般需要书写3种格式的文件:
汇编语言文件、头文件和命令文件
17.数据的定标一般采用Q表示法,Q值的大小表示小数点后的位数,如Q15表示小数点后有15位数,Q0表示小数点后没有数据。
通常Q值越大,表示的数据范围就越小,数据的精度也就越高;Q值越小,表示的数据范围就越大,数据的精度也就越低
18.在查表法中,将函数的自变量在其定义域范围内进行离散化处理,得到具有一定分辨率的离散点,通过计算得到与其对应的函数输出离散点,然后将这些离散点按对应关系制作成一张表格,并将这个表格存储在程序存储区间.
19。
数字I/O端口是芯片与外界联系的一种接口,它实现的是电平信号的输入和输出。
DSP芯片的I/O端口都具有双重的功能(即功能复用),或用于一般的输入输出功能,或用于一些特殊的功能,究竟是哪一种功能,可通过设置复用控制寄存器来实现。
20。
当I/O口已设定为一般的输入输出功能时,其数据输入输出的方向可
利用数据和方向控制寄存器来设置
21.数字I/O端口的6个数据和方向控制寄存器的格式基本相同,其高8位表示对应的低8位的数据输入输出方向,低8位表示相应的I/O口的有效逻辑电平.22.TMS320LF240x芯片内含有两个事件管理器模块EVA和EVB,用于运动控制和电机控制.每个事件管理器模块又包含通用定时器(GP)、比较单元、捕获单元以及正交编码(QEP)脉冲电路。
EVA和EVB的定时器、比较单元以及捕获单元的结构功能相同,只是单元的名称有所区别
23.TMS320LF2407芯片内含有4个通用定时器,每个通用定时器都采用16位计数器,因此,它们的计数范围是0~65535个脉冲
24.通用定时器的计数操作模式有:
停止/保持模式,连续增计数模式,定向增/减计数模式,连续增/减计数模式四种
25。
通用定时器最多可提供4个PWM输出。
每个比较单元都有2个相关PWM输出
26。
捕获单元可定义的跳变检测方式有:
上升沿、下降沿,或上升下降沿
27.正交编码脉冲电路(简称QEP)可通过码盘的两组脉冲相位(上升沿的顺序)判断出被控对象的运动方向,通过记录脉冲的个数来确定具体的运动位置,将位置信号进行差分就可得到运动的速度.
28。
每个事件管理器都有一个QEP电路,QEP电路的外部输入引脚与捕获单元共享,在使能QEP功能时,必须禁止捕获功能。
对于EVA,使用的是通用定时器2,对于EVB,使用的是通用定时器4,且通用定时器必须工作在定向增/减计数模式下,并以QEP作时钟输入源。
P232
29。
MS320LF240x系列DSP芯片的模数转换模块(ADC)带有采样保持功能的16个通道的10位ADC电路
30.模数转换模块(ADC)具有两个独立的8通道的排序器(SEQ1和SEQ2),可以独立工作在双排序模式,也可工作在级连模式(可选择16通道的连续工作模式)
31。
DSP应用系统一般是一个多电源系统,通常包含+5V和3。
3V两种电源.这是因为多数DSP芯片是采用3.3V来供电的,而许多外围接口芯片是采用+5V供电。
32、TMS320F240x中串行外设接口SPI是一个高速的同步串行输入输出接口,其可编程的传输数据长度为1~16位,工作于全双工时需要4个引脚参与数据传送,它们分别是SPISIMO,SPISOMI,SPISTE,SPICLK,并且具有两种工作方式分别为主模式和从模式
32.哈佛结构可以获得更高的数据处理速度.TMS320F2407采用了增强哈佛结构总线数目一共有6条,它们分别是PAB,DRAB,DWAB,PRDB,DRDB,DWDB
二、简答题
1、DSP芯片的结构?
答:
DSP是改进的哈佛结构(80C51是哈佛结构)。
冯.诺依曼结构与哈佛结构的区别是地址空间和数据空间分开与否。
冯诺依曼结构数据空间和地址空间不分开,哈佛结构数据空间和地址空间是分开的。
哈佛结构的特点:
使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存;使用独立的两条总线,分别作为CPU与每个存储器之间的专用通信路径,而这两条总线之间毫无关联。
改进的哈佛结构,其结构特点为:
使用两个独立的存储器模块,分别存储指令和数据,每个存储模块都不允许指令和数据并存,以便实现并行处理;具有一条独立的地址总线和一条独立的数据总线,利用公用地址总线访问两个存储模块(程序存储模块和数据存储模块),公用数据总线则被用来完成程序存储模块或数据存储模块与CPU之间的数据传输,改进的哈佛结构在哈佛结构的基础上又加以改进,即使得程序代码和数据存储空间之间也可以进行数据的传送。
TMS320LF2407A采用改进的哈佛结构,芯片内部具有六条16位总线,即程序地址总线(PAB)、数据读地址总线(DRAB)、数据写地址总线(DWAB)、程序读总线(PRDB)、数据读总线(DRDB)、数据写总线(DWEB),其程序存储器总线和数据存储器总线相互独立,支持并行的程序和操作数寻址,因此CPU的读/写可在同一周期内进行,这种高速运算能力使自适应控制、卡尔曼滤波、神经网络、遗传算法等复杂控制算法得以实现.结构示意图如下:
2、什么是流水线技术?
DSP是不是具有流水线技术(pipeline)?
答:
流水线技术是将各指令的各个步骤重叠起来执行,而不是一条指令执行完成之后,才开始执行下一条指令。
计算机在执行一条指令时,总要经过取指、译码、取数、执行运算等步骤,需要若干个指令周期才能完成.流水线技术是将各指令的各个步骤重叠起来执行,而不是一条指令执行完成之后,才开始执行下一条指令。
即第一条指令取指后,在译码时,第二条指令就取指;第一条指令取数时,第二条指令译码,而第三条指令就开始取指,„„,依次类推,如图所示。
使用流水线技术后,尽管每一条指令的执行仍然要经过这些步骤,需要同样的指令周期数,但将一个指令段综合起来看,其中的每一条指令的执行就都是在一个指令周期内完成的.DSP处理器所采用的将程序存储空间和数据存储空间的地址与数据总线分开的哈佛结构,为采用流水线技术提供了很大的方便.DSP2407采用四级流水线技术,结构如上:
3、什么是DSP2407的多处理单元?
答:
DSP内部一般包括多个处理单元,如算术逻辑运算单元(ALU)、辅助寄存器运算单元(ARAU)、累加器(ACC)及硬件乘法器(MUL)等。
它们可以在一个指令周期内同时进行运算.例如,在执行一次乘法和累加运算的同时,辅助寄存器单元已经完成了下一个地址的寻址工作,为下一次乘法和累加运算做好了充分准备。
因此,DSP在进行连续的乘加运算时,每一次乘加运算都是单周期的。
DSP的这种多处理单元结构,特别适用于大量乘加操作的矩阵运算、滤波、FFT、Viterbi译码等。
许多DSP的处理单元结构还可以将一些特殊的算法,例如FFT的位码倒置寻址和取模运算等,在芯片内部用硬件实现,以提高运行速度。
多处理单元结构,特别适用于大量乘加操作的矩阵运算、滤波、FFT、Viterbi译码等。
4、DSP240x系列芯片的指令周期是多少?
答:
采用4μmNMOS制造工艺,早期DSP的指令周期约400ns,运算速度为5MIPS.
采用高性能CMOS制造工艺,其运行速度更快。
TMS320LF240x运行速度可达30MIPS,使得指令周期缩短到30MHz。
TMS320C54x运行速度可达100MIPS。
TMS320C6203的时钟为300MHz,运行速度达到2400MIPS。
DSP指令功能强大,一条特殊指令可完成十分复杂的功能.如:
TMS320C54x中的FIRS和LMS指令,分别用于系数对称的FIR滤波器和LMS算法。
5、2407DSP芯片的运算精度高如何?
答:
早期DSP的字长为8位,后来逐步提高到16位、24位、32位.为防止运算过程中溢出,有的累加器达到40位.
浮点DSP提供了更大的动态范围,如TMS320C3x、TMS320C4x等。
6、TMS320LF2407DSP芯片的外设接口有那些?
答:
新一代DSP的接口功能越来越强,片内具有主机接口(HPI),直接存储器访问控制器(DMAC),外部存储器扩展口,A/D接口,串行通信口,中断处理器,定时器,锁相环时钟产生器以及实现在片仿真符合IEEE1149。
1标准的测绘访问口,更易于完成系统设计。
7、TMS320LF2407DSP芯片的功耗如何?
答:
许多DSP芯片都可以工作在省电方式,使系统功耗降低。
一般芯片为0。
5~4W,而采用低功耗技术的DSP芯片只有0.1W,可用电池供电.如TMS3205510仅0.25mW,特别适用于便携式数字终端。
8、TMS320LF2407DSP的乘法功能是如何实现的?
答:
通用微处理器中的乘法指令往往需要多个指令周期,而由于DSP芯片具有专用的硬件乘法器,使得乘法可在一个指令周期内完成,还可以与加法并行进行,即完成一个乘法和加法只需一个指令周期。
可见,高速的乘法指令和并行操作大大提高了DSP处理器的性能。
9、TMS320C2407系列芯片的组成?
答:
(1)CPU
(2)存储器(3)片上外设
DSP最重要的特点:
特殊的内部结构、强大的信息处理能力及较高的运行速度。
10、DSP芯片如何进行分类?
答:
(1)按用途分类:
通用型DSP芯片(本课程主要讨论的芯片),一般指可以用指令编程的DSP芯片,适合普通的DSP应用,如TI公司的一系列DSP芯片属于通用型DSP芯片.专用型DSP芯片,为特定的DSP运算而设计,如数字滤波、卷积和FFT等,通过加载数据、控制参数或在管脚上加控制信号的方法使其具有有限的可编程能力。
如Motorola公司的DSP56200
(2)按数据格式分定点DSP:
数据以定点格式工作的DSP芯片称为定点DSP芯片,该芯片简单、成本较低。
两种基本表示方法:
•整数表示方法:
主要用于控制操作、地址计算和其他非信号处理的应用.
•小数表示方法:
主要用于数字和各种信号处理算法的计算中。
定点表示并不意味着一定是整数表示。
浮点DSP:
数据以浮点格式工作的DSP芯片称为浮点DSP芯片,该芯片运算精度高、运行速度快。
浮点数在运算中,表示数的范围由于其指数可自动调节,因此可避免数的规格化和溢出等问题。
但浮点DSP一般比定点DSP复杂,成本较高.
TMS320LF2407DSP的引脚分布,具有144个引脚
事件管理器A(EVA)引脚;
事件管理器B(EVB)引脚
模数转换器(ADC)引脚
通信模块(CAN/SPI/SCI)引脚;
外部中断与时钟引脚;
振荡器/PLL/FLASH/引导程序及其他引脚
JTAG仿真测试引脚
地址/数据和存储器控制信号引脚;
电源引脚。
三、阅读程序题
1、填写下列程序运行后的结果:
LDP#6;DP=6:
地址0300h-037FhADDC0;DP=6:
地址0300h-037Fh
ADD1,1
执行后:
C=0,(ACC)=40h运行后:
C=0,(ACC)=18h
2、请写出在执行下列程序后,各单元的内容。
.include”F2407REGS。
H";引用头部文件
.def_c_int0
.text
_c_int0:
;相当于主程序的入口
LACC#1234h
LACC#12h,4
MAR*,AR3
LARAR3,#3490h
LARAR4,#2082h
LARAR5,#12h
LDP#4;指向0200h~027Fh区
SPLK#04,4
SPLK#01AH,6
SPLK#02BH,8
。
end
程序执行后:
(ACC)=0120h
(AR3)=3490h
(AR4)=2082h
(AR5)=12h
(0204h)=04h
(0206h)=01Ah
(0208h)=02Bh
3、请写出在执行下列程序后,下面指定各单元的内容。
。
include"F2407REGS.H”;引用头部文件
。
def_c_int0
。
text
_c_int0:
;相当于主程序的入口
LDP#4;指向0200h~027Fh区
SPLK#10,0
SPLK#11,1
SPLK#12,2
SPLK#13,3
SPLK#14,4
SPLK#15,5
SPLK#16,6
SPLK#17,7
SPLK#18,8
SPLK#19,9
MAR*,AR0
LARAR1,#09h
LARAR0,#200h
LACC#0
PGM191:
ADD*+,AR1
BANZPGM191,AR0
.end
运行后:
(0204h)=14
(0206h)=16
(0208h)=18
(AR0)=020Ah
(AR1)=0
(ACC)=91h
5、请写出执行后,各指定单元的内容。
;
W=5X+10Y—3Z,X=8,Y=4,Z=10
。
include"F2407REGS.H”;引用头部文件
.def_c_int0
。
text;建立一个段为。
text的代码段
_c_int0:
;相当于主程序的入口
LDP#6;指向0300h~037Fh区
SPLK#8,2h;给(0302h)赋初值8
SPLK#4,4h;给(0304h)赋初值4
SPLK#10,7h;给(0307h)赋初值10
SPM0;设置PREG输出的移位模式
MAR*,AR2;AR2为当前AR
LARAR2,#0302h;x的地址
LT*;T←x
MPY#5;P←5x
LARAR2,#0304h;y的地址
LTP*;y→T,P→ACC
MPY#10;P←10y
LARAR2,#0307h;z的地址
LTA*;z→T,ACC+P→ACC
MPY#3;P←3z
SPAC;(5X+10Y)—3Z累加,累加器减乘积寄存器
LARAR2,#030Ah;W的地址
SACL*+;ACC低16位复制到指定的数据存储单元030Ah
SACH*
.end
运行后:
(0302h)=8h
(0304h)=4h
(0307h)=0Ah
(030Ah)=32h
(AR2)=020Ah
(TREG)=0Ah
(PREG)=1Eh
(ACC)=32h
四、编写程序题
对数据空间采用直接寻址和间接寻址两种方式进行访问。
在文件的链接过程中,需要用到命令文件(.cmd)。
请按如下参数设计一个命令文件,其参数为:
中断向量表起始地址为7600h,长度为8000h;
源程序代码在中断向量之后;
初始化数据起始地址为1F10h,长度为4000h;
未初始化数据在初始化数据之后
.cmd文件编写的参考格式如下:
MEMORY
{
PAGE0:
VECSorigin=0000h,length=0040h
FLASH:
origin=100h,length=7F00h
SARAM_P:
origin=8000h,length=7ffh
PAGE1:
B2:
origin=0060h,length=020h
B0:
origin=200h,length=100h
B1:
origin=300h,length=100h
SARAM_D:
origin=8000h,length=8000h
}
SECTIONS
{
vectors:
〉VECSPAGE0
.text:
>FLASHPAGE0
.cinit:
>FLASHPAGE0
。
switch:
〉FLASHPAGE0
。
bss:
>SARAM_DPAGE1
.stack:
〉SARAM_DPAGE1
。
stack:
>SARAM_DPAGE1
。
sysmem:
>SARAM_DPAGE1
}
五、程序题
1、下图所示为一个TMS320LF2407与发光二极管的接口电路。
该电路所实现的功能是循环点亮发光二极管,每个发光二极管亮0.5秒。
一部分程序如下,根据图示的接法,在程序中给出相应语句的注释.
IOSFT_REG。
usect“。
data0,1”;显示数据寄存器
。
include“F2407REGS。
H”;引用头文件
。
def_c_int0
。
text
_c_int0:
;主程序入口
CALLSYSINIT;调系统初始化程序
LDP#DP_PF2;指向7080h~7100h区
LACLMCRA;MCRA装载ACC
AND#000FFH;IOPB口配置为一般I/O功能
SACLMCRA;ACC送MCRA
LACLMCRA;MCRA装载ACC
AND#0FF00H;IOPA配置为一般I/O功能
SACLMCRA;ACC送MCRA
LACLPBDATDIR;PBDATDIR装载ACC
OR#0FF00H;IOPB口设置为输出方式
SACLPBDATDIR;ACC送PBDATDIR„„„„„
2、请指出上右图为通用定时器的计数操作模式中的哪种,并写出通用定时器所有的计数模式.答:
图中为连续增/减计数模式。
通用定时器的所有计数模式为:
停止/保持模式,连续增计数模式,定向增/减计数模式,连续增/减计数模式。
六、选择题
(1)TMS320LF2407系列DSP是A芯片。
A.定点16位B.浮点16C.定点32位D。
浮点32位
(2)当SXM=1时候,当输入定标移位器的输入为97F3h,左移4位后,其结果为B。
A。
000097F3hB.FFF97F30hC。
00097F3hD.FF97F300h
(3)当SXM=0时候,当输入定标移位器的输入为97F3h,左移4位后,其结果为C。
A.000097F3hB.FFF97F30hC。
00097F30hD.FF97F300h
(4)乘积定标移位器PSCALE可对乘积结果采用4种移位方式,下列说法不正确的是D.
A.PM=00,乘积结果不移位,直接送到CALU单元
B.PM=01,乘积结果左移1位
C.PM=10,乘积结果左移4位
D。
PM=11,乘积结果左移6位
(5)在程序,若需指定下一个辅助寄存器为AR5,则装载ST0后,STO的结果应为C。
A。
0604hB.B604hC。
A604hhD.8064h
(6)在系统控制和状态寄存器2中,可设置为微处理器和微控制器方式,以下说法不正确的是C。
A.=0,器件设为微控制器方式,程序地址范围从0000—7FFFh被映射到片内
B.=1,器件设为微处理器方式,程序地址范围从0000-7FFFh被映射到片外
C。
=0,器件设为微处理器方式,程序地址范围从0000—7FFFh被映射到片内
D。
复位后,可以通过软件来改变以动态映射存储器到片内或片外
1、TMS320LF240x系列DSP的寻址方式说法有误的是A。
A.TMS320LF240xDSP的立即寻址方式中,只有长立即数寻址,没有短立即数寻址
B。
TMS320LF240xDSP的寻址方式有:
立即寻址方式,直接寻址方式,间接寻址方式
C。
TMS320LF240xDSP的直接寻址方式在改变数据页后,必须重新装载
D。
TMS320LF240xDSP的间接寻址是通过8个16位的辅助寄存器来访问数据空间的
2、下列关于汇编语言程序编写的格式说法错误的是C。
A.语句必须以标号、空格、星号或分号开始,而且每部分必须由1个或多个空格分开
B。
开始于第1列的注释须用星号(*)或分号(;)标示,但在其他列开始的注释前面只能用分号
C。
若使用标号,则必须从第1列开始