第7章 可編程器件_第1頁
第7章 可編程器件_第2頁
第7章 可編程器件_第3頁
第7章 可編程器件_第4頁
第7章 可編程器件_第5頁
已閱讀5頁,還剩173頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第7章可編程邏輯器件7.1可編程邏輯器件概述7.2可編程邏輯器件基礎(chǔ)

7.3通用陣列邏輯GAL2023/3/91東北大學(xué)信息學(xué)院7.1.1可編程ASIC現(xiàn)狀與發(fā)展專用集成電路ASIC是面向用戶特定用途或特定功能的大規(guī)模、超大規(guī)模集成電路。ASIC是其英文ApplicationSpecificIntegratedCircuit縮寫。分類:按功能:有數(shù)字的、模擬的、數(shù)字和模擬混和的。按制造方式分:有全定制、半定制ASIC、可編程三種。7.1可編程邏輯器件概述2023/3/92東北大學(xué)信息學(xué)院可編程ASIC:用戶可在現(xiàn)場對其編程來實現(xiàn)各種特定邏輯功能。用戶可“自制”大規(guī)模數(shù)字集成電路。使用可編程ASIC和相應(yīng)的EDA開發(fā)系統(tǒng),用戶可以借助計算機實現(xiàn)各種實際的電子系統(tǒng)的設(shè)計、功能模擬、時間摸擬以及系統(tǒng)調(diào)試。2023/3/93東北大學(xué)信息學(xué)院(一)根據(jù)芯片的集成度和結(jié)構(gòu)復(fù)雜度分類:1.

簡單可編程邏輯器件SPLD:集成度小于PALCE22V10或GAL22V10的PLD。它們的特點是都具有可編程的與陣列、不可編程的或陣列、輸出邏輯宏單元OLMC和輸入輸出邏輯單元IOC。Lattice公司的PAL和PALCE系列、GAL系列等都屬于SPLD

7.1.2可編程ASIC器件分類2023/3/94東北大學(xué)信息學(xué)院2.復(fù)雜可編程邏輯器件CPLD:集成度大于PAL22V10或GAL22V10的PLD都可視為CPLD。Lattice公司的ispLSI/pLSI1000系列和MACH5系列,Xilinx公司的XC9500系列,Altera公司的MAX7000系列和MAX9000系列都是CPLD的代表性產(chǎn)品。CPLD在集成度和結(jié)構(gòu)上呈現(xiàn)的特點是具有更大的與陣列和或陣列,增加了大量的宏單元和布線資源,觸發(fā)器的數(shù)量明顯增加。2023/3/95東北大學(xué)信息學(xué)院高速的譯碼器、多位計數(shù)器、寄存器、時序狀態(tài)機、網(wǎng)絡(luò)適配器、總線控制器等較大規(guī)模的邏輯設(shè)計可選用CPLD來實現(xiàn)。Lattice公司ispLSI/pLSI3256,其集成度達14000個等效PLD門,寄存器數(shù)量達480個。Lattice公司的isP6000系列,其集成度達到25000個等效PLD門且具有320個宏單元。Altera的MAX9000最高集成度可達24000個等效PLD門,邏輯宏單元達1024個。2023/3/96東北大學(xué)信息學(xué)院因此,具有復(fù)雜算法的數(shù)字濾波器等數(shù)字信號處理單元的邏輯設(shè)計也可選用這些具有更高集成度CPLD來實現(xiàn)。3.現(xiàn)場可編程邏輯門陣列FPGA現(xiàn)場可編程門陣列FPGA是集成度和結(jié)構(gòu)復(fù)雜度最高的可編程ASIC。Xilinx公司的FPGAXC4025有2.5萬個等效PLD門,XC4085集成度可達8.5萬個等效PLD門。2023/3/97東北大學(xué)信息學(xué)院有資料表明Xilinx公司最新推出低電壓FPGAXCV1000芯片最大門數(shù)可達100萬個等效PLD門。Actel公司第二代Anti-fuseFPGA的集成度達2萬個等效PLD門。Altera的FPGAFLEX10K250的集成度為25萬個等效PLD門。Xilinx公司的XC5000/4000系列,Actel公司的ACT系列,Altera公司的FLEX8000、FLEX10K和FLEX20K系列等是FPGA的代表產(chǎn)品。2023/3/98東北大學(xué)信息學(xué)院運算器、乘法器、數(shù)字濾波器、二維卷積器等具有復(fù)雜算法的邏輯單元和信號處理單元的邏輯設(shè)計可選用FPGA實現(xiàn)。Xilinx公司和Altera公司最新開發(fā)先進的IPCORE(IP核),為FPGA在數(shù)字系統(tǒng)設(shè)計和DSP技術(shù)領(lǐng)域的應(yīng)用提供了范例。 2023/3/99東北大學(xué)信息學(xué)院

(二)按制造技術(shù)和編程方式進行分類1)

雙極熔絲制造技術(shù)的可編程ASIC(Lattice的PAL系列)2)

EECMOS制造技術(shù)的可編程ASIC(Lattice的GAL和ispLSI/pLSI)3)

SRAM制造技術(shù)的可編程ASIC(Xilinx的FPGA,Altera的FPGA)4)

反熔絲制造技術(shù)的可編程ASIC(Actel的FPGA)2023/3/910東北大學(xué)信息學(xué)院雙極熔絲和反熔絲ASIC通常稱為OTP(onetimeprogramming)器件而采用EECMOS和SRAM制造技術(shù)的可編程ASIC具有用戶可重復(fù)編程的特性,可以實現(xiàn)電擦電寫。用SRAM技術(shù)制造的FPGA則具有數(shù)據(jù)揮發(fā)性,又稱易失性。具有揮發(fā)性的FPGA,當(dāng)系統(tǒng)斷電或掉電后,寫入FPGA中的編程數(shù)據(jù)要丟失。因此,必須把要下載到FPGA的數(shù)據(jù)借用編程器固化到與其聯(lián)用的EPROM或EEPROM中,待重新上電時,芯片將編程數(shù)據(jù)再下載到FPGA中。2023/3/911東北大學(xué)信息學(xué)院FPGA的數(shù)據(jù)揮發(fā)性,決定有些環(huán)境不宜選用。可編程ASIC的編程方式有兩種,一種是采用專用編程器進行編程,一種是在系統(tǒng)編程。后者甩掉了專用編程器,而且也不用將芯片從電路系統(tǒng)取下,只利用計算機和一組下載電纜就可以在系統(tǒng)編程。Lattice和Xilinx等幾家大公司現(xiàn)在都有在系統(tǒng)可編程ASIC產(chǎn)品。在系統(tǒng)編程方式方便了用戶。2023/3/912東北大學(xué)信息學(xué)院(三)可編程ASIC的一般開發(fā)步驟(1)設(shè)計輸入(entry):邏輯原理圖(schematic)輸入方式、硬件描述語言HDL輸入方式、狀態(tài)機輸入方式等。近幾年在ASIC設(shè)計領(lǐng)域十分流行一種電子系統(tǒng)的設(shè)計描述語言——硬件描述語言HDL(HardwareDescriptionLanguage),它把電子系統(tǒng)設(shè)計、仿真綜合和測試聯(lián)系起來,不僅支持電路級別的設(shè)計描述,而且還支持對寄存器傳輸級系統(tǒng)結(jié)構(gòu)級和系統(tǒng)行為級的描述。2023/3/913東北大學(xué)信息學(xué)院目前VHDL和Verilog—VHDL以及ABEL—HDL都是廣泛使用的設(shè)計輸入硬件描述語言。設(shè)計輸入中出現(xiàn)錯誤,專用的設(shè)計軟件會自動進行編程并發(fā)出警告。國內(nèi)外近幾年采用VHDL進行系統(tǒng)邏輯設(shè)計已成為流行方式。

