您的当前位置:首页正文

dsp实验心得体会

来源:华佗健康网
文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

dsp实验心得体会

篇一:dsp实验报告心得体会

TMS320F2812x DSP原理及应用技术实验心得体会 1. 设置环境时分为软件设置和硬件设置,根据实验的需要设置,这次实验只是

软件仿真,可以不设置硬件,但是要为日后的实验做准备,还是要学习和熟悉硬件设置的过程。

2. 在设置硬件时,不是按实验书上的型号选择,而是应该按照实验设备上的型 号去添加。

3. 不管是硬件还是软件的设置,都应该将之前设置好的删去,重新添加。设置好的配置中 只能有一项。

4. CCS可以工作在纯软件仿真环境中,就是由软件在PC机内存中构造一个虚拟的

DSP环境,可以调试、运行程序。但是一般无法构造DSP中的外设,所以软件仿真通常用于调试纯软件算法和进行效率分析等。

5. 这次实验采用软件仿真,不需要打开电源箱的电源。 6. 在软件仿真工作时,无需连接板卡和仿真器等硬件。 7. 执行write_buffer一行时。如果按F10执行程序,则程序在mian主函数中运行,

1

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

如果按F11,则程序进入write_buffe函数内部的程序运行。

8. 把str变量加到观察窗口中,点击变量左边的“+”,观察窗口可以展开结构变

量,就可以看到结构体变量中的每个元素了。 9. 在实验时,显示图形出现问题,不能显示,后来在Graph Title 把Input的大写

改为input,在对volume进行编译执行后,就可以看到显示的正弦波图形了。

10. 在修改了实验2-1的程序后,要重新编译、连接执行程序,并且必须对.OUT

文件进行重新加载,因为此时.OUT文件已经改变了。如果不重新加载,那么修改执行程序后,其结果将不会改变。 11. 再观察结果时,可将data和data1的窗口同时打开,这样可以便于比较,观察 结果。

12. 通过这次实验,对TMS320F2812x DSP软件仿真及调试有了初步的了解与认识,因为做

实验的时候都是按照实验指导书按部就班的,与真正的理解和掌握还是有些距离的。但是这也为我们日后运用这些知识打下了基础,我觉得实验中遇到的问题,不要急于问老师或者同学,先自己想办法分析原因,想办法解决,这样对

2

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

自身的提高更多吧。通过做实验,把学习的知识利用起来,也对这门课程更加有兴趣了。

组员:叶孝璐 冯焕芬 郑玮仪 庞露露 XX年4月10号

篇二:DSP实验报告+心得体会 龙 岩 学 院 实 验 报 告

班 级 07电本(1)班学号XX050344 姓 名 杨宝辉同组人独立实验日期 XX-5-18室温 大气压 成 绩 基础实验 一、实验目的 二、实验设备 三、实验原理

浮点数的表达和计算是进行数字信号处理的基本知识;产生正弦信号是数字信号处理1. 一台装有CCS软件的计算机; 2. DSP实验箱的TMS320F2812主控板; 3. DSP硬件仿真器。 1. 掌握CCS实验环境的使用; 2. 掌握用C语言编写DSP程序的方法。 中经常用到的运算;C语言是现代数字信号处理表达的基础语言和通用语言。写实现程序时需要注意两点:(1)浮点数的范围及存储格式;(2)DSP的C语言与ANSI C语言的区别。 四、实验步骤

3

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

1. 打开CCS 并熟悉其界面;

2. 在CCS环境中打开本实验的工程(Example_),编译并重建 .out 输出文件,然后通过仿真器把执行代码下载到DSP芯片中;

3. 把X0 , Y0 和Z0添加到Watch窗口中作为观察对象(选中变量名,单击鼠标右键,在弹出菜单中选择“Add Watch Window”命令);

4. 选择view->graph->time/frequency… 。 设置对话框中的参数: 其中“Start Address”

设为“sin_value”,“Acquisition buffer size”和“Display Data size”都设为“100”,并且把“DSP Data Type”设为“32-bit floating point”,

设置好后观察信号序列的波形(sin函数,如图); 5. 单击运行;

6. 观察三个变量从初始化到运算结束整个过程中的变化;观察正弦波形从初始化到运算结束整个过程中的变化; 7. 修改输入序列的长度或初始值,重复上述过程。 五、实验心得体会

通过本次实验,加深了我对DSP的认识,使我对DSP实验的操作有了更进一步的理解。基本掌握了CCS实验环境的使用,并能够使用C语言进行简单的DSP程序设计。 从软件的安装到使用软件进行程序设计与仿真,锻炼了

4

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

自己的动手能力,也遇到了不少的坎坷,例如芯片的选择,不能因为麻烦而省略该步骤,否则将会运行出错。 附录实验程序: #include \"\" #include \"\" #define N 100 #define pi

