Tải bản đầy đủ (.ppt) (45 trang)

ĐẠI số BOOLE, CỔNG LOGIC (kỹ THUẬT số SLIDE) (chữ biến dạng do slide dùng font VNI times, tải về xem bình thường)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (199.74 KB, 45 trang )

Chương 2

ĐẠI SỐ BOOLE – CỔNG LOGIC


ĐẠI SỐ BOOLE – CỔNG LOGIC
I. Cấu trúc đại số Boole:
Là cấu trúc đại số được định nghóa trên
1 tập phần tử nhị phân B = {0, 1} và
các phép toán nhị phân: AND (.), OR (+),
NOT (’).
x
x . y (x
x
x + y (x
y
AND y)
y
OR y)
0
0
0
0
0
0
0
1
0
0
0
1


1
1
1
1
1
1 x,
x
x’ (NOT
0
0
x)
1
1
0
1
1
1
1
0


* Thứ tự phép toán: theo thứ tự dấu
ngoặc (), NOT, AND, OR
1. Các tiên đề (Axioms):
a. Tính kín (Closure Property)
b. Phần tử đồng nhất (Identity
Element):
x.1 =
=0 x =
x+


1.x
0+x

= x
c. Tính giao
hoán (Commutative
x.y
=
Property):
yy
.x = y+x
x+
d. Tính phân bố (Distributive
Property):
x.(y+z) =x.y + x.
x + (z y . z ) = ( x + y ) .
(x+z)
e. Phần tử bù (Complement
Element):
x+x =1
x.x =

3


2. Các định lý cơ bản (Basic
Theorems):
a. Định lý 1:
x = x

b. Định lý 2:
x.x = x
c. Định lý 3:
x.0 = 0
d. Định lý 4: định
(Absorption)
+ x
.y
e. Định lýx 5:
định
+
y) = x
(Associative)

x+x
x + 1=

=

x

1

lý hấp thu
= kết
x hợp


