【文章內(nèi)容簡介】
e */include /* * Expected path to * D:\MATLAB7\extern\include\ */const int BL = 39。const real64_T B[39] = {,,,,,,,,,,,,,,,,,,,}。這是一個非常典型的例子,可以清晰的看到利用Matlab提供的FDAtool設計濾波器的方便與快捷。比較以上幾種類型的濾波器參數(shù),在給定的參數(shù)要求下,采用橢圓濾波器可以獲得最佳的幅頻響應特性,具有階數(shù)低,過渡帶窄等優(yōu)點。雖然橢圓濾波器在通帶也會產(chǎn)生波動,但考慮到波動處在可接受的范圍內(nèi),仍然符合設計要求。但由直接型傳輸函數(shù)表達式來實現(xiàn)并不實用。因此如前所說,將其分解為多個二階傳輸函數(shù)的級聯(lián)形式。借助Matlab 信號處理工具箱中函tf2sos(Transfer function to second order section)將傳遞函數(shù)轉換為二階級聯(lián)形式。對于是數(shù)字信號,需要對先前分析計算中分解獲得的二階子系統(tǒng)的濾波器系數(shù)進行量化,即用一個固定的字長加以表示。量化過程中由于存在不同程度的量化誤差,由此會導致濾波器的頻率響應出現(xiàn)偏差,嚴重時會使濾波器的極點移到單位圓之外,使系統(tǒng)不穩(wěn)定。為了獲得最優(yōu)的濾波器系數(shù),量化的精度也相當重要。 FDAtool設計模板及設計結果圖 這里把上面的濾波器設計參數(shù)的總體圖給出,如圖210圖210 FIR帶通濾波器總體設計參數(shù)根據(jù)上述FIR低通數(shù)字濾波器的原理與濾波特性,我們在上面的軟件實踐中已經(jīng)掌握了設計數(shù)字濾波器的方法并且成功的使用Matlab/Simulink進行了設計和仿真。通過以上的過程我們可以導出一定性能的FIR濾波器頻率響應與抽頭系數(shù),然后用Verilog HDL語言設計和QUARTUSⅡ仿真FIR低通數(shù)字濾波器,實現(xiàn)用軟件描述硬件的動作及功能,應用軟件來實現(xiàn)數(shù)字濾波器的功能和時序仿真。 FPGA 可編程邏輯元件介紹EDA是Electronic Design Automation的縮寫,意為電子設計自動化,即利用計算機自動完成電子系統(tǒng)的設計。EDA技術是以計算機和微電子技術為先導,匯集了計算機圖形學、拓撲、邏輯學、微電子工藝與結構學和計算數(shù)學等多種計算機應用學科最新成果的先進技術。它與電子技術、微電子技術的發(fā)展密切相關,吸收了計算機領域的大多數(shù)最新研究成果,以高性能的計算機作為工作工具,在EDA軟件平臺土,根據(jù)硬件描述語言HDL完成的設計文件,自動地完成邏輯編譯、化簡、分割、綜合及優(yōu)化、布線、仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。可編程邏輯器PLD(Programmable Logic Devices)是ASIC(Application Specific Integrated Circuits的一個重要分支。ASIC按制造方法又可分為全定制(Full Custom)產(chǎn)品、半定制(semicustom)產(chǎn)品和可編程邏輯器件(PLD)。前兩種ASIC的設計和制造都離不開器件生產(chǎn)廠家,用戶主動性較差。隨著微電子技術的發(fā)展,設計師們更愿意自己設計專用集成電路芯片,并盡可能縮短設計周期,最好是在實驗室里就能設計出合適的ASIC芯片,并且立即投入實際應用之中,在使用中也能比較方便的對設計進行修改。可編程邏輯器件就是為滿足用戶的這一需求應運而生的。使用FPGA器件設計數(shù)字電路,不僅可以簡化設計過程,而且可以降低整個系統(tǒng)的體積和成本,增加系統(tǒng)的可靠性。它們無需花費傳統(tǒng)意義下制造集成電路所需大量時間和精力,避免了投資風險,成為電子器件行業(yè)中發(fā)展最快的一族。使用FPGA器件設計數(shù)字系統(tǒng)電路的主要優(yōu)點如下:使用FPGA器件,可不受標準系列器件在邏輯功能上的限制。而且修改邏輯可在系統(tǒng)設計和使用過程的任一階段中進行,并且只須通過對所用的FPGA器件進行重新編程即可完成,給系統(tǒng)設計提供了很大的靈活性。功能密集度是指在給定的空間能集成的邏輯功能數(shù)量??删幊踢壿嬓酒瑑?nèi)的組件門數(shù)高,一片F(xiàn)PGA可代替幾片、幾十片乃至幾百片中小規(guī)模的數(shù)字集成電路芯片。用FPGA器件實現(xiàn)數(shù)字系統(tǒng)時用的芯片數(shù)量少,從而減少芯片的使用數(shù)目,減少印刷線路板面積和印刷線路板數(shù)目,最終導致系統(tǒng)規(guī)模的全面縮減。減少芯片和印刷板數(shù)目,不僅能縮小系統(tǒng)規(guī)模,而且它還極大的提高了系統(tǒng)的可靠性。具有較高集成度的系統(tǒng)比用許多低集成度的標準組件設計的相同系統(tǒng)具有高得多的可靠性。使用FPGA器件減少了實現(xiàn)系統(tǒng)所需要的芯片數(shù)目,在印刷線路板上的引線以及焊點數(shù)量也隨之減少,所以系統(tǒng)的可靠性得以提高?;贔PGA器件的可編程性和靈活性,用它來設計一個系統(tǒng)所需時間比傳統(tǒng)方法大為縮短。FPGA器件集成度高,使用時印刷線路板電路布局布線簡單。同時,在樣機設計成功后,由于開發(fā)工具先進,自動化程度高,對其進行邏輯修改也十分簡便迅速。因此,使用FPGA器件可大大縮短系統(tǒng)的設計周期,加快產(chǎn)品投放市場的速度,提高產(chǎn)品的競爭能力。FPGA/CPLD器件的工作速度快,一般可以達到幾百兆赫茲,遠遠大于DPS器件。同時,使用FPGA器件后實現(xiàn)系統(tǒng)所需要的電路級數(shù)又少,因而整個系統(tǒng)的工作速度會得到提高。很多FPGA器件都具有加密功能,在系統(tǒng)中廣泛的使用FPGA器件可以有效防止產(chǎn)品被他人非法仿制。使用FPGA器件實現(xiàn)數(shù)字系統(tǒng)設計時,如果僅從器件本身的價格考慮,有時還看不出來它的優(yōu)勢,但是影響系統(tǒng)成本的因素是多方面的,綜合考慮,使用FPGA的成本優(yōu)越性是很明顯的。首先,使用FPGA器件修改設計方便,設計周期縮短,使系統(tǒng)的研制開發(fā)費用降低。其次,F(xiàn)PGA器件可使印刷線路板面積和需要的插件減少,從而使系統(tǒng)的制造費用降低。再次,使用FPGA器件能使系統(tǒng)的可靠性提高,維修工作量減少,進而使系統(tǒng)的維修服務費用降低??傊?,使用FPGA器件進行系統(tǒng)設計能節(jié)約成本。 QuartusⅡ及Verilog HDL介紹Quartus II 屬于Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多種設計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設計輸入到硬件配置的完整PLD設計流程。 Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl腳本完成設計流程外,提供了完善的用戶圖形界面設計方式。具有運行速度快,界面統(tǒng)一,功能集中,易學易用等特點。 Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設計的復雜性、加快了設計速度。對第三方EDA工具的良好支持也使用戶可以在設計流程的各個階段使用熟悉的第三方EDA工具。 此外,Quartus II 通過和DSP Builder工具與Matlab/Simulink相結合,可以方便地實現(xiàn)各種DSP應用系統(tǒng);支持Altera的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級設計、嵌入式軟件開發(fā)、可編程邏輯設計于一體,是一種綜合性的開發(fā)平臺。 Maxplus II 作為Altera的上一代PLD設計軟件,由于其出色的易用性而得到了廣泛的應用。目前Altera已經(jīng)停止了對Maxplus II 的更新支持,Quartus II 與之相比不僅僅是支持器件類型的豐富和圖形界面的改變。Altera在Quartus II 中包含了許多諸如SignalTap II、Chip Editor和RTL Viewer的設計輔助工具,集成了SOPC和HardCopy設計流程,并且繼承了Maxplus II 友好的圖形界面及簡便的使用方法。 Altera Quartus II 作為一種可編程邏輯的設計環(huán)境, 由于其強大的設計能力和直觀易用的接口,越來越受到數(shù)字系統(tǒng)設計者的歡迎。Verilog HDL是目前應用最為廣泛的硬件描述語言。Verilog HDL可以用來進行各種層次的邏輯設計,也可以進行數(shù)字系統(tǒng)的邏輯綜合,仿真驗證和時序分析等。該語言適合算法級,寄存器級,邏輯級,門級和版圖級等各個層次的設計和描述。Verilog HDL進行設計最大的優(yōu)點是其工藝無關性。這使得我們在功能設計,邏輯驗證階段可以不必過多考慮門級及工藝實現(xiàn)的具體細節(jié),只需根據(jù)系統(tǒng)設計的要求施加不同的約束條件,即可設計出實際電路。VerilogHDL是一種硬件描述語言(hardware description language),為了制作數(shù)字電路而用來描述ASIC和FPGA的設計之用。VerilogHDL 的設計者想要以 C 編程語言為基礎設計一種語言,可以使工程師比較容易學習。(11階FIR數(shù)字濾波器)FPGA實現(xiàn)FIR濾波器,首先進行指標選定和Matlab軟件參數(shù)仿真,然后執(zhí)行基于Verilog方法的硬件實現(xiàn)中用移位方法代替了乘法運算。表23設計指標要求設計指標高低通截止頻率 階數(shù)據(jù)寬度低通(1對應Fs/2) 118bits根據(jù)以上指標,利用MATLAB中的FIR濾波器系數(shù)設計命令fir1(10,)所設計濾波器的系數(shù)。表24 Matlab中導出的濾波器系數(shù)MATLAB軟件仿真的濾波器的抽頭系數(shù)及其幅度頻響特性如下圖211所示。圖211 11階FIR濾波器的抽頭系數(shù)和幅頻特性曲線可見抽頭系數(shù)是奇對稱的,即:, 。FIR濾波器采用對稱結構,每個抽頭的輸出分別乘以相應加權的二進制值,再將結果相加。同時,