BAB 3. Perancangan Sistem

dokumen-dokumen yang mirip
Pengenalan FPGA oleh Iman Taufik Akbar

Perancangan Aritmetic Logic Unit (ALU) pada FPGA

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 3 Stopwatch

I. Pendahuluan. II. Tujuan. III. Gambaran Disain. MODUL 4 Kalkulator 4-bit

MODUL 6 PROYEK PERANCANGAN RANGKAIAN DIGITAL

MODUL TRAINING PRAKTIKUM MENGGUNAKAN FPGA

BAB 3 PERANCANGAN SISTEM

MODUL 6 PROYEK PERANCANGAN RANGKAIAN DIGITAL 2. STUDI PUSTAKA

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB III PERANCANGAN ALAT

MODUL II Perancangan FPGA untuk Implementasi Rangkaian Sequential dan Kombinational

MULTIPLEKSER BERBASIS PROGRAMMABLE LOGIC DEVICE (PLD)

LAB #3 PENGENALAN VHDL DAN PEMROGRAMAN IC GAL MENGGUNAKAN ALL-11 UNIVERSAL PROGRAMMER

QUARTUS DAN CARA PENGGUNAANNYA

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III METODE PENELITIAN

DEKODER BINER KE DESIMAL BERBASIS PROGRAMMABLE LOGIC DEVICE (PLD)

BAB 1. Pendahuluan. diprogram secara digital ditemukan seperti IC sederhana seperti General Array

Lampu lalu lintas sederhana berbasis Field Programmable Gate Array (FPGA) menggunakan Finite State Machine

Teknologi Implementasi dan Metodologi Desain Sistem Digital

PROYEK PERANCANGAN RANGKAIAN DIGITAL : THUNDERBURD TAIL LIGHTS. Mochammad Fadhli Zakiy, Rizki Satya Utami

TUTORIAL. Tabel Kebenaran Full Adder : Cin B A Sum Cout

Pengenalan VHDL. [Pengenalan VHDL]

PERCOBAAN 3D : MERANCANG SEBUAH KALKULATOR SEDERHANA

BAB III PERENCANAAN DAN REALISASI SISTEM

Percobaan IV PENGENALAN VHDL

BAB III PERANCANGAN SISTEM

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

BAB III PERANCANGAN DAN REALISASI SISTEM

BAB III METODE PENELITIAN. Bahan komponen yang digunakan untuk pembuatan rangkaian modul. adalah sebagai berikut : 3. Kapasitor 22nF dan 10nF

TUTORIAL PEMROGRAMAN PADA FPGA XILINX VIRTEX 5 ML506 BOARD

Read Only Memory (ROM) berbasis Field Programmable Gate Array (FPGA) menggunakan VHDL (VHSIC Hardware Description Language)

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB IV IMPLEMENTASI DAN EVALUASI

1 Tujuan dan Sasaran. 2 Alat dan Bahan. 3 Dasar Teori. Praktikum Sistem Digital Lanjut Percobaan 3: Dekoder 3-ke-8 dan Demultiplekser 1-ke-8

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN ALAT

BAB 4 IMPLEMENTASI DAN EVALUASI. selanjutnya perancangan tersebut diimplementasikan ke dalam bentuk yang nyata

BAB III PERENCANAAN DAN PEMBUATAN PERANGKAT LUNAK

Petunjuk Dasar Pemrograman Mikrokontroller dengan Module. IW-16 USB Mikrokontroller AVR ATmega 16

BAB 3 PERANCANGAN SISTEM

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O,

BAHASA PEMROGRAMAN VHDL

BAB 3 METODE PENELITIAN

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III METODE PENELITIAN

BAB 1 PENDAHULUAN. dengan teknologi digital, maka perangkat tersebut memiliki sebuah integrated

BAB III PROSES PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III PERANCANGAN SISTEMKENDALI PADA EXHAUST FAN MENGGUNAKAN SMS GATEWAY

Laboratorium Dasar Teknik Elektro - Sekolah Teknik Elektro dan Informatika ITB

BAB 1l DASAR TEORI 2.1. NODEMCU V3

