DSP课后习题答案_第1页
DSP课后习题答案_第2页
DSP课后习题答案_第3页
DSP课后习题答案_第4页
DSP课后习题答案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章1简述典型实时数字信号处理系统组成部分。答:包括:抗混叠滤波器 (Anti-aliasing filter) 、模数转换器 ADC ( Analog-to-Digital Converter )、数字信号处理、数模转换器DAC ( Digital-to-Analog Converter )和抗镜像滤波器 (Anti-image filter) 。2简述 X86 处理器完成实时数字信号处理的优缺点。答:利用 X86 处理器完成实时数字信号处理。特点是处理器选择范围宽,主板及外设 资源丰富, 有多种操作系统可供选择, 开发、 调试较为方便; 缺点是数字信号处理能力不强, 硬件组成较为复杂,系

2、统体积、重量较大,功耗较高,抗环境影响能力较弱。 3简述数字信号处理器的主要特点。答:(1)存储器采用哈佛或者改进的哈佛结构; (2)内部采用了多级流水; ( 3)具有硬 件乘法累加单元; (4)可以实现零开销循环; ( 5)采用了特殊的寻址方式; (6)高效的特殊 指令;( 7)具有丰富的片内外设。4给出存储器的两种主要结构,并分析其区别。答:存储器结构分为两大类:冯 诺依曼结构和哈佛结构。冯 诺依曼结构的特点是只有 一个存储器空间、一套地址总线和一套数据总线;指令、数据都存放在这个存储器空间中, 统一分配地址, 所以处理器必须分时访问程序和数据空间。 哈佛结构程序存储器空间和数据 存储器空

3、间分开,具有多套地址、数据总线, 哈佛结构是并行体系结构,程序和数据存于不 同的存储器空间,每个存储器空间独立编址、独立访问。 5简述选择数字信号处理器所需要考虑的因素。答:应考虑运算速度、算法格式和数据宽度、存储器类型、功耗和开发工具。 6给出数字信号处理器的运算速度指标,并给出其具体含义。答:常见的运算速度指标有如下几种:(1) 指令周期:执行一条指令所需的最短时间,数值等于主频的倒数;指令周期通常以 ns(纳秒) 为单位。 例如, 运行在 200MHz 的 TMS320VC5510 的指令周期 为 5ns 。(2) MIPS :每秒百万条指令数。( 3) MOPS :每秒百万次操作数。(

4、4) MFLOPS :每秒百万次浮点操作数。( 5) BOPS :每秒十亿次操作数。( 6) MAC 时间:一次乘法累加操作花费的时间。大部分 DSP 芯片可在一个指令周 期内完成 MAC 操作;(7) FFT 执行时间: 完成 N 点 FFT 所需的时间。 FFT 运算是数字信号处理中的典型 算法而且应用很广,因此该指标常用于衡量 DSP 芯片的运算能力。第二章1TMS320C55x DSP 有哪些特征和优点?(表 2-2) 答:一个 32位 x 16 位指令缓冲队列:缓冲变长指令并完成有效的块重复操作; 两个 17 位 x17 位的乘法累加器:在一个单周期执行双乘法累加操作; 一个 40

5、位算术逻辑单元 (ALU) :实现高精度算术和逻辑操作; 一个 40 位桶形移位寄存器:能够将一个 40 位的计算结果最高向左移 31 位或向右 移 32 位;一个 16 位算术逻辑单元 (ALU) :对主 ALU 并行完成简单的算术操作; 4个 40 位的累加器:保留计算结果,减少对存储单元的访问; 12条独立总线,其中包括 3 条读数据总线、 2 条写数据总线、 5 条数据地址总线、 1 条读程序总线、 1 条程序地址总线:为各种计算单元并行地提供将要处理的指令 和操作数利用 C55x 的并行机制的优点; 用户可配置 IDLE 域:改进了低功耗电源管理的灵活性。2TMS320C55x DS

6、P 的内部结构由哪几部分组成?(图2-1)答: C55x 有一条 32 位的程序数据总线( PB),5 条 16 位数据总线( BB、CB、DB、 EB、FB)和 1条24位的程序地址总线及 5条 23位的数据地址总线,这些总线分别与CPU相连。总线通过存储器接口单元( M )与外部程序总线和数据总线相连,实现CPU 对外部存储器的访问;指令缓冲单元( I)、程序流程单元( P)、地址流程单元( A )和数据计算单 元( D);以及存储器接口单元( M)。3简述指令缓冲单元( I )、程序流程单元( P)、地址流程单元( A )和数据计算单元( D) 的组成和功能?答: C55x 的指令缓冲单

7、元由指令缓冲队列 IBQ ( Instruction Buffer Queue )和指令译码 器组成。在每个 CPU周期内, I单元将从读程序数据总线接收的 4B程序代码放入指令缓冲 队列,指令译码器从队列中取 6B 程序代码,根据指令的长度可对 8 位、 16位、 24 位、32 位和 48 位的变长指令进行译码,然后把译码数据送入P 单元、 A 单元和 D 单元去执行。程序流程单元由程序地址产生电路和寄存器组构成。 程序流程单元产生所有程序空间的 地址,并控制指令的读取顺序。地址流程单元包括数据地址产生电路、 算术逻辑电路和寄存器组构成。 数据地址产生电 路( DAGEN )能够接收来自

8、I 单元的立即数和来自 A 单元的寄存器产生读取数据空间的地 址。对于使用间接寻址模式的指令,由 P 单元向 DAGEN 说明采用的寻址模式。数据计算单元由移位器、算术逻辑电路、乘法累加器和寄存器组构成。 D 单元包含了 CPU 的主要运算部件。 D 单元移位器能够接收来自 I 单元的立即数,能够与存储器、 I/O 空 间、A 单元寄存器、 D 单元寄存器和 P单元寄存器进行双向通信,此外,还可以向 D 单元 的 ALU 和 A 单元的 ALU 提供移位后的数据。4TMS320C55x DSP 的流水线操作包括多少个阶段?每一阶段完成什么操作? 答:两个。第一阶段是取流水线, 即从内存中取出

9、32位的指令包,放入指令缓冲队 (IBQ) 中,然后为流水线的第二阶段提供 48 位的指令包。第二阶段是指执行流水线,这部分的功 能是对指令进行解码,完成数据的存取和计算。5TMS320C55x DSP 有哪些片上外设?答:两个 20 位的定时器。一个看门狗定时器。 6 通道直接存储器存取控制器( DMA )。外部存储器接口 (EMIF )。三个串口支持最多三个多通道缓冲串口( McBSP )或最多两个多 媒体 /安全数字卡接口。增强型主机接口( EHPI )是一个 16 位的并行接口。可编程锁相环 (DPLL )时钟发生器。 USB 全速( 12Mbps )从端口。 I2C 主从接口。一个实

10、时时钟。6 TMS320C55x 的寻址空间是多少?当CPU 访问程序空间和数据空间时,使用的地址是多少位的?答: C55x 的寻址空间为 16MB ,当 CPU从程序空间读取程序代码时,使用 24 位地址, 当访问数据空间时, 使用 23 位的地址。但是在访问数据空间时, 将 23 位地址左移一位,并 将地址总线上的最低有效位( LSB )置 0,使得在对数据空间或程序空间寻址时,地址总线 都传送 24 位地址。7符合 IEEE1149.1 标准的测试 / 仿真接口的引脚有哪几个?答: TCK 引脚、 TDI 引脚、 TDI 引脚、 TMS 、TRST 、 EMU0 、 EMU1/OFF第三

