Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 24
CHƯƠNG 2
CÁC CNG LUN LÝ
TI GIN MCH BẰNG PHƯƠNG PHÁP ĐẠI S BOOLEAN
VÀ BẢN ĐỒ KARNAUGH
2.1. Mô t đại cương mạch s, cng lun lý
2.1.1. Khái niệm
Vic phân tích thiết kế các h thng mạch điện t trong máy tính (computer) do vn dụng đại
s toán gọi là đại s Boolean do mt nhà toán học người Anh, George Boolean đề xuất vào năm 1854.
Năm 1938, Claude Shannon chng t rng có th dùng các qui tắc đại s Boolean để phân tích và thiết
kế các mạch điện. Bước đầu tiên trong vic xây dng mt mạch điện là bin din hàm Boolean ca nó
bng mt biu thức được lp bằng cách dùng các phép toán cơ bản của đại s Boolean.
Các biến s trong đại s Boolean là biến biu th trng thái ca mt giá tr điện thếta gi là
mc logic 0 hoặc 1. Thường được s dụng để biu din mức điện thế có trên dây hay tại các đầu vào /
ra (IO: input/output).
Logic 0
Logic 1
Sai
Tt
Không
Công tắt đóng (off)
Mức điện thế thp (0 - 2.4 v)ol
Đúng
M
Công tc m (on)
Mức điện thế cao (5v-3.3 vol)
Hình 2.1 Biu din mức logic trong đại s Boolean
Các khái nim liên quan với đại s Boolean:
- Tín hiệu tương tự (analog signal): là tín hiệu có biên độ liên tc theo thi gian, thường
do các hiện tượng t nhiên sinh ra.
Hình 2.2 Biu din tín hiệu tương tự
Mc tiêu hc tp: Sau khi học xong bài này, người hc có th:
- Mô tả khái niệm về mạch số.
- Xác định bng chân tr, lược đồ lun ca các cng, v giản đồ thi gian
ca các cng.
- Rút gn hàm lun lý bng đại s Boolean.
- Rút gn hàm lun lý bng biểu đồ Karnaugh.
- V sơ đồ mạch (lược đồ lun lý) qua biu thc hàm Boolean.
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 25
- Tín hiu s (digital signal): là tín hiu có dạng xung gián đoạn v thời gian biên độ ch
có 2 mc rõ rt: mc cao và mc thp.
1
0
Hình 2.3 Biu din tín hiu s
Mạch điện x n hiệu tương tự gi mạch tương tự. Mạch điện x tín hiu s gi là mch
s. Vic vn dụng đại s Boolean thiết kế mch s có mt s ưu điểm sau:
- D thiết kế, phân tích.
- Hoạt động theo chương trình lập sn.
- Ít b ảnh hưởng ca nhiu.
- D chế to thành mch tích hp.
2.1.2. Cổng luận lý
Cng (hay cng luận lý): cơ sở phn cng, t đó chế to ra mi máy tính s. Cng có mt hoc
nhiu ngõ vào, nhưng chỉ có 1 ngõ ra. Các giá tr vào hoc ra chth nhn 1 trong 2 giá tr1 hoc
0. Gi là cng lun lý vì nó cho kết qulun của đại s logic như nếu A đúng và B đúng thì C đúng.
Hãy xem xét những ý tưởng cơ bản chế to các cổng này để hiu rõ bn cht ca mch s. Mi
logic s hiện đại cũng dựa trên vic chế to transistor vận hành như một công tc nh phân cc nhanh.
Hình 2.4 minh ha mạch transistor lưỡng cực đặt vào mạch đơn giản. Transistor này có 3 ni
kết vi thế gii bên ngoài: cc góp (collector), cc nn (base) cc phát (emitter). Khi điện áp vào
V
in
thấp hơn giá trị ti hạn nào đó (0.8V), transistor s tắt đóng vai trò như điện tr hn, khiến
đầu ra ca mch V
out
nhn giá tr gn với Vcc (điện áp ngoài thường là +3V). Lúc V
in
vượt quá giá tr
ti hn, transistor bật và đóng vai trò như dây dẫn, kéo V
out
xung tới đất (theo qui ước là 0 V).
V
cc
V
out
V
in
collector
base Emitter
Hình 2.4 Cu to mch transistor cng NOT
A Y=A’
Thy rng khi V
in
thp thì V
out
cao, và ngược lại. Do đó, mạch này là b nghịch đảo (converter
hoc NOT), chuyn logic 0 sang logic 1, logic 1 sang logic 0, hay tương ng vi mt cng gi
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 26
cng NOT. Cần đin tr để gii hạn dòng điện do transistor kéo qua. Thi gian cn thiết để chuyến t
trng thái này sang trạng thái khác thường mt vài nano giây tùy theo loi transistor.
V
cc
V
out
V
1
V
2
Hình 2.5 Cu to mch transistor cng NAND
Trong Hình 2.5 hai transistor được gnni tiếp. Nếu V
1
V
2
đều cao, c hai transistor s dn
điện, lúc này Vout s b kéo xung thp. Gi s mt trong hai đầu vào thấp, transistor tương ng s
tắt, đầu ra s cao. Nói tóm li V
out
s thp khi ch khi V
1
V
2
đều cao. Mch này mt cng
NAND.
Trong Hình 2.6 hai transistor được gn song song. Nếu một trong hai đu vào cao, transistor
tương ứng s kéo đầu ra xung tới đất. Còn như cả hai đầu vào đều thấp, đầu ra s vn cao. Mch này
tương ứng vi cng gi là NOR.
V
cc
V
out
V
2
V
1
Hình 2.6 Cu to mch transistor cng NOR
Cng
l
à
m
t
m
ch s g
m m
t
ho
c nh
i
u
n h
i
u vào
v
à
m
t
n h
i
u ra
.
M
t
mch s s
đưc
t
o ra
t
t
p hp các cng cơ bn. M
i
cngbn có ký h
i
u r
i
êng và ho
t
động ca được
mô
t
qua m
t
bng g
i l
à bng chân
t
r
(
t
ru
t
h
t
ab
l
e).
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 27
2.1.2.1. Cổng đệm (buffer)
Khái nim: cng mt ngõ vào mt ngõ ra. Ngõ ra bng ngõ vào (Tín hiu qua cng
đệm không làm thay đổi trng thái logic).
Cổng đệm thông thường dùng để sa dng tín hiệu vuông hơn, đưa điện thế tín hiu v đúng
mc logic.
Hàm boolean: Y=A
A Y=A
A Y=A’
A Y=A’
a) Lược đồ lun lý
A
Y=A
0
0
1
1
b) Bng chân tr
A
Y
t
Y
c)Giản đồ thi gian
Hình 2.7 Lược đồ lun lý bng chân tr - giản đồ thi gian cng BUFFER
2.1.2.2. Cổng đảo (NOT)
Khái nim: Là cng có mt ngõ vào và một ngõ ra. Ngõ ra ngược li ngõ vào (còn gi là cng
INVERTER).
Khi cổng đảo được ghép chung vi cng khác thì ký hiệu được đơn giản thành 1 du tròn nh
Hàm boolean: Y=A’
A Y=A’
a) Lược đồ lun lý
A
Y=A
0
1
1
0
b) Bng chân tr
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 28
A
Y
t
Y
0
1
0
1
c)Giản đồ thi gian
Hình 2.8 Lược đồ lun lý bng chân tr - giản đồ thi gian cng NOT
2.1.2.3. Cổng AND
Khái nim: cng có ít nht hai ngõ vào và mt ngõ ra. Ngõ ra có giá tr cao khi tt c ngõ
vào có giá tr cao.
Dùng thc hin phép nhân logic gia hai hay nhiu biến nh phân.
Hàm boolean: Y=A.B (hoc Y=AB)
a) Lược đồ lun lý
A
B
Y=A.B
0
0
0
0
1
0
1
0
0
1
1
1
b) Bng chân tr
A
Y
t
B
c) Giản đồ thi gian
Hình 2.9 Lược đồ lun lý bng chân tr - giản đồ thi gian cng AND
2.1.2.4. Cổng OR
Khái nim: cng ít nht hai ngõ vào mt ngõ ra. Ngõ ra giá tr cao khi ít nht
mt ngõ vào có giá tr cao.
Dùng thc hin phép cng logic gia hai hay nhiu biến nh phân.
Hàm boolean: Y=A+B
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 29
a) Lược đồ lun lý
A
B
Y=A+B
0
0
0
0
1
1
1
0
1
1
1
1
b) Bng chân tr
A
Y
t
B
c) Giản đồ thi gian
Hình 2.10 Lược đồ lun lý bng chân tr - giản đồ thi gian cng OR
2.1.2.5. Cổng NAND
Khái nim: Là cng có ít nht hai ngõ vào và mt ngõ ra. Ngõ ra có giá tr thp khi tt c ngõ
vào có giá tr cao.
Thc hin cùng 1 lúc 2 chức năng: AND và NOT.
Hàm boolean: Y=(A.B)’hoc Y=(AB)’
A
B
Y
a) Lược đồ lun lý
A
B
Y=(A.B)’
0
0
1
0
1
1
1
0
1
1
1
0
b) Bng chân tr
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 30
A
Y
t
B
c) Giản đồ thi gian cng NAND
Hình 2.11Lược đồ lun lý bng chân tr - giản đồ thi gian cng NAND
2.1.2.6. Cổng NOR
Khái nim: Là cng ít nht hai ngõ vào mt ngõ ra. Ngõ ra có giá tr thp khi ít nht
mt ngõ vào có giá tr cao.
Thc hin cùng 1 lúc 2 chức năng: OR và NOT.
Hàm boolean: Y=(A+B)’
A
B
Y
a) Lược đồ lun lý
A
B
Y=(A+B)’
0
0
1
0
1
0
1
0
0
1
1
0
b) Bng chân tr
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 31
A
Y
t
B
c) Giản đồ thi gian cng NOR
Hình 2.12Lược đồ lun lý bng chân tr - giản đồ thi gian NOR
2.1.2.7. Cổng XOR
Khái nim: Là cng ít nht hai ngõ vào mt ngõ ra. Ngõ ra có giá tr cao (1) khi s ngõ
vào có giá tr cao (mt) là s l (1, 3, 5, …)
Thc hin phép toán EX-OR (cng ngoi tr - cng b qua s nh) gia 2 biến nh phân.
Hàm boolean: Y=A
B = A’.B+A.B’
Y=0 khi A và B cùng mc logic
Y=1 khi A và B cùng mc logic
a) Lược đồ lun lý
A
B
Y= AB
0
0
0
0
1
1
1
0
1
1
1
0
b) Bng chân tr
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 32
A
Y
t
B
c Giản đồ thi gian cng XOR
Hình 2.13 Lược đồ lun lý bng chân tr - giản đồ thi gian XOR
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 33
2.2. Ti gin mch s
2.2.1. Phương pháp Boolean
Các mch s được thiết kế t nhng nguyên t nh nht gi là cng logic (gate). Các cng này
được u hành t diod, transistor và đin trở, để rồi đầu ra ca s có giá tr như các phép toán logic
bn (NOT, OR, AND).Vic dùngđại s Booleanđể t phân tích các cổng logic bn này,
sau đó sẽ m rng ra phân tích và thiết kế cách ni các công li với nhau để to thành các mch s cn
thiết.
d hàm Boolean: F = x + y’z bng chân tr (Hình 2.14a) biu din giản đồ lun
(Hình 2.14b).
X
y
z
y’
y’z
F=x+y’z
0
0
0
1
0
0
0
0
1
1
1
1
0
1
0
0
0
0
0
1
1
0
0
0
1
0
0
1
0
1
1
0
1
1
1
1
1
1
0
0
0
1
1
1
1
0
0
1
a)Bng chân tr hàm F = x + y’z
x
y
z
F
b)Lược đồ lun lý ca hàm F = x + y’z
Hình 2.14 Bng chân tr - ợc đồ lun lý ca hàm F = x + y’z
Để tn dụng các phương pháp đơn giản, cn mt s đồng nht thc trong đại s Boolean. Đim
đáng lưu ý là mỗi định lut có hai dạng đối ngu ca nhau. Bằng cách hoán đối AND và OR, cũng như
0 1, th to dng này bng dng kia. Bng sau liệt các đẳng thức bản nht của đại s Boolean
(Hình 2.15) và chng minh tt c định lut thông qua xây dng bng chân tr.
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 34
TT
TÊN
DNG AND
DNG OR
1.
Định lut thng nht
1.X =X
0+X=X
2.
Định lut không
0.X=0
1+X=1
3.
Định lut Idempotent
X.X=X
X+X=X
4.
Định lut nghịch đảo
X.X’=0
X+X’=1
5.
Định lut giao hoán
X.Y=Y.X
X+Y=Y+X
6.
Định lut kết hp
X.(YC)=(XY).C
(X+Y)+C=X+(Y+C)
7.
Định lut phân b
X+(YC)=(X+Y)(X+C)
X(Y+C)=XY+XC
8.
Định lut hp th
X(X+Y)=X
X+XY=X
9.
Định lut Demorgan
(XY)’=X’+Y’
(X+Y)’=X’.Y’
Hình 2.15 Bng liệt kê các đẳng thức cơ bản nht của đại s Boolean
Định lut De Morgan đưa ra pháp thay thế rt quan trọng đối vi các cng NOR
NAND. cho phép ta thay thế t cổng OR sang AND ngược li. Hình 2.16 cho ta thy cách chuyn
t cng AND sang cng OR nh định lý DeMorgan (AB)’=A’+B’. Ta có cng NAND biu din hàm
F=(A.B)’s tương đương với cng OR viđầu vào được nghch đảo biu din cho hàmF=A’+B’ hay
nói cách khác cổng NAND được biu din bng 2 cách.
Tương t như vậy ta cũng cổng NOR tươngđương như trong Hình 2.17 nh vào định
DeMorgan cho dng OR, F=A’+B’=(AB)’
A
B
F
A
B
F
A
B
F
Hình 2.16 ợc đồ lun lý F=(AB)= A’ + B’
A
B
F
A
B
F
A
B
F
Hình 2.17 ợc đồ lun lý F=A’ + B’ = (AB)’
Dng tng quát của định lý DeMorgan có dng sau:
(x
1
+x
2
+….+ x
n
)’ = x’
1.
x’
2.
….. x’
n
(x
1
.x
2
.…..x
n
)’ = x’
1
+x’
2
+….+ x’
n
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 35
Phân tích và thiết kế: (Mô t b sung trang 38)
Ngõ vào X: ca lái, (X ca h; X’ cửa đóng)
Ngõ vào Y: b phận đánh lửa (Y: máy chy; Y’: máy tắt)
Ngõ vào Z: đèn pha (Z: đèn sáng; Z’ đèn tắt)
Ngõ ra là hàm F: báo động
Theo yêu cu ví d 2:
- Đèn pha sáng trong lúc (b phận đánh la tt) xe tt máy -> báo động F=1 (Z: đèn sáng,
Y’: tắt )
- Ca m (ô tô ) trong lúc (b phận đánh lửa hoạt động) xe đang chạy -> báo động F=1 (X
ca h, Y: máy chy)
Suy ra: F=ZY’+XY
Bng chân tr của hàm ra như Hình 2.20 và lược đồ lun lý Hình 2.21
X
(ca
lái)
Y
(đánh
la)
Z
(đèn
pha)
Y’
(đánh
la-
tt)
ZY’
(đp sáng
Và đl tắt)
XY
(cl m
và dl
bt)
F
Đếm
Ý nghĩa
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
1
Đèn sáng khi động cơ tắt (n)
0
1
0
0
0
0
0
2
0
1
1
0
0
0
0
3
1
0
0
1
0
0
0
4
1
0
1
1
1
0
1
5
Đèn sáng khi động cơ tắt (n)
1
1
0
0
0
1
1
6
động cơ hoạt động (n) trong khi ca m
1
1
1
0
0
1
1
7
động cơ hoạt động (n) trong khi ca m
Hình 2.20 Bng chân tr mch logic
X
Z
F
Y
Hình 2.21. F= XY + Y’Z -> ợc đồ lun mạch logic (báo động)
XY
Y’Z
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 36
2.2.2. Phương pháp Karnaugh
Mt mch s phc tp s to ra mt biu thc đi s rt phc tp. Bng chân tr biu th ca
mt hàm duy nhất, nhưng hàm th nhiu dng khác nhau hay th nhiu mch s khác
nhau cho cùng mt chức năng. Biết rng biu thc th đơn giản hóa da vào đi s Boolean. Tuy
nhiên qui trình này thường ch áp dng được đối vi các bài toán đơn giản, còn đối vi các bài toán
phc tp thì không nhng qui tc cho phép ta tiên đoán trước bước đi tiếp theo trong quá trình
đơn giản. Phương pháp dùng bản đ Karnaugh giúp đơn giản các biu thc mt cách nhanh chóng, d
hiu và hiu qu hơn.
Để ti thiu hóa hàm Boolean bằng phương pháp bảngKarnaugh phi tuân th theo qui tc v
ô kế cn:
Hai ô được gi là kế cn nhau là hai ô mà khi ta chuyn t ô này sang ô kia ch làm thay đổi giá
tr ca 1 biến. Quy tc chung của phương pháp rút gọn bng bng Karnaugh là gom (kết hp) các ô kế
cn li vi nhau. Khi gom 2 ô kế cn nhau s loi đưc 1 biến, gom 4 ô kế cn s loi được 2 biến, gom
8 ô kế cn s loi được 3 biến
Tng quát:, khi gom 2
n
ô kế cn s loi đưc n biến. Nhng biến b loi là nhng biến khi ta đi
vòng qua các ô kế cn mà giá tr ca chúng thay đổi.
Những điều cần lưu ý:
- Vòng gom được gi hp l khi trong vòng gom đó ít nhất 1 ô chưa thuộc vòng
gom nào.
- Nhng ô nào có giá tr tùy ý ta biu din trong ô đó bng ký hiu x, và nhng ô đó đưc
gi là tùy định.
- Vic kết hp nhng ô kế cn vi nhau còn tùy thuộc vào phương pháp biểu din hàm
Boolean theo dng tng các tích (còn gi dng 1) hay theo dng tích các tng (còn
gi dng 2). Điều này nghĩa là: nếu ta biu din hàm Boolean theo dng 1 thì ta
ch quan tâm nhng ô kế cn nào giá tr bng 1 tùy định, ngưc li nếu ta biu
din hàm Boolean i dng 2 thì ta ch quan tâm nhng ô kế cn nào có giá tr bng 0
và tùy định. Ta quan tâm nhng ô tùy định sao cho nhng ô này kết hp vi nhng ô
giá tr bng 1 (nếu biu din theo dng 1) hoc bng 0 (nếu biu din theo dng 2) s
làm cho s ng ô kếcn là 2
n
ln nht.
- Các ô kế cn mun gom được phi là kế cận vòng tròn nghĩalà ô kế cn cuối cũng là ô
kế cn đầu tiên.
- Các vòng phi được gom sao cho s ô có th vào trong vònglà ln nht và nhđể đạt
được điu đó, thường ta phi gom c nhng ô đã gom vào trong các vòng khác.
Mc đích cn đạt
- Biu thc có cha ít nht các tha s và mi tha s cha ít nht các biến.
- Mch logic thc hin có cha ít nht các vi mch s.
Tóm li:Phương pháp dùng bản đồ Karnaugh s được dùng hầu như trong thiết kế mi mch
s vì vy có mt tm quan trọng đặc bit mà các sinh viên phi hiu rõ tht chc chn.
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 37
2.2.2.1. Bản đồ Karnaugh 2 biến
Bn đồ Karnaugh (gi tt bản đ K) 2 biến là mt bn đồ4 ô, v trí trong mỗi ô tương ứng
vi t hp biến đầu vào. ngoài các ct và dòng ta ghi các giá tr tương ng ca các biến. đây có2
hàng biu th cho 2 giá tr ca biến A (0 và 1) và 2 ctbiu th cho 2 giá tr ca biến B. Ta độ ca mi
ô tương ứng vi t hp nh phân ca các biến đu vào. Ví d như trong (Hình 2.22), ti ta độ A=0 và
B=0 tương ứng vi t hp AB=00 hay ta ghi làAB là giá tr đầu ra f=1. Ti ta độAB=01 giá tr đầu
ra tương ứng x=0 nên ta ghi vào ô tương ng giá tr 0. Tương t như vậy cho các ô còn li ta s có được
bn đồ K như trong (Hình 2.22 c).
A
B
f
B
A
0
1
0
0
1
0
1
0
f=A’B’+AB
0
1
0
1
0
0
1
1
1
1
0
1
a.Bng chân tr
b.Hàm biu din
c.Bản đồ K
Hình 2.22 Mô t bản đồ K 2 biến
Ngoài ra, mt dạng khác để biu din K 2 biến là:
A
B
Thp phân
B
A
0
1
0
0
0
0
1
1
0
0
1
1
0
2
1
1
3
1
2
3
a.Bng chân tr so vi h thp phân
c.B tr K 2 biến
Hình 2.23 Mô t bản đồ K 2 biến vi dng thp phân
Vậy, f=A’B’+AB được ghi làf(A,B) =
(0,3). Suy ra, biểu đồ K được th hiện như:
B
A
B
1
0
A
0
1
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 38
2.2.2.2. Bản đồ Karnaugh 3 biến
Cách đin vào bn đồ K 3 biến vi bng chân tr h thp phân.B tr bn đồ K 3 biến s có dng
(Hình 2.24)
Hình 2.24 B tr bn đồ K 3 biến
2.2.2.3. Bản đồ Karnaugh 4 biến
Tương tự, cách điền bn đồ K 4 biến s có dng(Hình 2.25)
Hình 2.25 B tr bn đồ K 4 biến
Trong thc tếch dùng các bản đồ cho t 3 biến tr lên, cũng chỉ dùng cho đến 5 biến
nhiều hơn nữa thì s rt phc tp vì đây dùng phương pháp trực quan. Đ hiu rõ cách dùng bản đồ
Karnaugh hãy xem xét các ví d c th sau:
d 3: Để làm mt b báo hiu cho lái xe biết mt s điu kin, vi thiết kế 1 mch báo
động như sau:
Vi tín hiu F= 0 (kèn không kêu), lúc này trng thái: cửa đóng (X=0); b phận đánh lửa
tt/động cơ ô tô không chạy (Y=0) ; đèn pha tắt (Z=0).
Thiết kế mạch báo động làm sao cho b phận báo động s hoạt động (báo đng = 1: kêu beep)
khi tn ti mt trong 2 trng thái sau:
- Ca m (X=1) trong lúc b phận đánh lửa hoạt động/ động hoạt động BÁO ĐỘNG
(Y=1) (KÈN). Cho dù đèn có sáng hoặc tt (Z=1/ Z=0).
- Đèn pha sáng (Z=1) trong lúc b phận đánh lửa tắt=động cơ KHÔNG hoạt động (Y=0)
(Y=1) BÁO ĐỘNG (KÈN), Cho dù CA có mở/đóng (Z=1/ Z=0)
Cửa lái
&
0
0
0 0
Bộ phận đánh lửa
Đèn pha
Báo động
Mạch
Báo
Động
00
01
11
10
0
0
1
3
2
1
4
5
7
6
0
000
001
011
010
1
100
101
111
110
00
01
11
10
00
0
1
3
2
01
4
5
7
6
11
12
13
15
14
10
8
9
11
10
C
B
A
D
Y
X
Z
Y’
Y
Z
F
X
Y
Z
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 39
hãy s đơn giản bng bản đồ K (Karnaugh) 3 biến: F(A,B,C)=Σ(0,2,4,5,6)
Gii: Trước hết đề bài ghi như vậy nghĩa tại các giá tr t hợp đầu vàoΣ(0,2,4,5,6):
0nghĩa là (ABC=000), 2 nghĩa là (ABC=010), 4 nghĩa là(ABC=100),5 nghĩa là(ABC=101), 6 nghĩa là
(ABC=110) thì giá tr ca hàm F s bng 1 hay nói cách khác giá tr đầu ra bng 1.
c 1: Điền giá tr 1 (b tr) bản đồ Karnaugh
Hàm F biu din các ô cho giá tr hàm bng 1, mỗi ô tương ng vi mt t hp các biến đầu
vào. Như vậy các ô có giá tr đầu vào là 0(ABC=000),2(ABC=010), 4(ABC=100), 5(ABC=101)
6(ABC=110) s có giá tr là 1 (Hàm F =1)
00
01
11
10
0
1
1
1
1
1
1
B
A
C
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 40
c 2: Nhóm các phn t gn nhau theo tng nhóm, t bản đồ chính ta có 2 nhóm
.
T bản đồ trên s nhóm được 2 nhóm. (nhóm 1: 4 ô
- Nhóm 1: ta nhóm tối đa được 4 ô, và 4 ô này cho ta biu thc C’ (trong 4 ô này thì ch
có biến C là không đổi và C=0 nên ta biu diễn dưới dng C ).
-
Nhóm 2: nhóm ô còn li với 1 ô đã nhóm ở nhóm 1 và cho ta biu thc
A
B’.
c 3: Viết li hàm theo các nhóm bản đồ Karnaugh, ta s có:
F(A,B,C) = AB’+C’
c 4: V c đồ lun lý sau khi đơn giản
A
C
F
B
Ví d 4:hãy s đơn giản bng bản đồ K 4 biến: F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
ớc 1: Điền giá tr 1 (b tr) bản đồ Karnaugh
B’C’, A’CD’
B
ư
c2
:
Nhóm các phn t gn nhau
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
C
A
B
D
B
A
Nhóm 2
C
Nhóm 1
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 41
Việc điền b tr 1 trên bản đồ K nêu trên ta có đưc 3 nhóm. Để d dàng trong vic viết phân
trình t mt b tr trên ta có th tách ra là 3 nhóm ri rạc như sau:
c
3: Viết li hàm theocác nhómbn đồ Karnaugh, ta scó:
F(A,B,C,D) = B’D’+B’C’+A’CD’
c 4: V c đ luận lý sau khi đơn giản, F(A,B,C,D) = B’D’+B’C’+A’CD’
F
A
B
C
D
2.2.2.4. Bản đồ Karnaugh 4 biến dng tích các tng:
Biu thc Boolean xut phát t bản đồ ca các d trên biu diễn dưới dng tng các
tích.Trong mt s trường hp cn biu diễn hàm đơn giản dưới dng tích các tng.
Qui trình to hàm dng tích các tổng như sau:
Đánh 0 vào các ô trống và nhóm li các ô lin k, ta s nhận được F’
Lấy bù F’ được F là tích các tng.
Ví d 5: hãy đơn giản F bng bản đồ K 4 biến theo dng tích các tng:
F(A,B,C,D) = (0,1,2,5,8,9,10)
VD4 (bài toán trên, tng các tích): F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
TÍCH CÁC TNG -> F(A,B,C,D) =
(0,1,2,6,8,9,10)
ớc 1: Đin giá tr 1 (b tr) bn đ Karnaugh
1
1
1
1
1
1
1
1
1
1
B’D’
B’C’
A’CD’
1
1
1
1
1
1
1
C
A
B
D
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 42
Các giá tr b trng còn lại đin giá tr 0, nhn giá tr F’ như hình sau (F’ , VD 4)
c 2: Nhóm các phn t gn nhau ca F’
Để d dàng trong vic viết phân trình t mt b tr trên ta có th tách ra là 3 nhóm ri rc sau:
c 3: Viết li hàm F’ theo các nhóm bn đ Karnaugh, ta s có:
F’(A,B,C,D) = AB + BD’+ CD
Lấy bù F’ ta được F.
(F’)’= F=( AB + BD’+ CD)’
F=(AB)’(BD’)’(CD)’
F=(A’+B’)( (B’+D)(C’+D’)
c 4: V c đ luận lý sau khi đơn giản F=(A’+B’) (B’+D) (C’+D’) như sau:
F
A
B
C
D
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
1
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
AB
BD’
CD
C
A
B
D
Vd4:F’=BC’+CD+AB
Vd4:F’=BC’+CD+AB//F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
F=(F’)’=( BC’+CD+AB)’ ~ (X+Y+Z)’
(X+Y+Z)’= X’.Y’.Z’~(BC’)’ . (CD)’ . (AB)’
F=(BC’)’ . (CD)’ . (AB)’
F=(B’+(C’)’) . (C’+D’) . (A’+B’)
F= (B+C).(C’+D’).(A’+B’); v lun lý
Tài liu ging dy hc phn Kiến Trúc Máy tính (110079) ......................................................... 43

Preview text:

CHƯƠNG 2 CÁC CỔNG LUẬN LÝ
TỐI GIẢN MẠCH BẰNG PHƯƠNG PHÁP ĐẠI SỐ BOOLEAN
VÀ BẢN ĐỒ KARNAUGH
M ục tiêu học tập: Sau khi học xong bài này, người học có thể:
- Mô tả khái niệm về mạch số.
- Xác định bảng chân trị, lược đồ luận lý của các cổng, vẽ giản đồ thời gian của các cổng.
- Rút gọn hàm luận lý bằng đại số Boolean.
- Rút gọn hàm luận lý bằng biểu đồ Karnaugh.
- Vẽ sơ đồ mạch (lược đồ luận lý) qua biểu thức hàm Boolean.
2.1. Mô tả đại cương mạch số, cổng luận lý
2.1.1. Khái niệm
Việc phân tích thiết kế các hệ thống mạch điện tử trong máy tính (computer) do vận dụng đại
số toán gọi là đại số Boolean do một nhà toán học người Anh, George Boolean đề xuất vào năm 1854.
Năm 1938, Claude Shannon chứng tỏ rằng có thể dùng các qui tắc đại số Boolean để phân tích và thiết
kế các mạch điện. Bước đầu tiên trong việc xây dựng một mạch điện là biển diễn hàm Boolean của nó
bằng một biểu thức được lập bằng cách dùng các phép toán cơ bản của đại số Boolean.
Các biến số trong đại số Boolean là biến biểu thị trạng thái của một giá trị điện thế và ta gọi là
mức logic 0 hoặc 1. Thường được sử dụng để biểu diễn mức điện thế có trên dây hay tại các đầu vào / ra (IO: input/output). Logic 0 Logic 1 Sai Đúng Tắt Mở Không Có Công tắt đóng (off) Công tắc mở (on)
Mức điện thế thấp (0 - 2.4 v)ol
Mức điện thế cao (5v-3.3 vol)
Hình 2.1 Biểu diễn mức logic trong đại số Boolean
Các khái niệm liên quan với đại số Boolean:
- Tín hiệu tương tự (analog signal): là tín hiệu có biên độ liên tục theo thời gian, thường
do các hiện tượng tự nhiên sinh ra.
Hình 2.2 Biểu diễn tín hiệu tương tự
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 24
- Tín hiệu số (digital signal): là tín hiệu có dạng xung gián đoạn về thời gian biên độ chỉ
có 2 mức rõ rệt: mức cao và mức thấp. 1 0
Hình 2.3 Biểu diễn tín hiệu số
Mạch điện xử lý tín hiệu tương tự gọi là mạch tương tự. Mạch điện xử lý tín hiệu số gọi là mạch
số. Việc vận dụng đại số Boolean thiết kế mạch số có một số ưu điểm sau:
- Dễ thiết kế, phân tích.
- Hoạt động theo chương trình lập sẵn.
- Ít bị ảnh hưởng của nhiễu.
- Dễ chế tạo thành mạch tích hợp.
2.1.2. Cổng luận lý
Cổng (hay cổng luận lý): cơ sở phần cứng, từ đó chế tạo ra mọi máy tính số. Cổng có một hoặc
nhiều ngõ vào, nhưng chỉ có 1 ngõ ra. Các giá trị vào hoặc ra chỉ có thể nhận 1 trong 2 giá trị là 1 hoặc
0. Gọi là cổng luận lý vì nó cho kết quả lý luận của đại số logic như nếu A đúng và B đúng thì C đúng.
Hãy xem xét những ý tưởng cơ bản chế tạo các cổng này để hiểu rõ bản chất của mạch số. Mọi
logic số hiện đại cũng dựa trên việc chế tạo transistor vận hành như một công tắc nhị phân cực nhanh.
Hình 2.4 minh họa mạch transistor lưỡng cực đặt vào mạch đơn giản. Transistor này có 3 nối
kết với thế giới bên ngoài: cực góp (collector), cực nền (base) và cực phát (emitter). Khi điện áp vào
Vin thấp hơn giá trị tới hạn nào đó (0.8V), transistor sẽ tắt và đóng vai trò như điện trở vô hạn, khiến
đầu ra của mạch Vout nhận giá trị gần với Vcc (điện áp ngoài thường là +3V). Lúc Vin vượt quá giá trị
tới hạn, transistor bật và đóng vai trò như dây dẫn, kéo Vout xuống tới đất (theo qui ước là 0 V). Vcc collector Vout Vin base Emitter
Hình 2.4 Cấu tạo mạch transistor cổng NOT A Y=A’
Thấy rằng khi Vin thấp thì Vout cao, và ngược lại. Do đó, mạch này là bộ nghịch đảo (converter
hoặc NOT), chuyển logic 0 sang logic 1, và logic 1 sang logic 0, hay tương ứng với một cổng gọi là
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 25
cổng NOT. Cần điện trở để giới hạn dòng điện do transistor kéo qua. Thời gian cần thiết để chuyến từ
trạng thái này sang trạng thái khác thường mất vài nano giây tùy theo loại transistor. Vcc Vout V1 V2
Hình 2.5 Cấu tạo mạch transistor cổng NAND A Y B
Trong Hình 2.5 hai transistor được gắnnối tiếp. Nếu V1 và V2 đều cao, cả hai transistor sẽ dẫn
điện, lúc này Vout sẽ bị kéo xuống thấp. Giả sử một trong hai đầu vào thấp, transistor tương ứng sẽ
tắt, và đầu ra sẽ cao. Nói tóm lại Vout sẽ thấp khi và chỉ khi V1 và V2 đều cao. Mạch này là một cổng NAND.
Trong Hình 2.6 hai transistor được gắn song song. Nếu một trong hai đầu vào cao, transistor
tương ứng sẽ kéo đầu ra xuống tới đất. Còn như cả hai đầu vào đều thấp, đầu ra sẽ vẫn cao. Mạch này
tương ứng với cổng gọi là NOR. Vcc Vout V1 V2
Hình 2.6 Cấu tạo mạch transistor cổng NOR
Cổng là một mạch số gồm một hoặc nhiều tín hiệu vào và một tín hiệu ra. Một mạch số sẽ
được tạo ra từ tập hợp các cổng cơ bản. Mỗi cổng cơ bản có ký hiệu riêng và hoạt động của nó được
mô tả qua một bảng gọi là bảng chân trị (truthtable).
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 26
2.1.2.1. Cổng đệm (buffer)
Khái niệm: Là cổng có một ngõ vào và một ngõ ra. Ngõ ra bằng ngõ vào (Tín hiệu qua cổng
đệm không làm thay đổi trạng thái logic).
Cổng đệm thông thường dùng để sửa dạng tín hiệu vuông hơn, đưa điện thế tín hiệu về đúng mức logic.
Hàm boolean: Y=A A Y=A A Y=A’ A Y=A’
a) Lược đồ luận lý A Y=A 0 0 1 1
b) Bảng chân trị A Y Y t
c)Giản đồ thời gian
Hình 2.7 Lược đồ luận lý – bảng chân trị - giản đồ thời gian cổng BUFFER
2.1.2.2. Cổng đảo (NOT)
Khái niệm: Là cổng có một ngõ vào và một ngõ ra. Ngõ ra ngược lại ngõ vào (còn gọi là cổng INVERTER).
Khi cổng đảo được ghép chung với cổng khác thì ký hiệu được đơn giản thành 1 dấu tròn nhỏ
Hàm boolean: Y=A’ A Y=A’
a) Lược đồ luận lý A Y=A’ 0 1 1 0
b) Bảng chân trị
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 27 A 1 0 Y 1 0 Y t
c)Giản đồ thời gian
Hình 2.8 Lược đồ luận lý – bảng chân trị - giản đồ thời gian cổng NOT
2.1.2.3. Cổng AND
Khái niệm: Là cổng có ít nhất hai ngõ vào và một ngõ ra. Ngõ ra có giá trị cao khi tất cả ngõ vào có giá trị cao.
Dùng thực hiện phép nhân logic giữa hai hay nhiều biến nhị phân.
Hàm boolean: Y=A.B (hoặc Y=AB) A Y B
a) Lược đồ luận lý A B Y=A.B 0 0 0 0 1 0 1 0 0 1 1 1
b) Bảng chân trị A B Y t
c) Giản đồ thời gian
Hình 2.9 Lược đồ luận lý – bảng chân trị - giản đồ thời gian cổng AND
2.1.2.4. Cổng OR
Khái niệm: Là cổng có ít nhất hai ngõ vào và một ngõ ra. Ngõ ra có giá trị cao khi có ít nhất
một ngõ vào có giá trị cao.
Dùng thực hiện phép cộng logic giữa hai hay nhiều biến nhị phân.
Hàm boolean: Y=A+B
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 28 A Y B
a) Lược đồ luận lý A B Y=A+B 0 0 0 0 1 1 1 0 1 1 1 1
b) Bảng chân trị A B Y t
c) Giản đồ thời gian
Hình 2.10 Lược đồ luận lý – bảng chân trị - giản đồ thời gian cổng OR
2.1.2.5. Cổng NAND
Khái niệm: Là cổng có ít nhất hai ngõ vào và một ngõ ra. Ngõ ra có giá trị thấp khi tất cả ngõ vào có giá trị cao.
Thực hiện cùng 1 lúc 2 chức năng: AND và NOT.
Hàm boolean: Y=(A.B)’hoặc Y=(AB)’ A A Y Y B B
a) Lược đồ luận lý A B Y=(A.B)’ 0 0 1 0 1 1 1 0 1 1 1 0
b) Bảng chân trị
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 29 A B Y t
c) Giản đồ thời gian cổng NAND
Hình 2.11Lược đồ luận lý – bảng chân trị - giản đồ thời gian cổng NAND
2.1.2.6. Cổng NOR
Khái niệm: Là cổng có ít nhất hai ngõ vào và một ngõ ra. Ngõ ra có giá trị thấp khi có ít nhất
một ngõ vào có giá trị cao.
Thực hiện cùng 1 lúc 2 chức năng: OR và NOT.
Hàm boolean: Y=(A+B)’ A A Y Y B B
a) Lược đồ luận lý A B Y=(A+B)’ 0 0 1 0 1 0 1 0 0 1 1 0
b) Bảng chân trị
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 30 A B Y t
c) Giản đồ thời gian cổng NOR
Hình 2.12Lược đồ luận lý – bảng chân trị - giản đồ thời gian NOR
2.1.2.7. Cổng XOR
Khái niệm: Là cổng có ít nhất hai ngõ vào và một ngõ ra. Ngõ ra có giá trị cao (1) khi số ngõ
vào có giá trị cao (một) là số lẻ (1, 3, 5, …)
Thực hiện phép toán EX-OR (cộng ngoại trừ - cộng bỏ qua số nhớ) giữa 2 biến nhị phân.
Hàm boolean: Y=AB = A’.B+A.B’
Y=0 khi A và B cùng mức logic

