《數字邏輯與EDA設計》課件-第3章_第1頁
《數字邏輯與EDA設計》課件-第3章_第2頁
《數字邏輯與EDA設計》課件-第3章_第3頁
《數字邏輯與EDA設計》課件-第3章_第4頁
《數字邏輯與EDA設計》課件-第3章_第5頁
已閱讀5頁,還剩250頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第3章時序邏輯電路

3.1概述3.2鎖存器與觸發(fā)器3.3時序電路的分析3.4常用的時序邏輯電路3.5時序電路的設計方法3.6時序邏輯電路時序分析的基本概念

第2章中介紹了組合邏輯電路的特點,以及組合邏輯電路的分析方法和設計方法。本章介紹數字系統中的另一類邏輯電路—時序邏輯電路。

本章首先闡述時序邏輯電路的基本概念;然后介紹鎖存器和觸發(fā)器的基本原理,它們是能夠存儲一位數據的簡單時序邏輯電路;此外,還介紹時序電路的分析及設計方法,并介紹計數器、寄存器等常用時序電路。

3.1概述

3.1.1時序電路的基本概念及特點

時序邏輯電路是一種與時鐘脈沖序列有關的邏輯電路,它以組合電路為基礎,但又與組合電路不同。

常見的時序邏輯電路的結構如圖3-1所示。圖中,X0、X1、…、Xi-1是外部輸入信號;Y0、Y1、…、Yj-1是輸出信號;Z0、Z1、…、Zn-1是存儲電路的驅動(或稱激勵)信號,它實質上就是存儲電路的下一個存儲狀態(tài)的輸入信號;Q0、Q1、…、Qm-1是存儲電路的狀態(tài)信號,是存儲電路當前的狀態(tài)。圖3-1時序邏輯電路示意圖

1.邏輯功能上的特點

時序電路在邏輯功能上的特點是:任意時刻電路的穩(wěn)定輸出,不僅取決于該時刻各個輸入變量的取值,而且還取決于電路原來的狀態(tài),或者說,還與以前的輸入有關。

凡是符合以上特點的數字電路都是時序邏輯電路,這也是時序邏輯電路的定義。

2.電路結構上的特點

由圖3-1可以看到,時序電路在電路結構上具有如下特點:

(1)時序電路中通常包含著組合電路和存儲電路兩個組成部分,而存儲電路是必不可少的。存儲電路是由具有記憶功能的鎖存器或觸發(fā)器構成的。

(2)存儲電路的輸出狀態(tài)必須反饋到組合電路的輸入端,與輸入信號一起共同決定組合電路的輸出。

在具體的時序電路中,有些并不具備圖3-1所示的完整形式。例如,有些時序電路沒有輸入信號,有的沒有組合邏輯部分,但只要它們在邏輯功能上具有時序電路的基本特征,仍然屬于時序電路。

典型的時序電路有計數器、讀/寫存儲器、寄存器、移位寄存器、順序脈沖發(fā)生器等。3.1.2時序電路邏輯功能的表示方法

與組合邏輯電路類似,在描述時序電路功能時,可使用以下幾種表示方式。

1.邏輯表達式

由圖3-1可以看到,在時序電路中存在著以下幾種函數式。

(1)輸出函數。時序電路的輸出可用如下函數來描述:寫成向量函數的形式如下:

Y?=?F[X,Q]

(2)驅動函數(激勵函數)。時序電路的驅動(即各存儲單元的輸入)可用如下函數來描述:

寫成向量函數的形式如下:

Z?=?G[X,Q]

(3)狀態(tài)函數。時序電路的狀態(tài)可用如下函數來描述:

寫成向量函數的形式如下:

Q?=?H[Z,Q]

說明:在上面函數式中,Qn代表觸發(fā)器的現態(tài),Qn+1代表觸發(fā)器的次態(tài),相關內容將在3.2節(jié)中詳細介紹。

2.狀態(tài)表

狀態(tài)表是描述時序電路中存儲狀態(tài)轉換過程及其與輸入、輸出信號之間關系的表格。如表3-1所示的狀態(tài)轉換表,描述的是輸入信號X、狀態(tài)轉換及輸出信號Y之間的關系。

表3-1中,S0~S3代表電路的4種存儲狀態(tài),X表示輸入信號,Y表示輸出信號。表中描述的是,當前狀態(tài)下輸入了信號X后,狀態(tài)所發(fā)生的改變以及對應的輸出情況。

在設計時,需要對字母所表示的狀態(tài)進行編碼,這個操作稱為狀態(tài)編碼。編碼后的狀態(tài)表可書寫為真值表的形式,在這里稱為狀態(tài)轉換真值表,如表3-2為由表3-1變化而來的狀態(tài)轉換真值表。表中,對S0、S1、S2、S3狀態(tài)分別編碼為S0(00)、S1(01)、S2(10)、S3(11)。表3-1狀態(tài)轉換表示例

表3-2狀態(tài)轉換真值表示例

3.狀態(tài)圖

狀態(tài)圖又稱狀態(tài)轉換圖,用狀態(tài)圖描述時序電路的邏輯功能比狀態(tài)表更為形象直觀,它通過幾何圖形方式,將時序電路的狀態(tài)轉換關系及轉換條件表示出來,十分清晰。

畫狀態(tài)圖時,應首先畫出電路的所有狀態(tài),然后用箭頭描述狀態(tài)的轉換方向,箭頭旁邊注明狀態(tài)轉換的條件。

例如,將表3-1所示的狀態(tài)轉換關系改用狀態(tài)圖進行描述,結果如圖3-2所示。在狀態(tài)圖中,一個圓圈對應一個存儲狀態(tài),圓圈中的文字是狀態(tài)的名稱;狀態(tài)之間用箭頭表示它們之間的轉換關系,箭頭的起始位置對應存儲器的原來狀態(tài)(即現態(tài)),箭頭的指向位置對應存儲器的下一狀態(tài)(即次態(tài)),箭頭旁邊用文字或數字描述狀態(tài)轉換條件及輸出結果。其中斜線左邊表示的是狀態(tài)轉換條件(即輸入信號),斜線右邊表示的是輸出信號。

當對狀態(tài)進行編碼后,狀態(tài)可用編碼表示。圖3-3是狀態(tài)編碼后的狀態(tài)圖。只有給狀態(tài)進行編碼后,才能開始時序邏輯電路的設計。

4.時序圖

時序電路中的時序圖可反映出在時鐘脈沖序列及輸入信號的作用下,電路狀態(tài)及輸出信號隨時間變化的波形。圖3-2狀態(tài)圖示例圖3-3狀態(tài)編碼后的狀態(tài)圖示例3.1.3時序電路的分類

1.按觸發(fā)器的時鐘脈沖控制方式分類

(1)同步時序電路:指存儲電路中所有的觸發(fā)器狀態(tài)的改變都是在同一個時鐘脈沖(Clk)控制下同時發(fā)生。

(2)異步時序電路:指存儲電路中的觸發(fā)器由兩個或兩個以上的時鐘脈沖Clk控制或沒有Clk控制。

2.按輸出和輸入的關系分類

(1)?Mealy型時序電路:輸出信號不僅取決于存儲電路的狀態(tài),還與輸入直接有關系,即

Y?=?F[X,Q]

(2)?Moore型時序電路:輸出信號僅僅取決于存儲電路的狀態(tài),即

Y?=?F[Q]

在圖3-1中,如果沒有虛線,則電路為Moore型時序電路。

3.2鎖存器與觸發(fā)器

前面介紹了在時序邏輯電路中,必然存在著存儲電路。鎖存器和觸發(fā)器都是具有存儲功能的雙穩(wěn)態(tài)元器件(雙穩(wěn)態(tài):存儲狀態(tài)0態(tài)和1態(tài)均為穩(wěn)定的狀態(tài)),它們就像門電路一樣,在數字電路中使用非常普遍。

鎖存器與觸發(fā)器的不同之處在于,鎖存器是電平敏感的存儲元件,而觸發(fā)器是邊沿觸發(fā)的存儲元件。

本節(jié)介紹各種類別鎖存器與觸發(fā)器電路的基本原理及功能。3.2.1鎖存器

1.基本RS鎖存器

1)基本RS鎖存器的基本結構及工作原理

基本鎖存器是一個最簡單的時序電路。圖3-4為由一對或非門交叉耦合而成的基本鎖存器原理圖及其邏輯符號。

基本RS鎖存器有兩個輸入端R和S,有兩個輸出端Q和

。其中輸入端R(Reset)為置0端,或稱復位端;S(set)為置1端,或稱置位端。兩個輸出端Q和為互補輸出端,它們輸出的狀態(tài)剛好相反,圖3-4(b)中,輸出端的圓圈表示反相輸出的意思。圖3-4由或非門構成的基本RS鎖存器的結構及邏輯符號關于輸出狀態(tài),在鎖存器或觸發(fā)器中,將Q?=?0、?

=?1這種輸出狀態(tài)稱為0態(tài),將Q?=?1、?=?0這種輸出狀態(tài)稱為1態(tài)。

基本RS鎖存器的工作原理如下:

(1)當輸入信號R?=?S?=?0時,鎖存器的輸出為穩(wěn)定的0態(tài)或1態(tài),也就是說接收信號之后的狀態(tài)與接收信號之前的狀態(tài)相同。

如果用Qn表示接收信號之前的狀態(tài)(簡稱現態(tài)),用Qn+1表示接收信號之后的狀態(tài)(簡稱次態(tài)),則可表示為Qn+1

=?Qn。圖3-5說明了這種雙穩(wěn)態(tài)的情況。顯然,如果鎖存器原來的狀態(tài)Qn是0態(tài),輸入R?=?S?=?0后,鎖存器次態(tài)Qn+1仍然是0態(tài);如果鎖存器原來的狀態(tài)Qn是1態(tài),輸入R?=?S?=?0后,鎖存器次狀態(tài)Qn+1仍然維持1態(tài)。

(2)當輸入信號R?=?0、S?=?1時,由于S?=?1,使或非門G2輸出0,即?=?0,從而使得或非門G1的兩個輸入信號均為0,G1輸出1,即Q?=?1,顯然觸發(fā)器輸出狀態(tài)為1態(tài),即Qn+1?=?1。圖3-5RS鎖存器的雙穩(wěn)態(tài)情況

(3)當輸入信號R?=?1、S?=?0時,由于R?=?1,使或非門G1輸出0,即Q?=?0,從而使得或非門G2的兩個輸入信號均為0,G2輸出1,即?=?1,顯然觸發(fā)器輸出狀態(tài)為0態(tài),即Qn+1?=?0。

(4)當輸入信號R?=?S?=?1時,兩個或非門的輸出均為0,即Q?=?0、?=?0,此輸出既非0態(tài),也非1態(tài)。這種狀態(tài)并非鎖存器的正常工作狀態(tài),應避免出現。

2)基本RS鎖存器的特性表及特性函數

特性表是反映鎖存器或觸發(fā)器的次態(tài)Qn+1與現態(tài)Qn以及輸入信號之間對應關系的表格。特性表類似于真值表,但由于它用于反映鎖存器或觸發(fā)器的特性,故稱為特性表。特性函數是以邏輯表達式的方式反映鎖存器或觸發(fā)器的次態(tài)Qn+1與現態(tài)Qn以及輸入信號之間的邏輯關系。

綜合以上描述,我們可以得到基本RS鎖存器的特性表,如表3-3所示。

將特性表中的數值填入卡諾圖,如圖3-6所示?;喓螅傻没綬S鎖存器的特性函數:表3-3RS鎖存器特性表圖3-6基本RS鎖存器卡諾圖

3)基本RS鎖存器時序圖

圖3-7所示為給定了R、S輸入波形后,基本RS鎖存器的時序圖。圖中t3、t7、t10時刻,R?=

1、S?=

0,鎖存器置0;t1、t5時刻,R?=

0、S?=

1,鎖存器置1;t4、t6時刻,R?=?S?=

0,鎖存器保持原來狀態(tài)不變;t2、t8時刻,R?=?S?=

1,鎖存器兩個輸出端均輸出0(非鎖存器的正常狀態(tài));在t9時刻,R?=?S?=

0,此時鎖存器應保持為雙穩(wěn)態(tài)中的0態(tài)或1態(tài),但由于前一時刻R?=?S?=

1,使Q?=

0、

=

0(非鎖存器的正常狀態(tài)),因此t9時刻鎖存器的狀態(tài)在這里是無法確定的,其狀態(tài)取決于兩個或非門延遲的差異,圖中用虛線表示這種不確定的狀態(tài)。這種當兩個有效信號同時撤銷時所產生的狀態(tài)不確定的情況稱為竟態(tài)現象。圖3-7基本RS鎖存器的時序圖

4)基本RS鎖存器的特點

基本RS鎖存器的電路比較簡單,它是組成各種功能更為完善的鎖存器及觸發(fā)器的基本單元;其輸入信號直接控制著輸出的狀態(tài)(稱為電平直接控制),根據輸入信號的不同,基本RS鎖存器具有保持、置1、置0功能;輸入信號R、S之間有約束。

2.D鎖存器

1)?D鎖存器的基本結構及工作原理

圖3-8為一個簡單的D鎖存器的結構圖及電路邏輯符號。圖中,D為輸入信號。

由電路結構圖可以看到:

(1)當輸入信號D?=?0時,R?=?1、S?=?0,此為置“0”信號,因此Qn+1?=?0。

(2)當輸入信號D?=?1時,R?=?0、S?=?1,此為置“1”信號,因此Qn+1?=?1。

圖3-8D鎖存器的電路結構及邏輯符號

2)?D鎖存器的特性表及特性函數

表3-4為D鎖存器的特性表。由特性表可寫出D鎖存器的特性函數:Qn+1?=?D。

3)?D鎖存器時序圖

圖3-9所示為給定D輸入波形后,D鎖存器的時序圖。

4)?D鎖存器的特點

D鎖存器為電平直接控制,不存在RS觸發(fā)器的約束問題,D鎖存器具有置0及置1功能。表3-4D鎖存器特性表

圖3-9D鎖存器的時序圖

3.門控D鎖存器

1)門控D鎖存器的基本結構及工作原理

圖3-10為門控D鎖存器的電路結構圖及邏輯符號。圖中,增加了控制同步的時鐘信號Clk。

由電路結構圖可以看到:

(1)當Clk?=?0時,R?=?S?=?0,此時鎖存器的狀態(tài)不會改變,即Qn+1?=?Qn。

(2)當Clk?=?1時,與前面介紹的D鎖存器相同,由輸入信號D控制鎖存器狀態(tài),即Qn+1?=?D。圖3-10門控D鎖存器的結構及邏輯符號

2)門控D鎖存器的特性函數

顯然,門控D鎖存器的特性函數是:Qn+1?=?D,Clk?=?1期間有效。

3)門控D鎖存器時序圖

圖3-11所示為給定Clk波形及D輸入波形后,門控D鎖存器的時序圖。圖中可見,在Clk為1期間,Q跟隨D變化,而在Clk為0期間,Q維持原先狀態(tài)不變。

4)門控D鎖存器的特點

門控D鎖存器具有置0和置1功能,同時,它受同步時鐘Clk控制,在Clk?=?1期間接收信號,Clk?=?0期間鎖存,便于多個鎖存器同步工作。圖3-11門控D鎖存器的時序圖3.2.2觸發(fā)器

觸發(fā)器與鎖存器的不同之處在于,鎖存器是電平敏感的存儲元件,而觸發(fā)器是脈沖邊沿觸發(fā)的存儲元件。

下面首先介紹D觸發(fā)器的結構、原理及功能,然后介紹其他觸發(fā)器的功能。

1.D觸發(fā)器

1)電路原理及邏輯符號

D觸發(fā)器與D鎖存器一樣,具有置0和置1功能。圖3-12為D觸發(fā)器的電路結構圖及邏輯符號。圖3-12D觸發(fā)器的結構及邏輯符號由圖3-12可見,一個D觸發(fā)器由兩個D鎖存器構成,它們的時鐘控制信號互為反相。圖中鎖存器L1稱為主鎖存器,L2稱為從鎖存器。其工作原理是:

(1)?Clk?=?0時,主鎖存器的Clk1?=?1,因而主鎖存器開通,D的值將無條件地傳送到Qm。而此時由于從鎖存器的Clk2?=?0,從鎖存器斷路,D的值無法傳送至Q端,Q將保持原來的值不變。

