當(dāng)前位置:首頁 > 嵌入式 > 嵌入式動(dòng)態(tài)
[導(dǎo)讀]摘要:FIR數(shù)字濾波器的實(shí)現(xiàn)方法很多,而現(xiàn)代數(shù)字通信對(duì)實(shí)時(shí)性的需求決定其需要很高的數(shù)據(jù)吞吐率和處理速度。文章探求高速全并行FIR的FPGA實(shí)現(xiàn)方法,并以8輸入15階FIR濾波器

摘要:FIR數(shù)字濾波器的實(shí)現(xiàn)方法很多,而現(xiàn)代數(shù)字通信對(duì)實(shí)時(shí)性的需求決定其需要很高的數(shù)據(jù)吞吐率和處理速度。文章探求高速全并行FIR的FPGA實(shí)現(xiàn)方法,并以8輸入15階FIR濾波器為示例,在直接型FIR的基礎(chǔ)上改進(jìn)得到全并行FIR結(jié)構(gòu),采用Verilog硬件描述語言完成設(shè)計(jì),仿真結(jié)果與MATLAB軟件測試結(jié)果一致。在此基礎(chǔ)上,提出兩種改進(jìn)措施,并進(jìn)行綜合、布局布線,對(duì)比所占資源,結(jié)果分布式FIR為硬件實(shí)現(xiàn)的最佳選擇。

數(shù)字信號(hào)處理及相關(guān)芯片的迅速發(fā)展與數(shù)字濾波是息息相關(guān)的,長久以來,數(shù)字濾波都是研究的熱點(diǎn)。FIR濾波器的硬件實(shí)現(xiàn)方法有3種:ASIC(專用集成電路)(Application Speeific Integrated Circuit)、DSP(數(shù)字信號(hào)處理器)(digital singnal processor)以及FPGA(現(xiàn)場可編程門陣列)(Field Programmable Gate Array)。FPGA擁有全并行的處理架構(gòu),在實(shí)時(shí)信號(hào)處理、可移植的代碼等方面具有優(yōu)勢。文章在FPGA上實(shí)現(xiàn)高速全并行FIR(Finite Impulse Response),并針對(duì)FIR固定系數(shù)提出優(yōu)化方案。

1 數(shù)學(xué)表示

FIR濾波器存在N個(gè)抽頭h(n),N被稱為濾波器的階數(shù),濾波器的輸出可以通過卷積的形式表示為:

 

 

2 全并行FIR的結(jié)構(gòu)

在某些場合,需要FIR濾波器很強(qiáng)的實(shí)時(shí)性,這要求其具有高吞吐率與處理速度。全并行結(jié)構(gòu)以“資源換速度”為方法,以同時(shí)運(yùn)算多個(gè)乘加為方手段,使其擁有較串行高幾倍的處理速度,進(jìn)而獲得高吞吐率。

直接型結(jié)構(gòu)FIR濾波器如圖1所示,引入流水線技術(shù),得到基于直接型結(jié)構(gòu)的15抽頭全并行FIR濾波器硬件結(jié)構(gòu)。此結(jié)構(gòu)同時(shí)執(zhí)行所有乘法。

 

 

3 硬件實(shí)現(xiàn)

用Verilog HDL語言對(duì)15階線性相位FIR進(jìn)行RTL(Register TransferLeve)描述,在Xilinx的FPGA芯片中完成了邏輯綜合、布局布線、時(shí)序分析和硬件測試。在設(shè)計(jì)和實(shí)現(xiàn)過程中,采用多級(jí)流水線結(jié)構(gòu),在加法器和乘法器后面都插入相應(yīng)的寄存器,以FPGA設(shè)計(jì)資源換取對(duì)信號(hào)的處理速度。

3.1 邏輯設(shè)計(jì)

FIR設(shè)計(jì)的整體框圖如圖2所示,數(shù)據(jù)8路并行,Enable為輸入有效信號(hào)、End為輸出有效信號(hào)。具體可劃分成三大模塊,輸入數(shù)據(jù)與濾波器系數(shù)點(diǎn)乘模塊,分級(jí)寄存器數(shù)據(jù)緩存模塊,并行加法模塊。詳細(xì)實(shí)現(xiàn)過程如下:

每個(gè)時(shí)鐘周期進(jìn)8組數(shù)據(jù),各個(gè)數(shù)據(jù)對(duì)點(diǎn)乘的結(jié)果使用規(guī)律不盡相同,將輸入數(shù)據(jù)與所有系數(shù)相乘得到的結(jié)果寄存,在不同周期分批使用。圖3為第1、3個(gè)有效數(shù)據(jù)的分級(jí)

