Tải bản đầy đủ (.pdf) (29 trang)

Bài Giảng Kỹ Thuật Số CHƯƠNG 3. MẠCH LOGIC TỔ HỢP pps

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 (638.2 KB, 29 trang )

Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
45
CHƯƠNG 3. MẠCH LOGIC TỔ HỢP


3.1. GIỚI THIỆU
Chương 2 đã khảo sát các phép toán của tất cả các cổng logic và việc sử dụng đại
số Boolean để mô tả và phân tích các mạch kết hợp từ các cổng logic. Các mạch
này được gọi là mạch logic tổ hợp, vì mức logic ngõ ra chỉ phụ thuộc vào tổ hợp
logic ngõ vào hiện tại.
Một mạch tổ hợp thì không có đặc tính nhớ
Các phương pháp tối thiểu hóa thường được sử dụng trong thiết kế số là:
• Sử dụng các đònh lý của đại số Boolean
• Các kỹ thuật dùng bìa (Karnaugh, Quine Mc. Cluskey)
Mơ hình mạch tổ hợp với n đầu vào và m đầu ra






3.2. THIẾT KẾ MẠCH LOGIC TỔ HỢP
3.2.1. Các bước thiết kế mạch logic tổ hợp
• Ứng với mỗi tổ hợp ngõ vào, đặt các mức logic ngõ ra theo yêu cầu thiết kế, tất
cả các khả năng ngõ ra của một mạch logic có thể được biểu diễn thông qua
bảng sự thật.
• Từ bảng sự thật suy ra biểu thức Boolean cho mạch cần thiết kế
• Rút gọn biểu thức Boolean
• Chuyển biểu thức Boolean thành mạch tổ hợp
Ví dụ,


Thiết kế một mạch logic 3 ngõ vào, A, B, C với yêu cầu: ngõ ra sẽ ở mức cao khi có ít
nhất 2 ngõ vào ở mức cao
Giải.
Bước 1. Thiết lập một bảng sự thật, có tất cả 8 khả năng đối với ngõ vào. Dựa vào
yêu cầu bài toán, ngõ ra sẽ ở mức 1 khi có 2 hay 3 ngõ vào ở mức 1, các trường hợp
còn lại ngõ ra ở mức 0.


MẠCH TỔ
HỢP
X
1
X
2
X
n
Y
1
Y
2
Y
m
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
46
A
B C X Minterm
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
0
0
1
0
1
1
1




BCA.

CBA
CAB
ABC
Bước 2. Viết biểu thức ngõ ra dưới dạng minterm (cho mỗi trường hợp X=1)
X =
A.BC
+
ABC
+
ABC
+ ABC
Bước 3. Có thể viết lại
X=ABC+ABC+ABC+ABC+ABC+ABC
Nhóm các số hạng lại với nhau
X=BC(A+A)+AC(B+B)+AB(C+C)=BC+AC+AB
Bước 4. Biểu thức ngõ ra được thực hiện như sau:







Hình (a) Hình (b)
Người ta cũng co thể biến đổi biểu thức trên thành x=C(B + A) + AB, và mạch logic
được thực hiện như hình (b)

Mạch (b) có phần đơn giản hơn vì chỉ sử dụng các cổng 2 ngõ vào thay vì phải sử
dụng cổng OR 3 ngõ vào như mạch (a). Trên thực tế người thiết kế vẫn chọn mạch
(a) bởi vì nhiều lý do, một trong những lý do là tín hiệu ngõ vào A, B ở mạch (b)
phải qua 3 cổng logic trước khi được đưa ra ngõ ra. Điều này có thể ảnh hưởng rất
lớn trong một hệ thống số tốc độ cao.
Ví dụ, Thiết kế một mạch logic 4 ngõ vào, A, B, C, D (trong đó A ứng với MSB, và
D ứng với LSB) với yêu cầu ngõ ra sẽ ở mức cao khi giá trò thập phân của các ngõ
vào ABCD > 6
10

74LS08
B
C
A X
74LS08
1
74LS08
B
A
X
C
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
47
3.2.2. Một số điểm quan trọng khi thực hiện thiết kế cuối cùng
Trong các ví dụ về thiết kế trên, các mạch được thực hiện thông qua các cổng AND
và OR, trong đó một hay nhiều cổng AND lái một cổng OR do việc biểu diễn hàm
dưới dạng minterm. Khi biểu diễn hàm dưới dạng minterm ta có thể dễ dàng
chuyển đổi các cổng logic thành một cổng NAND duy nhất (lưu ý xem lại phần
chuyển đổi đã khảo sát ở chương 2), bởi vì cổng NAND là cổng logic có đáp ứng

nhanh nhất trong họ logic TTL, đây là một đặc tính quan trọng cần phải lưu ý.
Ví dụ, biến đổi mạch của 2 ví dụ trên dùng cổng NAND









3.3. KỸ THUẬT CỰC TIỂU QUINE-Mc CLUSKEY
Các hệ thống số hiện đại được thiết kế bằng cách sử dụng các thiết bò logic phức
tạp, do đó đòi hỏi một kỹ thuật tối hiểu hóa hàm logic với sự hỗ trợ của máy tính
thay vì làm bằng tay với các yêu cầu:
• Có khả năng xử lý một số lớn các biến
• Không phụ thuộc vào khả năng của người dùng trong việc nhận biết các phần tử
nguyên tố
• Đảm bảo biểu thức được cực tiểu hóa
• Phù hợp cho giải pháp bằng máy tính
Phương pháp:
Bước 1. Chuyển hàm về dạng minterm
Bước 2. Sắp xếp các số hạng minterm của hàm theo từng nhóm có chung số bit 1
Bước 3. Áp dụng định lý
A
+A =1 cho 2 minterm chỉ sai khác nhau 1 bit 1. Lặp lại
cho đến khi nhóm xong các minterm
Bước 4. Quan sát bảng các ngun tố cơ bản được rút gọn, xác định cột chỉ chứa một
minterm
Bước 5. Viết hàm dưới dạng tổng chuẩn rút gọn của các minterm đó