x . (x


x + (y + z) = (x + y) + z
x . (y
. z) = lý
(x . 6:
y) .định
z
f. Định
lý De Morgan
x+y = x.y
x.y =
x+y
Mở rộng:
x1 + x2 + .. + xn = x1 .
x2 .. xn x1 . x2 .. xn
4
= x1 + x2 + .. +
xn


II. Hàm Boole (Boolean Function):
1. Định nghóa:
* Hàm Boole là 1 biểu thức được tạo
bởi các biến nhị phân và các phép
toán
nhị
AND,
F (x,
y, phân
z) = xNOT,
.y +

x .OR.
y.z
* Với giá trị cho trước của các biến,
hàm Boole sẽ có giá trị là 0 hoặc 1.
* Bảng giá
trị:

x

y

z

F

0
0
0
0
1
1
1
1

0
0
1
1
0
0

1
1

0
1
0
1
0
1
0
1

0
1
0
0
0
0
1
1

5


2. Bù của 1 hàm:
- Sử dụng định lý De Morgan:

F

=


F

=

x.y + x.y.z

x.y + x.y.z
= (x.y) .(x.
y.zF
)
= (x+y).(x+y
z ) thức đối ngẫu và lấy
- Lấy +
biểu

các
biến:
* Tính
đối
ngẫu (Duality): Hai biểu
thức được gọi là đối ngẫu của
nhau khi ta thay phép toán AND
toán
Fbằng
= OR,
x .phép
y + x
. y . OR
z bằng AND,

0 thành 1 và 1 thành 0.
Lấy đối ngẫu: ( x + y ) . ( x

+ các
y + zbiến:
)F = (x+y).(x+y
Buø

6


III. Dạng chính tắc và dạng chuẩn
1. Các
tích
chuẩn (minterm) và tổng
của
hàm
Boole:
chuẩn
(Maxterm):
- Tích chuẩn
(minterm): mi (0 ≤ i ≤ 2n-1) là
các số hạng tích (AND) của n biến mà
hàm Boole phụ thuộc với quy ước
- biến
Tổngđó
chuẩn
Mi là
(0 ≤0 ivà
≤ 2n-1)

có (Maxterm):
bù nếu nó
không
1. (OR) của n biến
là cácbù
số nếu
hạnglà
tổng
mà hàm Boole phụ thuộc với quy ước
đó
có bù
nếu nó là 1 và
xbiến
y
minterm
Maxterm
nếu

0.+ y +
z khôngmbù
=
x
y
M
=
x
0
0
0


0

0

0

0

0

1

0

1

1
0
1

m1z =
m2z =
m3z =
m4z =
m5z =
m6z =
m7z =

x
x

x
x
x
x

y
y
y
y
y
y

x y

Mz1
Mz2
Mz3
Mz4
Mz5
Mz6
Mz7

=
=
=
=
=
=

x

x
x
x
x
x

+
+
+
+
+
+

y
y
y
y
y
y

+
+
+
+
+
+

= x + y +

mi = Mi


7


2. Dạng chính tắc (Canonical Form):
a. Dạng chính tắc 1:
là dạng tổng của các tích chuẩn
(minterm) làm cho
hàm Boole có
giá tròF(x,
1 y,
x y + x y + x y+ x y + x y
x y
F
z) =

z
0

0

0

0

0

1

0


1

1

0

0
1
0
1
0
1

1
1

0
1
1
0
0
1
1
1

= z

z+


z
+

m
m2 2,
m5,
= 1 Σ m(1,
5

z
+

z
+

m6

m7

6,
= 7)Σ (1, 2, 5, 6,
F(x, y,
z) =

7)

(x + y +(x + y +(x + y +

= z)
.z) M3 .z) M4

M
= 0 Π M(0, = Π (0, 3,

3, 4)
4)
b. Daïng chính tắc
2:
0 là dạng tích của các tổng chuẩn
(Maxterm) làm cho
hàm Boole có
1 giá trị 0

8


* Trường hợp hàm Boole tùy định
(don’t
care):
Hàm
Boole n biến có thể không
được định nghóa hết tất cả 2n tổ
hợp của n biến phụ thuộc. Khi đó
tại các tổ hợp không sử dụng này,
hàm Boole sẽ nhận giá trị tùy định
(don’t care), nghóa là hàm Boole có
x y nhận
F giá tri 0 hoặc 1.
thể
z
F (x, y, z) = Σ (1, 2, 5, 6)

0

0

0

0

0

0

1

0

1

1

0

1
0
1
0

X
1
1

0
0
1
1
X

+ d (0, 7)
= Π (3, 4) . D (0,
7)

9


3. Dạng chuẩn (Standard Form):
a. Dạng chuẩn 1:
là dạng tổng các tích (S.O.P
– Sum of Product)
F (x, y, z) = x y +
* F (x, y, z)z = x y
+ z = x y (z + z) + (x + x) (y
= +
x y)
y zz+ x y z + x y z + x y z +
y zm1 +
= xmy6 z
++
mx7 +
+m
= m
Σ 5(1,

3,3 5, 6, 7)
* F (x, y, z) = x y
+ z = (x + z) (y + z)
= (x + y y + z) (x x + y +
= z)
(x + y + z) (x + y + z) (x + y +
+ y. +
= z)
M (x. M
Mz)
2

=

0

Π (0, 2, 4)

4

10


b. Dạng chuẩn 2:
là dạng tích các tổng (P.O.S
– Product
of z)
Sum)= (x +
F (x, y,
z) y

* F (x, y, z) = (x + =
z) yx y +
y z(x + x) y z
= x y (z + z) +
= xyz+xyz+ xyz +xyz
= m4 + m5 + m0
= Σ (0, 4, 5)
* F (x, y, z) = (x + z) y
= (x + y y + z) (x x + y +
= z(xz)+ y + z) (x + y + z)
=

(x + y + z)(x + y + z)(x + y + z)
(x
z)
M3+. y
M+
.
M7 . M6 . M2
1

=

Π (1, 2, 3, 6, 7)

11


IV. Cổng logic:
1. Cổng NOT:

x

x

x

t

x
2. Cổng AND:
x

x
y

z=
x.y
x

y

z

0
0
1
1

0
1

0
1

0
0
0
1

y
z
Với cổng AND có nhiều ngõ
vào,
ngõ ra sẽ là 1 nếu tất cả
12
các ngõ vào đều là 1


3. Cổng OR:
x
z=
y
x+y
x

y

z

0
0

1
1

0
1
0
1

0
1
1
1

x

y

z

0
0
1
1

0
1
0
1

1

1
1
0

x
y
z

Với cổng OR có nhiều ngõ
vào,
ngõ ra sẽ là 0 nếu tất cả
4. Cổng NAND:các ngõ vào đều là 0
x
x
z=
y
x.y
y
z
Với cổng NAND có nhiều ngõ
vào,
ngõ ra sẽ là 0 nếu tất cả13


5. Cổng NOR:
x
z=
y
x+y
x


y

z

0
0
1
1

0
1
0
1

1
0
0
0

x

y

z

0
0
1
1


0
1
0
1

0
1
1
0

x
y
z

Với cổng NOR có nhiều ngõ
vào,
ngõ ra sẽ là 1 nếu tất cả
6. Cổng XOR (Exclusive_OR):
các ngõ vào đều là 0
x
x
z=
y
x⊕ y
y
z

Với cổng XOR có nhiều ngõ
vào, ngõ ra sẽ là 1 nếu

14
z = x⊕ y = x y + xtổng
y = (xsố
+ bit 1 ở các ngõ vaøo


7. Cổng XNOR (Exclusive_NOR):
x
x
z=
y
x⊕ y
y
x

y

z

0
0
1
1

0
1
0
1

1

0
0
1

z

Với cổng XNOR có nhiều ngõ
vào, ngõ ra sẽ là 1 nếu tổng
ở các ngõ vào là số
z = x⊕ y = x y + số
x y bit
= (x1 +
chaün
y)(x + y)

15


V. Rút gọn hàm Boole:
Rút gọn (tối thiểu hóa) hàm Boole
nghóa là đưa hàm Boole về dạng biểu diễn
đơn- Biểu
giản thức
nhất,có
saochứa
cho: í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ố.
1. Phương pháp đại số:
Dùng các định lý và tiên đề để rút
F gọn
(A, B,hàm.
C) = Σ (2, 3, 5, 6, 7)
=

=

ABC + ABC + ABC + ABC +
ABC
AB(C + C) + AC(B + B) +
AB(C + C)
AB + AC + AB

=

(A + A)B + AC

=

B + AC

=

16


2. Phương pháp bìa KARNAUGH:

a. Cách biểu diễn:
- Bìa K gồm các ô vuông, mỗi ô
vuông biểu diễn cho tổ hợp n biến. Như
vậy bìa K cho n biến sẽ có 2n ô.
- Hai ô được gọi là kề cận nhau khi
tổ hợp biến mà chúng biểu diễn chỉ
khác
nhau ô
1 biến.
- Trong
sẽ ghi giá trị tương ứng của
hàm Boole tại tổ hợp đó. Ởû dạng chính
tắc 1 thì đưa các giá trị 1 và X lên các
ô, không đưa các giá trị 0. Ngược lại,
dạng chính tắc 2 thì chỉ đưa giá trị 0 và X.
F (A, B) = Σ (0, 2) + d(3) = ∏
* Bìa 2 biến:
(1) . D(3)
F A
F A
F A
0 1
0 1
0 1
B

0 0 2
1 1 3

B


0 1 1
1

X

B

0
1 0 X

17


* Bìa 3 biến:

F AB

0 0
0 1
2
0 0

1
1
6

1
0
4


1 1 3

7

5

C

F (A, B, C) = Σ (2, 4, 7) + d(0, 1) = ∏ (3,
5, 6) . D(0, 1)
F AB

0 0
X 1
1
0 0

1
1

1 X

1

C

1
0
1


F AB

0 0
X 1
0 0

C

1 X 0

1
1
0

1
0
0
18


F AB
* Bìa 4 biến:

0 0 1
1
0 1
4 1
0 0
2

0
1
5
1
0
1 3 7 3
1
1
1 2 6 5
1
1
4
0

CD

* Bìa 5 biến:
F

A

BC
DE

0

0 0 1
0 1
4 11
0 0

2
0
1
5
1
0
1 3 7 3
1
1
1 2 6 5
1
1
4
0

1 1
0
0
8 2
4
9 2
5
1 2
1 7
1 2
0 6

1
0
8

9
1
1
1
0
1

1 0
1
21 2
8 0
2 2
9 1
3 2
1 3
3 2
0 2

0
0
1
6
1
7
1
9
1
8

19



b. Rút gọn bìa Karnaugh:
- Liên kết đôi: Khi liên kết (OR) hai ô
*có
Nguyên
tắc:
giá trị
1 (Ô_1) kề cận với nhau trên
bìa K, ta sẽ được 1 số hạng tích mất đi 1
biến so với tích chuẩn (biến mất đi là
biến khác nhau giữa 2 ô). Hoặc khi liên
kết (AND) hai ô có giá trị 0 (Ô_0) kề
cận với nhau trên bìa K, ta sẽ được 1 số
hạng tổng mất đi 1 biến so với tổng
chuẩn (biến mất đi là biến khác nhau
F AB
F AB
giữa
2 ô).
C 0 0 1 1
C 0 0 1 1
1 1
1 0
0
0 0 1
0 0 1 1 0
1

0


1
BC

A +B

20


- Liên kết 4: Tương tự như liên kết
đôi khi liên kết 4 Ô_1 hoặc 4 Ô_ 0 kề
cận với nhau, ta sẽ loại đi được 2 biến (2
biến khác nhau giữa 4 ô)
F AB

0 0
1 1
0 0

1
1

C

1 1

1
0
1
1


B

F AB

0
0 0

0
1

1
1

1
0

1 0 0

0

0

C

C

21



- Liên kết 8: liên kết 8 ô kề cận
với nhau, ta sẽ loại đi được 3 biến (3
biến khác nhau giữa 8 ô)
F AB
F AB
CD 0 0 1 1
CD 0 0 1 1
0 1 1 0
0
0 0 1 1 0
0 0
0
0 1 1
1 1 1
1
1
1
0

1

1

1

1

D

0

0 0
1 0
1
1
1 0
0

0
0
0
B

- Lieân kết 2k: khi ta liên kết 2k Ô_1
hoặc 2k Ô_0 kề cận với nhau ta sẽ loại
đi được k biến (k biến khác nhau giữa 2k
ô)
22


Các ví dụ về 2 ơ kế cận
F

AB

CD
10
00

F
00


11

1
1

01

F

01

AB

CD
10
00

11

10

10

CD
10
00

F
00


01

11

01

11

0

01

11

AB

00

01

11

AB

CD
10
00

0

00

01

01

11

11

0

10

0

10

1

1


Các ví dụ về 4 ơ kế cận
F

AB

F


CD
10
00 1
01

00

01
1

11

CD
10
00

1

1

CD

11

AD

10
F

AB


CD
10
00

00

01

1

1

11

1

1

01

11

01

11

10
F
00


01
1

11
1 AD

01

1

1

AB

CD
10
00

BD

11
10

AB

01
11
10


00

1

1

1

1


Các ví dụ về 4 ơ kế cận
F

F

AB

00
CD
10
00 0
01

01

11

0


0

C+ D

0

00
CD
10
00

A+ D

11
10
F

AB

00
CD
10
00

01

01

0


0

11

0

0

11

10
F
01

11
0

0

01

A+ D

0

0

AB

00

CD
10
00

B+ D

11
10

AB

01
11
10

01

11

0

0

0

0


×