(2)?Clk從0信號上升到1信號,主鎖存器的Clk1?=?0,主鎖存器斷路,不再接收D信號,Qm保持Clk信號變化時刻D的信號。從鎖存器的Clk2?=?1,從鎖存器L2開通,Qm信號被送至Q端。故最終送入Q端的是Clk信號上升瞬間D的值。由于D信號只在時鐘脈沖Clk的邊沿復制到Q端,故這類觸發(fā)器又被稱為主從觸發(fā)器或邊沿觸發(fā)器。邏輯符號中的三角表示觸發(fā)器使用時鐘邊沿觸發(fā),圖3-12(b)中的符號所表示的邊沿為時鐘Clk的上升沿。

如果將圖3-12所示電路改為圖3-13所示的電路,則此D觸發(fā)器是Clk脈沖下降沿觸發(fā),對應的邏輯符號如圖3-13(b)所示,符號中的三角外有一圓圈,表示的是下降沿觸發(fā)。圖3-13下降沿觸發(fā)的D觸發(fā)器符號

2)特性表及特性函數

表3-5為圖3-12所示的上升沿觸發(fā)的D觸發(fā)器的特性表。

對于圖3-12所示的D觸發(fā)器,其特性函數是:

Clk↑有效

3)?D觸發(fā)器的狀態(tài)圖

圖3-14為D觸發(fā)器的狀態(tài)轉換圖。圖中兩個圓圈中的0和1分別代表觸發(fā)器的兩個狀態(tài);箭頭代表狀態(tài)的變化,箭頭起始端對應現態(tài),箭頭指向對應次態(tài);箭頭旁邊的數字對應著狀態(tài)轉換的條件,即輸入信號的值。表3-5D觸發(fā)器特性表

圖3-14D觸發(fā)器狀態(tài)圖

4)?D觸發(fā)器時序圖

圖3-15所示為給定Clk波形及D輸入波形后,上升沿觸發(fā)的D觸發(fā)器的時序圖。對于同樣的輸入波形,如作用于下降沿觸發(fā)的D觸發(fā)器上,結果卻不相同,如圖3-16所示。

5)?D觸發(fā)器的特點

D觸發(fā)器具有置0及置1功能,為時鐘脈沖邊沿控制,便于多個觸發(fā)器同步工作,抗干擾能力強。圖3-15上升沿觸發(fā)的D觸發(fā)器時序圖

圖3-16下升沿觸發(fā)的D觸發(fā)器時序圖

2.JK觸發(fā)器

1)電路原理及邏輯符號

在D觸發(fā)器的基礎上,增加3個門,如圖3-17(a)所示,可得到JK觸發(fā)器。其邏輯關系是圖3-17JK觸發(fā)器電路結構及邏輯符號顯然:

(1)當J?=?K?=?0時,,即當時鐘觸發(fā)邊沿到來時,觸發(fā)器狀態(tài)不改變;

(2)當J?=?0,K?=?1時,,即當時鐘觸發(fā)邊沿到來時,觸發(fā)器狀態(tài)變?yōu)?態(tài);

(3)當J?=?1,K?=?0時,,即當時鐘觸發(fā)邊沿到來時,觸發(fā)器狀態(tài)變?yōu)?態(tài);

(4)當J?=?K?=?1時,,即當時鐘觸發(fā)邊沿到來時,觸發(fā)器狀態(tài)與原來狀態(tài)相反。

在時鐘觸發(fā)器中,凡是具有保持、置0、置1及翻轉功能的觸發(fā)器稱為JK觸發(fā)器。圖3-17(b)為下降沿觸發(fā)的JK觸發(fā)器的邏輯符號。

2)特性表及特性函數

表3-6所示為下降沿觸發(fā)的JK觸發(fā)器的特性表。

JK觸發(fā)器的特性函數的卡諾圖如圖3-18所示。

JK觸發(fā)器的特性函數是

Clk↓有效

3)?JK觸發(fā)器的狀態(tài)圖

圖3-19為JK觸發(fā)器的狀態(tài)轉換圖。

4)?JK觸發(fā)器時序圖

圖3-20所示為給定Clk波形及J、K輸入波形后,JK觸發(fā)器的時序圖。表3-6JK觸發(fā)器特性表

圖3-18JK觸發(fā)器卡諾圖圖3-19JK觸發(fā)器狀態(tài)圖圖3-20JK觸發(fā)器的時序圖

5)?JK觸發(fā)器的特點

JK觸發(fā)器具有保持、置0、置1、翻轉功能,為邊沿時鐘脈沖控制,抗干擾能力強。

3.RS觸發(fā)器

1)邏輯符號

在時鐘觸發(fā)器中,凡是具有保持、置0、置1功能的觸發(fā)器稱為RS觸發(fā)器。圖3-21為下降沿觸發(fā)的RS觸發(fā)器的邏輯符號。圖3-21RS觸發(fā)器邏輯符號

2)特性表及特性函數

RS觸發(fā)器的特性表與RS鎖存器相同(見表3-1)。RS觸發(fā)器的特性函數是:

3)?RS觸發(fā)器的狀態(tài)圖

圖3-22為RS觸發(fā)器的狀態(tài)轉換圖。

4)?RS觸發(fā)器的特點

RS觸發(fā)器具有保持、置0、置1功能,為邊沿時鐘脈沖控制,抗干擾能力強,但R、S有約束。Clk↓有效圖3-22RS觸發(fā)器狀態(tài)圖

4.T觸發(fā)器

1)邏輯符號

在時鐘觸發(fā)器中,凡是具有保持、翻轉功能的觸發(fā)器稱為T觸發(fā)器。圖3-23為上升沿觸發(fā)的T觸發(fā)器的邏輯符號。

2)特性表及特性函數

表3-7所示為上升沿觸發(fā)的T觸發(fā)器的特性表。

T觸發(fā)器的特性函數是Clk↑有效圖3-23T觸發(fā)器邏輯符號表3-7T觸發(fā)器特性表

3)?T觸發(fā)器的狀態(tài)圖

圖3-24為T觸發(fā)器的狀態(tài)轉換圖。

4)?T觸發(fā)器時序圖

圖3-25所示為給定Clk波形及T輸入波形后,上升沿觸發(fā)的T觸發(fā)器的時序圖。

5)?T觸發(fā)器的特點

T觸發(fā)器具有保持、翻轉功能,為邊沿時鐘脈沖控制,抗干擾能力強。圖3-24T觸發(fā)器狀態(tài)圖圖3-25T觸發(fā)器時序圖

5.帶置位、清零端的觸發(fā)器

在時序電路中,通常有多個觸發(fā)器一起工作,有時需要控制所有觸發(fā)器同時置1或同時清0,這就需要設計帶置位及清零端的觸發(fā)器。

置位和清零均分為同步和異步兩種方式:當置位或清零信號一產生就立刻進行置位或清零操作的是異步方式;當置位或清零信號產生后,還要等待時鐘的有效邊沿到來才進行置位或清零操作的是同步方式。

1)帶異步置位、清零端的D觸發(fā)器

圖3-26為帶異步置位、清零端的D觸發(fā)器電路邏輯符號。圖中增加了異步置位端及異步清零端。圖中、輸入端的圓圈表示輸入信號低電平有效。

表3-8為帶異步置位、清零端的D觸發(fā)器特性表。

功能說明:

(1)當?=?0、?=?1時,Clk及D均無效,觸發(fā)器置1,此為異步置位;

(2)當?=?1、?=?0時,Clk及D均無效,觸發(fā)器置0,此為異步清零;表3-8帶異步置位、清零端的D觸發(fā)器特性表

圖3-26帶置位、清零端的D觸發(fā)器邏輯符號圖3-27帶置位、清零端的JK觸發(fā)器邏輯符號

(3)當?=??

=?1時,觸發(fā)器在Clk上升沿時接收D信號,實現D觸發(fā)器功能;

(4)?

=??

=?0是不允許的輸入信號,、的取值應遵守約束條件Set·Clr?=?0。

2)帶同步置位、清零端的JK觸發(fā)器

圖3-27為帶同步置位、清零端的JK觸發(fā)器電路邏輯符號。圖中Set及Clr分別為同步置位及清零端,均為高電平有效。

表3-9為帶同步置位、清零端的JK觸發(fā)器特性表。

功能說明:

(1)當Clr?=?Set?=?0時,觸發(fā)器在Clk下降沿時接收J、K信號,實現JK觸發(fā)器功能;

