基于dspfir数字滤波器的设计-学位论文.doc

上传人:教**** 文档编号:88905748 上传时间:2023-05-04 格式:DOC 页数:24 大小:572KB
返回 下载 相关 举报
基于dspfir数字滤波器的设计-学位论文.doc_第1页
第1页 / 共24页
基于dspfir数字滤波器的设计-学位论文.doc_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《基于dspfir数字滤波器的设计-学位论文.doc》由会员分享,可在线阅读,更多相关《基于dspfir数字滤波器的设计-学位论文.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、基于DSPFIR数字滤波器的设计摘要数字滤波器是数字信号处理中最重要的组成部分之一,数字滤波器是由数字乘法器、加法器和延时单元组成的一种算法或装置,可作为应用系统对信号的前期处理。用DSP芯片实现的数字滤波器具有稳定性好、精确度高、灵活性强及不受外界影响等特性。因此基于DSP实现的数字滤波器广泛应用于语音图像处理、数字通信、频谱分析、模式识别、自动控制等领域,具有广阔的发展空间。本文主要研究了数字滤波器的基本理论,并对有限冲击响应数字滤波器FIR的设计和实现进行了分析和研究,尤其是在MATLAB环境下FIR数字滤波器的设计,主要是窗函数法及利用MATLAB的滤波器设计工具的设计方法,并用MAT

2、LAB语言编写了可以选择滤波器四种类型及七种窗函数的仿真程序,进行了具体的仿真分析。研究了TI公司的16位定点DSP芯片TMS320C55x的硬件和软件结构特性,编写了DSP的FIR滤波算法,在实验箱上进行了调试仿真;探讨了利用DSP快速设计FIR数字滤波器的方法,主要是在MATLAB中调试仿真DSP程序来寻找系数的快速传递法。最后,以TMS320C55x为主芯片设计了一个高性能的FIR数字滤波器系统,主要是时钟信号产生电路、芯片电源供电电路、模数转换和数模转换芯片与C55X连接电路、外挂程序存贮器FLASH电路、扩展RAM存贮器等基本外围电路的设计。关键词:数字信号处理器;数字滤波器;FIR

3、;MATLAB;TMS320C55xThedesignandanalysisofFIRdigitalfilterbasedonDSPAbstractAdigitalfilter,whichisoneofthemostimportantpartsofdigitalsignalprocessing,isanalgorithmoradevicemadeofdigitalontime-multiplier,adderanddelayofelements.Itcanbeusedtobethepretreatmentofsignalbyapplicationprogram.TheFIRdigitalfil

4、terBasedonDSPhasmanyfeatures,suchasuninfluenced,highaccuracy,goodstabilityandhighlyflexible.Thedigitalfilteriswidelyusedinfieldsofspeechimageprocessing,digitalcommunication,spectrumanalysis,patternrecognitionandautomaticcontrol,etc.Itwillhasbroadspacefordevelopment.Inthispaper,themainlytaskisresearc

5、hingthebasictheoriesofthedigitalfilter,andanalyzingthedesigningandrealizationoftheFiniteImpulseResponsedigitalfilter(FIR),especiallythemethodwhichrealizedunderMATLABenvironment,thewindowfunctionsisprimarilyintroduced,themethodofusingthedigitalfilterdesigntoolsinMATLABisalsoapplied.Italsocompilesapro

6、cedurewithMATLABlanguagewhichcanselectfoursortsofdigitalfilterandsevenkindsofwindowfunctions.Then,thispaperresearchesthestructureandpropertyofthe16bitfixed-pointDSPchipTMS320C55x,andwritestheFIRfilterprogramwhichisdebuggedandsimulatedbyexperiments.ThedesignoftheFIRfilterusingDSPisdiscussed,whichfocu

7、sonthemethodofcoefficienttransmissionoverpassingdebuggingtheDSPprograminMATLAB.Finally,adigitalfiltersystemwithpreferablecapabilityisdesignedbasedontheC55x,itsconsistsofthedesignofhardwareinterface,whichincludingtheclock-generatingcircuit,thechippowersupplycircuit,theA/DandD/Achipconnectinginterface

