近來,Altera公司推出業界首款浮點FPGA,它集成了硬核IEEE 754兼容浮點運算功能,提高了DSP性能、設計人員的效能和邏輯效率。據悉,硬核浮點DSP模塊集成在Altera 20nm Arria 10 FPGA和SoC中,以及14nm Stratix 10 FPGA和SoC中。該新功能支持設計人員以相同的定點性能和效率在浮點中實現其算法,且不會對功耗、面積或者密度產生任何影響,也不會損失定點特性或功能。用戶可以使用Altera的FPGA和SoC來滿足大計算量應用需求,例如應用在高性能計算(HPC)、雷達、科學和醫療成像等領域。 精度可調DSP體系結構 “出色的性能歸功于我們創新的精度可調DSP體系結構(圖)。”Altera公司首席DSP產品規劃經理Michael Parker表示,“該技術在每一DSP模塊中包含了一個高精度加法器和單精度乘法器。這些硬核DSP模塊中內置了數千個浮點運算器,在20nm系列中,Arria 10 FPGA性能從140 GigaFLOPS(GFLOPS)提升至1.5 TeraFLOPS(TFLOPS);Altera的14nm Stratix 10 FPGA系列將使用相同的體系結構,性能擴展到10 TFLOPS。這是單個器件有史以來最高的性能指標。” 圖:具有硬核浮點DSP模塊的首款FPGA。 該浮點計算單元與現有精度可調定點模式實現了無縫集成。設計人員可以在其設計中使用所有定點DSP處理特性,還可以根據需要將全部設計或者部分設計更新到單精度浮點。IEEE 754浮點所有復數都位于DSP模塊的硬核邏輯中,不占用可編程邏輯,即使是100%使用了DSP模塊,浮點也支持定點設計中相似的時鐘速率。 大幅縮短開發時間 Michael Parker稱,自然支持浮點功能對于設計人員在FPGA中實現復雜的高性能算法非常重要。構建系統之前,在浮點中完成所有算法開發和仿真。完成算法后,通常還需要6~12個月的時間在定點實現中進行分析、轉換并驗證浮點算法。這一過程需要克服以下三個問題:(1)必須手動將浮點設計轉換為定點,這需要工程師非常有經驗,而且其實現的精度沒有仿真高;(2)如果以后對算法進行任何修改,還需要再次進行手動轉換,而且優化系統中定點算法的任何步驟都不會反映在仿真中;(3)如果系統集成和測試過程中出現問題,要隔離問題會非常困難。 使用Altera浮點FPGA能夠幫助設計人員克服上述問題,它們可以將DSP設計直接轉譯成浮點硬件,而不是轉換為定點,從而大幅縮短了時序收斂和驗證時間。相比之前的系列,硬核浮點DSP模塊能夠縮短近12個月的開發時間。 將與GPGPU展開競爭 據Altera方面透露,與Altera浮點FPGA競爭的并非FPGA,而是GPGPU(General Purpose GPU,即通用圖形處理單元,它不是簡單的圖形引擎,而是通用計算加速器)。Michael Parker表示,這是因為其他FPGA供應商提供的“軟核”浮點使用邏輯來實現復數浮點電路的效率不高,還不具競爭力。 FPGA和GPGPU都可以使用OpenCL進行設計,但它們在算法實現上有很大的不同。GPGPU使用并行處理器體系結構,并行運行數千個浮點乘加小單元。算法被分成數萬個線程,數據準備好后,映射到計算單元中。 Altera浮點FPGA在高性能計算方面具有突出優勢。首先,由于其流水線邏輯體系結構,數據流的處理延時要比GPGPU低得多;其次,FPGA的GFLOPS/W性能要優于GPGPU,這也意味著對于所要求的功率預算,FPGA完成的計算量一般要多于GPGPU;第三,FPGA具有很好的通用性和廣泛的連通性,能夠直接放在數據通路中處理通過的數據。Altera還專門增加了數據流至其OpenCL工具的選項,以符合OpenCL供應商的擴展要求。 Altera公司軟件和DSP產品市場經理Albert Chang介紹,2014年下半年,Altera將提供面向Arria 10器件中硬核浮點DSP模塊的浮點設計流程,包括演示和基準測試。在此之前,用戶可以采用Arria 10 FPGA開始設計,使用軟件浮點技術來實現浮點功能,在得到設計流程支持后,軟件工具會自動(一次重新編譯)將浮點算法無縫映射到硬核浮點運算中,而不必使用軟核邏輯。 |