You are on page 1of 10

ISSN:2085-6989

ANALISIS KEHANDALAN ALGORITMA PERKALIAN PARALLEL


BRAUN ARRAY MULTIPLIER
UNTUK OPERASI PERKALIAN WAKTU NYATA
(Analysis Mainstay Algorithm Multiplication Of Parallel Braun Array of
Multiplier For The Operation Of Multiplication of Real Time)
Oleh :
Andrizal
Jurusan Teknik Elektro Politeknik Negeri Padang Kampus Limau Manis Padang 25163
Telp 0751-72590 Fax 0752-72576 E-mail : andrizal@polinpdg.ac.id

ABSTRACT
Real-time system (RTS) accurately entails the speedy accuracy process. To comply with the
performance of the real time of the spedd process, a processor or refiner used to require a
strategy of algorithm in executing the process. A problem will arise when the data processed are
not yet settled whereas the deadline provided to processing is restricted. Consequently, the data,
which are generated, cannot be made use of the system to process after wards and cause
automatically the system fail or the performance deceases.
This research investigated the ability of the parallel processing multiplication of the Braun Array
Multiplier in conforming to the speed process toward the multiplication of theunlabelled numbers
in a restricted deadline. To recognize the ability of the algorithm, it is carried out a ratio with
series of mathematical steps or multiplication algorithm by means of applying the simulation of
VHDL programming language. This simulation indicates the result of timing diagram which can
be analyzed through algorithm process speed respectively.
The result, found through the algorithm of Braun Array Multiplier, acquired the process speed
which was much better then compared with serial algorithm. This research is expected to prove
and authenticate that the Braun Array Multiplier can be made use of Real Time System
Application.
Keywords: Multiplier, Real-Time System, Deadline.

PENDAHULUAN

memproses data. Banyak usaha yang


dilakukan dalam memenuhi kriteria

Sistem waktu-nyata merupakan sistem


komputer yang berkaitan erat dengan
peryaratan waktu-tenggat (deadline).
Sistem ini memerlukan proses yang
cepat, respons tepat waktu dan akurasi
hasil yang sebaik-baiknya [Alan 2002,
Bruce 1999]. Sistem dikatakan berhasil
jika respon yang dihasilkan masih dalam
batas nilai toleransi yang diterima dan
dalam waktu tidak melampaui deadline
walaupun waktu yang tersedia untuk
sistem tidak cukup lagi untuk

proses sistem waktu-nyata antara lain


menggunakan
teknik:
scheduling,
parallelism, data reduction, data
compression, dan preprocessing.
Usaha-usaha diatas mengacu kepada
tersedianya hasil dari proses saat
dibutuhkan sesuai dengan deadline dan
dengan pencapaian nilai akurasi yang
masih berada dalam nilai yang bisa
ditoleransi.

Elektron: Vol 2 No. 1, Edisi: Juni 2010 |

77

ISSN:2085-6989
Terdapat beberapa prilaku parameter
Task dalam memproses seperti gambar 1
[Andrizal, tesis 2005] :
ta

td

Tp

ta + Tp td

(a) Proses ideal dan memenuhi


kriteria waktu nyata
ta

ta

dly
y

td

Tp

Tp

ta + Tp >td

(b) Proses yang tidak ideal akibat


keterlambatan ta kriteria sistem
waktu nyata tidak terpenuhi

ta

td

Tp
Tp

ta + Tp >td

td
t

TPercepatan

(c) Proses yang tidak ideal akibat waktu


td dipercepat kriteria sistem waktu
nyata tidak terpenuhi

ta
ta
dly

td

Tp
Tp

td
t

TPercepatan

ta + Tp >td
(d) Proses yang tidak ideal akibat waktu
kedatangan ta terlambat dan
td
dipercepat kriteria sistem waktu
nyata tidak terpenuhi

Gambar 1. Prilaku parameter proses.


Metoda pemrosesan perkalian meliputi :
sistem bit-serial, sistem serial-parallel
dan sistem parallel [Smit 1999]. Sistem
perkalian bit-serial telah diterapkan
dalam beberapa algoritma yang ada
seperti
:Shift-and-add
multiplier
sedangkan untuk algoritma perkalian
78

parallel juga terdapat beberapa algoritma


