王海光數(shù)字電子技術(shù)基礎(chǔ)-第5章-時序邏輯電路_第1頁
王海光數(shù)字電子技術(shù)基礎(chǔ)-第5章-時序邏輯電路_第2頁
王海光數(shù)字電子技術(shù)基礎(chǔ)-第5章-時序邏輯電路_第3頁
王海光數(shù)字電子技術(shù)基礎(chǔ)-第5章-時序邏輯電路_第4頁
王海光數(shù)字電子技術(shù)基礎(chǔ)-第5章-時序邏輯電路_第5頁
已閱讀5頁,還剩129頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第5章時序邏輯電路閩南師范大學(xué)物理與信息工程學(xué)院第5章時序邏輯電路本章討論的主要問題時序邏輯電路在結(jié)構(gòu)和功能上有什么特點(diǎn)?怎樣描述時序邏輯電路的功能?時序電路有哪些類型,各有什么特點(diǎn)?怎樣分析時序電路?怎樣設(shè)計(jì)同步時序電路?計(jì)數(shù)器、寄存器是怎樣工作的?怎樣通過功能表了解芯片功能?并用它們設(shè)計(jì)時序電路?同步時序電路中競爭—冒險(xiǎn)的產(chǎn)生與消除。怎樣用VHDL描述時序電路?

述在第3章組合邏輯電路中我們所討論的電路都有一個共同特點(diǎn):電路的輸出信號只與當(dāng)前的輸入信號有關(guān),跟以前的輸入無關(guān)。本章我們將介紹數(shù)字邏輯電路中非常重要的另一種電路:這種電路的輸出不僅與當(dāng)前的輸入信號有關(guān),還與電路以前的輸入信號有關(guān),即跟電路所處的狀態(tài)有關(guān),這就是時序邏輯電路。3第5章時序邏輯電路

由于時序邏輯電路的輸出跟以前的輸入信號有關(guān),所以電路中必須包含能夠保留有關(guān)信息的部件,將電路因以前的外部信號輸入造成的狀態(tài)保存下來,這種含記憶能力的存儲電路雖可由延時元件組成,但通常都由我們在第4章中介紹的觸發(fā)器構(gòu)成。因此,時序邏輯電路在結(jié)構(gòu)上包含組合電路和存儲電路兩個部分,其結(jié)構(gòu)示意框圖如圖5.0.1所示。第5章時序邏輯電路第5章時序邏輯電路組合邏輯電路存儲電路X(x1,…-,xi)是外部對電路的輸入信號;Y(y1,…-,yj)是電路對外部的輸出信號;Z(z1,…-,zk)是存儲電路的驅(qū)動信號,即存儲電路中各觸發(fā)器的輸入信號;Q(q1,…-,ql)是存儲電路的狀態(tài)輸出信號,它的每一組值分別代表電路的一種狀態(tài)。X1Xi

Y1Yj

ZZk

Q1Ql

圖5.0.1時序邏輯電路結(jié)構(gòu)示意框圖這四種信號之間的邏輯關(guān)系可用以下三個向量函數(shù)表示:輸出方程:Y(tn)=F1[X(tn),Q(tn)]驅(qū)動方程:Z(tn)=F2[X(tn),Q(tn)]狀態(tài)方程:Q(tn+1)=F3[Z(tn),Q(tn)]式中tn、tn+1是對電路進(jìn)行考察的兩個相鄰的離散時間。

時序電路應(yīng)用很廣,種類很多,根據(jù)電路中各觸發(fā)器的動作步調(diào)是否一致,有同步、異步之分。對于同步時序電路,電路中的所有觸發(fā)器都受同一個時鐘控制,所以狀態(tài)的改變發(fā)生于同一時刻,異步時序電路則不然。由于同步時序電路在大規(guī)模高速系統(tǒng)中有明顯優(yōu)勢,是當(dāng)今數(shù)字電路系統(tǒng)的主流工作模式,故而也是本章學(xué)習(xí)討論的主要對象。6第5章時序邏輯電路

根據(jù)影響電路對外輸出信號的因素不同,又有Mealy型和Moore型之分。在Mealy型電路中,其輸出信號不僅跟電路的狀態(tài)有關(guān),還與外部的輸入信號有關(guān)。而Moore型電路的輸出信號僅跟電路的狀態(tài)有關(guān),是Mealy型電路中的一個特例。

由于Mealy型電路的輸出信號與外部的輸入信號有關(guān),故其輸出信號可能因外部輸入信號受干擾而不可靠,而Moore型電路則不然,但電路的輸出信號對外部輸入信號的響應(yīng)比Mealy型電路慢。7第5章時序邏輯電路

此外,根據(jù)時序電路邏輯功能的不同,還有計(jì)數(shù)器、寄存器、序列信號發(fā)生器等之分,由于計(jì)數(shù)器和寄存器是時序電路中最基本的電路部件,用它可方便地構(gòu)成具有其它功能的電路部件,顯得尤其最重要,因此也是本章學(xué)習(xí)討論的主要對象。8第5章時序邏輯電路

輸出方程、驅(qū)動方程和狀態(tài)方程雖然共同描述了時序電路的邏輯功能,但不直觀,往往難以由它獲得電路邏輯功能的完整印象,因?yàn)樗鼈儍H反映了兩個相鄰考察時間之間的邏輯關(guān)系。為此,還需在這三組方程的基礎(chǔ)上,將電路在一系列時鐘信號作用下狀態(tài)轉(zhuǎn)換的全過程找出來,以便直觀地考察電路的邏輯功能。用于描述時序電路在一系列時鐘信號作用下狀態(tài)轉(zhuǎn)換全過程的主要工具有三種:狀態(tài)轉(zhuǎn)換表、狀態(tài)轉(zhuǎn)換圖和時序波形圖。5.1時序邏輯電路的人工分析與設(shè)計(jì)

一、同步時序邏輯電路的分析

導(dǎo)出同步時序電路的狀態(tài)轉(zhuǎn)換表、狀態(tài)轉(zhuǎn)換圖和時序波形圖,判斷時序電路邏輯功能的通常步驟:

5.1.1時序邏輯電路的人工分析1.根據(jù)給定的時序電路列出電路的輸出方程和驅(qū)動方程組。2.將各個驅(qū)動方程代入對應(yīng)觸發(fā)器的特性方程得到整個時序電路的狀態(tài)方程組。3.根據(jù)電路的狀態(tài)方程組計(jì)算列出電路的狀態(tài)轉(zhuǎn)換表。4.根據(jù)電路的狀態(tài)轉(zhuǎn)換表畫出狀態(tài)轉(zhuǎn)換圖或時序波形圖。5.根據(jù)狀態(tài)轉(zhuǎn)換圖或時序波形圖說明電路的邏輯功能,判斷電路能否自啟動。

下面通過一個例子來說明分析的方法和將會涉及到的一些基本概念?!纠?.1】試分析圖5.1.1所示電路的功能。

從Y輸出端的電路結(jié)構(gòu)或輸出方程表達(dá)式可知,本電路的輸出信號僅與當(dāng)前電路的狀態(tài)有關(guān),屬M(fèi)oore型同步時序邏輯電路。解:(1)在圖5.1.1所示電路中所有觸發(fā)器都采用同一個時鐘源CLK,因而本電路屬同步時序邏輯電路,由所示電路可寫出其輸出方程和驅(qū)動方程如下:5.1.1時序邏輯電路的人工分析(2)將以上特性方程代入JK觸發(fā)器的特性方程

得電路的狀態(tài)方程組如下:5.1.1時序邏輯電路的人工分析

完整列出電路所有可能出現(xiàn)的狀態(tài),分別以此為電路的現(xiàn)態(tài),根據(jù)前邊已求解的輸出方程和電路的狀態(tài)方程組算出電路的輸出和次態(tài),得到電路的狀態(tài)轉(zhuǎn)換表如表5.1.1所示:現(xiàn)

態(tài)次

態(tài)輸出

Y00000101001110010111011100101110111100001010011011110111

5.1.1時序邏輯電路的人工分析表5.1.1例5.1的狀態(tài)轉(zhuǎn)換表(4)根據(jù)以上狀態(tài)轉(zhuǎn)換表(表5.1.1)畫狀態(tài)轉(zhuǎn)換圖如圖5.1.2所示。將狀態(tài)轉(zhuǎn)換表表示成狀態(tài)轉(zhuǎn)換圖的目的,是為了更直觀形象地描述電路的功能。5.1.1時序邏輯電路的人工分析表5.1.1例5.1的狀態(tài)轉(zhuǎn)換表5.1.1時序邏輯電路的人工分析

狀態(tài)轉(zhuǎn)換圖中以圓圈表示電路的狀態(tài),在圓圈內(nèi)標(biāo)注電路的狀態(tài)編碼;以箭頭指向線表示狀態(tài)轉(zhuǎn)換的方向,在箭頭指向線上標(biāo)注以斜線/分隔的電路的輸入輸出信號(通常輸入、輸出信號分別標(biāo)示于斜線/的上、下方)。為明確電路狀態(tài)編碼各碼位與觸發(fā)器的對應(yīng)關(guān)系,還應(yīng)給出排序示范圖(如圖5.1.2示范圖圓圈中標(biāo)注的Q3Q2Q1),對含多個輸入輸出端的時序電路,也應(yīng)在示范圖中標(biāo)出(如圖5.1.2中指向線上標(biāo)注的/Y)。(4)根據(jù)以上狀態(tài)轉(zhuǎn)換表(表5.1.1)畫狀態(tài)轉(zhuǎn)換圖如圖5.1.2所示。將狀態(tài)轉(zhuǎn)換表表示成狀態(tài)轉(zhuǎn)換圖的目的,是為了更直觀形象地描述電路的功能。5.1.1時序邏輯電路的人工分析(5)電路功能判斷說明。

