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 解:本段程序需要在 A