• Tidak ada hasil yang ditemukan

Makalah VHDL

N/A
N/A
Protected

Academic year: 2021

Membagikan "Makalah VHDL"

Copied!
15
0
0

Teks penuh

(1)

MAKALAH TEKNIK DIGITAL

MAKALAH TEKNIK DIGITAL

PENGENALAN VHDL BESERTA

PENGENALAN VHDL BESERTA

APLIKASINYA

APLIKASINYA

Disusun oleh :

Disusun oleh :

XXXXXXXXXXXX

XXXXXXXXXXXX

XXXXXXXX

XXXXXXXX

FAKULTAS ELEKTRO DAN KOMUNIKASI

FAKULTAS ELEKTRO DAN KOMUNIKASI

INSTITUT TEKNOLOGI TELKOM

INSTITUT TEKNOLOGI TELKOM

BANDUNG

BANDUNG

(2)

2010

DAFTAR ISI

DAFTAR ISI ...

iii

BAB I PENDAHULUAN ...1

BAB II PEMBAHASAN ...

4

BAB III PENUTUP ... 22

(3)

BAB I

PENDAHULUAN

A. Latar Belakang

Di zaman modern seperti sekarang, penggunaan instrumen berbasis digital tidak dapat dihindari dan semakin hari ketergantungan manusia terhadapnya semakin tinggi. Mulai dari handphone, televisi, kulkas, rice cooker, komputer dan banyak alat-alat berbasis digital lainnya telah merubah wajah dunia dan gaya hidup manusia.

Dalam pembuatannya, instrumen berbasis digital ini masih didominasi oleh negara-negara maju seperti Amerika atau Jepang. Hal ini disebabkan oleh ketersediaan sumber berupa dana dan infrastruktur. Negara-negara maju selain didukung oleh keilmuan yang kuat, juga didukung oleh infrastruktur yang handal. Negara berkembang seperti Indonesia belum dapat mencapai tahapan membuat instrumen ini dalam skala besar secara efisien dan ekonomis, karena terbentur hambatan dana dan infrastruktur yang belum tertata dengan baik. Namun hal dasar berupa penguasaan keilmuan masih dapat dipelajari dengan sama baiknya oleh negara berkembang seperti Indonesia sehingga Indonesia tidak tertinggal dalam segi keilmuan.

Dengan penggunaan software VHDL, perancangan instrumen berbasis digital dapat dipelajari dan dilakukan secara real time dengan simulasi komputer tanpa harus menyediakan instrumen/ komponen-komponen digital secara fisik. Ini tentu saja merupakan suatu keuntungan tersendiri, dimana efektivitas dan efisiensi dalam mendesain dan memahami implementasi rangkaian digital akan meningkat secara signifikan.

Pengetahuan mengenai perancangan dengan menggunakan VHDL diharapkan akan memberikan sebuah pengetahuan kepada mahasiswa tentang

(4)

bagaimana mendesain suatu rangkaian digital dan mengimplementasikannya dalam suatu devais/alat untuk membantu mempermudah aktivitas manusia sehari-hari.

BAB II

PEMBAHASAN

1. SEJARAH VHDL :

VHDL adalah singkatan yang dipersingkat karena aslinya adalah VHSIC HDL. Program VHIC (Very Highspeed Integrated Circuit) dikembangkan akhir tahun 1970-an sampai awal 1980-an, berdasarkan sumber dari Universitas Waterloo :

• Rupanya pada waktu itu program VHSIC dikembangkan oleh Departemen Pertahanan

Amerika

• Alat yang sudah ada (pada waktu itu tahun 1980, yaitu Ada programming language) sudah

tidak sanggup untuk membuat desain hardware yang lebih kompleks sehingga akhirnya dibuatlah penggantinya dengan nama VHDL.

Inilah evolusi berdasarkan sumber dari Universitas Waterloo :

• 1981, VHDL diusulkan sebagai bahasa deskripsi hardware • 1986, VHDL diusulkan sebagai standar IEEE

• 1987, Standar pertama VHDL (IEEE-1076-1987) • 1993, Standar VHDL direvisi (IEEE-1076-1993)

• 2002, Standar VHDL sekarang (IEEE-1076-2002), dan

• Sekarang digunakan dengan luas oleh kalangan industri dan akademi, dengan penambahan