對電路功能的判斷應(yīng)結(jié)合輸入輸出信號的具體物理含義來分析,若無相關(guān)信息,就只能在通常意義上進(jìn)行基本的判斷。這種判斷雖然會因視角的不同而得出貌似不同的自然文字表述結(jié)論,但它們的核心邏輯功能卻是一樣的——正如狀態(tài)轉(zhuǎn)換表或狀態(tài)轉(zhuǎn)換圖所展示的邏輯功能。為便于后續(xù)的判斷說明,這里先介紹幾個即將涉及到的基本概念。有效狀態(tài)與有效循環(huán):時序電路所處的狀態(tài)并不總是都被利用到,我們把被利用到的狀態(tài)稱為有效狀態(tài),把由有效狀態(tài)構(gòu)成的循環(huán)稱為有效循環(huán)。無效狀態(tài)與無效循環(huán):時序電路中沒被用到的狀態(tài)稱為無效狀態(tài),由無效狀態(tài)構(gòu)成的循環(huán)稱為無效循環(huán)。能自啟動與不能自啟動:對于存在無效循環(huán)的時序電路,可能會因某種原因(比如受干擾)進(jìn)入無效循環(huán)而無法自動返回到有效循環(huán)中,呈現(xiàn)“死機(jī)”現(xiàn)象,我們稱之不能自啟動,若時序電路中不存在無效循環(huán),那么即使落入無效狀態(tài),電路也會在時鐘驅(qū)動下自行進(jìn)入有效循環(huán),實(shí)現(xiàn)自啟動。

5.1.1時序邏輯電路的人工分析

由該電路的狀態(tài)轉(zhuǎn)換圖5.1.2可知電路運(yùn)行時存在兩個獨(dú)立的閉合循環(huán),其中一個循環(huán)只有010和101這兩個狀態(tài),每來兩個時鐘脈沖就循環(huán)一周,由于該循環(huán)的輸出Y恒為1,使本循環(huán)無使用價值而不被利用,是無效循環(huán),它使本電路無自啟動能力。5.1.1時序邏輯電路的人工分析

另一個循環(huán)包含其余的六個狀態(tài),每來六個時鐘脈沖完成一次循環(huán)運(yùn)行,并在Y端輸出一個低電平脈沖,故知本電路可以六進(jìn)制的方式計(jì)算時鐘信號CLK輸入的脈沖個數(shù),作為一個同步六進(jìn)制計(jì)數(shù)器來使用。若以000、001、011、111、110、100分別表示0、1、2、3、4、5,則本電路可作為一個同步六進(jìn)制加法計(jì)數(shù)器,Y則為低電平有效的進(jìn)位輸出信號。若以000、001、011、111、110、100分別表示5、4、3、2、1、0,則本電路又可作為一個同步六進(jìn)制減法計(jì)數(shù)器,Y為低電平有效的借位輸出信號。5.1.1時序邏輯電路的人工分析

現(xiàn)在換個角度觀察,若關(guān)注于輸出Y與輸入CLK之間變化快慢的關(guān)系,就會發(fā)現(xiàn)Y輸出信號的周期是CLK輸入信號周期的六倍,或者說Y輸出信號的頻率是CLK輸入信號頻率的1/6,因此本電路又可作為一個六分頻器。可見不管將它作什么功能電路使用,用到的都是循環(huán)一周需經(jīng)過六個狀態(tài),每循環(huán)一周對外輸出一個脈沖信號這最基本的邏輯功能,這正是該電路的狀態(tài)轉(zhuǎn)換表或狀態(tài)轉(zhuǎn)換圖告訴我們的。因此在未對輸入輸出信號及電路的狀態(tài)編碼下定義前,我們可這樣描述本電路的功能:這是一個無自啟動能力的Moore型同步六狀態(tài)轉(zhuǎn)換機(jī)。由于時序電路中存儲單元數(shù)量有限,電路的狀態(tài)數(shù)也是有限的,故時序電路又被稱為有限狀態(tài)機(jī)(FiniteStateMechine,FSM)。5.1.1時序邏輯電路的人工分析*二、異步時序邏輯電路的分析

與同步時序電路不同的是,異步時序電路中的所有觸發(fā)器并非由同一時鐘源觸發(fā),所以在根據(jù)電路的現(xiàn)態(tài)計(jì)算電路的次態(tài)時,應(yīng)特別注意各個觸發(fā)器的時鐘條件是否具備。只有時鐘條件具備的觸發(fā)器才會按狀態(tài)方程描述的邏輯關(guān)系轉(zhuǎn)換成次態(tài),否則將維持現(xiàn)態(tài)不變。為此在分析異步時序電路時還需列出時鐘方程,以便分析判斷,其它部分與同步時序電路的分析步驟大體相同。5.1.1時序邏輯電路的人工分析【例5.2】試分析圖5.1.3所示電路的功能。解:(1)在圖5.1.3所示電路中并非所有觸發(fā)器都采用同一個時鐘源CLK,因而本電路屬異步時序邏輯電路,由所示電路可列出其時鐘方程、輸出方程和驅(qū)動方程如下:5.1.1時序邏輯電路的人工分析(2)將以上特性方程代入JK觸發(fā)器的特性方程

得電路的狀態(tài)方程組如下,并根據(jù)時鐘方程和相應(yīng)觸發(fā)器的時鐘要求分別標(biāo)明有效的時鐘條件。5.1.1時序邏輯電路的人工分析(3)完整列出電路所有可能出現(xiàn)的狀態(tài),分別以此為電路的現(xiàn)態(tài),根據(jù)前邊已求解的輸出方程和電路的狀態(tài)方程組算出電路的輸出和次態(tài),得到電路的狀態(tài)轉(zhuǎn)換表如表5.1.2所示。時

件現(xiàn)

態(tài)次

態(tài)輸出CLK3CLK2CLK1CLK0Q3Q2Q1Q0Q3n+1Q2n+1Q1n+1Q0n+1Y0001101100011111000110110001111100011011000111110001101100011111000000010010001101000101011001111000100110101011110011011110111100010010001101000101011001111000100100001011010011010100111100000000000001010101

表中的時鐘條件用于表示相應(yīng)觸發(fā)器的有效時鐘條件是否具備,以1表示時鐘條件具備,對應(yīng)觸發(fā)器的狀態(tài)方程生效;以0表示時鐘條件不具備,對應(yīng)觸發(fā)器的狀態(tài)將保持不變。由于CLK0來自驅(qū)動電路工作的最原始時鐘CLK,因此始終有效,而CLK1則須待Q0端出現(xiàn)由1到0的變化才有效,才能為1,其它的依此類推。5.1.1時序邏輯電路的人工分析(4)根據(jù)表5.1.2所示的狀態(tài)轉(zhuǎn)換表畫出狀態(tài)轉(zhuǎn)換圖如圖5.1.4所示。5.1.1時序邏輯電路的人工分析(5)電路功能判斷說明。

由圖5.1.4所示的狀態(tài)轉(zhuǎn)換圖我們看到,本電路只有一個由十個狀態(tài)構(gòu)成的閉合循環(huán),循環(huán)外的六個狀態(tài)都會在系統(tǒng)時鐘作用下自行進(jìn)入該循環(huán)中,所以具有自啟動能力。因本電路在CLK輸入脈沖作用下進(jìn)行的狀態(tài)轉(zhuǎn)換,其狀態(tài)編碼是按二進(jìn)制自然遞增態(tài)序變換的,且每收到十個CLK輸入脈沖電路狀態(tài)循環(huán)一周,并由Y端輸出一個高電平脈沖,所以可以明確斷定這是一個具有自啟動能力的異步十進(jìn)制加法計(jì)數(shù)器,Y是電路的進(jìn)位信號輸出端。5.1.1時序邏輯電路的人工分析

由于異步時序電路易產(chǎn)生競爭冒險(xiǎn),且不易排除,在高速大系統(tǒng)中已難見其蹤影。但其電路結(jié)構(gòu)簡單,產(chǎn)品成本低廉,還會出現(xiàn)在一些技術(shù)指標(biāo)要求不高的廉價電子小產(chǎn)品中。5.1.1時序邏輯電路的人工分析

需要說明的是,本小節(jié)所介紹的分析方法只適用于早期相對簡單的時序電路,由于沒考慮到器件時間參數(shù)上的影響,只是停留在理想狀態(tài)下原理層面上的分析,難免跟工程實(shí)際運(yùn)行情況存在差異。面對現(xiàn)代大規(guī)模高速時序電路的分析,這種傳統(tǒng)的人工分析方法也因計(jì)算量太大而幾乎無法進(jìn)行,早已改用計(jì)算機(jī)輔助分析、波形仿真的辦法。因此在這里討論傳統(tǒng)人工分析方法的目的主要是為幫助初學(xué)者更好地理解時序邏輯電路的工作原理,幫助初學(xué)者具備對當(dāng)今數(shù)字電路系統(tǒng)局部較簡單的時序電路的讀圖能力。

時序邏輯電路的設(shè)計(jì)是為獲得具備所需時序功能的時序邏輯電路,是時序邏輯電路分析的逆過程。由于同步時序電路容易做到比異步時序電路工作得可靠,絕大多數(shù)實(shí)際應(yīng)用電路都被設(shè)計(jì)成同步電路,因此本小節(jié)僅討論同步時序邏輯電路的設(shè)計(jì)方法,有關(guān)異步時序電路的設(shè)計(jì)可參閱其它書籍。5.1.2時序邏輯電路的人工設(shè)計(jì)

構(gòu)建時序電路選用的基本組件可以是只有基本邏輯功能的小規(guī)模集成電路SSI(如觸發(fā)器、門電路),或者是具備特定功能的中規(guī)模集成電路MSI(如后邊將談到的計(jì)時器、寄存器等),甚至是擁有大量邏輯資源而不含具體功能的大規(guī)模集成電路LSI(如后邊將談到的CPLD、FPGA)。

根據(jù)構(gòu)建電路選用組件的不同,采用的設(shè)計(jì)方法也不同。采用大規(guī)模集成電路的設(shè)計(jì)實(shí)現(xiàn)通常需借助計(jì)算機(jī),不用人工設(shè)計(jì)的方法,而采用中規(guī)模集成電路的設(shè)計(jì)還需具備相關(guān)電路的知識基礎(chǔ),將在5.3節(jié)“常用中規(guī)模集成時序邏輯電路的應(yīng)用”中介紹,本小節(jié)僅討論面向簡單時序邏輯電路的采用小規(guī)模集成電路的設(shè)計(jì)方法。5.1.2時序邏輯電路的人工設(shè)計(jì)二、狀態(tài)化簡,求出最簡狀態(tài)轉(zhuǎn)換圖

