Rangkaian Decoder
Decoder merupakan rangkaian kombinasional yang berfungsi mengkodekan kembali (menafsirkan) kode pada inputnya menjadi data pada outputnya. Pada dasarnya
merupakan kumpulan gerbang AND sehingga
dapat digunakan sebagai pembangkit
fungsi.
Decoder mengubah informasi biner dari n saluran input menjadi maximum 2n saluran output. Sebagai
contoh: banyaknya input n=3 maka banyaknya saluran output adalah m=23. Contoh decoder 3 to 8. Input n= 3, maka outputnya 23 = 8 saluran. Lihat gambar
1 dan 2.
Decoder biasanya memiliki
saluran enable. Saluran enable berfungsi
untuk mengaktifkan dan menonaktifkan decoder. Terdapat 2 jenis pengkaktifan yakni. aktif high dan aktif low. Lihat gambar 3. Pada decoder
dengan saluran enable aktif high, jika
enable=0,
decoder off. Berarti semua saluran output akan bernilai nol. Jika enable=1, decoder on dan sesuai dengan inputnya, saluran output yang aktif akan 1, dan yang
lainnya 0.
Rangkaian Encoder
Encoder merupakan kebalikan dari decoder. Encoder merupakan rangkaian
kombinasional yang berfungsi mengubah data yang ada pada inputnya menjadi kode - kode biner pada outputnya. Contoh encoder oktal ke biner atau disebut juga encoder 8
ke 3, berfungsi mengubah data bilangan oktal pada inputnya menjadi kode biner 3 -bit pada outputnya. Pada umumnya encoder menghasilkan kode
2-bit, 3-bit atau 4-bit. Encoder n bit memiliki 2n saluran input. Sebagai contoh encoder
2 bit memiliki 22 saluran input.
Apabila salah satu dari ke-4 saluran input aktif maka encoder akan menghasilkan kode biner sesuai dengan salurannya. Apabila lebih dari satu saluran input
diaktifkan/semua maka outputnya tidak dapat didefinisikan. Untuk kondisi seperti ini, kita dapat
mengganggap “don’t care”
tetapi pada umumnya hal ini dapat diatasi dengan
mengggunakan priority encoder.
Priority encoder adalah rangkaian encoder yang memiliki fungsi prioritas. Hal ini berarti, jika dua atau lebih input sama dengan 1 pada saat
yang sama, input yang memiliki
subscript number yang tinggi adalah mempunyai prioritas yang tinggi. Sebagai contoh jika D3
adalah 1 berapapun saluran input yang lain maka outputnya adalah
3 yaitu 11.
Jika semua input 0, maka tidak
ada input yang valid. Untuk mendeteksi situasi ini maka kita membuat output ke 3 dengan nama V. V = 0 jika semua input adalah 0 dan bernilai
1 jika inputnya sesuai dengan situasi
pada tabel
kebenaran.
Dengan menggunakan tabel kebenaran dan K-map (gambar 7) kita akan mendapatkan
fungsi
boolean 4-input (or 2-bit) priority encoder, sebagai berikut:
X = D2 + D3
Y = D3 + D1D’2
V= D0 + D1 + D2 + D3
Dengan demikian akan dihasilkan rangkaian logika untuk 2 bit priority encoder seperti yang ditunjukkan pada gambar 8.
Komentar
Posting Komentar