(2)當Clr?=?0、Set?=?1時,在Clk下降沿時,觸發(fā)器置1,此為同步置位;

(3)當Clr?=?1、Set?=?0時,在Clk下降沿時,觸發(fā)器置0,此為同步清零;

(4)?Clr?=?Set?=?1是不允許的輸入信號,Clr、Set的取值應遵守約束條件Set·Clr?=?0。

關于同步、異步置位端或清零端的說明:從觸發(fā)器的邏輯符號上,是看不出該觸發(fā)器置位或清零端是同步的還是異步的,只能從特性表上體現出來。特性表中,如果置位或清零受時鐘信號Clk的約束,那么屬于同步的;如果不受Clk約束,則屬于異步。表3-9帶同步置位、清零端的JK觸發(fā)器特性表

6.觸發(fā)器集成電路

觸發(fā)器的集成電路很多,主要為D型和JK型觸發(fā)器,這里介紹兩種。

1)?74HC74雙D觸發(fā)器

74HC74芯片中包含兩個上升沿觸發(fā)的D觸發(fā)器,每個觸發(fā)器有獨立的異步置位端及清零端。圖3-28為74HC74的引腳圖。圖3-29為該芯片的邏輯電路圖。圖3-28雙D觸發(fā)器74HC74引腳圖圖3-2974HC74一個觸發(fā)器的邏輯圖圖3-29中有4個傳輸門,當Clk?=?0時,C?=?0、?=?1,第1、4號傳輸門導通,第2、3號傳輸門截止;當Clk?=?1時,C?=?1,?=?0,第2、3號傳輸門導通,第1、4號傳輸門

截止。讀者可以自己分析整個電路的邏輯功能。圖中

為施密特反相器,其主要作用是對時鐘信號Clk進行整形。

表3-10為74HC74的功能表。芯片中D觸發(fā)器具有同步輸入及異步置位、清零功能。表3-10雙D觸發(fā)器74HC74功能表

2)?74HC112雙JK觸發(fā)器(有預置、清除端)

74HC112芯片中包含了兩個下降沿觸發(fā)的JK觸發(fā)器,每個觸發(fā)器有獨立的異步置位端及清零端。圖3-30為74HC112的引腳圖,圖3-31為一個JK觸發(fā)器的邏輯電路圖。

表3-11為該觸發(fā)器的功能表。芯片中的JK觸發(fā)器具有保持、置0、置1及翻轉功能,此外及為低電平(0信號)有效的異步置1、置0端,具有異步置位和異步清零功能。圖3-30雙JK觸發(fā)器74HC112引腳圖圖3-3174HC112邏輯電路圖

7.觸發(fā)器邏輯功能的轉換

集成的觸發(fā)器只有D型和JK型觸發(fā)器兩種,當要用到其他功能的觸發(fā)器時,需通過這兩種觸發(fā)器進行轉換。

1)用D觸發(fā)器構造其他功能觸發(fā)器

(1)?D觸發(fā)器構造RS觸發(fā)器。根據RS觸發(fā)器的特性函數,顯然,轉換的邏輯是,相應的邏輯電路如圖3-32所示。

(2)?D觸發(fā)器構造T觸發(fā)器。根據T觸發(fā)器的特性函數

,顯然,轉換的邏輯是,相應的邏輯電路如圖3-33所示。圖3-32D觸發(fā)器構造RS觸發(fā)器

圖3-33D觸發(fā)器構造T觸發(fā)器

2)用JK觸發(fā)器構造其他功能觸發(fā)器

(1)?JK觸發(fā)器構造RS觸發(fā)器。由于RS觸發(fā)器有保持、置0、置1功能,因此JK觸發(fā)器可以直接作為RS型觸發(fā)器使用,只要遵循約束條件即可。使用時,S信號從J端接入,R信號從K端接入。

(2)?JK觸發(fā)器構造T觸發(fā)器。JK觸發(fā)器的特性函數是

。根據T觸發(fā)器的特性函數

,顯然,轉換的邏輯是J=K=T,相應的邏輯電路如圖3-34所示。圖3-34JK觸發(fā)器構造T觸發(fā)器

(3)?JK觸發(fā)器構造D觸發(fā)器。JK觸發(fā)器的特性函數是

。根據D觸發(fā)器的特性函數,顯然,轉換的邏輯是J?=?D,,相應的邏輯電路如圖3-35所示。圖3-35JK觸發(fā)器構造D觸發(fā)器3.3時序電路的分析

3.3.1時序電路的分析方法

對時序電路進行分析,是通過給定的時序電路,求出該電路的狀態(tài)表、狀態(tài)圖或時序圖,從而了解電路的功能。

時序電路的分析步驟如下。

(1)寫函數表達式。首先,按照給定的電路,寫出電路中相關的各個函數表達式,包括輸出函數及各觸發(fā)器的激勵函數。

(2)將各觸發(fā)器的驅動函數代入到各自的特性函數中,求觸發(fā)器狀態(tài)的次態(tài)函數。

(3)列出狀態(tài)表。將電路的輸入信號及觸發(fā)器現態(tài)的各種取值,代入到次態(tài)函數及輸出函數中進行計算,按各觸發(fā)器Clk脈沖的特點,將計算結果填入到狀態(tài)轉換表中。

(4)設定初始值,畫狀態(tài)轉換圖及時序圖。

(5)結合輸入信號的含義,進一步對電路功能進行說明。除分析電路功能外,還應對電路是否能自啟動等進行分析。3.3.2時序電路的分析舉例

【例3-1】分析圖3-36所示電路,畫出狀態(tài)圖及時序圖。

解(1)寫函數表達式。電路的輸出函數是

,各觸發(fā)器的激勵函數是:

(2)求觸發(fā)器的次態(tài)函數。將上述觸發(fā)器的激勵函數代入JK觸發(fā)器的特性函數中,可得以下觸發(fā)器的次態(tài)函數:圖3-36例3-1電路圖

(3)列出狀態(tài)表。在狀態(tài)表中,依次列出3個觸發(fā)器的各種現態(tài)取值,代入輸出函數及次態(tài)函數中,進行計算,求出相應的次態(tài)及輸出值,填入狀態(tài)表中,結果如表3-12所示。

(4)畫狀態(tài)圖及時序圖。假設電路的初始狀態(tài)為000,根據狀態(tài)表中的內容,可畫出狀態(tài)圖(見圖3-37)及時序圖(見圖3-38)。表3-12例3-1狀態(tài)表

圖3-37例3-1狀態(tài)圖圖3-38例3-1時序圖

(5)電路分析說明。由狀態(tài)圖及時序圖可以知道該時序電路的狀態(tài)變化規(guī)律,從而可知電路的功能:該電路每6個Clk(時鐘脈沖)為1周期,三個觸發(fā)器FF0、FF1、FF2每間隔1個Clk依次進行狀態(tài)改變,該電路的輸出Y僅在Q2Q1Q0的狀態(tài)為100時輸出0,其余情況輸出1。

關于是否是能自啟動電路的說明:

從狀態(tài)圖及時序圖可看到,狀態(tài)000、001、011、111、110、100均為電路使用的狀態(tài),我們稱時序電路中凡是被利用了的狀態(tài)為有效狀態(tài)。由有效狀態(tài)構成的循環(huán)稱為有效循環(huán)。在狀態(tài)圖中,010及101兩個狀態(tài)都沒有被利用,這種時序電路中沒被利用的狀態(tài)稱為無效狀態(tài)。由狀態(tài)圖可看出,這兩個無效狀態(tài)構成了循環(huán),我們稱這種由無效狀態(tài)所構成的循環(huán)為無效循環(huán)。

在時序電路中,如果存在無效循環(huán),則這種電路是有缺陷的。原因在于當電路運行過程中由于干擾而脫離有效循環(huán)時,不能自動返回到有效循環(huán)中。我們將這種存在無效狀態(tài)且無效狀態(tài)構成循環(huán)了的時序電路稱為不能自啟動時序電路。另外一種情況則是,雖然存在無效狀態(tài),但無效狀態(tài)經過若干個Clk脈沖后會自動進入有效循環(huán),這種時序電路稱為能自啟動的時序電路。顯然,圖3-36所示的時序電路為不能自啟動時序電路。