在采用小規(guī)模集成電路的設(shè)計(jì)方案中,通常要求設(shè)計(jì)結(jié)果最簡,這就要求設(shè)計(jì)實(shí)現(xiàn)的電路所含觸發(fā)器和門電路的數(shù)目最少,為此需要去除原始狀態(tài)轉(zhuǎn)換圖中多余的狀態(tài)。由于在任何相同輸入作用下具有相同輸出并建立相同次態(tài)的原態(tài)都是等價的(等價狀態(tài)),因此狀態(tài)化簡就是要去除多余的等價狀態(tài),從而得到最簡狀態(tài)轉(zhuǎn)換圖。5.1.2時序邏輯電路的人工設(shè)計(jì)

面向簡單時序邏輯電路,采用小規(guī)模集成電路實(shí)現(xiàn)的同步時序電路設(shè)計(jì)的一般步驟如下:

一、邏輯抽象,建立原始狀態(tài)轉(zhuǎn)換圖

為把給定的時序邏輯問題抽象成由原始狀態(tài)轉(zhuǎn)換圖表示的時序邏輯函數(shù),需要處理好以下三個問題:1.確定所需輸入輸出變量的數(shù)目與表示;2.確定實(shí)現(xiàn)電路功能所需建立狀態(tài)的數(shù)目與表示;3.確定電路建立的各個狀態(tài)之間的轉(zhuǎn)換關(guān)系及對應(yīng)的輸出。

三、狀態(tài)編碼,給出編碼后的狀態(tài)轉(zhuǎn)換圖

為識別電路所處的狀態(tài),需對電路的狀態(tài)進(jìn)行編碼(或稱狀態(tài)分配)。由于n位二進(jìn)制數(shù)需用到n個觸發(fā)器,且只能表示2n種狀態(tài),在要求設(shè)計(jì)實(shí)現(xiàn)的電路最簡的情況下,為能表達(dá)電路所需的M個狀態(tài),應(yīng)使2n≥M>2n-1。

5.1.2時序邏輯電路的人工設(shè)計(jì)

當(dāng)2n>M時,從2n個狀態(tài)中挑選M個狀態(tài)的方案可能不少,狀態(tài)編碼的不同選擇,各個狀態(tài)間轉(zhuǎn)換排序的不同都會直接影響到設(shè)計(jì)結(jié)果,通常的指導(dǎo)思想是:選取的編碼和排序的方案應(yīng)有利于所選觸發(fā)器的驅(qū)動方程、輸出方程的化簡以及電路工作的穩(wěn)定可靠。

四、選擇觸發(fā)器、確保自啟動并求輸出方程和驅(qū)動方程

由于小規(guī)模集成電路的觸發(fā)器產(chǎn)品多是D觸發(fā)器和JK觸發(fā)器,實(shí)際可選余地有限,通常根據(jù)供貨、價格和個性因素等選用,并使系統(tǒng)中使用同一種類的觸發(fā)器。

5.1.2時序邏輯電路的人工設(shè)計(jì)

為求輸出方程、驅(qū)動方程,先將編碼后的最簡狀態(tài)轉(zhuǎn)換圖轉(zhuǎn)化為狀態(tài)轉(zhuǎn)換表,再以輸入和現(xiàn)態(tài)為輸入變量、次態(tài)和輸出為輸出變量,當(dāng)n≤4時,即可求得輸出和次態(tài)卡諾圖,并據(jù)此直接得到化簡后的輸出方程和驅(qū)動方程。當(dāng)n>4時,先求得輸出方程和狀態(tài)方程,然后化簡,對于選用D觸發(fā)器的設(shè)計(jì),可由化簡后的狀態(tài)方程直接得到驅(qū)動方程;對于選用JK觸發(fā)器的設(shè)計(jì),需將狀態(tài)方程變換成具有JK觸發(fā)器特性方程的形式,再通過比較求得驅(qū)動方程。

需要指出的是:當(dāng)2n>M時,因存在無效狀態(tài)而可能出現(xiàn)無效循環(huán),故由編碼后的最簡狀態(tài)轉(zhuǎn)換圖轉(zhuǎn)化成狀態(tài)轉(zhuǎn)換表時,須審查所有無效狀態(tài)的次態(tài)情況,必要時須指定對應(yīng)的次態(tài)以斷開無效循環(huán),確保電路的自啟動能力。5.1.2時序邏輯電路的人工設(shè)計(jì)五、根據(jù)驅(qū)動方程、輸出方程和選定的觸發(fā)器畫邏輯電路圖至此,邏輯設(shè)計(jì)工作已經(jīng)完成。該設(shè)計(jì)過程采用的是一種根據(jù)設(shè)計(jì)要求逐步推導(dǎo)出具體電路的自上而下的設(shè)計(jì)思想,設(shè)計(jì)結(jié)果能很好地符合設(shè)計(jì)要求,需要說明的是,上述設(shè)計(jì)步驟在實(shí)際運(yùn)用中并非每步都要執(zhí)行,可根據(jù)具體情況進(jìn)行取舍?!纠?.3】試設(shè)計(jì)一個串行數(shù)據(jù)檢測器,當(dāng)連續(xù)輸入3個或3個以上的1時輸出1,否則輸出0。5.1.2時序邏輯電路的人工設(shè)計(jì)解:為判斷串口先后輸入的數(shù)據(jù)位是否存在3個或3個以上連續(xù)的1,顯然要求待設(shè)計(jì)的電路必須具備記憶功能,因此只能用時序電路來實(shí)現(xiàn)。

以X表示輸入的數(shù)據(jù)位,Y表示檢測的輸出,設(shè)電路的初始狀態(tài)為S0態(tài),收到輸入的第一個1時改為S1態(tài),連續(xù)收到兩個1時改為S2態(tài),連續(xù)收到三或三個以上的1時改為S3態(tài),則依題意可得原始狀態(tài)圖如圖5.1.5所示。5.1.2時序邏輯電路的人工設(shè)計(jì)由原始狀態(tài)圖不難發(fā)現(xiàn),狀態(tài)S2和狀態(tài)S3在同樣輸入下有同樣的輸出和次態(tài),因此它們是等價狀態(tài),可去掉一個,從而得到簡化后的狀態(tài)轉(zhuǎn)換圖5.1.6。由簡化后的狀態(tài)轉(zhuǎn)換圖可見,電路所需狀態(tài)數(shù)M=3。根據(jù)2n≥M>2n-1的通常慣例,選取觸發(fā)器個數(shù)n=2,則有00,01,10,11四種狀態(tài)編碼,若取觸發(fā)器Q1Q0的00、01和10分別代表電路的S0、S1和S2態(tài),則可得電路輸出和次態(tài)卡諾圖如圖5.1.7所示。5.1.2時序邏輯電路的人工設(shè)計(jì)

由于觸發(fā)器Q1Q0的11取值沒被用到,屬無效狀態(tài),故須審查其次態(tài)情況。因本電路的無效狀態(tài)只有一個,若要構(gòu)成無效循環(huán),則其次態(tài)必須等于其原態(tài)。因此,只要在求次態(tài)方程時最小項(xiàng)m3與最小項(xiàng)m7有一個或一個以上沒被畫圈,就意味著不會出現(xiàn)無效循環(huán)。若選定了觸發(fā)器,則由電路的次態(tài)和輸出卡諾圖即可求解驅(qū)動方程和輸出方程。5.1.2時序邏輯電路的人工設(shè)計(jì)5.1.2時序邏輯電路的人工設(shè)計(jì)

為直觀起見,避免看錯,也可先將圖5.1.7所示的次態(tài)/輸出卡諾圖分解為分別表示Y、Q1n+1和Q0n+1的三個卡諾圖如圖5.1.8中的(a)、(b)和(c)所示。5.1.2時序邏輯電路的人工設(shè)計(jì)由圖(a)可直接得到電路的輸出方程:Y=XQ1n

若選用JK觸發(fā)器來實(shí)現(xiàn)設(shè)計(jì),為便于求出驅(qū)動方程,在利用次態(tài)卡諾圖化簡取得次態(tài)函數(shù)式時,應(yīng)在確保所得的次態(tài)方程具有JK觸發(fā)器特性方程形式的基礎(chǔ)上,再求最簡。為此,在次態(tài)卡諾圖上畫圈時,應(yīng)在Qn=0或Qn=1所對應(yīng)的那些最小項(xiàng)構(gòu)成的片區(qū)內(nèi)畫,不要跨越(若選用D觸發(fā)器,則不必這樣做)。以圖(b)Q1n+1卡諾圖為例,Q1n=0和Q1n=1所對應(yīng)的最小項(xiàng)片區(qū)分別為m0、m1、m4、m5和m2、m3、m6、m7,故m5不與m7合圈,而m7可與m6合圈。由于圖(c)中的m3和m7都沒被圈,意味著Q0n+1=0,所以不會出現(xiàn)無效循環(huán)。

根據(jù)畫圈后的次態(tài)卡諾圖可直接得到電路完整的狀態(tài)轉(zhuǎn)換圖如圖5.1.9所示。5.1.2時序邏輯電路的人工設(shè)計(jì)這樣,就可由畫圈后的次態(tài)卡諾圖得到相應(yīng)的狀態(tài)方程如下:5.1.2時序邏輯電路的人工設(shè)計(jì)對比JK觸發(fā)器的特性方程即可得電路的驅(qū)動方程如下:根據(jù)以上求解的輸出方程和驅(qū)動方程即可畫出符合設(shè)計(jì)要求的邏輯電路圖如圖5.1.10所示。5.1.2時序邏輯電路的人工設(shè)計(jì)

