XV. RANGKAIAN SEKUENSIAL ASINKRON A. PENDAHULUAN Rangkaian sekuensial asinkron tergantung pada signal input eksternal untuk melakukan oengubahan yang ditentukan oleh variabel state. Setiap signal yang tidak disinkronkan (dengan clock) disebut ASINKRON karena pengubahan dari kondisi 1 ke 0 dan sebaliknya tidak dapat di prediksi. Lanjutan …… Rangkaian Asinkron dapat didefinisikan sebagai rangkaian dimana signal eksistensinya pada suatu saat, ditentukan oleh perubahan logika salah satu dari signal signal input eksternal. Setiap input eksternal hanya dapat berubah 1 pada 1 saat, dan rangkaian berada pada kondisi stabil (semua signal rangkaian harus berada pada kondisi stabil, yaitu mereka berada pada kondisi steady state bila ada terjadi perubahan. B. PROSEDUR PERANCANGAN 1. Ubahlah spesifikasi perancangan kedalam diagram waktu (Timing Diagram) State Diagram (Diagram keadaan). 2. Buatlah primitive Flow Map (tabel bagan alir). 3. Gunakan tabel Implikasi untuk memperoleh pasangan-pasangan yang sama atau Compatible state. Gunakan diagram penggabungan (Merge Diagram) untuk memilih kumpulan-kumpulan state yang dapat digabung untuk memperoleh jumlah state minimum. LANJUTAN …… 4. Buatlah Diagram alir (Flow Map) yang telah disederhanakan, dari hasil langkah 3. 5. Tentukan variabel state, nama-nama variabel state dan pilih kode biner untuk state yang bebas race. Buatlah K-Map untuk Next State dan eksitasi input. 6. Buatlah persamaan output Next State bebas Hazard dan eksitasi input (bila menggunakan SR – Latch), gambar rangkaian logika. C. KONDISI RACE Kondisi race dikatakan ada pada suatu rangkaian sekuensial jika 2 atau lebih variabel state biner berubah nilainya sebagai respon dari adanya perubahan variabel input. Jika waktu tunda (delay) yang tidak sama dihadapi pada sutu rangkaian sekuensial, maka kondisi race dapat menyebabkan variabek state berubah denga cara yang tidak dapat diramalkan. Sebagai contoh misalnya variabel state harus berubah dari 00 ke 11 jika variabel pertama berubah lebih cepat dari variabel kedua maka perubahan terjadi menurut urutan 00 ke 10 dan kemudian ke 11. Sebaliknya jika variabel kedua lebih cepat dari yang pertama maka perubahan terjadi menurut urutan 00–01–11. Jika state akhir yang stabil tidak tergantung pada ururtan cara perubahan variabel state maka disebut non critical race. (seperti contoh diatas perubahan dari 00 – 11 bisa melalui 01 tau 10). Jika state akhir yang stabil tergantung pada urutan perubahan variabel state maka race yang seperti ini dihindari disebut dalam critical merancang race. Critical rangkaian race harus sekuensial dan dilakukan dengan memberikan nilai biner yang berbeda hanya 1 bit dari satu ke state yang lain. Cara ini dinamakan race free state assignment. Contoh : Membuat race free state assignmet untuk tabel primitive flow yang terdiri dari 3 baris. X1X2 Present State 00 01 11 10 a a b c a b a b b c c a c c c Jika diagram transisinya digambarkan berdasarkan tabel diatas, maka akan diperoleh gambar dibawah ini. a 00 d 01 Dapat diketahui bahwa transisi dari a ke c dan dari c ke a akan menimbulkan race karena terjadi b perubahan sebanyak 2 bit dari 00 ke 01 11. Agar bebas race dilakukan dengan menambahkan baris ke 4 pada tabel floe yang dinamakan d dan diberikan nilai biner 10 sehingga transisi dari a ke c dan sebaliknya harus melalui d. Untuk c itu pada baris pertama pada kolom 11 11 harus diubah dari c menjadi d dan baris ke 4 kolom 11 diisi dengan c. Kemudian baris ke 3 kolom 00 diubah dari c menjadi d dan baris ke 4 kolom 00 diisi dengan a. Tabel flow dan diagram transisinya sekarang menjadi seperti dibawah ini X1X2 Present State 00 01 11 10 a a b d a b a b b c c d c c c d a - c - a 00 b 01 d 01 c 11 Contoh. Rancanglah rangkaian sekuensial asinkron free race yang mempunyai timing diagram seperti dibawah ini. a b c d e f States X1 X2 Z Timing Diagram g f Tabel keadaan dan tabel primitive flow dari timing diagram diatas serta tabel implikasinya dapat dibuat seperti dibawah ini. Input Output State X1 X2 Z a 1 0 0 b 1 1 0 c 0 1 0 d 0 0 0 e 1 0 1 f 0 0 0 g 1 0 0 InputX1X2 Output 00 01 11 10 Z a - - b a 0 b - c b - 0 c d c - - 0 d d - - e 0 e f - - e 1 f f - - g 0 g f - - g 0 b √ c √ √ d a=e ? X √ √ e X X X X f a=g ?√ √ d=f ? X e=f ? X X g √ √ d=f ? X X X √ a b c d e f Tabel Implikasi Dari tabel implikasi dapat diperoleh pasangan state yang kompatibel dan merger diagram sebagai berikut : a,b a,c a,f a,g b,c b,d b,f b,g c,d f,g d b g c a f e Merger Diagram Dari diagram merger, didapatkan kelompok dari state yang dapat digabungkan dimana salah satunya adalah (a,b,f,g), (c,d), (e) sehingga state a-g dapat direduksi menjadi 3 buah state yaitu i,j,k. X1X2 Present State 00 01 11 10 i=a,b,f,g f c b a j=c,d d c - e k=e f - - e X1X2 Present State 00 01 11 10 i i j i i j j j - k k I - - k X1X2 Present State y1y2 00 01 11 10 00 00 01 00 00 01 01 01 - 11 11 00 - - 11 Diagram transisinya digambarkan dibagian kiri dan untuk 3 buah state i,j,k diperlukan 2 buah state variabel yaitu y1y2 = 00,01,11 i 00 j 01 i 00 j 01 l 10 k 11 k 11 Untuk menghindarkan kondisi race akibat transisi state dari 11 ke 00, maka diantaranya disisipkan state l = 01 seperti terlihat pada gambar dibagian atas kanan. Tabel primitive flow hasil reduksi menjadi sbb. X1X2 Present State y1y2 00 01 11 10 00 00 01 00 00 01 01 01 - 11 11 10 - - 11 10 00 01 00 00 Pada tabel diatas terjadi perubahan pada baris 11 kolom 00 yang tadinya berisi 00 digantikan dengan 10. Pada baris 10 kolom 00 diisi dengan 00 dan pada baris 10 kolom yang lain diisi dengan stabil state dari baris diatasnya (seharusnya 3 buah don’t care) untuk menjamin tidak dihasilkan 10 dapat mengakibatkan rangkaian berjalan tidak semestinya. Dengan cara ini jika dihasilkan state 11 kan beralih menjadi 00 setelah melalui state 10. Jika tabel yang telah direduksi dipisahkan menjadi 2 tabel untuk menyatakan next state Y1 dan Y2 maka akan diperoleh tabel sbb. Y1= Y2= X1X2 X1X2 PS y1y2 00 01 11 10 Z PS y1y2 00 01 00 0 0 0 0 0 00 0 1 0 0 0 01 0 0 - 1 0 01 1 1 - 1 0 11 1 - - 1 1 11 0 - - 1 1 10 0 0 0 0 - 10 0 1 0 0 - Y1 = y1y2 + y2X1 Y2 = y1’y2 + X1’X2 + y2X1 Z = y1 11 10 Z Diagram logikanya seperti dibawah ini. Y2 Y1 Y1 X1 X2 Y2 Z XVI. RANGKAIAN SEKUENSIAL ASINKRON A. PRIMITIVE FLOW MAP (Tabel bagan alir) Primitive Flow Map adalah tabel dengan 1 stable state (keadaan stabil) yang dituliskan pada setiap baris dari tabel. Setiap present state (keadaan kini) dituliskan pada baris terpisah dan dituliskan pada sisi kiri tabel. Bila next state (keadaan berikutnya) sama dengan present state (keadaan kini), maka state tersebut diberi lingkaran untuk menunjukkan ia berada pada kondisi stabil. Contoh …… Buatlah rangkaian dengan 2 input G (gate) dan D (data) dan 1 output Q. Informasi di D dipindah ke Q bila G=1. Output Q akan mengikuti D selama G=1. Bila G=0, informasi yang telah ada masukkan D, pada saat transisi terjadi, akan tetap outputnya Q. Rangkaian ini adalah rangkaian memory yang menerima masukkan D saat G=1, dan tetap outputnya bila G=0, sekali G=0, perubahan di D tidak akan mengubah Q. Lanjutan …… Tabel untuk contoh. STATE a b c d e f INPUT D G 0 1 0 1 1 0 1 1 0 0 0 0 OUTPUT Q KETERANGAN 0 1 0 0 1 1 D = Q, Sebab G=1 D = Q, Sebab G=1 Setelah state a/d Setelah state c Setelah state b/f Setelah state e TABEL PRIMITIVE FLOW MAP State a b c d e f DG 00 c, -,c,0 c,f,f,1 01 a,0 a,a,-,-,a,- x , - = state tak stabil - , - = don’t care x , 0 = state stabil 0 output 11 b,b,1 -,b,b,-,- 10 -,e,d,d,0 e,1 e,- B. FLOW TABLE (Penggabungan Diagram Alir) Seringkali state table untuk rangkaian tidak dinyatakan secara lengkap. Dalam kasus semacam ini, keadaan berikut (Next State) dan output yang seharusnya terjadi dianggap sebagai don’t care. Keadaan – keadaan yang terjadi dinyatakan secara lengkap dapat digabung untuk mengurangi jumlah keadaan di Diagram alir (Flow table). Dengan demikian, 2 keadaan (state) yang tidak dinyatakan secara lengkap, dapat digabungkan disebut Compatible (bersesuaian). Dua state disebut compatible jika untuk setiap Input yang mungkin memiliki output yang sama dan keadaan berikut (Next state) adalah compatible. Langkah – langkah untuk memperoleh pasangan-pasangan compatible : 1. Tentukan pasangan-pasangan compatible dengan menggunakan table implikasi. 2. Tentukan maksimal compatible dengan menggunakan Diagram penggabungan. 3. Tentukan kelompok-kelompok compatible menimum, yang mencakup semua keadaan (state) dan tertutup. C. Pasangan Compatible Contoh prosedur untuk memperoleh pasangan compatible adalah sbb. Primitive flow table, pada tiap-tiap kotak berisi keadaan berikut dan keluaran tanda menunjukkan keadaan yang tidak ditentukan, atau keluaran yang tidak ditentukan dua keadaan compatible bila dalam setiap kolom pada baris-baris yang berhubungan. Diagram alir (Flow table) mereka adalah sama atau compatible dan jika tidak ada perubahan di keluaran. Misalkan : Baris a dan b adalah compatible; tetapi a dan f akan compatible jika c dan f compatible walaupun demikian, c dan f tidak compatible karena mereka memiliki perbedaan keluaran di kolom pertama. Primitive flow map table a b c d e f 00 c,-,c,0 c,f,f,1 01 a,0 a,a,-,-,a,- 11 b,b,1 -,b,b,-,- 10 -,e,d,d,0 e,1 e,- Untuk membuat tabel Implikasi dari tabel primitive flow map pada contoh adalah sbb. Tabel Implikasi. Dari b √ c √ d,e x d √ d,e x √ e c, f x √ d,e,c,f x x f c, f x √ x d,e,c,f x √ a b c d e tabel Implikasi diperoleh pasangan Compatible sbb: (a,b) (a,c) (a,d) (b,e) (b,f) (c,d) (e,f) pasangan- XVII. RANGKAIAN SEKUENSIAL ASINKRON A. MAXIMAL COMPATIBLE Maximal compatible adalah kelompok compatible-compatible yang memiliki kombinasi yang mungkin dari keadaankeadaan compatible. Maximal compatible dapat diperoleh dari diagram penggabungan. Semua pasangan-pasangan compatible dapat diturunkan dari diagram penggabungan dengan melihat pola-pola Geometri yang menghubungkan ke keadaan-keadaan yang saling berhubungan. Lanjutan ….. Titik yang terisolasi menunjukkan suatu keadaan (state) yang tidak compatible dengan keadaan lainnya. Sebuah garis menunjukkan pasangan compatible dengan 3 state, n state compatible ditunjukkan oleh diagram penggabungan dengan polygon n sisi,dengan diagonalnya saling berhubungan. Kumpulan maximal compatible dapat dipakai untuk menggabungkan diagram alir (Flow Table) dengan menentukan 1 baaris di tabel yang disederhanakan ke setiap anggota kelompoknya. Contoh …… Untuk contoh dari pasangan compatible (a,b) (a,c) (a,d) (b,e) (b,f) (c,d) (e,f) a b f e c d Maka pasangan maximal compatible adalah (a,b) (a,c,d) (b,e,f) B. CLOSED COVERING CONDITION Sekumpulan pasangan compatible tertutup apabila semua state tercakup didalamnya dan apabila ada Implies state pada tabel Implikasi, maka implikasi state tersebut juga tercakup di dalam pasangan state yang dicari. Pada contoh sebelumnya pasangan maximal compatible (a,b) (a,c,d) (b,e,f) jika (a,b) di hilangkan maka yang ditinggal adalah pasangan maximal compatible (a,c,d) (b,e,f) maka semua state tercakup dan tidak ada implies state maka pasangan (a,c,d) (b,e,f) memenuhi closed covering condition. REDUCTION FLOW TABLE DG 00 01 11 10 (b,e,f) c,0 f,1 a,0 a,- b,b,1 d,0 e,1 Y (0) a DG 00 a,0 01 a,0 11 b,- 10 a,0 (1) b b,1 a,- b,1 b,1 (a,c,d) Transition Table Y a=0 b=1 DG 00 01 11 10 0 1 0 0 1 1 0 1 Y=DG+YG Output Table Z Y 0 1 DG 00 0 01 0 11 - 10 0 1 - 1 1 Z=Y GAMBAR RANGKAIAN LOGIKANYA D G Z=Y C. HAZARD Hazard adalah suatu kondisi yang terjadi jika sebuah variabel berubah akan menghasilkan perubahan output yang sementara, dimana seharusnya output ini tidak berubah. Pada rangkaian sekuensial dimana ada feedback. hazard dapat menyebabkan rangkaian sekuensial pergi ke state yang salah. Hazard dapat dijelaskan menggunakan rangkaian dibawah ini. Misalnya rangkaian dalam keadaan stabil total yX1X2 = 111, jika input X2 berubah dari 1 ke 0 maka keadaan stabil berikutnya harus 110 tetapi adanya delay pada rangkaian inverter menyebabkan AND 2 belum berubah sementara AND 1 sudah berubah yang akan mengakibatkan output berubah menjadi 0 sementara waktu sebelum akhirnya menjadi 1 1 X1 X2 1 1 0 0 1 0 1 0 0 1 1 Y 0 Y y 1 Seharusnya yang terjadi 1 X1 1 X2 0 0 1 0 1 0 0 y 1 Kenyataan yang terjadi Jika dibuat Karnaugh Map dari rangkaian diatas agar bebas hazard (hazard free) dapat ditabelkan dibawah ini. X1 X 2 y 0 1 00 0 1 01 0 0 11 1 1 Y = X1X2 + yX2 10 0 1 y 0 1 00 0 1 X1X2 01 11 0 1 0 1 10 0 1 Y = X1X2 + yX2 + yX1 Rangkaian sekuensial dengan menjadi seperti dibawah ini 1 hazard free 1 1 1 X1 X2 1 1 1 0 0 0 1 0 y 1 Y 0 Rangkaian sekuensial bebas hazard Pada contoh soal diatas perancangan rangkaian sebelumnya dapat ditambahkan persyaratan bebas hazard sehingga rangkaian harus ditambahkan gerbang AND dengan cara seperti diatas
© Copyright 2024 Paperzz