Altera FGPA首推硬核浮點(diǎn)DSP 縮短設(shè)計(jì)開發(fā)流程
DSP,也稱數(shù)字信號(hào)處理器,是一種特別適合于進(jìn)行數(shù)字信號(hào)處理運(yùn)算的微處理器,其主要應(yīng)用是實(shí)時(shí)快速地實(shí)現(xiàn)各種數(shù)字信號(hào)處理算法。為了滿足數(shù)據(jù)中心、天氣、雷達(dá)等實(shí)時(shí)運(yùn)算處理,FPGA中集成DSP非常普遍。傳統(tǒng)的方法是使用定點(diǎn)乘法器和FPGA邏輯來(lái)實(shí)現(xiàn)浮點(diǎn)功能,不僅耗費(fèi)大量FPGA的資源,還由于時(shí)序瓶頸,導(dǎo)致DSP性能受限,而且由于驗(yàn)證需要大量時(shí)間,使得產(chǎn)品的開發(fā)周期大大延長(zhǎng)。
首席DSP產(chǎn)品規(guī)劃經(jīng)理Michael Parker
Altera獨(dú)辟蹊徑,首次在FPGA中集成了硬核IEEE 754兼容浮點(diǎn)運(yùn)算功能的DSP。“這釋放了FPGA邏輯模塊,極大的提高了設(shè)計(jì)人員的效能,和傳統(tǒng)FPGA相比,產(chǎn)品上市時(shí)間可以縮短6—12個(gè)月。” Altera首席DSP產(chǎn)品規(guī)劃經(jīng)理Michael Parker告訴21ic記者。
集成硬核DSP后的優(yōu)勢(shì)
硬核浮點(diǎn)DSP模塊集成在正在發(fā)售的Altera 20 nm Arria 10 FPGA和SoC中,也集成在14 nm Stratix 10 FPGA和SoC中。集成硬核浮點(diǎn)DSP模塊結(jié)合先進(jìn)的高級(jí)工具流程,客戶可以使用Altera的FPGA和SoC來(lái)滿足越來(lái)越高的大計(jì)算量應(yīng)用需求,例如高性能計(jì)算 (HPC)、雷達(dá)、科學(xué)和醫(yī)療成像等。
通過(guò)在FPGA中集成硬核DSP模塊,可以大幅提升FPGA每瓦效能,同時(shí)可以在一定程度上替代GPU、CPU。
Michael Parker表示:“FPGA的特點(diǎn)就是功耗低,然后又增加了硬核浮點(diǎn)運(yùn)算的能力。它每瓦的功耗,或者是每個(gè)槽的功耗都是比較低的。我覺(jué)得FPGA未來(lái)肯定會(huì)取代很多高端的DSP處理器。然后,它也可以取代一些GPU,因?yàn)樗诠姆矫?,在時(shí)延方面,在連接到網(wǎng)絡(luò)的便利性方面,它都擁有優(yōu)勢(shì)。另外的話,F(xiàn)PGA被設(shè)計(jì)為可以在高溫下工作。對(duì)于軟件編程人員來(lái)說(shuō)也是一個(gè)福音,就是使用了我們的軟件以后,他可以更傾向于使用這種浮點(diǎn)的,不傾向于用定點(diǎn)的?,F(xiàn)在有了這些工具以后對(duì)他們來(lái)說(shuō)也是很大的好處。”
硬核浮點(diǎn)DSP模塊集成在正在發(fā)售的Altera 20 nm Arria 10 FPGA和SoC中,也集成在14 nm Stratix 10 FPGA和SoC中。含在Arria 10和Stratix 10器件中的硬核單精度浮點(diǎn)DSP模塊基于Altera創(chuàng)新的精度可調(diào)DSP體系結(jié)構(gòu)。傳統(tǒng)的方法使用定點(diǎn)乘法器和FPGA邏輯來(lái)實(shí)現(xiàn)浮點(diǎn)功能,而Altera的硬核浮點(diǎn)DSP與此不同,幾乎不使用現(xiàn)有FPGA浮點(diǎn)計(jì)算所需要的邏輯資源,從而提高了資源效率。這一革命性的技術(shù)支持Altera在Arria 10器件中實(shí)現(xiàn)1.5 TeraFLOP (每秒浮點(diǎn)運(yùn)算次數(shù))的DSP性能,而在Stratix 10器件中DSP性能則高達(dá)10 TeraFLOP。DSP設(shè)計(jì)人員可以選擇定點(diǎn)或者浮點(diǎn)模式,浮點(diǎn)模塊與現(xiàn)有設(shè)計(jì)后向兼容。
這一浮點(diǎn)計(jì)算單元包括了乘法器和加法器,與現(xiàn)有精度可調(diào)定點(diǎn)模式實(shí)現(xiàn)了無(wú)縫集成。這提供了1:1的浮點(diǎn)乘法器和加法器,可以獨(dú)立用作乘加器或者乘法累加器。設(shè)計(jì)人員仍然可以在其當(dāng)前設(shè)計(jì)中使用所有定點(diǎn)DSP處理特性,基于優(yōu)異的數(shù)字保真和動(dòng)態(tài)范圍,根據(jù)需要很容易將全部設(shè)計(jì)或者部分設(shè)計(jì)更新到單精度浮點(diǎn)。IEEE 754浮點(diǎn)所有復(fù)數(shù)都位于DSP模塊的硬核邏輯中,因此,不會(huì)占用可編程邏輯,即使是100%的使用了DSP模塊,浮點(diǎn)也支持定點(diǎn)設(shè)計(jì)中相似的時(shí)鐘速率。
為了方便工程師進(jìn)行開發(fā)設(shè)計(jì),Altera也提供了很多工具支持。
Michael Parker介紹說(shuō):“設(shè)計(jì)人員可以在各種設(shè)計(jì)流程中使用浮點(diǎn)FPGA特性。例如,硬件設(shè)計(jì)人員可能只需要一些浮點(diǎn)算術(shù)函數(shù)或者FFT內(nèi)核,這可以使用目前就有的Altera MegaCore功能。對(duì)于硬件或者系統(tǒng)工程師,Altera還提供基于模型的流程,使用了其DSP Builder高級(jí)模塊庫(kù),以及來(lái)自MathWorks的MATLAB和Simulink工具。這一工具流程支持工程師完全在MathWork環(huán)境中進(jìn)行設(shè)計(jì)、仿真并實(shí)現(xiàn),自然支持線性代數(shù)應(yīng)用的矢量需求。同時(shí),對(duì)于GPU設(shè)計(jì)人員,正如前面所提到的,OpenCL可以訪問(wèn)FPGA,這不需要非常熟悉FPGA體系結(jié)構(gòu)。
目前可以提供所有這些工具流程,支持大部分Altera FPGA系列。使用Altera的Quartus II軟件14.1版,面向Arria 10 FPGA進(jìn)行重新編譯,無(wú)縫映射到硬核浮點(diǎn)DSP模塊中,充分發(fā)揮了自然浮點(diǎn)FPGA的巨大優(yōu)勢(shì)。”