Thông tin tài liệu
Chương 2
THIẾT KẾ MÁY TRẠNG THÁI
BẰNG LƯU ĐỒ MÁY TRẠNG THÁI
I. LƯU ĐỒ MÁY TRẠNG THÁI:
Người ta còn gọi hệ tuần tự là máy trạng thái thuật toán (ASM - algorithmic
state machine) hay đơn giản hơn là máy trạng thái (SM - sate machine), ở đây ta
gọi tắt là SM. Lưu đồ SM được tạo bởi các khối SM; mỗi khối SM mô tả hoạt
động trong 1 trạng thái.
- Trạng thái của hệ thống được biểu diễn bằng một Hộp trạng thái (state
box). Hộp trạng thái có thể chứa một Danh sách xuất (output list), Mã
trạng thái (state code), Tên trạng thái (state name), Hộp quyết đònh
(decision box), Điều kiện trong hộp quyết đònh là một biều thức Boole, Hộp
xuất theo điều kiện (conditional ouput box) chứa danh sách các biến xuất
theo điều kiện.
Điều kiện
Mã trạng thái
Tên trạng thái
Hộp trạng thái
Danh sách xuất
ở trạng thái này
Danh sách xuất
theo điều kiện
Hộp điều kiện
xxx
X
Hộp xuất
theo điều kiện
Đường vào khối ASM
Các đường ra đến
các khối ASMkhác
T F
- Một khối SM chứa chính xác một hộp trạng thái cùng với các hộp quyết
đònh và các hộp xuất theo điều kiện liên hệ với trạng thái đó. Một khối
SM có chính xác một đường vào và một hoặc nhiều đường ra. Một
đường dẫn đi qua khối SM từ ngõ vào đến ngõ ra được gọi là đường dẫn
liên kết (link path).
Theo hình ta có: khi vào trạng thái S
1
, các giá trò ra Z
1
và Z
2
bằng 1.
Nếu các giá trò vào X
1
và X
2
đều bằng 0, Z
3
và Z
4
cũng bằng 1, và ở cuối thời
gian trạng thái, máy đi vào trạng thái kế qua đường ra 1. Ngược lại nếu X
1
=1
và X
3
=0, giá trò ra Z
5
=1 và đi vào trạng thái kế qua đường ra 3.
- Khối SM có thể được vẽ bằng nhiều dạng khác nhau.
- Một lưu đồ SM có thể biểu diễn một hệ tổ hợp khi chỉ có một trạng thái
và không có sự thay đổi trạng thái xảy ra.
Z
1
= A + A’BC = A + BC
- Ta phải tuân theo một số qui tắc nhất đònh khi xây dựng một khối SM.
* Với mọi kết hợp các biến vào hợp lệ phải có chính xác một đường ra
được đònh nghóa. Điều này là cần thiết vì mỗi tổ hợp vào được cho phép
phải dẫn đến một trạng thái kế duy nhất.
* Không cho phép có đường hồi tiếp nội trong một khối SM.
(a) Sai (b) Đúng
- Khối SM có 2 dạng: song song và nối tiếp
Ta có thể chuyển dễ dàng giản đồ trạng thái của máy tuần tự sang lưu
đồ SM tương đương.
Ta khảo sát giản đồ đònh thì cho lưu đồ SM ở hình trên với chuỗi vào
X=1, 1, 1, 0, 0, 0. Trong thí dụ này, tất cả các thay đổi trạng thái xảy ra ngay
sau cạnh lên của xung nhòp. Vì các biến ra Moore (Za, Zb, Zc) phụ thuộc vào
trạng thái, chúng chỉ có thể thay đổi sau một thay đổi trạng thái. Các biến ra
Mealy (Z
1
, Z
2
) có thể thay đổi ngay sau một thay đổi trạng thái hoặc một thay
đổi giá trò vào. Trong bất cứ trường hợp nào, tất cả các giá trò ra sẽ có giá trò
đúng của chúng ở cạnh tích cực của xung nhòp.
S0 00
Za
X
S1 01
Zb
X
S2 11
Zc
X
Z1 Z2
0 1
0 1
0 1
S0
Za
S1
Zb
S2
Zc
1/0
0/0
0/0
1/0
0/Z1
1/Z2
II. CÀI ĐẶT LƯU ĐỒ MÁY TRẠNG THÁI:
Việc cài đặt (realization) lưu đồ SM là tìm được phương trình của các
biến ra và các biến trạng thái kế tiếp. Các bước thực hiện như sau:
- Thực hiện gán trạng thái cho các hộp trạng thái.
- Xác đònh phương trình của biến ra Z
i
• Tìm các trạng thái có xuất hiện biến ra (Z
i
= 1).
• Tại mỗi trạng thái, nếu là biến MOORE thì ta được tích số (AND)
của các biến trạng thái; còn nếu là biến MEALY thì ta có tích số
của các biến trạng thái và biến điều kiện vào.
• Phương trình của biến ra bằng tổng (OR) các tích số đã tìm thấy ở
các bước trên lại với nhau.
- Xác đònh phương trình các biến trạng thái kế Q
+
j
• Tìm ra tất cả các trạng thái trong đó Q
j
=1.
• Đối với mỗi trạng thái này, tìm ra tất cả các đường dẫn liên kết
(link path) mà dẫn đến trạng thái đó.
• Với mỗi đường dẫn liên kết này, tìm ra một số hạng là 1 khi đi
theo đường dẫn liên kết này. Nghóa là, với đường dẫn liên kết từ
Sa đến Sb, số hạng sẽ là 1 tích số của các biến trạng thái ở trạng
thái Sa và các biến điều kiện để có thể dẫn đến Sb.
• Biểu thức Q
+
j
được tạo thành bằng cách lấy tổng (OR) các tích số
được tìm thấy ở bước trên lại với nhau
Chú ý:
Các phương trình biến ra và biến trạng thái kết tiếp có thể được đơn giản hoá
bằng cách rút gọn bằng bìa Karnaugh với các trạng thái không sử dụng làm
điều kiện don’t care
Ví dụ: Thực hiện lưu đồ SM sau bằng cổng logic và kích cạnh lênD-FF
+ Gán trạng thái: AB = 00 cho S
0
, AB = 01 cho S
1
, và AB = 11 cho S
2
.
+ Phương trình của các biến ra:
Biến ra Moore: Za = A’B’ (chỉ có trong trạng thái S
0
)
Zb = A’B (chỉ có trong trạng thái S
1
)
Zc = A B (chỉ có trong trạng thái S
2
)
Biến ra Mealy: Z
1
= A B X’ ø (tại trạng thái S
2
và điều kiện X = 0)
Z
2
= A B X (tại trạng thái S
2
và điều kiện X = 1)
+ Phương trình các biến trạng thái kế:
Có 3 đường dẫn liên kết (link1, link2 và link3) trạng thái có B =1:
B
+
= A’B’X (link 1) + A’BX (link 2) + ABX (link 3) = (A’ + B) X
Có 2 đường dẫn liên kết dẫn tới trạng thái có A=1:
A
+
= A’BX + ABX = BX
S0 00 = AB
Za
X
S1 01
Zb
X
S2 11
Zc
X
Z1 Z2
0 1
0 1
0 1
Link 1
Link 2
Link 3
Các phương trình biến ra và trạng thái kế có thể được đơn giản hóa hơn
bằng bảng Karnaugh với trạng thái không sử dụng (AB=10) làm điều kiện
“don’t care”, khi đó:
Za = A’B’ + (AB’) = B’
Zb = A’B
Zc = AB + (AB’) = A
Z
1
= ABX’ + (AB’X’) = AX’
Z
2
= ABX + (AB’X) = AX
A
+
= BX
B
+
= A’B’X + A’BX + ABX + (AB’X) = X
D
A
Q
A
CK Q
A
X
Z
1
Clock
D
B
Q
B
CK Q
B
Z
b
Z
2
Z
c
Z
a
Ví dụ: Thực hiện hệ tuần tự có bảng trạng thái sau bằng lưu đồ SM; sử
dụng PLA và JK-FF kích cạnh lên
Hiện tại Kế tiếp Ngõ ra (Z
1
Z
2
)
Q
1
Q
2
X
1
X
2
= 00 01 10 11 X
1
X
2
= 00 01 10 11
00 S
0
S
1
S
1
S
2
S
0
11 11 11 01
01 S
1
S
1
S
2
S
1
S
2
00 01 00 01
11 S
2
S
2
S
2
S
0
S
0
10 10 11 11
Thành lập lưu đồ SM
Ta có:
Z
1
= Q
1
Q
2
X
1
+ Q
1
Q
2
X
1
X
2
+ Q
1
Q
2
X
1
Z
2
= Q
1
Q
2
+ Q
1
Q
2
X
2
+ Q
1
Q
2
Q
1
+
= Q
1
Q
2
X
1
+ Q
1
Q
2
X
2
+ Q
1
Q
2
X
1
X
2
+ Q
1
Q
2
X
1
+ Q
1
Q
2
X
1
Q
2
+
= Q
1
Q
2
X
1
X
2
+ Q
1
Q
2
X
2
+ Q
1
Q
2
X
1
Rút gọn với trạng thái không gán làm don’t care
S
0
00 = Q
1
Q
2
Z
2
X
1
0 1
Z
1
X
2
Z
1
S
1
10
X
2
Z
2
S
2
11
Z
1
0 1
X
1
Z
2
0
1
0
1
Z
1
= Q
2
+ Q
1
X
1
+ Q
1
X
2
Z
2
= Q
1
+ Q
2
X
1
+ Q
2
X
2
J
1
= X
1
+ X
2
J
2
= Q
1
X
2
+ Q
1
X
1
X
2
K
1
= Q
2
X
1
K
2
= X
1
Q
1
Q
2
X
1
X
2
Z
1
Z
2
J
1
K
1
J
2
K
2
- 1 - - 1 0 0 0 0 0
0 - 0 - 1 0 0 0 0 0
0 - - 0 1 0 0 0 0 0
0 - - - 0 1 0 0 0 0
- 1 1 - 0 1 0 0 0 0
- 0 - 1 0 1 0 0 0 0
- - 0 - 0 0 1 0 0 0
- - - 0 0 0 1 0 0 0
- 1 1 - 0 0 0 1 0 0
1 - - 1 0 0 0 0 1 0
0 - 1 0 0 0 0 0 1 0
- - 1 - 0 0 0 0 0 1
X
1
X
2
Z
1
00 01
X
X
1 00
1
0
1
11 10
1
1
X
X
11
1 10
1
1
Q
1
Q
2
X
1
X
2
Z
2
00 01
X
X
100
1
0
1
11 10
1
X
X
111
110
11
1
Q
1
Q
2
X
1
X
2
Q
1
+
00
0
1
X
X
1 00
1 01
11 1
0
1
1
1
1
X
X
11
1 10
1
1
Q
1
Q
2
X
1
X
2
00
0
1
X
X
00
01
11 1
0
1
1
1
X
X
11
110
1
Q
1
Q
2
Q
2
+
J
1
J
1
Q
1
J
2
Q
2
J
2
Q
1
Q
2
CK
X
2
PLA
K
2
K
2
K
1
K
1
X
1
Z
2
Z
1
[...]... vào trạng thái S2 Ở trạng thái S2, nếu K=1, ta xuất ra thêm 1 tín hiệu dòch nữa và rồi đi vào trạng thái S3 Tín hiệu “dòch” cuối cùng sẽ reset bộ đếm về 0, đồng thời điều khiển “cộng-dòch” quay về trạng thái dừng Bộ đếm đếm số lần dòch và xuất K=1 vừa trước khi lần dòch cuối cùng xảy ra S0 0 00 = Q1Q2 1 St Load S1 0 11 1 M Sh Ad S2 0 Sh K 1 S3 01 1 K 0 10 Done Lưu đồ SM của bộ nhân nhò phân KTS2-C2-Tr.19... có thể là hàm của nhiều biến Với P = C’E, ta có F (A, B, D, P) = m2 + P m0 + (m6 + m7) F AB D 0 1 00 01 11 P 1 X 10 X F = B D’ + A’D’P = B D’ + A’C’D’E KTS2-C2-Tr. 12 III THÀNH LẬP LƯU ĐỒ MÁY TRẠNG THÁI: Ví dụ 1: Lập lưu đồ SM cho bộ chia nhò phân song song Ta xét thiết kế bộ chia song song cho các số nhò phân dương Thí dụ ta sẽ thiết kế 1 hệ chia số bò chia (dividend) 6 bit cho số chia (divisor) 3 bit... tạo ra sẽ làm tăng bộ đếm Nếu bộ nhân có n bit, tổng số lần dòch cần là n Ta sẽ thiết kế bộ đếm để tín hiệu hoàn tất (K) được tạo ra sau khi xảy ra (n-1) lần dòch (a) Điều khiển bộ nhân (b) Giản đồ trạng thái cộng-dòch (c) Giản đồ trạng thái cuối cùng của bộ điều khiển cộng dòch KTS2-C2-Tr.18 Ở trạng thái S1, là trạng thái có được sau khi dòch, nếu K = 0 thì hoạt động bình thường Nếu K=1, ta kiểm tra... khi dòch (Đáp số): Đường chia giữa số nhân và tích số Giản đồ trạng thái cho phần điều khiển bộ nhân KTS2-C2-Tr.17 Trong trường hợp tổng quát hơn, nếu cần nhân số bit lớn, người ta chia hệ điều khiển thành bộ đếm và điều khiển “cộng - dòch” - Phần điều khiển “cộng - dòch” có trạng thái S1 là trạng thái sau khi dòch, và trạng thái S2 là trạng thái sau khi cộng - Phần bộ đếm tạo ra tín hiệu K Tín hiệu... points) Win = 1 làm cho đèn “Win” sáng (thắng) Lose = 1 làm cho đèn “Lose” sáng (thua) Lưu đồ trò chơi xúc xắc KTS2-C2-Tr .21 S0 0 000 = ABC 1 Rb S1 001 Roll 1 Rb 0 1 S2 D711 0 010 Win 1 D23 12 S3 0 0 Reset 0 Lose Sh S4 0 011 100 0 Reset 1 Rb S5 101 Roll 1 Rb 0 1 Eq 0 D7 0 1 Lưu đồ SM của trò chơi xúc xắc KTS2-C2-Tr .22 ... được tìm như sau: F = MS0 + P1 MS1 + P2 MS2 + … + MS0 là tổng tối thiểu (Minimum Sum) có được bằng cách đặt P1 = P2 = … = 0 + MS1 là tổng tối thiểu có được bằng cách đặt P1 =1, các Pj = 0 (j ≠ 1), và thay thế tất cả các 1 trên bảng bằng các “don’t care” (X) + MS2 là tổng tối thiểu có được bằng cách đặt P2 =1, các Pj = 0 (j ≠ 2) , và thay thế tất cả các 1 trên bảng bằng các “don’t care” (X) Biểu thức này... bit tận cùng bên trái của thanh ghi “số bò chia” và đặt bit thương số (bit tận cùng bên phải trong thanh ghi “số bò chia”) lên 1 KTS2-C2-Tr.14 00 = AB 01 10 11 Lưu đồ SM của bộ chia nhò phân KTS2-C2-Tr.15 Ví du 2 : Thành lập lưu đồ SM cho phần điều khiển bộ nhân Ta sẽ thiết kế bộ nhân song song cho các số nhò phân dương, nhân nhò phân chỉ cần các phép toán dòch và cộng Minh hoạ cho bài toán nhân nhò phân:... nút Rb, các giá trò trong 2 bộ đếm được hiển thò và trò chơi có thể tiến hành Nếu đèn “Win” (thắng) hoặc đèn “Lose” (thua) không sáng, người chơi ấn nút “roll” lần nữa KTS2-C2-Tr .20 Các tín hiệu vào hệ điều khiển được đònh nghóa như sau: D7 = 1 nếu tổng của xúc xắc là 7 D11 = 1 nếu tổng của xúc xắc là 11 D23 12 = 1 nếu tổng của xúc xắc là 2, 3, hoặc 12 Eq=1 nếu tổng của xúc xắc bằng số điểm cất trong thanh... SM của bộ nhân nhò phân KTS2-C2-Tr.19 Ví dụ 3: Thiết kế trò chơi xúc xắc điện tử Sơ đồ khối trò chơi xúc xắc Như vậy sau khi gieo xúc xắc (roll), tổng của các giá trò trong 2 bộ đếm nằm trong dãi từ 2 đến 12 Các qui tắc chơi như sau: 1 Sau lần gieo xúc xắc (roll) lần thứ nhất, người chơi thắng nếu tổng là 7 hoặc 11 Người chơi thua nếu tổng là 2, 3, hoặc 12 Ngược lại tổng có được trong lần “roll” thứ... nhận thấy việc chia có thể thực hiện được bằng các phép toán trừ và dòch Để xây dựng bộ chia ta sẽ dùng thanh ghi số bò chia 7 bit và thanh ghi số chia 3 bit có sơ đồ khối như sau: Tín hiệu vào St (Start): St = 1 cho phép bắt đầu chạy hệ thống Nó sẽ là 1 trong thời gian 1 xung nhòp, và rồi sẽ giữ là 0 cho đến khi hệ điều khiển quay về trạng thái ban đầu KTS2-C2-Tr.13 Tín hiệu vào C: là ngõ ra của bộ . Chương 2
THIẾT KẾ MÁY TRẠNG THÁI
BẰNG LƯU ĐỒ MÁY TRẠNG THÁI
I. LƯU ĐỒ MÁY TRẠNG THÁI:
Người ta còn gọi hệ tuần tự là máy trạng thái thuật. Q
2
Q
1
+
= Q
1
Q
2
X
1
+ Q
1
Q
2
X
2
+ Q
1
Q
2
X
1
X
2
+ Q
1
Q
2
X
1
+ Q
1
Q
2
X
1
Q
2
+
= Q
1
Q
2
X
1
X
2
+ Q
1
Q
2
X
2
Ngày đăng: 19/03/2014, 21:20
Xem thêm: Chương 2 THIẾT KẾ MÁY TRẠNG THÁI BẰNG LƯU ĐỒ MÁY TRẠNG THÁI pdf, Chương 2 THIẾT KẾ MÁY TRẠNG THÁI BẰNG LƯU ĐỒ MÁY TRẠNG THÁI pdf