用VHDL语言设计基于FPGA器件高采样率FIR滤波器.docx
- 文档编号:23760723
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:60
- 大小:260.06KB
用VHDL语言设计基于FPGA器件高采样率FIR滤波器.docx
《用VHDL语言设计基于FPGA器件高采样率FIR滤波器.docx》由会员分享,可在线阅读,更多相关《用VHDL语言设计基于FPGA器件高采样率FIR滤波器.docx(60页珍藏版)》请在冰豆网上搜索。
用VHDL语言设计基于FPGA器件高采样率FIR滤波器
1课题的主要内容和设计方案
1.1课题主要任务
使用硬件描述语言(VHDL)设计基于FPGA器件的高采样率FIR滤波器。
1.2课题内容
1对传统的数字硬件系统设计方法和以采用硬件描述语言的数字硬件系统设计方法进行比较,指出采用硬件描述语言设计数字硬件系统的优势。
2使用EDA工具并利用VHDL硬件描述语言设计基于FPGA器件的高采样率FIR滤波器。
其设计要求为:
采样频率:
fs=12.5MHz;截止频率:
fc=2.0MHz;类型:
低通;阶数:
64阶;输入数据宽度:
8位;输出数据宽度:
8位。
3设计的电路要能用EDA工具完成仿真验证工作。
1.3设计目的
试将硬件描述语言设计技术应用于数字处理技术当中,利用一块集成芯片设计一个数字滤波器,缩短设计周期,提高设计性能。
探索一下使用VHDL硬件描述语言设计基于FPGA可编程逻辑器件高采样率FIR数字滤波器的方法,以满足高采样率环境的需要。
1.4滤波器单元电路设计方案比较
1快速加法器
通过各种途径均可实现加法器的功能,如串联型、并联型和流水线型等等,各种加法器特色不一,串联型加法器结构简单,但速度慢。
并联型加法器速度快,对于实现4位以下的加法器较合适,增加位数在PLD中受到资源限制。
流水线加法器将每一步运算结果都用寄存器暂存,总的效果是每个加法运算平均耗费的时间等于锁存时钟周期,但其占用资源也较串联型大很多。
由于设计的是高采样率滤波器,需要很快的速度,我们选用流水线技术实现快速加法器。
2快速乘法器
快速乘法器可以采用移位相加型、查找表型、加法器树型等。
移位相加实现起来简单,但速度慢。
查找表型速度快,但随着操作数精度的提高,查找表变得庞大。
加法器树乘法器是由移位相加器和查找表组成,8位乘法器需要15个16位加法器和64个与门。
综合考虑,采用查找表型乘法器,以提高电路的速度。
1.5设计实现
数字滤波器的实现,通常有两种方法。
一是软件实现,利用计算机选择相应的算法,编制出高质量的正确程序。
另一种方法是硬件实现,利用数字器件,例如:
加法器、常数乘法器和延迟器等装配成专门设备,但硬件方案的确定一般通过编程,即在计算机上进行仿真。
所以一个功能优良的硬件实现与软件实现有着密切的关系。
而这次利用EDA技术来设计低通数字滤波器,有着非常优越的软件条件。
可以实现以少量集成芯片实现高质量滤波器的设计。
而且在硬件实现前用软件方法仿真模拟,以此来缩短设计周期,减少工作量,提高设计成功率。
具有以往设计方法所没有的优越性。
而且它具有硬件调试方便的优点。
按照最优方案进行设计。
先进行软件编程,将系统分成若干层次,每层分成若干模块,分别编程实现。
程序编译通过后,进行波形仿真,若干个模块都仿真成功,则可以进行模块连接,生成系统,再进行系统编译和仿真。
系统仿真通过后,下载录入芯片。
1.6本文所作的工作
硬件描述语言(VHDL)是数字系统高层设计的核心,是实现数字系统设计新方法的关键技术之一。
当前,无论在军事还是民用方面,对于数字信号处理的实时性、快速性的要求越来越高。
随着可编程逻辑器件在集成度和速度方面的飞速提高,并且日益复杂,越来越多的数字信号处理系统采用可编程逻辑器件来实现数字滤波,用其实现某种算法的专用集成电路(ASIC)在信号处理中应用非常广泛。
有限脉冲响应(FIR)数字滤波器在数字信号处理系统中非常普遍,常被用来对原始(或输入)样本数据进行消除高频、抑制噪声等处理以产生所需的输出。
FIR滤波器在设计中可以采用多种方法加以实现。
目前最为常用的方法有两种,一种是采用专用的DSP芯片(如TMS320CXX系列),但当滤波器的抽头数增加或者字长增加时,会成倍增加计算时间,从而降低了最大有效数据采样率,加之DSP芯片本身的时钟速度是有限的,所以这种方法往往应用于音频信号的处理较为合适,当数据采样率提高时,就不适用了。
另一种方法就是采用市场上通用的FIR滤波器集成电路,但是由于设计者的不同设计要求,有限的通用滤波器很难满足设计者的独特要求,而且,为了器件的通用性,该类滤波器电路工作的有效采用率也不是很高,仍然无法满足高采样率环境的需要。
ALTERA公司的FLEX系列器件芯片密度大,适用频率高,是目前大规模数字逻辑设计的发展趋势,是用户专用数字滤波器设计的理想载体。
本文作者基于ALTERA公司的FPGA系列,利用硬件描述语言设计高采样率FIR数字滤波器。
本文主要从以下几个方面做了深入的工作:
1.对传统的数字硬件系统设计方法和以采用硬件描述语言的数字硬件系统设计方法进行比较,指出采用硬件描述语言设计数字硬件系统的优势。
2.将硬件描述语言的功能特点作了归纳,对硬件描述语言的基本构成和综合技术作了详细的阐述,并说明了应用VHDL的EDA设计流程。
3.ALTERA公司作为世界上最大的可编程逻辑器件供应商之一,其FLEXI0K器件是工业界第一个嵌入式可编程器件,基于可重构的CMOSSRAM单元,这种灵活逻辑单元阵(FlexibleLogicElementMatrix)具有一般门阵列的所有优点。
作者将FLEXI0K系列的结构、功能特点进行了总结。
4.利用硬件描述语言以自顶向下的方法,对有限脉冲响应(FIR)数字滤波器采用流水线技术进行设计,以满足高采样率环境的需要。
在快速乘法器中采用查找表的方法,以提高工作速度。
在快速加法器中采用流水线技术,以提高采样率。
着重叙述了利用VHDL设计FIR滤波器的详细过程,给出了各模块的具体程序和仿真图。
正是由于VHDL语言的出现,现代数字系统设计技术从传统的逻辑概念设计方式(系统构思、电路图设计与输入、综合与仿真、系统实现、系统仿真)进入到VHDL行为概念设计方式(系统构思、VHDL设计与输入、综合与仿真、系统实现、系统仿真)。
随着大规模可编程逻辑器件在数字硬件设计系统中的应用,用VHDL语言设计数字系统,逻辑综合和仿真等EDA技术将起着十分重要的作用。
2数字硬件系统设计新方法
随着计算机软件、硬件和集成电路制造技术的飞速发展,以及数字硬件设计复杂度快速增长和设计成果可继承性的需要,对数字硬件系统的设计方法产生了极大的影响,传统的以线路图为基础的数字硬件系统设计方法正逐步被以硬件描述语言为基础的设计方法所取代。
2.1传统的数字硬件系统设计方法特点
数字硬件系统像其他电子系统一样,采用积木式的方法进行设计。
由器件搭成电路板,由电路板搭成电子系统。
数字系统最初的“积木块”是具有固定功能的标准集成电路,用户只能根据需要选择合适的器件,并按照器件推荐的电路搭成系统,在设计时,设计者没有灵活可言,搭成的系统需要的芯片种类多且数目大。
以线路图为基础的数字硬件系统的设计方法一直为许多硬件开发工程师所沿用。
这种设计方法有以下几个主要特点:
1.采用自底而上(BottomUp)的设计方法
自底而上的数字硬件电路设计方法的主要步骤是:
根据系统对硬件的要求,详细编制技术规格书,并画出系统控制流程图;然后根据技术规格书和系统控制流程图,对系统的功能进行细化,合理地划分功能模块,并画出系统功能框图;接着进行各功能模块的细化和电路设计;各功能模块电路设计、调试完成后,将各功能模块的硬件电路连接起来再进行系统的调试,最后完成整个数字系统的硬件设计。
从设计步骤可以看出,系统硬件的设计是从选择具体元器件开始的,并用这些元器件进行逻辑电路设计,即从最底层开始设计,完成系统各独立功能模块设计,然后再将各功能模块连接起来,直至到最高层,完成整个系统的硬件设计,这种设计方法称为自底而上的设计方法
2.在数字系统硬件设计的后期进行仿真和调试
由于进行仿真和调试的仪器一般为系统仿真器、逻辑分析仪和示波器等,所以在传统硬件电路设计中,仿真和调试只能在系统硬件设计完成后期进行,系统设计存在的问题也只能在后期出现,对系统设计人员有较高的要求。
3.采用符号和电路原理图输入的设计描述方式
通常由线信号和表示基本设计单元的符号连在一起组成线路图,符号取自设计者用于构造线路图的零件库。
符号通过信号(或网线)连在一起,信号使符号互连并建立设计所需要的特定连接,这样从互连得出一种网表,设计实现之前网表建立验证设计的仿真模型,一旦设计已经被验证,为了由实际的设计网表向布线软件包提供所需的信息,布线软件将建立实际的连接数据,或者建立为PCB板所需的连线信息,或者是建立为ASIC所需的层信息。
用上述设计方法设计的数字硬件系统最后形成的设计文件,主要是由若干张电路原理图构成的文件。
在电路原理图中详细标注了各逻辑单元、器件的名称和相互之间的信号连接关系。
对于小的系统,这种电路原理图只要几十张或几百张就行了。
但是,系统比较大,硬件比较复杂,那么这种电路原理图可能需要更多张。
这样多的电路原理图给设计归档、阅读、修改和使用带来很大的不便。
更主要的是传统设计过程过多地依赖设计者的知识与经验,只能定量地和有条件地实现电子产品的设计目标,很难预料在一个产品设计过程中有多少次工程返复的操作,又由于系统级综合能力的不足,使设计者很难优化设计目标并加大后续设计(电气与物理级)的难度。
2.2采用硬件描述语言(HDL)的数字硬件系统设计方法
可编程逻辑器件在电子技术领域中的应用,为数字硬件电路系统的设计带来了极大的灵活性。
由于可编程逻辑器件可以通过软件编程而对其硬件结构和工作方式进行重构,使得硬件的设计可以如同软件设计那样方便快捷。
这一切极大地改变了传统的数字硬件电路系统设计方法、设计过程、乃至设计观念。
纵观可编程逻辑器件的发展史,它在结构原理、集成规模、下载方式、逻辑设计手段等方面的每一次进步都为现代电子设计技术的革命与发展提供了不可或缺的强大动力。
随着可编程逻辑器件集成规模不断扩大,自身功能的不断完善和计算机辅助设计技术的提高,在现代电子系统设计领域中的电子设计自动化(EDA)便应运而生了,而电子设计自动化的关键技术之一就是采用硬件描述语言(HDL)来设计数字硬件系统。
这样,传统的数字硬件电路设计模式,就将被人们慢慢地淘汰。
2.2.1EDA技术
EDA是ElectronicDesignAutomation的缩写,意为电子设计自动化,即利用计算机自动完成电子系统的设计。
1.EDA技术的发展
回顾近30年的电子设计技术的发展历程,可将EDA技术分为三个阶段,如图2.1所示:
七十年代为CAD阶段。
这个阶段主要分别研制了一个个单独的软件工具,主要有电路模拟、逻辑模拟、版图编辑、PCB布局布线等,从而可以利用计算机把设计人员从大量繁琐、重复的计算与绘图工作中解脱出来。
其核心是电路CAD技术,产生了计算机辅助设计概念。
八十年代为CAE阶段。
这个阶段在集成电路与电子系统方法学,以及设计工具集成方面取得了众多成果,与CAD相比,除了纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计,这就是计算机辅助工程的概念。
CAE的主要功能是:
原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。
这个阶段中主要采用基于单元库的半定制设计方法。
采用门阵列和标准单元法设计的各种ASIC得到了极大的发展,将集成电路工业推入了ASIC时代。
九十年代为ESDA阶段。
尽管CAD/CAE技术取得了巨大的成功,但并没有把人从繁重的设计工作中彻底解放出来。
在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面千差万别,学习使用困难,并且互不兼容,直接影响到设计环节间的衔接。
基于以上不足,人们开始追求贯彻整个设计过程的自动化,这就是ESDA,即电子系统设计自动化。
2、EDA技术
EDA技术的每一次进步,都引起了设计层次的飞跃,如图2.1所示,由上而下可分为系统级设计、电路级设计和物理实现级设计。
物理级设计主要是指IC版图设计,一般由半导体厂家完成。
EDA的发展趋势是与工艺无关的系统设计,即高层设计,使设计与制作分开,这里只论述电路级设计和系统级设计。
图2.1EDA技术设计层次的变化
(1)电路级设计
电路级设计主要指设计师根据设计任务,首先要查阅芯片和元器件手册,选择合适的器件来实现系统的功能,然后根据芯片和元器件的性能设计电路图,制作PCB板,用示波器和信号源对系统进行调试。
电路级EDA设计流程如图2.2。
电路级EDA技术向设计师提供了仿真,后分析以及后仿真的功能,使设计师在微机或工作站上就可以进行逻辑功能的仿真以检验方案在功能设计方面的可行性。
由此可见,电路EDA技术可使设计师在系统还没有制作之前就可全面了解系统的功能及PCB板的各种性能参数,比传统的设计方法大大提高了一步。
(2)系统级设计
系统级设计是设计人员无须通过门级原理图描述电路,而是针对设计目标进行功能描述,由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的方案与概念构思上,一旦这些概念构思以高层次描述的形式输入计算机后,EDA系统就能够以规则驱动的方式自动完成整个设计,从而大大缩短了产品的研制周期。
而且高层次设计只是定义系统的行为特性,可以不涉及实现工艺,在厂家综合库的支持下,利用综合优化工具可以将高层次描述转换成针对某种工艺优化的网表,工艺转化变得轻松容易。
系统级设计采用的是自顶向下的正向设计思想。
设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。
其设计流程如图2.3。
系统设计的关键技术之一是用形式化方法来描述数字系统的硬件电路,即采用硬件描述语言来描述硬件电路。
所以硬件描述语言及相关的仿真、综合等技术的研究是当今电子设计自动化领域的一个重要课题。
图2.2EDA电路设计工作流程图
图2.3EDA系统设计工作流程图
2.2.2什么是硬件描述语言(HDL)
硬件描述语言(HDL)是相对于一般的计算机软件语言如C、Pascal而言的。
HDL是用于设计硬件电路系统的计算机语言,它描述电子系统的逻辑功能、电路结构和连接方式。
设计者可以利用HDL程序来描述所希望的电路系统,规定其结构特征和电路的行为方式,然后利用综合器和适配器将此程序变成能控制CPLD内部结构,并实现相应逻辑功能的门级或更底层的结构网表文件和下载文件。
硬件描述语言的发展至今已有几十年的历史,并已成功地应用到系统的仿真、验证和设计综合等方面。
到本世纪80年代后期,已出现了上百种硬件描述语言,它们对硬件设计自动化起到了巨大的促进和推动作用。
就CPLD开发来说,比较常用的HDL主要有ABEL_HDL、AHDL和VHDL等。
ABEL_HDL是一种支持各种不同输入方式的HDL,其输入方式,即电路系统设计的表达方式,包括布尔方程、高级语言方程、状态图和真值表。
由于其语言描述的独立性,以及上至系统、下至门级的宽口径描述功能,因而适合不同规模的可编程器件的设计。
但它不是国际标准,缺乏延迟描述,几千门的小系统可用,大系统不便使用。
.
AHDL是Altera公司为其著名的Max+plusⅡEDA软件配置的一种硬件描述语言,只在Max+plusⅡ中使用,适用面比较窄,其语言格式与ABEL_VHDL相似。
VHDL是超高速集成电路硬件描述语言(Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage)的英文缩写。
1987年12月,IEEE公布了VHDL的标准版本IEEESTD1076-1987(LRM87),1993年,经过修改,新版本为IEEESTD1076-1993(LRM93)。
这样,VHDL被正式确定为硬件设计时采用的描述性语言,成为硬件设计师们从事硬件设计所必须掌握的工具语言。
VHDL主要用于描述数字系统的结构、行为、功能和接口,与其它的VHDL相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。
2.2.3利用HDL语言设计数字硬件系统的特点
利用HDL语言设计数字硬件系统的特点,归纳起来有以下几个特点:
1、采用自顶向下(TOP_DOWN)的设计方法
自顶向下是指从系统总体要求出发,在顶层进行功能方框图的划分和结构设计。
在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。
然后用综合优化工具生成具体门电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。
由于设计的主要仿真和调试过程是在高层次上完成的,这一方面有利于早期发现结构设计上的错误,避免设计工作的浪费,同时也减少了逻辑功能仿真的工作量,提高了设计的一次成功率。
2、降低了硬件电路的设计难度
在用HDL语言设计硬件电路时,可以使设计者免除在传统硬件电路设计时编写逻辑表达式或真值表之苦。
3、主要设计文件是用HDL语言编写的源程序
在传统的硬件电路设计中,最后形成的主要文件是电路原理图,而采用HDL语言设计系统硬件电路时主要的设计文件是HDL编写的源程序。
如果需要也可以转换成电路原理图输出。
用HDL语言的源程序作为归档文件有很多好处:
资料量小,便于保存;可寄存性好;阅读方便。
4、HDL语言可以与工艺无关编程
在用HDL语言设计系统硬件时,没有嵌入与工艺有关的信息其编辑综合生成的是一种标准的电子设计互换格式文件,它独立于采用的实现工艺。
有关工艺参数的描述可通过HDL提供的属性包括进去,然后利用不同厂家的布局布线工具,将设计映射成不同工艺,在不同的芯片上实现。
这使得工程师在功能设计、编辑、验证阶段,可以不必过多的考虑工艺实现的具体细节。
5、系统中可大量采用ASIC芯片
由于目前众多的制造ASIC芯片的厂家,它们的工具软件都可以支持HDL语言的编程,因此,硬件设计人员在设计硬件电路时,无须受只能使用通用元器件的限制,而可以根据硬件电路设计需要,设计自用的ASIC芯片或可编程逻辑器件。
随着设计方法学的更新和现代EDA工具的发展,大大地增强了设计者对设计过程的分析和制造的可控制能力,因而在设计过程中能够预知设计的结果。
3硬件描述语言VHDL
VHDL作为IEEE标准的硬件描述语言和EDA的重要组成部分,经过十几年的发展、应用和完善,以其强大的系统描述能力、规范的程序设计结构、灵活的语句表达风格和多层次的仿真测试手段,深受业界的普遍认同和广泛地接受,从数十种国际流行的硬件描述语言中脱颖而出,成为现代EDA领域首选的硬件设计计算机语言,而且目前流行的EDA工具软件全部支持VHDL。
显然,VHDL已成为硬件工程师们的共同语言。
3.1VHDL的特点
VHDL是一种全方位的硬件描述语言,包括系统行为级、寄存器传输级和逻辑门级多个设计层次,支持结构、数据流、行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。
VHDL主要用于描述数字系统的结构、行为、功能和接口。
其程序结构特点是将一项设计实体分成外部和内部,即设计实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其它的设计就可以直接调用这个实体。
这种设计实体分成内外部分的概念是VHDL系统设计的基本点。
应用VHDL设计硬件系统具有如下一些特点:
1.与其它的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。
强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。
2.VHDL有丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。
即在远离门级的高层次上进行模拟,使设计者对整个工程设计的结构和功能的可行性作出决策。
3.VHDL的语句描述和程序结构决定了它具有支持大规模设计的分解和已有设计的再利用功能。
符合市场需求的大规模系统高效、高速的完成必须由多人甚至多个开发组共同进行工作才能实现。
VHDL中设计实体的概念、程序包的概念、设计库的概念为设计的分解和并行工作提供了有力的支持。
4.对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动地把VHDL描述设计转变成门级网表。
这种方式突破了门级设计的瓶颈,极大地减少了电路设计的时间和可能发生的错误,降低了开发成本。
应用EDA工具的逻辑优化功能,可以自动地把一个综合后的设计变成一个更小、更高速的电路系统。
反过来,设计者还可以容易地从综合和优化后的电路获得设计信息,反过去更新修改VHDL设计描述,使之更为完善。
5.VHDL对设计描述具有相对独立性,设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。
即VHDL的硬件描述与具体的工艺技术和硬件结构无关。
6.由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易地改变设计的规模和结构。
3.2VHDL语言的基本构成
VHDL语言的语法比较严格,一段完整的VHDL代码通常由实体语句、构造体语句、配置说明语句、以及库、包说明语句组成。
其中库是用来存放己经编译过的实体、构造体、包和配置数据;包主要用于存放各设计模块都能共享的数据类型、常量和子程序;实体语句用于描述设计单元的外部接口信号;构造体语句用于描述设计单元内部的结构和行为。
由于VHDL代码完全由文字组成,而传统的设计往往是一张张原理图,这两者之间存在一定的对应关系,我们都知道传统的原理图总是由线和一些符号相互连接而构成,实体是与符号相对应的,因为它规定了一个设计单元对外的接口信号。
构造体则是与某一层的原理图相对应,因为它总是与某个实体相关,并对该实体的结构和行为进行描述。
配置说明语句用于从库中选取不同的元件来构成设计单元的不同版本,是描述层与层之间的连接关系以及实体与结构体之间的连接关系。
设计者可以利用这种配置说明语句来选择不同的结构体,使其与要设计的实体相对应。
在仿真某一实体时,可以利用配置来选择不同的结构体,进行性能对比试验以得到性能最佳的结构体。
配置说明语句的基本格式:
CONFIGURATION配置名OF实体名IS
[说明语句];
END配置名;
3.2.1VHDL的功能描述
结构体对设计单元内部的功能描述有三种方式:
结构描述、数据流描述和行为描述。
下面在给出这三种描述具体解释的同时,针对同一个设计实体——RS触发器,以此为例,分别写出它的三种不同的描述。
1.结构描述
结构描述体现的是具体的硬件线路图结构,是根据子元件及其端口连接来描述的。
即说明一个电路由哪些基本元件组成,以及这些基本元件的相互连接关系。
在结构描述中,所描述对象的行为和功能无法从程序中直接得知。
程序中采用元件例化语句
ARCHITECTURESTRUCTUREOFRSFFIS
CO
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VHDL 语言 设计 基于 FPGA 器件 采样率 FIR 滤波器