2023/3/914東北大學(xué)信息學(xué)院(2)功能模擬(functionsimulation)在功能模擬階段主要對所設(shè)計的電路及所輸入的電路進行功能驗證。電路中各邏輯門或各單元模塊的輸入、輸出是否有矛盾,是否有扇入、扇出不合理,違反扇入扇出條件;各單元模塊有無未加處理的輸入信號端、輸出端是否懸空、是否允許使能等項內(nèi)容均在功能模擬階段進行檢查驗證。2023/3/915東北大學(xué)信息學(xué)院功能模擬也是由相應(yīng)專門軟件完成,如有上述問題,功能模擬軟件自動發(fā)出警告,指出錯誤的信息。圖7-1ASIC開發(fā)步驟流程圖2023/3/916東北大學(xué)信息學(xué)院(3)邏輯分割(partitioning)邏輯分割的過程就是將復(fù)雜電路分解成由若干子邏輯功能塊實現(xiàn)的過程。例如,器件內(nèi)部的各子邏輯功能塊能夠?qū)崿F(xiàn)4輸入變量的任意邏輯函數(shù),然而設(shè)計輸入的是要實現(xiàn)5變量邏輯函數(shù)的邏輯電路,這就必須采用邏輯分割的辦法,將其用多個子邏輯功能塊來實現(xiàn)。邏輯分割也是借助專門軟件實現(xiàn)的。2023/3/917東北大學(xué)信息學(xué)院(4)布局和布線(placeandrouting)在布局和布線階段是用子邏輯功能塊將要實現(xiàn)的邏輯電路布置在實際的芯片上。有時,布線不好會造成芯片資源浪費或電路不可實現(xiàn)。布局和布線是一項復(fù)雜的工作。電路密度過高,自動布線不易進行。施加一定量的手動布線,以期解決布線浪費和減少布線死區(qū)。2023/3/918東北大學(xué)信息學(xué)院(5)時間模擬(timingsimulation)時間模擬是在布局和布線之后進行。布線軟件對有相同邏輯功能的電路完全可能給出不同的布線模式。因此,其系統(tǒng)的時間特性也完全可能不同。有時布線延時還會給電路功能實現(xiàn)帶來新的障礙,所以用FPGA設(shè)計實現(xiàn)的電路進行時間模擬是非常必要的。2023/3/919東北大學(xué)信息學(xué)院在使用簡單SPLD和CPLD器件實現(xiàn)設(shè)計時,由于器件的連線結(jié)構(gòu)屬于確定型的,布線延時基本是一定的,時間模擬不進行有時也能滿足設(shè)計要求。在設(shè)計一個實際的復(fù)雜系統(tǒng)時,時間模擬這一步是必不可少的。通過時間模擬可得到系統(tǒng)內(nèi)部的延時特性,發(fā)現(xiàn)競爭冒險等信息。時間摸擬對提高系統(tǒng)穩(wěn)定性十分重要。一個EDA開發(fā)系統(tǒng),是否具有timingsimulation功能也是衡量這個EDA開發(fā)系統(tǒng)先進性的一項指標(biāo)。2023/3/920東北大學(xué)信息學(xué)院(6)寫入下載數(shù)據(jù)(download)在寫入下載數(shù)據(jù)階段,所設(shè)計的電路或系統(tǒng)即將完成。所選用的器件若是CPLD和SPLD,一般選用在系統(tǒng)編程或使用合適的編程器將相應(yīng)的JED下載數(shù)據(jù)寫入到芯片中。所選用的器件若是FPGA,則需要用專門的EPROM編程器對與FPGA相配置的EPROM芯片進行編程,將FPGA的配置數(shù)據(jù)先寫入EPROM中。2023/3/921東北大學(xué)信息學(xué)院4.TOP—DOWN和BOTTOM—UP設(shè)計思想自頂向下(TOP——DOWN)設(shè)計首先是從系統(tǒng)級開始入手。把系統(tǒng)分成若干基本單元模塊,然后再把作為基本單元的這些模塊分成下一層的子模塊。TOP——DOWN的設(shè)計過程可理解為從硬件的高層次抽象描述向最低層結(jié)構(gòu)描述的一系列轉(zhuǎn)換過程,直到最后得到可實現(xiàn)的硬件單元描述為止。2023/3/922東北大學(xué)信息學(xué)院采用TOP—DOWN層次結(jié)構(gòu)化設(shè)計方法,設(shè)計者可在一個硬件系統(tǒng)的不同層次的模塊下進行設(shè)計??傮w設(shè)計師可以在上層模塊級別上對其下層模塊設(shè)計者所做的設(shè)計進行行為級摸擬驗證。在TOP—DOWN的設(shè)計過程中,劃分每一個層次摸塊時要對目標(biāo)摸塊做優(yōu)化,在實現(xiàn)摸塊時要進行摸擬仿真。雖然TOP—DOWN的設(shè)計過程是理想的,但它的缺點是得到的最小可實現(xiàn)的物理單元不標(biāo)準,成本可能較高。2023/3/923東北大學(xué)信息學(xué)院圖7-2top-down設(shè)計樹BOTTOM—UP層次結(jié)構(gòu)化設(shè)計是TOP—DOWN設(shè)計的逆過程。它雖然也是從系統(tǒng)級開始的,即從圖7-2中設(shè)計樹的樹根開始,但在層次摸塊劃分時,首先考慮的是實現(xiàn)摸塊的基本物理單元是否存在,劃分過程必須是從存在的基本單元出發(fā)。2023/3/924東北大學(xué)信息學(xué)院設(shè)計樹最末枝上的單元要么是已經(jīng)制造出的單元,要么是已經(jīng)開發(fā)成功的單元,或者是可以買得到的單元。自底向上(BOTTOM—UP)的設(shè)計過程采用的全是標(biāo)準單元,通常比較經(jīng)濟。但完全采用自底向上的設(shè)計有時不能完全達到指定的設(shè)計目標(biāo)要求。用可編程ASIC實現(xiàn)一個好的電子系統(tǒng)設(shè)計通常采用TOP—DOWN和BOTTOM—UP兩種方法的結(jié)合,充分考慮設(shè)計過程中多個指標(biāo)的平衡。2023/3/925東北大學(xué)信息學(xué)院5.設(shè)計庫及庫元件在層次設(shè)計中所用的模塊有兩種:一是預(yù)先設(shè)計好的標(biāo)準模塊,二是由用戶設(shè)計的具有特定應(yīng)用功能的模塊。前者一般要存放在EDA開發(fā)系統(tǒng)中各種類型的文件庫之中,后者必須經(jīng)過模型仿真和調(diào)試證明無誤后,建立一個圖形符號存放在用戶的設(shè)計庫中準備在更上層的設(shè)計中使用。2023/3/926東北大學(xué)信息學(xué)院也同使用設(shè)計庫中的邏輯門電路一樣,設(shè)計庫中的一個比較高級模塊一般都要由兩個模型構(gòu)成,一個是模塊的圖形符號,另一個是模塊的功能模型。圖形符號在建立原理圖時使用,功能模型在邏輯模擬仿真時使用。模塊的功能模型可以是邏輯圖形式,也可以是VHDL描述的,還可以是真值表或邏輯方程式描述的。一個已知的圖形符號可以用來代表一個或幾個功能模型,這些模型的功能相同,參數(shù)可以不同。就象2輸入7400、74LS00,74S00,功能相同,但是傳輸延時,功耗不相同。2023/3/927東北大學(xué)信息學(xué)院6.畫層次原理圖畫層次原理圖類似用邏輯門符號畫一個邏輯圖一樣,先將選用的模塊符號和連結(jié)器符號放在畫頁上,然后用連線將它們連結(jié)起來,最后將選用的符號名放在相應(yīng)的模塊及其結(jié)點上。選用符號名要注意遵循以下規(guī)則:一般把在一個層次原理圖中所使用的模塊的每一個拷貝叫做這個模塊的例化。2023/3/928東北大學(xué)信息學(xué)院為了模擬仿真和建立設(shè)計文件,每個例化都要起一個名字,如在圖7-3中4位全加器模塊FA4起名為Adder;名為Adder的模塊由4個一位全加器子模塊FA1實現(xiàn),這四個子模塊分別起名為add0、add1、add2、add3。同樣,構(gòu)成一位全加器的各個邏輯門及其信號線也要起一個名,它們的名字分別是X1、X2、A1、A2、A3、R1。為了調(diào)試或模擬仿真,常常要研究模塊中的一個指定信號。2023/3/929東北大學(xué)信息學(xué)院(a)(c)(b)圖7-3層次設(shè)計示意圖(a)頂層圖(b)模塊FA4的次層圖(c)子模塊FA1的次層原理圖2023/3/930東北大學(xué)信息學(xué)院例如,假設(shè)要研究圖7-3中1位全加器FA1的工作情況,需要觀察完整系統(tǒng)模擬時的信號x1的值。因為有4個FA1的例化,例化名稱要被合并成如下的信號名,頂層模塊名/次層模塊名:信號名。因此,要監(jiān)視全加器add2這個例化中信號線x1的時候,這個信號名應(yīng)該寫成adder/add2:x1通過上述的書寫規(guī)則,就可指定頂層模塊中adder中的模塊add2的信號x1,這個起名規(guī)則可以擴展到任何一個層次。2023/3/931東北大學(xué)信息學(xué)院7.層次聯(lián)接器符號和總線為了建立層次原理圖,一個抽象級別的模塊輸入和輸出引腳的名稱要與次層模塊原理圖相應(yīng)信號的名稱保持唯一性或者一致性,如圖7-4所示。層次模塊FA1的輸入為a、b、cin,而輸出是s、cout。信號的名稱都要標(biāo)在同模塊的輸入和輸出引腳聯(lián)接器符號上。輸入連接器:輸出連接器:2023/3/932東北大學(xué)信息學(xué)院一般輸入聯(lián)接器符號標(biāo)在原理圖左側(cè),輸出聯(lián)接器符號標(biāo)在原理圖右側(cè),其底層原理圖輸入輸出引腳的層次聯(lián)接器符號旁邊也要標(biāo)出相同的名稱a、b、cin、s、cout。當(dāng)模塊有多重的輸入和輸出信號時,層次的相互連接器就要畫成如圖7-5所示的總線形式。每條總線都要賦予一個名稱以便于模擬仿真,由圖7-5可以看出4位加法器模塊FA4有8個輸入和4個輸出,為了方便,把傳送二個4位輸入和一個4位輸出的數(shù)據(jù)信號線表示成三條總線形式,其定義如下:2023/3/933東北大學(xué)信息學(xué)院A(3:0)={A(3)A(2)A(1)A(0)}B(3:0)={B(3)B(2)B(1)B(0)}S(3:0)={S(3)S(2)S(1)S(0)}考慮到在邏輯模擬仿真時對每個獨立的信號都要進行模擬和監(jiān)測,總線的每個分支信號線也要給出唯一的名稱,在圖7-5中A(0)、A(1)、A(2)、A(3)、B(0)、B(1)、B(2)、B(3)、S(0)、S(1)、S(2)、S(3)就是獨立信號線的名稱。

2023/3/934東北大學(xué)信息學(xué)院圖7-4全加器符號與原理圖之間的層次連接器(a)全加器模塊符號(b)全加器原理圖(a)(b)2023/3/935東北大學(xué)信息學(xué)院為了進一步簡化模塊原理圖畫法,有時常常在模塊上定義多重引腳,如圖7-5(b)所示。每個多重引腳代表一組相關(guān)信號的集合,允許把總線直接聯(lián)接到模塊的引腳上,但是必須清楚每條總線代表的是4個信號的聯(lián)接。圖7-5使用總線簡化邏輯圖(a)具有分支的總線(b)多重引腳的總線模型2023/3/936東北大學(xué)信息學(xué)院8、層次化設(shè)計的模擬采用層次設(shè)計實現(xiàn)的系統(tǒng)必須進行設(shè)計模擬和驗證。一個層次設(shè)計中最底層的元件或模塊必須首先進行模擬仿真,當(dāng)其工作正確之后,再進行高一抽象級別模塊的模擬仿真。最后還要對最上層系統(tǒng)進行模擬仿真,最終完成系統(tǒng)設(shè)計。在模擬仿真時,首先要將模塊用相應(yīng)的電路來代替,稱為展平,展平工作一直做到最底層模塊都要用基本的邏輯門實現(xiàn)為止。在展平過程中所有元件及所有的信號線都必須有指定過的名稱。模擬仿真結(jié)果可以是給出正確的波形,也可以是給出一些時延參數(shù)。圖6給出的是用總線表示的波形。2023/3/937東北大學(xué)信息學(xué)院01111011101100000000S(3:0)01100110011001100000A(3:0)00010001010101010000B(3:0)1210750Time(a)(b)圖7-6用二進制數(shù)表示的總線模擬值(a)表格形式的模擬值(b)波形表示的模擬值2023/3/938東北大學(xué)信息學(xué)院7.2可編程邏輯器件基礎(chǔ)

