Anda di halaman 1dari 8

MK Perancangan Sistem Digital.

Modul 1. Pendahuluan

Modul 1. Pendahuluan.
Silabus Kuliah :
1. Pendahuluan
2. Diagram alir perancangan.
3. Contoh rancangan: Counter.
4. Verilog Syntax dan Semantics
5. Gate Level Modeling
6. Modul komponen yang dirancang pengguna.
7. Operator Verilog
8. Intruksi penting
9. Procedural Coding
10.Procedural Timing Control
11.Subrutin
12.Pembuatan TestBench
13.Memory dan Finite State Machine.
14.Optimasi gerbang digital.

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

1.1. Definisi Verilog HDL.


Verilog adalah salah satu HDL (Hardware Description Language), yaitu bahasa
penulisan program yang digunakan untuk mewakili sistem digital, misalnya mikrokontroler,
decoder, memory atau hanya flip-flop dan gerbang digital sederhana. Ringkasnya, dengan
menggunakan HDL seseorang dapat menjelaskan rangkaian digital pada level apapun, mulai
dari gerbang digital sederhana seperti AND, OR, NOT, sampai rangkaian digital amat
kompleks seperti mikrokontroler.
Berikut ini adalah contoh sederhana fungsi digital yang diwakili oleh persamaan
boolen, gerbang atu rangkaian digital dan kode HDL menggunakan verilog seperti berikut ini.

module circuit ( output f,


input x, y, z );
assign f = (x | (y & ~z)) & ~ (y & z);
endmodule
Gambar 1.1. Contoh representasi fungsi digital dengan 3 macam cara.
Verilog merupakan HDL yang dipakai luas di Amerika Serikat dan Asia untuk industri
perancangan sistem digital. Verilog memungkinkan kita untuk perancangan sistem pada
beragam level seperti level perilaku sistem (behavior level), RTL (register transfer level),
level AND, OR, NOT (gate level) bahkan level saklar transistor (switch level). Verilog
memungkinkan para disainer digital untuk mengekspresikan disain mereka dengan kontruksi
perilaku rangkaian, menunda rincian implementasi pada tingkat akhir perancangan.
Banyak insinyur yang ingin mempelajarinya, umumnya pertanyaan mereka adalah,
berapa waktu yang dibutuhkan untuk mempelajarinya ? Jawabannya, mungkin kurang dari 1
pekan, seandainya kita telah menguasai salah satu dari bahasa pemrograman software seperti
bahasa C misalnya.

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

1.2. Urutan Perancangan.


Dalam perancangan sistem digital, terdapat 2 pendekatan, yaitu bottom up dan top
down. Pendekatan bottom up biasa dipilih pada metode tradisional, dimulai dari perancangan
tingkat gerbang (gate level) kemudian digabungkan dengan modul-modul lainnya menjadi
sistem yang lebih kompleks. Sedangkan pendekatan top down sebaliknya, dimulai dari garis
besar rancangan, diuji secara global kemudian dilanjutkan dengan pengujian setiap blok,
lebih rinci sampai yang paling rinci.
Walaupun top down lebih disukai dan lebih realistis untuk dilakukan, kenyatannya
yang dilakukan disainer pada umumnya adalah menggabungkan 2 pendekatan ini. Berikut ini
adalah contoh pendekatan top down. Dari sistem secara utuh sampai rincian tiap komponen.

Gambar 1.2. Flowchart pendekatan Top Down.


Awalnya didefinisikan spesifikasi sistem digital yang diinginkan, misalnya merancang
mikrokontroler dengan instruction set, tipe memory dan kelengkapan input/output device
tertentu. Kemudian ditentukan blok diagram sistem untuk mendukung spesifikasi tadi. Selain
menggambarkan hubungan setiap blok dengan blok lainnya, diagram ini juga harus
menyertakan fungsi dari tiap blok termasuk bentuk input dan outputnya. RTL adalah Register

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

Transfer Level, setiap blok dirinci menjadi komponen-komponen setingkat register. Dan
seterusnya. Berikut ini adalah contoh perancangan dalam beragam level.

Gambar 1.3. Contoh Spesifikasi (kiri dan bawah) dan High Level Design (Kanan)

Gambar 1.4. Contoh Low Level Design dari CLB pada gambar 1.3 kanan.

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

Gambar 1.5. Contoh RTL (Register Transfer Level).

Gambar 1.6. Contoh Timing Analysis untuk Verifikasi fungsional.

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

Gambar 1.7. Contoh Place and Route.

Gambar 1.8. Kaitan antar tahapan perancangan.


1.3. Abstraksi Perancangan.
Secara ringkas, hanya ada 3 level abstraksi pada perancangan sistem digital, yaitu
-

Level Perilaku (Behavioral Level)

Level Register (Register Transfer Level)

Level Gerbang (Gate Level).

Pada Behavioral Level, dideskripsikan sistem dengan algoritma serentak (concurrent


algorithms). Setiap algoritma merupakan operasi serial atau berurutan. Function, Tasks dan
Always adalah elemen utamanya. Belum dipikirkan seperti apa realisasi disain strukturalnya.
Sedangkan RTL dan Gate Level dapat dilihat pada gambar 1.5 dan 1.1

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

Berikut ini adalah contoh kode dalam verilog dan kaitannya dengan gambar
rangkaian.

Gambar 1.9. Beragam kode dalam verilog dan rangkaian digitalnya.

eko ihsanto

MK Perancangan Sistem Digital.


Modul 1. Pendahuluan

module seven_seg_decoder ( output [7:1] seg,


input [3:0] bcd,
input
blank );
reg [7:1] seg_tmp;
always @*
case (bcd)
4'b0000: seg_tmp = 7'b0111111; // 0
4'b0001: seg_tmp = 7'b0000110; // 1
4'b0010: seg_tmp = 7'b1011011; // 2
4'b0011: seg_tmp = 7'b1001111; // 3
4'b0100: seg_tmp = 7'b1100110; // 4
4'b0101: seg_tmp = 7'b1101101; // 5
4'b0110: seg_tmp = 7'b1111101; // 6
4'b0111: seg_tmp = 7'b0000111; // 7
4'b1000: seg_tmp = 7'b1111111; // 8
4'b1001: seg_tmp = 7'b1101111; // 9
default: seg_tmp = 7'b1000000; // "-" for invalid code
endcase
assign seg _ blank ? 7b0000000 : seg_tmp;
endmodule

eko ihsanto

Anda mungkin juga menyukai