Des 14, 2024 Sistem Digital

Decoder & Encoder

Dekoder merupakan suatu bentuk rangkaian logika yang berfungsi untuk menyederhanakan input yang masuk (berupa biner) supaya lebih mudah dipahami outputnya (dalam bentuk desimal).

Dekoder adalah rangkaian logika multi-input dan multi-output yang mengubah input berkode menjadi output berkode, di mana kode input dan output berbeda; misalnya dekoder BCD n-ke-2n. Input aktif harus aktif agar dekoder dapat berfungsi, jika tidak, outputnya akan mengasumsikan satu kata kode output “nonaktif”.

Dekoder diperlukan dalam aplikasi seperti multiplexing data, tampilan 7 segmen, dan dekoder alamat memori. Gambar di bawah menunjukkan blok semu dekoder.

Basic Binary Decoder

Gerbang AND dapat digunakan sebagai elemen decoding dasar, karena outputnya HIGH hanya jika semua inputnya HIGH. Misalnya, jika bilangan biner input adalah 0110, maka, untuk membuat semua input ke gerbang AND HIGH, dua bit terluar harus dibalik menggunakan dua inverter seperti yang ditunjukkan pada gambar di bawah ini.

Binary n-to-2n Decoders

Dekoder biner memiliki n masukan dan 2n keluaran. Hanya satu keluaran yang aktif pada satu waktu, yang sesuai dengan nilai masukan. Gambar di bawah ini menunjukkan representasi dekoder biner n-ke-2n.

Example – 2-to-4 Binary Decoder

Dekoder 2 to 4 terdiri dari dua masukan dan empat keluaran, tabel kebenaran dan simbolnya ditunjukkan di bawah ini.

Truth Table

XYF0F1F2F3
001000
010100
100010
110001

Symbol

Untuk meminimalkan tabel kebenaran di atas, kita dapat menggunakan kmap, tetapi dengan melakukannya Anda akan menyadari bahwa itu hanya membuang-buang waktu. Kita dapat langsung menuliskan fungsi untuk setiap keluaran. Dengan demikian, kita dapat menggambar rangkaian seperti yang ditunjukkan pada gambar di bawah ini.

Catatan: Setiap keluaran adalah minterm 2 variabel (X’Y’, X’Y, XY’, XY)

Circuit

Contoh 3-8 binary decoder

Dekoder 3 to 8 terdiri dari tiga masukan dan delapan keluaran, tabel kebenaran dan simbolnya ditunjukkan di bawah ini.

Truth Table

XYZF0F1F2F3F4F5F6F7
00010000000
00101000000
01000100000
01100010000
10000001000
10100000100
11000000010
11100000001

Symbol

Dari tabel kebenaran kita dapat menggambar diagram rangkaian seperti yang ditunjukkan pada gambar di bawah.

Circuit

Mengimplementasikan Fungsi Menggunakan Decoder

  • Fungsi logika n-variabel apa pun, dalam bentuk jumlah minterm kanonik dapat diimplementasikan menggunakan dekoder n-ke-2n tunggal untuk menghasilkan minterm, dan gerbang OR untuk membentuk jumlah.
  • Garis keluaran dekoder yang sesuai dengan minterm fungsi digunakan sebagai masukan ke gerbang OR.
  • Rangkaian kombinasional apa pun dengan n masukan dan m keluaran dapat diimplementasikan dengan dekoder n-ke-2n dengan m gerbang OR.
  • Cocok ketika rangkaian memiliki banyak keluaran, dan setiap fungsi keluaran dinyatakan dengan beberapa minterm.

Example – Full adder

Truth Table

XYZCS
00000
00101
01001
01110
10001
10110
11010
11111

Dari tabel kebenaran kita mengetahui nilai-nilai yang jumlah (s)-nya aktif dan juga carry (c)-nya aktif. Jadi kita memiliki persamaan seperti yang ditunjukkan di atas dan rangkaian dapat digambar seperti yang ditunjukkan di bawah ini dari persamaan yang diturunkan.

Circuit

Encoder adalah rangkaian kombinasional yang melakukan operasi kebalikan dari decoder. Jika kode keluaran perangkat memiliki bit lebih sedikit daripada kode masukan, perangkat tersebut biasanya disebut encoder. Misalnya, encoder prioritas 2n-ke-n.