盡管時序邏輯電路功能種類繁多,但在數(shù)字電子系統(tǒng)中用得最多的基本時序功能部件主要有兩種:計(jì)數(shù)器和寄存器。它們和各種不同的組合電路結(jié)合,即可構(gòu)成面向各種不同應(yīng)用的功能復(fù)雜多樣的數(shù)字系統(tǒng)。由于應(yīng)用廣泛,它們或被制成標(biāo)準(zhǔn)化、系列化的中規(guī)模集成電路芯片,以自下而上的方式構(gòu)建簡單數(shù)字電子系統(tǒng);或被開發(fā)成參數(shù)可設(shè)置的宏功能模塊,便于利用EDA開發(fā)軟件自上而下地構(gòu)建復(fù)雜數(shù)字電子系統(tǒng)。下面我們簡單介紹它們的電路結(jié)構(gòu)、工作原理及一些常用集成芯片。5.2幾種常用的時序邏輯電路

計(jì)數(shù)器是一種能統(tǒng)計(jì)輸入脈沖個數(shù)的時序電路,應(yīng)用非常廣泛,除可用于計(jì)數(shù)外,還可用于分頻、定時、產(chǎn)生節(jié)拍脈沖或脈沖序列、控制程序等。它種類繁多,不勝枚舉,比如根據(jù)計(jì)數(shù)器中各個觸發(fā)器動作步調(diào)的不同,有同步計(jì)數(shù)器和異步計(jì)數(shù)器;根據(jù)計(jì)數(shù)器計(jì)數(shù)容量(又叫計(jì)數(shù)長度或模,指計(jì)數(shù)器有效循環(huán)中的狀態(tài)數(shù))的不同,有二進(jìn)制計(jì)數(shù)器和N進(jìn)制計(jì)數(shù)器;根據(jù)計(jì)數(shù)器計(jì)數(shù)過程中數(shù)值增減方向的不同,有加法計(jì)數(shù)器、減法計(jì)數(shù)器和可逆計(jì)數(shù)器。5.2.1計(jì)數(shù)器

一、二進(jìn)制計(jì)數(shù)器

二進(jìn)制計(jì)數(shù)器是指在計(jì)數(shù)過程中,電路狀態(tài)編碼按二進(jìn)制數(shù)自然遞增或遞減的方式變化,模(常用M表示)等于2n(n為電路中觸發(fā)器的個數(shù))的計(jì)數(shù)器。5.2.1計(jì)數(shù)器5.2.1計(jì)數(shù)器1.同步二進(jìn)制計(jì)數(shù)器

(1)同步二進(jìn)制加法計(jì)數(shù)器計(jì)數(shù)脈沖CLK電路中各個觸發(fā)器的狀態(tài)進(jìn)位輸出CQ3

Q2

Q1

Q0000000100010200100300110401000501010601100701110810000910010101010011101101211000131101014111001511111以4位二進(jìn)制加法計(jì)數(shù)器為例,它在計(jì)數(shù)脈沖作用下的狀態(tài)轉(zhuǎn)換及輸出如表5.2.1所示,時序波形圖如圖5.2.2。5.2.1計(jì)數(shù)器不難看出,最低位觸發(fā)器Q0始終只需翻轉(zhuǎn)功能,每來一個CLK計(jì)數(shù)脈沖就翻轉(zhuǎn)一次;其它各位觸發(fā)器僅當(dāng)它的所有低位觸發(fā)器均為1態(tài)時(低位計(jì)數(shù)已滿),才會在CLK計(jì)數(shù)脈沖作用下翻轉(zhuǎn)(低位進(jìn)位的結(jié)果),具有翻轉(zhuǎn)功能,其它時候只有保持功能。由時序波形圖可以看出,若輸入計(jì)數(shù)脈沖CLK的頻率為f,則由計(jì)數(shù)器Q0、Q1、Q2、Q3端輸出脈沖的頻率將分別為f/2、f/4、f/8、f/16。因此計(jì)數(shù)器有分頻功能,n位二進(jìn)制計(jì)數(shù)器能對輸入計(jì)數(shù)脈沖信號進(jìn)行1/21、1/22、…、1/2n的各種分頻。5.2.1計(jì)數(shù)器若以JK觸發(fā)器實(shí)現(xiàn),則各觸發(fā)器的驅(qū)動方程和電路的輸出方程為:由此可得同步4位二進(jìn)制加法數(shù)器電路如圖5.2.1所示。5.2.1計(jì)數(shù)器

仍以4位二進(jìn)制計(jì)數(shù)器為例,進(jìn)行減法計(jì)數(shù)時,它在計(jì)數(shù)脈沖作用下的狀態(tài)轉(zhuǎn)換及輸出如表5.2.2所示。計(jì)數(shù)脈沖CLK電路中各個觸發(fā)器的狀態(tài)借位輸出BQ3

Q2

Q1

Q00111101111002110103110004101105101006100107100008011109011001001010110100012001101300100140001015000015.2.1計(jì)數(shù)器(2)同步二進(jìn)制減法計(jì)數(shù)器若仍以JK觸發(fā)器實(shí)現(xiàn),則不難得出各觸發(fā)器的驅(qū)動方程和電路的輸出方程為:

由此可得同步4位二進(jìn)制減法計(jì)數(shù)器電路如圖5.2.3所示。5.2.1計(jì)數(shù)器(3)同步二進(jìn)制可逆計(jì)數(shù)器

可逆計(jì)數(shù)器是一種可在外部信號控制下進(jìn)行加法計(jì)數(shù)或減法計(jì)數(shù)的計(jì)數(shù)器。比較前面討論的同步二進(jìn)制加法計(jì)數(shù)器和同步二進(jìn)制減法計(jì)數(shù)器可知,要使計(jì)數(shù)器在加法計(jì)數(shù)和減法計(jì)數(shù)中轉(zhuǎn)換,只需用一個加/減控制信號轉(zhuǎn)換計(jì)數(shù)器的驅(qū)動方程(最低位情況相同無須轉(zhuǎn)換)和輸出方程即可?,F(xiàn)仍以JK觸發(fā)器實(shí)現(xiàn)同步4位二進(jìn)制可逆計(jì)數(shù)器為例,設(shè)控制信號=0時實(shí)現(xiàn)加法計(jì)數(shù),=1時實(shí)現(xiàn)減法計(jì)數(shù),則可得控制可逆計(jì)數(shù)器驅(qū)動及輸出轉(zhuǎn)換真值表如表5.2.3所示(J0=K0≡1,無須轉(zhuǎn)換)。5.2.1計(jì)數(shù)器欲實(shí)現(xiàn)的功能控制信號U/D

驅(qū)動信號Jj、Kj(j=1,2,3)輸出信號C/B加法計(jì)數(shù)0減法計(jì)數(shù)15.2.1計(jì)數(shù)器由表可得當(dāng)=0時,與同步4位二進(jìn)制加法計(jì)數(shù)器相同,電將實(shí)現(xiàn)加法計(jì)數(shù)的功能;與同步4位二進(jìn)制減法數(shù)器相同,電路將實(shí)現(xiàn)減法計(jì)數(shù)的功能。=1時,當(dāng)

由上述驅(qū)動方程和輸出方程可得同步4位二進(jìn)制可逆計(jì)數(shù)器電路如圖5.2.4所示。5.2.1計(jì)數(shù)器5.2.1計(jì)數(shù)器(4)集成同步4位二進(jìn)制計(jì)數(shù)器74161集成同步4位二進(jìn)制計(jì)數(shù)器74161是一種常用的二進(jìn)制計(jì)數(shù)器芯片,為了增加芯片的功能和使用的靈活性,跟前述的同步4位二進(jìn)制加法計(jì)數(shù)器相比,增加了一些控制電路和控制端口,其邏輯符號如圖5.2.5所示。

表5.2.4簡要給出了該芯片的功能表,是選擇和使用74161芯片的重要依據(jù)。輸

入輸

出ETEPCLKD0

D1D2D3C0××××××××0000010××↑D0

D1D2D3D0

D1D2D3110××××××

01110×××××

1111↑××××4位二進(jìn)制計(jì)數(shù)5.2.1計(jì)數(shù)器

由功能表5.2.4可見,集成同步4位二進(jìn)制計(jì)數(shù)器74161有以下四種功能:①異步清零功能:只要輸入信號=0(低電平有效),則電路的所有輸出都為0,因不受時鐘控制,故為異步清零端。該端優(yōu)先級別最高,其他輸入控制信號必須在它無效(=1時)的情況下才有可能起作用。

5.2.1計(jì)數(shù)器②同步置數(shù)功能:當(dāng)

=1(無效)時,若=0(低電平有效),則在時鐘CLK的作用下(“↑”表示上升沿到來)將外部數(shù)據(jù)輸入端的數(shù)據(jù)D0

、D1

、D2

和D3分別置入計(jì)數(shù)器的四個狀態(tài)輸出端Q0、Q1、Q2和Q3。由于該置數(shù)操作必須在時鐘CLK的作用下才能實(shí)現(xiàn),故為同步置數(shù)端。該端優(yōu)先級別僅比

低,是次高優(yōu)先級控制端。5.2.1計(jì)數(shù)器③保持功能:在

都無效的情況下,若ET·EP=0(無效),則電路狀態(tài)將保持不變,因進(jìn)位輸出信號C=,故當(dāng)ET=0時C=0,否則進(jìn)位輸出信號C也將保持不變。5.2.1計(jì)數(shù)器④計(jì)數(shù)功能:僅當(dāng)

·

·ET·EP=1時,該芯片才開啟了它的計(jì)數(shù)功能,對CLK的上升沿計(jì)數(shù)。具體工作情況與前述同步4位二進(jìn)制加法計(jì)數(shù)器相同。5.2.1計(jì)數(shù)器

需要說明的是,因?yàn)橹圃旃に嚭蜕a(chǎn)公司的不同,市場上有很多不同的集成同步4位二進(jìn)制計(jì)數(shù)器。比如有74LS161、CT74161、74HC161、74LVC161等,盡管它們的內(nèi)部電路有些不同,性能參數(shù)有些不同,但他們外部引線的配置、引腳排列及邏輯表都與74161相同。5.2.1計(jì)數(shù)器2.異步二進(jìn)制計(jì)數(shù)器

