《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx

上传人:b****3 文档编号:4798496 上传时间:2022-12-09 格式:DOCX 页数:17 大小:44.47KB
下载 相关 举报
《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx_第1页
第1页 / 共17页
《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx_第2页
第2页 / 共17页
《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx_第3页
第3页 / 共17页
《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx_第4页
第4页 / 共17页
《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx

《《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx》由会员分享,可在线阅读,更多相关《《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx(17页珍藏版)》请在冰豆网上搜索。

《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版.docx

《DSP原理及应用修订版》邹彦主编课后答案个人终极修订版

声明:

1本人知识能力有限,只能按自己认识来判断答案的正误来编写本资料;

2、本资料为《DSP原理及应用(修订版)》邹彦主编的课后答案,仅作参考作用,不一定代表考试方向。

3、请尊重劳动成果,祝大家考试顺利!

第一章

1数字信号处理实现方法一般有几种?

答:

课本P2(2.数字信号处理实现)

2、简要地叙述DSP芯片的发展概况。

答:

课本P2(1.2.1DSP芯片的发展概况)

3、可编程DSP芯片有哪些特点?

答:

课本P3(1.2.2DSP芯片的特点)

4、什么是哈佛结构和冯诺依曼结构?

他们有什么区别?

答:

课本P3-P4(1.采用哈佛结构)

5、什么是流水线技术?

答:

课本P5(3•采用流水线技术)

6、什么是定点DSP芯片和浮点DSP芯片?

它们各有什么优缺点?

答:

定点DSP芯片按照定点的数据格式进行工作,其数据长度通常为16位、24位、

32位。

定点DSP的特点:

体积小、成本低、功耗小、对存储器的要求不高;但数值表示范围较窄,必须使用定点定标的方法,并要防止结果的溢出。

浮点DSP芯片按照浮点的数据格式进行工作,其数据长度通常为32位、40位。

由于浮点数的数据表示动态范围宽,运算中不必顾及小数点的位置,因此开发较容易。

但它的硬件结构相对复杂、功耗较大,且比定点DSP芯片的价格高。

通常,浮点DSP芯片使用

在对数据动态范围和精度要求较高的系统中。

7、DSP技术发展趋势主要体现在哪些方面?

答:

课本P9(3.DSP发展技术趋势)

8简述DSP系统的构成和工作过程。

答:

课本P10(1.3.1DSP系统的构成)

9、简述DSP系统的设计步骤。

答:

课本P12(1.3.3DSP系统的设计过程)

10、DSP系统有哪些特点?

答:

课本P11(1.3.2DSP系统的特点)

11在进行DSP系统设计时,应如何选择合理的DSP芯片?

答:

课本P13(1.3.4DSP芯片

的选择)

12、TMS320VC5416-160的指令周期是多少毫秒?

它的运算速度是多少MIPS?

解:

f=160MHz,所以T=1/160M=6.25ns=0.00000625ms;运算速度=160MIPS

第二章

1、TMS320C54X芯片的基本结构都包括哪些部分?

答:

课本P17(各个部分功能如下)

2、TMS320C54X芯片的CPU主要由几部分组成?

答:

课本P18(1.CPU)

3、处理器工作方式状态寄存器PMST中的MP/MC、OVLY和DROM3个状态位对’C54x

的存储空间结构有何影响?

答:

课本P34(PMST寄存器各状态位的功能表)

4、TMS320C54X芯片的内外设主要包括哪些电路?

答:

