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 Transi
Trang 1CHƯƠNG 4
DIGITAL LOGIC
Nguyễn Văn Thọ Khoa Điện tử viễn thông Đại học Duy Tân – 2010
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ý
Trang 2CÁC CẤP ĐỘ MẠCH LOGIC
2-to-4 Decoder Full
Adder
D-Latch
Memory n
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
on/off, mở / đóng, có điện / không có điện
Trang 3TRANSISTOR MOS KIỂU N
MOS = Metal Oxide Semiconductor
• Có 2 kiểu : Kiểu N (N-MOS) và kiểu P (P-MOS)
N-M OS
• 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
Gate = 0
Terminal #2 must be
connected to GND (0V).
Nguyen Van Tho – Duy Tan University.
2-6
TRANSISTOR MOS KIỂU P
P- M OS
• 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
Trang 4Logic 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)
0 V 2.9 V 2.9 V 0 V
Bảng chân trị
Ký hiệu
Trang 5NOR Gate
Biểu thức toán : C = A + B
Nguyen Van Tho – Duy Tan University.
2-10
OR Gate
Ký hiệu OR
B
A +
Biểu thức toán : C =
Trang 6NAND Gate (AND-NOT)
Ký hiệu NAND
B
A ⋅
Biểu thức toán : C =
Nguyen Van Tho – Duy Tan University.
2-12
AND Gate
Ký hiệu AND
B
A ⋅
Biểu thức toán : C =
Trang 7Cá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 ⋅
Trang 8TỪ BIỂU THỨC TOÁN HỌC
y s
a b
OR
b a
s
y
b a s
y = ⋅ ⋅
Nguyen Van Tho – Duy Tan University.
2-16
TỪ KÝ HIỆU
) (
) (
) (
)
out
b
a
s
b
a
s
b
a
s
b
a
s
sab b a s ab s b a s out = + + +
OR
Trang 9TỪ BẢNG SỰ THẬT
b a
s + s ab
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.
Trang 10MẠCH CỘNG 1 BIT - Full Adder
A B C in S C out
Full Adder
Cin
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
abc c ab c b a bc
a
Cout = + + +
1 0 1
1
0
0 1 0
0
1
1 0 1
0
1
1 0 0
1
1
1
1 1 0 S
1
1
0
0
B
0 1
0
0 0
0
1
0
A
1 1
0 0
C out
C in
abc c b a c b a
c
b
a
1 0 1
1
0
0 1 0
0
1
1 0 1
0
1
1 0 0
1
1
1
1 1 0 S
1
1
0
0
B
0 1
0
0 0
0
1
0
A
1 1
0 0
C out
C in
Trang 11Four-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 đầu ra
¾ Ứ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 đầu ra
¾ Giải mã 2-4 , 3-8 , 4-16 …
Trang 12DECODER - BỘ GIẢI MÃ
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
Trang 13MULTIPLEXER - 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 đầu vào , n đầu vào chọn
2-25
A B C D
S1
S2
O
A B
O
S
MUX
Nguyen Van Tho – Duy Tan University.
MULTIPLEXER - BỘ DỒN KÊNH
S1 S0 Z
2-26
Trang 14MẠ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ị đầu và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 được lưu giữ (trạng thái) của đầu vào
¾với giá trị đầu và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
Trang 15Xó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
Trang 16R-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
Trang 17Register – 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ớ
Trang 18Memory - 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
22 x 3 Memory
address
decoder
address
write
enable
input bits
output bits
Trang 19More 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, …