Bài giảng Kỹ thuật số - Chương 4: Mạch tổ hợp
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật số - Chương 4: Mạch tổ hợp", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_ky_thuat_so_chuong_4_mach_to_hop.pdf
Nội dung text: Bài giảng Kỹ thuật số - Chương 4: Mạch tổ hợp
- ___Chương 4 Mạch tổ hợp IV - 1 CHƯƠNG 4: MẠCH TỔ HỢP MẠCH MÃ HÓA 7 Mạch mã hóa 2n đường sang n đường 7 Mạch tạo mã BCD cho số thập phân MẠCH GIẢI MÃ 7 Mạch giải mã n đường sang 2n đường 7 Mạch giải mã BCD sang 7 đoạn MẠCH ĐA HỢP VÀ GIẢI ĐA HỢP 7 Khái niệm 7 Mạch đa hợp 7 Ứng dụng của mạch đa hợp 7 Mạch giải đa hợp MẠCH SO SÁNH 7 Mạch so sánh hai số một bit 7 Mạch so sánh hai số nhiều bit MẠCH KIÊM / PHÁT CHẴN LẺ 7 Mạch phát chẵn lẻ 7 Mạch kiểm chẵn lẻ ___ ___ Các mạch số được chia ra làm hai loại: Mạch tổ hợp và Mạch tuần tự. - Mạch tổ hợp: Trạng thái ngã ra chỉ phụ thuộc vào tổ hợp các ngã vào khi tổ hợp này đã ổn định. Ngã ra Q của mạch tổ hợp là hàm logic của các biến ngã vào A, B, C . . Q = f(A,B,C . . .) - Mạch tuần tự : Trạng thái ngã ra không những phụ thuộc vào tổ hợp các ngã vào mà còn phụ thuộc trạng thái ngã ra trước đó. Ta nói mạch tuần tự có tính nhớ. Ngã ra Q+ của mạch tuần tự là hàm logic của các biến ngã vào A, B, C . . . . và ngã ra Q trước đó. Q+ = f(Q,A,B,C . . .) Chương này nghiên cứu một số mạch tổ hợp thông dụng thông qua việc thiết kế một số mạch đơn giản và khảo sát một số IC trên thực tế. 4.1. MẠCH MÃ HÓA Mã hóa là gán các ký hiệu cho các đối tượng trong một tập hợp để thuận tiện cho việc thực hiện một yêu cầu cụ thể nào đó. Thí dụ mã BCD gán số nhị phân 4 bit cho từng số mã của số thập phân (từ 0 đến 9) để thuận tiện cho máy đọc một số có nhiều số mã; mã Gray dùng tiện lợi trong việc tối giản các hàm logic . . Mạch chuyển từ mã này sang mã khác gọi là mạch chuyển mã, cũng được xếp vào loại mạch mã hóa. Thí dụ mạch chuyển số nhị phân 4 bit sang số Gray là một mạch chuyển mã. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 2 4.1.1 Mạch mã hóa 2n đường sang n đường Một số nhị phân n bit cho 2n tổ hợp số khác nhau. Vậy ta có thể dùng số n bit để mã cho 2n ngã vào khác nhau, khi có một ngã vào được chọn bằng cách đưa nó lên mức tác động, ở ngã ra sẽ chỉ báo số nhị phân tương ứng. Đó là mạch mã hóa 2n đường sang n đường. (H 4.1) là mô hình một mạch mã hóa 2n đường sang n đường. - (H 4.1a) là mạch có ngã vào và ra tác động cao : Khi các ngã vào đều ở mức thấp, mạch chưa hoạt động, các ngã ra đều ở mức thấp. Khi có một ngã vào được tác động bằng cách ấn khóa K tương ứng để đưa ngã vào đó lên mức cao, các ngã ra sẽ cho số nhị phân tương ứng. - (H 4.1b) là mạch có ngã vào và ra tác động thấp. Hoạt động tương tự như mạch trên nhưng có mức tác động ngược lại. (trong mô hình (H 4.1b) ký hiệu dấu o ở ngã ra để chỉ mức tác động thấp, còn ở ngã vào không có dấu o vì là mạch thật) Trong trường hợp ngã ra có mức tác động thấp, muốn đọc đúng số nhị phân ở ngã ra, ta phải đảo các bit để đọc. (a) (b) (H 4.1) Dĩ nhiên, người ta cũng có thể thiết kế theo kiểu ngã vào tác động thấp và ngã ra tác động cao hay ngược lại. Trên thực tế, ta có thể có bất cứ loại ngã vào hay ra tác động theo bất cứ kiểu nào (mức cao hay thấp). Ngoài ra, để tránh trường hợp mạch cho ra một mã sai khi người sử dụng vô tình (hay cố ý) tác động đồng thời vào hai hay nhiều ngã vào, người ta thiết kế các mạch mã hóa ưu tiên: là mạch chỉ cho ra một mã duy nhất có tính ưu tiên khi có nhiều ngã vào cùng được tác động. 4.1.1.1 Mã hóa ưu tiên 4 đường sang 2 đường Thiết kế mạch mã hóa 4 đường sang 2 đường, ưu tiên cho mã có trị cao, ngã vào và ra tác động cao Bảng sự thật và sơ đồ mạch (H 4.2) 0 1 2 3 A1 A0 1 0 0 0 0 0 ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 3 x 1 0 0 0 1 x x 1 0 1 0 x x x 1 1 1 Bảng 4.1 Nhận thấy biến 0 trong bảng sự thật không ảnh hưởng đến kết quả nên ta chỉ vẽ bảng Karnaugh cho 3 biến 1, 2 và 3. Lưu ý là do trong bảng sự thật có các trường hợp bất chấp của biến nên ứng với một trị riêng của hàm ta có thể có đến 2 hoặc 4 số 1 trong bảng Karnaugh. Thí dụ với trị 1 của cả 2 hàm A1 và A0 ở dòng cuối cùng đưa đến 4 số 1 trong các ô 001, 011, 101 và 111 của 3 biến 123. Từ bảng Karnaugh, ta có kết quả và mạch tương ứng. Trong mạch không có ngã vào 0, điều này được hiểu là mạch sẽ chỉ báo số 0 khi không tác động vào ngã vào nào. (H 4.2) 4.1.1.2 Mã hóa 8 đường sang 3 đường Chúng ta sẽ khảo sát một IC mã hóa 8 đường sang 3 đường. Trên thực tế khi chế tạo một IC, ngoài các ngã vào/ra để thực hiện chức năng chính của nó, người ta thường dự trù thêm các ngã vào và ra cho một số chức năng khác như cho phép, nối mạch để mở rộng hoạt động của IC. IC 74148 là IC mã hóa ưu tiên 8 đường sang 3 đường, vào/ ra tác động thấp, có các ngã nối mạch để mở rộng mã hóa với số ngã vào nhiều hơn. Dưới đây là bảng sự thật của IC 74148, trong đó Ei ngã vào nối mạch và cho phép, Eo là ngã ra nối mạch và Gs dùng để mở rộng cho số nhị phân ra. Dựa vào bảng sự thật, ta thấy IC làm việc theo 10 trạng thái: - Các trạng thái từ 0 đến 7: IC mã hóa cho ra số 3 bit - Các trạng thái 8 và 9: dùng cho việc mở rộng, sẽ giải thích rõ hơn khi nối 2 IC để mở rộng mã hóa cho số 4 bit Trạng Ngã vào Ngã ra thái Ei 0 1 2 3 4 5 6 A2 A1 A0 Gs Eo 7 9 1 x x x x x x x 1 1 1 1 1 8 0 x 1 1 1 1 0 7 0 1 1 1 1 1 1 1 0 0 0 0 1 6 0 1 0 0 1 0 1 5 0 x x x x x x x 0 1 0 0 1 4 0 0 0 1 1 0 1 ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 4 3 0 x x x x x x 0 1 0 0 0 1 2 0 1 1 0 1 0 1 1 0 x x x x x 0 1 1 1 0 0 1 0 0 1 1 1 1 0 1 x x x x 0 1 1 1 x x x 0 1 1 1 1 x x 0 1 1 1 1 1 x 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 Bảng 4.2 (H 4.3) là cách nối 2 IC để thực hiện mã hóa 16 đường sang 4 đường (H 4.3) - IC2 có Ei = 0 nên hoạt động theo các trạng thái từ 0 đến 8, nghĩa là mã hóa từ 0 đến 7 cho các ngã ra A2A1A0. - IC1 có Ei nối với Eo của IC2 nên IC1 chỉ hoạt động khi tất cả ngã vào dữ liệu của IC2 lên mức 1 (IC2 hoạt động ở trạng thái 8) * Để mã hóa các số từ 0 đến 7, cho các ngã vào 8 đến 15 (tức các ngã vào dữ liệu của IC2) lên mức 1, IC2 hoạt động ở trạng thái 8. Lúc đó Ei1 = Eo2 = 0: kết quả là IC1 sẽ hoạt động ở trạng thái từ 0 đến 7, cho phép tạo mã các số từ 0 đến 7 (từ 111 đến 000) và IC2 hoạt động ở trạng thái 8 nên các ngã ra (A2A1A0)2= 111, đây là điều kiện mở các cổng AND để cho mã số ra là B2B1B0 = A2A1A0 của IC1, trong lúc đó B3 = Gs2 = 1, ta được kết quả từ 1111 đến 1000, tức từ 0 đến 7 (tác động thấp). Thí dụ để mã số 4 , đưa ngã vào 4 xuống mức 0, các ngã vào từ 5 đến 15 lên mức 1, bất chấp các ngã vào từ 0 đến 3, mã số ra là B3B2B1B0=Gs2B2B1B0=1011, tức số 4 * Để mã hóa các số từ 8 đến 15, cho IC2 hoạt động ở trạng thái từ 0 đến 7 (đưa ngã vào ứng với số muốn mã xuống thấp, các ngã vào cao hơn lên mức 1 và các ngã vào thấp hơn xuống mức 0), bất chấp các ngã vào dữ liệu của IC1 (cho IC1 hoạt động ở trạng thái 9), nên các ngã ra (A2A1A0)1=111, đây là điều kiện mở các cổng AND để cho mã số ra là B2B1B0= ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 5 A2A1A0 của IC2, , trong lúc đó B3 = Gs2 = 0, ta được kết quả từ 0111 đến 0000, tức từ 8 đến 15. Thí dụ để mã số 14, đưa ngã vào 14 xuống mức 0, đưa ngã vào 15 lên mức 1, bất chấp các ngã vào từ 0 đến 13, mã số ra là B3B2B1B0 = Gs2B2B1B0 = 0001, tức số 14 Muốn có ngã ra chỉ số nhị phân đúng với ngã vào được tác động mà không phải đảo các bit ta có thể thay các cổng AND bằng cổng NAND 4.1.2 Mạch tạo mã BCD cho số thập phân Mạch gồm 10 ngã vào tượng trưng cho 10 số thập phân và 4 ngã ra là 4 bit của số BCD. Khi một ngã vào (tượng trưng cho một số thập phân) được tác động bằng cách đưa lên mức cao các ngã ra sẽ cho số BCD tương ứng Bảng sự thật của mạch: Trạng thái các ngã vào Mã số ra 9 8 7 6 5 4 3 2 A3 A2 A1 1 0 A0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 Bảng 4.3 Không cần bảng Karnaugh ta có thể viết ngay các hàm xác định các ngã ra: A0 = 1 + 3 + 5 + 7 + 9 A1 = 2 + 3 + 6 + 7 A2 = 4 + 5 + 6 + 7 A3 = 8 + 9 Mạch cho ở (H 4.4) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 6 (H 4.4) Để tạo mã BCD ưu tiên cho số lớn, ta viết lại bảng sự thật và dùng phương pháp đại số để đơn giản các hàm xác định các ngã ra A3 , A2 , A1 , A0 Trạng thái các ngã vào Mã số ra 9 8 7 6 5 4 3 2 A3 A2 A1 1 0 A0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 x 1 0 0 0 0 0 0 0 1 0 0 1 x x 0 0 0 0 0 0 0 1 x 0 0 1 x x 1 0 0 0 0 0 1 x x 0 1 0 x x 0 0 0 0 0 1 x x x 0 1 0 x x 1 0 0 0 1 x x x x 0 1 1 x x 0 0 0 1 x x x x x 0 1 1 x x 1 0 1 x x x x x x 1 0 0 x x 0 1 x x x x x x x 1 0 0 x x 1 Bảng 4.4 A 3 = 9.8+ 9 = 9 + 8 A 2 = 7.8.9+ 6.7.8.9+ 5.6.7.8.9+ 4.5.6.7.8.9 = (7+ 6.7+ 5.6.7+ 4.5.6.7)8.9 A 2 = (7 + 6+ 5+ 4)8.9 = (7 + 6+ 5+ 4)(8+ 9) A1 = 7.8.9 + 6.7.8.9 + 3.4.5.6.7.8.9 + 2.3.4.5.6.7.8.9 = (7 + 6.7+ 3.4.5.6.7+ 2.3.4.5.6.7)8.9 A 1 = (7 + 6 + 3.4.5 + 2.3.4.5)8.9 = (7 + 6 + 3.4.5 + 2.4.5)(8 + 9) A 0 = 9 + 7.8.9 + 5.6.7.8.9 + 3.4.5.6.7.8.9 + 1.2.3.4.5.6.7.8.9 ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 7 = 9 + (7 + 5.6.7 + 3.4.5.6.7 +1.2.3.4.5.6.7)8.9 A 0 = 9 + (7 + 5.6 + 3.4.6 +1.2.4.6)8.9 = 9 + (7 + 5.6 + 3.4.6 +1.2.4.6)(8 + 9) Mạch cho ở (H 4.5) (H 4.5) 4.1.3 Mạch chuyển mã Mạch chuyển từ một mã này sang một mã khác cũng thuộc loại mã hóa. DMạch chuyển mã nhị phân sang Gray Thử thiết kế mạch chuyển từ mã nhị phân sang mã Gray của số 4 bit. Trước tiên viết bảng sự thật của số nhị phân và số Gray tương ứng. Các số nhị phân là các biến và các số Gray sẽ là hàm của các biến đó. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 8 A B C D → X Y Z T 0 0 0 0 → 0 0 0 0 0 0 0 1 → 0 0 0 1 0 0 1 0 → 0 0 1 1 0 0 1 1 → 0 0 1 0 0 1 0 0 → 0 1 1 0 0 1 0 1 → 0 1 1 1 0 1 1 0 0 1 0 1 → 0 1 1 1 0 1 0 0 → 1 0 0 0 1 1 0 0 1 0 0 1 → 1 1 0 1 1 0 1 0 → 1 1 1 1 1 0 1 1 → 1 1 1 0 1 1 0 0 → 1 0 1 0 1 1 0 1 → 1 0 1 1 1 1 1 0 → 1 0 0 1 1 1 1 1 → 1 0 0 0 → Bảng 4.5 Dùng bảng Karnaugh để xác định X, Y, Z, T theo A, B, C, D Quan sát bảng sự thật ta thấy ngay: X = A, Vậy chỉ cần lập 3 bảng Karnaugh cho các biến Y, Z, T (H 4.6 a,b,c) và kết quả cho ở (H 4.6 d) (a) (b) (c) (H 4.6 ) (d) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 9 4.2 . MẠCH GIẢI MÃ 4.2.1 Giải mã n đường sang 2n đường 4.2.1.1 Giải mã 2 đường sang 4 đường: Thiết kế mạch Giải mã 2 đường sang 4 đường có ngã vào cho phép (cũng được dùng để nối mạch) Để đơn giản, ta xét mạch giải mã 2 đường sang 4 đường có các ngã vào và ra đều tác động cao . Bảng sự thật, các hàm ngã ra và sơ đồ mạch: Vào R a Y0 = G.A 1 A 0 G A1 A0 Y0 Y1 Y2 Y3 0 x x 0 0 0 0 Y1 = G.A 1A 0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 Y = G.A A 0 1 1 0 0 0 1 0 2 1 1 1 1 0 0 0 1 Y = G.A A 00 3 1 0 (H 4.7) 4.2.1.2 Giải mã 3 đường sang 8 đường Dùng 2 mạch giải mã 2 đường sang 4 đường để thực hiện mạch giải mã 3 đường sang 8 đường (H 4.8) Vào R a A2 A1 A0 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1 ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 10 Quan sát bảng sự thật ta thấy: Trong các tổ hợp số 3 bit có 2 nhóm trong đó các bit thấp A1A0 hoàn toàn giống nhau, một nhóm có bit A2 = 0 và nhóm kia có A2 = 1. Như vậy ta có thể dùng ngã vào G cho bit A2 và mắc mạch như sau. (H 4.8) Khi A2=G=0, IC1 giải mã cho 1 trong 4 ngã ra thấp và khi A2=G=1, IC2 giải mã cho 1 trong 4 ngã ra cao Trên thị trường hiện có các loại IC giải mã như: - 74139 là IC chứa 2 mạch giải mã 2 đường sang 4 đường, có ngã vào tác động cao, các ngã ra tác động thấp, ngã vào cho phép tác động thấp. - 74138 là IC giải mã 3 đường sang 8 đường có ngã vào tác động cao, các ngã ra tác động thấp, hai ngã vào cho phép G2A và G2B tác động thấp, G1 tác động cao. - 74154 là IC giải mã 4 đường sang 16 đường có ngã vào tác động cao, các ngã ra tác động thấp, 2 ngã vào cho phép E1 và E2 tác động thấp Dưới đây là bảng sự thật của IC 74138 và cách nối 2 IC để mở rộng mạch giải mã lên 4 đường sang 16 đường (H 4.9) Vào Ra Ch phép Dữ o liệu G1 G2 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 x H x x x H H H H H H H H L x x x x H H H H H H H H H L L L L L H H H H H H H H L L L H H L H H H H H H H L L H L H H L H H H H H H L L H H H H H L H H H H H L H L L H H H H L H H H H L H L H H H H H H L H H H L H H L H H H H H H L H H L H H H H H H H H H H L Ghi chú G2 =G2A+G2B , H = 1, L =0, x: bất chấp ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 11 (H 4.9) Một ứng dụng quan trọng của mạch giải mã là dùng giải mã địa chỉ cho bộ nhớ bán dẫn. Ngoài ra, mạch giải mã kết hợp với một cổng OR có thể tạo được hàm logic. Thí dụ, thiết kế mạch tạo hàm Y=f(A,B,C)= A BC + ABC + A BC + ABC Với hàm 3 biến, ta dùng mạch giải mã 3 đường sang 8 đường. 8 ngã ra mạch giải mã tương ứng với 8 tổ hợp biến của 3 biến, các ngã ra tương ứng với các tổ hợp biến có trong hàm sẽ lên mức 1. Với một hàm đã viết dưới dạng tổng chuẩn, ta chỉ cần dùng một cổng OR có số ngã vào bằng với số tổ hợp biến trong hàm nối vào các ngã ra tương ứng của mạch giải mã để cộng các tổ hợp biến có trong hàm lại ta sẽ được hàm cần tạo. Như vậy, mạch tạo hàm trên có dạng (H 4.10) (H 4.10) Dĩ nhiên, với những hàm chưa phải dạng tổng chuẩn, chúng ta phải chuẩn hóa. Và nếu bài toán có yêu cầu ta phải thực hiện việc đổi cổng, bằng cách dùng định lý De Morgan. 4.2.2 Giải mã BCD sang 7 đọan 4.2.2.1 Đèn 7 đọan Đây là lọai đèn dùng hiển thị các số từ 0 đến 9, đèn gồm 7 đọan a, b, c, d, e, f, g, bên dưới mỗi đọan là một led (đèn nhỏ) hoặc một nhóm led mắc song song (đèn lớn). Qui ước các đọan cho bởi (H 4.11). (H 4.11) Khi một tổ hợp các đọan cháy sáng sẽ tạo được một con số thập phân từ 0 - 9. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 12 (H 4.12) cho thấy các đoạn nào cháy để thể hiện các số từ 0 đến 9 0 1 2 3 4 5 6 7 8 9 (H 4.12) Đèn 7 đoạn cũng hiển thị được một số chữ cái và một số ký hiệu đặc biệt. Có hai loại đèn 7 đoạn: - Loại catod chung (H 4.13a), dùng cho mạch giải mã có ngã ra tác động cao. - Loại anod chung (H 4.13b), dùng cho mạch giải mã có ngã ra tác động thấp. (a) (H 4.13) (b) 4.2.2.2 Mạch giải mã BCD sang 7 đoạn : Mạch có 4 ngã vào cho số BCD và 7 ngã ra thích ứng với các ngã vào a, b, c, d, e, f, g của led 7 đọan, sao cho các đọan cháy sáng tạo được số thập phân đúng với mã BCD ở ngã vào. Bảng sự thật của mạch giải mã 7 đoạn, có ngã ra tác động thấp: Số Ngã vào Ngã ra TP D C B A a b c d e f g 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 1 1 1 1 2 0 0 1 0 0 0 1 0 0 1 0 3 0 0 1 1 0 0 0 0 1 1 0 4 0 1 0 0 1 0 0 1 1 0 0 5 0 1 0 1 0 1 0 0 1 0 0 6 0 1 1 0 0 1 0 0 0 0 0 7 0 1 1 1 0 0 0 1 1 1 1 8 1 0 0 0 0 0 0 0 0 0 0 9 1 0 0 1 0 0 0 0 1 0 0 Bảng 4.6 Dùng Bảng Karnaugh hoặc có thể đơn giản trực tiếp với các hàm chứa ít tổ hợp, ta có kết quả: ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 13 a = DB(CA + CA) b = CBA + CBA c = DCBA d = DCBA + CBA + CBA e = A + CB f = CB+ BA + DCA g = DCB+ CBA Từ các kết quả ta có thể vẽ mạch giải mã 7 đoạn dùng các cổng logic. Hai IC thông dụng dùng để giải mã BCD sang 7 đọan là: - CD 4511 (loại CMOS, ngã ra tác động cao và có đệm) - 7447 (loại TTL, ngã ra tác động thấp, cực thu để hở) Chúng ta khảo sát một IC giải mã BCD sang 7 đoạn : IC 7447 Bảng sự thật của 7447: Vào Ra Sô / BI Hàm LT RB D C B A (1) a b c d e f g I RBO 0 1 1 0 0 0 0 1 0 0 0 0 0 0 1 1 1 x 0 0 0 1 1 1 0 0 1 1 1 1 2 1 x 0 0 1 0 1 0 0 1 0 0 1 0 3 1 x 0 0 1 1 1 0 0 0 0 1 1 0 4 1 x 0 1 0 0 1 1 0 0 1 1 0 0 5 1 x 0 1 0 1 1 0 1 0 0 1 0 0 6 1 x 0 1 1 0 1 1 1 0 0 0 0 0 7 1 x 0 1 1 1 1 0 0 0 1 1 1 1 8 1 x 1 0 0 0 1 0 0 0 0 0 0 0 9 1 x 1 0 0 1 1 0 0 0 1 1 0 0 10 1 x 1 0 1 0 1 1 1 1 0 0 1 0 11 1 x 1 0 1 1 1 1 1 0 0 1 1 0 12 1 x 1 1 0 0 1 1 0 1 1 1 0 0 13 1 x 1 1 0 1 1 0 1 1 0 1 0 0 14 1 x 1 1 1 0 1 1 1 1 0 0 0 0 15 1 x 1 1 1 1 1 1 1 1 1 1 1 1 (2) x x x x x x 0 1 1 1 1 1 1 1 (3) 1 0 0 0 0 0 0 1 1 1 1 1 1 1 (4) 0 x x x x x 1 0 0 0 0 0 0 0 Ghi chú: 1. BI/RBO được nối theo kiểu điểm AND bên trong IC và được dùng như ngã vào xóa (Blanking Input, BI) và/hoặc ngã ra xóa dợn sóng (Ripple Blanking Output, RBO). Ngã vào BI phải được để hở hay giữ ở mức cao khi cần thực hiện giải mã cho số ra. Ngã vào xóa dợn sóng (Ripple Blanking Input, RBI) phải để hở hay ở mức cao khi muốn đọc số 0. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 14 2. Khi đưa ngã vào BI xuống thấp, ngã ra lên 1 (không tác động) bất chấp các ngã vào còn lại. Ta nói IC làm việc dưới điều kiện bị ép buộc và đây là trường hợp duy nhất BI giữ vai trò ngã vào. 3. Khi ngã vào RBI ở mức 0 và A=B=C=D=0, tất cả các ngã ra kể cả RBO đều xuống 0. Ta nói IC làm việc dưới điều kiện đáp ứng. 4. Khi BI/RBO để hở hay được giữ ở mức 1 và ngã vào thử đèn (Lamp test, LT) xuống 0, tất cả các led đều cháy (ngã ra xuống 0). Dựa vào bảng sự thật và các ghi chú 7447 là IC giải mã BCD sang 7 đọan có đầy đủ các chức năng khác như : thử đèn, xóa số 0 khi nó không có nghĩa. Ta có thể hiểu rõ hơn chức năng này với thí dụ mạch hiển thị một kết quả có 3 chữ số sau đây: (H 4.14) (H 4.14) Vận hành của mạch có thể giải thích như sau: - IC hàng đơn vị có ngã vào RBI đưa lên mức cao nên đèn số 0 hàng đơn vị luôn luôn được hiển thị (dòng 0 trong bảng sự thật), điều này là cần thiết để xác nhận rằng mạch vẫn chạy và kết quả giải mã là số 0. - IC hàng chục có ngã vào RBI nối với ngã ra RBO của IC hàng trăm nên số 0 hàng chục chỉ được hiển thị khi số hàng trăm khác 0 (RBO=1) (dòng 0 đến 15). - IC hàng trăm có ngã vào RBI đưa xuống mức thấp nên số 0 hàng trăm luôn luôn tắt (dòng ghi chú 3). 4.2.2.3 Hiển thị 7 đoạn bằng tinh thể lỏng (liquid crystal displays, LCD) LCD gồm 7 đoạn như led thường và có chung một cực nền (backplane). Khi có tín hiệu xoay chiều biên độ khoảng 3 - 15 VRMS và tần số khoảng 25 - 60 Hz áp giữa một đoạn và cực nền, thì đoạn đó được tác động và sáng lên. Trên thực tế người ta tạo hai tín hiệu nghịch pha giữa nền và một đoạn để tác động cho đoạn đó cháy. Để hiểu được cách vận chuyển ta có thể dùng IC 4511 kết hợp với các cổng EX-OR để thúc LCD (H 4.15). Các ngã ra của IC 4511 (Giải mã BCD sang 7 đoạn, tác động cao) nối vào các ngã vào của các cổng EX-OR, ngã vào còn lại nối với tín hiệu hình vuông tần số khoảng 40 Hz (tần số thấp có thể gây ra nhấp nháy), tín hiệu này đồng thời được đưa vào nền. Khi một ngã ra mạch giải mã lên cao, ngã ra cổng EX-OR cho một tín hiệu đảo pha với tín hiệu ở nền, đoạn tương ứng xem như nhận được tín hiệu có biên độ gấp đôi và sẽ sáng lên. Với các ngã ra mạch giải mã ở mức thấp, ngã ra cổng EX-OR cho một tín hiệu cùng pha với tín hiệu ở nền nên đoạn tương ứng không sáng. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 15 Người ta thường dùng IC CMOS để thúc LCD vì hai lý do: - CMOS tiêu thụ năng lượng rất thấp phù hợp với việc dùng pin cho các thiết bị dùng LCD. - Mức thấp của CMOS đạt trị 0 và tín hiệu thúc LCD sẽ không chứa thành phần một chiều, tuổi thọ LCD được kéo dài. (Mức thấp của TTL khoảng 0,4 V, thành phần DC này làm giảm tuổi thọ của LCD). (H 4.15) 4.3 MẠCH ĐA HỢP VÀ MẠCH GIẢI ĐA HỢP 4.3.1.Khái niệm Trong truyền dữ liệu, để tiết kiệm đường truyền, người ta dùng một đường dây để truyền nhiều kênh dữ liệu, như vậy phải thực hiện viêc chọn nguồn dữ liệu nào trong các nguồn khác nhau để truyền. Mạch đa hợp hay còn gọi là mạch chọn dữ liệu sẽ làm công việc này. Ở nơi thu, dữ liệu nhận được phải được chuyển tới các đích khác nhau, ta cần mạch phân bố dữ liệu hay giải đa hợp (H 4.16). (H 4.16) 4.3.2 Mạch đa hợp Còn được gọi là mạch chọn dữ liệu, gồm 2n ngã vào dữ liệu, n ngã vào địa chỉ (hay điều khiển) và một ngã ra. Khi có một địa chỉ được tác động dữ liệu ở ngã vào tương ứng với địa chỉ đó sẽ được chọn. - Thiết kế mạch đa hợp 4→1 Mạch có 4 ngã vào dữ liệu D0 . . . . D3, 2 ngã vào điều khiển AB và ngã ra Y ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 16 Bảng sự thật: A B Y 0 0 D0 0 1 D1 1 0 D2 1 1 D3 Tư bảng sự thật ta có hàm Y như sau: Y = A.BD 0 + ABD 1 + ABD 2 + ABD 3 Và mạch có dạng (H 4.17) (H 4.17) Nếu chịu khó quan sát ta sẽ thấy mạch đa hợp 4→1 có thể được thiết kế từ mạch giải mã 2 đường sang 4 đường trong đó ngã vào cho phép G đã được tách riêng ra để làm ngã vào dữ liệu (D0 . . . . D3) và ngã vào dữ liệu của mạch giải mã đã trở thành ngã vào điều khiển của mạch đa hợp (A, B) (H 4.18) là ký hiệu một mạch đa hợp với 8 ngã vào dữ liệu, 3 ngã vào điều khiển và 1 ngã ra, ta gọi là đa hợp 8 → 1. Bảng sự thật: A B C Y 0 0 0 D0 0 0 1 D1 0 1 0 D2 0 1 1 D3 1 0 0 D4 1 0 1 D5 1 1 0 D6 1 1 1 D7 (H 4.18) Một đa hợp 8 → 1 có ngã ra Y quan hệ với các ngã vào dữ liệu và điều khiển theo hàm : Y = A.B.CD 0 + A.B.CD 1 + ABCD 2 + ABCD 3 + AB.CD 4 + ABCD 5 + ABCD 6 + ABCD 7 4.3.3 Ứng dung mạch đa hợp Ngoài chức năng chọn dữ liệu mạch đa hợp còn được dùng để: ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 17 4.3.3.1 Biến chuỗi dữ liệu song song thành nối tiếp: Một mạch đa hợp kết hợp với một mạch đếm sẽ biến chuỗi dữ liệu song song ở ngã vào thành chuỗi dữ liệu nối tiếp ở ngã ra (H 4.19) (H 4.19) 4.3.3.2 Tạo chuỗi xung tuần hoàn : Nếu cho dữ liệu vào tuần hoàn, dữ liệu ra nối tiếp cũng tuần hoàn, như vậy chỉ cần đặt trước các ngã vào thay đổi theo một chu kỳ nào đó ta sẽ được chuỗi xung tuần hoàn ở ngã ra. 4.3.3.3 Tạo hàm: 7 Một đa hợp 2n → 1 có thể tạo hàm n biến bằng cách cho các biến vào ngã vào điều khiển và cho trị riêng của hàm vào các ngã vào dữ liệu. Thí dụ: Để tạo hàm 3 biến bằng đa hợp 8→1 ta viết lại biểu thức của đa hợp Y = A.B.CD 0 + A.B.CD 1 + ABCD 2 + ABCD 3 + AB.CD 4 + ABCD 5 + ABCD 6 + ABCD 7 So sánh với biểu thức của hàm viết dưới dạng triển khai theo định lý Shanon thứ nhất f(A,B,C) = A.B.Cf(0,0,0) + A.B.Cf(0,0,1) + ABCf(0,1,0) + ABCf(0,1,1) + AB.Cf(1,0,0) + ABCf(1,0,1) + ABCf(1,1,0) + ABCf(1,1,1) Ta được kết quả: D0 = f(0,0,0) ; D1 = f(0,0,1) , . . . . . . . . . . . D6 = f(1,1,0) và D7 = f(1,1,1) Thí dụ: Tạo hàm: Y = f(A, B,C) = A.B.C + ABC + ABC + A BC + ABC Ta thấy D0=D2=D3=D5=D7=1 nên các ngã vào này được nối lên nguồn, các ngã vào còn lại D1=D4=D6=0 nên được đưa xuống mass (H 4.20). (H 4.20) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 18 7 Một đa hợp 2n → 1 kết hợp với một cổng NOT có thể tạo hàm (n+1) biến. Thí dụ : Tạo hàm F1 = AB+ ABC + BC + AC dùng đa hợp 4 → 1 và cổng NOT Giải Đa hợp 4 sang 1 thực hiện hàm: Y = ABD 0 + ABD 1 + ABD 2 + ABD 3 Chuẩn hóa hàm F1 : F1 = ABC + ABC + ABC + ABC + ABC Để Y = F1 ta phải có: D 0 = C;D 1 = C;D 2 = 1;D 3 = C (H 4.21) Trên thực tế, ta có đủ các loại mạch đa hợp từ 2 → 1 (IC 74157), 4 → 1 (IC 74153), 8 → 1 (IC 74151) và 16 → 1 (74150) . . . . Ngoài ra, để chọn dữ liệu là các nguồn tín hiệu tương tự, ta cũng có các đa hợp tương tự với tên gọi khóa tương tự (analog switch), được chế tạo theo công nghệ MOS như IC 4051 (8 kênh) IC 4053 (2 kênh). . . . Cũng có loại khóa sử dụng được cho cả tín hiệu tương tự và số (bilateral switches) như IC 4016, IC 4066,. . mà sinh viên có thể tìm hiểu, sử dụng dễ dàng khi có bảng tra kỹ thuật. 4.3.4 Mạch giải đa hợp Mạch giải đa hợp thực chất là mạch giải mã trong đó ngã vào cho phép trở thành ngã vào dữ liệu và ngã vào của tổ hợp số nhị phân trở thành ngã vào địa chỉ. Trên thị trường, người ta chế tạo mạch giải mã và giải đa hợp chung trong một IC, tùy theo điều kiện mà sử dụng. Thí dụ IC 74138 là IC Giải mã 3 sang 8 đường đồng thời là mạch giải đa hợp 1 → 8. Khi sử dụng IC 74138 làm mạch giải đa hợp, người ta dùng một ngã vào cho phép làm ngã vào dữ liệu và các ngã vào số nhị phân làm ngã vào địa chỉ. (H 4.22a) là IC 74138 dùng giải đa hợp với ngã vào dữ liệu là G2A . (H 4.22b) là dạng dữ liệu vào G2A và ra ở Y0 (vì CBA=000), các ngã ra khác ( Y1 − Y7 ) ở mức cao. (a) (H 4.22) (b) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 19 4.4 MẠCH SO SÁNH 4.4.1 Mạch so sánh 2 số 1 bit Trước tiên ta thiết kế mạch so sánh hai số 1 bit. Bảng sự thật của mạch so sánh một bit có ngã vào cho phép (nối mạch) G : G a b S (a>b) I (a<b) E (a=b) 0 x x 0 0 0 1 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 1 0 0 1 Bảng 4.7 (H 4.23) Từ mạch so sánh 1 bit ta có thể mở rộng để so sánh nhiều bit. 4.4.2 Mạch so sánh 2 số nhiều bit Để so sánh 2 số nhiều bit, trước tiên người ta so sánh 2 bit cao nhất (MSB), kết quả lớn hoặc nhỏ hơn do 2 bit này quyết định, nếu 2 bit MSB bằng nhau người ta so sánh 2 bit có trọng số thấp hơn tiếp theo và kết quả được quyết định theo cách tương tự như ở 2 bit MSB. . . . . Sự so sánh được lặp lại cho đến bit LSB để được kết cuối cùng. Dưới đây là sơ đồ mạch so sánh 3 bit (H 4.24). (H 4.24) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 20 - IC 1 so sánh 2 bit cao (a3 & b3) nên ngã vào cho phép được đưa lên mức cao, nếu kết quả bằng nhau, ngã ra E của nó lên cao, cho phép IC 2 so sánh, nếu kết quả lại bằng nhau, ngã ra E của IC 2 lên cao cho phép IC 3 so sánh, kết quả bằng nhau cuối cùng chỉ bởi ngã ra E của IC 3. - Các ngã vào cổng OR nhận tín hiệu từ các ngã ra S (hoặc I) sẽ cho kết quả lớn hơn (hoặc nhỏ hơn) tùy vào kết quả so sánh ở bất cứ bit nào. Thật vậy khi có một kết quả lớn hơn (hoặc nhỏ hơn) thì S (hoặc I) ở một IC lên cao, các ngã ra E và I (hoặc S) của các IC khác bằng 0, đây là điều kiện mở cổng OR để cho kết quả so sánh xuất hiện ở một trong các cổng OR này. Trên thị trường có sẵn loại IC so sánh 4 bit 7485 có ngã nối mạch để mở rộng việc so sánh cho số nhiều bit hơn. Bảng sự thật của IC 7485 Trạng Ngã vào so sánh Vào nối mạch ra thái A3,B3 A2,B2 A1,B1 A0,B0 A’>B’ A’ B A B3 x x x x x x 1 0 0 2 A3 B2 x x x x x 1 0 0 4 A3= A2 B1 x x x x 1 0 0 6 A3= A2= A1 B0 x x x 1 0 0 8 A3= A2= A1= A0< x x x 0 1 0 9 B3 B2 B1 B0 0 0 1 0 0 1 10 A3= A2= A1= A0= 1 0 0 1 0 0 11 B3 B2 B1 B0 0 1 0 0 1 0 A3= A2= A1= A0= B3 B2 B1 B0 A3= A2= A1= A0= B3 B2 B1 B0 A3= A2= A1= B3 B2 B1 A3= A2= B3 B2 A3= B3 Bảng 4.8 Dựa vào bảng sự thật, ta thấy: - Khi dùng IC 7485 để so sánh 2 số 4 bit ta phải giữ ngã vào nối mạch A’=B’ ở mức cao, hai ngã vào nối mạch còn lại ở mức thấp, như vậy IC mới thể hiện được kết quả của trạng thái 9. - Khi so sánh 2 số nhiều bit hơn ta phải dùng nhiều IC 7485 và nối ngã ra của IC so sánh bit thấp vào ngã vào nối mạch tương ứng của các IC so sánh các bit cao hơn và IC so sánh các bit thấp nhất có ngã vào nối mạch được mắc như khi dùng riêng lẻ. Để đọc được kết quả so sánh ta phải quan tâm tới các trạng thái 9, 10 và 11 trong bảng sự thật. (H 4.25) cho ta cách mắc 2 IC 7485 để so sánh 2 số nhị phân 8 bit: ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 21 (H 4.25) Thí dụ : a. So sánh hai số A7 . . . .A0 = 10101111 và B7 . . . . B0 = 10110001 IC 2 so sánh các bit cao A7 . . .A4 = 1010 và B7 . . .B4 =1011 có A7= B7 , A6= B6 , A5= B5 và A4 B3B2B1B0 = 1001 nên ngã ra A>B = 1 để chỉ kết quả so sánh của 2 số 8 bit (trạng thái 10). 4.5 MẠCH KIỂM / PHÁT CHẴN LẺ Do yêu cầu kiểm sai trong truyền dữ liệu, người ta có phương pháp kiểm tra chẵn lẻ. Trong phương pháp này, ngoài các bit dữ liệu, người ta thêm vào 1 bit kiểm tra sao cho tổng số bit 1 kể cả bit kiểm tra là số chẵn (KT chẵn) hoặc lẻ (KT lẻ) 1 0 1 1 0 0 1 1 ← Bit chẵn lẻ thêm vào (KT lẻ) 1 1 0 0 1 0 1 0 ← Bit chẵn lẻ thêm vào (KT chẵn) Ở nơi thu, mạch kiểm tra chẵn lẻ sẽ kiểm tra lại số số 1 có trên tất cả các bit để biết dòng dữ liệu nhận được đúng hay sai. Với phương pháp này máy thu sẽ có kết luận đúng khi số bit lỗi là số lẻ. Như vậy phương pháp chỉ cho kết quả đúng với xác suất 50%, tuy nhiên vì xác suất để một lỗi xảy ra là rất nhỏ nên phương pháp vẫn được sử dụng phổ biến trong một số hệ truyền thông. 4.5.1 Mạch phát chẵn lẻ (Parity Generator, PG) Ta sẽ xét trường hợp mạch có 4 bit dữ liệu. Mạch có 4 ngã vào dữ liệu A, B, C, D và 1 ngã vào chọn chẵn lẻ S ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 22 - Giai đoạn 1: Thiết kế mạch ghi nhận số bit 1 là chẵn hay lẻ Giả sử ta muốn có mạch báo kết quả Y=1 khi số bit 1 là lẻ và Y=0 khi ngược lại. Lợi dụng tính chất của cổng EX-OR có ngã ra =1 khi số số 1 ở ngã vào là lẻ. Với 4 ngã vào, ta dùng 3 cổng EX-OR để thực hiện mạch ghi nhận này: Y = (A ⊕ B)⊕ (C ⊕ D) (H 4.26) - Giai đoạn 2: Thiết kế phần mạch tạo bit chẵn lẻ P theo sự điều khiển của ngã vào S Giả sử ta muốn có Tổng số bit 1 của A, B, C, D, P là lẻ khi S = 1 và chẵn khi S = 0 S Số bít 1 của ABCD Y P 0 Lẻ 1 1 0 Chẵn 0 0 1 Lẻ 1 0 1 Chẵn 0 1 Bảng 4.9 Bảng 4.9 cho kết quả: P = S⊕ Y Vậy mạch có dạng (H 4.27) 4.5.2 Mạch kiểm chẵn lẻ (Parity checker, PC) Nếu ta xem mạch phát ở (H 4.27) như là mạch có 5 ngã vào thì ngã ra P quan hệ với số lượng bit 1 ở các ngã vào đó có thể được suy ra từ bảng 4.9 ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 23 Số bít 1 của ABCDS P Lẻ 1 Chẵn 0 Bảng 4.9 Như vậy, ta có thể dùng mạch phát ở trên để làm mạch kiểm tra chẵn lẻ. Tóm lại, một hệ thống gồm mạch phát và kiểm chẵn lẽ được mắc như (H 4.28) Khi ngã vào S của mạch phát đưa xuống mức 0, nếu bản tin nhận đúng thì ngã ra P ở mạch kiểm cũng xuống 0. (H 4.28) Trên thị trường có các IC kiểm/phát chẵn lẻ như 74180 (9 bit) 74280 (9 bit), loại CMOS có 40101 (9 bit), 4531 (13 bit). BÀI TẬP 1. Thiết kế mạch mã hóa 32 đường sang 5 đường dùng IC 74148 và cổng logic. 2. Thiết kế mạch giải mã 4 đường sang 16 đường từ mạch giải mã 2 đường sang 4 đường có ngã vào cho phép. 3. Thiết kế mạch so sánh 4 bit từ mạch so sánh 1 bit 4. Thiết kế mạch chuyển từ mã Gray sang mã nhị phân 5. Thiết kế mạch chuyển từ mã BCD sang mã Excess-3 của các số từ 0 đến 9. (Mã Excess-3 của 1 số có được từ trị nhị phân tương ứng cộng thêm 3, thí dụ mã số 0 là 0011, mã số 9 là 1100) 6. Dùng một mạch giải mã 3 sang 8 đường, 2 cổng NAND 3 ngã vào và 1 cổng AND 2 ngã vào thực hiện các hàm sau: F1 = Σ(1,2,3) ; F2 = Σ(4,5,7) ; F3 = Σ(1,2,3,4,5,7) ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ
- ___Chương 4 Mạch tổ hợp IV - 24 7. Cài đặt các hàm sau dùng bộ dồn kênh (multiplexer) 4 → 1 (Dùng thêm cổng logic nếu cần) F1 = AB+ ABC + BC + AC F2 = A ⊕ (BC) F3 = ∏(1,3,6) 8. Thiết kế mạch MUX 4 → 1 từ các MUX 2 → 1 9. Dùng 2 MUX 2 → 1 để thực hiện 1 MUX 3 → 1 như sau: AB = 00 chọn C AB = 01 chọn D AB =1X chọn E (Trường hợp này B không xac định). 10. Thực hiện hàm Z= AB +BC + CA - Giải mã 3 sang 8 đường (dùng thêm cổng logic nếu cần). - Đa hợp 4 → 1 (dùng thêm cổng logic nếu cần). - Hai mạch cộng bán phần và một cổng OR. ___ ___Nguyễn Trung Lập KỸ THUẬT SỐ