Anda di halaman 1dari 39

PERANCANGAN SISTEM DIGITAL

BAB II
PENDEKATAN MESIN KEADAAN
II.1 Mesin Keadaan Berhingga (FSM)
Konsep Keadaan
Diagram Keadaan
Tabel Transisi Keadaan

Contoh-contoh FSM
II.3 Sintesis FSM
Spesifikasi Keadaan, Input & Output
Reduksi Keadaan.

Penyandian level biner


Flipflop dan Eksitasi keadaan
Tabel Keadaan level Biner.
Analisis FSM

2
BAB II.1
MESIN KEADAAN BERHINGGA
(Finite State Machine)

3
KONSEP KEADAAN

Sistem Digital Kombinatorial vs Sekuensial

Sistem Digital Kombinatorial :


Output saat ini y(t) ditentukan oleh input saat ini x(t).

Sistem Digital Sekuensial :


Output saat ini y(t) ditentukan oleh input saat ini x(t)
dan oleh input-input sebelumnya x(t-1), x(t-2),, x(t-k).

perlu pengingat (memory)


berapa besar ukuran memory tsb ???
4
Sistem
m Sistem n m n
Digital
x(t) Digital y(t) x(t) Sek.
y(t)
Komb.
Memory

Ukuran memory tergantung pada sistemnya :


Sistem yang membutuhkan x(t-1), x(t-2), . . . , x(t - )
untuk membentuk outputnya disebut sistem dengan
memory takberhingga, tidak dapat direalisasikan secara
hardware.
Sistem yang membutuhkan x(t-1), x(t-2), . . . , x(t - K) ,
dengan K berhingga, disebut sistem dengan memory
berhingga, dapat direalisasikan. 5
Contoh : Rangkuman ingatan pada sistem dengan input
1 bit dan ingatan x(t-1), x(t-2).

x(t-1) x(t-2)
0 0 komb.0 Bila ingatan sistem adalah
0 1 komb.1 kombinasi x(t-1) x(t-2) maka
1 0 komb.2 sistem memiliki 4 keadaan.
1 1 komb.3

x(t-1) x(t-2)
Bila ingatan sistem adalah
0 0 sama
sama tidaknya x(t-1) x(t-2)
0 1 tak-sama maka sistem memiliki 2
1 0 tak-sama keadaan.
1 1 sama 6
Mesin Keadaan Berhingga (Finite State Machine)
Sistem sekuensial dengan memory berhingga dapat
dimodelkan sebagai Finite State Machine (FSM), yaitu
mesin dengan satu set keadaan yang jumlahnya
berhingga.
Keadaan-keadaan yang dimiliki oleh sistem merupakan
rangkuman/ringkasan dari input-input sebelumnya.
Dalam operasinya, sistem akan bertransisi dari keadaan
saat ini ke keadaan berikutnya. Arah transisi ditentukan
oleh keadaan saat ini dan input saat ini.
Pada FSM sinkron, transisi keadaan dipicu oleh pulsa
clock .
7
Contoh : x=a
atau
x=c
x FSM y x=a
x=b
S0 S1
keadaan input keadaan
saat-ini saat ini berikutnya x=c x=b
S0 a S0
x=a
b S1
c S3 S2 x=b
atau
S1 a
x=c
b
c
S2 a
b
8
c
Berdasarkan transisi keadaannya, dikenal dua tipe FSM,
1. FSM sinkron : Transisi keadaan atau perubahan output
bagian pengingat keadaan dipicu oleh
transisi pulsa clock (transisi naik atau
transisi turun).
2. FSM asinkron : Transisi keadaan atau perubahan
output bagian pengingat keadaan
dipicu oleh perubahan input. FSM ini
tidak menggunakan clock.
FSM asinkron
+++ kecepatannya lebih tinggi.
- - - sulit dikendalikan, membutuhkan hardware lebih
kompleks. 9
Transisi keadaa pada FSM sinkron

clock :
t

input x : a c b b
t

State : S0 S2 ? ?
t

transisi keadaan terjadi pada saat pemicuan clock

10
Struktur FSM sinkron
input eksternal : x(t), input saat-ini,
output eksternal : y(t), output saat-ini,
input internal : S(t) atau keadaan saat-ini,
output internal : e(t) atau eksitasi saat-ini.

