Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Transcript of Pert-19 Rangkaian Sekuensial Bag-1 20120313

Page 1: Pert-19 Rangkaian Sekuensial Bag-1 20120313

CS2624 - COMPUTERORGANIZATION & ARCHITECTURE

(COA)

Rangkaian Sekuensialbagian 1

CS2624 - COMPUTERORGANIZATION & ARCHITECTURE

(COA)

Rangkaian Sekuensialbagian 1

Maret 2010

Page 2: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

– Synchronous– Asynchronous

• Model Rangkaian Sekuensial– Moore– Mealy

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

• Pendahuluan• Urutan Keadaan/State• Sifat Rangkaian Sekuensial

– Synchronous– Asynchronous

• Model Rangkaian Sekuensial– Moore– Mealy

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

20100328 #2

Page 3: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Pendahuluan• 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 masukansebelumnya (history)

– Status yang akan datang (Next State = Qt+1) bergantung padamasukan 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, tapidipengaruhi oleh kondisi besok)

• Apa beda rangkaian Sekuensial dengan rangkaianKombinasional ?– Mempunyai memori (state)– Status sekarang (Present State = Qt) tidak hanya ditentukan oleh

masukan (input) sekarang, tetapi juga oleh semua masukansebelumnya (history)

– Status yang akan datang (Next State = Qt+1) bergantung padamasukan 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, tapidipengaruhi oleh kondisi besok)

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

))(),(()( tQtXGtQ

20100328 #3

Page 4: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Urutan 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 (tanpasyarat):

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

20100328 #4COA/Endro Ariyanto/

Page 5: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Jenis Rangkaian Sekuensial• Jenis:

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

– Asinkron:• Berjalan sendiri-sendiri• Desentralisasi

• Jenis:– Sinkron:

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

– Asinkron:• Berjalan sendiri-sendiri• Desentralisasi

20100328 #5

Page 6: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Desain Synchronous• Menggunakan Clock untuk meng-sinkronkan semua operasi

Flip-Flop (FF), register, dan counter pada sistem– 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

• Menggunakan Clock untuk meng-sinkronkan semua operasiFlip-Flop (FF), register, dan counter pada sistem– 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

Page 7: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Prinsip Mendesain Synchronous• Metoda

– Semua input clock ke flip-flop, register, counter, dll,digerakkan secara langsung dari clock sistem atau dariclock yang di-AND-kan dengan kontrol sinyal

• Hasil– Semua state berubah secara langsung mengikuti

perubahan sinyal clock dalam keadaan active edge• Keuntungan

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

– Tidak memiliki efek terhadap performansi sistem

• Metoda– Semua input clock ke flip-flop, register, counter, dll,

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

• Hasil– Semua state berubah secara langsung mengikuti

perubahan sinyal clock dalam keadaan active edge• Keuntungan

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

– Tidak memiliki efek terhadap performansi sistem

20100328 #7

Page 8: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Desain Asynchronous• Kerugian

– Lebih sulit– Masalah

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

– Diperlukan teknik khusus untuk mendesain agar kondisi race danhazard terhindari

• Keuntungan = kerugian dari desain synchronous– Pada 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 sama– Input tidak sinkron dengan clock

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

• Kerugian– Lebih sulit– Masalah

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

– Diperlukan teknik khusus untuk mendesain agar kondisi race danhazard terhindari

• Keuntungan = kerugian dari desain synchronous– Pada 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 sama– Input tidak sinkron dengan clock

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

20100328 #8

Page 9: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial (1)

Urutan state:

Modelrangkaiannya:

Modelrangkaiannya:

20100328 #9COA/Endro Ariyanto/

Page 10: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial (2)

Urutan state:

Modelrangkaiannya:

Modelrangkaiannya:

Model:•Moore•Mealy

20100328 #10COA/Endro Ariyanto/

= X atau X’

Page 11: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Moore (1)

PS = Present StateNS = Next StateIP = InputOP = Output

• Output hanya tergantung Present State (PS)

PS = Present StateNS = Next StateIP = InputOP = Output

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

20100328 #11

Page 12: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Moore (2)

Urutan state:

Modelrangkaiannya:

output

PS

Modelrangkaiannya:

20100328 #12COA/Endro Ariyanto/

= X atau X’

Page 13: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Moore (2)

Inputs(X)CombinationalNetwork

Memori

= StateRegister

= FF

NextState

Output(Z)

Present State(Q)

CombinationalNetwork

Z = z1 z2... zm

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

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

Clock

CombinationalNetwork

Memori

= StateRegister

= FF

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

20100328 #13

Page 14: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Mealy (1)

•PS ditentukan oleh NS•NS ditentukan oleh Input dan PS•Output TIDAK HANYA ditentukan oleh PS, tetapi PS dan Input

20100328 #14COA/Endro Ariyanto/

Page 15: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Mealy (2)

Urutan state:

Modelrangkaiannya:

output

PS

Modelrangkaiannya:

20100328 #15COA/Endro Ariyanto/

= X atau X’

Page 16: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Model Rangkaian Sekuensial Mealy (3)

Gabungan dari NS forming logicdan Output forming logic

(1) X input diubah ke nilai yang baru(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

Page 17: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Cara untuk menggambarkan State– Dengan Finite State Machine (FSM)

• Jumlah state harus berhingga/terbatas (2hingga 2N)

• Seperti Data Flow Diagram (DFD)

– Dengan Algorithmic State Machine (ASM)• Seperti Flowchart

– Dengan Finite State Machine (FSM)• Jumlah state harus berhingga/terbatas (2

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

– Dengan Algorithmic State Machine (ASM)• Seperti Flowchart

20100328 #17

Page 18: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Finite State Machine (FSM) (1)

• Representasi FSM:– Dengan Diagram Keadaan– Dengan Tabel Transisi Keadaan– Dengan Hardware Description Language

• VHDL• Verilog• ABEL

• Representasi FSM:– Dengan Diagram Keadaan– Dengan Tabel Transisi Keadaan– Dengan Hardware Description Language

• VHDL• Verilog• ABEL

20100328 #18

Page 19: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Finite State Machine (2)

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

Input/state mapuntuk state e:Input/state mapuntuk state e:

XY’ + X’Y’ + Y = 1

20100328 #19

Page 20: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Finite State Machine (3)

Contoh Diagram Keadaan dengan FSM: Contoh HardwareDescription Program:

20100328 #20

Page 21: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Urut-Urutan

TabelOperasi

UraianTabel Operasi

DiagramKeadaan

FungsiBoolean

TabelTransisi

K-mapQt

DiagramKeadaan

20100328 #21COA/Endro Ariyanto/

TabelTransisi

K-mapQt

FungsiSederhana Rangkaian

Page 22: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Sel Memori Dasar dengan Set-Dominant (1)

• Konsep Set (S):

Wire loop dengan delaydan 2 buah inverter

Salah satu inverterdiganti denganpengganti NAND untukmembuat input Set

Tabeloperasi darigambar b

20100328 #22COA/Endro Ariyanto/

Page 23: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Tabel operasi:

Sel Memori Dasar dengan Set-Dominant (2)

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

20100328 #23COA/Endro Ariyanto/

Uraian Tabel Operasi:• Kondisi Reset (Reset saja) = S’R• 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 + S’R’ = (S+S’) (S+R’) = S + R’

Page 24: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Resetstate

Reset Hold

Reset

Diagram keadaan:

Tabel transisi:

Simbol sel memori:

Sel Memori Dasar dengan Set-Dominant (3)

Diagram keadaanberdasarkanuraian tabeloperasi

Timing diagramPengembangandiagram keadaan

Setstate

Set Hold

Reset

Set

20100328 #24COA/Endro Ariyanto/

Page 25: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Sel Memori Dasar dengan Reset-Dominant (1)

Tabel operasi:

Inverter pada konsep Set diganti dengan NOR dansubstitusinya

20100328 #25COA/Endro Ariyanto/

Uraian Tabel Operasi:• Kondisi Reset (Reset saja) = S’R + SR = R• Kondisi Reset Hold (reset dan hold) = R + S’R’ = R+S’• Kondisi Set (set saja) = SR’• Kondisi Set Hold (set dan hold) = SR’ + S’R’ = R’

Page 26: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Resetstate

Reset Hold

Reset

Diagram keadaan:Tabel transisi:

Simbol sel memori:

Sel Memori Dasar dengan Reset-Dominant (2)

State diagramberdasarkanuraian tabeloperasi

Timing diagramPengembanganstate diagram

Setstate

Set Hold

Reset

Set

20100328 #26COA/Endro Ariyanto/

Page 27: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

20100328 #27COA/Endro Ariyanto/

Page 28: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Gabungan Sel Memori Dasar dengan Set danReset-Dominant (2)

• Rangkaian mix-logic berdasarkan Set-dominant

• Rangkaian mix-logic berdasarkan Reset-dominant

20100328 #28COA/Endro Ariyanto/

Page 29: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Qt Qt+1 (Qt = Present State; Qt+1 = Next State)

Set (1): 0 1 Next State selalu 11 1

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

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

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

disebut juga Set Hold

• Macam-macam kondisi: Set, Reset, Hold, Toggle

Qt Qt+1 (Qt = Present State; Qt+1 = Next State)

Set (1): 0 1 Next State selalu 11 1

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

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

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

disebut juga Reset Hold

20100328 #29COA/Endro Ariyanto/

Page 30: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop (1)

• Flip-Flop adalah elemen memori 1 bit (device) asinkron yangmempunyai keluaran (output) berurutan (sekuensial) yangdikontrol oleh clock

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

– D-FF– T-FF– JK-FF– SR-FF

3 hal penting dalamperancangan Flip-flop:

• Tabel operasi

• Tabel transisi

• Diagram keadaan

• Flip-Flop adalah elemen memori 1 bit (device) asinkron yangmempunyai keluaran (output) berurutan (sekuensial) yangdikontrol oleh clock

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

– D-FF– T-FF– JK-FF– SR-FF

3 hal penting dalamperancangan Flip-flop:

• Tabel operasi

• Tabel transisi

• Diagram keadaan

20100328 #30COA/Endro Ariyanto/

Page 31: Pert-19 Rangkaian Sekuensial Bag-1 20120313

• Mekanisme Clock Triggering:– Pulse Triggering

• Data berubah setelah terjadi perubahan 2x (dari low ke high dan dari highke low, atau sebaliknya)

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

ke low)

Flip-Flop (2)• Mekanisme Clock Triggering:

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

ke low, atau sebaliknya)

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

ke low)

20100328 #31

Page 32: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop (3)

20100328 #32

Page 33: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop (4)

20100328 #33

Page 34: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop (5)

• Hirarki perancangan flip-flop:

-DD flip-flop adalahdasar dari semua flip-flop

-JK flip-flop adalahgeneral flip-flop karenadapat digunakan untukmembentuk flip-flopyang lain

-DD flip-flop adalahdasar dari semua flip-flop

-JK flip-flop adalahgeneral flip-flop karenadapat digunakan untukmembentuk flip-flopyang lain

20100328 #34COA/Endro Ariyanto/

Page 35: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

• D-latch FF

• Edge Trigerred (ET) D-FF

• Master-Slave (MS) D-FF

D-latch FF: Q = irisan CLK dan D

20120313 #35COA/Endro Ariyanto/

Masalah pada D-latch FF: timbul glitch !!!

Page 36: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop D (2)

Edge Trigerred (ET) D-FF: Q = nilai D saat edge trig.

20120313 #36COA/Endro Ariyanto/

Page 37: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop D (3)Uraian tabel operasi:• Kondisi Reset (1 0) = D’• Kondisi Reset Hold (0 0) = D’• Kondisi Set (0 1) = D• Kondisi Set Hold (1 1) = D

Tabel operasi:

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #37COA/Endro Ariyanto/

Page 38: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop D (4)

Diagram keadaan menjadi:

Tabel transisi menjadi:

• Pulse triggering D-FF:• Perubahan state terjadi jika clock

(CK) aktif• Jika CK tidak aktif, maka statusnya

tetap

Simbol D-FF:

Tabel transisi menjadi:

20100328 #38COA/Endro Ariyanto/

Page 39: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop D (5)Buatlah D-FF dengan Sel Memori Dasar (SR-FF) !Tabel transisi SR-FF:

Tabel transisi D-FF:(yang akan dibuat)

20100328 #39COA/Endro Ariyanto/

Note: don’t care diisi dengan CK

Page 40: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop D (6)

D-FF dibentuk dari sel memori dasar:

Simbol

NS = Next State

20100328 #40COA/Endro Ariyanto/

Flip-flop SR

Page 41: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop T (Toggle) (1)

Uraian tabel operasi:• Kondisi Hold (0 0 atau 1 1) = T’• Kondisi Toggle (0 1 atau 1 0) = T

Tabel operasi:

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #41COA/Endro Ariyanto/

Page 42: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop T (2)

Diagram keadaan menjadi:

Tabel transisi menjadi:

• Pulse triggering T-FF:• Perubahan state terjadi jika clock

(CK) aktif• Jika CK tidak aktif, maka statusnya

tetap

Tabel transisi menjadi:

20100328 #42COA/Endro Ariyanto/

Page 43: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Tabel transisi T-FF:(yang akan dibuat)

20100328 #43COA/Endro Ariyanto/

Page 44: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop T (4)

T-FF dibentuk dari sel memori dasar:

Simbol

20100328 #44COA/Endro Ariyanto/

NS = Next State Flip-flop SR

Page 45: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Tabel operasi:

Diagram keadaan:Tabel transisi:Tabel transisi:

20100328 #45COA/Endro Ariyanto/

Page 46: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop JK (2)

Diagram keadaan menjadi:

Tabel transisi menjadi:

• Pulse triggering JK-FF:• Perubahan state terjadi jika clock

(CK) aktif• Jika CK tidak aktif, maka statusnya

tetap

Tabel transisi menjadi:

20100328 #46COA/Endro Ariyanto/

Page 47: Pert-19 Rangkaian Sekuensial Bag-1 20120313

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

Tabel transisi sel memori SR-FF:

Tabel transisi JK-FF:(yang akan dibuat)

20100328 #47COA/Endro Ariyanto/

Page 48: Pert-19 Rangkaian Sekuensial Bag-1 20120313

Flip-Flop JK (4)

JK-FF dibentuk dari sel memori dasar:

Simbol

20100328 #48