BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Spesifikasi Sistem Spesifikasi yang ada pada sistem ini terbagi menjadi dua tahapan, yaitu spesifikasi perangkat keras yang digunakan dan spesifikasi perangkat lunak yang mendukung sistem yang dibuat. Berikut ini adalah spesifikasi-spesifikasi yang ada pada sistem yang dirancang. 4.1.1 Perangkat Keras Spesifikasi minimal perangkat keras yang dibutuhkan adalah : Personal Computer (PC) dengan spesifikasi sebagai berikut : o Windows XP Professional SP2 (later) o Prosesor : Intel Pentium 1,8 GHz o Memori : 1GByte o VGA card : 128MB o Hard disk empty space : 3.5GByte (Install + User Files) o Free Universal Serial Bus (USB) port o Software : Adobe Reader 8 (or above) o Digital Video Disk (DVD) ROM, o 2 Monitor 15, 2 keyboard standard dan mouse Modul Altium s Desktop Nanoboard NB2DSK01 o FPGA : Spartan 3 (XC3S1500-4FG676C) 47
48 o Power supply 5 volt o USB cable o PS/2 Keyboard port o VGA 24 bit RGB port o System clocks (40 MHz untuk sistem keseluruhan dan 20 MHz untuk clock reference) o Thin Film Transistor (TFT) LCD panel o 3 Generic User Switch (SW1, SW2, SW3) o 8-way Dual In line Package (DIP)-Switch o 8 user Light Emitting Diode (LED) 4.1.2 Perangkat Lunak Spesifikasi perangkat lunak yang dibutuhkan adalah : Sistem Operasi : Window XP Compiler : Xilinx ISE Software : Altium Designer Summer 08 4.2 Implementasi Sistem Pada bagian ini akan dijelaskan mengenai bagaimana cara mengoperasikan penelitian, baik secara hardware maupun software.
49 4.2.1 Prosedur Pengoperasian Perangkat Keras Berikut ini adalah langkah-langkah implementasi sebelum sistem bekerja : 1. Sambungkan Altium s Desktop Nanoboard NB2DSK01 ke port USB Altium dan port USB PC melalui kabel USB. Gambar 4.1 Kabel USB pada Nanoboard 2. Sambungkan colokan Power Supply yang telah terhubung sumber tegangan pada konektor power Altium s Desktop Nanoboard NB2DSK01. Gambar 4.2 Kabel Power Supply di Nanoboard 3. Sambungkan kabel VGA monitor yang tidak dipakai ke VGA connector Altium s Desktop Nanoboard NB2DSK01. 4. Sambungkan kabel PS/2 keyboard yang tidak dipakai ke PS/2 connector Altium s Desktop Nanoboard NB2DSK01. 5. Nyalakan power NB2DSK01 dengan menurunkan switch power ke arah bawah sehingga LED untuk power akan menyala.
50 6. Pada TFT panel akan tampil tampilan seperti gambar 4.3 di mana user dapat merubah clock sistem dengan masuk ke bagian option dan kemudian memilih bagian clock dan memilih clock yang dipakai untuk penelitian ini yaitu 40 MHz. Gambar 4.3 Tampilan TFT panel saat switch power dinyalakan 4.2.2 Prosedur Pengoperasian Perangkat Lunak Pada penelitian ini memakai program Altium Designer Summer 08 dengan compiler Xilinx ISE 10.1 dengan memakai bahasa pemrograman VHDL. Berikut ini adalah langkah-langkah implementasi untuk pemrograman FPGA Spartan 3 setelah melakukan implementasi perangkat keras: 1. Jalankan program Altium Designer yang telah diinstal pada PC. 2. Pilih menu File dan pilih open project untuk membuka file project.
51 3. Pada penelitian ini nama file project adalah Pengukuran Final. Pilih Pengukuran Final dan buka file yang bertipe.prjfpg. 4. Pada bagian menu Altium Designer pilih View dan kemudian pilih Device View. 5. Click icon Live untuk memastikan Altium Nanoboard telah tersambung dengan PC. 6. Click Program FPGA sehingga projek yang telah dibuka dan telah di compile oleh Xilinx akan diimplementasikan pada FPGA Spartan 3. 7. Clock pada Nanoboard juga dapat diatur dengan meng-click tombol kiri mouse pada icon Nanoboard sebanyak dua kali sehingga akan muncul Instrument Rack NanoBoard Controllers panel. Pada panel inilah user dapat merubah frekuensi clock sesuai yang diinginkan. 4.3 Evaluasi Pada penelitian ini dilakukan percobaan pada keyboard dan monitor. 4.3.1 Evaluasi Monitor Pada percobaan terhadap monitor dilakukan pengujian terhadap timing diagram dengan melakukan perubahan timing, baik pada horizontal maupun vertical secara program. Informasi monitor didapat dengan menekan tombol menu pada monitor seperti yang terlihat pada gambar 4.4.
52 Gambar 4.4 Tampilan informasi monitor Berikut ini adalah tabel hasil percobaan dengan mengubah parameterparameter timing diagram horizontal maupun vertical : Tabel 4.1 Percobaan dengan mengubah Back Porch pada Vertical Timing Horizontal Timing No Synchronize Back Active Front Whole Clock 1 120 64 800 56 1040 40 MHz Vertical Timing No Synchronize Back Active Front Whole Result 1 6 14 600 37 657 38.4 k/58 2 6 15 600 37 658 38.4 k/58 3 6 16 600 37 659 38.4 k/58 4 6 17 600 37 660 38.4 k/58 5 6 18 600 37 661 38.4 k/58 6 6 19 600 37 662 38.4 k/58 7 6 20 600 37 663 38.4 k/57 8 6 21 600 37 664 38.4 k/57 9 6 22 600 37 665 38.4 k/57 10 6 23 600 37 666 38.4 k/57 11 6 24 600 37 667 38.4 k/57 12 6 25 600 37 668 38.4 k/57 13 6 26 600 37 669 38.4 k/57 14 6 27 600 37 670 38.4 k/57 15 6 28 600 37 671 38.4 k/57
53 16 6 29 600 37 672 38.4 k/57 17 6 30 600 37 673 38.4 k/57 18 6 31 600 37 674 38.4 k/57 19 6 32 600 37 675 38.4 k/56 20 6 33 600 37 676 38.4 k/56 Tabel 4.2 Percobaan dengan mengubah Back Porch pada Horizontal Timing Vertical Timing No Synchronize Back Active Front Whole Clock 1 6 22 600 38 666 40 MHz Horizontal Timing No Synchronize Back Active Front Whole Result 1 120 55 800 56 1031 38.7 k/58 2 120 56 800 56 1032 38.7 k/58 3 120 57 800 56 1033 38.6 k/58 4 120 58 800 56 1034 38.6 k/58 5 120 59 800 56 1035 38.6 k/58 6 120 60 800 56 1036 38.5 k/57 7 120 61 800 56 1037 38.5 k/57 8 120 62 800 56 1038 38.5 k/57 9 120 63 800 56 1039 38.4 k/57 10 120 64 800 56 1040 38.4 k/57 11 120 65 800 56 1041 38.3 k/57 12 120 66 800 56 1042 38.3 k/57 13 120 67 800 56 1043 38.3 k/57 14 120 68 800 56 1044 38.2 k/57 15 120 69 800 56 1045 38.2 k/57 16 120 70 800 56 1046 38.2 k/57 17 120 71 800 56 1047 38.1 k/57 18 120 72 800 56 1048 38.1 k/57 19 120 73 800 56 1049 38 k/57 20 120 74 800 56 1050 38 k/57
54 Tabel 4.3 Percobaan dengan mengubah Front Porch pada Vertical Timing Horizontal Timing No Synchronize Back Active Front Whole Clock 1 128 88 800 40 1056 40 MHz Vertical Timing No Synchronize Back Active Front Whole Result 1 4 23 600 1 628 37.8 k/60 2 4 23 600 2 629 37.8 k/60 3 4 23 600 3 630 37.8 k/60 4 4 23 600 4 631 37.8 k/59 5 4 23 600 5 632 37.8 k/59 6 4 23 600 6 633 37.8 k/59 7 4 23 600 7 634 37.8 k/59 8 4 23 600 8 635 37.8 k/59 9 4 23 600 9 636 37.8 k/59 10 4 23 600 10 637 37.8 k/59 11 4 23 600 11 638 37.8 k/59 12 4 23 600 12 639 37.8 k/59 13 4 23 600 13 640 37.8 k/59 14 4 23 600 14 641 37.8 k/59 15 4 23 600 15 642 37.8 k/58 Tabel 4.4 Percobaan dengan mengubah Front Porch pada Horizontal Timing Vertical Timing No Synchronize Back Active Front Whole Clock 1 4 23 600 1 628 40 MHz No Synchronize Back Active Front Whole Result 1 128 88 800 40 1056 37.8 k/60 2 128 88 800 41 1057 37.8 k/60 3 128 88 800 42 1058 37.7 k/60 4 128 88 800 43 1059 37.7 k/60
55 5 128 88 800 44 1060 37.7 k/60 6 128 88 800 45 1061 37.6 k/59 7 128 88 800 46 1062 37.6 k/59 8 128 88 800 47 1063 37.6 k/59 9 128 88 800 48 1064 37.5 k/59 10 128 88 800 49 1065 37.5 k/59 11 128 88 800 50 1066 37.4 k/59 12 128 88 800 51 1067 37.4 k/59 13 128 88 800 52 1068 37.4 k/59 14 128 88 800 53 1069 37.4 k/59 15 128 88 800 54 1070 37.3 k/59 Tabel 4.5 Percobaan dengan mengubah Synchronize Pulse pada Vertical Timing Horizontal Timing No Synchronize Back Active Front Whole Clock 1 128 88 800 40 1056 40 MHz Vertical Timing No Synchronize Back Active Front Whole Result 1 1 23 600 1 625 37.8 k/60 2 2 23 600 1 626 37.8 k/60 3 3 23 600 1 627 37.8 k/60 4 4 23 600 1 628 37.8 k/60 5 5 23 600 1 629 37.8 k/60 6 6 23 600 1 630 37.8 k/60 7 7 23 600 1 631 37.8 k/59 8 8 23 600 1 632 37.8 k/59 9 9 23 600 1 633 37.8 k/59 10 10 23 600 1 634 37.8 k/59 11 11 23 600 1 635 37.8 k/59 12 12 23 600 1 636 37.8 k/59 13 13 23 600 1 637 37.8 k/59 14 14 23 600 1 638 37.8 k/59 15 15 23 600 1 639 37.8 k/59 16 16 23 600 1 640 37.8 k/59 17 17 23 600 1 641 37.8 k/59 18 18 23 600 1 642 37.8 k/58
56 19 19 23 600 1 643 37.8 k/58 20 20 23 600 1 644 37.8 k/58 Tabel 4.6 Percobaan dengan mengubah Synchronize Pulse pada Horizontal Timing Vertical Timing No Synchronize Back Active Front Whole Clock 1 4 23 600 1 628 40 MHz Horizontal Timing No Synchronize Back Active Front Whole Result 1 119 88 800 40 1047 38.1 k/60 2 120 88 800 40 1048 38.1 k/60 3 121 88 800 40 1049 38.1 k/60 4 122 88 800 40 1050 38 k/60 5 123 88 800 40 1051 38 k/60 6 124 88 800 40 1052 37.9 k/60 7 125 88 800 40 1053 37.9 k/60 8 126 88 800 40 1054 37.9 k/60 9 127 88 800 40 1055 37.8 k/60 10 128 88 800 40 1056 37.8 k/60 11 129 88 800 40 1057 37.8 k/60 12 129 88 800 40 1058 37.7 k/60 13 130 88 800 40 1059 37.7 k/60 14 131 88 800 40 1060 37.7 k/60 15 132 88 800 40 1061 37.6 k/59 16 133 88 800 40 1062 37.6 k/59 17 134 88 800 40 1063 37.5 k/59 18 135 88 800 40 1064 37.5 k/59 19 136 88 800 40 1065 37.5 k/59 20 137 88 800 40 1066 37.4 k/59 4.3.1.1 Analisa nilai Back Porch Berdasarkan percobaan yang telah dilakukan terhadap nilai back porch maka dapat diketahui bahwa jika nilai back
57 porch dikurangkan maka daerah visible akan semakin besar dan akan mengakibatkan tampilan pada monitor terlihat tembus dan jika nilai back porch ditambahkan maka daerah visible akan semakin kecil dan akan mengakibatkan tampilan pada monitor terlihat terpotong. 4.3.1.2 Analisa nilai Front Porch Berdasarkan percobaan yang dilakukan terhadap nilai front porch maka dapat diketahui bahwa jika nilai front porch dikurangkan maka daerah visible akan semakin besar dan akan mengakibatkan tampilan pada monitor terlihat tembus dan jika nilai front porch ditambahkan maka daerah visible akan semakin kecil dan akan mengakibatkan tampilan pada monitor terlihat terpotong. 4.3.1.3 Analisa nilai Synchronize Pulse Berdasarkan percobaan yang dilakukan terhadap nilai synchronize pulse maka dapat diketahui bahwa jika nilai synchronize pulse dikurangkan tampilan monitor akan gelap atau tampilan pada monitor terlihat berkedip-kedip. Sedangkan jika nilai synchronize pulse ditambahkan maka gambar pada monitor akan terlihat tidak berkedip.
58 4.3.1.4 Analisa perhitungan Refresh Rate pada Monitor Berdasarkan percobaan yang telah dilakukan didapatkan rumus untuk menghitung refresh rate monitor secara manual. Cara menghitung refresh rate monitor adalah :
59 4.3.1.5 Analisa percobaan Dip-Switch dan Generic User Switch Berdasarkan percobaan yang dilakukan terhadap DIPswitch (Gambar 4.5) dan generic user switches (Gambar 4.6), didapat bahwa jika DIP-switch diturunkan ke bawah maka bit akan bernilai 1 (active low). Most Significant Bit (MSB) berada pada DIP-switch paling kiri sedangkan Least Significant Bit (LSB) berada pada DIP-switch paling kanan. Gambar 4.5 DIP-switch Nanoboard Gambar 4.6 Generic User Switches Nanoboard
60 Jika nilai bit pada DIP-switch telah ditentukan dan generic user switch merah (SW1), hijau (SW2), dan biru (SW3) ditekan maka akan mempengaruhi warna tampilan, baik pada tampilan huruf keyboard, tampilan RGB (Gambar 4.7) di monitor dan tampilan P (Gambar 4.8) di monitor. Warna yang terlihat pada tampilan huruf keyboard maupun pada P di monitor merupakan hasil dari kombinasi warna merah, hijau, dan biru yang masingmasing bit warna diatur dengan DIP-switch dan generic user switch sebagai penanda bit warna apa yang ingin diubah sesuai dengan pengaturan bit dari DIP-switch. Gambar 4.7 Bit warna merah hijau dan biru menjadi x 7F Gambar 4.8 Kombinasi warna dari merah biru dan hijau Gambar 4.9 Tampilan huruf dari kombinasi warna 4.3.2 Evaluasi Keyboard Pada percobaan terhadap keyboard dilakukan percobaan dengan menekan tombol-tombol yang terdapat pada keyboard.
61 Tabel 4.7 Percobaan terhadap Keyboard 4.3.2.1 Analisa hasil percobaan keyboard Berdasarkan hasil percobaan terhadap keyboard terlihat bahwa tampilan penekanan tombol keyboard pada monitor sesuai dengan yang telah dirancang, yaitu sebesar 10 pixel X 15 pixel. Namun untuk penekanan tombol keyboard lain yang tidak termasuk dalam ruang lingkup akan tampil di monitor sesuai dengan yang tertulis pada tabel 4.7. 4.3.2.2 Analisa Scan Code Keyboard Pada penelitian ini dilakukan pengecekan terhadap data yang diterima dari keyboard dengan menampilkan di User LED seperti yang terlihat pada gambar 4.10a dan gambar 4.10b.
62 Gambar 4. 10a Tampilan saat menekan tombol A (x 1C ) Gambar 4. 10b Tampilan saat menekan tombol S (x 1B ) 4.3.3 Evaluasi Clock Pada percobaan dilakukan perubahan clock pada system. Didapatkan bahwa system dapat berjalan dengan clock 40MHz ± 10%. Jika clock yang diberikan melebihi dari yang telah ditetapkan maka tampilan pada monitor akan tidak sesuai dengan yang telah dirancang.