7.2.1PLD的邏輯表示(一)PLD中陣列及其陣列交叉點的邏輯表示1.PLD中陣列交叉點的邏輯表示PLD邏輯陣列中交叉點的連接方式采用圖7-7所示的幾種邏輯表示。圖7-7(a〉表示實體連結(jié),也就是行線和列線在這個交叉點處實在的連接上,這個交叉點是不可編程點,在交叉點處打上黑實點。圖7-7陣列交叉點的PLD表示法2023/3/939東北大學(xué)信息學(xué)院圖7-7(b)表示可編程連接。無論×或⊕表示該符號所在行線和列線交叉處是個可編程點,具有一個可編程單元。在采用熔絲工藝的PLD器件中,器件出廠后用戶編程之前,所有可編程點處的熔絲都處于接通狀態(tài),習(xí)慣上都用×表示熔絲接通,因此可編程點上處處都打×或⊕。(a)實體連接(b)可編程連接(c)編程后熔絲燒斷2023/3/940東北大學(xué)信息學(xué)院然而,PLD器件被用戶編程后,可編程點上的熔絲有的燒斷,有的接通。編程后可在編程點上仍打有×,這時的×表示可編程點被編程后熔絲接通。熔絲燒斷的可編程點上的×消失,行線和列線不相接,這種情況用圖(c)表示。2023/3/941東北大學(xué)信息學(xué)院實際上對于無實體熔絲的PLD器件,編程后帶×的行線和列線交叉點同一對CMOS管的導(dǎo)通相對應(yīng),無×的行線和列線交叉點同一對CMOS管的截止相對應(yīng)。為了討論問題方便用熔絲來代替一對CMOS管。2023/3/942東北大學(xué)信息學(xué)院2.PLD中與陣列和或陣列的邏輯表示與陣列如圖7-8(a)所示。在二極管與門的各支路與輸出之間接入熔絲。熔絲保留的各支路的輸入為有效輸入,輸出F是熔絲保留各支路輸入的與邏輯函數(shù),圖7-8(b)是PLD表示。圖7-8(a)和圖7-8(b)是熔絲全部保留的與陣列表示情況。F(A,B,C)=0。圖7-8(c)是燒斷3個熔絲的情況,圖7-8(d)是圖7-8(c)的PLD表示??删幊袒蜿嚵?其構(gòu)成原理與可編程的與陣列相同F(xiàn)(A,B,C)=ABC2023/3/943東北大學(xué)信息學(xué)院2023/3/944東北大學(xué)信息學(xué)院2023/3/945東北大學(xué)信息學(xué)院1.輸入緩沖器和反饋緩沖器在PLD中有二種特殊的緩沖器,它們是輸入緩沖器和反饋緩沖器,這二種緩沖器有相同的電路構(gòu)成,圖7-10給出它們的PLD表示,它們是單輸入、雙出的緩沖器單元,一個是高有效輸出端,即同極性輸出端。另一個是低有效輸出端,即反極性輸出端。圖7-10(二)PLD中基本邏輯單元PLD表示2023/3/946東北大學(xué)信息學(xué)院與曾經(jīng)學(xué)過的輸出三態(tài)緩沖器不同,雖然輸出三態(tài)緩沖器也有三個端,但只有一個輸入和一個輸出端,另一個是使能控制端。原則上說,輸出三態(tài)緩沖器有二個輸入端一個輸出端。注意二者之間的區(qū)別。輸入緩沖器和反饋緩沖器輸出只有0、1兩個邏輯狀態(tài)。而輸出三態(tài)緩沖器除了有0、1兩個邏輯狀態(tài)外,還有一個稱為高阻(Z)的狀態(tài)。2023/3/947東北大學(xué)信息學(xué)院2.輸出極性可編程的異或門在PLD中為了實現(xiàn)輸出極性可編程,常采用圖7-11(a)所示的異或門結(jié)構(gòu)。當(dāng)熔絲燒斷,異或門輸出極性為低有效,即Q0=P⊕1=P。否則異或門輸出高有效Q0=P⊕0=P。圖7-11(b)是編程后熔絲保留,輸出極性編程為高有效。圖7-11(c)是編程熔絲燒斷,輸出極性編程為低有效。2023/3/948東北大學(xué)信息學(xué)院圖7-11輸出極性可編程異或門的PLD表示(a)輸出極性可編程異或門結(jié)構(gòu)(b)編程后熔絲保留輸出高有效的PLD表示(c)編程后熔絲燒斷,輸出低有效的PLD表示2023/3/949東北大學(xué)信息學(xué)院3.地址選擇可編程的數(shù)據(jù)選擇器地址選擇可編程的數(shù)據(jù)選擇器如圖7-12所示。其中地址選擇可編程的二選一數(shù)據(jù)選擇器(MUX)的PLD表示如圖7-12(a)所示,地址選擇可編程的四選一數(shù)據(jù)選擇器(MUX)的PLD表示如圖7-12(b)所示。地址選擇端編程后,若列線與行線相接且接地,其輸入為邏輯0。否則列線與行線斷開其輸入為邏輯1。根據(jù)編程情況,地址選擇端的輸入有00,01,10,11四種情況。2023/3/950東北大學(xué)信息學(xué)院圖7-12地址選擇可編程數(shù)據(jù)選擇器PLD表示2023/3/951東北大學(xué)信息學(xué)院4.可編程數(shù)據(jù)分配器的邏輯表示在可編程邏輯器件中可編程邏輯分配器也經(jīng)常使用。可編程邏輯分配器如圖7-13所示。在圖7-13中核心部分是可編程邏輯分配器,根據(jù)可編程熔絲S1S0的不同編程情況,乘積項簇分別被分配到n號、n+1號、n-1號、n-2號宏單元。FUSEl正常時(默認狀態(tài))不熔斷,乘積項簇的信號傳不到n號宏單元。2023/3/952東北大學(xué)信息學(xué)院若編程后FUSEl熔斷,乘積項簇信號可以傳到n號宏單元。FUSE2為又一個可編程點。如果FUSE2熔斷,異或門反極性傳輸,否則異或門原極性傳輸,n號宏單元接收信號與乘積項簇信號同相。2023/3/953東北大學(xué)信息學(xué)院圖7-13可編程邏輯分配器2023/3/954東北大學(xué)信息學(xué)院5.激勵方式可編程的時序記憶單元的PLD表示時序記憶單元有二種,即鎖存器和觸發(fā)器。二種時序記憶單元的根本區(qū)別是輸出狀態(tài)的變化是否受時鐘信號的控制。輸出的狀態(tài)只受輸入激勵信號控制的是鎖存器。只有在時鐘信號控制下輸入激勵信號才起作用的時序記憶單元是觸發(fā)器。2023/3/955東北大學(xué)信息學(xué)院圖7-14是激勵方式可編程的時序記憶單元的PLD表示。由圖7-14看出,通過編程,若線與行線斷開,其輸入為邏輯1。根據(jù)編程情況,地址選擇端的輸入有00,01,10,11四種情況。使R/L端為0,Q端的輸出狀態(tài)只與激勵信號有關(guān)并受D決定,圖7-14所示電路為D鎖存器。通過編程,若使R/L端為1,圖7-14所示電路只有在時鐘脈沖信號CLK的驅(qū)動下,D端的激勵信號才起作用,該電路具有D觸發(fā)器功能。2023/3/956東北大學(xué)信息學(xué)院圖7-14激勵方式可編程的時序記憶單元圖7-15PLD中與陣列的默認表示2023/3/957東北大學(xué)信息學(xué)院6.PLD中與陣列的缺省表示在PLD器件與陣列中??吹綀D7-15中給出的幾種表示。輸出為Z1的與門4個輸入變量全部被編程后輸入,4個交叉點均畫×。因此,Z1=A·A·B·B=0。同理:Z2為Z1的缺省表示。這時的陣列交叉點上均未畫×,而在與門符號內(nèi)卻畫有×,Z2=A·A·B·B=0。2023/3/958東北大學(xué)信息學(xué)院輸出為Z3的與門輸入陣列交叉點上無×,與門符號內(nèi)也無×,這是浮動狀態(tài)的邏輯表示。浮動輸入狀態(tài)代表與陣列編程后熔絲全部熔斷,4個輸入全都不同與門相接,相當(dāng)與門輸入懸空,與門輸出為高電平,即輸出邏輯“1”。2023/3/959東北大學(xué)信息學(xué)院7.雙向輸入/輸出和反饋輸入的邏輯表示雙向輸入/輸出和反饋輸入結(jié)構(gòu)是PLD結(jié)構(gòu)的特點之一,在圖7-16(a)中乘積項Pn+1作為三態(tài)輸出緩沖器的使能端控制信號。由于各陣列交叉點無一個×,呈懸浮狀態(tài),n+1號與門輸出為邏輯“1”。Sm作為輸出信號。同時,Sm信號又通過反饋緩沖器被反饋到與陣列。圖7-16(b)所示為圖7-16(a)的PLD表示。2023/3/960東北大學(xué)信息學(xué)院圖7-16雙向I/O反饋輸入的陣列表示(三態(tài)緩沖器有效)(a)

陣列結(jié)構(gòu)(b)

等效PLD表示2023/3/961東北大學(xué)信息學(xué)院在圖7-17(a)中n+1號與門輸出為邏輯“0",三態(tài)輸出輸出為高阻。這時,或陣列輸出信號Sm與IOm引腳斷開,加在IOm引腳上的輸入信號則可通過反饋緩沖器加到與陣列上。這種輸出三態(tài)緩沖器高阻且加在輸出引腳上的信號借助反饋緩沖器成為輸入信號的組態(tài)方式用圖7-17(b)表示。2023/3/962東北大學(xué)信息學(xué)院圖7-17雙向I/O反饋輸入的陣列表示(三態(tài)緩沖器禁止)(a)陣列結(jié)構(gòu)(b)等效PLD表示2023/3/963東北大學(xué)信息學(xué)院

二.邏輯陣列的PLD表示法應(yīng)用舉例二位串行進位加法器的原理框圖如圖7-18(a)所示。A1,B1,A0,B0,C-1是輸入,其相應(yīng)引腳號為3,4,1,2,5。C1,S1,C0,S0為輸出。其中C0是第一級加法器的進位輸出,也作為第二級加法器的級聯(lián)輸入,相應(yīng)引腳號為7,9,6,8。圖中C-1是第一級加法器的級聯(lián)輸入。2023/3/964東北大學(xué)信息學(xué)院

Si=A·B·Ci-1+A·B·Ci-1+A·B·Ci-1+A·B·Ci-1

Ci=Ai·Bi+Ai·Ci-1+Bi·Ci-1每一級加法器的標(biāo)準方程式為:圖7-18實現(xiàn)2位串行進位加法器的PLD表示(a)加法器框圖2023/3/965東北大學(xué)信息學(xué)院其陣列表示如圖7-18(b)所示。由圖7-18(a)看出,該加法器共有5個輸入,而圖7-18(b)中作為陣列的專用輸入引腳只有4個。所以,將C-1輸入安排在5號引腳上。5號引腳表面上看是輸出引腳,實際上由于5號引腳上的三態(tài)緩沖器受16號與門輸出的邏輯“0”驅(qū)動而輸出高阻,或陣列同5號引腳斷開,5號引腳上的C-1信號借助反饋緩沖器加入到與陣列作為輸入。2023/3/966東北大學(xué)信息學(xué)院16號與門輸出邏輯“0”是由于其可編程點編程后熔絲全部保留。6號引腳上的三態(tài)緩沖器受15號與門輸出邏輯“1”驅(qū)動而使能,或陣列輸出C0信號加到6號引腳。同時,6號引腳的C0信號又借助反饋緩沖器加入到與陣列,與A1和B1信號邏輯操作后形成S1和C1。6號引腳成為帶反饋的輸出引腳。2023/3/967東北大學(xué)信息學(xué)院圖7-18實現(xiàn)2位串行進位加法器的PLD表示2023/3/968東北大學(xué)信息學(xué)院

7.3通用陣列邏輯GAL

7.3.1GAL的結(jié)構(gòu)及其工作原理

(一)GAL的基本陣列結(jié)構(gòu)圖7-19給出GAL的基本結(jié)構(gòu)框圖。由圖7-19看出GAL是由可編程的與陣列、固定(不可編程)的或陣列、可編程的輸出邏輯宏單元(OLMC)三部分主要電路構(gòu)成。2023/3/969東北大學(xué)信息學(xué)院2023/3/970東北大學(xué)信息學(xué)院1.通用型GALl6V8的電路結(jié)構(gòu)圖7-20給出GALl6V8的邏輯圖和引腳圖。(1)GALl6V8是20引腳的雙列直插式IC芯片。(2)8個輸入緩沖器,8個反饋緩沖器,8個輸出三態(tài)緩沖器。(3)8個輸出邏輯宏單元(OLMC12~OLMC19)。2023/3/971東北大學(xué)信息學(xué)院(4)與陣列有64條行線和32條列輸入線,與陣列共分8個陣列塊。每個陣列塊有8條行線,每條行線各接一個與門。與門的輸出稱為乘積項(與項)。每一個陣列塊中最上面一個與門的輸出稱為第一與項。32條列輸入線分別同8個輸入緩沖器和8個反饋緩沖器的32個輸出相接,其中偶數(shù)號列輸入線分別同各緩沖器的原變量輸出端相接,而奇數(shù)號列輸入線分別同各緩沖器的反變量輸出端相接。2023/3/972東北大學(xué)信息學(xué)院或陣列由8個或門組成,8個或門分別畫在8個OLMC中。同GAL16V8相比,GAL20V8的不同之處在于增加了兩個輸入多路開關(guān)IMUX,增加了4個引腳和8條列輸入線。其他電路的工作原理均與GAL16V8相同。(5)1號引腳(I/CK)經(jīng)一級緩沖器引至OLMC的CK端和OLMC19的m端。2023/3/973東北大學(xué)信息學(xué)院(6)8個OLMC的內(nèi)部電路結(jié)構(gòu)完全相同,外部引線稍有不同,每個OLMC都有一個標(biāo)有m(鄰級號)的端子。此端子同鄰級OLMC輸出端來的引線相接,若用n表示本級號,用m表示鄰級號,則OLMC13~OLMC15的鄰級號m=n-1,OLMC16~OLMC18的鄰級號m=n+1。然而OLMC12的m端與11號引腳相接,OLMC19的m端與1號引腳(經(jīng)一級緩沖器)相接。OLMC15和OLMC16與其他6個宏單元不同之處是沒有去鄰級引線。也就決定與OLMC15和OLMC16相接的二個引腳(15,16)只能做輸出引腳而不能做輸入引腳。2023/3/974東北大學(xué)信息學(xué)院綜上可看出2,3,4,5,6,7,8,9各引腳是專用輸入引腳,1,11,12,13,14,17,18,19各引腳可通過編程組態(tài)為輸入引腳。也就是說共有16個引腳可設(shè)置為輸入。這時,只有15號和16號引腳可做輸出引腳。其中的12,13,14,17,18,19這6個引腳可通過組態(tài)設(shè)置為輸出引腳,加上15和16二個專用輸出引腳共有8個引腳可做輸出引腳。這也是GALl6V8命名的由來。2023/3/975東北大學(xué)信息學(xué)院(7)行線是與門的輸入線,列輸入線是輸入信號提供線。與門輸出的乘積項受行線和列輸入線交叉點處的可編程單元的編程情況決定。應(yīng)須說明,雖然GAL的編程單元不是實體熔絲,但是編程單元CMOS管的導(dǎo)通恰好同實體熔絲編程后熔絲保留相對應(yīng),CMOS管截止恰好同實體熔絲熔斷相對應(yīng)。因此,在研究GAL編程及有關(guān)方面問題時,也借用熔絲這一術(shù)語。2023/3/976東北大學(xué)信息學(xué)院組成:

8個輸入緩沖器

8個輸出/反饋緩沖器

8個三態(tài)輸出緩沖器

8個輸出邏輯宏單元

1個時鐘輸入CLK緩沖器

1個輸出使能緩沖器①1個可編程的與陣列2023/3/977東北大學(xué)信息學(xué)院1個可編程的與陣列8個輸入緩沖器8個輸出/反饋緩沖器8個三態(tài)輸出緩沖器8個輸出邏輯宏單元

1個時鐘輸入CLK緩沖器1個輸出使能緩沖器引腳圖2023/3/978東北大學(xué)信息學(xué)院2.GALl6V8的結(jié)構(gòu)控制字GAL和PAL同之處是GAL的輸出電路增加了輸出邏輯宏單元OLMC。GAL的輸出電路可編程。GAL的結(jié)構(gòu)控制字有5種,82位:SYN:同步控制字1位,對8個宏單元是公共的;AC02:結(jié)構(gòu)控制字1位,對8個宏單元是公共的;AC1(n):結(jié)構(gòu)控制字8位,每個宏單元一個;XOR(n):極性控制字8位,每個宏單元一個;PTD:乘積項禁止控制字64位,每個與門一個。2023/3/979東北大學(xué)信息學(xué)院上述5種結(jié)構(gòu)控制字中,只有SYN,AC0,AC1(n),X0R(n)參與組態(tài)控制。而PTD一般情況下總是為1,控制64個與門處于使能狀態(tài)。OLMC的3種輸出模式下的7種邏輯組態(tài)由前4種結(jié)構(gòu)控制字的組合決定。82位結(jié)構(gòu)控制字的值存放在GAL的82位結(jié)構(gòu)控制字陣列中2023/3/980東北大學(xué)信息學(xué)院3.GALl6V8的OLMC的內(nèi)部電路構(gòu)成OLMC的內(nèi)部電路構(gòu)成如圖7-21所示。由圖看出,OLMC內(nèi)部含有1個或門、1個異或門、1個D觸發(fā)器、2個控制門、4個多路開關(guān)。結(jié)構(gòu)控制字的值是1還是0是編譯軟件識別用戶源程序的輸出引腳邏輯方程式類型后自動生成的。生成后的結(jié)構(gòu)控制字先存放在JED文件中,編程寫入時連同熔絲編程數(shù)據(jù)一起寫入GAL芯片中。2023/3/981東北大學(xué)信息學(xué)院其中PTMUX和OMUX是二選一數(shù)據(jù)選擇器,TSMUX和FMUX是四選一數(shù)據(jù)選擇器。對于FMUX而言,形式上有3個控制端,分別受AC0,AC1(n)、AC1(m)控制。當(dāng)AC0=0時AC1(n)不起作用,僅有AC0和AC1(m)起作用。當(dāng)AC0=1時,AC1(m)不起作用。FMUX的數(shù)據(jù)輸入端上的“—"即表示相對應(yīng)的結(jié)構(gòu)控制字不起作用。實際上,起作用的控制信號只有2個,因此,FMUX實質(zhì)上是四選一數(shù)據(jù)選擇器。2023/3/982東北大學(xué)信息學(xué)院1個或門1個異或門(極性控制門)若XOR(n)=0則I/O(n)=/A若XOR(n)=1則I/O(n)=A1個D觸發(fā)器4個多路開關(guān)結(jié)構(gòu)控制字SYN輸出多路開關(guān)OMUX若OM=0則G3門輸出不經(jīng)過D觸發(fā)器,直通OX,成為組合輸出。若OM=1則G3門輸出要經(jīng)過D觸發(fā)器,成為寄存器輸出。反饋多路開關(guān)與項多路開關(guān)三態(tài)多路開關(guān)若TX=0則三態(tài)輸出為高阻若TX=1則三態(tài)有輸出2023/3/983東北大學(xué)信息學(xué)院4.GALl6V8的OLMC工作原理(1)D觸發(fā)器:D觸發(fā)器用來存儲異或門的輸出信號,進而滿足構(gòu)成各種時序電路的要求。8個OLMC中的D觸發(fā)器受來自1號引腳的時鐘信號CK同步控制。這就決定了8個OLMC中只要有一個D觸發(fā)器工作那就一定要用到1號引腳的CK信號,只有8個OLMC全都為組合電路時,1號引腳作為組合電路的一個輸入。2023/3/984東北大學(xué)信息學(xué)院(2)PTMUXP:PTMUX稱為乘積項多路開關(guān)。當(dāng)AC0AC1(n)=11時,,地電平被選中成為或門的輸入。AC0、AC1(n)中只要有一個為0時,,第一與項被選中成為或門的輸入。不難看出PTMUX主要功能是在AC0和AC1(n)控制下,用來決定第一與項是否成為或門的一個輸入信號。AC0AC1(n)=1AC0AC1(n)=02023/3/985東北大學(xué)信息學(xué)院(3)OMUXOMUX稱為輸出多路開關(guān)。OMUX的數(shù)據(jù)輸入信號分別來自D觸發(fā)器的Q端和異或門的輸出。當(dāng)AC0AC1(n)=10時,混合邏輯門G2的輸出為1,OMUX將D觸發(fā)器的輸出與輸出三態(tài)緩沖器輸入接通,這時該輸出邏輯宏單元成為時序電路。在AC0和AC1為其他值時,G2輸出為0,OMUX將異或門輸出和三態(tài)緩沖器的輸入接通,這時宏單元成為組合電路。可見OMUX的功能是在AC0和AC1(n)控制下能決定輸出邏輯宏單元是時序電路還是組合電路。2023/3/986東北大學(xué)信息學(xué)院(4)TSMUXTSMUX稱為三態(tài)多路開關(guān)。AC0AC1(n)=11時,TSMUX將標(biāo)記11的一路輸入信號(第一與項信號)送到它的輸出端。此時,第一與項信號成為輸出三態(tài)緩沖器的使能端的控制信號。可見,在這個條件下,對第一與項進行編程寫入后,若第一與項輸出為1,輸出三態(tài)緩沖器導(dǎo)通。編程寫入后,若第一與項輸出為0,輸出三態(tài)緩沖器禁止。AC0和AC1(n)對TSMUX的全部控制作用見表7-1。2023/3/987東北大學(xué)信息學(xué)院導(dǎo)通高阻OE=1,導(dǎo)通OE=0,高阻用戶編程決定輸出三態(tài)緩沖器狀態(tài)VCC地電平OE第一與項0001011TSMUX輸入信號AC0AC1(n)表7-1AC0AC1(n)對TSMUX控制表2023/3/988東北大學(xué)信息學(xué)院(5)FMUXFMUX稱為反饋多路開關(guān)。FMUX用于從寄存器Q端、本級輸出、鄰級輸出、地電平這四路信號中選出一路反饋到與陣列。當(dāng)AC0AC1n)AC1(m)=0—0時,FMUX上標(biāo)為0一0的輸入端(地電平)被選通,反饋信號取自地電平,這時的AC0=0,AC1(n)不起作用,即畫“一"表示相應(yīng)的控制字AC1(n)不起作用。FMUX的全部控制功能如表7-2所示。

2023/3/989東北大學(xué)信息學(xué)院Q端信號本級輸出端鄰級輸出地電平反饋緩沖器輸入端信號來源寄存器Q端本級輸出鄰級輸出地電平10---11---0---10---0FMUX輸入信號AC0AC1(n)AC1(m)表7-2AC0AC1對FMUX控制表2023/3/990東北大學(xué)信息學(xué)院這里需強調(diào)指出GALl6V8的OLMC12和OLMC19以及GAL20V8的OLMC15和OLMC22的AC0是由SYN代替,AC1(m)由SYN代替,也就是說這二個輸出邏輯宏單元中AC0=SYN,AC1(m)=SYN。對其他6個OLMC來說,AC1(m)等于鄰級的AC1(n)的值。例如,OLMC13的AC1(n)中n=13,它的AC1(m)中m=12,即OLMC13的反饋緩沖器的輸入信號取自何處還與OLMC12中的AC1(12)有關(guān)。2023/3/991東北大學(xué)信息學(xué)院

(二)GAL的工作模式和邏輯組態(tài)

GALl6V8系列器件的OLMC共有3種工作模式,它們是寄存器模式、復(fù)雜模式、簡單模式。編譯軟件根據(jù)用戶源文件中輸出引腳定義方程式的類型,自動設(shè)置SYN和AC0的結(jié)構(gòu)控制字的值。從而設(shè)定OLMC工作在哪一工作模式。因此,3種工作模式的設(shè)定對用戶而言是透明的。換句話說,OLMC工作模式的設(shè)定是用戶由輸出引腳定義方程來決定的。用戶源文件中輸出引腳定義方程有3種類型:A型、B型、C型。圖7-22(a)給出輸出引腳定義方程的類型同3種工作模式的關(guān)系。2023/3/992東北大學(xué)信息學(xué)院圖7-22OLMC的組態(tài)和模式之間的關(guān)系(a)SYN=0AC0=1寄存器模式SYN=1AC0=1復(fù)雜模式SYN=1AC0=0簡單模式工作模式引腳名:=邏輯方程式引腳名:=邏輯方程式引腳名.OE=邏輯方程式引腳名=邏輯方程式A型B型C型輸出引腳定義方程式輸出引腳方程類型OLMC的工作量摸式同引腳定義方程的關(guān)系:2023/3/993東北大學(xué)信息學(xué)院編譯軟件見到用戶源文件中引腳定義方程式中只要有A型,就將SYN和AC0自動設(shè)置為SYNAC0=01,各OLMC設(shè)定為寄存器模式。若源文件中引腳定義方程全是B型,編譯軟件將SYN和AC0自動設(shè)置為SYNAC0=11,各OLMC設(shè)定為復(fù)雜模式。若輸出引腳定義方程全是C型,或者部分是C型,而另一部分輸出引腳定義為輸入,SYN和AC0被自動設(shè)置為SYNAC0=10,各OLMC設(shè)定為簡單模式。輸出邏輯宏單元3種模式又細分成7種邏輯組態(tài),其隸屬關(guān)系如圖7-22(b)所示。2023/3/994東北大學(xué)信息學(xué)院圖7-22OLMC的組態(tài)和模式之間的關(guān)系(b)①寄存器輸出組態(tài)②組合輸出組態(tài)③有反饋組合輸出④無反饋組合輸出⑤無反饋組合輸出組態(tài)⑥本級組合輸出鄰級輸入組態(tài)⑦鄰級輸入組態(tài)寄存器模式:復(fù)雜模式:簡單模式:三種模式和7種組態(tài)的關(guān)系:2023/3/995東北大學(xué)信息學(xué)院1.寄存器模式下寄存器輸出組態(tài)當(dāng)用戶源文件中輸出引腳定義方程全都是A型時,編譯軟件除了設(shè)定SYNAC0=01外,還將AC1(n)全部設(shè)置為0,即SYNAC0ACl(n)=010,這時各OLMC都是寄存器輸出。由于OLMC內(nèi)部FMUX可將D觸發(fā)器的Q端信號返回到與陣列,所以用戶可以在一個OLMC輸出引腳定義方程中將另一寄存器輸出引腳的信號作為輸入使用。這種組態(tài)下,每個輸出引腳的邏輯方程中乘積項個數(shù)可達到8個。GAL芯片在這種組態(tài)工作時,1號引腳只能做D觸發(fā)器的同步脈沖CK的輸入端,11號引腳OE必須接低電平,使寄存器輸出全部使能。2023/3/996東北大學(xué)信息學(xué)院(a)寄存器模式寄存器輸出組態(tài):SYN=0;AC0=1XOR=0決定低有效;X0R=1決定高有效,AC1=0決定此宏單元為寄存器輸出組態(tài)1腳作為寄存器輸出級公共時鐘端11腳作為寄存器輸出級的公共使能端1和11號引腳總是用來作為公共時鐘和使能端2023/3/997東北大學(xué)信息學(xué)院2.寄存器模式下組合輸出組態(tài)當(dāng)用戶源文件中OLMC輸出引腳定義方程有A型,也有B型時,編譯軟件將輸出引腳定義方程為A型的OLMC的結(jié)構(gòu)控制字置成SYNAC0AC1(n)=010,而將輸出引腳定義方程B型SYNAC0AC1(n)=011,即設(shè)定OLMC工作在寄存器模式下的組合輸出組態(tài)。AC1(n)=1的宏單元是組合輸出,AC1(n)=0的宏單元是寄存器輸出。在這種組態(tài)下,用戶也可以在一個輸出引腳邏輯方程中將另一個輸出引腳的信號作為該引腳邏輯方程中的輸入使用,從而實現(xiàn)I/O功能。GAL工作在這種組態(tài)下,組合輸出的OLMC個數(shù)最多是7個。即至少應(yīng)有一個OLMC是寄存器輸出。這就是1號引腳只能作為同步時鐘引腳,11號引腳只能作為使能控制引腳而不能做輸入引腳使用的原因。在這種組態(tài)下每個輸出引腳的邏輯方程中含有乘積項個數(shù)最多只能有7個。用這種組態(tài)能夠?qū)崿F(xiàn)組合和時序混合的邏輯電路設(shè)計。2023/3/998東北大學(xué)信息學(xué)院(b)寄存器模式組合輸出組態(tài):

