




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、 FPGA - Field Programmable Gate Array 現(xiàn)場可編程門陣列 CPLD - Complex Programmable Logic Device 復雜可編程邏輯器件z PLD是可編程邏輯器件(Programable Logic Device)的簡稱。z PLD是電子設計領域中最具活力和發(fā)展前途的一項技術(shù),它的影響絲毫不亞于70年代單片機的發(fā)明和使用。z PLD能做什么呢?可以毫不夸張的講,PLD能完成任何數(shù)字器件的功能,上至高性能CPU下至簡單的74電路,都可以用PLD來實現(xiàn)。PLD如同一張白紙或是一堆積木,工程師可以通過傳統(tǒng)的原理圖輸入法,或是硬件描述語言自由的
2、設計一個數(shù)字系統(tǒng)。通過軟件仿真,我們可以事先驗證設計的正確性。z 在PCB完成以后,還可以利用PLD的在線修改能力,隨時修改設計而不必改動硬件電路。使用PLD來開發(fā)數(shù)字電路,可以大大縮短設計時間,減少PCB面積,提高系統(tǒng)的可靠性。 PLD的這些優(yōu)點使得PLD技術(shù)在90年代以后得到飛速的發(fā)展,同時也大大推動了EDA軟件和硬件描述語言(HDL)的進步。z 如何使用PLD呢?其實PLD的使用很簡單,學習PLD比學習單片機要簡單的多,有數(shù)字電路基礎,會使用計算機,就可以進行PLD的開發(fā)。 z 開發(fā)PLD需要了解兩個部分:z 1.PLD開發(fā)軟件 ;2.PLD本身1.PLD1.PLD開發(fā)軟件開發(fā)軟件 z
3、由于PLD軟件已經(jīng)發(fā)展的相當完善,用戶甚至可以不用詳細了解PLD的內(nèi)部結(jié)構(gòu),也可以用自己熟悉的方法:如原理圖輸入或HDL語言來完成相當優(yōu)秀的PLD設計。所以對初學者,首先應了解PLD開發(fā)軟件和開發(fā)流程。了解PLD的內(nèi)部結(jié)構(gòu),將有助于提高我們設計的效率和可靠性。z 如何獲得PLD開發(fā)軟件軟件呢? 許多PLD公司都提供免費試用版或演示版(當然商業(yè)版大都是收費的),例如:可以免費從 上下載Altera公司的 QuartusII (web版),或向其代理商索取這套軟件。Xilinx 公司也提供免費軟件:ISE WebPack,這套可以從xilinx網(wǎng)站下載。Lattice 提供isplever Bas
4、e版下載,Actel等公司也都有類似的免費軟件提供。以上免費軟件都需要在網(wǎng)上注冊申請License文件。 通常這些免費軟件已經(jīng)能夠滿足一般設計的需要,當然,要想軟件功能更強大一些,只能購買商業(yè)版軟件。 z 如果您打算使用VHDL或Verilog HDL硬件描述語言來開發(fā)PLD/FPGA,通常還需要使用一些專業(yè)的HDL開發(fā)軟件,這是因為FPGA廠商提供的軟件的HDL綜合能力一般都不是很強,需要其他軟件來配合使用。z 對于PLD產(chǎn)品,一般分為:基于乘積項(Product-Term)技術(shù),EEPROM(或Flash)工藝的中小規(guī)模PLD,以及基于查找表(Look-Up table)技術(shù),SRAM工藝
5、的大規(guī)模PLD/FPGA。EEPROM工藝的PLD密度小,多用于5,000門以下的小規(guī)模設計,適合做復雜的組合邏輯,如譯碼。SRAM工藝的PLD(FPGA),密度高,觸發(fā)器多,多用于10,000門以上的大規(guī)模設計,適合做復雜的時序邏輯,如數(shù)字信號處理和各種算法。目前有多家公司生產(chǎn)CPLD/FPGA,最大的三家是:ALTERA,XILINX,Lattice。2.PLD/FPGA2.PLD/FPGA的分類和使用的分類和使用 z 在PLD/FPGA開發(fā)軟件中完成設計以后,軟件會產(chǎn)生一個最終的編程文件(如 .pof )。如何將編程文件燒到PLD芯片中去呢?z (1).對于基于乘積項(Product-T
6、erm)技術(shù),EEPROM(或Flash)工藝的PLD(如Altera的MAX系列,Lattice的大部分產(chǎn)品,Xilinx的XC9500,Coolrunner系列), 廠家提供編程電纜,電纜一端裝在計算機的并行打印口上,另一端接在PCB板上的一個十芯插頭,PLD芯片有四個管腳(編程腳)與插頭相連。z 它向系統(tǒng)板上的器件提供配置或編程數(shù)據(jù),這就是所謂的在線可編程。Byteblaster使用戶能夠獨立地配置PLD器件,而不需要編程器或任何其它編程硬件。編程電纜可以向代理商購買,也可以根據(jù)廠家提供的編程電纜的原理圖自己制作,成本僅需一,二十元。 早期的PLD是不支持ISP的,它們需要用編程器燒寫。
7、目前的PLD都可以用ISP在線編程,也可用編程器編程。這種PLD可以加密,并且很難解密,所以常常用于單板加密。 z (2).對于基于查找表(LUT,Look-Up table)技術(shù),SRAM工藝的FPGA(如Altera的所有FPGA,如ACEX,Cyclone,Stratix系列,Xilinx的所有FPGA,如Spartan,Virtex系列,Lattice的EC/ECP系列等),由于SRAM工藝的特點,掉電后數(shù)據(jù)會消失,因此調(diào)試期間可以用下載電纜配置PLD器件,調(diào)試完成后,需要將數(shù)據(jù)固化在一個專用的EEPROM中(用通用編程器燒寫,也有一些可以用電纜直接改寫),上電時,由這片配置EEPRO
8、M先對FPGA加載數(shù)據(jù),十幾個毫秒到幾百個毫秒后,F(xiàn)PGA即可正常工作。(亦可由CPU配置FPGA)。但SRAM工藝的PLD一般不可以直接加密。 z (3).還有一種反熔絲(Anti-fuse)技術(shù)的FPGA,如Actel,Quicklogic的部分產(chǎn)品就采用這種工藝。但這種的PLD是不能重復擦寫,需要使用專用編程器,所以開發(fā)過程比較麻煩,費用也比較昂高。但反熔絲技術(shù)也有許多優(yōu)點:布線能力更強,系統(tǒng)速度更快,功耗更低,同時抗輻射能力強,耐高低溫,可以加密,所以在一些有特殊要求的領域中運用較多,如軍事及航空航天。 為了解決反熔絲FPGA不可重復擦寫的問題,Actel等公司在90年代中后期開發(fā)了基
9、于Flash技術(shù)的FPGA,如ProASIC系列,這種FPGA不需要配置,數(shù)據(jù)直接保存在FPGA芯片中,用戶可以改寫(但需要10幾伏的高電壓)。 z 隨著技術(shù)的發(fā)展,在2004年以后,一些廠家推出了一些新的PLD和FPGA,這些產(chǎn)品模糊了PLD和FPGA的區(qū)別。例如Altera最新的MAXII系列PLD,這是一種基于FPGA(LUT)結(jié)構(gòu),集成配置芯片的PLD,在本質(zhì)上它就是一種在內(nèi)部集成了配置芯片的FPGA,但由于配置時間極短,上電就可以工作,所以對用戶來說,感覺不到配置過程,可以傳統(tǒng)的PLD一樣使用,加上容量和傳統(tǒng)PLD類似,所以altera把它歸作PLD。 還有像Lattice的XP系列
10、FPGA,也是使用了同樣的原理,將外部配置芯片集成到內(nèi)部,在使用方法上和PLD類似,但是因為容量大,性能和傳統(tǒng)FPGA相同,也是LUT架構(gòu),所以Lattice仍把它歸為FPGA。 z 當今社會是數(shù)字化的社會,是數(shù)字集成電路廣泛應用的社會。數(shù)字集成電路本身在不斷地進行更新?lián)Q代。它由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路(VLSIC,幾萬門以上)以及許多具有特定功能的專用集成電路。但是,隨著微電子技術(shù)的發(fā)展,設計與制造集成電路的任務已不完全由半導體廠商來獨立承擔。系統(tǒng)設計師們更愿意自己設計專用集成電路(ASIC)芯片,而且希望ASIC的設計周期盡可能短,最好是在實驗室里就能
11、設計出合適的ASIC芯片,并且立即投入實際應用之中,因而出現(xiàn)了現(xiàn)場可編程邏輯器件(FPLD),其中應用最廣泛的當屬現(xiàn)場可編程門陣列(FPGA)和復雜可編程邏輯器件(CPLD)。 z 早期的可編程邏輯器件只有可編程只讀存貯器(PROM)、紫外線可按除只讀存貯器(EPROM)和電可擦除只讀存貯器(EEPROM)三種。由于結(jié)構(gòu)的限制,它們只能完成簡單的數(shù)字邏輯功能。 z 其后,出現(xiàn)了一類結(jié)構(gòu)上稍復雜的可編程芯片,即可編程邏輯器件(PLD),它能夠完成各種數(shù)字邏輯功能。典型的PLD由一個“與”門和一個“或”門陣列組成,而任意一個組合邏輯都可以用“與一或”表達式來描述,所以, PLD能以乘積和的形式完成
12、大量的組合邏輯功能。z 這一階段的產(chǎn)品主要有PAL(可編程陣列邏輯)和GAL(通用陣列邏輯)。 PAL由一個可編程的“與”平面和一個固定的“或”平面構(gòu)成,或門的輸出可以通過觸發(fā)器有選擇地被置為寄存狀態(tài)。 PAL器件是現(xiàn)場可編程的,它的實現(xiàn)工藝有反熔絲技術(shù)、EPROM技術(shù)和EEPROM技術(shù)。還有一類結(jié)構(gòu)更為靈活的邏輯器件是可編程邏輯陣列(PLA),它也由一個“與”平面和一個“或”平面構(gòu)成,但是這兩個平面的連接關(guān)系是可編程的。 PLA器件既有現(xiàn)場可編程的,也有掩膜可編程的。 在PAL的基礎上,又發(fā)展了一種通用陣列邏輯GAL (Generic Array Logic),如GAL16V8,GAL22V
13、10 等。它采用了EEPROM工藝,實現(xiàn)了電可按除、電可改寫,其輸出結(jié)構(gòu)是可編程的邏輯宏單元,因而它的設計具有很強的靈活性,至今仍有許多人使用。 這些早期的PLD器件的一個共同特點是可以實現(xiàn)速度特性較好的邏輯功能,但其過于簡單的結(jié)構(gòu)也使它們只能實現(xiàn)規(guī)模較小的電路。 典型的PLD的部分結(jié)構(gòu)(實現(xiàn)組合邏輯的部分) z 為了彌補這一缺陷,20世紀80年代中期。 Altera和Xilinx分別推出了類似于PAL結(jié)構(gòu)的擴展型 CPLD(Complex Programmab1e Logic Dvice)和與標準門陣列類似的FPGA(Field Programmable Gate Array),它們都具有體
14、系結(jié)構(gòu)和邏輯單元靈活、集成度高以及適用范圍寬等特點。 這兩種器件兼容了PLD和通用門陣列的優(yōu)點,可實現(xiàn)較大規(guī)模的電路,編程也很靈活。與門陣列等其它ASIC(Application Specific IC)相比,它們又具有設計開發(fā)周期短、設計制造成本低、開發(fā)工具先進、標準產(chǎn)品無需測試、質(zhì)量穩(wěn)定以及可實時在線檢驗等優(yōu)點,因此被廣泛應用于產(chǎn)品的原型設計和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應用門陣列、PLD和中小規(guī)模通用數(shù)字集成電路的場合均可應用FPGA和CPLD器件。 z(注:不同廠家的叫法不盡相同,Xilinx把,基于查找表技術(shù),SRAM工藝,要外掛配置用的EEPROM的PLD叫F
15、PGA;把基于乘積項技術(shù),F(xiàn)lash(類似EEPROM工藝)工藝的PLD叫CPLD; Altera 把自己的PLD產(chǎn)品:MAX系列(乘積項技術(shù),EEPROM工藝),F(xiàn)LEX系列(查找表技術(shù),SRAM工藝)都叫作CPLD,即復雜PLD(Complex PLD),由于FLEX系列也是SRAM工藝,基于查找表技術(shù),要外掛配置用的EPROM,用法和Xilinx的FPGA一樣,所以很多人把Altera的FELX系列產(chǎn)品也叫做FPGA。 FPGAFPGACPLD CPLD 概述概述 z FPGA(現(xiàn)場可編程門陣列)與 CPLD(復雜可編程邏輯器件)都是可編程邏輯器件,它們是在PAL,GAL等邏輯器件的基礎
16、之上發(fā)展起來的。同以往的PAL,GAL等相比較,F(xiàn)PGACPLD的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC芯片。這樣的FPGACPLD實際上就是一個子系統(tǒng)部件。這種芯片受到世界范圍內(nèi)電子工程設計人員的廣泛關(guān)注和普遍歡迎。經(jīng)過了十幾年的發(fā)展,許多公司都開發(fā)出了多種可編程邏輯器件。比較典型的就是Xilinx公司的FPGA器件系列和Altera公司的CPLD器件系列,它們開發(fā)較早,占用了較大的PLD市場。通常來說,在歐洲用Xilinx的人多,在日本和亞太地區(qū)用ALTERA的人多,在美國則是平分秋色。全球PLD/FPGA產(chǎn)品60%以上是由Altera和Xilinx提供的??梢灾vAltera和Xil
17、inx共同決定了PLD技術(shù)的發(fā)展方向。當然還有許多其它類型器件,如:Lattice,Vantis,Actel,Quicklogic,Lucent等。 z盡管FPGA、CPLD和其它類型PLD的結(jié)構(gòu)各有其特點和長處,但概括起來,它們是由三大部分組成的:一個二維的邏輯塊陣列,構(gòu)成了PLD器件的邏輯組成核心;輸入輸出塊;連接邏輯塊的互連資源。z 連線資源:由各種長度的連線線段組成,其中也有一些可編程的連接開關(guān),它們用于邏輯塊之間、邏輯塊與輸入輸出塊之間的連接。z 對用戶而言,CPLD與FPGA的內(nèi)部結(jié)構(gòu)稍有不同,但用法一樣,所以多數(shù)情況下,不加以區(qū)分。z FPGACPLD芯片都是特殊的ASIC芯片,
18、它們除了具有ASIC的特點之外,還具有以下幾個優(yōu)點:z 隨著VlSI(Very Large Scale IC,超大規(guī)模集成電路)工藝的不斷提高單一芯片內(nèi)部可以容納上百萬個晶體管, FPGACPLD芯片的規(guī)模也越來越大,其單片邏輯門數(shù)已達到上百萬門,它所能實現(xiàn)的功能也越來越強,同時也可以實現(xiàn)系統(tǒng)集成。z FPGACPLD芯片在出廠之前都做過百分之百的測試,不需要設計人員承擔投片風險和費用,設計人員只需在自己的實驗室里就可以通過相關(guān)的軟硬件環(huán)境來完成芯片的最終功能設計。所以, FPGACPLD的資金投入小,節(jié)省了許多潛在的花費。z 用戶可以反復地編程、擦除、使用或者在外圍電路不動的情況下用不同軟件
19、就可實現(xiàn)不同的功能。所以,用FPGAPLD 試制樣片,能以最快的速度占領市場。 FPGACPLD軟件包中有各種輸入工具和仿真工具,及版圖設計工具和編程器等全線產(chǎn)品,電路設計人員在很短的時間內(nèi)就可完成電路的輸入、編譯、優(yōu)化、仿真,直至最后芯片的制作。 當電路有少量改動時,更能顯示出FPGACPLD的優(yōu)勢。電路設計人員使用FPGACPLD進行電路設計時,不需要具備專門的IC(集成電路)深層次的知識, FPGACPLD軟件易學易用,可以使設計人員更能集中精力進行電路設計,快速將產(chǎn)品推向市場。 PLD/FPGA PLD/FPGA 結(jié)構(gòu)與原理初步(一)結(jié)構(gòu)與原理初步(一) z一一.基于乘積項(基于乘積項
20、(Product-Term)的的PLD結(jié)構(gòu)結(jié)構(gòu) 采用這種結(jié)構(gòu)的PLD芯片有:Altera的MAX7000,MAX3000系列(EEPROM工藝),Xilinx的XC9500系列(Flash工藝)和Lattice,Cypress的大部分產(chǎn)品(EEPROM工藝) 我們先看一下這種PLD的總體結(jié)構(gòu)(以MAX7000為例,其他型號的結(jié)構(gòu)與此都非常相似):圖1 基于乘積項的PLD內(nèi)部結(jié)構(gòu) z 這種PLD可分為三塊結(jié)構(gòu):宏單元(Macrocell),可編程連線(PIA)和I/O控制塊。 宏單元是PLD的基本結(jié)構(gòu),由它來實現(xiàn)基本的邏輯功能。圖1中蘭色部分是多個宏單元的集合(因為宏單元較多,沒有一一畫出)???/p>
21、編程連線負責信號傳遞,連接所有的宏單元。I/O控制塊負責輸入輸出的電氣特性控制,比如可以設定集電極開路輸出,擺率控制,三態(tài)輸出等。 圖1 左上的INPUT/GCLK1,iNPUT/GCLRn,INPUT/OE1,INPUT/OE2 是全局時鐘,清零和輸出使能信號,這幾個信號有專用連線與PLD中每個宏單元相連,信號到每個宏單元的延時相同并且延時最短。z宏單元的具體結(jié)構(gòu)見下圖: 圖2 宏單元結(jié)構(gòu) 左側(cè)是乘積項陣列,實際就是一個與或陣列,每一個交叉點都是一個可編程熔左側(cè)是乘積項陣列,實際就是一個與或陣列,每一個交叉點都是一個可編程熔絲,如果導通就是實現(xiàn)絲,如果導通就是實現(xiàn)“與與”邏輯。后面的乘積項選
22、擇矩陣是一個邏輯。后面的乘積項選擇矩陣是一個“或或”陣列陣列。兩者一起完成組合邏輯。圖右側(cè)是一個可編程。兩者一起完成組合邏輯。圖右側(cè)是一個可編程D觸發(fā)器,它的時鐘,清零輸觸發(fā)器,它的時鐘,清零輸入都可以編程選擇,可以使用專用的全局清零和全局時鐘,也可以使用內(nèi)部邏入都可以編程選擇,可以使用專用的全局清零和全局時鐘,也可以使用內(nèi)部邏輯(乘積項陣列)產(chǎn)生的時鐘和清零。如果不需要觸發(fā)器,也可以將此觸發(fā)器輯(乘積項陣列)產(chǎn)生的時鐘和清零。如果不需要觸發(fā)器,也可以將此觸發(fā)器旁路,信號直接輸給旁路,信號直接輸給PIA或輸出到或輸出到I/O腳。腳。二二. .乘積項結(jié)構(gòu)乘積項結(jié)構(gòu)PLDPLD的邏輯實現(xiàn)原理的邏輯
23、實現(xiàn)原理 z下面我們以一個簡單的電路為例,具體說明PLD是如何利用以上結(jié)構(gòu)實現(xiàn)邏輯的,電路如下圖:z z圖3 z 假設組合邏輯的輸出(AND3的輸出)為f,則f=(A+B)*C*(!D)=A*C*!D + B*C*!D ( 我們以!D表示D的“非”)z PLD將以下面的方式來實現(xiàn)組合邏輯f:圖4 A,B,C,D由由PLD芯片的管腳輸入后進入可編程連線陣列(芯片的管腳輸入后進入可編程連線陣列(PIA),在內(nèi)部,在內(nèi)部會產(chǎn)生會產(chǎn)生A,A反反,B,B反反,C,C反反,D,D反反8個輸出。圖中每一個叉表示相連(可個輸出。圖中每一個叉表示相連(可編程熔絲導通),所以得到:編程熔絲導通),所以得到:f=
24、f1 + f2 = (A*C*!D) + (B*C*!D) 。這樣。這樣組合邏輯就實現(xiàn)了。組合邏輯就實現(xiàn)了。 圖圖3電路中電路中D觸發(fā)器的實現(xiàn)比較簡單,直接利用宏觸發(fā)器的實現(xiàn)比較簡單,直接利用宏單元中的可編程單元中的可編程D觸發(fā)器來實現(xiàn)。時鐘信號觸發(fā)器來實現(xiàn)。時鐘信號CLK由由I/O腳輸入后進入芯片腳輸入后進入芯片內(nèi)部的全局時鐘專用通道,直接連接到可編程觸發(fā)器的時鐘端??删幊虄?nèi)部的全局時鐘專用通道,直接連接到可編程觸發(fā)器的時鐘端??删幊逃|發(fā)器的輸出與觸發(fā)器的輸出與I/O腳相連,把結(jié)果輸出到芯片管腳。這樣腳相連,把結(jié)果輸出到芯片管腳。這樣PLD就完成了就完成了圖圖3所示電路的功能。所示電路的功能
25、。 z 圖3的電路是一個很簡單的例子,只需要一個宏單元就可以完成。但對于一個復雜的電路,一個宏單元是不能實現(xiàn)的,這時就需要通過并聯(lián)擴展項和共享擴展項將多個宏單元相連,宏單元的輸出也可以連接到可編程連線陣列,再做為另一個宏單元的輸入。這樣PLD就可以實現(xiàn)更復雜邏輯。z 這種基于乘積項的PLD基本都是由EEPROM和Flash工藝制造的,一上電就可以工作,無需其他芯片配合。PLD/FPGA PLD/FPGA 結(jié)構(gòu)與原理初步(二)結(jié)構(gòu)與原理初步(二) z一一.查找表(查找表(Look-Up-Table)的原理與結(jié)構(gòu)的原理與結(jié)構(gòu) 采用這種結(jié)構(gòu)的PLD芯片我們也可以稱之為FPGA:如altera的ACE
26、X,APEX系列,xilinx的Spartan,Virtex系列等。 查找表(Look-Up-Table)簡稱為LUT,LUT本質(zhì)上就是一個RAM。 目前FPGA中多使用4輸入的LUT,所以每一個LUT可以看成一個有4位地址線的16x1的RAM。 當用戶通過原理圖或HDL語言描述了一個邏輯電路以后,PLD/FPGA開發(fā)軟件會自動計算邏輯電路的所有可能的結(jié)果,并把結(jié)果事先寫入RAM,這樣,每輸入一個信號進行邏輯運算就等于輸入一個地址進行查表,找出地址對應的內(nèi)容,然后輸出即可。下面是一個4輸入與門的例子 z 實際邏輯電路 LUT的實現(xiàn)方式a,b,c,d 輸入邏輯輸出 地址RAM中存儲的內(nèi)容0000
27、0 0000000010 00010.0 .011111 11111二二. .基于查找表(基于查找表(LUT)LUT)的的FPGAFPGA的結(jié)構(gòu)的結(jié)構(gòu) z我們看一看xilinx Spartan-II的內(nèi)部結(jié)構(gòu),如下圖: xilinx Spartan-II 芯片內(nèi)部結(jié)構(gòu)Slices結(jié)構(gòu)zSpartan-II主要包括CLBs,I/O塊,RAM塊和可編程連線(未表示出)。在spartan-II中,一個CLB包括2個Slices,每個slices包括兩個LUT,兩個觸發(fā)器和相關(guān)邏輯。 Slices可以看成是SpartanII實現(xiàn)邏輯的最基本結(jié)構(gòu) (xilinx其他系列,如SpartanXL,Virte
28、x的結(jié)構(gòu)與此稍有不同,具體請參閱數(shù)據(jù)手冊)altera的FLEX/ACEX等芯片的結(jié)構(gòu)如下圖: altera FLEX/ACEX 芯片的內(nèi)部結(jié)構(gòu) z 邏輯單元(LE)內(nèi)部結(jié)構(gòu)FLEX/ACEX的結(jié)構(gòu)主要包括的結(jié)構(gòu)主要包括LAB,I/O塊,塊,RAM塊(未表示塊(未表示出)和可編程行出)和可編程行/列連線。在列連線。在FLEX/ACEX中,一個中,一個LAB包括包括8個邏輯單元(個邏輯單元(LE),每個每個LE包括一個包括一個LUT,一個觸發(fā)器和相,一個觸發(fā)器和相關(guān)的相關(guān)邏輯。關(guān)的相關(guān)邏輯。LE是是FLEX/ACEX芯片實現(xiàn)邏輯的最基本結(jié)芯片實現(xiàn)邏輯的最基本結(jié)構(gòu)構(gòu)(altera其他系列,如其他系
29、列,如APEX的結(jié)構(gòu)與此基本相同,具體請參的結(jié)構(gòu)與此基本相同,具體請參閱數(shù)據(jù)手冊)閱數(shù)據(jù)手冊) 三三. .查找表結(jié)構(gòu)的查找表結(jié)構(gòu)的FPGAFPGA邏輯實現(xiàn)原理邏輯實現(xiàn)原理 z我們還是以這個電路的為例: A,B,C,D由由FPGA芯片的管腳輸入后進入可編程連線,然后作為地址線連到芯片的管腳輸入后進入可編程連線,然后作為地址線連到到到LUT,LUT中已經(jīng)事先寫入了所有可能的邏輯結(jié)果,通過地址查找到相中已經(jīng)事先寫入了所有可能的邏輯結(jié)果,通過地址查找到相應的數(shù)據(jù)然后輸出,這樣組合邏輯就實現(xiàn)了。應的數(shù)據(jù)然后輸出,這樣組合邏輯就實現(xiàn)了。 該電路中該電路中D觸發(fā)器是直接利觸發(fā)器是直接利用用LUT后面后面D觸
30、發(fā)器來實現(xiàn)。時鐘信號觸發(fā)器來實現(xiàn)。時鐘信號CLK由由I/O腳輸入后進入芯片內(nèi)部的腳輸入后進入芯片內(nèi)部的時鐘專用通道,直接連接到觸發(fā)器的時鐘端。觸發(fā)器的輸出與時鐘專用通道,直接連接到觸發(fā)器的時鐘端。觸發(fā)器的輸出與I/O腳相連,腳相連,把結(jié)果輸出到芯片管腳。這樣把結(jié)果輸出到芯片管腳。這樣PLD就完成了圖就完成了圖3所示電路的功能。(以上這所示電路的功能。(以上這些步驟都是由軟件自動完成的,不需要人為干預)些步驟都是由軟件自動完成的,不需要人為干預)z 這個電路是一個很簡單的例子,只需要一個LUT加上一個觸發(fā)器就可以完成。對于一個LUT無法完成的的電路,就需要通過進位邏輯將多個單元相連,這樣FPGA
31、就可以實現(xiàn)復雜的邏輯。z 由于LUT主要適合SRAM工藝生產(chǎn),所以目前大部分FPGA都是基于SRAM工藝的,而SRAM工藝的芯片在掉電后信息就會丟失,一定需要外加一片專用配置芯片,在上電的時候,由這個專用配置芯片把數(shù)據(jù)加載到FPGA中,然后FPGA就可以正常工作,由于配置時間很短,不會影響系統(tǒng)正常工作。 也有少數(shù)FPGA采用反熔絲或Flash工藝,對這種FPGA,就不需要外加專用的配置芯片。四四. .其他類型的其他類型的FPGAFPGA和和PLDPLD z 隨著技術(shù)的發(fā)展,在2004年以后,一些廠家推出了一些新的PLD和FPGA,這些產(chǎn)品模糊了PLD和FPGA的區(qū)別。例如Altera最新的MA
32、XII系列PLD,這是一種基于FPGA(LUT)結(jié)構(gòu),集成配置芯片的PLD,在本質(zhì)上它就是一種在內(nèi)部集成了配置芯片的FPGA,但由于配置時間極短,上電就可以工作,所以對用戶來說,感覺不到配置過程,可以傳統(tǒng)的PLD一樣使用,加上容量和傳統(tǒng)PLD類似,所以altera把它歸作PLD。 還有像Lattice的XP系列FPGA,也是使用了同樣的原理,將外部配置芯片集成到內(nèi)部,在使用方法上和PLD類似,但是因為容量大,性能和傳統(tǒng)FPGA相同,也是LUT架構(gòu),所以Lattice仍把它歸為FPGA。 五五. .選擇選擇PLDPLD還是還是FPGAFPGA? z 根據(jù)上一篇PLD的結(jié)構(gòu)和原理可以知道,PLD分
33、解組合邏輯的功能很強,一個宏單元就可以分解十幾個甚至2030多個組合邏輯輸入。而FPGA的一個LUT只能處理4輸入的組合邏輯,因此,PLD適合用于設計譯碼等復雜組合邏輯。 但FPGA的制造工藝確定了FPGA芯片中包含的LUT和觸發(fā)器的數(shù)量非常多,往往都是幾千上萬,PLD一般只能做到512個邏輯單元,而且如果用芯片價格除以邏輯單元數(shù)量,F(xiàn)PGA的平均邏輯單元成本大大低于PLD。 所以如果設計中使用到大量觸發(fā)器,例如設計一個復雜的時序邏輯,那么使用FPGA就是一個很好選擇。 同時PLD擁有上電即可工作的特性,而大部分FPGA需要一個加載過程,所以,如果系統(tǒng)要可編程邏輯器件上電就要工作,那么就應該選
34、擇PLD。z盡管和都是可編程器件盡管和都是可編程器件,有很多共同特點有很多共同特點,但由于和結(jié)構(gòu)上但由于和結(jié)構(gòu)上的差異的差異,具有各自的特點具有各自的特點: 更適合完成各種算法和組合邏輯更適合完成各種算法和組合邏輯, 更適合于完成時序邏輯。換句話說更適合于完成時序邏輯。換句話說,更適更適合于觸發(fā)器豐富的結(jié)構(gòu)合于觸發(fā)器豐富的結(jié)構(gòu),而更適合于觸發(fā)器而更適合于觸發(fā)器有限而乘積項豐富的結(jié)構(gòu)。有限而乘積項豐富的結(jié)構(gòu)。 的連續(xù)式布線結(jié)構(gòu)決定了它的時序延遲的連續(xù)式布線結(jié)構(gòu)決定了它的時序延遲是均勻的和可預測的是均勻的和可預測的,而的分段式布線結(jié)構(gòu)而的分段式布線結(jié)構(gòu)決定了其延遲的不可預測性。決定了其延遲的不可預
35、測性。 在編程上比具有更大的靈活性。在編程上比具有更大的靈活性。通過修改具有固定內(nèi)連電路的邏輯功能來通過修改具有固定內(nèi)連電路的邏輯功能來編程編程,主要通過改變內(nèi)部連線的布線來編程主要通過改變內(nèi)部連線的布線來編程; 可在邏輯門下編程可在邏輯門下編程,而是在邏輯塊而是在邏輯塊下編程。下編程。 的集成度比高的集成度比高,具有更復雜的布具有更復雜的布線結(jié)構(gòu)和邏輯實現(xiàn)。線結(jié)構(gòu)和邏輯實現(xiàn)。 z 比使用起來更方便。的編程采比使用起來更方便。的編程采用用2或技術(shù)或技術(shù),無需外部存儲器無需外部存儲器芯片芯片,使用簡單。而的編程信息需存放在外部存儲器使用簡單。而的編程信息需存放在外部存儲器上上,使用方法復雜。使用
36、方法復雜。 的速度比快的速度比快,并且具有較大的時間可預測并且具有較大的時間可預測性。這是由于是門級編程性。這是由于是門級編程,并且之間采用分布并且之間采用分布式互聯(lián)式互聯(lián),而是邏輯塊級編程而是邏輯塊級編程,并且其邏輯塊之間的互聯(lián)并且其邏輯塊之間的互聯(lián)是集總式的。是集總式的。 在編程方式上在編程方式上,主要是基于主要是基于2或或存儲器編程存儲器編程,編程次數(shù)可達編程次數(shù)可達1萬次萬次,優(yōu)點是系統(tǒng)斷電時編程優(yōu)點是系統(tǒng)斷電時編程信息也不丟失。又可分為在編程器上編程和在系統(tǒng)信息也不丟失。又可分為在編程器上編程和在系統(tǒng)編程兩類。大部分是基于編程編程兩類。大部分是基于編程,編程信息在編程信息在系統(tǒng)斷電時
37、丟失系統(tǒng)斷電時丟失,每次上電時每次上電時,需從器件外部將編程數(shù)據(jù)重新寫需從器件外部將編程數(shù)據(jù)重新寫入中。其優(yōu)點是可以編程任意次入中。其優(yōu)點是可以編程任意次,可在工作中快速編可在工作中快速編程程,從而實現(xiàn)板級和系統(tǒng)級的動態(tài)配置。從而實現(xiàn)板級和系統(tǒng)級的動態(tài)配置。 保密性好保密性好,保密性差。保密性差。 一般情況下一般情況下,的功耗要比大的功耗要比大,且集成度越高且集成度越高越明顯。越明顯。 z z 隨著復雜可編程邏輯器件(CPLD)密度的提高,數(shù)字器件設計人員在進行大型設計時,既靈活又容易,而且產(chǎn)品可以很快進入市場。許多設計人員已經(jīng)感受到CPLD容易使用、時序可預測和速度高等優(yōu)點,然而,在過去由于
38、受到CPLD密度的限制,他們只好轉(zhuǎn)向FPGA和ASIC?,F(xiàn)在,設計人員可以體會到密度高達數(shù)十萬門的CPLD所帶來的好處。 CPLD結(jié)構(gòu)在一個邏輯路徑上采用1至16個乘積項,因而大型復雜設計的運行速度可以預測。因此,原有設計的運行可以預測,也很可靠,而且修改設計也很容易。CPLD在本質(zhì)上很靈活、時序簡單、路由性能極好,用戶可以改變他們的設計同時保持引腳輸出不變。與FPGA相比,CPLD的I/O更多,尺寸更小。 如今,通信系統(tǒng)使用很多標準,必須根據(jù)客戶的需要配置設備以支持不同的標準。CPLD可讓設備做出相應的調(diào)整以支持多種協(xié)議,并隨著標準和協(xié)議的演變而改變功能。這為系統(tǒng)設計人員帶來很大的方便,因為
39、在標準尚未完全成熟之前他們就可以著手進行硬件設計,然后再修改代碼以滿足最終標準的要求。CPLD的速度和延遲特性比純軟件方案更好,它的NRE費用低於ASIC,更靈活,產(chǎn)品也可以更快入市。 z隨著可編程邏輯器件應用的日益廣泛,許多IC制造廠家涉足PLD/FPGA領域。目前世界上有十幾家生產(chǎn)CPLD/FPGA的公司,最大的三家是:ALTERA,XILINX,Lattice,其中ALTERA和XILINX占有了60%以上的市場份額。 z 1、ALTERA:九十年代以后發(fā)展很快,是最大可編程邏輯器件供應商之一。主要產(chǎn)品有:AX3000/7000,FLEX10K,APEX20K,ACEX1K,Strati
40、x,Cyclone等。開發(fā)軟件為QuartusII。 z2、XILIXN:FPGA的發(fā)明者,老牌FPGA公司,是最大可編程邏輯器件供應商之一。產(chǎn)品種類較全,主要有:XC9500,Coolrunner ,Spartan, Virtex等。開發(fā)軟件為ISE。通常來說,在歐洲和美國用Xilinx的人多,在日本和亞太地區(qū)用ALTERA的人多。 全球PLD/FPGA產(chǎn)品60%以上是由Altera和Xilinx提供的。 可以講Altera和Xilinx共同決定了PLD技術(shù)的發(fā)展方向。 z3、Lattice:Lattice是ISP技術(shù)的發(fā)明者,ISP技術(shù)極大的促進了PLD產(chǎn)品的發(fā)展,與ALTERA和XILI
41、NX相比,其開發(fā)工具略遜一籌。中小規(guī)模PLD比較有特色, 1999年推出可編程模擬器件。99年收購Vantis(原AMD子公司),成為第三大可編程邏輯器件供應商。2001年12月收購agere公司(原Lucent微電子部)的FPGA部門。主要產(chǎn)品有ispMACH4000,EC/ECP,XO,XP以及可編程模擬器件等z4、ACTEL:反熔絲(一次性燒寫)PLD的領導者,由于反熔絲PLD抗輻射,耐高低溫,功耗低,速度快,所以在軍品和宇航級上有較大優(yōu)勢。ALTERA和XILINX則較少涉足軍品和宇航級市場。ACTEL在中國地區(qū)代理商是裕利(科匯二部)和世強電訊z5、Cypress : PLD/FPG
42、A不是Cypress的主要業(yè)務,但有一定的用戶群,中國地區(qū)代理商有:富昌電子,德創(chuàng)電子等 ALTERAALTERA 開發(fā)軟件開發(fā)軟件 z MAX+PLUSII 普遍認為MaxplusII曾經(jīng)是最優(yōu)秀的PLD開發(fā)平臺之一,適合開發(fā)早期的中小規(guī)模PLD/FPGA,目前已經(jīng)由QuartusII替代,不再推薦使用z QuartusII Altera新一代FPGA/PLD開發(fā)軟件,適合新器件和大規(guī)模FPGA的開發(fā),已經(jīng)取代MaxplusII。z SOPC Builder :配合QuartusII,可以完成集成CPU的FPGA芯片的開發(fā)工作z DSP Builder: QuartusII與Mathlab的
43、接口,利用IP核在Mathlab中快速完成數(shù)字信號處理的仿真和最終FPGA實現(xiàn)主流芯片選型指導:主流芯片選型指導: z1.主流主流PLD產(chǎn)品:產(chǎn)品: zMAXII:新一代PLD器件,0.18um falsh工藝,2004年底推出,采用FPGA結(jié)構(gòu),配置芯片集成在內(nèi)部,和普通PLD一樣上電即可工作。容量比上一代大大增加,內(nèi)部集成一片8Kbits串行EEPROM,增加很多功能。MAXII采用2.5v或者3.3v內(nèi)核電壓,MAXII G系列采用1.8v內(nèi)核電壓。zMAXII容量較大,對于只需要幾十個邏輯單元的簡單邏輯應用,建議使用小容量的EPM3000A系列芯片z2.主流主流FPGA產(chǎn)品產(chǎn)品z Al
44、tera的主流FPGA分為兩大類,一種側(cè)重低成本應用,容量中等,性能可以滿足一般的邏輯設計要求,如Cyclone,CycloneII;還有一種側(cè)重于高性能應用,容量大,性能能滿足各類高端應用,如Startix,StratixII等,用戶可以根據(jù)自己實際應用要求進行選擇。 在性能可以滿足的情況下,優(yōu)先選擇低成本器件。z Cyclone(颶風)(颶風):Altera中等規(guī)模FPGA,2003年推出,0.13um工藝,1.5v內(nèi)核供電,與Stratix結(jié)構(gòu)類似,是一種低成本FPGA系列 ,是目前主流產(chǎn)品,其配置芯片也改用全新的產(chǎn)品。z 簡評:Altera最成功的器件之一,性價比不錯,是一種適合中低端
45、應用的通用FPGA,推薦使用。z CycloneII:Cyclone的下一代產(chǎn)品,2005年開始推出,90nm工藝,1.2v內(nèi)核供電,屬于低成本FPGA,性能和Cyclone相當,提供了硬件乘法器單元 z 簡評:剛剛推出的新一代低成本FPGA,目前市場零售還不容易買到,從2005年年底開始,逐步取代Cyclone器件,成為Altera在中低FPGA市場中的主力產(chǎn)品。z Stratix :altera大規(guī)模高端FPGA,2002年中期推出,0.13um工藝,1.5v內(nèi)核供電。集成硬件乘加器,芯片內(nèi)部結(jié)構(gòu)比Altera以前的產(chǎn)品有很大變化。 z 簡評:Startix芯片在2002年的推出,改變了A
46、ltera在FPGA市場上的被動局面。該芯片適合高端應用。 隨著2005年新一代StratixII器件的推出,被StratixII逐漸取代z StratixII: Stratix的下一代產(chǎn)品,2004年中期推出,90um工藝,1.2v內(nèi)核供電,大容量高性能FPGA z 簡評:性能超越Stratix,曾經(jīng)是Altera在高端FPGA市場中的主力產(chǎn)品 Cyclone專用配置器件專用配置器件 專門用于配置Cyclone器件的EEPROM,可以用ByteblasterII在線改寫,電壓為3.3v型 號容 量適用型號(詳細內(nèi)容請參閱數(shù)據(jù)手冊)常用封裝EPCS11M bitsEP1C3,EP1C4,EP1
47、C6(壓縮模式)8 腳 SOICEPCS44M bits所有Cyclone型號8 腳 SOIC 4.NoisII軟處理器軟處理器:verilog編寫的一個32位/16位可編程CPU核,可以集成到各種FPGA中,Altera提供開發(fā)軟件用于軟件和硬件開發(fā) 5.更多可編程器件產(chǎn)品更多可編程器件產(chǎn)品 Altera公司還有很多仍然在廣泛使用的可編程器件產(chǎn)品,如:ACEX 1K, MAX3000A,FLEX 10K, APEX 20K, StratixGX, 等等。 3.FPGA配置芯片配置芯片配置配置EEPROM 用于配置SRAM工藝FPGA的EEPROM,EPC2以上的芯片可以用電纜多次擦寫ACEX
48、 1KACEX 1K系列系列 ACEX 1K系列是系列是Altera公司于公司于2000年推出的內(nèi)核電壓年推出的內(nèi)核電壓2.5V、價格低廉、價格低廉、SRAM工藝的工藝的PLD。該系列器件適用于。該系列器件適用于實現(xiàn)復雜邏輯及存儲器功能,如數(shù)字信號處理、寬帶數(shù)據(jù)實現(xiàn)復雜邏輯及存儲器功能,如數(shù)字信號處理、寬帶數(shù)據(jù)控制、數(shù)據(jù)變換和微處理器等高性能數(shù)字系統(tǒng)的應用??刂?、數(shù)據(jù)變換和微處理器等高性能數(shù)字系統(tǒng)的應用。 ACEX 1K系列器件將查找表結(jié)構(gòu)和嵌入式陣列結(jié)構(gòu)相結(jié)系列器件將查找表結(jié)構(gòu)和嵌入式陣列結(jié)構(gòu)相結(jié)合,可以在單個可編程芯片中實現(xiàn)系統(tǒng)集成,因此,合,可以在單個可編程芯片中實現(xiàn)系統(tǒng)集成,因此, A
49、CEX 1K系列器件為高性能系統(tǒng)設計提供了低成本的器件,系列器件為高性能系統(tǒng)設計提供了低成本的器件,具有較高的性價比。具有較高的性價比。 ACEX 1K系列器件的產(chǎn)品有:系列器件的產(chǎn)品有:EP1K10、EP1K30、EP1K50和和EP1K100。 我們實驗室所用的就是我們實驗室所用的就是ACEX 1K系列器件的系列器件的EP1K100QC208-3。它具有高密度、系統(tǒng)級功能、內(nèi)部連。它具有高密度、系統(tǒng)級功能、內(nèi)部連線靈活、線靈活、I/O引腳功能強等特點。引腳功能強等特點。8.18.1 概概 述述輸 入緩沖電路與陣列或陣列輸出緩沖電路輸入輸出圖圖8-1 基本基本PLD器件的原理結(jié)構(gòu)圖器件的原理
50、結(jié)構(gòu)圖8.1.1 可編程邏輯器件的發(fā)展歷程可編程邏輯器件的發(fā)展歷程70年代年代80年代年代90年代年代PROM 和和PLA 器件器件改進的改進的 PLA 器件器件GAL器件器件FPGA器件器件EPLD 器件器件CPLD器件器件內(nèi)嵌復雜內(nèi)嵌復雜功能模塊功能模塊的的SoPC8.1.2 可編程邏輯器件的分類可編程邏輯器件的分類圖圖8-2 按集成度按集成度(PLD)分類分類 可編程邏輯器件(PLD) 簡單PLD 復雜PLD PROM PAL PLA GAL CPLD FPGA 8.2 簡單簡單PLD原理原理8.2.1 電路符號表示電路符號表示圖圖8-3 常用邏輯門符號與現(xiàn)有國標符號的對照常用邏輯門符號
51、與現(xiàn)有國標符號的對照圖圖8-4PLD的互補緩沖器的互補緩沖器 圖圖8-5 PLD的互補輸入的互補輸入 圖圖8-6 PLD中與陣列表示中與陣列表示圖圖8-7 PLD中或陣列的表示中或陣列的表示 圖圖8-8 陣列線連接表示陣列線連接表示 8.2.2 PROM地 址譯 碼 器存 儲 單 元陣 列0A1A1nA0W1W1pW0F1F1mFnp2圖圖8-9 PROM基本結(jié)構(gòu):基本結(jié)構(gòu):0111201110110.AAAWAAAWAAAWnnnn其邏輯函數(shù)是:其邏輯函數(shù)是:圖圖8-10 PROM的邏輯陣列結(jié)構(gòu)的邏輯陣列結(jié)構(gòu)與陣列(不可編程)或陣列(可編程)0A1A1nA0W1W1pW0F1F1mFnp20
52、1,011, 111, 1101 ,011 , 111 , 1100,010, 110, 10WMWMWMFWMWMWMFWMWMWMFmmpmpmpppp邏輯函數(shù)表示:邏輯函數(shù)表示:8.2.2 PROM圖圖8-11 PROM表達的表達的PLD圖陣列圖陣列與陣列(固定)或陣列(可編程)0A1A1A1A0A0A1F0F圖圖8-12 用用PROM完成半加器邏輯陣列完成半加器邏輯陣列與 陣 列 ( 固 定 )或 陣 列( 可 編 程 )0A1A1A1A0A0A1F0F8.2.3 PLA圖8-13 PLA邏輯陣列示意圖邏輯陣列示意圖與 陣 列 ( 可 編 程 )或 陣 列( 可 編 程 )0A1A1A
53、1A0A0A1F0F8.2.3 PLA圖圖8-14 PLA與與 PROM的比較的比較0A1A1F0F2A2F0A1A1F0F2A2F8.2.4 PAL0A1A1F0F0A1A1F0F 圖8-15PAL結(jié)構(gòu)結(jié)構(gòu)圖圖8-16 PAL的常用表示的常用表示8.2.4 PAL11100100R11100100RQQD11100100R11100100RVccSG1SL07SL17SG0SL0619I/O711100100R11100100RQQD11100100R11100100RVccSG1SL06SL16SG1SL0618I/O61CLK/I02I13I2078150 3 4 78121115 16
54、19 2023 2427 2831圖圖8-17 一種一種PAL16V8的部分結(jié)構(gòu)圖的部分結(jié)構(gòu)圖8.2.5 GAL2071 90 34 781 21 11 51 61 92 02 32 42 72 83 11381 51 8O L M CO L M C41 62 31 752 43 11 6O L M CO L M C63 23 91 574 04 71 4O L M CO L M C84 85 51 395 66 31 2O L M CO L M C1 1I / C L KIIIIIIIII / O EI / O / QI / O / QI / O / QI / O / QI / O / QI
55、 / O / QI / O / QI / O / QC L KO E圖圖8-18 GAL16V8的結(jié)構(gòu)圖的結(jié)構(gòu)圖GAL: General Array Logic最多有8個或項,每個或項最多有32個與項EPLDErasable Programmable Logic Device8.2.5 GAL邏輯宏單元輸入/輸出口輸入口時鐘信號輸入三態(tài)控制可編程與陣列固定或陣列GAL16V88.2.5 GAL圖圖8-19寄存器輸出結(jié)構(gòu)寄存器輸出結(jié)構(gòu)圖圖8-20寄存器模式組合雙向輸出結(jié)構(gòu)寄存器模式組合雙向輸出結(jié)構(gòu)8.2.5 GAL圖圖8-21 組合輸出雙向結(jié)構(gòu)組合輸出雙向結(jié)構(gòu)圖圖8-22 復合型組合輸出結(jié)構(gòu)復合
56、型組合輸出結(jié)構(gòu)8.2.5 GAL圖圖8-23 反饋輸入結(jié)構(gòu)反饋輸入結(jié)構(gòu)圖圖8-24輸出反饋結(jié)構(gòu)輸出反饋結(jié)構(gòu)8.2.5 GAL圖圖8-25 簡單模式輸出結(jié)構(gòu)簡單模式輸出結(jié)構(gòu)8.3 CPLD結(jié)構(gòu)與工作原理結(jié)構(gòu)與工作原理圖圖8-26 MAX7000系列的單個宏單元結(jié)構(gòu)系列的單個宏單元結(jié)構(gòu)PRNCLRNENA邏輯陣列全局清零共享邏輯擴展項清零時鐘清零選擇寄 存 器旁路并行擴展項通往 I/O模塊通往 PIA乘積項選擇矩陣來自 I/O引腳全局時鐘QDEN來自來自 PIA的的 36個信號個信號快速輸入選擇快速輸入選擇2(1) 邏輯陣列塊邏輯陣列塊(LAB)圖圖8-27- MAX7128S的結(jié)構(gòu)的結(jié)構(gòu)(2)
57、宏單元宏單元(3) 擴展乘積項擴展乘積項(4) 可編程連線陣列可編程連線陣列(5) 不同的不同的LAB通過在可編程連線陣列通過在可編程連線陣列(PIA)上布線,以相互連上布線,以相互連接構(gòu)成所需的邏輯。接構(gòu)成所需的邏輯。(6)I/O控制塊控制塊圖圖8-28 共享擴展乘積項結(jié)構(gòu)共享擴展乘積項結(jié)構(gòu) 圖圖8-29 并聯(lián)擴展項饋送方式并聯(lián)擴展項饋送方式圖圖8-30 PIA信號布線到信號布線到LAB的方式的方式圖圖8-31-EPM7128S器器件的件的I/O控制控制塊塊8.4 FPGA結(jié)構(gòu)與工作原理結(jié)構(gòu)與工作原理8.4.1 查找表查找表0000010100000101161RAM輸入A輸入B輸入C輸入D
58、查找表輸出多路選擇器圖圖8-33 FPGA查找表單元內(nèi)部結(jié)構(gòu)查找表單元內(nèi)部結(jié)構(gòu)查找表LUT輸入1輸入2輸入3輸入4輸出圖圖8-32 FPGA查找查找表單元:表單元:一個一個N輸入查找表輸入查找表 (LUT,Look Up Table)可以實現(xiàn)可以實現(xiàn)N個輸入變量的任何邏輯功個輸入變量的任何邏輯功能,如能,如 N輸入輸入“與與”、 N輸入輸入“異或異或”等。等。輸入多于輸入多于N個的函數(shù)、方程必須分開用幾個查找表(個的函數(shù)、方程必須分開用幾個查找表( LUT)實現(xiàn)實現(xiàn)輸出輸出查黑查黑找盒找盒表子表子輸入輸入1輸入輸入2輸入輸入3輸入輸入4什么是查找表什么是查找表?基于查找表的結(jié)構(gòu)模塊基于查找表的
59、結(jié)構(gòu)模塊 0000010100000101輸入 A 輸入 B 輸入C 輸入D 查找表輸出16x1RAM查找表原理查找表原理多路選擇器8.4.2 FLEX10K系列器件系列器件圖圖8-34 FLEX 10K內(nèi)內(nèi)部結(jié)構(gòu)部結(jié)構(gòu).IOCIOCIOCIOC.IOCIOC.IOCIOC.IOCIOC.IOCIOC邏輯單元邏輯單元.IOCIOC.IOCIOCIOCIOC.快速通道互連快速通道互連邏輯陣列塊邏輯陣列塊 (LAB)IOCIOC.IOCIOC.IOCIOC.IOCIOC.IOCIOC.IOCIOC.IOCIOCFLEX 10K系列FPGA結(jié)構(gòu)圖.IOCIOC.IOCIOC.IOCIOC.IOCIO
60、C.IOCIOC.IOCIOCEABEAB嵌入式嵌入式陣列塊陣列塊(1) 邏輯單元邏輯單元LE圖圖8-35 LE(LC)結(jié)構(gòu)圖結(jié)構(gòu)圖數(shù)據(jù)1Lab 控制 3LE 輸出進位鏈級聯(lián)鏈查找表 (LUT)清零和預置邏輯時鐘選擇進位輸入級聯(lián)輸入進位輸出級聯(lián)輸出Lab 控制 1CLRNDQ數(shù)據(jù)2數(shù)據(jù)3數(shù)據(jù)4Lab 控制 2Lab 控制 4(1) 邏輯單元邏輯單元LE圖圖8-36 進位鏈連進位鏈連通通LAB中的所有中的所有LE快速加法器快速加法器, 比較器和計數(shù)器比較器和計數(shù)器DFF進位輸入進位輸入(來自上一個邏輯單元來自上一個邏輯單元)S1LE1查找表查找表LUT進位鏈進位鏈DFFS2LE2A1B1A2B2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 設備管道清洗管理制度
- 設計中心日常管理制度
- 設計公司簽單管理制度
- 設計班級績效管理制度
- 診室人員健康管理制度
- 診所張貼中藥管理制度
- 診斷證明規(guī)范管理制度
- 調(diào)度考核獎勵管理制度
- 財政信息安全管理制度
- 貨到付款績效管理制度
- 品質(zhì)異常處理時間規(guī)范
- 2024地測防治水崗位責任制及制度
- 德國ICE高速列車課件
- 員工違規(guī)行為處理規(guī)定
- 河南省鄭州外國語中學2024屆物理八下期末復習檢測試題含解析
- 大學紡織職業(yè)生涯規(guī)劃書
- 消防員職業(yè)發(fā)展規(guī)劃方案
- 意外險采購服務投標方案
- DB14-T 2869-2023 建筑消防設施檢測規(guī)程
- 二手車鑒定評估報告書(范本)
- 高校校園閑置資源的共享平臺實施方案
評論
0/150
提交評論