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 :
4.2
•
Sistem Operasi
: Window XP
•
Compiler
: Xilinx ISE
•
Software
: Altium Designer Summer 08
Implementasi Sistem Pada
bagian
ini
akan
dijelaskan
mengenai
bagaimana
mengoperasikan penelitian, baik secara hardware maupun software.
cara
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 Pulse 1 120
Back Active Front Porch Time Porch 64 800 56
Whole Period 1040
Vertical Timing No Synchronize Pulse 1 6 2 6 3 6 4 6 5 6 6 6 7 6 8 6 9 6 10 6 11 6 12 6 13 6 14 6 15 6
Back Active Front Porch Time Porch 14 600 37 15 600 37 16 600 37 17 600 37 18 600 37 19 600 37 20 600 37 21 600 37 22 600 37 23 600 37 24 600 37 25 600 37 26 600 37 27 600 37 28 600 37
Whole Period 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671
Clock 40 MHz
Result 38.4 k/58 38.4 k/58 38.4 k/58 38.4 k/58 38.4 k/58 38.4 k/58 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/57
53 16 17 18 19 20
6 6 6 6 6
29 30 31 32 33
600 600 600 600 600
37 37 37 37 37
672 673 674 675 676
38.4 k/57 38.4 k/57 38.4 k/57 38.4 k/56 38.4 k/56
Tabel 4.2 Percobaan dengan mengubah Back Porch pada Horizontal Timing Vertical Timing No Synchronize Pulse 1 6
Back Active Front Porch Time Porch 22 600 38
Whole Period 666
Horizontal Timing No Synchronize Pulse 1 120 2 120 3 120 4 120 5 120 6 120 7 120 8 120 9 120 10 120 11 120 12 120 13 120 14 120 15 120 16 120 17 120 18 120 19 120 20 120
Back Active Front Porch Time Porch 55 800 56 56 800 56 57 800 56 58 800 56 59 800 56 60 800 56 61 800 56 62 800 56 63 800 56 64 800 56 65 800 56 66 800 56 67 800 56 68 800 56 69 800 56 70 800 56 71 800 56 72 800 56 73 800 56 74 800 56
Whole Period 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050
Clock 40 MHz
Result 38.7 k/58 38.7 k/58 38.6 k/58 38.6 k/58 38.6 k/58 38.5 k/57 38.5 k/57 38.5 k/57 38.4 k/57 38.4 k/57 38.3 k/57 38.3 k/57 38.3 k/57 38.2 k/57 38.2 k/57 38.2 k/57 38.1 k/57 38.1 k/57 38 k/57 38 k/57
54 Tabel 4.3 Percobaan dengan mengubah Front Porch pada Vertical Timing Horizontal Timing No Synchronize Pulse 1 128
Back Active Front Porch Time Porch 88 800 40
Whole Period 1056
Vertical Timing No Synchronize Pulse 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 4 12 4 13 4 14 4 15 4
Back Active Front Porch Time Porch 23 600 1 23 600 2 23 600 3 23 600 4 23 600 5 23 600 6 23 600 7 23 600 8 23 600 9 23 600 10 23 600 11 23 600 12 23 600 13 23 600 14 23 600 15
Whole Period 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642
Clock 40 MHz
Result 37.8 k/60 37.8 k/60 37.8 k/60 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/58
Tabel 4.4 Percobaan dengan mengubah Front Porch pada Horizontal Timing Vertical Timing No Synchronize Back Active Front Pulse Porch Time Porch 1 4 23 600 1
No 1 2 3 4
Synchronize Back Active Front Pulse Porch Time Porch 128 88 800 40 128 88 800 41 128 88 800 42 128 88 800 43
Whole Period 628
Whole Period 1056 1057 1058 1059
Clock 40 MHz
Result 37.8 k/60 37.8 k/60 37.7 k/60 37.7 k/60
55 5 6 7 8 9 10 11 12 13 14 15
128 128 128 128 128 128 128 128 128 128 128
88 88 88 88 88 88 88 88 88 88 88
800 800 800 800 800 800 800 800 800 800 800
44 45 46 47 48 49 50 51 52 53 54
1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070
37.7 k/60 37.6 k/59 37.6 k/59 37.6 k/59 37.5 k/59 37.5 k/59 37.4 k/59 37.4 k/59 37.4 k/59 37.4 k/59 37.3 k/59
Tabel 4.5 Percobaan dengan mengubah Synchronize Pulse pada Vertical Timing Horizontal Timing No Synchronize Pulse 1 128
Back Active Front Porch Time Porch 88 800 40
Whole Period 1056
Vertical Timing No Synchronize Pulse 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18
Back Active Front Porch Time Porch 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1 23 600 1
Whole Period 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642
Clock 40 MHz
Result 37.8 k/60 37.8 k/60 37.8 k/60 37.8 k/60 37.8 k/60 37.8 k/60 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/59 37.8 k/58
56 19 20
19 20
23 23
600 600
1 1
643 644
37.8 k/58 37.8 k/58
Tabel 4.6 Percobaan dengan mengubah Synchronize Pulse pada Horizontal Timing Vertical Timing No Synchronize Pulse 1 4
Back Active Front Porch Time Porch 23 600 1
Whole Period 628
Horizontal Timing No Synchronize Pulse 1 119 2 120 3 121 4 122 5 123 6 124 7 125 8 126 9 127 10 128 11 129 12 129 13 130 14 131 15 132 16 133 17 134 18 135 19 136 20 137
Back Active Front Porch Time Porch 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40 88 800 40
Whole Period 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066
4.3.1.1
Clock 40 MHz
Result 38.1 k/60 38.1 k/60 38.1 k/60 38 k/60 38 k/60 37.9 k/60 37.9 k/60 37.9 k/60 37.8 k/60 37.8 k/60 37.8 k/60 37.7 k/60 37.7 k/60 37.7 k/60 37.6 k/59 37.6 k/59 37.5 k/59 37.5 k/59 37.5 k/59 37.4 k/59
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.