由同步4位二進(jìn)制加法計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換及輸出表5.2.1或同步4位二進(jìn)制加法計(jì)數(shù)器的時序波形圖5.2.2都不難發(fā)現(xiàn),若采用下降沿觸發(fā)的T’觸發(fā)器來實(shí)現(xiàn),只需將低位觸發(fā)器的狀態(tài)輸出端作為高位觸發(fā)器的時鐘(CLKi=Qi-1,i=1,2,3,…),而最低位觸發(fā)器時鐘來自原始計(jì)數(shù)脈沖CLK0=CLK,即可實(shí)現(xiàn)4位二進(jìn)制加法計(jì)數(shù)功能。由于各觸發(fā)器的時鐘來源各不相同,故為異步時序電路。5.2.1計(jì)數(shù)器對應(yīng)的異步4位二進(jìn)制加法計(jì)數(shù)器電路如圖5.2.6所示。

圖5.2.6中是以下降沿觸發(fā)的JK觸發(fā)器來構(gòu)成T’觸發(fā)器的。若改用上升沿觸發(fā),則時鐘連接應(yīng)改為(i=1,2,3,…)。

同理,由同步4位二進(jìn)制減法計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換及輸出表5.2.2可知,若采用下降沿觸發(fā)的JK觸發(fā)器來實(shí)現(xiàn),則應(yīng)使

(i=1,2,3,…),CLK0=CLK,即可實(shí)現(xiàn)二進(jìn)制減法計(jì)數(shù)功能。5.2.1計(jì)數(shù)器圖5.2.7所示的是以下降沿觸發(fā)的JK觸發(fā)器實(shí)現(xiàn)的異步4位二進(jìn)制減法計(jì)數(shù)器。5.2.1計(jì)數(shù)器同理,若選用上升沿觸發(fā)的觸發(fā)器實(shí)現(xiàn)減法計(jì)數(shù),則高低位觸發(fā)器間的時鐘連接應(yīng)改為(CLKi=Qi-1,i=1,2,3,…)。

綜上所述,在異步二進(jìn)制計(jì)數(shù)器中,計(jì)數(shù)方向與觸發(fā)器觸發(fā)沿的選擇及觸發(fā)器時鐘的連接密切相關(guān),如表5.2.5所示。加法計(jì)數(shù)減法計(jì)數(shù)上升沿CLKi=Qi-1下降沿CLKi=Qi-1級間時鐘連接

關(guān)系T’觸發(fā)沿實(shí)現(xiàn)功能表5.2.5異步二進(jìn)制計(jì)數(shù)器級間連接規(guī)律

5.2.1計(jì)數(shù)器

由表5.2.5可見,只要用一控制信號改變計(jì)數(shù)器級間連接關(guān)系,就能改變計(jì)數(shù)方向,實(shí)現(xiàn)可逆計(jì)數(shù),道理與同步二進(jìn)制可逆計(jì)數(shù)器相同,不再贅述。

幾點(diǎn)說明:

5.2.1計(jì)數(shù)器(2)前述的進(jìn)位或借位輸出采用

來實(shí)現(xiàn),雖物理意義一目了然,但作為異步計(jì)數(shù)器,可直接取自最高位的狀態(tài)

或反狀態(tài)

輸出端,無須這么繁瑣。(1)異步二進(jìn)制計(jì)數(shù)器中的進(jìn)位信號是逐級傳遞的,導(dǎo)致延時不斷累加,計(jì)數(shù)速度較慢。因電路結(jié)構(gòu)簡單,還會出現(xiàn)在一些要求不高的電子小產(chǎn)品中。

二、N進(jìn)制計(jì)數(shù)器

5.2.1計(jì)數(shù)器

二進(jìn)制以外的其它進(jìn)制計(jì)數(shù)器統(tǒng)稱N進(jìn)制計(jì)數(shù)器。出于經(jīng)濟(jì)上的原因,通常只有用量足夠大的電路才被制成定型的集成電路產(chǎn)品。由于人們?nèi)粘I钪衅毡槭褂檬M(jìn)制數(shù),所以除了前述的集成同步4位二進(jìn)制計(jì)數(shù)器74161外,還有集成的同步十進(jìn)制(N=10)計(jì)數(shù)器芯片74160。它的邏輯符號如圖5.2.8所示。

由74160的邏輯符號和功能表可見,它的用法與74161極為相似,所不同的僅在于74160是十進(jìn)制的計(jì)數(shù)循環(huán)。輸

入輸

出ETEPCLKD0

D1D2D3C0××××××××0000010××↑D0

D1D2D3D0

D1D2D3110××××××

01110×××××

1111↑××××十進(jìn)制計(jì)數(shù)5.2.1計(jì)數(shù)器表5.2.6簡要給出了該芯片的功能表。74160的狀態(tài)轉(zhuǎn)換圖如圖5.2.9所示。5.2.1計(jì)數(shù)器

為了獲得其他所需的N進(jìn)制計(jì)數(shù)器,理論上可用前述的時序電路設(shè)計(jì)方法設(shè)計(jì)得到,實(shí)踐中通常是采用已有的集成計(jì)數(shù)器連接構(gòu)成,這么做不僅簡單方便高效,而且經(jīng)濟(jì)可靠。下面介紹用已有的集成M進(jìn)制計(jì)數(shù)器構(gòu)成N進(jìn)制計(jì)數(shù)器的方法:5.2.1計(jì)數(shù)器

1.M>N的情況:

由于已有計(jì)數(shù)器的有效狀態(tài)數(shù)M大于所需狀態(tài)數(shù)N,故需設(shè)法使已有計(jì)數(shù)器的計(jì)數(shù)循環(huán)在計(jì)數(shù)中自動跳過M-N個狀態(tài)。類似前面介紹過的集成計(jì)數(shù)器74161、74160,通常集成計(jì)數(shù)器都有清零和置數(shù)輸入端,且有同步控制和異步控制之分(具體情況需查看相應(yīng)芯片的使用功能表)。由于同步控制和異步控制運(yùn)行特點(diǎn)不同,處理辦法也不同,分別介紹如下:(1)用同步置數(shù)端或同步清零端

將計(jì)數(shù)循環(huán)中某個狀態(tài)S譯碼得到的信號去控制計(jì)數(shù)器的同步控制端(同步置數(shù)端或同步清零端),使計(jì)數(shù)循環(huán)跳過M-N個狀態(tài)。由于控制信號作用在同步信號控制端,所以該狀態(tài)S將保持到下一個有效時鐘沿到來后才被更換,屬新建計(jì)數(shù)循環(huán)中的一個有效狀態(tài)。計(jì)數(shù)器的計(jì)數(shù)循環(huán)如圖5.2.10中的實(shí)線環(huán)形箭頭所示。其中圖(a)用的是同步置數(shù)端,同步置數(shù)控制信號由狀態(tài)Si譯碼產(chǎn)生;圖(b)用的是同步置零端(也可用同步置數(shù)端實(shí)現(xiàn)),同步置零控制信號由狀態(tài)SN-1譯碼產(chǎn)生。圖5.2.10獲得N進(jìn)制計(jì)數(shù)器的兩種方法

(2)用異步置數(shù)端或異步清零端

將計(jì)數(shù)循環(huán)中某個狀態(tài)S譯碼得到的信號去控制計(jì)數(shù)器的異步控制端(異步置數(shù)端或異步清零端),使計(jì)數(shù)循環(huán)跳過M-N個狀態(tài)。由于異步控制信號一有效就要產(chǎn)生作用,所以該狀態(tài)S一出現(xiàn)就要被更換掉,是一個僅維持極短時間的過度狀態(tài),不屬于新建計(jì)數(shù)循環(huán)中的一個有效狀態(tài)。計(jì)數(shù)器計(jì)數(shù)循環(huán)的跳躍部分如圖5.2.10中的虛線箭頭所示。其中圖(a)用的是異步置數(shù)端,異步置數(shù)控制信號由狀態(tài)Si+1譯碼產(chǎn)生;圖(b)用的是異步置零端(也可用異步置數(shù)端實(shí)現(xiàn)),異步置零控制信號由狀態(tài)SN譯碼產(chǎn)生。圖5.2.10獲得N進(jìn)制計(jì)數(shù)器的兩種方法解:由圖5.2.8所示的74160邏輯符號及表5.2.6給出的功能表可知,74160有一個異步清零端和一個同步置數(shù)端,因此可用兩種辦法構(gòu)成。

5.2.1計(jì)數(shù)器【例5.4】試用同步十進(jìn)制計(jì)數(shù)器74160構(gòu)成七進(jìn)制計(jì)數(shù)器。

辦法一:用同步置數(shù)端:由圖5.2.9所示的74160狀態(tài)轉(zhuǎn)換圖可知,若由Q3Q2Q1Q0=0110的狀態(tài)譯碼產(chǎn)生

的同步置數(shù)控制信號,在下一個時鐘有效沿到來時置入D3D2D1D0=0000的狀態(tài),將如圖5.2.11中的實(shí)線所示那樣,使原來的計(jì)數(shù)循環(huán)跳過0111~1001這3個狀態(tài),得到如圖5.2.12(a)所示的七進(jìn)制計(jì)數(shù)器。5.2.1計(jì)數(shù)器圖5.2.12(a)

用74160構(gòu)成七進(jìn)制計(jì)數(shù)器5.2.1計(jì)數(shù)器

由于計(jì)數(shù)循環(huán)跳過了1001這個狀態(tài),所以進(jìn)位輸出C始終為0,為此進(jìn)位輸出C可改由Q2端引出。若

的同步置數(shù)控制信號改由Q3Q2Q1Q0=0101的狀態(tài)譯碼產(chǎn)生,在下一個時鐘有效沿到來時置入D3D2D1D0=1001的狀態(tài),將如圖5.2.11中的虛線所示那樣,使原來的計(jì)數(shù)循環(huán)跳過0110~1000這3個狀態(tài),得到如圖5.2.12(b)所示的七進(jìn)制計(jì)數(shù)器。由于計(jì)數(shù)循環(huán)含有1001這個狀態(tài),所以每完成一個計(jì)數(shù)循環(huán)都會由進(jìn)位輸出C給出一個進(jìn)位脈沖。5.2.1計(jì)數(shù)器圖5.2.12(b)