IEEE-1164-1993 untuk mengenalkan nilai sistem logika

IEEE adalah singkatan dari Institute of Electrical and Electronics Engeneers, Institut inilah yang melakukan standardisasi VHDL.

2. Pengertian VHDL

VHDL merupakan singkatan dari VHSIC Hardware Description Language (Bahasa Pemrograman hardware VHSIC ). VHDL merupakan bahasa

pemograman hardware/alat/piranti keras yang memiliki fungsi tambahan dari bahasa pemograman hardware sebelumnya yaitu PLD dan netlist. Hampir semua

(5)

software VHDL synthesis mendukung bahasa pemograman VHDL. Bahasa pemograman VHDL menganut standart yag ditetapkan IEEE.

VHSIC sendiri merupakan IC dengan kecepatan sangat tinggi ( Very High Speed Integrated Circuit). Bahasa pemrograman HDL dapat digunakan pada beberapa cara dan dapat dijadikan jalan alternatif untuk merepresentasikan diagram rangkaian untuk rangkaian digital ataupun untuk sebagian sub sistem rangkaian digital. Dua cara untuk memodelkan sistem digital yaitu secara

struktur maupun secara behavioral (penjelasan output sistem).

VHDL dapat digunakan untuk dokumentasi, verivikasi, dan sintesis dari perancangan sistem digital. Ini merupakan salah satu keuntungan dari VHDL, dimana kode VHDL yang sama dapat melakukan tiga fungsi di atas, sehingga lebih sederhana dan mengurangi kesalahan dalam penerjemahansistem yang akan diimplementasikan. Selain itu, VHDL dapat dijalankan dengan tiga cara yang berbeda untuk mendeskripsikan hardware. Tiga cara tersebut yaitu secara struktural, aliran data, dan penjelasan input output sistem. Biasanya untuk

sistem yang besar penggabungan tiga cara ini diterapkan dan memiliki penerjemahan yang berbeda untuk cara yang berbeda pula.

3. Cara Penulisan Syntax dalam Bahasa Pemrograman VHDL

VHDL didesain dengan prinsip yang diambil dari bahasa pemrograman software Pascal dan Ada. Desain dalam VHDL terdiri atas beberapa bagian utama diantaranya :

1. Library (design unit)

Library merupakan kumpulan modul-modul perintah yang digunakan dalam program. Sebelum digunakan di dalam program, modul yang berada di dalam library perlu diinisialisasi terlebih dahulu. Contoh library-library yang terdapat pada VHDL yaitu :

(6)

Library IEEE

use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL;

use IEEE.math_real.all; use IEEE.math_complex.all; use IEEE.numeric_bit.all; use IEEE.numeric_std.a library STD;

use STD.textio; use STD.standard.all; use IEEE.std_logic_textio.all; use IEEE.std_logic_arith.all; use IEEE.numeric_bit.all; use IEEE.numeric_std.all; use IEEE.std_logic_signed.all; use IEEE.std_logic_unsigned.all; use IEEE.math_real.all; use IEEE.math_complex.all; 2. Entity

Entity adalah spesifikasi pin input dan pin output pada desain bentuk

rangkaian yang dibuat. Berfungsi untuk menggambarkan port pada input

ataupun output pada rangkaian yang ingin dibuat, entity juga dapat berisi

parameter yang akan digunakan di dalam desain.

3. Architecture

Architecture merupakan deskripsi kerja dari sistem/entity yang akan kita rancang. Pada architecture terdapat satu set komponen yang salaing

berhubungan. Deklarasi dasar architecture :

architecturearchitecture_name of entity_nameis signal signal_name : signal_type;

 begin

concurrent_statement; ...

(7)

Concurrent_statement;

endarchitecture_name ;

a. Process

Process merupakan bagian dari suatu architecture. Di dalam suatu architecture bisa terdapat satu atau lebih proses yang saling independen ataupun berhubungan.

b. Configuration

Configuration digunakan untuk mendeklarasikan kumpulan desain entity tertentu sebagai komponen instan, component instances (sebagai referensi unik komponen yang berlevel rendah) pada sebuah architecture tertentu di dalam suatu entity.

4. Signal dan Variabel

Signal dapat dianalogikan sebagai kabel, yang menjadi penghubung antar bagian di dalam sistem yang di desain. Signal dideklarasikan di dalam

architecture. Nilai logika dari suatu signal baru berubah setelah seluruh proses di eksekusi. Apabila dalam suatu signal nialinya diubah beberapa kali dalam suatu proses, nilai yang terakhir yang akan dipakai pada eksekusi selanjutnya.

Variabel berbeda dengan signal. Nilai suatu variabel langsung berubah, tanpa harus menunggu selesainya suatu proses eksekusi. Variabel hanya dapat dideklarasikan di dalam suatu proses.

Contoh deklarasi signal dan variabel :

architecturearchitecture_name of entity_nameis signal signal_name : signal_type;

 begin

 process_name: process

variablevariable_name:variable_type;  begin

...

end process;

(8)

Architecture A B  Y C D Entity signaling Keterangan :

Entity adalah jenis portport yang digunakan di dalam suatu rangkaian. Pada gambar rangkaian di atas, entity adalah port A, B, C dan D (sebagai input) dan Y (sebagai output). Sedangkan yang dinamakan architecture adalah bentuk dari rangkaian di dalamnya. Signal adalah kabel atau connector yang

menghubungkan antar gerbang logika.

5. Constants dan Array

Contoh deklarasi dari konstanta adalah :

Constant BUS_SIZE : integer := 32; -- komponen lebar   Constant MSB : integer := BUS_SIZE-1; -- bit nomber dari MSB Constant Z : character := ‘Z’ ; -- sinonim dari nilai Hi-Z

Hal terpenting lain dari VHDL adalah array. Seperti bahasa pemprograman lainnya, dalam VHDL juga terdapat array yang merupakan sekumpulan elemen yang mempunyai tipe yang sama, dan setiap elemen mempunyai array index  yang berbeda-beda. Contoh deklarasi beberapa array dalam VHDL adalah sebagai berikut :

typetype_name is array ( start to end) of  element_type;

typetype_name is array ( start downto end) of  element_type;

typetype_name is array (range_type) of  element_type;

(9)

typetype_name is array (range_type range start downto end) of  element_type;

6. Function dan Procedure

Seperti halnya function dalam bahasa pemrograman lain, function dalam VHDL dapat menerima suatu data masukan dengan tipe data tertentu dan menghasilkan keluaran yang sesuai dengan tipe data keluaran yang telah didefinisikan dalam spesifikasinya. Deklarasi syntax dari function adalah :

function function_name(  signal_name : signal_type; . . . Signal_name : signal_type ) returnreturn_type is type declarations constant declarations variable declarations function definitions procedure definitions  begin sequential_statement . . . sequential_statement; end function_name ;

Procedure dalam VHDL sebenarnya hampir sama dengan function, tetapi procedure tidak dapat mengembalikan nilai balikan. Procedure dalam VHDL harus menyertakan argument dengan spesifik dengan tipe out atau inout.

7. If statement, case statement, dan loop satement

If satement adalah satement yang digunakan jika kita dalam keadaan kondisional. Deklarasi syntax if statement adalah :

if boolean_expression then sequential_satements

end if;

(10)

else  sequential_statements

end if;

if boolean_expression then sequential_satements

elsif  sequential_statementsthen sequential_statements

. . .

elsif  sequential_statementsthen sequential_statements

end if;

if boolean_expression then sequential_satements

elsif  sequential_statementsthen sequential_statements

. . .

elsif  sequential_statementsthen sequential_statements

else  sequential_statements

end if;

Case statement biasanya digunakan jika jumlah kondisi lebih dari 3 kondisi (banyak kondisi). Deklarasi syntax case statement adalah :

case expression is

when choices=> sequential_statements . . . .

When choices=> sequential_statements

end case;

Sekuensial statement lain yang juga oenting adalah loop statement. Loop statement digunakan untuk mengulang perintah-perintah baris program dengan aturan tertentu. Ada beberapa struktur loop statement diantaranya :

a. Dasar loop statement VHDL

loop  sequential_statement  . . .  sequential_statement  end loop; b. For loop VHDL

for identifier in range loop

 sequential_statement 

. . .

 sequential_statement 

(11)

c. While loop VHDL

while boolean_expression loop

 sequential_statement 

. . .

 sequential_statement 

end loop;