【例3-2】分析圖3-39所示電路,畫出狀態(tài)圖及時序圖,并說明該電路的功能。

解(1)寫函數表達式。由圖3-39可看到,電路有4個輸出,分別是Y0、Y1、Y2、Y3,它們的輸出函數分別為:,,,。

圖中2個觸發(fā)器的激勵函數分別是:J0?=?K0?=?1,

。

(2)求觸發(fā)器的次態(tài)函數。將上述觸發(fā)器的激勵函數代入JK觸發(fā)器的特性函數中,可得以下觸發(fā)器的次態(tài)函數:圖3-39例3-2電路圖

(3)列出狀態(tài)表。在狀態(tài)表中,依次列出2個觸發(fā)器的各種現態(tài)取值,代入輸出函數及次態(tài)函數中,進行計算,求出相應的次態(tài)及輸出值,填入狀態(tài)表中,結果如表3-13所示。

(4)畫狀態(tài)圖及時序圖。假設電路的初始狀態(tài)為00,根據狀態(tài)表中的內容,可畫出狀態(tài)圖(見圖3-40)及時序圖(見圖3-41)。表3-13例3-2狀態(tài)表

圖3-40例3-2狀態(tài)圖

圖3-41例3-2時序圖

(5)功能說明。由時序圖可看到,該電路是能循環(huán)輸出4個脈沖的順序脈沖發(fā)生器。

電路中的兩個JK觸發(fā)器構成了一個四進制的計數器(有關計數器的知識將在3.4節(jié)中介紹)。電路中的4個與門構成了一個2-4譯碼器。

由此可看到,將計數器及譯碼器組合起來,可以方便地得到順序脈沖發(fā)生器。

3.4常用的時序邏輯電路

3.4.1寄存器

把二進制數據或代碼暫時存儲起來的操作叫寄存,具有寄存功能的電路叫做寄存器。

寄存器是由具有存儲功能的鎖存器或觸發(fā)器構成的,其主要任務是暫時存儲二進制數據或代碼,一般不對存儲內容進行處理,邏輯功能比較單一,電路結構比較簡單。寄存器按功能分類可分為基本寄存器和移位寄存器?;炯拇嫫髦饕獙崿F數據的并行輸入及并行輸出(并行輸入是指多位數據一起送入寄存器中存儲;并行輸出是指多位數據一起從寄存器中讀出)。移位寄存器能夠在移位脈沖的操作下,依次右移或左移數據,主要實現數據的串行輸入、串行輸出(串行輸入是指通過一條數據線,將數據逐位輸入至寄存器中;串行輸出是指通過一條數據線,將寄存器中的數據逐位讀出)。移位寄存器也可設計成既可以串行輸入、輸出,也可以并行輸入、輸出的寄存器。

1.基本寄存器

1)?4位D觸發(fā)器

1個觸發(fā)器可以存儲1位二進制數據,若要寄存n位二進制數據,需要n個觸發(fā)器。

圖3-42是一個由4位D觸發(fā)器構成的4位寄存器原理圖。

圖中寄存器含異步清零輸入端,其中每一個觸發(fā)器的真值表如表3-14所示,寄存器具有同步置數(Clk脈沖上升沿)、異步清零(端低電平有效)的功能。圖3-424位D觸發(fā)器表3-144D觸發(fā)器真值表

2)三態(tài)輸出寄存器

圖3-43是帶三態(tài)輸出的4位寄存器,能寄存4位二進制數據。

圖中觸發(fā)器的輸出端接三態(tài)緩沖器,為輸出使能控制端,?=?0時,電路輸出觸發(fā)器狀態(tài);?=?1時,信號不能輸出,輸出端呈高阻態(tài)(Z)。電路中每一個觸發(fā)器的真值表如表3-15所示。圖3-43三態(tài)輸出4位D觸發(fā)器表3-15三態(tài)輸出的4D觸發(fā)器真值表

2.移位寄存器

移位寄存器除了具有存儲代碼的功能以外,還具有移位功能。移位是指寄存器中存儲的代碼能在移位脈沖的作用下依次左移或右移。移位寄存器可用于實現數據串行—并行轉換,還可用于數值運算及數據處理。

按數據移動方向,移位寄存器可分為右移、左移及雙向移位寄存器。

1)右移寄存器

圖3-44為右移寄存器電路結構圖。圖中Sin為串行輸入端,Sout為串行輸出端,Q0~Q3為并行輸出端。圖3-44右移寄存器根據圖中各觸發(fā)器的連接方式,可得到各觸發(fā)器的激勵函數:

根據D觸發(fā)器的特性函數,可得到該寄存器的狀態(tài)函數:

輸出函數為

顯然,當每一個Clk脈沖上升沿到來時,Sin進入觸發(fā)器FF0,而原來Q0、Q1、Q2的值分別進入觸發(fā)器FF1、FF2、FF3,總的效果相當于移位寄存器中原有的數據依次右移了一位。

2)左移寄存器

圖3-45為左移寄存器電路結構圖。圖中Sin為串行輸入端,Sout為串行輸出端,Q0~Q3為并行輸出端。

根據圖中各觸發(fā)器的連接方式,可得到各觸發(fā)器的激勵函數:

根據D觸發(fā)器的特性函數,可得到該寄存器的狀態(tài)函數:

輸出函數為圖3-45左移寄存器顯然,當一個Clk脈沖上升沿到來時,Sin進入觸發(fā)器FF3,而原來Q1、Q2、Q3的值分別進入觸發(fā)器FF0、FF1、FF2,總的效果相當于移位寄存器中原有的數據依次左移了一位。

3.帶并行輸入的移位寄存器

圖3-46為帶并行加載的4位移位寄存器原理圖。圖中D0~D3為并行數據輸入端,Q0~Q3為并行輸出端,Sin為串行輸入端,Sout為串行輸出端,為工作狀態(tài)控制端。圖3-46帶并行加載的4位移位寄存器圖中每一個觸發(fā)器輸入端由2個與門、1個或門和非門構成的電路實質上是一個2選1的數據選擇器,圖3-46可改畫為圖3-47所示的電路。

由圖可見,當?=?0時,可實現移位寄存器功能;當?=?1時,可實現并行加載數據的功能。顯然,該寄存器可實現并行輸入、并行輸出、串行輸入、串行輸出的功能。圖3-47由數據選擇器和觸發(fā)器構成的帶并行加載的4位移位寄存器

4.寄存器集成電路

74系列的集成寄存器有如下兩大類。

(1)基本寄存器。常用的型號有:74173—具有三態(tài)輸出的4位D寄存器;74174—6位D觸發(fā)器;74175—4位D觸發(fā)器。

(2)移位寄存器。常用的型號有:74164—8位移位寄存器(串行輸入,并行輸出);74165—8位移位寄存器(并行輸入,互補串行輸出);74166—8位移位寄存器(串、并行輸入,串行輸出);74195—4位移位寄存器(并行存取,J、K輸入);74199—8位移位寄存器(并行存取,J、K輸入);74194—4位雙向移位寄存器(并行存取);7495—4位雙向移位寄存器(并行存取);74198—4位雙向移位寄存器(并行存取)。

圖3-48為雙向移位寄存器74HC194的引腳圖,圖中CP為時鐘脈沖輸入端,為異步清零端,S1、S0為工作狀態(tài)控制端,DSR為右移串行信號輸入端,DSL為左移串行信號輸入端,D0~D3為并行信號輸入端,Q0~Q3為寄存器輸出端。圖3-4874HC194引腳圖圖3-49為該芯片的邏輯電路圖。圖中RS觸發(fā)器和反相器構成D觸發(fā)器(如圖中左下虛框部分),D觸發(fā)器的輸入信號由4選1數據選擇器提供。圖中左上虛框部分為其中一個4選1數據選擇器,它由S1、S0輸入端及4個與非門、1個或非門構成。第i個數據選擇器的4個輸入信號由左到右分別是:右移串行輸入信號Qi-1(當i?=

0時,為DSR)、Di、左移串行輸入信號Qi+1(當i?=

3時,為DSL)及Qi,由S1、S0的值決定數據的選擇。圖3-49雙向移位寄存器74HC194邏輯圖

(1)當S1S0

=

00時,選擇Qi,即保持狀態(tài)不變;

(2)當S1S0

=

01時,選擇Qi-1,即實現串行右移輸入功能;

(3)當S1S0