用74160構(gòu)成七進(jìn)制計(jì)數(shù)器辦法二:用異步清零端:由圖5.2.9所示的74160狀態(tài)轉(zhuǎn)換圖同樣可知,若由Q3Q2Q1Q0=0111的狀態(tài)譯碼產(chǎn)生

的異步清零控制信號,則電路剛進(jìn)入Q3Q2Q1Q0=0111的狀態(tài),就會因異步清零控制信號起作用而使電路馬上進(jìn)入0000的狀態(tài)。電路的0111狀態(tài)是一個僅維持極短時間的過度狀態(tài),如圖5.2.13中的虛線所示。5.2.1計(jì)數(shù)器實(shí)現(xiàn)的電路如圖5.2.14(a)所示。因?yàn)橛?jì)數(shù)循環(huán)跳過了1001這個狀態(tài),導(dǎo)致進(jìn)位輸出C始終為0,為此進(jìn)位輸出C改由Q2端引出。由于異步清零控制信號

由Q3Q2Q1Q0=0111的狀態(tài)經(jīng)G門譯碼產(chǎn)生,故0111狀態(tài)一旦消失,異步清零控制信號

也將消失。考慮到各觸發(fā)器的清零速度快慢不同,因此異步清零控制信號可能造成電路既離開了0111的狀態(tài)又沒進(jìn)入0000的狀態(tài),所以該電路的動作并不可靠。

5.2.1計(jì)數(shù)器圖5.2.14(a)

用74160的異步置數(shù)端構(gòu)成七進(jìn)制計(jì)數(shù)器要解決電路工作可靠性問題,確保電路有足夠反應(yīng)時間使?fàn)顟B(tài)可靠清零,就應(yīng)設(shè)法使異步清零控制信號

維持足夠長時間。為此,可用一個RS鎖存器將G門譯碼產(chǎn)生的異步清零控制信號

保持下來,如圖5.2.14(b)所示。

5.2.1計(jì)數(shù)器圖5.2.14(b)

用74160的異步置數(shù)端構(gòu)成七進(jìn)制計(jì)數(shù)器

由圖(b)可見,當(dāng)計(jì)數(shù)輸入脈沖CLK上升沿到來,電路進(jìn)入Q3Q2Q1Q0=0111的狀態(tài)時,經(jīng)G1門譯碼產(chǎn)生的低電平信號使由G2和G3門構(gòu)成的RS鎖存器置1態(tài),=0使電路清零。在計(jì)數(shù)輸入脈沖CLK下降沿到來前,即使電路的0111狀態(tài)消失,G1門輸出高電平,RS鎖存器也將保持原來的1態(tài)不變,作用在異步清零控制端的信號依舊是=0,直到計(jì)數(shù)輸入脈沖CLK下降沿到來后,RS鎖存器才返回0態(tài),=1。因此異步清零控制信號=0維持時間等于計(jì)數(shù)輸入脈沖CLK持續(xù)高電平的時間,能確保電路可靠清零。若以RS鎖存器的Q端為進(jìn)位信號輸出端,則進(jìn)位輸出同樣將持續(xù)CLK保持高電平的時間。5.2.1計(jì)數(shù)器圖5.2.14(b)

用74160的異步置數(shù)端構(gòu)成七進(jìn)制計(jì)數(shù)器

2.M<N的情況:

由于已有計(jì)數(shù)器的有效狀態(tài)數(shù)M小于所需狀態(tài)數(shù)N,不足以構(gòu)成所需的有效循環(huán),故須先用多片M進(jìn)制計(jì)數(shù)器級連進(jìn)行計(jì)數(shù)容量的擴(kuò)展,然后再按前述M>N的情況進(jìn)行處理。各片之間級連辦法有兩種:

5.2.1計(jì)數(shù)器(1)串行進(jìn)位方式

串行進(jìn)位方式是以低位芯片的進(jìn)位輸出作為高位芯片的計(jì)數(shù)脈沖輸入(即高位芯片的時鐘)。在圖5.2.15所示的級連方式中,兩芯片均處于計(jì)數(shù)功能狀態(tài),但高位芯片的計(jì)數(shù)脈沖來自低位芯片的進(jìn)位輸出,故為串行進(jìn)位方式。這種級連方式的各個芯片不是同步工作的。(2)并行進(jìn)位方式

并行進(jìn)位方式是以低位芯片的進(jìn)位輸出控制高位芯片的計(jì)數(shù)功能,決定高位芯片是否產(chǎn)生計(jì)數(shù)動作。在圖5.2.16所示的級連方式中,兩芯片的計(jì)數(shù)脈沖來源相同,但高位芯片的計(jì)數(shù)功能取決于低位芯片的進(jìn)位輸出,僅當(dāng)?shù)臀恍酒倪M(jìn)位輸出1時高位芯片的計(jì)數(shù)功能才被激活,故為并行進(jìn)位方式。這種級連方式的各個芯片的工作是同步的。5.2.1計(jì)數(shù)器【例5.5】請用74161構(gòu)成二十七進(jìn)制計(jì)數(shù)器。

5.2.1計(jì)數(shù)器解:由于一片74161一個計(jì)數(shù)循環(huán)的狀態(tài)數(shù)只有16種,少于所需的27種,因此需先進(jìn)行計(jì)數(shù)容量的擴(kuò)展。兩片74161級連可構(gòu)成8位二進(jìn)制計(jì)數(shù)器,一個計(jì)數(shù)循環(huán)的狀態(tài)數(shù)達(dá)到28=256種,遠(yuǎn)大于所需的27種,因此需使計(jì)數(shù)循環(huán)跳過229個狀態(tài)。雖然74161既有同步置數(shù)控制端,又有異步清零控制端,考慮到異步控制存在的工作可靠性問題,選擇控制同步置數(shù)端。若置入狀態(tài)為零態(tài)00000000,則據(jù)前述同步清零法可知,應(yīng)由第26個狀態(tài)00011010產(chǎn)生同步置數(shù)控制信號=0,實(shí)現(xiàn)電路如圖5.2.17所示。

寄存器是一種用于存儲二進(jìn)制數(shù)據(jù)或代碼的基本時序電路。根據(jù)使用要求的不同,往往還有一些控制電路,以便控制數(shù)據(jù)的接收、清除或根據(jù)外部的通信要求簡單處理存儲的數(shù)據(jù)。按功能的不同,常把寄存器分成基本寄存器和移位寄存器兩大類。5.2.2寄存器

一、基本寄存器

基本寄存器功能單一,只能用于存儲二進(jìn)制數(shù)據(jù)或代碼。由于一個觸發(fā)器只能存儲一位二值代碼,要存儲N位的二值代碼就需要用到N個觸發(fā)器。

由圖可知,當(dāng)

=0時,寄存器內(nèi)存放的數(shù)據(jù)被清零,Q0=Q1=Q2=Q3=0。當(dāng)CLK上升沿到來時,待存數(shù)據(jù)D0、D1、D2、D3將被同步置入寄存器,使Q0=D0、Q1=D1、Q2=D2、Q3=D3,實(shí)現(xiàn)了數(shù)據(jù)的并行輸入與并行輸出。與CLK相連的緩沖器雖無具體的邏輯功能,但能使CLK的驅(qū)動能力得到加強(qiáng)。同理,與

相連帶“非”功能的緩沖器也有此目的,這是集成電路芯片中的慣用手段,目的是減輕這些公共控制端或輸入信號的負(fù)載。5.2.2寄存器圖5.2.18所示是一個由4個D觸發(fā)器構(gòu)成的寄存器74175。雖然只要有置0、置1功能的觸發(fā)器或鎖存器即可構(gòu)成寄存器的存儲單元,但采用鎖存器構(gòu)成的寄存器會因鎖存器在控制電平有效期間“透明”而可能存在空翻現(xiàn)象,抗干擾性差,只適用于數(shù)據(jù)處理單元、輸入輸出/接口或顯示單元之間數(shù)據(jù)的暫存。5.2.2寄存器

二、移位寄存器

顧名思義,移位寄存器不僅能寄存二進(jìn)制數(shù)據(jù)或代碼,還具有移位功能,寄存的數(shù)據(jù)能在移位脈沖(即時鐘脈沖)作用下依次左移或右移。所以移位寄存器功能比基本寄存器豐富,還能簡單處理寄存的數(shù)據(jù)。圖5.2.19所示是一個由4個D觸發(fā)器構(gòu)成的具有右移功能的單向移位寄存器。由圖可知,當(dāng)=0時,寄存器內(nèi)存放的數(shù)據(jù)被清零,Q0=Q1=Q2=Q3=0。當(dāng)CLK上升沿到來時,各端口數(shù)據(jù)DI、Q0、Q1、Q2、將被同步右移一位,使Q0n+1=DI、Q1n+1=Q0n、Q2n+1=Q1n、Q3

n+1=Q2n。若串行輸入端口DI在4個移位脈沖周期內(nèi)依次輸入的代碼是1101,則可分析得到在串行輸入端口DI和移位脈沖CLK作用下各觸發(fā)器狀態(tài)端的波形圖如圖5.2.20所示。5.2.2寄存器若以串行輸入端口DI為寄存器數(shù)據(jù)輸入端,而以4個觸發(fā)器的狀態(tài)端為數(shù)據(jù)輸出端,則經(jīng)過4個CLK上升沿后,從串行輸入端口DI輸入的4位代碼就全部移入移位寄存器中,并全部出現(xiàn)在數(shù)據(jù)輸出端,從而實(shí)現(xiàn)數(shù)據(jù)的串行輸入與并行輸出,即實(shí)現(xiàn)數(shù)據(jù)的串—并轉(zhuǎn)換。5.2.2寄存器

為便于靈活運(yùn)用,在定型生產(chǎn)的移位寄存器中通常還增加一些控制邏輯,比如4位雙向移位寄存器74194,還附加了左右移位選擇、數(shù)據(jù)并行輸入、數(shù)據(jù)保持等控制邏輯,其邏輯符號如圖5.2.21所示,表5.2.7是其功能表。5.2.2寄存器5.2.74位雙向移位寄存器74194功能表由表5.2.7可見,4位雙向移位寄存器74194有5種功能:當(dāng)