Pada perulangan di atas digunakan untuk perulangan yang mempunyai  jumlah perulangan yang tidak dipastikan sebelumnya. Pada bentuk perulangan

ini selama kondisi terpenuhi (true) maka perulangan akan terus dilakukan dan akan berhenti berulang ketika kondisi tidak terpenuhi.

8. Macam-macam Desain Architecture

Dalam pendeskripsiannya, architecture dapat didesain dalam beberapa desain, diantaranya:

a. Behavioral

Architecture dapat didesain sesuai dengan Prinsip kerja alat. Kunci dalam desain behavior adalah “process”. Sebuah process adalah kumpulan dari

sequential statement (yang dideskripsikan secara singkat) yang dipasang paralel dengan statement yang sama dan process yang lainnya.

b. Structural

Architecture dapat didesain sesuai dengan terstruktur dalam port map. Architecture VHDL yang menggunakan component biasabya disebut deskripsi atau desaign struktural. Karena ia mendefinisikan struktur interkoneksi yang tepat dari signal dan entity yang menyadari entity. Dalam hal ini, deskripsi stuktural murni adalah setara dengan sebuah skema/daftar bersih untuk rangkaian. Structural VHDL program for a prime-number detector :

library IEEE;

use IEEE.std_logic_1164.all; library unisim;

(12)

entity prime is

 port ( N : in STD_LOGIC_VECTOR (3 downto 0); F : out STD_LOGIC );

end prime;

architecture prime1_arch of  prime is signal N3_L, N2_L, N1_L : STD_LOGIC;

signal N3L_NO, N3L_N2L_N1, N2_N1L_NO : STD_LOGIC; component INV port (I : in STD_LOGIC; O : out STD_ LOGIC); end component;

component AND2 port (I0,I1 : in STD_LOGIC; O : out STD_ LOGIC); end component;

component AND3 port (I0,I1, I2 : in STD_LOGIC; O : out STD_ LOGIC); end component;

component OR4 port (I0,I1,I2,I3 : in STD_LOGIC; O : out STD_ LOGIC); end component;

 begin

U1 : INV port map (N(3) , N3_L); U2 : INV port map (N(2) , N2_L); U3 : INV port map (N(1) , N1_L);

U4 : AND2 port map (N3_L , N(0) , N3L_N0);

U5 : AND3 port map (N3_L , N2_L , N(1) , N3L_N2L_N1); U6 : AND3 port map (N2_L , N(1) , N(0) , N2L_N1_N0); U7 : AND3 port map (N(2) , N1_L , N(0) , N2_N1L_N0);

U8 : OR4 port map (N3L_N0 , N3L_N2L_N1 , N2L_N1_N0 , N2_N1L_N0 , F); end prime1_arch;

c. Data flow

Architecture dapat didesain sesuai dengan RTL : Register Transfer Level, yaitu secara rangkaian logika. Jika component statement hanya terdapat

statement yang bersamaan, maka VHDL akan memiliki lebih dari satu bahasa. Pernyataan beberapa konkuren tambahan memungkinkan VHDL unutk

menggambarkan sirkuit dalam hal aliran data dan operasi dalam sirkuit. Desain tersebut sering disebut desain dengan data flow. Dataflow VHDL architecture for the prime-number detector :

architecture prime2_arch of  prime is

signal N3L_N0 , N3L_N2L_N1 , N2L_N1_N0 , N2_N1L_N0 : STD_LOGIC;  begin

(13)

N3L_N0 <= not N(3) and N(0); N3L_N2L_N1 <= not N(3) and not N(2) and N(1)

N2L_N1_N0 <= not N(2) and N(1) and N(0); N2_N1L_N0 <= N(2) and not N(1) and N(0); F <= N3L_N0 or  N3L_N2L_N1 or  N2_N1L_N0 or  N2_N1L_N0; end prime2_arch

9. Test bench

 Test bench adalah pemberian sinyal berupa syntax program pada

rangkaian yang akan diujikan keluarannya. Sehingga sinyal yang diberikan dapat langsung menunjukkan keluaran tanpa harus memasukkan sinyal secara

menual.

 Test Bench Coding

Signal Port Signal Output

BAB III PENUTUP

A. Simpulan

Dari makalah yang sudah dibuat, maka dapat ditarik kesimpulan-kesimpulan sebagai berikut :

