Pert-19 Rangkaian Sekuensial Bag-1 20120313

Post on 02-Dec-2015

94 views 19 download

Transcript of Pert-19 Rangkaian Sekuensial Bag-1 20120313

CS2624 - COMPUTERORGANIZATION & ARCHITECTURE

(COA)

Rangkaian Sekuensialbagian 1

CS2624 - COMPUTERORGANIZATION & ARCHITECTURE

(COA)

Rangkaian Sekuensialbagian 1

Maret 2010

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

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

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/

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

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

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

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

Model Rangkaian Sekuensial (1)

Urutan state:

Modelrangkaiannya:

Modelrangkaiannya:

20100328 #9COA/Endro Ariyanto/

Model Rangkaian Sekuensial (2)

Urutan state:

Modelrangkaiannya:

Modelrangkaiannya:

Model:•Moore•Mealy

20100328 #10COA/Endro Ariyanto/

= X atau X’

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

Model Rangkaian Sekuensial Moore (2)

Urutan state:

Modelrangkaiannya:

output

PS

Modelrangkaiannya:

20100328 #12COA/Endro Ariyanto/

= X atau X’

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

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/

Model Rangkaian Sekuensial Mealy (2)

Urutan state:

Modelrangkaiannya:

output

PS

Modelrangkaiannya:

20100328 #15COA/Endro Ariyanto/

= X atau X’

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

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

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

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

Finite State Machine (3)

Contoh Diagram Keadaan dengan FSM: Contoh HardwareDescription Program:

20100328 #20

Urut-Urutan

TabelOperasi

UraianTabel Operasi

DiagramKeadaan

FungsiBoolean

TabelTransisi

K-mapQt

DiagramKeadaan

20100328 #21COA/Endro Ariyanto/

TabelTransisi

K-mapQt

FungsiSederhana Rangkaian

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/

• 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’

• 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/

• 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’

• 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/

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

20100328 #27COA/Endro Ariyanto/

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/

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/

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/

• 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

Flip-Flop (3)

20100328 #32

Flip-Flop (4)

20100328 #33

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/

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 !!!

Flip-Flop D (2)

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

20120313 #36COA/Endro Ariyanto/

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/

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/

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

Flip-Flop D (6)

D-FF dibentuk dari sel memori dasar:

Simbol

NS = Next State

20100328 #40COA/Endro Ariyanto/

Flip-flop SR

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/

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/

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/

Flip-Flop T (4)

T-FF dibentuk dari sel memori dasar:

Simbol

20100328 #44COA/Endro Ariyanto/

NS = Next State Flip-flop SR

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/

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/

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/

Flip-Flop JK (4)

JK-FF dibentuk dari sel memori dasar:

Simbol

20100328 #48