FPGA的發(fā)展歷史
PLD簡(jiǎn)介
在過(guò)去的十年中,可編程邏輯器件(PLD)市場(chǎng)不斷增長(zhǎng),對(duì)PLD的需求不斷增加。具有可編程特性且可編程的芯片稱為PLD。PLD也稱為現(xiàn)場(chǎng)可編程器件(FPD)。FPD用于實(shí)現(xiàn)數(shù)字邏輯,用戶可以配置集成電路以實(shí)現(xiàn)不同的設(shè)計(jì)。這種集成電路的編程是通過(guò)使用EDA工具進(jìn)行特殊編程來(lái)完成的。
市場(chǎng)上推出的第一個(gè)可編程芯片是可編程只讀存儲(chǔ)器(PROM)。PROM有許多地址線和數(shù)據(jù)線。地址線用作邏輯電路輸入,數(shù)據(jù)線用作邏輯電路輸出,因?yàn)镻ROM的結(jié)構(gòu)效率低下,無(wú)法用于實(shí)現(xiàn)復(fù)雜的數(shù)字邏輯。20世紀(jì)70年代開(kāi)發(fā)的器件是PLA,它具有兩級(jí)邏輯,用于實(shí)現(xiàn)小密度邏輯。在PLA進(jìn)化之后,可編程邏輯器件發(fā)生了真正的進(jìn)化。之后,SPLD、CPLD和FPGA在20世紀(jì)80年代早期發(fā)展起來(lái)。早期的可編程邏輯器件如圖9.1所示。
表9.2 PLD分類
邏輯單元 | PAL或者PLA | SPLD | CLB |
密度 | 幾百個(gè)邏輯門 | 幾千個(gè)邏輯門 | 少數(shù)lac邏輯門 |
類型 | 富門邏輯Gate rich logic | 門到達(dá)邏輯Gate reach logic | 觸發(fā)器豐富邏輯Flip-flop rich logic |
應(yīng)用 | 小密度FSM | 中等門計(jì)數(shù)FSM | 復(fù)合FSM |
PLD | SPLD | CPLD | FPGA |
---|
PLD分類如表9.2所示。
以下是用于理解現(xiàn)場(chǎng)可編程設(shè)備的關(guān)鍵術(shù)語(yǔ)。
PAL是一種密度相對(duì)較小的現(xiàn)場(chǎng)可編程器件(FPD),它具有可編程和平面,然后是固定或平面,稱為可編程陣列邏輯(PAL)??删幊踢壿嬯嚵?PLA)是一種密度相對(duì)較小的現(xiàn)場(chǎng)可編程器件(FPD),它具有可編程和平面,然后是可編程或平面。PLA結(jié)構(gòu)有兩級(jí)邏輯,可在全定制芯片上使用。
任何類似PAL或PLA的結(jié)構(gòu)稱為簡(jiǎn)單可編程邏輯器件(SPLD)。SPLD由于具有良好的時(shí)序性能,被用于實(shí)現(xiàn)小型門計(jì)數(shù)狀態(tài)機(jī)。
復(fù)雜可編程邏輯器件(CPLD)是指在同一芯片上由多個(gè)類似于SPLD的模塊組成的具有互連邏輯的結(jié)構(gòu),稱為復(fù)雜可編程邏輯器件(CPLD)。CPLD也稱為mega-PAL、Super-PLA或增強(qiáng)型PLD(EPLD)。在實(shí)際場(chǎng)景中,CPLD用于實(shí)現(xiàn)中等密度狀態(tài)機(jī),因?yàn)榕cSPLD相比,CPLD具有更好的定時(shí)性能。CPLD結(jié)構(gòu)如圖9.2所示。
圖9.2復(fù)雜可編程邏輯器件系統(tǒng)框圖
圖9.3基本FPGA架構(gòu)
現(xiàn)場(chǎng)可編程門陣列(FPGA)是由觸發(fā)器和邏輯塊等更多資源組成的可編程邏輯,用于實(shí)現(xiàn)高密度邏輯,被稱為現(xiàn)場(chǎng)可編程門陣列(FPGA)。FPGA也稱為可編程ASIC,由可配置邏輯塊(CLB)、IO塊(IOB)和可編程互連組成?,F(xiàn)代FPGA甚至包括乘法器、RAM、DSP和處理器核心。帶有關(guān)鍵塊、邏輯塊、IO塊和可編程互連的FPGA如圖9.3所示。
互連現(xiàn)場(chǎng)可編程設(shè)備中的布線資源稱為互連。
可編程開(kāi)關(guān)用于將一條互連線連接到另一條互連線或?qū)⑦壿媺K連接到互連線的開(kāi)關(guān)稱為可編程開(kāi)關(guān)。
可配置邏輯塊(CLB)可配置用于所需組合和順序邏輯功能的邏輯塊稱為CLB。在FPGA上實(shí)現(xiàn)邏輯時(shí),邏輯被分解為小密度邏輯塊并映射到多個(gè)CLB上。
邏輯密度FPGA中每單位面積的邏輯量稱為邏輯密度。
邏輯容量映射到單場(chǎng)可編程器件的邏輯量稱為邏輯容量。邏輯容量以門陣列中邏輯門的數(shù)量的形式給出。邏輯容量可以認(rèn)為是兩個(gè)輸入與非門或通用門的數(shù)量。
現(xiàn)場(chǎng)可編程設(shè)備的最大工作頻率是時(shí)序邏輯性能的度量。對(duì)于組合邏輯,設(shè)計(jì)中的最長(zhǎng)路徑?jīng)Q定了性能。
結(jié)構(gòu)化ASIC和FPGA設(shè)計(jì)的比較如表9.3所示。
表9.3結(jié)構(gòu)化ASIC與FPGA的比較
原型樣本的時(shí)間 | 4–8周 | 0周 |
批量生產(chǎn)總時(shí)間 | 12–15周 | 8周 |
供應(yīng)商N(yùn)RE/屏蔽成本 | 10萬(wàn)至20萬(wàn)美元 | 75000美元 |
轉(zhuǎn)換的設(shè)計(jì)成本 | 25萬(wàn)至30萬(wàn)美元 | $0 |
轉(zhuǎn)換工具的額外成本 | 10萬(wàn)至20萬(wàn)美元 | $0 |
單位成本 | 低的 | 低的 |
危險(xiǎn)性 | 高的 | 低的 |
在系統(tǒng)中進(jìn)行更改的靈活性 | 不靈活 | 靈活的 |
從原型到生產(chǎn)的設(shè)計(jì)轉(zhuǎn)換 | 附加工程 | 免轉(zhuǎn)換 |
選擇標(biāo)準(zhǔn) | 結(jié)構(gòu)化ASIC* | FPGA |
---|
FPGA分類
現(xiàn)代FPGA被稱為可編程ASIC,用于各種應(yīng)用,包括ASIC SOC設(shè)計(jì)和原型設(shè)計(jì)。FPGA編程包括以下類型,本節(jié)將對(duì)此進(jìn)行討論。任何FPGA的主要編程類型有
基于SRAM的FPGA
市場(chǎng)上的大多數(shù)FPGA都基于SRAM技術(shù)。它們將配置位文件存儲(chǔ)在使用鎖存器設(shè)計(jì)的SRAM單元中。由于SRAM是易失性的,因此需要在啟動(dòng)時(shí)對(duì)其進(jìn)行配置。有兩種編程模式:主模式和從模式。SRAM存儲(chǔ)單元如圖9.4所示。
圖9.4 SRAM單元
在主模式下,F(xiàn)PGA從外部源讀取可配置數(shù)據(jù)。
在從模式下,F(xiàn)PGA通過(guò)使用外部主設(shè)備(如處理器)進(jìn)行配置。外部配置接口可以是JTAG(邊界掃描)。
基于FLASH的FPGA
在這種類型的FPGA中,F(xiàn)LASH用于存儲(chǔ)配置數(shù)據(jù)。因此,該FPGA的主要資源是FLASH。因此,這類FPGA的功耗較低,并且對(duì)輻射影響的耐受性較差。在基于SRAM的FPGA中,內(nèi)部FLASH僅在通電期間用于加載配置文件。FLASH中使用的浮柵晶體管如圖9.5所示。
圖9.5 FLASH中的浮柵晶體管
反熔絲FPGA
這些類型的FPGA僅用于編程一次,與前兩種類型的FPGA相比,它們有所不同。反熔絲與保險(xiǎn)絲相反,最初它們不導(dǎo)電,但可以燃燒以導(dǎo)電。
圖9.6反熔絲結(jié)構(gòu)
一旦對(duì)其進(jìn)行編程,就無(wú)法重新編程,因?yàn)槿紵娜劢z無(wú)法強(qiáng)制進(jìn)入初始狀態(tài)。如圖9.6所示。
FPGA構(gòu)建塊
以下是FPGA體系結(jié)構(gòu)中的關(guān)鍵結(jié)構(gòu),本節(jié)對(duì)此進(jìn)行了描述。FPGA架構(gòu)如圖9.7所示。
可配置邏輯塊(CLB),CLB由查找表(LUT)、多路復(fù)用器和寄存器組成?;赗AM的LUT用于實(shí)現(xiàn)數(shù)字邏輯。CLB可編程實(shí)現(xiàn)多種邏輯功能。甚至CLB也用于存儲(chǔ)數(shù)據(jù)。
輸入-輸出塊(IOB)該塊用于控制設(shè)備內(nèi)部邏輯和IO引腳之間的數(shù)據(jù)流。每個(gè)IO用于支持三態(tài)控制的雙向數(shù)據(jù)流。幾乎有24種不同的IO標(biāo)準(zhǔn),其中包括七種不同的特殊IO高性能標(biāo)準(zhǔn)。雙數(shù)據(jù)速率寄存器還具有數(shù)字控制阻抗功能。
塊RAM(BRAM)用于存儲(chǔ)大量數(shù)據(jù),以雙端口RAM的形式提供。例如,18 Kbit雙端口塊RAM。BRAM可以由多個(gè)塊組成,具體取決于設(shè)備。
數(shù)字時(shí)鐘管理器(DCM)它們用于時(shí)鐘管理,并提供完全校準(zhǔn)的數(shù)字時(shí)鐘解決方案。它們用于均勻的時(shí)鐘分布、時(shí)鐘信號(hào)的延遲、對(duì)具有均勻時(shí)鐘偏移的時(shí)鐘信號(hào)進(jìn)行乘法或除法。
乘法器專用乘法器塊用于執(zhí)行兩個(gè)“n”位數(shù)字的乘法。根據(jù)設(shè)備的不同,“n”可能會(huì)有所不同。如果n=18,則專用塊用于執(zhí)行兩個(gè)18位數(shù)字的乘法。
DSP模塊它們是用于實(shí)現(xiàn)濾波、數(shù)據(jù)處理等DSP功能的嵌入式DSP模塊。這些模塊用于提高FPGA的整體性能,同時(shí)為DSP應(yīng)用程序處理大量數(shù)據(jù)。
圖9.7 FPGA架構(gòu)(源Xilinx)
FPGA設(shè)計(jì)流程
FPGA中仿真概念
Verilog復(fù)雜邏輯設(shè)計(jì)指南-奇偶校驗(yàn)生成器和校驗(yàn)器及筒式移位器
Verilog時(shí)序電路設(shè)計(jì)指南
Verilog時(shí)序邏輯硬件建模設(shè)計(jì)(五)異步計(jì)數(shù)器&總結(jié)
Verilog時(shí)序邏輯硬件建模設(shè)計(jì)(四)移位寄存器
Verilog時(shí)序邏輯硬件建模設(shè)計(jì)(三)同步計(jì)數(shù)器
Verilog時(shí)序邏輯硬件建模設(shè)計(jì)(二)同步和異步復(fù)位
Verilog時(shí)序邏輯硬件建模設(shè)計(jì)(一)鎖存器D-latch和觸發(fā)器Flip-Flop
Verilog組合邏輯設(shè)計(jì)指南
組合邏輯硬件建模設(shè)計(jì)(二)算術(shù)電路
Verilog 里面,always,assign和always@(*)區(qū)別
組合邏輯硬件建模設(shè)計(jì)(一)邏輯門
數(shù)字硬件建模-重新從另一方面理解Verilog(二)
數(shù)字硬件建模-從另一方面理解Verilog(一)
數(shù)字硬件建模綜述
原文標(biāo)題:FPGA的發(fā)展歷史
文章出處:【微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
審核編輯:湯梓紅
-
FPGA
+關(guān)注
關(guān)注
1645文章
22050瀏覽量
618642 -
寄存器
+關(guān)注
關(guān)注
31文章
5434瀏覽量
124556 -
硬件
+關(guān)注
關(guān)注
11文章
3484瀏覽量
67514
原文標(biāo)題:FPGA的發(fā)展歷史
文章出處:【微信號(hào):Open_FPGA,微信公眾號(hào):OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
PLD/可編程邏輯器件的入門知識(shí)
PLD可編程邏輯器件
可編程邏輯器件基礎(chǔ)及應(yīng)用實(shí)驗(yàn)指導(dǎo)書(shū)
第三十二講 可編程邏輯器件及應(yīng)用

什么是PLD(可編程邏輯器件)

EDA技術(shù)與應(yīng)用(可編程邏輯器件)

可編程邏輯器件技術(shù)_pld技術(shù)

什么是可編程邏輯器件
可編程邏輯器件的分類有哪些
可編程邏輯器件和ASIC對(duì)比介紹
PLD可編程邏輯器件的原理詳細(xì)講解

可編程邏輯器件測(cè)試

評(píng)論