- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP复习资料
第一章
1、简答:书P2 一个典型的DSP系统的基本构成
应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器和低通滤波器等。
DSP系统的工作过程: (简述即可)
①将输入信号x(t)经过抗混叠滤波,滤掉高于折叠频率的分量,以防止信号频谱的混叠。
②经过采样和A/D转换器,将滤波后的信号转换为数字信号x(n)。
③数字信号处理器对x(n)进行处理,得数字信号y(n)。
④经D/A转换器,将y(n)转换成模拟信号;
⑤经低通滤波器,滤除高频分量,得到平滑的模拟信号y(t)。
2、小题 Simulator和Eimulator分别指 软件仿真 和 硬件仿真 P4
简答:列举 DSP 芯片的特点?(后面简要阐述即可)
答:哈佛结构,即将数据存储器和程序存储器分开;
多总线结构,即设置了数据总线和数据总线,使运算速度提高。(哈弗结构使得总线也分为数据和程序总线)
指令系统的流水线操作,流水线操作是各指令以机器周期为单位相差一个时钟周期,连续并行工作的情况。(其本质是DSP多条总线彼此独立地同时工作,使得同一条指令在不同机器周期内占用不同总线资源。同时,不同指令在同一机器周期内占用不同总线资源。)
专用的硬件乘法器和加法器,使得大部分DSP芯片可在一个指令周期内完成一次加法和乘法操作。
高效的DSP指令:可以缩短指令的执行时间。
简答:DSP芯片的运算速度可用几种指标来衡量?书P 9
答:指令周期,即执行一条指令所需的时间;
MAC时间,即完成一次乘法和一次加法的时间;
FFT执行时间,即运行一个FFT程序所需的时间;
MIPS,即每秒执行百万条指令;
MFLOPS,即每秒执行百万次浮点操作。
小题:设DSP芯片的工作频率为100MHZ,一帧的时间为20ms,则该DSP芯片在一帧内所能提供的最大运算量为 200万 条指令。 书P11
第二章
1.ALU运算时,当 C16=1 时,可以分为两个16位ALU使用
2、累加器的保护位的作用 防止迭代运算中产生的溢出
3、DSP的移位位数为-16~31,则桶形移位寄存器最多左移31位,右移16位;
4、在一些指令中,加上后缀“R”,表示该指令要将累加器的低16位进行舍入 处理
5、简答:流水线的原理:
将指令分为几个子操作,每个子操作由不同的单元完成。
这样, 每隔一个时钟周期,每个单元就可以进入一条新指令。
因此,同一个时钟周期内,在不同的单元可以处理多条指令,相当于并行执行了多条指令。 TMS320C54x采用 6 级 流水线。
6、片内ROM里面包含引导装载程序(Bootloader)
7、简答 SARAM和DARAM 的联系和区别
区别 前者1个机器周期内只能被访问1次 后者1个机器周期内能被访问2次,可同时进行读操作和写操作。
联系 都可当数据存储器和程序存储器使用
第三章
1、数的定标是指 定点DSP芯片处理小数时,由程序员来确定一“小数点”的位置。
2、在数的定标中,如果采用Q表示法,一个Q8定点数的十进制数表示范围为 -215*2-Q —(215-1)*2-Q (此处写的不清楚,见书上P44)
3、OVM的中文名称是 溢出保护模式位; 当OVM=1,表示 设置溢出保护模式,用指令表示SSBX OVM ;OVM=0,表示设置溢出不保护模式;用指令表示 RSBX OVM ;
SXM的中文名称是 符号扩展模式位 ;当SXM=1时,设置符号扩展模式,即高24位扩展为符号位。用指令表示 SSBX SXM ; 当SXM=0时,设置符号不扩展模式,即高24位用0填充;用指令表示RSBX SXM
4、DSP芯片的乘法运算,常需要用到舍入处理方法 书上p47
方法是在低16位的最高位加1,然后将低16位清除,将高16位作为结果。(将该数加0.5,之后再将小数部分去除,即舍入处理方法,也称上取整。)
5 书P62中间的例题 给出一个32位的浮点数,求十进制等值数。自己应该能看懂
第五章
1、数据类型:
常数类型:const关键字确保变量或数组的值不会被改变
端口类型:ioport是端口变量声明的关键字
Volatile类型:使用volatile关键字可确保编译器不会对这些变量进行优化
可能出现的题型 P108程序填空
例如,如果要在端口10h声明端口变量,并将a输出到该端口,再读取数据保存到b中,函数实现方法如下:
ioport unsigned int port10; /* 访问I/O端口10h的变量*/
int func ()
{
port10 = a; /* 写a到端口10h */
...
b = port10; /* 读取端口10h的值到b */
...
文档评论(0)