Giáo trình Kỹ thuật số - Chương 5: Mạch tuần tự

______________________________________________________Chương 5  
Mạch tuần tự V - 1  
ꢀ CHƯƠNG 5 MẠCH TUẦN TỰ  
’ CHỐT RS  
♠ Chốt RS tác động mức cao  
♠ Chốt RS tác động mức thấp  
’ FLIPFLOP  
♠ FF RS  
♠ FF JK  
♠ FF T  
♠ FF D  
’ MẠCH GHI DỊCH  
’ MẠCH ĐẾM  
♠ Đồng bộ  
♠ Không đồng bộ  
♠ Đếm vòng  
Trong chương trước, chúng ta đã khảo sát các loại mạch tổ hợp, đó là các mạch mà  
ngã ra của nó chỉ phụ thuộc vào các biến ở ngã vào mà không phụ thuộc vào trạng thái trước  
đó của mạch. Nói cách khác, đây là loại mạch không có khả năng nhớ, một chức năng quan  
trọng trong các hệ thống logic.  
Chương này sẽ bàn về loại mạch thứ hai: mạch tuần tự.  
- Mạch tuần tự là mạch có 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 . . .)  
- Mạch tuần tự vận hành dưới tác động của xung đồng hồ và được chia làm 2 loại:  
Đồng bộ và Không đồng bộ. Ở mạch đồng bộ, các phần tử của mạch chịu tác động đồng  
thời của xung đồng hồ (CK) và ở mạch không đồng bộ thì không có điều kiện này.  
Phần tử cơ bản cấu thành mạch tuần tự là các flipflop  
5.1 FLIP FLOP  
Mạch flipflop (FF) là mạch dao động đa hài lưỡng ổn tức mạch tạo ra sóng vuông và  
có hai trạng thái ổn định. Trạng thái của FF chỉ thay đổi khi có xung đồng hồ tác động.  
Một FF thường có:  
- Một hoặc hai ngã vào dữ liệu, một ngã vào xung CK và có thể có các ngã vào với các  
chức năng khác.  
- Hai ngã ra, thường được ký hiệu là Q (ngã ra chính) và Q (ngã ra phụ). Người ta  
thường dùng trạng thái của ngã ra chính để chỉ trạng thái của FF. Nếu hai ngã ra có trạng thái  
giống nhau ta nói FF ở trạng thái cấm.  
Flipflop có thể được tạo nên từ mạch chốt (latch)  
Điểm khác biệt giữa một mạch chốt và một FF là: FF chịu tác động của xung đồng hồ  
còn mạch chốt thì không.  
Người ta gọi tên các FF khác nhau bằng cách dựa vào tên các ngã vào dữ liệu của  
chúng.  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 2  
5.1.1 Chốt RS  
5.1.1.1. Chốt RS tác động mức cao:  
(H 5.1) là chốt RS có các ngã vào R và S tác động mức cao.  
(H 5.1)  
Các trạng thái logic của mạch cho ở bảng 5.1:  
(Đối với mạch chốt vì không có tác động của xung đồng hồ nên ta có thể hiểu trạng  
thái trước là trạng thái giả sử, còn trạng thái sau là trạng thái khi mạch ổn định).  
R
0
0
0
0
1
1
1
S
0
0
1
1
0
0
1
Q
0
1
0
1
0
1
0
Q+  
R
0
0
1
1
S
0
1
0
1
Q+  
Q
1
0
Cấm  
0⎫ Tác dụng nhớ  
1⎭ Q+= Q  
1⎫ Đặt (Set)  
1⎭ Q+=1  
0⎫ Đặt lại (Reset)  
0⎭ Q+=0  
⎫ Q+= Q +=0 (Cấm)  
1
1
1
⎭
Bảng 5.1  
Từ Bảng 5.1 thu gọn lại thành Bảng 5.2 và tính chất của chốt RS tác động mức cao  
được tóm tắt như sau:  
Bảng 5.2  
- Khi R=S=0 (cả 2 ngã vào đều không tác động), ngã ra không đổi trạng thái.  
- Khi R=0 và S=1 (ngã vào S tác động), chốt được Set (tức đặt Q+=1).  
- Khi R=1 và S=0 (ngã vào R tác động), chốt được Reset (tức đặt lại Q+=0).  
- Khi R=S=1 (cả 2 ngã vào đều tác động), chốt rơi vào trạng thái cấm  
5.1.1.2. Chốt RS tác động mức thấp:  
(H 5.2) là chốt RS có các ngã vào R và S tác động mức thấp. Các trạng thái logic cho  
bởi Bảng 5.3  
S
0
0
1
1
R
0
1
0
1
Q+  
Cấm  
1
0
Q
(H 5.2)  
Bảng 5.3  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 3  
Để có chốt RS tác động mức cao dùng cổng NAND, người ta thêm vào 2 cổng đảo ở  
các ngã vào của mạch (H 5.2)  
(H 5.3)  
(H 5.4a) là ký hiệu chốt RS tác động cao và (H 5.4b) là chốt RS tác động thấp.  
(a)  
(b)  
(H 5.4)  
5.1.2 Flip Flop RS  
Trong các phần dưới đây, ta luôn sử dụng chốt RS tác động mức cao dùng cổng  
NAND. Khi thêm ngã vào xung CK cho chốt RS ta được FF RS . (H 5.5a) là FF RS có các  
ngã vào R, S và xung đồng hồ CK đều tác động mức cao.  
(a)  
(H 5.5)  
(b)  
Hoạt động của FF (H 5.5a) cho bởi Bảng sự thật: (Bảng 5.4)  
Vào  
S
x
0
0
Ra  
Q+  
Q
Q
0
CK  
0
1
1
1
R
x
0
1
0
1
1
1
1
Cấm  
1
Bảng 5.4  
Để có FF RS có xung đồng hồ tác động thấp chỉ cần thêm một cổng đảo cho ngã vào  
CK (H 5.5b). Ta có bảng sự thật giống Bảng 5.4, trừ ngã vào CK phải đảo lại  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 4  
5.1.2.1. Flipflop RS có ngã vào Preset và Clear:  
Tính chất của FF là có trạng thái ngã ra bất kỳ khi mở máy. Trong nhiều trường hợp,  
có thể cần đặt trước ngã ra Q=1 hoặc Q=0, muốn thế, người ta thêm vào FF các ngã vào  
Preset (đặt trước Q=1) và Clear (Xóa Q=0), mạch có dạng (H 5.6a) và (H 5.6b) là ký hiệu của  
FF RS có ngã vào Preset và Clear tác động mức thấp.  
(a)  
(H 5.6)  
(b)  
Thay 2 cổng NAND cuối bằng hai cổng NAND 3 ngã vào, ta được FF RS có ngã vào  
Preset (Pr) và Clear (Cl).  
- Khi ngã Pr xuống thấp (tác động) và ngã Cl lên cao ngã ra Q lên cao bất chấp các  
ngã vào còn lại.  
- Khi ngã Cl xuống thấp (tác động) và ngã Pr lên cao ngã ra Q xuống thấp bất chấp  
các ngã vào còn lại.  
- Ngoài ra 2 ngã vào Pr và Cl còn được đưa về 2 ngã vào một cổng AND, nơi đưa tín  
hiệu CK vào, mục đích của việc làm này là khi một trong 2 ngã vào Pr hoặc Cl tác động thì  
mức thấp của tín hiệu này sẽ khóa cổng AND này, vô hiệu hóa tác dụng của xung CK.  
Bảng sự thật của FF RS có Preset và Clear (tác động thấp) cho ở bảng 5.5  
Pr  
0
0
1
1
1
1
1
1
Cl  
0
1
0
1
1
1
1
1
CK  
x
x
x
0
1
1
1
1
S
x
x
x
x
0
0
1
1
R
x
x
x
x
0
1
0
1
Q+  
Cấm  
1
0
Q
Q
0
1
Cấm  
Bảng 5.5  
Lưu ý: Trên bảng 5.5, dòng thứ nhất tương ứng với trạng thái cấm vì hai ngã vào Pr và Cl  
đồng thời ở mức tác động, 2 cổng NAND cuối cùng đều đóng, nên Q+=Q=1.  
5.1.2.2. Flipflop RS chủ tớ:  
Kết nối thành chuỗi hai FF RS với hai ngã vào xung CK của hai FF có mức tác động  
trái ngược nhau, ta được FF chủ tớ (H 5.7).  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 5  
(H 5.7)  
Hoạt động của FF được giải thích như sau:  
- Do CKS của tầng tớ là đảo của CKM = CK của tầng chủ nên khi CK=1, tầng chủ giao  
hoán thì tầng tớ ngưng. Trong khoảng thời gian này, dữ liệu từ ngã vào R và S được đưa ra  
và ổn định ở ngã ra R’ và S’ của tầng chủ, tại thời điểm xung CK xuống thấp, R’ và S’ được  
truyền đến ngã ra Q và Q (H 5.8)  
(H 5.8)  
- Đối với trường hợp R = S =1 khi CK=1 thì R’= S’ =1, nhưng khi CK xuống thấp thì  
một trong hai ngã ra này xuống thấp, do đó mạch thoát khỏi trạng thái cấm, nhưng S’ hay R’  
xuống thấp trước thì không đoán trước được nên mạch rơi vào trạng thái bất định, nghĩa là Q+  
có thể =1 có thể =0, nhưng khác với Q +. Ta có bảng sự thật:  
S
0
0
1
1
R
0
1
0
1
CK  
Q+  
Q
0
1
↓
↓
↓
↓
Bất định  
Bảng 5.6  
Tóm lại, FF RS chủ tớ đã thoát khỏi trạng thái cấm nhưng vẫn rơi vào trạng thái bất  
định, đồng thời ta được FF có ngã vào xung đồng hồ tác động bởi cạnh xuống của tín hiệu CK.  
Để có FF RS có ngã vào xung đồng hồ tác động bởi cạnh lên của tín hiệu CK ta có thể  
dời cổng NOT đến ngã vào FF chủ và cho tín hiệu CK vào thẳng FF tớ.  
Mặc dù thoát khỏi trạng thái cấm nhưng FF RS chủ tớ vẫn còn trạng thái bất định nên  
người ta ít sử dụng FF RS trong trường hợp R=S.  
5.1.3 Flipflop JK  
FF JK được tạo ra từ FF RS theo sơ đồ như (H 5.9a).  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 6  
(a)  
(b)  
(H 5.9)  
(H 5.9b) là ký hiệu FF JK có ngã vào Pr và Cl tác động thấp.  
Bảng sự thật 5.7 (Để đơn giản, ta bỏ qua các ngã vào Pr và Cl)  
J
K
Q
R=KQ CK  
Q+  
J
K
CK  
Q+  
Q
S=J Q  
0
0
0
0
0
0
1
1
0
1
0
1
1
0
1
0
0
0
0
0
0
0
0
1
Q
Q
Q=0  
0
0
0
1
1
0
1
0
1
Q
0
1
↓
↓
↓
↓
↓
↓
↓
↓
Q
1
1
1
1
0
0
1
1
0
1
0
1
1
0
1
0
1
0
1
0
0
0
0
1
1
Q=1  
1
0
Bảng 5.8  
↓
↓
↓
↓
Bảng 5.7  
B ảng 5.8 là bảng rút gọn, suy ra từ bảng 5.7  
Kết quả từ bảng 5.8 cho thấy:  
FF JK đã thoát khỏi trạng thái cấm và thay vào đó là trạng thái đảo (khi J=K=1 thì  
Q+= Q ). Người ta lợi dụng trạng thái đảo này để thiết kế mạch đếm  
5.1.4 FlipFlop D  
Thiết kế từ FF RS (hoặc JK) bằng cách nối một cổng đảo từ S qua R (hoặc từ J qua  
K). Dữ liệu được đưa vào ngã S (J) mà bây giờ gọi là ngã vào D (H 5.10a&b) và bảng 5.9 cho  
thấy các trạng thái của FF, cụ thể là mỗi khi có xung CK tác động dữ liệu từ ngã vào sẽ xuất  
hiện ở ngã ra.  
(a)  
(b)  
(c)  
(H 5.10)  
D
CK Q+  
T
CK  
Q+  
0
1
0
1
0
1
↓
↓
Q
Q
↓
↓
Bảng 5.9  
Bảng 5.10  
5.1.5 FlipFlop T  
Nối chung hai ngã vào J và K của FF JK ta được FF T (H 5.10c). Tính chất của FF T  
thể hiện trong bảng sự thật 5.10:  
- Khi T=0, FF không đổi trạng thái dù có tác động của CK.  
- Khi T=1, FF đổi trạng thái mỗi lần có xung CK tác động.  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 7  
5.1.6 Mạch chốt D  
Mạch chốt D hoạt động giống FF D, chỉ khác ở điểm ngã vào xung đồng hồ CK được  
thay bằng ngã vào cho phép G, và tác động bằng mức chứ không bằng cạnh (H  
5.11) và Bảng 5.11.  
(H 5.11)  
Bảng 5.11  
5.2 MẠCH GHI DỊCH  
5.2.1 Sơ đồ nguyên tắc và vận chuyển (H 5.12)  
(H 5.12)  
(H 5.12) là sơ đồ một mạch ghi dịch 4 bit đơn giản, mạch gồm 4 FF D nối thành chuỗi  
(ngã ra Q của FF trước nối vào ngã vào D của FF sau) và các ngã vào CK được nối chung lại  
(các FF chịu tác động đồng thời). Mạch ghi dịch này có khả năng dịch phải.  
Ngã vào DA của FF đầu tiên được gọi là ngã vào dữ liệu nối tiếp, các ngã ra QA, QB,  
QC, QD là các ngã ra song song, ngã ra của FF cuối cùng (FF D) là ngã ra nối tiếp .  
Trước khi cho mạch hoạt động, tác dụng một xung xóa vào các ngã vào Cl (đưa các  
chân Cl đã được nối chung xuống thấp rồi lên cao) để các ngã ra QA = QB = QC = QD = 0.  
Cho dữ liệu vào DA, sau mỗi xung đồng hồ, dữ liệu từ tầng trước lần lượt truyền qua  
tầng sau. (Giả sử DA là chuỗi dữ liệu gồm 3 bit cao, 2 bit thấp rồi 1 cao và 1 thấp), trạng thái  
các ngã ra của các FF cho ở Bảng 5.12  
Vào  
CK  
x
Ra  
Cl  
0
1
1
1
1
1
1
1
DA  
x
1
1
1
0
0
1
0
QA QB QC QD  
0
1
1
1
0
0
1
0
0
0
1
1
1
0
0
1
0
0
0
1
1
1
0
0
0
0
0
0
1
1
1
0
↓
↓
↓
↓
↓
↓
↓
Bảng 5.12  
Các mạch ghi dịch được phân loại tùy vào số bit (số FF), chiều dịch (phải/trái), các ngã  
vào/ra (nối tiếp/song song).  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 8  
Để có mạch dịch trái, dữ liệu nối tiếp đưa vào ngã vào D của FF cuối cùng và các ngã ra  
của FF sau nối ngược trở lại ngã vào của FF trước (H 5.13)  
(H 5.13)  
Cho dữ liệu nối tiếp vào ngã vào D của FF 4, sau mỗi xung đồng hồ, dữ liệu truyền từ  
tầng sau ra tầng trước. Giả sử chuỗi dữ liệu giống như trên, trạng thái các ngã ra của các FF  
cho ở bảng 5.13  
Vào  
CK  
x
↓
↓
↓
↓
↓
↓
Ra  
Cl  
0
1
1
1
1
1
1
1
D4  
x
1
1
1
0
0
1
0
Q1 Q2 Q3 Q4  
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
1
0
1
1
1
0
0
1
0
↓
Bảng 5.13  
5.2.2 Vài IC ghi dịch tiêu biểu  
Trên thị trường hiện có khá nhiều loại IC ghi dịch, có đầy đủ các chức năng dịch phải  
trái, vào/ra nối tiếp, song song. Sau đây, chúng ta khảo sát 2 IC tiêu biểu:  
- IC 74164: dịch phải 8 bit;  
- IC 7495: 4 bit , dịch phải, trái, vào/ra nối tiếp/song song .  
5.2.2.1. IC 74164:  
(H 5.14)  
MR : Master Reset, đây cũng là chân Clear của cả mạch, tác động thấp  
CP: Clock pulse, ngã vào xung đồng hồ tác động cạnh lên.  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 9  
5.2.2.2. IC 7495:  
(H 5.15)  
Ý nghĩa các chân:  
S: Mode control input Ds: Serial Data input  
P0 - P3 : Parrallel data inputs  
CP1 : Serial Clock  
CP2 : Parrallel clock  
Q0 - Q3 : Parrallel outputs  
Dươi đây là các bước thao tác để thực hiện các chức năng của IC  
’ Nạp dữ liệu song song  
- Chuẩn bị dữ liệu ở các ngã vào P0 - P3  
- Cho S = 1, dữ liệu được đưa vào các ngã vào của các FF, CP1 bị khóa, CP2 là ngã  
vào CK, dữ liệu xuất hiện ở ngã ra Q0 - Q3 khi có cạnh xuống của CK  
’ Dịch phải  
- Sau khi đã nạp dữ liệu song song - Chuẩn bị dữ liệu nối tiếp.  
- Cho S = 0  
- Đưa dữ liệu nối tiếp vào ngã vào Ds, CP2 bị khóa, CP1 là ngã vào CK, khi CK tác  
động, dữ liệu sẽ dịch phải từng bit một trên các ngã ra Q0 - Q3  
’ Dịch trái  
- Nối ngã ra FF sau vào ngã vào song song của FF trước - P3 là ngã vào nối tiếp  
- S = 1 để cách ly ngã ra FF trước với ngã vào FF sau  
- CP2 là ngã vào xung CK, dữ liệu sẽ dịch trái ứng với cạnh xuống của CK.  
Lưu ý: Mặc dù có 2 ngã vào cho xung CK nhưng khi sử dụng chúng thường được nối chung  
lại, lý do là vì ứng với một trạng thái của tín hiệu điều khiển S chỉ có một trong hai cổng  
AND mở để cho tín hiệu CK đi qua.  
5.2.3. Ứng dụng của ghi dịch  
Ghi dịch có khá nhiều ứng dụng:  
- Một số nhị phân khi dịch trái 1 bit, giá trị được nhân lên gấp đôi và được chia hai khi  
dịch phải một bit.  
Thí dụ số 1010.00 = 1010 khi dịch trái thành 10100.0 = 2010 và khi dịch phải thành  
101.000 = 510.  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 10  
- Trong máy tính thanh ghi (tên thường gọi của mạch ghi dịch) là nơi lưu tạm dữ liệu  
để thực hiện các phép tính, các lệnh cơ bản như quay, dịch ....  
- Ngoài ra, mạch ghi dịch còn những ứng dụng khác như: tạo mạch đếm vòng, biến  
đổi dữ liệu nối tiếp ↔ song song, dùng thiết kế các mạch đèn trang trí, quang báo. . . ..  
5.3 MẠCH ĐẾM  
Lợi dụng tính đảo trạng thái của FF JK khi J=K=1, người ta thực hiện các mạch đếm.  
Chức năng của mạch đếm là đếm số xung CK đưa vào ngã vào hoặc thể hiện số trạng  
thái có thể có của các ngã ra.  
Nếu xét khía cạnh tần số của tín hiệu thì mạch đếm có chức năng chia tần, nghĩa là tần  
số của tín hiệu ở ngã ra là kết quả của phép chia tần số của tín hiệu CK ở ngã vào cho số đếm  
của mạch.  
Ta có các loại: mạch đếm đồng bộ, không đồng bộ và đếm vòng.  
5.3.1 Mạch đếm đồng bộ  
Trong mạch đếm đồng bộ các FF chịu tác động đồng thời của xung đếm CK.  
5.3.1.1 Mạch đếm đồng bộ n tầng, đếm lên  
Để thiết kế mạch đếm đồng bộ n tầng (lấy thí dụ n=4), trước tiên lập bảng trạng thái,  
quan sát bảng trạng thái suy ra cách mắc các ngã vào JK của các FF sao cho mạch giao hoán  
tạo các ngã ra đúng như bảng đã lập. Giả sử ta dùng FF tác động bởi cạnh xuống của xung CK  
(Thật ra, kết quả thiết kế không phụ thuộc vào chiều tác động của xung CK, tuy nhiên điều này  
phải được thể hiện trên mạch nên ta cũng cần lưu ý). Với 4 FF mạch đếm được 24=16 trạng  
thái và số đếm được từ 0 đến 15. Ta có bảng trạng thái:  
Ck  
Xóa  
1↓  
2↓  
3↓  
4↓  
5↓  
6↓  
7↓  
QD  
0
0
0
0
0
0
0
0√  
1
1
1
1
1
1
1
1√  
0
QC  
0
0
0
0√  
1
1
1
1√  
0
0
0
0√  
1
1
1
QB  
0
0√  
1
1√  
0
0√  
1
1√  
0
0√  
1
1√  
0
QA  
Số đếm  
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
2
3
4
5
6
7
8
9
8↓  
9↓  
10  
11  
12  
13  
14  
15  
0
10↓  
11↓  
12↓  
13↓  
14↓  
15↓  
16↓  
0√  
1
1√  
0
1√  
0
Bảng 5.14  
Nhận thấy:  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 11  
- FF A đổi trạng thái sau từng xung CK, vậy:  
TA = JA = KA = 1  
- FF B đổi trạng thái nếu trước đó QA = 1, vậy TB = JB = KB = QA  
- FF C đổi trạng thái nếu trước đó QA = QB = 1, vậy: TC = JC = KC = QA.QB  
- FF D đổi trạng thái nếu trước đó QA=QB=QC=1, vậy:  
TD = JD = KD = QA.QB.QC = TC.QC  
Ta được kết quả ở (H 5.16)  
(H 5.16)  
5.3.1.2 Mạch đếm đồng bộ n tầng, đếm xuống  
Bảng trạng thái:  
Ck  
Xóa  
1↓  
2↓  
3↓  
4↓  
5↓  
6↓  
7↓  
QD  
QC  
0√  
1
1
1
1√  
0
0
0
0√  
1
1
1
1√  
0
0
QB  
0√  
1
1√  
0
0√  
1
1√  
0
0√  
1
1√  
0
0√  
1
QA  
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
Số đếm  
0√  
1
1
1
1
1
1
1
1√  
0
0
0
0
0
0
0
0
0
15  
14  
13  
12  
11  
10  
9
8
7
6
5
8↓  
9↓  
10↓  
11↓  
12↓  
13↓  
14↓  
15↓  
16↓  
4
3
2
1
1√  
0
0
0
0
0
Bảng 5.15  
Nhận thấy:  
- FF A đổi trạng thái sau từng xung CK, vậy:  
- FF B đổi trạng thái nếu trước đó QA = 0, vậy:  
TA = JA = KA = 1  
TB = JB = KB = QA  
- FF C đổi trạng thái nếu trước đó QA=QB=0, vậy: TC = JC = KC = QA QB  
- FF D đổi trạng thái nếu trước đó QA = QB = QC= 0, vậy:  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 12  
TD = JD = KD = QA .QB .QC = TC. QC  
Ta được kết quả ở (H 5.17)  
(H 5.17)  
5.3.1.3 Mạch đếm đồng bộ n tầng, đếm lên/ xuống  
Để có mạch đếm n tầng, đếm lên hoặc xuống ta dùng một đa hợp 2→1 có ngã vào  
điều khiển C để chọn Q hoặc Q đưa vào tầng sau qua các cổng AND. Trong mạch (H 5.18)  
dưới đây khi C=1 mạch đếm lên và khi C=0 mạch đếm xuống.  
(H 5.18)  
5.3.1.4 Tần số hoạt động lớn nhất của mạch đếm đồng bộ n tầng:  
Trong mạch (H 5.16) ta cần 2 cổng AND. Trong trường hợp tổng quát cho n tầng, số  
cổng AND là (n-2) như vậy thời gian tối thiểu để tín hiệu truyền qua mạch là:  
Tmin = TPFF + TP.AND(n-2)  
Tần số cực đại xác định bởi:  
1
1
fmax  
=
=
Tmin  
t PFF + (n − 2)T PAND  
Để gia tăng tần số làm việc của mạch, thay vì dùng các cổng AND 2 ngã vào ta phải  
dùng cổng AND nhiều ngã vào và mắc theo kiểu:  
TA = JA = KA = 1  
TB = JB = KB = QA  
TC = JC = KC = QA.QB  
TD = JD = KD = QA.QB.QC  
Như vậy tần số làm việc không phụ thuộc vào n và bằng:  
1
f max  
=
T PFF + T PAND  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 13  
5.3.1.5 Mạch đếm đồng bộ Modulo - N (N ≠ 2n)  
Để thiết kế mạch đếm modulo - N, trước nhất ta phải chọn số tầng.  
Số tầng n phải thỏa điều kiện:  
2n-1 < N < 2n  
Thí dụ thiết kế mạch đếm 10 (N = 10).  
2
4-1 < 10 < 24 .  
Vậy số tầng là 4  
Có nhiều phương pháp thiết kế mạch đếm đồng bộ modulo-N.  
Sau đây ta khảo sát hai phương pháp : dùng hàm Chuyển và MARCUS  
’ Phương pháp dùng hàm Chuyển (Transfer function)  
Hàm Chuyển là hàm cho thấy có sự thay đổi trạng thái của FF. Mỗi loại FF có một  
hàm Chuyển riêng của nó.  
Hàm Chuyển được định nghĩa như sau: hàm có trị 1 khi có sự thay đổi trạng thái của  
FF (Q+ ≠ Q) và trị 0 khi trạng thái FF không đổi (Q+ = Q).  
Chúng ta chỉ thiết kế mạch đếm dùng FF JK do đó ta chỉ xác định hàm Chuyển của  
loại FF này.  
Bảng trạng thái của FF JK (Bảng 5.16)  
CK  
↓
↓
↓
↓
↓
↓
↓
↓
J
0
0
K
0
0
Q
0
1
Q+  
0
1
H
0
0
0
0
1
1
0
1
0
0
0
1
1
1
0
0
0
1
1
1
1
0
1
1
1
1
0
1
1
0
1
1
Bảng 5.16  
Dùng Bảng Karnaugh ta suy ra được biểu thức của H: H = JQ + KQ  
Để thiết kế mạch đếm cụ thể ta sẽ xác định hàm H cho từng FF trong mạch, so sánh  
với biểu thức của hàm H suy ra J, K của các FF. Dưới đây là một thí dụ.  
Thiết kế mạch đếm 10 đồng bộ dùng FF JK  
Bảng trạng thái của mạch đếm 10 và giá trị của các hàm H tương ứng:  
CK  
QD QC QB QA QD QC QB QA HD HC HB HA  
+
0
0
0
0
0
0
0
1
+
0
0
0
1
1
1
1
0
+
0
1
1
0
0
1
1
0
+
1
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
1
0
1
0
1
1
1
1
1
1
1
1
1
1↓  
2↓  
3↓  
4↓  
5↓  
6↓  
7↓  
8↓  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 14  
1
1
0
0
0
0
0
1
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
1
9↓  
10↓  
Bảng 5.17  
Từ bảng 5.17, ta thấy:  
HA =1=QA +QA ⇒J =KA =1  
A
Để xác định HB, HC và HD ta phải vẽ bảng Karnaugh  
HB = QDQA QB + QDQA QB  
H C = QBQA QC + QBQA QC  
HD = QCQBQA QD + QA QD  
⇒ JD = QCQBQA ,KD = QA  
⇒ JC = KC = QBQA  
⇒ J = KB = QDQA  
B
(H 5.19)  
Ghi chú: Trong kết quả của hàm H ta muốn có chứa Q và  
tương ứng để suy ra  
Q
ngay các trị J và K nên ta đã chia bảng Karnaugh ra làm 2 phần chứa Q và  
và nhóm  
Q
riêng từng phần này.  
Từ các kết quả này, ta vẽ được mạch (H 5.20)  
(H 5.20)  
Bây giờ ta có thể kiểm tra xem nếu như vì một lý do nào đó, số đếm rơi vào các trạng  
thái không sử dụng (tương ứng với số từ 10 đến 15) thì khi có xung đồng hồ trạng thái tiếp  
theo sẽ như thế nào ? Mạch có quay về để đếm tiếp ?  
Áp dụng các hàm chuyển có được, ứng với mỗi trạng thái Q của từng FF trong các tổ  
hợp không sử dụng, ta tìm trị H tương ứng rồi suy ra Q+, ta được bảng kết quả sau:  
CK  
QD QC QB QA HD HC HB HA QD QC QB QA  
+
1
0
1
0
+
0
1
1
1
+
1
1
0
0
+
1
0
1
0
1
1
1
1
1
1
0
0
1
1
1
1
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
1
1
1
1
1
↓
↓
↓
↓
↓
↓
1
0
1
0
1
1
1
0
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 15  
Bảng 5.18  
Từ bảng kết quả ta có kết luận:  
- Khi ngã ra rơi vào trạng thái 1010 (1010), nó sẽ nhảy tiếp vào trạng thái 1110 (1011)  
rồi sau đó nhảy về 610 (0110) (Dòng 1 và 2)  
- Khi ngã ra rơi vào trạng thái 1210 (1100), nó sẽ nhảy tiếp vào trạng thái 1310 (11 01)  
rồi sau đó nhảy về 410 (0100) (Dòng 3 và 4)  
- Khi ngã ra rơi vào trạng thái 1410 (1110), nó sẽ nhảy tiếp vào trạng thái 1510 (1111)  
rồi sau đó nhảy về 210 (0010) (Dòng 5 và 6).  
Tóm lại, nếu có một sự cố xảy ra làm cho số đếm rơi vào các trạng thái không sử dụng  
thì sau 1 hoặc 2 số đếm nó tự động quay về một trong các số đếm từ 0 đến 9 rồi tiếp tục đếm  
bình thường.  
’ Phương pháp MARCUS  
Phương pháp MARCUS cho phép xác định các biểu thức của J và K dựa vào sự thay  
đổi của Q+ so với Q  
Từ bảng trạng thái của FF JK (Bảng 5.7) ta có thể viết lại Bảng 5.19:  
Q
0
0
1
1
Q+  
0
1
0
1
J
0
1
x
x
K
x
x
1
0
Bảng 5.19  
Để thiết kế mạch, ta so sánh Q+ và Q để có được bảng sự thật cho J, K của từng FF,  
sau đó xác định J và K.  
Thí dụ thiết kế lại mạch đếm 10 bằng phương pháp MARCUS  
Bảng sự thật cho J, K của từng FF  
CK  
1↓  
2↓  
3↓  
4↓  
5↓  
6↓  
7↓  
8↓  
9↓  
10↓  
QD QC QB QA  
JD  
0
0
0
0
0
0
0
1
x
x
KD  
x
x
x
x
x
x
x
x
0
1
JC  
0
0
0
1
x
x
x
x
0
0
KC  
x
x
x
x
0
0
0
1
x
x
JB  
0
1
x
x
0
1
x
x
0
0
KB  
x
x
0
1
x
x
0
1
x
x
JA  
1
x
1
x
1
x
1
x
1
x
KA  
x
1
x
1
x
1
x
1
x
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
1
0
0
1
1
0
0
0
1
0
0
1
1
1
1
0
1
1
1
0
0
0
0
0
1
Bảng 5.20  
Ghi chú: Trong bảng 5.20, không có các cột cho Q+, tuy nhiên ta có thể thấy ngay là dòng  
bên dưới chính là Q+ của dòng bên trên, như vậy kết quả có được từ sự so sánh dòng trên và  
dòng ngay dưới nó.  
Ta thấy ngay  
JA = KA = 1  
Dùng bảng Karnaugh để xác định các hàm còn lại  
Nhận thấy các FF B và C có thể xác định chung cho J và K (cùng vị trí 1 và x), FF D  
được xác định J và K riêng  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 16  
J = KB = QDQA  
JC=KC=QB.QA  
(H 5.21)  
JD=QC.QB.QA  
KD=QA  
B
Ta được lại kết quả trên.  
Trên thị trường có khá nhiều IC đếm:  
- 4 bit BCD: 74160, 74162, 74190, 74192, 4192, 4510, 4518. . ..  
- 4 bit nhị phân: 74161, 74163, 74191, 74193, 4193, 4516, 4520. . ..  
- 8 bit nhị phân: 74269, 74579, 74779. . ..  
5.3.2 Mạch đếm không đồng bộ  
Là các mạch đếm mà các FF không chịu tác động đồng thời của xung CK.  
Khi thiết kế mạch đếm không đồng bộ ta phải quan tâm tới chiều tác động của xung  
đồng hồ CK.  
5.3.2.1. Mạch đếm không đồng bộ, n tầng, đếm lên (n=4):  
Từ bảng trạng thái 5.14 của mạch đếm 4 bit, ta thấy nếu dùng FF JK tác động bởi  
cạnh xuống của xung đồng hồ thì có thể lấy ngã ra của tầng trước làm xung đồng hồ CK cho  
tầng sau, với điều kiện các ngã vào JK của các FF đều được đưa lên mức cao. Ta được mạch  
đếm không đồng bộ, 4 bít, đếm lên (H 5.22).  
(H 5.22)  
(H 5.23) là dạng tín hiệu xung CK và các ngã ra của các FF  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 17  
(H 5.23)  
Tổ hợp các số tạo bởi các ngã ra các FF D, C, B, A là số nhị phân từ 0 đến 15  
5.3.2.2. Mạch đếm không đồng bộ, n tầng, đếm xuống (n=4):  
Để có mạch đếm xuống ta nối Q (thay vì Q) của tầng trước vào ngã vào CK của tầng  
sau. (H 5.24) là mạch đếm xuống 4 tầng.  
Dạng sóng ở ngã ra các FF và số đếm tương ứng cho ở (H 5.25)  
(H 5.24)  
(H 5.25)  
Quan sát tín hiệu ra ở các Flipflop ta thấy sau mỗi FF tần số của tín hiệu ra giảm đi  
một nửa, nghĩa là:  
fCK  
fQ  
=
A
2
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 18  
f
fCK fCK  
QA  
fQ  
fQ  
fQ  
=
=
=
=
=
=
=
22  
fCK fCK  
4
B
C
D
2
f
f
QA  
=
4
23  
fCK fCK  
8
QA  
=
8
24  
16  
Như vậy xét về khía cạnh tần số, ta còn gọi mạch đếm là mạch chia tần.  
5.3.2.3. Mạch đếm không đồng bộ, n tầng, đếm lên, xuống (n=4):  
Để có mạch đếm lên hoặc đếm xuống người ta dùng các mạch đa hợp 2→1 với ngã  
vào điều khiển C chung để chọn Q hoặc Q của tầng trước nối vào CK tầng sau tùy theo yêu  
cầu về cách đếm.  
Trong (H 5.26) , khi C =1, Q nối vào CK , mạch đếm lên và khi C = 0, Q nối vào CK ,  
mạch đếm xuống  
c = 0 : đếm xuống  
(H 5.26)  
c = 1 : đếm lên  
Trên thực tế , để đơn giản, ta có thể thay đa hợp 2→1 bởi một cổng EX-OR, ngã điều  
khiển C nối vào một ngã vào cổng EX-OR, ngã vào còn lại nối với ngã ra Q của FF và ngã ra  
của cổng EX-OR nối vào ngã vào CK của FF sau, mạch cũng đếm lên/xuống tùy vào C=0 hay  
C=1.  
c = 1 : đếm xuống  
(H 5.27)  
c = 0 : đếm lên  
5.3.2.4. Mạch đếm không đồng bộ modulo - N (N=10)  
’ Kiểu Reset:  
Để thiết kế mạch đếm kiểu Reset, trước nhất người ta lập bảng trạng thái cho số đếm  
(Bảng 5.21)  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 19  
Quan sát bảng 5.21 ta thấy ở xung thứ 10, nếu theo cách đếm 4 tầng thì QD và QB phải  
lên 1. Lợi dụng hai trạng thái này ta dùng một cổng NAND 2 ngã vào để đưa tín hiệu về xóa  
các FF, ta được mạch đếm ở (H 5.28).  
Số xung CK vào  
Số  
QD  
Nhị  
QC  
Phân  
QB  
Ra  
QA  
Số thập phân  
tương ứng  
Xóa  
1
2
3
4
5
6
7
8
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
1
1
0
0
0
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
0
1
2
3
4
5
6
7
8
9
10  
1
0(1)  
0
0(1)  
9
10  
Bảng 5.21  
(H 5.28)  
Mạch đếm kiểu Reset có khuyết điểm như:  
- Có một trạng thái trung gian trước khi đạt số đếm cuối cùng.  
- Ngã vào Cl không được dùng cho chức năng xóa ban đầu.  
’ Kiểu Preset:  
Trong kiểu Preset các ngã vào của các FF sẽ được đặt trước thế nào để khi mạch đếm  
đến trạng thái thứ N thì tất cả các FF tự động quay về không.  
Để thiết kế mạch đếm không đồng bộ kiểu Preset, thường người ta làm như sau:  
- Phân tích số đếm N = 2n.N’ (N’<N) rồi kết hợp hai mạch đếm n bit và N’. Việc thiết  
kế rất đơn giản khi số N' << N  
- Quan sát bảng trạng thái và kết hợp với phương pháp thiết kế mạch đếm đồng bộ  
(MARCUS hay hàm chuyển) để xác định JK của các FF.  
Thí dụ, để thiết kế mạch đếm 10, ta phân tích 10=2x5 và ta chỉ cần thiết kế mạch đếm  
5 rồi kết hợp với một FF (đếm 2)  
Bảng trạng thái của mạch đếm 5.  
Số xung CK Số Nhị Phân  
Ra  
QB  
0
Số thập phân  
tương ứng  
0
vào  
QD  
QC  
Xóa  
0
0
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
______________________________________________________Chương 5  
Mạch tuần tự V - 20  
1
2
3
4
5
0
0
0
1
0
0
1
1
0
1
0
1
0
0
1
2
3
4
0
0
Bảng 5.22  
Giả sử dùng FF JK có xung CK tác động cạnh xuống.  
Từ bảng 5.21, ta thấy có thể dùng tín hiệu ngã ra FF B làm xung đồng hồ cho FF C và  
đưa JC và KC lên mức cao:  
CKC= QB. ;  
Các FF B và D sẽ dùng xung CK của hệ thống và các ngã vào JK được xác định nhờ  
hàm chuyển:  
JC=KC=1  
CK  
1↓  
2↓  
3↓  
4↓  
5↓  
QD  
0
0
0
0
1
0
QC  
0
0
1
1
0
0
QB HD HB  
0
1
0
0
1
1
0
1
0
1
1
1
0
0
1
0
Bảng 5.23  
Dùng bảng Karnaugh xác định HD và HB rồi suy ra các trị J, K của các FF.  
H D = QC.QB QD + QD  
H B = QD QB + QB  
⇒ JD = QC.QB ; KD=1  
⇒ J = QD ; KB=1  
B
(H 5.29)  
Có thể xác định J, K của các FF B và D bằng phương pháp MARCUS:  
CK  
1↓  
2↓  
3↓  
4↓  
5↓  
QD  
0
0
0
0
1
0
QC  
0
0
1
1
0
0
QB  
0
1
0
1
0
0
JD  
0
0
0
1
x
KD  
x
x
x
x
1
JB  
1
x
1
x
0
KB  
x
1
x
1
x
Bảng 5.24  
Ta có ngay KD=KB=1  
Dùng bảng Karnaugh xác định JD và JB  
Nguyễn Trung Lập  
KỸ THUẬT SỐ  
Tải về để xem bản đầy đủ
pdf 26 trang Mãnh Khiết 12/01/2024 19540 Free
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Kỹ thuật số - Chương 5: Mạch tuần tự", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_ky_thuat_so_chuong_5_mach_tuan_tu.pdf