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 Oktober 2015
Perancangan Rangkaian Digital x1 x2
Rangkain Kombinasional
xn
z1 z2
zm
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 Sistem dan Logika Digital/2015 #1
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. (3) K-map utk setiap output: Jawab: Tidak perlu krn masih (1) Spesifikasi: sederhana, shg tabel 2 Output = Input kebenaran sudah bisa dibuat fungsinya Input/output: ACTIVE HIGH Gerbang: AND, OR, NOT (2) Tabel kebenaran: input/output .
Input
Output
.
(4) Fungsi Boolean:
y3
AB
y2
AB
y1
0
y0
B
Sistem dan Logika Digital/2015 #2
Contoh Desain (2) (5)
Rangkaian digital:
Sistem dan Logika Digital/2015 #3
Contoh Desain (3) Contoh 2:
(2) Tabel kebenaran: (I/O)
(1) Spesifikasi:
(3) K-map utk setiap output: Tidak perlu krn masih sederhana, shg tabel kebenaran sudah bisa dibuat fungsinya
(5) Rangkaian digital:
(4) Fungsi Boolean:
Sistem dan Logika Digital/2015 #4
Rangkaian Kombinasional • Rangkaian kombinasional tidak memiliki memori, sehingga state saat ini hanya tergantung pada input saat ini
X = x1 x2... xn Z = z1 z2... zm x1 x2
z1 z2
xn
zm
Z(t) F( X(t))
Sistem dan Logika Digital/2015 #5
Penggunaan Rangkaian Kombinasional (1)
Penggunaan rangkaian digital:
Sistem dan Logika Digital/2015 #6
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 #7
Bahan Presentasi Bagian 1
ADDER (Rangkaian yang melakukan Penjumlahan)
(25 menit) Sistem dan Logika Digital/2015 #8
Perancangan Half Adder (HA) (1) (1) Spesifikasi:
Sistem dan Logika Digital/2015 #9
Perancangan Half Adder (HA) (2) (2) Tabel kebenaran: (I/O)
(3) K-map untuk Sum dan Carry
(5) Rangkaian:
(4) Fungsi Boolean:
S=A
B
C=A.B
Sistem dan Logika Digital/2015 #10
Full Adder (FA) (1)
(1) Spesifikasi:
Sistem dan Logika Digital/2015 #11
Full Adder (FA) (2) (2) Tabel kebenaran: (I/O)
(3) K-map untuk Sum dan Carry Out:
(4) Fungsi Boolean:
S = Cin’(A
B) + Cin (AB)
= Cin’(A
B) + Cin(A
=A
Cin
B
Cout = Cin(A
B)’
B) + (AB)
Sistem dan Logika Digital/2015 #12
Full Adder (FA) (3) (5) Rangkaian digital:
Sistem dan Logika Digital/2015 #13
Paralel Adder (PA) (1) Format operasi:
Carry-ripple effect:
Blok diagram:
Sistem dan Logika Digital/2015 #14
Paralel Adder (PA) (2) n-bit Paralel adder = Carry-ripple adder
Sistem dan Logika Digital/2015 #15
Paralel Adder (PA) (3) Contoh:
16-bit Paralel Adder (dibentuk dari 4 buah PA masingmasing 4 bit)
Kelemahan: pemrosesan masih lama karena harus berurutan dari satu PA ke PA berikutnya tdk bisa paralel Sistem dan Logika Digital/2015 #16
Paralel Adder (PA) (4)
Untuk mempercepat proses: – Look-Ahead-Carry Adder (LACA) – Carry-Save Adder (CSA)
Sistem dan Logika Digital/2015 #17
Look-Ahead-Carry Adder (LACA) (1) - Menghitung carry di setiap bit secara bersamaan - Untuk meminimasi waktu propagasi carry
Sistem dan Logika Digital/2015 #18
Look-Ahead-Carry Adder (LACA) (2) Implementasi:
ditaruh di luar FA
Sistem dan Logika Digital/2015 #19
Look-Ahead-Carry Adder (LACA) (3)
Sistem dan Logika Digital/2015 #20
Look-Ahead-Carry Adder (LACA) (4) Contoh 1: LAC Adder 3 bit
Sistem dan Logika Digital/2015 #21
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 #22
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 #23
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 #24
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 #25
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 #26
Bahan Presentasi Bagian 2
SUBSTRACTOR (Rangkaian yang melakukan Pengurangan)
(20 menit) Sistem dan Logika Digital/2015 #27
Full Substractor (FS) (1) (1) Spesifikasi:
Sistem dan Logika Digital/2015 #28
Full Substractor (FS) (2) (2) Tabel kebenaran: (I/O)
(3) K-map untuk Sum dan Carry Out:
(4) Fungsi Boolean: D = A – B – Bin D = 1 jika hasilnya bukan nol
Bout = 1 jika hasil pengurangannya negatif (“–”)
D = Bin’(A B) + Bin(A B) = Bin’(A B) + Bin(A B)’ = A B Bin Bout = Bin(A B)’ + (A’B) Sistem dan Logika Digital/2015 #29
Full Substractor (FS) (3) (5) Rangkaian:
Sistem dan Logika Digital/2015 #30
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 #31
Adder dan Substractor (2) Paralel adder/subtractor untuk komplemen 1:
Paralel adder/subtractor dengan untuk komplemen 2:
Sistem dan Logika Digital/2015 #32
Bahan Presentasi Bagian 3
MULTIPLIER (Rangkaian yang melakukan Perkalian)
(25 menit) Sistem dan Logika Digital/2015 #33
Multiplier (1) Contoh: Perkalian bilangan desimal 170x213 dalam format 8 x 8 bit
Sistem dan Logika Digital/2015 #34
Multiplier (2) Simbol perkalian n x m bit
Soal: Buatlah rangkaian yang dapat melakukan perkalian 2x2 bit ! (1) Spesifikasi:
Blok diagram
2x2 bit
Sistem dan Logika Digital/2015 #35
Multiplier (3) (2) Tabel kebenaran: (I/O)
Sistem dan Logika Digital/2015 #36
Multiplier (4) (3) K-map dan (4) Fungsi Boolean: P0 dan P1
Sistem dan Logika Digital/2015 #37
Multiplier (5) (3) K-map dan (4) Fungsi Boolean: P2 dan P3
Sistem dan Logika Digital/2015 #38
Multiplier (6) (5) Rangkaian digital (level gate)
Sistem dan Logika Digital/2015 #39
Multiplier (7) Solusi lain: (Level modul) (1) Spesifikasi:
Sistem dan Logika Digital/2015 #40
Multiplier (8) (5) Rangkaian digital (dengan modul FA)
Sistem dan Logika Digital/2015 #41
Ripple Carry Array Multiplier
Sistem dan Logika Digital/2015 #42
Bahan Presentasi Bagian 4
D I V I D ER (Rangkaian yang melakukan Pembagian)
(20 menit) Sistem dan Logika Digital/2015 #43
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 bitbit MS Borrow Sistem dan Logika Digital/2015 #44
Divider (2) Contoh: Bilangan 17 : 3 atau 10001 : 11
Soal:
(1) Spesifikasi:
Buatlah rangkaian untuk mengalikan 2x2 bit!
(R)
(Q)
Sistem dan Logika Digital/2015 #45
Divider (3) (2) Tabel kebenarannya: (I/O)
(3) K-map dan (4) Fungsi Boolean:
Sistem dan Logika Digital/2015 #46
Divider (4) (5) Bentuk rangkaiannya: (Level gate: NAND, AND, dan NOT)
Sistem dan Logika Digital/2015 #47
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 #48
Divider (6) Bentuk rangkaiannya: (dengan modul FS)
Sistem dan Logika Digital/2015 #49
Pustaka [TIN91] Tinder, Richard F. 1991. “Digital Engineering Design : A Modern Approach”. - edition. Prentice Hall.
Sistem dan Logika Digital/2015 #50