=

10時,選擇Qi+1,即實現串行左移輸入功能;

(4)當S1S0

=

11時,選擇Di,即實現并行輸入功能。

表3-16為該寄存器功能表。表3-16雙向移位寄存器74HC194功能表

3.4.2計數器

計數器是數字系統中用得較多的時序電路。計數器不僅能用于對時鐘脈沖計數,還可以用于分頻、定時、產生節(jié)拍脈沖和脈沖序列等。計數器主要用于記錄輸入脈沖Clk的個數,因此它除了計數脈沖外,一般沒有另外的輸入信號,輸入僅僅由現態(tài)決定。因此,它是一種Moore型的時序電路,其主要組成單元是觸發(fā)器。

計數器的種類繁多,按觸發(fā)器是否同時翻轉,可分為:①同步計數器,同步計數器中的觸發(fā)器在同一時鐘脈沖控制下發(fā)生翻轉;②異步計數器,異步計數器中的觸發(fā)器用不同的時鐘脈沖控制。按計數過程中計數值的數字增減分類,計數器可分為:①加法計數器,隨著計數脈沖的輸入,計數值遞增;②減法計數器,隨著計數脈沖的輸入,計數值遞減;③可逆計數器,既可采用遞增方式計數,又可采用遞減方式計數。

按數的進制分,計數器可分為:①二進制計數器,按二進制數規(guī)律進行計數;②十進制計數器,按十進制數規(guī)律進行計數;③?N進制計數器,除二、十進制計數器外,其他進制的計數器。例如十二進制計數器、六十進制計數器。

1.二進制同步計數器

二進制計數器是指按二進制數的規(guī)律進行計數的計數器。計數器主要由觸發(fā)器構成,觸發(fā)器的個數決定了計數位數,從而決定了計數器的計數容量。

2個觸發(fā)器構成的計數器,計數值為00、01、10、11,計數容量為4。

3個觸發(fā)器構成的計數器,計數值為000、001、…、111,計數容量為8。

顯然,n個觸發(fā)器構成的計數器,計數容量為2n。

以3位二進制數為例,對于加法計數器,計數規(guī)律是000、001、010、…、111,對于減法計數器,計數規(guī)律則是111、110、101、…、000,每來一個計數脈沖,計數值變化一次。

1)二進制同步加法計數器

根據二進制加法計數器的計數規(guī)律,可畫出狀態(tài)轉換圖,圖3-50所示為3位二進制加法計數器的狀態(tài)圖。狀態(tài)圖中3位二進制數對應觸發(fā)器的排列順序為FF2、FF1、FF0,箭頭旁的斜杠右邊的數表示進位C的輸出值。

由狀態(tài)轉換圖列出狀態(tài)轉換表,見表3-17。圖3-50二進制加法計數器的狀態(tài)轉換圖表3-17二進制加法計數器狀態(tài)轉換真值表

根據狀態(tài)轉換表,可寫出輸出進位函數及3個觸發(fā)器的次態(tài)函數如下:

對次態(tài)函數化簡后,得到:由T型觸發(fā)器的特性函數可見,上述函數表達式可使用T型觸發(fā)器實現,對應的激勵函數是:

如果使用JK型觸發(fā)器,根據JK觸發(fā)器的特性函數

,可得相應的激勵函數是:圖3-51所示為根據輸出進位函數及JK型觸發(fā)器激勵函數所畫出的3位二進制同步加法計數器邏輯圖。由于3個觸發(fā)器的8個狀態(tài)均為有效狀態(tài),不存在無效狀態(tài),因此該邏輯電路能自啟動。

圖3-52所示為3位二進制同步加法計數器時序圖。

如果使用D型觸發(fā)器,根據D觸發(fā)器的特性函數

,可得相應的激勵函數是:圖3-513位二進制同步加法計數器邏輯圖圖3-523位二進制同步加法計數器時序圖圖3-53所示為根據輸出進位函數及D型觸發(fā)器激勵函數所畫出的3位二進制同步加法計數器邏輯圖。

圖3-54所示為圖3-53所示邏輯電路圖對應的時序圖,該計數器對時鐘脈沖Clk的上升沿計數。圖3-533位二進制同步加法計數器邏輯圖(D觸發(fā)器實現)圖3-543位二進制同步加法計數器時序圖(時鐘上升沿觸發(fā))

2)二進制同步減法計數器

根據3位二進制減法計數器的計數規(guī)律,可畫出其狀態(tài)轉換圖,如圖3-55所示。狀態(tài)圖中3位二進制數對應觸發(fā)器的排列順序為FF2、FF1、FF0,箭頭旁斜杠右邊的數表示借位B的輸出值。

由狀態(tài)轉換圖可列出狀態(tài)轉換表,見表3-18。

圖3-55二進制減法計數器的狀態(tài)轉換圖表3-18二進制減法計數器狀態(tài)轉換真值表

根據狀態(tài)轉換表,可寫出輸出借位函數及3個觸發(fā)器的次態(tài)函數如下:

對次態(tài)函數化簡后,得到:顯然,可選擇使用T型觸發(fā)器,它的激勵函數是:

如果使用JK型觸發(fā)器,則激勵函數是:

根據以上輸出借位函數及JK觸發(fā)器的激勵函數,可畫出3位二進制同步減法計數器邏輯圖,如圖3-56所示。

圖3-57所示為3位二進制同步減法計數器時序圖。圖3-563位二進制同步減法計數器邏輯圖圖3-573位二進制同步減法計數器時序圖

3)可逆計數器

可逆計數器是指既能采用加法計數方式工作,又能采用減法計數方式工作的計數器。

圖3-58所示為3位二進制同步可逆計數器邏輯圖。

在可逆計數器中,當?=?0時,計數器實現加法計數;當?=?1時,計數器實現減法計數。圖3-58同步二進制可逆計數器電路圖

2.十進制同步計數器

進行十進制計數器的設計前,首先要確定的是采用哪一種二進制編碼方案對十進制數進行編碼,也就是BCD碼的選擇。

這里,我們以使用最多的8421BCD碼為例介紹十進制計數器的設計。

1)十進制同步加法計數器

根據8421BCD碼加法計數器的計數規(guī)律,可畫出狀態(tài)轉換圖,如圖3-59所示。狀態(tài)圖中4位二進制數對應觸發(fā)器的排列順序為FF3、FF2、FF1、FF0,箭頭旁斜杠右邊的數表示進位C的輸出值。圖3-59十進制加法計數器的狀態(tài)圖由狀態(tài)轉換圖列出狀態(tài)轉換表,見表3-19,狀態(tài)表中,無效狀態(tài)1010~1111表示為約束項,其次態(tài)及進位輸出用“×”表示。

根據狀態(tài)轉換表,利用卡諾圖化簡,可寫出輸出進位函數及4個觸發(fā)器的次態(tài)函數如下:表3-19十進制加法計數器狀態(tài)轉換表

如果使用JK型觸發(fā)器,根據JK觸發(fā)器的特性函數

,將上述次態(tài)函數變換成與特性函數一致的形式,得到:

可寫出激勵函數如下:由于電路存在無效狀態(tài)1010、1011、1100、1101、1110、1111,因而需要檢測是否能自啟動。將無效狀態(tài)1010~1111分別代入輸入函數及狀態(tài)函數計算,得到以下結果:

當現態(tài)?=?1010時,次態(tài)?=?1011,進位C?=?0。

當現態(tài)?=?1011時,次態(tài)

?=?0100,進位C?=?1。

當現態(tài)?=?1100時,次態(tài)?

=?1101,進位C?=?0。

當現態(tài)?=?1101時,次態(tài)?

=?0100,進位C?=?1。

當現態(tài)?=?1110時,次態(tài)?

=?1111,進位C?=?0。

當現態(tài)?=?1111時,次態(tài)?

=?0000,進位C?=?1。

將結果填入到狀態(tài)圖中,結果如圖3-60所示。

由狀態(tài)圖可見,無效狀態(tài)沒有構成無效循環(huán),電路是能自啟動時序電路。

圖3-61所示為根據激勵函數及輸出函數所畫出的十進制同步加法計數器邏輯圖。圖3-60十進制加法計數器的狀態(tài)圖(包含無效狀態(tài))圖3-61十進制同步加法計數器邏輯圖

2)十進制同步減法計數器

