Perancangan Sistem Digital

12
UNIVERSITAS BENGKULU PERANCANGAN SISTEM DIGITAL RESUME VHDL +SAMPLE, FPGA, PERBEDAAN VHDL & VERILOG, APLIKASI IC GERBANG LOGIKA SERTA RANGKAIAN AGUNG HARYANTO G1D012013 11/7/2015

description

s

Transcript of Perancangan Sistem Digital

Page 1: Perancangan Sistem Digital

UNIVERSITAS BENGKULU

PERANCANGAN SISTEM DIGITAL

RESUME VHDL +SAMPLE, FPGA, PERBEDAAN VHDL & VERILOG, APLIKASI IC GERBANG LOGIKA SERTA RANGKAIAN

AGUNG HARYANTOG1D012013

11/7/2015

Page 2: Perancangan Sistem Digital

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

Page 3: Perancangan Sistem Digital

Adapun keuntungan perancangan menggunakan VHDL adalah sebagai

berikut:

1. Mampu mendesain hardware sampai level tertinggi (sistem yang

kompleks).

2. Mendukung teknologi top-down dan bottom-up.

3. Test bench dapat dituliskan menggunakan bahasa ini.

4. Tipe data baru dapat disebutkan.

5. 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.

Page 4: Perancangan Sistem Digital

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 isport (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 issignal sec,min,hour : integer range 0 to 60 :=0;signal count : integer :=1;signal clk : std_logic :='0';beginseconds <= 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)beginif(clk1'event and clk1='1') thencount <=count+1;if(count = 50000000) thenclk <= 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') thensec <= sec+ 1;if(sec = 59) thensec<=0;min <= min + 1;if(min = 59) thenhour <= hour + 1;min <= 0;if(hour = 23) thenhour <= 0;end if;end if;end if;end if;

Page 5: Perancangan Sistem Digital

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

Page 6: Perancangan Sistem Digital

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 sambungan-

sambungan 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

Page 7: Perancangan Sistem Digital

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

Page 8: Perancangan Sistem Digital

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

Page 9: Perancangan Sistem Digital

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