laporan resmi praktikum vhdl

169
LAPORAN RESMI PRAKTIKUM VHDL Disusun Oleh : FAHRIZAL F UMARILA 08530107

Upload: fahrizal-umarila

Post on 23-Sep-2014

299 views

Category:

Documents


14 download

DESCRIPTION

LAPORAN RESMI PRAKTIKUM VHDL

TRANSCRIPT

LAPORAN RESMI PRAKTIKUM

VHDL

Disusun Oleh :

FAHRIZAL F UMARILA 08530107

LABORATORIUM ELEKTRONIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2011

LEMBAR PERSETUJUANTelah diperiksa dan disetujui Isi laporan ini

LAPORAN PRAKTIKUM VHDL

FAKULTAS TEKNIK LABORATORIUM ELEKTRONIKA UNIVERSITAS MUHAMMADIYAH MALANG

Disusun oleh Nama Nim Kelompok Tgl praktikum : Fahrizal Febrifta Umarila : 08530107 : : 15 Oktober 2011

Malang, Desember 2011 Mengetahui, Kepala Laboratorium Elektronika Menyetujui, Koordinator Asisten Praktikum

Ir. Nur Alif M, M.T

Dwi Ari Cahyanto

2

KATA PENGANTARAssalamualaikum. Wr. Wb Puji syukur ke hadirat Allah Swt yang telah memberikan segala rahmat, nikmat dan hidayahnya. Sehingga saya bisa menyelesaikan tugas dalam pembuatan laporan praktikum kali ini. Sesuai dengan peraturan yang telah diberikan kepada seluruh praktikan yang mengikuti praktikum VHDL ada tahun ini. Bahwa semua laporan yang telah selesai di ACC harus dijadikan satu dan disusun dalam bentuk sudah dijilid. Dan oleh karena itu maka laporan ini dibuat. Kesemua data yang terkait dengan praktikum yang materinya saya ikuti dapat didapatkan di blog saya di www.elektronika2008.blogspot.com juga pada www.sribd.com semoga saja semua ini nantinya dapat membantu praktikan lainnya untuk memahami dengan baik, juga bagi saya agar dengan pengetahuan yang sudah ada ini semakin berkembang dan bertambah. Saya ingin mengucapkan terima kasih kepada orang orang yang berada di sekitar saya yang sudah membantu banyak sekali dalam penyelesaian laporan ini. Ucapan terima kasih saya berikan kepada : 1. Istri saya tercinta, Eki Mahbubati Nazwa, yang sudah memberikan support yang luar biasanya dalam mengerjakan laporan ini. 2. Anak saya yang berada dalam kandungan, yang terus memberikan saya semangat walaupun tanpa berkata kata. 3. Orang tua, yang sudah melahirkan saya. 4. Teman teman satu jurusan yang sudah banyak membantu dalam memberikan data yang benar benar kompeten dan benar. Dalam penulisan laporan ini, saya yakin tidak semuanya akan benar benar sempurna 100 %. Maka saya mohon maaf atas segala kesalahan yang sudah ada dalam penulisan ini baik disengaja ataupun tidak. Untuk kritik dan saran saya terima secara langsung, atau bisa lewat email di [email protected] Akhir kata saya ucapkan terima kasih sebanyak banyaknya dan Wassalamualaikum. Wr. Wb

Salam Hormat Penyusun

Fahrizal F Umarila 08530107 3

DAFTAR ISILEMBAR PERSETUJUAN ..................................................................................................... 2 KATA PENGANTAR ............................................................................................................... 3 DAFTAR ISI .............................................................................................................................. 4 DAFTAR GAMBAR ................................................................................................................. 9 DAFTAR TABEL .................................................................................................................... 10

LEMBAR ASISTENSI............................................................................................................ 11 BAB I ........................................................................................................................................ 12 1.1 1.2 Pengertian VHDL ....................................................................................................... 12 Struktur Program VHDL ............................................................................................ 12 Entity Declaration ................................................................................................ 13 Architecture Body................................................................................................ 15

1.2.1 1.2.2 1.3 1.4

Proses Pemrograman VHDL ...................................................................................... 15 Makalah VHDL .......................................................................................................... 17

LEMBAR ASISTENSI............................................................................................................ 25 BAB II ....................................................................................................................................... 26 2.1 2.2 TUJUAN ..................................................................................................................... 26 DASAR TEORI .......................................................................................................... 26 Compiler Warp .................................................................................................... 26 Simulator Nova .................................................................................................... 29