salah satunya adalah
Braun Array
multiplier.
Unit perkalian shift-and-add, proses
perkalian dimulai dari Least Significant
Bit (LSB) dilanjutkan sampai Most
Significant Bit
(MSB) pada bit
multiplier. Secara umum laju perubahan
nilai akurasi terlihat pada contoh
perkalian seperti pada tabel 1, karena
proses perkalian dimulai dari LSB
sehingga laju akurasi mulai dengan nilai
akurasi yang rendah diawal dan
maksimum berada pada iterasi terakhir.
Untuk mendapatkan akurasi maksimum
dibutuhkan 4 iterasi untuk proses
perkalian 4 bit dan seterusnya akan
membutuhkan N kali iterasi untuk
perkalian N bit.
Dengan demikian apabila algoritma ini
digunakan untuk aplikasi perkalian
waktu nyata jika waktu proses yang
tersedia tidak cukup atau terpaksa
dihentikan karena waktu kedatangan (ta),
dan atau waktu-tenggat Td tidak sesuai
lagi dengan karakteristik ideal, akan
menyebabkan waktu sistem tidak cukup
memproses data sampai selesai sehingga
sistem bisa gagal. Hal ini disebabkan
nilai akurasi hasil proses yang didapat
belum terpenuhi pada iterasi yang
terbatas.
Jadi apabila algoritma ini digunakan
untuk aplikasi waktu nyata, tentu tidak
dapat memuhi kriteria kinerja yang
diiginkan apabila terjadi sistem terpaksa
memberikan respon pada saat nilai
akurasi yang belum cukup.
Cara yang paling tepat digunakan adalah
dengan cara mengolah data secara
parallel atau serentak, walaupun proses
terpaksa dihentikan atau waktu proses
sudah habis, maka iterasi yang ada sudah
mencukupi untuk mendapatkan hasil
maksimum.
Penelitian
ini
bertujuan
untuk
menganalisa kemampuan pencapaian
| Elektron: Vol 2 No. 1, Edisi: Juni 2010

ISSN:2085-6989
hasil operasi dalam 1 kali iterasi untuk
proses perkalian secara parallel.
Rancangan ini masih memiliki batasan
yaitu hanya digunakan maksimum untuk
perkalian 8 bit bilangan tidak bertanda.
Hasil yang diharapkan adalah dengan
adanya penggunaan metoda perkalian
parallel, didapatkan hasil akurasi yang
sesuai dengan kebutuhan perkalian
waktu nyata walaupun waktu iterasi
yang terbatas.

(LSB First). Arsitektur rangkaian terlihat


pada Gambar 2.
Keluaran bit dari multiplexer (MUX)
akan
di
AND
dengan
bit-bit
multiplicand,
hasilnya
disimpan
diregister dan digeser (shift) sebanyak
iterasi proses.

Unit perkalian shift-and-add, melakukan


proses perkalian dimulai dari bit LSB
dilanjutkan sampai MSB multiplier
Tabel 1. Proses perkalian 4 bit (10102 x 10102) algoritma Shift And Add
Iterasi
Bit Multiplier
Bit multiplicand
Hasil
0
0
1010
00002
1
1
1010
10100
2
0
1010
101000
3
1
1010
1100100

Akurasi (%)
0
20
40
100

Gambar 2. Arsitektur unit perkalian Serial shift-and-add.


Hasil operasi ini dijumlahkan dengan isi
akumulator dan di simpan kembali di
akumulator. Proses ini di ulangi untuk
setiap bit multiplier sampai bit MSB, dan
hasil akhir perkalian terdapat di
akumulator.
Algoritma dapat digambarkan dalam
bentuk pseudo-code berikut ini :
Elektron: Vol 2 No. 1, Edisi: Juni 2010 |

Register B Multiplier, Register A


