Anda di halaman 1dari 15

7

Tujuan

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

+

B

Hasil

Carry

0

+

0

0

0

0

+

1

1

0

1

+

0

1

0

1

+

0

0

1

Suatu rangkaian digital yang mampu melaksanakan operasi penjumlahan seperti pada tabel di balik disebut Half Adder ( HA ).

A

B

 

Carry U

 

B

A

  Carry U   B A U

U

  0 0 0 0
 

0

0

0

0

    0 1 1 0
   

0

1

1

0

 

HA

HA Hasil      

Hasil

HA Hasil      
     
  1 0 1 0
 

1

0

1

0

 

1

1

0

1

Gambar Blok Half Adder Tabel Fungsi Half Adder Dari tabel di atas, perhatikanlah sinyal "
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
bawah ini.
Adder
seperti di
U =
A
B
A
B
A
( A
B )
B
( A
B )
( A
B )
A
V
B

Rangkaian Half Adder

Contoh Dilakukan penjumlahan antara dua bilangan

A + B H H U = A B = H H H ( A
A
+
B
H
H
U =
A
B = H
H
H
( A
B )
L
L
L
( A
B )
L
L
H
Perhitungan
:
1
A
( Variabel Input )
+
1
B
( Variabel Input )
1
U
(
Carry )
) + 1 ⇒ B ( Variabel Input ) 1 ⇒ U ( Carry ) H
) + 1 ⇒ B ( Variabel Input ) 1 ⇒ U ( Carry ) H

H
A

B H

0

( Hasil

)

V

) 1 ⇒ U ( Carry ) H A B H 0 ⇒ ∑ ( Hasil

( A

B ) = L

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.

A

B

 

Carry Out

 

C

B

A

  Carry Out   C B A U

U

  0 0 0 0 0
 

0

0

0

0

0

 

0

0

1

1

0

    0 1 0 1 0
   

0

1

0

1

0

 

FA

  FA Hasil 0 1 1 0 1

Hasil

  FA Hasil 0 1 1 0 1

0

1

1

0

1

 
 
     

1

0

0

1

0

  1 0 1 0 1
 

1

0

1

0

1

 

1

1

0

0

1

1

1

1

1

1

 

Carry In

 

Untuk hasil penjumlahan berlaku persamaan ,

=

( A Λ B Λ C ) v ( A Λ B Λ C )
( A Λ B Λ C ) v
( A Λ B Λ C )
v
v
( A Λ B ) ] Λ C
v
[ ( A Λ B )
v
v
( A Λ B ) ] Λ C
v
( 1 Λ C )
v
( A Λ B ) ]
Λ
( C
v
C )
(
A
V
B )
C
=
A
V
B
V
C
A
V
B
( A Λ B Λ C ) v
( A Λ B Λ C )
v
( A Λ B ) v
( B Λ C )
v
( A Λ C )
( A Λ B Λ C ) v ( A Λ B ) v ( B

A

( A Λ B Λ C ) v

V

( A Λ B Λ C ) v

( A Λ B Λ C )

Sesuai Hukum Distributive pada Aljabar Boole, persamaan fungsi di atas menjadi,

( A Λ B ) ] Λ C

