Chapter 8 (Priority Encoder)
Dalam dunia digital, data sering kali datang dari berbagai sumber secara bersamaan. Misalnya, dalam suatu sistem elektronik terdapat beberapa sinyal input yang bisa aktif dalam waktu yang sama. Untuk mengolah data tersebut secara efisien, diperlukan suatu mekanisme yang dapat memilih salah satu input yang paling penting atau memiliki prioritas tertinggi. Di sinilah priority encoder memainkan peran penting.
Priority encoder adalah salah satu jenis encoder, yaitu rangkaian logika kombinasi yang mengubah input menjadi representasi biner di output. Namun berbeda dengan encoder biasa, priority encoder dirancang untuk menangani kondisi ketika lebih dari satu input aktif secara bersamaan. Dengan memberikan urutan prioritas, priority encoder akan menghasilkan output biner berdasarkan input aktif dengan prioritas tertinggi, sementara input lainnya akan diabaikan.
Komponen ini sangat penting dalam sistem yang membutuhkan pengambilan keputusan cepat, seperti pada unit interupsi dalam prosesor, sistem kontrol otomatis, dan berbagai aplikasi digital lainnya. Selain output biner, priority encoder juga menyediakan sinyal valid (Valid Output) yang menunjukkan bahwa setidaknya satu input sedang aktif.
- Untuk menyelesaikan tugas mata kuliah sistem digital yang ditugaskan oleh Bapak Darwinson, M.T.
- Memahami dan mempelajari tentang materi priority encoder.
Logic state atau keadaan logika adalah istilah dalam elektronika digital yang mengacu pada kondisi atau nilai logika dari suatu sinyal dalam sistem digital. Sistem digital bekerja berdasarkan dua level tegangan utama yang merepresentasikan dua keadaan logika, yaitu:
1. Logic LOW (0)
Disebut juga logika nol atau logika rendah
Biasanya diwakili oleh tegangan rendah, contohnya:
0 Volt dalam sistem TTL (Transistor-Transistor Logic)
Tegangan antara 0–0.8V tergantung pada jenis logika
Diartikan sebagai bilangan biner 0
2. Logic HIGH (1)
Disebut juga logika satu atau logika tinggi
Biasanya diwakili oleh tegangan tinggi, contohnya:
+5 Volt dalam sistem TTL
Bisa juga +3.3V atau lainnya dalam sistem CMOS modern
Diartikan sebagai bilangan biner 1
AND gate adalah salah satu gerbang logika dasar dalam sistem digital yang menghasilkan output bernilai logika tinggi (1) hanya jika semua input-nya juga bernilai tinggi (1). Jika salah satu atau semua input bernilai rendah (0), maka output-nya akan rendah (0).
3. Or Gate
OR gate adalah salah satu gerbang logika dasar dalam sistem digital yang menghasilkan output logika tinggi (1) jika salah satu atau lebih input-nya bernilai tinggi (1). Output hanya akan rendah (0) jika semua input bernilai rendah (0).
4. Not Gate
Logic probe adalah alat elektronik yang digunakan untuk mendeteksi dan menampilkan status logika (HIGH atau LOW) dari sinyal digital pada suatu rangkaian. Alat ini sangat berguna dalam perbaikan, pengujian, dan analisis rangkaian digital, karena memberikan informasi instan mengenai keadaan logika dari sebuah titik pengujian.
Apa itu Priority Encoder?
Secara sederhana, Priority Encoder adalah sirkuit logika kombinasi yang melakukan tugas pengodean (encoding), tetapi dengan satu fitur yang sangat penting: ia memiliki "prioritas" bawaan di antara masukannya. Ini berarti, jika ada beberapa jalur masukan yang aktif secara bersamaan, encoder ini tidak akan bingung. Sebaliknya, ia akan menghasilkan kode biner yang sesuai dengan masukan yang memiliki prioritas tertinggi di antara semua yang aktif.
Bayangkan Anda memiliki beberapa tombol darurat yang bisa ditekan. Anda tidak ingin semua alarm berbunyi sekaligus jika dua tombol ditekan; Anda hanya ingin alarm untuk tombol yang paling penting. Itulah fungsi priority encoder: ia memilih "pemenang" berdasarkan prioritas yang sudah ditentukan sebelumnya.
Prinsip Kerja Priority Encoder
Prinsip kerja priority encoder didasarkan pada skema prioritas yang telah ditentukan untuk setiap jalur masukannya. Umumnya, masukan dengan indeks atau nomor tertinggi (misalnya, D7 pada encoder 8-masukan) akan memiliki prioritas tertinggi, dan masukan dengan indeks terendah (misalnya, D0) memiliki prioritas terendah.
Bagaimana cara kerjanya? Sirkuit di dalamnya dirancang sedemikian rupa sehingga jika masukan dengan prioritas lebih tinggi (misalnya D3) aktif, maka keluarannya akan secara otomatis menghasilkan kode biner untuk D3, tanpa memperdulikan apakah masukan dengan prioritas lebih rendah (seperti D2 atau D1) juga aktif. Masukan yang lebih rendah akan "diabaikan" atau "ditimpa" oleh masukan yang lebih tinggi prioritasnya.
Banyak priority encoder juga dilengkapi dengan keluaran tambahan, sering disebut "Valid" (V) atau "Group Signal" (GS). Keluaran ini berfungsi sebagai indikator. Jika setidaknya ada satu masukan yang aktif, keluaran V ini akan menjadi '1' (HIGH), memberi sinyal bahwa ada masukan yang valid. Jika semua masukan tidak aktif, V akan menjadi '0' (LOW).
Jenis-jenis Priority Encoder
Ada beberapa jenis priority encoder yang umum digunakan, tergantung pada jumlah masukan dan keluaran yang dibutuhkan:
4-ke-2 Priority Encoder: Ini adalah jenis dasar yang memiliki 4 jalur masukan (misalnya D0, D1, D2, D3) dan menghasilkan 2-bit keluaran biner. Cocok untuk situasi dengan empat kondisi yang perlu diprioritaskan.
8-ke-3 Priority Encoder: Jenis ini memiliki 8 jalur masukan dan menghasilkan 3-bit keluaran biner. Ini sangat populer dalam aplikasi praktis. Contoh yang paling dikenal adalah IC TTL 74LS148. IC ini menerima delapan masukan active-LOW dan menghasilkan kode biner 3-bit active-LOW yang mewakili masukan dengan peringkat tertinggi.
Contoh Tabel Kebenaran (4-ke-2 Priority Encoder)
Untuk memahami lebih jelas, mari kita lihat tabel kebenaran untuk priority encoder 4-ke-2, di mana D3 memiliki prioritas tertinggi dan D0 terendah. Keluaran yang dihasilkan adalah A1 dan A0, serta keluaran Valid (V).
Simbol 'x' berarti "don't care" (tidak peduli). Ini menunjukkan bahwa keadaan masukan tersebut tidak akan memengaruhi keluaran karena ada masukan dengan prioritas lebih tinggi yang sudah aktif.
Keluaran 'V' menjadi '1' (HIGH) jika ada setidaknya satu masukan yang aktif, dan '0' (LOW) jika tidak ada masukan yang aktif.
Ekspresi Boolean
Dari tabel kebenaran di atas, kita bisa menurunkan ekspresi Boolean untuk keluaran priority encoder 4-ke-2 ini:
A1 = D3 + D2
A0 = D3 + (D2' * D1)
V = D3 + D2 + D1 + D0
Aplikasi Priority Encoder
Priority encoder adalah komponen serbaguna yang banyak ditemukan dalam sistem digital, seperti:
Penanganan Interupsi (Interrupt Handling): Dalam sistem komputer, ketika beberapa perangkat mencoba meminta perhatian CPU (interupsi) secara bersamaan, priority encoder dapat digunakan untuk menentukan permintaan perangkat mana yang harus dilayani terlebih dahulu, berdasarkan prioritasnya.
Encoder Papan Ketik (Keyboard Encoder): Saat Anda menekan beberapa tombol pada keyboard sekaligus, priority encoder bisa mengidentifikasi tombol dengan prioritas tertinggi yang ditekan dan menghasilkan kode yang sesuai, menghindari kode yang salah.
Arbitrase Sumber Daya: Dalam sistem di mana beberapa komponen atau proses bersaing untuk mendapatkan akses ke sumber daya yang sama (misalnya, memori atau bus data), priority encoder dapat bertindak sebagai wasit, memberikan akses kepada permintaan dengan prioritas tertinggi.
Kompresi dan Penyederhanaan Data: Dengan mengodekan banyak masukan menjadi set keluaran yang lebih kecil, priority encoder membantu mengurangi kompleksitas dan dimensi data, menyederhanakan pemrosesan.
Priority Encoder adalah sirkuit logika kombinasi penting yang mengatasi keterbatasan encoder biner standar. Fungsi utamanya adalah mengonversi beberapa sinyal masukan menjadi kode biner, namun dengan menambahkan mekanisme prioritas. Ini berarti, jika ada lebih dari satu masukan yang aktif secara bersamaan, encoder akan selalu menghasilkan kode untuk masukan yang memiliki prioritas tertinggi, mengabaikan masukan dengan prioritas lebih rendah yang juga aktif.
Prinsip kerjanya didasarkan pada penugasan prioritas (misalnya, masukan dengan indeks tertinggi memiliki prioritas tertinggi). Banyak priority encoder juga dilengkapi dengan keluaran "Valid" (V) yang memberi sinyal jika ada masukan yang aktif. Contoh umum termasuk 4-ke-2 Priority Encoder dan 8-ke-3 Priority Encoder (seperti IC 74LS148).
Aplikasi priority encoder sangat beragam dan krusial, mulai dari penanganan interupsi dalam sistem komputer, encoder papan ketik, hingga arbitrase sumber daya dalam sistem digital yang kompleks. Dengan kemampuannya untuk memprioritaskan dan mengodekan sinyal secara efisien, priority encoder memastikan operasi yang teratur dan tidak ambigu dalam berbagai skenario digital.
A. Langkah-langkah Percobaan
• Selanjutnya, hubungkan semua alat dan bahan menjadi suatu rangkaian yang utuh
• Lalu mencoba menjalankan rangkaian , jika tidak terjadi error, maka rangkaian akan berfungsi yang berarti rangkaian bekerja.
FIG. 8.16 – 10-line Decimal to 4-line BCD Priority Encoder (IC 74147)
Prinsip Kerja:
Rangkaian ini menggunakan IC 74147, yaitu priority encoder dengan 10 input desimal (0–9) dan menghasilkan output 4-bit dalam format BCD (Binary Coded Decimal).
-
Input
0–9
bersifat active low (logika 0 menunjukkan aktif). -
Output
A, B, C, D
adalah representasi BCD dari input dengan prioritas tertinggi yang aktif (berlogika 0).
Cara Kerja:
-
IC akan membaca semua input dari 0 sampai 9.
-
Jika lebih dari satu input bernilai rendah (0), maka IC akan mengabaikan semua kecuali yang memiliki nomor tertinggi.
-
Nilai tersebut dikonversi menjadi 4-bit output biner (A, B, C, D).
-
Pada kondisi saat ini:
-
Input aktif: D4 = 1 (aktif rendah → logika 0)
-
Maka outputnya adalah BCD dari angka 4, yaitu:
D = 0, C = 1, B = 0, A = 0
-
Output: A = 0, B = 0, C = 1, D = 0
FIG. 8.17 – Priority Encoder 4-input (Example 8.5)
Prinsip Kerja:
Rangkaian ini adalah implementasi priority encoder 4-input menggunakan gerbang logika dasar (OR, AND, NOT). Input yang digunakan adalah D0, D1, D2, dan D3, dengan prioritas dari D3 (tinggi) ke D0 (rendah).
Cara Kerja Rangkaian:
Output X:
-
Berdasarkan gambar, X = D2 + D3
-
Artinya:
-
Jika D3 atau D2 aktif (logika 1), maka X = 1
-
Ini adalah pengkodean bit paling signifikan
-
Output Y:
-
Berdasarkan rangkaian:
-
Y = D3 + (D1 · ¬D2)
-
-
Artinya:
-
Jika D3 = 1, maka langsung Y = 1
-
Jika D3 = 0, D2 = 0, dan D1 = 1 → Y = 1
-
Dalam kondisi lain, Y = 0
-
Contoh kondisi input dan output:
D3 | D2 | D1 | D0 | X = D2+D3 | Y = D3 + (D1·¬D2) |
---|---|---|---|---|---|
0 | 0 | 0 | 1 | 0 | 0 |
0 | 0 | 1 | 0 | 0 | 1 |
0 | 1 | X | X | 1 | 0 |
1 | X | X | X | 1 | 1 |
Tidak ada komentar:
Posting Komentar