• Một số quy định khi viết tài liệu
• Biểu đồ thời gian của các mạch
• Các PLD tổ hợp
• Các mạch mã hóa
• Các mạch giải mã
• Multiplexer
• So sánh
• Các mạch số học
40 trang |
Chia sẻ: hoang10 | Lượt xem: 621 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Điện điện tử - Thiết kế mạch tổ hợp, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Thiết kế mạch tổ hợp
Nguyễn Quốc Cường – 3i
Combinational logic design 2
Nội dung
• Một số quy ñịnh khi viết tài liệu
• Biểu ñồ thời gian của các mạch
• Các PLD tổ hợp
• Các mạch mã hóa
• Các mạch giải mã
• Multiplexer
• So sánh
• Các mạch số học
Combinational logic design 3
Tài liệu tham khảo
• Digital Design: Principles & Practices – John F
Wakerly – Printice Hall
Combinational logic design 4
Một số quy ñịnh khi viết tài liệu
• Sơ ñồ khối
• Ký hiệu các gate
• Mức tích cực cho các chân
Combinational logic design 5
Sơ ñồ khối
• Thể hiện các khối chức năng chính của hệ
thống
• Không quá chi tiết
• Cố gắng thể hiện trong một trang
Combinational logic design 6
Combinational logic design 7
Combinational logic design 8
Ký hiệu các gate
Combinational logic design 9
các ký hiệu tương ñương sử dụng ñịnh lý
DeMorgan
Combinational logic design 10
Mức tích cực cho các chân
• Thường quy ñịnh nếu có “vòng tròn nhỏ” ñể chỉ
tích cực mức thấp
• Nếu không có “vòng tròn nhỏ” thì hiểu là tíchc
cực mức cao
Combinational logic design 11
• (a): nếu cả hai input = HIGH thì output = HIGH
• (b): nếu cả hai input = HIGH thì output = LOW
• (c): nếu cả hai input = LOW thì output = LOW
Combinational logic design 12
• Tín hiệu:
– Nếu có hậu tố _L thì hiểu là tích cực ở mức thấp
– Nếu không có haụa tố _L thì hiểu là tích cực ở mức
cao
Combinational logic design 13
Biểu ñồ thời gian
• Biễu diễn hoạt ñộng của các tín hiệu là hàm của
thời gian
• Sử dụng các mũi tên ñể chỉ quan hệ “nhân-quả”
của các tín hiệu trong mạch
Combinational logic design 14
Combinational logic design 15
Mạch logic tổ hợp PLD
• PLD: Programmable Logic Device
• Loại PLD ñầu tiên ñược gọi là PLA
(Programmable Logic Arrays):
– Mạch logic tổ hợp 2 tầng AND-OR
– ðặc trưng bởi:
• Số inputs: n
• Số output: m
• Số các tích: p (thường p nhỏ hơn rất nhiều 2^n)
– Tổng hợp các hàm logic theo kiểu tổng các tích
Combinational logic design 16
Combinational logic design 17
• input nối với một buffer ñể tạo ra:
– chính tín hiệu input (buffer)
– bù của input (inverter)
• Các dây tín hiệu ñước nối sẵn trong mạch
• X : dùng ñể ký hiệu nơi có thể thiết lập các kết
nối hay không thông qua các cột chì
• Các input của tầng AND khi ñể hở (không nối
với buffer) sẽ ñược thiết lập là HIGH
• Các input của tầng OR khi ñể hở (không nối với
output của tầng AND) sẽ ñược thiết lập là LOW
Combinational logic design 18
Cách thể hiện khác của PALs
Combinational logic design 19
ðể thực hiện các hàm logic
Combinational logic design 20
ðể thực hiện các output là hằng số
Combinational logic design 21
• ðể output = const = 0 nên sử dụng phương
pháp O2 hơn là O3:
– Khi tất cả input thay ñổi ñồng thời, O3 có khả năng sẽ
chuyển 0 10 (glitch)
Combinational logic design 22
PALs
• PALs: Programmable Array Logic:
– Chỉ có mảng AND là programmable
– Mảng OR là fixed
• Phổ biến nhất là PAL16L8:
– 64 hàng, 32 cột, 32 x 64 = 2048 cột chì
– Mỗi AND gate có 32 input ứng với 16 biến và phần bù
của các biến PAL 16L8
– 8 AND gate liên kết với một pin:
• 7 AND gate ñược nối với 7 input của một cổng OR
• AND thứ 8 ñược nối với output-enable gate, nếu AND = 1 thì
output mới ñược ñưa ra pin
Combinational logic design 23
Combinational logic design 24
• PAL16L8 chỉ thực hiện ñược các hàm tổng của
7 tích hoặc ít hơn
• Trong sơ ñồ chân của PAL16L8: có 20 pin
– 2 pin cho VCC và GND
– 10 pin cho I1 ñến I10
– 8 pin cho O1 ñến O8
– ðặc biệt: chân O2 ñến
O7 là shared:
• Input
• Output
Combinational logic design 25
PLD với công nghệ bipolar
Combinational logic design 26
• Hàng ñầu: các mạch open-collector ñược nối
với nhau thực hiện chức năng như một mảng
AND:
– Chỉ một output của buffer là pull-low thì cả cột ñó sẽ
có mức LOW
– Các cột nối với một mạch ñảo gộp lại như một
mảng NAND
• Tương tự cho mảng thứ hai NAND
• Với cấu trúc NAND-NAND có tác dụng giống
như AND-OR
Combinational logic design 27
• ðể tạo sự kết nối với các cột sử dụng một cột
chì nhỏ
• Cột chì sẽ ñược ñốt nóng và làm bốc hơi khi
thiết lập một ñiện áp cỡ 20V ñến 30V
Combinational logic design 28
PLD với công nghệ CMOS
Combinational logic design 29
• Việc ñặt cột chì cho các phần tử ñược thực hiện
ngay tại bước chế tạo IC:
– không linh hoạt, cần ñặt hàng với nhà sản xuất IC
– hợp với các ứng dụng có số lượng sản phẩm lớn
• ðể linh hoạt hơn sử dụng EPLD (Erasable
Programmable Logic Device)
Combinational logic design 30
EPLD
Combinational logic design 31
• Cực thả nổi (floating gate) của MOS transistor:
– Bao quanh bởi các chất cách ñiện
– Ban ñầu không có ñiện tích MOS transistor hoạt ñộng bình
thường:
• nếu input = LOW n-MOS transistor sẽ “off”
• nếu input = HIGH n-MOS transistor sẽ “on”
• Khi có ñiện áp cao ñặt vào nonfloating gate:
– floating gate sẽ nhiễm ñiện tích âm do tác dụng của ñiện trường
mạnh
– ñiện tích âm vẫn bị giữ lại tại floating gate khi bỏ ñiện áp cao
– ñiện tích âm tại floating gate ngăn cản hoạt ñộng của MOS
transistor:
• nếu input = LOW MOS transistor “off”
• nếu input = HIGH MOS transistor sẽ vẫn “off”
connected
disconnected
Combinational logic design 32
• ðể xóa trạng thái “disconnected”:
– Thiết lập ñiện áp trên nonfloating gate ñiện áp cao và
ngược dấu ñiện tích trên floating gate sẽ phóng
Combinational logic design 33
Các bộ giải mã (decoder)
• Giải mã: biến ñổi mã ở input sang một mã khác
ở output:
– n input 2n mã tổ hợp, m output 2m mã tổ hợp
– Thường n < m
– Bộ giải mã sử dụng nhiều:
• Mỗi tổ hợp input sẽ ứng với một bit trong m bit output
Combinational logic design 34
• Chân EN (Enable):
– Tích cực: các từ mã input sẽ ñược ánh xạ ñến các từ
mã output
– Không tích cực: tất cả các từ mã input ñều ñược gán
ñến một từ mã duy nhất ở ñầu ra
Combinational logic design 35
74x139
Combinational logic design 36
Combinational logic design 37
Combinational logic design 38
74x138
Combinational logic design 39
Combinational logic design 40
Combinational logic design 41
Combinational logic design 42
Bộ giải mã 7 thanh
• Bộ giải mã 7 thanh:
– input mã BCD
– output ñiều khiển hiển thị 7 thanh
Combinational logic design 43
74x49
Combinational logic design 44
Combinational logic design 45
Bộ mã hóa (encoder)
• Mã hóa: biến ñổi mã ở input sang một mã khác
ở output:
– n input 2n mã tổ hợp, m output 2m mã tổ hợp
– Thường n > m
– Bộ giải mã sử dụng nhiều:
• Mỗi bit input sẽ ứng với một tổ hợp của m bit output
Combinational logic design 46
Combinational logic design 47
Mã hóa ưu tiên 74x149
Combinational logic design 48
Combinational logic design 49
Combinational logic design 50
Combinational logic design 51
Dồn kênh (Multiplexer)
• Multiplexer:
– khóa số nối n input tới ñầu ra của nó phụ thuộc vào
tín hiệu ñiều khiển s
– thường n = 2, 4, 8,...
– s = log2(n)
• Không như dồn kênh tương tự, dồn kênh số chỉ
cho tín hiệu ñi theo một chiều: input output
Combinational logic design 52
Combinational logic design 53
74x151
Combinational logic design 54
Combinational logic design 55
74x157
Combinational logic design 56
Combinational logic design 57
mở rộng nhiều multiplexer
Combinational logic design 58
Demultiplexer
• Bộ tách kênh: ngược lại với Multiplexer
– 1 input với n output
– s tín hiệu chọn kênh output
Combinational logic design 59
Multiplexer – Demultiplexer
Combinational logic design 60
EXCLUSIVE OR
• Exclusive OR (XOR) và XNOR
Combinational logic design 61
thực hiện XOR
Combinational logic design 62
Combinational logic design 63
Kiểm tra chẵn – lẻ
• Một số ứng dụng (truyền tin) cần xem xét:
– số bit 1 trong dãy số là chẵn (even) ?
– số bit 1 trong dãy số là lẻ (odd) ?
Combinational logic design 64
Combinational logic design 65
Bộ so sánh
• Sử dụng trong các hệ thống máy tính
• Sử dụng trong các giao diện thiết bị ñể kiểm tra
ID
• So sánh 2 số nhị phân:
– So sánh bằng hoặc không bằng comparator
– So sánh bằng, lớn hơn, nhỏ hơn magnitude
comparator
Combinational logic design 66
74x86
Bộ so sánh bằng và không bằng (comparator) sử dụng 74x86 kết
hợp với NOR (74x02) và NAND (74x00)
Combinational logic design 67
74x85
So sánh =, > , < (magnitude comparator)
Combinational logic design 68
Combinational logic design 69
nối tầng 74x85
Combinational logic design 70
Bộ cộng
• Bộ cộng một nửa (halft adder): cộng hai toán
hạng X và Y 1 bit, kết quả cất trong 2 bit:
– bit thấp của kết quả ký hiệu HS (halft sum)
– bit cao của kết quả ky hiệu CO (carry out)
Combinational logic design 71
• Bộ cộng ñầy ñủ (full adder): dùng ñể cộng hai bit
ở vị trí bất kỳ trong dãy số của số hạng nhiều bit
X và Y:
– Cần có bit carry-in (ñể nhận carry-out từ bit thấp)
– Tổng cất trong 2 bit:
• bit thấp ký hiệu S
• bit cao ký hiệu là COUT
Combinational logic design 72
bộ cộng ñầy ñủ
Combinational logic design 73
Ripple adder
• Cộng hai số nhị phân n bit:
– Sử dụng full adder ñể cộng từng bit
– n full adder ñược nối tầng ñể cộng n bit
Combinational logic design 74
ALU
• ALU (Arithemetic and Logic Unit): Là mạch tổ
hợp:
– thực hiện các phép tính số học và logic trên 1 hoặc 2
biến n bit:
– Lựa chọn chế ñộ hoạt ñộng thông qua các tín hiệu
ñiều khiển
Combinational logic design 75
74x181
Combinational logic design 76
Combinational logic design 77
• minus: trừ (số học)
• plus: cộng (số học)
Combinational logic design 78
Bộ nhân
• Tham khảo
Combinational logic design 79