DAFTAR ISI KATA PENGANTAR... DAFTAR ISI... DAFTAR TABEL... xiv. DAFTAR GAMBAR... xvi BAB I PENDAHULUAN Kontribusi... 3

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III ANALISIS DAN PERANCANGAN

DAFTAR ISI. HALAMAN PENGESAHAN... i. KATA PENGANTAR... iii. DAFTAR ISI... v. DAFTAR TABEL... x. DAFTAR GAMBAR... xi. DAFTAR LAMPIRAN...

Petunjuk Dasar Pemrograman Mikrokontroller dengan Module IW-32A USB Miktokontroller AVR ATmega32A

BAB IV PENGUJIAN DAN ANALISA

Membuat Project dengan CodeVisionAVR.

BAB IV HASIL DAN UJI COBA

BAB 3 PERANCANGAN DAN PEMBUATAN SISTEM

BAB III PERANCANGAN ALAT PENDETEKSI KERUSAKAN KABEL

BAB IV PENGUJIAN DAN ANALISA

BAB III PEMBUATAN ALAT Tujuan Pembuatan Tujuan dari pembuatan alat ini yaitu untuk mewujudkan gagasan dan

BAB III PERENCANAAN. 3.1 Perencanaan Secara Blok Diagram

BAB III METODOLOGI PENELITIAN. Adapun blok diagram modul baby incubator ditunjukkan pada Gambar 3.1.

BAB III PERANCANGAN DAN IMPLEMENTASI SISTEM

BAB III ANALISA DAN PERANCANGAN ALAT

BAB III PERANCANGAN ALAT

BAB IV HASIL DAN UJI COBA

PENGATUR KADAR ALKOHOL DALAM LARUTAN

BAB III ANALISIS DAN PERANCANGAN

BAB III METODOLOGI PENELITIAN. Berikut adalah gambar blok diagram :

BAB 3 PERANCANGAN SISTEM

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN SISTEM. untuk efisiensi energi listrik pada kehidupan sehari-hari. Perangkat input untuk

BAB III ANALISIS DAN PERANCANGAN

BAB III DESAIN DAN PENGEMBANGAN SISTEM

BAB IV HASIL DAN UJI COBA

BAB III ANALISIS DAN DESAIN SISTEM

BAB 3 PERANCANGAN SISTEM. sederhana, ditunjukan pada blok diagram dibawah ini.

III. METODE PENELITIAN. Penelitian dan perancangan tugas akhir ini telah dimulai sejak bulan Agustus

DAFTAR ISI Daerah SR(Special Relay) Daerah TR(Tempory Relay) Daerah DM (Data Memory) Daerah HR(Holding Relay)..

MATERI PELATIHAN VHDL UNTUK SINTESIS

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BAB II SIMULATOR XILINX PADA RANGKAIAN DIGITAL SEDERHANA

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. software arduino memiliki bahasa pemrograman C.

BAB IV HASIL DAN UJI COBA

Programmable Peripheral Interface 8255

BAB III METODOLOGI PENELITIAN. Gambar blok diagram dari sistem kerja alat dapat dilihat pada Gambar 3.1

BAB III PERANCANGAN DAN REALISASI ALAT

BAB III PERANCANGAN DAN PEMBUATAN

BAB III PERENCANAAN DAN PEMBUATAN ALAT

BAB IV HASIL DAN UJI COBA

Transkripsi:

BAB 3 Perancangan Sistem 3.1 Rancangan Sistem Rancangan Sistem secara keseluruhan dapat dilihat pada Gambar 3.1 Gambar 3.1 Blok Diagram Sistem Berdasarkan Gambar 3.1 mengenai Blok Diagram Sistem terdapat tiga (3) bagian blok sistem yaitu Blok FPGA Spartan 3AN XC3S700AN, Blok Output LED, Blok Komputer/PC, Blok Output LCD. Blok sistem FPGA Spartan 3AN XC3S700AN yaitu berisi tentang bagaimana data dapat dikirim melalui Modul FPGA Spartan 3AN XC3S700AN ke Modul Modul Output lainnya. Dan FPGA Spartan 3AN XC3S700AN dapat mengatur hasil Output melalui Switch / Push Button yang terdapat didalam Modul FPGA Spartan 3AN XC3S700AN 32

