CHƯƠNG 4
DIGITAL LOGIC
Nguyễn Văn Thọ
Khoa Điện tử viễn thông
Đại học Duy Tân – 2010
ĐẠI HỌC DUY TÂN
KHOA ĐIỆN TỬ VIỄN THÔNG
Nguyen Van Tho – Duy Tan University.
2-2
TRANSISTOR TẠO NÊN CÁC THÀNH PHẦN CỦA MÁY TÍNH
Mỗi bộ xử lý chứa hàng triệu transistor
• Intel Pentium II: 7 triệu
• Compaq Alpha 21264: 15 triệu
• Intel Pentium III: 28 triệu
Transistor làm việc như những công tắc
Tổ hợp lại để tạo thành các chức năng logic
• AND, OR, NOT
Tổ hợp để xây dựng nên các cấu trúc cao cấp
• Bộ cộng, bộ nhân, bộ giải mã, thanh ghi …
Tổ hợp để xây dựng các bộ xử lý
Nguyen Van Tho – Duy Tan University.
2-3
CÁC CẤP ĐỘ MẠCH LOGIC
2-to-4
Decoder
Full
Adder
D-Latch
Memory
n
mm
Transistors
Gate
Cổng logic
Combinational Logic
Mạch logic tổ hợp
Storage Elements
Phần tử lưu trữ
Nguyen Van Tho – Duy Tan University.
2-4
Công tắc điện đơn giản
Công tắc mở :
• Mạch hở
• Không có điện chạy qua
• Bóng đèn tắt
• V
out
= +2.9V
Công tắc đóng :
• Mạch đóng
• Dòng điện chạy trong mạch
• Bóng đèn sáng
• V
out
= 0V
Công tắc điện có thể dễ dàng biểu diễn 2 trạng thái :
on/off, mở / đóng, có điện / không có điện.
Nguyen Van Tho – Duy Tan University.
2-5
TRANSISTOR MOS KIỂU N
MOS = Metal Oxide Semiconductor
• Có 2 kiểu : Kiểu N (N-MOS) và kiểu P (P-MOS)
N-MOS
• Khi đưa điện áp vào chân Gate,
Mạch đóng, ngắn mạch giữa #1 và #2
(công tắc đóng )
• Khi điện áp ở chân Gate =0 ,
Mạch hở, cách điện giữa #1 và #2
(công tắc mở)
Gate = 1
Gate = 0
Terminal #2 must be
connected to GND (0V).
Nguyen Van Tho – Duy Tan University.
2-6
TRANSISTOR MOS KIỂU P
P- MOS
• Khi đưa điện áp vào chân Gate ,
mạch hở, hở mạch giữa #1 và #2
(công tắc mở)
• Khi điện áp ở chân Gate =0
Mạch đóng, ngắn mạch giữa #1 và #2
(công tắc đóng )
Gate = 1
Gate = 0
Nguyen Van Tho – Duy Tan University.
2-7
Logic Gates - Cổng Logic
Sử dụng các trạng thái chuyển mạch của các Transistor
MOS để thực hiện các chức năng logic : AND, OR, NOT.
Quy ước các mức logic :
• Quy định các dải điện áp phụ thuộc vào đặc điểm của transistor
được sử dụng.
¾Giá trị mức 1 thường là : +5V, +3.3V, +2.9V, +1.1V
¾Trong hình minh họa trên ta sử dụng điện áp +2.9V
Nguyen Van Tho – Duy Tan University.
2-8
Inverter (NOT Gate)
In Out
0 V 2.9 V
2.9 V 0 V
In Out
01
10
Bảng chân trị
Ký hiệu
Nguyen Van Tho – Duy Tan University.
2-9
NOR Gate
AB C
00 1
01 0
10 0
11 0
Biểu thức toán : C =
B
A
+
Nguyen Van Tho – Duy Tan University.
2-10
OR Gate
AB C
00 0
01 1
10 1
11 1
Ký hiệu OR
BA+
Biểu thức toán : C =
Nguyen Van Tho – Duy Tan University.
2-11
NAND Gate (AND-NOT)
Ký hiệu NAND
B
A
⋅
AB C
00 1
01 1
10 1
11 0
Biểu thức toán : C =
Nguyen Van Tho – Duy Tan University.
2-12
AND Gate
AB C
00 0
01 0
10 0
11 1
Ký hiệu AND
B
A
⋅
Biểu thức toán : C =
Nguyen Van Tho – Duy Tan University.
2-13
Các cổng Logic cơ bản
Nguyen Van Tho – Duy Tan University.
2-14
CHUYỂN ĐỔI GIỮA CÁC CÁCH BIỂU DIỄN
Biểu thức
Logic
Cổng
Logic
Bảng
Chân trị
a b out
0 0 1
0 1 1
1 0 1
1 1 0
B
A
⋅
Nguyen Van Tho – Duy Tan University.
2-15
TỪ BIỂU THỨC TOÁN HỌC
y
s
a
b
OR
b
a
s
y
basy ⋅⋅=
Nguyen Van Tho – Duy Tan University.
2-16
TỪ KÝ HIỆU
)()()()( basbasbasbasout ⋅⋅+⋅⋅+⋅⋅+⋅⋅=
out
b
a
s
b
a
s
b
a
s
b
a
s
sabbasabsbasout +++=
OR
Nguyen Van Tho – Duy Tan University.
2-17
TỪ BẢNG SỰ THẬT
bas
+
abs
out =
bas
+
sab
+
s a b out
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
out
s
a
b
s
a
b
s
a
b
s
a
b
Nguyen Van Tho – Duy Tan University.
2-18
Sử dụng cổng Logic xây dựng các mạch chức năng
Ta đã biết việc sử dụng các cổng AND, OR và NOT để xây
dựng các các mạch theo bảng chân trị. Một trong các ứng
dụng là xây dựng các mạch logic tổ hợp.
Người ta phân mạch logic làm 2 loại
Mạch logic tổ hợp
• output chỉ phụ thuộc vào trạng thái hiện tại của inputs
• stateless
Mạch logic tuần tự
• output depends on the sequence of inputs (past and present)
• Lưu trữ trạng thái từ các trạng thái input trước.
Nguyen Van Tho – Duy Tan University.
2-19
MẠCH CỘNG 1 BIT - Full Adder
ABC
in
SC
out
00000
00110
01010
01101
10010
10101
11001
11111
Full
Adder
A
B
Cin
S
Cout
Input : - A,B : 2 bit cần cộng
- Cin : bit nhớ đầu vào
Output : - S : tổng
- Cout : bit nhớ đầu ra
Nguyen Van Tho – Duy Tan University.
2-20
MẠCH CỘNG 1 BIT - Full Adder
abccabcbabcaCout
+++=
10110
01001
10101
10011
1
1
1
0
S
1
1
0
0
B
010
000
1
0
A
11
00
C
out
C
in
abccbacbacbaS
+++=
10110
01001
10101
10011
1
1
1
0
S
1
1
0
0
B
010
000
1
0
A
11
00
C
out
C
in
Nguyen Van Tho – Duy Tan University.
2-21
Four-bit Adder
Nguyen Van Tho – Duy Tan University.
DECODER - BỘ GIẢI MÃ
2-22
¾ Giải mã giá trị tín hiệu đầu vào để chọn 1 trong các đầura
¾ Ứng dụng rộng rãi trong giải mã địa chỉ (bộ nhớ ), giải mã
lệnh (CPU)
¾ Mạch giải mã n đầu vào sẽ có 2
n
đầura
¾ Giải mã 2-4 , 3-8 , 4-16 …
Nguyen Van Tho – Duy Tan University.
DECODER - BỘ GIẢI MÃ
VÀO RA
A B O1 O2 O3 O4
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 1 0 0 0 1
2-23
DECODE
A
B
O1
O2
O3
O4
Bộ giải mã 2 ra 4 (2-4 Decoder)
Nguyen Van Tho – Duy Tan University.
DECODER - BỘ GIẢI MÃ
2-4 Decoder
2-24
Nguyen Van Tho – Duy Tan University.
MULTIPLEXER - BỘ DỒN KÊNH
• Ghép nhiều kênh khác nhau vào 1 kênh
• Đầu ra sẽ là 1 trong các đầu vào tuỳ vào đầu vào chọn
• Thường có 2
n
đầuvào , n đầu vào chọn
2-25
A B C D
S
1
S
2
O
A B
O
S
MUX
Nguyen Van Tho – Duy Tan University.
MULTIPLEXER - BỘ DỒN KÊNH
S1 S0 Z
0 0 A
0 1 B
1 0 C
1 1 D
2-26
Nguyen Van Tho – Duy Tan University.
2-27
MẠCH TỔ HỢP & MẠCH TUẦN TỰ
Mạch tổ hợp
• Đầu ra luôn cho kết quả giống nhau với giá trịđầuvào giống nhau
Mạch tuần tự
• Lưu giữ thông tin
• Đầu ra phụ thuộc vào thông tin đượclưu giữ (trạng thái) của đầuvào
¾ với giá trịđầuvào giống nhau sẽ cho đầu ra khác nhau phụ thuộc
vào thông tin lưu trữ
Ví dụ : Máy phát vé
¾Khi ấn nút sẽ cho ra số phụ thuộc vào tình trạng trước đó
• Ứng dụng trong việc chế tạo bộ nhớ
Nguyen Van Tho – Duy Tan University.
2-28
R-S Latch (Bộ chốt): Phần tử lưu trữ cơ bản
R (Clear) : xóa – thiết lập giá trị 0.
S (Set) : thiết lập- thiết lập giá trị 1
Nếu R và S đều =1 , out có thể là 0 hoặc 1
• trạng thái “dừng” - chứa giá trị trước
• Nếu a=1 thì b=0 và ngược lại
1
0
1
1
1
1
0
0
1
1
0
0
1
1
Nguyen Van Tho – Duy Tan University.
2-29
Xóa R-S latch
Giả sử ban đầu, out = 1, sau đó đưa R=0.
Output changes to zero.
Sau đó cho R=1 để lưu trữ giá trịởtrạng thái dừng
1
0
1
1
1
1
0
0
1
0
1
0
0
0
1
1
Nguyen Van Tho – Duy Tan University.
2-30
Thiết lập R-S Latch
Giả sử ban đầu out = 0, ta đưa giá trị S = 0
Output changes to one.
Sau đó cho S=1 để lưu trữ giá trịởtrạng thái dừng
1
1
0
0
1
1
0
1
1
1
0
0
Nguyen Van Tho – Duy Tan University.
2-31
R-S Latch
R = S = 1
• Giá trị hiện hành được chốt
S = 0, R=1
• Thiết lập giá trị 1
R = 0, S = 1
• Xóa (thiết lập giá trị 0)
R = S = 0
• Out=1
• Trạng thái xác định bởi đặc điểm mạch cổng
• Không sử dụng !
Nguyen Van Tho – Duy Tan University.
2-32
Gated D-Latch - Bộ nhớ 1 bit
Hai ngõ vào : D (data) & WE (write enable)
• WE = 1, bộ chốt thiết lập giá trị của D
¾S = NOT(D), R = D
• WE = 0, bộ chốt chứa giá trị đã lưu trữ trước đó
¾S = R = 1
Nguyen Van Tho – Duy Tan University.
2-33
Register – Thanh ghi
Thanh ghi lưu trữ nhiều bit.
• Sử dụng nhiều D-latches, tất cả được điều khiển bởi WE.
• WE=1, n-bit tại D lưu trữ vào thanh ghi.
Nguyen Van Tho – Duy Tan University.
2-34
Memory - Bộ nhớ
Ta có thể tạo bộ nhớ -một mảng k × m bit
•
•
•
k = 2
n
ô nhớ
m bits
Không gian địa chỉ:
số ô nhớ
Nguyen Van Tho – Duy Tan University.
Memory - Bộ nhớ
2-to-4
Decoder
a1 a0
00
01
10
11
Register
Register
Register
Register
we
we
we
we
writeEnable d input
q output
n = 2
address
q0
q1
q2
q3
Nguyen Van Tho – Duy Tan University.
2-36
2
2
x 3 Memory
address
decoder
word select
word WE
address
write
enable
input
bits
output bits
Nguyen Van Tho – Duy Tan University.
2-37
More Memory Details
Những kỹ thuật chế tạo bộ nhớ hiện nay không hoàn toàn giống
như kỹ thuật đã trình bày
• sử dụng ít transistor hơn, tin cậy hơn
Nhưng cấu trúc logic của nó thì hoàn toàn tương đồng.
• Giải mã địa chỉ
• Chọn hàng
• Điều khiển ghi
Có 2 loại bộ nhớ cơ bản RAM (Random Access Memory)
Static RAM (SRAM)
• nhanh, dữ liệu được giữ mà không cần phải làm tươi.
Dynamic RAM (DRAM)
• Chậm , bit lưu trữ phải thường xuyên làm tươi
Also, non-volatile memories: ROM, PROM, flash, …