2.2.1 2.2.2 2.3 2.4

PERCOBAAN ............................................................................................................ 30 TUGAS ....................................................................................................................... 32 Tugas Rangkaian 3 Kombinasi Logika Dasar ..................................................... 33 Gambar Rangkaian Logika........................................................................... 33 Listing Program ............................................................................................ 33 Tabel Kebenaran .......................................................................................... 33 Simulasi NOVA ........................................................................................... 34 Report File .................................................................................................... 34 4 2.4.1.1 2.4.1.2 2.4.1.3 2.4.1.4 2.4.1.5

2.4.1

2.5 2.6

Analisa Hasil Percobaan ............................................................................................. 40 Kesimpulan Percobaan ............................................................................................... 42

LEMBAR ASISTENSI............................................................................................................ 43 BAB III ..................................................................................................................................... 44 3.1 3.2 TUJUAN ..................................................................................................................... 44 DASAR TEORI .......................................................................................................... 44 Rangkaian Combinational ................................................................................... 44 Multiplexer .......................................................................................................... 45 Dekoder ............................................................................................................... 46

3.2.1 3.2.2 3.2.3 3.3 3.4

PERCOBAAN ............................................................................................................ 46 TUGAS ....................................................................................................................... 47 Tugas Multiplexer 4 Masukan ............................................................................. 48 Gambar Rangkaian Logika........................................................................... 48 Listing Program ............................................................................................ 48 Tabel Kebenaran .......................................................................................... 49 Simulasi NOVA ........................................................................................... 49 Report File .................................................................................................... 50 Gambar Rangkaian Logika........................................................................... 56 Listing Program ............................................................................................ 56 Tabel Kebenaran .......................................................................................... 57 Simulasi NOVA ........................................................................................... 57 Report File .................................................................................................... 58 Gambar Rangkaian Logika........................................................................... 64 Listing Program ............................................................................................ 64 Tabel Kebenaran .......................................................................................... 66 Simulasi NOVA ........................................................................................... 66 Report File .................................................................................................... 67 3.4.1.1 3.4.1.2 3.4.1.3 3.4.1.4 3.4.1.5

3.4.1

3.4.2

Tugas Demultiplexer Keluaran 4 ......................................................................... 56

3.4.2.1 3.4.2.2 3.4.2.3 3.4.2.4 3.4.2.5 3.4.3 3.4.3.1 3.4.3.2 3.4.3.3 3.4.3.4 3.4.3.5 3.5 3.6

Tugas Rangkaian Decoder 3 Ke 8 ....................................................................... 64

Analisa Percobaan ....................................................................................................... 73 Kesimpulan Percobaan ............................................................................................... 75

5

LEMBAR ASISTENSI............................................................................................................ 76 PERCOBAAN IV .................................................................................................................... 77 4.1 4.2 4.3 TUJUAN ..................................................................................................................... 77 DASAR TEORI .......................................................................................................... 77 PERCOBAAN ............................................................................................................ 79 Program 1 : .......................................................................................................... 79 Program 2 : .......................................................................................................... 80 Program 3 : .......................................................................................................... 80 Tugas Membuat Rangkaian Sequensial ............................................................... 82 Gambar Rangkaian Logika........................................................................... 82 Listing Program ............................................................................................ 82 Tabel Kebenaran .......................................................................................... 83 Simulasi NOVA ........................................................................................... 83 Report File .................................................................................................... 83

4.3.1 4.3.2 4.3.3 4.4 4.4.1

TUGAS ....................................................................................................................... 81 4.4.1.1 4.4.1.2 4.4.1.3 4.4.1.4 4.4.1.5

4.5

Analisa Percobaan ....................................................................................................... 89

LEMBAR ASISTENSI............................................................................................................ 93 PERCOBAAN V ...................................................................................................................... 94 5.1 5.2 TUJUAN ..................................................................................................................... 94 DASAR TEORI .......................................................................................................... 94 DESKRIPSI STRUKTURAL ............................................................................. 94 DESKRIPSI BEHAVIORAL .............................................................................. 95 DESKRIPSI DATA FLOW................................................................................. 96 Program 1 (Structural) : ....................................................................................... 96 Program 2 (Behavioral) : ..................................................................................... 97 Program 3 (Data Flow) : ...................................................................................... 98 Tugas Membuat Rangkaian Up / Down Counter ................................................ 99 Gambar Rangkaian Logika........................................................................... 99 Listing Program ............................................................................................ 99 6