untuk dapat menentukan nilai akhir dari Output yang dihasilkan, Berdasarkan yang kita inginkan setelah dilakukan pemrograman dengan mengunakan bahasa VHDL. Blok Komputer / PC yaitu berisi tentang cara memproses data yang sudah dibuat atau dirancang dengan menggunakan suatu Sofware Xilinx Ise 11, lalu data tersebut dikirim menuju FPGA Spartan 3AN XC3S700AN ke Modul Modul Outputnya lainnya. Switch / Push Button Berfungsi sebagai penghubung antara FPGA Spartan 3AN XC3S700AN ke modul Output berupa LED dan 7- Segment. Dengan sistem sebagai berikut: Data yang berasal dari sebuah modul FPGA Spartan 3AN XC3S700AN yang sudah di program menggunakan bahasa VHDL, lalu ditembakkan dengan alamat yang sudah di tentukan ke modul Switch / Push Button sesuai dengan karekteristik FPGA tersebut. Bila salah satu Switch / Push Button ditekan/digeser berdasarkan nilai logika yang telah ditentukan. maka data yang berasal dari Switch ini akan dikirimkan kembali ke Modul FPGA Spartan 3AN XC3S700AN lalu data tersebut diteruskan menuju Modul Output LED untuk menunjukan nilai hasil Output. Blok Modul Output LED atau 7-Segment yaitu berisi tentang bagaimana cara menampilkan Inputan yang diberikan atau dikirimkan oleh FPGA Spartan XC3S700AN menuju Modul Output LED. Nilai input yang diberikan kedalam FPGA Spartan XC3S700AN harus sama dengan nilai Output yang dihasilkan. Bila tidak sesuai dengan nilai input dan Outputnya maka telah terjadi sebuah 33

kesalahan pada sebuah pemrogramannya atau pada Modul FPGA Spartan 3AN XC3S700AN terjadi kerusakan. Bisa juga terjadi kerusakan pada sebuah modul Output. Blok Modul Output LCD yaitu berisi tentang bagaimana cara menampilkan Inputan yang diberikan atau dikirimkan oleh FPGA Spartan 3AN XC3S700AN menuju Modul Output LCD. Data yang dikirimkan oleh Komputer berupa data ASCII pada karakter yang digunakan oleh LCD. Data Input dan Data Output harus sama dengan nilai Output yang dihasilkan oleh LCD. Bila pada keyboard kita tekan Huruf A dan kita masukan ASCII Huruf A pada pemrogramannya, maka nilai Output yang dihasilkan oleh LCD harus sama dengan yang diminta atau diprogram. Bila nilai Output pada LCD tidak sama maka terjadi pada kesalahan pada Program yang telah dibuat, atau bisa terjadi kerusakan pada Modul LCD itu sendiri. Atau bisa juga terjadi kerusakan pada cabel data yang digunakan dalam memprogram data. 3.1.1 Perangkat Keras 3.1.1.1 Modul FPGA FPGA yang digunakan dalam penyusunan skripsi ini, kami menggunakan FPGA Spartan 3AN XC3S700AN keluaran Xilinx dan Spesifikasinya adalah : 34

Gambar 3.2 Konfigurasi Spartan 3AN 1. Periksa kembali pengaturan jumper seperti pada Gambar 3.3 2. Jika diperlukan sambungkan perangkat tampilan VGA. Perangkat dapat berupa sebuah CRT, flatpanel, atau bahkan proyektor. 3. Jika diperlukan sambungkan headphone atau speaker ke audio jack. 4. Atur switch SUSPEND ke posisi RUN. 5. Sambungkan AC adaptor ke listrik dan modul FPGA. Gunakan sambungan yang sesuai. 6. Nyalakan switch power. 7. LCD dan tampilan VGA jika sudah terpasang dengan benar akan menampilan berbagai informasi dan instruksi. 8. Gunakan putaran atau pushbutton untuk mengendalikan berbagai fungsi FPGA. 9. Jika diperlukan sambungkan PS/2 keyboard untuk mendukung rancangan. 35

