S
1
A +S
0
S
1
B +S
0
S
1
C +S
0
S
1
(7)
Rangkaian logika demultiplekser terdiri
dari 1 input, 2 selektor dan 4 output. Prinsip
kerja demultiplekser merupakan lawan atau
kebalikan dari multiplekser. Selektor pada
demultiplekser berfungsi sebagai pemilih
output. Tabel kebenaran demultiplekser 4 bit
ditunjukkan dalamTabel 2.
Tabel 2. Tabel kebenaran demultiplekser 4 bit
Inpu
t
S
0
S
1
Out
0
Out
1
Out
2
Out
3
1 0 0 1 * * *
1 0 1 * 1 * *
1 1 0 * * 1 *
1 1 1 * * * 1
Peta Karnaugh Dalam Gambar 15
ditunjukkan persamaan logika demultiplekser
4 bit dapat dibentuk dari peta Karnaugh. Pada
hal ini digunakan metode Sum of Product
(SOP) untuk mendapatkan bentuk persamaan
logika.
Gambar 15. Peta Karnaugh demultiplekser 4
bit
Bentuk persamaan logika demultiplekser 4 bit
adalah sebagai berikut :
Misal : Out0=A, Out1=B, Out2=C, Out3=D
A =IS
0
S
1
, =IS
0
S
1
, C =IS
0
S
1
, =
IS
0
S
1
...(8)
Setelah persamaan logika multiplekser
dan demultiplekser 4 bit diketahui maka dapat
dilanjutkan dengan pemrograman IC PAL dan
GAL. Pemrograman dilakukan dengan
mengimplentasikan bentuk persamaan logika
menjadi rangkaian kombinasi gerbang logika.
Perancangan gerbang logika
Persamaan logika multiplekser dan
demultiplekser 4 bit dapat diimplementasikan
ke dalamrangkaian kombinasi gerbang logika.
Kombinasi dilakukan dengan menggunakan 3
jenis gerbang logika yaitu AND, OR dan NOT.
Hasil dari susunan gerbang-gerbang logika
tersebut harus sesuai dengan tabel kebenaran
multiplekser dan demultiplekser 4 bit.
Perancangan gerbang logika pada IC
GAL20V8 dilakukan mengacu pada
persamaan logika yang telah diketahui. Dalam
Penggunaan Programmable Logic Device, Sonny
35
Gambar 16 ditunjukkan rangkaian logika
multiplekser yang telah dirancang sesuai
dengan Persamaan 7 dan memenuhi tabel
kebenaran multiplekser yang ditunjukkan pada
Tabel 1.
Gambar 16. Rangkaian logika multiplekser
pada GAL20V8
Setelah perancangan rangkaian logika
multiplekser pada GAL20V8 dilakukan. Proses
perancangan dilanjutkan dengan pembuatan
rangkaian demultiplekser pada GAL20V8.
Metode perancangan ini mengacu pada
persamaan logika demultiplekser yang
ditunjukkan dalam Persamaan 8. Hasil
perancangan rangkaian logika demultiplekser
ditunjukkan dalamGambar 18.
Gambar 18. Rangkaian logika demultiplekser 4
bit
Dalam perancangan rangkaian logika
multiplekser dan demultiplekser 4 bit
menggunakan PAL20L8 terdapat perubahan
dalam susunan kombinasi gerbang logika.
Dalam hal ini perbedaan ditunjukkan pada
rangkaian multiplekser 4 bit.
Pada PAL20L8 perancangan rangkaian
logika digital tidak dapat menerapkan plan
yang memiliki fungsi OR secara langsung. Hal
ini disebabkan karena pada PAL20L8 memiliki
array OR yang bersifat tetap (fixed). Untuk
membangun sebuah rangkaian multiplekser 4
bit pada PAL20L8 yang juga terdiri atas
gerbang OR, maka diperlukan penerapan teori
bubble pushing. Dalampenerapan teori bubble
pushing sebuah gerbang OR dapat di bangun
menggunakan gerbang NAND. Gerbang OR
yang dibangun menggunakan rangkaian
gerbang NAND ditunjukkan dalam Gambar
19. Dalam Gambar x.xx ditunjukkan
rangkaian gerbang NAND yang menerapkan
teori bubble pushing dan berfungsi sebagai
gerbang OR 4 input.
Gambar 19. Kombinasi gerbang NAND yang
berfungsi sebagai OR
Dalamrangkaian multiplekser 4 bit terdapat
gerbang OR 4 input. Dengan menerapkan teori
bubble pushing gerbang OR 4 bit dapat
dirancang menggunakan gerbang NAND.
Rangkaian OR 4 input menggunakan gerbang
NAND ini harus memenuhi tabel kebenaran
gerbang OR 4 input. Dalam Gambar 20
ditunjukkan gerbang OR 4 input dan rangkaian
gerbang NAND yang berfungsi sebagai
gerbang OR 4 input.
Gambar 20. Gerbang OR 4 input dan
rangkaian NAND yang berfungsi sebagai
gerbang OR 4 input menggunakan teori bubble
pushing
Teori bubble pushing ini diterapkan
pada perancangan rangkaian multiplekser 4 bit
pada PAL20L8. Dalam penerapan pada
Jurnal Bytes Vol 2 No 1, September 2013 : 28 42
36
PAL20L8 rangkaian OR 4 input menggunakan
gerbang NAND dengan teori bubble pushing
perlu dilakukan perubahan pada saat
diaplikasikan pada rangkaian multiplekser 4 bit
di IC PAL20L8. Perubahan yang dilakukan
ada dengan mengubah gerbang NAND pada
bagian output rangkaian OR 4 bit menjadi
gerbang AND. Modifikasi yang dilakukan
ditunjukkan dalam Gambar 21. Hal ini
dilakukan agar compiler tidak mendeteksi
adanya plan OR dalamPAL20L8.
Gambar 21. Pengantian gerbang logika NAND
menjadi AND
Perubahan yang dilakukan
menyebabkan rangkaian gerbang NAND
tersebut tidak berfungsi sebagai gerbang OR 4
input. Agar dapat mendukung fungsi rangkaian
multiplekser 4 bit maka diperlukan
pengabungan dengan gerbang logika yang
lainnya. Perubahan rangkaian multiplekser 4
bit pada GAL20V8 ke multiplekser 4 bit pada
PAL20L8 ditunjukkan dalamGambar 22.
Gambar 22. Rangkaian multiplekser pada
GAL20V8 dan PAL20L8
Rangkaian multiplekser pada
PAL20L8 mengalami perubahan pada gerbang
logika yang digunakan. Hal ini terjadi karena
pada PAL20L8 tidak diperbolehkan
melakukan implementasi gerbang OR 4 input,
dan untuk dapat mempertahankan tabel
kebenaran dari multiplekser maka
ditambahkan gerbang NOT pada INPUT0,
INPUT1, INPUT2 dan INPUT3 pada
rangkaian multiplekser PAL20L8.
Pemrograman GAL20V8 dan PAL20L8
Penentuan pin yang digunakan pada
PAL20L8 dan GAL20V8 berdasarkan dari
fungsi tiap-tiap pin. Untuk pin yang berfungsi
sebagai input digunakan sebagai pin input
rangkaian multiplekser dan demultiplekser 4
bit, sedangkan pin yang berfungsi sebagai
output digunakan sebagai pin ouput rangkaian.
Pada perancangan rangkaian multiplekser dan
demultiplekser 4 bit memerlukan 9 pin input
dan 5 pin output. Maka pin input rangkaian
dapat menggunakan pin no. 2-10 dan untuk pin
output menggunakan pin no. 17-21. Dalam
Gambar 23 dan Gambar 24 ditunjukkan
penentuan pin yang digunakan sebagai input
dan output.
Gambar 23. Penentuan pin input dan output
pada PAL20L8
Gambar 24. Penentuan pin input dan output
pada GAL20V8
Pemrograman IC Programmable Logic
Device khususnya GAL dan PAL dapat
dilakukan dengan berbagai macam cara.
Dalampenelitian ini pemrograman dilakukan
menggunakan Compiler Universal for
Programmable Logic (CUPL) yang terdapat
dalamProtel 99SE. Dengan menggunakan cara
NAND AND
Multiplekser GAL20V8
Multiplekser PAL20L8
Penggunaan Programmable Logic Device, Sonny
37
ini maka pemrograman dapat dilakukan
dengan menggunakan diagramskematik.
Perancangan rangkaian logika
multiplekser dan demultiplekser pada PLD
menggunakan CUPL dapat dilakukan
menggunakan persamaan logika atau hanya
dengan menggunakan diagramlogika. Dalam
penelitian ini perancangan multiplekser 4
dilakukan dengan menggunakan persamaan
logika dan perancangan demultiplekser 4 bit
mengacu pada diagram logika IC
demultiplekser 74HC139. Untuk dapat mencari
persamaan logika diperlukan bantuan peta
Karnaugh multiplekser 4 bit. Proses
pembentukan persamaan logika multiplekser 4
bit dengan bantuan peta Karnaugh ditunjukkan
dalamGambar 25.
Gambar 25. Pembentukan persamaan logika
multiplekser 4 bit menggunakan peta
Karnaugh
Setelah memperoleh persamaan logika
dapat dilanjutkan dengan penyusunan
rangkaian multiplekser 4 bit menggunakan
gerbang AND, OR dan NOT. Penyusunan
gerbang logika mengacu pada persamaan
logika yang telah didapatkan.
Gambar 26. Pembentukan rangkaian
multiplekser 4 bit menggunakan persamaan
logika
Perancangan rangkaian logika
demultiplekser 4 bit menggunakan diagram
logika IC 74HC139. Pada perancangan ini
struktur gerbang logika yang dibentuk pada
PLD tidak menggunakan persamaan logika.
Skema rangkaian logika pada datasheet
74HC139 dapat digunakan secara langsung
pada saat menggambar skema demultiplekser
di Protell 99SE. Dalam Gambar 27
ditunjukkan pembentukan rangkaian
demultiplekser menggunakan diagram logika
IC 74HC139.
Gambar 27. Perancangan demultiplekser
menggunakan diagramlogika pada 74HC139
Dalam perancangan multiplekser dan
demultiplekser pada PAL dan GAL terdapat
perbedaan proses perancangan rangkaian
logika. Rangkaian logika multiplekser dan
demultiplekser pada PAL memerlukan
perubahan struktur gerbang logika dengan
menerapkan teori bubble pushing. Diagramalir
proses perancangan multiplekser dan
demultiplekser 4 bit pada IC GAL20V8
Gambar 28.
Gambar 28. Diagramalir proses perancangan
multiplekser dan demultiplekser 4 bit pada
GAL20V8
Proses perancangan multiplekser dan
demultiplekser 4 bit pada GAL20V8
perancangan dimulai dengan pembuatan
skema. Kemudian skema tersebut dicocokan
dengan tabel kebenaran, apabila nilai logika
Jurnal Bytes Vol 2 No 1, September 2013 : 28 42
38
cocok dengan tabel kebenaran maka dapat
dilakukan dengan proses compile. Bila proses
compile berhasil maka akan menghasilkan file
jedec (.jed) dan file jedec inilah yang nantinya
di isikan pada GAL20V8.
Gambar 29. Diagramalir proses perancangan
multiplekser dan demultiplekser 4 bit pada
PAL20L8
Dalam diagramalir proses perancangan
multiplekser dan demultiplekser 4 bit pada
PAL20L8 perancangan dimulai dengan
pembuatan skema. Kemudian dengan
menerapkan teori bubble pushing, struktur
rangkaian logika dapat dirubah sesuai dengan
array pada PAL20L8. Proses berikutnya skema
tersebut dicocokan dengan tabel kebenaran,
apabila nilai logika cocok dengan tabel
kebenaran maka dapat dilakukan dengan
proses compile. Bila proses compile berhasil
maka akan menghasilkan file jedec (.jed) dan
file jedec inilah yang nantinya di isikan pada
PAL20L8.
Skema rangkaian dibuat pada lembar
kerja Protel 99 SE dengan cara menambahkan
library PLD pada kotak komponen. Dalam
Gambar 30 ditunjukkan skema diagramlogika
multiplekser dan demultiplekser 4 bit yang
telah digambar pada lembar kerja skematik
Protel 99SE.
Gambar 30. Skema diagramlogika
multiplekser dan demultiplekser 4 bit
Setelah skematik dibuat dilanjutkan
dengan melakukan alokasi pin yang digunakan
pada GAL dan PAL. Alokasi pin ini
disesuaikan dengan fungsi pin GAL dan PAL
yang ada dalamdatasheet. Pada Protel 99SE
alokasi pin yang digunakan sebagai input
ditandai dengan nama ipad dan yang
digunakan sebagai output ditandai dengan
nama opad. Nomor pin yang digunakan harus
tercantum dalamipad atau opad yang telah
diletakkan pada skematik. Peletakkan ipad dan
opad ditunjukkan dalamGambar 31.
Gambar 31. Alokasi pin pada Protel 99SE
Untuk mendapatkan file jedec maka
harus dilakukan proses compile. Pada Protel
99SE proses compile dapat dilakukan dengan
cara mengatur konfigurasi menu PLD.
Pengaturan menu PLD dilakukan untuk
memilih target device. Dalam Gambar 32
ditunjukkan isi dari menu PLD pada Protel
99SE.
Penggunaan Programmable Logic Device, Sonny
39
Gambar 32. Tampilan menu PLD
Bila konfigurasi menu PLD telah dilakukan
maka dapat dilanjutkan dengan proses compile.
Setelah proses compile selesai maka akan
didapatkan file jedec dengan ekstensi .jed.
Pengisian IC PLD dilakukan dengan
menggunakan universal programmer Hilo All-
100.
Pengujian dan analisis
Analisa dan pengujian yang dilakukan
dalam penelitian ini bertujuan untuk
mengetahui karakteristik pemrograman IC
GAL dan PAL, kemampuan IC GAL dan PAL
sebagai penyederhana rangkaian elektronika
digital, dan bentuk sinyal keluaran yang
mampu dihantarkan oleh IC GAL dan PAL.
Pengujian hasil pemrograman PAL dan
GAL
Pengujian hasil pemrograman dilakukan
dengan melihat logika input dan output pada
PAL dan GAL yang telah diprogram. Proses
ini dapat dilakukan secara langsung pada
minimum sistem yang telah dilengkapi led dan
dip switch. Uji coba dilakukan sesuai dengan
tabel kebenaran multiplekser dan
demultiplekser. Logika input pada selektor
diatur oleh dip switch yang dapat terhubung
pada ground dan vcc.
Pertama kali pengujian dilakukan pada
rangkaian multiplekser yang terdapat pada
GAL20V8. Sesuai dengan tabel kebenaran,
multiplekser 4 bit akan meneruskan logika
yang ada pada jalur input 1 (IN0) apabila
selektor dalam kondisi S0=0 dan S1=0.
Keadaan logika output rangkaian multiplekser
akan sama dengan kondisi logika input yang
terpilih oleh selektor. Dalam Gambar 33
ditunjukkan pengujian pada minimum sistem
Generic Array Logic (GAL). Proses pengujian
ini dilanjutkan sesuai dengan nilai logika
selektor yang ada dalamtabel kebenaran. Hasil
pengujian rangkaian multiplekser 4 bit dalam
GAL20V8 ditunjukkan dalamTabel 3.
Gambar 33. Pengujian input dan output
multiplekser GAL20V8 pada saat S0=0, S1=0
Tabel 3. Hasil pengujian multiplekser 4 bit
pada GAL20V8
IN0 IN1 IN2 IN3 S0 S1 OUTPUT
PIN
2
PIN
3
PIN
4
PIN
5
PIN
6
PIN
7
PIN 21
1 * * * 0 0 IN0
* 1 * * 0 1 IN1
* * 1 * 1 0 IN2
* * * 1 1 1 IN3
Kemudian pengujian dilanjutkan dengan
rangkaian demultiplekser 4 bit pada
GAL20V8. Rangkaian demultiplekser
mempunyai selektor untuk memilih jalur
output. Kondisi logika jalur output akan
bernilai sama dengan kondisi logika input
apabila data selektor sesuai dengan jalur output
yang dipilih. Sebagai contoh OUT0 akan sama
dengan INPUT bila selektor S0=0 dan S1=0.
Dalam Gambar 34 ditunjukkan pengujian
rangkaian logika demultiplekser 4 bit pada
GAL20V8. Hasil dari pengujian
demultiplekser ditunjukkan dalamTabel 4.
Gambar 34. Pengujian input dan output
demultiplekser GAL 20V8 pada saat S0=0,
S1=0
Tabel 4. Hasil pengujian demultiplekser 4 bit
pada GAL20V8
IN S0 S1
OUT
0
OUT
1
OUT
2
OUT
3
PIN
8
PIN
9
PIN
10
PIN
20
PIN
19
PIN
18
PIN
17
1 0 0 1 * * *
1 0 1 * 1 * *
1 1 0 * * 1 *
1 1 1 * * * 1
Jurnal Bytes Vol 2 No 1, September 2013 : 28 42
40
Prosedur pengujian multiplekser 4 bit
pada PAL20L8 sama dengan pengujian
GAL20V8. Untuk rangkaian multiplekser pada
PAL20L8 memiliki spesifikasi yang sama
dengan rangkaian multiplekser pada
GAL20V8. Pengujian ditunjukkan dalam
Gambar 35 dan hasil pengujian multiplekser
pada PAL20L8 ditunjukkan dalamTabel 5.
Gambar 35. Pengujian input dan output
multiplekser PAL20L8 pada saat S0=0, S1=0
Tabel 5. Hasil pengujian multiplekser 4 bit
pada PAL20L8
IN0 IN1 IN2 IN3 S0 S1 OUTPUT
PIN
2
PIN
3
PIN
4
PIN
5
PIN
6
PIN
7
PIN 21
1 * * * 0 0 IN0
* 1 * * 0 1 IN1
* * 1 * 1 0 IN2
* * * 1 1 1 IN3
Fungsi demultiplekser ialah
menyalurkan sinyal input menuju output sesuai
dengan logika selektor. Pada PAL20L8
rangkaian demultiplekser mempunyai
konfigurasi yang sama dengan demultiplekser
pada GAL20V8. Nilai logika output akan
bernilai sama dengan logika input apabila
selektor pada posisi output yang terpilih.
Sebagai contoh Output1 sama dengan Input
bila S0=0 dan S1=1. Dalam Gambar 36
ditunjukkan pengujian rangkaian
demultiplekser pada PAL20L8 dan hasil dari
pengujian demultiplekser pada PAL20L8
ditunjukkan dalamTabel 6.
Gambar 36. Pengujian input dan output
demultiplekser PAL20L8 pada saat S0=0, S1=0
Tabel 6. Hasil pengujian demultiplekser 4 bit
pada PAL20L8
IN S0 S1
OUT
0
OUT
1
OUT
2
OUT
3
PIN
8
PIN
9
PIN
10
PIN
19
PIN
18
PIN
17
PIN
16
1 0 0 1 * * *
1 0 1 * 1 * *
1 1 0 * * 1 *
1 1 1 * * * 1
Hasil pengujian nilai logika input dan
output yang diperoleh merupakan hasil dari
penyederahaan persamaan logika rangkaian
logika multiplekser dan demultiplekser. Tabel
kebenaran yang didapat dari hasil pengujian
merupakan nilai logika yang tepat, apabila
nilai-nilai tersebut dimasukkan dalam
persamaan logika yang telah ditemukan.
Pengujian sinyal keluaran pada GAL dan
PAL
Pengujian sinyal keluaran pada GAL
dan PAL dilakukan untuk mengetahui sinyal
yang mampu dihantarkan oleh GAL dan PAL.
Sinyal masukkan diberikan pada bagian input
GAL dan PAL yang telah terkonfigurasi
sebagai multiplekser dan demultiplekser 4 bit.
Bentuk sinyal yang diujikan ialah sinyal kotak,
segitiga dan sinus. Dalam pengujian ini
diperlukan osiloskop untuk melihat bentuk
gelombang dan function generator sebagai
sumber sinyal.
Prosedur dari pengujian ialah dengan
memperhatikan frekuensi dan amplitudo
maksimum dari sinyal yang akan diberikan
pada GAL dan PAL. Frekuensi yang
digunakan pada pengujian ini adalah 100Hz,
1kHz, 10kHz, 100kHz untuk setiap bentuk
sinyal. Amplitudo yang digunakan ialah 5 volt
untuk seluruh bentuk sinyal yang akan
diujikan. Rangkaian pengujian ditunjukkan
dalamGambar 37.
Gambar 37. Rangkaian pengujian GAL dan
PAL
Penggunaan Programmable Logic Device, Sonny
41
Hasil yang diperoleh dari pengujian IC
GAL dan PAL tidak jauh berbeda. Sinyal yang
dapat diteruskan adalah sinyal kotak/square
wave. Bentuk sinyal keluaran terhadap input
yang diberikan tidak mengalami perubahan
bentuk. Apabila diberikan masukkan berupa
sinyal segitiga dan sinus maka keluaran tidak
sama dengan sinyal masukkannya. Maka dapat
disimpulkan bahwa sinyal segitiga dan sinus
tidak dapat di teruskan oleh PAL20L8 dan
GAL20V8. Dalam Gambar 38, 39 dan 40
ditunjukkan hasil dari pengujian sinyal GAL
dan PAL.
Gambar 38. Pengujian sinyal kotak 1 khz pada
GAL dan PAL
Gambar 39. Pengujian sinyal segitiga 1 khz
pada GAL dan PAL
Gambar 40. Pengujian sinyal sinus 1 khz pada
GAL dan PAL
Dari hasil pengujian sinyal ini PAL20L8
mempunyai batas frekuensi yang dapat
dilewatkan sebesar 500kHz dan pada
GAL20V8 frekuensi yang dapat dilewatkan
adalah 100kHz.
Kesimpulan
Dari hasil pengujian dan analisis dapat
disimpulkan hal-hal sebagai berikut :
a. Pemrograman rangkaian logika pada
GAL20V8 berbeda dengan PAL20L8,
perbedaan terjadi pada konfigurasi gerbang
logika pada array PAL20L8, sebuah
gerbang OR pada GAL20V8 dibangun
menggunakan 3 buah gerbang NAND pada
PAL20L8 melalui teori bubble pushing.
b. IC PAL20L8 dan GAL 20V8 hanya dapat
meneruskan sinyal kotak/square wave.
c. Nilai logika input dan output memiliki
ketepatan 100% dengan tabel kebenaran
multiplekser dan demultiplekser 4 bit.
Saran
a. Aplikasi yang dapat dirancang
menggunakan PLD sangatlah luas,
sehingga dapat dikembangkan
implementasi lainnya yang membutuhkan
persamaan logika.
b. Penggunaan PLD dapat dikembangkan
dengan menggunakan FPGA (Field
Programmable Gate Array), sehingga dapat
menjalankan aplikasi yang lebih kompleks.
Jurnal Bytes Vol 2 No 1, September 2013 : 28 42
42
Daftar Pustaka:
Balch, M. 2003. Complete Digital Design.
McGraw-Hill. Amerika.
Budiharto, W. 2003. Interfacing Komputer dan
Mikrokontroler. 2004. PT Elex Media
Komputindo. J akarta
3Dzale. 2009 . Mengenal Programmable Logic
Devices (PLD).
http://ndoware.com/mengenal-
programmable-logic-devices-pld.htm. 1
Nop 2009.
Leach, D. P , Malvino, P. A . 1995. Digital
Principles And Applications. McGraw-
Hill. Amerika
Kleitz, W . 1996. Digital Electronics Fourth
Edition. Prentice Hall. New J ersey
Maini, A. K . 2007. Digital Electronics :
Principle Devices and Applications.
J ohn Wiley & Sons. England
Martanto. 2000. Perancangan dan
Implementasi Generator Fungsi
DenganMetoda DDS(Direct Digital
Synthesis) pada CPLD(Complex
Programmable Logic Device). Institut
Teknologi Bandung. Bandung
Navabi, Z. 2005. Digital Design and
Implementation with Field
Programmable Devices. Springer.
Boston
Nur, M. 1981. Sistem-sistem Digital. Institut
Teknologi Sepuluh Nopember. Surabaya
Samman, A. F. 2002. Fuzzy Logic Controller
Circuit Design and Its Implementation
on CPLD. Institut Teknologi Bandung.
Bandung
Sofyan. 2004. Risc Sederhana dengan FPGA.
KOMMIT 2004. Jakarta. Hal 699-707
Tocci, R. J. 1995. Digital System Principle &
Applications. Prentice Hall. Amerika
Tinder, R. F. 2000. Engineering Digital
Design Second Edition. Academic Press.
San Diego
Wood, R. A. 1981. An Electrically Alterable
PLA for Fast Turnaround-Time VLSI
Development Hardware. IEEE J ournal
of Solid-State Circuits. Vol SC-16 No.
5. New York. Halaman. 570-577
Fong, E. 1984. An Electrically Reconfigurable
Programmable Logic Array Using A
CMOS/DMOS Technology. IEEE
J ournal of Solid-State Circuits. Vol SC-
19 No. 6. New York. Halaman. 1041-
1044
Aplikasi Komunikasi Data, Nurlaily, Michael
43
Aplikasi Komunikasi Data Remote Computer Client
Nurlaily Vendyansyah
1
, Michael Ardita
2
1,2
Teknik Informatika ITN Malang, J alan Karanglo km2 Malang
lily_flowers05@yahoo.com. e2982online@yahoo.co.id
Abstrak
Bagaimana cara antar computer dapat berkomunikasi adalah merupakan permasalahan
dasar untuk memahami komunikasi data. Dalam paper ini dibuat aplikasi komunikasi data berbasis
client server untuk tujuan remote computer client melalui computer server menggunakan UDP (User
Datagram Protocol) dengan memesan port yang disediakan untuk alokasi service bebas 16 bit, yaitu
nomor port 1024 hingga 65.535. Fitur yang dapat dikendalikan oleh computer server remote
Shutdown, Restart, Hide Icon Desktop, Unfreeze Mouse dan Keyboard dalam interval waktu tertentu,
Manajemen Windows, Hide Clock, Open CDRoom, Hide Taskbar, serta pemanggilan beberapa
aplikasi Client melalui server.
Kata kunci : UDP, Komunikasi Data, Remote, Jaringan Komputer
Pendahuluan
Komunikasi data adalah salah satu
pendukung keberhasilan terciptanya bermacam
aplikasi social media yang sedang marak.
Sebut saja KakaoTalk, Line, WeChat,
Whatsapp, Facebook, Twitter, mypeople,
Instagram dan masih banyak lagi. Bahkan
baru-baru ini, pihak RIM (Research In Motion)
secara resmi meluncurkan BBM for Android
melalui PlayStore.
Bagaimana cara antar computer dapat
berkomunikasi adalah merupakan
permasalahan dasar untuk memahami
komunikasi data. Sehingga penulis bermaksud
membuat aplikasi remote computer client
melalui computer server.
Jaringan Komputer
J aringan computer adalah sebuah system
yang terdiri atas lebih dari satu computer yang
didesain untuk dapat berbagi sumber daya
(CPU, printer), berkomunikasi (email, pesan
instan), dan dapat mengakses informasi[1].
Untuk dapat terhubung antar satu computer
dengan computer lainnya dapat memanfaatkan
teknologi wired (dengan kabel) ataupun
wireless (tanpa kabel) untuk transmisi datanya.
Pada jaringan computer tedapat istilah server
adalah pihak yang memberikan dan client
adalah pihak yang meminta informasi.
Open Systems Interconnection (OSI) Model
OSI model menjelaskan bagaimana
informasi dari sebuah aplikasi pada sebuah
computer dapat berkomunikasi dengan aplikasi
pada computer lainnya dalam jaringan. OSI
model memiliki 7 layer seperti ditunjukkan
pada gambar 1, dikembangkan oleh
International Organization for Standardization
(ISO) di Eropa pada 1984. Masing-masing
layer memberikan keterangan detail fungsinya
dalamsebuah jaringan[4].
Layer 7 Application
Layer 6 Presentation
Layer 5 Session
Layer 4 Transport
Layer 3 Network
Layer 2 Data Link
Layer 1 Physical
Gambar 1. 7 Layer OSI [4]
Komunikasi Data
Dalam suatu jaringan computer baik itu
menggunankan teknologi kabel (wired)
maupun tanpa kabel (wireless) pada dasarnya
tujuan utamanya adalah agar dapat
berkomunikasi antar satu host dengan yang
lainnya. Komunikasi itu bisa dapat dalam
bentuk komunikasi point-to-point atau
broadcast ke suluruh jaringan.
Host Layer
Media Layer
Jurnal Bytes Vol 2 No 1, September 2013 : 43 47
44
Remote
Istilah remote dapat diartikan sebagai
suatu kegiatan yang mengendalikan sesuatu
(perangkat) dari jarak jauh. Dalam
implementasinya untuk mengendalikan
perangkat tersebut dapat melalui media kabel
ataupun melalui gelombang radio.
UDP (User Datagram Protocol)
UDP (User Datagram Protocol)
merupakan salah satu protocol pada lapisan
Transport TCP/IP pada OSI 7 Layer. Protokol
ini mengasumsikan Internet Protocol (IP) yang
digunakan sebagai underlying protocol. UDP
adalah transaction oriented, dan delivery dan
duplicate protection tidak terjamin. [2].
Karakteristik UDP antara lain [3] :
1. Connectionless (Tanpa Koneksi)
Pesan UDP akan dikirimkan tanpa harus
dilakukan proses negoisasi koneksi antara
dua host yang akan bertukar informasi.
2. Unreliable (Tidak Handal)
Pesan UDP akan dikirimkan sebagai
datagramtanpa adanya nomor urut atau
pesan acknowledgement.
3. UDP menyediakan mekanisme untuk
mengirimkan pesan ke sebuah protocol
lapisan aplikasi atau proses tertentu di
dalam sebuah host dalam jaringan yang
menggunakan TCP/IP. Header UDP berisi
field Source Process Identification dan
Destination Process Identification.
4. UDP menyediakan penghitungan checksum
berukuran 16-bit terhadap keseluruhan
pesan UDP.
Analisa Kebutuhan Fungsional
Adapun perangkat lunak yang akan
dibangun adalah sebagai berikut :
1. Aplikasi dibangun berbasis Client Server
2. Aplikasi server memiliki fitur remote untuk
mengendalikan komputer client yang
terhubung dengan server. Fitur yang
dimaksud adalah Shutdown, Restart, Hide
Icon Desktop, Unfreeze Mouse dan
Keyboard dalam interval waktu tertentu,
Manajemen Windows, Hide Clock, Open
CDRoom, Hide Taskbar, serta pemanggilan
beberapa aplikasi Client melalui server.
3. Aplikasi Client dapat melakukan
komunikasi dengan Server melalui fitur
Chat.
4. Server dapat merekam semua IP address
Client yang sedang terhubung.
5. Aplikasi dapat melakukan broadcast ke
semua client yang terhubung.
Perancangan User Interface
1. Perancangan pada sisi Server
Perancangan antarmuka aplikasi pada
sisi server dan sisi client adalah bersifat
userfriendly, karena dibuat berbasis Graphical
User Interface (GUI). Rancangan antarmuka
pada sisi server ditunjukkan gambar 2 :
Gambar 2. Perancangan Aplikasi Server Side
Pada perancangan sisi server, untuk
pegaktifan server dibuat secara manual dengan
memanfaatkan komponen IdTcpServer1
dengan memesan nomor port yang akan
digunakan untuk melakukan komunikasi.
Implementasi kode program untuk
mengaktifkan server secara manual adalah
sebagai berikut :
Procedure Tform1.Button5Click(Sender:
Tobject);
var
Bindings: TidSocketHandles;
port: Integer;
begin
Button7.Enabled:=True;
port:=StrToInt(Edit3.Text);
Bindings:=
TidSocketHandles.Create(IdTCPServer1);
Try
with Bindings.Add do
begin
IP:=Edit2.Text;
Port:=port;
end;
Komponen IdThreadMgrDefault1
digunakan untuk merekamdata yang dikirim
oleh client. Untuk merekamdata yang masuk
ke server diimplementasikan kode program
sebagai berikut :
Aplikasi Komunikasi Data, Nurlaily, Michael
45
Procedure
Tform1.IdTCPServer1Execute(Athread:
TidPeerThread);
var
pesan:String;
begin
While Athread.Connection.Connected do
begin
Pesan:=Athread.Connection.ReadLn;
Athread.Connection.WriteLn(OK);
Memo1.Lines.Insert(0,pesan);
Memo1.Lines.Insert(0,[Data Dari IP
+Label10.Caption+] : +pesan);
end;
end;
2. Perancangan pada sisi Client
Pada perancangan antar muka pada sisi
client dengan memanfaatkan komponen
IdTCPClient1. Rancangan antarmuka pada sisi
client ditunjukkan gambar 3 :
Gambar 3. Perancangan Aplikasi Client Side
Berikut ini adalah kode program agar
computer client dapat terhubung dengan server
:
procedure Tform1.Button1Click(Sender:
Tobject);
var
pesan:String;
begin
With IdTCPClient1 do
begin
Host:=Edit1.Text;
Port:=1115;
Connect;
end;
end;
Berikut ini adalah kode program untuk
merekam komunikasi antara computer client
dengan server :
procedure TForm1.Button2Click(Sender:
TObject);
var
pesan:String;
begin
IdTCPClient1.WriteLn(Edit2.Text);
IdTCPClient1.ReadLn(pesan);
Memo1.Lines.Insert(0,'Data Client IP
'+Edit2.Text+' : '+Edit2.Text);
Edit2.Text:='';
end;
Pengujian Aplikasi Server Side
Pengujian yang dilakukan adalah dengan
komunikasi point-to-point dan broadcast
dengan teknologi wireless. Kemampuan
aplikasi untuk merekam IP Address secara
otomatis pada komputer yang dipasang
aplikasi server akan dibandingkan dengan
pengecekan konfigurasi IP melalui command
prompt dengan mengetikkan perintah ipconfig.
Gambar 4. Windows IP Configuration pada
terminal Server
Gambar 5. Hasil Pengujian Aplikasi Server
Side
Jurnal Bytes Vol 2 No 1, September 2013 : 43 47
46
Port yang digunakan untuk pengaktifan
server pada pengujian ini adalah 1115. Dalam
protocol TCP/IP nomor port memiliki tipe data
integer yaitu 0 sampai 65.535 (16 bit), dengan
0 sampai 1023 adalah well-known port
numbers. Sedangkan nomor port yang
disediakan untuk alokasi service bebas adalah
1024 sampai 65.535.
Gambar 6. Hasil Pengujian Fitur Remote
Computer Client melalui Server
Komputer client dapat dikendalikan oleh
server melalui fitur yang sudah disediakan
aplikasi server pada tombol Remote. Fitur
yang dimaksu yaitu Shutdown, Restart, Hide
Icon Desktop, Unfreeze Mouse dan Keyboard
dalam interval waktu tertentu, Manajemen
Windows, Hide Clock, Open CDRoom, Hide
Taskbar, serta pemanggilan beberapa aplikasi
Client melalui server. Dalam percobaan ini
dilakukan pada jaringan Klas C dengan IP
address Server 192.168.56.1 dan IP address
Client 192.168.56.5 .
Berikut ini adalah kode program untuk
merestart computer client :
procedure TForm1.Button1Click(Sender:
TObject);
begin
WindowsExit(EWX_REBOOT or
EWX_FORCE);
end;
Berikut ini adalah kode program untuk
shutdown computer client :
function TForm1.FuncAvail(dllName,
funcName: String; var p: Pointer): Boolean;
var
lib: THandle;
begin
result:=False;
p:=Nil;
if LoadLibrary(PChar(dllName))=0
Then Exit;
Lib:=GetModuleHandle(PChar(dllName));
if lib<>0 Then
begin
p:=GetProcAddress(Lib,PChar
(FuncName));
if p <>Nil Then
Result:=True;
end;
end;
Berikut ini adalah kode programuntuk
memanggil aplikasi yang terinstal pada
computer client :
procedure
TForm1.ComboBox1Change(Sender:
TObject);
begin
if ComboBox1.Text='Kalkulator' Then
begin
WinExec('calc.exe',SW_NORMAL);
end;
if ComboBox1.Text='Paint' Then
begin
WinExec('mspaint.exe',SW_NORMAL);
end;
if ComboBox1.Text='Notepad' Then
begin
WinExec('notepad.exe',SW_NORMAL);
end;
if ComboBox1.Text='Ms.Office' Then
begin
WinExec('C:\Program Files\Microsoft
Office\Office12\winword.exe',SW_NORMAL)
;
end;
if ComboBox1.Text='Ms.Excel' Then
begin
WinExec('C:\Program Files\Microsoft
Office\Office12\excel.exe',SW_NORMAL);
end;
end;
Aplikasi Komunikasi Data, Nurlaily, Michael
47
Pengujian Aplikasi Client Side
Pengujian yang dilakukan pada aplikasi
sisi client adalah kemampuan aplikasi untuk
merekam IP Address Computer sendiri secara
otomatis dan kemampuan untuk dapat
terhubung dengan Server. Aplikasi akan
memberikan informasi status keberhasilan
terhubung dengan server. Ketika client
terhubung dengan server maka computer client
dapat melakukan komunikasi dengan
mengirimkan pesan. Rekaman komunikasi data
antara server dan client ditampilkan di memo.
Ketika client terhubung ke computer
server, maka fitur remote computer client
melalui computer server dapat berfungsi.
Antarmuka aplikasi pada sisi client
ditunjukkan gambar 7.
Gambar 7 Hasil Pengujian Client Side
kesimpulan
1. Aplikasi yang dibuat adalah untuk
komunikasi data antara satu computer
server yang terhubung dengan satu atau
lebih computer client melalui nomor port
yang disediakan untuk alokasi service
bebas.
2. Alamat Broadcast pada pengujian dengan
IP server 192.168.56.1 adalah
192.168.56.255.
3. Fitur Remote computer client akan
berfungsi jika computer client terhubung
dengan aplikasi server, dan server harus
mengaktifkan layanannya.
Daftar Pustaka
--,Jaringan Komputer, http :
//id.m.wikipedia.org/wiki/J aringan_kom
puter/, (26-07-2013)
H.Schiller,J ochen,Mobile Communications
2
nd
Edition, Great Britain : Pearson
Education Limited, 2003, pp.19.
Masya, Fajar, Fiade, Andrew, Socket
Programming, Graha Ilmu.
--,OSI model, http :
//id.m.wikipedia.org/wiki/OSI_model/,
(26-07-2013)
PANDUAN PENULISAN JURNAL
Judul (font size 14 bold)
Nama Penulis (NIM) (font size 11 bold)
Teknik Informatika ITN Malang
e-mail (font size 11 reguler)
Abstrak (font size 11 italic bold )
Abstrak berisi aspek-aspek umum dan kesimpulan utama. Panjang abstrak 100 s/d 200 kata dan diketik
dalam ukuran huruf 11 pts.
Kata kunci : Kata kunci sedapat mungkin menjelaskan isi tulisan, dan ditulis dengan huruf kecil, kecuali
singkatan. Kata kunci tidak lebih dari 6 kata.
1. Pendahuluan [11 pts/Bold]
Naskah jurnal ditulis di kertas berukuran
standar A4 (21 cm x 29.7 cm) dalam jumlah 8
sampai 15 halaman. Naskah ditulis dalam
format satu spasi. Tambahkan satu spasi untuk
setiap antar-bagian (antara judul dan penulis,
antara penulis dan abstrak, antara absrak dan
kata kunci, antara sub-bab dan isi). Semua
margin atas, margin bawah, margin kiri, dan
margin kanan 25 mm. Margin untuk header dan
footer 15 mm. Naskah tidak perlu diberi nomor
halaman, header dan footer.
Isi pendahuluan mengandung latar
belakang, tujuan, identifikasi masalah dan
metoda penelitian, yang dipaparkan secara
tersirat (implisit).
Kecuali bab Pendahuluan dan bab
Kesimpulan dan Saran, penulisan judul-judul
bab sebaiknya eksplisit menyesuaikan isinya.
Tidak harus implisit dinyatakan sebagai Dasar
Teori, Simulasi Sistem, dan sebagainya.
2. Persamaan Matematika
2.1. Contoh
Persamaan matematika dinomori dengan
angka Arab di dalam tanda kurung buka-tutup
pada posisi rata kanan kolom. Persamaan
ditulis menjorok ke dalam sejauh satu 7,5 mm.
Untuk persamaan yang tidak cukup ditulis
dalam lebar 1 kolom, penulisannya dapat
melintasi 2 kolom, ditulis di bagian bawah
halaman dan diberi nomor urut yang sesuai.
k
k n x k x n y ) ( ) ( ) ( (1)
2.2.
3. Keterangan Tabel dan Gambar
Nomor urut tabel ditulis di bagian atas tabel
yang dijelaskan, contoh: Tabel 1, Tabel 2(a).
Nomor urut gambar ditulis di bawah gambar
yang dijelaskan, contoh: Gambar 1, Gambar
2(a).
4. Cara Pengajuan dan Pengutipan
Rujukan dalam pembahasan ditandai
nomor pustaka yang dirujuk dalam kurung siku,
contoh: [1], [2, 57].
Daftar Pustaka:
[1] Ludeman, L. C., 1987, Fundamental of
Digital Signal Processing, Singapore,
John Wiley & Sons, Inc.
[2]
Penyusunan rujukan dalam daftar pustaka
berurut berdasarkan abjad nama pengarang dan
diberi nomor angka arab dalam kurung siku.
Penulisan unsur-unsur keterangan pustaka
mengikuti kaidah dengan urutan: (1) nama
pengarang ditulis dengan urutan nama akhir,
nama awal dan nama tengah, tanpa gelar
akademik. (2) tahun penerbitan. (3) Judul. (4)
tempat penerbitan. (5) nama penerbit. Untuk
pemisah antar-unsur keterangan pustaka
digunakan tanda koma ,.
Lampiran
Jika diperlukan, tulisan dapat dilengkapi
dengan lampiran.