DSP原理及应用课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DSP原理及应用课后习题答案
简述DSP芯片的主要特点
哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。
多总线结构---保证在一个机器周期内可以多次访问程序存储空间和数据存储空间。
指令系统的流水线操作--减少指令执行时间,增强处理器的处理能力。取址,译码,取操作和执行四个阶段。
专用的硬件乘法器--使乘法累加运算能在单个周期内完成。
特殊的DSP指令、快速的指令周期、硬件配置强。
详细描述冯诺依曼结构和哈佛结构,并比较不同?
冯诺依曼结构--数据和程序共用总线和存储空间,在某一时刻,只能读写程序或者读写数据。将指令、数据、地址存储在同一个存储器统一编址,依靠指令计数器提供的地址来区分是指令‘数据还是地址,取指令和取操作数都访问同一存储器,数据吞吐率低。
哈佛结构----将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。改进的还允许在程序存储空间和数据存储空间之间相互传送数据。
DSP系统的设计过程?
确定DSP系统设计的性能指标;进行算法优化与模拟;选择DSP芯片和外围芯片;进行硬件电路的设计;进行软件设计;进行软硬件综合调试。
请描述TMS320C54x的总线结构?
C54X采用先进的哈佛结构并具有八组总线, 其独立的程序总线和数据总线允许同时读取指令和操作数,实现高度的并行操作。程序总线PB传送从程序存储器来的指令代码和立即数。
3组数据总线连接各种元器件。CB和DB总线传送从数据存储器读出的操作数,EB总线传送写入到存储器中的数据。(1分)
4组地址总线PAB\CAB\DAB\EAB传送执行指令所需的地址。
TMS320C54x片内存储器一般包括哪些种类?如何配置片内存储器?
C54X片内存储器一般包括两种类型:ROM(只读存储器),RAM(随机访问存储器)。RAM又可分为双访问DARAM和单访问SARAM。
简述TMS320C54X芯片的CPU各组成部分及其功能。
CPU状态和控制寄存器:用于设置各种工作条件和工作方式的状态以及存储器配置状态和控制信息。
40位算术逻辑单元、40位累加器A和B:两者共同完成算术运算和逻辑运算。
桶形移位寄存器:使处理器能完成数字定标,位提取,对累加器进行归一化处理等操作。
乘法器/加法器单元:在单周期内完成一次乘法累加运算。
比较选择和存储单元:是专门为Viterbi算法设计的加法,比较,选择操作的硬件单元。
指数编码器:用于支持单周期指令EXP的专用硬件。
TMS320C54x存储器包括哪几个空间?
64k程序存储空间:程序指令和程序中所需的常数表格
64k数据存储空间:存储需要程序处理的数据或程序处理后的结果
64kI/O存储空间:存储与外部存储器映像的外设接口
TMS320C54x有几种状态和控制寄存器?它们的功能?
状态寄存器ST0 和状态寄存器ST1:0和1包括了各种工作条件和工作方式的状态
处理器方式状态寄存器PMST:包括了存储器配置状态和控制信息
TMS320C54x的片内外设有哪些?以及它们的功能?
通用I/O引脚:扩展外部存储器;
定时器:用于周期性的产生中断和周期输出;
时钟发生器:为C54X提供时钟信号;
主机接口:外部主机或主处理器可以通过HPI接口读写C54X的片内RAM,从而大大提高数据交换能力;
串行口:这些串口可提供全双工,双向的通信功能,可与编解码器,串行AD转换器和其他串行器件通信,也可以用于微处理器之间的通信。
软件可编程等待状态发生器:它可以将外部总线周期扩展到14个机器周期,以使C54X与低速外部设备接口;
可编程分区转换逻辑:它允许C54X在外部存储器分区之间切换时不需要外部为存储器插等待状态。
TMS320C54x提供哪几种数据寻址方式?如何寻址的?
立即数寻址:指令中有一个固定的立即数LD #0,ARP
绝对寻址:指令中有一个固定的地址(16位):数据存储器寻址dmad 程序存储器寻址pmad
端口地址PA寻址,*(lk)寻址
累加器寻址:按累加器的内容作为地址去访问程序存储器中的一个单元READA Smem
直接寻址:指令编码中含有的7位地址DP或SP一起合成数据存储器中操作数的实际地址
间接寻址:通过辅助寄存器寻址单操作数寻址和双操作数寻址
存储器映射寄存器MMR寻址:修改存储器映射寄存器的值,而不影响当前数据页面指针DP和当前堆栈指针SP的值堆栈寻址:把数据压入或弹出系统堆栈。
在循环寻址方式中,如何确定循环缓冲的起始地址、若缓冲大小32,其起始地址从哪开始?
循环寻址中,循环缓冲区大小寄存器用于确定循环缓冲区的大小。大小为R的循环缓冲区必须从一个N位边界开始,XXXX
XXXX XX00 0000开始
双数据存储器操作数间接寻址使用哪几种类型,所用辅助寄存器只能是那几个,其特点是?*ARx、*ARx-、*ARx+、*ARx+0% 只能使用AR2、AR3、AR4、AR5.
在一个机器周期内通过两个16位数据总线读两个操作数,或者一次读一次写。
汇编器和链接器如何对段进行管理?
汇编器通过段位指令自动识别各个段,并将段名相同的语句汇编在一起。
链接器:对汇编器产生的COFF目标文件中的各段作为输入端,当有多个文件进行链接时,将输入段组合起来,在可执行的COFF 输出模板中建立各个输出端;链接器为输出段选择存储器地址。
汇编程序中的伪指令有什么作用?其中段定义伪指令有哪些?初始化段和末始化段有何区别?
对汇编器、链接器有重要的指示作用,包括段定义、条件汇编、文件引用、宏定义
.text--存放程序代码.data---存放初始化了的数据.bss---存放未初始化的变量.sect ‘名称’---定义一个有名段,放初始化了的数据或程序代码。
未初始化段主要用来在存储器中保留空间,没有实际内容。已初始化段包含可执行代码或已初始化数据,放在目标文件中,加载程序再放到C54x存储器中。
链接命令文件有什么作用?MEMORY和SECTIONS伪指令的作用?
链接命令文件用来为链接器提供链接信息,可将链接操作所需的信息放在一个文件中,在多次使用相同的链接信息,方便调用。链接器要确定输出端应分配到存储器的位置,首先需要一个目标存储器的模型,MEMORY指令就是指定目标存储器的模型,SECTIONS伪指令的作用:说明如何将输入段组合成输出段;在可执行文件中定义输出段;指定输出段在存储器中存放的位置;允许对输出段重新命名。
TMS320C54x CPU接收到可屏蔽的硬件中断时,满足哪些条件才能响应中断?
优先级最高中断,当同时有几个硬件请求中断时,C54x根据优先级进行响应;
状态寄存器ST1中的INTM位是0,表示允许可屏蔽中断;
中断屏蔽寄存器IMR中相应的位是1。
TMS320C54x 的中断向量表是如何重定义的?
DSP复位时,中断向量表的起始地址固定为0FF80H,复位后,中断向量可重新被映像到程序存储器的任何一个128子页的地方(除保留区域外),中断向量地址由PMST中的中断向量指针IPTR(9位)和中断向量号(0~31)左移两位后组成。
简述非延迟分支转移与延迟分支转移的不同。
非延迟分支转移:在指令流水线中先清除分支指令后面已读入的一个双字指令或两个单字指令,然后再进行分支转移;
延迟分支转移:跟在分支指令后的一个双字指令或两个单字指令先执行,然后进行分支转移。、