FPGA概述
FPGA(可編程門陣列,F(xiàn)ield Programmable Gate Array)是一種集成大量基本門電路及存儲器的芯片,可通過燒入FPGA配置文件來來定義這些門電路及存儲器間的連線,從而實現(xiàn)特定的功能。而且燒入的內(nèi)容是可配置的,通過配置特定的文件可將FPGA轉變?yōu)椴煌?a target="_blank">處理器,就如一塊可重復刷寫的白板一樣。因此FPGA可靈活支持各類深度學習的計算任務,性能上根據(jù)百度的一項研究顯示,對于大量的矩陣運算GPU遠好于FPGA,但是當處理小計算量大批次的實際計算時FPGA性能優(yōu)于GPU,另外FPGA有低延遲的特點,非常適合在推斷環(huán)節(jié)支撐海量的用戶實時計算請求(如語音云識別)。
FPGA優(yōu)勢
快速上市時間:現(xiàn)成的完整的標準IP套件可以縮短上市時間,使您能夠率先解占領最新的市場趨勢。
高性能:采用最新的硅工藝節(jié)點,和收發(fā)器、存儲器、核心處理技術和設計工具等領域的行業(yè)突破性進展相結合。
靈活性:高度的靈活性適應快速的設計變化,使您能夠快速響應動態(tài)的市場趨勢,不斷開發(fā)的標準和快速發(fā)展的基礎設施。
可定制的解決方案:可定制的解決方案允許您使用自己專有的IP來區(qū)分產(chǎn)品。
規(guī)模和規(guī)范:可伸縮的核心、I/O性能、內(nèi)存和電源需求,以及不同產(chǎn)品系列之間連同產(chǎn)品線和相鄰應用程序在單一平臺上的標準化,減少了計劃和過時的風險。
長產(chǎn)品生命周期:在非常長的系統(tǒng)部署期間,安全性、質量和可靠性將成為系統(tǒng)設計的要求。
FPGA和GPU各方面對比
FPGA和GPU內(nèi)都有大量的計算單元,因此它們的計算能力都很強。在進行神經(jīng)網(wǎng)絡運算的時候,兩者的速度會比CPU快很多。但是GPU由于架構固定,硬件原生支持的指令也就固定了,而FPGA則是可編程的。其可編程性是關鍵,因為它讓軟件與終端應用公司能夠提供與其競爭對手不同的解決方案,并且能夠靈活地針對自己所用的算法修改電路。
在平均性能方面,GPU遜于FPGA,F(xiàn)PGA可以根據(jù)特定的應用去編程硬件,例如如果應用里面的加法運算非常多就可以把大量的邏輯資源去實現(xiàn)加法器,而GPU一旦設計完就不能改動了,所以不能根據(jù)應用去調整硬件資源。
目前機器學習大多使用SIMD架構,即只需一條指令可以平行處理大量數(shù)據(jù),因此用GPU很適合。但是有些應用是MISD,即單一數(shù)據(jù)需要用許多條指令平行處理,這種情況下用FPGA做一個MISD的架構就會比GPU有優(yōu)勢。 所以,對于平均性能,看的就是FPGA加速器架構上的優(yōu)勢是否能彌補運行速度上的劣勢。如果FPGA上的架構優(yōu)化可以帶來相比GPU架構兩到三個數(shù)量級的優(yōu)勢,那么FPGA在平均性能上會好于GPU。
在功耗能效比方面,同樣由于FPGA的靈活性,在架構優(yōu)化到很好時,一塊FPGA的平均性能能夠接近一塊GPU,那么FPGA方案的總功耗遠小于GPU,散熱問題可以大大減輕。 能效比的比較也是類似,能效指的是完成程序執(zhí)行消耗的能量,而能量消耗等于功耗乘以程序的執(zhí)行時間。雖然GPU的功耗遠大于FPGA的功耗,但是如果FPGA執(zhí)行相同程序需要的時間比GPU長幾十倍,那FPGA在能效比上就沒有優(yōu)勢了;反之如果FPGA上實現(xiàn)的硬件架構優(yōu)化得很適合特定的機器學習應用,執(zhí)行算法所需的時間僅僅是GPU的幾倍或甚至于接近GPU,那么FPGA的能效比就會比GPU強。
另外,F(xiàn)PGA的靈活性,很多使用通用處理器或ASIC難以實現(xiàn)的下層硬件控制操作技術利用FPGA可以很方便的實現(xiàn),從而為算法的功能實現(xiàn)和優(yōu)化留出了更大空間。同時FPGA一次性成本(光刻掩模制作成本)遠低于ASIC,在芯片需求還未成規(guī)模、深度學習算法暫未穩(wěn)定需要不斷迭代改進的情況下,利用具備可重構特性的FPGA芯片來實現(xiàn)半定制的人工智能芯片是最佳選擇。
FPGA主要的應用領域
一、數(shù)據(jù)采集和接口邏輯領域
1.FPGA在數(shù)據(jù)采集領域的應用
由于自然界的信號大部分是模擬信號,因此一般的信號處理系統(tǒng)中都要包括數(shù)據(jù)的采集功能。通常的實現(xiàn)方法是利用A/D轉換器將模擬信號轉換為數(shù)字信號后,送給處理器,比如利用單片機(MCU)或者數(shù)字信號處理器(DSP)進行運算和處理。
對于低速的A/D和D/A轉換器,可以采用標準的SPI接口來與MCU或者DSP通信。但是,高速的A/D和D/A轉換芯片,比如視頻Decoder或者Encoder,不能與通用的MCU或者DSP直接接口。在這種場合下,F(xiàn)PGA可以完成數(shù)據(jù)采集的粘合邏輯功能。
2.FPGA在邏輯接口領域的應用
在實際的產(chǎn)品設計中,很多情況下需要與PC機進行數(shù)據(jù)通信。比如,將采集到的數(shù)據(jù)送給PC機處理,或者將處理后的結果傳給PC機進行顯示等。PC機與外部系統(tǒng)通信的接口比較豐富,如ISA、PCI、PCIExpress、PS/2、USB等。
傳統(tǒng)的設計中往往需要專用的接口芯片,比如PCI接口芯片。如果需要的接口比較多,就需要較多的外圍芯片,體積、功耗都比較大。采用FPGA的方案后,接口邏輯都可以在FPGA內(nèi)部來實現(xiàn)了,大大簡化了外圍電路的設計。
在現(xiàn)代電子產(chǎn)品設計中,存儲器得到了廣泛的應用,例如SDRAM、SRAM、Flash等。這些存儲器都有各自的特點和用途,合理地選擇儲存器類型可以實現(xiàn)產(chǎn)品的最佳性價比。由于FPGA的功能可以完全自己設計,因此可以實現(xiàn)各種存儲接口的控制器。
3.FPGA在電平接口領域的應用
除了TTL、COMS接口電平之外,LVDS、HSTL、GTL/GTL+、SSTL等新的電平標準逐漸被很多電子產(chǎn)品采用。比如,液晶屏驅動接口一般都是LVDS接口,數(shù)字I/O一般是LVTTL電平,DDRSDRAM電平一般是HSTL的。
在這樣的混合電平環(huán)境里面,如果用傳統(tǒng)的電平轉換器件實現(xiàn)接口會導致電路復雜性提高。利用FPGA支持多電平共存的特性,可以大大簡化設計方案,降低設計風險。
二、高性能數(shù)字信號處理領域
無線通信、軟件無線電、高清影像編輯和處理等領域,對信號處理所需要的計算量提出了極高的要求。傳統(tǒng)的解決方案一般是采用多片DSP并聯(lián)構成多處理器系統(tǒng)來滿足需求。
但是多處理器系統(tǒng)帶來的主要問題是設計復雜度和系統(tǒng)功耗都大幅度提升,系統(tǒng)穩(wěn)定性受到影響。FPGA支持并行計算,而且密度和性能都在不斷提高,已經(jīng)可以在很多領域替代傳統(tǒng)的多DSP解決方案。
例如,實現(xiàn)高清視頻編碼算法H.264。采用TI公司1GHz主頻的DSP芯片需要4顆芯片,而采用Altera的StratixIIEP2S130芯片只需要一顆就可以完成相同的任務。FPGA的實現(xiàn)流程和ASIC芯片的前端設計相似,有利于導入芯片的后端設計。
三、其他應用領域
除了上面一些應用領域外,F(xiàn)PGA在其他領域同樣具有廣泛的應用。 (1)汽車電子領域,如網(wǎng)關控制器/車用PC機、遠程信息處理系統(tǒng)。 (2)軍事領域,如安全通信、雷達和聲納、電子戰(zhàn)。 (3)測試和測量領域,如通信測試和監(jiān)測、半導體自動測試設備、通用儀表。 (4)消費產(chǎn)品領域,如顯示器|、投影儀、數(shù)字電視和機頂盒、家庭網(wǎng)絡。 (5)醫(yī)療領域,如軟件無線電、電療|、生命科學。
FPGA市場前景
隨著科技的進展,制造業(yè)走向更高度的自動化與智能化,對工業(yè)控制技術等領域不斷產(chǎn)生新的需求,在未來的工業(yè)制造領域,F(xiàn)PGA將有更大的發(fā)展空間。目前來看,有兩個領域的應用前景十分巨大:
工業(yè)互聯(lián)網(wǎng)領域
作為未來制造業(yè)發(fā)展的方向,工業(yè)大數(shù)據(jù)、云計算平臺、MES系統(tǒng)等都是支持工業(yè)智能化的重要平臺,它們需要完成大數(shù)據(jù)量的復雜處理,F(xiàn)PGA在其中可以發(fā)揮重要作用。
工業(yè)機器人設備領域
在多軸向運作的精密控制、實時同步的連接以及設備多功能整合等方面,兼具彈性和整合性的FPGA,更能展現(xiàn)設計優(yōu)勢。如汽車ADAS需要對實時高清圖像進行及時的分析識別與處理;在人工智能方面,深度學習神經(jīng)網(wǎng)絡也需要進行大量并行運算。
-
FPGA
+關注
關注
1626文章
21667瀏覽量
601863 -
gpu
+關注
關注
28文章
4701瀏覽量
128707
發(fā)布評論請先 登錄
相關推薦
評論