SYN=0.AC0=1XOR=0決定低有效.XOR=1決定高有效AC1=1決定這級為組合輸出1和11號總是分別作為時鐘CK端和使能端OE2023/3/999東北大學(xué)信息學(xué)院3.復(fù)雜模式有反饋組合輸出組態(tài)輸出引腳定義為方程全是B型,SYN和AC0設(shè)置為SYNAC0=11,各AC1(n)設(shè)置為1,結(jié)果SYNAC0Acl(n)=111。0LMC13~OLMC18這6個宏單元工作在組合I/O輸出組態(tài)。因為這6個宏單元AC0AC1(n〉=11,它們內(nèi)部的FMUX可以將其輸出引腳信號反饋到與陣列,用戶可以在一個輸出引腳的方程中將另外輸出引腳的輸出信號作為輸入。因此,0LMC13~0LMC18這6個宏單元具有I/O功能。需要強調(diào),此處的I/O功能指的是宏單元輸出引腳在輸出信號的同時又可借助FMUX將這個輸出信號反饋回到與陣列作為輸入。這同在輸出引腳加專門輸入信號是有區(qū)別的。這6個OLMC的輸出引腳方程式中最多只能有7個乘積項。由于AC0AC1(n)=11,第一與項不能作為或門的輸入。如果用戶想將哪個輸出引腳定義為專門輸入使用,必須將其三態(tài)輸出緩沖器關(guān)閉,其三態(tài)選通方程式形式為:引腳名·OE=GND。應(yīng)指出OLMC15和OLMC16上的兩個輸出引腳無法作為專用輸入引腳。2023/3/9100東北大學(xué)信息學(xué)院

(c)復(fù)雜模式有反饋組合輸出組態(tài):SYN=1;AC0=1;

XOR=0決定低有效XOR=1決定高有效;AC1=113~18號宏單元可構(gòu)成這種組態(tài)

2023/3/9101東北大學(xué)信息學(xué)院4.復(fù)雜模式無反饋組合輸出在復(fù)雜模式下,兩個最外層的輸出邏輯宏單元OLMC12和OLMC19與OLMC13~OLMC18這6個輸出邏輯宏單元不同。它們的FMUX的結(jié)構(gòu)控制字AC0=SYN=0,AC1(n)失效,AC1(m)=SYN=1。這二個宏單元的FMUX的反饋信號來自11號引腳和1號引腳的輸入信號,而不是這兩個宏單元的各自輸出信號。因此,這二個宏單元是工作在無反饋的組合輸出組態(tài)。這二個宏單元輸出引腳方程中乘積項個數(shù)最多只能有7個。這種組態(tài)下,芯片的1號引腳和11號引腳可作為輸入引腳使用。2023/3/9102東北大學(xué)信息學(xué)院(d)復(fù)雜模式無反饋組合輸出組態(tài):SYN=1;

AC0=1;

XOR=0決定低有效;XOR=1決定高有效;AC1=112,19號宏單元可構(gòu)成這種組態(tài)2023/3/9103東北大學(xué)信息學(xué)院(5)簡單模式無反饋輸出組態(tài)在簡單模式下,輸出引腳定義方程全是C型,編譯軟件將相應(yīng)各宏單元的結(jié)構(gòu)控制字置成SYNAC0AC1(n)=100。輸出引腳定義方程是C型的各宏單元均為組合輸出組態(tài)??墒?這時的15號和16號宏單元的FMUX只將“地',信號反饋到與陣列,它們沒有去鄰級的引線,無法借助專門輸入的鄰級構(gòu)成有效反饋,這種輸出組態(tài)不具有反饋功能,這也是OLMC15和OLMC16兩個輸出邏輯宏單元對應(yīng)的二個引腳只能做輸出引腳的原因。15號和16號輸出邏輯單元工作在這一組態(tài)下,其等效電路如圖7-23(e)所示。2023/3/9104東北大學(xué)信息學(xué)院(e)簡單模式無反饋組合輸出組態(tài):SYN=1;AC0=0;XOR=0決定低有效XOR=1決定高有效;AC1=0決定此宏單元為組合輸出15,16號宏單元可構(gòu)成這種組態(tài)2023/3/9105東北大學(xué)信息學(xué)院6.簡單模式下的本級組合輸出鄰級輸入組態(tài)在簡單模式下,輸出引腳定義方程全是C型。當(dāng)某宏單元輸出引腳若被定義為輸入引腳時,因為編譯軟件把那些定義為輸入引腳的宏單元的結(jié)構(gòu)控制字置為SYNAC0AC1(n)=101,結(jié)果同定義為專門輸入的宏單元相鄰的那個宏單元不能反饋本級的輸出信號,但是,它們卻給那些鄰級的專門輸入信號提供了進入與陣列的反饋通路。因此,從整體上看有圖7-23(f)所示的等效電路,OLMC15和OLMC16也能構(gòu)成這種組態(tài)。2023/3/9106東北大學(xué)信息學(xué)院(f)簡單模式本級組合輸出鄰級輸入組態(tài):SYN=1;AC0=0;XOR=0決定低有效;XOR=1決定高有效;AC1=0決定此宏單元構(gòu)成這種組態(tài);15和16號宏單元也能構(gòu)成這種組態(tài)2023/3/9107東北大學(xué)信息學(xué)院7.簡單模式鄰級輸入組態(tài)輸出引腳定義為專門輸入的宏單元,編譯軟件將其結(jié)構(gòu)控制字置為SYNAC0AC1(n)=101。這些宏單元的輸出三態(tài)緩沖器被禁止而輸出高阻,內(nèi)部的FMUX反饋信號也不是來自本級宏單元的輸出引腳,輸入無法通過本級宏單元內(nèi)部電路加到與陣列。而必須借助有反饋組合輸出組態(tài)的鄰級提供的反饋支路加到與陣列。因而把輸出引腳定義為輸入的這些宏單元工作組態(tài)稱為簡單模式鄰級輸入組態(tài)。由于外部引線方式限制,致使OLMC15和OLMC16不能工作在這種組態(tài),鄰級輸入組態(tài)的等效電路如圖7-23(g)所示。在各種輸出組態(tài)下,各OLMC的輸出信號的有效極性均受其XOR(n)決定,當(dāng)XOR(n)=1時,OLMC的輸出信號有效極性為高有效。當(dāng)XOR(n)=0時,OLMC的輸出信號有效極性為低有效,XOR(n)的控制作用通過異或門實現(xiàn)。圖7-23中給出各組態(tài)下的等效電路。2023/3/9108東北大學(xué)信息學(xué)院(g)簡單模式鄰級輸入組態(tài):SYN=1;AC0=0;XOR=0無效;X0R=1無效AC1=1決定此宏單元構(gòu)成這種組態(tài)除15和16號宏單元外都可構(gòu)成這種組態(tài)2023/3/9109東北大學(xué)信息學(xué)院(三)GAL的編程圖7-24是GALl6V8的行地址圖。它是表現(xiàn)GALl6V8芯片內(nèi)部陣列結(jié)構(gòu)的圖表。行地址圖旋轉(zhuǎn)90o后就同GAL邏輯圖對應(yīng)起來了。行地址圖中的“行”,對應(yīng)GAL邏輯圖中的列。行地址圖中的PT0,PT1,...PT63對應(yīng)邏輯圖中的0,1,...,63行。在行地址圖中共有64行、即R0W0,R0W1,...,R0W63。其中ROW0~ROW31這32行對應(yīng)與陣列。每行包含64位,每一位分別對應(yīng)邏輯圖中一條列輸入線同64條行線交叉點處的一個E2CMOS編程單元。2023/3/9110東北大學(xué)信息學(xué)院1.

GAL16V8行地址圖2023/3/9111東北大學(xué)信息學(xué)院ROW32是電子標(biāo)簽陣列(ES),該陣列是用來存儲用戶定義的有關(guān)信息,包括器件完成的電路功能,編程日期,編程者姓名等。即或芯片已經(jīng)加密,該陣列存儲的信息也可隨時讀出。ROW33~ROW59這27行是制造商保留陣列,陣列中的信息,用戶只能讀出,不能改寫。ROW60是結(jié)構(gòu)控制字陣列。2023/3/9112東北大學(xué)信息學(xué)院82位結(jié)構(gòu)控制字信息存放在該陣列中,其存放位置如圖7-25所示。圖7-25中下面的數(shù)字代表相應(yīng)的結(jié)構(gòu)控制字控制的OLMC的序號

。乘積項禁止PTD(32)位XOR(n)4位AC01位SYN1位XOR(n)4位結(jié)構(gòu)控制字AC1(n)8位乘積項禁止PTD(32)位82位TP63~TP32TP31~TP0121314151617181912~1516~192023/3/9113東北大學(xué)信息學(xué)院ROW61是加密單元,又稱加密位。其有效位只有1位,這一位被編程后,可禁止對與陣列(ROW0~ROW31)作進一步編程或驗證。ROW63是整體擦除單元,有效位也只有1位。在GAL編程時,對該行尋址后,加入高電壓執(zhí)行整體擦除命令。整體擦除后,芯片中信息包括加密單元和電子標(biāo)簽中的信息全部被擦除掉,芯片處于空白狀態(tài)。ROW62是空位,不編程,是制造廠商保留位。行地址圖上面的82位移位寄存器是編程數(shù)據(jù)寫入到GAL芯片的必經(jīng)之路。編程數(shù)據(jù)從SDIN(9號引腳)串行移入到移位寄存器中。在編程命令控制下,編程數(shù)據(jù)并行寫入被選中一行的E2CMOS單元中。在對與陣列編程時,最先串行移入的數(shù)據(jù)是PT0,最后移入的數(shù)據(jù)是PT63.GAL的編程是按著行地址圖中被選中的行號逐行進行的。2023/3/9114東北大學(xué)信息學(xué)院2.GALl6V8的編程GAL的編程實質(zhì)上是借助計算機,通過編程寫入器將*·JED文件中的編程數(shù)據(jù)寫入到芯片中,使其具有邏輯功能。同時,GAL的編程還包括將芯片內(nèi)的數(shù)據(jù)讀出進行校驗。GAL芯片在編程時,各引腳的功能完全不同于通常使用的功能。圖7-26示出GAL16V8編程時芯片各引腳的具體功能。由圖7-26看出19號引腳。(P/V)設(shè)置為編程或驗證方式控制端。當(dāng)P/V=H時,為編程寫入方式P/V=L時,是數(shù)據(jù)讀出校驗方式。9號引腳SDIN設(shè)置為編程數(shù)據(jù)輸入端。編程數(shù)據(jù)在8號引腳上的同步時鐘脈沖信號SCLK的作用下,串行移入到移位寄存器中。先移入的是PT0的數(shù)據(jù),最后讀入的是PT63的數(shù)據(jù)。2023/3/9115東北大學(xué)信息學(xué)院編程數(shù)據(jù)被寫入到陣列中的哪一行由行地址選擇(18,3,4,5,6,7號引腳)信號RAG0,RAGI,...,RAG5控制。編程數(shù)據(jù)寫入之前必須將GAL芯片中已有的數(shù)據(jù)進行整體擦除。為此,首先要對第63行的整體擦除位進行編程。這一位編程后,陣列中原有數(shù)據(jù)信息全被清除,其結(jié)果數(shù)據(jù)全部為1。一般來說,對GAL編程首先要進行整體擦除這一步。2023/3/9116東北大學(xué)信息學(xué)院圖7-26GAL16V8編程時各引腳的功能2023/3/9117東北大學(xué)信息學(xué)院整體擦除的過程如下。(1)在20號引腳加Vccp=5.25V電壓,且置11號引腳STR端為高電平。(2)在2號引腳EDIT端加入編程電壓16.5V(GAL芯片的型號不同,編程電壓略有不同)。(3)18,3,4,5,6,7號引腳均加高電平,即RAG0,RAG1,...,RAG5各端均為1,用以選擇第63行。(4)將19號引腳(P/V)端置為高電平,選擇數(shù)據(jù)編程寫入方式。設(shè)置SDIN端為H在SCLK端加入移位脈沖,將數(shù)據(jù)“1”,送入移位寄存器。(5)在11號引腳STR端加入負編程脈沖,將寄存器中的數(shù)據(jù)寫入到指定行的陣列中去。GAL芯片的型號不同,對STR負脈沖寬度要求也不同。(6)將EDIT端恢復(fù)為低電平,結(jié)束整體擦除過程中的數(shù)據(jù)寫入階段。2023/3/9118東北大學(xué)信息學(xué)院(7)為了進行數(shù)據(jù)校驗,在2號引腳EDIT端再次加上16.5V,將P/V端置為低電平。(8)將RAG0,RAGI,...,RAG5再次全置1,選擇第63行。同時,STR端加入負脈沖,讀陣列中的數(shù)據(jù)。(9)在SCLK端加入時鐘脈沖,從SDOUT端讀出數(shù)據(jù)。若全為1,說明整體擦除成功。整體擦除之后的編程過程與上面所述各步基本相同。不同之處有兩點,其一是行地址選擇端信號RAG0,RAGI,...,RAG5從000000(二)開始,目的是從與陣列第0行(ROW0)開始編程;其二是移位寄存器SDIN數(shù)據(jù)不應(yīng)總為1,而是*·JED中的實際編程數(shù)據(jù),既有1也有0。2023/3/9119東北大學(xué)信息學(xué)院如果用戶要給GAL芯片加密,還需對ROW61的加密位進行編程。GAL的全部編程過程如圖7-27所示。上述編程過程原則上對GAL20V8也適用。不同之處僅在于對應(yīng)的引腳號發(fā)生變化。對GALl6V8A/B,GAL20V8A/B來說,除在EDIN端加入的編程電壓為15V外,上述編程過程也適用。GAL的上述編程過程一般要借助編程器硬件,在計算機操作下一步一步完成的。一般對GAL器件編程下載的時間只需一秒鐘左右就可以完成。2023/3/9120東北大學(xué)信息學(xué)院2023/3/9121東北大學(xué)信息學(xué)院(四)GAL的輸入緩沖器、輸出三態(tài)緩沖器(1)GAL的輸入緩沖器電路結(jié)構(gòu)如圖7-28所示。其基本特點是輸入電平可與TTL電平兼容,輸入電流遠遠低于TTL門電路的輸入電流。如果用TTL門驅(qū)動GAL器件,可以有很高的扇出系數(shù)。之所以如此是因為GAL的輸入緩沖器的內(nèi)部電路使用了CMOS晶體管。Q2對管和Q3對管組成二個反相器,由Q2和Q3輸出二個極性互補的信號至內(nèi)部電路。C1稱為去耦電容,用來去除噪聲信號。柵極接地的場效應(yīng)管Q1同電阻R1聯(lián)合組成過壓保護電路。當(dāng)有靜電過壓時,特殊結(jié)構(gòu)的Q1漏源之間產(chǎn)生電壓擊穿,形成低阻通路,過電壓降在電阻身上,保護其內(nèi)部電路。2023/3/9122東北大學(xué)信息學(xué)院由于Q2和Q3二個對管為CMOS結(jié)構(gòu),靜態(tài)時總有一個MOS管截止,因此輸入緩沖器的電源電流ICC很小。這也是GAL器件功耗很低的原因之一。在使用GAL器件時不用的輸入引腳都要接地或接電源上,可以提高噪聲抑制能力,降低靜態(tài)電流。2023/3/9123東北大學(xué)信息學(xué)院2023/3/9124東北大學(xué)信息學(xué)院(2)輸出三態(tài)緩沖器GAL的輸出三態(tài)緩沖器的結(jié)構(gòu)如圖7-29所示。電路中Q3(上拉管)和Q2,Q1(下拉管)采用的都是NMOS管消除了寄生可控硅自鎖導(dǎo)通效應(yīng)。一般若采用NMOS管上拉和PMOS管下拉結(jié)構(gòu)容易產(chǎn)生可控自鎖導(dǎo)通效應(yīng),產(chǎn)生這種效應(yīng)后就會在電源和地之間形成低阻通路,造成電源電流ICC急劇上升,甚至器件燒毀。GAL的輸出電路改進的另一措施就是Q1和Q2采用分拍軟導(dǎo)通方式。當(dāng)Q1和Q2由截止變?yōu)閷?dǎo)通時,若Q1和Q2同時導(dǎo)通且輸出電容負載很大,可能產(chǎn)生大的電流變化率,引起感性的動態(tài)尖峰脈沖。為此,在設(shè)計上使二個反相器I1和I2的開關(guān)速度不同,I1快,I2慢一些,這樣I1由0變1快,驅(qū)動Q1迅速導(dǎo)通。I2由0變1慢,Q2稍有延時導(dǎo)通,這樣就減少了輸出驅(qū)動電流的變化率,抑制了尖峰脈沖的產(chǎn)生。2023/3/9125東北大學(xué)信息學(xué)院2023/3/9126東北大學(xué)信息學(xué)院(五)GAL的開發(fā)中應(yīng)注意的問題1.GAL開發(fā)的軟件和硬件需求(2)1臺GAL編程器(3)1套完整的軟件開發(fā)系統(tǒng)(軟件包)(4)GAL芯片及測試工具2023/3/9127東北大學(xué)信息學(xué)院2.GAL的開發(fā)流程(開發(fā)步驟)(1)建立用戶源文件用戶源文件就是設(shè)計者書寫的描述所要實現(xiàn)邏輯電路功能的軟件程序的集合。其軟件程序必須符合某一可編程邏輯設(shè)計語言的語法規(guī)范?,F(xiàn)在廣泛使用的有ABEL-HDL,VHDL,Verilog-VHDL等硬件描述語言。2023/3/9128東北大學(xué)信息學(xué)院(2)編譯用戶源文件要想使建立起來的用戶源文件變成要下載的數(shù)據(jù)文件(JEDEC),必須經(jīng)過若干步的語言處理程序。如語法檢查、邏輯化簡、功能模擬、時間模擬等。經(jīng)過專用軟件處理后,證明用戶建立的源文件正確無誤,最后將其轉(zhuǎn)換成要下載的編程數(shù)據(jù)文件(JEDEC〉。把上述的一系列處理過程稱為編譯。2023/3/9129東北大學(xué)信息學(xué)院

3.器件編程在專用的軟件系統(tǒng)環(huán)境下,啟動編程器,使計算機和編程器進行通信。將JEDEC數(shù)據(jù)文件下載到編程器上。選擇目標(biāo)器件的制造廠家、型號進行器件匹配。將GAL器件插入插座并鎖緊。這一步必須注意芯片引腳序號與插座引腳號要對應(yīng)。否則器件可能被毀壞。下載編程。即將下載到編程器上的JEDEC數(shù)據(jù)文件寫入到GAL芯片中。

2023/3/9130東北大學(xué)信息學(xué)院

4.實際功能驗證將芯片從編程器取下,放到實驗電路中或?qū)嶋H工作的系統(tǒng)中進行實際功能驗證,如果功能正確,說明開發(fā)工作結(jié)束。如果功能驗證不正確,則還要返回到第一步重新修改設(shè)計。2023/3/9131東北大學(xué)信息學(xué)院

