当前位置:首页 > 电源 > 数字电源
[导读]1.引言 在数字信号处理系统中,FIR数字滤波器多采用专用DSP芯片(如TMS320CXX系列),这种基于DSP的处理系统存在很多优点,比如方案灵活、可操作性强、程序易于移植。但这种结构的滤波器多是根据FIR 滤波器的数据

1.引言
    在数字信号处理系统中,FIR数字滤波器多采用专用DSP芯片(如TMS320CXX系列),这种基于DSP的处理系统存在很多优点,比如方案灵活、可操作性强、程序易于移植。但这种结构的滤波器多是根据FIR 滤波器的数据移位相乘累加的算法编写相应软件,利用软、硬件相互结合完成滤波器的设计。由于软件运行时,指令都是串行执行的,这严重制约了系统的运行速率,不能满足高传输速率,大数据吞吐量的数字信号的实时性处理要求。而基于DA算法的FPGA滤波器则是一种采用纯硬件的方式实现FIR 滤波器的方式,这种方法突出的优点是运算速度快,特别适合在高速、实时、快变的数字信号处理要求。

2.DA算法的基本思想
    第一个讨论分布式算法(distributed arithmetic,DA)的可以追溯到1973年Cr0i Croisier的一篇论文,并由Peled和Liu来推广。但是直到FPGA出现以后,才在FPG计算乘积和中被广泛地应用。在FPGA 芯片设计中,分布式算法(distributed arithmetic,DA)是一种很重要的技术。它在乘积和的计算中已被广泛应用,为了理解DA算法设计原理,我们考虑有一个线性时不变网络的输出可以用下式表示:
 
假设系数c[n]是已知常数,x[n]是变量,在有符号DA系统中假设变量x[n]的表达式如下:
 
其中xb[n]表示 x[n]的第b位,即x[n]是x第n个样点。所以,内积y 可以表示为:
 
我们重新分别求和次序(这就是分布式算法的由来),结果是:
y=(c[0]xB-1[0]+c[1]+……+c[N-1]xB-1[N-1])2B-1+(c[0]xB-2[0]+c[1]+……+c[N-1]xB-2[N-1])2B-2     (2-4)
.
.
.
+(c[0]x0[0]+c[1]x0[1]+c[N-1]x0[N-1])20
    用更紧凑的形式表示为:
 
    从(2—4)式可以发现,分布式算法是一种以实现乘加运算为目的的运算方法。它与传统算法实现乘加运算的不同在于执行部分积运算的先后顺序不同。分布式算法在实现乘加功能时,是通过将各输入数据的每一对应位产生的部分积预先进行相加形成相应的部分积,然后再对各个部分积累加而得到最终的结果,而传统算法是等到所有乘积已经产生之后再来相加完成乘加运算的。与传统串行算法相比,分布式算法可极大地减少硬件电路的规模,提高电路的执行速度。

3.基于DA算法的FIR数字滤波器的硬件实现
    由上面分析可以知道,对于任何一个线性时不变网络总可以将它转换成式(2-5)那样的形式,FIR滤波器是一个很典型的线性时不变网络,它的表达式是:
 
我们可以将它转化成下面这样的形式:
 
在本系统中,采用的是8 位输入,所以B = 8 则:
 
    线性相位FIR滤波器满足系数对称条件,本系统设计的系统为16阶,那么它的系数关于h[7]偶对称,即有:
h[n]= h[16-1-n]= h[15-n]   (3-4)
    由式(3-3)和(3-4)可得到实现系统硬件框图如图3-1:
 

4.系统的VHDL描述
4.1顶层模块设计
Library ieee;
Use ieee.std_logic_1164.a11;
Use ieee.std_logic_unsigned.all;
Entity FIR is
Port (x: in std_logic_vector(7 downto 0);
clk : in std_logic;
y : out std_logic_vector(7 downto 0));
end FIR;
architecture behave of FIR is
component lpfir
port (
in : in std_logic_vector(7 downto 0);
clk : in std_logic;
out : out std_logic_vector(7 downto 0));
end component ;
begin
process(clk)
begin
u1:lpfir port map (x,clk,y);
end process;
end behave;

4.2 LUT查询表ROM的建立
用MIF文件格式编辑的ROM初始化值
WIDTH = 16
DEPTH = 16
ADDRESS_RADIX = HEX ;[!--empirenews.page--]
DATA_RADIX = HEX ;
CONTENT BEGIN
0 : 0000;
1 : 0045;
2 : 00E6;
……
F : 0000;
END;

4.3 滤波器系数的设计
    我们利用matlab 自带的滤波器设计工具FDAtool和信号处理工具Pstool设计出一个16阶窗函数FIR低通滤波器。它的具体参数是:
窗函数类型:Blackman窗,信号采样频率:50KHz,通带截至频率10KHz,滤波系数h[n]见下表1,该滤波器的传输特性如下图4-1 所示:
 

5.系统的仿真与结果分析
    为了验证与检测该系统的效果,我们采用Cyclone 公司EP1C6Q240C8芯片对系统进行了开发,并通过ALTERA 公司的综合设计工具Quartus II 4.2 对该系统进行了综合编译与仿真,我们对该系统连续输入了16个数据(0.3,0.32,-0.79,0.45,-0.87,-0.91,-0.12,0.89,0.37,0.66,-0.57,0.75,-0.21,0.96,0.56,-0.19)进行处理,得到了如下仿真结果。


5.1 系统综合性能的仿真结果
    系统的综合性能见表5-1:
  
    由表5-1可以看出系统占有硬件资源很少,运行速度很高。

5.2 系统处理准确性的仿真结果
    系统的处理结果与理论结果对比见表5-2:
    为了获得一个更为准确的结果,取后8 个数据进行分析,通过表5-2我们可以看出该系统的实际处理结果与理论计算结果误差很小,可以满足实际工程方面的需求。

6. 结论
    以上理论分析和仿真结果表明,软硬件结合串行执行的DSP算法相比,DA算法具有明显的占用系统资源低和运行速度高的优点,是一种更为有效的FIR 滤波器设计方法;基于DA算法的数字信号处理设计具有DSP算法所无可比拟的优势,在极大的提高了FIR 数字滤波器的处理速度和数据吞吐能力的同时,又可以保证系统很小的处理误差,是一种比较实用可靠高效的设计方法。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