Tải bản đầy đủ (.pdf) (12 trang)

Tài liệu Bài giảng kỹ thuật số P7 pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (224.08 KB, 12 trang )

Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
104
4.6. MÁY TRẠNG THÁI
Hệ tuần tự còn có tên gọi khác là máy trạng thái (State Machine), tên này
thường sử dụng khi dùng một hệ tuần tự để điều khiển 1 hệ thống số thực hiện
một thủ tục hoặc một thuật toán từng bước một. Có thể đònh nghóa các máy
trạng thái bằng các giản đồ trạng thái, hoặc một kiểu lưu đồ đặc biệt được gọi là
lưu đồ máy trạng thái hay lưu đồ SM (State Machine) dùng để mô tả đặc tính
làm việc của một máy trạng thái
Trong thiết kế số, thường sử dụng từ máy trạng thái để chỉ các mạch đồng bộ
như mạch đếm… ở đó các giá trò ra thay đổi từ một trạng thái nhò phân này sang
một trạng thái nhò phân khác khi mạch được cung cấp xung clock.
SM có hai loại: Moore và Mealy.
4.6.1. Máy trạng thái kiểu MOORE
Sơ đồ khối máy trạng thái kiểu Moore và một mạch counter nhò phân 2bit là một
ví dụ cho máy trạng thái kiểu Moore

























Các FF

Giải mã
ngõ ra
Các t/hiệu
n
g
oài
Clock
Giải mã
t.thái ke
á
Lưu trữ t.thái
hiện tại
+
k
Q
+
2
Q

+
1
Q
Q1
Mạng tổ
hợp
X
1
X
2
X
m
Q
1
Q
2
Q
k
D1
CK
Q2
D2
CK
Qk
Dk
CK
Clock
Hệ tổ
hợp
(cho

các
ngõ
ra)
Z
2
Z
1
Z
n
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
105
4.6.2. Máy trạng thái kiểu MEALY
Sơ đồ khối máy trạng thái Mealy
























4.7. LƯU ĐỒ MÁY TRẠNG THÁI
Các lưu đồ SM còn được gọi là lưu đồ ASM (Algorithmic State Machine). Lưu
đồ SM cho nhiều thuận lợi trong việc dễ hiểu hơn hoạt động của một hệ thống
số bằng cách quan sát thay vì là giản đồ trạng thái tương đương. Có thể chuyển
một lưu đồ SM cho trước thành nhiều dạng tương đương, và mỗi dạng dẫn trực
tiếp đến một cài đặt phần cứng.
Ba thành phần chính của một lưu đồ SM







Logic
trạng thái
kế
Bộ nhớ
trạng thái

Ngõ CK

Logic ra

G
Clock
Trạng thái
hiện hành
Kích
thích
Các giá trò
ra (Output)
Giá trò
vào

Q1
Z
2
HỆ
TỔ
HP
X
1
X
2
X
m
Q
1
Q
2
Q
k
Z

1
Z
n
CK
Q2
D2
CK
Qk
Dk
CK
Clock
+
1
Q
+
2
Q
+
k
Q
D1
Mã trạng
thái
tên trạng
thái
(a) Hộp trạng thái
điều kiện
nhánh
đúng
1

nhánh
sai
0
(b) Hộp quyết đònh
danh
sách xuất
theo điều
kiện
(c) Hộp xuất theo đk
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
106
• Trạng thái của một hệ thống được biểu diển bằng hộp trạng thái (state box),
hộp trạng thái có thể chứa một danh sách giá trò ra. Mã trạng thái có thể đặt
bên cạnh hộp ở phần trên. Tên trạng thái được đặt trong hình tròn bên trái
hộp trạng thái.
• Hộp quyết đònh (decision box) được biểu diễn bằng một ký hiệu hình thoi
với các nhánh đúng và sai. Điều kiện đặt trong hộp là một biểu thức
Boolean được xác đònh để lấy nhánh nào.
• Hộp xuất theo điều kiện (conditional output box) chứa danh sách và các giá
trò ra theo điều kiện phụ thuộc vào cả trạng thái của hệ thống và các giá trò
vào
Một lưu đồ SM được xây dựng từ các khối SM (SM block) mỗi 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 và mô tả
hoạt động của máy trong thời gian mà máy đang trong trạng thái.
Khi một hệ thống số đi vào trạng thái liên hệ với một khối SM cho trước, các
giá trò ra ở danh sách xuất trong hộp trạng thái sẽ trở thành đúng. Các điều kiện
trong các hộp quyết đònh sẽ được đònh trò để xác đònh xem đường nào đi theo