(六)GAL器件使用中應(yīng)注意的問題1.GAL器件的供電電源要加去耦電容GAL器件接入到系統(tǒng)電路時,在GAL的VCC引腳和地之間要并接一個0.1μF左右的電容器去耦,以此提高GAL器件工作的可靠性。2.GAL器件不用端的處理GAL器件的不使用管腳切忌懸空,一律要求接地或接VCC。否則會引起附加干擾,影響整個芯片的性能。2023/3/9132東北大學(xué)信息學(xué)院3.充分利用內(nèi)部反饋在利用GAL器件進行邏輯設(shè)計時,常常利用中間輸出變量。所謂中間輸出變量是指不是真正輸出到外界的變量??梢詫⒅虚g輸出變量設(shè)置在不同的輸出端上,然后利用內(nèi)部反饋緩沖器將其引入到與陣列重新組成邏輯操作。2023/3/9133東北大學(xué)信息學(xué)院4.防止I/O引腳過壓當(dāng)I/O引腳加入高于VCC或低于地電平的電壓時,在該I/O引腳上會產(chǎn)生latch-up(鎖死)現(xiàn)象,結(jié)果損壞內(nèi)部的CMOS管。一般要求輸入信號的高、低電平偏差在容許值0.5V以內(nèi)。同時要注意GAL芯片未加電源電壓以前不要加輸入信號。5.保證GAL輸入引腳的信號上升沿和下降沿GAL的輸入引腳所加信號的上升沿和下降沿太慢會將噪聲引入芯片內(nèi),引起誤翻轉(zhuǎn)。如果已知輸入信號上升沿和下降沿太慢時,可將信號先經(jīng)過一級施密特觸發(fā)器,信號經(jīng)整形后再輸入到GAL的輸入端。2023/3/9134東北大學(xué)信息學(xué)院6.必須嚴格遵循GAL電源的最大上升時間規(guī)定許多PLD器件在加電期間要完成寄存器的加電復(fù)位操作,GAL器件就是如此。電源電壓上升率太慢會引入噪聲。7.注意GAL輸入端參數(shù)對外電路的影響。在用GAL實現(xiàn)單穩(wěn)和振蕩器時,GAL的輸入電阻和電容會對單穩(wěn)和振蕩器的參數(shù)產(chǎn)生影響,在選擇單穩(wěn)和振蕩器參數(shù)時要考慮GAL芯片輸入/輸出端的影響。最好通過實驗確定其參數(shù)。8.如何修改GAL邏輯設(shè)計在修改用GAL實現(xiàn)的邏輯電路設(shè)計時,不要直接修改JED文件,需先修改源文件,然后再對修改后的源文件進行編譯,重新得到修改后的熔絲圖和JED文件。2023/3/9135東北大學(xué)信息學(xué)院9.選用合適的GAL編程寫入器在選購編程器時必須注意編程器對個入計算機的時鐘頻率匹配問題。有些編程器在PC586上能正確對GAL芯片編程寫入,而在PII上反而不能正確編程寫入。10.如何解決乘積項不足問題當(dāng)某一輸出邏輯宏單元的乘積項不足時,可以借用另外宏單元實現(xiàn)擴充乘積項的邏輯操作,然后將其輸出再反饋到乘積項不足宏單元的與陣列輸入。11.GAL的上電復(fù)位上電之前,如果芯片工作在寄存器模式下,必須將11腳(GALl6V8)或13腳(GAL20V8)接低電平或接地。上電之后,工作在寄存器模式下的各輸出邏輯宏單元中的D觸發(fā)器其

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論