5.2.1 5.2.2 5.2.3 5.3 5.3.1 5.3.2 5.3.3 5.4 5.4.1

PERCOBAAN ............................................................................................................ 96

TUGAS ....................................................................................................................... 98 5.4.1.1 5.4.1.2

5.4.1.3 5.4.1.4 5.4.1.5 5.4.2 5.4.2.1 5.4.2.2 5.4.2.3 5.4.2.4 5.4.2.5 5.4.3 5.4.3.1 5.4.3.2 5.4.3.3 5.4.3.4 5.4.3.5 5.4.4 5.4.4.1 5.4.4.2 5.4.4.3 5.4.4.4 5.4.4.5 5.5 5.5.1 5.5.2 5.5.3 5.6

Tabel Kebenaran ......................................................................................... 99 Simulasi NOVA ......................................................................................... 100 Report file ................................................................................................... 100 Gambar Rangkaian Logika......................................................................... 106 Listing Program .......................................................................................... 106 Tabel Kebenaran ....................................................................................... 107 Simulasi NOVA ......................................................................................... 107 Report file ................................................................................................... 107 Gambar Rangkaian Logika......................................................................... 113 Listing Program .......................................................................................... 113 Tabel Kebenaran ....................................................................................... 114 Simulasi NOVA ......................................................................................... 114 Report File .................................................................................................. 115 Gambar Rangkaian Logika......................................................................... 121 Listing Program .......................................................................................... 121 Tabel Kebenaran ....................................................................................... 122 Simulasi NOVA ......................................................................................... 122 Report File .................................................................................................. 122

Tugas Rangkaian Up / Down Register .............................................................. 106

Tugas Rangkaian Up / Down Demultiplexer .................................................... 113

Tugas Rangkaian Decoder ................................................................................. 121

Analisa Hasil Percobaan ........................................................................................... 128 Analisa Register ................................................................................................. 128 Analisa Counter ................................................................................................. 130 Analisa Encoder ................................................................................................. 131

Kesimpulan Percobaan ............................................................................................. 132

PERCOBAAN VI.................................................................................................................... 133 6.1 6.2 6.3 6.4 Tujuan ....................................................................................................................... 133 Simulasi FSM dengan menggunakan STATECAD.................................................. 133 Percobaan .................................................................................................................. 136 Tugas ......................................................................................................................... 136

7

PERCOBAAN VII .................................................................................................................. 137 7.1 7.2 7.3 7.4 Tujuan ....................................................................................................................... 137 Dasar Teori ............................................................................................................... 137 Percobaan .................................................................................................................. 138 Tugas ......................................................................................................................... 139

8

DAFTAR GAMBARGambar 1-1. Hasil Simulasi Nova Tabel 1 ................................................................................ 16 Gambar 2-1. Window Galaxy Dan Project ................................................................................ 26 Gambar 2-2. Window New Project ........................................................................................... 27 Gambar 2-3. Window VHDL Editor ......................................................................................... 27 Gambar 2-4. Window Directory VHDL .................................................................................... 28 Gambar 2-5. Window Project VHDL ........................................................................................ 28 Gambar 2-6. Window Device VHDL ........................................................................................ 29 Gambar 2-7. Compiling VHDL ................................................................................................. 29 Gambar 2-8. Simulasi Nova ...................................................................................................... 30 Gambar 2-9. Gerbang Logika .................................................................................................... 30 Gambar 2-10. Rangkaian Kombinasi Logika ............................................................................ 31 Gambar 2-11. Rangkaian Kombinasi 3 Logika Dasar ............................................................... 33 Gambar 2-12. Hasil Simulasi Nova 3 Logika Dasar ................................................................. 34 Gambar 3-1. Rangkaian Kombinasi .......................................................................................... 44 Gambar 3-2. Rangkaian Multiplexer ......................................................................................... 45 Gambar 3-3. Rangkaian Multiplexer 4 Masukan ...................................................................... 48 Gambar 3-4. Hasil Simulasi Nova Untuk Multiplexer 4 Masukan .......................................... 49 Gambar 3-5. Rangkaian Demultiplexer 4 Keluaran .................................................................. 56 Gambar 3-6. Hasil Simulasi Nova Demultiplexer 4 Keluaran .................................................. 57 Gambar 3-7. Rangkaian Logika Decoder 3 Ke 8 ...................................................................... 64 Gambar 3-8. Hasil Simulasi Nova Decoder 3 Ke 8 ................................................................... 66 Gambar 4-1. Rangkaian Sequencial dengan Enable .................................................................. 77 Gambar 4-2. Rangkaian Sequensial dengan Clock ................................................................... 78 Gambar 4-3. Rangkaian Sequensial dengan Reset dan Rising Edge ......................................... 78 Gambar 4-4. Rangkaian Sekuensial........................................................................................... 82 Gambar 4-5. Hasil Simulasi Nova Rangkaian Sekuensial ........................................................ 83 Gambar 5-1. Rangkaian Up / Down Counter ............................................................................ 99 Gambar 5-2. Hasil Simulasi Nova Untuk Up/Down Counter ................................................. 100 Gambar 5-3. Rangkaian Up / Down Register .......................................................................... 106 Gambar 5-4. Hasil Simulasi Nova Untuk Up / Down Register ............................................... 107 Gambar 5-5. Rangkaian Logika Up / Down Demultiplexer .................................................... 113 Gambar 5-6. Hasil Simulasi Nova Rangkaian Up / Down Demultiplexer .............................. 114 Gambar 5-7. Rangkaian Up / Down Encoder ......................................................................... 121 Gambar 5-8. Hasil Simulasi Nova Rangkaian Up / Down Encoder ........................................ 122 Gambar 6-1. State Diagram Simulasi Traffic Light ................................................................ 133 Gambar 7-1. ALL-11 ............................................................................................................... 137 Gambar 7-2. Window WPLD1.EXE ....................................................................................... 138