= [ ( A Λ B )

= [ ( A Λ B )

= [ ( A Λ B )

= V

Setelah melalui penyederhanaan, rangkaian di bawah.

A

B

C

dapat dinyatakan seperti pada gambar

B

V

C

Disamping persamaan Hasil juga terdapat persamaan untuk Carry seperti di bawah ini,

U =

( A Λ B Λ C )

Persamaan ini dapat disederhanakan menjadi,

U =

Dari kedua persamaan di atas dapat dikembangkan menjadi rangkaian digital Full Adder .

A

B

C

C

A C A A A B B B B C C A V B
A
C
A
A
A
B
B
B
B
C
C
A
V
B

U = ( A

. A B C C A C A A A B B B B C C

B ) V ( B

A V B V
A
V
B
V

C

Rangkaian Full Adder

Contoh

= ( A B ) V ( B A V B V C Rangkaian Full Adder

C ) V

( A

V ( B A V B V C Rangkaian Full Adder Contoh C ) V (

C )

Dilakukan penjumlahan antara dua bilangan

A

+

B

dengan memper -

Teknik Mikroprosesso r

 

118

     

Arithmatic

Logic Unit

hatikan Input Carry

C

H

H

H H A C H H H A B U = ( A H H
H
H
A C
H
H
H
A B
U =
( A
H
H
L
L
U = H
B C
L
H
L
A
V
B
H
H
A
V
B
V
L
H
C
Perhitungan
:
1
A
+
0
B
+
1
C
1
U

C

A H
A H

B L
B L

B ) V ( B

0 ⇒ B + 1 ⇒ C 1 ⇒ U C A H B L B

=

L

( Variabel Input )

( Variabel Input )

( Input Carry )

( Output Carry )

0

( Hasil

)

C ) V

( A

Input Carry ) ( Output Carry ) 0 ⇒ ∑ ( Hasil ) C ) V

C )

Penjumlah dua buah bilangan biner yang terdiri dari N bit, sehingga memerlukan N bit Full Adder seperti pada contoh di bawah.

1 0 2 3 2 2 2 2 A2 A1 A0 1 0 1 B2
1
0
2 3
2 2
2
2
A2
A1
A0
1
0
1
B2
B1
B0
1
1
1
C3
C2
C1
C0
1
1
1
0
1
1
0
0

Tempat Bilangan

Variabel

A

(

3

Bit )

Variabel B

(

3

Bit

)

Carry U

( C )

Hasil

Pada tempat 2 0 tidak terjadi Carry ( 0 ), sehingga pada tempat ini ( bit ini ) memerlukam rangkaian Half Adder. Sedangkan pada tempat 2 1 dan 2 2 masing- masing diperlukan Full Adder. Jika pada tempat 2 0 digunakan FA, maka Carry inputnya harus di berikan logik " L " .

Teknik Mikroprosessor

119

Arithmatic Logic Unit

2 3

C3 U2 H
C3
U2
H

H

A2

2 2

B2

H

H

FA3

2 3 C3 U2 H H A2 2 2 B2 H H FA3 2 H A1
2 3 C3 U2 H H A2 2 2 B2 H H FA3 2 H A1

2

H

A1

2 1

B1

H

H

C2 U1 FA2  

C2

U1

FA2

 
 

H

 
  1
  1

1

L

A0

2 0

B0

H

H

C1

U0

   

C0

FA1  

FA1

 
FA1  
FA1  

H

 

L

 
0
0

0

0

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 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1
A7
A6
A5
A4
A3
A2
A1
A0
B7
B6
B5
B4
B3
B2
B1
B0
U6
U4
U2
U0
FA
FA
FA
FA
FA
FA
FA
FA
U8
U6
U4
U2
7
6
5
4
3
2
1
0

7. 2.

FA FA FA FA U8 U6 U4 U2 7 6 5 4 3 2 1 0

1

A1

B1

UB

Un

 
   
 
 
  A2

A2

B2
B2

B2

   
     
 
2 - Bit 2

2 - Bit

2 - Bit 2

2

   

FA

 
      A2 B2       2 - Bit 2     FA  
      A2 B2       2 - Bit 2     FA  
      A2 B2       2 - Bit 2     FA  
 

7482

 
Un+2
Un+2

Un+2

      A2 B2       2 - Bit 2     FA  
      A2 B2       2 - Bit 2     FA  
      A2 B2       2 - Bit 2     FA  
      A2 B2       2 - Bit 2     FA  

Ripple Carry Adder

Full Adder 8 Bit

Jika pada rangkaian penjumlah n Bit, input Carry C 0 diberikan sinyal " 1 " maka hasil penjumlahan bilangan A dan B akan kelebihan 1 ( satu ), sehingga pada masukan C 0 ini disebut Incremant ( INC ). Suatu rangkaian penjumlah yang mempunyai incremant input disebut Ripple Carry Adder.

Output Carry Un An Un An-1 FA n A1 Cn A0 Un-1 FA n-1 Cn-1
Output Carry Un
An
Un
An-1
FA
n
A1
Cn
A0
Un-1
FA
n-1
Cn-1
U1
FA
1
C1
U0
FA
0
C0
Bn
Bn-1
B1
INC
B0
Logik Diagram Ripple Carry Adder

An

An-1

A1

A0

Bn

Bn-1

B1

B0

Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
Logik Diagram Ripple Carry Adder An An-1 A1 A0 Bn Bn-1 B1 B0   n -
 
 

n - Bit FA

INC

INC

Carry Out Un

nA1 A0 Bn Bn-1 B1 B0   n - Bit FA INC Carry Out Un n-1

n-1A0 Bn Bn-1 B1 B0   n - Bit FA INC Carry Out Un n 1

1Bn Bn-1 B1 B0   n - Bit FA INC Carry Out Un n n-1 0

0Bn-1 B1 B0   n - Bit FA INC Carry Out Un n n-1 1 Blok

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.

Un A3 =1 A2 =1 A1 =1 A0 =1 B3 =1 B2 =1 B1 =1
Un
A3
=1
A2
=1
A1
=1
A0
=1
B3
=1
B2
=1
B1
=1
B0
=1
INC

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 S 0 , S 1 , S 2 , S 3 dan S 4 .

Tergantung dari kombinasi input pengontrol ini, maka ada 32 macam kombinasi seperti

diperlihatkan pada tabel fungsi dari penjumlah - pengurang dibalik ini.

 

2 4

2 3

2 2

2 1

2 0

 

Des.

S 4

S 3

S 2

S 1

S 0

Fungsi Output

 

0

0 0

0

0

0

0

 

0

1 0

0

0

1

1

 

0

2 0

0

1

0

-1

 

0

3 0

0

1

1

0

4 0 0 1 0 0 -1 5 0 0 1 0 1 0 6
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 1
0
0
0
0
B
9 1
0
0
0
1
B
+ 1
10 1
0
0
1
0
-
B - 1 = B
11 1
0
0
1
1
12 1
0
1
B
B -1
-
0
0
13 1
0
1
0
1
B
14 1
0
1
1
0
-
B - 2
15 1
0
1
1
1
-
B - 1 = B
16 0
1
0
0
0
A
17 0
1
0
0
1
A + 1
18 0
1
0
1
0
A - 1
19 0
1
0
1
1
A
20 0
1
1
0
0
-
A - 1 = A
21 0
1
1
0
1
-
A
22 0
1
1
1
0
-
A - 2
23 0
1
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
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 L A3 L L =1 H L A2 L L =1 H L A1
Un
L
A3
L
L
=1
H
L
A2
L
L
=1
H
L
A1
L
L
=1
H
L
A0
L
L
=1
H
L
B3
H
H
=1
H
L
B2
H
H
=1
H
L
B1
H
H
=1
H
L
B0
H
H
=1
H
L
INC

S4 S3

H

H

S2 S1

L

L

S0

L

fungsi output

Dengan keadaan sinyal pada

L

L

L

L

H

H

H

H

A

+ B adalah

S 4 S 3 H H
S 4
S 3
H
H

H

H

H

H

Sesuai dengan tabel fungsi, input pengontrol untuk

kombinasi

S 4 S 3 S 2 S 1 S 0 H H L L L
S 4
S 3
S 2
S 1
S 0
H
H
L
L
L

informasi yang ada pada input

A dan input

B akan dilalukan menuju input

S2 S1 L L
S2
S1
L
L

Carry

S 0 L
S
0
L

gerbang

informasi yang ada

EX-OR ( A Λ 1 = A ) . Dengan keadaan sinyal pada

Adder, tanpa mengalami

perubahan ( A V 0 = A ). Didalam Ripple Carry Adder terjadi proses penjumlahan

informasi yang ada pada inputnya. Dengan keadaan sinyal pada

pada gerbang EX-OR akan dilalukan ke input Ripple

maka

hasil

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 =
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
H
A3
H
H
H
=1
H
L
A2
H
H
H
=1
H
L
A1
H
H
H
=1
H
L
A0
H
H
H
=1
H
H
L
H
L
B3
L
L
H
=1
L
H
H
B2
L
L
H
=1
H
H
B1
H
H
L
=1
H
H
B0
H
H
L
=1
H
H
INC
S4 S3
S2 S1
S0
H
H
L
H
H
Sesuai dengan tabel fungsi, input pengontrol untuk
fungsi output
A
-
B
adalah

kombinasi

S 4 S 3 S 2 S 1 S 0 H H L H H
S 4
S 3
S 2
S 1
S 0
H
H
L
H
H

Dengan keadaan sinyal pada

S 4 S 3 H H
S 4
S 3
H
H

informasi yang ada pada input

EX-OR ( A Λ 1 = A ) . Dengan keadaan sinyal pada

A dan input

B akan dilalukan menuju input

S 2 L
S
2
L

informasi

gerbang

ada

yang

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

perubahan ( A V 0 = A ). Dengan keadaan sinyal pada S1 informasi yang ada

S1

informasi yang

ada

L

berada pada input Ripple Carry Adder .

(

B

pada input B akan dikomplement menjadi B dan

Dengan keadaan sinyal pada

= - B ), sehingga

1

menjadi

A + (-B )

S 0 L = 7. 4. A Λ A V
S
0
L
=
7. 4.
A Λ
A V

A

V

+

proses penjumlahan yang terjadi pada Ripple Carry Adder

maka diperoleh harga komplemen dua dari input B

A - B 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,

B

B

B

( Operasi AND )

( Operasi OR )

( Operasi EX-OR )

keluaran dari ALU diatur oleh kombinasi Input pengontrol tambahan S 5 dan S 6 seperti tabel dibawah ini,

Input Pengontrol Output Fungsi S 6 S 5 Yn 0 0 X0n 0 1 X1n
Input Pengontrol
Output
Fungsi
S 6
S 5
Yn
0
0
X0n
0
1
X1n
1
0
X2n
1
1
X3n
Operasi Arithmatik
Operasi AND
Operasi OR
Operasi EX-OR
=1 Input A X3n ( n - Bit ) 1 X2n Output X1n ( n
=1
Input A
X3n
(
n - Bit )
1
X2n
Output
X1n
( n - Bit )
X0n
Input B
(
n - Bit )

Blok

S4 S3 S2 S1 S0

S6 S5

Diagram

Arithmatic Logic Unit

( ALU )

Yn

U

Untuk percobaan dapat digunakan komponen TTL ALU 74181 4 Bit, sedangkan untuk 8 Bit dapat digunakan dua buah ALU 74181 seperti gambar dibawah.

UB A1 B1 A2 B2 A3 B3 G P F3 24 23 22 21 20
UB
A1
B1 A2
B2 A3
B3
G
P
F3
24
23
22
21
20
19
18
17
16
15
14
13
A L U
74
181
74S 181
1
2
3
4
5
6
7
8
9
10
11
12

B0

A0 S3

S2

S1

S0 Cn

M

F0

F1

F2

4 5 6 7 8 9 10 11 12 B0 A0 S3 S2 S1 S0 Cn

Kaki - kaki IC ALU 74181

A0 - A3 B0 - B3

S0 - S3

4 Bit Data input ( Operand A )

4 Bit Data input ( Operand B ) Pemilih Fungsi

M

Mode Control ( 1, Op. Logik )

Cn,Cn+4

Carry

A = B

Komparator Output ( 1, A=B ) Output hasil operasi di ALU

F0

- F2

Perhatikan gambar Blok Diagram Arithmatic Logic Unit ( ALU ) di depan, jika

pengontrol S 5 = S 6 = 0 maka rangkaian Penjumlah - Pengurang dihubungkan dengan

Output demikian juga untuk operasi logik yang lain tergantung dari kombinasi input

pengontrol S 5 dan S 6 . Input pengontrol S 0 sampai dengan S 4 tidak mempengaruhi

proses operasi logik. Secara matematis bahwa jika ada 7 ( tujuh ) input pengontrol S 0

sampai dengan S 6 menghasilkan 2 7 = 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 ( S 6 - S 0 ) disimpan di dalam ROM

sedangkan data outputnya digunakan untuk mengontrol ALU. Dengan 4 penghantar

alamat ROM dapat menyimpan 2 4 = 16 kombinasi fungsi.

Input Alamat ( Input ROM ) Sinyal Pengontrol ( Output ROM ) Fungsi U3 U2
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

S6 S5 S4 S3 S2 S1 S0

 
     
     
     
 
     
 
     
     
     
 
 
 
 
 
 
 

U3

U2

U3 U2  
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 X3n ( n - Bit ) 1 X2n Output X1n ( n
=1
Input A
X3n
( n - Bit )
1
X2n
Output
X1n
( n - Bit )
X0n
Input B
( n - Bit )
H
L
L
L
H
L
L
S4 S3 S2 S1 S0
S6 S5
R O M

Yn = A + 1

U

U3

U2

U1

U0

L

H

L

H