dsp原理及应用课后答案电子工业出版社
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章
3、处理器工作方式状态寄存器 PMST 中的 MP/MC、 OVLY 和 DROM 三个状态位对 C54x 的存储空间结构各有何影响?
当 OVLY= 0 时,程序存储空间不使用内部 RAM。当 OVLY= 1 时,程序存储空间使用内部RAM。内部 RAM 同时被映射到程序存储空间和数据存储空间。当 MP/ MC=0 时,4000H~EFFFH 程序存储空间定义为外部存储器; F000H~FEFFH 程序存储空间定义为内部ROM;当 MP/ MC=1 时, 4000H~FFFFH 程序存储空间定义为外部存储。DROM=0:
0000H~3FFFH——内部 RAM ; 4000H~FFFFH——外部存储器; DROM=1 :0000H~3FFFH——内部 RAM; 4000H~EFFFH——外部存储器; F000H~FEFFH——片内ROM; FF00H~FFFFH——保留。
4 、 TMS320C54x 芯片的片内外设主要包括哪些电路?
①通用 I/O 引脚②定时器③时钟发生器④主机接口 HPI⑤串行通信接口⑥软件可编程等待状态发生器⑦可编程分区转换逻辑
5、 TMS320C54x 芯片的流水线操作共有多少个操作阶段每个阶段执行什么任务完成一条指令都需要哪些操作周期?
六个操作阶段:①预取指 P;将 PC 中的内容加载 PAB ②取指 F; 将读取到的指令字加载 PB③译码 D; 若需要,数据 1 读地址加载 DAB;若需要,数据 2 读地址加载 CAB;修正辅助寄存器和堆栈指针④寻址 A; 数据 1 加载 DB;数据 2 加载CB;若需要,数据 3 写地址加载 EAB⑤读数 R; 数据 1 加载 DB;数据 2 加载 CB;若需要,数据 3 写地址加载 EAB;⑥执行 X。执行指令,写数据加载 EB。
6、 TMS320C54x 芯片的流水线冲突是怎样产生的有哪些方法可以避免流水线冲突?答:’C54x 的流水线结构,允许多条指令同时利用 CPU 的内部资源。由于 CPU 的资源有限,当多于一个流水线上的指令同时访问同一资源时,可能产生时序冲突。解决办法①由 CPU 通过延时自动解决;②通过程序解决,如重新安排指令或插入空操作指令。为了避免流水冲突,可以根据等待周期表来选择插入的 NOP 指令的数量。
7、 TMS320C54x 芯片的串行口有哪几种类型?
四种串行口:标准同步串行口 SP,缓冲同步串行口 BSP,时分多路串行口 TDM,多路缓冲串行口 McBSP。
8 、 TMS320VC5402 共有多少可屏蔽中断它们分别是什么NMI 和RS 属于哪一类中断源答: TMS320VC5402 有 13 个可屏蔽中断, RS 和 NMI 属于外部硬件中断。
9、试分析下列程序的流水线冲突,画出流水线操作图。如何解决流水冲突?
STLM A, AR0
STM #10, AR1
LD *AR1, B 解:流水线图如下图:
解决流水线冲突:最后一条指令( LD *AR1, B)将会产生流水线冲突,在它前面加入一条 NOP 指令可以解决流水线冲突。
10、试根据等待周期表,确定下列程序段需要插入几个 NOP 指令。
① LD @GAIN, T
STM #input,AR1
MPY *AR1+,A 解:本段程序不需要插入 NOP 指令
② STLM B,AR2
STM #input ,AR3
MPY *AR2+,*AR3+,A 解:本段程序需要在 MPY *AR2+,*AR3+,A 语句前插入 1条 NOP 指令
③MAC @x, B
STLM B,ST0
ADD @table, A, B 解:本段程序需要在 ADD @table, A, B 语句前插入 2 条 NOP指令
第三章
1、已知(80H)=50H,AR2=84H,AR3=86H,AR4=88H。
MVKD 80H, *AR2
MVDD *AR2, *AR3
MVDM 86H, AR4
运行以上程序后, (80H)、( 84H)、 *AR3 和 AR4 的值分别等于多少?
解: (80H)=50H, (84H)=50H, *AR3=50H, AR4=50H
2、已知, (80H)=20H、( 81H) =30H。
LD #0, DP
LD 80H, 16, B
ADD 81H, B
运行以上程序, B 等于多少?
答:( B) =00 0000 0000H
3、阅读以下程序,分别写出运行结果。
.bss x,4
.data
table:.word 4,8,16,32
……
STM #x,AR1
RPT #2
MVPD table,*AR1+
解:数据表 table 中的常量 4 传送到以变量 x 的地址为地址的存储单元中;数据表 table 中的常量 8 传送到以变量 x+1 的地址为地址的存储单元中;数据表 table 中的常量 16 传送到以变量 x+2 的地址为地址的存储单元中;
.bss x,4
.data
table: .word 4,8,16,32
……
STM #x,AR1
RPT #2
MVPD table,*+AR2
解:数据表 table 中的常量 4 传送到以变量 x+1 的地址为地址的存储单元中;数
据表 table中的常量 8 传送到以变量 x+2 的地址为地址的存储单元中;数据表table 中的常量 16 传送到以变量 x+3 的地址为地址的存储单元中;
3. 5 TMS320C54x 的数据寻址方式各有什么特点应该应用在什么场合?
答: TMS320C54x 有 7 种基本的数据寻址方式:立即寻址,绝对寻址,累加器寻址,直接寻址,间接寻址,存储器映像寄存器寻址和堆栈寻址。1,立即寻址:其特点是指令中包含有一个固定的立即数,操作数在指令中,因而运行较慢,需要较多的存储空间。它用于对寄存器初始化。2,绝对寻址:可以寻址任一数据存储器中操作数,运行较慢,需要较多的存储空间。它用于对寻址速度要求不高的场合。 3,累加器寻址:把累加器内容作为地址指向程序存储器单元。它用于在程序存储器和数据存储器之间传送数据。4,直接寻址:指令中包含数据存储器的低 7 位和 DP 或 SP 结合形成 16 位数据存储器地址,它寻址速度快,用于对寻址速度要求高的场合。5,间接寻址:利用辅助寄存器内容作为地址指针访问存储器,可寻址 64 千字 X16 为字数据存储空间中任何一个单元。它用于按固定步长寻址的场合。6,堆栈寻址:用于中断或子程序调用时,将数据保存或从堆栈中弹出。7,存储器映像寄存器( MMR)寻址,是基地址为零的直接寻址,寻址速度快,它用于直接用 MMR 名快速访问数据存储器的 0 页。
第四章
1、软件开发的环境有哪几种在非集成开发环境中,软件开发常采用哪些部分?
答:可以在两种开发环境中进行 C54X 的开发:非集成的开发环境和集成的开发环境。在非集成开发环境中,软件开发常采用:编辑、汇编、链接、调试等部分。
2、什么是 COFF 格式它有什么特点?
答:汇编器和链路器生成的目标文件,是一个可以由'C54x 器件执行的文件。这些目标文件的格式称为公共目标文件格式,即 COFF。
特点:在编写汇编语言程序时, COFF 采用代码段和数据段的形式,以便于模块化的编程,使编程和管理变得更加方便。
3、说明.text 段、 .data 段和.bss 段分别包含什么内容?
.text 段(文本段),通常包含可执行代码;