BAB 12: RANGKAIAN KOMBINASIONAL —
ARITHMETIC DAN MULTIPLEXER
A.
Pengantar
Rangkaian Kombinasional
1.
Definisi
Rangkaian Kombinasional
a.
Rangkaian
yang outputnya hanya bergantung pada input saat itu (tanpa memori)
b.
Tidak
ada elemen penyimpan (flip-flop, register)
c.
Output
berubah segera setelah input berubah (setelah propagation delay)
d.
Contoh:
penjumlah, pengurang, multiplexer, decoder, encoder
2.
Perbedaan
Kombinasional vs Sekuensial
a.
Kombinasional
— output = fungsi(input)
b.
Sekuensial
— output = fungsi(input, state sebelumnya)
c.
Kombinasional
— tidak punya clock
d.
Sekuensial
— dipicu oleh clock (synchronous)
3.
Blok
Diagram Rangkaian Kombinasional
a.
n
input → rangkaian logika → m output
b.
n
dan m bisa berbeda (tidak harus sama)
c.
Setiap
output adalah fungsi Boolean dari input
d.
Dapat
direpresentasikan dengan tabel kebenaran
4.
Desain
Rangkaian Kombinasional
a.
Tentukan
spesifikasi (tabel kebenaran)
b.
Tulis
ekspresi Boolean (SOP atau POS)
c.
Sederhanakan
(K-Map atau aljabar)
d.
Implementasikan
dengan gerbang logika
B.
Half-Adder
dan Full-Adder
1.
Half-Adder
(Penjumlah Setengah)
a.
Menjumlahkan
2 bit (A dan B)
b.
Output:
Sum (S) dan Carry Out (C_out)
c.
S
= A ⊕ B
(XOR)
d.
C_out
= A · B (AND)
e.
Tidak
bisa menangani carry dari input
2.
Implementasi
Half-Adder
a.
Gerbang
XOR untuk Sum
b.
Gerbang
AND untuk Carry
c.
Gambar
skema
d.
Tabel
kebenaran: A,B → S,C_out
3.
Full-Adder
(Penjumlah Penuh)
a.
Menjumlahkan
3 bit: A, B, dan Carry In (C_in)
b.
Output:
Sum (S) dan Carry Out (C_out)
c.
S
= A ⊕ B ⊕ C_in
d.
C_out
= (A·B) + (C_in·(A ⊕
B))
e.
Dapat
disusun dari 2 half-adder + OR gate
4.
Implementasi
Full-Adder
a.
Menggunakan
2 XOR, 2 AND, 1 OR gate
b.
Cara
alternatif: menggunakan NAND-NAND
c.
Simbol
standar Full-Adder
d.
Tabel
kebenaran 8 baris (A,B,C_in → S,C_out)
C.
Ripple
Carry Adder (Penjumlah Berantai)
1.
Konsep
Ripple Carry Adder
a.
Menyusun
n buah Full-Adder secara seri
b.
Carry
Out dari satu adder menjadi Carry In ke adder berikutnya
c.
Sederhana
dan mudah diimplementasikan
d.
Dapat
menjumlahkan bilangan n-bit
2.
Struktur
Ripple Carry Adder
a.
Input:
A[n-1..0], B[n-1..0]
b.
Output:
S[n-1..0], C_out terakhir
c.
Carry
pertama (C_in) = 0
d.
Blok
diagram untuk n-bit
3.
Kelemahan
Ripple Carry Adder
a.
Propagasi
carry berurutan (dari LSB ke MSB)
b.
Delay
total = n × delay satu Full-Adder
c.
Semakin
banyak bit, semakin lambat
d.
Solusi:
Carry Look-Ahead Adder (CLA)
4.
IC
Adder 74LS83 / 74LS283
a.
IC
74LS83 — 4-bit Full-Adder
b.
IC
74LS283 — 4-bit Full-Adder (dengan faster carry)
c.
Pinout
dan aplikasi
d.
Cascading
untuk n-bit >4
D.
Subtractor
dan Komplemen
1.
Half-Subtractor
a.
Mengurangkan
2 bit (A - B)
b.
Output:
Difference (D) dan Borrow Out (B_out)
c.
D
= A ⊕ B
(XOR)
d.
B_out
= Ā · B
e.
Analogi
dengan half-adder
2.
Full-Subtractor
a.
Mengurangkan
3 bit: A, B, Borrow In (B_in)
b.
Output:
Difference (D) dan Borrow Out (B_out)
c.
D
= A ⊕ B ⊕ B_in
d.
B_out
= (Ā·B) + (B_in·(Ā ⊕
B))
e.
Dapat
disusun dari 2 half-subtractor + OR
3.
Pengurangan
dengan Adder
a.
A
- B = A + (komplemen 2 dari B)
b.
Komplemen
2 B = B̄ + 1
c.
Menggunakan
adder dengan B yang di-inversi
d.
C_in
= 1 (untuk menambahkan +1)
e.
Sangat
efisien (menggunakan adder yang sama)
4.
2's
Complement Adder/Subtractor
a.
Satu
rangkaian dapat melakukan add dan subtract
b.
Control
signal (ADD/SUB)
c.
SUB
= 1 → B di-inversi, C_in = 1
d.
SUB
= 0 → B normal, C_in = 0
e.
Implementasi
dengan XOR gate + Full-Adder
E.
Multiplexer
(MUX)
1.
Konsep
Dasar Multiplexer
a.
Multiplexer
memilih satu dari beberapa input data
b.
Jumlah
input = 2^n (n = jumlah selector line)
c.
Output
= input yang dipilih oleh selector
d.
Fungsi:
"data selector" atau "multiplekser”
2.
MUX
2-ke-1 (2:1 MUX)
a.
2
input data (I₀, I₁), 1 selector (S), 1 output (Y)
b.
Y
= I₀·S̄ + I₁·S
c.
S=0
→ Y=I₀, S=1 → Y=I₁
d.
Implementasi
dengan 2 AND, 1 OR, 1 NOT
3.
MUX
4-ke-1 (4:1 MUX)
a.
4
input data (I₀-I₃), 2 selector (S₁,S₀), 1 output
b.
Y
= I₀·S₁̄S₀̄ + I₁·S₁̄S₀ + I₂·S₁S₀̄ + I₃·S₁S₀
c.
S=00→I₀,
01→I₁, 10→I₂, 11→I₃
d.
Dapat
disusun dari 2:1 MUX
e.
IC
74151 (8:1 MUX), IC 74153 (4:1 MUX)
4.
MUX
8-ke-1 dan 16-ke-1
a.
8:1
MUX — 3 selector, 8 input
b.
16:1
MUX — 4 selector, 16 input
c.
Aplikasi
d.
Cascading
MUX untuk kapasitas lebih besar
5.
Aplikasi
MUX
a.
Pemilihan
data dari berbagai sumber
b.
Implementasi
fungsi Boolean (MUX sebagai look-up table)
c.
Routing
sinyal pada bus
d.
Multiplexing
komunikasi (time-division multiplexing)
F.
Demultiplexer
(DEMUX)
1.
Konsep
Dasar Demultiplexer
a.
Demultiplexer
mendistribusikan satu input ke beberapa output
b.
Jumlah
output = 2^n (n = jumlah selector line)
c.
Input
didistribusikan ke output yang dipilih oleh selector
d.
Output
yang tidak dipilih = 0
2.
1-ke-2
DEMUX (1:2 DEMUX) 1. 1 input (D), 1
selector (S), 2 output (Y₀,Y₁)
a.
1
input (D), 1 selector (S), 2 output (Y₀,Y₁)
b.
Y₀
= D·S̄, Y₁ = D·S
c.
S=0
→ Y₀=D, Y₁=0
d.
S=1
→ Y₀=0, Y₁=D
3.
1-ke-4
DEMUX (1:4 DEMUX)
a.
1
input, 2 selector, 4 output
b.
S=00
→ Y₀=D, yang lain 0
c.
S=01
→ Y₁=D, yang lain 0
d.
S=10
→ Y₂=D, yang lain 0
e.
S=11
→ Y₃=D, yang lain 0
4.
Aplikasi
DEMUX
a.
Distribusi
data ke beberapa perangkat
b.
Decoder
(DEMUX dengan input D = 1)
c.
Bus
distributor
d.
Implementasi
fungsi Boolean
5.
IC
DEMUX
a.
IC
74138 — 1:8 DEMUX / 3:8 Decoder
b.
IC
74139 — 1:4 DEMUX (dual)
c.
Pinout
dan aplikasi
d.
Perbedaan
DEMUX dan Decoder
G.
Decoder
dan Encoder
1.
Decoder
(Pengurai)
a.
Decoder
mengubah n-bit input menjadi 2ⁿ output
b.
Satu
output aktif (1) sesuai dengan input
c.
Decoder
2:4 — 2 input → 4 output
d.
Decoder
3:8 — 3 input → 8 output
e.
IC
74138 — 3:8 decoder/demultiplexer
2.
Aplikasi
Decoder
a.
Seleksi
alamat memori (memory address decoding)
b.
Seven-segment
display decoder (BCD ke 7-segment)
c.
Mengaktifkan
perangkat berdasarkan kode
d.
Implementasi
fungsi Boolean
3.
Encoder
(Pengode)
a.
Encoder
mengubah 2ⁿ input menjadi n-bit output
b.
Satu
input aktif, menghasilkan kode biner
c.
Encoder
4:2 — 4 input → 2 output
d.
Encoder
8:3 — 8 input → 3 output
e.
IC
74147 — priority encoder 8:3
4.
Priority
Encoder
a.
Jika
beberapa input aktif bersamaan, input dengan prioritas tertinggi yang diproses
b.
Dilengkapi
dengan Valid bit (V) untuk mendeteksi input aktif
c.
Aplikasi
— interrupt controller, keyboard encoder
d.
IC
74148 — priority encoder 8:3
5.
BCD
to 7-Segment Decoder
a.
Mengubah
input BCD (0-9) menjadi 7-segment display
b.
7
output (a-g) untuk menyalakan segmen
c.
IC
7447 (common anode)
d.
IC
7448 (common cathode)
e.
Tabel
kebenaran dan logika internasional
H.
Aplikasi
Rangkaian Kombinasional
1.
ALU
(Arithmetic Logic Unit) Dasar
a.
ALU
sederhana: Add, Sub, AND, OR
b.
Control
signal menentukan operasi
c.
Multiplexer
untuk memilih output
d.
Blok
diagram ALU 4-bit
2.
Comparator
(Pembanding)
a.
Membandingkan
dua bilangan biner
b.
Output:
A>B, A<B, A=B
c.
Menggunakan
XOR, OR, AND
d.
IC
7485 — 4-bit comparator
3.
Parity
Checker/Generator
a.
Parity
checker — mendeteksi error pada data
b.
Parity
generator — menambahkan parity bit
c.
Menggunakan
gerbang XOR
d.
Aplikasi
— komunikasi serial, memori
4.
Seven-Segment
Display Driver
a.
Decoder
BCD ke 7-segment
b.
Aplikasi
c.
Multiplexing
display (menghemat pin)
d.
Contoh
desain driver dengan decoder
Komentar
Posting Komentar