FPGA(Field-Programmable Gate Array),即現(xiàn)場(chǎng)可編程門(mén)陣列,它是在PAL、GAL、CPLD等可編程邏輯器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專(zhuān)用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)。
1.背景
目前以硬件描述語(yǔ)言(Verilog 或VHDL)所完成的電路設(shè)計(jì),可以經(jīng)過(guò)簡(jiǎn)單的綜合與布局,快速的燒錄至FPGA上進(jìn)行測(cè)試,是現(xiàn)代IC設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來(lái)實(shí)現(xiàn)一些基本的邏輯門(mén)電路(比如AND、OR、XOR、NOT)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。在大多數(shù)的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(Flip-flop)或者其他更加完整的記憶塊。
系統(tǒng)設(shè)計(jì)師可以根據(jù)需要通過(guò)可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來(lái),就好像一個(gè)電路試驗(yàn)板被放在了一個(gè)芯片里。一個(gè)出廠(chǎng)后的成品FPGA的邏輯塊和連接可以按照設(shè)計(jì)者而改變,所以FPGA可以完成所需要的邏輯功能。
FPGA一般來(lái)說(shuō)比ASIC(專(zhuān)用集成芯片)的速度要慢,無(wú)法完成復(fù)雜的設(shè)計(jì),而且消耗更多的電能。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來(lái)改正程序中的錯(cuò)誤和更便宜的造價(jià)。廠(chǎng)商也可能會(huì)提供便宜的但是編輯能力差的FPGA。因?yàn)檫@些芯片有比較差的可編輯能力,所以這些設(shè)計(jì)的開(kāi)發(fā)是在普通的FPGA上完成的,然后將設(shè)計(jì)轉(zhuǎn)移到一個(gè)類(lèi)似于A(yíng)SIC的芯片上。另外一種方法是用CPLD(復(fù)雜可編程邏輯器件備)。
FPGA
2.工作原理
FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(xiàn)(Interconnect)三個(gè)部分。 現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)是可編程器件。與傳統(tǒng)邏輯電路和門(mén)陣列(如PAL,GAL及CPLD器件)相比,F(xiàn)PGA具有不同的結(jié)構(gòu),F(xiàn)PGA利用小型查找表(16×1RAM)來(lái)實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來(lái)驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了即可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線(xiàn)互相連接或連接到I/O模塊。FPGA的邏輯是通過(guò)向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來(lái)實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能, FPGA允許無(wú)限次的編程。
邏輯單元陣列
3.優(yōu)缺點(diǎn)
3.1優(yōu)點(diǎn)
FPGA的優(yōu)點(diǎn)如下:
(1) FPGA可通過(guò)使用框圖或者Verilog HDL來(lái)設(shè)計(jì),從簡(jiǎn)單的門(mén)電路到FIR或者FFT電路。
(2) FPGA可無(wú)限地重新編程,加載一個(gè)新的設(shè)計(jì)方案只需幾百毫秒,利用重配置可以減少硬件的開(kāi)銷(xiāo)。
(3) FPGA由邏輯單元、RAM、乘法器等硬件資源組成,通過(guò)將這些硬件資源合理組織,可實(shí)現(xiàn)乘法器、寄存器、地址發(fā)生器等硬件電路。
(4) FPGA的工作頻率由FPGA芯片以及設(shè)計(jì)決定,可以通過(guò)修改設(shè)計(jì)或者更換更快的芯片來(lái)達(dá)到某些苛刻的要求(當(dāng)然,工作頻率也不是無(wú)限制的可以提高,而是受當(dāng)前的IC工藝等因素制約)。
3.2缺點(diǎn)
FPGA的缺點(diǎn)如下:
(1) FPGA的所有功能均依靠硬件實(shí)現(xiàn),無(wú)法實(shí)現(xiàn)分支條件跳轉(zhuǎn)等操作。
(2) FPGA只能實(shí)現(xiàn)定點(diǎn)運(yùn)算。
4.應(yīng)用
4.1電路設(shè)計(jì)
連接邏輯,控制邏輯是FPGA早期發(fā)揮作用比較大的領(lǐng)域也是FPGA應(yīng)用的基石.事實(shí)上在電路設(shè)計(jì)中應(yīng)用FPGA的難度還是比較大的這要求開(kāi)發(fā)者要具備相應(yīng)的硬件知識(shí)(電路知識(shí))和軟件應(yīng)用能力(開(kāi)發(fā)工具)這方面的人才總是緊缺的,往往都從事新技術(shù),新產(chǎn)品的開(kāi)發(fā)成功的產(chǎn)品將變成市場(chǎng)主流基礎(chǔ)產(chǎn)品供產(chǎn)品設(shè)計(jì)者應(yīng)用在不遠(yuǎn)的將來(lái),通用和專(zhuān)用IP的設(shè)計(jì)將成為一個(gè)熱門(mén)行業(yè)!搞電路設(shè)計(jì)的前提是必須要具備一定的硬件知識(shí).在這個(gè)層面,干重于學(xué),當(dāng)然,快速入門(mén)是很重要的,越好的位子越不等人電路開(kāi)發(fā)是黃金飯碗。
FPGA芯片
4.2產(chǎn)品設(shè)計(jì)
把相對(duì)成熟的技術(shù)應(yīng)用到某些特定領(lǐng)域如通訊,視頻,信息處理等等開(kāi)發(fā)出滿(mǎn)足行業(yè)需要并能被行業(yè)客戶(hù)接受的產(chǎn)品這方面主要是FPGA技術(shù)和專(zhuān)業(yè)技術(shù)的結(jié)合問(wèn)題,另外還有就是與專(zhuān)業(yè)客戶(hù)的界面問(wèn)題產(chǎn)品設(shè)計(jì)還包括專(zhuān)業(yè)工具類(lèi)產(chǎn)品及民用產(chǎn)品,前者重點(diǎn)在性能,后者對(duì)價(jià)格敏感產(chǎn)品設(shè)計(jì)以實(shí)現(xiàn)產(chǎn)品功能為主要目的,F(xiàn)PGA技術(shù)是一個(gè)實(shí)現(xiàn)手段在這個(gè)領(lǐng)域,F(xiàn)PGA因?yàn)榫邆浣涌冢刂疲δ躀P,內(nèi)嵌CPU等特點(diǎn)有條件實(shí)現(xiàn)一個(gè)構(gòu)造簡(jiǎn)單,固化程度高,功能全面的系統(tǒng)產(chǎn)品設(shè)計(jì)將是FPGA技術(shù)應(yīng)用最廣大的市場(chǎng),具有極大的爆發(fā)性的需求空間產(chǎn)品設(shè)計(jì)對(duì)技術(shù)人員的要求比較高,路途也比較漫長(zhǎng)不過(guò)現(xiàn)在整個(gè)行業(yè)正處在組建“首發(fā)團(tuán)隊(duì)”的狀態(tài),只要加入,前途光明產(chǎn)品設(shè)計(jì)是一種職業(yè)發(fā)展方向定位,不是簡(jiǎn)單的愛(ài)好就能做到的!產(chǎn)品設(shè)計(jì)領(lǐng)域會(huì)造就大量的企業(yè)和企業(yè)家,是一個(gè)發(fā)展熱點(diǎn)和機(jī)遇。
4.3系統(tǒng)級(jí)
系統(tǒng)級(jí)的應(yīng)用是FPGA與傳統(tǒng)的計(jì)算機(jī)技術(shù)結(jié)合,實(shí)現(xiàn)一種FPGA版的計(jì)算機(jī)系統(tǒng)如用Xilinx V-4,V-5系列的FPGA,實(shí)現(xiàn)內(nèi)嵌POWER PC CPU,然后再配合各種外圍功能,實(shí)現(xiàn)一個(gè)基本環(huán)境,在這個(gè)平臺(tái)上跑LINUX等系統(tǒng),這個(gè)系統(tǒng)也就支持各種標(biāo)準(zhǔn)外設(shè)和功能接口(如圖象接口)了這對(duì)于快速構(gòu)成FPGA大型系統(tǒng)來(lái)講是很有幫助的。這種“山寨”味很濃的系統(tǒng)早期優(yōu)勢(shì)不一定很明顯,類(lèi)似ARM系統(tǒng)的境況但若能慢慢發(fā)揮出FPGA的優(yōu)勢(shì),逐漸實(shí)現(xiàn)一些特色系統(tǒng)也是一種發(fā)展方向。若在系統(tǒng)級(jí)應(yīng)用中,開(kāi)發(fā)人員不具備系統(tǒng)的擴(kuò)充開(kāi)發(fā)能力,只是搞搞編程是沒(méi)什么意義的,當(dāng)然設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)是另一種情況,搞系統(tǒng)級(jí)應(yīng)用看似起點(diǎn)高,但不具備深層開(kāi)發(fā)能力,很可能會(huì)變成愛(ài)好者,就如很多人會(huì)做網(wǎng)頁(yè)但不能稱(chēng)做會(huì)編程。類(lèi)似以上是幾點(diǎn)個(gè)人觀(guān)點(diǎn),希望能幫助想學(xué)FPGA但很茫然無(wú)措的人理一理思路。這是一個(gè)不錯(cuò)的行業(yè),有很好的個(gè)人成功機(jī)會(huì)。但也肯定是一個(gè)競(jìng)爭(zhēng)很激烈的行業(yè),關(guān)鍵看的就是速度和深度當(dāng)然還有市場(chǎng)適應(yīng)能力。
本文總結(jié)了FPGA的背景、工作原理、優(yōu)缺點(diǎn)以及應(yīng)用。總而言之,F(xiàn)PGA是依靠硬件來(lái)實(shí)現(xiàn)所有的功能,速度上可以和專(zhuān)用芯片相比,但設(shè)計(jì)的靈活度與通用處理器相比有很大的差距。
電話(huà):18923864027(同微信)
QQ:709211280
〈烜芯微/XXW〉專(zhuān)業(yè)制造二極管,三極管,MOS管,橋堆等,20年,工廠(chǎng)直銷(xiāo)省20%,上萬(wàn)家電路電器生產(chǎn)企業(yè)選用,專(zhuān)業(yè)的工程師幫您穩(wěn)定好每一批產(chǎn)品,如果您有遇到什么需要幫助解決的,可以直接聯(lián)系下方的聯(lián)系號(hào)碼或加QQ/微信,由我們的銷(xiāo)售經(jīng)理給您精準(zhǔn)的報(bào)價(jià)以及產(chǎn)品介紹