Transcript Document

CHƯƠNG 5
MẠCH TUẦN TỰ
 CHỐT RS
 FLIPFLOP
 MẠCH GHI DỊCH
 MẠCH ĐẾM
Chương 5: Mạch tuần tự
1
 MẠCH TUẦN TỰ
Mạch tuần tự: Trạng thái ngõ ra không những phụ thuộc vào trạng thái của ngõ
vào mà còn phụ thuộc vào trạng thái của ngõ ra trước đó (được hồi tiếp trở thành
ngõ vào thông qua phần tử nhớ)  ta nói mạch tuần tự có tính nhớ.
Q+=f(Q, A, B, C, D,…)
Ngõ ra Q+ là hàm logic của các biến ngõ vào và ngõ ra Q trước đó.
Mạch tuần tự: Chia làm 2 loại
• Mạch đồng bộ: Xung đồng hồ CK tác động đồng thời, trạng thái ngõ ra không
thay đổi ngay sau khi trạng thái ngõ vào thay đổi mà phải đợi đến khi xuất
hiện một xung lệnh.
• Mạch không đồng bộ: Xung đồng hồ CK tác động không đồng thời, trạng thái
ngõ ra thay đổi ngay sau khi trạng thái ngõ vào thay đổi (với độ trì hoãn
truyền nào đó).
* Phần tử cơ bản tạo thành mạch tuần tự là Flip-Flop (FF – Mạch lật).
Chương 5: Mạch tuần tự
2
 FLIPFLOP
- FF cũng có thể có thêm ngõ vào với chức năng khác
Chương 5: Mạch tuần tự
3
 FLIPFLOP
- FF được tạo nên từ mạch chốt (Latch): Chốt là cài lại, giữ lại.
- Điểm khác nhau giữa mạch chốt và FF: FF thì chịu sự tác động
của xung CK, còn mạch chốt thì không.
Mạch chốt + Xung CK  Mạch Flip-Flop
1. Chốt RS
Có 2 loại: Chốt cổng NOR và chốt cổng NAND
Chương 5: Mạch tuần tự
4
a. Chốt RS tác động mức cao có ngã vào R và S tác động mức cao.
(Dùng cổng NOR)
R S Q Q+
Trạng thái
0 0 0 0 1
Tác dụng nhớ
0 0 1 1 0
Q+ = Q
Ký hiệu
R
S
Q+
0
0
1
1
0
1
0
1
Q
1
0
Cấm
0
0
1
1
0
1
1
1
0
0
Đặt (Set)
Q+ = 1
1
1
0
0
0
1
0
0
1
1
Đặt lại (Reset)
Q+ = 0
1
1
1
1
0
1
0
0
0
0
Ngõ ra Q ban đầu là trạng thái giả sử
Chương 5: Mạch tuần tự
5
b. Chốt RS tác động mức thấp có ngã vào R và S tác động mức thấp.
Dùng cổng NAND
Tính chất của cổng NAND: có 1
ngõ vào = 0  Ngõ ra Y=1
Để 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.
Ký hiệu
R S
Q+
Tr thái
0
0
1
1
1
1
0
Q
Cấm
0
1
0
1
0
1
Giữ
Chương 5: Mạch tuần tự
6
2. Flip-Flop RS
Chốt RS + Xung CK  FF-RS: Mạch hoạt động có tính đồng bộ, ngõ ra thay đổi
trạng thái có trật tự
a. FF- RS có xung CK tác động mức cao
Vào
Ra
CK
S
R
Q+
TT
0
1
1
1
1
x
0
0
1
1
x
0
1
0
1
Q
Q
0
1
1
Giữ
Giữ
Cấm
FF- RS có xung CK tác động mức cthấp
- Khi CK=1, bất chấp R, S:
Ngõ ra giữ trạng thái,
- Khi CK=0: Mạch mới tác
động.
7
Chương 5: Mạch tuần tự
b. Flip Flop RS có ngã vào Preset và Clear
Khi vừa cấp điệnn ngõ ra FF ở trạng thái ngẫu nhiên nào đó. Để áp đặt trước trạng thái
nhất định cho ngõ ra, ta thêm vào FF các ngõ vào Preset và Clear. Có thể đặt trước Q
= 1 (Preset) hoặc Q = 0 (Clear).
Pr
Cl
CK
S
R
Q+
0
0
1
1
1
1
1
1
0
1
0
1
1
1
1
1
x
x
x
0
1
1
1
1
x
x
x
x
0
0
1
1
x
x
x
x
0
1
0
1
1
1
0
Q
Q
0
1
1
Chương 5: Mạch tuần tự
Cấm
Giữ
Giữ
Cấm
8
c. Flip Flop RS chủ tớ: Để khắc phục trạng thái cấp của RS-FF
S R CK
0
0
1
1
0
1
0
1
Chương 5: Mạch tuần tự