Ví dụ. Rút gọn hàm Boolean sau dùng phương pháp Quin McCluskey
ABCD
Y= (0,1,2,3,5,7,8,9,11,14)


74LS08
B
C
A X
B
C
A X
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
48
Bước 2.
Các biến Nhóm
(số bit 1)
Minterm
A B C D
1 1
2
8
0
0
1
0
0
0
0

1
0
1
0
0
2 3
5
9
0
0
1
0
1
0
1
0
0
1
1
1
3 7
11
14
0
1
1
1
0
1
1

1
1
1
1
0
Bước 3. Nhóm các minterm chỉ sai khác 1 bit
Các biến Nhóm

Minterm
A B C D
1 0,1
0,2
0,8
0
0
-
0
0
0
0
-
0
-
0
0
2 1,3
1,5
1,9
2,3
8,9

0
0
-
0
1
0
-
0
0
0
-
0
0
1
0
1
1
1
-
-
3 3,7
3,11
5,7
9,11
0
-
0
1
-
0

1
0
1
1
-
-
1
1
1
1
4 14 1 1 1 0
Lặp lại bước 3, tiếp tục nhóm các minterm chỉ sai khác 1 bit

Các biến Nhóm

Minterm
A B C D
Nguyên tố
cơ bản
1 0,1,2,3
0,1,8,9
0
-
0
0
-
0
-
-
A

B
BC
2 1,3,5,7
1,3,9,11
0
-
-
0
-
-
1
1
A
D
BD
3 14 1 1 1 0
A
BCD

Bước 4. Quan sát các nguyên tố và tìm các cột chỉ chứa một gạch chéo (ký hiệu
⊗)
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
49

Các minterm Các
nguyên tố
Các số thập
phân
0 1 2 3 5 7 8 9 11 14

A
BCD
14

A
B
0,1,2,3 X X

X
BC
0,1,8,9 X X

X
A
D
1,3,5,7 X X
⊗ ⊗

BD
1,3,9,11 X X X


Thấy rằng, tất cả các nguyên tố đều có ⊗, đây là các minterm đã cực tiểu hóa, vậy
hàm cuối cùng là
Y=
A
BCD +
A
B +BC+
A

D +BD
Ví dụ. Rút gọn hàm Boolean sau dùng phương pháp Quin McCluskey
ABCD
Y= (2,4,5,6,10,12,13,14)


3.4. THIẾT KẾ MẠCH KHƠNG SỬ DỤNG BẢNG SỰ THẬT
Một số bài toán thiết kế đôi khi có thể giải quyết trực tiếp mà không qua các bước
thiết kế trên, đối với những bài toán này đòi hỏi phải hiểu rõ những phép toán
logic, các cổng logic và các tính chất của cổng logic. Xét một vài ví dụ sau đây
3.4.1. Mạch so sánh số nhị phân 2 bit
Bài tốn




Thiết kế mạch sao cho ngõ ra sẽ ở mức cao khi
x
1
x
0
= y
1
y
0

Giải.
Có thể giải bài toán bằng cách lập bảng sự thật
rồi rút gọn hàm
Tuy nhiên, nếu ta xét đến đặc điểm của phép

toán tương đương hay cổng XNOR (ngõ ra sẽ ở
mức cao nếu 2 ngõ vào bằng nhau) ta sẽ thấy
vấn đề cần giải quyết sẽ đơn giản hơn nhiều.

x
1
x
0
y
1
y
0
z
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0

0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1

1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
0
0
0
1
0
0
0
0
1
0
0

0
0
1
Mạch
so
sánh
x
1
x
0
y
1
y
0
z

Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
50
Cốt lõi của bài toán là so sánh x
0
với y
0
và x
1
với y
1
, ta sẽ có mạch như sau:







3.4.2. Mạch tạo và kiểm tra chẵn lẻ
Khi truyền dữ liệu từ máy phát sang máy thu, có nhiều cách để kiểm tra lỗi trong
khi truyền, một trong những cách đơn giản nhất là thêm 1 bit vào dữ liệu được
truyền đi, bit đó gọi là bit chẵn lẻ (parity bit).
Parity bit có hai giá trò 0 hay 1 tùy thuộc vào số bit 1 có trong nhóm mã. có hai
phương pháp tạo bit parity.
Phương pháp parity chẵn
Giá trò của bit parity được chọn sao cho tổng các chữ số 1 trong nhóm mã là số
chẵn.
Nếu số bit 1 trong nhóm mã là lẻ thì bit parity thêm vào là 1
Nếu số bit 1 trong nhóm mã là chẵn thì bit parity thêm vào là 0
Ví dụ mã ASCII của chữ C là 1000011, nhóm mã này có 3 bit 1 vì vậy sẽ đặt thêm
parity bit là 1 để sao cho nhóm mã tạo ra có số bit 1 là chẵn (4 bit 1)
1 1 0 0 0 0 1 1

mã ASCII của chữ A là 1000001, bit parity thêm vào sẽ là bit 0 (01000001)
Mạch tạo Parity chẵn dựa trên phương pháp so sánh số bit 1