Encoder yang paling sederhana adalah encoder biner 2n-ke-n, yang hanya memiliki satu dari 2n masukan = 1 dan keluarannya adalah bilangan biner n-bit yang sesuai dengan masukan aktif.

Example – Octal-to-Binary Encoder

Oktal-ke-Biner mengambil 8 masukan dan menyediakan 3 keluaran, sehingga melakukan kebalikan dari apa yang dilakukan dekoder 3-ke-8. Pada satu waktu, hanya satu jalur masukan yang memiliki nilai 1. Gambar di bawah ini menunjukkan tabel kebenaran dari encoder Oktal-ke-biner.

Truth Table

I0I1I2I3I4I5I6I7Y2Y1Y0
10000000000
01000000001
00100000010
00010000011
00001000100
00000100101
00000010110
00000001111

Untuk encoder biner 8-ke-3 dengan input I0-I7, ekspresi logika dari output Y0-Y2 adalah:

Y0 = I1 + I3 + I5 + I7
Y1= I2 + I3 + I6 + I7
Y2 = I4 + I5 + I6 +I7

Berdasarkan persamaan di atas, kita dapat menggambar rangkaian seperti gambar di bawah ini

Circuit

Example – Decimal-to-Binary Encoder

Desimal-ke-Biner mengambil 10 masukan dan menyediakan 4 keluaran, sehingga melakukan kebalikan dari apa yang dilakukan dekoder 4-ke-10. Pada satu waktu, hanya satu jalur masukan yang memiliki nilai 1. Gambar di bawah ini menunjukkan tabel kebenaran dari encoder Desimal-ke-biner.

Truth Table

I0I1I2I3I4I5I6I7I8I9Y3Y2Y1Y0
10000000000000
01000000000001
00100000000010
00010000000011
00001000000100
00000100000101
00000010000110
00000001000111
00000000101000
00000000011001

Dari tabel kebenaran di atas, kita dapat memperoleh fungsi Y3, Y2, Y1, dan Y0 seperti yang diberikan di bawah ini.

Y3 = I8 + I9
Y2 = I4 + I5 + I6 + I7
Y1 = I2 + I3 + I6 + I7
Y0 = I1 + I3 + I5 + I7 + I9

Priority Encoder

Jika kita cermati rangkaian Encoder yang kita dapatkan, kita akan melihat keterbatasan berikut. Jika lebih dari dua input aktif secara bersamaan, output tidak dapat diprediksi atau lebih tepatnya tidak seperti yang kita harapkan.

Ketidakjelasan ini dapat diatasi jika prioritas ditetapkan sehingga hanya satu input yang dikodekan, tidak peduli berapa banyak input yang aktif pada suatu titik waktu tertentu.

Encoder prioritas mencakup fungsi prioritas. Pengoperasian encoder prioritas sedemikian rupa sehingga jika dua atau lebih input aktif pada saat yang sama, input yang memiliki prioritas tertinggi akan diutamakan.

Example – 4to3 Priority Encoder

Tabel kebenaran encoder prioritas 4-input seperti yang ditunjukkan di bawah ini. Input D3 memiliki prioritas tertinggi, D2 memiliki prioritas tertinggi berikutnya, D0 memiliki prioritas terendah. Ini berarti output Y2 dan Y1 bernilai 0 hanya jika tidak ada input D1, D2, D3 yang tinggi dan hanya D0 yang tinggi.
Encoder 4 hingga 3 terdiri dari empat input dan tiga output, tabel kebenaran dan simbolnya ditunjukkan di bawah ini.

Truth Table

D3D2D1D0Y2Y1Y0
0000000
0001001
001x010
01xx011
1xxx100

Sekarang setelah kita memiliki tabel kebenaran, kita dapat menggambar Kmap seperti yang ditunjukkan di bawah ini.

Kmaps

Dari Kmap kita dapat menggambar rangkaian seperti yang ditunjukkan di bawah ini. Untuk Y2, kita hubungkan langsung ke D3.

Kita dapat menerapkan logika yang sama untuk mendapatkan enkoder dengan prioritas tingkat lebih tinggi.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *