• Tidak ada hasil yang ditemukan

OPTIMALISASI SISTEM TAMPILAN SMARTTE UNTUK MEMAKSIMALKAN KECEPATAN SISTEM

N/A
N/A
Protected

Academic year: 2021

Membagikan "OPTIMALISASI SISTEM TAMPILAN SMARTTE UNTUK MEMAKSIMALKAN KECEPATAN SISTEM"

Copied!
6
0
0

Teks penuh

(1)

OPTIMALISASI SISTEM TAMPILAN SMARTTE UNTUK MEMAKSIMALKAN KECEPATAN SISTEM

Ahmad Sujana1, Wisnu Hidayat2

Teknik Informatika, Sekolah Tinggi Teknologi Mandala Bandung

Abstrak

Sistem tampilan Smartte merupakan sebuah teknologi antarmuka manusia dengan mesin yang telah banyak digunakan dalam sistem pengendali motor pompa di penambangan minyak bumi. Masalah yang terdapat pada sistem ini adalahpenggunaan memori flash-nya telah mencapai 91,1% sehingga sulit untuk melakukan pembaruan perangkat lunaknya. Dilain pihak, mengoptimalkan perangkat lunak untuk menurunkan ukuran kode program, seringkali mengakibatkan penurunkan kecepatan sistem. Oleh karena itu penelitian ini dimaksudkan untuk mengoptimalkan penggunaan memori primer dari perangkat lunak sistem tampilan Smartte tanpa terlalu membebani kecepatan sistem. Penelitian ini menggunakan metode penelitian tindakan yang merupakan cabang dari penelitian deskriptif. Langkah-langkah yang dilakukan dalam penelitian ini adalah merumuskan masalah, mengumpulkan data, menganalisa data, merancang sistem, menguji coba dan menganalisa sistem, menarik kesimpulan, dan menulis laporan. Tujuan penelitian berhasil dicapai dengan beberapa langkah berikut. Memori data konstan dipindahkan ke memori sekunder eksternal bertipe non-volatil dan digandakan ke memori sekunder berkecapan tinggi ketika program dijalankan. Optimalisasi perangkat kompilasi –Os digunakan untuk menurunkan ukuran kode program. Untuk meningkatkan kecepatan sistem, beberapa metode digunakan seperti mengganti perintah percabangan if-else menjadi switch-case, penjabaran perulangan, perulangan bersarang, dan urutan percabangan. Dengan melakukan pengujian terhadap ukuran kode program dan juga kecepatan sistem, ditemukan bahwa ukuran kode program sebesar turun 26,0037%, sedangkan kecepatan sistem naik sebesar 2,1842%. Dengan demikian dapat disimpulkan bahwa dengan membagi memori ke dalam memori primer dan sekunder, mengaktifkan fitur optimalisasi terhadap ukuran k ode, dan dengan memfokuskan optimalisasi kode pada kecepatan sistem maka ukuran kode program berhasil diturunkan tanpa membebani kecepatan sistemnya.

Kata kunci : Kecepatan, mikrokontroler, optimalisasi, ukuran. Abstract

Smartte display system is a human machine interface technology that has been widely used in pump motor control system in oil lifting plant. One existing problem of the system was the usage of 91.1% of it’s flash memory by which it would be hard to implement update. On the other hand, optimizing software to reduce it’s memory usage, often resulted in system’s speed reduction. Therefore, this research is intended to optimize memory usage of Smartte display system’s software while maintain it’s system speed. It uses action research method which is a derivative of descriptive research. The steps in such kind of research include specifying problems, collecting data, analyzing the data, designing system, testing and analyzing the system, drawing conclusion, and writing the report. Such intention was realized using these following steps . Constant data memory is moved to a non volatile external secondary memory

and mirrored to a high speed secondary memory in runtime. Compiler optimization –Os are

then used to reduce code size. In order to increase system’s speed, several method are used such as replacing if

