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 ata4-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 dont caretetapi 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

Postingan populer dari blog ini

menghitung konvolusi sirkular

Mengatur RPM Motor Encoder/Rotary Encoder dan Sensor Suhu LM35 Berbasis Arduino

Cara Kerja Backpropagation