Teori State Diagram

46
CS2624 - COMPUTER ORGANIZATION & ARCHITECTURE (COA) (COA) Rangkaian Sekuensial Rangkaian Sekuensial bagian 1 Maret 2010

description

Teori State Diagram

Transcript of Teori State Diagram

CS2624 - COMPUTER ORGANIZATION & ARCHITECTURE

(COA)(COA)

Rangkaian SekuensialRangkaian Sekuensialbagian 1g

Maret 2010

Pokok BahasanPokok Bahasan• Pendahuluan• Urutan Keadaan/State• Sifat Rangkaian Sekuensial

Synchronous– Synchronous– Asynchronous

• Model Rangkaian Sekuensial– Moore– Mealy

• Finite State Machine (FSM)Finite State Machine (FSM)• Sel Memori Dasar• Flip-Flop (FF)

20100328 #2

PendahuluanPendahuluan• Apa beda rangkaian Sekuensial dengan rangkaian

Kombinasional ?– Mempunyai memori (state)– Status sekarang (Present State = Qt) tidak hanya ditentukan oleh

masukan (input) sekarang, tetapi juga oleh semua masukan ( p ) g p j gsebelumnya (history)

– Status yang akan datang (Next State = Qt+1) bergantung pada masukan dan status sekarang

• Contoh rangkaian kombinasional: ALU, adder, decoder, MUX, dll• Contoh rangkaian sekuensial: CPU, Flip-flop, manusia (kondisi

besok tidak hanya tergantung pada kondisi saat ini, tapi dipengaruhi oleh kondisi besok)dipengaruhi oleh kondisi besok)

))t(Q),t(X(F)t(Z

))()(()( ))(),(()( tQtXGtQ

20100328 #3

Urutan Keadaan/StateUrutan Keadaan/StateUrutan naik (up) sederhana dalam biner yang menunjukkan Present State (PS) dan Next State (NS):

Urutan naik/turun (up/down) 2 arah dalam biner yang menunjukkan PS dan NS ditentukan oleh nilai X:

Urutan naik/turun (up/down) 2 arah dalam biner yang menghasilkan output X pada state 111 (tanpa ( ) y g g (syarat):

Urutan naik/turun (up/down) 2 arah dalam biner yang menghasilkan output X pada state 111 jika input = X (ada syaratnya):

20100328 #4COA/Endro Ariyanto/

Sifat Rangkaian SekuensialSifat Rangkaian SekuensialSif t• Sifat:– Sinkron:

• Berjalan secara serentak atau bersama-sama• Clock-nya hanya satu (terpusat)

– Asinkron: • Berjalan sendiri-sendirij• Desentralisasi

20100328 #5

Desain SynchronousDesain Synchronous• Menggunakan Clock untuk meng-sinkronkan semua operasi

Flip-Flop (FF), register, dan counter pada sistemSemua perubahan terjadi secara langsung mengikuti perubahan clock– Semua perubahan terjadi secara langsung mengikuti perubahan clock

– Periode clock harus cukup sehingga semua perubahan FF, register, dan counter memiliki waktu yang cukup untuk menstabilkan statusnyasebelum clock berubah ke keadaan selanjutnya

• Typical design: Control section + Data Section

20100328 #6

Prinsip Mendesain SynchronousPrinsip Mendesain SynchronousM t d• Metoda– Semua input clock ke flip-flop, register, counter, dll,

digerakkan secara langsung dari clock sistem atau daridigerakkan secara langsung dari clock sistem atau dari clock yang di-AND-kan dengan kontrol sinyal

• HasilHasil– Semua state berubah secara langsung mengikuti

perubahan sinyal clock dalam keadaan active edgey• Keuntungan

– Semua switching transients, switching noise, dll. terdapat g g pdi antara clock pulse -> tidak saling mendahului

– Tidak memiliki efek terhadap performansi sistem

20100328 #7

Desain AsynchronousDesain AsynchronousKerugian• Kerugian– Lebih sulit– Masalah

• Race conditions: final state tergantung urutan perubahan variabel• Dapat terjadi hazard

– Diperlukan teknik khusus untuk mendesain agar kondisi race dan h d t hi d ihazard terhindari

• Keuntungan = kerugian dari desain synchronous– Pada desain high-speed synchronous delay propagasi pada wiringPada desain high speed synchronous delay propagasi pada wiring

sangat signifikan• Sinyal clock harus hati-hati di-rute-kan sehingga dapat menjangkau semua

perangkat pada waktu yang samaperangkat pada waktu yang sama– Input tidak sinkron dengan clock

• Perlu sinkronisasi– Dalam keadaan terburuk siklus clock didefinisikan oleh delay

20100328 #8

Model Rangkaian Sekuensial (1)

Urutan state:

Model rangkaiannya:

rangkaiannya:

20100328 #9COA/Endro Ariyanto/

Model Rangkaian Sekuensial (2)

Urutan state:

Model rangkaiannya:

rangkaiannya:

Model:•Moore•Mealy

20100328 #10COA/Endro Ariyanto/

Model Rangkaian Sekuensial Moore (1)

• Output hanya tergantung Present State (PS)

PS = Present StatePS = Present StateNS = Next StateIP = InputOP = OutputOP = Output

•PS ditentukan oleh NS•NS ditentukan oleh Input dan PSNS ditentukan oleh Input dan PS•Output hanya ditentukan oleh PS

20100328 #11

Model Rangkaian Sekuensial Moore (2)

Urutan state:

Model rangkaiannya:

rangkaiannya:

20100328 #12COA/Endro Ariyanto/

Model Rangkaian Sekuensial Moore (2)Model Rangkaian Sekuensial Moore (2)

Output(Z)Combinational

Network

Inputs(X)Combinational

NetworkState

Register =

Next State State(Q)

Clock

Network Register FF

• Next State dan Output diimplementasikan dengan rangkaian kombinasional• Memory diimplementasikan dengan state register (misal Flip-flop)

X = x1 x2... xnQ = Q1 Q2... Qk ))t(Q(F)t(Z

))t(Q),t(X(G)t(Q

Z = z1 z2... zm))t(Q(F)t(Z

20100328 #13

Model Rangkaian Sekuensial Mealy (1)

•PS ditentukan oleh NS•NS ditentukan oleh Input dan PSNS ditentukan oleh Input dan PS•Output ditentukan oleh Input dan PS

20100328 #14COA/Endro Ariyanto/

Model Rangkaian Sekuensial Mealy (2)

Urutan state:

Model rangkaiannya:

rangkaiannya:

20100328 #15COA/Endro Ariyanto/

Model Rangkaian Sekuensial Mealy (3)Model Rangkaian Sekuensial Mealy (3)

(1) X input diubah ke nilai yang baru(2) Setelah dela Z o tp t dan ne t state tampil sebagai o tp t di CN(2) Setelah delay, Z output dan next state tampil sebagai output di CN(3) Next State dihubungkan sebagai state register dan perubahan state

20100328 #16

Cara untuk menggambarkan StateCara untuk menggambarkan StateD Fi it St t M hi (FSM)– Dengan Finite State Machine (FSM) • Jumlah state harus berhingga/terbatas (2

hingga 2N)hingga 2N)• Seperti Data Flow Diagram (DFD)

– Dengan Algorithmic State Machine (ASM)S ti Fl h t• Seperti Flowchart

20100328 #17

Finite State Machine (FSM) (1)Finite State Machine (FSM) (1)

• Representasi FSM:– Dengan Diagram Keadaang g– Dengan Tabel Transisi Keadaan

Dengan Hardware Description Language– Dengan Hardware Description Language• VHDL

V il• Verilog• ABEL

20100328 #18

Finite State Machine (2)

•Notasi pada Diagram Keadaan: Terdapat 4 state (d, e, f, g)

Input/state map untuk state e:

XY’ + X’Y’ + Y = 1

20100328 #19

Finite State Machine (3)

Contoh Diagram Keadaan dengan FSM: Contoh Hardware Description Program:Description Program:

20100328 #20

Urut-Urutan

Tabel  Uraian Tabel  Diagram Fungsi Operasi Operasi KeadaanBoolean

TabelTabel Transisi

20100328 #21COA/Endro Ariyanto/

Sel Memori Dasar dengan Set Dominant (1)Sel Memori Dasar dengan Set-Dominant (1)

K S t (S)• Konsep Set (S):

Wire loop dengan delayd 2 b h i t

Salah satu inverterdi ti d

Tabel k bdan 2 buah inverter diganti dengan

pengganti NAND untuk membuat input Set

kebenaran gambar b

input Set

20100328 #22COA/Endro Ariyanto/

Sel Memori Dasar dengan Set Dominant (2)

K S t (S) d R t (R)

Sel Memori Dasar dengan Set-Dominant (2)

• Konsep Set (S) dan Reset (R):

Tabel operasi:

• Inverter pada konsep Set diganti dengan NAND sehingga dihasilkan input untuk• Inverter pada konsep Set diganti dengan NAND, sehingga dihasilkan input untuk Reset

• Kondisi Reset (Reset saja) = S’R• Kondisi Reset Hold (reset dan hold) = S’R’ + S’R = S’• Kondisi Reset Hold (reset dan hold) = S R + S R = S• Kondisi Set (set saja) = SR’+SR = S• Kondisi Set Hold (set dan hold) = S’R’+ SR’+SR = R’+SR = R’+S 20100328 #23COA/Endro Ariyanto/

Sel Memori Dasar dengan Set Dominant (3)

• Konsep Set (S) dan Reset (R):

Sel Memori Dasar dengan Set-Dominant (3)

Reset Hold

Diagram keadaan:

Tabel transisi:

Simbol sel memori:

Resetstate

R tReset

Set

Setstate

State diagram Timing diagramPengembangan

Set Hold

gberdasarkan uraian tabel operasi

Timing diagramg gstate diagram

20100328 #24COA/Endro Ariyanto/

Sel Memori Dasar dengan Reset Dominant (1)

K S t (S) d R t (R)

Sel Memori Dasar dengan Reset-Dominant (1)

• Konsep Set (S) dan Reset (R):

Tabel operasi:

• Inverter pada konsep Set diganti dengan NOR dan substitusinya• Inverter pada konsep Set diganti dengan NOR dan substitusinya• Kondisi Reset (Reset saja) = S’R + SR = R• Kondisi Reset Hold (reset dan hold) = R + S’R’ = R+S’

K di i S t ( t j ) SR’• Kondisi Set (set saja) = SR’• Kondisi Set Hold (set dan hold) = SR’ + S’R’ = R’

20100328 #25COA/Endro Ariyanto/

Sel Memori Dasar dengan Reset Dominant (2)

• Konsep Set (S) dan Reset (R):

Sel Memori Dasar dengan Reset-Dominant (2)

Reset Hold

Diagram keadaan:Tabel transisi:

Simbol sel memori:

Resetstate

R tReset

Set

Setstate

State diagram Timing diagramPengembangan

Set Hold

gberdasarkan uraian tabel operasi

Timing diagramg gstate diagram

20100328 #26COA/Endro Ariyanto/

Gabungan Sel Memori Dasar dengan Set dan Reset-Dominant (1)

20100328 #27COA/Endro Ariyanto/

Gabungan Sel Memori Dasar dengan Set dan Reset-Dominant (2)

• Rangkaian mix-logic berdasarkan Set-dominantRangkaian mix logic berdasarkan Set dominant

• Rangkaian mix-logic berdasarkan Reset-dominantRangkaian mix logic berdasarkan Reset dominant

20100328 #28COA/Endro Ariyanto/

Ringkasan Kondisi StateRingkasan Kondisi State• Macam-macam kondisi: Set, Reset, Hold, Toggle

disebut juga Set HoldQt Qt+1 (Qt = Present State; Qt+1 = Next State)

Set (1): 0 1 Next State selalu 1

j g

1 1 Reset (0): 0 0 Next State selalu 0

1 0Hold (Qt): 0 0 Next State = Present State = Tetap

disebut juga Reset Hold

1 1Toggle (Qt’): 0 1 Next State selalu berlawanan

1 020100328 #29COA/Endro Ariyanto/

Flip Flop (1)Flip-Flop (1)

Fli Fl d l h l i 1 bit (d i ) i k• Flip-Flop adalah elemen memori 1 bit (device) asinkron yang mempunyai keluaran (output) berurutan (sekuensial) yang dikontrol oleh clock

• Flip-flop biasanya digunakan sebagai penyimpan data• Jenis-jenis flip-flop:

h l d lj p p

– D-FF– T-FF

JK FF

3 hal penting dalam perancangan Flip‐flop:

– JK-FF– SR-FF • Tabel operasi

• Tabel transisiTabel transisi

• Diagram keadaan

20100328 #30COA/Endro Ariyanto/

Flip Flop (2)• Mekanisme Clock Triggering:

Flip-Flop (2)

– Pulse Triggering• Data berubah setelah terjadi perubahan 2x (dari low ke high dan dari high

ke low, atau sebaliknya)

– Edge TriggeringEdge Triggering• Data berubah setelah terjadi perubahan 1x (dari low ke high atau dari high

ke low)

20100328 #31

Flip-Flop (3)

20100328 #32

Flip-Flop (4)

20100328 #33

Flip Flop (5)Flip-Flop (5)

Hi ki fli fl• Hirarki perancangan flip-flop:

‐DD flip‐flop adalah dasar dari semua flip‐pflop‐JK flip‐flop adalah general flip‐flop karena dapat digunakan untuk membentuk flip flopmembentuk flip‐flop yang lain

20100328 #34COA/Endro Ariyanto/

Flip-Flop D (1)Ada 3 macam D‐FF:

• D latch FF Uraian tabel operasi:Tabel operasi:

• D‐latch FF

• Edge Trigerred (ET) D‐FF

M t Sl (MS) D FF

p• Kondisi Reset = D’• Kondisi Set = D

• Master‐Slave (MS) D‐FF

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #35COA/Endro Ariyanto/

Flip-Flop D (2)

Diagram keadaan menjadi:• Pulse triggering D‐FF:• Perubahan state terjadi jika clock j j(CK) aktif

• Jika CK tidak aktif, maka statusnya tetap

Tabel transisi menjadi

tetap

Tabel transisi menjadi:

Simbol D-FF:

20100328 #36COA/Endro Ariyanto/

Flip-Flop D (3)Buatlah D-FF dengan Sel Memori Dasar (SR-FF) !Tabel transisi sel memoriTabel transisi sel memori SR-FF:

Tabel transisi D-FF:( k dib t)(yang akan dibuat)

20100328 #37COA/Endro Ariyanto/

Flip-Flop D (4)

D-FF dibentuk dari sel memori dasar:

Si b lSimbol

NS N t St tNS = Next State

20100328 #38COA/Endro Ariyanto/

Flip-Flop T (Toggle) (1)

Uraian tabel operasi:K di i H ld T’

Tabel operasi:

• Kondisi Hold = T’• Kondisi Toggle = T

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #39COA/Endro Ariyanto/

Flip-Flop T (2)

Diagram keadaan menjadi:• Pulse triggering T‐FF:

• Perubahan state terjadi jika clock j j(CK) aktif

• Jika CK tidak aktif, maka statusnya tetap

Tabel transisi menjadi

tetap

Tabel transisi menjadi:

20100328 #40COA/Endro Ariyanto/

Flip-Flop T (3)Buatlah T-FF dengan Sel Memori Dasar (SR-FF) !Tabel transisi sel memoriTabel transisi sel memori SR-FF:

Tabel transisi T-FF:( k dib t)(yang akan dibuat)

20100328 #41COA/Endro Ariyanto/

Flip-Flop T (4)

T-FF dibentuk dari sel memori dasar:

Si b lSimbol

NS N t St tNS = Next State

20100328 #42COA/Endro Ariyanto/

Flip-Flop JK (1)Uraian tabel operasi:• Kondisi Reset Hold = J’K + J’K’ = J’• Kondisi Set Hold = JK’ + J’K’ = K’

Tabel operasi:

Kondisi Set Hold   JK  + J K    K• Kondisi Reset Toggle = J’K + JK = K • Kondisi Set Toggle = JK’ + JK = J

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #43COA/Endro Ariyanto/

Flip-Flop JK (2)

Diagram keadaan menjadi:• Pulse triggering JK‐FF:• Perubahan state terjadi jika clock j j(CK) aktif

• Jika CK tidak aktif, maka statusnya tetap

Tabel transisi menjadi

tetap

Tabel transisi menjadi:

20100328 #44COA/Endro Ariyanto/

Flip-Flop JK (3)Buatlah JK-FF dengan Sel Memori Dasar (SR-FF) !

Tabel transisi sel memoriTabel transisi sel memori SR-FF:

Tabel transisi JK-FF:( k dib t)(yang akan dibuat)

20100328 #45COA/Endro Ariyanto/

Flip-Flop JK (4)

JK-FF dibentuk dari sel memori dasar:

Si b lSimbol

20100328 #46