11、章1 C55x DSP 支持哪三种寻址模式?答: C55x DSP 支持三种寻址模式,绝对寻址模式;直接寻址模式;间接寻址模式。 2简述 k16 绝对寻址和 k23 绝对寻址不同点和相同点。答:不同 k16 绝对寻址的指令其操作数为 *abs16(#k16) ,其中 k16 是一个 16 位的无符号 常数。寻址方法是将 7 位的寄存器 DPH(扩展数据页指针 XDP 的高位部分)和 k16 级联形 成一个 23 位的地址,用于对数据空间的访问。该模式可以访问一个存储单元和一个存储映 射寄存器。和 k23 绝对寻址的指令其操作数为 *(#k23) ,其中 k23 是一个 23 位的无符号常数。使

12、用 这种寻址方法的指令将常数编码为 3 字节(去掉最高位) 。相同点: k16 绝对寻址和 k23 绝对寻址的指令不能与其他指令并行执行。 3简述 C55x DSP 并行指令遵守的规则。答:在并行指令中,必须遵守三条基本规则: 两条指令的总长度不能超过 6 个字节。 在指令的执行过程中不存在操作器、地址产生单元、总线等资源冲突。 其中一条指令必须有并行使能位或两条指令符合软- 双并行条件。4 已知 AC1=0200FC00H , AR3=0200H ,(200)=3400H 。MOV *AR3+ #16AC0、 AR1 、 AR2 和AC1 的值分别是多少?答: Before AfterAC0

13、 00 6900 0000AC0 00 95C0 9200AC1 00 0023 0000AC1 00 0023 0000*AR1 EF00*AR1 EF00AR2 0201AR2 0202*CDP A067*CDP A067ACOV0 0ACOV0 1ACOV1 0ACOV1 0CARRY 0CARRY 0M40 0M40 0FRCT 0FRCT 0SATD 0SATD 07 已知 PC=004042H , AC0=0000000001H ,根据下表的情况B branch 执行上面指令后, PC和 AC0 分别是多少? 答: BeforeAfterPC 006047PC 004042第四章1

14、根据任务调度的方式不同,C55x 处理器程序可以分为哪两类?并简述其优缺点。答:一类是由程序自己完成任务调度,另一类是由嵌入式操作系统完成任务调度。 由程序自身完成任务调度程序运行效率高, 对硬件中断响应快, 程序运行稳定, 适 合于任务较为单一, 实时性较强的应用; 嵌入式操作系统完成任务调度, 可以将应 用分解为多个任务, 简化了应用系统软件设计, 更为重要的是良好的多任务设计有 助于提高系统的稳定性和可靠性。2请利用指针将 IO 空间中地址从 0x100 到 0x107 中的值放置到数据空间 *ptr 指针当中。 答: ioport int *a;Int *ptrvoid foo (vo

15、id)i = 0x100;a = &i;for(int j=0;j=7;j+)ptr j=aj;3在 o3 级优化情况下,利用中断读取 0x100000 地址,并将值存放到变量 in_flag 中。 答:变量 in_flag 定义volatile unsigned int in_flag;中断服务程序interrupt void int_handler()In_flag= (unsigned int *)0x100000;4在 C语言编写的程序中, 分别给出利用 C 语言和嵌套汇编语言打开全局中断的程序代码。 答: C 语言打开全局中断IRQ_globalEnable(); 嵌套汇编语言打开全

16、局中断 asm (“BCLR ST1_INTM ”); 5给出函数 int fn(long l1, long l2, long l3, int *p4, int *p5, int *p6, int *p7, int *p8, int i9, int i10)中传送参数所使用的寄存器。答:输入参数通过 AC0、AC1、AC2 、AR0、AR1、AR2 、AR3 、 AR4 、 T0 、T1传递, 输出参数通过 T0 传送参数。6在.sine数据段中定义一个 16点的正弦表,其数值采用 Q15 方式存放。(Q15即小数点在 第 15 位)答:.sina.word0, 12539,23170,302

17、73.word32767, 30273,23170,12539.word0,-12539,-23170,-30273.word-32767,-30273,-23170,-125397在 .mydata 段中为 a,b,c 分别预留 10、 20、5 个字的空间。 答:.def _a.def _b.def _c.sect mydata_a:.space 10*16 ;_b:.space 20*16;_c:.space 5*16;8请给出调用图像和视频处理库所需要的.h 文件和 .lib 文件。答:调用图像和视频处理库需要需要包含 imagelib.h 文件,如过采用小模式编程需要 55ximag

18、e.lib ,而采用大模式编程需要 55ximagex.lib 库。第五章1C55x 的片内外设可以分为哪几类?这些片上外设可以通过什么工具完成片上外设的操 作?答:可以分为时钟与定时器类、 外部设备连接接口、 信号采集和通信接口类以及其他外 设。用户可以通过片上外设支持库完成外设的操作, 片上外设支持库为用户提供了控制片上 外设的函数、宏等工具,用户可以通过程序或者 DSP/BIOS 完成这些函数和宏的调用。 2片上外设支持库具有什么特点?答: 1)采用标准协议对外设进行编程。片上外设支持库采用标准协议实现片上外设的 编程,这些协议包括数据类型、定义外设配置的宏定义,以及实现各种外设操作的函

