PLD/FPGA入門(mén),新手必備基礎(chǔ)知識(shí)
簡(jiǎn)介:PLD是可編程邏輯器件(Programable Logic Device)的簡(jiǎn)稱,FPGA是現(xiàn)場(chǎng)可編程門(mén)陣列(Field Programable Gate Array)的簡(jiǎn)稱,兩者的功能基本相同,只是實(shí)現(xiàn)原理略有不同,所以我們有時(shí)可以忽略這兩者的區(qū)別,統(tǒng)稱為可編程邏輯器件或PLD/FPGA。 PLD是電子設(shè)計(jì)領(lǐng)域中最具活力和發(fā)展前途的一項(xiàng)技術(shù),它的影響絲毫不亞于70年代單片機(jī)的發(fā)明和使用。
本文引用地址:http://2s4d.com/article/280049.htmPLD能做什么呢?可以毫不夸張的講,PLD能完成任何數(shù)字器件的功能,上至高性能CPU,下至簡(jiǎn)單的74電路,都可以用PLD來(lái)實(shí)現(xiàn)。PLD如同一張白紙或是一堆積木,工程師可以通過(guò)傳統(tǒng)的原理圖輸入法,或是硬件描述語(yǔ)言自由的設(shè)計(jì)一個(gè)數(shù)字系統(tǒng)。通過(guò)軟件仿真,我們可以事先驗(yàn)證設(shè)計(jì)的正確性。在PCB完成以后,還可以利用PLD的在線修改能力,隨時(shí)修改設(shè)計(jì)而不必改動(dòng)硬件電路。使用PLD來(lái)開(kāi)發(fā)數(shù)字電路,可以大大縮短設(shè)計(jì)時(shí)間,減少PCB面積,提高系統(tǒng)的可靠性。 PLD的這些優(yōu)點(diǎn)使得PLD技術(shù)在90年代以后得到飛速的發(fā)展,同時(shí)也大大推動(dòng)了EDA軟件和硬件描述語(yǔ)言(HDL)的進(jìn)步。
如何使用PLD呢?其實(shí)PLD的使用很簡(jiǎn)單,學(xué)習(xí)PLD比學(xué)習(xí)單片機(jī)要簡(jiǎn)單的多,有數(shù)字電路基礎(chǔ),會(huì)使用計(jì)算機(jī),就可以進(jìn)行PLD的開(kāi)發(fā)。不熟悉PLD的朋友,可以先看一看可編程邏輯器件的發(fā)展歷程。當(dāng)今社會(huì)是數(shù)字化的社會(huì),是數(shù)字集成電路廣泛應(yīng)用的社會(huì)。數(shù)字集成電路本身在不斷地進(jìn)行更新?lián)Q代。它由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路(VLSIC,幾萬(wàn)門(mén)以上)以及許多具有特定功能的專用集成電路。但是,隨著微電子技術(shù)的發(fā)展,設(shè)計(jì)與制造集成電路的任務(wù)已不完全由半導(dǎo)體廠商來(lái)獨(dú)立承擔(dān)。系統(tǒng)設(shè)計(jì)師們更愿意自己設(shè)計(jì)專用集成電路(ASIC)芯片,而且希望ASIC的設(shè)計(jì)周期盡可能短,最好是在實(shí)驗(yàn)室里就能設(shè)計(jì)出合適的ASIC芯片,并且立即投入實(shí)際應(yīng)用之中,因而出現(xiàn)了現(xiàn)場(chǎng)可編程邏輯器件(FPLD),其中應(yīng)用最廣泛的當(dāng)屬現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)和復(fù)雜可編程邏輯器件(CPLD)。早期的可編程邏輯器件只有可編程只讀存貯器(PROM)、紫外線可按除只讀存貯器(EPROM)和電可擦除只讀存貯器(EEPROM)三種。由于結(jié)構(gòu)的限制,它們只能完成簡(jiǎn)單的數(shù)字邏輯功能。 其后,出現(xiàn)了一類結(jié)構(gòu)上稍復(fù)雜的可編程芯片,即可編程邏輯器件(PLD),它能夠完成各種數(shù)字邏輯功能。典型的PLD由一個(gè)“與”門(mén)和一個(gè)“或”門(mén)陣列組成,而任意一個(gè)組合邏輯都可以用“與一或”表達(dá)式來(lái)描述,所以, PLD能以乘積和的形式完成大量的組合邏輯功能.這一階段的產(chǎn)品主要有PAL(可編程陣列邏輯)和GAL(通用陣列邏輯)。PAL由一個(gè)可編程的“與”平面和一個(gè)固定的“或”平面構(gòu)成,或門(mén)的輸.出可以通過(guò)觸發(fā)器有選擇地被置為寄存狀態(tài)。PAL器件是現(xiàn)場(chǎng)可編程的,它的實(shí)現(xiàn)工藝有反熔絲技術(shù)、EPROM技術(shù)和EEPROM技術(shù)。還有一類結(jié)構(gòu)更為靈活的邏輯器件是可編程邏輯陣列(PLA),它也由一個(gè)“與”平面和一個(gè)“或”平面構(gòu)成,但是這兩個(gè)平面的連接關(guān)系是可編程的。PLA器件既有現(xiàn)場(chǎng)可編程的,也有掩膜可編程的。 在PAL的基礎(chǔ)上,又發(fā)展了一種通用陣列邏輯GAL(Generic Array Logic),如GAL16V8,GAL22V10 等。它采用了EEPROM工藝,實(shí)現(xiàn)了電可按除、電可改寫(xiě),其輸出結(jié)構(gòu)是可編程的邏輯宏單元,因而它的設(shè)計(jì)具有很強(qiáng)的靈活性,至今仍有許多人使用。 這些早期的PLD器件的一個(gè)共同特點(diǎn)是可以實(shí)現(xiàn)速度特性較好的邏輯功能,但其過(guò)于簡(jiǎn)單的結(jié)構(gòu)也使它們只能實(shí)現(xiàn)規(guī)模較小的電路。
為了彌補(bǔ)這一缺陷,lATTICE推出了類似于PAL結(jié)構(gòu)的擴(kuò)展型CPLD(ComplexProgrammab1e Logic Dvice)和與標(biāo)準(zhǔn)門(mén)陣列類似的FPGA(Field Programmable Gate Array),它們都具有體系結(jié)構(gòu)和邏輯單元靈活、集成度高以及適用范圍寬等特點(diǎn)。這兩種器件兼容了PLD和通用門(mén)陣列的優(yōu)點(diǎn),可實(shí)現(xiàn)較大規(guī)模的電路,編程也很靈活。與門(mén)陣列等其它ASIC(Application Specific IC)相比,它們又具有設(shè)計(jì)開(kāi)發(fā)周期短、設(shè)計(jì)制造成本低、開(kāi)發(fā)工具先進(jìn)、標(biāo)準(zhǔn)產(chǎn)品無(wú)需測(cè)試、質(zhì)量穩(wěn)定以及可實(shí)時(shí)在線檢驗(yàn)等優(yōu)點(diǎn),因此被廣泛應(yīng)用于產(chǎn)品的原型設(shè)計(jì)和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應(yīng)用門(mén)陣列、PLD和中小規(guī)模通用數(shù)字集成電路的場(chǎng)合均可應(yīng)用FPGA和CPLD器件。
評(píng)論