=0時,寄存器被異步清零。由于異步清零控制端

優(yōu)先級別最高,正常工作時應(yīng)使=1,才能實(shí)現(xiàn)以下4種功能。當(dāng)S1S0=00時,寄存器存儲的數(shù)據(jù)將保持不變。當(dāng)S1S0=01時,在CLK上升沿到來時,寄存器存儲的數(shù)據(jù)將全體右移一位,最左邊的數(shù)據(jù)位將由右移輸入端輸入的數(shù)據(jù)位DIR填補(bǔ),實(shí)現(xiàn)數(shù)據(jù)的串行右移功能。5.2.74位雙向移位寄存器74194功能表5.2.2寄存器當(dāng)S1S0=10時,在CLK上升沿到來時,寄存器存儲的數(shù)據(jù)將全體左移一位,最右邊的數(shù)據(jù)位將由左移輸入端輸入的數(shù)據(jù)位DIL填補(bǔ),實(shí)現(xiàn)數(shù)據(jù)的串行左移功能。當(dāng)S1S0=11時,在CLK上升沿到來時,外部數(shù)據(jù)并行置入端的數(shù)據(jù)D0

、D1

、D2

和D3分別置入寄存器中的四個觸發(fā)器,實(shí)現(xiàn)并行置入數(shù)據(jù)的功能。5.2.2寄存器5.2.74位雙向移位寄存器74194功能表74194功能豐富,使用靈活,還便于多片級聯(lián),構(gòu)成多位移位寄存器。圖5.2.22所示是用兩片74194構(gòu)成8位雙向移位寄存器的典型示例,可方便地實(shí)現(xiàn)8位數(shù)據(jù)的串行左右移位、8位數(shù)據(jù)的串—并或并—串轉(zhuǎn)換功能。5.2.2寄存器

在5.1.2小節(jié)中,我們介紹了面向簡單時序電路的采用小規(guī)模集成電路的設(shè)計(jì)方法。這種方法以人工手段進(jìn)行,對當(dāng)前功能復(fù)雜多樣、規(guī)模龐大而生命周期卻越來越短的電路系統(tǒng)設(shè)計(jì)所面臨的巨大運(yùn)算量和苛刻的設(shè)計(jì)時間效率,顯得困難重重而難以實(shí)施。目前多用中規(guī)模集成電路MSI(如前述的計(jì)時器、寄存器)或大規(guī)模集成電路LSI(第7章將介紹的CPLD、FPGA)來實(shí)現(xiàn)設(shè)計(jì)。

5.3常用中規(guī)模集成時序邏輯電路的應(yīng)用

本節(jié)僅討論采用中規(guī)模集成電路MSI構(gòu)成的時序電路。由于用MSI構(gòu)成時序電路多用自下而上的設(shè)計(jì)方法,要求設(shè)計(jì)者擁有豐富的MSI使用知識與設(shè)計(jì)經(jīng)驗(yàn),且設(shè)計(jì)方法靈活多樣,無固定模式,因此本節(jié)以示例介紹的方式向讀者展示用MSI構(gòu)成時序電路的方法,初學(xué)者應(yīng)仔細(xì)研究示例中電路功能實(shí)現(xiàn)的思想,以便舉一反三,活學(xué)活用,盡快提高M(jìn)SI的使用能力。5.3.1計(jì)數(shù)器的應(yīng)用計(jì)數(shù)器應(yīng)用極廣,不僅能用于計(jì)算輸入脈沖的個數(shù),還能靈活變通地用于分頻、計(jì)時、產(chǎn)生掃描信號和構(gòu)成順序脈沖發(fā)生器等場合。限于篇幅,以下只介紹幾個簡單的應(yīng)用示例,望能給初學(xué)者增加一些感性認(rèn)識,獲得一些使用的經(jīng)驗(yàn)和啟迪。一、構(gòu)成計(jì)數(shù)??煽匦陀?jì)數(shù)器在5.2.1小節(jié)中,我們介紹的計(jì)數(shù)器的模都是固定不可控的,只要加入控制信號并簡單處理,就能使計(jì)數(shù)器的模按控制要求而改變。

圖5.3.1所示電路就是一種計(jì)數(shù)??煽赜?jì)數(shù)器,它通過改變控制邏輯改變計(jì)數(shù)的模。5.3.1計(jì)數(shù)器的應(yīng)用由圖可知其同步置數(shù)控制信號當(dāng)K=0時,計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換圖如圖5.3.2所示,顯然是一個同步十進(jìn)制計(jì)數(shù)器。5.3.1計(jì)數(shù)器的應(yīng)用由圖可知其同步置數(shù)控制信號當(dāng)K=1時,計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換圖如圖5.3.3所示,電路變成一個同步十二進(jìn)制計(jì)數(shù)器。5.3.1計(jì)數(shù)器的應(yīng)用圖5.3.4所示電路也是一種計(jì)數(shù)模可控計(jì)數(shù)器。當(dāng)K=0時,置入數(shù)值D3D2D1D0=0010,計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換圖如圖5.3.5所示,顯然這是一個八進(jìn)制計(jì)數(shù)器。5.3.1計(jì)數(shù)器的應(yīng)用圖5.3.4所示電路也是一種計(jì)數(shù)??煽赜?jì)數(shù)器。當(dāng)K=1時,置入數(shù)值D3D2D1D0=0100,計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換圖如圖5.3.6所示,電路變成一個六進(jìn)制計(jì)數(shù)器。5.3.1計(jì)數(shù)器的應(yīng)用二、構(gòu)成計(jì)數(shù)型順序脈沖發(fā)生器

在數(shù)字系統(tǒng)運(yùn)行時,往往須按預(yù)定順序進(jìn)行一系列的操作,為此系統(tǒng)控制單元須給出一組在時間上有一定先后順序的控制信號。由于順序脈沖發(fā)生器能按時間先后順序輸出一組脈沖信號,常被用來形成所需的控制信號,實(shí)現(xiàn)數(shù)字系統(tǒng)各部件間的協(xié)調(diào)動作,成為一種常用的數(shù)字電路。

由于計(jì)數(shù)器在計(jì)數(shù)脈沖作用下,各個計(jì)數(shù)狀態(tài)按一定的計(jì)數(shù)循環(huán)依次更換,周而復(fù)始,所以只要用譯碼器將這些計(jì)數(shù)狀態(tài)分別譯出,即可得到順序脈沖。用這種模式構(gòu)成的順序脈沖發(fā)生器稱為計(jì)數(shù)型順序脈沖發(fā)生器。5.3.1計(jì)數(shù)器的應(yīng)用圖5.3.7所示的就是一種由計(jì)數(shù)器74161和譯碼器74138構(gòu)成的計(jì)數(shù)型順序脈沖發(fā)生器。由74161功能表可知圖中74161工作在計(jì)數(shù)狀態(tài),在連續(xù)輸入的CLK作用下,Q2Q1Q0的狀態(tài)將按二進(jìn)制加法計(jì)數(shù)遞增規(guī)律由000到111不斷更換,周而復(fù)始,經(jīng)74138譯碼,依次輸出的順序脈沖。5.3.1計(jì)數(shù)器的應(yīng)用需要注意的是,由于接74138的片選端S1,這將導(dǎo)致在CLK上升沿到來后的高電平期間74138被禁止,所有輸出端均為1,持續(xù)到CLK下降沿到來后的低電平期間74138才會根據(jù)輸入信號譯碼輸出結(jié)果。這么做的目的,是為避開在CLK上升沿到來時,計(jì)數(shù)器中各個觸發(fā)器狀態(tài)變化快慢不一導(dǎo)致的競爭—冒險(xiǎn)現(xiàn)象。該順序脈沖發(fā)生器輸出波形如圖5.3.8所示。5.3.1計(jì)數(shù)器的應(yīng)用三、構(gòu)成計(jì)數(shù)型序列信號發(fā)生器序列信號發(fā)生器又稱序列脈沖發(fā)生器,是指一組特定的串行數(shù)字信號,在數(shù)字信號的傳輸和數(shù)字系統(tǒng)的測試中常要用到。產(chǎn)生序列脈沖信號的電路即序列信號發(fā)生器。由于數(shù)據(jù)選擇器能根據(jù)地址選通相關(guān)通道的輸入信號,只要在其地址端周而復(fù)始地輸入固定的地址系列,則數(shù)據(jù)選擇器將周而復(fù)始地選通相關(guān)通道的輸入信號,輸出一組特定的串行數(shù)字信號。因此,若以計(jì)數(shù)器的計(jì)數(shù)值作為數(shù)據(jù)選擇器的地址,則在計(jì)數(shù)脈沖作用下,數(shù)據(jù)選擇器將輸出序列脈沖信號。用這種模式構(gòu)成的序列信號發(fā)生器稱為計(jì)數(shù)型序列信號發(fā)生器。5.3.1計(jì)數(shù)器的應(yīng)用圖5.3.9所示的就是一種由計(jì)數(shù)器74161和數(shù)據(jù)選擇器74151構(gòu)成的計(jì)數(shù)型序列信號發(fā)生器。由圖可見,在連續(xù)輸入的CLK脈沖作用下,計(jì)數(shù)器74161芯片Q2Q1Q0的狀態(tài)將按二進(jìn)制加法計(jì)數(shù)遞增規(guī)律由000到111不斷更換,周而復(fù)始。數(shù)據(jù)選擇器74151的地址端在計(jì)數(shù)器74161Q2Q1Q0狀態(tài)端循環(huán)往復(fù)的掃描下,將依次選中D0~D7通道輸入的數(shù)據(jù),輸出D7D6D5D4D3D2D1D0脈沖序列(輸出的先后順序是由右邊D0至左邊D7)。