根據8421BCD碼減法計數器的計數規(guī)律,可畫出狀態(tài)轉換圖,如圖3-62所示。狀態(tài)圖中4位二進制數對應觸發(fā)器的排列順序為FF3、FF2、FF1、FF0,箭頭旁斜杠右邊的數為借位B的輸出值。

由狀態(tài)轉換圖列出狀態(tài)轉換表,見表3-20,與十進制加法計數器相同,無效狀態(tài)作約束項處理。圖3-62十進制減法計數器的狀態(tài)圖表3-20十進制減法計數器狀態(tài)轉換表根據狀態(tài)轉換表,利用卡諾圖化簡,可寫出輸出借位函數及4個觸發(fā)器的次態(tài)函數如下:如果使用JK型觸發(fā)器,根據JK觸發(fā)器的特性函數

,將上述次態(tài)函數變換成與特性函數一致的形式,得到:可寫出激勵函數如下:由于電路存在無效狀態(tài)1010、1011、1100、1101、1110、1111,因而需要檢測是否能自啟動。將無效狀態(tài)1010~1111分別代入輸入函數及狀態(tài)函數計算,得到以下結果:

當現態(tài)?=?1010時,次態(tài)

?=?0101,借位B?=?0。

當現態(tài)?=?1011時,次態(tài)

?=?1010,借位B?=?0。

當現態(tài)?=?1100時,次態(tài)?

=?0011,借位B?=?0。當現態(tài)?=?1101時,次態(tài)?

=?1100,借位B?=?0。

當現態(tài)?=?1110時,次態(tài)?

=?0101,借位B?=?0。

當現態(tài)?=?1111時,次態(tài)?

=?1110,借位B?=?0。

將結果填入到狀態(tài)圖中,結果如圖3-63所示。由狀態(tài)圖可見,無效狀態(tài)沒有構成無效循環(huán),電路是能自啟動時序電路。

圖3-64所示為根據激勵函數及輸出函數所畫出的十進制同步減法計數器邏輯圖。圖3-63十進制減法計數器的狀態(tài)圖(包含無效狀態(tài))圖3-64十進制同步減法計數器邏輯圖

3)十進制同步可逆計數器

參照前面二進制同步可逆計數器的設計原理,可設計出十進制同步可逆計數器,讀者可以自己去做,這里不再贅述。

3.計數器集成電路

集成的74系列計數器有:

74161—4位二進制同步加法計數器,異步清零,同步置數;

74163—4位二進制同步加法計數器,同步清零,同步置數;

74191—4位二進制同步可逆計數器,異步置數;圖3-6574HC161引腳圖

74193—4位二進制同步可逆計數器,異步清零,異步置數,雙時鐘;

74160—十進制同步計數器,異步清零,同步置數;

74162—十進制同步計數器,同步清零,同步置數;

74190—十進制同步可逆計數器,異步置數;

74192—十進制同步可逆計數器,異步清零,異步置數,雙時鐘。

圖3-65為4位二進制同步加法計數器74HC161的引腳圖,圖3-66為該計數器的邏輯圖。圖3-66計數器74HC161邏輯圖圖中,CP為時鐘脈沖輸入端,D3~D0為并行數據輸入端,為異步清零輸入端,CET及CEP為兩個使能控制端,為并行輸入控制端,Q3~Q0為計數值輸出端。它們的工作情況如下:

(1)當=?0時,輸出端Q3~Q0立即全輸出0,此為異步清零功能。

(2)

=?1及?=?0期間,當下一個時鐘上升沿到來時,并行輸入D3~D0數據,此為同步置數功能。此數據作為計數初始值,從而可改變計數容量。

(3)

=?1及=?1期間,當CET?=?CEP?=?1時,在時鐘上升沿到來時,計數器進行計數工作。

(4)

=?1及=?1期間,CET?=?0或CEP?=?0時,均不進行計數工作,計數器的狀態(tài)保持不變。

(5)在并行輸入狀態(tài)、計數狀態(tài)或保持狀態(tài)時,進位輸出端TC是否產生進位輸出受CET控制,CET?=?0時,不論Q3~Q0為何值,TC均輸出0信號,只有當CET?=?1時,才根據Q3~Q0的值決定TC的進位輸出值。

表3-21為該計數器的功能表。表3-214位二進制同步計數器74HC161功能表

4.N進制計數器的設計

1)使用觸發(fā)器設計N進制計數器

使用觸發(fā)器設計N進制計數器的步驟如下:

(1)確定觸發(fā)器個數。由于N進制計數器有N個狀態(tài),顯然,觸發(fā)器個數n的選擇,最低應滿足以下關系式:

2n-1<N≤2n

(2)對各計數狀態(tài)進行編碼,畫出狀態(tài)圖。

(3)選擇觸發(fā)器類型,求出電路的狀態(tài)函數、輸出函數及激勵函數。

(4)如存在無效狀態(tài),應分析電路是否能自啟動。

(5)畫邏輯圖。下面舉例說明。

【例3-3】使用下降沿觸發(fā)的JK觸發(fā)器(74HC112)及門電路設計同步十二進制計數器。

解(1)確定觸發(fā)器個數。由于十二進制計數器有12個計數值,即N?=?12,根據關系式2n-1<N≤2n,可計算出n?=?4,即可使用4個觸發(fā)器實現十二進制計數器。由于一片74HC112含兩個JK觸發(fā)器,因而需要兩片74HC112實現十二進制計數器。

(2)對各計數狀態(tài)進行編碼,畫出狀態(tài)圖。十二進制計數器有12種計數狀態(tài),分別用0000、0001、…、1011對這十二種狀態(tài)進行編碼,相應的狀態(tài)圖如圖3-67所示。圖3-67十二進制計數器狀態(tài)圖

(3)選擇觸發(fā)器類型,求出電路的狀態(tài)函數、輸出函數及激勵函數。根據狀態(tài)圖,可列出狀態(tài)表如表3-22所示。

利用卡諾圖化簡,可得十二進制計數器的狀態(tài)函數及輸出函數:表3-22十二進制計數器狀態(tài)轉換表

根據JK觸發(fā)器的特性函數,將上述次態(tài)函數變換成與特性函數一致的形式,得到:可寫出激勵函數如下:

(4)分析電路是否能自啟動。由于電路存在無效狀態(tài)1100、1101、1110、1111,因而需要檢測是否能自啟動。將無效狀態(tài)1100~1111分別代入輸入函數及狀態(tài)函數計算,得到以下結果:

當現態(tài)?=?1100時,次態(tài)

?=?1101,進位C?=?0。

當現態(tài)?=?1101時,次態(tài)?

=?1110,進位C?=?0。

當現態(tài)?=?1110時,次態(tài)?

=?1111,進位C?=?0。當現態(tài)?=?1111時,次態(tài)?

=?0000,進位C?=?1。

包含無效狀態(tài)的狀態(tài)圖如圖3-68所示,顯然電路為能自啟動電路。

(5)畫邏輯圖。根據進位輸出函數及激勵函數,可畫出同步十二進制計數器的邏輯圖,如圖3-69所示。由邏輯圖可見,需要4個JK觸發(fā)器及4個與門電路,即需要兩片集成JK觸發(fā)器74HC112及一片與門芯片74HC04(包含4個2輸入與門)。圖3-68十二進制計數器狀態(tài)圖圖3-69十二進制同步計數器邏輯圖

2)使用集成的計數器設計N進制計數器

常見的集成計數器有4位二進制計數器(即十六進制計數器)及十進制計數器,可以利用它們來設計N進制計數器。根據N值的大小,可選擇不同的方法設計N進制計數器:當N小于一片計數器的計數容量時,可采用清零法或置數法設計N進制計數器;當N大于一片計數器的計數容量時,可采用多片計數器級聯的方式設計N進制計數器。

(1)清零法設計N進制計數器。利用清零法設計N進制計數器的原理是:當計數器的計數值達到N時,利用組合邏輯電路產生清零信號,使計數值變?yōu)?。

【例3-4】使用4位二進制計數器74HC161設計十二進制計數器(清零法)。

解74HC161是具有異步清零及同步置數功能的4位二進制同步加法計數器,可利用其異步清零或同步置零的方式使計數值達到一定值時歸零。

設定十二進制計數器的計數規(guī)則為從0000→…→1011循環(huán),其狀態(tài)圖如圖3-67所示。