x(t) y(t)
Bagian
Kombinatorial e(t)

S(t) Pengingat
keadaan Clock

11
Bagian kombinatorial terdiri dari dua sub-bagian :
Bagian pembangkit output y(t).
(bagian output logic)
Bagian pembangkit output eksitasi e(t).
(bagian next-state logic)
Pengingat keadaan menyimpan keadaan saat ini S(t).
Clock untuk mensinkronkan saat terjadinya transisi dari
keadaan saat ini S(t) ke keadaan berikutnya S(t+1) = e(t).

12
present next
t-3 t-2 t-1 t t+1

clock
t
input x x(t)
t
state S S(t) S(t+1)
t
transisi-keadaan

13
Berdasarkan pembentukan outputnya, dikenal dua tipe
FSM : (1) Tipe Moore (2) Tipe Mealy

bagian kombinatorial

x(t) y(t)
Pembangkit
Output

pembangkit
eksitasi e(t) = S(t+1)

S(t) pengingat
Clock keadaan

tipe Moore : output saat ini y(t) hanya ditentukan oleh


14
keadaan saat ini S(t). y(t) = f(S(t)).
bagian kombinatorial

x(t) y(t)
Pembangkit
Output

pembangkit
eksitasi
e(t) = S(t+1)

S(t)
pengingat
keadaan
Clock

tipe Mealy : output saat ini y(t) ditentukan oleh input


saat ini x(t) dan keadaan saat ini S(t). y(t) = f(x(t), S(t)).
15
Perilaku FSM dapat dinyatakan dalam bentuk :
Diagram Keadaan
Tabel Keadaan
Diagram Algorithmic State Machine

Diagram Transisi Keadaan


Contoh, untuk sistem y0
x FSM
Simbol : y1
Keadaan
clock
Sa : Nama keadaan.
Sa y1 y1 : Output yg diaktifkan ketika sistem
masuk ke keadaan Sa. 16
Transisi keadaan
x y0
Sa y1 Sb
x

Transisi dari keadaan Sa ke keadaan Sb.


Transisi ini dilakukan bila di keadaan Sa , input
x aktif.
Aktifnya x di keadaan Sa akan mengaktifkan
output y0 di keadaan Sa.

Transisi dari keadaan Sa ke keadaan Sa.


Transisi ini dilakukan bila di keadaan Sa , input
x tidak aktif.
17
Contoh : Untuk FSM dengan input x dan output y

FSM
x y

clock

x d

x x y
Sa y Sb Sc

x
x = not x

d = dont care (transisi terjadi untuk harga input


sembarang) 18
TABEL TRANSISI KEADAAN
d
x
x x y
Sa y Sb Sc
x

Present State Present Input Pr.Output Next State

S(t) x(t) y(t) S(t+1)


Sa salah aktif Sb
benar aktif Sa
Sb salah non-aktif Sa
benar aktif Sc
Sc salah non-aktif Sa
benar non-aktif Sa 19
Versi lain Tabel Transisi Keadaan

d
x
x x y
Sa y Sb Sc
x

Present State Next State S(t+1)/ output y(t)


S(t) x(t)=salah x(t)=benar
Sa Sb / aktif Sa / aktif
Sb Sa / non-aktif Sc / aktif
Sc Sa / non-aktif Sa / non-aktif
20
Contoh : x y
FSM

Himpunan harga input : x = a , b, c


Himpunan harga output : y = p , q
Himpunan keadaan : S = S0 , S1, S2

a q
a p
Diagram Keadaan : c q
S0 S1
c p
b q b q

S2
d q 21
clock

S0 S0 S1 S2 S1 S1 S0 S2
S(t) t

a c c b b a b
x(t) t


p q p q q q q
y(t) t

22
Tabel Transisi Keadaan

Present Present Present Next State


State Input Output
S(t) x(t) y(t) S(t+1)
S0 a p S0
S0 S0 b q S2
S0 c q S1
S1 a q S0
S1 S1 b q S1
S1 c p S2
S2 a q S1
S2 S2 b q S1
S2 c q S1
23
a q
a p
c q
S0 S1
c p
b q b q

S2
a,b,c q

S(t) S(t+1) / y(t)