8、,theFLASHchipconnectinginterface,extendedRAMconnectinginterfaceandsoon.Keywords:DSP;DigitalSignalFilter;FIR;MATLAB引言在许多数字信号处理系统中,FIR滤波器是最常用的组件之一,它完成信号预调、频带选择和滤波等功能。F工R滤波器在截止频率的边沿陡峭性能虽然不及11R滤波器,但是,考虑到FIR滤波器严格的线性相位特性和不像IIR滤波器存在稳定性的问题,FIR滤波器能够在数字信号处理领域得到广泛的应用。数字滤波器(DigitalFilter,简称为DF)是指用来对输入信号进行滤波的硬件和

9、软件。所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。随着信息时代的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。数字信号在通信、语音、图像、自动控制、雷达、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中数字滤波占有极其重要的地位,与模拟滤波相比,数字滤波具有很多突出优点,比如精确度高、稳定、灵活、不要求阻抗匹配、容易实现线性相位、还可以避免模拟滤波器无法克服的电压漂移、

10、温度漂移和噪声偏移等问题。数字滤波器又分为无限冲激响应滤波器(IIR)和有限冲激响应滤波器(FIR)。FIR滤波器具有不含反馈环路、结构简单以及可以实现的严格线性相位等优点,因而在对相位要求比较严格的条件下,采用F1R数字滤波器。同时,由于在许多场合下,需要对信号进行实时处理,因而对于单片机的性能要求也越来越高。由于DSP控制器具有许多独特的结构,例如采用多组总线结构实现并行处理,独立的累加器和乘法器以及丰富的寻址方式,采用DSP控制器就可以提高数字信号处理运算的能力,可以对数字信号做到实时处理。而普通的单片机例如MCS-51难以满足这一要求。用可编程DSP芯片实现数字滤波的又一优势是:通过修

11、改滤波器的参数十分方便的改变滤波器的特性。有限长单位冲激响应(FIR)数字滤波器,与传统的通过硬件电路实现的模拟滤波器相比有以下优点:(1)简化了硬件电路的设计,提高了硬件电路的集成度和可靠性。(2)对干扰信号的抑制能力有了明显提高,这对系统的控制精度和稳定性的提高起到了促进作用。(3)数字滤波器的参数调节比起模拟滤波器来更加方便、灵活。(4)数字滤波器可以实现数据的并行处理,提高了系统运行速度。第一章绪论1.1数字滤波器的优越性世纪是数字化的时代,随着越来越多的电子产品将数字信号处理()作为技术核心,已经成为推动数字化进程的动力。作为数字化最重要的技术之一,无论在其应用的深度还是广度,正在以

12、前所未有的速度向前发展。数字信号处理器,也称芯片,是针对数字信号处理需要而设计的一种具有特殊结构的微处理器,它是现代电子技术、计算机技术和数字信号处理技术相结合的产物。随着信息处理技术的飞速发展,数字信号处理技术逐渐发展成为一门主流技术,它在电子信息、通信、软件无线电、自动控制、仪表技术、信息家电等高科技领域得到了越来越广泛的应用。数字信号处理由于运算速度快,具有可编程特性和接口灵活的特点,使得它在许多电子产品的研制、开发和应用中,发挥着重要的作用。采用芯片来实现数字信号处理系统是当前发展的趋势。近年来,技术在我国也得到了迅速的发展,不论是在科学技术研究,还是在产品的开发等方面,其应用越来越广

13、泛,并取得了丰硕的成果。在数字信号处理中,数字滤波占有极其重要的地位。数字滤波是语音和图象处理、模式识别、谱分析等应用中的一个基本处理算法。在许多信号处理应用中用数字滤波器替代模拟滤波器具有许多优势。数字滤波器容易实现不同的幅度和相位频率特性指标,克服了与模拟滤波器器件性能相关的电压漂移、温度漂移和噪声问题。用芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响外,还具有灵活性好的特点。用可编程芯片实现数字滤波可通过修改滤波器的参数十分方便的改变滤波器的特性。几乎每一科学和工程领域例如声学、物理学、信、数据通信、控制系统和雷达等都涉及信号。在许多应用中都希望根据期望的指标把一个信号的频谱加

