东华理工大学软件学院
课程设计报告
课程设计题目:卷积(Convolve)算法
专
班
学
业:信息工程
级:0.0
号:0.0
学生姓名:0.0
指导教师:0.0
2011 年 6 月 26 日
一、实验目的
1、 了解卷积算法的原理。
2、 学 会 编 写 卷 积 算 法 和 调 用 CCS 自 带 的 DSPLIB 库 中 的
convol()函数。
3、 掌握 DSPLIB 库函数的调用。
二、实验设备
计算机、ZY13DSP12BD 实验箱、5402EVM 板。
三、实验原理
1、若 LTI 系统对 )(n 的响应为 h(n),h(n)称为系统的单位脉冲
响应,则由时不变特性可得出系统对
kn
(
)
的响应为 h(n-k);系统
对
k
()(
kx
kn
)
的响应为
k
()(
knhkx
)
,即离散时间 LTI 系统对输入
x(n)的响应为
)(
ny
此式称为卷积和,通常记为
k
()(
knhkx
)
2、DSPLIB 库
)(
ny
)(
nx
)(
nh
在 C:\ti\c5400\dsplib\include\dsplib.h 中列出所有 DSPLIB
库函数的原型,在程序中调用这些库函数时必须包括该头文件,即在
主程序中加入下面代码:
#include "DSPLIB.h"
并 将 54xdsp.lib 或 者 54xdspf.lib 加 入 到 工 程 文 件 中 ,
54xdspf.lib 针对超过 64KW(64K*16bit)的大编译模式。
在 dsplib.h 中给出以下方面的一些函数原型:
a) 实数或者复数的 FFT 算法;
b) 数字滤波和卷积;
c) 自适应滤波
d) 相关滤波
e) 数字函数
f) 三角函数
g) 矩阵运算
h) 杂项如数据格式转换等。。
在 TI 的技术文档 spra480.pdf 中详细介绍了 C5400 的 DSPLIB 库
函数的具体用法。
四、实验内容和步骤
1.开电,运行 CCS 软件,打开项目文件 convol.pjt,编译运行并
下载。
2.设置断点,再点击“运行”按钮,如下图所示。这里的卷积算
法是在程序中编写的。
3.点击 View->Graph->Time/Frquence 打开图形属性对话框,如下
设置。采用双综观察 2 路信号输入变量 x_real 和 h_real。观察点数
为 100 点,类型为 float 型。
4.再设置单综观察 1 路信号的输出 y_real.观察的点数为 100 点,类
型为 float 型。
5.点击“OK”后,可以看到如下波形。
5.
左边一副图中显示的是输入信号 x_real 和 h_real,右边一副图
显示的是 x_real 和 h_real 卷积后的结果。
五、Convolve 子程序
时域表达式:
( )
y n
子程序参数说明:
n
m
0
(
),
h m x n m n
) (
0,1,
k
,
,
l
1
N1:序列 x[i]的长度
N2:冲激响应 h[i]的长度
y_real: 卷积和的实部
n: 卷积和的长度
子程序流程图: