您现在的位置是: 首页 > 数码相机 数码相机

dsp设计fir滤波器硬件_dspiir滤波器

tamoadmin 2024-09-03 人已围观

简介1.FIR和IIR滤波器这两种滤波器有什么区别2.有关dsp芯片的菜鸟问题3.关于数字信号处理中FIR滤波器的设计的问题4.求IIR及FIR数字滤波器的C语言实现。(VC++)5.哪些是fir数字滤波器的基本网络结构类型一、构成不同1、fir:一种替代滤波器是无需反馈的有限支撑(finite support)滤波器,称为有限脉冲响应(finiteimpulse response,FIR)滤波器。2

1.FIR和IIR滤波器这两种滤波器有什么区别

2.有关dsp芯片的菜鸟问题

3.关于数字信号处理中FIR滤波器的设计的问题

4.求IIR及FIR数字滤波器的C语言实现。(VC++)

5.哪些是fir数字滤波器的基本网络结构类型

dsp设计fir滤波器硬件_dspiir滤波器

一、构成不同

1、fir:一种替代滤波器是无需反馈的有限支撑(finite support)滤波器,称为有限脉冲响应(finiteimpulse response,FIR)滤波器。

2、iir:用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。

二、单位响应不同

1、fir:FIR滤波器的单位脉冲响应是有限长的,网络中没有反馈回路。

2、iir:IIR滤波器的单位脉冲响应为无限长,网络中有反馈回路。

三、幅频特性不同

1、fir:FIR数字滤波器的幅频特性精度较之于IIR数字滤波器低,但是线性相位,就是不同频率分量的信号经过fir滤波器后他们的时间差不变。

2、iir:IIR数字滤波器幅频特性精度很高,不是线性相位的,可以应用于对相位信息不敏感的音频信号上。

百度百科-有限脉冲响应滤波器

百度百科-IIR数字滤波器

FIR和IIR滤波器这两种滤波器有什么区别

1、FIR:有限脉冲响应滤波器。每一个输出都是输入样本邻域中有限个样本际系的加权和。与IIR滤波器相比而言,FIR滤波器当前输出信号不再是以往输出信号的函数。

2、FIR:利用MATLAB信号处理工具箱中的滤波器设计和分析工具(FDATool),可以很方便地设计出符合应用要求的未经量化的IIR数字滤波器。

3、区别:

①线性相位的不同:

与IIR相比,它具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。

②所需参数不同:

IIR却拥有FIR所不具有的缺点,那就是设计同样参数的滤波器,FIR比IIR需要更多的参数。

③实时性不同:

要增加DSP的计算量。DSP需要更多的计算时间,对DSP的实时性有影响。以下都是低通滤波器的设计。

扩展资料

IIR系统的特点:

1、封闭函数:

IIR数字滤波器的系统函数可以写成封闭函数的形式。

2、IIR数字滤波器用递归型结构:

IIR数字滤波器用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式。

3、借助成熟的模拟滤波器的成果:

IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,其设计工作量比较小,对计算工具的要求不高。

4、需加相位校准网络:

IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。

参考资料

百度百科-有限脉冲响应滤波器(FIR)

百度百科-IIR数字滤波器

有关dsp芯片的菜鸟问题

1、响应不同:两种滤波器都是数字滤波器。根据冲激响应的不同,将数字滤波器分为有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器。对于FIR滤波器,冲激响应在有限时间内衰减为零,其输出仅取决于当前和过去的输入信号值。对于IIR滤波器,冲激响应理论上应会无限持续,其输出不仅取决于当前和过去的输入信号值,也取决于过去的信号输出值。

2、相位不同:FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR相比,它具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。

3、影响不同:而另一方面,IIR却拥有FIR所不具有的缺点,那就是设计同样参数的滤波器,FIR比IIR需要更多的参数。这也就说明,要增加DSP的计算量。DSP需要更多的计算时间,对DSP的实时性有影响。

百度百科-IIR数字滤波器

百度百科-FIR滤波器

关于数字信号处理中FIR滤波器的设计的问题

我也不懂,以下是我搜集的,希望对你有帮助

DSP芯片,也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器具,其主机应用是实时快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下主要特点:

(1)在一个指令周期内可完成一次乘法和一次加法;

(2)程序和数据空间分开,可以同时访问指令和数据;

(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;

(4)具有低开销或无开销循环及跳转的硬件支持;

(5)快速的中断处理和硬件I/O支持;

(6)具有在单周期内操作的多个硬件地址产生器;

(7)可以并行执行多个操作;

(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。

当然,与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。

单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

单片机的应用领域 :

1. 单片机在智能仪器仪表中的应用;

2. 单片机在工业测控中的应用;

3. 单片机在计算机网络和通讯技术中的应用;

4. 单片机在日常生活及家电中的应用;

5. 单片机在办公自动化方面。

DSP比单片机贵

你说的是其中的一部分知识,是DSP处理的信息的原理。

要向学习DSP的硬件开发,还要学习微机原理,由单片机系统的设计经验最好。

还有就是DSP的开发环境,也就是CCS,要掌握常用的编程语言,有汇编语言和C语言的编程经验最好.

首先要了解DSP的特点。

数字信号处理相对于模拟信号处理有很大的优越性,表现在精度高、灵活性大、可靠性好、易于大规模集成等方面。随着人们对实时信号处理要求的不断提高和大规模集成电路技术的迅速发展,数字信号处理技术也发生着日新月异的变革。实时数字信号处理技术的核心和标志是数字信号处理器。自第一个微处理器问世以来,微处理器技术水平得到了十分迅速的提高,而快速傅立叶交换等实用算法的提出促进了专门实现数字信号处理的一类微处理器的分化和发展。数字信号处理有别于普通的科学计算与分析,它强调运算处理的实时性,因此DSP除了具备普通微处理器所强调的高速运算和控制功能外,针对实时数字信号处理,在处理器结构、指令系统、指令流程上具有许多新的特征,其特点如下:

(1) 算术单元

具有硬件乘法器和多功能运算单元,硬件乘法器可以在单个指令周期内完成乘法操作,这是DSP区别于通用的微处理器的一个重要标志。多功能运算单元可以完成加减、逻辑、移位、数据传送等操作。新一代的DSP内部甚至还包含多个并行的运算单元。以提高其处理能力。

针对滤波、相关、矩阵运算等需要大量乘和累加运算的特点,DSP的算术单元的乘法器和加法器,可以在一个时钟周期内完成相乘、累加两个运算。近年出现的某些DSP如ADSP2106X、DSP96000系列DSP可以同时进行乘、加、减运算,大大加快了FFT的蝶形运算速度。

(2) 总线结构

传统的通用处理器用统一的程序和数据空间、共享的程序和数据总线结构,即所谓的冯?诺依曼结构。DSP普遍用了数据总线和程序总线分离的哈佛结构或者改进的哈佛结构,极大的提高了指令执行速度。片内的多套总线可以同时进行取指令和多个数据存取操作,许多DSP片内嵌有DMA控制器,配合片内多总线结构,使数据块传送速度大大提高。

如TI公司的C6000系列的DSP用改进的哈佛结构,内部有一套256位宽度的程序总线、两套32位的数据总线和一套32位的DMA总线。ADI公司的SHARC系列DSP用超级哈佛结构(Super Harvared Architecture Computer),内部集成了三套总线,即程序存储器总线、数据存储器总线和输入输出总线。

(3) 专用寻址单元

DSP面向数据密集型应用,伴随着频繁的数据访问,数据地址的计算也需要大量时间。DSP内部配置了专用的寻址单元,用于地址的修改和更新,它们可以在寻址访问前或访问后自动修改内容,以指向下一个要访问的地址。地址的修改和更新与算术单元并行工作,不需要额外的时间。

DSP的地址产生器支持直接寻址、间接寻址操作,大部分DSP还支持位反转寻址(用于FFT算法)和循环寻址(用于数字滤波算法)。

(4) 片内存储器

针对数字信号处理的数据密集运算的需要,DSP对程序和数据访问的时间要求很高,为了减小指令和数据的传送时间,许多DSP内部集成了高速程序存储器和数据存储器,以提高程序和数据的访问存储器的速度。

如TI公司的C6000系列的DSP内部集成有1M~7M位的程序和数据RAM;ADI公司的SHARC系列DSP内部集成有0.5M~2M位的程序和数据RAM,Tiger SHARC系列DSP内部集成有6M位的程序和数据RAM。

(5) 流水处理技术

DSP大多用流水技术,即将一条指令的执行过程分解成取指、译码、取数、执行等若干个阶段,每个阶段称为一级流水。每条指令都由片内多个功能单元分别完成取指、译码、取数、执行等操作,从而在不提高时钟频率的条件下减少了每条指令的执行时间。

(6) DSP与其它处理器的差别

数字信号处理器(DSP)、通用微处理器(MPU)、微控制器(MCU)三者的区别在于:DSP面向高性能、 重复性、数值运算密集型的实时处理;MPU大量应用于计算机;MCU则适用于以控制为主的处理过程。

DSP的运算速度比其它处理器要高得多,以FFT、相关为例,高性能DSP不仅处理速度是MPU的 4~10倍,而且可以连续不断地完成数据的实时输入/输出。DSP结构相对单一,普遍用汇编语言编程,其任务完成时间的可预测性相对于结构和指令复杂(超标量指令)、严重依赖于编译系统的MPU强得多。以一个FIR滤波器实现为例,每输入一个数据,对应每阶滤波器系数需要一次乘、一次加、一次取指、二次取数,还需要专门的数据移动操作,DSP可以单周期完成乘加并行操作以及3~4次数据存取操作,而普通MPU完成同样的操作至少需要4个指令周期。因此,在相同的指令周期和片内指令缓存条件下,DSP的运算送到可以超过MPU运算速度的4倍以上。

正是基于 DSP的这些优势,在新推出的高性能通用微处理器(如Pentium、Power PC 604e等)片内已经融入了 DSP的功能,而以这种通用微处理器构成的计算机在网络通信、语音图像处理、实时数据分析等方面的效率大大提高。

谈一点学dsp的心得

因为课题需要,所以跟dsp打上了交道。大概从今年的8月份开始了解dsp。

那个时候中文书籍好像不是很多,就从网上下载ti的一些基本手册和几本大

黄皮书。因为以前基本没接触过,所以没搞dsp之前觉得dsp好深奥好难,看

了一段时间书以后,开始使用ccs仿真一些程序。现在回头看看ccs的软仿真

一般只能仿真算法的对错,对于算法的效率和其他一些性能的仿真基本没有

什么意义。可惜刚上手的时候我对这个不太清楚,就一直在ccs的软仿真上

浪费了太多时间,总想通过ccs下的profiler观测值来提高程序效率,结果

和后来在实际板子上跑出来的效果大相径庭。大概到了国庆期结束,开始

画电路板,11月初拿到电路板开始漫长的调试过程。早听人说过调硬件是一

件很苦恼又很无奈的事,因为好多问题没有道理可讲。第一块板子是一块小

的实验板,制版焊接到调试一次通过,我就感觉调试硬件没什么特别难的。

结果后来的事实让我体验到了调试硬件的艰苦。第二块板子也很快做完了,

结果上电后总进不去ccs。折腾了两天,挨个管脚测,后来又和第一次做得

板子进行比较,发现一些中断引脚没有拉高,估计可能是这方面的原因。把

这些中断管脚拉高以后,ccs顺利进去了。后来又遇到了很多问题,每次都要

花上两三天时间才能把问题找出来。到现在电路基本能跑起来,但还有些不太

稳定,原因还需要慢慢琢磨。

在调试过程中,能多找一些身边的高手问就尽量找,这样有两个好处,一

能节省你的时间,二可以从高手那里得到一些经验。其次如果电路在调试过程

中老出问题,先检查程序,确认程序没有问题以后,在查硬件电路,这样一个

顺序效率比较高。再就是多留意一下bbs上的信息,有的信息可能现在对你

没多少用处,但是可能在以后会用到。

还有一些具体经验,以后有时间在总结了 *^_^*

学习DSP可能需要时间很长,不是短期可以解决的。

我的建议:

1。看网上资料;

2。用DSK来练手;

3。如果你连硬件经验都没有,那就得先练焊板子,哈哈

4。找人请教

我的唯一感受,如果你想学深些的话:

1.多看TI的pdf,多多宜善,权威而且全面

2.硬件上,多做项目,包括单片机的、一般电路的都行

3.软件上,一般的编程不说了,编译原理之类的对混合编程很有帮助的

4.其它东西,就是那些随着DSP的出现才流行的东西,如DSP/BIOS,CPLD技术等

其实也没什么诀窍,我现在还是照着上面学,离目标还差得远

求IIR及FIR数字滤波器的C语言实现。(VC++)

我认为你说得对,所以这种结构只是离线算法。

DSP设计主要讲究的是在线算法,用时域的方式解决频域的问题。

这个框图本身的效果并不是为了实现一个DSP的设计,而是为了解决两个离线的数据如何快速得到其卷积。

例如多项式f(x),g(x)求乘法,平常需要O(n^2)的时间复杂度,n为多项式项数。

而用此结构(其实多项式乘法也是卷积),则需要:FFT算法O(nlogn)三次,分别是f(x)和g(x)指数的FFT,以及一次IFFT。

所以此结构目的在于提高离线算法的执行效率。

哪些是fir数字滤波器的基本网络结构类型

这个问题比较复杂,最近本人也在研究数字滤波,

结合说一下

第一个图是fir的流程图,其中Z-1是延迟,是单个样时间1/fs

n阶的fir滤波器就是选取最近的n+1个样本,然后使他们各自乘以自己的滤波器系数即图中的F(n),[一般其他书的表示是h(n)]

然后相加得到输出的y(n)就是一个输出点

,其中F(n)的得出需要根据样频率和滤波器的通带和阻带来决定

其中为了改善旁瓣的幅值,一般在样后给样本或者h(n)加窗,当然可以用“最佳方法”来做

得出h(n)大致方法是先将矩形窗进行DFT,得出h(n),然后对h(n)进行加窗得出h(k),然后将∑h(k)×x(n)=y(n),如阶数较多可以用傅里叶变换使时域变频域后再将卷积相加,可以利用FFT来改进实时性,提升速度

上面就是fir滤波器的简述

第二个上传不了,直接给链接

://image.baidu/i?ct=503316480&z=0&tn=baiduimagedetail&word=%D2%BB%BD%D7iir%C2%CB%B2%A8%C6%F7&in=12708&cl=2&cm=1&sc=0&lm=-1&pn=0&rn=1&di=2607528304&ln=1054&fr=

图中的Z-1是延时,iir滤波器也叫无限冲击响应滤波器,是有反馈的,

图中的是一阶的,相对fir滤波器来说,iir滤波器可以用较低的阶数来获得较好的滤波特效。但是其相位特性较差。

鉴于实用性,还是建议楼主去图书馆借书看,百度不可能得到确实的方案,

楼主可以去借“数字信号处理”的书,国外的中译本就有详细介绍fir和iir以及fft还有其他变换,国内的dsp大都几乎是dsp用户手册的中译本,对上述问题都是很简陋地带过,不予置评。

本人推荐一本书在.ourr上面的dsp专栏有下载,40多M,叫DSP算法、应用和设计,本人有这本实体书,写的较好

fir数字滤波器的基本网络结构类型有直接型、线性相位型、级联型、频率样型等。

1、直接型:设FIR滤波器的单位冲击响应h(n)为一个长度为N的序列,则滤波器系统函数为关系式。

2、级联型:当需要控制滤波器的传输零点时,可将H(z)分解为实系数二阶因子的乘积形式。

3、线性相位型结构:FIR滤波器的线性相位结构有偶对称和奇对称,不论h(n)为偶对称还是奇对称都有。

4、频率样型:频率样型结构是一种用系数将滤波器参数化的一种实现结构,一个有限长序列可以由相同长度频域样值惟一确定。系统函数在单位圆上作N等分取样,就是单位取样相应h(n)的离散傅里叶变换。

FIR滤波器

进入FIR滤波器前,首先要将信号通过A/D器件进行模数转换,把模拟信号转化为数字信号。为了使信号处理能够不发生失真,信号的样速度必须满足香农样定理,一般取信号频率上限的4-5倍做为样频率。

一般可用速度较高的逐次逼进式A/D转换器,不论用乘累加方法还是分布式算法设计FIR滤波器,滤波器输出的数据都是一串序列,要使它能直观地反应出来。还需经过数模转换,因此由FPGA构成的FIR滤波器的输出须外接D/A模块。

FPGA有着规整的内部逻辑阵列和丰富的连线,特别适合于数字信号处理任务,相对于串行运算为主导的通用DSP芯片来说,其并行性和可扩展性更好,利用好FPGA乘累加的快速算法,可以设计出高速的FIR数字滤波器。