DSP原理及应用课后答案 电子工业出版社

更新时间:2023-10-20 10:56:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第二章

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 段(文本段),通常包含可执行代码; .data 段(数据段),通常包含初始化数据;

.bss段(保留空间段),通常为未初始化变量保留存储空间。 5、链接器对段是如何处理的?

答:链接器将一个或多个 COFF 目标文件中的各种段作为链接器的输入段,经过链接后在一个可执行的 COFF 输出模块中建立各个输出段,通过情况下是将不同目标文件中的同名段进行合并,并为各个输出段分配进具体的存储器中。 6、什么是程序的重定位?

答:将各个段配置到存储器中,使每个段都有一个合适的起始地址;

将符号变量调整到相对于新的段地址的位置;将引用调整到重新定位后的符号,这些符号反映了调整后的新符号值。

7、宏定义、宏调用和宏展开分别指的是什么?

答:在调用宏之前,必须先定义宏。可以在源程序的任何位置定义宏,宏定义的所有内容必须包含在同一个文件中。宏定义可以嵌套,即在一条宏指令中调用其他的宏指令。在定义宏之后,可在源程序中使用宏名进行宏调用。

8、链接器能完成什么工作?链接器命令文件中,MEMORY 命令和 SECTIONS 命令的任务是什么?

答:链接器将各个目标文件合并起来,并完成如下工作:( 1)将各个段配置到目标系统的储器。( 2)对各个符号和段进行重新定位,并给它们指定一个最终的地址。( 3)解决输入文件之间的未定义的外部引用。 MEMORY 命令的作用: MEMORY 命令用来建立 DSP应用系统中的存储器模型。通过这条命令,可以定义系统中所包含的各种形式的存储器,以及它们占用的地址范围。 SECTION 命令的作用:说明如何将输入段结合成输出段;在可执行程序中定义输出段;规定输出段在存储器中的存储位置;允许重新命名输出段。第七章 TMS320C54x 片内外设、接口及应用 1、已知 TMS320C54X 的 CLKOUT 频率为 4MHz,那么, ①在 SAM 工作方式下,主机的时钟频率是多少?

解:在 SAM 工作方式下,主机频率可达 3.2MHz 或 2.4MHz。

②在 HOM 工作方式下,主机的时钟频率与 TMS320C54X 的时钟频率有关吗?

答:在 HOM 工作方式下,主机的时钟频率与 TMS320C54X 的时钟频率无关。 2、试分别说明下列有关定时器初始化和开放定时中断语句的功能(针对 5402 处理器)。 ①STM #0004H, IFR

解:清除外部中断 2 标志位 ②STM #0080H, IMR

解:允许定时器 T1 或 DMAC1 中断(使用哪一种中断由 DMA 通道优先级和使能控制寄存器 DMPREC 控制。在复位以后,中断被配置为定时器 T1 中断)。 ③RSBX INTM

解:使能所有可屏蔽中断。 ④STM #0279H, TCR

解:设置定标计数器的值 PSC 为 9;定时器分频系数为 9;以 PRD 中的值加载 TIM,以 TDDR中的值加载 PSC;定时器停止工作。 3、试分别说明下列语句的功能。 ① STM #SPCR10, SPSA0 STM #0001H, BSP0

解:对串口控制寄存器 SPCR10 赋值。不使用数字循环返回模式,接收数据 DRR[1, 2]采用右对齐方式,连续时钟方式, DX 使能判断,接收中断由 RRDY 产生,接收移位寄存器未超载,串口接收器准备好,使能串口接收器。 ②STM #SPCR20, SPSA0 STM #0081H, BSP0

解:对串口控制寄存器 SPCR20 赋值。串口使用软件模式,帧同步逻辑、采样率发生器复

位,由发送准备好 XRDY 驱动发送中断;发送移位寄存器为空,发送器未准备好,使能串口发送器。

③STM #SPCR20, SPSA0 ORM #01000001B, BSP0

解:修改串口控制寄存器 SPCR20 的值。由采样率发生器产生帧同步信号,使能串口发送器。

4、已知中断向量TINT=013H,中断向量地址指针 IPTR=0111H,求中断向量地址。 解:中断向量地址=(100010001B)<<9+(10011)<<2=88CCH

第八章

1、一个典型的dsp系统通常有哪些部分组成?画出原理框图? 答:一个完整的 DSP 系统通常是由 DSP 芯片和其他相应的外围器件构成。一个典型的 DSP系统应包括抗混叠滤波器、数据采集 A/D 转换器、数字信号处理器 DSP、 D/A 转换器低通滤波器等。 DSP 系统的工作过程:①将输入信号 x(t)经过抗混叠滤波,滤掉高于折叠频率的分量,以防止信号频谱的混叠。②经过采样和 A/D 转换器,将滤波后的信号转换为数字信号 x(n)。③数字信号处理器对 x(n)进行处理,得数字信号 y(n)。④经 D/A 转换器,将 y(n)转换成模拟信号;⑤经低通滤波器,滤除高频分量,得到平滑的模拟信号 y(t)。

2、dsp系统硬件设计过程都有哪些步骤?

答:第一步:确定硬件实现方案;第二步:器件的选择;第三步:原理图设计;第四步:PCB 设计;第五步:硬件调试;

第九章

工程项目的管理

CCS 开发环境对用户系统采用工程项目的集成管理,使用户系统的开发和调试变得简单明了。在开发过程中, CCS 会在开发平台中建立不同独立程序的跟踪信息,通过这些跟踪信息对不同的文件进行分类管理,建立相应的文件库和目标文件。一个工程项目包括源程序、库文件、链接命令文件和头文件等,它们按照目录树的结构组织在工程项目中。工程项目构建(编译链接)完成后生成可执行文件。 9.1 CCS 集成开发环境都有哪些功能?

答:CCS 集成开发环境。此环境集编辑,编译,链接,软件仿真,硬件调试和实时跟等功能于一体,包括编辑工具,工程管理工具和调试工具等。

9.3 在CCS 的所有窗口中,都含有一个关联菜单。怎样打开这个关联菜单? 答,只要在该窗口中单击右键就可以打开关联菜单。 9.4 CCS 软件为用户提供哪几种常用的工具条?

答:标准工具条,编辑工具条,项目工具条和调试工具条

9.6 CCS 软件可为用户提供各种窗口,常用的窗口都有哪些?怎样打开? 答:反汇编窗口,存储器窗口,寄存器窗口,观察窗口,

反汇编窗口:主要用来显示反汇编后的指令和调试所需的符号信息,包括反汇编指令,指令所存放的地址和相应的操作码。当程序装入目标处理器或仿真器后,CCS 会自动打开反汇编窗口。存储器窗口:可以直接显示存储器的内容。在调试程序的过程中,可直接观察存储器的内容来确定程序的正确性。

9.7 一个工程项目都包含有哪些文件?怎样建立一个新的工程项目?

答:一个工程项目包括源程序,库文件,链接命令文件和头文件等,它们按照目录树的结构组织在工程项目中。见课本(P358)

9.8 CCS 软件为用户构建工程项目提供了哪几种操作?这些操作有什么不同? 答:1,编译文件:编译文件仅完成对当前源文件的编译,不进行链接。2,增加性构建:增加性构建仅对修改的源文件进行编译,先前编译过,没有修改的文件不再进行编译。3,全部重新构建:是对当前工程项目中的所有文件进行重新编译,重新链接,形成输输入放大电路抗混叠滤波器A/D 转换器DSPI/O 口存储器D/A 转换器平滑滤波输出出文件。4,停止构建:停止当前的构建进程。

9.9 怎样使用CCS 软件来调试程序?其都有哪些步骤?

答:CCS 开发环境提供了异常丰富的调试手段。当完成工程项目构建,生成目标文件后就可以进行程序的调试。一般的调试步骤为:1、装入构建好的目标文件;2、设置程序断点,探测点和评价点;3、执行程序;4、程序停留在断点处,查看寄存器和内存单元的数据,并对中间数据进行在线(或输出)分析。反复上述过程直到程序达到预期的功能为止。

9.10 在CCS 软件中,程序运行控制经常需要哪些操作?CCS 提供了四种实时运行程序的操作,它们分别是哪些操作?各有什么不同?

答:在调试程序的过程中,经常需要复位,执行,单步执行等操作。1、装载文件2、复位目标处理器3、单步运行4、实时运行

本文来源:https://www.bwwdw.com/article/gyaf.html

Top