multiplicand, jumlah bit data n bit,
Semua data terdapat diregister
for (i=0; i<=n; i++)
{

Bufer[0k]B[i] AND A[0k];


Y[0j] Bufer [0k] Sll [i];
79

ISSN:2085-6989
Acc[0...j] Acc[0...j] + Y[0...j];
}
Pada algoritma ini nilai hasil ditentukan
pada pengolahan data di register B yang
diatur melalui sebuah multiplexer
dimana pengaturan bit-bit multiplexer
dimulai dari LSB, maka komputasi akan
mulai dari bit-bit yang tidak berpengaruh
significant terhadap hasil.
METODOLOGI PENELITIAN
Waktu proses (Tp) dalam sistem
komputer
dapat
dibuat
fleksibel
(diperkecil) melalui penggunaan unit
aritmatika yang dapat dihentikan
prosesnya setiap saat dan hasilnya dapat
digunakan. Hasil yang didapat haruslah
memiliki nilai akurasi yang terbaik. Hal
ini dapat dilakukan dengan cara
pengolahan data secepat mungkin
dangan hasil proses maksimal.
Dengan demikian rancangan sistem
perkalian waktu nyata harus memiliki
sifat-sifat :
a. Hasil proses maksimal walaupun
waktu proses terbatas.
b. Untuk
mendapatkan
hasil
maksimal dilakukan secepat
mungkin maksimal 1 siklus
iterasi dengan cara parallel.
Konsep dengan cara melakukan proses
secara parallel dan hanya membutuhkan
maksimal 1 siklus iterasi untuk
meyelelesaikan proses walaupun jumlah
bit data yang diproses semakin banyak.
Hal ini sangat dibutuhkan ketika terjadi
perubahan
lingkungan
yang
menyebabkan proses terpaksa dihentikan
karena deadline sudah datang atau
waktu proses menjadi lebih singkat.
Sistem semacam ini tentu bermanfaat
digunakan dalam proses real- time yang
mengalami perubahan waktu proses.

80

HASIL PENELITIAN
Konsep
dasar
perkalian
parallel
algoritma Braun Array terlatak pada
iterasi yang dibutuhkan, Hasil proses
didapat hanaya dengan 1 kali siklus
iterasi. Hasil proses yang didapat sesuai
dengan kebutuhan system waktu nyata
yang dibatasi dengan deadline. Untuk
Uji coba dan simulasi rancangan sistem
digunakan perangkat lunak Altera
MaxPluss II Baseline 10.2, sehingga
dapat dianalisis kemampuan algoritma
ini. Arsitektur ini diperlihatkan pada
Gambar 3.
Kombinasi
full
adder
dirangkai
membentuk fungsi perkalian dengan
algoritma Braun array multiplier. Secara
sederhana Gambar 3 memperlihatkan
rangkaian Braun array multiplier. Dari
gambar 3 terlihat, input adalah a(0)
a(3) dan b(0)b(3), sedangkan output
adalah P(0)P(7).
Persamaan output P adalah ;
m1 n 1
m 1
n 1
P = AxB = ai 2 i x b j 2 j = (ai xb j )2 i 2 j
i =0
j =0
i = 0 j =0

Maka,
p0 = a0 .b0
P1 = a1 .b0 + a0 .b1 + c
P2 = a 2 .b0 + a1 .b1 + a0 .b2 + c
P3 = a3 .b0 + a 2 .b1 + a1 .b2 + a0 .b3 + c
P4 = a 4 .b0 + a3 .b1 + a 2 .b2 + a1 .b3 + a0 .b4 + c
P5 = a5 .b0 + a 4 .b1 + a3 .b2 + a 2 .b3 + a1 .b4 + a0 .b5 + c
P6 = a6 .b0 + a5 .b1 + a 4 .b2 + a3 .b3 + a 2 .b4 + a1 .b5 + a0 .b6 + c
P7 = a7 .b0 + a 6 .b1 + a5 .b2 + a 4 .b3 + a3 .b4 + a 2 .b6 + a1 .b5 + a0 .b7 + c

Untuk mendapatkan perkalian dengan


jumlah input 8 bit, rangkaian diatas
dikembangkan
menjadi
rangkaian
dengan jumlah input 8 bit dengan autput
16 atau lebih bit.
| Elektron: Vol 2 No. 1, Edisi: Juni 2010

ISSN:2085-6989

Gambar 3. Arsitektur perkalian 4 bit parallel Braun Array multiplier.


Secara
keseluruhan
rangkain
menggabungkan fungsi gerbang AND di
setiap input full adder, dan dengan
kombinasi carry save adder didapat
fungsi perkalian secara parallel.
Persamaan output dari rangkaian
perkalian 8 bit Braun Array multiplier
yang dirancang adalah sebagai berikut :