– else command with switch – case command, loop elaboration, loop nesting, and conditional sequence. By testing program code size and system’s speed, it is found that program code size reduced by 26.0037% while system’s speed increases by 2,1842%. It can be concluded that by dividing memory to primary and secondary memory, activating optimization feature for code size, and focusing code optimization to increase system speed, the program code size successfully reduced while maintaining the system’s speed.

(2)

1. PENDAHULUAN

Sistem Tampilan Smartte merupakan Human Machine Interface (HMI) dari sistem Smartte. Smartte merupakan sebuah sistem kendali dan proteksi motor tiga fasa ataupun satu fasa dengan basis pengendali mikro.

Namun perangkat lunak sistem tampilan Smartte memiliki keterbatasan yaitu penggunaan memori primernya telah mencapai 91%. Memori primer ini merupakan memori utama berupa memori flash tempat penyimpanan perangkat lunak atau kode sistem Tampilan Smartte. Dengan hampir penuhnya penggunaan memori flash dari sistem tampilan Smartte, pembaruan sistem ataupun penambahan fitur sistem tampilan Smartte akan sulit dilakukan.

Hal inilah yang menjadi masalah sistem tampilan Smartte yaitu

bagaimana mengoptimalkan

penggunaan memori primer dari perangkat lunak sistem tampilan Smartte tanpa terlalu membebani kecepatan sistem.

Tujuan dari penelitian ini adalah untuk melakukan optimalisasi perangkat lunak sistem tampilan Smartte dan mengetahui pengaruhnya terhadap ukuran kode dan kecepatan sistem. Dengan dilakukannya penelitian ini diharapkan dapat menjadi referensi dalam melakukan optimalisasi atau merancang perangkat lunak suatu sistem.

Penulis membatasi masalah hanya pada modifikasi perangkat lunak untuk optimalisasi, pembagian memori data ke dalam memori primer dan sekunder, peta memori optimalisasi dan analisis hasil pengujian.

2. METODE PENELITIAN 2.1.Pengendali Mikro Atmel AVR

Pengendali mikro AVR dari Atmel merupakan pengendali mikro dengan arsitektur Harvard yang telah dimodifikasi yang dikembangkan tahun 1996. AVR merupakan pengendali mikro pertama yang menggunakan memori flash tertanam untuk menyimpan kode program, sementara pengendali mikrolainnya masih menggunakan memori One-Time Programmable Read Only Memory (OT-PROM), Read Only Memory (ROM), Erasable Read Only Memory (EPROM), atau Electrical Erasable Read Only Memory (EEPROM).

Memori flash, EEPROM, dan Static Random Access Memory (SRAM) semuanya terintegrasi kedalam sebuah kepingan, sehingga tidak membutuhkan tambahan memori eksternal dalam kebanyakan aplikasi. Namun beberapa jenis AVR memiliki jalur paralel eksternal untuk menambahkan memori data eksternal atau perangkat lainnya yang memiliki peta memori.

Memori data internal dari pengendali mikro AVR terdiri dari register, register I/O, dan SRAM. AVR register sebanyak memiliki 32 byte. Register ini biasanya dipetakan dari alamat 0 kemudian diikuti 64 buah register I/O. SRAM akan mengikuti setelah register I/O. Pada beberapa kepingan, register I/O akan berjumlah lebih dari 64 dan akan memakan sebagian memori SRAM.

Pengendali mikro AVR memiliki desain dua tingkat pipa sehingga instruksi berikutnya akan diambil saat instruksi yang sekarang sedang dieksekusi. Kebanyakan instruksi hanya membutuhkan satu atau dua siklus waktu untuk dieksekusi sehingga menjadikan pengendali mikro AVR relatif cepat diantara pengendali mikro lainnya.

(3)

menggunakan kompilasi bahasa C sehingga memiliki beberapa register penunjuk yang telah terintegrasi di dalamnya. Kecepatan pewaktu dari AVR ini berkisar antara 0-20 MHz dan mencapai 32 MHz dalam kepingan khusus.

