- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最新精品文档,知识共享!
信号与信息综合处理
实 验 报 告
学院:信息与通信工程学院
班级:2013211124
姓名:王丹頔
学号:2013210659
实验三 FIR滤波器实现
实验目的
进一步熟悉CCS v5的开发环境,掌握调试的要素,并理解FIR的过程。
实验原理
AIC23
AIC23相关介绍
图1 AIC23结构图
图2 AIC23编码器控制寄存器
图3 AIC23寄存器集合
图4 采样速率设置
图5 采样率可配参数
void DSK6416_init()
设置所有的CPLD寄存器到上电状态,初始化内部BSL数据结构;
在使用任何BSL函数之前都必须调用。
DSK6416_AIC23_openCodec函数
DSK6416_AIC23_CodecHandle DSK6416_AIC23_openCodec (int id, DSK6416_
AIC23_Config *Config);
id:指定使用哪个编码器,DSK6416上为id=0;
Config:指向包含编码器寄存器值的结构,以该结构中的值初始化寄存器;
调用成功:返回编码器句柄;失败:返回INV常数(-1)。
DSK6416_AIC23_write函数
Int16 DSK6416_AIC23_write(DSK6416_AIC23_CodecHandle hCodec, Int32 val);
hCodec, Val:编码器句柄,写入编码器的值;
返回TRUE:数据成功写入;
返回FALSE:数据端口忙。
DSK6416_AIC23_closeCodec函数
DSK6416_AIC23_closeCodec(DSK6416_AIC23_CodecHandle hCodec);
关闭编码器。
FIR滤波器实现
FIR滤波器介绍
滤波器就是在时间域或频域内,对已知激励产生规定响应的网络,使其能够从信号中提取有用的信号,抑制并衰减不需要的信号。
FIR滤波器滤波过程:
,
如果输入信号长度为M,滤波器系数长度为N,线性卷积后输出数据长度为L=M+N-1。即为:
,
DSP程序优化
优化原理
DSP的C6000系列CPU中的8个功能单元可以并行操作,并且其中两个功能单元为硬件乘法运算单元,大大地提高了乘法速度;
DSP 采用了具有独立程序总线和数据总线的哈佛总线结构,仅片内程序总线宽度就可达到256 位,即每周期可并行执行8 条32位指令;
片内两套数据总线的宽度分别为32 位;
除了多功能单元外,流水技术是提高DSP 程序执行效率的另一主要手段。
优化入门
通过选定C 编译器的选项来实现优化。在这个阶段可实现程序级优化,从而部分消除多余代码;
针对C 源程序,进行优化。在运算中,循环经常占用大量的时钟周期, 对循环的优化成为代码优化的重点;
对重点段直接线性汇编。
编译选项:
mv6400:使所产生的代码能利用C64x增加的硬件资源和指令集。此选项编译器默认执行;
on:其中n可以取值为0、1、2和3,编译器将根据n的不同,执行不同等级的优化;
k:生成编译器输出的.asm汇编文件;
mw:生成详细的软件流水报告。使用-mw后,系统会默认使用-k选项,生成.asm汇编文件并且在其中加入软件流水报告。
关键字 restrict
关键字restrict是对指针、引用或数组的一种限定;
使用restrict关键字是为了确保其限定的指针在声明的范围内,是指向一个特定对象的唯一指针,即这个指针不会和其它指针指向存储器的同一地址;
使用restrict关键字可以使使编译器更容易确定是否有别名信息,从而更好地优化代码。
_nassert语句
C6416可以在每个时钟周期加载两个64位比特数,对于short类型数据则可以实现一个周期加载两对short数据并行进行运算;
为了能够使两个short数据并行运算,数据的存储地址必须按字地址对齐,这样存取时才不会出错;
_nassert可以告诉编译器数据的对齐信息,编译器便可进行数据优化。
程序功能
FIR滤波器
设计64阶滤波器,通过设置不同的滤波系数,产生低通,带通,和高通三种不同类型滤波器,利用对已知信号进行卷积运算,获得滤波结果,具体说明如下:
各滤波系数h[FILTER_SIZE]由MATLAB的FDA工具箱产生,其中FILTER_SIZE为滤波器阶数加1;
x[N]为原始序列,由 函数抽样产生,其中f1=1KHz,
h1[M]为低通滤波器系数,y1[N]为低通滤波结果;
h2[M]为带通滤波器系数,y2[N]为带通滤波结果;
h3[M]为高通滤波器系数,y3[N]为高通滤波结果。
音频播放
设置48k的采样率,使用AIC2
您可能关注的文档
最近下载
- 在原油中老化的螺杆泵定子氢化丁腈橡胶胶料的性能变化研究.pdf VIP
- 专题06现代文阅读之记叙文(必考文章)18篇(原卷版+解析).docx VIP
- JC∕T 2493-2018 建筑用免拆复合保温模板(可复制版).pdf
- 《线性代数》(陈建龙等)第四章 矩阵的特征值和特征向量.ppt VIP
- 屋顶分布式光伏发电项目设计、采购、施工、运维 投标方案(技术方案).pdf
- (deform挤压模拟课程设计.doc VIP
- 毕业设计(论文)-基于PLC的自动上料系统设计.docx VIP
- deform模拟软件实例操作与详细介绍.doc VIP
- 北京市建设工程质量检测见证取样指南 .pdf VIP
- 2022-2023学年河南省南阳市宛城区九年级(上)期中数学试卷(附答案详解).docx VIP
原创力文档


文档评论(0)