• Tidak ada hasil yang ditemukan

Tutorial NIOS II dengan Quartus II 9.0

N/A
N/A
Protected

Academic year: 2021

Membagikan "Tutorial NIOS II dengan Quartus II 9.0"

Copied!
16
0
0

Teks penuh

(1)

Tutorial NIOS II dengan Quartus II 9.0

1. Buka Start  Program  Altera  Quartus II 9.0

2. Klik File  New Project Wizard, tentukan lokasi folder tempat kita menyimpan project kemudian beri nama project tersebut dan klik Next. Contoh seperti pada gambar dibawa: project diberi nama ProjectPertama dan di simpan di folder C:\altera\90\quartus\myproject\agusbj

(2)

3. Jika anda baru pertama kali membuat project ini maka klik Next untuk tampilan seperti berikut.

4. Pilih keluarga FPGA yang anda gunakan. Sebagai contoh disini saya menggunakan FPGA Altera keluarga Cyclone III yaitu EP3C25F324C6. Lalu klik Next.

(3)

5. Klik Next untuk tampilan berikut.

6. Akan muncul resume tentang project yang akan dibuat. Klik Finish.

7. Sekarang kita siap untuk membuat detil teknis project. Dalam setiap rancangan system digital, kita memerlukan Top-Level desain, yaitu kerangka desain pada level paling atas. Untuk kemudahan maka dalam tutorial ini saya berikan contoh Top-Level desain dengan menggunakan skematik (cara lain bisa juga dengan VHDL tetapi tidak digunakan dalam tutorial ini). Klik File  New  pilih Block

(4)

Diagram/Schematic File.

8. Klik tombol Symbol Tool kemudian cari symbol input di bagian primitives/pin seperti terlihat pada gambar kemudian beri nama CLOCK.

9. Lakukan hal yang sama untuk pin output dan beri nama LED[3..0]. Juga letakan simbol VCC di bagian di bagian primitives/other sehingga kesemuanya terlihat pada gambar dibawah. Jangan lupa simpan dulu top-level desain anda, klik File  Save misal disimpan dengan nama ProjectPertama.bdf

(5)

10. Berikutnya kita akan mulai merancang system berbasis NIOS II. Klik menu Tools  SOCP Builder. Akan terlihat tampilan sebagai berikut. Beri nama system kita dan pilih bahasa yang digunakan. Contoh beri nama mynios dan pilih VHDL.

11. Pada tab System Contens pilih Memories and Memory Controllers On-Chip  On-Chip Memory (RAM or ROM) lalu klik kanan  Add

(6)

12. Isikan sebagai berikut dan biarkan parameter yang lain sesuai default lalu klik Finish.

 Memory Type : RAM  Block Type : Auto  Data Width : 32

 Total Memory Size : 20 KBytes

13. Lakukan hal yang sama untuk menambahkan soft-core prosesor NIOS. Isikan parameter berikut dan biarkan parameter yang lain sesuai default. Klik Finish.  Select a Nios II core : Nios II/s

 Reset Vector Memory : onchip_memory2_0  Exception Vector Memory : onchip_memory2_0

(7)

14. Tambahkan pula JTAG UART di bagian Interface Protocols  Serial  JTAG UART dan biarkan semua sesuai default lalu klik Finish.

15. Tambahkan safeguard di bagian Peripherals  Debug and Performance  System ID Peripheral lalu klik Finish. Pada bagian sysid_0 klik kanan kemudian rename menjadi sysid.

(8)

16. Tambahkan Timer di bagian Peripheral  Microcontroller Peripherals  Interval Timer. Isikan Timer Period : 1 ms, Counter Size : 32 bits dan Hardware Options Presets : Full Featured

17. Tambahkan port I/O di bagian Peripheral  Microcontroller Peripherals  PIO. Pada tutorial ini port I/O dengan lebar 4 bit akan dihubungkan ke lampu LED. Sehingga isikan parameter Width : 4 dan Direction : Output ports only.

(9)

18. Ubahlah nilai IRQ pada peripheral JTAG UART menjadi 16 sehingga tampilan keseluruhan peripheral yang telah ditambahkan seperti terlihat pada gambar berikut.

19. Quartus II versi 9.0 sebenarnya telah melakukan mapping memory dan IRQs secara otomatis. Namun anda dapat melakukanya secara manual dengan cara

(10)

System  Auto-Assign Base Address dan System  Auto-assign IRQs. 20. Simpan system nios desain file, klik File  Save.

21. Langkah berikutnya adalah melakukan generation system untuk menghasilkan rangkaian yang sesuai dengan desain system nios diatas dalam VHDL. Caranya adalah klik tombol Generate. Jika tidak terdapat error maka akan muncul pesan “System generation was successful” seperti terlihat pada gambar berikut.

22. Klik tombol Exit.

23. Untuk melengkapi Top-level desain pada jendal Quartus II, klik Symbol Tool kemudian pilih mynios di bagian project. Selanjutnya hubungkan port CLOCK dengan pin clk_0, VCC pada pin reset_n dan port LED[3..0] pada pin out_port_from_the_pio_0[3..0] seperti pada gambar berikut. Perhatikan bahwa gunakan Orthogonal Node Tool untuk menghubungkan pin clk_0 dan resete_n sedangkan gunakan Orthogonal Bus Tool untuk jalur LED[3..0].

(11)

24. Simpan Top-Level Desain, klik File  Save.

25. Klik menu Assigments  Pins. Isikan lokasi pin FPGA yang bersesuaian dengan hardware development board yang kita gunakan. Detil penempatan pin bisa dilihat pada panduan atau datasheet untuk development board yang digunakan. Pada tutorial ini penempatan pin seperti terlihat pada gambar berikut :

26. Proses selanjutnya adalah kompilasi atau synthesizing. Klik menu Processing  Start Compilation. Jika tidak terdapat error maka akan dihasilkan file dengan ekstensi .sof (ProjectPertama.sof) dan muncul pesan sebagai berikut.

27. Sampai disini hardware platform system yang kita rancang sudah selesai dan siap kita download ke dalam IC FPGA. Caranya adalah Klik Tools  Programmer.

(12)

Akan muncul jendela baru seperti terlihat pada gambar diatas. Pastikan bahwa pada Hardware Setup sudah menunjuk pada USB-Blaster yaitu tool JTAG untuk mendownload file *.sof ke FPGA. Untuk mendownload klik tombol Start.

28. Sekarang kita sudah memiliki hardware yang siap untuk digunakan. Hardware yang kita buat sampai disini bisa di ibaratkan sebagai sebuah mikrokontroler. Untuk dapat bekerja tentu kita memerlukan program atau software didalamnya. Langkah berikut ini akan menjelaskan bagian perancangan softwarenya. Tools NIOS II adalah sebuah software development kit yang dirancang khusus untuk hal itu.

29. Klik Start  Program  Altera  NIOS II 9.0. Akan muncul tampilan sebagai berikut.

(13)

30. Klik File  New  Nios II C/C++ Application. Beri nama program kita, contoh myfirstcode. Browse file *.ptf (mynios.ptf) untuk SOPC Builder System PTF File, dan pilih Blank Project pada bagian Select Project Template seperti gambar berikut lalu klik Finish.

31. Klik File  New  Source File. Isikan Source Folder dengan myfirstcode dan Source File dengan myfirstcode.c lalu klik Finish.

(14)

32. Tuliskan kode berikut pada file myfirstcode.c lalu save. #include <stdio.h> #include "alt_types.h" #include "altera_avalon_pio_regs.h" #include "sys/alt_irq.h" #include "system.h" #include <unistd.h> static alt_u8 count; int main()

{

printf("Hello from Nios II, I am agusbj! "); count = 0; while (1) { IOWR_ALTERA_AVALON_PIO_DATA(LED_PIO_BASE,~count); usleep(1000000); count++; } return 0; }

33. Lakukan setingan compiler sebagai berikut untuk meminimalkan ukuran file program sehingga cukup untuk memory yang telah disediakan oleh hardware. Klik kanan folder myfirstcode System Library Properties lalu klik OK.

(15)

Check Program never exits Uncheck Support C++

Uncheck Clean exit (flush buffers) Check Small C library

34. Untuk mengkompile program diatas klik kanan folder myfirstcode  Build Project.

35. Jika tidak terdapat error maka akan muncul resume hasil kompilasi dan file dengan ekstensi *.elf (myfirstcode.elf) seperti terlihat pada gambar berikut.

36. Sekarang kita akan mendowload hasil file kompilasi diatas (myfirstcode.elf) kedalam hardware yang telah kita konfigurasi sebelumnya (seolah-olah seperti mikrokontroler). Klik Run  Run… Klik kanan Nios II Hardware  Add lalu klik tombol Run.

37. Jika program berhasil maka akan terlihat 4 lampu LED yang menyala berurutan merepresentasikan sebuah counter atau bilangan yang mencacah naik. Selain itu

(16)

pada tab Console juga akan muncul tulisan . "Hello from Nios II, I am agusbj!”

sebagai respon dari perintah printf("Hello from Nios II, I am agusbj! ") seperti terlihat pada gambar dibawah. Perlu diketahui bahwa kita memilih peripheral JTAG UART, ini artinya USB-Blaster yang kita gunakan setelah selesai digunakan sebagai JTAG untuk mendownload program dan bitstream maka selanjutnya akan berfungsi sebagai UART sehingga kita dapat menerima data yang dikirimkan melalui perintah printf. Catatan: setingan stdout dan stdin harus sesuai.

38. Selamat mencoba semoga berhasil

Kunieda-Isshiki Laboratory, 5 November 2009 Agus Bejo

Referensi

Dokumen terkait

gan dari algor tma Lowest C -First mencari nilai heuristic ritma yang men yang terdapat p gnakan kedua Pencarian akan Algo etia Racana ndung 40132, e dapat guna alam , dan

Dalam rangka memenuhi prinsip keberlanjutan (sustainability) dari industri pertambangan, dan untuk mempertahankan haknya dalam mengakses Sumberdaya demi kepentingan bersama,

 Menyatakan diri sebagai bagian dari NII Kartosuwiryo  Diselesaikan dengan Musyawarah Kerukukan Rakyat Aceh C..

Humbang Hasundutan Pendidikan Jasmani dan Kesehatan 42 15071902710300 HONDA SIHOTANG Kab.. Humbang Hasundutan Guru

Admin Input Data Admin Olah Data Admin Admin Member Input Data Member Olah Data Member Member Paket Input Data Paket Olah Data Paket Paket Detail Paket Jasa Input Data

Disini seorang Guru Mata Pelajaran diketahui dapat memberikan ilmu dengan Menggunakan Media Audio Visual berupa tampilan Gambar dan suara yang dapat benar-benar

Manfaat PHBS di lingkungan sekolah yaitu agar terwujudnya sekolah yang bersih dan sehat sehingga siswa, guru dan masyarakat lingkungan sekolah terlindungi dari berbagai

Dari indikator kejelasan tujuan yang hendak dicapai, rata-rata tanggapan responden menyatakan sudah sangat baik; Dari indikator kejelasan strategi pencapaian