方法一:利用異步清零方式清零。

由于異步清零端(

)的清零是立即執(zhí)行的,所以只要在計數值達到1100時,立刻產生清零信號,即可使輸出狀態(tài)由1100變?yōu)?000。顯然,當輸出端狀態(tài)Q3Q2Q1Q0?=?1100時,應使=0,則對應的清零信號的邏輯關系是。除清零外,還應在輸出端狀態(tài)為1011時,使進位C?=?1,則對應的進位輸出的邏輯關系是:。

由上述清零邏輯及進位邏輯,可畫出由74HC161及門電路構成的十二進制計數器的邏輯圖,如圖3-70所示。圖3-70用74HC161構造十二進制計數器連線圖(1)方法二:利用同步置位方式置零。

利用同步置位的方式也可產生清零效果,即當計數值達到某一值時,通過置數方式將D3~D0(其值為0000)并行輸入至計數器。與異步清零不同的是,同步置位信號應該在輸出為1011時產生,這是由于當同步置位信號產生時,需等到下一個時鐘脈沖到來時才會產生置位操作。顯然,當輸出端狀態(tài)Q3Q2Q1Q0?=?1011時,應使?

=?0,則對應的置零信號的邏輯關系是:。同樣,應在輸出端狀態(tài)為1011時,使進位C?=?1,則對應的進位輸出的邏輯關系是:。

由上述置零邏輯及進位邏輯,可畫出由74HC161及門電路構成的十二進制計數器的邏輯圖,如圖3-71所示。圖3-71用74HC161構造十二進制計數器連線圖(2)

(2)置數法設計N進制計數器。采用置數法設置N進制計數器的原理是,通過設置初始狀態(tài),改變計數的容量。

【例3-5】使用4位二進制計數器74HC161設計十二進制計數器(置數法)。

解十二進制計數器的計數容量是12,而計數器74HC161的計數容量為16。顯然,如使74HC161的計數初值由4(對應二進制數為0100)開始,即可將計數容量由16變?yōu)?2,從而得到十二進制計數器,相應的狀態(tài)圖如圖3-72所示。圖3-72十二進制計數器狀態(tài)圖由于需要在每次計數值達到1111后,下一個狀態(tài)從0100開始,從而應使D3D2D1D0?=?0100。此外,還需生成置位

信號,置位信號可通過將進位輸出(TC)取反獲得,即

。

圖3-73為根據以上邏輯關系繪制的十二進制計數器的邏輯圖。

(3)級聯方式設計N進制計數器。當待設計的N進制計數器的計數容量大于集成計數器的容量時,可通過將多片計數器級聯的方式設計N進制計數器。圖3-73由74HC161構造十二進制計數器連線圖(3)

【例3-6】用兩片74HC161構造256進制計數器。

解一片4位二進制計數器74HC161可以看做一個十六進制計數器,也就是每16個時鐘(Clk)脈沖會產生一個進位脈沖輸出。如果用低位芯片的進位輸出取反后作為高位芯片的時鐘脈沖輸入信號,則每16個低位芯片的進位輸出信號可使高位芯片產生一個進位脈沖輸出,即每256(16?×?16)個時鐘(Clk)脈沖會在高位芯片產生一次進位輸出,也就是256進制計數器。通過這種級聯方式用兩片74HC161構造的256進制計數器連線圖如圖3-74(a)所示。另一種方法是用低位芯片的進位輸出端(TC)控制高位芯片的CEP端,由于計數器只在CEP?=?1期間計數,因此,只有當低位芯片的TC=1時,在時鐘(Clk)脈沖到來時才計數一次。通過這種級聯方式構造的256進制計數器連線圖如圖3-74(b)所示。圖3-74256進制計數器連線圖

【例3-7】利用74HC161設計200進制計數器。

解要設計200進制的計數器,可以在上一例中設計的256進制計數器的基礎上完成,方法可以是前面介紹的清零法或預置數法。這里介紹清零法的使用。

由于十進制數200對應的二進制數是11001000,也就是當256進制計數器的Q7~Q0輸出端中Q7、Q6、Q3均為1時,計數器應清零。當計數值達到199(對應二進制數為11000111)時,產生進位輸出,即Q7、Q6、Q2、Q1、Q0均為1時,產生進位輸出。顯然200進制計數器的清零邏輯和進位邏輯分別是:,。電路連接如圖3-75所示。圖3-75200進制計數器連線圖

3.5時序電路的設計方法

1.設計步驟

在組合邏輯電路中,由一組給定的輸入,可得到一組確定的輸出。但在時序電路中,輸出除了與輸入有關外,還與電路原來的狀態(tài)有關,在相同的輸入條件下,可能有不同的次態(tài)。因此,時序電路的設計比組合電路要復雜得多,但仍然有其設計規(guī)律。這里介紹同步時序電路的設計方法。

同步時序邏輯電路的一般設計步驟如下。

(1)分析設計要求,建立原始狀態(tài)圖。首先根據給定的設計要求,確定輸入變量、輸出變量以及電路內部狀態(tài)的個數。然后定義輸入、輸出邏輯狀態(tài)及電路各狀態(tài)的含義及其邏輯關系。最后畫出原始狀態(tài)圖。

(2)進行狀態(tài)化簡,消去多余狀態(tài),畫出最簡狀態(tài)圖。如果兩個電路狀態(tài)在相同的輸入下有相同的輸出,且都轉換到同一個次態(tài),則稱這兩個狀態(tài)為等價狀態(tài)。顯然,等價狀態(tài)是可以合并的。電路中的狀態(tài)數越少,電路越簡單。

(3)狀態(tài)分配,畫出編碼后的狀態(tài)圖。狀態(tài)分配就是進行狀態(tài)編碼,也就是為每一個狀態(tài)定義一個唯一的二進制代碼。

由于時序邏輯電路的狀態(tài)是用觸發(fā)器狀態(tài)的不同組合來表示的,因此,二進制代碼的位數n也就是該時序電路中觸發(fā)器的個數。因為n個觸發(fā)器共有2n種狀態(tài)組合,故當時序電路需要M個狀態(tài)時,n的取值應至少滿足如下關系式:

2n-1?<?M≤2n

狀態(tài)分配是設計中一個重要的環(huán)節(jié),如果狀態(tài)設計方案選擇不好,那么設計出來的電路會較復雜。因此,常常需要經過反復研究、仔細比較,才能得到較好的設計結果,這需要一定的技巧及經驗。狀態(tài)分配常用的編碼有順序二進制碼、格雷碼、獨熱碼等,這幾種編碼在第1章中已經介紹。

(4)選擇觸發(fā)器類型,求出電路的狀態(tài)函數、輸出函數及激勵函數。根據編碼后的狀態(tài)圖,可寫出電路的狀態(tài)函數及輸出函數,再根據所選擇的觸發(fā)器類型,可求出激勵函數。

(5)如果電路存在無效狀態(tài),則應判斷電路是否為能自啟動電路。

(6)畫邏輯圖。根據得到的激勵函數及輸出函數,可畫出電路的邏輯圖。

2.時序電路的設計舉例

【例3-8】設計一個串行數據檢測電路,要求是:連續(xù)輸入3個或3個以上的1時,輸出為1,其余情況輸出為0。

解(1)分析設計要求,建立原始狀態(tài)圖。通過題目分析,可知電路有一個串行數據輸入信號,有一個檢測結果輸出信號。電路的內部狀態(tài)初步設定4個,分別是:

狀態(tài)S0:此為起始狀態(tài)。當輸入0后,輸出0,次態(tài)仍為起始狀態(tài)S0;當輸入1后,輸出0,次態(tài)為下一狀態(tài)S1。

狀態(tài)S1:連續(xù)檢測到一個1之后的狀態(tài)。輸入0后,輸出0,次態(tài)回到起始狀態(tài)S0;輸入1后,輸出0,次態(tài)為下一狀態(tài)S2。狀態(tài)S2:連續(xù)檢測到兩個1之后的狀態(tài)。輸入0后,輸出0,次態(tài)回到起始狀態(tài)S0;輸入1后,輸出1,次態(tài)為下一狀態(tài)S3。

狀態(tài)S3:連續(xù)檢測到三個及三個以上1之后的狀態(tài)。輸入0后,輸出0,次態(tài)回到起始狀態(tài)

溫馨提示

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

評論

0/150

提交評論