任家峪 孫蓓蓓
摘要:傳統(tǒng)的DSP處理器在進行信號處理的時候,會花費較多的成本,造成較大的系統(tǒng)功耗,需要應用現(xiàn)場可編程門陣列(FPGA)完成DSP任務?;诖?,本文從FPGA的結構特點出發(fā),分析了基于FPGA的智能儀表信號處理,F(xiàn)PGA能夠提升復數(shù)乘法、數(shù)字濾波器以及傅里葉變換的信號處理能力,使信號處理設備具有更優(yōu)異的性能,成本與系統(tǒng)功耗有顯著的降低。
關鍵詞:FPGA;智能儀表;信號處理
中圖分類號:TP216 文獻標識碼:A 文章編號:1007-9416(2018)02-0073-02
基于FPGA的信號處理設備獲得了廣泛的應用,大量的FPGA產品應用于智能儀表中,比如,路由器、無線基站以及調制器等。FPGA具備較強的靈活性,能夠幫助技術人員開發(fā)出多樣化的產品,還能夠自動進行重配置,以此滿足不同協(xié)議的需求。因此,對于基于FPGA下智能儀表信號處理的分析是很有必要的。
1 FPGA概述
FPGA是指現(xiàn)場可編程門陣列,是除了CPLD以外,另一種用于大規(guī)??删幊踢壿嫷腜LD器件,主要通過基于SRAM的LUT邏輯形式結構,通過SRAM形成一個邏輯函數(shù)發(fā)生器。具體而言,F(xiàn)PGA包括以下結構:
第一,邏輯單元。在FPGA結構中,邏輯單元屬于最小的單元,能夠實現(xiàn)FPGA的邏輯功能。每個邏輯單元都由四個輸入的LUT、一個可編程觸發(fā)器、進位鏈以及級聯(lián)鏈組成。其中,LUT是函數(shù)發(fā)生器,可以實現(xiàn)四個輸入一個輸出的所有邏輯函數(shù);可編程觸發(fā)器能夠設置成為D觸發(fā)器、T觸發(fā)器、JK觸發(fā)器或者SR觸發(fā)器這四種;進位鏈能夠為高速計算器以及加法器的應用提供支持;級聯(lián)鏈能夠保障多輸入邏輯函數(shù)的有效計算。
第二,邏輯陣列。在FPGA結構中,邏輯陣列由八個邏輯單元、邏輯陣列的控制信號以及局部互連組成。邏輯陣列形成的“粗粒度”結構,能夠實現(xiàn)EDA的布線以及布局,有效提升各個器件的性能。
第三,快速通道。在FPGA結構中,快速通道主要用于連接邏輯單元和I/O引腳,通過水平走向與垂直走向形成連續(xù)式布線通道。這種布線通道能夠準確預測設計復雜器件的延時性能。與此同時,有些FPGA結構會應用分段式連線通道,這種通道的邏輯布線工作更為簡單,但是延時性能的預測結果得不到保障。
第四,嵌入式陣列塊。在FPGA結構中,嵌入式陣列塊是指輸入口和輸出口位置安裝有寄存器的RAM塊,包括多個嵌入式RAM單元。如果需要應用到存儲器相關功能的時候,嵌入式陣列塊能夠提供2048個位,每一個LAB均具有獨立的結構,共同進行信號的輸入和控制。與此同時,嵌入式陣列塊不僅可以形成RAM、FIFO以及ROM等功能塊,還可以進行計算器、DSP以及乘法器等多種復雜邏輯的計算,在計算的過程中,每個嵌入式陣列塊可以提供一百到六百個等效門[1]。
2 基于FPGA下智能儀表信號處理
2.1 復數(shù)乘法在信號處理中的應用
復數(shù)運算能夠用于多種智能儀表的信號處理,能夠體現(xiàn)出智能儀表信號處理設備的性能,特別是復數(shù)乘法,可以體現(xiàn)出智能儀表信號處理中的復數(shù)運算能力。對于智能儀表而言,與DSP-24類似的元器件會在100ns內進行24×24位復數(shù)乘積,兩個操作數(shù)的虛實部全都是24位精度,復數(shù)乘積算法需要進行四次實數(shù)乘法、一次加法以及一次減法。通常來說,一個滿精度的24×24實數(shù)乘法器會占用348個邏輯片,將四次實數(shù)乘法計算的結果進行加法與減法,共需要48個邏輯片,由此可以計算出,復數(shù)乘法共需要4×348+48=1440個邏輯片,大約為Virtex XCV1000 FPGA提供資源的12%。FPGA不僅可以為復數(shù)乘法提供實現(xiàn)其算法功能的邏輯結構,還會為復數(shù)乘法提供足夠的I/O帶寬,分為片上數(shù)據(jù)傳輸帶寬、片下數(shù)據(jù)傳輸帶寬以及算術單元等多種部件間的數(shù)據(jù)傳輸帶寬。
一般來說,軟件信號處理器執(zhí)行復數(shù)乘法的效率非常高,250MHz的DSP芯片會在每個時鐘周期內實施兩次16×16的復數(shù)乘法運算,也就是說,每2ns就會出現(xiàn)一個新的乘積。而FPGA的性能要更加優(yōu)異,基于FPGA下智能儀表信號處理能夠支持160MHz的頻率,每1.56ns就能夠出現(xiàn)一個新的乘積[2]。
2.2 數(shù)字濾波器在信號處理中的應用
作為信號處理器的基本構件,F(xiàn)IR濾波器的實現(xiàn)主要通過信號處理芯片來實現(xiàn)。根據(jù)目前的研究狀況,基于FPGA的硬件系統(tǒng),能夠提升濾波器的信號處理能力,由此開發(fā)出FPGA多速率濾波器。該設備主要通過分布式算法得出多相十進制編碼器,各個多相分段都能夠看做是獨立的DA過程,并行運行,共同形成一個能夠支持特高輸入采樣率的多速率濾波器。其中,多相差值器主要通過并行MAC方法或者分布式算法來解決不同的問題。對于數(shù)字接收機而言,信號與載波的同步和自動增益的有效控制全部都需要控制回路來實現(xiàn),而多相差值器能夠在回路中進行信號采樣相位的調整,并據(jù)此驅動差值器的跟蹤回路。雖然多相差值器能夠支持多個相位,但是僅有幾個分段部分能夠運行,需要依靠預置MAC的方法,將濾波器需要的系數(shù)集導入到一個或者多個MAC中,為內積的計算提供便利。
除此之外,還可以通過CIC方法實現(xiàn)FPGA多速率濾波器的運轉,因為CIC方法需要通過寄存器、加法器以及減法器進行算法的運算,F(xiàn)PGA能夠在這些算法運算方面具有較高的效率。
2.3 傅里葉變換在信號處理中的應用
和FIR濾波器相同,離散傅里葉變換在信號處理器中的應用也較為廣泛,離散傅里葉變換主要通過快速傅里葉變換來完成。在智能儀表中,快速傅里葉變換能夠提取信號傳輸信道的特點,實現(xiàn)帶寬資源的最大化利用。通常來說,在OFDM中,快速傅里葉變換算法能夠作為發(fā)送端的調制器,也能夠作為接收端的解調器。在應用快速傅里葉變換算法的時候,DSP會在66μs對16位精度復數(shù)采樣進行1次1024點的復數(shù)快速傅里葉變換算法。在某種特定的情況下,還會增加9μs進行位反向置換。但是基于FPGA,同樣的快速傅里葉變換算法能夠在41μs內實現(xiàn)復數(shù)計算以及位反向置換。
在進行FPGA DSP與其他DSP比較的時候,I/O帶寬是非常重要的參數(shù)。對于FPGA而言,除了專用的引腳之外,大部分引腳都能夠為用戶所用,這種功能使得FPGA在進行信號處理時,I/O帶寬具備十分優(yōu)異的性能,使信號并行處效率更高?;贔PGA,智能儀表中存在獨立的輸入存儲模塊、工作存儲模塊以及結果緩存模塊,能夠保障I/O和傅里葉變換運算同時進行。由此可以看出,在41μs的時間內,涵蓋了信號輸入、信號處理以及信號輸出。因此,基于FPGA,使用快速傅里葉變換算法進行信號處理,能夠真正實現(xiàn)并行處理,提高了智能儀表信號處理的效率與準確度[3]。
3 結語
綜上所述,基于FPGA的信號處理設備能夠提升信號處理的效率與準確率,需要進行推廣應用。分析可得,通過對基于FPGA下智能儀表信號處理的分析可知,技術人員在應用復數(shù)乘法、FIR濾波器以及傅里葉變換進行智能儀表信號處理的時候,可以應用現(xiàn)場可編程門陣列,提升信號處理的效率,保障信號處理的準確率。本文的然就仍舊存在不足之處,僅供參考。
參考文獻
[1]王志杰.智能儀表遠程通信信號中斷故障處理[J].設備管理與維修,2016,(01):45-46.
[2]王曉燕,秦海鵬,丁啟勝.傳感信號檢測與智能儀表一體化實驗裝置研制[J].實驗技術與管理,2014,31(03):66-69+78.
[3]邵聯(lián)合,曲衛(wèi)冬.基于AVR單片機的智能儀表信號采集與顯示系統(tǒng)設計[J].儀器儀表用戶,2010,17(04):48-50.