Chuyên đề Mạch dãy

Bộ đếm thập phân không đồng bộ(dùng JK-FF hoặc RS-FF).

- Viết các hàm kích của các FF của bộ đếm thập

phân đồng bộ(đếm thuận hay đếm ngược theo

yêu cầu), bỏ đi tín hiệu đồng bộ.

- Xung đếm x được đưa vào đầu vào xung nhịp

của FF có trọng số nhỏ nhất.

- Đầu vào xung nhịp của mỗi FF tiếp theo nối

với phần chung trong các biểu thức của J và K

của nó

pdf144 trang | Chia sẻ: thienmai908 | Lượt xem: 1311 | Lượt tải: 1download
Bạn đang xem trước 20 trang nội dung tài liệu Chuyên đề Mạch dãy, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
nh dấu x là không xác định do tổ hợp biến vào tương ứng không thể xảy ra, tại đây có thể ghi trạng thái chuyển đến và tín hiệu ra tùy ý sao cho có thể tối thiểu hóa trạng thái tôt nhất. - Mỗi trạng thái đều có một trạng thái chuyển đến là chính nó, đó là các trạng thái ổn định. a1/0a1/0a1/0a1/0a1/010 a4/0a4/0a2/1a2/1a2/111 a3/0a3/0a3/0a3/0a3/001 a0/0a0/0a0/0a0/0a0/000 a4a3a2a1a0x1x2 4- Tối thiểu hóa trạng thái: a012/0a012/010 a34/0a012/111 a34/0a34/001 a012/0a012/000 a34a012x1x2 5- Mã hóa nhị phân trạng thái: Q=1a34 Q=0a012 Q=0 Q=1 21xx 2x 1 21 2 xx x + 2x 6- Xây dựng hệ phương trình của mạch, dùng RS-FF. 21xxQy = 212121. xxxxQxxQS =+= 2xR = 21xxS = 2xR = 7- Sơ đồ dùng RS-FF kích bằng mức thấp: S R Q Qx1 x2 y 2.8 MỘT SỐMẠCH DÃY THƯỜNG GẶP 2.8.1 THIẾT KẾ CÁC BỘ ĐẾM 2.8.2 CÁC BỘ GHI DỊCH 2.8.1 THIẾT KẾ CÁC BỘ ĐẾM (Counter) • Bộ đếm là một mạch dãy tuần hoàn với chu kỳ k trạng thái (a0, a1, ... ak-1) bằng hệ số đếm, có một đầu vào đếm x, một đầu ra y. Dưới tác dụng của t/h vào x, mạch chuyển trạng thái theo một trình tự nhất định. Khi bộ đếm đang ở trạng thái thứ k-1 mà có t/h vào x, mạch chuyển vể trạng thái ban đầu a0 và cho ra t/h y=1. a0 a1 a2 ak-1 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x • Phân loại các bộ đếm. Theo cách làm việc: đồng bộ (Synchronous) và không đồng bộ hay dị bộ (Asynchronous). Theo hướng đếm: đếm thuận (Up Counter) và đếm ngược (Down Counter). Theo mã đếm: mã nhị phân, mã Gray, mã BCD, mã Johnson, mã vòng... Theo hệ số đếm k: k = 2n và k ≠ 2n Theo khả năng lập trình (hệ số đếm, hướng đếm...): không có khả năng và có khả năng lập trình. • Các bước thiết kế bộ đếm. 1- Vẽ đồ hình trạng thái. 2- Xác định số FF n: - Mã nhị phân và mã Gray: n ≥ log2k - Mã vòng: n = k - Mã Johnson: n = (1/2)k 3- Mã hóa các trạng thái theo mã đã cho. 4- Xác định hàm ra và các hàm kích các FF (từ đồ hình hoặc từ bảng chuyển trạng thái). 5- Vẽ sơ đồ bộ đếm. 2.8.1.1 Thiết kế các bộ đếm đồng bộ. • Bộ đếm thuận nhị phân đồng bộ có k = 2 - Đồ hình trạng thái: - Số FF: n = log2k = 1 - Mã hóa trạng thái: a0 mã hóa là: Q = 0 a1 mã hóa là: Q = 1 - Hàm ra: y = xQ Hàm kích cho RS-FF: a0 a1 x/0 x/1 0/x 0/x Q=0 Q=1 x/0 x/1 0/x 0/x QxS = xQR = 10x Q 1 0 01 x0 S 10x Q 1 0 10 0x R RS-FFx Q Q S R C Hàm kích cho JK-FF: J = x K = x Hàm kích cho D-FF: Hàm kích cho T-FF: QxD = xT = D-FF D C Q Qx T-FF T Q Qx C 1 JK-FF J K Q Q x 1 C • Bộ đếm thuận nhị phân đồng bộ có k = 4 - Đồ hình trạng thái: a0 a1 a2 a3 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x Q1Q0A 11a3 10a2 01a1 00a0 - Số FF: n = log24 = 2 - Mã hóa trạng thái: 00 01 10 11 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x - Hàm ra: y = xQ1Q0 Hàm kích cho RS-FF: 10011 0xx00 10110100x Q1Q0S0 x0101 xx000 10110100x Q1Q0S1 010x1 00xx0 10110100x Q1Q0R1 01101 x00x0 10110100x Q1Q0R0 00 QxS = 011 QQxS = 00 xQR = 011 QxQR = RS-FF Q1 1Q 1S 1R CRS-FFx Q0 0Q 0S 0R C Hàm kích cho JK-FF: J0 = K0 = x J1 = K1 = xQ0 JK-FF Q1 1Q 1J 1K CJK-FFx Q0 0Q 0J 0K C 1 • Bộ đếm ngược nhị phân đồng bộ có k = 4 - Đồ hình trạng thái: a0 a1 a2 a3 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x Q1Q0A 11a3 10a2 01a1 00a0 - Số FF: n = log24 = 2 - Mã hóa trạng thái: 00 01 10 11 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x - Hàm ra, hàm kích cho RS-FF: 10011 0xx00 10110100x Q1Q0S0 0x011 xx000 10110100x Q1Q0S1 10x01 00xx0 10110100x Q1Q0R1 01101 x00x0 10110100x Q1Q0R0 00 QxS = 011 .QQxS = 00 xQR = 011 QxQR = 01.QQxy = Hàm kích cho JK-FF: J0 = K0 = x RS-FF Q1 1Q 1S 1R CRS-FFx Q0 0Q 0S 0R C 011 QxKJ == JK-FF Q1 1Q 1J 1K CJK-FFx Q0 0Q 0J 0K C 1 • Bộ đếm thuận mã Gray đồng bộ có k = 4 - Đồ hình trạng thái đã mã hóa nhị phân: 00 01 11 10 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x x1001 x00x0 10110100x 00x11 0xx00 10110100x - Hàm ra, hàm kích cho RS-FF: Q1Q0S0 0x101 xx000 10110100x Q1Q0S1 100x1 00xx0 10110100x Q1Q0R1Q1Q0R0 10 QxS = 01 xQS = 10 xQR = 01 QxR = 01QxQy = Hàm kích cho JK-FF: Sơ đồ cũng giống như dùng RS-FF. RS-FF Q1 1Q 1S 1R CRS-FFx Q0 0Q 0S 0R C 10 QxJ = 01 xQJ = 10 xQK = 01 QxK = • Bộ đếm ngược mã Gray đồng bộ có k = 4 - Đồ hình trạng thái đã mã hóa nhị phân: 00 01 11 10 x/0 x/0 x/0 x/1 0/x 0/x 0/x 0/x 01x01 00xx0 10110100x 001x1 x00x0 10110100x x0011 xx000 10110100x 1x001 0xx00 10110100x - Hàm ra, hàm kích cho RS-FF: Q1Q0S0 Q1Q0S1 Q1Q0R1Q1Q0R0 10 xQS = 01 QxS = 10 QxR = 01 xQR = 01.QQxy = Hàm kích cho JK-FF: Sơ đồ cũng giống như dùng RS-FF. RS-FF Q1 1Q 1S 1R CRS-FFx Q0 0Q 0S 0R C 10 QxK = 01 xQK = 10 xQJ = 01 QxJ = • Bộ đếm thuận thập phân đồng bộ (k = 10) mã NBCD dùng JK-FF. - Số FF: n ≥ log210 = 4 - Bảng chuyển trạng thái đã mã hóa nhị phân bằng 4 biến D, C, B, A ứng với 4 FF: x10x0xx1000010019 1x0x0xx0100110008 x1x1x11x100001117 1xx0x00x011101106 x11xx00x011001015 1x0xx00x010101004 x1x11x0x010000113 1xx00x0x001100102 x11x0x0x001000011 1x0x0x0x000100000 JAKAJBKBJCKCJDKDD'C'B'A'DCBAtt - Hàm kích cho JK-FF: JA = KA = 1 CBAJD = AKD = xxxx11 xxxx10 010001 000000 10110100DC BAJD xxxx11 xx1010 xxxx01 xxxx00 10110100DC BAKD xxxx11 xx0010 xxxx01 010000 10110100DC BAJC BAJC = BAKC = xxxx11 xxxx10 010001 xxxx00 10110100DC BAKC xxxx11 xx0010 xx1001 xx1000 10110100DC BAJB ADJB = AKB = xxxx11 xxxx10 01xx01 01xx00 10110100DC BAKB JK-FF B BJ BK kCJK-FF x A AJ AK kC 1 A B JK-FF D DJ DK kCJK-FF C CJ CK kC C D • Bộ đếm ngược thập phân đồng bộ (k = 10) mã NBCD dùng JK-FF. - Số FF: n ≥ log210 = 4 - Bảng chuyển trạng thái đã mã hóa nhị phân bằng 4 biến D, C, B, A ứng với 4 FF: x10x0xx0100010019 1x1x1xx1011110008 x1x0x00x011001117 1xx1x00x010101106 x10xx00x010001015 1x1xx10x001101004 x1x00x0x001000113 1xx10x0x000100102 x10x0x0x000000011 1x0x0x1x100100000 JAKAJBKBJCKCJDKDD'C'B'A'DCBAtt xxxx11 xx0110 xxxx01 xxxx00 10110100DC xxxx11 xxxx10 000001 000100 10110100DC - Hàm kích cho JK-FF: JA = KA = 1 ABCJD ..= AKD = BAJD BAKD xxxx11 xxxx10 000101 xxxx00 10110100DC xxxx11 xx0110 xxxx01 000000 10110100DC BAJC ADJC = ABKC .= BAKC xxxx11 xxxx10 10xx01 10xx00 10110100DC xxxx11 xx0110 xx0101 xx0000 10110100DC BAJB ADACADACJB .=+= AKB = BAKB JK-FF B BJ BK kCJK-FF x A AJ AK kC 1 A B JK-FF D DJ DK kCJK-FF C CJ CK kC C D 2.8.1.2 Thiết kế các bộ đếm không đồng bộ. • Bộ đếm nhị phân không đồng bộ. - Mỗi FF mắc kiểu bộ đếm nhị phân đồng bộ k=2. - Xung đếm x được đưa vào đầu vào xung nhịp của FF có trọng số nhỏ nhất (sườn âm tích cực). - Đầu vào xung nhịp của mỗi FF tiếp theo nối với đầu ra thuận của FF tầng ngay trước nếu là bộ đếm thuận, nối với đầu ra đảo của FF tầng ngay trước nếu là bộ đếm ngược. JK-FF J K Q Q 1 C JK-FF J K Q Q 1 CJK-FF J K Q Q x 1 C Bộ đếm thuận dùng JK-FF: JK-FF J K Q Q 1 C JK-FF J K Q Q 1 CJK-FF J K Q Q x 1 C Bộ đếm ngược dùng JK-FF: • Bộ đếm thập phân không đồng bộ (dùng JK- FF hoặc RS-FF). - Viết các hàm kích của các FF của bộ đếm thập phân đồng bộ (đếm thuận hay đếm ngược theo yêu cầu), bỏ đi tín hiệu đồng bộ. - Xung đếm x được đưa vào đầu vào xung nhịp của FF có trọng số nhỏ nhất. - Đầu vào xung nhịp của mỗi FF tiếp theo nối với phần chung trong các biểu thức của J và K của nó VD. Bộ đếm thập phân thuận dùng JK-FF. - Các hàm kích: JA = KA = 1 CBAJD = AKD = BAJC = BAKC = ADJB = AKB = - Đầu vào xung nhịp cho từng FF: ACD =BACC = xCA = ACB = JK-FF B BJ BK kCJK-FFx A AJ AK kC 1 A B JK-FF D DJ DK kCJK-FF C CJ CK kC C D 1 2.8.2 BỘ GHI DỊCH 2.8.2.1 Các bộ ghi dịch. • Bộ ghi dịch là một dãy các FF nối tiếp nhau, đầu ra của FF này nối với đầu vào FF tiếp theo, dùng để lưu giữ thông tin và thực hiện dịch số (dịch phái hay dịch trái). • Ứng dụng: nhớ số liệu trong các CPU, các cổng vào ra; chuyển số liệu song song thành nối tiếp và ngược lại; dùng thiết kế bộ đếm; tạo dãy tín hiệu nhị phân tuần hoàn theo yêu cầu cho trước. • Bộ ghi dịch 4 bit, nạp vào và lấy ra nối tiếp hoặc song song, dịch phải. Q1 1Q 1S 1R C Q0 0Q 0S 0R C Q3 3Q 3S 3R C Q2 2Q 2S 2R C Pr Pr Pr Pr ClCl Cl Cl Ai Bi Ci Di Ao Bo Co Do x Ck Preset Clear • Bộ ghi dịch 4 bit, dịch phải, dịch trái. Ai Bi Ci Di Ao Bo Co DoCk1 Q0 0Q 0S 0R Ck Q1 1Q 1S 1R Ck Q2 2Q 2S 2R Ck Q3 3Q 3S 3R Ck Ck2 X MC 2.8.2.2 Thiết kế các bộ đếm từ bộ ghi dịch. 1- Xác định số bit của bộ ghi dịch: n => log2k, với k là hệ số đếm. 2- Chọn chu trình chuyển trạng thái của bộ ghi dịch. 3- Xác định hàm hồi tiếp và tối thiểu hóa. 4- Vẽ sơ đồ bộ đếm. J K A J K B J K N Mạch hồi tiếp Fht 00x010 xx0x11 1x1001 1x0100 10110100DC BA VD. Thiết kế bộ đếm có k=10 từ bộ ghi dịch. 1- Số bit của bộ ghi dịch: n = 4. 2. Chọn chu trình chuyển trạng thái: 0000 0001 0010 0101 1011 1000 0100 1010 1101 0110 DCBA 1 0 1 1 0 1000 0 3. Xác định hàm hồi tiếp: BDCADACD BDCADACDFht .... .. = =++= Fht Ck A AJ AK kC A B BJ BK kC B C CJ CK kC C D DJ DK kC D 4. Sơ đồ bộ đếm: 2.8.2.3 Tạo dãy tín hiệu tuần hoàn từ bộ ghi dịch. 1- Xác định số bit của bộ ghi dịch: n => log2L, với L là số bit của dãy (hay chu kỳ). 2- Chọn chu trình chuyển trạng thái của bộ ghi dịch. Lập bảng chân lý của hàm hồi tiếp, hàm ra. 3- Xác định hàm hồi tiếp và tối thiểu hóa. 4- Xác định hàm ra và tối thiểu hóa. 5- Vẽ sơ đồ. VD. Thiết kế mạch dùng bộ ghi dịch tạo dãy tuần hoàn y = 10110110. 1- Xác định số bit của bộ ghi dịch. L = 8, nên số bit của bộ ghi dịch: n = 3 2- Chọn chu trình chuyển trạng thái. 000 001 010 101 011100 110 111 CBA 1 0 1 1 100 0 000017 100116 101115 011104 111013 110102 001001 110000 yFhtABCS Bảng chân lý của hàm hồi tiếp và hàm ra. 11101 10010 10110100C 3- Hàm hồi tiếp. 00101 11010 10110100C BAFht ABCBCAC ABCBCACFht ... . = =++= ABCAAC ABCAACy ... . = =++=BAy 4- Hàm ra. Fht Ck A AJ AK kC A B BJ BK kC B C CJ CK kC C y 5- Sơ đồ bộ tạo dãy t/h tuần hoàn y = 10110110.

Các file đính kèm theo tài liệu này:

  • pdfKTS1_2.pdf