Q+
Q
0
1
Bất định
9
d. Flip Flop JK
JK-FF được tạo ra từ FF-RS
J
K
Q
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
R=
CK
KQ
1
0
1
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
1
0
0
0
1








Q+
TT
Q=0
Q=1
Q=0
0
1
Q=1
1
0
Giữ
Giữ
Giữ
Reset
Set
Giữ
Set
Reset
Chương 5: Mạch tuần tự
J
K
CK
0
0
1
1
0
1
0
1




Q+
10
D CK Q+
e. Flip Flop D
0
1


0
1
1
0
g. Mạch chốt D
f. Flip Flop T
T C K Q+
TT


Giữ
Đảo
0
1
G
D
Q+
0
1
1
x
0
1
Q
0
1
Chốt D giống FF-D, Xung CK được
thay bằng ngõ vào cho phép G
Chương 5: Mạch tuần tự
11
3. Mạch ghi dịch(Shift Register)
Do mỗi FF có khả năng nhớ 1 bit ở ngõ ra cho đến khi có 1 xung CK
tác động nên người ta mắc nối tiếp nhiều FF lại để tạo thành mạch
ghi dịch  sẽ nhớ được nhiều bit.
- Mạch dịch phải: Ta mắc 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.
Chương 5: Mạch tuần tự
12
Mạch dịch phải
Vào
Ra
Cl
CK
DA
QA
QB
QC
QD
0
1
1
1
1
1
1
1
x







x
1
1
1
0
0
1
0
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
Chương 5: Mạch tuần tự
13
Mạch dịch trái
Vào
Ra
Cl
CK
D4
QA
QB
QC
QD
0
1
1
1
1
1
1
1
x







x
1
1
1
0
0
1
0
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
Chương 5: Mạch tuần tự
14
IC 74164
IC 7495
Chương 5: Mạch tuần tự
15
 MẠCH ĐẾM
- Mạch đếm được thiết kế từ JK-FF hoặc T-FF. Lợi dụng tính đảo
trạng thái của FF JK khi J=K=1.
- 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.
- Về lĩnh vực 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.
Chương 5: Mạch tuần tự
16
Mạch đếm đồng bộ (Synchonous Counter - còn gọi là
mạch đếm song song)
- Tất cả các FF chịu tác động đồng thời của xung CK
1. Mạch đếm đồng bộ n tẩng (đếm 2n trạng thái), đếm lên (count up).
- Thiết kế mạch đếm n tầng, đếm lên (n=3)
• Xác định số FF cần dùng, Lập 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 khi có xung CK tác động thì
các ngõ ra của FF thay đổi trạng thái giống như bảng trạng thái đã
lập
• Với n=3  Cần 3 FF, mạch sẽ đếm được 2n=8 trạng thái từ 0  7.
Giả sử dùng FF tác động ở cạnh xuống của xung CK
Chương 5: Mạch tuần tự
17
Lập bảng trạng thái – với QC là MSB
CK7
QC
QB
QA
Số đếm
Xóa
1
2
3
4
5
6
7
8
9
0
1
1
1
1
0
0
0
0
1
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
7
6
5
4
3
2
1
0
7
Chương 5: Mạch tuần tự
18
Từ kết quả trên  vẽ mạch đếm đồng bộ 3 bit như sau:
* TA=JA=KA=1
* TB=JB=KB=QA
* TC=JC=KC=QA.QB
Chương 5: Mạch tuần tự
19
2. Mạch đếm đồng bộ n tẩng (đếm 2n trạng thái), đếm xuống (count down).
- TK mạch đếm n tầng, đếm xuống (n=3)
Lập bảng trạng thái – với QC là MSB
CK
QC
QB
QA
Số đếm
Xóa
1
2
3
4
5
6
7
8
0
1
1
1
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
0
1
0
0
7
6
5
4
3
2
1
0
Chương 5: Mạch tuần tự
20
Từ kết quả trên  vẽ mạch đếm đồng bộ 3 bit như sau:
Chương 5: Mạch tuần tự
21
3. Mạch đếm đồng bộ Modulo–N (N2n) – Không theo số nhị phân
Thiết kế: Trước tiên phải chọn số tầng (Số FF).
Số tầng n phải thỏa điều kiện: 2n-1 < N < 2n
P.P dùng hàm Chuyển: Cho thấy sự thay đổi trạng thái của FF, mỗi
loại FF sẽ có hàm chuyển riêng. (dùng hàm chuyển của FF-JK).
Hàm Chuyển có giá trị H=1 khi Q+  Q và trị H=0 khi Q+ = Q
CK