float sin_value[100]; float X0,Y0,Z0; void main(void) { int i;

for(i=0;i sin_value[i]=0; X0=; /* 0000 0000 0000 */ Y0=; /* 0000 0000 0000 */

Z0=X0*Y0;/* 0000 0000 0000 0000 0000 0000 0000 */ for(i=0;i sin_value[i]=100*(sin(2*pi*i/N)); } 龙 岩 学 院 实 验 报 告

班 级 07电本(1)班学号XX050344姓 名 杨宝辉 同组人 独立实验日期 XX-5-20 室温 大气压 成 绩

5

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

数码管控制实验 一、实验目的 1. 2.

3. 熟悉2812的指令系统; 熟悉74HC573的使用方法。 熟悉DSP的IO操作使用方法。 二、实验设备

1. 一台装有CCSXX软件的计算机;

2. 插上2812主控板的DSP实验箱; 3. DSP硬件仿真器。

三、实验原理

此模块由数码管和四个锁存器组成 。数码管为共阴极型的。数据由2812模块的低八位输入,锁存器的控制信号由2812模块输出,但经由CPLD模块译码后再控制对应的八个

四、实验步骤

1. 把2812模块小板插到大板上;

2. 在CCSXX环境中打开本实验的工程编译Example_,生成输出文件,通过仿真器把执行代码下载到DSP芯片; 3. 运行程序;数码管会显示1~8的数字。 4. 参考源代码自行修改程序改变显示样式。 五、实验心得体会

6

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

通过本次实验中,基本掌握了2812的指令系统的特点,并能够了解并熟悉74HC573的使用方法,进一步加深了对DSP的认识。同时,通过实验操作DSP的IO操作使用方法,对于DSP的IO操作可以熟悉的运用,学到更多的知识。 程序见附录:

#include \"include/DSP281x_\" // DSP281x

Headerfile Include File

#include \"include/DSP281x_\"// DSP281x Examples Include File

// Prototype statements for functions found within this file.

void delay_loop(void); void Gpio_select(void);

// Global variable for this example short codetab[17]=

{0x4020,0x6cc0,0x5800,0x4840,0x6440,0xC040,0xC000,0x4cc0,

0x4000,0x4040,0x4400,0xE000,0xD080,0xE800,0xD000,0xD400,0xffff}; main()

7

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

{ short i;

// Step 1. Initialize System Control: // PLL, WatchDog, enable Peripheral Clocks // This example function is found in the DSP281x_ file.

InitSysCtrl();

// Specific clock setting for this example: 篇三:DSP实验心得体会 篇一:dsp实验报告心得体会

tms320f2812x dsp原理及应用技术实验心得体会 1. 设置环境时分

为软件设置和硬件设置,根据实验的需要设置,这次实验只是

软件仿真,可以不

设置硬件,但是要为日后的实验做准备,还是要学习和熟悉硬件设置的过程。 2. 在设置硬件时,

不是按实验书上的型号选择,而是应该按照实验设备上的型

号去添加。 3. 不管是硬件还

8

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

是软件的设置,都应该将之前设置好的删去,重新添加。设置好的配置中 只能有一项。 4. ccs可以工作在

纯软件仿真环境中,就是由软件在pc机内存中构造一个虚拟的

dsp环境,可以调

试、运行程序。但是一般无法构造dsp中的外设,所以软件仿真通常用于调试纯软件算法和 进行效率分析等。 5. 这次实验采用

软件仿真,不需要打开电源箱的电源。 6. 在软件仿真工

作时,无需连接板卡和仿真器等硬件。 7. 执行

write_buffer一行时。如果按f10执行程序,则程序在mian主函数中运行, 如果按f11,则程

序进入write_buffe函数内部的程序运行。 8. 把str变量加

到观察窗口中,点击变量左边的“+”,观察窗口可以展开结构变

9

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

量,就可以看到结

构体变量中的每个元素了。 9. 在实验时,显示

图形出现问题,不能显示,后来在graph title 把input的大写

改为input,在对

volume进行编译执行后,就可以看到显示的正弦波图形了。

10. 在修改了实验

2-1的程序后,要重新编译、连接执行程序,并且必须对.out

文件进行重新加载,

因为此时.out文件已经改变了。如果不重新加载,那么修改执行程序后,其结果将不会改变。 11. 再观察结果时,

可将data和data1的窗口同时打开,这样可以便于比较,观察 结果。

12. 通过这次实验,

对tms320f2812x dsp软件仿真及调试有了初步的了解与认识,因为做 实验的时候都是按

10

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

照实验指导书按部就班的,与真正的理解和掌握还是有些距离的。但是这也为我们日后运用

这些知识打下了基础,我觉得实验中遇到的问题,不要急于问老师或者同学,先自己想办法

分析原因,想办法解决,这样对自身的提高更多吧。通过做实验,把学习的知识利用起来, 也对这门课程更加有兴趣了。 组员:叶孝璐 冯焕芬 郑玮仪 庞露露 XX年4月10号

篇二:dsp实验报告+心得体会 龙 岩 学 院 实 验 报 告 班 级 07电

本(1)班学号XX050344 姓 名 杨宝辉同组人独立实验日期

XX-5-18室温 大气压 成 绩 基础实验 一、实验目的 二、实验设备 三、实验原理 浮点数的表达和计

11

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

算是进行数字信号处理的基本知识;产生正弦信号是数字信号处理1. 一台装有ccs软件的

计算机; 2. dsp实验箱的tms320f2812主控板; 3. dsp硬件仿真器。 1. 掌握ccs实验环

境的使用; 2. 掌握用c语言编写dsp程序的方法。 中经常用到的运算;c语言是现代数字

信号处理表达的基础语言和通用语言。写实现程序时需要注意两点:(1)浮点数的范围及存

储格式;(2)dsp的c语言与ansi c语言的区别。 四、实验步骤 1. 打开ccs 并熟 悉其界面; 2. 在ccs环境中

打开本实验的工程(example_),编译并重建 .out 输出文件,然后通过仿真器把执 行代码下载到dsp芯片中; 3. 把x0 , y0 和

z0添加到watch窗口中作为观察对象(选中变量名,单击鼠标右键,在弹出菜单中选择“add watch window”命令);

4. 选择view->graph->time/frequency 。 设置对话框中的参数: 其中“start

12

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

address”

设为“sin_value”,“acquisition buffer size”和“display data size”都设为“100”,

并且把“dsp data type”设为“32-bit floating point”, 设置好后观察信号序列的波形(sin函数,如图); 5. 单击运行; 6. 观察三个变量

从初始化到运算结束整个过程中的变化;观察正弦波形从初始化到运算结束整个过程中的变 化;

7. 修改输入序列

的长度或初始值,重复上述过程。 五、实验心得体会 通过本次实验,加

深了我对dsp的认识,使我对dsp实验的操作有了更进一步的理解。基本掌握了ccs实验环

境的使用,并能够使用c语言进行简单的dsp程序设计。 从软件的安装到使

用软件进行程序设计与仿真,锻炼了自己的动手能力,也遇到了不少的坎坷,例如芯片的选

择,不能因为麻烦而省略该步骤,否则将会运行出错。 附录实验程序:

13

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

#include #include #define n 100 #define pi

float sin_value[100]; float x0,y0,z0; void main(void) { int i;

for(i=0;i sin_value[i]=0; x0=; /* 0000 0000 0000 */ y0=; /*

0000 0000 0000 */ z0=x0*y0;/*

0000 0000 0000 0000 0000 0000 0000 */

for(i=0;i sin_value[i]=100*(sin(2*pi*i/n)); } 龙 岩 学 院 实 验 报 告 班 级 07电

本(1)班学号XX050344姓 名 杨宝辉 同组人 独立实验日期

14

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

XX-5-20 室温 大气压 成 绩 数码管控制实验 一、实验目的 1. 2.

3. 熟悉2812的指

令系统; 熟悉74hc573的使用方法。 熟悉dsp的io操作使用方法。 二、实验设备 1. 一台装有

ccsXX软件的计算机;

2. 插上2812主控板的dsp实验箱; 3. dsp硬件仿真器。

三、实验原理 此模块由数码管和

四个锁存器组成 。数码管为共阴极型的。数据由2812模块的低八位输入,锁存器的控制信

号由2812模块输出,但经由cpld模块译码后再控制对应的八个

四、实验步骤

1. 把2812模块小板插到大板上; 2. 在ccsXX环

15

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

境中打开本实验的工程编译example_,生成输出文件,通过仿真器把执行代码 下载到dsp芯片; 3. 运行程序;数码 管会显示1~8的数字。 4. 参考源代码自

行修改程序改变显示样式。 五、实验心得体会 通过本次实验中,

基本掌握了2812的指令系统的特点,并能够了解并熟悉74hc573的使用方法,进一步加深了

对dsp的认识。同时,通过实验操作dsp的io操作使用方法,对于dsp的io操作可以熟悉 的运用,学到更多的知识。 程序见附录: #include

include/dsp281x_ // dsp281x headerfile include file

#include

include/dsp281x_// dsp281x examples include file // prototype

statements for functions found within this file.

16

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

void

delay_loop(void); void

gpio_select(void); // global

variable for this example short codetab[17]=

{0x4020,0x6cc0,0x5800,0x4840,0x6440,0xc040,0xc000,0x4cc0,

0x4000,0x4040,0x4400,0xe000,0xd080,0xe800,0xd000,0xd400,0xffff}; main() { short i; // step 1.

initialize system control: // pll, watchdog, enable peripheral clocks // this example

17

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

function is found in the dsp281x_ file. initsysctrl();

// specific clock setting for this example: 篇三:dsp实验学习心得 dsp实验学习心得 论dsp发展前景

dsp 即为数字信号处理器(digital signal processing),是在模拟信号变换成数 字信号以

后进行高速实时处理的专用处理器。它的工作原理是将现实世界的模拟信号转换 成数字信号,

再用数学方法处理此信号,得到相应的结果。自从数字信号处理器(digital signal processor)问世以

来,由于它具有高速、灵活、可编程、低功耗和便于接口等特 点,已在图形、图像处理,语

音、语言处理,通用信号处理,测量分析,通信等领域发挥 越来越重要的作用。随着成本的

降低,控制界已对此产生浓厚兴趣,已在不少场合得到成 功应用。dsp 数字信号处理器 dsp

芯片采用了数据总线和程序总线分离的哈佛结构及改 进的哈佛结构,较传统处理器的冯诺

依曼结构具有更高的指令执行速度。其处理速度比最

18

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

快的 cpu 快 10-50 倍。在当今数字化

时代背景下,dsp 已成为通信、计算机、消费类电 子产品等领域的基础器件,被誉为信息社 会革命的“旗手”。 最初的 dsp 器件

只是被设计成用以完成复杂数字信号处理的算法。dsp 器件 紧随着数字信号理论的发展而不

断发展。dsp发展最快,现在的 dsp 属于第五代产品,它与第四代相比,系统集成度更高, 篇四:DSP实验学习心得 DSP实验学习心得 论DSP发展前景

DSP 即为数字信号处理器(Digital Signal Processing),是在模拟信号变换成数 字信号以后进行高速实时处理的专用处理器。它的工作原理是将现实世界的模拟信号转换 成数字信号,再用数学方法处理此信号,得到相应的结果。自从数字信号处理器(Digital Signal Processor)问世以来,由于它具有高速、灵活、可编程、低功耗和便于接口等特 点,已在图形、图像处理,语音、语言处理,通用信号处理,测量分析,通信等领域发挥 越来越重要的作用。随着成本的降低,控制界已对此产生浓厚兴趣,已在不少场合得到成 功应用。DSP 数字信号处理器

19

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

DSP 芯片采用了数据总线和程序总线分离的哈佛结构及改 进的哈佛结构,较传统处理器的冯诺依曼结构具有更高的指令执行速度。其处理速度比最 快的 CPU 快 10-50 倍。在当今数字化时代背景下,DSP 已成为通信、计算机、消费类电 子产品等领域的基础器件,被誉为信息社会革命的“旗手”。

最初的 DSP 器件只是被设计成用以完成复杂数字信号处理的算法。DSP 器件 紧随着数字信号理论的发展而不断发展。DSP发展最快,现在的 DSP 属于第五代产品,它与第四代相比,系统集成度更高,将 DSP 芯核及外围组件综合集成在单一芯片上。这种集成度极高的 DSP 芯片不仅在通信、计算机领域大显身手,而且逐渐渗透 到人们日常消费领域,前景十分可观。近年来,随着通信技术的飞速发展,DSP已经成为信号与信息处理领域里一门十分重要的新兴学科,它代表着当今无线系统的主流发展方向。现在,通信领域中许多产品

都与 DSP 密切联系,例如,Modem、数据加密、扩频通信、可视电话等。而寻找 DSP 芯片来实现算法最开始的目标是在可以接受的时间内对算法做仿真,随后是将波形存储起 来,然后再加以处理。

在短短的十多年 时间,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。目前, DSP 芯片的价格也

20

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

越来越低,性能价格比日益提高,具有巨大的应用潜力。DSP 芯片的应用主要有: (1) 信号处理--如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、 频谱分析、卷积等。 (2) 通信--如,调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。 (3) 语音--如语音编码、语音合成、语音识别、语音增强、说话人辨认、 说话人确认、语音邮件、语音储存等。 (4) 图像/图形--如二维和三维图形处理、图像压缩与传输、图像增强、 动画、机器人视觉等。 (5) 军事--如保密通信、雷达处理、声纳处理、导航等。

(6) 仪器仪表--如频谱分析、函数发生、锁相环、地震处理等。 (7) 自动控制--如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。 (8) 医疗--如助听、超声设备、诊断工具、病人监护等。(9) 家用电器--如高保真音响、音乐合成、音调控制、玩具与游戏、数字 电话/电视等 DSP 的发展前景 DSP 的功能越来越强,应用越来越广,达到甚至超过了微控制器的功能,比 微控制器做得更好而且价格更便宜, 许多家电用第二代 DSP 来控制大功率电机就 是一个很好的例子。汽车、个人通信装置、家用电器以及数以百万计的工厂使用 DSP 系统。数码相机、IP 电话和手持电子设备的热销带来了对 DSP 芯片的巨大需 求。而手

21

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

机、

PDA、MP3 播放器以及手提电脑等则是设备个性化的典型代表,这 些设备的发展水平取决于 DSP 的发展。新的形势下,DSP 面临的要求是处理速度 更高,功能更多更全,功耗更低,存储器用量更少。

DSP 的技术发展将会有以下 一些走势: (1)系统级集成 DSP 是潮流。小 DSP 芯片尺寸始终是 DSP 的技术发展方向。 当前的 DSP 尺寸小、功耗低、性能高。各 DSP 厂商纷纷采用新工艺,改进 DSP 芯核,并将几个 DSP 芯核、MPU 芯核、专用处理单元、外围电路单元、存储单元 统统集成在一个芯片上,成为 DSP 系统级集成电路。 (2)追求更高的运算速度和进一步降低功耗和几何尺寸。由于电子设备的 个人化和客户化趋势,DSP 必须追求更高更快的运算速度,才能跟上电子设备的 更新步伐。同时由于 DSP 的应用范围已扩大到人们工作生活的各个领域,特别是 便携式手持产品对于低功耗和尺寸的要求很高,所以 DSP 有待于进一步降低功 耗。按照 CMOS 的发展趋势,依靠新工艺改进芯片结构,DSP 运算速度的提高和 功耗尺寸的降低是完全可能的。

(3)DSP 的内核结构进一步改善。DSP 的结构主要是针对应用,并根据应用 优化 DSP 设计以极大改进产品的性能。多通道结构和单指令多重数据、超长指令 字结构、超

22

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

标量结构、超流水结构、多处理、多线程及可并行扩展的超级哈佛结 构(SHARC)在新的高性能处理器中将占据主导地位。 (4)DSP 嵌入式系统。DSP 嵌入式系统是 DSP 系统嵌入到应用电子系统中 的一种通用系统。这种系统既具有 DSP 器件在数据处理方面的优势,又具有应用 目标所需要的技术特征。在许多嵌入式应用领域,既需要在数据处理方面具有独 特优势的 DSP,也需要在

智能控制方面技高一筹的微处理器(MCU)。因此,将 DSP 与 MCU 融合在一起的双核平台,将成为 DSP 技术发展的一种新潮流。 DSP 的发展非常迅速,而销售价格逐年降低目前 DSP 的结构、总线、资源和 接口技术都趋于标准化,尤其接口的标准化进展更快。这给从事系统设计的工程 技术人员带来很大机遇, 采用先进的 DSP 将会使开发的产品具有更强的市场竞争 力。

近几年来,DSP芯片、应用软件和系统的发展非常迅速,每年增长速度高达40%。 其市场驱动力主要是因特、无线通信、硬盘驱动器、可视电话和会议电视以及其它消费 类电子产品。也就是说,DSP产业的发展依赖于通信技术和通信市场。随着新的通信体 制、传输方式和多媒体智能终端的迅速发展,其算法、标准和规程都需要在实践中不断发 展、改进和优化。DSP编程的灵活性和不断增强的运算能力,同时又将使通信技术向更 高层次迈进。这对通信

23

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

领域的广大科技人员是一个机遇。抓住这个机遇,我们将大有作为。

通过这几次实验,我初步的对dsp有了一定了解。虽然是在老师们的指导下完成实验要求的,但是我想我还是收获蛮多的。希望在以后的学习生活中能对dsp有更多的学习和研究。

篇五:DSP学习总结 DSP学习总结

摘要:本总结介绍了数字信号技术(DSP)的基本结构,特点,发展及应用现状。通过分析与观察,寄予了DSP美好发展前景的希望。

关键字:数字信号处理器,DSP,特点,应用 1 DSP介绍

数字信号处理简称DSP,是进行数字信号处理的专用芯片,是伴随着微电子学、数字信号处理技术、计算机技术的发展而产生的新器件,是对信号和图像实现实时处理的一类高性能的CPU。所谓 “实时实现”,是指一个实际的系统能在人们听觉、视觉或按要求所允许的时间范围内对输入信号进行处理,并输出处理结果。

数字信号是利用计算机或专用的处理设备,以数值计算的方式对信号进行采集、变换、综合、估计与识别等加工处理,从而达到提取信息和方便应用的目的。数字信号处理的

24

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

实现是以数字信号处理理论和计算技术为基础的。 2 结构

32位的C28xDSP整合了DSP和微控制器的最佳特性,能够在一个周期内完成32*32位的乘法累加运算。

所有的C28x芯片都含一个CPU、仿真逻辑以及内存和片内外设备的接口信号(具体结构图见有关书籍)。CPU的主要组成部分有:

程序和数据控制逻辑。该逻辑用来从程序存储器取回的一串指令。 实时和可视性的仿真逻辑。

地址寄存器算数单元(ARAU)。ARAU为从数据存储器取回的数据分配地址。 算术逻辑单元(ALU)。32位的ALU执行二进制的补码布尔运算。 预取对列和指令译码。

为程序和数据而设的地址发生器。

定点MPY/ALU。乘法器执行32位*32位的二进制补码乘法,并产生64位的计算结果。 中断处理。 3 特点

采用哈佛结构。传统的冯·诺曼结构的数据总线和指令总线是公用的,因此在高运算时在传输通道上会出拥堵现象。而采用哈佛结构的DSP 芯片片内至少有4 套总线:程序的地址总线与数据总线,数据的地址总线与数据总线。由于这种结构的数据总线和程序总线分离,从而在一个周期内同能

25

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

时获取程序存储器内的指令字和数据存储器内的操作数,提高了执行速度。

多单元的并行处理技术。DSP 内部一般都集成了多个处理单元,比如ARAU(地址寄存器算术单元),MUL(硬件乘法器),ALU(算术逻辑单元),ACC (累加器),DMA 控制器等。它们可在同一个周期内并行地执行不同的任务。

采用了超流水线技术。DSP芯片的哈佛结构就是为实现流水线技术而设计的。采用流水线技术可使DSP芯片单周期完成乘法累加运算,极大地提高了运算速度。

采用硬件乘法器。数字信号处理中最基本的一个运算是乘法累加运算,也是最重要和最耗时的运算,为了提高芯片的运算速度,必须大幅度降低乘法运算的时间。于是在DSP芯片中设计了硬件乘法器,并且运算所需时间最短,仅为一个机器周期。这种单周期的硬件乘法器是DSP芯片实现高速运算的有力保证。现代高性能的DSP芯片数据字长从16位增加到32位,具有两个或更多的硬件乘法器,以便提高运算速度。

安排了JTAG接口。DSP芯片的结构非常复杂,工作速度又非常高,外部引脚也特别多,封装面积也非常小,引脚排列异常密集,对于此种情况,传统的并行仿真方式已不适合于DSP芯片。于是有关国际组织公布了JTAG接口标准。在DSP芯片内部安排JTAG接口,为DSP芯片的测试和仿真提供

26

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

了很大的方便。

采用了大容量片内存储器。外部存储器一般不能适应高性能DSP核的处理速度,因此在片内设置较大容量的程序和数据存储器以减少对外部存储器的访问速度,充分发挥DSP核的高性能。

设置了特殊寻址模式。为了满足FFT积分数字信号处理的特殊要求,DSP芯片大多包含有专门的硬件地址发生器,用以实现循环寻址和位翻转寻址,并在软件上设置了相应的指令。 程序的加载引导。DSP芯片要执行的程 序一般在EPROM、FLASH存储器中。但是,该存 储器的访问速度较慢,虽然有一些高速EPROM、FLASH存储器,但价格昂贵、容量有限,而高速大容量静态RAM的价格又在不断下降。故采用程序的加载引导是一个性能价格较好的方法。DSP芯片在上电复位后,执行一段引导程序,用于从端口或外部存储器中加载程序至DSP芯片的高速RAM中运行。

设置了零消耗循环控。数字信号处理有一大特点:很多运算时间都用于执行较小循环的少量核心代码上。大部分DSP芯片具有零消耗循环控制的专门硬件,可以省去循环计数器的测试指令,提高了代码效率,减少了执行时间。 设置了多种外设和接口。为了加强DSP芯片的通用性,DSP芯片上增加了许多外设。例如:多路DMA通道、外部主

27

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

机接口、外部存储器接口、芯片间高速接口、外部中断、串行口、定时器、可编程锁相环、A/D转换器和JTAG接口等。 4 发展及应用现状

数字信号处理(DSP)技术已经在我们的生活中扮演一个不可或缺的角色。DSP的核心是算法与实现,越来越多的人正在认识、熟悉和使用它。因此,合理地评价DSP的优缺点,及时了解DSP的现状以及发展趋势,正确使用DSP芯片,才有可能真正发挥出DSP的作用。

在近20多年时间里,DSP芯片的应用已经从军事、航空航天领域扩大到信号处理、通信、雷达、消费等许多领域。主要应用有:信号处理、通信、语音、图形、图像、军事、仪器仪表、自动控制、医疗、家用电器等。 5 前景与展望

随着DSP芯片性能的不断改善,用它来作为实时处理已成为当今和未来发展的热点之

一。随着生产技术的改进和产量的增大,它已成为当前产量和销售量增长幅度最大的电子产品之一。DSP广泛应用于军事、通信、语音、图像、仪器、工作站、控制及诸多的电子设备中。例如,雷达、导航与制导、全球定位、语音和图像鉴别、高速调制解调器、多媒体以及通用的数字信号处理产品。近年来,DSP 给铁路也带来了巨大的技术革新,铁路的设备尤其是铁路信号系统已从分立模拟系统经过集成化、

28

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

计算机化发展到数字信号处理时代。例如,地面移频自动闭塞系统中现已大量应用了16位定点DSP产品如TMS320C25、TMS320C2XX系列等,由之建立的系统的工作精度、稳定度都很高、铁路上SJ型数字化通用式机车信号的大量推广 也得益于DSP带来的突出优点。用DSP技术的优点有:①可以程序控制,同一个硬件配置可以设计各种软件来执行多种多样的信号处理任务。②稳定性好,抗干扰性能强。③重复性好,易于批量化生产,而模拟器件很难控制。④易于实现多种智能算法。

目前,外国的许多跨国公司已经涉足我国的DSP行业,我国的DSP应用已有了相当的基础,许多企业都在从事数字信号处理系统及相关产品的开发与应用。从应用范围来说,数字信号处理器市场前景看好。DSP不仅成为手机、个人数字助理等快速增长产品中的关键元件,而且它正在向数码相机和电机控制等领域挺进。随着DSP芯片技术的不断发展,向多功能化、高性能化、低功耗化放向发展,DSP日益进入人们的生活,DSP在我国会有良好的应用前景。 参考文献

[1] 彭启棕.DSP技术[M].成都:电子科技大学出版社,1997

[2] FIEDLER R. Beyond instruction level

parallelism-newtrend in programmable DSP machines.

29

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

Development

of Data and Communications Technology

ChemnitzUniversity of Technology, May XX.

[3] 胡广书.数字信号处理[M].北京:清华大学出版社,XX

[4] 张雄伟,陈亮,徐光辉编著.DSP芯片的原理与开发应用[M].北京:电子工业出版 社,XX

[5] Michale J Bass,Clayton M Future of the Miroprocessor Business[J]IEEE SPECTRUM,XX

[6] 陈是知,姜蕊辉.TMS320F2812原理与开发实践[M].中国电力出版,XX

篇六:DSP原理及应用的学习体会

这个学期通过《对DSP芯片的原理与开发应用》课程的学习,对DSP芯片的概念、基本结构、开发工具、常用芯片的运用有了一定的了解和认识,下面分别谈谈自己的体会。 一,DSP芯片的概念

数字信号处理(Digital Signal Processing)是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、增强、滤波、估值、压缩、识别等处理,以得到符合人们需要的信号形式。20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。在通信、等诸多领域得到极为广泛的应用。

30

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

DSP(Digital Signal Process)芯片,即数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其应用主要是实时快速的实现各种数字信号处理算法。该芯片一般具有以下主要特点:

(1) 在一个指令周期内可完成一次乘法和一次加法; (2) 程序与数据空间分开,可以同时访问指令和数据; (3) 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;

(4) 具有低开销或无开销循环及跳转的硬件支持; (5) 快速的中断处理和硬件支持;

(6) 具有在单周期内操作的多个硬件地址产生器; (7) 可以并行执行多个操作;

(8) 支持流水线操作,使取值、译码和执行等操作可以同时进行。

世界上第一个单片DSP芯片应当是1978年AMI公司发布的S2811,1979年美国INTEL

公司发布的商用可编程器件2920是DSP芯片的一个主要里程碑。这两种芯片内部都没有现代DSP芯片所必须有的单周期乘法器。1980年,日本NEC公司推出的uPD7720是第一个具有乘法器的商用DSP芯片。

当前,美国德州公司(TI),Motorola公司,模拟器件公司(AD),NEC公司,AT&T公司是DSP芯片主要生产商。

31

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

选择合适的DSP芯片,是设计DSP应用系统的一个非常重要的环节。一般来说,要综合考虑如下因素:(1),DSP芯片的运算速度;(2),DSP芯片的价格;

(3),DSP芯片的硬件资源;4),DSP芯片的运算精度;(5),DSP芯片的开发工具;(6),DSP芯片的功耗等等。 二,DSP芯片的基本结构。

TI公司的TMS320系列芯片的基本结构包括: (1) 哈佛结构。哈佛结构是一种并行体系结构,主要特点是将程序和数 据存储在

不同的存储空间中,独立编址,独立访问。由于设立了程序总线和数据总线两条总线,从而使数据的吞吐量提高了一倍。为了进一步提高芯片性能,TMS320系列芯片允许数据存放在程序存储器中,并被算术运算指令直接使用;还把指令存储在高速缓冲器(Cache)中,减少从存储器中读取指令需要的时间。

(2) 流水线。DSP芯片广泛采用流水线以减少指令执行时间,从而增强 了处理器

的处理能力。以三级流水线为例,取指,译码和执行操作可以独立的处理,在第

N个指令取指时,前一个(N-1)个正在译码,而第N-2

32

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

个指令则正在执行。

(3) 专用的硬件乘法器。TMS320系列芯片中,有专门的硬件乘法器,乘 法可以在

一个周期内完成。

(4) 特殊的DSP指令。比如LTD这条指令在一个指令周期内可以完成LT、 DMOV

和APAC三条指令。

(5) 快速的指令周期。DSP芯片的指令周期可以在200ns以下。TMS320

系列芯片的指令周期已经降到了20ns以下。可以满足很多DSP应 用的要求。

(三) 开发工具。

可编程DSP芯片的开发需要一整套完整的软硬件开发工具。通常开发工具可以分为代码

生成工具和代码调试工具两类。代码生成工具是将用C或汇编语言编写的DSP程序编译汇编并链接成成可执行的DSP程序。代码调试程序是将DSP程序及系统进行调试,使之能达到设计目标。

就软件开发而言,用DSP芯片的汇编语言编写程序是一

33

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

件比较繁杂的事情。因为不同公司不同类型的芯片的汇编语言都不尽相同。基于以上原因,各个公司都相继推出了高级语言(如C语言)编译器,使得DSP芯片的软件可以通过高级语言编写而成。

TI的优化C编译器能够产生可与手工编写的汇编语言相比的汇编语言程序,提供了简单的C执行时环境的程序接口,使得关键的DSP算法可用汇编语言实现建立了一定规模的工具库来方便使用。在C编译器中还提供了一个所谓的外壳程序(Shell),可以使C程序的编译、汇编和链接三个过程一次完成。

(四)关于TMS320C54X定点DSP芯片的设计使用。 TMS320C54X定点DSP芯片具有很高的性价比,体积小,功耗低,功能强,已在通信等许多领域得到广泛的应用。 该系列芯片大部分采用低电压供电方式,可以降低功耗,其电源分为两种,内核电源(CVdd)电源和I/O电源(DVdd)。与的供电相比,的内核电源可以降低44%的功耗;而I/O电源可以直接与外部低压器件接口,无需额外的电平转换电路。但是,由于现在很多外围芯片的工作电压都是5V,如EPROM、SRAM、模数转换芯片等,因此就要特别注意不同IC之间电平的转换。例如5V的TTL和的TTL器件之间只要耐压允许,电平可以通用;而5V的CMOS被的TTL驱动时,要加双电压(一边是供电,一边是5V供电)的驱动器。

34

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

TMS320C54X系列芯片有丰富的内部快速存储器,也可以扩展外部存储器。一般需要扩展EPROM/PROM,扩展时也要注意电平转换的问题。采用Flash存储器存储程序和固定数据是一种比较好的选择。

进行软件设计时,要注意以下一些问题:

(1) 流水线冲突。TMS320C54X采用了深度为6级的流水线操作,因 此流水线

冲突不可避免。一般在冲突发生时,由DSP自动插入延迟解决问题。但有些情

况下DSP无法自动解决问题,需要程序员通过调整程序语句的次序或在程序中插入一定数量的NOP来解决。如果在调试程序中不能得到正确的结果,而又找不到程序错误时,就应该想到是否发生了流水线冲突,解决方法是在合适的位置插入一至几个NOP指令。

(2) 编译模式选择。在ST1状态寄存器中,有1位编译器模式控制位 CPL。用

于指示在相对直接寻址中采用哪种指针。为0是使用页指针DP,为1 时采用堆栈指针SP。注意模式切换时可能引起流水线冲突。

(3) 指令对存储器的要求。有些指令是对存储器是有

35

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

特殊要求的,使 用时要注意。

此外,在软件编程时还有一些技巧。比如要充分利用片内存储器,节省程序运行时从片

外存储器读入程序或数据的时间;利用程序寻址空间,可以方便的寻址和执行更大规模的程序;利用两个内部累加器,可以有效的提高编程效率;利用ALU的分裂操作模式和CSSU单元可以加快运算速度;利用自动溢出保护功能和利用条件存储指令等等。

TMS320C54X系列芯片一般都在片内设置有BOOT程序,主要作用是在开机时将用户程序从外部装入到程序存储器。用户需要使用BOOT时,需要将DSP设置为微计算机工作方式。

除此之外,通过学习我还了解了如何用MATLAB进行DSP设计模拟,其他一些DSP芯片的大致结构和性能,以及具体的DSP应用开发方面的知识。在教员的悉心教导下,经过我的认真学习,对DSP应用方面的知识有了一个整体的了解,虽然还没有利用DSP芯片做过实际的东西,但我通过对该课的学习,为以后可能的设计应用打下了一定基础。 对于数字信号处理课程最初的料想是在学长和以前的任课老师那里听来的,据说这门课是跟随着信号系统的步伐,而且难度比较的大。

36

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

而至于滤波器就更加简单,只是根据频域的图像告诉我们,可以通过相乘得到这样的一部分我们所需要的频段。 对于连续型号我们可以很简单的从图像中看出来,那么数字信号呢?我们知道现实中模拟信号的传输是很麻烦的,而我们现在广泛采取的就是数字信号,那么同样的问题数字信号也是怎么解决的吗?

答案是显然的。那么既然不一样,我们可以做出数/模——模/数之间的转换是不是就可以了?转换之后,会不会添加或者减少了一些东西呢?

数字滤波器到底是怎么做出来的呢?实际的滤波器肯定不可能就是一个门函数,那么物理可实现的滤波器又是怎么样设计出来的呢?

还有关于调制解调严格的相干条件,如果频率有出路该怎么办,如果是倍频或是半频又该怎么办呢?

因为牵涉到离散的问题,原来很清晰的连续函数不再完全适用,那么我们应该怎么在信号系统后承接好数字信号处理这门课呢?

应该说这些问题是我在信号系统之后一直想的,也是在学习数字信号处理之前应该思考的。

让我释然的是李老师在第一节课时对这门课程作解释时的一句话,我到现在

仍然记忆犹新。她说:很多学生看到这么多公式就感到

37

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

害怕,但实际上我们不是要求大家单纯的去算这些式子。我们不是数学课,我们的要求其实是希望大家能够理解这些式子背后的物理含义。很多式子从数学推理上学很难,但是用物理的方法很简单的一看就明白了。而我们这门课大家就要学会从物理模型的角度去思考,很多问题就很容易就理解了。 从物理模型的角度去理解记忆这些公式,这是我对老师话的总结。在后续的课程中我也是这么做的。 但是我对这门课的心得还要再加上两句话:

(1) 拓展从信号系统中学到的知识,比较它与这门课的异同。

(2) 从物理模型的角度去理解记忆这些公式,或者是从自己的角度去理解,不要拘泥于老师和课本上的条条框框 (3) 重视matlab仿真实验,从图像中去加深理解。 对于这三句话我会在下面作解释。

首先,对于信号系统与数字信号处理的关系,只要是学过这两门课程的人都看的出来。我前面说过,在学习的开始就有人有意无意的提醒我这两门课程的关系。有先入为主的概念,几乎每个人在学习数字信号系统的时候都会有意无意的去比较这两门课程。

显然这是温故而知新,对这门课程是有帮助的。但是这种被动的比较,帮助很小,我们应该学会主动的去罗列他们的不同之处。比如说第三章Z 变换、Z 变换收敛域、Z 反变

38

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

换、Z 变换的性质,虽然是离散的,在表示方式上与连续的有所不同,但是变换的实质是差不多的,所以很多性质往往可以与傅里叶变换性质一起记忆,甚至许多性质公式完全可以从傅里叶变换的性质中互推得到。又比如采样中,采样定理的原理是一样的,但是如连续时间信号的离散时间处理,或者离散时间信号的连续时间处理,将会导致一些不同,这归根结底在于离散信号与连续信号不同之处。

这些异同之处加以理解,甚至反过来,回头再看以前的课本,你会发现很多地方又加深了理解,以前的有些疑问也释然了。或许有人认为以前的课程已经结束了,过去的问题懂不懂无所谓。实际上,很多以前的东西是现在学习的基础,基础扎实了,在以后有可能就因为这个道理,触类旁通反而解决了后续的问题。

如此看来,不单单是信号系统,我们甚至可以与其他一些并行的课程一起理解,比如自动控制原理中的零极点图,和最小相位系统是一致的理论;通信原理中也有调制解调和编码的东西甚至滤波器的设计,虽然主要是考虑信噪比的计算,但是基本原理是一样的。

尽管这种比较可能对做题上没有什么很大的影响,但是了解整个过程,了解整个系统是怎么运作的就对整个系统由了深刻的理解。这样在物理模型层面上,就更明白这是为什么了。

39

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

这就为老师所说的,从物理模型的角度去理解记忆这些公式打下了基础。有很多章节,他的基础都是前几章的公式,或是正对后面章节实现的定义。刚开始看的时候,觉得没有道理,而且很简单的问题偏偏要用数学表达式去表示,很显然的推论,用数学语言描述之后就看不太明白了。 那么既然如此,我们也没必要一定要把那些数学表示方法背下来,完全可以通过其物理的现象去理解它。本来,你用什么语言去写,也不过是描述他罢了,没有必要舍本逐末,只要理解就好。比如全通系统,最小相位系统,线性相位系统,你可以用幅度和相角把每个都表示出来,也完全可以把图像记住了,那么一

切也都记住了。甚至如李老师上课说的,通过平面几何的方法,你可以得到和数学推理一样的结论,因为两者完全是一一对应的关系。你完全可以按照自己的理解来,只要言之有理,自圆其说就可以了。

如果你没有办法想出自己的方法,那么通过图像来理解是一种不错的选择。整门课程随时随地都充斥着各种图像,比起枯燥的数字,图像更具体的表达了它们的物理本质,也方便记忆。

篇七:精选DSP实验报告 目录

40

程的目的和要

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

求…………………………………………............2

1.

标………………………………………….............2

2.

路…………………………………………………... .........2

3.

容………………………………………….………............2

理 …………………………………………...…….........…..2

1.

述........................................................................................2

2

理………………………………………...………............3

3.

识………………………………………...…..............3

1

DSK

41

系统基本结

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

构………………………………...…...........3 (2)TLC320AD50C的内部结构及初始化程序……...…............5

(3)McBSP

的结构及寄存器部分配

置……………...….............5

(4)均匀量化、非均匀量

化……………...…...............................6

5

程……………...…..........……………...…...................8

骤………………………………………….……… ............9

1.

明…………………………………………...……..........9

2.

试…………………………………………...……............16

3.

析…………………………………………...……............16

42

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

四.心得体

会……………………………………………………..........18

录................................................................................................19 语音压缩、存储和回放 一.课程的目的和要求 1.设计要求及目标 基本部分:

(1)使用DSP实现语音压缩和解压缩的基本算法,算法类型自定,例如可以采用、等语音压缩算法。

(2)采用A/D转换器从MIC输入口实时采集语音信号,进行压缩后存储到DSP的片内和片外RAM存储器中,存储时间不小于10秒。

(3)存储器存满之后,使用DSP进行实时解压缩,并从SPEAKER输出口进行回放输出。

(4)使用指示灯对语音存储和回放过程进行指示。 发挥部分:

使用多种算法进行语音的压缩、存储和解压缩,比较它们之间的优缺点。 2.设计思路

43

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

语音信号的幅度(发音强度)并非均匀分布,由于小信号占的比例比大信号大很多,因此可以进行非均匀量化。达到这一目标的基本做法是,对大信号使用大的量化间隔,而小信号则使用小的台阶。ITU-T 建议的PCM A律和μ律语音压缩标准可以分别将13比特和14比特压缩为8比特,达到语音压缩的目的。 3.设计内容

(1)使用DSP实现语音压缩和解压缩的基本算法,算法类型采用的a律压扩算法。

(2)采用A/D转换器从MIC输入口实时采集语音信号,进行压缩后存储到DSP的片内RAM存储器中,存储时间约为10秒。

(3)但采样数据达到规定次数后,使用DSP进行实时解压缩,并从SPEAKER输出口进行回放输出。

(4)使用DSK板的指示灯对语音存储和回放过程进行指示:

循环闪烁:板子自检,程序开始 LED0亮:录音(10秒钟左右) LED0灭:放音 二.设计原理 1.实验概述:

语音信号是信息的重要形式, 语音信号处理有着广泛

44

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

的应用领域,而语音压缩在语音信号的传输、存储等方面有非常广泛的作用,而且在通信领域中已经有较成熟的发展和广泛应用。本设计要求采用DSP及其A/D、D/A转换器进行语音信号的压缩、存储和回放。

语音信号模数、数模转换采用TLC320AD50C(以下简称AD50),这是一款SIGMA-DELTA型单片音频接口芯片(AIC)。它内部集成了16位的D/A和A/D转换器,采样速率最高可达/s,其采样速率可通过DSP编程来设置,内含抗混叠滤波器和重构滤波器。在DAC之前有一个插值滤波器以保证输出信号平滑和ADC之后有一个抽取滤波器以提高输入信号 的信噪比。 2.实验原理:

(1)概念:语音编码一般分为两类:一类是波形编码,一类是被称为“声码器技术”的编码。PCM编码即脉冲编码调制。波形编码的最简单形式就是脉冲编码调制(Pulse code modulation),这种方式将语音变换成与其幅度成正比的二进制序列,而二进制数值往往采用脉冲表示,并用脉冲对采样幅 度进行编码,所以叫做脉冲编码调制。 脉冲编码调制没有考虑语音的性质,所以信号没有得到压缩。 (2)量化:

脉冲编码调制用同等的量化级数进行量化,即采用均匀量化,而均匀量化是基本的量化方式。但是均匀量化有缺点,

45

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

在信号动态范围较大而方差较小的时候,其信噪比会下降 。 国际上有两种非均匀量化的方法:A律和μ律,μ律是最常用的一种。在美国,7位μ律是长途电话质量的标准。 而我国采用的是A律压缩,而且有标准的A律PCM编码芯片。 (3)DPCM&ADPCM:

降低传输比特率的方法之一是减少编码的信息量,这要消除语音信号中的冗余度。相邻的语音样本之间存在明显的相关性,因此对相邻样本间的差信号进行编码,便可使信息量得到压缩。因为差分信号比原语音信号的动态范围和平均能量都小。这种编码叫Differential PCM,简称DPCM,即差分脉冲编码调制。 3.相关理论知识: (1)DSK系统基本结构:

5402 DSK主要包括100MHz VC5402 DSP,1个软件等待周期的64K字的外部SRAM存储器,256K字的FLASH存储器,内嵌的并口仿真器,模拟输入/输出音频接口,以及扩展板接口。其结构如下图:

DSK的主要硬件资源包括:

DSP主芯片1枚:100 MHz TMS320VC5402 DSP RAM 1枚:1个软件等待的64K×16bit的SRAM(CY7C1021V33)

FLASH 1枚:256K×16bit 的 FLASH存储器(AM39VF400A)

46

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

接口2个:用于仿真的JTAG测试总线控制器和一个连接到PC机并口的主 机端接口HPI

信号采集和输出端口:麦克风/耳机音频接口 下面分别介绍: a.DSP芯片

DSK 支持TMS320VC5402 DSP,工作频率可以高达100MHz,工作的内 核电压为,I/O 电压为 b.外部数据存储器

DSK提供了64字SRAM。可以使用的外部数据存储器的大小取决于DROM 的设置。如果DROM=0,那么0x4000~0xFFFF(48K words)的空间是外部存储器(FLASH 或SRAM)。如果DROM=1,外部存储器只能使用0x4000~0xEFFF。

是否可以访问板上或扩展板存储器取决于DMSEL 控制寄存器位。如果DMSEL=0(缺省),那么可以使用板上的数据存储器。如果DMSEL=1那么可以使用扩展板存储器,并且地址开始于0x8000。数据存储器空间资源也取决于MP/MC 状态。

c.外部程序存储器

DSK提供了256K字的FLASH。外部程序存储器的可用大小取决于OVLY 位的设置和MP/MC# 跳线的设置。如果 OVLY位=0 、MP/MC#=0,那么程序存储器的空间0x0000~0xEFFF(60K words)映射到外部存储器,是FLASH 还是SRAM 决

47

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

定于控制寄存器的FLASHENB 状态位。在上电状态,FLASHENB位置位是为了允许从FLASH 引导。然后软件清除此位,使具有1个等待状态的SRAM 使用这个相同的存储器空间。如果MP/MC = 1 并且 OVLY = 0,那么0x0000~0xFFFF 空间是分配给外部存储器( FLASH 或SRAM )。使用 FLASH 存储器的情况下(FLASHENB=1),总线的速率为100MHz,访问FLASH需要7个等待状态。

在SRAM 情况下(FLASHENB=0),总线速率为100MHz 时,访问SRAM需要1 个等待状态。如果MP/MC = 1并且OVLY = 1,则只有x4000~0xFFFF 是映射到外部存储器的。 d.I/O空间存储器

I/O空间由2部分组成,一部分是系统基于CPLD的控制空间,另一部分是扩展板存储器空间。DM_SEL位是外部存储器存取控制寄存器位,能够控制I/O空间的访问。如果DSP向此位写1,那么扩展板存储器的I/O空间是不能被访问的。如果向此位写0,那么扩展板存储器的I/O空间可以被访问。 e.模拟输入/输出音频接口

音频接口使用了2 个标准的 的连接器: 一个连接麦克风(J5)的音频输入 一个连接耳机(J6)的音频输出

麦克风的输入信号最大允许标准是500mVp。在DSK上有10dB前置放大器增益。当接入信号源的输入时,需要使用隔

48

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

直电容()。音频输入可以编程控制,在软件的控制下,可以提供0dB、+6dB、+12dB的增益。音频输出也是可以编程控制的,在软件的控制下,可以提供0dB、-6dB、-12dB的增益。 DSK板上使用了AD50 CODEC作为A/D和D/A的转换设备。它是内部集成了16位的A/D和D/A转换器以及抗混叠滤波器,采样速率最高可达。

此外,ADC之后有一个抽取滤波器以提高输入信号的信噪比,在DAC之前有一个插值滤波器以保证输出信号平滑输出。

AD50与DSP芯片通过同步串行通信接口(MCBSP1)相连。 (2)TLC320AD50C的内部结构及初始化程序

TLC320AD50C是TI公司生产的一个SIGMA-DELTA型16位串行A/D、D/A转换电路。采样速率可通过DSP编程来设置,最高可达 kHz。 内含抗混叠滤波器和重构滤波器 在DAC之前有一个插值滤波器:保证输出信号平滑, 在ADC之后有一个抽取滤波器:提高输入信号的信噪比 A/D、D/A转换器的初始化编程: /* 获取设置A/D和D/A的句柄 */ hHandset = codec_open(HANDSET_CODEC); /* 设置CODEC的工作参数 */ /* DAC和ADC工作在15+1bit模式 */

codec_dac_mode(hHandset, CODEC_DAC_15BIT);

49

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

codec_adc_mode(hHandset, CODEC_ADC_15BIT); /* ADC模拟增益设置为6dB */

codec_ain_gain(hHandset, CODEC_AIN_6dB); /* 设置DAC模拟输出增益为-6dB */

codec_aout_gain(hHandset, CODEC_AOUT_MINUS_6dB); /* 设置抽样频率为8KHz */

codec_sample_rate(hHandset,SR_8000); (3)McBSP的结构及寄存器部分配置

McBSP:多通道缓冲串行口(Multi-channel Buffered Serial Port),是串行口的一种。它既可以利用DSP提供的DMA功能实现自动缓存功能,又可以实现时分多路通信功能。TMS320C5402有两个McBSP串口,分别为McBSP0、McBSP1。 McBSP由引脚、接收发送部分、时钟及祯同步信号产生、多通道选择以及

篇八:DSP实验报告书 实验一 数字IO应用实验 —、实验目的

1. 了解DSP开发系统的组成和结构

2. 在实验设备上完成I/O硬件连接,编写I/O实验程序并运行验证。

3. 内存观察工具的使用 二、实验设备

50

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

计算机,版本软件,DSP仿真器,教学实验箱 三、实验原理

本实验程序由二部分组成:1.由外部中断1产生中断信号

2.键值读取程序:该部分有两种方法进行键值的判断。 方法1:利用内存观察工具进行观察

方法2:利用LED1-LED8的亮灭对应显示键值。 a) 外部中断1的应用参照实验五;

b) 内存观察键值:程序中定义了三个变量“W”“row”和“col”。“W”代表是CPLD

中键盘的扫描数值,“row”和“col”分别代表键盘的行和列,由行和列可以判定按键的位置。上述三个变量可以在观察窗口中观察的。

c) 利用LED灯显示键值原理,参看实验一。具体的LED灯显示值以查表的形式读出, 请参看“e300_”库文件。 本实验的CPLD地址译码说明:

基地址:0x0000,当底板片选CS0为低时,分配有效。 CPU的IO空间: 基地址+0x0200 LED灯output 8位 外部中断用XINT1:由CPLD分配,中断信号由键盘按键产生。

中断下降沿触发。

51

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

KEY_DAT_REG(R):基地址+0x0004; 四、实验步骤和内容

板JUMP1的1和2脚短接,拨码开关S1的第一位置ON,其余置OFF;

板上的开关SW4的第一位置ON,其余OFF;SW3的第四位置ON其余的SW置OFF

3.运行Code Composer Studio (CCS)(需要“DEBUG→Connect” )

4.打开系统项目文件 \\\\ normal \\ 05_key interface \\ E300_;

5.编译全部文件并装载“\\Debug\\ ”文件 6.单击“Debug\\Go Main”跳到主程序的开始; 7.指定位置设置断点;

〉Watch Window打开变量观察窗口;

9. 将变量“w”“ row”和“ col”添加到观察窗口中,改变变量观察窗口的显示方式为HEX显示。

10.点击“Debug--〉Animate”全速运行,然后点击E300板上键盘按键,观察窗口中变量变化,同时LED1-LED8灯也相应变化,指示键值。(注意程序中KEY_E和KEY_F分别代表键盘上的“*”和“#”键值。

十六进制数代表的意义为:高4位为按键的行值,低4位为按键的列值。

52

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

注意:“w”中的低八位表示 11.关闭所有窗口,本实验完毕. 五、实验程序框图 六、实验结论

本实验程序采用外部中断的方法来判断键盘是否被按下,除了这种方法外,还可以根据键盘按下标志位“KEY_FLAG”,利用查询方式来编写程序.“KEY_FLAG”是CPLD内部状态寄存器中的一个只读位.如下表: CPLD内部状态寄存器(只读): CPLD_ST_REG(R): 基地址+0x002 实验二 定时器应用实验 一、实验目的

1、熟悉LF2407的定时器;

2、掌握LF2407的定时器的控制方法;

3、学会使用CPU定时器中断方式控制程序流程。 二、实验设备

计算机,CCS 版软件,DSP教学实验箱,F2407CPU板。 三、 实验原理说明

本实验是采用CPU定时器来定时使LED亮灭的。LF2407的通用定时器功能强大,除了做通用定时使用外,还可以配合事件管理器模块产生PWM波形。可以被特定的状态位实现停止、重新启动、重设置或禁止,可以使用该定时器产生周

53

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

期性的CPU中断。

在本系统中,时钟频率为40MHz,设置相应寄存器,使得到每1/1000秒中断一次,通过累计1000次中断,就能产生1秒钟的定时。

样例实验的程序框图如下: 四、 实验步骤和内容

1、 F2407CPU板的JUMP1的1和2脚短接,拨码开关S1的第一位置ON;其余置OFF。

2、 E300底板的开关SW4的第1位置ON,其余位置OFF。其余开关设置为OFF。

3、 运行CCS软件,调入样例程序,装载并运行;(进入CCS界面后需要点“Debug--Connect”)

4、 用“Project//Open”系统项目文件 \\\\ normal\\ 03_timer \\ ;

5、编译全部文件并装载“..\\ debug\\”;

6、 单击“Debug \\ RUN”运行,可观察到灯LED1~LED8的闪烁变化。

7、单击“Debug \\ Halt”,暂停程序运行,LED灯停止闪烁;单击“RUN”,LED灯又开始闪烁变化 8、结束实验程序 五、 小结与体会

通过本次实验,让我对DSP这门课程在应用软件上有了

54

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

基本的操作知识,以及通过对定时器控制C语言编程的编写,已经基本掌握了定时器的基本原理以及中断基本原理,并能够很好的进行设计,达到对软硬件结合使用。 篇九:DSP实验报告(完美版) DSP实验报告 班 级: 学 号: 姓 名: 指导教师:

实验一 、二 DSP芯片的开发工具及应用实验 1.实验目的

(1)熟悉CCS集成开发环境,掌握工程的生成方法; (2)熟悉SEED-DTK DAD实验环境; (3)掌握CCS集成开发环境的调试方法。 2.实验设备

DSP实验箱,计算机,CCS软件。 3.实验内容及步骤 (1) CCS软件的安装;

(2) 了解SEED-DTK5416实验环境;

(3) 打开CCS集成开发环境,进入CCS的操作环境; (4) 新建一个工程文件

1在c:\i\\myprojects中建立文件夹 volume1(如果

55

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

CCS安装在其他○

d:\i ,则在d:\i\\myprojects中);

2将c:\i\utorial\arget\\volume1○拷贝到c:\i\\myprojects\\ volume1;

3从在CCS 中的Project 菜单,选择 New; ○ 4在Project Name域中,键入volume1; ○

5在Location区域中,浏览步骤1所建立的工作文件夹; ○

6在Project Type 域中,选择Executable(.out); ○ 7在Target域中,选择CCS配置的目标,并单击完成。 ○

(5) 向工程中添加文件

1从Project/Add Files to Project,选择 ,单击 Open(或右○

击Project View图标,选择Add Files to Project ); 2选择Project/Add Files to Project,在Files of type对话框中,选○

择Asm Source Files (*.a*, *.s*)。选择 和 , 单击Open;

3选择 Project/Add Files to Project, 在Files of type 对话框中选○

择 Linker Command File (*.cmd),选择,单击Open。

56

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

(这个文件将片段映射到存储器中);

4选择Project/Add Files to Project, 到编辑器库文件夹○

(C:\i\\c5400\\cgtools\\lib),在Files of type对话框中选择Object and Library Files (*.o*, *.lib)。选择文件,单击Open。这个库提供目标DSP 运行时间支持(runtime-support);

5Project View窗口,右击,选择Scan All Dependencies,○

将出现在Project View窗中的Libraries文件夹; 头文件不要手动添加,自动到:当前目录(源文件所在)或预编译器的“include Search Path (-i)”option所指定的位置。显示头文件:Project—>show Dependencies。 6单击 上的+号,展开工程列表。这个列表称为Project ○

View。

(6) 查看源程序代码

双击Project View中 文件,CCS窗口的右半窗中出现C源代码。

(7) 编译与运行程序

1选择Project/Rebuild All或单击(Rebuild All)菜单条按钮,CCS重○

57

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

新进行编辑、汇编、连接工程里的所有文件。这个处理的有关信息在窗口低部一个小框里显示;

2默认时,.out文件编译到位于当前工程文件夹中的调试(debug),目录中○

也可以通过CCS工具条选择一个存储目录; 3选择File/Load Program。选中,并按Open。○ ( c:\i\\myprojects\\volume1\\Debug\\ 文件夹中。)CCS将程序装载到目标DSP上,打开显示程序反汇编指令的Disassembly窗口;

4选择View/Mixed Source/ASM.,这样可以同时查看C源程序和产生的汇○ 编代码;

5在混合窗口单击汇编指令(单击有效指令,而不是指令的地址或指令所○

传递的区域),单击F1,CCS可以寻找此指令的帮助。这是学习指令的很好的方法;

6选择Debug/Go Main,从主程序开始执行; ○ 7选择Debug/Run或单击 (Run)按钮; ○ 8选择Debug/ Halt,退出程序运行。 ○ (8) 更改程序的选择、定位语法错误 1选择Project/Build Options; ○

2在Build Options窗口的Compiler上,选择Category

58

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

列表的○

Preprocessor,在Define Symbols区域键入FILEIO,按Tab键; 3单击OK,保存新的选择设置; ○ 4选择Project/Rebuild All或单击 (Rebuild All)按钮。只要工程选择○

更改,则必须重新编译所有的文件;

5编译信息显示,程序包含编辑错误。单击Build,你可以看见语法错误信○ 息;

6双击描述语法错误位置的红色文字(第68行)○。注意源程序已打开,且光标位于下面的行上: processing(input, output); ; 7语法错误位于光标位置的上一行(丢了个分号)○,如:puts(\"begin processing\"); ;

8注意:Edit窗口标题栏中的文件名附近出现星号(*)○,指示源程序已经被修改,文件保存后,星号消失; 9选择File/Save,或按Ctrl+S,将更改保存到; ○ 10选择Project/Build,或(Incremental Build)单击工具条,CCS重新编○ 译已经修改的文件;

11选择File/Load Program,选中; ○

12选择Debug/Go Main,从主函数开始执行。由→执行

59

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

可以暂停; ○

13选择Debug/Run或(Run)单击菜单条; ○ 14选择Debug/Halt,退出程序运行。 ○

(9) 使用断点(Breakpoints)和观察窗口(Watch Window) 程序执行时常常需要检查变量的值。 1File/Reload Program; ○

2双击Project View 窗中的。可以将窗口变大,看到更多的源○ 代码;

3将光标放在dataIO( ); ○

4单击(Toggle Breakpoint)工具条,或按F9。选择空白区指示断点已经设○ 置(红色图标);

5选择View/Watch Window,在CCS窗口的右下角出现单个区域,同时,这○

个区域显示观察变量的值;

6如果不在主程序,选择Debug/Go Main; ○ 7选择Debug/Run,或按F5; ○ 8选择Watch1; ○

9单击Name栏中表达式图标,键入要观察的变量名dataIO; ○

10单击观察窗口中的白色区域,保存更改。这个值将立

60

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

即出现在下面的例○ 子中;

11单击 (Step Over)或按F10,跨过对dataIO()的调用; ○

12完成后,单击(Remove All Breakpoints)。 ○ (10)使用带结构的Watch Window

除了观察简单变量的值,也可以观察一个结构的元素的值。

1选择Watch1; ○

2单击Name栏中的表达式图标,键入要观察表达式名称str; ○

3单击观察窗口中的白色空间,保存更改。数值将立即出现在下面的例子○ 中;

4从Reviewing the Source Code调出 中全局申明、并初始化的○

类型为PARMS的结构。定义了PARMS的结构类型; 5单击str上的+号,CCS将结构中所有元素和元素值。双击结构中元素的○ Value,编辑元素的值;

6在Watch window 中Value栏,更改变量的值。注意:Watch Window中○

61

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

数值的更改,数值也变为红色,表示已经手动修改; 7选择Watch Window中str变量,按Delete 键。其他变量同理; ○

8选择Debug/Breakpoints,在Breakpoints中,单击Delete All,然后○ 单击OK。

(11)添加探针Probe Point(为了文件I/O) 可以添加探针(Probe Point),从PC机中的文件读数据。

按照下面的步骤使用探针:

从主PC中传递输入数据,到算法所使用的目标的缓冲器中;

从目标的缓冲器中传递输出数据,到主PC中; 用数据修改窗口。

下面将学习如何使用Probe Point ,将PC文件中的内容,作为测试数据,传递到目标DSP中。另外,也可以使用断点修改所有打开的窗口。 1选择File/Load Program,选中,单击Open; ○

2双击Project View中的; ○ 3将光标放到主程序中dataIO(); ○

4单击(Toggle Probe Point)。选择空白区域指示探针已经设置(兰色图○

62

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

标),如果废止

选择区,此行为兰色显亮;

5从File菜单,选择File I/O。出现File I/O对话框,因此可以选择输○ 入输出文件;

6在File Input,单击Add File; ○

7浏览volume1工程文件夹,选中,单击Open。文件是○

正弦波的十六进制数值,出现文件的控制窗口。再后,当运行程序时,可以在数据文件中使用此窗口启动、停止、返回、或快进; 8在File I/O对话框,更改Address 为inp_buffer,Length为100,在○ Wrap Around中可以添加选中符号;

9单击Add Probe Point。出现 Break/Probe Points对话框中的 Probe ○ Points;

10在 Probe Point列表中,显亮行为: line 61 --> No ○

Connection;

11在Connect To区域中,单击下箭头,从列表中选中; ○

12单击 Replace。Probe Point列表改向显示这个Probe

63

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

Point连接到○ 文件;

13单击OK。File I/O对话框显示文件现在连接到Probe Point; ○

14单击OK,关闭File I/O对话框。 ○ (12)显示图形

在这个例子中,可以查看关于时间的信号图形。 篇十:DSP实验报告 南京邮电大学 实 验 报 告

实验名称:离散时间信号与系统的时、频域表示 离散傅立叶变换和z变换 数字滤波器的频域分析和实现 数字滤波器的设计

课程名称 数字信号处理A(双语) 班级学号__________ 姓 名_________ ____________ 开课时间 XX /XX 学年, 第一学期

实验名称:离散时间信号与系统的时、频域表示 实验目的和任务:

熟悉Matlab基本命令,理解和掌握离散时间信号与系统的时、频域表示及简单应用。在Matlab环境中,按照要

64

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

求产生序列,对序列进行基本运算;对简单离散时间系统进行仿真,计算线性时不变(LTI)系统的冲激响应和卷积输出;计算和观察序列的离散时间傅立叶变换(DTFT)幅度谱和相位谱。 实验内容:

基本序列产生和运算: ~,,~ 离散时间系统仿真: ~ LTI系统:,, DTFT:,, 实验过程与结果分析:

运行P1_1产生单位样本序列 u[n] 的程序与显示的波形如下: % Program P1_1

% Generation of a Unit Sample Sequence clf; % Generate a vector from -10 to 20 n = -10:20; % Generate the unit sample sequence u = [zeros(1,10) 1 zeros(1,20)]; % Plot the unit sample sequence stem(n,u);

xlabel('Time index n');ylabel('Amplitude');

title('Unit Sample Sequence'); axis([-10 20 0 ]); Unit Sample Sequence Amplitude Time index n

clf 命令的作用是- 清除图形窗口上的图形 axis命令的作用是- 设置坐标轴的范围和显示方式

65

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

title命令的作用是- 给图形加名字 xlabel命令的作用是- 添加x坐标标注 ylabel命令的作用是- 添加y坐标标注 产生有延时11个样本ud[n]的程序及其运行结果如下: % Program , MODIFIED for

% Generation of a DELAYED Unit Sample Sequence clf; % Generate a vector from -10 to 20 n = -10:20; % Generate the DELAYED unit sample sequence u = [zeros(1,21) 1 zeros(1,9)];

% Plot the DELAYED unit sample sequence stem(n,u);

xlabel('Time index n');ylabel('Amplitude');

title('DELAYED Unit Sample Sequence'); axis([-10 20 0 ]);

DELAYED Unit Sample Sequence Amplitude Time index n

对于M = 2 和输入 x[n] = s1[n]+s2[n],程序的输出为: 2

Signal #1 2

Signal #2 Amplitude

66

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

00 50

Time index nInput Signal 100 Amplitude 110-1-20 50

Time index nOutput Signal 100 22 Amplitude 0Time index n Amplitude

110-1-2Time index n

输入 x[n] 被该离散时间系统抑制的分量为- Signal #2

的高频分量

程序 中 LTI system 被修改为 y[n] = (x[n]–x[n–1])后, 输入 x[n] =

s1[n]+s2[n] 导致的输出为: Signal #1 Signal #2

67

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

22 Amplitude 00 50

Time index nInput Signal 100 Amplitude 1100 50

Time index nOutput Signal 100 22 Amplitude 00 50

Time index n 100 Amplitude 1100 50

Time index n 100

68

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

对于输入的影响是- 该系统现在是一个高通滤波器。它通过高频率的输入分量S2,而不是

程序 P2_1 对于不同M(M=4,6)取值和不同正弦分量(任取2个)取值的运行结果如下: 低频分量输入S1。 M=4f1== Signal #1 Signal #2 22 Amplitude 0-1-20 50

Time index nInput Signal 100 Amplitude 1100 50

Time index nOutput Signal 100 22 Amplitude 0-1-20

69

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

50

Time index n 100 Amplitude 1100 50

Time index n 100

70

因篇幅问题不能全部显示,请点此查看更多更全内容