7ALU, Half-full Adder, Ripple Carry Adder
-
Upload
wahyu-septriandi-sakty -
Category
Documents
-
view
40 -
download
6
description
Transcript of 7ALU, Half-full Adder, Ripple Carry Adder
-
Teknik Mikroprosessor Arithmatic Logic Unit 115
7 ARITHMATIC LOGIC UNIT ( alu ) half - full adder , ripple carry adder Tujuan : 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 + B Hasil Carry
0 + 0
0 + 1
1 + 0
1 + 0
0
1
1
0
0
0
0
1
-
Suatu rangkaian digital yang mampu melaksanakan operasi penjumlahan seperti pada
tabel di balik disebut Half Adder ( HA ).
HA
Carry U
Hasil A
B
B A U
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 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 = ( A B ) v ( A B ) = A v B ( Ex - OR ) Carry U = A B ( AND ) Dari kedua persamaan di atas dapat dikembangkan rangkaian Half Adder seperti di
bawah ini.
AB
A
B
B
A
( A B )
U = A B
V ( A B )( A B )
Rangkaian Half Adder
Teknik Mikroprosessor Arithmatic Logic Unit 116
-
Contoh
Dilakukan penjumlahan antara dua bilangan A + B
H H
Teknik Mikroprosessor Arithmatic Logic Unit 117
AB
( A B )
H
H
H
L
H
H
L L
L
L
U = A B = H
V( A B ) ( A B ) = L
Perhitungan : 1 A ( Variabel Input ) + 1 B ( Variabel Input ) 1 U ( Carry ) 0 ( Hasil ) 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.
FA
Carry Out
Hasil A
B
Carry In
C B A U
0 0 0 0 00 0 1 1 00 1 0 1 00 1 1 0 1
1 0 0 1 01 0 1 0 11 1 0 0 11 1 1 1 1
Untuk hasil penjumlahan berlaku persamaan ,
-
= ( A B C ) v ( A B C ) v ( A B C ) v ( A B C ) Sesuai Hukum Distributive pada Aljabar Boole, persamaan fungsi di atas menjadi,
= [ ( A B ) v ( A B ) ] C v [ ( A B ) v ( A B ) ] C = [ ( A B ) v ( A B ) ] C v ( 1 C ) = [ ( A B ) v ( A B ) ] ( C v C )
= ( A V B ) V C = A V B V C Setelah melalui penyederhanaan, rangkaian dapat dinyatakan seperti pada gambar di bawah.
AB
C
A V B
A V B V C
Disamping persamaan Hasil juga terdapat persamaan untuk Carry seperti di bawah ini,
U = ( A B C ) v ( A B C ) v ( A B C ) v ( A B C ) Persamaan ini dapat disederhanakan menjadi,
U = ( A B ) v ( B C ) v ( A C ) Dari kedua persamaan di atas dapat dikembangkan menjadi rangkaian digital Full
Adder .
A
B
A
C
A
B
B
C
A V B
A V B V C
A C
A B
B C
V( A B ) ( B C ) V ( A C ) U =
C
Rangkaian Full Adder
Contoh
Teknik Mikroprosesso Logic Unit 118Dilakukan penjumlahan antara dua bilangan A + B dengan memper -
r Arithmatic
-
hatikan Input Carry C H H
H
A
B
A V B
A V B V C = L
A C
A B
B C
V( A B ) ( B C ) V ( A C ) U =
C
H
L
H
L
H
H
HH
H
L
L
H
H
LH H
U = H
L
Perhitungan : 1 A ( Variabel Input ) + 0 B ( Variabel Input ) + 1 C ( Input Carry ) 1 U ( Output Carry ) 0 ( Hasil ) Penjumlah dua buah bilangan biner yang terdiri dari N bit, sehingga memerlukan N bit
Full Adder seperti pada contoh di bawah.
23 22 21 20 Tempat Bilangan
A2 A1 A0 Variabel A ( 3 Bit ) 1 0 1
B2 B1 B0 Variabel B ( 3 Bit )
1 1 1
C3 C2 C1 C0 Carry U ( C )
1 1 1 0
1 1 0 0 Hasil
Teknik Mikroprosessor Arithmatic Logic Unit 119
Pada tempat 20 tidak terjadi Carry ( 0 ), sehingga pada tempat ini ( bit ini )
memerlukam rangkaian Half Adder. Sedangkan pada tempat 21 dan 22 masing-
masing diperlukan Full Adder. Jika pada tempat 20 digunakan FA, maka Carry
inputnya harus di berikan logik " L " .
-
FA1
H
A0 B0
H
20
H
0L
FA2
H
A1 B1
H
21
H
1L
FA3
H
A2 B2
H
22
H
2HH
C3 C2 C1 C0
23
U0U1U2
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 ).
A2
B2
A3
B3
3
U4
U4
FA
A4
B4
A5
B5
5
U6
U6
FA
A6
B6
A7
B7
7
U8
FA
246
U0
A0
B0
A1
B1
01
U2
U2
FAFAFA FA FA
UB
2 - Bit FA 7482
1
A1
B1 2
A2
B2
Un Un+2
Full Adder 8 Bit
7. 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 Arithmatic Logic Unit 120
-
FAU0
C0
FAUn-1
Cn-1
FAU1
C1
0
1
n-1
FAUn
Cnn
INC
Output Carry Un
An
An-1
A1
A0
Bn
Bn-1
B1
B0 Logik Diagram Ripple Carry Adder
n - Bit FA
Carry Out Un
0
1
n-1
n
INC
AnAn-1
A1A0
BnBn-1
B1B0
Blok Diagram Ripple Carry Adder
7. 3. Rangkaian Penjumlah - Pengurang
Dengan mengembangkan rangkaian Ripple Carry Adder yaitu dengan jalan
menambahkan beberapa gerbang AND dan EX-OR didepannya sehingga
memungkinkan rangkaian tersebut digunakan untuk operasi penjumlahan dan
pengurangan, maka rangkaian tersebut disebut Rangkaian Penjumlah - Pengurang.
Teknik Mikroprosessor Arithmatic Logic Unit 121
-
Un
INC
B0
=1
=1
=1
=1
=1
=1
=1
=1
B1
B2
B3
A0
A1
A2
S4 S0S3 S2 S1
A3
Input Pengontrol
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 23 22 21 20
Des. S4 S3 S2 S1 S0 Fungsi Output 0 0 0 0 0 0 0 1 0 0 0 0 1 1 2 0 0 0 1 0 -1 3 0 0 0 1 1 0
Teknik Mikroprosessor Arithmatic Logic Unit 122
-
4 0 0 1 0 0 -1 5 0 0 1 0 1 0 6 0 0 1 1 0 -2 7 0 0 1 1 1 -1 8 0 1 0 0 0 B 9 0 1 0 0 1 B + 1
10 0 1 0 1 0 - B - 1 = B 11 0 1 0 1 1 - B 12 0 1 1 0 0 B -1 13 0 1 1 0 1 B 14 0 1 1 1 0 - B - 2 15 0 1 1 1 1 - B - 1 = B 16 1 0 0 0 0 A 17 1 0 0 0 1 A + 1 18 1 0 0 1 0 A - 1 19 1 0 0 1 1 A 20 1 0 1 0 0 - A - 1 = A 21 1 0 1 0 1 - A 22 1 0 1 1 0 - A - 2 23 1 0 1 1 1 - A - 1 = A 24 1 1 0 0 0 A + B 25 1 1 0 0 1 A + B + 1 26 1 1 0 1 0 A - B - 1 27 1 1 0 1 1 A - B 28 1 1 1 0 0 B - A - 1 29 1 1 1 0 1 B - A 30 1 1 1 1 0 - A - B - 2 31 1 1 1 1 1 - A - B - 1
Teknik Mikroprosessor Arithmatic Logic Unit 123
Tabel Fungsi Penjumlah - Pengurang
Contoh
Fungsi Output A + B Input A = 0 0 0 0 Input B = + 1 1 1 1
Input INC = + 0
Output = 1 1 1 1
-
Un
INC
B0
=1
=1
=1
=1
=1
=1
=1
=1
B1
B2
B3
A0
A1
A2
S4 S0S3 S2 S1
A3
H
H
H
H
H
H
H
H
L
L
L
L
L
L
L
L
H
H
H
H
L
L
L
L
L
L
L
L
H
H
H
H
H H L L L
L
H
H
H
H
L
L
L
L
H
H
H
H
Sesuai dengan tabel fungsi, input pengontrol untuk fungsi output A + B adalah
kombinasi S4 S3 S2 S1 S0 Dengan keadaan sinyal pada S4 S3
H H L L L H H
informasi yang ada pada input A dan input B akan dilalukan menuju input gerbang
EX-OR ( A 1 = A ) . Dengan keadaan sinyal pada S2 S1 informasi yang ada L L
Teknik Mikroprosessor Arithmatic Logic Unit 124
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 maka hasil
L
penjumlahan bilangan tidak ditambah dengan 1 ( satu ), sehingga pada output Ripple
Carry Adder adalah hasil A + B.
-
Contoh
Fungsi Output A - B Input A = 1 1 1 1 = 15 1 1 1 1 Input B = 0 0 1 1 = 3 + 1 1 0 0
Input INC = 1 = 1 + 1
Output = 1 1 1 0 0 = 12
Un
INC
B0
=1
=1
=1
=1
=1
=1
=1
=1
B1
B2
B3
A0
A1
A2
S4 S0S3 S2 S1
A3
H
H
H
H
H
H
H
H
L
L
L
L
H
H
H
H
H H L H H
H
H
H
L
L
H
H
H
H
H
H
H
H
L
L
H
H
L
L
H
H
H
H
L
L
H
H
H
H
Sesuai dengan tabel fungsi, input pengontrol untuk fungsi output A - B adalah
kombinasi S4 S3 S2 S1 S0 Dengan keadaan sinyal pada S4 S3
H H L H H H H
informasi yang ada pada input A dan input B akan dilalukan menuju input gerbang
EX-OR ( A 1 = A ) . Dengan keadaan sinyal pada S2 informasi yang ada L
Teknik Mikroprosessor Arithmatic Logic Unit 125
-
pada gerbang EX-OR yang berasal dari input A akan dilalukan ke input Ripple Carry
Adder, tanpa mengalami perubahan ( A V 0 = A ). Dengan keadaan sinyal
pada S1 informasi yang ada pada input B akan dikomplement menjadi B dan
L berada pada input Ripple Carry Adder . Dengan keadaan sinyal pada
S0 maka diperoleh harga komplemen dua dari input B ( B + 1 = - B ), sehingga
L 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 ( Operasi AND ) A V B ( Operasi OR )
A V B ( Operasi EX-OR )
keluaran dari ALU diatur oleh kombinasi Input pengontrol tambahan S5 dan S6 seperti
tabel dibawah ini,
Input Pengontrol Output Fungsi
S6 S5 Yn
0 0 X0n Operasi Arithmatik
0 1 X1n Operasi AND
1 0 X2n Operasi OR
1 1 X3n Operasi EX-OR
Teknik Mikroprosessor Arithmatic Logic Unit 126
-
=1
1
X0n
X1n
X2n
X3n
YnOutput
( n - Bit )
( n - Bit )
( n - Bit )
Input A
Input B
S4 S3 S2 S1 S0 S6 S5
U
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.
UB
1 2 3 4 5 6 7 9 121110 8
14 131516171920 18212324 22
A L U74 18174S 181
A1 B1 A2 B2 A3 B3 G P F3
B0 A0 S3 S2 S1 S0 Cn M F0 F1 F2
Kaki - kaki IC ALU 74181
A0 - A3 4 Bit Data input ( Operand A )
B0 - B3 4 Bit Data input ( Operand B )
S0 - S3 Pemilih Fungsi
M Mode Control ( 1, Op. Logik )
Cn,Cn+4 Carry
A = B Komparator Output ( 1, A=B )
F0 - F2 Output hasil operasi di ALU
Teknik Mikroprosessor Arithmatic Logic Unit 127
-
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 )
Sinyal Pengontrol ( Output ROM ) Fungsi
U3 U2 U1 U0 S6 S5 S4 S3 S2 S1 S0 Yn 0 0 0 0 0 0 1 0 0 0 0 A
0 0 0 1 0 0 0 0 0 0 1 1
0 0 1 0 0 0 1 0 1 0 0 A
0 0 1 1 0 0 0 1 0 0 0 B
0 1 0 0 0 0 0 0 0 0 0 0
0 1 0 1 0 0 1 0 0 0 1 A + 1
0 1 1 0 0 0 1 0 0 1 0 A - 1
0 1 1 1 0 0 1 1 0 0 0 A + B
1 0 0 0 0 0 1 1 0 1 1 A - B
1 0 0 1 0 1 x x x x x A B 1 0 1 0 1 0 x x x x x A V B
1 0 1 1 1 1 x x x x x A V B
1 1 0 0 0 0 0 0 0 1 0 - 1
1 1 0 1
1 1 1 0 untuk langkah berikutnya
1 1 1 1
Teknik Mikroprosessor Arithmatic Logic Unit 128
-
S6 S5 S4 S3 S2 S1 S0
U3U2U1U0
Konversi Sinyal Pengontrol di ROM
Contoh Pembahasan,
Fungsi Yn = A + 1 Informasi pada input A akan di increment,
=1
( n - Bit )
Input A
( n - Bit )
Input B
U
X0n
X1n
X2n
X3n
R O MS4 S3 S2 S1 S0 S6 S5
U3 U2 U1 U0
L H L H
H L L L H L L
Yn = A + 1 Output
( n - Bit )
1
Teknik Mikroprosessor Arithmatic Logic Unit 129