14、以修改、整形或运算。这些过程都可能包含衰减一个频率范围,阻止或隔离一些频率成分,用数字滤波器来实现这些功能是方便、有效、可行的。1.2 国内外研究进展自20世纪70年代末80年代初DSP芯片诞生以来DSP芯片得到了飞速的发展。在20多年时间里DSP芯片已经在信号处理、通信、自动控制、仪表技术、信息家电等许多领域得到广泛的应用。1978年AMI公司生产出世界上第一片DSP芯片S2811。1979年美国Intel公司发布的商用可编程器2920是DSP芯片的一个重要里程碑。1980年日本NEC公司推出的PD7720是第一个具有乘法器的商用DSP芯片。在这之后,最成功的DSP芯片当数美国德州仪器公司(

15、TexasInstruments,简称TI)的一系列产品,其DSP市场份额占全世界份额近的50%。目前DSP芯片的价格越来越低,性能价格比日益提高,具有巨大的应用潜力。经过20年的发展,DSP器件在高速度,可编程,小型化,低功耗等方面都有了长足的发展,单片DSP芯片最快每秒可完成16亿次(1600MIPS)的运算,生产DSP器件的公司也不断壮大。在国内外的研究中,设计FIR滤波器所涉及的乘法运算方式有:并行乘法、位串行乘法和采用分布式算法的乘法。并行乘法运行速度快,但占用的硬件资源极大。如果滤波器的阶数增加,乘法器位数也将变大,硬件规模将变得十分庞大。位串行乘法器的实现方法主要是通过对乘法运算

16、进行分解,用加法器来完成乘法的功能,也即无乘法操作的乘法器。位串行乘法器使得乘法器的硬件.观模达到了最省,但是由于是串行运算,使得它的运算周期过长,运算速度与硬件规模综合考虑时不是最优的。分布式算法(distributedarithmetic,DA)的主要特点是巧妙的利用ROM查找表将固定系数的乘累加(Multiply-accumulator,MAC)运算转化为查表操作,它与传统算法实现乘累加运算的不同在于执行部分积运算的先后顺序不同。分布式算法在完成乘累加功能时是通过将各输入数据每一对应位产生的部分积预先进行相加形成相应的部分积,然后再对各个部分积累加形成最终结果,而传统算法是等到所有乘积已

17、经产生之后再来相加来完成乘累加运算的。DA算法设计的FIR滤波器的速度可以显著的超过基于MAC的设计。相对于前两种方法,DA算法既可以全并行实现,又可以全串行实现,还可以串并行结合实现,可以在硬件规模和滤波器速度之间作适当的折中,是数字滤波器的主要研究课题。1.3数字滤波器的实现方法数字滤波器的实现方法有以下三种:(1)用计算机软件实现软件实现方法就是在通用的微型计算机上用软件来实现。利用计算机的存储器、运算器和控制器把滤波所要完成的运算编程程序通过计算机来执行,软件可由使用者自己编写,也可使用现成的。国内外的研究机构、公司已经推出了不同语言的信号滤波器处理软件包。但是这种方法速度很慢,难以对

18、信号进行实时处理,虽然可由用快速傅立叶变换算法累加,来加快计算速度,但要达到实时处理还是要付出很高的代价,因而该方法多在教学与科研中使用。(2)采用DSP(DigitalSignalProcessing)处理器来实现DSP处理器是专为数字信号处理而设计的,如TI公司的TMS320CX系列,AD公司的ADSP21X,ADSP210X系列等。它的主要数字运算单元是一个乘累加器(MAC),能够在一个机器周期内完成一次成累加运算,配有适合于信号处理的指令,具备独特的循环寻址和倒序寻址能力。这些特点都非常适合数字信号处理中的滤波器设计的有效实现,并且它速度快,成本低,在过去的20多年的时间里,软件可编程

19、的DSP器件几乎统治了商用数字信号处理硬件的市场。用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受环境影响外,还具有灵活性好的特点。用可编程DSP芯片实现数字滤波可通过修改滤波器的参数十分方便的改变滤波器的特性。(3)用FPGA可编程器件来实现使用相关开发工具和VHDL等硬件开发语言,通过软件编程用硬件实现特定的数字滤波算法。这一方法由于具有通用性的特点并可以实现算法的并行运算,无论是作为独立的数字信号处理,还是作为DSP芯片的协作处理器都是比较活跃的一个研究领域4。通过比较以上三种方法可见:可以采用MATLAB等软件来学习数字滤波器的基本知识,计算数字滤波器是系数,研究算法的可行性,

20、对数字滤波器进行前期的仿真。也可以采用DSP或FPGA来实现硬件电路。本文重点研究在利用DSP来实现数字滤波的设计。第二章 DSP技术2.1 DSP芯片发展数字信号处理(DigitalSignalProcessing)是利用专用处理器或计算机,以数字的形式对信号进行采样、变换、滤波、增强、压缩、识别、分析、合成、变换处理,提取有用的信息,得到符合人们要求的信号形式,进行有效的传输与应用。数字信号处理器(DigitalSignalProcessor,简称DSP)是一种处理数字信号的专用微处理器,主要应用于实时快速地实现各种信号的数字处理算法。它在结构上针对数字信号处理的特点进行了改进和优化,并增

21、加了特殊指令专门用于数字处理,因而处理速度更快,效率更高。自20世纪70年代末80年代初DSP芯片诞生以来,DSP芯片得到飞速发展。最初仅在信号处理领域内应用,近年来随着半导体技术的发展,其高速运算能力使很多复杂的控制算法和功能得以实现,同时将实时处理能力和控制器的外设功能集于一身,在控制领域内也得到很好的应用。目前DSP芯片的价格越来越低,性能价格比日益提高,具有巨大的应用潜力。经过十几年的发展,DSP器件在高速度、可编程、小型化、低功耗等方面都有了长足的发展,单片DSP芯片最快每秒可完成16亿次(1600MIPS,每秒1600兆次指令)的运算,目前,市场占有率最大的是TI公司的TMS320

22、系列DSP芯片。2.2DSP芯片基本结构TMS320系列DSP芯片的基本结构主要包括:哈佛结构、多总线结构、流水线操作、专用的硬件乘法器、特殊的DSP指令、快速的指令周期。(1)哈佛结构哈佛结构主要特点是程序存储器和数据存储器相互独立,每个存储器独立编址、独立访问,取指令和取操作数可同时进行,程序空间和数据空间之间可相互传送数据;系统中设置了程序总线和数据总线两条总线,使数据的吞吐率提高一倍。由于程序和数据存储器在分开的两个空间里,取指令和执行能完全重叠运行,提高了指令执行速度。(2)多总线结构DSP芯片都采用多总线结构,可同时进行取指令和多个数据存取操作,并由辅助寄存器自动增减地址进行寻址,

23、使CPU在一个机器周期内可多次对程序空间和数据空间进行访问,大大提高了DSP运行速度。TMS320C55X系列内部有P,C,D,E等4组总线,每组总线中有地址总线和数据总线,这样在一个机器周期内可以完成如下操作:1)从程序存储器中取一条指令2)从数据存储器读两个操作数3)向数据存储器写一个操作数(3)流水线操作(Pipeline)流水线操作原理:将指令分成几个子操作,每个子操作由不同的操作阶段完成。TMS320系列流水线深度从2到6级不等,TMS320C5510有6级的流水线,TMS320C6000系列有8级流水线。流水线结构使得取指令、译码、取操作数、执行几个操作可以独立进行,不同指令的不同

24、阶段在时间上的执行能完全重叠。(4)专用的硬件乘法器DSP芯片都配有专用的硬件乘法一累加器,即用专门的硬件来实现单周期乘法,并用累加器寄存器来处理多个乘积的累加,可在一个周期内完成一次数据乘加操作,如矩阵运算、FIR和IIR滤波、FFT变换等专用信号处理。(5)特殊的DSP指令为满足数字信号处理的需要,在DSP的指令系统中,设计了一些完成特殊功能的指令用来完成专门的数字信号处理操作。如TMS320C55X中的FIRS和LMS指令,专门用于系数对称的FIR滤波器和LMS算法。为实现FFT、卷积等运算,当前的DSP大多在指令系统中设置了循环寻址(Circularaddressing)、位码倒置(b

25、it-reversed)指令和其他特殊指令,使得在进行这些运算时,寻址、排序及计算速度有了很大的提高。(6)快速的指令周期采用哈佛结构、流水线操作、专用的硬件乘法器、特殊指令及集成电路优化设计,使指令周期可在20ns以下。TMS320C55X的运算速度可达1OOMIPS,即100百万条/秒。2.3DSP系统构成下图所示即是一个典型的DSP系统。图中输入信号可以是各种形式,如麦克风输出的语音信号或电话线出来的己调数据信号或数码相机拍摄的图像信号等。抗混叠滤波器A/D转换DSP芯片D/A转换低通滤波器输入输出图2-1典型的DSP系统框图其中,输入信号应先经带限滤波和抽样处理,再进行A/D变换,将输

26、入信号变换成数字比特流。根据奈奎斯特抽样定理,为保证信息的不丢失,抽样频率应该不小于输入信号最高频率的2倍,一般取4到6倍。在本设计中,所使用的抽样频率为5倍的截止频率。DSP芯片的输入是经A/D变换后得到的以抽样形式表示的数字信号,DSP芯片对输入的数字信号进行某种形式的处理,如进行一系列的乘法累加操作(MAC)等。数字处理是该DSP系统的关键,这与其他系统有很大的不同。最后,经过处理后的数字样值再经D/A变换转换为模拟信号样值,之后再进行内插和平滑滤波处理就可得到连续的模拟信号。上面给出的DSP系统只是一个典型模型,并不是所有的DSP系统都必须具有模型中的所有部件,应根据具体要求来变化。本

27、设计中用到的北京精仪达盛有限公司的DSP实验箱的实验板上有A/D,D/A转换芯片,相当于模型系统中的中间三个部件。在不是自行设计DSP系统的情况下,可以先不考虑硬件方面的设计。另外,有些输入信号本身就是数字信号,如CD(CompactDisk),就可以没有模数变换这个过程。2.4DSP系统设计过程在设计DSP系统之前,应根据应用要求确定系统的性能指标、信号处理的要求,对系统进行任务划分;然后用C等高级语言或者MATLAB,SystemView等开发工具模拟所选定的对数字信号进行处理的算法,此处的输入数据是实际信号经采集而获得的,常以计算机文件的形式存储为数据文件。有些算法模拟时所用的输入数据并

28、不一定为实际采集的信号数据,只要能够验证算法的可行性,输入模拟假设的数据也可以。然后根据系统运算量大小、对精度要求、系统成本及体积、功耗等要求选择合适的DSP芯片及其他组件;再接着进行硬件设计和调试,即根据选定的原件建立原理图、制作PCB板、器件安装及加电调试;同时,用DSP汇编语言或者高级C语言或二者相嵌套法生成可执行程序,用DSP仿真器或者软件模拟器调试程序。最后,将软件加载到硬件系统中运行,用DSP仿真器等来测试检查所开发系统的运行能否符合实时要求,或将软件脱离开发系统直接在应用系统上运行。2.5TMS320C55X概述TMS320C55x是TI公司在TMS320VC54x的基础上发展起

29、来的并能与TMS320VC54x兼容的一个系列。TMS320CSSx通过增加功能单元,增强了DSP的运算能力,而且性能更好,功耗更低,是目前TMS320家族中最省电的芯片。这些特性使其更适合在数据速率高,运算量大又要求低功耗的3G无线通信中应用。2.6CPU结构C55X的CPU是并行结构,具有强大的运算功能,可在一个指令周期中高速完成多项算术运算。主要由以下几部分构成:(1)40bit算术逻辑运算单元ALU:它是C55X的大脑,对各种数据进行运算,实现各种功能。还有处理溢出的功能,也可以进行布尔运算或者把这个40位的ALU看作为两个16位的ALU,同时执行两个16位的操作。(2)2个40bit

30、累加器A,B:累加器A和B存储来自ALU或乘法器/加法器单元的输出数据,也能输出到ALU或者乘法器/累加器中。每个累加器可以分为低字位(bit1s-bit0)、高位字(bit31-bit16)和保护位(bit39-bit32)。(3)桶形移位寄存器:它在ALU运算以前,对来自数据存贮器的操作数或者累加器进行定标,或对累加器的值进行算术逻辑移位和归一化处理,或对在累加器的值将要存贮到存贮器之前进行定标。可对输入数据进行Obit-31bit的左移和Obit-16bit的右移。(4)乘法器/加法器单元:由17bitx17bit的乘法器、40bit的加法器、带符号/无符号输入控制、小数控制、零检测器、

31、舍入器(二进制补码)、溢出/饱和逻辑和16bit的暂存器组成。(5)比较、选择和存贮单元CSSU:完成累加器的高位字和低位字间的最大值比较,并存贮在数据存贮器中,不改变状态寄存器STO中的测试/控制位和传送寄存器TRN的值。还可利用优化的片内硬件促进Viterbi型蝶形运算。(6)指数编码器:为支持单周期指数运算指令(EXP)的专用硬件,累加器中的值以二进制补码形式在T寄存器中存贮,范围为-8bit-31bit。(7)CPU状态和控制寄存器:C55X有三个,状态寄存器STO、状态寄存器ST1和处理器工作方式状态寄存器PMST,都是存贮器映像寄存器。STO反映了寻址要求和计算中间运行状态,STl

32、反映了寻址要求、计算的初始设置、I/O及中断控制,PMST反映了处理器工作状态。2.7总线结构C55X有8条16bit的总线,即:4条地址总线(PAB,CAB,DAB,EAB):传送执行指令所需地址。3条数据总线(CB,DB,EB):连接内部各单元,即连接CPU、程序地址产生逻辑、数据地址产生逻辑、片内外设和数据存储器。其中CB,DB传送读自数据存贮器的数,EB传送写到存贮器的数。1条程序总线(PB):从程序存储器装载指令码和立即数。内部存贮器C55X共有192K字的寻址空间,分为大小都是64K字3个独立的可选择空间:程序存储空间、数据存储空间和vo空间,分别用来存放要执行的指令和系数表、指令

33、所用数据、连接存贮器映像外围设备。在任一个存贮空间中,RAM,ROM,EPROM,EEPROM或存贮器映像外围设备,都可驻留在片内或片外。C55X片内存贮器为随机存储器(RAM)和只读存储器(ROM),RAM一般映射到数据空间,但也可组成程序空间;ROM一般构成程序空间,也可部分安排到数据空间。RAM又分为单寻址RAM(SARAM)和双寻址RAM(DARAM),在同一个周期内,CPU可以对DARAM进行读和写操作,但对SARAM只能进行一次读或写操作。C55X并行结构和内部RAM的双寻址能力,使CPU在任一给定的机器周期内同时进行包括1次取指、2次操作数和1次写操作数的4次存储器操作。第三章

34、FIR数字滤波器的设计原理及MATLAB的实现3.1FIR数字滤波器的基本网络结构设单位脉冲响应h(n)长度为N,输入信号为x(n),则FIR数字滤波器就是要实现下列差分方程:(3)式(3)就是FIR数字滤波器的差分方程,FIR网络结构特点就是没有反馈支路,即没有环路,因此它是无条件的稳定系统,其单位脉冲响应h(n)是一个有限长序列。由上面的方程可知,FIR滤波器实际上是一种乘法累加运算,不断地输入样本x(n),经延时(),做乘法累加,再输出滤波结果y(n)。对式(3)进行Z变换,经整理后可得FIR滤波器的传递函数H(z)为(4)由式(4)可以看出,FIR数字滤波器一般网络结构,如下图3-1所

35、示。图3-1 FIR数字滤波器一般网络结构3.2FIR数字滤波器的设计方法FIR数字滤波器的设计方法主要有窗函数和频率采样等设计方法,其中窗函数设计法是最基本的设计方法。在设计FIR滤波器时,一个最重要的计算就是加窗,其中采用矩形窗是最直接也是最简便的方法。本文主要采用矩形窗设计方法。3.2.1窗函数法设计的基本思想窗函数的设计思想是选择一种合适的理想频率特性的滤波器,然后截断它的脉冲得到一个线性相位和因果的滤波器。因此这种方法关键在于选择某种合适的窗函数和一种理想滤波器。对于给定的滤波器的技术指标,选择滤波器长度具有最窄主瓣宽度和尽可能小的旁瓣衰减的某个窗函数。现介绍如下。首先设希望逼近的滤

36、波器频率响应函数为,其单位脉冲响应是。(5)(6)如果能够由已知的求出,经过Z变换可得到滤波器的系统函数。但通常以理想的滤波器作为,其幅度特性逐段恒定,在边界频率处有不连续点,因而是无限时宽的,且是非因果序列。然而我们实际设计的滤波器的单位脉冲响应为h(n),长度为N,其系数函数H(z)为(7)这样用一个有限长的序列h(n)去代替,肯定会引起误差,表现在频域就是通常所说的吉布斯效应。这种吉布斯效应是由于将直接截断引起的,因此,也称为截断效应。如何构造窗函数w(n),用来减少截断效应,这就需要设计一个能满足技术要求的FIR线性相位滤波器。3.2.2几种常见的窗函数采用窗函数设计方法关键在于选择某

37、种合适的窗函数和理想的滤波器。常见的窗函数有5:矩形窗、三角形窗、汉宁窗、哈明窗、布莱克曼窗、凯塞窗。这六种窗函数的基本参数如表1。.表1六种窗函数的基本参数窗函数类型旁瓣峰值/dB过渡带宽度阻带最小衰减/dB近似值精确度矩形窗-134/N1.8/N-21三角窗-258/N6.1/N-25汉宁窗-318/N6.2/N-44哈明窗-418/N6.6/N-53布莱克曼窗-5712/N11/N-74凯塞窗-5710/N-80表中过渡带和阻带最小衰减是用对应的窗函数设计的FIR数字滤波器的频率响应指标。MATLAB信号处理工具箱提供了十四种窗函数的产生函数,下面列出上述六种窗函数的产生函数及调用格式:

38、wn=boxcar(N)%列向量wn中返回长度为N的矩形窗函数w(n)wn=bartlett(N)%列向量wn中返回长度为N的三角窗函数w(n)wn=banning(N)%列向量wn中返回长度为N的汉宁窗函数w(n)wn=hamming(N)%列向量wn中返回长度为N的哈明窗函数w(n)wn=blackman(N)%列向量wn中返回长度为N的布莱克曼窗函数w(n)wn=kaiser(N,beta)%列向量wn中返回长度为N的凯塞窗函数w(n)3.2.3窗函数的选择原则第一:具有较低的旁瓣幅度,尤其是第一旁瓣幅度。第二:旁瓣幅度下降要尽可能大,以利于增加阻带衰减。第三:主瓣的宽度要尽可能窄,以获

39、得较陡的过渡带。通常情况下上述三点很难同时满足,当选择主瓣宽度较窄时,虽然得到了较陡的过渡带,但是通带和阻带明显增加;当选用最小的旁瓣幅度时虽然能得到匀滑幅度响应和较小的阻带波动,但过渡带又加宽了。因此我们在选择窗函数往往时折中选择。在保证主瓣宽度达到一定要求的条件下,适当的牺牲主瓣宽度来换取旁瓣匀滑幅度响应和波动减少。3.2.4用窗函数法设计FIR滤波器的步骤窗函数设计滤波器的步骤如下:(1)根据对阻带衰减及过渡带的指标要求,选择窗函数的类型,并估计窗口长度N。先按照阻带衰减选择窗函数类型。原则是保证阻带衰减满足要求的情况下,尽量选择主瓣窄的窗函数。然后根据过渡带宽度估计窗口长度N。(2)构

40、造希望逼近的频率响应函数,即(8)所谓的“标准窗函数法”,就是选择为线性相位理想滤波器(理想低通、理想高通、理想带通、理想带阻)。(3)计算。如果给出待求滤波器的频响函数为,那么单位脉冲响应用下式求出:(9)如果较复杂,或者不能用封闭公式表示,则不能用上式求出。我们可以对从w=0到w=2采样M点,采样值为,进行M点IDFT得到:(10)根据频域采样理论,与应满足:(11)因此,如果M选得够大,可以保证在窗口内有效地逼近。由此可求出单位脉冲响应为(12)为保证线性相位特性,=(N-1/2)。(4)加窗即可得到设计结果:h(n)=w(n)。3.3FIR数字滤波器的MATLAB的实现MATLAB是美

41、国MathWorks公司自20世纪80年代中期推出的数学软件,优秀的数值计算能力和卓越的数据可视化能力使其很快在数学软件中脱颖而出。MATLAB语言是当今国际科学界最具有影响力、最有活力、以及应用最广泛的软件之一。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷与其他程序接口功能;它提供了数字处理工具箱,使数字处理比以前更为简洁方便且效果更好67。MATLAB集成了一套功能强大的滤波器设计工具FDATool,它涵盖了信号处理工具箱中所有滤波器设计方法,利用它可以方便地完成多种滤波器的设计、分析和性能评估。首先应根据指标参数及对滤波器特性的要求,选择合适的滤波器类型

42、及设计方法进行设计。本文以采用矩形窗设计低通数字滤波器为例。所设计的滤波器技术指标为:滤波器阶数为51,采样频率fs为181KHz,滤波器截止频率fc为10Kz的滤波器。设计的仿真结果如图2,图3所示。图2幅频曲线图3相频曲线由图2,图3可得:图2为本次所设计滤波器的幅频特性曲线,图3为本次所设计滤波器的相频特性曲线。由图可以看出所设计的滤波器具有良好的低通滤波特性,在通带内具有严格的线性相位。第四章 FIR数字滤波器系统硬件设计4.1硬件系统设计FIR数字滤波器系统功能电路图如下:串口电源A/DD/ADSP(C55X)时序控制CPLDRAMFLASHJTAG图4.1滤波器系统功能框图其中,D