9

DAFTAR TABELTabel 1-1. Tabel Kebenaran dari rangkaian kombinasi AND dan OR ...................................... 15 Tabel 2-1. Tabel Kebenaran Gerbang OR ................................................................................. 33 Tabel 3-1. Tabel Kebenaran Multiplexer 4 Masukan ................................................................ 49 Tabel 3-2. Tabel Kebenaran Demultiplexer 4 Keluaran............................................................ 57 Tabel 3-3. Tabel Kebenaran Decoder 3 Ke 8 ............................................................................ 66 Tabel 4-1. Tabel Kebenaran Sekuensial .................................................................................... 83 Tabel 5-1. Tabel Kebenaran Up / Down Counter ...................................................................... 99 Tabel 5-2. Tabel Kebenaran Rangkaian Up / Down Register ................................................. 107 Tabel 5-3. Tabel Kebenaran Rangkaian Up / Down Demultiplexer ....................................... 114 Tabel 5-4. Tabel Kebenaran Rangkaian Up / Down Encoder ................................................. 122

10

FAKULTAS TEKNIK LABORATORIUM ELEKTRONIKA UNIVERSITAS MUHAMMADIYAH MALANG

LEMBAR ASISTENSIVHDLJudul percobaan Nama Praktikan NIM Tanggal Pelaksanaan Asisten Pembimbing Tanda Tangan : PENGANTAR VHDL : Fahrizal Febrifta Umarila : 08530107 : 15 Oktober 2011 : Dwi Ari Cahyanto :

Tanggal

:

Instruktur Tanda Tangan

: :

Tanggal

:

Disetujui Kord. Praktikum : Dwi Ari Cahyanto Tanda Tangan :

Tanggal

:

11

1 BAB I PENGANTAR VHDL

1.1

Pengertian VHDL

Vhdl (VHSIC Hardware Description Language) merupakan bahasa tingkat tinggi yang dapat digunakan untuk memrogram suatu IC digital yang didalamnya terdiri dari gate-gate yang jumlahnya ratusan gate. Seperti bahasa pemrograman lain, VHDL juga memiliki aturan penulisan sintak sistematika yang digunakan. Dengan kata lain VHDL merupakan bahasa yang dipakai untuk menuliskan logika sebuah perancangan system elektronika yang logikanya akan diisikan pada device yang programmable untuk mengatur logika dari perancangan elektronika yang dibuat. Jenis-jenis programmable device yang bias digunakan dengan VHDL adalah: < 500 gate PLD (Programable Logic Device) > 500 dan > 5.000 gate CPLD (Comlpex Programable Logic Device) > 500 dan > 10.000 gate FPGA (Fast Programable Gate Array) > 10.000 dan > 20.000 ASIC (Aplication Spesific Integrated Circuit) Seluruh jenis device di atas pada dasarnya adalah gate-gate kosong yang siap disambungkan dengan berbagai logika perancangan elektronika tanpa terikat pada keterbatasan fungsi maupun jumlah pin yang dibutuhkan untuk perancangan seperti halnya jenis IC TTL dan CMOS. Namun pada praktikum ini akan lebih banyak menggunakan jenis IC PLD (Programable Logic Device) seperti PAL, PALCE dan GAL. Secara garis besar langkah pemrograman device dengan VHDL adalah : Tentukan Desain yang akan di program yang dilanjutkan dengan membuat algoritma dan table kebenaran dari desain. Buat desain dengan bahasa VHDL dan kompilasi program dengan Warp. Lakukan Simulasi untuk menguji kebenaran logika desain dengan Simulator Nova. Isikan program hasil kompilasi dan simulasi ke dalam device dengan ALL-11. 1.2 Struktur Program VHDL