x(t) = a x(t) = b x(t) = c
S0 S0 / p S2 / q S1 / q
S1 S0 / q S1 / p S2 / p
S2 S1 / q S1 / q S1 / q
24
Diagram Keadaan tipe Moore
Output y pada keadaan S0
Reset selalu bernilai p (tidak ter-
gantung pada inputnya)

a b a
S p S Output y pada keadaan S1
0 2 r
selalu bernilai q (tidak ter-
c gantung pada inputnya)
c

Output y pada keadaan S2


a b selalu bernilai r (tidak ter-
c
gantung pada inputnya)
b a c
S S q
1 q 3 Output y pada keadaan S3
selalu bernilai q (tidak ter-
gantung pada inputnya)25
Algorithmic State Machine Chart

Sebagaimana halnya Diagram Keadaan, ASM chart


juga digunakan untuk menggambarkan perilaku
sistem sekuensial, utamanya untuk sistem sistem
yang lebih kompleks.

ASM chart mirip dengan flow chart yang kita


gunakan untuk membuat program bagi komputer.

Elemen-elemen ASM chart :

26
(a) State box (b) Decision box

State name:

Output signals 0 (False) Condition 1 (True)


or actions expression
(Moore type)

atau

Condition
(c) Conditional output box expression

Conditional outputs
or actions (Mealy type)

27
satu keadaan
3.6 Sequential Circuits

28
Diagram Keadaan
ASM Chart
Reset
Reset

A
w= 1

w= 0 A z = 0 B z = 0
0
w
w= 0 1

w= 0 w= 1

0
w
1

C z = 1
C

0 1
w= 1 w 29
ASM untuk pengendalian oven microwave
3.6 Sequential Circuits

30
ASM utk Flipflop JK

Q=0
S0

00 or 01
J Q
JK?
clock
10 or 11
K Q
S1
Q=1

00 or 10
JK?

01 or 11

31
ASM Chart S0 Y = 00
Pencacah Modulo-3
0
EN?
Y
1
2 S1
clock Y = 01
Mod.3 Counter
EN
0
EN?
1
S2
Y = 10

0
EN?

1 32
Soal Latihan :

1. (a) Buatlah Tabel Transisi Keadaannya


(b) Gambarkan ASM chartnya.

FSM Mealy FSM Moore


1/1 1/0
0/1 0/0 0/1 0/0
S0/ S1/
S0 S1 1 0
1/0 1/1

33
2. Buktikan pernyataan dibawah ini dengan melengkapi timing diagram
pada slide 26.

Moore FSM pengenal runtun input 10

1
0 0
1
S0 / 0 S1 / 0 S2 / 1
1

reset 0

Mealy FSM pengenal runtun 10

1/0
1/0
0/0 S0 S1
0/1
reset 34
clock
t

input 0 1 0 1 0
t

Mealy :

state S0 S? S? S? S? S?
t

output ? ? ? ? ?
t

Moore :

state S0 S? S? S? S? S?
t

output
? ? ? ? ? 35
t
Reset

a S b a
0 p S2 r

c
c 3. (a) Gambarkan ASM chartnya.
(b) Isikan Keadaan dan Output
pada timing diagram dibawah ini
a b
c
b S a S q c
1 q 3

clk

Input: a b c b a a c b c

State S1 S0 S2 S3 S2 S2 S2 S3 S2

Output: q p r q r r r q r 36
4. Diagram Keadaan tipe Meally

a p

Output y pada keadaan S0


dapat bernilai p atau q (tergantung
S0 Reset
pada inputnya)
b,c q
Output y pada keadaan S2
S1 dapat bernilai p atau q (tergantung
pada inputnya)
a, b, c p

c p Output y pada keadaan S1


S2
selalu bernilai p (tidak tergantung
pada inputnya)
a, b q
37
a p

S0 Reset

b,c q 4. (a) Gambarkan ASM chartnya.


Reset
(b) Isikan Keadaan dan Outputnya
S1
a, b, c p

S2 c p
clk

a, b q Inp. a b c b a a c b c

State S1 S2 S0 S1 S2 S0 S0 S1 S2

38
Out p q q p q p q p qr
5. (a) Gambarkan blok diagram strukturnya
(b) Buatlah Tabel Keadaannya
(c) Gambarkan ASM chartnya.

39

Anda mungkin juga menyukai