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

Thiết kế mạch số dùng HDL-Chương 3: Thiết kế mạch luậnlý tuần tự ppt

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 (327.43 KB, 41 trang )

2009
dce
Thiết kế mạch số dùng HDL
Chương 3: Thiếtkế mạch luậnlý
Chương

3:

Thiết

kế

mạch

luậnlý

tuần tự
0
9
Nội dung chính
g
20
0
• Các phần tử lưu trữ
Fli
Fl
e
rin
g

Fli


p-
Fl
op
• Bus và các thiết b

ba tr

n
g
thái
g
ine
e
ị ạ g
•Thiết kế máy tuần tự

Đồ thị biến đổitrạng thái (State
En
g

Đồ

thị

biến

đổi

trạng


thái

(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ
c
h
uy

n m
ã
n
ối

tiế
p c
h
o v
iệ
c
t
ruy

n
dữ


liệu (Serial-line code converter)
o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong
2
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0
9
Nội dung chính
g
20
0
• Các phần tử lưu trữ
Fli
Fl
e
rin
g

Fli
p-

Fl
op
• Bus và các thiết b

ba tr

n
g
thái
g
ine
e
ị ạ g
•Thiết kế máy tuần tự

Đồ thị biến đổitrạng thái (State
En
g

Đồ

thị

biến

đổi

trạng

thái


(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ
c
h
uy

n m
ã
n
ối

tiế
p c
h
o v
iệ
c
t
ruy

n
dữ

liệu (Serial-line code converter)

o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong
3
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0
9
Mạch tuần tự
g
20
0
• Ngõ ra ở thời điểm t phụ
thuộc vào ngõ vào tạithời
e
rin
g
thuộc

vào

ngõ


vào

tại

thời

điểm t và “lịch sử” ngõ
vào trước đó
1
a
g
ine
e
•Cần những phần tử lưu
trữ lại các trạng thái quá
Sequential
y
1
b
c
a
y2
En
g
khứ của mạch
•Mạch tuần tự có thể là
đ đị hh á ất
Circuit
y3

uter
đ
ơn
đị
n
h

h
ay x
á
c su
ất
,
đồng bộ hay bất đồng bộ

Các phầnmềmtổng hợp
o
mp

Các

phần

mềm

tổng

hợp

hiện chỉ hỗ trợ đồng bộ

(synchronous)
C
o
©2009, Pham Quoc Cuong
4
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
(synchronous)
0
9
Các phần tử bộ nhớ (Storage elements)
g
20
0
•Lưu trữ thông tin dưới dạng nhị phân
e
rin
g
• Level sensitive

Latches
g
ine
e
Latches
 Ngõ ra của mạch thay đổi ngay khi một hay
nhiều ngõ vào thay đổi (tín hiệu enable tích
En

g
nhiều

ngõ

vào

thay

đổi

(tín

hiệu

enable

tích

cực)
Ed iti
uter

Ed
ge sens
iti
ve
 Flip-Flop
o
mp

 Ngõ ra của mạch chỉ thay đổi khi có tín hiệu
đồng bộ
C
o
©2009, Pham Quoc Cuong
5
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
đồng

bộ
0
9
Latches
g
20
0
e
rin
g
g
ine
e
En
g
S1 R1 Q
next
Q’

next
S2 R2 Q
next
Q’
next
uter
00 Q Q’ Hold
0
1
0
1
Reset
00 1 1
Not allowed
0
1
1
0
Set
o
mp
0
1
0
1
Reset
10 1 0 Set
0
1
1

0
Set
10 0 1 Reset
C
o
©2009, Pham Quoc Cuong
6
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
11 0 0
Not allowed
11 Q Q’ Hold
0
9
Latches trong suốt (D-latch)
g
20
0
•Dữ liệu ngõ ra chỉ thay đổi theo ngõ vào
khi l t h đ hé h t độ (bl)
e
rin
g
khi

l
a
t

c
h

đ
ược p

p
h
oạ
t

độ
ng
(
ena
bl
e
)
• Clocked Latch
g
ine
e
En
g
uter
o
mp
Enable = 0, Hold state
C
o

©2009, Pham Quoc Cuong
7
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
0
9
D-latch
g
20
0
e
rin
g
g
ine
e
En
g
uter
o
mpC
o
©2009, Pham Quoc Cuong
8
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3

0
9
Nội dung chính
g
20
0
• Các phần tử lưu trữ
Fli
Fl
e
rin
g

Fli
p-
Fl
op
• Bus và các thiết b

ba tr

n
g
thái
g
ine
e
ị ạ g
•Thiết kế máy tuần tự


Đồ thị biến đổitrạng thái (State
En
g

Đồ

thị

biến

đổi

trạng

thái

(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ
c
h
uy

n m
ã
n

ối

tiế
p c
h
o v
iệ
c
t
ruy

n
dữ

liệu (Serial-line code converter)
o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong
9
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0

9
Flip-Flop
g
20
0
•Hoạt động đồng bộ với cạnh lên hoặc
ố ủ lk
e
rin
g
xu

ng c

a xung c
l
oc
k
 D FF
g
ine
e
 Master-slave FF

J
-
KFF
En
g


J
-
K

FF
 T FF
uter
o
mpC
o
©2009, Pham Quoc Cuong
10
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
0
9
D Flip-Flop
g
20
0
DQQ
next
D
Q
e
rin
g
00 0

01 0
D
Q
g
ine
e
10 1
11 1
clk Q'
En
g
uter
o
mpC
o
©2009, Pham Quoc Cuong
11
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
0
9
Master-slave Flip-Flop
g
20
0
• D FF có thể được hiện thực từ 2 D-latch
ới ấ tú
Mt

Sl
e
rin
g
v
ới
c

u
t
r
ú
c
M
as
t
e
r
-
Sl
ave
D
D
Q
Q
Data
g
ine
e
En

En
Q'
Q
En
g

Transmission gate (non
-
restoring)
clock
uter
Transmission

gate

(non
restoring)
~enable
~enable
o
mp
enable
output_sig
input_sig
C
o
©2009, Pham Quoc Cuong
12
Advanced Digital Design with the Verilog HDL -
cha

p
ter 3
enable
enable
0
9
JK FF và T FF
g
20
0
• JK Flip Flop
e
rin
g
J Q
g
ine
e
clk
Q'
K
En
g

T Flip Flop (Toggle FF)
uter

T

Flip


Flop

(Toggle

FF)
T Q
o
mp
clk
Q
'
C
o
©2009, Pham Quoc Cuong
13
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
clk
Q
0
9
Nội dung chính
g
20
0
• Các phần tử lưu trữ
Fli

Fl
e
rin
g

Fli
p-
Fl
op
• Bus và các thiết b

ba tr

n
g
thái
g
ine
e
ị ạ g
•Thiết kế máy tuần tự

Đồ thị biến đổitrạng thái (State
En
g

Đồ

thị


biến

đổi

trạng

thái

(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ
c
h
uy

n m
ã
n
ối

tiế
p c
h
o v
iệ
c

t
ruy

n
dữ

liệu (Serial-line code converter)
o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong
14
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0
9
Bus và các thiết bị ba trạng thái
g
20
0
•Bus
ế ố ề ế
e

rin
g
 K
ế
t n

i nhi

u thi
ế
t bị với nhau

Đ
ườn
g
dữ li

u tốc đ

cao
g
ine
e
g ệ ộ
•Thiết bị ba trạng thái
Kết ốiàb
En
g

Kết

n
ối
v
à
o
b
us
 Ngõ ra là hàm của ngõ vào nếu tín hiệu điều

uter
khi

n tích cực
 N
g
õ ra ở dạn
g
tổn
g
trở cao
(
Hi-Z
)
nếu tín hiệu
o
mp
g g g (
)
điều khiển không tích cực
C

o
©2009, Pham Quoc Cuong
15
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
0
9
Nội dung chính
g
20
0
• Các phần tử lưu trữ
Fli
Fl
e
rin
g

Fli
p-
Fl
op
• Bus và các thiết b

ba tr

n
g

thái
g
ine
e
ị ạ g
• Thiết kế máy tuần tự

Đồ thị biến đổitrạng thái (State
En
g

Đồ

thị

biến

đổi

trạng

thái

(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ

c
h
uy

n m
ã
n
ối

tiế
p c
h
o v
iệ
c
t
ruy

n
dữ

liệu (Serial-line code converter)
o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong

16
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0
9
Máy tuần tự - Định nghĩa
g
20
0
•Trạng thái (State) của máy tuần tự là những thông tin
hi

n t

i của má
y
e
rin
g
ệ ạ y
•Trạng thái ở thời điểm t + 1 được quyết định bởi trạng
thái ở thời điểm t và giá trị đầu vào tại thời điểm t
g
ine
e
•Tập hợp các trạng thái của máy trạng thái là hữu hạn
nên được gọi là máy trạng thái hữu hạn (Finite State

Machine
-
FSM
)
En
g
Machine

FSM
)
Present State
(PS)
Input
uter
Next-state Logic Memory
Next state
(NS)
(PS)
o
mpC
o
©2009, Pham Quoc Cuong
17
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
Feedback of present state
Block Diagram of a sequential
machine

0
9
Máy trạng thái đồng bộ
(Synchronous sequential machine)
g
20
0
(Synchronous

sequential

machine)
• Máy trạng thái bất đồng bộ gặp vấn đề race
condition
e
rin
g
condition
• Máy trạng thái đồng bộ sử dụng xung clock để
đồng bộ các trạng thái ngõ vào
g
ine
e
đồng

bộ

các

trạng


thái

ngõ

vào
• Tín hiệu xung clock có thể đối xứng hay bất đối
xứng
En
g
xứng
•Thời khoảng xung clock phải lớn hơn thời gian
tính toán chuyểntrạng thái
uter
tính

toán

chuyển

trạng

thái
• Máy trạng thái hữu hạn đồng bộ (Synchronous
FSMs)
o
mp
FSMs)
 Số trạng thái


Điềukhiển chuyểntrạng thái bằng xung clock
C
o
©2009, Pham Quoc Cuong
18
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
Điều

khiển

chuyển

trạng

thái

bằng

xung

clock
0
9
Mealy machine vs. Moore machine
g
20
0

Next-state
C
State register
OutputInput
Output
C
e
rin
g
C
ombinational
Logic
State

register
(Memory)
C
ombinational
Logic
C
l
oc
k
g
ine
e
Feedback of present state
Coc
Block Diagram of a Mealy sequential machine
En

g
Block

Diagram

of

a

Mealy

sequential

machine
Next
-
state
St t i t
OutputInput
Output
uter
Next state

Combinational
Logic
St
a
t
e reg
i

s
t
er
(Memory)
Output
Combinational
Logic
Clock
o
mp
Feedback of
p
resent state
Clock
C
o
©2009, Pham Quoc Cuong
19
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
p
Block Diagram of a Moore sequential machine
0
9
Nội dung chính
g
20
0

• Các phần tử lưu trữ
Fli
Fl
e
rin
g

Fli
p-
Fl
op
• Bus và các thiết b

ba tr

n
g
thái
g
ine
e
ị ạ g
•Thiết kế máy tuần tự

Đồ thị biến đổitrạng thái (State
En
g

Đồ


thị

biến

đổi

trạng

thái

(State
-
Transaction Graph)
Bộ h ể ã ốitiế hiệ t ề dữ
uter

Bộ
c
h
uy

n m
ã
n
ối

tiế
p c
h
o v

iệ
c
t
ruy

n
dữ

liệu (Serial-line code converter)
o
mp
•Rút gọn trạng và các trạng thái tương
đươn
g
C
o
©2009, Pham Quoc Cuong
20
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
g
0
9
Đồ thị biến đổi trạng thái
g
20
0
•Một máy trạng thái có thể biểu diễn bằng


Đồ thị trạng thái bảng trạng thái
e
rin
g

Đồ

thị

trạng

thái
,
bảng

trạng

thái
 Giản đồ thời gian

Sơ đồ ASM (Abstract state machine)
g
ine
e


đồ

ASM


(Abstract

state

machine)
• Đồ thị chuyển trạng thái (STG) là một đồ thị có
hướng
En
g
hướng
 Các đỉnh biểu diễn các trạng thái (nếu là Moore
machine thì thêm giá trị ngõ ra)
uter
 Các cạnh biểu diễn sự chuyển đổi từ trạng thái này
đến trạng thái khác
Tê á h
o
mp


n c
á
c cạn
h
 Mealy machine: input/output
Mhiit
C
o
©2009, Pham Quoc Cuong

21
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3

M
oore mac
hi
ne:
i
npu
t
0
9
Ví dụ - Mealy
g
20
0
Next state/Output table
reset
e
rin
g
State
Next state/output
input
S_0
1/0
0/1

g
ine
e
01
S_0 S_1/1 S_2/0
S_1 S_2
1/0
1/0
En
g
S_1
S_2
S3
S_3/1
S_4/0
S5/0
S_4/0
S_4/1
S5/1
S_3 S_4
0/0, 1/1
0/1
0/0 1/1
uter
S
_
3
S_4
S5
S

_
5/0
S_5/1
S0/0
S
_
5/1
S_6/0
S0/1
S5
S6
0/10/0 1/1
o
mp
State transition graph
S
_
5
S_6
S
_
0/0
S_0/1
S
_
0/1
-/-
S
_
5

S
_
6
0/10/1
State transition table
C
o
©2009, Pham Quoc Cuong
22
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
State

transition

table
0
9
Ví dụ
g
20
0
Next State/Output
1/0
0/1
e
rin
g

State Input
01
S0
S1/0
S2/1
S_2 S_0 S_1
1/0
0/1
g
ine
e
S
_
0
S_1
S_2
S
_
1/0
S_0/1
-
S
_
2/1
-
S_0/0
1/1 0/0
En
g
S_0/0 S_1/0

0
St t
Next State/Output
It
uter
00
11
St
a
t
e
I
npu
t
01
S0 S1/0 S3/1
o
mp
S_3/1 S_2/1
1
_
S_1
S_3
S_2
_
S_2/1
-
S_1/0
_
-

S_0/1
S_3/0
C
o
©2009, Pham Quoc Cuong
23
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
State transition graph
State transition table
0
9
Các điều kiện
g
20
0
•Mỗi đỉnh chỉ biểu diễn duy nhất một trạng
thái
e
rin
g
thái
•Mỗi c

nh chỉ biểu diễn du
y
nhất m


t s


g
ine
e
ạ y ộ ự
biến đổi từ trạng thái hiện tại đến trạng
thái tiếp theo
En
g
thái

tiếp

theo
•Tại mỗi đỉnh phải có tất cả các cạnh có thể
uter
ra khỏi đỉnh đó

Tạimỗi đỉnh chỉ có duy nhấtmộtcáchđi
o
mp
Tại

mỗi

đỉnh

chỉ




duy

nhất

một

cách

đi

ra khỏi đỉnh đó tại thời điểm xác định
C
o
©2009, Pham Quoc Cuong
24
Advanced Digital Design with the Verilog HDL -
cha
p
ter 3
0
9
Xây dựng đồ thị chuyển mã BCD thành
Excess
-
3 (1)
g
20

0
Excess
3

(1)
• Mã Excess-3 là mã self-
complementing
(bù 9)
Decimal digit BCD Excess-3
e
rin
g
complementing

(bù

9)
 6
10
= 0110
2
 6
excess-3
= 0110
2
+ 0011
2
0 0000 0011
1 0001 0100
g

ine
e
2 0010 0101
3 0011 0110
En
g
4 0100 0111
5
0101
1000
uter
5
0101
1000
6 0110 1001
7
0111
1010
o
mp
7
0111
1010
8 1000 1011
C
o
©2009, Pham Quoc Cuong
25
Advanced Digital Design with the Verilog HDL -
cha

p
ter 3
9 1001 1100

×