1. VHDL merupakan singkatan dari VHSIC Hardware Description Language (Bahasa Pemrograman hardware VHSIC ). VHDL merupakan bahasa

pemograman hardware/alat/piranti keras yang memiliki fungsi tambahan dari bahasa pemograman hardware sebelumnya yaitu PLD dan netlist.

 Test

Vector

Arsitektur

Rangkaian

(14)

2. Adapun beberapa keuntungan perancangan menggunakan VHDL adalah sebagai berikut :

a. Mampu mendesain hardware sampai level tertinggi (sistem yang kompleks).

b. Mendukung metodologi top-down dan bottom-up. c. Test bench dapat dituliskan menggunakan bahasa ini. d. Tipe data baru dapat disebutkan.

e. Dapat mencari dan mendeteksi kesalahan dengan lebih mudah dalam simulasi.

f. Proses implementasi program independen sehingga memungkinkan untuk melakukan beberapa perubahan sampai menit-menit terakhir.

g. Hardware unutk implememntasi sangat fleksibel, sehingga dapat digunakan unutk berbagaiperancangan dan dapat dipilih sesuai kebutuhan.

h. Bahasa pemrograman mudah dimengerti dan dipelajari dengan cepat.

DAFTAR PUSTAKA

A VHDL Primer: The Essentials, Design Recipes for FPGA by Peter Wilson, published by Newness Publications

Putra, A E. (2010). Abstraksi dan Sintesis VHDL - VHSIC Hardware Description Language. (Online). Tersedia: http://agfi.staff.ugm.ac.id/blog/index.php/

(15)

2010 ]

Spiegel, J. (2006). VHDL Tutorial. (Online). Tersedia:

http://www.seas.upenn.edu/~ese201/ vhdl/vhdl_primer.html [ 9 Maret 2010 ] Sutikno, T. (2009). VHDL = Very High-Speed Integrated Circuit (VHSIC) Hardware Description Language. (Online). http://blog.uad.ac.id/tole/2009/03/vhdl-very-high-speed-integrated-circuit-vhsic-hardware-description-language [ 8 Maret 2010 ]

http://ndoware.com/mengenal-vhdl-bagian-2.html [ 8 Maret 2010 ]

http://www.cs.uregina.ca/Links/class-info/301/register/lecture.html [ 8 Maret 2010 ]

Circuit Design with VHDL by Volnei A. Pedroni, published by MIT Press. http://www.ittelkom.ac.id/library/index.php?

option=com_content&view=article&id=386:vhdl&catid=11:sistem-komunikasi&Itemid=15

http://finon-4ever.blogspot.com/2010/10/package-library-vhdl.html

http://andhikawardhana.blogspot.com/2010/10/library-dan-package-vhdl.html

Referensi

Dokumen terkait

Sistem terbuka adalah sistem yang berhubungan dan terpengaruh dengan lingkungan luarnya. Sistem ini menerima masukan dan menghasilkan keluaran untuk lingkungan luar

seperti halnya tipe buck-boost , konverter DC-DC topologi ini juga dapat menghasilkan tegangan keluaran yang lebih kecil ataupun lebih besar dari pada sumber

Sistem terbuka adalah sistem yang berhubungan dan terpengaruh dengan lingkungan luarnya, sistem ini menerima masukan dan menghasilkan keluaran untuk lingkungan luar

Proses sendiri artinya adalah suatu bagian dari sebuah organisasi yang menerima masukan dan mengubah masukan tersebut menjadi sebuah hasil keluaran sesuai yang diharapkan,

Dilihat dari diagram pada gambar 4, mikrokontroler arduino uno menerima masukan dari water level float switch sensor dan menghasilkan keluaran kemotor servo. Lalu

Dilihat dari diagram pada gambar 4, mikrokontroler arduino uno menerima masukan dari water level float switch sensor dan menghasilkan keluaran kemotor servo. Lalu

Tipe data yang terdapat pada bahasa pemrograman Java pada umumnyatidak jauh berbeda dengan bahasa pemrograman lain seperti C, C++,Pascal, Basic, dan lainnya,

Serangkaian aktivitas terukur yang menerima satu atau lebih masukan input dan menghasilkan keluaran bagi pelanggan output untuk mencapai tujuan organisasi “ Definisi Proses Bisnis