Ngõ ra cổng XOR ở mức cao khi số bit 1 ở ngõ vào là lẻ
Ta có thể thiết kế mạch dùng bảng sự thật và kết quả cũng giống như trên

74LS08
X1
X0
Y1
Y0
Z
Bit parity thêm vào
D3
D2
D1
D0
Parity (P)
To Receiver
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
51
Phương pháp Parity lẻ
Giá trò của bit parity được chọn sao cho tổng các chữ số 1 trong nhóm mã là số lẻ.
Nếu số bit 1 trong nhóm mã là lẻ thì bit parity thêm vào là 0
Nếu số bit 1 trong nhóm mã là chẵn thì bit parity thêm vào là 1
Ví dụ mã ASCII của chữ C là 1000011, nhóm mã này có 3 bit 1 vì vậy sẽ đặt thêm
parity bit là 0 để sao cho nhóm mã tạo ra có số bit 1 là lẻ
0 1 0 0 0 0 1 1

mã ASCII của chữ A là 1000001, bit parity thêm vào sẽ là bit 1 (11000001)
Mạch kiểm tra chẵn lẻ
Mạch kiểm tra chẵn tương tự như mạch phát parity chẵn, cũng dựa trên nguyên lý
của cổng XOR, ngõ ra sẽ ở mức cao nếu các ngõ vào có số bit 1 là chẵn. Nghóa là
khi ngõ ra ở mức 1: không có lỗi, khi ngõ ra ở mức 0: có lỗi trong khi truyền. Mạch
như hình sau







Mạch chỉ kiểm tra các bit gốc có bò lỗi hay không chứ không biết được bit nào lỗi
trong trường hợp phát hiện được lỗi
3.4.3. Mạch cho phép/cấm
Mỗi cổng logic cơ bản có thể được sử dụng để điều khiển cho phép hoặc không cho
phép các tín hiệu đi qua cổng đó.
Ở đây ta sử dụng một ngõ vào làm chân điều khiển cho phép hoặc cấm, ngõ còn lại
cấp tín hiệu







Bit parity thêm vào
P
D3
D2
D1
D0
Error (E)
1=error

0=no error

Control
Tra
ï
ng thái cấm (đóng cổng)
Cổng
logic
Control
Trạng thái cho phép (mở cổng)
Cổng
logic
Khơng
thay đổi
trạng thái
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang
52
Ví dụ,
Thiết kế mạch logic cho phép tín hiệu đi qua chỉ khi hai ngõ điều khiển B và C đều
ở mức cao, các trường hợp còn lại ngõ ra ở mức thấp
Giải.



Ví dụ
Thiết kế mạch logic cho phép tín hiệu đi qua chỉ khi 2 ngõ vào điều khiển có mức
logic khác nhau.
Ví dụ,
Thiết kế mạch logic với tín hiệu ngõ vào tại A, điều khiển tại B, ngõ ra X và Y như
sau:
Khi B=1 ngõ ra X = A, Y = 0

Khi B=0 ngõ ra X = 0, Y= A

74LS11
A
B
C
X
Bài Giảng Kỹ Thuật Số Chương 3
3.5.
MẠCH GIẢI MÃ (Decoder)
Là mạch logic giải mã N-bit nhò phân ngõ vào thành M đường ngõ ra, chỉ duy nhất
một đường ngõ ra ở mức tích cực ứng với một tổ hợp N-bit ngõ vào. Gọi bộ giải
mã là bộ phát hiện mã




Một số mạch giải mã không sử dụng hết tất cả các khả năng của ngõ vào, vì vậy
ứng với tổ hợp ngõ vào không sử dụng thì khi thiết kế không có ngõ ra nào tích cực
A
N-1
A
2
A
1
A
0

O
M-1

O
2

O
1
O
0
Decoder
N
input
M
output
3.5.1.
Mạch giải mã 3 sang 8
Mạch có 3 ngõ vào và 8 ngõ ra, còn được gọi là mạch giải mã nhò phân sang octal
(binary to octal decoder), với ngõ ra tích cực mức 1, có bảng sự thật như sau
Bảng sự thật
C B A Q
0
Q
1
Q
2
Q
3
Q
4
Q
5
Q

6
Q
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1
0
0

0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0

0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0

1
Q
0
=
A.B.C

C
(MSB)
B
A
(LSB)
Q
0
= C.B.A
Q
1
=
A.B.C

Q
1
= C.B.A
Q
2
=
AB.C

Q
3
=

BA.C

Q
2
= C.BA
Q
4
=
A.BC

Q
3
= C.BA
Q
5
=
A.BC

Q
6
=
A.CB

Q
4
=
CB.A
Q
7
= CBA

Q
5
= CB.A
Trường hợp ngõ ra
tích cực mức 0 làm
tương tự
Q
6
= CB.A
Q
7
=
CBA
Trang
53
Bài Giảng Kỹ Thuật Số Chương 3
3.5.2.
Ngõ vào cho phép
Đa số các bộ giải mã đều có một hoặc nhiều ngõ vào cho phép để điều khiển hoạt
động của bộ giải mã.
Ví dụ, xét bộ giải mã ở trên, kết nối mỗi cổng AND ngõ ra với chân điều khiển cho
phép chung ENABLE. Khi ENABLE=1, cho phép cổng AND hoạt động bình thường
ở chế độ giải mã, khi ENABLE ở mức thấp ngõ ra của các cổng AND được đặt ở
mức 0, nghóa là mạch cho phép giải mã ứng với ngõ ENABLE=1 và không cho
phép ứng với ENABLE=0
3.5.3.
Giải mã 3 sang 8 dùng IC74LS138
G
2A
G