10. Jika diperlukan sambungkan sebuah komputer ke 9-pin serial cable. Gambar 3.3 Pengaturan jumper Spartan 3 AN 3.1.1.2 Modul FPGA Spartan 3AN XC3S700AN Modul FPGA Spartan 3AN XC3S700AN adalah sebuah modul FPGA dengan menggunakan FPGA keluaran Xilinx. FPGA ini berfungsi memroses data secara tepat dan akurat dengan jumlah memory yang lebih banyak dibanding dengan Mikrokontroller. FPGA Spartan 3AN XC3S700AN mempunyai fitur fitur sebagai berikut: 1. Sambungan PS/2 untuk mouse/keyboard. 2. Tampilan LED. 3. Tampilan LCD. 36

4. Empat slide switch. 5. Empat pushbutton. 6. 50 Mhz sumber clock kristal oscillator. 7. Sambungan untuk tambahan kristal oscillator. 8. Pengaturan FPGA melalui pengaturan jumper. 9. Push button untuk memaksa pengaturan ulang FPGA. 10. Indikator LED ketika FPGA telah berhasil dikonfigurasi. 11. Tiga buah 40-pin koneksi tambahan untuk meningkatkan kinerja FPGA 12. Sambungan JTAG untuk download cable. 13. Digilent JTAG kabel download/debugging menuju ke PC parallel port. 14. JTAG download/debug yang cocok dengan Xilinx Parallel Cable IV dan MultiPRO Desktop Tool. 15. Adaptor AC untuk daya +5V. 16. LED indikator nyala. Gambar 3.4 Modul FPGA Spartan XC3S700AN 3.1.1.3 Modul Output LED 37

Modul Output LED yang digunakan adalah kumpulan beberapa LED sesuai dengan banyaknya bit yang dapat dikeluarkan oleh sebuah modul FPGA Spartan 3AN XC3S700AN. Dan berfungsi untuk melihat tampilan keluaran atau Output yang dihasilkan dari proses pengolahan data di dalam FPGA. 3.1.1.4 Modul Switch atau Push Button. Gambar 3.5 Modul LED Modul Switch atau Push Button yang digunakan adalah kumpulan dari beberapa Switch atau Push Button yang dirangkai atau disusun sesuai dengan banyaknya LED yang terdapat pada Modul Output LED yang telah di jelaskan diatas. Switch ini berfungsi untuk mengatur hasil yang dikeluarkan oleh FPGA Spartan 3AN XC3S700AN dan ditunjukan pada Modul LED sebagai Output. 38

Gambar 3.6 Modul Push Button 3.1.1.5 Kabel USB CABLE Kabel USB CABLE yang digunakan adalah untuk mengirimkan data hasil rancangan dari sebuah PC ke sebuah FPGA Spartan 3AN XC3S700AN. Gambar 3.7 Kabel USB CABLE 3.1.1.6 Power Supply 39

Power Supply digunakan untuk memberikan daya pada FPGA Spartan 3AN XC3S700AN dengan arus DC karena FPGA Spartan 3AN XC3S700AN menggunakan arus DC sebagai daya dalam memproses suatu data. Gambar 3.8 Adaptor Power Supply 3.1.2 Perangkat Lunak Pengembangan driver VGA card dengan menggunakan software Xilinx ISE. Didalam sebuah FPGA Spartan 3AN XC3S700AN tidak lepas dari sebuah pemrograman. Dalam pemrograman digunakan dengan bahasa VHDL. Dalam 40

pemrograman di gunakan sebuah software Xilinx ISE 11 dalam sebuah perancangan program. Gambar 3.9 Xilinx ISE 11 3.1.2.1 Penjelasan Software Jenis FPGA yang digunakan adalah FPGA Spartan 3AN XC3S700AN keluaran xilinx, kemudian pada software menggunakan software Xilinx ISE 11 dalam pemrogramannya. Xilinx ISE 11 menyediakan fitur fitur pemrograman menggunakan bahasa VHDL, Bahasa Verilog,Bahasa C dan Bahasa Assembly. Gambar 3.10 Tampilan Muka Xilinx ISE 41