J
0
0
0
0
1
1
1
1
K
0
0
1
1
0
0
1
1
Q Q+ H
0 0
0
1 1
0
0 0
0
1 0
1
0 1
1
1 1
0
0 1
1
1 0
1
H
KQ
J
00
0
1
01
11
10
1
1
1
1
H  JQ  KQ
Chương 5: Mạch tuần tự
22
3. Mạch đếm đồng bộ Modulo–N (N2n) – Không theo số nhị phân
Để thiết kế mạch đếm cụ thể ta sẽ xác định hàm H của từng FF,
sau đó đem so sánh với biểu thức hàm H của FF-JK
H  JQ  KQ
Từ đó suy J, K của các FF của mạch cần thiết kế.
VD: Thiết kế mạch đếm 10 đồng bộ dùng FF JK
Bước 1: Chọn số tầng: 2n-1 < N < 2n có nghĩa 24-1 < 10 < 24
 Số FF là 4, Dùng FF-JK (A, B, C, D với D là MSB) có xung CK tác
động bằng cạnh xuống.
 PP thiết kế: dùng hàm chuyển của JK-FF: H  JQ  KQ
Chương 5: Mạch tuần tự
23
Bước 2: Lập bảng trạng thái của mạch đếm 10 và giá trị của hàm H
CK
QD
QC
QB
1
2
3
4
5
6
7
8
9
10
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
QA QD+ QC+ QB+ QA+ HD
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
Chương 5: Mạch tuần tự
1
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
0
1
0
1
HC
HB
HA
0
0
0
1
0
0
0
1
0
0
0
1
0
1
0
1
0
1
0
0
1
1
1
1
1
1
1
1
1
1
24
Bước 3: Lập bảng Karnaugh, so sánh với hàm chuyển H  JQ  KQ
H  JQ  KQ
Chương 5: Mạch tuần tự
25
Lập bảng Karnaugh, so sánh với hàm chuyển H  JQ  KQ
Chương 5: Mạch tuần tự
26
JA  KA  1
J B  K B  Q D .Q A
J C  K C  Q B .Q A
J D  Q C .Q B .Q A
K D  QA
CK
QD
QC
QB
QA
HD
HC
HB
10
11
12
13
14
15
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
1
0
1
0
0
0
1
0
0
0
0
0
0
Chương 5: Mạch tuần tự
HA QD+ QC+ QB+ QA+
1
1
1
1
1
1
1
0
1
0
1
0
0
1
1
1
1
0
1
1
0
0
1
1
1
0
1
0
1
0
27
Mạch đếm không đồng bộ
- Là các mạch đếm mà các FF chịu sự tác động của xung CK không
đồng thời.
- Cần quan tâm đến chiều tác động của xung CK
1. Mạch đếm không đồng bộ n tẩng (đếm 2n trạng thái), đếm lên
- Thiết kế mạch đếm n tầng, đếm lên (n=4)
• Lập 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 khi có xung CK tác động thì các ngõ ra của FF thay đổi
trạng thái giống như bảng trạng thái đã lập
• Với n=4  Cần 4 FF, mạch sẽ đếm được 2n=16 trạng thái từ 0 
15. Giả sử dùng FF tác động ở cạnh xuống của xung CK
• Do xung CK tác động bởi cạnh xuống  có thể lấy ngõ ra của
tầng trước làm xung CK của tầng sau.
Chương 5: Mạch tuần tự
28
Lập bảng trạng thái
CK
QD
QC
QB
QA
Số đếm
Xóa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
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
10
11
12
13
14
15
0
Chương 5: Mạch tuần tự
29
Chương 5: Mạch tuần tự
30
2. Mạch đếm không đồng bộ n tẩng (đếm 2n trạng thái), đếm xuống
Chương 5: Mạch tuần tự
31
Chương 5: Mạch tuần tự
32
3. Mạch đếm không đồng bộ modulo – N (N = 10)
Kiểu Reset:
Số xung CK
vào
Số nhị phân ra
QD
QC
QB
QA
Số thập phân
tương ứng
Xoá
1
2
3
4
5
6
7
8
9
10
0
0
0
0
0
0
0
0
1
1
0(1)
0
0
0
0
1
1
1
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0(1)
0
1
0
1
0
1
0
1
0
1
0
0
1
2
3
4
5
6
7
8
9
10
Chương 5: Mạch tuần tự
33
Mạch đếm không đồng bộ modulo – N kiểu Preset:
- Phân tích số đếm N = 2n.N’ (N’<N)  kết hợp hai mạch đếm n bit và N’
Thiết kế mạch đếm 10 = 2 x 5  mạch đếm 5 kết hợp với một FF
Số xung
CK vào
Số nhị phân ra
QD
QC
QB
Xóa
1
2
3
4
5
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
1
0
0
Số thập phân
tương ứng
0
1
2
3
4
0
34
Dùng hàm Chuyển
CK
QD
QC
QB
HD
HB
1
2
3
4
5
0
0
0
0
1
0
0
0
1
1
0
0
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
0
JB  QD
KB  1
JC  KC  1
C KC  Q B
J D  Q C .Q B
KD  1
Chương 5: Mạch tuần tự
35
IC7490
Reset Inputs
Outputs
R0(1) R0(2) R0(3) R0(4)
1
1
0
x
x
0
0
x
1
1
x
0
0
x
x
0
0
x
1
1
x
0
x
0
x
0
1
1
0
x
0
x
QD
QC
QB
QA
0
0
1
1
Đếm
nt
nt
nt
0
0
0
0
Đếm
nt
nt
Nt
0
0
0
0
Đếm
nt
nt
Nt
0
0
1
1
Đếm
nt
nt
nt
36
Đếm 2x5
Đếm 5x2
QD
QC
QB
QA
QD
QC
QB
QA
0
0
0
0
0
0
0
0
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
1
0
0
0
0
1
0
0
1
1
0
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
1
1
1
37
Mạch đếm vòng: Hồi tiếp từ QD  JA và QD  KA
Mạch đếm vòng
Đặt trước QA = 1
CK
Đặt trước QA = QB = 1
QD Q QB QA Số TP
CK
QD Q QB QA Số TP
C
Preset
1
2
3
4
:
0
0
0
1
0
:
0
0
1
0
0
:
C
0
1
0
0
0
:
1
0
0
0
1
:
1
2
4
8
1
:
Preset
1
2
3
4
:
Chương 5: Mạch tuần tự
0
0
1
1
0
:
0
1
1
0
0
:
1
1
0
0
1
:
1
0
0
1
1
:
3
6
12
9
3
:
38
CK
QD
QC
QB
QA
Số TP
Preset
1
2
3
4
5
6
7
8
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
0
1
3
7
15
14
12
8
0
Chương 5: Mạch tuần tự
39
CK
Preset
1
2
3
4
5
6
7
QD QC QB QA
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
1
1
1
0
0
0
0
Chương 5: Mạch tuần tự
Số TP
0
1
3
7
14
12
8
0
40