Oktober 2015
Perancangan Rangkaian Digital, Adder, Substractor, Multiplier, Divider
Disusun oleh: Tim dosen SLD
Diedit ulang oleh: Endro Ariyanto
Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom
Sistem dan Logika Digital/2015 #1
Perancangan Rangkaian Digital
1. Spesifikasi rangkaian/Deskripsi masalah – operasi/fungsi
– input/output
2. Proses Desain – Buat tabel kebenaran atau Diagram operasi
– Buat K-map
– Minimasi
– Fungsi output atau ekspresi aljabar
3. Rangkaian digital
x1 x2
xn
z1
z2
zm
Rangkain Kombinasional
Sistem dan Logika Digital/2015 #2
Contoh Desain (1)
Contoh 1: Gambarkan implementasi mesin yang masukannya 2-bit biner dan
keluarannya sama dengan kuadrat dari masukannya ! Input dan output aktif high, gerbang: AND, OR, dan NOT.
Jawab:
(1) Spesifikasi:
Output = Input2
Input/output: ACTIVE HIGH
Gerbang: AND, OR, NOT
(2) Tabel kebenaran: input/output
By
y
BAy
ABy
0
1
2
3
0
Input Output . .
(4) Fungsi Boolean:
(3) K-map utk setiap output: Tidak perlu krn masih
sederhana, shg tabel kebenaran sudah bisa dibuat fungsinya
Sistem dan Logika Digital/2015 #3
Contoh Desain (2)
(5) Rangkaian digital:
Sistem dan Logika Digital/2015 #4
Contoh Desain (3)
Contoh 2: (1) Spesifikasi:
(2) Tabel kebenaran: (I/O)
(4) Fungsi Boolean:
(5) Rangkaian digital:
(3) K-map utk setiap output: Tidak perlu krn masih sederhana,
shg tabel kebenaran sudah bisa dibuat fungsinya
Sistem dan Logika Digital/2015 #5
Rangkaian Kombinasional
• Rangkaian kombinasional tidak memiliki memori, sehingga state saat ini hanya tergantung pada input saat ini
))t(X(F)t(Z
x1 x2
xn
z1
z2
zm
X = x1 x2... xn Z = z1 z2... zm
Sistem dan Logika Digital/2015 #6
Penggunaan Rangkaian Kombinasional (1)
Penggunaan rangkaian digital:
Sistem dan Logika Digital/2015 #7
Penggunaan Rangkaian Kombinasional (2)
• Macam-macam rangkaian kombinasional: – Adders (HA, FA, PA, LACA, LSA)
– Subtractors
– Multipliers
– Divider
– Comparator
– Parity Generator
– Decoders
– Encoders
– Code Converters
– Multiplexers
– Shifters
– Programmable Logic Array (PLA)
Sistem dan Logika Digital/2015 #8
Bahan Presentasi Bagian 1
A D D E R (Rangkaian yang melakukan
Penjumlahan)
(25 menit)
Sistem dan Logika Digital/2015 #9
Perancangan Half Adder (HA) (1)
(1) Spesifikasi:
Sistem dan Logika Digital/2015 #10
Perancangan Half Adder (HA) (2)
(2) Tabel kebenaran: (I/O) (3) K-map untuk Sum dan Carry
S = A B C = A . B
(5) Rangkaian:
(4) Fungsi Boolean:
Sistem dan Logika Digital/2015 #11
Full Adder (FA) (1)
(1) Spesifikasi:
Sistem dan Logika Digital/2015 #12
Full Adder (FA) (2)
S = Cin’(A B) + Cin (AB)
= Cin’(A B) + Cin(A B)’
= A B Cin
Cout = Cin(A B) + (AB)
(2) Tabel kebenaran: (I/O) (3) K-map untuk Sum dan Carry Out:
(4) Fungsi Boolean:
Sistem dan Logika Digital/2015 #13
Full Adder (FA) (3)
(5) Rangkaian digital:
Sistem dan Logika Digital/2015 #14
Paralel Adder (PA) (1)
Format operasi: Carry-ripple effect:
Blok diagram:
Sistem dan Logika Digital/2015 #15
Paralel Adder (PA) (2)
n-bit Paralel adder = Carry-ripple adder
Sistem dan Logika Digital/2015 #16
Paralel Adder (PA) (3)
Contoh:
16-bit Paralel Adder (dibentuk dari 4 buah PA masing-masing 4 bit)
Kelemahan: pemrosesan masih lama karena harus berurutan dari satu PA ke PA berikutnya tdk bisa paralel
Sistem dan Logika Digital/2015 #17
Untuk mempercepat proses: – Look-Ahead-Carry Adder (LACA)
– Carry-Save Adder (CSA)
Paralel Adder (PA) (4)
Sistem dan Logika Digital/2015 #18
Look-Ahead-Carry Adder (LACA) (1)
- Menghitung carry di setiap bit secara bersamaan
- Untuk meminimasi waktu propagasi carry
Sistem dan Logika Digital/2015 #19
Look-Ahead-Carry Adder (LACA) (2)
Implementasi:
ditaruh di luar FA
Sistem dan Logika Digital/2015 #20
Look-Ahead-Carry Adder (LACA) (3)
Sistem dan Logika Digital/2015 #21
Look-Ahead-Carry Adder (LACA) (4)
Contoh 1: LAC Adder 3 bit
Sistem dan Logika Digital/2015 #22
Look-Ahead-Carry Adder (LACA) (5)
Contoh 2: LAC Adder 12 bit yang dibentuk dari 3 buah LAC Adder 4 bit
Sistem dan Logika Digital/2015 #23
Carry-Save Adder (CSA) (1)
- Beberapa variabel dapat dijumlahkan sekaligus
- Carry dijumlahkan belakangan
Contoh proses 1:
111 A --> 7
010 B --> 2
101 C --> 5
+011 D --> 3
011 Penjumlahan tanpa carry
+111 Carry digeser ke kiri satu posisi
10001 Hasil akhir = 17
Sistem dan Logika Digital/2015 #24
Carry-Save Adder (CSA) (2)
Contoh proses 2:
111 A --> 7
011 B --> 3
101 C --> 5
+011 D --> 3
010 Penjumlahan tanpa carry
+111 Carry digeser ke kiri satu posisi
10000
+ 1 Berasal dari carry ke-2
10010 Hasil akhir = 18
Sistem dan Logika Digital/2015 #25
Carry-Save Adder (CSA) (3)
Contoh proses 3:
111 A --> 7
010 B --> 2
111 C --> 7
+011 D --> 3
001 Penjumlahan tanpa carry
+111 Carry digeser ke kiri satu posisi
1111
+ 1 Berasal dari carry ke-2
10011 Hasil akhir = 19
Sistem dan Logika Digital/2015 #26
Carry-Save Adder (CSA) (4)
Contoh rangkaian: CSA 4 variabel (A,B,C,D) masing-masing 3 bit (indeks 0,1,2) dengan FA
Sistem dan Logika Digital/2015 #27
Bahan Presentasi Bagian 2
S U B S T R A C T O R (Rangkaian yang melakukan
Pengurangan)
(20 menit)
Sistem dan Logika Digital/2015 #28
Full Substractor (FS) (1)
(1) Spesifikasi:
Sistem dan Logika Digital/2015 #29
Full Substractor (FS) (2)
D = Bin’(A B) + Bin(A B) = Bin’(A B) + Bin(A B)’ = A B Bin
Bout = Bin(A B)’ + (A’B)
D = A – B – Bin
Bout = 1 jika hasil pengurangannya negatif (“–”)
(2) Tabel kebenaran: (I/O) (3) K-map untuk Sum dan Carry Out:
(4) Fungsi Boolean:
D = 1 jika hasilnya bukan nol
Sistem dan Logika Digital/2015 #30
Full Substractor (FS) (3)
(5) Rangkaian:
Sistem dan Logika Digital/2015 #31
Adder dan Substractor (1)
Rangkaian yang dapat melakukan operasi penjumlahan dan pengurangan biner untuk bilangan komplemen 1 dan komplemen 2.
Lebih menghemat komponen
Sistem kerja:
Sistem dan Logika Digital/2015 #32
Adder dan Substractor (2)
Paralel adder/subtractor Paralel adder/subtractor dengan untuk komplemen 1: untuk komplemen 2:
Sistem dan Logika Digital/2015 #33
Bahan Presentasi Bagian 3
M U L T I P L I E R (Rangkaian yang melakukan
Perkalian)
(25 menit)
Sistem dan Logika Digital/2015 #34
Multiplier (1)
Contoh:
Perkalian bilangan desimal 170x213 dalam format 8 x 8 bit
Sistem dan Logika Digital/2015 #35
Multiplier (2)
Simbol perkalian n x m bit
Blok diagram
2x2 bit
(1) Spesifikasi:
Soal: Buatlah rangkaian yang dapat melakukan perkalian 2x2 bit !
Sistem dan Logika Digital/2015 #36
Multiplier (3)
(2) Tabel kebenaran: (I/O)
Sistem dan Logika Digital/2015 #37
Multiplier (4)
(3) K-map dan (4) Fungsi Boolean: P0 dan P1
Sistem dan Logika Digital/2015 #38
Multiplier (5)
(3) K-map dan (4) Fungsi Boolean: P2 dan P3
Sistem dan Logika Digital/2015 #39
Multiplier (6)
(5) Rangkaian digital (level gate)
Sistem dan Logika Digital/2015 #40
Multiplier (7)
Solusi lain: (Level modul)
(1) Spesifikasi:
Sistem dan Logika Digital/2015 #41
Multiplier (8)
(5) Rangkaian digital (dengan modul FA)
Sistem dan Logika Digital/2015 #42
Ripple Carry Array Multiplier
Sistem dan Logika Digital/2015 #43
Bahan Presentasi Bagian 4
D I V I D ER (Rangkaian yang melakukan
Pembagian)
(20 menit)
Sistem dan Logika Digital/2015 #44
Divider (1)
• Cara pembagian dalam biner: 1. Kurangi bit-bit bilangan yang akan dibagi dengan bit-bit
bilangan pembagi secara berurutan dimulai dari bit MSB Jika bit-bit yang dikurangi lebih besar: 2. Pengurangan langsung dilakukan dan bit most
significant (MS) Borrow menjadi 0. 3. Tuliskan bit-bit sisa pengurangan (jumlah bit sama
seperti sebelum dilakukan pengurangan) Jika bit-bit yang dikurangi lebih kecil: 2. Set bit most significant (MS) Borrow menjadi 1 3. Tuliskan kembali bit-bit yang akan dikurangi 4. Geser posisi bit-bit pembagi ke kanan sebanyak satu bit 5. Ulangi langkah 1 6. Hasil bagi diperoleh dengan cara mengkomplemenkan bit-
bit MS Borrow
Sistem dan Logika Digital/2015 #45
Divider (2)
Contoh: Bilangan 17 : 3 atau 10001 : 11
(1) Spesifikasi: Soal:
Buatlah rangkaian untuk mengalikan 2x2 bit!
(R)
(Q)
Sistem dan Logika Digital/2015 #46
Divider (3)
(2) Tabel kebenarannya: (I/O)
(3) K-map dan (4) Fungsi Boolean:
Sistem dan Logika Digital/2015 #47
Divider (4)
(5) Bentuk rangkaiannya: (Level gate: NAND, AND, dan NOT)
Sistem dan Logika Digital/2015 #48
Divider (5)
Contoh lain: (Pembagian 3 bit : 2 bit Level modul)
Rangkaian untuk sisa (R):
D = different (bit hasil pengurangan)
A = minuend (bit yang sedang dibagi)
Sistem dan Logika Digital/2015 #49
Divider (6)
Bentuk rangkaiannya: (dengan modul FS)
Sistem dan Logika Digital/2015 #50
Pustaka
[TIN91] Tinder, Richard F. 1991. “Digital Engineering Design : A Modern Approach”. - edition. Prentice Hall.