本系列文章主要介紹 FPGA 的基本歷史、基本結(jié)構(gòu)、應(yīng)用領(lǐng)域及其最新進(jìn)展,從FPGA與 ASIC、CPLD的區(qū)別,Altera與Xilinx的區(qū)別,Verilog與VHDL等方面對(duì)FPGA 進(jìn)行簡(jiǎn)要介紹,使初學(xué)者對(duì) FPGA 能夠有基本的了解。
1. FPGA
FPGA 是在 PAL、GAL、CPLD 等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專(zhuān)用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)。它是當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)的主要硬件平臺(tái),主要特點(diǎn)是完全由用戶(hù)通過(guò)軟件進(jìn)行配置和編程,從而完成某種特定的功能,且可反復(fù)擦寫(xiě)。在修改和升級(jí)時(shí),不需要額外改變 PCB 電路板,只是在計(jì)算機(jī)上修改和更新程序,使硬件設(shè)計(jì)工作成為軟件開(kāi)發(fā)工作,縮短系統(tǒng)設(shè)計(jì)的周期,提高實(shí)現(xiàn)的靈活性并降低成本。
FPGA 的特點(diǎn):加電時(shí),F(xiàn)PGA 芯片將 EPROM 中的數(shù)據(jù)讀入片內(nèi)編程 RAM 中,配置完成后,F(xiàn)PGA 進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA 恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA 能夠反復(fù)使用。
理論上,F(xiàn)PGA 允許無(wú)限次的編程。
FPGA 的編程無(wú)須專(zhuān)用的 FPGA 編程器,只需用通用的 EPROM、PROM 編程器即可。FPGA內(nèi)部有豐富的觸發(fā)器和 I/O 引腳,能夠快速成品,不需要用戶(hù)介入芯片的布局布線和工藝問(wèn)題,而且可以隨時(shí)改變邏輯功能,使用靈活。
2. ASIC
ASIC 是應(yīng)特定用戶(hù)要求和特定電子系統(tǒng)的需要而設(shè)計(jì)、制造的集成電路。用一句話(huà)總結(jié)就是市場(chǎng)上買(mǎi)不到的芯片。蘋(píng)果的 A 系列處理器就是典型的 ASIC。
ASIC 是定制的,具體分為全定制和半定制。
ASIC 的特點(diǎn):面向特定用戶(hù)的需求,量身定制,執(zhí)行速度較快。ASIC 在批量生產(chǎn)時(shí)與通用集成電路相比具有體積小、功耗低、可靠性高、性能高、保密性強(qiáng)、成本低等優(yōu)點(diǎn)。ASIC 需要較長(zhǎng)的開(kāi)發(fā)周期,風(fēng)險(xiǎn)較大,一旦有問(wèn)題,就會(huì)導(dǎo)致成片全部作廢,所以小公司已經(jīng)玩不起了。
近年來(lái)人工智能受到的關(guān)注越來(lái)越多,許多公司正在積極開(kāi)發(fā)能實(shí)現(xiàn)移動(dòng)端人工智能的硬件,尤其是能夠結(jié)合未來(lái)的物聯(lián)網(wǎng)應(yīng)用。移動(dòng)端人工智能的實(shí)現(xiàn)方法有兩大流派:FPGA 流派和 ASIC流派。FPGA 流派的代表有 Xilinx 主推的 Zynq 平臺(tái),而 ASIC 流派的代表有 Movidius。下面來(lái)分析 FPGA 與 ASIC 的具體區(qū)別在哪里。
3. FPGA 和 ASIC 的區(qū)別
(1)設(shè)計(jì)流程
FPGA:完整的 FPGA 設(shè)計(jì)流程包括功能描述、電路設(shè)計(jì)與輸入、功能仿真、綜合優(yōu)化、綜合后仿真、實(shí)現(xiàn)與布局布線、時(shí)序仿真、板級(jí)仿真與驗(yàn)證、調(diào)試與加載配置。
ASIC:ASIC 的設(shè)計(jì)流程(數(shù)字芯片)包括功能描述、模塊劃分、模塊編碼輸入、模塊級(jí)仿真驗(yàn)證、系統(tǒng)集成和系統(tǒng)仿真驗(yàn)證、綜合、STA(靜態(tài)時(shí)序分析)、形式驗(yàn)證。
從設(shè)計(jì)成本來(lái)考慮:小批量時(shí),F(xiàn)PGA 占優(yōu);大批量時(shí),ASIC 占優(yōu)。
FPGA 本身就是一個(gè)芯片,只是我們可以通過(guò)編程的方式修改內(nèi)部邏輯連接和配置實(shí)現(xiàn)自己想要的功能。實(shí)現(xiàn) ASIC 就如從一張白紙開(kāi)始,必須得有代碼,之后綜合,然后布局、布線,最后得到 GDSII(一種時(shí)序提供格式)后去流片。
(2)速度
相同的工藝和設(shè)計(jì),在 FPGA 上的速度應(yīng)該比 ASIC 慢。因?yàn)?FPGA 內(nèi)部基于通用的結(jié)構(gòu),也就是 LUT(Look Up Table),可以實(shí)現(xiàn)加法器、組合邏輯等。而 ASIC,一般加法器就是加法器,比較器就是比較器,F(xiàn)PGA 結(jié)構(gòu)上的通用性必然導(dǎo)致冗余。另外,F(xiàn)PGA 的基本單元是 LUT(LUT 組成 Slice,Slice 組成 CLB,這是 Xilinx 的結(jié)構(gòu)),為此,大的設(shè)計(jì)假如一個(gè) LUT 實(shí)現(xiàn)不了,就得用兩個(gè) LUT,一個(gè) Slice 實(shí)現(xiàn)不了,就要用 CLB,不同結(jié)構(gòu)處于特定的位置,信號(hào)之間的互聯(lián)導(dǎo)致的 wire delay 是不可忽略的一部分。而對(duì)于 ASIC 來(lái)說(shuō)沒(méi)有結(jié)構(gòu)上的限制,而且對(duì)于特定的線路布局來(lái)說(shuō)可以在空間上靠得很近,相對(duì)來(lái)說(shuō) wire delay 和 cell delay 都應(yīng)該比FPGA 小。當(dāng)然,LUT 中也有 DFF,作為高速的設(shè)計(jì),一般都會(huì)在一個(gè)簡(jiǎn)單的組合邏輯操作之 后打一拍,再做下一步的處理。
(3)體積
如果結(jié)構(gòu)完全相同,那么 FPGA 會(huì)被 ASIC 遠(yuǎn)遠(yuǎn)踢飛。FPGA 要規(guī)模大得多才能實(shí)現(xiàn) ASIC相同的功能,主頻還只有幾分之一。
(4)功耗
在相同工藝條件下,F(xiàn)PGA 的功耗要大于 ASIC。尤其是基于占用大量硅面積的、每個(gè)單元6 個(gè)晶體管的靜態(tài)存儲(chǔ)器(SRAM)的查尋表(LUT)和配置元件技術(shù)的 FPGA,其功耗要比對(duì)等的 ASIC 大得多。
(5)成本
FPGA 貴在單片,開(kāi)發(fā)工具費(fèi)用和硬件損耗風(fēng)險(xiǎn)基本不存在。ASIC 貴在流片的費(fèi)用和開(kāi)發(fā)工具。NRE(Non-Recurring Engineering,一次性工程)費(fèi)用隨著工藝的提高變得相當(dāng)貴,除非芯片一次成功后即可量產(chǎn),否則單片費(fèi)用將奇貴無(wú)比!
(6)其他方面
ASIC 用于大型項(xiàng)目,而對(duì)于需要快速投放市場(chǎng)且支持遠(yuǎn)程升級(jí)的小型項(xiàng)目,F(xiàn)PGA 則更為適合。FPGA 技術(shù)的主要優(yōu)勢(shì)仍是產(chǎn)品投放市場(chǎng)的時(shí)間較短。
ASIC 的優(yōu)勢(shì)在于加電后可立即運(yùn)行,就單位邏輯大小而言,封裝選擇更多,還可以包括某些模擬邏輯。與此相對(duì)比,F(xiàn)PGA 加載配置進(jìn)入存儲(chǔ)器需要時(shí)間,因此不能立即工作。此外,F(xiàn)PGA的封裝也較復(fù)雜。
FPGA 內(nèi)部還包括接口 I/O。I/O 分為普通 I/O 和高速 I/O。高速 I/O 支持高速的 SERDES 等,用于實(shí)現(xiàn) XAUI、PCI-e 等高速接口,這些接口動(dòng)輒幾 Gbps。此外,種類(lèi)多種多樣的硬核 IP 也是各 FPGA 廠商差異化競(jìng)爭(zhēng)的利器,例如 POWERPC、ARM 等硬核 IP,從而構(gòu)成 CPU+FPGA于一體的集可編程性和可重構(gòu)的處理平臺(tái)。
(7)兩者的定位
FPGA 和 ASIC 產(chǎn)品的使用要根據(jù)產(chǎn)品的定位和設(shè)計(jì)需要來(lái)選擇。ASIC 產(chǎn)品適用于設(shè)計(jì)規(guī)模特別大(如 CPU、DSP 或多層交換芯片等)或者應(yīng)用于技術(shù)非常成熟且利潤(rùn)率非常低的產(chǎn)品(如家用電器和其他消費(fèi)類(lèi)電器)以及大量應(yīng)用的通用器件(如 RAM、PHY 等)。FPGA 產(chǎn)品適用于設(shè)計(jì)規(guī)模適中、產(chǎn)品要求快速占領(lǐng)市場(chǎng)或產(chǎn)品需要靈活變動(dòng)的特性設(shè)計(jì)等方面的產(chǎn)品,如 PDH、2.5GB 以下的 SDH 設(shè)備和大部分的接口轉(zhuǎn)換芯片等。當(dāng)然,具體選擇哪種產(chǎn)品來(lái)設(shè)計(jì)還要設(shè)計(jì)者充分考慮自己的產(chǎn)品定位來(lái)決定。
(8)兩者在互相融合
最明顯的莫過(guò)于處理器中開(kāi)始集成 FPGA,而可編程的 ASIC 也開(kāi)始興起。隨著 SoC(系統(tǒng)級(jí)芯片或系統(tǒng))成為主流,兩者的邊界也就不那么明顯了。
4、總結(jié)
總的來(lái)說(shuō),就如同 GPU和 CPU 一樣:GPU 可以非??焖俚靥幚韴D像,但是要處理其他的東西,GPU 則有些困難。CPU 能處理很多的運(yùn)算,也能處理圖像,只是慢而已。一旦你是沖著某個(gè)目的去的(ASIC),最快速的實(shí)現(xiàn)方式就可以。如果想要多方面兼顧(FPGA),就不可能在每一個(gè)方面都做到最好。在使用時(shí),你必須權(quán)衡利弊。
審核編輯 :李倩
-
FPGA
+關(guān)注
關(guān)注
1629文章
21744瀏覽量
603666 -
asic
+關(guān)注
關(guān)注
34文章
1200瀏覽量
120517 -
人工智能
+關(guān)注
關(guān)注
1791文章
47314瀏覽量
238656
原文標(biāo)題:FPGA與ASIC:八大維度全方位對(duì)比
文章出處:【微信號(hào):AI_Architect,微信公眾號(hào):智能計(jì)算芯世界】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論