2.2. Optimalisasi

Pengendali mikro Atmel AVR merupakan Pengendali mikro Reduced Instruction Set Computing (RISC) yang dibuat untuk bekerja dengan kode C.

Dalam melakukan optimalisasi ada dua aspek yang akan terpengaruh yaitu ukuran dan kecepatan kode. Perangkat kompilasi kode C biasanya memiliki pengaturan optimalisasi untuk membantu pengembang sistem mendapatkan kode yang efisien baik dari sisi ukuran maupun kecepatan. Dalam beberapa kasus, optimalisasi untuk salah satu aspek akan mempengaruhi bahkan menurunkan aspek yang lainnya, jadi pengembang sistem harus mampu menyeimbangkan kedua aspek ini sesuai dengan kebutuhan sistem (Anonim, 2011).

Untuk sistem berbasis pengendali mikro Atmel AVR, optimalisasi dapat digolongkan menjadi :

− Optimalisasi kompilasi, yaitu dengan mengaktifkan fitur optimalisasi yang terdapat

pada perangkat kompilasi.

− Optimalisasi kode, yaitu dengan mengubah kode sehingga lebih optimal ukuran atau kecepatannya atau bahkan keduanya.

− Optimalisasi memori, yaitu dengan membagi memori penyimpanan ke dalam memori

penyimpanan primer dan memori penyimpanan sekunder.

2.3 Sistem Tampilan Smartte

Sistem tampilan Smartte merupakan sebuah sistem tertanam berbasis pengendali mikro. Sistem ini berfungsi sebagai antar muka antara sistem pengendali Smartte dengan penggunanya.

Pengendali mikro Atmel AVR ATMEGA64 digunakan sebagai pusat pengendali di sistem tampilan Smartte yang terhubung dengan beberapa komponen pendukung lainny.

Gambar 1. Blok diagram system tampilan smartte

Dalam pengoperasiannya, sistem tampilan smartte akan melibatkan transfer data antar memori- memorinya. Pengendali mikro akan membaca program dan data konstan dari memori flash di dalamnya dan melakukan operasi sesuai kode programnya. Pengendali mikro akan menyimpan sementara data operasionalnya di memori SRAM eksternal untuk operasi realtime. Memori SRAM eksternal ini dipilih karena kecepatannya yang tinggi. Namun memori SRAM eksternal sangat rentan kehilangan data ketika terjadi kegagalan catu daya sehingga datanya harus disalin ke memori EEPROM eksternal untuk menjaga keamanan. kr k r Atmel Layar LCD Memori RA r Memori r CA

(4)

Gambar 3. Penggunaan memori sistem tampilan Smartte

Dalam penelitian ini, sistem tampilan Smartte dapat dikatakan lebih optimal apabila ukuran memori program yang digunakannya lebih kecil, namun kecepatannya tidak boleh banyak menurun.

3. HASIL DAN PEMBAHASAN 3.1. Pengalihan Memori Data Konstan

Data konstan awalnya disimpan di memori EEPROM serial untuk menjamin data tidak hilang, kemudian disalin ke memori SRAM saat beroperasi sehingga waktu pembacaan datanya menjadi cepat. (terinspirasi dari Anonim, 2005)

Studio. Yaitu dengan melakukan kompilasi sehingga menghasilkan kode heksa (.hex) berikut informasi ukurannya yang kemudian akan diunggah ke memori flash sistem tampilan Smartte.

Gambar 7. Mengkompilasi program Sistem tampilan Smartte akan melakukan komunikasi ke sistem kendali Smartte secara terus menerus. Kecepatan komunikasi ini sangat berpengaruh terhadap respon sistem Smartte. Semakin tinggi frekuensi komunikasinya maka semakin responsif sistem tampilan Smartte. Maka parameter kecepatan sistem yang dijadikan acuan adalah berapa lama waktu satu komunikasi dari sistem tampilan smartte ke sistem kendali smartte dilakukan. Kecepatan komunikasi hasil optimalisasi yang dianggap tidak mengganggu kinerja sistem tampilan smartte adalah 90% dari kecepatan komunikasi sebelum optimalisasi.