Y=1 khi A và B cùng mức logic A Y B
a) Lược đồ luận lý A B Y= AB 0 0 0 0 1 1 1 0 1 1 1 0
b) Bảng chân trị
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 31 A B Y t
c Giản đồ thời gian cổng XOR
Hình 2.13 Lược đồ luận lý – bảng chân trị - giản đồ thời gian XOR
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 32
2.2. Tối giản mạch số
2.2.1. Phương pháp Boolean

Các mạch số được thiết kế từ những nguyên tố nhỏ nhất gọi là cổng logic (gate). Các cổng này
được ấu hành từ diod, transistor và điện trở, để rồi đầu ra của nó sẽ có giá trị như các phép toán logic
cơ bản (NOT, OR, AND).Việc dùngđại số Booleanđể mô tả và phân tích các cổng logic cơ bản này,
sau đó sẽ mở rộng ra phân tích và thiết kế cách nối các công lại với nhau để tạo thành các mạch số cần thiết.
Ví dụ hàm Boolean: F = x + y’z có bảng chân trị (Hình 2.14a) và biểu diễn giản đồ luận lý (Hình 2.14b). X y z y’ y’z F=x+y’z 0 0 0 1 0 0 0 0 1 1 1 1 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 1 0 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 1 0 0 1
a)Bảng chân trị hàm F = x + y’z x F y z
b)Lược đồ luận lý của hàm F = x + y’z
Hình 2.14 Bảng chân trị - lược đồ luận lý của hàm F = x + y’z
Để tận dụng các phương pháp đơn giản, cần một số đồng nhất thức trong đại số Boolean. Điểm
đáng lưu ý là mỗi định luật có hai dạng đối ngẫu của nhau. Bằng cách hoán đối AND và OR, cũng như
0 và 1, có thể tạo dạng này bằng dạng kia. Bảng sau liệt kê các đẳng thức cơ bản nhất của đại số Boolean
(Hình 2.15) và chứng minh tất cả định luật thông qua xây dựng bảng chân trị.
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 33 TT TÊN DẠNG AND DẠNG OR 1.
Định luật thống nhất 1.X =X 0+X=X 2. Định luật không 0.X=0 1+X=1 3. Định luật Idempotent X.X=X X+X=X 4.
Định luật nghịch đảo X.X’=0 X+X’=1 5. Định luật giao hoán X.Y=Y.X X+Y=Y+X 6. Định luật kết hợp X.(YC)=(XY).C (X+Y)+C=X+(Y+C) 7. Định luật phân bố X+(YC)=(X+Y)(X+C) X(Y+C)=XY+XC 8. Định luật hấp thụ X(X+Y)=X X+XY=X 9. Định luật Demorgan (XY)’=X’+Y’ (X+Y)’=X’.Y’
Hình 2.15 Bảng liệt kê các đẳng thức cơ bản nhất của đại số Boolean
Định luật De Morgan đưa ra ký pháp thay thế và rất quan trọng đối với các cổng NOR và
NAND. Nó cho phép ta thay thế từ cổng OR sang AND và ngược lại. Hình 2.16 cho ta thấy cách chuyển
từ cổng AND sang cổng OR nhờ định lý DeMorgan (AB)’=A’+B’. Ta có cổng NAND biểu diễn hàm
F=(A.B)’sẽ tương đương với cổng OR vớiđầu vào được nghịch đảo biểu diễn cho hàmF=A’+B’ hay
nói cách khác cổng NAND được biểu diễn bằng 2 cách.
Tương tự như vậy ta cũng có cổng NOR tươngđương như trong Hình 2.17 nhờ vào định lý
DeMorgan cho dạng OR, F=A’+B’=(AB)’ A A A F F F B B B
Hình 2.16 Lược đồ luận lý F=(AB)= A’ + B’ A A A F F F B B B
Hình 2.17 Lược đồ luận lý F=A’ + B’ = (AB)’
Dạng tổng quát của định lý DeMorgan có dạng sau:
(x1+x2+….+ xn)’ = x’1.x’2.….. x’n
(x1.x2.…..xn)’ = x’1+x’2+….+ x’n
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 34
Phân tích và thiết kế: (Mô tả bổ sung trang 38)
Ngõ vào X: cửa lái, (X cửa hở; X’ cửa đóng)
Ngõ vào Y: bộ phận đánh lửa (Y: máy chạy; Y’: máy tắt)
Ngõ vào Z: đèn pha (Z: đèn sáng; Z’ đèn tắt)
Ngõ ra là hàm F: báo động
Theo yêu cầu ví dụ 2:
- Đèn pha sáng trong lúc (bộ phận đánh lửa tắt) xe tắt máy -> báo động F=1 (Z: đèn sáng, Y’: tắt )
- Cửa mở (ô tô ) trong lúc (bộ phận đánh lửa hoạt động) xe đang chạy -> báo động F=1 (X cửa hở, Y: máy chạy)
Suy ra: F=ZY’+XY
Bảng chân trị của hàm ra như Hình 2.20 và lược đồ luận lý Hình 2.21 X Y Z Y’ ZY’ XY F Đếm Ý nghĩa (cửa (đánh (đèn (đánh (đp sáng (cl mở lái) lửa) pha) lửa- Và đl tắt) và dl tắt) bật) 0 0 0 1 0 0 0 0 0 0 1 1 1 0 1 1
Đèn sáng khi động cơ tắt (nổ) 0 1 0 0 0 0 0 2 0 1 1 0 0 0 0 3 1 0 0 1 0 0 0 4 1 0 1 1 1 0 1 5
Đèn sáng khi động cơ tắt (nổ) 1 1 0 0 0 1 1 6
động cơ hoạt động (nổ) trong khi cửa mở 1 1 1 0 0 1 1 7
động cơ hoạt động (nổ) trong khi cửa mở
Hình 2.20 Bảng chân trị mạch logic X Y XY F Y’Z Z
Hình 2.21. F= XY + Y’Z -> Lược đồ luận lý mạch logic (báo động)
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 35
2.2.2. Phương pháp Karnaugh
Một mạch số phức tạp sẽ tạo ra một biểu thức đại số rất phức tạp. Bảng chân trị biểu thị của
một hàm là duy nhất, nhưng hàm có thể có nhiều dạng khác nhau hay có thể có nhiều mạch số khác
nhau cho cùng một chức năng. Biết rằng biểu thức có thể đơn giản hóa dựa vào đại số Boolean. Tuy
nhiên qui trình này thường chỉ áp dụng được đối với các bài toán đơn giản, còn đối với các bài toán
phức tạp thì nó không có những qui tắc cho phép ta tiên đoán trước bước đi tiếp theo trong quá trình
đơn giản. Phương pháp dùng bản đồ Karnaugh giúp đơn giản các biểu thức một cách nhanh chóng, dễ hiểu và hiệu quả hơn.
Để tối thiểu hóa hàm Boolean bằng phương pháp bảngKarnaugh phải tuân thủ theo qui tắc về ô kế cận:
Hai ô được gọi là kế cận nhau là hai ô mà khi ta chuyển từ ô này sang ô kia chỉ làm thay đổi giá
trị của 1 biến. Quy tắc chung của phương pháp rút gọn bằng bảng Karnaugh là gom (kết hợp) các ô kế
cận lại với nhau. Khi gom 2 ô kế cận nhau sẽ loại được 1 biến, gom 4 ô kế cận sẽ loại được 2 biến, gom
8 ô kế cận sẽ loại được 3 biến
Tổng quát:, khi gom 2nô kế cận sẽ loại được n biến. Những biến bị loại là những biến khi ta đi
vòng qua các ô kế cận mà giá trị của chúng thay đổi.
Những điều cần lưu ý:
- Vòng gom được gọi là hợp lệ khi trong vòng gom đó có ít nhất 1 ô chưa thuộc vòng gom nào.
- Những ô nào có giá trị tùy ý ta biểu diễn trong ô đó bằng ký hiệu x, và những ô đó được gọi là tùy định.
- Việc kết hợp những ô kế cận với nhau còn tùy thuộc vào phương pháp biểu diễn hàm
Boolean theo dạng tổng các tích (còn gọi là dạng 1) hay theo dạng tích các tổng (còn
gọi là dạng 2). Điều này có nghĩa là: nếu ta biểu diễn hàm Boolean theo dạng 1 thì ta
chỉ quan tâm những ô kế cận nào có giá trị bằng 1 và tùy định, ngược lại nếu ta biểu
diễn hàm Boolean dưới dạng 2 thì ta chỉ quan tâm những ô kế cận nào có giá trị bằng 0
và tùy định. Ta quan tâm những ô tùy định sao cho những ô này kết hợp với những ô có
giá trị bằng 1 (nếu biểu diễn theo dạng 1) hoặc bằng 0 (nếu biểu diễn theo dạng 2) sẽ
làm cho số lượng ô kếcận là 2n lớn nhất.
- Các ô kế cận muốn gom được phải là kế cận vòng tròn nghĩalà ô kế cận cuối cũng là ô kế cận đầu tiên.
- Các vòng phải được gom sao cho số ô có thể vào trong vònglà lớn nhất và nhớ là để đạt
được điều đó, thường ta phải gom cả những ô đã gom vào trong các vòng khác.
Mục đích cần đạt
- Biểu thức có chứa ít nhất các thừa số và mỗi thừa số chứa ít nhất các biến.
- Mạch logic thực hiện có chứa ít nhất các vi mạch số.
Tóm lại:Phương pháp dùng bản đồ Karnaugh sẽ được dùng hầu như trong thiết kế mọi mạch
số vì vậy có một tầm quan trọng đặc biệt mà các sinh viên phải hiểu rõ thật chắc chắn.
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 36
2.2.2.1. Bản đồ Karnaugh 2 biến
Bản đồ Karnaugh (gọi tắt là bản đồ K) 2 biến là một bản đồ có 4 ô, vị trí trong mỗi ô tương ứng
với tổ hợp biến đầu vào. Ở ngoài các cột và dòng ta ghi các giá trị tương ứng của các biến. Ở đây có2
hàng biểu thị cho 2 giá trị của biến A (0 và 1) và 2 cộtbiểu thị cho 2 giá trị của biến B. Tọa độ của mổi
ô tương ứng với tổ hợp nhị phân của các biến đầu vào. Ví dụ như trong (Hình 2.22), tại tọa độ A=0 và
B=0 tương ứng với tổ hợp AB=00 hay ta ghi làA’B’ là giá trị đầu ra f=1. Tại tọa độAB=01 giá trị đầu
ra tương ứng x=0 nên ta ghi vào ô tương ứng giá trị 0. Tương tự như vậy cho các ô còn lại ta sẽ có được
bản đồ K như trong (Hình 2.22 c). A B f B 0 0 1 A 0 1 0 1 0 f=A’B’+AB 0 1 0 1 0 0 1 1 1 1 0 1
a.Bảng chân trị
b.Hàm biểu diễn c.Bản đồ K
Hình 2.22 Mô tả bản đồ K 2 biến
Ngoài ra, một dạng khác để biểu diễn K 2 biến là: A B Thập phân B 0 0 0 A 0 1 0 1 1 0 0 1 1 0 2 1 1 3 1 2 3
a.Bảng chân trị so với hệ thập phân
c.Bộ trị K 2 biến
Hình 2.23 Mô tả bản đồ K 2 biến với dạng thập phân
Vậy, f=A’B’+AB được ghi làf(A,B) = (0,3). Suy ra, biểu đồ K được thể hiện như: B B A 1 0 A 0 1
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 37
2.2.2.2. Bản đồ Karnaugh 3 biến
Cách điền vào bản đồ K 3 biến với bảng chân trị hệ thập phân.Bộ trị bản đồ K 3 biến sẽ có dạng (Hình 2.24) Y Y’ Y 00 01 11 10 0 0 1 3 2 0 000 001 011 010 X 1 4 5 7 6 1 100 101 111 110 Z Z
Hình 2.24 Bộ trị bản đồ K 3 biến
2.2.2.3. Bản đồ Karnaugh 4 biến
Tương tự, cách điền bản đồ K 4 biến sẽ có dạng(Hình 2.25) C 00 01 11 10 00 0 1 3 2 01 4 5 7 6 B 11 12 13 15 14 A 10 8 9 11 10 D
Hình 2.25 Bộ trị bản đồ K 4 biến
Trong thực tếchỉ dùng các bản đồ cho từ 3 biến trở lên, và cũng chỉ dùng cho đến 5 biến vì
nhiều hơn nữa thì sẽ rất phức tạp vì ở đây dùng phương pháp trực quan. Để hiểu rõ cách dùng bản đồ
Karnaugh hãy xem xét các ví dụ cụ thể sau:
Ví dụ 3: Để làm một bộ báo hiệu cho lái xe biết một số điều kiện, với thiết kế 1 mạch báo động như sau:
Với tín hiệu F= 0 (kèn không kêu), lúc này trạng thái: cửa đóng (X=0); bộ phận đánh lửa
tắt/động cơ ô tô không chạy (Y=0) ; đèn pha tắt (Z=0).
Thiết kế mạch báo động làm sao cho bộ phận báo động sẽ hoạt động (báo động = 1: kêu beep)
khi tồn tại một trong 2 trạng thái sau:
- Cửa mở (X=1) trong lúc bộ phận đánh lửa hoạt động/ động cơ hoạt động → BÁO ĐỘNG
(Y=1) (KÈN). Cho dù đèn có sáng hoặc tắt (Z=1/ Z=0).
- Đèn pha sáng (Z=1) trong lúc bộ phận đánh lửa tắt=động cơ KHÔNG hoạt động (Y=0)
(Y=1) BÁO ĐỘNG (KÈN), Cho dù CỬA có mở/đóng (Z=1/ Z=0) X 0 & Cửa lái Mạch F Y 0 Báo 0 Bộ phận đánh lửa Báo động Động Đèn pha Z 0
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 38
hãy sẽ đơn giản bằng bản đồ K (Karnaugh) 3 biến: F(A,B,C)=Σ(0,2,4,5,6)
Giải: Trước hết đề bài ghi như vậy có nghĩa là tại các giá trị mà tổ hợp đầu vàoΣ(0,2,4,5,6):
0nghĩa là (ABC=000), 2 nghĩa là (ABC=010), 4 nghĩa là(ABC=100),5 nghĩa là(ABC=101), 6 nghĩa là
(ABC=110) thì giá trị của hàm F sẽ bằng 1 hay nói cách khác giá trị đầu ra bằng 1.
Bước 1: Điền giá trị 1 (bộ trị) bản đồ Karnaugh
Hàm F biểu diễn các ô cho giá trị hàm bằng 1, mỗi ô tương ứng với một tổ hợp các biến đầu
vào. Như vậy ở các ô có giá trị đầu vào là 0(ABC=000),2(ABC=010), 4(ABC=100), 5(ABC=101) và
6(ABC=110) sẽ có giá trị là 1 (Hàm F =1) B 00 01 11 10 0 1 1 A 1 1 1 1 C
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 39
Bước 2: Nhóm các phần tử gần nhau theo từng nhóm, từ bản đồ chính ta có 2 nhóm . Nhóm 1 B 1 1 A 1 1 1 Nhóm 2 C
Từ bản đồ trên sẽ nhóm được 2 nhóm. (nhóm 1: 4 ô
- Nhóm 1: ta nhóm tối đa được 4 ô, và 4 ô này cho ta biểu thức C’ (trong 4 ô này thì chỉ
có biến C là không đổi và C=0 nên ta biểu diễn dưới dạng C’ ). -
Nhóm 2: nhóm ô còn lại với 1 ô đã nhóm ở nhóm 1 và cho ta biểu thứcAB’.
Bước 3: Viết lại hàm theo các nhóm ở bản đồ Karnaugh, ta sẽ có: F(A,B,C) = AB’+C’
Bước 4: Vẽ lược đồ luận lý sau khi đơn giản A B F C
Ví dụ 4:hãy sẽ đơn giản bằng bản đồ K 4 biến: F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
Bước 1: Điền giá trị 1 (bộ trị) bản đồ Karnaugh C 1 1 1 1 B A 1 1 1 D B’C’, A’CD’
Bước2:Nhóm các phần tử gần nhau 1 1 1 1 1 1 1
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 40
Việc điền bộ trị 1 trên bản đồ K nêu trên ta có được 3 nhóm. Để dễ dàng trong việc viết phân
trình từ một bộ trị trên ta có thể tách ra là 3 nhóm rời rạc như sau: 1 1 1 1 1 1 Bước 1 1 1 1 B’D’ B’C’ A’CD’
3: Viết lại hàm theocác nhómởbản đồ Karnaugh, ta sẽcó:
F(A,B,C,D) = B’D’+B’C’+A’CD’
Bước 4: Vẽ lược đồ luận lý sau khi đơn giản, F(A,B,C,D) = B’D’+B’C’+A’CD’ A B C D F
2.2.2.4. Bản đồ Karnaugh 4 biến dạng tích các tổng:
Biểu thức Boolean xuất phát từ bản đồ của các ví dụ trên biểu diễn dưới dạng tổng các
tích.Trong một số trường hợp cần biểu diễn hàm đơn giản dưới dạng tích các tổng.
Qui trình tạo hàm dạng tích các tổng như sau:
Đánh 0 vào các ô trống và nhóm lại các ô liền kề, ta sẽ nhận được F’
Lấy bù F’ được F là tích các tổng.
Ví dụ 5: hãy đơn giản F bằng bản đồ K 4 biến theo dạng tích các tổng:
F(A,B,C,D) = (0,1,2,5,8,9,10) VD4 (bài toán trên, tổng các tích):
F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
TÍCH CÁC TỔNG -> F(A,B,C,D) = (0,1,2,6,8,9,10)
Bước 1: Điền giá trị 1 (bộ trị) bản đồ Karnaugh C 1 1 1 1 B A 1 1 1 D
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 41
Các giá trị bỏ trống còn lại điền giá trị 0, nhận giá trị F’ như hình sau (F’ , VD 4) C 0 1 1 0 1 0 0 0 1 0 0 0 B 0 0 0 0 0 0 0 0 A 0 1 1 0 1 D Vd4:F’=BC’+CD+AB
Bước 2: Nhóm các phần tử gần nhau của F’ 0 0 0 0 0 0 0 0 0
Để dễ dàng trong việc viết phân trình từ một bộ trị trên ta có thể tách ra là 3 nhóm rời rạc sau: 0 0 0 0 0 0 0 0 0 0 0 0 AB BD’ CD
Bước 3: Viết lại hàm F’ theo các nhóm ở bản đồ Karnaugh, ta sẽ có:
F’(A,B,C,D) = AB + BD’+ CD
Vd4:F’=BC’+CD+AB//F(A,B,C,D) =Σ(0,1,2,6,8,9,10)
F=(F’)’=( BC’+CD+AB)’ ~ (X+Y+Z)’ Lấy bù F’ ta được F.
(X+Y+Z)’= X’.Y’.Z’~(BC’)’ . (CD)’ . (AB)’
F=(BC’)’ . (CD)’ . (AB)’
(F’)’= F=( AB + BD’+ CD)’
F=(B’+(C’)’) . (C’+D’) . (A’+B’)
F=(AB)’(BD’)’(CD)’
F= (B+C).(C’+D’).(A’+B’); vẽ luận lý
F=(A’+B’)( (B’+D)(C’+D’)
Bước 4: Vẽ lược đồ luận lý sau khi đơn giản F=(A’+B’) (B’+D) (C’+D’) như sau: A B C F D
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 42
Tài liệu giảng dạy học phần Kiến Trúc Máy tính (110079) ......................................................... 43