根據(jù)圖中各個數(shù)據(jù)通道輸入的數(shù)據(jù)可知,該電路將輸出00010111的序列信號。由于只要改變加到D7~D0的高低電平就能改變輸出的脈沖信號序列,而不需對電路結(jié)構(gòu)做任何變動,這種結(jié)構(gòu)的計(jì)數(shù)型序列信號發(fā)生器使用起來既方便又靈活。5.3.1計(jì)數(shù)器的應(yīng)用在3.2.1小節(jié)中我們介紹了優(yōu)先編碼器的級聯(lián)擴(kuò)展使用,這在編碼信號較少的時候是個不錯的應(yīng)對辦法,但是當(dāng)要求編碼的信號較多時就不經(jīng)濟(jì)實(shí)用了,為此人們設(shè)計(jì)了一種通過掃描鍵盤生產(chǎn)按鍵編碼的電路。圖5.3.10所示是一種對128個按鍵進(jìn)行編碼的電路。四、充當(dāng)按鍵編碼的掃描電路5.3.1計(jì)數(shù)器的應(yīng)用圖中由4線—16線譯碼器74154的16根譯碼輸出線構(gòu)成按鍵的列線,由8選1數(shù)據(jù)選擇器74151的8路輸入數(shù)據(jù)通道構(gòu)成按鍵的行線。每個行線與列線的交叉點(diǎn)上均設(shè)置一個按鍵開關(guān),其電路結(jié)構(gòu)如圖右上角所示,僅當(dāng)按鍵按下時該交叉點(diǎn)上的行線與列線才產(chǎn)生電連接。因16根列線與8根行線共有128個交叉點(diǎn),故最多只可設(shè)置128個按鍵。由于所有行線均通過上拉限流電阻接高電平,故無按鍵按下時74151輸出Y=1,

=0。5.3.1計(jì)數(shù)器的應(yīng)用由兩片74161以并行進(jìn)位方式級聯(lián),取其低7個狀態(tài)位Q2Q1Q0Q3Q2Q1Q0構(gòu)成128進(jìn)制加法計(jì)數(shù)器,在時鐘CLK的連續(xù)作用下,通過74151和74154對行列線交叉點(diǎn)陣列進(jìn)行逐行逐列掃描。5.3.1計(jì)數(shù)器的應(yīng)用

需要注意的是,為確保電路捕捉到每次的按鍵信息,要求時鐘CLK的頻率不能太慢,每來128個脈沖所用的時間必須短于按鍵短接交叉點(diǎn)所持續(xù)的時間。5.3.1計(jì)數(shù)器的應(yīng)用跟計(jì)數(shù)器一樣,寄存器也是數(shù)字電子系統(tǒng)中用得最多的一種功能部件,除能寄存數(shù)據(jù)外,還能進(jìn)行數(shù)據(jù)的串—并或并—串轉(zhuǎn)換、構(gòu)成移位型計(jì)數(shù)器、構(gòu)成反饋移位型序列脈沖發(fā)生器和進(jìn)行數(shù)值的運(yùn)算處理等。5.3.1計(jì)數(shù)器的應(yīng)用一、構(gòu)成移位型計(jì)數(shù)器移位型計(jì)數(shù)器是一種以移位寄存器為主體加上反饋網(wǎng)絡(luò)構(gòu)成的具有特殊編碼的同步計(jì)數(shù)器,其電路結(jié)構(gòu)如圖5.3.11所示。這種計(jì)數(shù)器的狀態(tài)轉(zhuǎn)換遵循移位寄存器移位的規(guī)律,除第一級外,其余各級間滿足Qn+1m=Qnm-1。采用不同的串行輸入反饋邏輯F就可構(gòu)成不同形式的計(jì)數(shù)器。下面介紹兩種常用的形式。5.3.2寄存器的應(yīng)用1.環(huán)形計(jì)數(shù)器

取移位寄存器的串行輸入反饋邏輯F=Qnn-1,使Q0n+1=Qnn-1即構(gòu)成n位環(huán)形計(jì)數(shù)器。圖5.3.12所示是用74194構(gòu)成的4位環(huán)形計(jì)數(shù)器,剛上電時,由于電容C未充電,S1=1,充電后S1=0。根據(jù)74194的功能表可知當(dāng)S1=S0=1時,芯片開啟同步置數(shù)功能,在CLK作用下將并行數(shù)據(jù)輸入端的D0D1D2D3存入寄存器,使Qn0Qn1Qn2Qn3=D0D1D2D3=0001;當(dāng)S1=0,S0=1時,芯片開啟右移輸入及數(shù)據(jù)右移功能,在CLK作用下使Q0n+1Q1n+1Q2n+1Q3n+1=FQ0nQ1nQ2n=Q3nQ0nQ1nQ2n=1000。因此,在CLK的作用下,計(jì)數(shù)器工作的狀態(tài)轉(zhuǎn)換圖將如圖5.3.13所示。5.3.2寄存器的應(yīng)用

環(huán)形計(jì)數(shù)器電路結(jié)構(gòu)非常簡單,正常工作時每個狀態(tài)中始終只有一個位是1(或0),可直接輸出而無須另加譯碼器。在連續(xù)輸入的CLK作用下,各狀態(tài)輸出端將按順序出現(xiàn)矩形脈沖,構(gòu)成移位型順序脈沖發(fā)生器。但環(huán)形計(jì)數(shù)器電路的狀態(tài)利用率極低,n位移位寄存器只能構(gòu)成n進(jìn)制計(jì)數(shù)器。剩余的2n-n個狀態(tài)不僅沒用浪費(fèi),還構(gòu)成無效循環(huán),若電路受干擾進(jìn)入無效循環(huán),將不能自啟動。為可靠起見須修改反饋邏輯F,剪斷所有的無效循環(huán),將其引導(dǎo)到有效循環(huán)中。5.3.2寄存器的應(yīng)用2.扭環(huán)形計(jì)數(shù)器

若取移位寄存器的串行輸入反饋邏輯F=,使

則構(gòu)成n位扭環(huán)形計(jì)數(shù)器。圖5.3.14所示是用74194構(gòu)成的4位扭環(huán)形計(jì)數(shù)器,剛上電時,由于電容C未充電,

=0,充電后

=1。根據(jù)74194的功能表可知當(dāng)

=0時,芯片異步清零,Qn0Qn1Qn2Qn3=0000;當(dāng)S1=0,S0=1時,芯片開啟右移輸入移位功能,在CLK作用下使Q0n+1Q1n+1Q2n+1Q3n+1=FQ0nQ1nQ2n==1000。因此,在CLK的作用下,計(jì)數(shù)器工作的狀態(tài)轉(zhuǎn)換圖將如圖5.3.15所示。5.3.2寄存器的應(yīng)用

扭環(huán)形計(jì)數(shù)器電路結(jié)構(gòu)簡單,正常工作時相鄰兩狀態(tài)中始終只有一個位取值發(fā)生變化,可避免譯碼時的競爭冒險(xiǎn)。n位移位寄存器能構(gòu)成2n進(jìn)制計(jì)數(shù)器,狀態(tài)利用率比環(huán)形計(jì)數(shù)器高一倍,但剩余的2n-2n個狀態(tài)同樣不僅沒用浪費(fèi),還構(gòu)成無效循環(huán),若受干擾進(jìn)入無效循環(huán),將不能自啟動,須修改反饋邏輯F。為進(jìn)一步提高狀態(tài)利用率,可用最大長度移位型計(jì)數(shù)器(也稱m序列發(fā)生器),具體可參閱有關(guān)資料。5.3.2寄存器的應(yīng)用二、構(gòu)成反饋移位型序列信號發(fā)生器除5.3.1小節(jié)中介紹的計(jì)數(shù)型序列信號發(fā)生器外,還有另外一種稱為反饋移位型的序列信號發(fā)生器,其電路結(jié)構(gòu)如圖5.3.16所示。與移位型計(jì)數(shù)器不同之處在于移位型計(jì)數(shù)器的輸出來自于各個觸發(fā)器的狀態(tài)端,是多輸出電路,而反饋移位型序列信號發(fā)生器的輸出來自寄存器的某個輸出端,輸出的是一組特定的串行數(shù)字信號,是單輸出電路。5.3.2寄存器的應(yīng)用

用移位寄存器構(gòu)成反饋移位型序列信號發(fā)生器的一般設(shè)計(jì)步驟如下:1.初定移位寄存器的位數(shù)n根據(jù)欲產(chǎn)生的序列信號循環(huán)長度m,選擇移位寄存器的位數(shù)n滿足2n≥m>2n-1;2.劃分移位寄存器的m個狀態(tài)將給定序列碼按移位規(guī)律每n位一組,分出m個狀態(tài)。若m個狀態(tài)中出現(xiàn)重復(fù)狀態(tài),說明初定位數(shù)n不足以區(qū)分給定序列碼的m個狀態(tài),須增加移位寄存器的位數(shù),改用n+1位。再重復(fù)上述過程,對序列碼每n+1位一組,分出m個狀態(tài)。直到分出m個獨(dú)立狀態(tài)為止。3.求反饋函數(shù)表達(dá)式根據(jù)m個不同狀態(tài)的轉(zhuǎn)換順序和移位規(guī)律確定在各個輸入狀態(tài)下應(yīng)生成的反饋邏輯F值,列出反饋函數(shù)表,求得能自啟動的反饋函數(shù)表達(dá)式。4.畫出實(shí)現(xiàn)的邏輯電路圖根據(jù)選用移位寄存器的功能表,設(shè)置好各個控制端口的狀態(tài),特別是移位方向的設(shè)置與串行輸入輸出端口的連接。

5.3.2寄存器的應(yīng)用【例5.5】請用74194和一些必要的邏輯器件構(gòu)成一個產(chǎn)生111001(時間順序是先右后左)序列的反饋移位型序列信號發(fā)生器。解:1.初定移位寄存器的位數(shù)n。因m=6,為滿足2n≥m>2n-1,取n=3。2.劃分移位寄存器的6個狀態(tài)。將序列信號111001按移位先后規(guī)律每3位一組,分出6個狀態(tài),其轉(zhuǎn)換順序:001→100→110→111→111→011然后再回到001,其中第4、第5個狀態(tài)都為111,出現(xiàn)重復(fù)狀態(tài)。由移位型序列信

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論