DSP课后习题答案 李建 下载本文

内容发布更新时间 : 2024/4/28 19:44:06星期一 下面是文章的全部内容请认真阅读。

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

解:流水线图如下图:

STLM A,AR0

STM #10,AR1 (1st Word)

STM #10,AR1 (2nd Word)

LD *AR1,B

1 预取指

2 取指 预取指

3 译码 取指

4 寻址 译码

5 读数 寻址

6 执行 写AR1 读数 写AR2 寻址 译码 7 执行 写AR2 读数 寻址 读AR2 8

9

预取指

取指 预取指 译码 取指 执行 读数 执行 解决流水线冲突:最后一条指令( 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 的地址为地址的存储单元中;

5、 TMS320C54x 的数据寻址方式各有什么特点? 应该应用在什么场合?

答: TMS320C54x 有 7 种基本的数据寻址方式: 立即寻址, 绝对寻址, 累加器寻址, 直接寻址, 间接寻址, 存储器映像寄存器寻址和堆栈寻址。

1, 立即寻址: 其特点是指令中包含有

一个固定的立即数, 操作数在指令中, 因而运行较慢, 需要较多的存储空间。 它用于对寄存器初始化。

2, 绝对寻址:可以寻址任一数据存储器中操作数,运行较慢,需要较多的存储空间。它用于对寻址速度要求不高的场合。

3, 累加器寻址: 把累加器内容作为地址指向程序存储器单元。 它用于