基於Spartan-3 FPGA的DSP功能實現方案

2021-01-15 電子產品世界

本文闡述了Spartan-3 FPGA針對DSP而優化的特性,並通過實現示例分析了它們在性能和成本上的優勢。

本文引用地址:http://www.eepw.com.cn/article/151172.htm

  所有低成本的FPGA都以頗具吸引力的價格提供基本的邏輯性能,並能滿足廣泛的多用途設計需求。然而,當考慮在FPGA構造中嵌入DSP功能時,必須選擇高端FPGA以獲得諸如嵌入式乘法器和分布式存儲器等平臺特性。

  Spartan-3 FPGA的面世改變了嵌入式DSP的應用前景。雖然Spartan-3系列器件的價位可能較低,但它們同樣具有DSP設計所需的平臺特性。這些平臺特性能夠以較高的面積利用率實現信號處理功能,使設計達到更低價位點。

  Spartan-3器件用作協處理器或預/後處理器是非常理想的,它們將運算密集型功能從可編程DSP上卸載下來以增強系統性能。

  1 針對DSP而優化

  賽靈思公司的Spartan-3器件採用90nm工藝技術以及300mm晶圓,大大降低了FPGA的成本。與此同時,這些器件還包括諸如嵌入式18×18位乘法器、大塊存儲器(18kb)、分布式RAM以及移位寄存器等關鍵DSP資源。這些高級特性意味著採用Spartan-3 FPGA,能以比其它競爭FPGA低得多的價位實現DSP算法。

  


  圖1:增強型架構允許用

  單個LUT代替16個寄存器。除增加系統的基本性能之外,這些嵌入式特性還能提高器件的利用率。例如,如果在邏輯結構中實現Spartan-3嵌入式乘法器,需要佔用300~400個邏輯單元(LE)。此外,因為嵌入式乘法器緊鄰邏輯結構,所以拓展其功能(比如創建加法器或者級聯多個乘法器來支持複雜的算法功能)是非常簡單的。

  為提高效率,許多DSP功能以時分復用的形式在管道中得以很好實現。這樣做雖然能創建帶寬更高、速度更快的系統,但同時也將面臨更多臨時存儲單元需求而帶來的成本增加。譬如,時分復用濾波器需要將各個乘法-累加單元的結果存儲在移位寄存器裡。這種設計將在用完FPGA的邏輯資源之前就可能耗盡寄存器或存儲器資源。Spartan-3 FPGA系列的獨特之處在於它們可提供這樣一種模式:一個查找表(LUT)能夠執行邏輯功能或配置成一個16位移位寄存器。

  如圖1所示,這種增強型的架構允許用單個LUT來代替16個寄存器,在實現時分復用DSP功能時能使面積利用率最大化。

  許多DSP功能也需佔用大量的存儲器資源,它們需要便箋存儲器來保存係數、執行FIFO以及獲得較大的緩衝區。與目前使用的其它低成本FPGA相比,Spartan-3器件可提供更多的存儲位數。對於許多DSP設計而言,最重要的資源是FPGA內的嵌入式存儲器,而不是邏輯電路或者乘法器。因為存儲資源不足,採用競爭的低成本器件的設計工程師不得不選用更大規模的器件或採用外部存儲器來構建系統,而這些系統只需一片體積很小的Spartan-3 FPGA就可以得到實現。

  2 常見的DSP功能實現

  下面通過分析有限衝擊響應(FIR)濾波器的兩個實現示例來說明這些特性是如何影響器件的利用率。一個是基於乘法累加器(MAC)的實現,另一個是基於多通道分布式算法(DA)的實現。

  FIR濾波器通常應用於基站、數字視頻、無線區域網、xDSL以及有線數據機。測試基準是在Spartan-3 XC3S400 FPGA中實現頻率為130MHz、數據和係數均為16位的64抽頭MAC FIR濾波器。第一個實現僅用了一個MAC,第二個實現則用了四個MAC。

  從採用單個MAC的實現到採用四個MAC的實現可顯著增加FIR濾波器的性能,而LUT數量只增加一倍並仍僅佔總可用邏輯資源的4%。四個MAC的實現使用了四塊RAM和四個MAC,以最少的器件邏輯資源高效地實現了FIR濾波器。

  另一個有趣的實現是多通道FIR功能的實現,在這裡可以看到從單通道FIR濾波器到8通道FIR濾波器,器件利用率是如何變化的。

  實現單通道分布式算法FIR濾波器使用了XC3S1000 Spartan-3器件29%的邏輯資源和39%的寄存器資源。當實現同樣的8通道濾波器時,通常將不同通道進行時分復用來保存邏輯,但這將佔用很多寄存器或者大量的片內存儲器來存放中間結果。

  如果使用Spartan-3 FPGA,中間結果將被存放在由LUT配置成的16位移位寄存器(SRL-16)中。這樣,實現同樣的8通道濾波器只多使用10%的可用邏輯資源和7%的可用寄存器資源,也就是說,構建8個通道僅多佔用25%的器件資源。

  這種顯著的資源節約與Spartan-3器件中SRL-16的使用有直接關係,在8通道實現中還有另外1,343個LUT被用作SRL-16模式。

  如果在不支持SRL-16性能的FPGA中實現這種設計,將需要額外的10,744(1343×8)個觸發器用作存儲單元,這就必須選用大規模器件以提供數量龐大的寄存器,同時將也會消耗相關的組合邏輯資源。


相關焦點

  • 基於DSP和FPGA的機器人聲控系統設計與實現
    2 系統硬體總體設計 系統的硬體功能是實現語音指令的採集和步進電機的驅動控制,為系統軟體提供開發和調試平臺。如圖1所示。 系統硬體分為語音信號的採集和播放,基於dsp的語音識別,fpga動作指令控制、步進電機及其驅動、dsp外接快閃記憶體晶片,jtag口仿真調試和鍵盤控制幾個部分。
  • 基於DSP的數字掃描探針顯微鏡的硬體解決方案研究
    spm系統方案及其缺陷 現有的spm系統主要基於pci形式,該方案中,計算機通過pci卡和spm控制板保持通信,整個電子控制系統的流程圖如圖1所示。本文引用地址:http://www.eepw.com.cn/article/21555.htm
  • 基於Spartan-6 FPGA的Sinc3 Filter設計
    Sinck結構的濾波器適合Σ-Δ調製器使用,可有效濾除高頻噪聲,且其實現不需要乘法即可完成。其原理結構如圖1所示。 濾波器相關文章:濾波器原理 fpga
  • 賽靈思推出Spartan-6 FPGA系列
    鑑於此,全球可編程邏輯解決方案領導廠商賽靈思公司(Xilinx, Inc. (NASDAQ: XLNX))日前推出新一代低成本Spartan® 現場可編程門陣列(FPGA)系列產品,可幫助設計小組實現這一目標。 新推出的Spartan-6 FPGA系列樣品現在即可提供。
  • 第六講 DSP在雷達信號處理中的應用
    最先開設的講座將圍繞三大課題:dsp、fpga和嵌入式系統,每個課題都將連載6期。dsp內部的硬體乘法器、地址產生器(反轉尋址)和多處理內核,保證dsp在相同條件下,完成fft算法的速度比通用微處理器要快2到3個數量級。因此,在雷達信號處理器中,大量採用dsp完成fft/ifft,以實現信號的時-頻域轉換、回波頻譜分析、頻域數字脈衝壓縮等。 fir濾波器是雷達信號處理中常用設計之一。
  • 基於小波變換與DSP的實時音頻視頻處理系統
    本文介紹一種基於adv611,ct8021晶片同時結合ti公司的tms320c6201晶片實現音/視頻實時處理系統。在該實時系統中,dsp晶片作為控制核心、一方面要管理adv611,ct8021,存儲器和通信接口,另一方面要對adv611的圖像壓縮效果進行調解,對數據速率實時控制。系統實現方案原理圖如圖1所示。
  • 基於FPGA的伺服驅動器分周比設計與實現
    為此提出一種基於FPGA的整數分周比實現方法。該方法邏輯結構簡單,配置靈活,易於擴展,具有很高的實用價值。  1 電子齒輪比與分周比  電子齒輪比與分周比是數控工具機和數控加工中心中一個很重要的概念。國外的各種驅動器一般都帶有分周比功能,對利用FPGA實現分周比進行研究和探討,電子齒輪比、分周比功能示意圖如圖1所示。
  • 如何在 FPGA 上實現雙線性插值的計算?
    在FPGA上,乘法是一件非常消耗資源的事,雖然Xilinx和Altera這樣的FPGA廠商會在每塊FPGA板上設計dsp來專門應對乘法、除法等複雜運算。但dsp的數量是十分有限的,dsp的使用水平很大程度上決定了整個FPGA的計算速度。一個dsp可以當作一個乘法器使用,而一個除法器則需要多個DSP級聯組成。
  • 基於FPGA的複數浮點協方差矩陣實現
    為了保證算法的實現,必須對中間運算數據進行截斷,將每次累加的結果除2(可以通過移位運算來實現),以避免溢出。 此外,在應用MUSIC算法時,各種計算都是複數運算。此時,基於複數運算的協方差矩陣的實現就成為一種必然。 因此,在充分應用FPGA並行處理能力的同時,為了擴展數據處理的動態範圍,減少數據溢出機率,避免數據截斷所產生的誤差,提高協方差矩陣的運算精度以及擴展該運算的通用性。本文以空間譜估計作為研究背景,研究了複數據運算和浮點運算的特點,提出了一種適用於任何陣列流型、任意陣元的基於複數浮點運算的協方差矩陣的FPGA實現方案。
  • 基於FPGA IP核的FFT實現
    這裡從Altera IP核出發,建立了基4算法的512點FFT工程,對不同參數設置造成的誤差問題進行分析,並在EP2C70F896C8器件上進行基於Quartus II的綜合仿真,得到利用FFT IP核的FFT算法高效實現,最後利用Matlab進行的計算機仿真分析證明了工程結果的正確性。
  • 基於fpga二維小波變換核的實時可重構電路
    項目背景及可行性分析本文引用地址:http://www.eepw.com.cn/article/266432.htm  2.1 項目名稱及摘要:  基於fpga二維小波變換核的實時可重構電路  現場可編程門陣列為可進化設計提供了一個理想的模板
  • 如何在FPGA中實現狀態機
    FPGA常常用於執行基於序列和控制的行動,比如實現一個簡單的通信協議。對於設計人員來說,滿足這些行動和序列要求的最佳方法則是使用狀態機。狀 態機是在數量有限的狀態之間進行轉換的邏輯結構。一個狀態機在某個特定的時間點只處於一種狀態。
  • 基於FPGA的無損圖像壓縮系統設計
    編者按:  摘要:本文簡要介紹了圖像壓縮的重要性和常用的無損圖像壓縮算法,分析了快速高效無損圖像壓縮算法(FELICS)的優勢,隨後詳細分析了該算法的編碼步驟和硬體實現方案,最後公布了基於該方案的FPGA性能指標。
  • 基於FPGA的實時中值濾波器硬體實現
    在許多實際應用場合,如高清視頻監控、X光圖像的降噪等,需要快速且實時地進行中值濾波,軟體實現達不到實時處理的要求,因此選用硬體實現。 在硬體實現上,文獻[1]、[2]等採用行延遲的方法形成鄰域數據,以實現3×3的中值濾波。文獻[7]為了提高紅外成像跟蹤器設計了大窗口的中值濾波器。
  • 基於FPGA高精度浮點運算器的FFT設計與仿真
    摘要 基於IEEE浮點表示格式及FFT算法,提出一種基2FFT的FPGA方法,完成了基於FPGA高精度浮點運算器的FFT的設計。利用VHDL語言描述了蝶形運算過程及地址產生單元,其仿真波形基本能正確的表示輸出結果。
  • 基於Spartan-6 FPGA的可擴展驅動控制系統
    本文引用地址:http://www.eepw.com.cn/article/150284.htm  賽靈思設計服務部 (XDS) 已經為 ISM 領域的一家主要廠商開發出了一款基於 FPGA、支持CANopen 和 EtherCAT 接口的電機控制平臺原型來解決這些問題。賽靈思設計服務部的工作是設計並實現一個功能齊備的模塊化系統,以便在客戶的新一代智能驅動器中重用。
  • 基於DSP與FPGA的機器人聲控系統設計方案
    2 系統硬體總體設計  系統的硬體功能是實現語音指令的採集和步進電機的驅動控制,為系統軟體提供開發和調試平臺。如圖1所示。  JTAG口用於與PC機進行聯機在線仿真,鍵盤則用於參數調整和功能的切換。  3 語音識別系統設計  3.1 語音信號的特點  語音信號的頻率成分主要分布在300~3400Hz之間,根據採樣定理選擇信號的採樣率為8 kHz。語音信號的一個特點在於他的"短時性",有時在一個短時段呈現隨機噪聲的特性,而另一段表現周期信號的特性,或二者兼而有之。
  • 聲納圖像動態範圍擴展與FPGA實現
    基於課題組研製的多波束成像聲納原理樣機的研製,分析了數據動態範圍壓縮導致圖像細節丟失的原因及其對成像質量的影響,採用JPL快速平方根近似算法改善了開方運算FPGA實現過程的資源佔用和系統延時。最後,對改進設計方案進行了實驗驗證,通過多波束成像聲納系統的消聲水池實驗證明了本文動態範圍擴展方法的有效性和可行性,系統成像質量改善明顯,達到優化設計的預期目標。
  • 基於FPGA的巴特沃茲IIR數字帶通濾波器設計
    數字濾波器通常採用計算機軟體、專用數字濾波器、DSP器件或可編程邏輯器件(如FPGA) 實現。因為,用FPGA實現數字濾波器具有實時性強、靈活性高、處理速度快以及小批量生產成本低等優點,所以得到了較為廣泛的應用。本文以巴特沃思數字帶通濾波器為例,較為詳細地介紹了其設計和實現方法。給定巴特沃茲數字帶通濾波器的抽樣頻率為500Hz,上、下邊帶截止頻率分別為150Hz和30Hz.