p 0 = a 0 .b0
P1 = a1 .b0 + a 0 .b1 + c
P2 = a 2 .b0 + a1 .b1 + a 0 .b2 + c
P3 = a3 .b0 + a 2 .b1 + a1 .b2 + a 0 .b3 + c
P4 = a 4 .b0 + a3 .b1 + a 2 .b2 + a1 .b3 + a0 .b4 + c
P5 = a5 .b0 + a 4 .b1 + a3 .b2 + a 2 .b3 + a1.b4 + a 0 .b5 + c
P6 = a 6 .b0 + a5 .b1 + a 4 .b2 + a3 .b3 + a 2 .b4 + a1.b5 + a0 .b6 + c
P7 = a7 .b0 + a6 .b1 + a5 .b2 + a 4 .b3 + a3 .b4 + a 2 .b6 + a1 .b5 + a 0 .b7 + c
P8 = a 7 .b1 + a6 .b2 + a5 .b3 + a 4 .b4 + a3 .b6 + a 2 .b5 + a1 .b7 + c
P9 = a7 .b2 + a 6 .b3 + a5 .b4 + a 4 .b5 + a3 .b6 + a 2 .b7 + c
P10 = a7 .b3 + a 6 .b4 + a5 .b5 + a 4 .b6 + a3 .b7 + c
P11 = a7 .b4 + a6 .b5 + a5 .b6 + a 4 .b7 + c
P12 = a7 .b5 + a6 .b6 + a5 .b7 + c
P13 = a7 .b6 + a6 .b7 + c
P14 = a7 .b7 + c
P15 = c

P0 P15 merupakan sum dari hasil sum


of product masing-masing bit dan hasil
dari perkalian. Hasil ini didapat hanya
dalam 1 siklus proses dan tidak
tergantung kepada jumlah bit multipiler
yang diproses. Dengan demikian hasil
proses maksimal didapat jauh lebih cepat
dibandingkan dengan
sistem perkalian serial. Hasil simulasi
proses perkalian parallel algoritma
Braun Array dapat dilihat pada gambar
4-8.

Elektron: Vol 2 No. 1, Edisi: Juni 2010 |

81

ISSN:2085-6989

Gambar .Diagram waktu terburuk proses perkalian serial 250 x 250, hasil selesai pada 8 siklus
iterasi dengan waktu proses 1,846 us.

Gambar 5.Diagram waktu terbaik proses perkalian serial 1 x 250, hasil selesai pada 1 siklus
iterasi dengan waktu proses 77,7 ns.

Gambar 6. Diagram waktu perkalian parallel Braun Array 5x4 diselesaikan 50 ns kurang 1
siklus iterasi (200 ns).
82

| Elektron: Vol 2 No. 1, Edisi: Juni 2010

ISSN:2085-6989

Gambar 7. Diagram waktu perkalian parallel Braun Array 9x20 diselesaikan 64 ns kurang 1
siklus iterasi (200 ns).

Gambar 8. Diagram waktu perkalian parallel Braun Array 12x20 diselesaikan 63 ns kurang 1
siklus iterasi (200 ns).

Gambar 9. Diagram waktu perkalian parallel Braun Array 15x12 diselesaikan 60,6 ns kurang
1 siklus iterasi (200 ns).
Elektron: Vol 2 No. 1, Edisi: Juni 2010 |

83

ISSN:2085-6989

Gambar 10. Diagram waktu perkalian parallel Braun Array 18x11 diselesaikan 74,4 ns kurang
1 siklus iterasi (200 ns).

Gambar 11. Diagram waktu perkalian parallel Braun Array 4x20 diselesaikan 59 ns kurang 1
siklus iterasi (200 ns).
PEMBAHASAN
Bilangan multiplier dan multiplicand
yang diuji adalah bilangan desimal 8 bit
tidak bertanda. Hasil simulasi berbentuk
grafik dan kinerja ditinjau dari
percepatan waktu proses. Dalam
pengujian ini dilakukan perbandingan
kedua algoritma metoda serial dan
algoritma metoda parallel. Setiap
algoritma akan diberi kasus perhitungan
terbaik dan terburuk, serta sejumlah
perkalian terhadap sejumlah data acak.

