DSP技术及其应用
第一章 DSP数字信号处理器概述
1.1 数字信号处理概述
-
1、什么是DSP?
广义地理解:数字信号处理
狭义地理解:数字信号处理器DSPs
-
2、数字信号处理的优点和缺点
-
优点:
灵活性高
稳定性好
抗干扰强
易于大规模集成
-
缺点:
增加了系统的复杂性
频率范围受限
功率消耗大
-
-
3、数字信号处理的实现
在通用PC上利用软件处理(应用:不需要实时性的系统;教学和仿真研究)
单片机实现(计算简单的工业现场)
利用通用可编程DSP芯片实现(本课程)(广泛应用于军事、民用电子领域)
利用专用DSP芯片来实现
利用FPGA等可编程逻辑阵列
片上系统
1.2 数字信号处理器的特点
-
4、数字信号处理器的特点
运算速度快,编程方便,擅长实现数字信号处理
哈佛结构
多总线结构
流水线结构
多处理单元
特殊的DSP指令
指令周期短
运算精度高
外围接口配置
-
5、算法基本特点及DSP相应解决办法
-
6、数字信号处理常用算法
卷积运算、相关运算、变换运算、级数运算
-
7、TI公司的三大平台
TMS320C2000、TMS320C5000、TMS320C6000
-
8、DSP应用举例
信号处理:信号采集,相关运算,卷积运算
通信处理:调制解调器,数据加密,传真
语音处理:语音编码与合成,语音识别
图像处理:图形处理,图像压缩,图像识别
军事处理:保密通信,雷达
-
9、DSP开发工具
硬件开发工具:DSK(DSP Starter Kit)、标准评估模块(EVM)
软件开发工具:CCS(Code Composer Studio)、软仿真器(Simulator)
第二章 数字信号处理器结构
-
10、处理器概述
-
中央处理器:
能解释并执行指令的一种功能单元
-
微处理器:
是包含中央处理器的能进行数据操作的一种电子芯片
-
处理器:
由微处理器为核心组成的数据处理设备
-
-
11、时钟周期
是指驱动处理器工作的时钟的一个完整周期时间
-
12、指令周期
每条指令操作执行所需的处理器时钟数
-
13、平均指令周期
程序执行的总CPU时钟周期/程序指令数
-
14、执行延迟
是由于指令流水线结构引起的
-
15、精简指令集处理器(RISC)
-
主要技术特点
大多数指令在单指令周期内完成
减少指令和寻址方式的种类
采用流水线结构
固定的指令格式
-
-
16、C6000处理器
-
组成
核CPU、外设、存储器
-
-
17、数据通路
在指令执行过程中使用的物理资源统称为数据通路,其中包括执行指令的8个功能单元、通用寄存器组以及CPU与片内数据存储器交换信息所使用的数据总线等
-
18、指令操作
-
算术运算类指令
有符号数加减指令ADD、SUB
无符号数加减指令ADDU、SUBU
带饱和的有符号数加减运算指令SADD、SSUB
与16位常数进行加法操作的指令ADDK
乘法运算指令MPY、SPY开头的指令
-
数据搬移类指令
MV指令用于在通用寄存器之间传送数据
MVC指令用于在通用寄存器和控制器之间传送数据,只能使用.S2功能单元
MVK指令用于把16位常数送入通用寄存器
-
程序转移类指令
-
逻辑及位域操作指令
逻辑运算指令:AND、OR、XOR、NEG
移位指令:SHL、SHR、SHRU、SSHL
位操作指令:CLR、SET、EXT、EXTU、LMBD、NORM
比较判别类指令:CMPEQ、CMPGT、CMPLT
-
-
19、单周期指令(?)
-
20、寻址方式
-
两种寻址方式
由AMR控制地址修改方式
线性方式(默认)
循环方式
-
C6000采用间接寻址,所有寄存器可以用作线性寻址,A4A7和B4B7寄存器可以用作循环寻址
-
-
21、Load/Store指令
Load指令可从数据存储器读取数据送到通用寄存器
Store指令可把通用寄存器的内容送到数据存储器储存
-
22、溢出问题
运算结果超出目的操作数字长所能表示的范围,造成运算结果的高位丢失
-
23、资源对公共指令的限制
使用相同功能单元的指令的限制
使用交叉通路的限制
对Load/Store指令的限制
对寄存器读取的限制
对寄存器的限制
第三章 DSP系统的软件设计
-
24、汇编语言优缺点
-
优点
编译和执行效率高,能实现严格时序要求
-
缺点
不易学习,编程周期长,可移植性差
-
-
25、C语言优缺点
-
优点
易于学习、编程方便、可移植性好
-
缺点
编译和执行效率低,不能实现严格时序要求
-
-
26、TMS320C6000软件开发流程
三个阶段,开发C/C++代码 → 优化C/C++代码 → 写线性汇编代码
-
27、DSPLib库
使用了优化的汇编代码子程序,给出了C语言和线性汇编源代码,C可调用其中的子程序并且与TI的优化C编译器完全兼容
-
七个函数
自适应滤波算法
相关算法
FFT算法
数字滤波和卷积算法
数学函数
矩阵运算
常用函数
-
-
28、段
-
概念
段是目标文件的最小单位。段是在存储器映射图内占据一个连续空间的代码块或数据块
-
默认的3个段
.text段
.data段
.bss段
-
-
29、Memory | Section 大题
-
30、重定位
-
31、加载时命名时地址问题
-
32、C语言代码优化
C代码开发阶段 → C代码编译阶段 → 手工汇编代码重编写阶段
第四章 DSP硬件设计及外设接口
-
33、最小系统的组成
DSP芯片、电源、时钟源、复位电路、JTAG电路、程序ROM
-
34、加电顺序的需求
DSP的一些I/O管脚是双向的,方向由内核控制。I/O电压一旦被加上后,I/O管脚就立即被驱动,如果此时还没加核电压,那么I/O的方向可能就不确定是输入还是输出。如果是输出,且这时与之相连的其他器件的管脚也处于输出状态,那么就会造成时序的紊乱或者对器件本身造成损伤。这种情况下,就需要核电压比I/O电压先加载,至少是同时加载。
-
35、三种电源的比较
-
36、常用的三大类滤波算法(挑一小类考,什么情况用什么算法可以解决)
-
克服大脉冲干扰的数字滤波法
-
限幅滤波法
又称程序判别法
通过程序判断被测信号的变化幅度,从而消除缓变信号中的尖脉冲干扰
-
具体方法:
依赖已有的时域采样结果
将本次采样值与上次采样值比较
如果差值超出允许范围则认为本次采样值受到干扰
-
-
中值滤波法
在滤除脉冲噪声的同时可以很好地保护信号的细节信息
-
具体方法:
对某一被测参数连续采样n次
将采样值进行排序
选取中间值作为本次采样值
-
适用环境:
温度、液位等缓慢变化的被测参数
-
-
-
抑制小幅度高频噪声的平均滤波法
-
算术平均
-
具体方法:
N个连续采样值相加
取算术平均值作为本次测量的滤波值
N越大,滤波效果越好,但系统灵敏度下降
-
适用环境:
慢变信号
-
-
滑动平均
-
具体方法:
把N个测量数据看成一个队列
每进行一次采样,把测量结果放入队尾
去掉队首数据
始终保持有N个最新的数据
平滑度高,灵敏度低
-
加权滑动平均
-
-
复合滤波法
数字滤波+平均滤波
-
去极值平均滤波算法
-
具体方法:
用中值滤波算法滤除采样值中的脉冲性干扰
把剩余的采样值进行平均滤波
连续采样N次,剔除最大值最小值
求余下N-2个采样的平均值
既能抑制随机干扰,又能滤除明显的脉冲干扰
-
-
-
-
37、各种情况克服选用的原理
根据36作答