Encoder, Multiplexer, Demultiplexer, Shifter, PLA
Disusun oleh: Tim dosen SLD Diedit ulang oleh: Endro Ariyanto
Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom November 2015
Bahan Presentasi Bagian 9
ENCODER (Rangkaian yang melakukan Bit output tertentu sesuai dengan bit input)
(15 menit) Sistem dan Logika Digital/2015 #1
Encoder • Kebalikan dari decoder – Membangkitkan input yang aktif
• Binary encoder – Input 2n menjadi kode n-bit output – Salah satu input harus bernilai 1 dan output yang merepresentasikan input biner tersebut sama dengan 1
• Kegunaan: mereduksi jumlah bit (pengiriman dan penyimpanan)
Sistem dan Logika Digital/2015 #2
Encoder 4-to-2
Sistem dan Logika Digital/2015 #3
Encoder Prioritas (1) • Blok diagram:
– EO =Enable Out; EI = Enable In; GS = Group Signal
• Setiap input/output biasanya aktif low • Setiap input memiliki prioritas • Output encoder mengindikasikan input yang aktif yang memiliki prioritas tertinggi Sistem dan Logika Digital/2015 #4
Encoder Prioritas (2) Contoh 1: 3 input 2 output GS aktif jika terjadi kondisi aktif EO aktif jika terjadi kondisi tidak aktif
Sistem dan Logika Digital/2015 #5
Encoder Prioritas (3) Rangkaiannya:
Sistem dan Logika Digital/2015 #6
Encoder Prioritas (4) Dua buah encoder prioritas 4-to-2 disusun secara stack: Contoh 2: 6 input 3 output
Sistem dan Logika Digital/2015 #7
Bahan Presentasi Bagian 10
MULTIPLEXER (MUX) (Rangkaian yang memilih salah satu input untuk diteruskan ke output)
(15 menit) Sistem dan Logika Digital/2015 #8
Multiplexer (MUX) (1) • Disebut juga sebagai DATA SELECTOR • MUX juga merupakan perangkat kombinasional logik yang berfungsi untuk memilih satu dari beberapa input data untuk diteruskan ke output • Terdiri atas n buah data select untuk mengontrol 2n input • Input DATA SELECT merupakan MINTERM, untuk memilih salah satu kombinasi inputnya • Misal: SELECTOR bernilai minterm 2 berarti akan meneruskan I2 ke output-nya Sistem dan Logika Digital/2015 #9
Multiplexer (MUX) (2)
Catatan: 1. Jika jumlah SELECT line sama dengan jumlah VARIABEL fungsi, maka input I diberi nilai dengan nilai 1(H) atau 0(H) sesuai spesifikasi inputnya 2. Jika jumlah SELECT line lebih kecil dari jumlah variabel fungsi, maka VARIABEL sisa (ke arah LSB) dipasang sebagai input ke line I Sistem dan Logika Digital/2015 #10
Multiplexer (MUX) (3) • Multiplekser 4 ke 1:
Sistem dan Logika Digital/2015 #11
Multiplexer (MUX) (4) • Rangkaian logika multiplekser 4 ke 1:
Sistem dan Logika Digital/2015 #12
Multiplexer (MUX) (5) • MUX 16 ke 1 tersusun dari MUX 4 ke 1
Sistem dan Logika Digital/2015 #13
Multiplexer (MUX) (6) • Multiplekser 8 ke 1
Sistem dan Logika Digital/2015 #14
Bahan Presentasi Bagian 11
DEMULTIPLEXER (DEMUX) (Rangkaian yang meneruskan input ke salah satu output)
(15 menit) Sistem dan Logika Digital/2015 #15
Demultiplexer (DEMUX)
Prinsip kerjanya kebalikan dari multiplekser
Sistem dan Logika Digital/2015 #16
Penerapan MUX/DEMUX (1) Contoh 1: MUX/DEMUX sebagai sistem time-multiplexing
(TDMA)
Sistem dan Logika Digital/2015 #17
Penerapan MUX (1) Contoh 1: Implementasikan fungsi berikut dengan MUX 8 ke 1 dimana semua input dan output adalah aktif High: Ysop(A,B,C,D) = (a) Buat K-map-nya:
m(3,4,5,6,7,9,10,14,15)
(b) Buat MEV sesuai dengan karakteristik MUX 8 ke 1
(c) Tulis fungsinya: S2=A S1=B S0=C Sistem dan Logika Digital/2015 #18
Penerapan MUX (2) (d) Buat rangkaian logikanya:
Sistem dan Logika Digital/2015 #19
Penerapan MUX (3) Contoh 2: Implementasikan fungsi berikut dengan MUX 4 ke 1 dimana semua input dan output adalah aktif High: Ysop(A,B,C,D) = (a) Buat K-map-nya:
m(3,4,5,6,7,9,10,12,14,15)
(b) Buat MEV sesuai dengan karakteristik MUX 4 ke 1
(c) Tulis fungsinya:
I0 = CD I1 = 1 I2 = C D I3 = C + D’
S0 = B S1 = A Sistem dan Logika Digital/2015 #20
Penerapan MUX (4) (d) Buat rangkaian logikanya:
Sistem dan Logika Digital/2015 #21
Penerapan MUX (5) Contoh 3: Implementasikan fungsi berikut dengan MUX 4 ke 1 dimana input A dan C aktif High dan sedangkan B dan D aktif Low: Ysop(A,B,C,D) = m(3,4,5,6,7,9,10,12, 14,15) (a) Buat K-map-nya: B dan D dibalik 0 1 dan 1 0
(b) Buat MEV sesuai dengan karakteristik MUX 4 ke 1
(c) Tulis fungsinya:
I0 = 1 I1 = CD I2 = C + D’ I3 = C D
S0 = B S1 = A
Sistem dan Logika Digital/2015 #22
Penerapan MUX (6) • Rangkaian logikanya:
Sistem dan Logika Digital/2015 #23
Bahan Presentasi Bagian 12
SHIFTER (Rangkaian yang meneruskan bit input ke output dengan cara digeser/diputar)
(25 menit) Sistem dan Logika Digital/2015 #24
Konsep Shifter (1) Contoh penerapan shifter: 1. Penyimpanan data serial 2. Konversi data serial ke parallel dan sebaliknya 3. Operasi aritmatika: Left/Right Shifting pada bilangan tak bertanda
R=Rotate (0=Shift; 1=Rotate) F=Fill (0=0-Fill; 1= S-Fill) D=Direction (0=Left; 1=Right)
Sistem dan Logika Digital/2015 #25
Konsep Shifter (2) • m addresses input berfungsi untuk menentukan jumlah pergeseran/perputaran • D control berfungsi untuk menentukan arah pergeseran/rotasi (Jika D=0 ke kiri ; jika D=1 ke kanan) • F control berfungsi menentukan nilai bit FILL pada output (Jika F=0 diisi dengan bit 0; jika F=1 diisi dengan bit SPILL (bisa 0 atau 1 sesuai dengan nilai bit sebelum digeser)) • R control berfungsi untuk menentukan tipe operasi (Jika R=0 pergeseran; jika R=1 rotasi)
Note: • Untuk Left shifter posisi bit MSB disebut SPILL dan posisi bit LSB disebut FILL • Untuk Right shifter posisi bit MSB disebut FILL dan posisi bit LSB disebut SPILL • Jika R=1 (active), F dan D control tidak digunakan • Jika R dan F control tidak disebutkan, maka R = F = 0 Sistem dan Logika Digital/2015 #26
Non-Arithmatic Shifter (1) • Fungsi utamanya adalah untuk melakukan bit SPILL-OFF/ZERO FILL dan operasi rotasi, yaitu “mengalirkan” bit per bit ke ALU • SPILL-OFF artinya bit pada posisi SPILL dianggap hilang/tidak digunakan dan bit pada posisi FILL diisi dengan bit 0
Sistem dan Logika Digital/2015 #27
Non-Arithmatic Shifter (2) • Rotasi ke kanan sebanyak 1 bit:
Sistem dan Logika Digital/2015 #28
Non-Arithmatic Shifter (3) Contoh soal: Rancanglah sebuah non-arithmatic shifter 4 bit yang mampu melakukan pergeseran atau rotasi ke kiri sebanyak 2 bit! • Tabel kebenarannya:
Sistem dan Logika Digital/2015 #29
Non-Arithmatic Shifter (4) • K-map dan fungsinya:
Sistem dan Logika Digital/2015 #30
Non-Arithmatic Shifter (5) Rangkaian logikanya:
Sistem dan Logika Digital/2015 #31
Non-Arithmatic Shifter (6) Solusi lain: Menggunakan MUX 8-to-1
Sistem dan Logika Digital/2015 #32
Arithmatic Shifter (1) • Merupakan unit penggeser (shifter) yang mampu menangani bit tanda (sign) • Aritmatika pergeseran bit: – Geser ke kiri 1 bit = perkalian dengan 21 – Geser ke kiri 2 bit = perkalian dengan 22 – Dan seterusnya – Geser ke kanan 1 bit = pembagian dengan 21 – Geser ke kanan 2 bit = pembagian dengan 22 – Dan seterusnya • Contoh: – 00001100 (=12) digeser ke kanan 2 bit (2sr) menjadi 00000011 (=3) • Identik dengan 12 : 4 = 3
– 00001100 (=12) digeser ke kiri 3 bit (3sl) menjadi 01100000 (=96) • Identik dengan 12 x 8 = 96
Sistem dan Logika Digital/2015 #33
Arithmatic Shifter (2) • Geser kiri pada bilangan sign-magnitude dan komplemen 2
Sistem dan Logika Digital/2015 #34
Arithmatic Shifter (3) • Geser kanan pada bilangan sign-magnitude dan komplemen 2
Sistem dan Logika Digital/2015 #35
Bahan Presentasi Bagian 13
PLA (Rangkaian yang bisa dibentuk untuk bermacam-macam fungsi )
(15 menit) Sistem dan Logika Digital/2015 #36
Programmable Logic Array (PLA) (1) Merupakan salah satu perangkat kombinasional logik yang direpresentasikan dalam suatu elemen-elemen array. Blok diagram PLA:
Jenis-jenis PLA: – – – –
Programmable Logic Array – mask programmable AND and OR plane Field Programmable Logic Array (FPLA) – user programmable PLA Programmable Array Logic (PAL) – mask programmable AND only Field Programmable Array Logic (FPAL) – user programmable PAL
Dimensi PLA: n x p x m n = jumlah input (8 – 20) p = jumlah product term (20 – 80) m = jumlah output (8 – 20) Sistem dan Logika Digital/2015 #37
Programmable Logic Array (PLA) (2) Rangkaian FPLA n x p x m yang belum diprogram:
Sistem dan Logika Digital/2015 #38
Programmable Logic Array (PLA) (3) Contoh soal 1: Gambarkan rangkaian PLA berdasarkan tabel berikut: Tabel p-term dengan polarisasi (aktif low dan high):
Tabel tanpa polarisasinya:
Sistem dan Logika Digital/2015 #39
Programmable Logic Array (PLA) (4) Gambar simbolik rangkaian FPLA n x p x m:
Sistem dan Logika Digital/2015 #40
Programmable Logic Array (PLA) (5) Contoh soal 2: Gambarkan rangkaian Comparator bilangan 2 bit dengan PROM decoder!
Sistem dan Logika Digital/2015 #41
Programmable Logic Array (PLA) (6) Contoh soal 3: Gambarkan rangkaian shifter 4 bit berdasarkan tabel p-term di bawah ini!
Sistem dan Logika Digital/2015 #42
Programmable Logic Array (PLA) (7) Rangkaian untuk non-arithmatic shifter 4 bit: FPLA 8x16x8 (atau 8x12x4)
Sistem dan Logika Digital/2015 #43
Programmable Logic Array (PLA) (8) Contoh 4:
Sistem dan Logika Digital/2015 #44
Programmable Logic Array (PLA) (9) Contoh 5:
Sistem dan Logika Digital/2015 #45
Programmable Logic Array (PLA) (10) Contoh 6:
Sistem dan Logika Digital/2015 #46
Tambahan
HAZARD (Rangkaian paling sederhana belum tentu paling baik)
Sistem dan Logika Digital/2015 #47
Hazards Pada Rangkaian Kombinasional (1) • Terjadi pada saat transisi yang berbeda dari input ke output yang memiliki delay propagasi yang berbeda • Static 1-hazard – Output rangkaian berubah menjadi 0, padahal seharusnya konstan pada 1 • Static 0-hazard – Output rangkaian berubah menjadi 1, padahal seharusnya konstan pada 0 • Dynamic hazard – Terjadi jika output berubah 3 kali atau lebih, pada saat output seharusnya berubah dari 0 ke 1 atau sebaliknya
Sistem dan Logika Digital/2015 #48
Delay Propagasi dan Hazard
1, seharusnya 0
0, seharusnya 1
Sistem dan Logika Digital/2015 #49
Hazard Cover (1)
Sistem dan Logika Digital/2015 #50
Hazard Cover (2)
Sistem dan Logika Digital/2015 #51
Hazards Pada Rangkaian Kombinasional (1) F = AB’+BC
AB C 00 0 1
01
11
F = AB’+BC+AC
10 1
1
1
1
AB C 00 0 1
01
11
10 1
1
1
1
To avoid hazards: every part of adjacent 1s should be covered by a 1-term Sistem dan Logika Digital/2015 #52
Hazards Pada Rangkaian Kombinasional (2) Kenapa harus peduli dengan hazards? • Rangkaian Kombinasional – don’t care – Rangkaian akan tetap berfungsi dengan baik
• Rangkaian Synchronous Sequential – don’t care – sinyal input tetap dalam keadaan stabil pada saat waktu setup dan waktu hold dari flip-flop
• Rangkaian Asynchronous sequential – hazards dapat menyebabkan rangkaian dalam keadaan state yang tidak tepat
• Konsumsi power proportional terhadap jumlah transisi
Sistem dan Logika Digital/2015 #53
Hazard Pada Output (1)
• Hazard: Kondisi error sementara (glitch) yang muncul pada output • Penyebab: – Waktu tunda propagasi gerbang – Waktu tunda RC Interconnect
• Jenis: – Hazard Fungsi – Hazard Logik
Sistem dan Logika Digital/2015 #54
Hazard Pada Output (2)
Sistem dan Logika Digital/2015 #55
Hazard Pada Output (3)
Sistem dan Logika Digital/2015 #56
Hazards in Combinational Networks • Apakah itu Hazards pada CN? – Transisi pada output yang tidak diinginkan (glitches)
• Contoh – ABC = 111, B berubah ke 0 – Asumsi setiap gerbang memiliki delay propagasi 10ns
Sistem dan Logika Digital/2015 #57
Pustaka [TIN91]
Tinder, Richard F. 1991. “Digital Engineering Design : A Modern Approach”. - edition. Prentice Hall.
Sistem dan Logika Digital/2015 #58