19、数等;2)基本资源管理。可以通过程序实现多通道外设的资源管理;3)设备的符号描述。片上外设支持库通过对外设寄存器和寄存器域的符号定义,使得 程序在不同 DSP 之间的移植变得容易,而当 DSP 的版本发生升级时,可以最大程度减少程 序的修改。3如何测试时钟发生器是否正常工作?答:( 1)检查 DSP 的时钟输入引脚 CLKIN 、时钟输出引脚 CLKOUT 和时钟模式引脚CLKMD 连接是否正确,正常情况下 CLKIN 应接时钟源,而 CLKMD 应拉高或拉低, CLKOUT 应是信号输出引脚;( 2)系统加电后测量 CLKIN 引脚时钟输入是否正常,信号的高低电平及占空比是否 满足需要;(

20、3)在没有进行软件设置的情况下,DSP 在复位后 CLKOUT 的输出直接受 CLKMD控制,当 CLKMD 为高, CLKOUT 的输出频率将等于 CLKIN 的频率, CLKMD 为低则 CLKOUT 输出将等于 CLKIN 的频率的 1/2 ;( 4)如果以上步骤运行正常,则利用软件设置CLKMD 寄存器,使时钟产生器工作于PLL 锁相环模式下,此时再检测 CLKOUT 信号,查看锁相环是否正常工作。4设数字信号处理器定时器输入时钟频率为100MHz ,如果要求定时器发送中断信号或同步事件信号的频率为 1000 次每秒,需要如何对定时器进行设置?答:根据公式TINT 频率输入时钟频率(T

21、DDR 1) (PRD 1)输入时钟频率为 100MHz ,由于 TDDR 为 4位,这里我们把 TDDR 设为 9,则 PRD 为 9999 。5为了完成 McBSP 串口的测试,需要其在回环模式下工作,试画出回环模式工作框图。答:6系统需要通过 EHPI 接口完成引导,在该引导模式下需要如何对通用引脚进行设置? 答:在 EHPI 引导模式下, BOOTM3:0 的值为 1101B, 下面给出通过 GPIO 设置 DSP 上 电方式示意图。7如何对通用输入输出引脚进行测试? 答:(1)输入口测试 输入口测试步骤如下:1)通过 I/O 方向寄存器 IODIR 设置某一个引脚为输入方向;2)在已

22、设置为输入方向的引脚上外加LVTTL 信号;3)DSP 访问 I/O 数据寄存器 IODATA 查看引脚上的逻辑电平,与外加 LVTTL 电平比 较来测试输入口是否工作正常。(2)输出口测试 输入口测试步骤如下:1)通过 I/O 方向寄存器 IODIR 设置某一个引脚为输出方向;2)在 I/O 数据寄存器 IODATA 上设置这个引脚的逻辑电平;3)测量引脚的电平,与设置的逻辑电平相比较来检测输出口是否正常工作。8 DMAGCR 寄存器中的 EHPIEXCL 位设置为 0 或 1 时有何区别? 答:当 EHPIEXCL=0 ,HPI 和 DMA 通道共享 DARAM 、 SARAM 和 EMI

23、F ;当 EHPIEXCL=1 ,HPI 独占 DARAM 和 SARAM , DMA 通道只能访问 EMIF 和外设。第六章1 CCS 集成开发环境有哪些功能?答: CCS 的功能十分强大,它集成了代码的编辑、编译、链接和调试等功能,而且支 持 C 和汇编混合编程,其主要功能如下。集成可视化代码编辑界面 :可直接编写 C 、汇编、 C 和汇编混合、 .H 文件、 .cmd 文件 等; 集成代码生成工具 :包括汇编器、优化 C 编译器、链接器等,将代码的编辑、编译、 链接和调试等功能集成到一个开发环境中; 基本调试工具 :可以装入执行代码 (.out 文件 ) , 查看寄存器窗口、存储器窗口、

24、反汇编窗口和变量窗口,并且支持 C 源代码级调试; 断点 工具 :能在调试程序的过程中,设置软件断点、硬件断点、数据空间读/写断点、条件断点(使用 GEL 编写表达式)等; 探针调试工具( probe points ):可用于算法仿真,数据监视 等; 性能分析工具 (profile points) :可用于评估代码执行的时钟数; 实时分析和数据可视化 工具 :例如:数据的图形显示工具,可绘制时域/频域波形、眼图、星座图、图像等,并具有自动刷新功能(使用 Animate 命令运行);GEL 工具 :用户利用 GEL 扩展语言可以编写 自己的控制面板 /菜单,设置 GEL 菜单选项,可方便直观地修

25、改变量,配置参数等; 支持实 时数据交换 RTDX ( Real Time Data Exchange )技术 :该技术可在不中断目标系统运行的 情况下, 实现 DSP与其他应用程序 (OLE)的数据交换; 提供 DSP/BIOS 工具 :增强对代码的 实时分析能力, 如分析代码执行的效率、 调度程序执行的优先级、 方便管理或使用系统资源 (代码 /数据占用空间,中断服务程序的调用,定时器使用等),从而减少了开发人员对硬件资源熟悉程度的依赖性; 支持多 DSP 的调试 。2 在 CCS 集成开发环境中可以使用的仿真设备包括哪些?答:仿真设备包括软仿真器( Simulator )、各种硬仿真器(

26、 Emulator )、TI 或第三方公司 提供的 DSP初学者套件( DSK)和 DSP评估板( EVM )等。3 CCS 的所有窗口都含有一个关联菜单,如何打开一个窗口的关联菜单? 答:只要在该窗口中单击右键,就可以打开关联菜单。4 CCS 为用户提供了哪几种常用的工具条? 答:常用工具条包括:标准工具条、编辑工具条、项目工具条和调试工具条。5 怎样创建一个新的工程项目?答:工程项目的创建过程包括:( 1)在主菜单“ Project”中选择“ New ”选项,弹出下图所示的对话框。( 2)在“ Project Name ”域中输入要创建的项目名,在“ Location ”域输入或选择将要

