利用Spartan-3 FPGA實(shí)現高性能DSP功能
Spartan-3 FPGA能以突破性的價(jià)位點(diǎn)實(shí)現嵌入式DSP功能。本文闡述了Spartan-3 FPGA針對DSP而優(yōu)化的特性,并通過(guò)實(shí)現示例分析了它們在性能和成本上的優(yōu)勢。
本文引用地址:http://dyxdggzs.com/article/268082.htm所有低成本的FPGA都以頗具吸引力的價(jià)格提供基本的邏輯性能,并能滿(mǎn)足廣泛的多用途設計需求。然而,當考慮在FPGA構造中嵌入DSP功能時(shí),必須選擇高端FPGA以獲得諸如嵌入式乘法器和分布式存儲器等平臺特性。
Spartan-3 FPGA的面世改變了嵌入式DSP的應用前景。雖然Spartan-3系列器件的價(jià)位可能較低,但它們同樣具有DSP設計所需的平臺特性。這些平臺特性能夠以較高的面積利用率實(shí)現信號處理功能,使設計達到更低價(jià)位點(diǎn)。
Spartan-3器件用作協(xié)處理器或預/后處理器是非常理想的,它們將運算密集型功能從可編程DSP上卸載下來(lái)以增強系統性能。
針對DSP而優(yōu)化
賽靈思公司的Spartan-3器件采用90nm工藝技術(shù)以及300mm晶圓,大大降低了FPGA的成本。與此同時(shí),這些器件還包括諸如嵌入式18×18位乘法器、大塊存儲器(18kb)、分布式RAM以及移位寄存器等關(guān)鍵DSP資源。這些高級特性意味著(zhù)采用Spartan-3 FPGA,能以比其它競爭FPGA低得多的價(jià)位實(shí)現DSP算法。
除增加系統的基本性能之外,這些嵌入式特性還能提高器件的利用率。例如,如果在邏輯結構中實(shí)現Spartan-3嵌入式乘法器,需要占用300~400個(gè)邏輯單元(LE)。此外,因為嵌入式乘法器緊鄰邏輯結構,所以拓展其功能(比如創(chuàng )建加法器或者級聯(lián)多個(gè)乘法器來(lái)支持復雜的算法功能)是非常簡(jiǎn)單的。
為提高效率,許多DSP功能以時(shí)分復用的形式在管道中得以很好實(shí)現。這樣做雖然能創(chuàng )建帶寬更高、速度更快的系統,但同時(shí)也將面臨更多臨時(shí)存儲單元需求而帶來(lái)的成本增加。譬如,時(shí)分復用濾波器需要將各個(gè)乘法-累加單元的結果存儲在移位寄存器里。這種設計將在用完FPGA的邏輯資源之前就可能耗盡寄存器或存儲器資源。Spartan-3 FPGA系列的獨特之處在于它們可提供這樣一種模式:一個(gè)查找表(LUT)能夠執行邏輯功能或配置成一個(gè)16位移位寄存器。
這種增強型的架構允許用單個(gè)LUT來(lái)代替16個(gè)寄存器,在實(shí)現時(shí)分復用DSP功能時(shí)能使面積利用率最大化。
許多DSP功能也需占用大量的存儲器資源,它們需要便箋存儲器來(lái)保存系數、執行FIFO以及獲得較大的緩沖區。與目前使用的其它低成本FPGA相比,Spartan-3器件可提供更多的存儲位數。對于許多DSP設計而言,最重要的資源是FPGA內的嵌入式存儲器,而不是邏輯電路或者乘法器。因為存儲資源不足,采用競爭的低成本器件的設計工程師不得不選用更大規模的器件或采用外部存儲器來(lái)構建系統,而這些系統只需一片體積很小的Spartan-3 FPGA就可以得到實(shí)現。
常見(jiàn)的DSP功能實(shí)現
下面通過(guò)分析有限沖擊響應(FIR)濾波器的兩個(gè)實(shí)現示例來(lái)說(shuō)明這些特性是如何影響器件的利用率。一個(gè)是基于乘法累加器(MAC)的實(shí)現,另一個(gè)是基于多通道分布式算法(DA)的實(shí)現。
FIR濾波器通常應用于基站、數字視頻、無(wú)線(xiàn)局域網(wǎng)、xDSL以及有線(xiàn)調制解調器。測試基準是在Spartan-3 XC3S400 FPGA中實(shí)現頻率為130MHz、數據和系數均為16位的64抽頭MAC FIR濾波器。第一個(gè)實(shí)現僅用了一個(gè)MAC,第二個(gè)實(shí)現則用了四個(gè)MAC。
從采用單個(gè)MAC的實(shí)現到采用四個(gè)MAC的實(shí)現可顯著(zhù)增加FIR濾波器的性能,而LUT數量只增加一倍并仍?xún)H占總可用邏輯資源的4%。四個(gè)MAC的實(shí)現使用了四塊RAM和四個(gè)MAC,以最少的器件邏輯資源高效地實(shí)現了FIR濾波器。
另一個(gè)有趣的實(shí)現是多通道FIR功能的實(shí)現,在這里可以看到從單通道FIR濾波器到8通道FIR濾波器,器件利用率是如何變化的。
實(shí)現單通道分布式算法FIR濾波器使用了XC3S1000 Spartan-3器件29%的邏輯資源和39%的寄存器資源。當實(shí)現同樣的8通道濾波器時(shí),通常將不同通道進(jìn)行時(shí)分復用來(lái)保存邏輯,但這將占用很多寄存器或者大量的片內存儲器來(lái)存放中間結果。
如果使用Spartan-3 FPGA,中間結果將被存放在由LUT配置成的16位移位寄存器(SRL-16)中。這樣,實(shí)現同樣的8通道濾波器只多使用10%的可用邏輯資源和7%的可用寄存器資源,也就是說(shuō),構建8個(gè)通道僅多占用25%的器件資源。
這種顯著(zhù)的資源節約與Spartan-3器件中SRL-16的使用有直接關(guān)系,在8通道實(shí)現中還有另外1,343個(gè)LUT被用作SRL-16模式。
如果在不支持SRL-16性能的FPGA中實(shí)現這種設計,將需要額外的10,744(1343×8)個(gè)觸發(fā)器用作存儲單元,這就必須選用大規模器件以提供數量龐大的寄存器,同時(shí)將也會(huì )消耗相關(guān)的組合邏輯資源。
作者:Suhel Dhanan
Spartan解決方案高級營(yíng)銷(xiāo)經(jīng)理
賽靈思公司
濾波器相關(guān)文章:濾波器原理
fpga相關(guān)文章:fpga是什么
濾波器相關(guān)文章:濾波器原理
存儲器相關(guān)文章:存儲器原理
電容屏相關(guān)文章:電容屏原理
評論