Struktur program VHDL pada dasarnya hampir sama dengan program bahasa tinggi yang lain. Pemrograman VHDL dengan Warp harus menggunakan kaidah pemrograman yang sudah ditetapkan vendor yang bersangkutan, namun umumnya mengacu pada standart IEEE. Pada bagian awal program akan dijelaskan terlebih dahulu identitas bagi port input dan output yang disebut dengan bagian Entity. Kemudian pada bagian berikutnya diberikan statemen logika dari alur program yang dibuat dalam sebuah bagian yang disebut Architecture Body.

12

Secara umum struktur program VHDL dapat digambarkan sebagai berikut :

Interface (Entity Delcaration)

Body (Architecture)Sequential, Combinational Processes

1.2.1

Entity Declaration

Entity secara umum dapat dideklarasikan dengan mpdel berikut :

Entity NAME_OF_ENTITY Is Port (signal_names : mode type; signal_names : mode type); End [NAME_OF_ENTITY];Mode berupa: IN untuk menerangkan identitas port masukan, OUT untuk menerangkan identitas port keluaran, BUFFER untuk menerangkan identitas port tersebut berupa Buffer, dan INOUT untuk menerangkan identitas port tersebut bias menjadi masukan sekaligus keluaran. Type berupa: i. BIT - berupa bilangan 0 dan 1. ii. BIT_VECTOR - berupa vector dari nilai bit (BIT_VECTOR 0 TO 7) iii. Std_Logic banyak digunakan untuk jenis rangkaian sequensial. iv. Std_Ulogic Digunakan untuk jenis rangkaian sequensial. v. Std_Logic_Vector Jika ada Vektor Berikut ini adalah contoh dari berbagai model pendeklarasian bagian Entity dari program VHDL : Contoh 1 (Rangkaian Combinational) :

Library ieee ; Use ieee.Std_Logic_1164.all; Entity Combinational Is Port ( A, B, C : In BIT; D : Out BIT ); End Combinational;Contoh 2 (Rangkaian Combinational) :

Library ieee ; Use ieee.Std_Logic_1164.all; 13

Entity Combinational Is Port ( A : In Bit_Vector ( 0 to 2 ); D : Out BIT ); End Combinational;Pendeklarasian port pada Entity untuk rangkaian kombinasional type-nya biasanya berupa Bit atau Bit_Vector Contoh 3 (D Flip-Flop) :

Library ieee ; Use ieee.Std_Logic_1164.all; Entity D_FF Is Port ( D, CLK : In Std_Logic; Q, Q_Bar : Out Std_Logic ); End D_FF;Contoh 4 (Multiplexer4) :

Library ieee ; Use ieee.Std_Logic_1164.all; Entity Mux_4 Is Port (A: In Std_Logic_Vector (3 Downto 0); Sel : In Std_logic_Vector(0 to 1); OUT : Out Std_Logic); End Mux_4;Pendeklarasian port pada Entity untuk rangkaian kombinasional, multiplexer atau sequensial type-nya biasanya berupa Std_Logic atau Std_Logic_Vector Contoh 5 (Full_Adder) :

Library ieee ; Use ieee.Std_Logic_1164.all; Entity Full_Adder Is Port ( A0, B0, Ci C0, S0 End Full_Adder; : In Std_Ulogic; : Out Std_Ulogic );

Pendeklarasian port pada Entity untuk rangkaian Half Adder dan Full Adder type-nya berupa Std_Ulogic atau Std_Ulogic_Vector

14

1.2.2

Architecture Body

Architecture Body merupakan inti dari program VHDL, dengan format sebagai berikut:

Architecture Architecture_Name Of NAME_OF_ENTITY Is Begin --------- Statement End Architecture_Name;Contoh 2 :

Architecture behav1 of AND_ent Is Begin Process(x, y) Begin -- compare to truth table If ((x='1') And (y='1')) Then F