寄存器,對(duì)于第1個(gè)數(shù)據(jù),與H0~H7點(diǎn)乘的結(jié)果在本時(shí)鐘周期內(nèi)使用,與H8~H14點(diǎn)乘的結(jié)果緩存一個(gè)周期使用。第3個(gè)數(shù)據(jù)與第1個(gè)數(shù)據(jù)類似,不同的是,第3個(gè)數(shù)據(jù)與H14點(diǎn)乘的結(jié)果需緩沖兩個(gè)周期使用,而且本周期僅用到與H0~H5的點(diǎn)乘結(jié)果。同理,其余6組亦如此。

 

 

為了運(yùn)行速度的最大化,加法采用全并行方式,15組數(shù)據(jù)相加,需要4個(gè)周期得到最終結(jié)果,如圖4所示。

 

 

3.2 流水設(shè)計(jì)

流水線設(shè)計(jì)方法可以大幅度提高工作頻率,整個(gè)數(shù)據(jù)處理是單流向的。本設(shè)計(jì)的數(shù)據(jù)流水線結(jié)構(gòu)如圖5,第一級(jí)將8組輸入數(shù)據(jù)與所有對(duì)應(yīng)系數(shù)相乘,結(jié)果進(jìn)入分級(jí)寄存器中待用;第二級(jí)從分級(jí)寄存器中取數(shù)。做并行加法的第一級(jí),第三至第五級(jí)做并行加法的第二至第四級(jí)。因此有效數(shù)據(jù)到來后第5個(gè)周期輸出有效數(shù)據(jù)。

 

 

3.3 驗(yàn)證設(shè)計(jì)

Testbench是包含3個(gè)部分,分別是FIR設(shè)計(jì)、TB生成、數(shù)據(jù)輸出校驗(yàn)。搭建的testbench如圖6所示,從文本中讀取向量i_data,經(jīng)過待測濾波器處理得到結(jié)果o_data,并根據(jù)end信號(hào)將向量寫入相應(yīng)文檔中,與正確結(jié)果進(jìn)行比對(duì)。

 

 

3.4 仿真結(jié)果

如圖7,在i_fir_enable信號(hào)到來后,5個(gè)周期后o_fir_enable信號(hào)拉高,之后輸出一直有效,與相應(yīng)matlab軟件測試結(jié)果對(duì)比一致,仿真結(jié)果正確。

3.5 綜合資源

得到了正確的仿真波形后,經(jīng)過綜合、布局布線,能進(jìn)一步得到FIR的資源利用情況,如表1。利用全并行直接乘加方法,消耗的片上資源很多,需要尋求方法來減小資源利用。

 

 

4 改進(jìn)措施

設(shè)計(jì)的FIR為固定系數(shù)濾波器,針對(duì)系數(shù)固定的特點(diǎn),對(duì)此提出以下兩種改進(jìn)措施。

4.1 措施一

在整體結(jié)構(gòu)不做調(diào)整的情況下,可以改進(jìn)的地方僅有乘法器。固定系數(shù)乘法器的實(shí)現(xiàn)可用移位相加代替,可將資源替換成普通的LUT與FF。經(jīng)改進(jìn),綜合后得到的資源利用情況如表2。

 

 

4.2 措施二

分布式算法是一種以實(shí)現(xiàn)乘加運(yùn)算為目的的運(yùn)算方法,可以用分布式算法改變FIR結(jié)構(gòu)?;綟IR分布式結(jié)構(gòu)如圖8,而查找表構(gòu)造方法如表3。設(shè)計(jì)仍為15階FlR濾波器,但將輸入數(shù)據(jù)調(diào)整為8 bit,濾波器的系數(shù)h(n)以及由這些系數(shù)演算出的ROM的初始化數(shù)據(jù)文件由MATLAB產(chǎn)生。實(shí)現(xiàn)后的資源情況如表4所示。在兩種優(yōu)化方案中,分布式FIR占明顯優(yōu)勢,但缺點(diǎn)靈活度差,如果改動(dòng)數(shù)據(jù)位寬或FIR階數(shù),則程序需做較大改動(dòng)。

 

 

 

 

5 結(jié)論

文章首先介紹了FIR濾波器的數(shù)學(xué)原理與基本架構(gòu),實(shí)現(xiàn)了基于直接型的利用乘法器IP核的全并行FIR濾波器,并仿真驗(yàn)證了其正確性,同時(shí)得到所消耗資源。而后,按照兩種不同的優(yōu)化途徑進(jìn)行優(yōu)化,分別針對(duì)乘法器IP核及FIR結(jié)構(gòu)進(jìn)行改進(jìn),得到相應(yīng)資源利用情況,并進(jìn)行比較。結(jié)果,對(duì)于8輸入15階FIR選擇分布式結(jié)構(gòu)能在達(dá)到高吞吐率高速率的情況下,節(jié)省更多邏輯資源。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