7alu, half-full adder, ripple carry adder
TRANSCRIPT
7Tujuan
ARITHMATIC LOGIC UNIT ( alu ) half - full adder , ripple carry adder: Setelah mempelajari half-full adder, ripple carry adder diharapkan dapat, 1. Memahami aturan-aturan Penjumlahan bilangan biner 2. Memahami aturan-aturan Pengurang bilangan biner 3. Memahami prinsip kerja penjumlah setengah (Half Adder) 4. Mampu melakukan operasi penjumlah setengah (half Adder) 5. Memahami prinsip kerja penjumlah penuh (Full Adder) 6. Mampu melakukan operasi penjumlah penuh (Full Adder) 7. Mampu membedakan prinsip dasar antara penjumlah setengah (Half Adder) dan Penjumlah penuh (Full Adder). 8. Memahami prinsip kerja Rangkaian Penjumlah dan Pengurang (Ripple Carry Adder) 9. Mampu melakukan operasi Penjumlah dan Pengurang (Ripple Carry Adder)
Prasyarat : Untuk mempelajari Pembelajaran 7 diperlukan kegiatan dan kemampuan seperti di bawah ini , 1. Telah mengerjakan latihan-latihan pada Pembelajaran 6. 2. Semua latihan pada Pembelajaran 6 dijawab dengan Benar. 7. 1. Rangkaian Penjumlah Penjumlahan bilangan biner telah dibahas pada pembelajaran 3, sedangkan pada pem belajaran inti kita akan membahas rangkaian penjumlah yang dibangun dari aturan aturan penjumlahan bilangan biner. Pada sebuah mikrocomputer dan juga komputer, hanya memproses bilangan biner. Di bawah ini adalah hasil penjumlahan dua buah bilangan biner yang masing-masing terdiri dari 1 ( satu ) bit. A + 0 0 1 1 + + + + B 0 1 0 0 Hasil 0 1 1 0 Carry 0 0 0 1
Teknik Mikroprosessor
115
Arithmatic Logic Unit
Suatu rangkaian digital yang mampu melaksanakan operasi penjumlahan seperti pada tabel di balik disebut Half Adder ( HA ).
Carry U
B 0
A 0 1 0 1 0 1 1 0
U 0 0 0 1
A B
0
HA
Hasil
1 1
Gambar Blok Half Adder
Tabel Fungsi Half Adder
Dari tabel di atas, perhatikanlah sinyal " 1 " pada Hasil dan Carry U dapat dikembangkan persamaan fungsi seperti di bawah ini. Hasil Carry U = (AB)v (AB) = A B = A v B ( Ex - OR ) ( AND )
Dari kedua persamaan di atas dapat dikembangkan rangkaian Half Adder seperti di bawah ini.U= A B
A B
A B A B
(A
B)
(A
B)V (A
B)
Rangkaian Half Adder
Teknik Mikroprosessor
116
Arithmatic Logic Unit
Contoh Dilakukan penjumlahan antara dua bilangan A H + B H
U= A
B= H
A B
H H
H
H L
(A
B) L L L (A B)V (A B)=L
L H
Perhitungan
: + 1
1 1
A ( Variabel Input ) B ( Variabel Input ) U ( Carry ) ( Hasil )
0
Half Adder tidak dapat digunakan untuk melakukan proses penjumlahan dua buah bilangan yang masing-masing terdiri dari beberapa digit ( multi digit ). Penjumlahan yang terdiri dari beberapa bit harus menyertakan carry pada digit yang lebih tinggi berikutnya dan solusi penjumlah yang demikian disebut Full Adder ( FA ), dimana disamping input A dan B disertakan juga Carry sebagai bagian dari input.C 0 0 0 0 1 1 1 1 Carry In B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 0 1 1 0 1 0 0 1 U 0 0 0 1 0 1 1 1
Carry Out
A B
FA
Hasil
Untuk hasil penjumlahan berlaku persamaan ,Teknik Mikroprosessor
117
Arithmatic Logic Unit
= (ABC)v (ABC) v (ABC)v (ABC)
Sesuai Hukum Distributive pada Aljabar Boole, persamaan fungsi di atas menjadi, = [(AB) v (AB)]C v [(AB) v (AB)]C = [(AB) v (AB)]C v (1C) = [(AB) v (AB)] (C v C) = ( A V B) V C = A V B V C
Setelah melalui penyederhanaan, rangkaian dapat dinyatakan seperti pada gambar di bawah.A B A V B
C
A V B V C
Disamping persamaan Hasil juga terdapat persamaan untuk Carry seperti di bawah ini, U = (ABC)v (ABC) v (ABC)v (ABC)
Persamaan ini dapat disederhanakan menjadi, U = (AB)v (BC) v (AC)
Dari kedua persamaan di atas dapat dikembangkan menjadi rangkaian digital Full Adder .C A A C
A
A B
A
B
U= (A
B)V ( B
C)V (A
C)
B
B C
B
C
A V B A V B V C
C
Rangkaian Full Adder Contoh Dilakukan penjumlahan antara dua bilangan A Teknik Mikroprosessor 118 + B dengan memper Arithmatic Logic Unit
hatikan Input Carry
C HH H A C H A B H L B C H
H
H
H
A
H L
U= (A U= H
B)V ( B
C)V (A
C)
BL
L H L H
A V B H A V B V C = L H L
C
Perhitungan
: + + 1
1 0 1
A ( Variabel Input ) B ( Variabel Input ) C ( Input Carry ) U ( Output Carry ) ( Hasil )
0
Penjumlah dua buah bilangan biner yang terdiri dari N bit, sehingga memerlukan N bit Full Adder seperti pada contoh di bawah. 23 22 A2 1 B2 1 C3 1 1 C2 1 1 21 A1 0 B1 1 C1 1 0 20 A0 1 B0 1 C0 0 0 Hasil Carry U ( C ) Variabel B ( 3 Bit ) Tempat Bilangan Variabel A ( 3 Bit )
Pada tempat 20 tidak
terjadi Carry ( 0 ), sehingga pada tempat ini ( bit ini ) Adder. Sedangkan pada tempat 21 dan 22 masing-
memerlukam rangkaian Half
masing diperlukan Full Adder. Jika pada tempat 20 digunakan inputnya harus di berikan logik " L " .Teknik Mikroprosessor
FA, maka CarryArithmatic Logic Unit
119
2
3
A2
2
2
B2
A1
2
1
B1
A0
2
0
B0
H C3 H U2
H
H C2 H U1
H
H C1 H U0
H
FA3
FA2
FA1
C0 L
2
1
0
H
H
L
L
Gambar Full Adder 3 Bit
Gambar di bawah adalah rangkaian penjumlah 8 Bit yang dibangun dari 4 buah gerbang TTL 7482 ( 2 Bit FA ) atau 2 buah gerbang TTL 7483 ( 4 Bit FA ).
A7 B7
A6 B6 U6
A5 B5
A4 B4 U4
A3 B3
A2 B2 U2
A1 B1
A0 B0 U0
FA
FA
FA
FA
FA
FA
FA
FA
U8 7 6
U6 5 4
U4 3 2
U2 1 0
1 A1 B1 UB Un
A2 B2
2 - Bit FA 7482
2
Un+2
Full Adder 8 Bit7. 2. Ripple Carry Adder Jika pada rangkaian penjumlah n Bit, input Carry C0 diberikan sinyal " 1 " maka hasil penjumlahan bilangan A dan B akan kelebihan 1 ( satu ), sehingga pada masukan C0 ini disebut Incremant ( INC ). Suatu rangkaian penjumlah yang mempunyai incremant input disebut Ripple Carry Adder.Teknik Mikroprosessor
120
Arithmatic Logic Unit
Output Carry Un An Un An-1 A1 A0 Un-1
FACn
n
FACn-1
n-1
U1
FAC1
1
U0
FAC0 Bn Bn-1 B1 INC B0
0
Logik Diagram Ripple Carry AdderCarry Out Un
An An-1 A1 A0 Bn Bn-1 B1 B0
n
n - Bit FA
n-1 1 0
INC
Blok Diagram Ripple Carry Adder
7. 3. Rangkaian Penjumlah - Pengurang Dengan mengembangkan rangkaian Ripple menambahkan beberapa gerbang AND Carry dan Adder yaitu dengan jalan didepannya sehingga
EX-OR
memungkinkan rangkaian tersebut digunakan untuk operasi penjumlahan dan pengurangan, maka rangkaian tersebut disebut Rangkaian Penjumlah - Pengurang.
Teknik Mikroprosessor
121
Arithmatic Logic Unit
Un A3
=1A2
=1A1
=1A0
=1
B3
=1B2
=1B1
=1B0
=1INC
S4 S3
S2 S1 Input Pengontrol
S0
Logik Diagram Penjumlah - Pengurang Gambar rangkaian penjumlah - pengurang di atas digunakan untuk operasi penjumlahan dan pengurangan bilangan A dan Bilangan B yang masing-masing terdiri dari 4 Bit dan mempunyai 5 ( lima ) input pengontrol yaitu S0, S1, S2, S3 dan S4. Tergantung dari kombinasi input pengontrol ini, maka ada 32 macam kombinasi seperti diperlihatkan pada tabel fungsi dari penjumlah - pengurang dibalik ini. 24 Des. 0 1 2 3 S4 0 0 0 0 23 S3 0 0 0 0 22 S2 0 0 0 0 21 S1 0 0 1 1 122 20 S0 0 1 0 1 Fungsi Output 0 1 -1 0Arithmatic Logic Unit
Teknik Mikroprosessor
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
-1 0 -2 -1 B B+1 -B-1=B -B B -1 B -B-2 -B-1=B A A+1 A-1 A -A-1=A -A -A-2 -A-1=A A+B A+B+1 A-B-1 A-B B-A -1 B-A -A-B-2 -A-B-1
Tabel Fungsi Penjumlah - Pengurang Contoh Fungsi Output A + B Input A Input B Input INC Output = = = = 0000 + 1111 + 0 1111
Teknik Mikroprosessor
123
Arithmatic Logic Unit
UnL
A3H
L L
=1L L
L
L A2 H L A1 H L A0 H
=1L L
L
=1L L
L
=1L
L
H H
H
B3H
H H
=1L H
H
H
H B2 H H
=1L H
H
B1H
=1L H
H
H B0 H
=1L
H
INC
S4 S3H H
S2 S1L L
S0L
Sesuai dengan tabel fungsi, input pengontrol untuk kombinasi S4 H S3 H S2 L S1 L S0 L
fungsi output
A + B adalah S4 H S3 H
Dengan keadaan sinyal pada
informasi yang ada pada input A dan input B akan dilalukan menuju input gerbang EX-OR ( A 1 = A ) . Dengan keadaan sinyal pada S2 L S1 L informasi yang ada
pada gerbang EX-OR akan dilalukan ke input Ripple Carry Adder, tanpa mengalami perubahan ( A V 0 = A ). Didalam Ripple Carry Adder terjadi proses penjumlahan informasi yang ada pada inputnya. Dengan keadaan sinyal pada S0 L penjumlahan bilangan tidak ditambah dengan 1 ( satu ), sehingga pada output Ripple Carry Adder adalah hasil A + B. maka hasil
Teknik Mikroprosessor
124
Arithmatic Logic Unit
Contoh Fungsi Output A - B Input A Input B Input INC Output = 1 1 1 1 = 15 = 0011 = 3 = = 1 = 1 1111 + 1100 + 1
1 1 1 0 0 = 12
UnH
A3H
H H
=1L H
H
H
A2H
=1L H
H
H
A1H
=1L H
H
H
A0H
=1L
H
H H
L
B3H
L L
=1H L
H
L
L
B2H
=1H H
H
H
B1H
=1H H
L
H B0 H
=1H
L
INC
S4 S3H H
S2 S1L H
S0H
Sesuai dengan tabel fungsi, input pengontrol untuk kombinasi S4 H S3 H S2 L S1 H S0 H
fungsi output
A - B adalah S4 H S3 H
Dengan keadaan sinyal pada
informasi yang ada pada input A dan input B akan dilalukan menuju input gerbang EX-OR ( A 1 = A ) . Dengan keadaan sinyal pada S2 L informasi yang ada
Teknik Mikroprosessor
125
Arithmatic Logic Unit
pada gerbang EX-OR yang berasal dari input A akan dilalukan ke input Ripple Carry Adder, tanpa mengalami perubahan pada S1 L S0 L ( A V 0 = A ). Dengan keadaan sinyal
informasi yang ada pada input B akan dikomplement menjadi B dan berada pada input Ripple Carry Adder . Dengan keadaan sinyal pada
maka diperoleh harga komplemen dua dari input B ( B + 1 = - B ), sehingga proses penjumlahan yang terjadi pada Ripple Carry Adder menjadi A + (-B )
= A-B 7. 4. Arithmatic Logic Unit ( ALU ) Untuk semua microprosessor tidak hanya mampu melaksanakan operasi-operasi arithmatik saja, tetapi juga harus mampu melaksanakan operasi-operasi logik. Kedua operasi ini dilaksanakan di dalam Aritmatic Logic Unit ( ALU ) yang terdapat pada seluruh microprosessor. Ada tiga dasar operasi logik yaitu, A B A V B A V B ( Operasi AND ) ( Operasi OR ) ( Operasi EX-OR )
keluaran dari ALU diatur oleh kombinasi Input pengontrol tambahan S5 dan S6 seperti tabel dibawah ini, Input Pengontrol S6 0 0 1 1 S5 0 1 0 1 Output Yn X0n X1n X2n X3n Operasi Arithmatik Operasi AND Operasi OR Operasi EX-OR Fungsi
Teknik Mikroprosessor
126
Arithmatic Logic Unit
=1
Input A ( n - Bit ) X3n
1X2n Output X1n Yn ( n - Bit )
X0n Input B ( n - Bit ) U
S4 S3 S2 S1 S0
S6 S5
Blok Diagram Arithmatic Logic Unit ( ALU ) Untuk percobaan dapat digunakan komponen TTL ALU 74181 4 Bit, sedangkan untuk 8 Bit dapat digunakan dua buah ALU 74181 seperti gambar dibawah. A0 - A3UB A1 B1 A2 B2 A3 B3 G24 23 22 21 20 19 18 17 16
4 Bit Data input ( Operand A ) 4 Bit Data input ( Operand B ) Pemilih Fungsi Mode Control ( 1, Op. Logik )
P15 14
F313
B0 - B3 S0 - S3 M
ALU 74 181 74S 1811 2 3 4 5 6 7 8 9 10 11 12
Cn,Cn+4 Carry A=B F0 - F2 127 Komparator Output ( 1, A=B ) Output hasil operasi di ALUArithmatic Logic Unit
B0 A0 S3 S2 S1 S0 Cn M F0 F1 F2
Kaki - kaki IC ALU 74181Teknik Mikroprosessor
Perhatikan gambar Blok Diagram Arithmatic Logic Unit ( ALU ) di depan, jika pengontrol S5 = S6 = 0 maka rangkaian Penjumlah - Pengurang dihubungkan dengan Output demikian juga untuk operasi logik yang lain tergantung dari kombinasi input pengontrol S5 dan S6 . Input pengontrol S0 sampai dengan S4 tidak mempengaruhi proses operasi logik. Secara matematis bahwa jika ada 7 ( tujuh ) input pengontrol S0 sampai dengan S6 menghasilkan 27 = 128 kombinasi, tetapi pada rangkaian ini hanya diambil kombinasi-kombinasi fungsi yang mempunyai arti untuk pemrosesan data di dalam ALU. Seperti halnya pada tabel fungsi penjumlah pengurang terdapat hasil 0 sampai 3 kali atau juga hasil yang tidak mempunyai arti di dalam aplikasi praktik ( mis. : -A -B -2 ). Selanjutnya diantara fungsi-fungsi yang ada pada operasi arithmatik diambil 10 ditambah 3 fungsi untuk opersi logik, sehingga hanya berjumlah 13 fungsi. Ke-13 fungsi yang dihasilkan dari 7 buah input pengontrol ( S6 - S0 ) disimpan di dalam ROM sedangkan data outputnya digunakan untuk mengontrol ALU. Dengan 4 penghantar alamat ROM dapat menyimpan 24 = 16 kombinasi fungsi. Input Alamat ( Input ROM ) U3 U2 U1 U0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 128Arithmatic Logic Unit
S6 0 0 0 0 0 0 0 0 0 0 1 1 0
Sinyal Pengontrol ( Output ROM ) S5 S4 S3 S2 S1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 1 1 1 x x x 0 0 0 0 1 0 0 0 1 1 x x x 0 0 0 1 0 0 0 0 0 0 x x x 0 0 0 0 0 0 0 1 0 1 x x x 1
Fungsi S0 0 1 0 0 0 1 0 0 1 x x x 0 Yn A 1 A B 0 A+1 A-1 A+B A-B AB AVB AVB -1
untuk langkah berikutnya
Teknik Mikroprosessor
S6 S5 S4 S3 S2 S1 S0
U3 U2 U1 U0
Konversi Sinyal Pengontrol di ROM
Contoh Pembahasan, Fungsi Yn = A + 1 Informasi pada input A akan di increment,
=1
Input A ( n - Bit ) X3n1
X2n Output X1n ( n - Bit ) Input B ( n - Bit ) U X0n Yn = A + 1
H
L
L L H
L
L
S4 S3 S2 S1 S0
S6 S5
ROM
U3 U2 L H
U1 U0 L H
Teknik Mikroprosessor
129
Arithmatic Logic Unit