Bài giảng môn Nhập môn mạch số - Chương 5, Phần 2: Mạch tổ hợp. Các loại mạch khác
Mạch giải mã (Decoder)
• Nhiều ngõ vào/ nhiều ngõ ra
• Ngõ vào (n) thông thường ít hơn ngõ ra (m)
• Chuyển mã ngõ vào thành mã ngõ ra
• Ánh xạ 1-1:
– Mỗi mã ngõ vào chỉ tạo ra một mã ngõ ra
• Các mã ngõ vào:
– Mã nhị phân
– Your Code!
• Các mã ngõ ra:
– 1-trong-m
– Gray Code
– BCD Code
• Mạch giải mã n-ra-2n: n ngõ vào và 2n ngõ ra
– Mã đầu vào: n bit nhị phân
– Mã đầu ra: 1-trong-2n
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng môn Nhập môn mạch số - Chương 5, Phần 2: Mạch tổ hợp. Các loại mạch khác", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng môn Nhập môn mạch số - Chương 5, Phần 2: Mạch tổ hợp. Các loại mạch khác
1Chương 5 – phần 2 NHẬP MÔN MẠCH SỐ Mạch tổ hợp: Các loại mạch khác CuuDuongThanCong.com https://fb.com/tailieudientucntt 2Nội dung 1. Mạch cộng (Carry Ripple (CR) Adder) 2. Mạch cộng nhìn trước số nhớ - (Carry Look-Ahead (CLA) Adder) 3. Mạch cộng/ mạch trừ 4. Đơn vị tính toán luận lý (Arithmetic Logic Unit) 5. Mạch giải mã (Decoder)/ Mạch mã hoá (Encoder) 6. Mạch dồn kênh (Multiplexer)/ Mạch chia kênh (Demultiplexer) 7. Mạch tạo Parity/ Mạch kiểm tra Parity 8. Mạch so sánh (Comparator) CuuDuongThanCong.com https://fb.com/tailieudientucntt 3Nội dung 1. Mạch cộng (Carry Ripple (CR) Adder) 2. Mạch cộng nhìn trước số nhớ - (Carry Look-Ahead (CLA) Adder) 3. Mạch cộng/ mạch trừ 4. Đơn vị tính toán luận lý (Arithmetic Logic Unit) 5. Mạch giải mã (Decoder)/ Mạch mã hoá (Encoder) 6. Mạch dồn kênh (Multiplexer)/ Mạch chia kênh (Demultiplexer) 7. Mạch tạo Parity/ Mạch kiểm tra Parity 8. Mạch so sánh (Comparator) CuuDuongThanCong.com https://fb.com/tailieudientucntt 45. Decoder/ Encoder CuuDuongThanCong.com https://fb.com/tailieudientucntt 5Mạch giải mã (Decoder) • Nhiều ngõ vào/ nhiều ngõ ra • Ngõ vào (n) thông thường ít hơn ngõ ra (m) • Chuyển mã ngõ vào thành mã ngõ ra • Ánh xạ 1-1: – Mỗi mã ngõ vào chỉ tạo ra một mã ngõ ra • Các mã ngõ vào: – Mã nhị phân – Your Code! • Các mã ngõ ra: – 1-trong-m – Gray Code – BCD Code enable inputs CuuDuongThanCong.com https://fb.com/tailieudientucntt 6Mạch giải mã nhị phân (Binary Decoders) • Mạch giải mã n-ra-2n: n ngõ vào và 2n ngõ ra – Mã đầu vào: n bit nhị phân – Mã đầu ra: 1-trong-2n • Ví dụ: n=2, mạch giải mã 2-ra-4 Chú ý “x” (kí hiệu ngõ vào don’t care) CuuDuongThanCong.com https://fb.com/tailieudientucntt 7Giải mã nhị phân 2-ra-4 CuuDuongThanCong.com https://fb.com/tailieudientucntt 8Chip 74x139: giải mã nhị phân 2-to-4 • Tính hiệu Enable tích cực mức thấp và ngõ ra tích cực mức thấp Bảng sự thật Ký hiệu luận lý CuuDuongThanCong.com https://fb.com/tailieudientucntt 9Mạch giải mã hoàn chỉnh 74x139 CuuDuongThanCong.com https://fb.com/tailieudientucntt 10 Chip 74x138: Giải mã nhị phân 3-to-8 Bảng sự thật CuuDuongThanCong.com https://fb.com/tailieudientucntt 11 74x138 Ký hiệu luận lý Mạch luận lý CuuDuongThanCong.com https://fb.com/tailieudientucntt 12 Ghép mạch giải mã Mạch giải mã 4-to-16 CuuDuongThanCong.com https://fb.com/tailieudientucntt 13 Ứng dụng của mạch giải mã • Một ứng dụng phổ biến là giải mã địa chỉ cho các chip nhớ CuuDuongThanCong.com https://fb.com/tailieudientucntt 14 Giải mã BCD ra LED 7 đoạn CuuDuongThanCong.com https://fb.com/tailieudientucntt 15 LED 7 đoạn (7-segment display) • LED 7 đoạn là cách phổ biến để hiển thị số thập phân hoặc số thập lục phân – Sử dụng LED cho mỗi đoạn CuuDuongThanCong.com https://fb.com/tailieudientucntt 16 LED 7 đoạn (7-segment display) Bằng cách điều khiển dòng điện qua mỗi LED, một số đoạn sẽ sáng và một số tắt, từ đó tạo nên số mong muốn CuuDuongThanCong.com https://fb.com/tailieudientucntt 17 Giải mã BCD ra LED 7 đoạn Chuyển số BCD sang thông tin thích hợp để hiển thị trên đèn 7 đoạn CuuDuongThanCong.com https://fb.com/tailieudientucntt 18 Mạch mã hoá (Encoder) • Nhiều ngõ vào/ nhiều ngõ ra • Chức năng ngược lại với mạch giải mã • Outputs (m) ít hơn inputs (n) • Chuyển mã ngõ vào thành mã ngõ ra input code output code ENCODER CuuDuongThanCong.com https://fb.com/tailieudientucntt 19 Encoders vs. Decoders Decoder Encoder 2^n-ra-n Input code: 1-trong-2^n Output code: Mã nhị phân n-ra-2^n Input code: Mã nhị phân Output code:1-trong-2^n decoders/encoders nhị phân CuuDuongThanCong.com https://fb.com/tailieudientucntt 20 Mạch mã hoá nhị phân (Binary Encoder) • 2^n-ra-n encoder: 2^n ngõ vào và n ngõ ra – Input code: 1-trong-2^n – Output code: Mã nhị phân Ví dụ: n=3, mạch mã hóa 8-ra-3 Bảng sự thật Ký hiệu CuuDuongThanCong.com https://fb.com/tailieudientucntt 21 Hiện thực mạch mã hóa 8-ra-3 • Rút gọn: Y0 = I1 + I3 + I5 + I7 Y1 = I2 + I3 + I6 + I7 Y2 = I4 + I5 + I6 + I7 I1 I2 I3 I4 I5 I6 I0 I7 Y1 Y0 Y2 Ngõ vào Ngõ ra I0 I1 I2 I3 I4 I5 I6 I7 Y2 Y1 Y0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 1 1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 22 Hiện thực mạch mã hóa 8-ra-3 • Giới hạn: – I0 không ảnh hưởng đến ngõ ra – Chỉ một ngõ nhập được kích hoạt tại một thời điểm • Ứng dụng: – Giải quyết những yêu cầu từ nhiều thiết bị, nhưng không phải là những yêu cầu đồng thời. – Trong trường hợp có nhiều thiết bị yêu cầu cùng lúc thì có thể thiết lập mức độ ưu tiên để giải quyết vấn đề này. I1 I2 I3 I4 I5 I6 I0 I7 Y1 Y0 Y2 CuuDuongThanCong.com https://fb.com/tailieudientucntt 23 Cần có độ ưu tiên trong hầu hết các ứng dụng CuuDuongThanCong.com https://fb.com/tailieudientucntt 24 Mạch mã hoá có độ ưu tiên (Priority Encoder) • Gán độ ưu tiên cho các ngõ vào • Khi có nhiều hơn 1 ngõ vào tích cực, ngõ ra tạo ra mã của ngõ vào có độ ưu tiên cao nhất. • Priority Encoder: H7=I7 (Độ ưu tiên cao nhất) H6=I6.I7’ H5=I5.I6’.I7’ H4=I4.I5’.I6’.I7’ H3=I3.I4’.I5’.I6’.I7’ H2=I2.I3’.I4’.I5’.I6’.I7’ H1=I1. I2’.I3’.I4’.I5’.I6’.I7’ H0=I0.I1’. I2’.I3’.I4’.I5’.I6’.I7’ IDLE= I0’.I1’. I2’.I3’.I4’.I5’.I6’.I7’ • Encoder A0=Y0 = H1 + H3 + H5 + H7 A1=Y1 = H2 + H3 + H6 + H7 A2=Y2 = H4 + H5 + H6 + H7 I6 I5 I4 Y1 Y0I3 I2 I1 I7 Y2 I0 Binary encoder I6 I5 I4 I3 I2 I1 I7 I0 Priority Circuit H6 H5 H4 H3 H2 H1 H7 H0 IDLE I6 I5 I4 I3 I2 I1 I7 I0 A1 A0 A2 IDLE Priority encoder CuuDuongThanCong.com https://fb.com/tailieudientucntt 25 8-input priority encoder • I7 có độ ưu tiên cao nhất, I0 thấp nhất • A2-A0 chứa số thứ tự của ngõ vào có độ ưu tiên cao nhất đang tích cực • IDLE tích cực nếu không có ngõ vào nào tích cực CuuDuongThanCong.com https://fb.com/tailieudientucntt 26 74x148 8-input priority encoder – Các pin trên chip đều tích cực mức thấp GS: Got Something/Group Select EO: Enable Output CuuDuongThanCong.com https://fb.com/tailieudientucntt 27 74x148 – Bảng sự thật CuuDuongThanCong.com https://fb.com/tailieudientucntt 28 74x148 28 Sơ đồ luận lý CuuDuongThanCong.com https://fb.com/tailieudientucntt 29 Ghép các priority encoders Mạch mã hoá có độ ưu tiên 32-ngõ vào được ghép từ 4 mạch mã hóa ưu tiên 8-ngõ vào CuuDuongThanCong.com https://fb.com/tailieudientucntt 30 6. Multiplexer (MUX)/ Demultiplexer (DeMUX) CuuDuongThanCong.com https://fb.com/tailieudientucntt 31 Multiplexer (MUX) • Một MUX truyền một trong những ngõ vào của nó ra ngõ ra dựa trên tín hiệu Select Ngõ vào SELECT sẽ xác định ngõ vào nào được truyền ra Z CuuDuongThanCong.com https://fb.com/tailieudientucntt 32 2-to-1 Multiplexer Sel Out 0 I0 1 I1 Out =Sel * I0 + Sel * I1 Ký hiệu Biểu thức đại số Mạch logic Minh họa với Sel = 0 CuuDuongThanCong.com https://fb.com/tailieudientucntt 33 4-to-1 Mux • 4-to-1 Mux xuất ra một trong bốn ngõ vào dựa trên giá trị của 2 tín hiệu select Ký hiệu Bảng sự thật Biểu thức đại số CuuDuongThanCong.com https://fb.com/tailieudientucntt 34 Xây dựng MUX 4-to-1 • Từ MUX 2-to-1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 35 Chip 74x151: 1-bit multiplexer 8-to-1 Bảng sự thật Ký hiệu Sơ đồ luận lý CuuDuongThanCong.com https://fb.com/tailieudientucntt 36 Demultiplexer • Demultiplexer (DEMUX) lấy ngõ vào duy nhất và phân phối nó ra một ngõ ra. – Mã ngõ vào SELECT sẽ xác định ngõ ra nào sẽ được kết nối với ngõ vào DATA được truyền ra một và chỉ một ngõ ra được xác định bởi mã của ngõ vào SELECT CuuDuongThanCong.com https://fb.com/tailieudientucntt 37 DEMUX 1-to-8 demultiplexer Chú ý: I là ngõ vào DATA CuuDuongThanCong.com https://fb.com/tailieudientucntt 38 Tổng hợp các hàm logic từ MUX • Cách hiện thực LUT (Look-up table) - Sử dụng MUX để chọn một giá trị (hằng số) từ 1 LUT Ví dụ hàm XOR CuuDuongThanCong.com https://fb.com/tailieudientucntt 39 Tổng hợp các hàm logic từ MUX • Giải pháp ở slide trước không hiệu quả vì phải sử dụng MUX 4-to-1 • Nhận xét: CuuDuongThanCong.com https://fb.com/tailieudientucntt 40 Tổng hợp các hàm logic từ MUX • Ví dụ: Hiện thực mạch với bảng sự thật sau bằng một MUX và các cổng khác A B X 0 0 1 0 1 1 1 0 0 1 1 1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 41 Tổng hợp các hàm logic từ MUX • XOR 3 ngõ vào có thể hiện thực bằng 2 MUX 2-to-1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 42 Tổng hợp các hàm logic từ MUX • Ví dụ: Hiện thực mạch với bảng sự thật sau bằng một MUX và các cổng logic khác A B C X 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 - Với A là ngõ vào điều khiển - Với C là ngõ vào điều khiển CuuDuongThanCong.com https://fb.com/tailieudientucntt 43 Biểu thức Shannon • Bất kì hàm Boolean f(w1,w2, , wn) có thể được viết dưới dạng: f(w1,w2, , wn) = 𝑤1*f(0,w2, ..., wn) + w1*f(1, w2, wn) CuuDuongThanCong.com https://fb.com/tailieudientucntt 44 Biểu thức Shannon • Ví dụ 1: f(w1,w2, w3)= w1w2 + w1w3 + w2w3 • Phân tích hàm này theo biến w1: f(w1,w2, w3)= w1(w2 + w3) + 𝑤1(w2w3) f khi w1=1 f khi w1= 0 CuuDuongThanCong.com https://fb.com/tailieudientucntt 45 Biểu thức Shannon CuuDuongThanCong.com https://fb.com/tailieudientucntt 46 Biểu thức Shannon • Ví dụ 2: Chọn x làm biến mở rộng CuuDuongThanCong.com https://fb.com/tailieudientucntt 47 Biểu thức Shannon • Ví dụ 3: Chọn z làm biến mở rộng CuuDuongThanCong.com https://fb.com/tailieudientucntt 48 Ví dụ • Dùng MUX 4-to-1 và các cổng luận lý cần thiết để hiện thực hàm sau: F (a, b, c, d) = SOP (1, 3, 5, 6, 8, 11, 15) • Yêu cầu: c và d là các ngõ vào điều khiển của MUX 4-ra-1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 49 Ví dụ • Dùng MUX 4-to-1 và các cổng luận lý cần thiết để hiện thực hàm sau: F (a, b, c, d) = SOP (1, 3, 5, 6, 8, 11, 15) • Yêu cầu: b và c là các ngõ vào điều khiển của MUX 4-to-1 CuuDuongThanCong.com https://fb.com/tailieudientucntt 50 7. Parity Generator/ Checker CuuDuongThanCong.com https://fb.com/tailieudientucntt 51 Cổng Exclusive OR và Exclusive NOR XOR: X Y F '' YXYXYX '')'( YXYXYX XOR: NAND 3 cấp XNOR: XOR: AND-OR Bảng sự thật CuuDuongThanCong.com https://fb.com/tailieudientucntt 52 XOR and XNOR Symbols • Các biểu tượng tương đương của cổng XOR • Các biểu tượng tương đương của cổng XNOR Qui tắc tạo cổng XOR/XNOR tương đương: Lấy bù bất kì 2 trong 3 tín hiệu (cả input hoặc output) của cổng XOR/XNOR ban đầu. CuuDuongThanCong.com https://fb.com/tailieudientucntt 53 Ứng dụng của XOR: Mạch Parity • Mạch Parity chẵn (EVEN): tổng số bit 1 trong chuỗi bit (kể cả bit parity) là số chẵn. – Parity bit = 1, nếu số bit 1 trong chuỗi bit (không kể parity) là số lẻ – Parity bit = 0, nếu số số 1 trong chuỗi bit (không kể parity) là số chẵn • Mạch Parity lẻ (ODD): tổng số bit 1 trong chuỗi bit (kể cả bit parity) là số lẻ. • Ví dụ: Mạch tạo Parity 4-bit Input Even Parity Odd Parity 0000 0 1 0001 1 0 1101 1 0 1111 0 1 1100 0 1 EVEN ODD ODD EVEN CuuDuongThanCong.com https://fb.com/tailieudientucntt 54 Ứng dụng của XOR: Mạch tạo Parity Tree structure Daisy-Chain Structure EVEN EVEN CuuDuongThanCong.com https://fb.com/tailieudientucntt 55 Ứng dụng của XOR: Mạch Parity Source: CuuDuongThanCong.com https://fb.com/tailieudientucntt 56 Chip 74x280: tạo parity chẵn/lẽ từ dữ liệu 9-bit Chú ý: Chip 74x280 định nghĩa even/odd parity ngược lại với định nghĩa trong các slide trước => cẩn thận khi sử dụng chip này CuuDuongThanCong.com https://fb.com/tailieudientucntt 57 Bộ tạo và kiểm tra Parity (Parity generator and checker) • Cổng XOR và XNOR rất hữu dụng trong các mạch với mục đích tạo (bộ phát) và kiểm tra (bộ nhận) parity bit CuuDuongThanCong.com https://fb.com/tailieudientucntt 58 Ứng dụng của XOR: Mạch tạo Parity Source: CuuDuongThanCong.com https://fb.com/tailieudientucntt 59 Ứng dụng cổng XOR: kiểm tra Parity Source: CuuDuongThanCong.com https://fb.com/tailieudientucntt 60 8. Comparator CuuDuongThanCong.com https://fb.com/tailieudientucntt 61 Mạch so sánh (Comperator) • Mạch so sánh 2 số – Xuất ra 1 nếu chúng bằng nhau – Xuất ra 0 nếu chúng khác nhau • Dựa trên cổng XOR, trả về 0 nếu ngõ vào giống nhau và 1 nếu chúng khác nhau • Dựa trên cổng XNOR, trả về 1 nếu ngõ vào giống nhau và 0 nếu chúng khác nhau CuuDuongThanCong.com https://fb.com/tailieudientucntt 62 Mạch so sánh 1 bit a b gt eq lt 0 0 0 1 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 0 CuuDuongThanCong.com https://fb.com/tailieudientucntt 63 Mạch so sánh 4 bit a0 b3 a3 b2 a2 b1 a1 b0 eq CuuDuongThanCong.com https://fb.com/tailieudientucntt 64 Mạch so sánh 4 bit a0 b3 a3 b2 a2 b1 a1 b0 gt CuuDuongThanCong.com https://fb.com/tailieudientucntt 65 Mạch so sánh 4 bit lt CuuDuongThanCong.com https://fb.com/tailieudientucntt 66 Mạch so sánh 4-bit • 74x85 là mạch so sánh tiêu chuẩn với những đặc tính sau: if (A>B) lt=0, eq=0, gt=1 if (A<B) lt=1, eq=0, gt=0 if (A=B) lt=l, eq=e, gt=g • Chý ý: 3 ngõ vào l, e và g được sử dụng khi ghép nối để tạo mạch so sánh với số bit nhiều hơn 4 4 B A g e l gt eq lt CuuDuongThanCong.com https://fb.com/tailieudientucntt 67 Mạch so sánh 16 bit • Ghép 4 IC 74x85 để xây dựng một mạch so sánh 16 bit a[ 15:0 ] b[ 15:0 ] [15:12] 4 4 B A g e l gt eq lt 4 4 B A g e l gt eq lt [15:12] [11:8] [11:8] [7:4] 4 4 B A g e l gt eq lt 4 4 B A g e l gt eq lt 0 1 0 [7:4] [3:0] [3:0] gt eq lt Final results of comparison CuuDuongThanCong.com https://fb.com/tailieudientucntt 68 Mạch so sánh 16 bit • Mạch sẽ đầu tiên so sánh 4 bit cao nhất ở 2 ngõ vào • Trong bước đầu này: – ‘a’ nhỏ hơn ‘b’ nếu 4 MSB nhỏ hơn – ‘a’ lớn hơn ‘b’ nếu 4 MSB lớn hơn – Nếu 4 MSB của 2 số bằng nhau, kết quả của phép so sánh sẽ chờ cho kết quả so sánh ở vị trí các bit thấp hơn CuuDuongThanCong.com https://fb.com/tailieudientucntt 69 Ví dụ • Thiết kế mạch tìm số lớn nhất, số nhỏ nhất trong 4 số 4-bit sử dụng mạch so sánh và MUXs CuuDuongThanCong.com https://fb.com/tailieudientucntt 70 Any question? CuuDuongThanCong.com https://fb.com/tailieudientucntt
File đính kèm:
- bai_giang_mon_nhap_mon_mach_so_chuong_5_phan_2_mach_to_hop_c.pdf