數(shù)字電路分為組合邏輯電路和時序邏輯電路兩類,組合邏輯電路的特點是輸出信號只是該時的輸入信號的函數(shù),與別時刻的輸入狀態(tài)無關(guān),它是無記憶功能的。這一章我們來學(xué)習(xí)組合邏輯電路。這一章是本課程的重點內(nèi)容之一
我們在學(xué)習(xí)時把這一章的內(nèi)容分為:
§4、1 邏輯電路的分析
§4、2 邏輯電路的設(shè)計
§4、3 常用的組合邏輯
§4、1 組合邏輯電路的分析
一:組合邏輯電路的分析 (1):有給定的邏輯電路圖,寫出輸出端的邏輯表達(dá)式; (2):列出真值表; (3):通過真值表概括出邏輯功能,看原電路是不是最理想,若不是,則對其進(jìn)行改進(jìn);
我們對組合邏輯電路的分析分以下幾個步驟:
。 第一步:寫邏輯表達(dá)式。我們由前級到后級寫出各門邏輯表達(dá)式
例1:已知右面的邏輯電路圖,試分析其功能。
P=A+B S=A+P=AB W=B+P=AB
F=S+W=AB+A B
第二步:列真值表(如右圖所示)。
第三步:邏輯功能描述并改進(jìn)設(shè)計。
從真值表中可以看出這是一個二變量“同或”電路。原電路設(shè)計不合理,它只需一個"同或"門即可.
§4、2 組合邏輯電路的設(shè)計
一:組合電路邏輯電路的設(shè)計
電路設(shè)計的任務(wù)就是根據(jù)功能設(shè)計電路,一般按如下的步驟進(jìn)行:
(1)把邏輯命題換為真值表;這一步我們要從以下幾個反面考慮
用英文字母代表輸入或輸出;
分清幾個輸入、輸出;
分清輸入和輸出之間的對應(yīng)關(guān)系。
(2)把邏輯函數(shù)進(jìn)行化簡,化簡的形式則是根據(jù)所選用的邏輯門來決定;
(3)根據(jù)化簡結(jié)果和所選定的門電路,畫出邏輯電路圖。
例: 設(shè)計三變量表決器,其中X具有否決權(quán)。
第一步:列出真值表。(如右上圖)
設(shè)X、Y、Z分別代表參加表決的變量;F為表決結(jié)果,
我們把變量規(guī)定為:X、Y、Z為1表示贊成;為0表示反對。
F為1表示通過;為0表示被否決。
第二步:化簡邏輯函數(shù)。
我們選用與非邏輯來實現(xiàn)。用卡諾圖來化簡(如右中圖)F=
第三步:畫邏輯電路。(如右圖)
§4、3 常用的組合邏輯
常用組合邏輯的種類很多,主要有全加器、譯碼器、編碼器、多路選擇器等,下面我們分別把它們介紹一下。
一:半加器和全加器
在數(shù)字系統(tǒng)中算術(shù)運算都是利用加法進(jìn)行的,因此加法器是數(shù)字系統(tǒng)中最基本的運算單元。由于二進(jìn)制運算可以用邏輯運算來表示,因此我們可以用邏輯設(shè)計的方法來設(shè)計運算電路。加法在數(shù)字系統(tǒng)中分為全加和半加(第一章我們已經(jīng)介紹了)所以加法器也分為全加器和半加器。
(1)半加器設(shè)計
半加器不考慮低位向本位的進(jìn)位,因此它有兩個輸入端和兩個輸出端。
設(shè)加數(shù)(輸入端)為A、B ;和為S ;向高位的進(jìn)位為Ci+1。
它的真值表為:如右圖所示
函數(shù)的邏輯表達(dá)式為: S=AB+AB ; Ci+1=AB
邏輯電路圖(用異或門和與門構(gòu)成)為:如右圖(2)所示
(2)全加器的設(shè)計(它的邏輯符號為圖(3)所示)
由于全加器考慮低位向高位的進(jìn)位,所以它有三個輸入端和兩個輸出端。
設(shè)輸入變量為(加數(shù))A、B、 Ci-1,輸出變量為 S、 Ci+1
它的真值表為:如圖(4)所示
函數(shù)的邏輯表達(dá)式為:S=ABCi-1+ABCi-1+ABCi-1+ABCi-1=AB
Ci-1
Ci+1=ABCi-1+ABCi-1+ABCi-1+ABCi-1 =(AB)Ci-1+AB
邏輯電路圖(用異或和與門構(gòu)成)為:如圖(5)所示
(3)全加器的應(yīng)用
因為加法器是數(shù)字系統(tǒng)中最基本的邏輯器件,所以它的應(yīng)用很廣。它可用于二進(jìn)制的減法運算、乘法運算,BCD碼的加、減法,碼組變換,數(shù)碼比較等。
例 1:用全加器構(gòu)成二進(jìn)制減法器。
以四位二進(jìn)制為例。(減法可轉(zhuǎn)換為加補運算)
設(shè)兩組四位二進(jìn)制分別為X3X2X1X0和Y3Y2Y1Y0,把Y3Y2Y1Y0先進(jìn)行求補然后再進(jìn)行加法運算。
因為求補是逐位求反后再加“1”所以它的邏輯電路圖為如圖(6)所示:
例 2:采用四位全加器完成8421BCD碼轉(zhuǎn)換為余3代碼。
由于8421BCD碼加0011即為余3代碼,因此轉(zhuǎn)換電路就是加法電路。
設(shè)8421BCD碼四位又高位到低位為M3、M2、M1、M0,余3代碼的四位由高到低為C3、C2、C1、C0 。
它的邏輯電路圖為如圖(7)所示:
二:編碼器和譯碼器
指定二進(jìn)制代碼代表特定的信號的過程就叫編碼。把某一組二進(jìn)制代碼的特定含義譯出的過程叫譯碼。
(1)編碼器 因為n位二進(jìn)制數(shù)碼有2n種狀態(tài),所以它可代表2n組信息。我們在編碼過程中一般是采用編碼矩陣和編碼表,編碼矩陣就是在卡諾圖上指定每一方格代表某一自然數(shù),把這些自然數(shù)填入相應(yīng)的方格。
例 1:把0、1、2、...、9編為5421BCD碼.
先來確定編碼表如圖(1)所示和編碼矩陣如圖(2)所示:
由編碼表確定各輸出端的邏輯表達(dá)式是:
A=5+6+7+8+9
B=4+9
C=2+3+7+8
D=1+3+6+8
根據(jù)這些表達(dá)式可用或門組成
邏輯電路如圖(3)所示:
(2):譯碼器 編碼的逆過程就是譯碼。
譯碼就是把代碼譯為一定的輸出信號,以表示它的原意。實現(xiàn)譯碼的電路就是譯碼器。
譯碼器可分為二進(jìn)制譯碼器、十進(jìn)制譯碼器、集成譯碼器和數(shù)字顯示譯碼驅(qū)動電路。其中二進(jìn)制譯碼器是一種最簡單的變量譯碼器,它的輸出端全是最小項。
例 2:設(shè)計一譯碼電路把8421BCD碼的0、1、2、...、9譯出來.
四位二進(jìn)制有十六種狀態(tài),而實際只需要十種,因此其余項作無關(guān)項考慮.
其編碼矩陣為如圖(4)所示.
我們通過編碼矩陣可得如下譯碼關(guān)系:如圖(5)所示.
所以它的邏輯電路圖為(用與門和與非門實現(xiàn))
如圖(6)所示:
集成譯碼器的工作原理與其它譯碼器一樣,但它有它的特點.
它的特點為:
輸入采用緩沖級;(減輕信號負(fù)載)
輸出為反碼;低電平有效(減輕輸出功率)
增加了使能端.(便于擴(kuò)展功能)
目前常用的典型的集成譯碼器是三------八譯碼器。
它的邏輯符號為.如圖(7)所示: 注:其中E0E1E2為使能端,只有當(dāng)E1、E2為0時E0為1時此譯碼器才工作。
三:數(shù)據(jù)選擇器和多路分配器
(1)數(shù)據(jù)選擇器 它就是從多個輸入端中選擇一路輸出,它相當(dāng)于一個多路開關(guān)它的邏輯符號如圖(1)所示:其中D0D1、、、Dn是數(shù)據(jù)輸入端;A0A1、、、An為地址變量(有n個地址變量就有2n個輸入端).
常用的有二選一,四選一,八選一和十六選一,若需更多則由上述擴(kuò)展。
例 3:如圖(2)所示的四選一數(shù)據(jù)選擇器,試寫出它的輸出邏輯表達(dá)式和功能表
它的邏輯輸出表達(dá)式為 F=(A0A1D0+A0A1D1+A0A1D2+A0A1D3)E
它的功能表為:如下表所示
從表上我們可以看出當(dāng)使能端E為“1”時輸出為“0”即禁止,只有當(dāng)使能端為“0”時選擇器才有效。
例 4:把四選一擴(kuò)展為八選一。
地址
使能端
輸入
輸出
A0
A1
E
D
F
* *
1
*
0
0 0
0
D0---D3
D0
0 1
0
D0---D3
D1
1 0
0
D0---D3
D2
1 1
0
D0---D3
D3
八選一要有八個輸入變量,因此需要三個地址變量(我們把其中一個A0作為使能段);
四選一只能有四個輸入變量,所以我們需要兩個四選一和一個非門.非門的作用是改變使能端的電平,減少使能端.先列出它的功能表如下表所示:
邏輯電路圖如圖(3)所示:
(2)多路分配器 它的功能是把輸入數(shù)據(jù)分配給不同的通道上,相當(dāng)于一個單刀多擲開關(guān)。
A0
A1
A2
D
F
0 0 0
D0----D7
D0
0 0 1
D0----D7
D1
0 1 0
D0----D7
D2
0 1 1
D0----D7
D3
1 0 0
D0----D7
D4
1 0 1
D0----D7
D5
1 1 0
D0----D7
D6
1 1 1
D0----D7
D7