Untuk memroses FPGA dalam membuat suatu program, dilakukan dengan cara seperti Check Syntax Synthesize Implement Design Program FPGA dengan menggunakan bantuan Software Xilinx Impact 11. Gambar 3.11 Tampilan Muka Xilinx Impact 11 3.1.2.2 Proses Pemrograman FPGA Proses untuk memprogram suatu FPGA adalah sebagai berikut : Compile Synthesize Implement Design ( Translate Design, Map Design to FPGA, 42

Place & Route, Timing Analysis, Generate Programming File) Program FPGA. Proses semua ini dijalankan atau dilakukan dalam Software Xilinx ISE 11. Gambar 3.12 Menu Xilinx ISE 3.1.2.3 Burning Program Proses pemrograman dari Xilinx Ise 11 ke FPGA Spartan 3AN XC3S700AN (Burning FPGA) menggunakan program Xilinx Impact 11. Pertama Program dibuat kedalam bentuk PROM ; Kedua Menuju Ke Boundary Scan dan masukan Device yang telah dibuat melalui PROM. Lalu 43

diproses/program. Dan FPGA akan berjalan berdasarkan program yang dibuat/diinginkan. Gambar 3.13 Menu Tampilan PROM FILE 3.1.3 Skematik Sistem 44

Gambar 3.14 Skematik Sistem Inisialisasi 3.1.4 Potongan Potongan Program VHDL Library dan * Library VHDL yang digunakan : Library IEEE; Use IEEE.std_logic_1164.all; Use IEEE.STD_Logic_Arith.all; Use IEEE.STD_Logic_Unsigned.all; 45

* Inisialisasi pin yang digunakan : entity switch_led is Port ( sw : in STD_LOGIC_VECTOR (3 downto 0); led : out STD_LOGIC_VECTOR (7 downto 0)); end switch_led; 3.1.5 Program VHDL pada FPGA Spartan 3AN XC3S700AN Program Switch LED Display Library IEEE; Use IEEE.std_logic_1164.all; Use IEEE.STD_Logic_Arith.all; Use IEEE.STD_Logic_Unsigned.all; entity switch_led is Port ( sw : in STD_LOGIC_VECTOR (3 downto 0); led : out STD_LOGIC_VECTOR (7 downto 0)); end switch_led; architecture Behavioral of switch_led is begin led <= "00000000" when sw = "0000" else "10000001" when sw = "0001" else "10000010" when sw = "0010" else "10000100" when sw = "0011" else 46

"10001000" when sw = "0100" else "10010000" when sw = "0101" else "10100001" when sw = "0110" else "11010000" when sw = "0111" else "10110000" when sw = "1000" else "10010110" when sw = "1001" else "11101100" when sw = "1010" else "11111111"; end Behavioral; 3.1.6 Program VHDL TestBench Pada FPGA Spartan 3AN XC3S700AN LIBRARY ieee; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; USE ieee.numeric_std.all; ENTITY LED_TESTBENCH IS END LED_TESTBENCH; ARCHITECTURE behavior OF LED_TESTBENCH IS -- Component Declaration for the Unit Under Test (UUT) COMPONENT LED_one PORT( sw : IN std_logic_vector(3 downto 0); 47

led : OUT std_logic_vector(7 downto 0); reset : IN std_logic; clk_50m : IN std_logic ); END COMPONENT; --Inputs signal sw : std_logic_vector(3 downto 0) := (others => '0'); signal reset : std_logic := '0'; signal clk_50m : std_logic := '0'; --Outputs signal led : std_logic_vector(7 downto 0); -- Clock period definitions constant clk_50m_period : time := 1us; BEGIN -- Instantiate the Unit Under Test (UUT) uut: LED_one PORT MAP ( sw => sw, led => led, reset => reset, clk_50m => clk_50m ); -- Clock process definitions clk_50m_process :process begin 48

clk_50m <= '0'; wait for clk_50m_period; clk_50m <= '1'; wait for clk_50m_period; end process; -- Stimulus process stim_proc: process begin -- hold reset state for 100ms. wait for 100ms; --Sample way of setting inputs - reset used as a redundant example. reset <= '1'; wait for 10ns; reset <= '0'; wait for 10ns; wait; end process; END; 49