• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 兩種基于FPGA的軟件濾波方法

    兩種基于FPGA的軟件濾波方法

    作者: 時間:2015-08-01 來源:網絡 收藏

      基于的軟件算法設計及實現

    本文引用地址:http://www.czjhyjcfj.com/article/278137.htm

      隨著數字電子技術的發展,數字電路已由早期的分立元件逐漸發展成集成電路,對電路設計的要求越來越高。尤其是可編程邏輯器件的出現,使得以硬件為載體、以計算機軟件為開發環境的現代數字系統的設計方法日趨成熟。可編程邏輯器件設計靈活、功能強大、可在線修改、效率高等優點深受廣大電子設計人員青睞。目前,大多數現場可編程邏輯陣列( )芯片是電壓敏感型芯片,基于可重構CMOS-SRAM單元結構,數據具有易失性,工作在低電壓狀態,易受干擾,尤其在工控、軍用場合,外界電磁環境惡劣,電路耦合、空間輻射的雜波脈沖均會對工作的穩定性產生影響。

      干擾脈沖和毛刺信號是影響FPGA穩定工作的主要因素,為了保證輸入信號每變化一次,電路只做出一次正確的響應,必須對輸入信號進行處理。要實現信號可以采用硬件濾波和軟件濾波兩種方法。與硬件濾波相比,軟件濾波不需要硬件電路的支持,從而可以減少元器件的使用,降低成本,更重要的是軟件濾波更易于修改,所以常采用軟件濾波的方法來實現電路中的信號濾波問題。通過VHDL語言編程實現信號濾波功能,介紹了延時濾波法和判決濾波法,并通過實驗證明了上述兩種濾波方法的可靠性。

      1延時濾波

      延時濾波法的濾波原理是對輸入信號的脈沖寬度進行鑒別,對那些與真實信號的寬度相差很大的干擾信號進行有效的抑制。具體的實現流程為在檢測到輸入信號的狀態發生變化后,延時一段時間T,脈沖寬度小于延時時間T的輸入信號被認為是干擾信號,將其濾除;脈沖寬度大于延時時間T的輸入信號則被認為是真實信號,將其輸出。針對不同脈沖寬度的干擾信號,可以通過設置不同的參數來實現相應的信號延時,從而達到有效濾波的目的。

      1. 1延時時間T的確定

      延時時間T取決干擾信號的脈沖寬度T‘。延時時間T太短( T>T‘),會造成資源的浪費,降低電路的工作效率。

      這里以某型號的扭子開關輸入信號為例來介紹如何確定延時時間T.由于扭子開關的機械觸點存在彈性作用,當撥動開關時,都不可避免地要在觸點閉合及斷開的瞬間產生一連串的抖動。為了能夠更準確地估測撥動開關時產生的干擾脈沖寬度T',可以用示波器對開關信號進行多次測量,經測量發現這種扭子開關信號的抖動時間不會超過1.5ms.圖1為沒有經過濾波處理的開關信號波形。

      圖1中,橫坐標表示時間,每格代表50μs,縱坐標表示電壓,每格表示1 V.從圖中可以明顯看出,在開關信號達到穩定狀態之前,有一連串的抖動,抖動時間不到1. 5 ms.這里根據實際情況,確定延時時間T = 2 ms.

      1. 2延時濾波程序設計

      延時濾波程序采用一個計數器來實現,計數器的模值N取決于延時時間T和采樣時鐘CLK的周期TCLK.若計數器的初始值為0時,則N = T /TCLK-1.圖2為編寫延時濾波程序的流程圖。

      

     

      圖1未經過濾波處理的開關信號

      

     

      圖2延遲濾波程序流程圖

      當檢測到開關信號的狀態發生變化時(這里以由‘0’變到‘1’為例),計數器開始計時,當計數器的計數值計到N時,如果開關信號仍保持為變化之后的狀態‘1’,則輸出‘1’,否則,認為這是一個干擾脈沖,將其濾除。

      當采樣時鐘的頻率為5 kHz時,TCLK = 0. 2 ms,要實現2 ms的延時時間,若計數器初始值為0,那么計數器模值N = 9.具體的VHDL語言程序進程如下:

      

    濾波器相關文章:濾波器原理


    fpga相關文章:fpga是什么


    濾波器相關文章:濾波器原理


    電源濾波器相關文章:電源濾波器原理


    塵埃粒子計數器相關文章:塵埃粒子計數器原理
    脈沖點火器相關文章:脈沖點火器原理
    數字濾波器相關文章:數字濾波器原理

    上一頁 1 2 3 下一頁

    關鍵詞: FPGA 濾波

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 沈丘县| 视频| 广水市| 鲜城| 北川| 洪雅县| 南涧| 青田县| 突泉县| 洛隆县| 宁化县| 图片| 和顺县| 兰溪市| 二连浩特市| 晴隆县| 榕江县| 和林格尔县| 宾川县| 卢湾区| 南阳市| 上栗县| 北流市| 磴口县| 潼南县| 方山县| 镇康县| 博兴县| 定襄县| 道真| 辰溪县| 乌兰县| 保靖县| 淮阳县| 宽城| 淳化县| 潜山县| 五指山市| 微山县| 鹤峰县| 清新县|