qua khối SM. Khi trên đường đi có gặp một hộp xuất theo điều kiện thì các giá
trò ra tương ứng sẽ trở thành đúng. Một đường dẫn qua khối SM từ ngõ vào đến
ngõ ra được gọi là đường dẫn nối ghép (link path)
Ví dụ, một khối SM















khi vào trạng thái S
1
, các giá trò ra Z
1
và Z
2
= 1. Nếu giá trò vào X
1
và X
2
đều

bằng 0 thì Z
3
và Z
4
bằng 1 và ở cuối thời gian trạng thái, máy đi vào trạng thái
Z
1,
Z
2

S
1
X
1
X
3
Z
3
, Z
4
0
1
01
Z
5
X
3
0
1
1

2
3
n
n đường ra
nhánh a
nhánh b
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
107
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
Tổng quát thì một khối SM có thể được vẽ bằng nhiều dạng khác nhau. Hai khối
SM sau là tương đương.















Ví dụ, Vẽ một khối SM tương đương với khối SM sau.

`











Phải tuân theo một số quy tắc nhất đònh khi xây dựng một khối SM:
Thứ nhất, 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 1 trạng thái kế duy nhất.
Thứ hai, không cho phép có đường hồi tiếp nội trong một khối SM.


A
Z
1
1
C
B

0
0
1
0
1
Z
1

S
1

X
3
Z
2
0 1
0
1
S
2

S
3
Z
1

S
1
X
2

Z
2
0 1
S
2
S
3

X
1
0
1
Z
2
X
1
1
0
X
1
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
108
Ví dụ, 1 cách vẽ sai và 1 cách vẽ đúng đối với 1 khối SM có đường hồi tiếp











Một khối SM có thể có nhiều đường song song mà dẫn đến cùng một đường ra,
và hơn một đường trong các đường này có thể tích cực đồng thời. Ngoài ra cũng
có thể biểu diễn bằng một khối SM nối tiếp tương đương. Trong khối nối tiếp
này có thể có một đường dẫn nối ghép tích cực duy nhất giữa ngỏ vào và ra. Với
bất cứ tổ hợp nào của các giá trò vào, các giá trò ra sẽ giống như trong dạng song
song tương đương.
Ví dụ,























(a) Sai
(b) Đúng
Z
1
X
2
X
1
Z
2
1

0

Z
3
0

1

Z
4
1

0

X

3
(a) dạng song song

Z
1
X
1
Z
2
X
2
Z
3
X
3
Z
3
(b) dạng nối tiếp

Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
109
Có thể chuyển một giản đồ trạng thái của máy tuần tự sang lưu đồ SM tương
đương một cách dễ dàng.
Ví dụ, Giản đồ trạng thái







Và lưu đồ SM tương đương

















Giản đồ đònh thì cho lưu đồ SM













S
0
Z
a
S
1
Z
b
S
2

Z
c

1/0
0/0
1/0
0/Z
1
0/0

1/Z
2

Z
a
X


Z
b
X

Z
c
X

Z
1
Z
2

00
01
11
0
1
0
1
0
1
link 1
link 2
S
0

S
1
S

1

link 3

clock
trạng thái
X
S
0
S
1
S
2
S
2
S
0
S
0
Z
a
Z
b
Z
c
Z
1
Z
2
Bài Giảng Kỹ Thuật Số Chương 4

GV: Nguyễn Trọng Hải Trang
110
Ở giản đồ trạng thái, có cả 2 giá trò ra Moore và Mealy, lưu đồ SM tương đương
có 3 khối, một khối ứng với một trạng thái. Các giá trò ra Moore (Z
a
, Z
b
, Z
c
)
được đặt trong các hộp trạng thái, từ đó chúng không phụ thuộc vào giá trò vào.
Các giá trò ra Mealy (Z
1
, Z
2
) xuất hiện trong các hộp xuất theo điều kiện, chúng
phụ thuộc vào cả trạng thái và giá trò vào. Trong ví dụ này, mỗi khối SM chỉ có
một hộp quyết đònh, do đó chỉ phải kiểm tra 1 biến vào. Đối với cả hai giản đồ
trạng thái và lưu đồ SM, Z
c
luôn bằng 1 trong trạng thái S
2
. Nếu X=0 trong trạng
thái S
2
, Z=1 và trạng thái kế là S
0
. Nếu X=1, Z
2
=1 và trạng thái kế là S

2

Ở giản đồ đònh thì cho lưu đồ SM, với chuỗi vào X=1,1,1,0,0,0. 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 giá trò Moore phụ
thuộc vào trạng thái và chỉ có thể thay đổi tức thời sau 1 thay đổi trạng thái hoặc
một thay đổi giá trò vào. Nói chung, 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
Ví dụ, Lập lưu đồ SM cho bộ chia nhò phân song song cho các số nhò phân
dương, số bò chia (dividend) 6 bit cho số chia (divisor) 3 bit để có được thương 3
bit.
Minh họa quá trình chia







Phép chia có thể thực hiện bằng phép toán trừ và dòch. để xây dựng bộ chia sẽ
sử dụng thanh ghi số bò chia 7 bit và thanh ghi số chia 3 bit như sau













Trong quá trình chia thay vì dòch số chia sang phải trước mỗi lần trừ, ở đây sẽ
dòch số bò chia sang trái. Chú ý là cần thêm 1 bit ở đầu bên trái thanh ghi số bò
x
7
x
6
x
5
x
4
x
3
x
2
x
1
Thanh ghi số bị chia
Bộ trừ và so
sánh
y
3
y
2
y
1
Số chia

Điều

khiển
Sh
Su
C (so sánh)
clock

V

Chỉ báo tràn trên
start
100010 110
110 101
101
000
1010
110
100
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
111
chia để cho không mất 1 bit khi dòch trái số bò chia. Thay vì dùng 1 thanh ghi để
chứa thương số, có thể đưa thương số từng bit một vào đầu bên phải của thanh
ghi số bò chia khi dòch trái số bò chia
Nếu ban đầu x
7
x
6
x
5
x

4
≥ y
3
y
2
y
1
(nghóa là nếu 4 bit trái của thanh ghi số bò chia
vượt quá hoặc bằng số chia) thương số sẽ lớn hơn 8 và tràn trên xảy ra. Chú ý là
nếu
8
yyy
8xxxx
yyy
0000xxxx
yyy
xxxxxxx
123
4567
123
4567
123
1234567
≥=≥
báo tràn vì thương số chỉ có 3 bit (tối đa bằng 7)
Tín hiệu dòch (Sh = shift) sẽ dòch số bò chia sang trái một vò trí. Tín hiệu trừ (Su
= Subtract) sẽ trừ số chia cho 4 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 thanh ghi số bò chia) lên 1. Nếu số chia
lớn hơn 4 bit tận cùng bên trái của số bò chia, ngõ ra của bộ so sánh là C=0,
ngược lại C=1. Mạch điều khiển tạo ra chuổi các tín hiệu dòch và trừ mong

muốn. Bất cứ lúc nào C=1, tín hiệu trừ được tạo ra và bit thương số được đặt lên
Giản đồ trạng thái của mạch điều khiển











Ban đầu số bit chia 6 bit và số chia 3 bit được đưa vào các thanh ghi thích hợp.
Mạch vẫn ở trạng thái dừng Stop (S
0
) cho đến khi có tín hiệu Start. Nếu giá trò
ban đầu của C=1, thương số sẽ cần 4 bit trở lên. Vì không gian chỉ cung cấp cho
thương số 3 bit, điều kiện này làm tràn trên do đó bộ chia dừng và bộ chỉ tràn sẽ
đặt lên 1 bằng ngõ ra tràn trên.
Bình thường giá trò ban đầu của C=0, vì vậy dòch sẽ xảy ra đầu tiên và mạch sẽ
đi vào trạng thái S
1
. Rồi nếu C=1 thì xảy ra trừ. Sau khi hoàn tất trừ C sẽ luôn
luôn bằng 0 vì vậy xung nhòp kế sẽ tạo ra dòch. Quá trình này tiếp tục cho đến
khi xảy ra 3 lần dòch và điều khiển ổ trong trạng thái S
3
. Rồi phép trứ cuối cùng
xảy ra nếu cần, và điều khiển quay về trạng thái dừng. Với vd này sẽ giả sừ là
khi tín hiệu bắt đầu (start) xảy ra nó sẽ là 1 trong thời gian 1 clock và rồi giữ là

0 cho đến khi hệ điều khiển quay về trạng thái S
0
. Do đó Start sẽ luôn là 0 trong
các trạng thái S
1
, S
2
, S
3

S
0
Stop
S
1
S
2
S
3
C.Start/V
Start’/0
C’/0
C’.Start/Sh
C/Su
C’/Sh
C/Su
C’/Sh
C/Su

Bài Giảng Kỹ Thuật Số Chương 4

GV: Nguyễn Trọng Hải Trang
112
Từ đó suy ra lưu đồ SM như sau






















S
0
là trạng thái bắt đầu, nếu Start=1, tín hiệu so sánh C được kiểm tra, nếu C=1,
thương số lớn hơn 3 bit, vì vậy báo tràn V=1 được tạo ra và không có sự thay đổi
xảy ra. Nếu C=0, Sh=1, ở xung nhòp kế số bò chia được dòch sang trái và trạng

thái chuyển sang S
1
. C được kiểm tra trong trạng thái S
1
. Nếu C=1 có thể có
phép trừ, Su=1 và không có sự thay đổi trạng thái. Nếu C=0, Sh=1 và số bò chia
được dòch khi trạng thái chuyển sang S
2
. Hoạt động ở S
2
thì giống S
1
. Trong
trạng thái S
3
trạng thái kế luôn là S
0
, và C=1 làm cho phép trừ xảy ra

Ví dụ, Lập lưu đồ Sm cho điều khiển bộ nhân song song cho các số nhò phân
dương.
Nhân nhò phân chỉ cần phép toán dòch và cộng. Thay vì ban đầu tạo ra tất cả các
tích bộ phận rồi cộng lại, thì mỗi tích bộ phận (partial product) được cộng mỗi
khi được tạo ra và do đó không cần cộng một lần hơn 2 số nhò phân
Nhân 2 số 4 bit cần 1 thanh ghi số bò nhân (multiplicant register) 4bit, một thanh
ghi số nhân 4 bit và thanh ghi 8bit cho số hạng tích. Thanh ghi tích số làm việc
như thanh ghi tích lũy là tích lũy tổng các tích bộ phận. Thay vì dòch số bò nhân
sang trái trước khi cộng, ở đây sẽ dòch thanh ghi tích sang phải
S
0

Start
C
V
0

1

1

0
Sh
S
1
C
Su
0

1

Sh
S
2
C
Su
0
1
Sh
S
3
C

Su
0

1
00
01
10
11
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
113
Số bò nhân
Số nhân


1101
1011
Các tích bộ phận 1101
1101
10111
0000
100111
1101
Tích số 10001111
Sơ đồ khối của bộ nhân song song













Ví dụ, nhân 13 x 11 được làm lại sau đây chỉ vò trí các bit trong các thanh ghi ở
mỗi thời điểm xung nhòp

Nội dung ban đầu của t.ghi tích
lũy (cộng số bò nhân vì M=1)
000001011
1101
M(11)
(13)
Sau khi cộng
Sau khi dòch phải
Cộng số bò nhân vì M=1
011011011
001101101
1101

M=1
Sau khi cộng
Sau khi dòch phải
100111101
010011110

M=0

Bỏ qua cộng vì M=0
Sau khi dòch
cộng số bò nhân vì M=1

001001111
1101

M=1
Sau khi cộng
Sau khi dòch (đáp số)
100011111
010001111


Đường chấm chấm là đường chia giữa bộ nhân và tích số
Mạch điều khiển phải được thiết kế để cho ra chuỗi các tín hiệu cộng và dòch
đúng.
Thanh
g
hi tích lũ
y
Bộ cộng
Số b
ò
nhân
Điều
khiển
Ad
N


P
C
C
Thanh ghi tích so
á

Số nhân
P
C
Sh
M=1: cộng &dòch
M=0: dòch

Ad: tín hiệu cộng
Sh: tín hiệu dòch
P
C
: xung clock
M: bit bộ nhân
N: tín hiệu start
C: số nhớ
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
114
Giản đồ trạng thái cho điều khiển bộ nhân, SV giải thích tương tự như mạch chia


































Lập lưu đồ SM cho điều khiển bộ nhân, điều khiển này tạo ra chuỗi các xung
cộng và dòch mong muốn của bộ nhân nhò phân. Bộ đếm sẽ đếm số lần dòch và

xuất K=1 trước khi lần dòch cuối cùng xảy ra. Lưu đồ SM cho điều khiển bộ
nhân tương ứng với giản đồ trạng thái hình (c)

S
0
S
2
S
6
S
4
S
7
S
1
S
3
S
5
MN/Ad
-/Sh
M/Ad
-/Sh
M/Ad
- /Sh
M/Ad
-/Sh
N’/0
M’N/Sh
M’N/Sh

M’N/Sh
M’N/Sh
Điều khiển
Cộng - dòch
N
P
C
Ad
Sh
Bộ đếm
K=1 nếu n-1 lần dòch
S
0
S
0
S
0
M’N/Sh
MN/Ad
N’/0
M/Ad
- /Sh
M’/Sh
(a) Điều khiển bộ nhân
(b) Giản đồ trạng thái của
điều khiển cộng dòch
S
0
S
0

S
0
M’N/Sh
MN/Ad
N’/0
K/Sh
K’/Sh
M’K’/Sh
(c) Giản đồ trạng thái cuối
của điều khiển cộng dòch
M’K/Sh
M/Ad
Bài Giảng Kỹ Thuật Số Chương 4
GV: Nguyễn Trọng Hải Trang
115









































S
0
N
M
Sh

Ad
Sh
K
M
Ad
Sh
M
S
1
S
2
0
1
10
1 0
10
10

×