Anda di halaman 1dari 9

UNIVERSITAS BENGKULU

PERANCANGAN
SISTEM DIGITAL
RESUME VHDL +SAMPLE, FPGA,
PERBEDAAN VHDL & VERILOG,
APLIKASI IC GERBANG LOGIKA
SERTA RANGKAIAN
AGUNG HARYANTO
G1D012013

RESUME
VHDL ( VHSIC HARDWARE DESCRIPTION LANGUAGE) + SAMPLE
VHDL merupakan bahasa deskripsi perangkat keras formal untuk
menentukan watak dan struktur rangkaian digital. Kode VHDL mempunyai
kemiripan dengan bahasa pemrograman tingkat tinggi, seperti C, C++, Pascal, dan
sebagainya. Kode VHDL diterima sebagai salah satu bahasa standar yang peling
penting untuk penentuan (specifying), pengujian (verifiying) dan perancangan
(designing) dalam dunia elektronika digital.
Bahasa deskripsi dari VHDL adalah case sensitive, yang maksudnta bahwa
besar atau kecil penulisan hurufnya dalam pemrograman sangan diperhitungkan.
Penulisan pemgrograman untuk semua nama harus mulai dengan huruf dan harus
terdiri hanya karakteristik alfanumerik dan garis bawah, sedangkan karakter lain
tidak diperbolehkan. Semua nama dan label dari entity dan architecture harus
unik. Perancangan rangkaian elektronika digital menggunakan kode VHDL
disintesis agar dapat disimulasikan atau diverifikasi, salah satu penggunaan
VHDL yang paling penting adalah perpaduan rangkaian atau sistem elektronika
digital secara piranti yang dapat deprogram, seperti PLD, FPGA atau ASIC.
Bagian dasar dari kode VHDL terdiri dari deklarasi library,entity,dan
architecture. Deklarasi library terdiri dari daftar semua library yang digunakan
dalam perancangan sistem elektronika digital.

Entity digunakan untuk

menjelaskan pin-pin yang akan difungsikan sebagai masukan atau keluaran dari
rangkaian digital. Architecture terdiri dari kode VHDL yang menjabarkan prinsip
dari sistem digital, dan bagaiman rangkaian elektronika digital tersebut berjalan.

Gambar 1.1 Bagian pokok kode VHDL

Adapun keuntungan perancangan menggunakan VHDL adalah sebagai


berikut:
1. Mampu mendesain hardware sampai level tertinggi (sistem yang
2.
3.
4.
5.

kompleks).
Mendukung teknologi top-down dan bottom-up.
Test bench dapat dituliskan menggunakan bahasa ini.
Tipe data baru dapat disebutkan.
Dapat mencari dan mendeteksi kesalahan dengan lebih mudah

dalam simulasi
6. Proses implementasi program independen sehingga memungkinkan
melakukan beberapa perubahan sampai menit-menit terakhir.
7. Hardware untuk implementasi sangat fleksibel, sehingga dapat
digunakan untuk berbagai perancangan dan dapat dipilih sesuai
kebutuhan
8. Bahasa pemrograman mudah dimengerti dan dipelajari dengan
cepat.

SAMPLE VHDL Digital Clock