84

Metoda Parallel

Metoda Serial

Gambar 12. Perbandingan laju akurasi


hasil proses kedua metoda.
| Elektron: Vol 2 No. 1, Edisi: Juni 2010

ISSN:2085-6989
Pada Gambar 12 memperlihatkan laju
akurasi hasil proses untuk kedua
algoritma yang didapat dari beberapa
simulasi terhadap sejumlah perkalian bit
yang
dilakukan
terhadap
kedua
algoritma. Hasil yang didapat terlihat
hasil akurasi nilai proses yang dihasilkan
oleh masing-masing proses. Nilai akurasi
metoda serial 100% jika iterasi sudah
maksimal 8 siklus. Sementara algoritma
perkalian metoda parallel Braun Array
Multiplier menghasilkan akurasi proses
100% kurang dari 1 siklus iterasi.
Jadi nilai akurasi algoritma perkalian
parallel Braun Array lebih baik
dibandingkan
dengan
algoritma
perkalian serial shift-and-add. Dimana
data yang dihasilkan dapat memenuhi
kriteria untuk penggunaan perkalian
waktu nyata dalam menghadapi kasus
dimana waktu proses yang tersedia tidak
mencukupi untuk sejumlah siklus yang
dibutuhkan atau waktu proses yang
diperpendek.

SIMPULAN
Berdasarkan data dan analisis yang
diperoleh pada penelitian ini, dapat
diambil kesimpulan sebagai berikut :
1. Algoritma perkalian parallel
Braun Array mampu mendapatkan
nilai
akurasi
proses 100%
maksimal hanya 1 siklus iterasi,
walaupun jumlah bit multiplier
yang digunakan maksimal dan
tidak tergantung jumlah bit
multiplier.
2. Kompleksitas rangkaian algoritma
parallel Braun Array Multiplier
lebih kompleks dibandingkan
dengan algoritma serial Shift AndADD.
3. Hasil penelitian ini sangat
menguntungkan
dalam
meningkatkan
kinerja
sistem
waktu-nyata, yaitu tersedianya
Elektron: Vol 2 No. 1, Edisi: Juni 2010 |

hasil proses yang dapat diakses


setiap saat dengan akurasi yang
terbaik jika waktu proses terpaksa
diperpendek atau dihentikan.

DAFTAR PUSTAKA
Andrizal. 2005, Perancangan unit
aritmatika perkalian waktu nyata
algoritma Shift-And-ADD metoda
MSB-P1, tesis, ITB.
Andrizal.2009, Kehandalan metoda
MSB-P1 algiritma Shift-And-ADD
Pada Operasi Perkalian waktu
nyata, Poli Rekayasa,Volume 4.
Alan C. Shaw.2002,Real-Time Systems
and Software, John Wiley & Sons.
Bruce powel Douglass 1999, Doing
Hard Time: Developing Real-Time
Systems with UML, Objects,
Frameworks, and Patterns, Addison
Wesley
Hassan Gomna, 2000, Designing
Concurren, Distributed, and Real
time Applications With UML,
Addison_Wesley Pub Co,
Kuspriyanto,
Kerlooza,
Y.Y.2004.
Toward New Real-Time Processor :
The Multioperand MSB-First RealTime
Adder,
Proceedings
of
DSD2004 Euromicro Symposium
on Digital System Design, RennesFrance, IEEE Computer Society.
Kuspriyanto,Kerlooza,Y.Y.2004
Keandalan Unit Multioperand MSBFirst Realtime Adder Pada Operasi
Penjumlahan Data Acak, Proceeding
SITIA 2004, Seminar on Inteligent
Technology and Its Applications,
Surabaya, May 18th.
Levi, S.T., Agrawala, A.K.1990. RealTime System Design, McGraw-Hill.
Russ Miller and Laurence Boxer, 2000
Algorithms Seduential and parallel:
A
Unified
Approach,
I/e,
Prentice_Hall,
85

ISSN:2085-6989
Skahill
K.
1996.
VHDL
for
Programmable
Logic,
Addison
Wesley.
Smith, D.J. 1999. HDL Chip Design,
Done Publication.

86

| Elektron: Vol 2 No. 1, Edisi: Juni 2010

You might also like