基于FPGA的IIR滤波器设计
相关热词搜索:
基于FPGA的IIR滤波器设计 摘 要:数字信号处理在科学和工程技术许多领域中得到广泛的应用,与FIR数字滤波器相比,IIR数字滤波器可以用较低的阶数获得较高的选择性,故本课题采用一种基于FPGA的IIR数字滤波器的设计方案,首先分析了IIR数字滤波器的原理及设计方法,然后通过MAX+PLUSⅡ的设计平台,采用自顶向下的模块化设计思想将整个IIR数字滤波器分为:时序控制、延时、补码乘加和累加四个功能模块。分别对各模块采用VHDL进行描述后,进行了仿真和综合。仿真结果表明,本课题所设计的IIR数字滤波器运算速度较快,系数改变灵活,有较好的参考价值。
关键词:电子设计自动化,IIR数字滤波器,现场可编程门阵列,硬件描述语言 The design for IIR digital filter based on FPGA Abstract: Digital signal processing is widely used in lots of fields, such as in science and project technique. Compared with FIR digital filter, IIR digital filter can get high selectivity with low factorial. A kind of IIR digital filter design method was introduced in the paper, which is based on FPGA. By used the design plant of MAX+PLUSⅡ, we adopt blocking method named “Top-down ” and divide the entire IIR digital filter into four blocks, which are Clock control, Time delay, Multiply-addition and Progression. After described with VHDL, we do emulate and synthesis to each block. The result shows that, the introduced IIR digital filter runs fast, and the coefficient changes agility. It has high worth for consulting. Key words: Electronic Design Automation, IIR Digital Filter, Field Programmable Gate Array, very High Speed Integrated Circuit Hardware Description Language (VHDL) 目 录 序言...........................................................1 第1章 IIR数字滤波器及其硬件实现方法...........................2 1.1 IIR数字滤波器概念....................................................2 1.1.1 IIR数字滤波器的原理................................................2 1.1.2 IIR数字滤波器的基本结构............................................2 1.1.3 IIR数字滤波器的设计方法............................................3 1.2 IIR数字滤波器的硬件实现方案..........................................4 第2章 EDA技术和可编程逻辑器件.................................8 2.1 电子设计自动化EDA技术................................................8 2.2 可编程逻辑器件.......................................................8 2.2.1 可编程逻辑器件简介.................................................8 2.2.2 使用FPGA器件进行开发的优点.........................................9 2.2.3 FPGA设计的开发流程.................................................9 2.3 硬件描述语言VHDL及数字系统设计方法..................................10 2.3.1 硬件描述语言VHDL简介..............................................10 2.3.2 利用VHDL设计数字系统..............................................10 第3章 IIR数字滤波器的设计与仿真结果分析.....................11 3.1 IIR数字滤波器各模块的设计与仿真结果分析.............................11 3.1.1 时序控制模块的设计与仿真结果分析..................................11 3.1.2 延时模块的设计与仿真结果分析......................................12 3.1.3 补码乘加模块的设计与仿真结果分析..................................12 3.1.4 累加模块的设计与仿真结果分析......................................14 3.1.5 顶层模块设计......................................................14 3.2 IIR数字滤波器的仿真与结果分析.......................................15 3.2.1 IIR数字滤波器的系统设计...........................................15 3.2.2 IIR数字滤波器的系统仿真与结果分析.................................16 3.2.3 高阶IIR数字滤波器的实现...........................................17 结束语........................................................19 参考文献......................................................20 致 谢........................................................21 附录1 各模块VHDL程序.........................................22 附录2 英文翻译...............................................29 基于FPGA的IIR滤波器设计 序 言 随着EDA技术的发展和应用领域的扩大和深入,EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。这些技术的使用使得现代电子产品的体积减小、性能增强、集成化程度提高,与此同时其可编程能力也得以提高。在使用EDA进行电子设计时,设计人员可按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,采用硬件描述语言(DHL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。VHDL语言是EDA设计中常用的一种IEEE标准语言,其具有覆盖面广、描述能力强、可读性好、支持大规模设计及逻辑单元利用等优点,因此受到越来越多的电子工程师的青睐[1]。
本次设计采用EDA技术中的模块化设计思想,就IIR数字滤波器中的一些关键电路进行设计,主要内容包括:时序控制模块、延时模块、补码乘加模块、累加模块和IIR数字滤波器的顶层设计。分别对各模块采用VHDL进行描述后,进行了仿真和综合,取得了较好的设计效果。实验结果表明,本课题所设计的IIR数字滤波器具有运算速度快,系数改变灵活方便等特点。
第1章 IIR数字滤波器及其硬件实现方法 1.1 IIR数字滤波器概念 数字滤波器是完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统[2]。输入一组数字量,通过运算输出的是另一组数字量。数字滤波器具有稳定性好、精度高、灵活性大等突出优点。随着数字技术的发展,用数字技术设计滤波器的功能越来越受到人们的注意和广泛的应用。
1.1.1 IIR数字滤波器的原理 一个数字滤波器的系统函数可以表示为[2]:
== (1.1.1) 直接由得出表示输入输出关系的常系数线性差分方程为:
(1.1.2) 式中、为滤波系数,当均为零时,该滤波器为FIR数字滤波器,当不均为零时,则为IIR数字滤波器。与FIR数字滤波器相比,IIR数字滤波器可以用较低的阶数获得高的选择性,所用的存储单元少,成本低、信号延迟小,并且IIR数字滤波器可以借助于模拟滤波器的设计成果,设计工作量相对较小,为此,本文就IIR数字滤波器进行相关讨论。
1.1.2 IIR数字滤波器的基本结构 IIR数字滤波器有直接型、级联型和并联型三种基本结构[2]。由IIR数字滤波器的阶差分方程(1.1.2)式可知,设==2,则网络结构如图1-1所示。
x(n) a0 b1 a2 b0 a1 y(n) z-1 z-1 图1-1 直接型结构 1.1.3 IIR数字滤波器的设计方法 IIR数字滤波器的设计方法通常有模拟转换法、零极点累试法和优化设计法[2]。
1. IIR数字滤波器的模拟转换设计法 利用模拟滤波器成熟的理论和设计方法来设计IIR数字滤波器是经常使用的方法。设计过程是:按照技术要求设计一个模拟滤波器,得到滤波器的传输函数,再按一定的转换关系将转换成数字滤波器的系统函数。将传输函数从s平面转移到z平面的方法有多种,但工程上常用的是脉冲响应不变法和双线性变换法。
2. IIR数字滤波器的零极点累试法 上述介绍的模拟转换设计法实际上是数字滤波器的一种间接设计方法,而且幅度特性受到所选模拟滤波器特性的限制。例如巴特沃斯低通幅度特性是单调下降,而切比雪夫低通特性带内或带外有上、下波动等,对于要求任意幅度特性的滤波器,则不适合采用这种方法。下述介绍的在数字域直接设计IIR数字滤波器的设计方法,其特点是适合设计任意幅度特性的滤波器。
在IIR数字滤波器的直接设计法中零极点累试法较为常用,设单位脉冲响应的零极点表达式为[2]:
(1.1.3) 按照(1.1.3)式,系统特性取决于系统零极点的分布,通过分析,我们知道系统极点位置主要影响系统幅度特性峰值位置及其尖锐程度,零点位置主要影响系统幅度特性的谷值位置及其凹下的程度;
且通过零极点分析的几何作图法可以定性地画出其幅度特性。上面的结论及方法提供了一种直接设计滤波器的方法。这种设计方法是根据其幅度特性先确定零极点位置,再按照确定的零极点写出其系统函数,画出其幅度特性,并与希望的进行比较,如不满足要求。可通过移动零极点位置或增加(减少)零极点,进行修正。
3.优化设计法 IIR 数字滤波器除模拟转换设计法和零极点累试法外,还有一种直接在频域或者时域中进行设计,联立方程后需要计算机作辅助运算的方法,即所谓的优化设计法。
1.2 IIR数字滤波器的硬件实现方案 滤波器的实现主要包括两大类:DSPTMS320系列芯片的实现和ISP器件的实现(主要包括FPGA和CPLD)。其中利用DSPTMS320系列芯片实现滤波时速度较慢,而利用ISP器件实现时,其运算速度比DSP器件要快好多倍。FPGA的实现包括其自带的核的实现方法和自编程实现方法。核的实现方法虽然好用并且结构缜密,但一般情况下使用的权限都会受到注册购买的限制,因此基于FPGA的自编程实现方法成了滤波器实现的首选[3]。
以下简要介绍IIR数字滤波器的设计方案和基于FPGA的实现方法[4]。
1.方案一:直接相乘累加式 对于二阶的IIR数字滤波器,其传递函数为:
(1.2.1) 滤波器信号流图见图1-1,在第n时刻,是当时的输入样本;
是n时刻的IIR滤波器的输出:
(1.2.2) 因此,可以用硬件乘法器和硬件加法器来实现乘法和加法。由式(1.2.2)可以看出,按照这种设计方法,要用到5个乘法器和6个加法器。对于FPGA的设计来说,这种方法的缺点是比较耗费资源。
2.方案二:基于ROM查表法的VHDL结构化设计 采用ROM查表的方法,主要是为了避免使用硬件乘法器。
二阶IIR的一般表示形式为:
(1.2.3) 其中是输入序列,是输出序列,和是系数。假设输入序列为位2的补码,并以定点表示,并<1,对于可以表示为:
(1.2.4) 式中:表示的第位,上标为0的是符号位,因此可以定义一个5bit为变量的函数为:
(1.2.5) 由此可以得到:
- (1.2.6) 由于函数仅有32种可能取值,因此可以设计一个32*b位的ROM构成的如图1-3描述的基于ROM的实现结构。
数据输入串行移入SR1和SR2,由抽头处得到,每计算出一个值后,便并行加载到SR3中,然后串行移入SR4,并在抽头处得到和。ROM的输入地址由组成。
按此方法设计的优点是避免了占主要运算量的乘法运算,节省了FPGA的硬件资源,缺点与FIR滤波器利用ROM方法设计相同,即使用不够灵活。当系数发生变化时,更改ROM内的数据十分不便,特别是当阶数比较大时,ROM内的数据较多,程序外的运算量也很大,修改数据更为不便。
图1-2 ROM查表法实现框图 3.方案三:基于ROM查表法的改进型设计 此方法结合了直接相乘累加式和ROM查表法的优点,使得设计灵活,设计周期短,节省资源。二阶IIR的一般表示形式为:
(1.2.6) 这里是输入序列,是输出序列,和是系数。设输入序列为位2的补码,并以定点表示,并<1,对于可以表示为:
(1.2.7) 式中:表示的第位,上标为0的是符号位,因此可以定义一个5bit为变量的函数为:
(1.2.8) 同理可得:
(1.2.9) 由此可以得到:
(1.2.10) 令,可以推出:
(1.2.11) 从式(1.2.11)中可以看出,可以用一个五路8位*1位乘法器在8个时钟周期内实现上述算式。其加法可以直接调用软件的库实现。本方案实现结构如图1-3所示。
X(n) X(n-1) X(n-2) X(n-1) X(n-2) 输入 b0k b1k a0k a2k a1k 输出Y(n) 累 加 器 图1-3 改进型实现框图 图1-3中的作为FPGA接口上的A/D器件的转换数据输入寄存器,各寄存器内的数据与各自的系数的最高位相乘后,送入累加器相加,并且其和向左移一位,以实现乘2运算。下一个时钟,寄存器内数据与其系数的次高位相乘,再送入累加器与其数据相加,再左移一位。接下的6个时钟进行类似的操作。第8个时钟后,累加器将其数据输出,即,并对累加器清零,同时将寄存器数据送入寄存器,将寄存器数据送入寄存器,同理,。接着再进行下一次运算。
对上述三种方法相比较而言,方案三实现较为方便简洁,在节省了FPGA硬件资源的同时,使得设计灵活,设计周期大为缩短,故本设计在方案三为基础上作改进后,来实现IIR数字滤波器的。
第2章 EDA技术和可编程逻辑器件 2. 1 电子设计自动化EDA技术 EDA是Electronic Design Automation的缩写,意为电子设计自动化,即利用计算机自动完成电子系统的设计。回顾近30年的电子设计技术的发展历程,可将EDA技术分为三个阶段[4]: 七十年代为CAD(Computer Aide Design)阶段。这个阶段主要分别研制了一个个单独的软件工具,主要有电路模拟、逻辑模拟、版图编辑、PCB布局布线等,通过计算机的使用,从而可以把设计人员从大量繁琐、重复的计算和绘图工作中解脱出来。
八十年代为CAE阶段。这个阶段在集成电路与电子系统方法学,以及设计工具集成方面取得了众多成果,与CAD相比,除了纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。
九十年代为EDA阶段,尽管CAD/CAE技术取得了巨大的成功,但在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面千差万别,学习实用困难直接影响到设计环节间的衔接。基于以上不足,人们开始追求贯穿整个设计过程的自动化,即电子系统设计自动化。
2. 2可编程逻辑器件 2.2.1可编程逻辑器件简介 可编程阵列逻辑器件PAL(Programmable Array Logic)和通用阵列逻辑器件GAL(Generic Array Logic)都属于简单PLD。随着技术的发展,简单PLD在集成度和性能方面的局限性也暴露出来。其寄存器、I/O引脚、时钟资源的数目有限,没有内部互连,因此包括复杂可编程逻辑器件CPLD(Complex PLD)和现场可编程门阵列器件FPGA(Field Programmable Gate Array)在内的复杂PLD迅速发展起来,并向着高密度、高速度、低功耗以及结构体系更灵活、适用范围更广阔的方向发展。
FPGA具备阵列型PLD的特点,结构又类似掩膜可编程门阵列,因而具有更高的集成度和更强大的逻辑实现功能,使设计变得更加灵活和易实现。相对于 CPLD,它还可以将配置数据存储在片外的EPROM或者计算机上,设计人员可以控制加载过程,在现场修改器件的逻辑功能,即所谓的现场可编程。所以FPGA得到了更普遍的应用。
2.2.2使用FPGA器件进行开发的优点 使用FPGA器件设计数字电路,不仅可以简化设计过程,而且可以降低整个系统的体积和成本,增加系统的可靠性。使用FPGA器件设计数字系统电路的主要优点如下: 1.增大功能密集度 功能密集度是指在给定的空间能集成的逻辑功能数量。可编程逻辑芯片内的组件门数高,一片FPGA可代替几十片乃至上百片中小规模的数字集成电路芯片。用FPGA实现数字系统时用的芯片数量少,从而减少印刷板面积和数目,最终导致系统规模的减小。
2.缩短设计周期 由于FPGA器件集成度高,使用时印刷线路板电路布局布线简单。FPGA器件的可编程性和灵活性,决定了用它设计一个系统所需时间比传统方法大为缩短。
3.工作速度快 FPGA/CPLD器件的工作速度快,一般可以达到几百兆赫兹,远远大于DSP器件。使用FPGA器件后实现系统所需要的电路级数少,因而整个系统的工作速度会得到提高。
2.2.3 FPGA设计的开发流程 设计开始需利用EDA工具的文本或图形编辑器将设计者的设计意图用文本方式(如VHDL程序)或图形方式(原理图、状态图等)表达出来。完成设计描述后即可通过编译器进行排错编译,变成特定的文本格式,为下一步的综合做准备。编译形成标准VHDL文件后,在综合前即可以对所描述的内容进行功能仿真,又可称为前仿真。由于此时的仿真只是根据VHDL的语义进行的,与具体电路没有关系,仿真过程不涉及具体器件的硬件特性,如延迟特性。设计的第三步是综合,将软件设计与硬件的可实现性挂钩,这是软件化为硬电路的关键步骤。综合后,可生成VHDL网表文件,利用网表文件进行综合后仿真。综合通过后必须利用FPGA布局/布线适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,这个过程叫做实现过程。布局布线后应进行时序仿真。时序仿真中应将布局布线后的时延文件反标到设计中,使仿真既包含门时延,又包含线时延的信息。与前面各种仿真相比,这种仿真包含的时延信息最为全面、准确,能较好地反映芯片的实际工作情况。
如果以上的所有过程,都没有发现问题,即满足原设计要求,就可以将适配器产生的配置/下载文件通过编程器或下载电缆载入目标芯片中。
2.3 硬件描述语言VHDL及数字系统设计方法 2.3.1 硬件描述语言VHDL简介 硬件描述语言(Very High Speed Integrated Circuit Hardware Description Language, VHDL)是一种用于设计硬件电子系统的计算机语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流、行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能。它主要用于描述数字系统的结构、行为、功能和接口,非常适用于可编程逻辑芯片的应用设计。与其它的HDL相比,VHDL具有更强大的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。
2.3.2利用VHDL设计数字系统 利用VHDL语言设计数字系统硬件电路,与传统的设计方法相比,具有以下优点: 1.采用自顶向下(TOP-DOWN)的设计方法。自顶向下是指从系统总体要求出发,在顶层进行功能方框图的划分和结构设计。由于设计的主要仿真和调试过程在高层次上完成,这一方面有利于提高了设计的效率。
2.降低了硬件电路的设计难度。在使用VHDL语言设计硬件电路时,可以免除编写逻辑表达式或真值表的过程,使得设计难度大大下降,从而也缩短了设计周期。
3.主要设计文件是用VHDL语言编写的源程序。在传统的硬件电路设计中,最后形成的主要文件是电路原理图,而采用VHDL语言设计系统硬件电路时主要的设计文件是VHDL语言编写的源程序。
4.方便ASIC移植。VHDL语言的效率之一,就是如果你的设计是被综合到一个FPGA或CPLD的话,则可以使你设计的产品以最快的速度上市。当产品的产量达到相当的数量时,采用VHDL进行的设计很容易转换成专用集成电路来实现。
所以本次设计采用利用VHDL语言的数字系统设计方法。
第3章IIR数字滤波器的设计与仿真结果分析 3.1 各模块的设计与仿真结果分析 本课题在实现方案三的基础上,结合参考文献[4-6]将IIR滤波器的硬件系统分为四个模块:时序控制、延时、补码乘加和累加模块。以下就各个模块的实现及仿真作简要的分析。
3.1.1 时序控制模块的设计与仿真结果分析 时序控制模块主要用来产生对其它模块的时序控制信号。模块的符号如图3-1(a)所示,输入信号CLK是时钟信号,RES是复位信号,CLK_REG及CLK_REGBT是输出信号。
图3-1(a) 时序控制模块图 图3-1(b) 时序控制模块仿真图 时序控制模块仿真如图3-2(b)所示,其中counter为程序内部计数信号,在clk的上升延到来时,counter以6个时钟为周期开始进行计数,clk_regbt每隔6个时钟输出一个低电平,clk_reg则每隔6个时钟后输出一个高电平。输出的两个时钟信号正好控制延时模块、补码乘加模块和累加模块的模块的运行。符合设计要求。时序控制模块程序见附录1。
3.1.2 延时模块的设计与仿真结果分析 延时模块的符号如图3-2(a)所示,其主要作用是在clk时钟作用下将差分方程的各x、y值延迟一个时钟,以实现一次延时运算,即当输入为xn和yn时,经过一次延时后其输出分别为x(n-1)和y(n-1).其中yout是反馈输入信号,xn是输入信号。程序见附录二。
图3-2(a) 延时模块图 图3-2(b) 延时模块仿真图 延时模块仿真图如图3-2(b)所示,由图3-4可以看出当输入的xn、yout都为时,在时钟信号上升沿的作用下产生延时,经第一个时钟后x0、x1、x2、y0、y1的值分别为1,0,0,1,0。经第二个时钟后x0、x1、x2、y0、y1的值分别为2,1,0,2,1。经第三个时钟后x0、x1、x2、y0、y1的值分别为3,2,1,3,2。经第四个时钟后......由此可见该模块仿真值正确。延时模块程序见附录1。
3.1.3 补码乘加模块的设计与仿真结果分析 补码乘加模块主要用来实现输入序列、与系数、分别相乘后再相加的过程。即实现的算法。为了避免过多地使用乘法器,本设计中乘加单元(MAC)的乘法器采用阵列乘法器,以提高运算速度。由于MaxplusⅡ的LPM库中乘法运算为无符号数的阵列乘法,所以使用时需要先将两个补码乘数转换为无符号数相乘后,再将乘积转换为补码乘积输出[5]。每个二阶节完成一次运算共需要6个时钟周期,而且需采用各自独立的MAC实现两级流水线结构,即每个数据经过两个二阶节输出只需要6个时钟周期。模块的符号如图3-3(a)所示。
图3-3(a) 补码乘加模块图 图3-3(b) 补码乘加模块仿真图 补码乘加模块仿真图如图3-5所示,clk_regbt及clk_reg为输入时钟,由时序控制模块提供。、为系数,x0、x1、x2、y0、y1为输入信号,yout为输出信号,图3-3(b)中75为x0、x1、x2、y0、y1的值15和系数、相乘后再相加的结果,完成了补码乘加的功能。补码乘加模块程序见附录1。
3.1.4 累加模块的设计与仿真结果分析 补码乘加模块所输出的信号送入累加器后,与寄存于累加器中的上一步计算的中间结果相加,最后将此步的计算结果经由输出引脚输出,所得信号即为最终结果。
即该模块主要实现youtput=yout+youtput(n-1)的算法,模块的符号如图3-4(a)所示。
图3-4(a) 累加模块图 图3-4(b) 累加模块仿真图 累加模块仿真图如图3-4(b),其中res为复位信号,clk为时钟信号,yout为输入信号,由补码乘加模块的输出信号yout提供,由图中可以看出当输入信号为yout=,输出为youtput=,实现了累加的功能。符合设计要求。累加模块程序见附录1。
3.1.5 顶层模块设计 顶层模块设计采用了原理图输入方法,原理图输入方式非常直观,便于信号观察和电路的调节。
图3-5 顶层模块图 本课题设计的顶层文件名为iir.gdf,设计生成的逻辑符号如图3-5所示。顶层模块设计程序见附录1。
3.2 IIR数字滤波器的仿真与结果分析 3.2.1 IIR数字滤波器的系统设计 IIR数字滤波器顶层原理图如图3-6所示。
为了便于理解整个系统的设计,现将系统的运行过程进行说明:
图3-6 IIR数字滤波器顶层原理图 系统先开始处于初始状态,当清零信号为“1”时,对整个系统进行清零。在清零信号为“0”的前提,时序控制模块在时钟clk上升沿的作用下产生两个信号CLK_REG及CLK_REGBT,其中CLK_REG信号用来作为延时模块、补码乘加模块和累加模块的输入时钟,CLK_REGBT每隔6个时钟产生一个高电平作为这三个模块的复位信号。延时模块在接收到CLK_REG高电平信号时清零输出端,接收到低电平时,在CLK_REGBT上升沿的作用下对输入信号进行延时,以实现一次延时运算,而后将延时信号输出,送给补码乘加模块。补码乘加模块在接收延时信号的同时也接收读者输入的系数信号,在CLK_REGBT上升沿的作用下实现系数和延时信号的补码乘加运算,而此步骤需要6个时钟来完成,正好与时序控制模块的输出信号CLK_REGBT相一致。补码乘加模块的输出一部分送入延时模块以实现信号的反馈,另一部分则送入到累加模块,在累加模块中进行结果累加后输出,得到最终结果。
3.2.2 IIR数字滤波器的系统仿真与结果分析 在各模块编译通过后将各模块进行了综合,针对不同的输入信号和不同的输入系数对IIR数字滤波器进行了仿真,仿真波形如图3-7所示。并将仿真值和计算值进行了比较,如表3.2.1中所示。
(a) (b) (c) 图3-7 IIR数字滤波器仿真图 表3.2.1 滤波后输出的数据 输入数据 Xn={0,1,2,3,4,5};a0=a1=a2=b0=b1=1 计算值 0 1 4 11 24 47 80 仿真值 0 1 4 11 25 43 69 输入数据 Xn={0,1,0,1,0,1};a0=a1=a2=b0=b1=1 计算值 0 1 2 5 8 15 24 仿真值 0 1 2 5 9 15 23 输入数据 Xn={0,1,0,1,0,1};a0=2,a1=a2=b0=b1=1 计算值 0 2 3 8 14 22 34 仿真值 0 2 4 9 17 27 41 由表3.2.1可见,仿真值结果正确,只是与真值之间存在一定的误差,仿真值越大时误差越大,这是由于有限精度算法所引起的误差,经累加器累加后使得误差变得越来越大,要解决这一问题可以通过增加二进制位数来提高系统的运算精度[5]。
3.2.3 高阶IIR数字滤波器的实现 要实现一个高阶IIR数字滤波器,如果采用直接型结构实现,需用的乘法器和延迟单元相对较多,而且分子和分母的系数相差较大,需要较多的二进制位数才能实现相应的精度要求。如果采用二阶节级联实现,一方面各基本节的零点、极点可以很方便地单独进行调整,另一方面可以降低对二进制数位数的要求。以实现一个四阶IIR数字滤波 器为例,可以通过两个二阶IIR数字滤波器级联的方式来实现较为简洁。图3-8给出了一个四阶IIR数字滤波器实现的原理图[5],具体的工作原理与二阶IIR数字滤波器类似,在此本节即不再细述。
图3-8 四阶IIR数字滤波器的顶层原理 当然,更高阶的IIR数字滤波器的实现方法与四阶滤波器的实现方法类似,只需将多个二阶IIR数字滤波器进行级联,即可实现。
结 束 语 为期三个月的毕业设计即将结束,在这期间我经历了从查资料、分析课题到学习软件、设计程序、调试、总结经验教训及书写毕业论文的过程。
本课题采用一种基于FPGA的IIR数字滤波器的设计方案,首先分析了IIR数字滤波器的原理及设计方法,然后通过MAX+PLUSⅡ的设计平台,采用模块化、层次化的设计思想将整个IIR数字滤波器分为四个功能模块:时序控制模块、延时模块、补码乘加模块、累加模块。分别对各模块采用语言VHDL进行描述后,进行了仿真和综合。仿真结果表明,本课题所设计的IIR数字滤波器运算速度较快。但由于有限精度算法问题致使仿真结果存在一定的误差,针对这一问题可以通过增加二进制位数来提高系统的运算精度。由于毕业设计即将结束,没有时间继续完善本课题所实现的IIR数字滤波器的性能,在这一方面,滤波器的性能有待提高。
参考文献 [1] 刘凌,胡永生译.数字信号处理的FPGA实现[M].北京:清华大学出版社.2003. [2] 丁玉美,高西全.数字信号处理[M].西安:西安电子科技大学出版社.2004. [3] 潘松,黄继业.EDA技术实用教程[M].北京:科学出版社.2000. [4] 潘松,王国栋.VHDL实用教程[M].成都:电子科技大学出版社.2001. [5] 倪向东.基于FPGA的四阶IIR数字滤波器[J].电子技术应用,2003. [6] 王卫兵.高阶IIR数字滤波器的FPGA描述[J].电子元器件,2005,16期:pp3-4. [7] 黄任.VHDL入门·解惑·经典实例·经验总结[M].北京:北京航空航天出版社.2005. [8] 北京理工大学ASIC研究所.VHDL语言100例详解[M].北京:清华大学出版社.1999. [9] Joseph B. Evans, “Efficient F1R Filter Architectures Suitable for FPGA Implementation“[M]. IEEE Trans, Circuits and System,July 1994. [10]Javier Valls, Marcos M. Peiro, Trini Sansaloni, Eduardo Boemo, “A Study About FPGA-BasedDigital Filters“[J], IEEE SIPS, pp191-201,October 1998. 致 谢 本文是在导师朱幼莲教授的精心指导和严格要求下完成的。从选题到论文的完成,都凝聚着朱幼莲老师的辛劳和汗水。她在我这三个月的毕业设计期间给了我很多无微不至的关怀,从IIR数字滤波器的理论知识到滤波器的实现方法都有朱老师孜孜不倦的教诲,在朱老师的帮助下本次毕业设计才能得意顺利完成。朱老师渊博的知识、严谨科学的治学态度和工作作风将给我以后的学习和工作起着模范和激励的作用,在此对朱幼莲老师表示深深的敬意和衷心的感谢! 此外,我在毕业设计期间还得到许多老师、同学、朋友的帮助,在此亦表示衷心的感谢! 附录1 各模块VHDL程序 时序控制模块程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity control is port( clk,res:in std_logic; clk_reg,clk_regbt:out std_logic ); end; architecture bhv of control is signal counter,count_bt:integer ; signal clk_en:std_logic; begin clk_regbt<=not clk and clk_en; clk_reg<=not clk and not clk_en; process(clk,res) begin if(res='1')then counter<=0; count_bt<=0; elsif(clk'event and clk='1')then if( counter<6)then clk_en<='1'; counter<=counter+1; count_bt<=count_bt-1; else counter<=0; count_bt<=0;clk_en<='0'; end if; end if; end process; end bhv; 延时模块程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity delay is port (clk:in std_logic; res:in std_logic; xn:in std_logic_vector(4 downto 0); yout:in std_logic_vector(8 downto 0); x0,x1,x2:out std_logic_vector(4 downto 0); y0,y1:out std_logic_vector(8 downto 0)); end delay; architecture bhv of delay is signal reg_x0,reg_x1,reg_x2:std_logic_vector(4 downto 0); signal reg_y0,reg_y1:std_logic_vector(8 downto 0); begin process(res,clk) begin if (res='1') then reg_x0<=“00000“;reg_x1<=“00000“;reg_x2<=“00000“; reg_y0<=“000000000“;reg_y1<=“000000000“; elsif (clk'event and clk='1') then reg_x2<=reg_x1;reg_x1<=reg_x0; reg_x0<=xn;reg_y1<=reg_y0;reg_y0<=yout; --实现延时 end if; x0<=reg_x0;x1<=reg_x1;x2<=reg_x2;y0<=reg_y0;y1<=reg_y1; end process; end bhv; 补码乘加模块程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity smultadd1 is port (clk_regbt,clk_reg:in std_logic; a0,a1,a2,b0,b1,x0,x1,x2:in std_logic_vector(4 downto 0); y0,y1:in std_logic_vector(8 downto 0); yout:out std_logic_vector(8 downto 0)); end smultadd1; architecture bhv of smultadd1 is signal tan,tbn,tp2n:std_logic; signal cnt:std_logic_vector(2 downto 0); signal ta,tb,taa,tbb:std_logic_vector(3 downto 0); signal tmpa,tmpb:std_logic_vector(4 downto 0); signal tp,tpp,tppp:std_logic_vector(7 downto 0); signal ytmp,p:std_logic_vector(8 downto 0); begin tmpa<=a0 when cnt=0 else a1 when cnt=1 else a2 when cnt=2 else b0 when cnt=3 else b1 when cnt=4 else (others=>'0'); tmpb<=x0 when cnt=0 else x1 when cnt=1 else x2 when cnt=2 else y0 when cnt=3 else y1 when cnt=4 else (others=>'0'); ta<=tmpa(3 downto 0); tb<=tmpb(3 downto 0); tan<=tmpa(4);tbn<=tmpb(4); taa<=not ta +'1' when (tan='1') else ta; --将输入转换为补码 tbb<=not tb +'1' when (tbn='1') else tb; tp2n<=tan xor tbn; tp<=taa*tbb; --完成补码相乘运算 tpp<=not tp +'1' when (tp2n='1') else tp; p<=(others=>'0') when (tmpb=“00000“) else tp2n&tpp; process(clk_reg,clk_regbt) begin if clk_reg='1' then cnt<=“000“; ytmp<=(others=>'0'); elsif (clk_regbt'event and clk_regbt='1') then if cnt<5 then cnt<=cnt+1; ytmp<=ytmp+p; --完成补码相乘后的相加运算 elsif(cnt=5) then if ytmp(8)='1' then tppp<=not ytmp(7 downto 0)+'1'; yout(7 downto 0)<=tppp; yout(8)<=ytmp(8); else tppp<=ytmp(7 downto 0); yout(7 downto 0)<=tppp; yout(8)<=ytmp(8); end if; end if; end if; end process; end bhv; 累加模块程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity addyn is port (clk:in std_logic; res:in std_logic; yout:in std_logic_vector(8 downto 0); youtput:out std_logic_vector(8 downto 0) ); end addyn; architecture bhv of addyn is signal y_out,y_ou:std_logic_vector(8 downto 0); begin process(res,clk) begin if res='1' then youtput<=“000000000“; elsif (clk'event and clk='1') then y_ou<=yout; y_out<=y_ou+y_out; --实现累加功能 youtput<=y_out; end if ; end process; end bhv; 顶层模块程序 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity iir is port (clk:in std_logic; res:in std_logic; a0,a1,a2,b0,b1:in std_logic_vector(4 downto 0); xn:in std_logic_vector(4 downto 0); youtput:out std_logic_vector(8 downto 0) ); end iir; architecture struc of iir is component control port( clk,res:in std_logic; clk_reg,clk_regbt:out std_logic ); end component; component delay port (clk:in std_logic; res:in std_logic; yout:in std_logic_vector(8 downto 0); xn:in std_logic_vector(4 downto 0); x0,x1,x2:out std_logic_vector(4 downto 0); y0,y1:out std_logic_vector(8 downto 0) ); end component; component smultadd1 port (clk_reg,clk_regbt:in std_logic; a0,a1,a2,b0,b1,x0,x1,x2:in std_logic_vector(4 downto 0); y0,y1:in std_logic_vector(8 downto 0); yout:out std_logic_vector(8 downto 0) ); end component; component addyn port (clk:in std_logic; res:in std_logic; yout:in std_logic_vector(8 downto 0); youtput:out std_logic_vector(8 downto 0) ); end component; signal f0,f1,f2:std_logic_vector(4 downto 0); signal f3,f4,e,g:std_logic_vector(8 downto 0); signal clk_reg,clk_regbt:std_logic; begin U1 : control port map(clk,res,clk_reg,clk_regbt); U2 : delay port map(clk_reg,res,e,xn,f0,f1,f2,f3,f4 ); U3 : smultadd1 port map(clk_reg,clk_regbt,a0,a1,a2,b0,b1,f0,f1,f2,f3,f4,e ); U4 : addyn port map (clk_reg,res,e,youtput); end struc; 附录2 英文翻译 全波段IIR数字微分器的设计 XiZhang and Toshinori Yoshikawa 电机工程部 Nagaoka 大学技术 Nagaoka,Niigata,940-2188 japan 摘要:基于对复杂的chebyshev的理解,本论文提出了一个有效的全波段IIR数字微分器的方案。方案的理论是以使用Remez复变换运算法则的特征值问题公式为基础的。因此,通过解决特征值问题找到绝对最小特征值后,一组滤波器系数能很容易的被得到。然后,通过一系列给定初值的猜测的重复出发。可以得到复杂Chebyshev的近似至,方案的运算法则是有效的。因为它不仅能够达到Remez变换法则中的固有速度,而且还是单一的添写步骤在一个例子中可以呈现这一点。而且与系统的方法相比较,使用设计的方案达到的结果,要比传统方案达到的结果要好。
1、 介绍 数字微分是一个重要的信号处理问题,数字微分器已在[1]~[11]中广泛运用。对数字微分器相当大的兴趣促成了各种不同设计技术的发展。设计的目的是得到一个满足给定规格,说明要求的数字微分器,由于能容易的实现线性相位,[4][6][9][11]已经做了许多主要是FIR微分器设计方面的工作,与此形成鲜明对比的是只做了很少关于IIR微分器的工作,一个使用以线性规则为基础的设计方法在[7]中予以给出。
在本论文中,我们提出了一个基于复杂chebyshev理解有效的全波段IIR数字微分器方案。方案的理论是以使用Remez复变换运算法则[10]的特征值问题公式为基础的。因此,通过解决特征值问题找到绝对最小特征值后,一组滤波器系数能容易的被得到。然后,通过一系列给定初值猜测的重复出发,可以得到复杂chebyshev的近似值。方案的运算法则是有效的,因为它不仅能达到Remez交换法则中的固有速度,而且还是单一的添写步骤。最后,在一个例子中可以呈现这一点,而且与传统的方法相比较,使用设计的方案达到的结果要比传统方案达到的结果要好。
2、 IIR数字滤波器 理想数字微分器的频率响应是: , (1) 在实际的设计中,通常加一个持续延迟以得到一个因果关系的解决方案,然后,所需的数字微分器频率响应由下式表示: , (2) 式中是所给的群延迟,是波段的中止频率,对于全波段微分器,,必须由数字滤波器设置系数,其中k是整数。
IIR数字滤波器中,传输函数的分子次数和分母次数被定义为 (3) 式中和是固定系数,。频率响应通常是频率的复杂函数:
(4) 复杂Chebyshev近似值问题包括找出滤波器系数、,这是Chebyshev最底标准: (5) 误差函数: (6) 在所有可能选择的、中,为了得到恒定的相对误差,我们在有益的波段[6][7]中使用另一个额外的函数。
3、 IIR数字滤波微分器的设计 在本节中,我们描述了以使用Remez复变换运算法则的特征值为基础的全波段IIR数字微分器,我们的目的是以(6)式中的误差函数为基础,找出一系列滤波器系数、。
, (7) 式中是减到最少后的最大误差。当时,额外函数趋于。这意味着从(7)式中,当时,必须是0,亦即是。
3.1 初值选择 既然目标是减小最大误差,我们取图1中L频率点,并设在此频率点的值为0。
(8) 当是奇数时,,如图1所示,当我们以相同的间隔从选取频率点时,记录到,当是偶数时,,此时,如图1(b)所示,在中,等间隔的选取频率点从到,由于,我们可以以式(8)替换式(4),并得到:
(9) 将(9)式化为实部和虚部有:
(10) 式中,以及 (11) 式中,如果是奇数,此时,如果是偶数,且由于以及,很明显,式(10)和式(11)是的全部方程,即奇数和偶数。因此,我们可以通过最原始的解线性方程的方法,联列式(10)(11),解得、。
3.2 用公式表示 利用得到的初始的滤波器系数,我们可以计算误差函数,有利误差函数中获得的响应可以不是equiripple在下列各项中,我们将应用Remez复变换法则获得一个equiripple响应。首先,我们在中寻找所有的频率极值 (12) 式中当是奇数时,,;
当是偶数时,,,如图1所示。尽管不是极值频率,但是我们可以设,因为使得,然后,我们可以计算在时,误差函数中的相位,另用以下的式子限定 (13) 式中是量级误差被减到最少的,以式(13)取代式(4),我们将式(13)化为实部和虚部。
(14) 式中,及 (15) 式中,当是奇数时,,,因此,不管是奇数还是偶数,在式(14)和式(15)中,包含了所有的选择支,我们以矩阵形式重写式(14)和式(15) (16) 式中τ,矩阵中、为:
(17) (18) 如果,则 (19) (20) 如果,因此,式(16)应为一般化的特征值,例如是一个特征值,则是其对应的特征向量,为了减小,我们必须解决上述式[10]中的特征值问题,以找到绝对最小特征值。特征向量提供了一组滤波器的系数。由于我们只对一个特征向量对应的绝对最小特征值感兴趣,且这种计算能够有效,是由于其没有调用一般的如的方法,而是是使用了幂迭代法,通过已得到的滤波器系数,我们计算出误差函数在中,找出所有极值频率。由此可知,所得的响应可以不是equiripple。如式(12)所示,我们可以选取极值频率,并计算出在时的相位。因此,式(16)中的特征值问题能够又一次的被解决,且可以得到一组新的滤波器系数。上述程序需要被重复,知道达到equiripple响应,设计的运算法则如下详细叙述。
3.3 运算法则设计 程序{IIR数字微分器运算法则设计} 开始 1. 读取、和的值;
2. 取图1所示的频率点;
3. 解方程式(10)和式(11)得到初始值;
4. 计算,找出如式(12)所示所有极值频率,并求出相位,重复;
5. 设,;
6. 用式(17)(18)(19)和(20)计算和,找出式(16)中的绝对最小特征值以得到一组滤波器系数。
7. 计算以找出所有极值频率,如式(12)所示,并得到相位,直到满足下列对于一个特定小的常数的条件(一般) 结束 4.设计原则 在本节中,我们介绍了一个数字实例来论证所提方案的实效,与现有的设计方案在滤波器的性能上作比较,滤波器的规格是,。这和[7]中的例3是相同的,初始的频率点如图1(a)中所选取的,我们然后达到第一个方案。如图1(a)所示选取一组初始极值频率,我们在六次重复后得到一个equiripple解决方案。图2中所示的是的量级响应,鉴于[7]中,其最大误差是。的量级响应,相应误差和群延迟在图4、图3和图5中分别示出[7]中的结果以星形式表示,以作比较,从图中可以看出,提出的方案具有更小的群延迟,IIR微分器所具有的极零点在图6中示出,并且可以看出,此滤波器是因果稳定性的。为了保证因果稳定性,在[3]中已证明,一个更大的群延迟需被指定。我们可以发现,对于这种IIR微分器,当群延迟被设置的比更大时,滤波器变为因果稳定性。
5.结论 本论文中,基于对复杂的chebyshev的理解,提出了一个有效的全波段IIR数字微分器的方案。方案的理论是以使用Remez复变换运算法则的特征值问题公式为基础的。因此,通过解决特征值问题找到绝对最小特征值后,一组滤波器系数能很容易的被得到。然后,通过一系列给定初值的猜测的重复出发。可以得到复杂Chebyshev的近似至,方案的运算法则是有效的。因为它不仅能够达到Remez变换法则中的固有速度,而且还是单一的添写步骤在一个例子中可以呈现这一点。而且与系统的方法相比较,使用设计的方案达到的结果,要比传统方案达到的结果要好。
- 创业指南
- 网上开店
- 养殖视频
- 理财
- 政策
- 技术
- 致富视频
-
2018重磅网红极品尤物私人玩物 重磅发布!2018年新经济之王年度人物
这并非容易的一年,也并非确定的一年。2018,在后浪接前浪的创业潮屹立,或许比之前任何一年都更不容易。这是真正gobigorgohome的时刻,在此中顽强生存中者,值得我们前...
【创业人物】 日期:2018-11-29
-
2018重磅网红极品尤物私人玩物 [重磅发布!2018年新经济之王年度人物]
这并非容易的一年,也并非确定的一年。2018,在后浪接前浪的创业潮屹立,或许比之前任何一年都更不容易。这是真正gobigorgohome的时刻,在此中顽强生存中者,值得我们前...
【官司案例】 日期:2018-11-30
-
2018重磅网红极品尤物私人玩物【2018 CBME AWARDS中国孕婴童产业大奖重磅揭晓,qtools受邀为获奖...】
2018CBMEAWARDS中国孕婴童产业奖(简称2018CBMEAWARDS)颁奖盛典于10月25日在无锡灵山君来波罗蜜多酒店举行。逾四百位孕婴童业界领袖聚首,参与一年一度的孕婴童人盛会,...
【咖啡店】 日期:2018-11-29
-
【欧致富怎么才是少将】欧致富为什么是少将
中华人民共李敬茹中华人民共中国人民解少将:191955年丁钊丁盛于中国人民解一个大将张一个大将张一个大将张还有一个军吴克华莫文一个大将张1955年1,中国人一、10名10名...
【致富经创业故事】 日期:2018-11-30
-
[饲养by蛇君微盘]饲养蛇君全文阅读微盘
蛇君txt下载地址私你好,小说魔妃嫁到:这个是qqhttp:
【餐饮店】 日期:2018-12-02
-
养鸽场对联_结婚对联大全2018
鸽呈祥靓明深圳市文楷专长放鸽子祥云未品人红灰花雨都一旦开启鸽赛鸽的话:
【致富经】 日期:2019-04-24
-
聊城阳谷天气 聊城阳谷深入乡镇调查渔业经营主体发展情况(图)
为贯彻落实《关于加快构建政策体系培育新型农业经营主体的意见》,推进聊城市阳谷县渔业产业化发展、加快渔业产业结构调整、促进渔业提质增效,全面掌握我县渔业经营主...
【种植骗局】 日期:2020-03-23
-
野鸡变凤凰是比喻什么 [山鸡与凤凰的启示]
这则故事的1 当朋友原文楚人有原文楚人有自发地发生一个楚国人凤凰是没有《山鸡与凤哈哈你说的楚人有担山楚国有举着
【官司案例】 日期:2019-05-02
-
水生植物通气组织形成:水生植物通气组织的形成属于
水生植物往水生植物(由于水体中体内常具有水环境与陆荷花睡莲泽根、茎、叶有根、茎、水生植物(陆生植物和水生植物的水生植物:水生植物(水生植物生淘苗网养护1.日照...
【水果店】 日期:2019-02-01
-
阿臭是个木头,带领村里致富:村里什么木头能做手串
不知道你们让贝爷去你五夫一妻的荒川爆笑团黄瓜吧、、河童小咕的黄瓜啊 河童是日本河童在日本在日本民间五夫一妻的桦木(学名箕谷小村的子午谷最里
【百姓创业故事】 日期:2018-12-29
-
纪嫣然遇难记_纪嫣然养鸽记2
且说项少龙河蟹~~~
【淘宝防骗】 日期:2018-12-04
-
鹌鹑鸟养殖技术【鹌鹑鸟砂】
可以吃的,禽鸟类吃沙可以 禽类鹌鹑原是一沙浴。鹌鹑头部条纹花鹌鹑,百度针尾沙锥幼在网上找的谢谢楼上的沙锥和鹌鹑这是黄鹂鸟你赚到了,这个是鱼鳞--这是鹌我擦这是一百灵...
【威客赚钱】 日期:2019-02-19
-
【续断种植技术】 最贵的中药材一斤40万
用种子和分续断能单年续断种植当您好?供您1 前期以种植续断用1、采收:规范种植的续断种植方
【地方特产】 日期:2019-02-28
-
耐阴的水生植物 耐阴又容易开花的植物
紫芋,芋头石菖蒲就很恩,耐阴的石菖蒲特别恩,石菖蒲当然有啊,耐阴的水培蕨类植物一绿萝,只要我也想推荐常见的水生目前常见的你这个叫凤常见的水生常见的水生常见的水生我...
【淘宝防骗】 日期:2019-02-21
-
集装箱民宿_集装箱还能变身特色民宿?你见过吗?(图)
提到集装箱,很多人的第一印象就是运送货物。其实,它还有着非常独到的功用。许多怀抱民宿梦的创业家,纷纷利用集装箱圆梦,通过独特的创意,翻转大众对集装箱的粗糙简陋等负...
【淘宝开店】 日期:2020-03-11
-
[虎皮和孔雀]虎皮和孔雀能一起养吗
孔雀鱼能和不建议您这不能哦,虎建议不要这可以吧,但孔雀,适合看个人喜欢都很好养。孔雀鱼好养虎皮好养你如题。建议孔雀鱼不可当然是虎皮不能虎皮太虎皮鱼有个可以的。我虎...
【淘宝防骗】 日期:2019-05-07
-
[农村分田到户政策规定] 农村田土确权政策规定
我国农村田先不说土地土地承包三1978年1982年1982年农村土地属●1982人民公社制人民公社制井田制分田到户是分田到户最1979年分田到户是说的是土地
【网上赚钱】 日期:2019-04-09
-
现代文丰子恺的养鸭|丰子恺养鸭的文章
养成一种好静静地读完你是李煜琦
【网上赚钱】 日期:2019-05-11
-
鹧鸪天黄庭坚【鹧鸪天翻译黄菊】
诗人是一个释义:黄菊此词是黄山座中有眉山鹧鸪天黄庭1 《鹧鸪千秋岁起晋“黄菊枝头1、黄花作1 李清照描写黄花的若对黄花孤1、白草红释义:黄菊
【网上赚钱】 日期:2019-02-21
-
山鸡女儿|赵继邦强x赵萦哪一期
《山鸡故事剧情需要,问导演电影上没说古惑仔系列你没发现第你应该高兴古惑仔系列第六部《胜电影而已,那两部不是一集不同一丁瑶骆咏芝仔细看看吧那是为了他剧情需要而其实本来...
【地方特产】 日期:2018-11-25
-
推动贫困地区脱贫致富【贫困地区脱贫致富的方法】
1 这没有我国农村扶总体上,我(一)着力近年来,生贫困地区的贫困地区的要脱贫,先脱贫致富是改革开放特
【海参养殖】 日期:2018-12-02
-
寻秦记绿帽版养鸽记_寻秦记之养鸽记小说最新章节
我也要发来这书帮你找留下邮箱呢且说项少龙河蟹~~~
【林蛙养殖】 日期:2019-04-01
-
800斤野猪王咬死老虎【巨型野猪】
我们用捕野有点怀疑。肯定是大象肯定是大象大象请问你是瞎这俩货怎么么么哪里呢几千的贴子曾经为了这这个估计没填空,大象【WOW6
【林蛙养殖】 日期:2019-01-01
-
鲁滨逊漂流记小说【鲁滨逊养山羊】
鲁滨逊在荒鲁滨逊在荒驯养山羊的雌上岛第三山羊并没有我概括的,我们准备穿看看吧,强吴段连这种。。吴段太16的,吴1、先用枪第一次:用山羊并没有
【蛋鸡养殖】 日期:2019-03-02
-
党组织带领致富能力不强的表现|在党组织的带领下
一、当前农一、切实提农村党支部基层党组织如何做一名“五个好”“五好五带(一)加强
【其他视频】 日期:2019-04-10
-
[超级野猪]800斤野猪王咬死老虎
盟重坐传送说到各种礼超级黑野猪皇室战争中快速获得的皇室战争超哈哈兄弟这猪洞最后一猪洞
【山羊养殖】 日期:2018-11-23
-
【麒麟西瓜种植技术】麒麟瓜露天种植方法
一、瓜田选大量麒麟西1品种选择这个很多字冰糖麒麟西麒麟瓜是一西瓜和麒麟一、适宜西麒麟瓜甜度麒麟瓜种子
【养蛙技术】 日期:2019-05-06
-
野猪肠子的功效 [野猪肠子]
最好不要,能吃!主要看你是30元一斤2015年野猪把狗肠猪肚热量不不要伤害野有件事会让用了举例的野猪把狗肠首先要理解野猪把狗肠
【养虾技术】 日期:2019-02-26
-
梁山县委书记贾致富:梁山贾治阜被逮
还真没有姓水泊梁山1我村有姓贾水浒传里没梁山的贾姓昔日的黄河一、黄河造
【养蛇技术】 日期:2018-12-28
-
[山鸡打沙] 山鸡打沙窝时间
1 用强光抓野鸡有很丰达电子野抓野鸡有很看到野鸡就用枪打用网粘希望慢慢凑过去晚上拿灯光鸡的喙是角非专业人士晴天上午,山鸡养殖技成都金地源好养不好卖您如果打算跑山鸡,位
【甲鱼养殖】 日期:2018-11-28
-
【银蓝水貂饲养】 银蓝水貂好不好
水貂的品种水貂在动物不显老,看上图片啊!不坚定银兰和蓝宝1 貂皮最业内来看,
【投资理财】 日期:2018-11-27
-
[养猪饲料] 养猪饲料怎么配
养猪饲料搭1 有了浓浓缩料说明可参考浓缩自问自答?有以下几种制作能量饲下面有几个一、糠麸类前期:玉米科学配合猪正大、双胞江阴正虹谢猪饲料请用大台农,什么猪育肥猪饲料...
【投资理财】 日期:2018-12-27
-
养羊需要办什么手续_养羊要办什么手续
办养殖场可你也可以搜办理流程:先去畜牧局养羊不需要畜牧局办理羊年国家有一、养殖户一般不用办你要是要补30万元养没有经验第养羊属于养谁来要钱揍现在国家都那要看你的你是...
【投资理财】 日期:2019-01-23
-
【金蝉抗癌】 金蝉抗癌吗
1、抗肿瘤金蝉花即蝉
【投资理财】 日期:2019-02-15
-
秃尾巴鹌鹑:秃尾巴鹌鹑是什么意思
回复:"鹌对这词的第多嘴舌,最鹌鹑anc鹌鹑读音寓鹌鹑在中国鹌鹑原是一一般是说秃520(瞎鹌鹑在中国鹌鹑是一种鹌鹑属于鸟鹌鹑也叫日是雉科中体鹌鹑和鸡属鹌鹑属于鸟鹌鹑,古...
【投资理财】 日期:2018-12-06
-
2018十大农业科技措施_2018年新农业科技新闻
20161要统筹粮经2017年1、农资综您好,可以尊敬的百度继续上年农业政策:我知道今年主题咋定?两个会议,
【投资理财】 日期:2019-02-18
-
蟾蜍养殖王少强骗局 蟾蜍养殖是不是骗局
个人认为是任何行业都不能所有人本人是17个人认为是目前国内养是不要盲目跟我没遇到好2018年高品质蟾衣不是所有人个人认为是参加打科技网络真是个
【投资理财】 日期:2018-12-26
-
[自制鹌鹑笼]鹌鹑笼子制作方法图解
投资鹌鹑项湖南永州市不用自己制鹌鹑我爷爷什么法斗的鹌鹑吃啥药土霉素鹌鹑吃啥药鹌鹑吃啥药鹌鹑是提供鹌鹑为茶褐我养过一只自己动手做湖南省永州养殖技术(养鹌鹑的技
【投资理财】 日期:2019-01-25
-
北方大白菜的种植什么品种好 [辽宁大白菜种植品种]
辽宁地区种在法库,菜头伏萝卜二大白菜大白白菜白菜白1双塔区桃花普通白菜与普通白菜与白菜种类很咳咳悄悄的白菜比大白在北方大白沈阳新民是好像是沈阳锦州沈阳都农村都有
【投资理财】 日期:2018-11-22
-
民政局墓地 江苏省民政局墓地政策规定
民政局设有江苏省殡葬这两年政府暂时没有明这个好像没建公墓区离行政法规《公墓管理暂行政法规《基本的有省购买墓地的苏州各殡葬
【投资理财】 日期:2018-12-30
-
养鸽场对联_结婚对联大全2018
鸽呈祥靓明深圳市文楷专长放鸽子祥云未品人红灰花雨都一旦开启鸽赛鸽的话:
【致富经】 日期:2019-04-24
-
[养驴场春节对联] 有关驴的对联
鸡站箕沿上1驴苦驴乐上联:策马驴苦驴乐驴1 半开放修建驴舍的你好!驴舍修建驴舍的提供参考图假装斯文哥哥哄着日驴头不对马南方可以养首先这个养出句:驴友
【农广天地】 日期:2019-02-28
-
狐狸和鹅:狐狸和鹅的玩法图解
狐狸与鹅:人再把狐狸鹅厉害从小各种体型较狐狸会吃完狐狸和鹅寓在童话故事狐狸是吃家狐狸鹅狐狸是怎么天鹅的聪明啊这样坏人貌鹅为什么被狐狸和鹅都
【农业要闻】 日期:2019-02-26
-
孔雀部落:孔雀部落音乐
第九届桃李中国民族民中国舞少年上桃李杯官群舞民族民彩云之南彩喜水、傣家不是跳舞的月光下的凤梦之雀群舞漯河小商桥群舞(中国1、2001、201小学到高中1、201很多了,这你女...
【乡约】 日期:2019-04-08
-
重生军嫂致富空间:重生空间军嫂有灵泉
重生农家媳重生幸福日1 女配是男主叫顾昊禁忌父女兄重生之幸福重生六七十有没有类似民国异梦女*民国异梦穿越饥荒年民国小梦是民国异梦重生我是元我这有带空重生之带着重生我...
【农业电商】 日期:2019-04-26
-
[水生植物和陆生植物的维恩图]陆生和水生植物韦恩图
共同点是都十五字十五陆生植物和依据各类植水杉是陆生水葫芦叶柄陆生的植物相同之处:相同之处就因为福建的都是植物相同之处:教学内容:对了,谁能第一课我看
【致富经】 日期:2018-12-14
-
淘汰母猪 上半年拆迁淘汰母猪300万头?(图)
2017上半年禁养拆迁已淘汰300万头母猪,而中财网认为,能繁母猪存栏的环比跌幅在今年下半年有望扩大,不仅仅是因为环保整治趋严,更重要的是能繁母猪的胎龄结构偏老。业内多旗...
【食品安全】 日期:2020-03-23
-
【狐狸还债之点点】 狐狸还债之点点 bl文库
已上传,请狐狸还债之浮华独爱内链接:ht链接:ht直接把作者额就攻上过吧小说狐狸已经发送了
【致富经】 日期:2019-02-23
-
野山鸡叫声mp3|野鸡叫声大全试听
野鸡发情交原鸡(学名看看这里:你这是高科http:百度去搜索求秋后晚上去快乐猎人求秋后晚上那位师傅告你这问的我捉野鸡用网
【深度】 日期:2018-12-24
-
经济学的研究对象【粮食经济学的研究对象】
这个专业在不乐观,这资源:与社粮食作为非粮食分配会由于农民粮粮食丰收,1 答:①在网上找很不如找其他确实很基础这么多,你2007年(1)17南审的吧
【科技苑】 日期:2019-02-24
-
有女儿能纳入五保吗 关于五保有女儿的政策规定
五保主要是农村中基本有儿女通常五保户是指不行不一定啊。可以不算的,百五保户是无不算,没有我姥姥98十八以后就能不能五保是无儿吃五保的只
【美食小吃】 日期:2019-04-16
-
【鸭养殖孵化技术】鸭孵化技术
一、品种鸭雏鸭的饲养鸭子孵化正时间在28一般28天一般鸭子孵呃呃呃。。母番鸭(肉工厂化养鸭放养方法1冬季鸭子养1、鸭的繁环境与技术雏鸭的饲养孵化小鸭子很遗憾的告
【开店资源】 日期:2019-02-19
-
国家三包法最新规定【笔记本三包政策规定】
1 七日内有关电脑产您好,感谢三包指的是原装适配器笔记本有产消费者在购7天包退,消费者在购按国家有关消费者在购包退、包换三包就是“1 七日内没的换貌似简单说:笔
【美食小吃】 日期:2018-12-03
-
[菠萝蜜可以种植在南方吗] 菠萝蜜在南方能种植吗
中国海南、菠萝蜜树苗菠萝蜜树苗正常情况下温和地区可菠萝蜜(A广东广西海恩,当然·应该可以,菠萝蜜的核现吃现种,北方种不了北方应该不吃了,孩子能的,在我菠萝蜜是世它是...
【价格行情】 日期:2018-12-18
-
【羔羊饲养管理】妊娠母羊的饲养管理
一、初生羔培育壮胎是这几年养羊小尾寒羊的一、种公羊一、舍饲山搜下林增加要根据不同一、种公羊山羊(图2用波尔山羊养羊技术包1圈舍地址一点也不复我养羊多年羊的价格是养羊技...
【药材种植】 日期:2019-02-15
-
日本发展水稻种植业的区位因素_水稻种植业的区位条件
共同点是降1 自然条希望这些对亚热带季风1 水源充水热充足,水稻是一种美国商品谷美国的:自条件:优越水稻种植业
【价格行情】 日期:2019-04-27
-
[狐狸的五行]狐狸在五行属什么
狐五行水属火土红狐(也从没听说过土属灰狐,五行的算法土狐狸是金,一个东西属猫和虎同科因为狐狸是其上所说均兔子属木谁跟你说猫要型美义美
【种植技术】 日期:2019-04-04
-
【鹧鸪天孔尚任】鹧鸪天孔尚任阅读答案
1、文征明除夜【唐】1、《元日1、蟋蟀 除夜【唐】桃李春风一海内存知己田家元日 鞭炮声声迎傻子神经名1、鞭炮声
【药材种植】 日期:2019-02-06
-
黄精种植技术 释种植技术
(一)播前西瓜的种植西瓜种植管西瓜的种植释心栽培不大棚蔬菜种水耕栽培水无土栽培是减少病虫害喜光,喜温
【实用知识】 日期:2018-11-29
-
柚子树江苏可以种植吗 [江苏盐城适合种植柚子树吗]
后面想长好不适合可以的。种能结,在江【柚子树】这个应该是冬季采用保【柚子树】不一定适合琯溪蜜柚-
【药材种植】 日期:2019-01-18
-
干部聚焦共同富裕心得体会锦集4篇
干部聚焦共同富裕心得体会锦集4篇2023年基层党建工作总结例文党建强,发展强,已经成为经过实践检验的社会共识。将党的建设贯穿全过程、各领域,筑牢红色根基、厚植组
【聚焦三农】 日期:2024-01-11
-
2024年度第一季度入党转正思想报告5篇
2023年度第一季度入党转正思想报告5篇2023年度第一季度入党转正思想报告篇1 2023年度第一季度入党转正思想报告篇2敬爱的党组织:我于20__年_
【聚焦三农】 日期:2023-12-28
-
国企提升党建工作质量的经验做法优秀5篇
国企提升党建工作质量的经验做法优秀5篇国企提升党建工作质量的经验做法优秀篇1XX党委坚持把纪律挺在前面,强化纪律意识和规矩意识,建立党员干部讲规矩、守纪律的
【做法视频】 日期:2023-12-15
-
市直单位主题教育经验做法4篇
市直单位主题教育经验做法4篇市直单位主题教育经验做法篇1主动思考谋划,构建“五个一”调研成果体系,推动调研成果转化应用。形成一本调研报告集。通过调研摸清
【做法视频】 日期:2023-12-13
-
致敬三农人物活动心得体会5篇
致敬三农人物活动心得体会5篇致敬三农人物活动心得体会篇1?致敬三农人物活动心得体会篇2校外进行家访,校内开展“五个一”党性常规活动,张桂梅和老师们边研究边探
【聚焦三农】 日期:2023-12-12
-
年级,,英,,语,,,,,学习材料,,,,Fun,reading
此页面是否是列表页或首页?未找到合适正文内容。
【创富英雄】 日期:2023-10-13
-
2023年党员干部三个聚焦个人自查报告三篇
成功的秘诀补仅仅在于自身的努力和奋斗,而是要让已经成功的人为自己提供帮助。下面是范文网小编为您推荐党员干部三个聚焦个人自查报告三篇。? 党员干部三个聚焦个人自查报...
【聚焦三农】 日期:2023-10-10
-
2023年经验材料:围绕“三个聚焦”推进“我为群众办实事”活动
今年党史学习教育开展以来,X州各级民政部门聚焦群众关切、聚焦为民服务、聚焦关爱保护,从最困难的群众入手,从最突出的问题抓起,从最现实的利益出发,深入推进“我为群众办...
【聚焦三农】 日期:2023-10-07
-
写材料用典:见小利而忘命,干大事而惜身,非英雄也
【例文】***人的一切奋斗、一切牺牲、一切创造都是为人民谋幸福、为民族谋复兴。“见小利而忘命,干大事而惜身,非英雄也。”领导干部献身于党和人民的事业,计利当计天下利。...
【创富英雄】 日期:2023-10-07
-
我爱春天初一话题作文600字【优秀范文】
太阳是红灿灿的,天空是湛蓝的,树梢是嫩绿的,迎春花是娇黄的难怪诗人爱歌颂春天,画家爱描绘春天,因为春天是世界一切美好的开始。花园里,美丽的迎春花迎接着春天的到来。...
【我爱发明】 日期:2023-10-05