2B
G
1
Output
0
1
x
x
0
x
1
x
1
x
x
0
Ngõ ra tích cực theo mã của A
2
A
1
A
0
Không giải mã, ngõ ra ở mức cao
Không giải mã, ngõ ra ở mức cao
Không giải mã, ngõ ra ở mức cao
Y7
Y6
Y5
Y4
Y3

Y2
Y1
Y0
G2B
G2A
G1
C
B
A
74LS138
74LS11
2
Y
1
Y
0
Y
2A
G
3
Y
4
Y
5
Y
Y
6

7
Y

A
1
A
0
(LSB) (MSB) A
2

2B
G
G
1














Ví dụ
Xác đònh ngõ ra nào của 74LS138 tích cực ứng với các ngõ vào như sau:
G
2A
= 0; G

2B
= G
1
=1 ; A
2
= A
1
= 1 ; A
0
= 0
G
2A
= G
2B
= 0 ; G
1
=1 ; A
2
= 0 ; A
1
= A
0
= 1
Trang
54
Bài Giảng Kỹ Thuật Số Chương 3
3.5.4.
Ghép các bộ giải mã liên tầng
Có thể ghép các bộ giải mã liên tầng để có thể giải mã được từ mã lớn hơn.
Ví dụ, kết hợp 2 bộ giải mã 3 sang 8 để tạo thành 1 bộ giải mã 4 sang 16










EN=0 cho phép mạch giải hoạt động
Đối với các bộ giải mã lớn hơn, có thể thêm vào 1 bộ giải mã như sau
















74LS138
A
B

C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A3
A0
HI
74LS138
A
B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7

A2
A1
EN
74LS138
A
B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A3
EN
A0
HI
74LS138
A2
A1
Y0
Y1
Y2
Y3
Y4

Y5
Y6
Y7
G1
G2A
G2B
A
B
C
DEC0
DEC1
DEC2
DEC3
DEC4
DEC5
DEC6
DEC7
DEC0
DEC1
DEC2
DEC3
DEC4
DEC5
DEC6
DEC7
DEC8
DEC9
DEC10
DEC11
DEC12

DEC13
DEC14
DEC15
DEC8
DEC9
DEC10
DEC11
DEC12
DEC13
DEC14
DEC15
EN3
74LS138
A
B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A
B
C

G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
EN2
A0
A4
74LS139A
G
A

B
Y0
Y1
Y2
Y3
EN1
A3
A
B
C
G1
G2A

G2B
Y0
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
G1
G2A
G2B
A
B
C
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A2
A1
DEC0
DEC1
DEC2
DEC3
DEC4

DEC5
DEC6
DEC7
DEC8
DEC9
DEC10
DEC11
DEC12
DEC13
DEC14
DEC15
DEC16
DEC17
DEC18
DEC19
DEC20
DEC21
DEC22
DEC23
DEC24
DEC25
DEC26
DEC27
DEC28
DEC29
DEC30
DEC31
Ví dụ
Sử dụng 4 IC 74LS138 và một cổng đảo, thiết kế mạch giải mã 5 sang 32
Trang

55
Bài Giảng Kỹ Thuật Số Chương 3
3.5.5.
Sử dụng bộ giải mã tạo các minterm
Các ngõ ra của bộ giải mã (ở chế độ cho phép) tương ứng với các minterm của các
ngõ vào.
Ví dụ các minterm của các ngõ ra 74LS138 như sau
A.B.CY
0
=
,
AB.CY
1
=
, v.v.
Nếu một hàm logic có các minterm như ngõ ra của bộ giải mã thì ta có thể sử dụng
bộ giải mã đó để xây dựng hàm trên
Ví dụ
Xét hàm F =
ZYXYZXZYXZYX
ZYX
+++=

