<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于DSP C54x的數(shù)字濾波器設計

          基于DSP C54x的數(shù)字濾波器設計

          ——
          作者:大連海事大學信息工程學院 周廣榮,劉佳,夏志 時間:2006-09-02 來源:電子產(chǎn)品世界 收藏
          摘要:本文主要介紹基于DSP的數(shù)字濾波器的設計,使用CCS5000Simulator 實現(xiàn)FTSK數(shù)據(jù)輸入, 使用FIR濾波器對FTSK調(diào)制信號進行處理,輸出需要的波形與頻譜。文中采用線性緩沖區(qū)和帶移位雙操作尋址的方法實現(xiàn)FIR濾波器。

          關鍵詞:數(shù)字濾波器,Matlab,Simulator

          前言 

          一個實際的應用系統(tǒng)中,總存在各種干擾。使用DSP進行數(shù)字信號處理時,可以從噪聲中提取信號,即對一個具有噪聲和信號的混合源進行采樣,然后經(jīng)過一個數(shù)字濾波器,濾除噪聲,提取有用信號;數(shù)字濾波器是DSP最基本的應用領域,也是熟悉DSP應用的重要環(huán)節(jié)。在系統(tǒng)設計中,濾波器的好壞將直接影響系統(tǒng)的性能。

          數(shù)字濾波器的基本理論和設計 

          對于數(shù)字濾波器的系統(tǒng)函數(shù)可以表示為:


          可以直接寫成表示輸出與輸入的關系,即常系數(shù)線性差分方程:以下是IIR濾波器的表達式


          當全部 , 即系統(tǒng)函數(shù)和單位抽樣響應,則系統(tǒng)是FIR。

          其濾波結(jié)構圖如圖一所示——橫向濾波結(jié)構 

          圖一 橫向濾波器結(jié)構圖

          FIR濾波算法實際上是一種乘法累加運算。它不斷輸入樣本,經(jīng)延時 ,作乘法累加,再輸出濾波結(jié)果y(n)。在這里使用FIR濾波器,它有以下幾個特點:
          (1)    系統(tǒng)的單位沖激響應h(n)在有限個n值處不為零;
          (2)    系統(tǒng)函數(shù)H(z)在|z|>0處收斂,在|z|>0處只有零點,有限z平面只有零點,而全部極點都在z=0處;
          (3)    結(jié)構主要是非遞歸結(jié)構,沒有輸出到輸入的反饋。

          這本次設計中FTSK輸入數(shù)據(jù)中包含頻率為800HZ,1200HZ,1600HZ,2021HZ,中心頻率為1600HZ,提取該頻率的信號。利用Matlab設計一個帶通濾波器。具體參數(shù)為:采樣頻率為22050HZ,通帶寬度為250HZ,則Fpass1=1475HZ,F(xiàn)pass2=1725HZ,衰減1db,過渡帶為200HZ則Fstop1=1275HZ,F(xiàn)stop2=1925HZ,阻帶衰減為30db。運行Matlab獲得126階的帶通濾波器,并提取系數(shù)。 

          用線性緩沖區(qū)和帶移位雙操作數(shù)尋址方法實現(xiàn)FIR濾波器

          在這里介紹用線性緩沖區(qū)法實現(xiàn) ,其特點是:
          (1)    對于N級的FIR濾波器,在數(shù)據(jù)存儲區(qū)中開辟一個稱之為滑窗的N個單元的緩沖區(qū),存放最新的N個輸入樣本。
          (2)    從最老的樣本開始,每讀一個樣本后,將此樣本向下移位。讀完最后一個樣本后,輸入最新樣本至緩沖區(qū)的頂部。
          在這里N=126,y(n)=  
          在數(shù)據(jù)存儲區(qū)中存放系數(shù) ,并設置線性緩沖區(qū)存放輸入數(shù)據(jù)。

          具體實現(xiàn)程序如下: 
          .title        “simfir126.asm”
          .        .global    _firinit    ;兩個匯編程序,可作為C語言的調(diào)用,一個是初始化濾波器
                  .global    _asmfir    ;另一個是濾波器執(zhí)行程序
                  .mmregs
          X    .usect    “data1”,127
                  .bss        data1,1
          SIZE    .set        127
                  .data
          COEF                    ;從matlab中獲得的濾波器系數(shù)
          ;濾波器初始化
                  _firinit:
                  SSBX    FRCT
                  STM    #X+(SIZE-1),AR2
                  STM    #(SIZE-2),AR0
                  RET
          ;濾波器執(zhí)行:
                  _asmfir:
                  STL        A,*AR2+0
                  RPTZ    A,#(SIZE-2)
                  MACD    *AR2-,COEF,A
                  STH        A,*AR2
                  LD        *AR2+,A
                  NOP
                  NOP
                  RETD
                  NOP
                  NOP
                  .END

          Simulator仿真結(jié)果分析與硬件調(diào)試

          仿真在系統(tǒng)調(diào)試中起著重要作用,TI公司也提供了軟件仿真器(Simulator)來調(diào)試程序。其中提供的探測點(Probe Point)功能非常強大,它是一個開發(fā)算法的工具,將計算機文件數(shù)據(jù)傳送到目標板的buffer提供DSP軟件應用,同時可以將計算結(jié)果輸出到計算機文件中供分析,也可以通過CCS提供的圖形窗口觀察輸入輸出數(shù)據(jù)情況。

          在本次設計中利用CCS提供的斷點和探測點,指定FTSK數(shù)據(jù)文件的輸入點,進行相關設定,同時利用CCS提供的圖形窗口觀察輸入和輸出的波形與頻譜。運行程序,分別得到輸入波形和頻譜圖(圖二),輸出波形和頻譜圖(圖三)下面分別對這兩個圖形進行分析。

          輸入波形和頻譜圖 


          圖二    輸入信號的波形和頻譜圖

          由圖二輸入信號的波形圖可以看出,輸入是有四個不同頻率調(diào)制的波形。左邊第一種圖形在一個周期內(nèi)占大約1格,而一格所占的時間為0.00605/10=0.605ms,所以周期大約為T1=0.605*1=0.605ms,頻率為1652Hz。最右邊的圖形一個周期內(nèi)約占0.8格,T2=0.605*0.8=0.484ms,頻率約為2066Hz。中間的兩個圖形在一個周期內(nèi)分別約占2格和1.3格,周期分別約為T3=0.605*2=1.21ms,頻率約為826Hz,T4=0.605*1.3=0.7865ms,頻率約為1271Hz。這四個頻率與輸入的800Hz,1200Hz,1600Hz,2021Hz基本相同。由圖中的輸入頻譜同樣可以看出有四個頻率的輸入波形,其頻率分別約為2756*3/10=826.8Hz,2756*4.5/10=1240Hz,2756*6/10=1653Hz,2756*7.5/10=2067Hz,與輸入的800Hz,1200Hz,1600Hz,2021Hz基本接近。
           
          輸出波形和頻譜圖 


          圖三    輸出信號的波形和頻譜圖

          由圖三中的輸出信號波形圖可以看出濾出的波形在一個周期中約占1格,而一格所占的時間0.00605/10=0.605ms。頻率約為1652Hz,與要求濾出1600Hz的要求接近。由圖三中的的頻譜圖可以看出濾出的頻譜圖的頻率約在第6格,則濾出的頻率約為2756*6/10=1659Hz,與所要求濾出1600Hz的要求接近。

          根據(jù)以上Simulator仿真和結(jié)果分析,所設計的濾波器能夠很好的滿足濾波的要求。Simulator仿真是在進行系統(tǒng)設計中的一個重要環(huán)節(jié),有利于提高我們進行硬件調(diào)試的成功率。

          基于上面的結(jié)果,利用TMS320C5402 DSK系統(tǒng)板進行實驗,在一個AD/DA轉(zhuǎn)換的主循環(huán)中加入所設計的濾波器,調(diào)節(jié)信號發(fā)生器,對示波器進行觀察,可以發(fā)現(xiàn)所用的濾波器能很好的滿足設計要求。但程序的輸入與輸出數(shù)據(jù)讀寫語句要作相應的修改。
           
          結(jié)束語
          在進行數(shù)字濾波器設計時,還需要以下幾點:
          (1)在用Matlab設計濾波器時采樣頻率一定要滿足奈奎斯特準則。當采用帶通濾波器時,通帶寬度一般在200~300Hz,衰減一般為1db,過渡帶一般在100~250Hz,阻帶衰減一般在30db。
          (2)使用探針方法輸入數(shù)據(jù)時,一般要求輸入數(shù)據(jù)是16進制的小數(shù)表示,但如果輸入10進制的也可以,但需在兩次確認之后才可以輸入。
          (3)在圖形窗口觀察結(jié)果時,如果所觀察的圖形不明顯,可以通過設置幅度值來改善效果。
          總之,濾波器設計是我們實際系統(tǒng)應用中重要的一方面,相比傳統(tǒng)的R,L,C元件和運算放大器組成的塊濾波器,更有發(fā)展的潛力。

          參考文獻:
          1.    戴明楨 周建江編著,TMS320C54x DSP結(jié)構、原理及應用,北京航空航天大學出版社,2004
          2.    鄭紅 吳冠編著,TMS320C54x DSP 應用系統(tǒng)設計,北京航空航天大學出版社,2003
          3.    程佩青編著,數(shù)字信號處理教程(第二版),清華大學出版社,2002

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


          數(shù)字濾波器相關文章:數(shù)字濾波器原理


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();