课本P40('C54x的片内外设电路)

5、TMS320C54X芯片的流水线操作共有多少个操作阶段?

每个操作阶段执行什么任务?

成一条指令都需要哪些操作周期?

答:

课本P45(1•流水线操作的概念)

6、TMS320C54X芯片的流水线冲突是怎样产生的?

有哪些方法可以避免流水线冲突?

答:

由于CPU的资源有限,当多于一个流水线上的指令同时访问同一资源时,可能产生时序冲突。

解决的办法:

①由CPU通过延时自动解决;②通过程序解决,如重新安排指令

或插入空操作指令。

7、TMS320C54x芯片的串行口有哪几种类型?

答:

课本P42(TMS320C54X芯片的串行口)

8、TMS320VC5402共有多少可屏蔽中断?

它们分别是什么?

NMI和RS属于哪一类中断源?

答:

课本P56(对VC5402来说,这13个中断的硬件名称为……RS和NMI属于外部硬件中断。

9、试分析下列程序的流水线冲突,画出流水线操作图。

如何解决流水线冲突?

(解题时参考课本P52【例2.7.2】)

STLMA,AR0STM#10,AR1

STLMA,ARO

STM#10,AR1

(1stWord)

STM#10,AR1

(2ndWord)

LD*AR1,B

预取指

取指

译码

寻址

读数

执行

写AR2

写AR2

读AR2

写AR1

预取指取指译码寻址读数执行

预取指取指译码寻址读数执行

LD*AR1,B解:

流水线图如下图:

1

2

3

4

5

6

7

8

9

预取指

取指

译码

寻址

读数

执行

解决流水线冲突:

最后一条指令(LD*AR1,B)将会产生流水线冲突,在它前面加入一条NOP指令可以解决流水线冲突。

10、试根据等待周期表,确定下列程序段需要插入几个NOP指令。

(流水线等待周期表P53)

1LD@GAIN,T

STM#input,AR1MPY*AR1+,A

解:

本段程序不需要插入NOP指令(查等待周期表,对于T字段,后面的存储指令需要加入一个等待周期,由于STM是一条双字指令,隐含1个等待周期,所以不用再插入等待周期)

2STLMB,AR2

STM#input,AR3MPY*AR2+,*AR3+,A

解:

本段程序需要在MPY*AR2+,*AR3+,A语句前插入1条NOP指令(在等待周期表,AR2后面的STM指令不用插入等待,但注2表面在后面的STM指令之前,不能有在

执行阶段对,ARx的写操作,而前面的STLM指令正是执行阶段写AR2,所以应插入1个等待周期。

3MAC@x,B

STLMB,ST0ADD@table.A,B

解:

本段程序需要在ADD@table.A,B语句前插入2条NOP指令

第二早

1、已知(1030H)=0050H,AR2=1040H,AR3=1060H,AR4=1080H。

MVKD1030H,*AR2(将地址单元1030H中的数据复制到AR2寄存器所指向的数据存储单元中去,因为(1030H)=0050H,AR2=1040H,执行结果(1040H)=0050H,*AR2=0050H)

MVDD*AR2,*AR3(在AR2和AR3数据存储器内部传送数据,即AR2指向的存储单元

数据=AR3指向的存储单元数据,即:

AR2=1040H,AR3=1060H,所以执行结果(1040H)

=(1060H)=0050H,*AR3=0050H)

MVDM1060H,AR4(地址1060H数据向AR4寄存器传送数据。

执行结果:

(1060H)

=AR4=0050H;)

运行以上程序后,(1030H)、(1040H)、*AR3和*AR4的值分别等于多少?

解:

运行的结果:

(1030H)=0050H,(1040H)=0050H,*AR3=0050H,AR4=0050H2、已知(1080H)=0020H,(1081H)=0030H。

STM#1080H,AR0(AR0=#1080H)

STM#1081H,AR1(AR1=#1081H)

LD*AR0,16,B(把寄存器ARO指向的地址单元中数据左移16位装入累加器B,这时(B)

=2000H)

ADD*AR1,B(把寄存器AR1指向地址单元的数据与累加器B中数据相加传送给B,这时

(B)=2OOO3OH

解:

运行以上程序后,(B)=2OOO3OH

3、阅读以下程序,分别写出运行结果。

.bssx,4.datatable:

.word4,8,16,32

JJ

STM#x,AR1

RPT#2

MVPDtable,*AR1+

解:

数据表table中的常量4传送到以变量x的地址为地址的存储单元中;数据表table中的常量8传送到以变量x+1的地址为地址的存储单元中;数据表table中的常量16传送到以变量x+2的地址为地址的存储单元中;

.bssx,4.datatable:

.word4,8,16,32

JJ

STM#x,AR1

RPT#2

MVPDtable,*+AR2

解:

数据表table中的常量4传送到以变量x+1的地址为地址的存储单元中;数据表table中的常量8传送到以变量x+2的地址为地址的存储单元中;数据表table中的常量16传送到以变量x+3的地址为地址的存储单元中;

4、NOP指令不执行任何操作,它起什么作用?

答:

延时作用,在指令中加入NOP指令可以避免流水线冲突。

延时几个周期,避免流水线冲突;需要精确延时程序时,也会用到NOP指令。

5、TMS320C54X的数据寻址方式各有什么特点?

应该应用在什么场合?

答:

课本P89(本章小结)

第四章

1、软件开发环境有哪几种?

在非集成开发环境中,软件开发常采用哪些部分?

答:

可以在两种开发环境中进行C54X的开发:

非集成的开发环境和集成的开发环境。

在非集成开发环境中,软件开发常采用:

编辑、汇编、链接、调试等部分。

2、什么是COFF格式?

它有什么特点?

答:

课本P94(4.3COFF的一般概念)

3、试说明.text段、.data段和.bbs段分别包含什么内容?

答:

课本P94(4.3.1COFF的一般概念)

4、程序员如何定义自己的程序段?

5、链接器对段是如何处理的?

答:

课本P98(4.3.3链接器对段的处理)

6、什么是程序的重新定位?

答:

课本P99(4.3.4链接器对程序的重新定位)

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

答:

课本P112(4.4.4宏定义和宏调用)

8、链接器能完成什么工作?

链接器命令文件中,MEMORY命令和SECTIONS命令的任务是什么?

答:

课本P114(4.5链接器的使用,4.5.4MOMERY命令,4.5.5SECTIONS命令)

第五章

1能用伪指令(如data)或运算符(如ADD)作为标号吗?

为什么?

(参考课本P126标

号区的格式要求)

2、标号和注释有什么差别?

它们在程序运行中作用一样吗?

答(参考课本P1291.标号;注

释是程序的人选项。

注释可以由ASCII码和空格组成。

注释在汇编源清单中显示,但不影响汇编。

注释在程序中的作用是说明语句的含义,以便对软件进行维护。

3、两个数相乘,如果结果溢出,DSP系统会报警吗?

答:

不会。

当发生溢出时,自动将结果设置为最大或最小值。

4、伪指令起什么作用?

它占用存储空间吗?

答:

伪指令给程序提供数据和控制汇编过程。

答:

它多用于代码编译的,硬件并不认识汇编语言,它们只认机器语言,程序的运行涉及由高级语言汇编成汇编语言,再由汇编语言编译成机器语言,最后由硬件执行机器语言。

编译过程中,伪指令起作用,但是伪指令不产生目标代码,仅仅是帮助编译器准确的把其他指令编译出来。

因此,伪指令在代码编译过程中所起的功能,在程序运行时伪指令已经不存在了,因为代码是编译好后才执行的。

伪指令不占用存储空间。

5、在堆栈操作中,PC当前地址为4020H,SP当前地址为0013H,运行PSHMAR7后,PC和SP的值分别是多少?

(PSHMAR7是压栈操作(完成后PC指针+1,堆栈指针SP-1)答:

PC=4021H,SP=0012H

6、试编写0.25X(-0.1)的程序代码。

参考程序如下:

.title"FracAmp.asm"

.mmregs

.global_c_int00

.bssx,1

.bssy,1

.bssz,1

.data

AmpCoef:

.word25*32768/100

.word-1*32768/10

.text

_c_int00:

ssbxFRCT

stm#x,ar1

rpt#0x1

mvpd#AmpCoef,*ar1+

stm#x,ar2

stm#y,ar3

mpy*ar2,*ar3,A

sthA,*ar1

Wait:

bWait

.end

7、将定点数0.00125用浮点数表示。

解:

A=28H;T=19H

8、试写出以下两条指令的运行结果:

1EXPA

A=FFFD876624T=0000则以上指令执行后,A、T的值各是多少?

解:

A=0xFFFD876624;T=5

2NORMB

B=420D0D0D0D,T=FFF9

则以上指令执行后,B、T的值各是多少?

解:

B=0x841A1A1A,T=FFF9

9、阅读以下程序,写出运行结果。

.bssy,5

table.word1,2,3,4,5

STM#y,AR2

RPT#5

MVPDtable,*AR2+

LD#0,B

LD#81h,AR5(有误,应改为STM#81H,AR5)

STM#0,A

STM#4,BRC

STM#y,AR5

RPTBsub-1

ADD*ARM5,B,A

STLA,*AR5+

sub:

LD#0,B

运行以上程序后,(81H),(82H),(83H),(84H)和(85H)的值分别是多少?

答:

(81H)=0001H,(82H)=0002H,(83H)=0003H,(84H)=0004H,(85H)=0005H。

10、CALL指令调用子程序与循环语句有什么不同?

答:

CALL指令调用子程序:

课本P135(子程序调用指令表);循环语句:

课本P137(532循环操作程序)

11、多次循环嵌套时,能够从最内一层循环直接跳到最外一层循环吗?

若能,则采用什么方式呢?

12、在不含循环的程序中,RPTZ#3语句和其前一句、后一句以及后第二句各运行多少次?

答:

RPTZ#3语句和其前一句运行1次,后一句运行3次,后第二句运行1次。

1、FIR和IIR数字滤波器都有哪些设计方法?

每种设计方法的步骤是什么?

(参考课本

P179~P181)

2、与FIR滤波器比较,IIR滤波器有哪些优缺点?

(参考课本P1676.2IIR滤波器的DSP实现)

3、二阶IIR滤波器,又称为二阶基本节,其结构图可以分为几种类型?

各有什么特点?

(参考课本P1681•二阶IIR滤波器)

4、略

5、FIR滤波器的算法为y(n)=a°x(n)+aix(n-1)+a2X(n-2)+a3X(n-3)+a4X(n-4),试用线性缓冲区和直接寻址的方法实现。

(参考课本P161~P162,只是对课本一些参数稍作修改便是答案)

.def

start

x

.usect

a”l

“x”,5

PA0

.set

0

PA1

.set

1

.data

COEF:

.word

1*32768/10;定义a4=0.1

.word

-3*32768/10;定义a3=-0.3

.word

5*32768/10;定义a2=-0.5

.word

-3*32768/10;定义a1=-0.3

.word

1*32768/10;定义a0=-0.1

.text

start:

SSBX

FRCT

解:

.title“FIR1.ASM”

.mmregs

P162~P163,

STM#x+5,AR2

STM#4,AR0

LD#x+1,DP

PORTRPA1,@x+1

FIR1:

RPTZ

A,#4

MACD

*AR2-,COEF,A

STH

A,*AR2

PORTW*AR2+,PA0

BD

FIR1

PORTRPA1,*AR2+0

.end

 

6、试用线性缓冲区和间接寻址方法实现题6.5算法的FIR滤波器。

(参考课本

只是对课本一些参数稍作修改便是答案)

解:

.title“FIR2.ASM”

.mmregs

.def

.bss

start

y,1

xn

.usect

a”l

“xn”,5

b0

.usect

“a0”,5

PA0

.set

0

PA1

.set

1

.data

table:

.word

1*32768/10

;定义

a4=0.1

.word

-3*32768/10

;定义

a3=-0.3

.word

5*32768/10

;定义

a2=0.5

.word

-3*32768/10

;定义

a1=-0.3

.word

1*32768/10

;定义

a0=0.1

.text

start:

SSBX

FRCT

STM

#b0,AR1

RPT#4

MVPDtable,*AR1+

STM#xn+4,AR2

STM#b0+4,AR3

STM#5,BK

STM#-1,AR0

LD#xn,DP

PORTRPA1,@xn

FIR2:

RPTZA,#4

MAC*AR2+0%,*AR3+0%,A

STHA,@y

PORTW@y,PA0

BDFIR2

PORTRPA1,*AR2+0%

.end

7、~12、略

第七章

1、试列举主机与PHI通信的连接单元?

并分别说明它们的功能。

(参考课本P2007.1'C54x的主机接口)

2、已知TMS320C54X的CLKOUT频率为4MHz。

①在SAM工作方式下,主机的时钟频率是多少?

解:

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

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

答:

在HOM工作方式下,主机的时钟频率与TMS320C54X的时钟频率无关。

3、试分别说明下列有关定时器初始化和开放定时中断语句的功能。

1STM#0040H,IFR(课本有误,此处应为STM#0080H,IFR)解:

清除外部中断2标志位。

2STM#0080H,IMR解:

允许定时器T1或DMAC1中断(使用哪一种中断由DMA通

道优先级和使能控制寄存器DMPREC控制。

在复位以后,中断被配置为定时器T1中断)。

3RSBXINTM解:

使能所有可屏蔽中断。

4STM#0279H,TCR解:

设置定标计数器的值PSC为9;定时器分频系数为9;以PRD中的值加载TIM,以TDDR中的值加载PSC;定时器停止工作。

4、假设时钟频率是40Mhz,试编写在XF端输出一个周期为2ms的方波程序段。

(参考课本P207程序,只要将课本程序中STM#1599,TIM0和STM#1599,PRD0改为

STM#3999,TIMO和STM#3999,PRD0即可。

注意计算到的Tt=1ms(高电平和低电平各1ms,故周期为2ms)。

定时器基本计算公式在课本P206)

解:

(定时半周期=CLKOUT*(TDDR+1)*(PRD+1;

1/2T=(1/4OM)*(9+1)*(3999+1)=1ms)

;abc1.asm

;定时器O寄存器地址

TIMO.setOO24H

PRDO.setOO25H

TCRO.setOO26H

;K_TCR0设置定时器控制寄存器的内容

K_TCR0_SOFT

.set

0b

;Soft=0

K_TCR0_FREE

.set

1b

;Free=1

K_TCR0_PSC

.set

1001b

;PSC=9H

K_TCR0_TRB

.set

1b

;TRB=1

K_TCR0_TSS

.set

0b

;TSS=0

K_TCR0_TDDR

.set

1001b

;TDDR=9

K_TCR0.setK_TCR0_SOFT|K_TCR0_FREE|K_TCR0_PSC|K_TCR0_TRB|K_TCR0_TSS|K_TCR0_TDDR

;初始化定时器0;Tt=25*(9+1)*(3999+1)=1000000(ns)=1(ms)

STM#0010H,TCR0

STM

#3999,

TIM0

STM

#3999,

PRD0

STM

#K_TCR0

,TCR0

STM#0080H,IFR

STM#0080H,IMR

RSBXINTM

RET

;定时器0的中断服务子程序:

通过引脚XF给出

PSHMST1

BITFt0_flag,#1

BCxf_out,NTC

SSBXXF

ST#0,t0_flag

Bnext

xf_out:

RSBXXF

ST#1,t0_flag

next:

POPMST1

POPM

ST0

POPM

T

POPM

TRN

RETE

5、TMS320C54x的串口有哪几种类型?

答:

课本P213(7.3'C54x的串行口)

6、试叙述标准串行接口数据的发送程序。

7、试分别说明下列语句的功能。

①STM#SPCR10,SPSA0

STM#0001H,BSP0

解:

对串口控制寄存器SPCR10赋值。

不使用数字循环返回模式,接收数据DRR[1,2]采用右对齐方式,连续时钟方式,DX使能判断,接收中断由RRDY产生,接收移位寄存器未超载,串口接收器准备好,使能串口接收器。

2STM#SPCR20,SPSAO

STM#0081H,BSP0

解:

对串口控制寄存器SPCR20赋值。

串口使用软件模式,帧同步逻辑、采样率发生器复位,由发送准备好XRDY驱动发送中断;发送移位寄存器为空,发送器未准备好,使能串口发送器。

3STM#SPCR20,SPSA0

ORM#01000001B,BSP0

解:

修改串口控制寄存器SPCR20的值。

由采样率发生器产生帧同步信号,使能串口发

8、已知中断向量TINT=013H,中断向量地址指针IPTR=0111H,求中断向量地址。

解:

中断向量地址=(100010001B)<<9+(10011)<<2=88CCH

第八章

1、一个典型的DSP系统通常有哪些部分组成?

画出原理框图。

答:

(1)一个完整的DSP系统通常是由DSP芯片和其他相应的外围器件构成。

一个典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1