(5)

Tabel 3. Data Hasil Analisa Sebelum Optimal- isasi Sesudah Optimal- isasi Selisih Ukuran Kode Program 59.830 byte 44.272 byte 15558 Byte (26,0037%) Kecepatan Komunikasi 5,49635 kom. /detik 5,6164 kom. /detik 0,12005 kom./detik (2,1842%)

Dari hasil tersebut dapat disimpulkan baik dari aspek ukuran memori program yang digunakan maupun dari kecepatan sistem sama-sama mengalami penigkatan setelah dilakukan proses optimalisasi. Ukuran memori program yang digunakan berkurang sebanyak 26,0037% dan kecepatannya meningkat sebanyak 1,5774%. Sehingga perangkat lunak sistem tampilan Smartte menjadi lebih optimal setelah dilakukan optimalisasi.

4. KESIMPULAN

Berdasarkan data hasil analisa setelah dilakukan proses optimalisasi sistem tampilan Smartte, dapat disimpulkan bahwa ukuran kode program menurun sebanyak 26,0037% sedangkan kecepatan sistem meningkat sebanyak 2,1842%. Hal ini membuktikan bahwa hipotesa “Dengan membagi perangkat lunak sistem tampilan Smartte ke dalam memori primer dan sekunder berkecepatan tinggi, juga dengan menerapkan optimalisasi tertentu, ukuran kode sistem akan berkurang tanpa terlalu banyak membebani sistem” adalah benar.

Dan teori yang mengatakan bahwa optimalisasi dalam satu aspek akan berdampak pada aspek lainnya atau dikenal dengan space and speed trade-off, pada kasus sistem berbasiskan

pengendali mikro dapat dihindari dengan memfokuskan optimalisasi memori dengan memindahkan data ke memori data ke

memori sekunder, dan memfokuskan optimalisasi

kode pada kecepatan sistem.

DAFTAR PUSTAKA

[1] Anonim, 2011, Atmel AVR4027: Tips and Tricks to Optimize Your C Code

for 8-bit Microcontrollers . California :

Atmel Corporation.

[2] Anonim, 2005, Mark V Turbine Control

Application Guide. Fairfield : General

Electric. [3] Dawoud, Shenouda Dawous, Peplow, R., 2010, Digital

Design – Use of Microcontroller. River

Publisher.

[4] Floyd, Thomas L, 2009, Digital

Fundamentals, 8th

Edition. India: Dorling Kindersley.

[5] Hall, Douglas V., 1989, Digital Circuits and

Systems. California: McGraw-Hill.

[6] Stallman, Richard M, 2003, Using

the GNU Compiler Collection.

[7] Winoto, Ardi, 2008, Mikrokontroler AVR Atmega

8/32/16/8535 dan Pemrogramannya dengan

Bahasa C pada WinAVR. Bandung:

Informatika

[8] Ramady, Givy Devira, and Rendi Juliana. "Sistem Kunci Otomatis Menggunakan Rfid Card Berbasis Mikrokontroler Arduino Uno R3." Jurnal Online Sekolah Tinggi Teknologi Mandala 14.1 (2019): 49-53.

(6)

Gambar

Gambar  3. Penggunaan  memori sistem tampilan  Smartte
Tabel 3. Data Hasil Analisa Sebelum  Optimal-  isasi  Sesudah Optimal- isasi  Selisih  Ukuran  Kode  Program  59.830 byte  44.272 byte  15558 Byte  (26,0037%)  Kecepatan  Komunikasi  5,49635 kom

Referensi

Dokumen terkait