摘 要:教師可以讓學生以波形圖為切入口,根據觸發器同步和異步二種工作方式,再結合觸發器翻轉的特點,找出每種電路設計的規律,從而詳細描述如何快速設計二進制加法、減法計數器電路。
關鍵詞:二進制計數器;同步;異步;加法;減法;觸發器
二進制計數器是各種計數器的基礎,職高學生在設計二進制電路時總是望而生畏,往往無從著手。為了幫學生完成此類設計擺脫畏難情緒,我們把二進制計數器電路設計進行歸納,以觸發器翻轉的特點和波形圖的轉換過程為切入口,將復雜的電路設計進行簡單直觀化,使學生輕松地掌握了知識。經過多年教學實踐,效果良好,現介紹如下。
一、理論要點
統計輸入脈沖個數的功能稱為計數,能實現計數操作的電路稱為計數器。計數器在數字電路中有著廣泛應用,除用于計數,還可用于分頻、定時、測量等電路。計數器種類很多,按計數的進制不同,可分為二進制計數器、十進制計數器以及N進制計數器。按觸發器的翻轉先后次序分類,可以把計數器分為同步計數器和異步計數器。同步計數器中的同步是指當時鐘脈沖輸入時各觸發器的翻轉是同時發生的,而異步計數器中異步是指當時鐘脈沖輸入時各觸發器的翻轉有先有后之分。
二、加法電路
加法電路設計中,有同步和異步兩種設計情況。下面,從例題著手,就設計同步二進制和異步二進制的設計方法進行展開討論。例如:設計一個三位二進制加法計數器電路。
(1)分析。先看如下波形圖(二進制加法的波形圖),假設初態是從000開始的,經過8個CP后又回到了初態000,所以上述畫的波形圖就是三位二進制加法計數器的時序圖。有了這個圖,下面我們將討論如何用電路圖來實現,也就是用觸發器來實現。
(2)設計成異步的方式。異步電路結構相對簡單,而且學生容易掌握理解。異步方式,是說各觸發器的觸發不是同一時刻的,有先后次序。我們把三個觸發器各自觸發條件羅列出來,不難發現Q0的變化為(8個CP)每來一個CP翻轉一次,從圖中看它是CP的下降沿(上升沿也可),故可寫出Q0的狀態方程: Qn+1=n0 CP↓
再看Q1的值變化:Q1的翻轉是在Q0的下降沿后,也就是Q1也是一個計數型觸發器即T’觸發器。當Q0的下降沿到來后,Q1即發生翻轉,否則就保持,所以Q1的狀態方程可以看成:Q1n+1=n1 Qn 0↓
接著看Q2的值變化:從圖上看,Q2的翻轉發生在Q1的下降沿后,而其他時刻均為保持,Q2觸發器也為計數型觸發器,所以Q2的狀態方程可以寫成:Q2n+1=n2 Qn 1↓
綜上所述,三個觸發器均為計數型觸發器,所以可以用T’ 觸發器來實現,而一般我們用的觸發器均是JK、D有時也是T觸發器。所以,我們要掌握的首先就是觸發器類型的轉換,把JK、D、T轉成T’觸發器,畫出的電路圖如下。
因為JK觸發器的特性方程為: Qn+1=Jn+Qn,只要J=K=1時,Qn+1=n; D觸發器的特性方程為:Qn+1=D,只要D=n; T觸發器的特性方程為:Qn+1=Tn+Qn,當T=1時,Qn+1=n
當每個觸發器具有計數功能后,接下來解決如何進行連線的問題。對職高學生來說,只能一步一步來分析。本人推行的方法原則是簡略容易理解。從題意上知,要設計異步三位二進制計數器,需要三個計數型觸發器,先擺放三個觸發器具體位置,以剛才TTL為例,位置如下:
然后,確定觸發器之間的連線。根據剛才條件可知,如果是加法,那高位觸發器翻轉的觸發條件是當低位的輸出原態產生下降沿時。所以,對于JK觸發器,應是FF0的Q0給Q1的CP,依次類推,T觸發器也同樣,而D觸發器本身是上升沿觸發,故FF1、FF2連接時,要獲得低位輸出的下降沿,就要把低位端給高位的CP輸入端,即n0↑ 、n1↑ . 它們等效于 Qn0↓ 、Qn1↓ ,連線如右(T觸發器類同JK觸發器)。
若采用CMOS類型觸發器,則電路圖如下:(JK觸發器和T觸發器)
(3)設計成同步的工作方式。同樣,我們畫出波形圖如下。
我們知道,同步的工作方式是指所有的觸發器的觸發時刻由同一個CP控制,指CP的上升沿或者CP的下降沿。所以,這就給電路的設計帶來一定的難度,電路的結構要比異步工作方式難得多了。下面,我們來逐步考察。先看Q0波形變化,它能實現二分頻,來個CP翻轉一次,即:Qn+10=n0 CP ↓(CP↑)。再來看Q1,先是四分頻,與Q0同一時刻要觸發,Q1的變化:00→11→00→11→00,它的變化是保持或翻轉。我們不難發現,當Q0為0時,來CP↓,Q1保持;而當Q0=1時,來CP ↓,Q1翻轉。這樣具有保持翻轉功能的觸發器,我們可以設定為T觸發器(T觸發器的邏輯功能為T=0時保持,T=1時翻轉)。所以,只要Q1觸發器改成T觸發器,即T1=Q0,可以得出Q1觸發器的狀態方程為:Q1n+1=Q0n?茌Q1n CP↓
再來看一次Q2觸發器輸出狀態的變化。Q2前面四個CP連續為0,第四個CP后翻轉,接下來一直為1,到第八個CP才翻轉。從圖中二處翻轉處可看到,一樣是CP的下降沿,為什么會出現翻轉?再看Q0Q1,發現在二個翻轉處Q0Q1都同時為0,而其余的則Q0或Q1有一個為0。所以,可以把Q2也看做T觸發器,要么保持,要么翻轉,當T2=1時即翻轉,這個T2的輸入信號可以從Q0Q1處得到,即T2=Q0Q1,當Q0和Q1同時為1時,T2=1,即Q2翻轉。因此,Q2的狀態方程可以寫成:Q2n+1=T2?茌 Q2n=Q0nQ1n?茌Q2n CP↓
有了這個狀態方程和輸入方程,我們發現:如果要設計同步二進制計數器,則要把各觸發器轉換成T觸發器,同樣有JK和D觸發器,如果本身是T觸發器那最簡單了。我們把JK轉換成T觸發器其實很簡單,可以讓J=K=T,轉換圖如右。
從上面的分析,即可得到如下的電路圖。
若采用T觸發器,則更簡單,這里不畫了。
從以上分析可以得出結論:對于同步二進制加法計數器,只要把每個觸發器轉換成T觸發器,最低位的除外,然后每一個高位的輸入端與低位輸入端相與,最低位輸入為1。
上面,我們討論了二進制加法計數器電路的設計。下面,我們再分析一下減法電路的設計方法。
三、減法電路
減法電路設計中,同樣有同步和異步兩種情況。我們也從例題著手,分別就同步二進制和異步二進制的設計方法展開討論。
例如:設計一個三位二進制減法電路。
(1)根據波形圖用異步方式進行設計。我們先來看一下減法電路的波形圖。
從上面的波形圖,我們可以看出,Q0的翻轉是在CP的下降沿(也可上升沿)Q0實現CP的二分頻,而Q1的翻轉是在Q0的上升沿時刻,同樣看Q2,Q2的翻轉也是在Q1的上升沿。所以,我們不難發現,每個觸發器都工作在計數狀態,這與上面的異步二進制加法計數器是一樣的。唯一不同的是觸發條件不一樣,減法高位翻轉的條件是低位輸出的上升沿,寫出狀態方程如下:
Q0n+1=n0 CP↓ Q1n+1=n1 Qn0↑
Q2n+1=n2 Qn1↑
所以,同樣把每個觸發器設計成T’觸發器,上面已轉換過,這里就不敘述了。下面,我們看如何連接。同樣,也放好三個觸發器的位置,由于JK在這里本是下降沿觸發,所以要轉換成上升沿觸發,那么只要把低位的端給高位的CP輸入端,即n0↓ 、n1↓ ,它們等效于Q0n↑、Q1n↑,所以連線如下。
如果JK觸發器本身是上升沿觸發,那么連接時只要把低位Q端給高位的CP輸入端即可,電路圖如下。
假設是用D觸發器做,則電路圖又不一樣。把每個D觸發器轉換成T’觸發器,放好位置,接下來進行連接,同樣這三個觸發器本是上升沿觸發,那么直接低位的輸出給高位的即可,不用進行電平之間的轉換,電路圖如下。
(2)考察波形圖用同步方式設計。
從波形圖上可以看出,Q0的翻轉是一個CP翻轉一次,可以是CP的上升沿或者下降沿,而Q1的翻轉卻是當Q0=0時,否則Q1保持原來的狀態。所以,可知,Q1觸發器同樣也可設置成T’觸發器T1=Q0n(因為T觸發器為1時翻轉) ,Q0n=0時,即n0=1。再來看Q2的翻轉條件,從上面的波形圖中可以看出,當Q0n與Q1n即二個低位都為0時,則Q2產生翻轉,不然當CP脈沖來時,Q2仍保持原來的狀態。所以Q2也設計成T’觸發器,當Q0n、Q1n都為0時,Q2翻轉,則此時T2一定為1,所以T2=n0n1。我們得出結論,即高位觸發器翻轉的條件為:所有低位反態輸出狀態之與給高位觸發器的信號輸入端。而此結論恰恰與加法相反。電路圖如右。
總結:異步加法電路:低位輸出的下降沿作為高位觸發器的觸發條件;異步減法電路:低位輸出的上升沿作為高位觸發器的翻轉條件;同步加法電路:所有低位輸出原態之與作為高位的輸入信號;同步減法電路:所有低位輸出反態之與作為高位的輸入信號。因此,一般異步每個觸發器轉換為T’觸發器,若是同步,除低位外,每個觸發器一般轉換成T觸發器。以上總結,讓同學們作為一種常識先記住,再進行反復練習,效果很好。這樣,可以進一步強化對知識的理解,提高學生實際能力。
參考文獻:
[1]王道生.微型計算機電路基礎[M].北京:電子工業出版社,2004.