,,
)5,3,2,0(

Có thể thiết lập hàm như sau:

74LS20
F

Z
X
HI
Y
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
G1
G2A
G2B
A

B
C
S13874L




Quá trình thiết kế có thể chọn cách thiết kế này hoặc cách thiết kế khác tùy thuộc
vào tốc độ, giá thành Giải pháp sử dụng bộ giải mã rất thuận tiện vì có thể dễ
dàng thay đổi các minterm. Ngoài ra có thể thiết kế nhiều hàm logic ngõ ra, ví dụ
sử dụng bộ giải mã và cổng NAND thực hiện các hàm sau
F =
, G =


ZYX ,,
)5,4,2(

ZYX ,,
)3,1,0( , H =

ZYX ,,
)7,6,3(

HI
74LS138
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
A
G2B
B
C
G1
G2A
74LS10
X
Y
Z

F



G


H

3.5.6. Giải mã 7 đoạn
Bộ giải mã 7 đoạn có 4 ngõ vào theo mã BCD và 7 ngõ ra ứng
với mã 7 đoạn
Bộ hiển thò 7 đoạn có thể là LED 7 đoạn hoặc bằng tinh thể lỏng
(LCD liquid– crystal display) được sử dụng trong các máy tính
tay hiển thò giá trò thập phân. LED 7 đoạn có 2 loại: loại anode
chung và loại cathode chung

d
g
f
e
c
b
a
Trang
56
Bài Giảng Kỹ Thuật Số Chương 3









LED 7 đoạn Cathode chung LED 7 đoạn Anode chung
+Vcc
g
f
e
d
c
b
a
g
f
e
d
c
b
a
74LS49






A
B

C
D
BI OA
OB
OC
OD
OE
OF
OG

Ví dụ
74LS49 có ngõ ra tích cực mức cao,
LED tương ứng là cathode chung như
hình bên
Bảng sự thật của 74LS49 (tra phần
phụ lục)
Ví dụ:
74LS47 với ngõ ra tích cực mức thấp, sử dụng LED tương ứng là cathode chung như
sau
74LS47
C
D
RB I
LT
A

B
C

D


E
F
G
BI/RBO

B
A

HI






Tính toán các giá trò điện trở bằng công thức sau
R =
LED
LEDCC
I
VV −

V
LED
khoảng 2,7V, I
LED
khoảng 10mA, vậy R = 230



LED tinh thể lỏng LCD
g

f

e
d
c
b
a
LCD hoạt động với mức điện áp thấp (khoảng 3 đến
15V
RMS
) tần số hoạt động thấp (25 đến 60hz) và dòng
cung cấp rất bé và cũng được thể hiện 7 đoạn giống như
LED 7 đoạn
Blackblane

Trang
57
Bài Giảng Kỹ Thuật Số Chương 3
Điện áp ac cần đề làm từng đoạn sáng là điện áp giữa đoạn đó với blackblane.
Giữa segment và blackblane hình thành một điện dung. Tần số thấp nhất của điện
áp ac là 25hz
LCD sử dụng dòng ít hơn LED và thường được sử dụng ở các thiết bò dùng pin như
máy tính… và nó cần thêm nguồn năng lượng ngoài là ánh sáng để có thể thấy được.
Để lái một LCD, theo nguyên tắc 1 segment sẽ sáng khi có một điện áp ac đặt giữa
segment và blackblane, và segment sẽ tắt khi không có áp ac này. Để có một điện
áp ac người ta tạo ra một sóng vuông như sau


Segmen
Blackblane
4070
Control
40hz signal




Phương pháp để lái một LCD 7 đoạn như sau
40hz
4511
A

B
C
D
LT
BI
LE
A
B
C
D
E
F
G
Blackblane
LCD
4070














3.5.7.
Giải mã BCD sang 10 dùng IC74LS42
Cách thiết kế mạch giải mã BCD sang thập phân thì tương tự
như cách thiết kế mạch 3 sang 8 (xem như một bài tập về
nhà).
IC giải mã BCD sang thập phân: 74LS42 bảng sự thật tra phần
phụ lục

Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8

Y9
D
C
B
A
74LS42
Trang
58
Bài Giảng Kỹ Thuật Số Chương 3
3.6.
MẠCH MÃ HÓA (ENCODER)
Ngược với quá trình giải mã là quá trình mã hóa và được thực hiện bởi mạch logic
mã hóa. Chỉ một ngõ vào của bộ mã hóa được tích cực, và từ mã N-bit ngõ ra tùy
thuộc vào ngõ vào nào được tích cực




A
N-1
A
2
A
1
A
0
O
M-1
O
2

O
1
O
0
Encoder
M
output
N
input
3.6.1.
Mã hóa 8 sang 3 (octal sang nhò phân)
Bảng sư thật và mạch logic cho mạch mã hóa octal – binary với ngõ vào tích cực
mức thấp
A
0
A
1
A
2
A
3
A
4
A
5
A
6
A
7
Q

2
Q
1
Q
0
x
x
x
x
x
x
x
x
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1

1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0

1
1
1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0

1
0
1

8
input

A3
A4
Q2
A0
A6
A2
Q1
Q0
A5
A7
A1
MSB
LSB






Lưu ý
rằng A0 không kết nối trong mạch vì ngõ ra bộ mã hóa mặc đònh bằng 000
khi không có ngõ vào nào tích cức mức thấp
Ví dụ

Xác đònh các ngõ ra của bộ giải mã trên khi A
3
=A
5
=0
3.6.2.
Mã hóa ưu tiên
Từ ví dụ trên thấy rằng khi có 2 ngõ vào tích cực cùng lúc đối với một bộ mã hóa
đơn giản sẽ dẫn đến kết quả không mong muốn.
Trang
59
Bài Giảng Kỹ Thuật Số Chương 3
Để tránh tình trạng trên, thường sử dụng bộ mã hóa ưu tiên. Khi có 2 hay nhiều ngõ
vào cùng tích cực thì ngõ ra sẽ tương ứng với ngõ vào có độ ưu tiên cao nhất.
Ví dụ
Khi A
3
=A
5
=0 thì ngõ ra ẽ tương ứng với A
5
nghóa là 101.
Xét một hệ thống với 2
n
ngõ vào, mỗi ngõ vào biểu thò cho một yêu cầu của một
thiết bò như sau:


Request
encoder

REQ 1
REQ 2
REQ 3
REQ N
Request
for service

Requestor’s
number





Đây là một cấu trúc thườngđược sử dụng trong một hệ thống con input/output của
bộ vi xử lý, ở đây các ngõ vào là các yêu cầu ngắt.
Để giải bài toán ưu tiên đối với các ngõ vào nghóa là khi có nhiều yêu cầu cùng một
lúc, ta viết biểu thức logic cho ngõ ra của bộ mã hóa ưu tiên.
Ví dụ
Với mạch mã hóa ưu tiên 8-3 như sau
I0 I1 I2 I3 I4 I5 I6 I7 A2 A1 A0
1
x
x
x
x
x
x
x
0

1
x
x
x
x
x
x
0
0
1
x
x
x
x
x
0
0
0
1
x
x
x
x
0
0
0
0
1
x
x

x
0
0
0
0
0
1
x
x
0
0
0
0
0
0
1
x
0
0
0
0
0
0
0
1
0
0
0
0
1

1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Đònh nghóa 8 biến trung gian H0 đến H7 như sau:
H7 = I7
H6 =
7I6I

H5 =
7I.6I5I


H0 =
7I.6I.5I.4I.3I.2I.1I.0I


Từ biểu thức trung gian, viết lại biểu thức ngõ ra như sau:
A2 = H4 + H5 + H6 + H7
A1 = H2 + H3 + H6 + H7
A0 = H1 + H3 + H5 + H7

Trang
60
Bài Giảng Kỹ Thuật Số Chương 3
74148 là bộ mã hóa ưu tiên octal to binary
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN 7
EI
A
0
A
1
A
2
GS
E0
I7 có độ ưu tiên cao nhất.
74LS148 có hai ngõ ra GS và E0.
Ngõ GS (Group Select) tích cực mức 0 khi mạch hoạt

động ở chế độ mã hóa và có 1 trong số các ngõ vào
đang tích cực. E0 (enable output) tích cực mức 0 khi EI
tích cực mức 0 và không có ngõ vào nào tích cực.
74LS148
Ví dụ
Sử dụng 74LS148 thiết kế mạch mã hóa ưu tiên 32 ngõ vào, 5bit ngõ ra: RA4 đến
RA0
74147 là bộ mã hóa ưu tiên 10 đường sang BCD
IN1
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
D
C
A

B
74LS147
Khi không có ngõ vào nào được tác động, ngõ ra sẽ là
1111, vì ngõ ra là ngõ ra đảo nên đảo của 1111 là 0000,
giá trò BCD là 0 nên IC 74LS147 không có ngõ vào IN
0
,
khi ngõ vào IN
9

ở mức thấp, thì ngõ ra tương ứng là
0110, đảo lại 1001 tương ứng với mã BCD là 9.
Vì các ngõ ra là đảo cho nên để có được mã BCD đúng
ở ngõ ra người ta thêm các cổng đảo cho mỗi ngõ ra
Mã hóa bàn phím

S7
S2
HI
74LS147
B
A
C
D
IN1
IN2
IN3
IN4
IN5
IN6
IN7
IN8
IN9
S4
74LS04
S8
S9
S1
S5
S0

S3
S6
BCD












Các phím có thể là bàn phím từ 0 đến 9 trong máy tính. Khi một phím được nhấn, ngõ
ra sẽ là mã BCD của phím nhấn đó. Khi có 2 phím được nhấn cùng lúc thì phím ngõ ra
sẽ là mã BCD của phím ưu tiên cao nhất
Trang
61
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

62
3.7. BỘ CHỌN KÊNH (MULTIPLEXERS)
Một bộ chọn kênh tương tương với bộ chuyển mạch số, nó kết nối data từ n nguồn
khác nhau. Ngõ ra sẽ chọn một trong các nguồn data ngõ vào tùy thuộc vào các ngõ
lựa chọn










Với 2
n
ngõ vào thì cần n bit select
3.7.1. Mạch chọn kênh 2 ngõ vào cơ bản



01
Z=I .S+I .S

3.7.2. Mạch chọn kênh 4 ngõ vào

S1 S0 Output
0
0
1
1
0
1
0
1
Z=I
0


Z=I
1

Z=I
2

Z=I
3





S
I
0
I
1
Z
74LS08
74LS04
1
74LS32
1
Z
I
1
S0
I

0
74LS11
I
2
SELECT
74LS04
I
3
S1
EN
Enable
SEL
s
Select
s
s
s
n data
sources
D
0

D
1

D
n-1
s
Y
Data

output
Multiplexer
Selector
Enable
D
0
D
n-1
D
1
Data
output
s
s
s
s
Select Output
0
1
Z=I
0

Z=I
1

Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

63
3.7.3. Mạch chọn kênh 8 ngõ vào 74LS151


G C B A Y
1
0
0
0
0
0
0
0
0
x
0
0
0
0
1
1
1
1
x
0
0
1
1
0
0
1
1
x

0
1
0
1
0
1
0
1
0
D0
D1
D2
D3
D4
D5
D6
D7
W= Y
Ví dụ
Dùng 2 IC 74ls151 và 1 cổng đảo, một cổng OR thiết kế mạch chọn kênh 16 ngõ
vào, 1 ngõ ra và 4 ngõ select S0, S1, S2, S3
3.7.4. Mạch chọn kênh 2 nhóm ngõ vào 74LS157
74LS157 chứa 2 nhóm ngõ vào như hình sau
G
A
/B
1Y 2Y 3Y 4Y
1
0
0

X
0
1
0
1A
1B
0
2A
2B
0
3A
3B
0
4A
4B
3.7.5. Các ứng dụng của mạch chọn kênh
Các bộ chọn kênh có nhiều ứng dụng khác nhau trong các hệ thống số.
Các ứng dụng bao gồm: chọn data, họat động tuần tự, chuyển đổi song song sang
nối tiếp, tạo dạng sóng, tạo các hàm logic phần này sẽ đề cập đến một số ứng
dụng, một số còn lại sẽ được xét đến ở các chương sau
Mạch tạo hàm logic
Ví dụï. Thực hiện bảng sự thật sau sử dụng multiplexer
C B A Z
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
1
0
0
0
0
1
Z=A.B.C+ABC+ABC
74LS157
1A
1B
2A

2B
3A
3B
4A
4B
A
/B
G
1Y
2Y
3Y
4Y
74LS151
G
A

B
C
W
Y
D0
D1
D4
D3
D5
D6
D7
D2
74LS151
D0D1D2 D3 D4 D5 D6 D7

A
B
C
G
W
Y=Z

HI
Các biến
ngõ vào
Z=A.B.C+ABC+ABC
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

64
Mux có thể được dùng để thực hiện các hàm logic trực tiếp từ bảng sự thật mà
không cần đơn giản hoá hàm logic. Khi sử dụng Mux vào mục đích này, các ngõ
select được sử dụng như các biến logic và mỗi ngõ vào data được nối với mức 1 hay
0 sao cho thỏa mãn bảng sự thật.
Định hướng data
MUX có thể đònh hướng data từ nhiều nguồn data thành 1 nguồn đích.
Ví dụ, sử dụng 74LS157 để chọn và hiển thò nội dung của hai bộ đếm BCD.





















Mỗi bộ đếm bao gồm 2 số đếm BCD. Khi select=1, ngõ ra của bộ đếm 1 sẽ hiển thò
lên LED 7 đoạn, khi select=0, ngõ ra của bộ đếm 2 sẽ hiển thò lên LED 7 đoạn.
Bằng cách này, nội dung của các bộ đếm sẽ được hiển thò thông qua ngõ select.
Mạch đònh hướng này thường được ứng dụng trong các đồng hồ điện tử số, ở đó có
các bộ đếm và các thanh ghi như giây, phút, giờ, tháng, và báo thức, v.v… Một mạch
MUX như trên sẽ cho phép các data khác nhau được hiển thò lên trên màn hình có
số LED hiển thò là giới hạn
Clock 2
Clock 1
BCD
counter
BCD
counter
BCD
counter
BCD
counter
Counter 2 Counter 1

select
display
74LS157
1A1B
2A
2B
3A3B
4A4B
A
/B
G
1Y2Y3Y4Y
74LS157
1A 1B
2A

2B
3A

3B
4A4B
A
/B
G
1Y
2Y 3Y4Y
74LS47
LT
RBI
RB0

A
BCD
A
BC
D
EFG
74LS47
LT RBI
RB0

A
BCD
A
BC D
EFG
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

65
Mục đích của kỹ thuật Multiplex là đề chia sẻ thời gian hiển thò giữa hai hay nhiều
bộ đếm, và điều quan trọng hơn nữa là tiết kiệm được năng lượng, bởi vì một lượng
lớn các bộ giải mã và LED hiển thò sẽ tiêu tốn một dòng lớn
Tuy nhiên kỹ thuật này cũng có nhược điểm là nội dung của các bộ đếm chỉ hiển thò
1 lần tại một thời điểm, tuy nhiên trong nhiều ứng dụng, điều này có thể bỏ qua
Mạch chuyển đổi song song sang nối tiếp (parallel to serial converter)
Nhiều hệ thống số xử lý các data nhò phân ở dạng song song (xử lý các bit đồng
thời) vì tốc độ xử lý nhanh hơn. Khi data được truyền trên một khảng cách xa, giải
pháp truyền song song sẽ cần đến một lượng dây nối lớn. Vì lý do này, các data nhò
phân hoặc các thông tin ở dạng song song được chuyển thành dạng nối tiếp trước
khi được truyền trên một khoảng cách xa. Một phương pháp để biến đổi song song

sang nối tiếp là sử dụng bộ Multiplexer như sau:







Một bộ đếm 3 bit được sử dụng để cung cấp các bit mã chọn CBA từ 000 đến 111,
bằng cách này ngõ ra của Mux sẽ chọn từng kênh X
i
theo mỗi xung clock, ví dụ,
xung clock đầu tiên CBA = 000 ngõ ra sẽ là X0, xung clock thứ hai CBA = 001 ngõ
ra sẽ là X1, cứ như thế ngõ ra Z sẽ là các ngõ vào như ở dạng nối tiếp
X
7
X
6
X
5
X
4
X
3
X
2
X
1
X
0

vơi X
0
là LSB được truyền trước và X
7
là MSB được truyền
cuối cùng
3.8. MẠCH PHÂN KÊNH (DEMULTIPLEXERS)










X4
X1
X6
X2
X0
X3
Z
X7
74LS151
D0
D1
D2
D3

D4
D5
D6
D7
A
B
C
G
W
Y
X5
Mạch
đếm
3 bit
EN
Enable
SEL
s
Select
s
s
s
O
0

O
1

O
n-1

s
Data
Intput
DeMux
Selector
O
0
O
1
`O
n-1
Data
intput
s
s
s
s
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

66
Mạch phân kênh ngược lại với mạch chọn kênh. DeMUX có một ngõ vào và nhiều
ngõ ra. Ngõ vào điều khiển chọn (select) sẽ xác đònh ngõ ra mà ngõ vào sẽ được
truyền đến
3.8.1. Mạch phân kênh 1 sang 8
Select Output
S
2
S
1

S
0
Y
7
Y
6
Y
5
Y
4
Y
3
Y
2
Y
1
Y
0
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
0
0
0
0
0
0
In
0
0
0
0
0
0
In
0
0
0

0
0
0
In
0
0
0
0
0
0
In
0
0
0
0
0
0
In
0
0
0
0
0
0
In
0
0
0
0
0

0
In
0
0
0
0
0
0
In
0
0
0
0
0
0
0
Từ bảng sự thật viết được các biểu thức ngõ ra như sau
)SSS.(InY
0127
= , )SSS.(InY
0126
= , )SSS.(InY
0125
= , …












3.8.2. Mạch phân kênh 1 sang 8 và mạch chọn xung clock dùng 74LS138
Phần trước đã khảo sát 74LS138 làm nhiệm vụ giải mã, đến đây sẽ tiếp tục ứng
dụng 74LS138 làm bộ phân kênh data và mạch chọn xung clock





S0
HI
74LS138
A

B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6

Y7
S2
S1
DATA
Y1
S1
Y0
S0
S2
In
Y7
S0
HI
74LS138
A
B
C
G1
G2A
G2B
Y0

Y1
Y2
Y3
Y4
Y5
Y6
Y7
Shift Register

Counter
S2
S1
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

67
3.8.3. Mạch chọn xung clock
Có rất nhiều ứng dụng dựa vào nguyên lý DeMUX. Sau đây sử dụng 74LS138 làm
bộ chọn clock
3.9. MẠCH SỐ HỌC
3.10.1. Mạch cộng bán phần




S=AB+AB
C
OUT
= AB
3.10.2. Mạch cộng toàn phần







Ví dụ, Thiết kế mạch cộng toàn phần từ mạch cộng bán phần
Ví dụ, Thiết kế mạch cộng hai số nhò phân 4 bit (a

3
a
2
a
1
a
0
+ b
3
b
2
b
1
b
0
=S
4
S
3
S
2
S
1
S
0
)
từ mạch cộng bán phần và toàn phần
IC cộng tồn phần









A
B
S
C
OUT
A B S C
OUT
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
B
S
Cout
A

C
IN
A B S C
OUT
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1

1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
A
B
S
C
OUT
C
IN
B S
Cout
Cin
A
74LS83
Cộng tồn phần 4 bit

A4
A3
A2
A1
B4
B3
B2
B1
Cin
Cout
S4
S3


S2
S1
74LS183
Cộng tồn phần 1 bit
Cin
B
A
Cout
S
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

68
3.10.3. Mạch cộng nhìn trước số nhớ
Ở mạch cộng nhiều bit, phép cộng hàng cao hơn cần số nhớ lần cộng hàng kế trước.
Thời gian trì hoãn này là lớn đối với các phép tính nhanh. Để khắc phục phải thêm
mạch logic để tạo trực tiếp số nhớ gọi là mạch cộng nhìn trước số nhớ (tốc độ cộng
độc lập với số bit)
Gọi
ii i
P=A B⊕
iii
G=AB

phương trình cộng toàn phần
ii-1
S=P C
i


iiii-1
C=G+PC

Để hiểu rõ ý nghóa của cộng nhìn trước số nhớ, viết phương trình C
0
, C
1
, C
2
, C
3

nhận xét các biến logic chứa trong các phương trình đó (xem như một bài tập)
3.10.4. Mạch cộng BCD
Đối với mạch cộng BCD, nếu đầu ra tổng không phải là số BCD thì kết quả phải
được cộng thêm 6
















B S
Ci
C
i-1
A
P
i
G
i
A
0
A
3
A
2
A
1
C4
B0
B3
B2B1
S0S3S2S1
Cin
A
0
A
3
A
2

A
1
C4
B0B3B2B1
S0S3S2S1
Cin
BCD
A
BCD
B
BCD
thứ nhất
BCD
thứ hai
Bài Giảng Kỹ Thuật Số Chương 3
GV: Nguyễn Trọng Hải Trang

69
3.10. MẠCH CHUYỂN MÃ
Mạch chuyển đổi mã thay đổi dữ liệu nhò phân từ dạng này sang dạng khác
Ví dụ,
• BCD - LED 7 đoạn
• BCD – nhò phân
• Nhò phân – BCD
• Nhò phân – Gray
• Gray – nhò phân
3.10.5. Mạch chuyển đổi BCD sang nhò phân
Bước 1. Xác đònh số bit nhò phân cho mạch chuyển đổi.
Ví dụ, để chuyển đổi 2 chữ số BCD cần 7bit nhò phân, vì giá trò lớn nhất 99 của
BCD đổi sang nhò phân là 1100011

Bước 2. Tính tổng của các số nhò phân tương đương với bit 1 (theo trọng số của mã
BCD)
Ví dụ, (52)
10
có mã BCD là 01010010, tổng nhò phân là
80 40 20 10 8 4 2 1 Trọng số BCD
0 1 0 1 0 0 1 0 BCD
0000010 (mã nhò phân cho 2)
0001010 (mã nhò phân cho 10)
0101000 (mã nhò phân cho 40)
0110100 (mã nhò phân cho 52)
Bước 3. Xây dựng mạch sử dụng mạch cộng nhò phân
Ví dụ, Bảng cộng cho số BCD có 2 chữ số
Mã nhò phân tương đương
Bit BCD Trọng số
b
6
b
5
b
4
b
3
b
2
b
1
b
0
A

0
1 0 0 0 0 0 0 1
B
0
2 0 0 0 0 0 1 0
C
0
4 0 0 0 0 1 0 0
D
0
8 0 0 0 1 0 0 0
A
1
10 0 0 0 1 0 1 0
B
1
20 0 0 1 0 1 0 0
C
1
40 0 1 0 1 0 0 0
D
1
80 1 0 1 0 0 0 0
Vậy b
0
= A
0
;

b

1
= B
0
+ A
1
; b
2
= C
0
+ B
1
; b
3
= D
0
+ A
1
+ C
1
;
b
4
= B
1
+ D
1
;

b
5

= C
1
; b
6
= D
1
;

×