27、创建的工程项目所处的目录,对于每个新建的工程项目,最好建立不同的目录。( 3)从“ Project”下拉列表中选择要创建的工程项目的配置(可执行程序.out 或目标库函数 .lib )。( 4 )在“ Target ”下拉列表中选择将要创建的工程项目所对应的目标器件系列 (TMS320C54xx 、TMS320C55xx 、 TMS320C62xx 等)。( 5)单击“ Finish”按钮就完成了一个工程项目的创建。6 如果工程文件是基于 C 语言编写的,怎样向工程项目中添加运行时支持库? 答:在主菜单中选择“ Project ”中的“ Add Files to Project ”选项,或在工

28、程项目浏览窗 口单击项目名,在弹出的对话框中选择“Add Files ”选项。在弹出的对话框中选择要添加文 件的目录,在 CCS 的安装目录“ c5500cgtoolslib ”下,在添加文件对话框的“文件类型” 下拉列表中要选择“ Object and Library Files( *.o*,*.l* )”,向工程里添加“ rts55x.lib ”或 “rts55.lib ”文件。7 在调试程序时,经常使用断点,它的作用是什么?怎样设置和删除断点? 答:程序运行过程中如果遇到断点, 就会暂时停止运行, 回到调试状态。用户可以通过 查看变量、图形等方式,发现程序中的错误。断点可以设置在源代码行

29、上,也设置在反汇编窗口中的指令行上。有三种方法可以快 速地设置断点。 在反汇编窗口或含有 C/C+ 的源代码窗口中, 将光标移动到需要设置断点的指令 行上,单击右键,在弹出的菜单中选择“Toggle breakpoint ”命令,在本行左边会出现红色标记,表示此处有断点。 在反汇编窗口,双击要设置断点的指令行,在源代码窗口,双击指令行左边的页 边,即可完成断点的设置。 可以单击工具条上的按钮 来添加断点。 可以以下使用任何一种方法删除断点。在反汇编窗口或含有 C/C+ 的源代码窗口中,将光标移动到需要已经设有断点的 指令行上,单击右键,在弹出的菜单中选择“ Toggle breakpoint

30、”命令来取消断点。 在反汇编窗口,双击已经设有断点的指令行,在源代码窗口,双击设有断点的指 令行左边的页边,即可取消断点。可以单击工具条上的按钮 来删除断点。选择“ Debug”菜单中“ Breakpoints ”命令,出现如图 6-38 所示的“ Break/Probe Points ” 对话框,在断点列表中选择要删除的断点,单击“Delete”按钮,单击“ OK ”按钮即可。8 什么是探针点?它的作用是什么?怎样设置和删除探针点? 答:探针点( Probe Point )是 CCS 中比较有特色的工具,程序运行到探针点会执行特 定的操作,如刷新图形、文件输入 /输出等。有两种方法可以很方便

31、地设置探针点: 将光标移动到需要设置探针点的位置, 单击右键, 在弹出的菜单中选择“ Toggle Probe Point ”命令,该行最左边将出现一个蓝色菱形探针点标 志;或单击项目工具条上的按钮 完成探针点的设置。探针点的删除: 在反汇编窗口或含有 C/C+ 的源文件中, 将光标移动到已设置探针点的 位置,单击右键,在弹出的菜单中选择“Toggle Probe Point ”命令即可删除探针点;或单击项目工具条上的按钮 删除探针点。单击项目工具条上的按钮 可以删除所有探针点。第七章1如果电源芯片 TPS54110的输出电压为 1.4V ,应如何设置 R1、R2 的电阻阻值?答:根据公式R1 R2 0.891VOUT 0.891如果 R2 为 3.92K,将值带入公式,最后得到 R1 为 6.86 K。2请给出 TMS320VC5510 的上电加载方式。答: TMS320VC5510 的上电加载方式有 SPI 口加载方式, EMIF 口加载方式、 EHPI 口 加载方式和 McB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论