library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;
entity digi_clk is
port (clk1 : in std_logic;
seconds : out std_logic_vector(5 downto 0);
minutes : out std_logic_vector(5 downto 0);
hours : out std_logic_vector(4 downto 0)
);
end digi_clk;
architecture Behavioral of digi_clk is
signal sec,min,hour : integer range 0 to 60 :=0;
signal count : integer :=1;
signal clk : std_logic :='0';
begin
seconds <= conv_std_logic_vector(sec,6);
minutes <= conv_std_logic_vector(min,6);
hours <= conv_std_logic_vector(hour,5);
--clk generation.For 100 MHz clock this generates 1 Hz clock.
process(clk1)
begin
if(clk1'event and clk1='1') then
count <=count+1;
if(count = 50000000) then
clk <= not clk;
count <=1;
end if;
end if;
end process;
process(clk) --period of clk is 1 second.
begin
if(clk'event and clk='1') then
sec <= sec+ 1;
if(sec = 59) then
sec<=0;
min <= min + 1;
if(min = 59) then
hour <= hour + 1;
min <= 0;
if(hour = 23) then
hour <= 0;
end if;
end if;
end if;
end if;
end process;
end Behavioral;

Program untuk jam digital dalam modul VHDL yang memiliki satu input
CLK dan 3 keluaran. Setiap Output mewakili waktu dalam detik,menit dan jam.
Modul ini memiliki dua proses. Salah satunya yang digunakan untuk
menggerakan frekuensi clock yang dibutuhkan untuk menggerakan jam digital.
Frekuensi utama yang diterapkan oleh modul ialah 100 Mhz. Tetapi jam digital ini
harus digerakan dengan frekuensi 1Hz untuk proses pertama.
Proses kedua kenaikan detik,menit,dan jam

ketika kondisi terpenuhi.

Misalnya pada setiap siklus clock kenaikan detik. Setiap kali detik mencapai
60 maka akan menjadi kenaikan menit, demikian pula ketika menit mencapai
60 maka akan menjadi kenaikan Jam. Setelah jam mencapai nilai 23 sistem
akan mereset kembali ke awal.

RESUME
FPGA( FIELD PROGRAMMABLE GATE ARRAY)

Field programmable gate array merupakan platform logic yang dapat


dikofigurasi ulang dan dapat dieksekusi parallel operasi bitnya pada pemrograman
perangkat keras. FPGA sangat sesuai untuk pemrosesan komputasi dari algoritma
integrasi numerik. FPGA deprogram dengan HDL (Hardware Description
Language) seperti verilog. FPGA seperti mempunyai beribu-ribu logic gate
didalamnya. Verilog language digunakan bagi menukarkan sambungansambungan logic gate. FPGA mempunyai koreksi error yang kecil dan merupakan
teknologi yang bebbas untuk diimplementasikan dalam berbagai algoritma,
kinerja aplikasi FPGA lebih cepat dibandingkan dengan aplikasi mikrokontroler,
karena FPGA hanya mensintesis perangkat keras, sementara mikrokontroler
mengeksekusi instruksi perangkat lunak yang digunakan untuk mengendalikan
perangkat keras, sehingga waktu tunda yang diimplementasikan hanya memakan
waktu tunda perambatan saja. Pemodelan FPGA membutuhkan informasi terkait
keadaan berbeda dari clock yang dating berkali-kali diantara sistem flip-flop yang
saling memicu satu sama lainnya di dalam siklus clock yang berbeda dikurangi
waktu siklus clock.
FPGA sendiri juga merupakan IC tipe HDL yang mana pemakai dapat
mendesain hardware sesuai yang diinginkan di dalam IC FPGA. Secara umum
arsitektur bagian dalam dari IC FPGA terdiri atas 3 elemen utama yaitu :
input/ouput blok ( IOB ), Configurable Logic Block ( CLB ) dan interkoneksi.
Configurable Logic Blocks:

Look up table based complex structure


Implement the sequential circuit
Programmable Interconnect
Berisi wire segments dan programmable switches
Mengubungkan configurable Logic Blocks yang berbeda
Input/Output Block
Sebagai interface antara external package pin dari device dan internal user
logic

Fungsi logika interkoneksi FPGA ditentukan oleh data yang tersimpan pada
sel memori statistik internal . ada beberapa cara untuk membuat dara konfigurasi
ke dalam sel memori ii, baik yang dilakukan secara otomatis pada waktu catu
daya diberikan maupun dengan membaca konfigurasi dara dari ekxternal serial.

Gambar 1.2 CHIP pada FPGA


1. CLB (Combinational Logic Block) berfungsi sebagai menghasilkan
element fungsional untuk menyusun rangkaian logika yang diinginkan
2. PI (programmable interconnection) sebagai penghubung antara CLB yang
satu dengan yang lain
3. RAM BLOCK sebagai ram untuk menyimpan data yang dibuat user
4. Input output block sebagai interface antar pin-pin terminal chip dengan
kawat penghubung yang ada pada chip IC

KEUNGGULAN FPGA
1. Dapat disusun atau deprogram berulang ulang
2. FPGA bersifat dapat didownload berulang-ulang tanpa batas
3. Bersifat volatile
4. Hampir semua rangkaian terimplementasi di dalam CHIP IC

PERBANDINGAN VHDL dan VERILOG


Kedua jenis bahasa ini memiliki sintaks yang berbeda, tetapi dapat
mencapai hasil yang sama Verilog lebih efektif

jika digunakan khusunya di

bidang desain ASIC. VHDL mempunyai library, user dapat meletekan seluruh
blok di library, dan dapat menggunakanya kembali dengan mudah, sedangkan
Verilog tidak , setiap kali hendak memulai project baru, dan mengambil sesuatu

yang berguna di project lain, anda harus mengambil semua file sumber secara
individual.
Verilog dapat digunakan untuk ke tingkat yang lebih rendah daripada
VHDL, yaitu ditingkat transistor (MOS gerbang..).Verilog mempunyai kecepatan
running lebih cepat dibandingkan VHDL, karena Verilog dibangun dari bahasa C
yang merupakan bahasa aras menengah setelah bahasa assembly sedangkan
VHDL dibangun menggunakan bahasa PASCAL.Verilog mempunyai kode-kode
pemrograman yang lebih sederhana dan lebih mudah dipahami dibandingkan
VHDL.VHDL mempunyai kelebihan dibanding dengan Verilog, dalam hal VHDL
mempunyai kemampuan yang lebih untuk merancang sistem digital yang
kompleks dan berskala besar

IC 7404
Pada dasarnya 7404 adalah IC gerbang logika NOT, sering disebut
inverter. Dalam satu IC 7404 terdapat 6 gerbang yang independen, karena itu
sering juga disebut hex inverter. Bahkan, salah satu developer Arduino (Tom Igoe)
menggunakan 7404 sebagai pengganti rangkaian transistor yang terdapat pada
Arduino keluaran awal. Rangkaian Gate NOT / INVERTER yang dihubungkan

seri banyak di gunakan pada beberapa pemakaian yang praktis. Jika beberapa
Gate NOT ini digunakan maka waktu tunda (dari masing masing Gate dapat
dijumlahkan sehingga rangkaian ini dapat di gunakan sebagai delay.Output dari IC
dibatasi oleh input dari gate yang dapat dikontrol. Karakteristik ini disebut dengan
Fan-Out dan sebuah Gate biasanya dibatasi samapai 10. Ini berarti bahwa sebuah
output dari TTL Gate dapat mengontrol 10 input Gate. Tetapi bila diperlukan
konfigurasi rangkaian yang bisa mengontrol lebih dari 10 input, maka sebuah
Gate NOT secara seri berfungsi sebagai Buffer dapat digunakan

Anda mungkin juga menyukai