43、SP芯片C55X主要负责数据处理(滤波算法):A/D,D/A转换任务由芯片TLC320AD50C来完成,经转换后的数据由DSP芯片进行算法处理,然后再经D/A转换输出;RAM芯片IS61LV6416用来扩展存储区(数据或程序);FLASH芯片SST39VF040用来固化DSP程序及上电自举(采用8bit并行模式);CPLD用于时序控制;电源芯片TPS73HD318提供给C55X所需的1.8V和3.3V电压,并用引脚RESET2对C55X进行复位;串口通信功能由TLC16550C与MAX232芯片完成。4.2时钟电路设计C55X有X1和X2两个时钟管脚,X1为输出管脚,X2为输入管脚也称为CLK

44、IN。为DSP提供时钟有两种引脚连接方式,一种是Xl悬空,使用外部晶振提供时钟,一种是利用DSP片内为晶振振荡器提供的放大电路器,外接晶振。电路连接如下。这种接法中,片内振荡器被激活,X2脚向DSP送入一个频率与2脚晶体标称值相同的时钟,并通过外部锁相环控制电路选择适当倍频倍数为CPU内部提供系统时钟。图4.2时钟电路C55X的支持软件PLL(内部锁相环)控制方式,在DSP复位时,它由CLKMD1CLKMD3三个管脚的电平决定,这三个管脚值也决定了时钟模式寄存器的值。三个管脚与倍频关系如下表:表4.1CLKMD1CLKMD3与倍频关系CLKMD1CLKMD2CLKMD3复位值时钟模式000E0

45、07HPLL*150019007HPLL*100104007HPLL*51001007HPLL*2110F007HPLL*11110000HPLL*1/2101F000HPLL*1/4011保留4.3电源电路设计C55X电源分为内核电源CVdd和I/O电源DvDD,内核电源为1.8V,为包括CPU、时钟电路和所有外设的器件的所有内部逻辑提供电流;I/O电源为3.3V,为外部接口引脚提供电压。C55X的电流消耗主要取决于器件的激活度,内核电源消耗的电流主要取决于CPU的激活度,外设消耗的电流决定于正在工作的外设及其速度,一般与CPU相比,外设消耗的电流是比较小的。时钟电路也需要消耗一部分电流,而

46、且这部分电流是恒定的,与CPU和外设的激活度无关。本设计中采用TI公司的芯片TPS73HD318来提供电源。该芯片电源输入为5V,可提供两路输出电压,一路为3.3V,一路为1.8V,每路最大输出电流为750mA,还提供两个宽度为200ms的低电平复位信号,可直接与C55X的复位引脚连接。与C55X连接图如下:图4.3电源连接电路4.4模数/数模转换电路设计模数/数模转换采用芯片TLC320AD50C(下面简称AD50C),该芯片最高采样速率可达22.05KB/s,通过DSP编程设置,可进行16位A/D和D/A的高分辨率、低速信号转换。该芯片内部ADC之后有抽样滤波器,DAC之前有插值滤波器,接

47、收和发送可同时进行。TLC320AD50C与C55X的McBSP串行口直接相连,不需要外围电路不,占用并行总线,避免了总线冲突。连接图如下:图4.4C55X和ADSOC的硬件连接C55X工作于SPI方式的从机模式,它的BFSX,BCLKR,BCLKX通过寄存器配置为外部输入;AD50工作在主机模式(M/S=1),它的SCLK配置为内部产生,这样数据接收/发送帧同步信号(FS)、移位时钟信号(SCLK)均由AD50C产生。串行口的接收/发送过程受AD50C的控制。该种连接方式不占并行总线,避免了总线冲突。4.5FLASH接口设计FLASH芯片采用使用SST39VF040,该芯片是SST公司的39系列多用途闪存,它是单电压读写操作,有极高的可靠性,功耗较低,具有块区域擦除能力。DSP的I/O端口8000H映射为SST39VF040的A15A8地址的控制信号使能,即当对I/O端口8000H写数据的时候,A15A18分别等于数据的低4位,当对外部存储空间操作时,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