Dalam memenuhi tugas FPGA ini saya menjelaskan sebuah codingan di bawah ini, sebagai berikut :
Penjelasan dari codingan di atas, sebagai berikut ;
Ø Baris 1-6 : sebagai coment(kolom komentar) pri_encoder_using_assign
Dimana pada baris 2 adalah desain
nama, baris 3 adalah nama file, baris 4 fungsi (function).
Ø Baris
7 -11 : pembuatan sebuah modul dengan nama module pri_encoder_using_assign
Dimana pada baris ke 8 menjelaskan
bahwa binary outputnya ada 4 bit biner, baris ke 9 menjelaskan bahwa input
encoder ada 16 bit, baris ke 10 sebagai inputan untuk encoder.
Ø Pada
baris ke 13-17 : untuk output binernya ada 4 bit, lalu ada input enable(masukan
untuk enable), untuk inputan encoder ada 16 bit.
Ø Baris
ke 19-34 : statement suatu program encoder sendiri.
Dimana pada baris 19 binary_out
nilainya akan 0 jika enablenya bernilai 0, untuk baris 20-34 maksudnya ialah
jika encoder_in[x] bernilai true binary_out akan bernilai sesuai sama nilai di
belakang tanda “?”. Jika tidak ada yang terpenuhi maka binary_out=15.
Ø Baris
36 : mengakhiri program module.
Penjelasan dari
codingan di atas, sebagai berikut ;
Ø Baris
1-6 : sebagai coment(kolom komentar) program
mux_using_assign
Dimana
pada baris 2 adalah desain nama, baris 3 adalah nama file, baris 4 fungsi
(function).
Ø Baris 7-12 : membuat sebuah module dengan
nama file(module) mux_using_if dimana untuk input pertama Mux yaitu din_0, input
kedua Mus din_1, dan select sebagai select input dan mux_out sebagai outputnya.
Ø Baris ke 13-20 : sebuah pendeklarasian
statemantnya
Dimana
baris 13 & 14 untuk pendeklarasian input portsnya dengan input din_0, din_1,
dan select. Baris 15 & 16 untuk mendeklarasikan output ports dengan output
mux_out. Baris 17 & 18 untuk variabel internal dengan wire mux_out. Baris 19
& 20 untuk code start dengan mux_out = select inputan dngan din_1 dan
din_0.
Ø Baris 22 : akhir program dari modul atau
akhir program untuk modul Mux.
Penjelasan dari codingan di atas, sebagai berikut ;
Ø Baris 1-6 : sebagai coment(kolom komentar) program dff_sync_reset
Dimana pada baris 2 adalah desain
nama, baris 3 adalah nama file, baris 4 fungsi (function).
Ø Baris
7-12 : membuat sebuah module dengan nama file(module) dff_sync_reset dimana didalamnya
ada data input, clock input, reset input, dan Q sebagai outputnya.
Ø Baris
ke 13 & 14 : sebuah pendeklarasian input port sengan input data, clock, dan
reset.
Ø Baris
16 & 17 : untuk mendeklarasikan output ports dengan output Q
Ø Baris 19 & 20 : untuk variabel internal
dengan reg Q.
Ø Baris 22 – 28 : untuk code start. Dengan clock
selalu posedge(aktif pada sisi naik positif). jika negasi dari variable reset maka mulai ke
program selnajutnya yaitu 1<=1'bo jika tidak atau terpenuhi maka program
lanjut ke q<=data. End untuk mengakhiri sebuah statment start here.
Ø Baris
30 : akhir program dari modul atau akhir program untuk modul Mux.
Penjelasan dari codingan di atas, sebagai berikut ;
Ø Baris 1-6 : sebagai coment(kolom komentar) program gray_counter
Dimana pada baris 2 adalah desain
nama, baris 3 adalah nama file, baris 4 fungsi (function).
Ø Baris
7-12 : membuat sebuah module dengan nama file(module) gray_counter dimana didalamnya
ada data counter output, enable untuk counter, clock, dan untuk mengaktifkan
reset.
Ø Baris
14 & 15 : untuk program input ports dengan input clock, reset, enable.
Ø Baris
16 & 17 : untuk program output ports dengan output 8 bit.
Ø Baris
18 - 19 : untuk internal variabel dengan wire memiliki 8 bit output. Dan counter
reg 8 bit.
Ø Baris
21-31 :untuk pendeklarasian program code
starts here. Dengan clock selalu posedge(aktif pada sisi naik positif). jika negasi dari variable reset maka mulai ke
program selnajutnya yaitu count <= 0; jika tidak atau terpenuhi maka program lanjut
ke count <= count + 1; dengan membaca program dibawahnya dengan 8 bit
counter.
Ø Baris
33 : mengakhiri program module.
Penjelasan dari codingan di atas, sebagai berikut ;
Ø Baris 1-6 : sebagai coment(kolom komentar) rom_using_file
Dimana pada baris 2 adalah desain
nama, baris 3 adalah nama file, baris 4 fungsi (function).
Ø Baris
7-12 : membuat sebuah module dengan nama file(module) rom_using_file dimana didalamnya
ada address input, data output, read enable, dan chip enable.
Ø Baris
13 : untuk input data address dengan 8 bit.
Ø Baris
14 : untuk output data 8 bit.
Ø Baris
15 : untuk input read enable
Ø Baris
16 : untuk input chip enable
Ø Baris
18 : dengan register 8 bit dan memory sampai 255.
Ø Baris 20 : untuk menggabungkan
tide data dari ce danread_en, mem[address] :8'b0; merupakan alamat memori 8bit
yaitu b0.
Ø Baris
22-24 initial
begin untuk memual sebuah initial , lalu setelah itu
$readmemb("memory.list".mem) adalah untuk membaca sebuah list yang
terdapat pada memory tersebut. end untuk mengakhiri sebuat sub program.
Ø Baris
26 : mengakhiri program module.
Penjelasan dari codingan di atas, sebagai berikut ;
Ø Baris 1-6 : sebagai coment(kolom komentar) parity_using_assign
Dimana pada baris 2 adalah desain
nama, baris 3 adalah nama file, baris 4 fungsi (function).
Ø Baris
7-10 : membuat sebuah module dengan nama file(module) parity_using_assign dimana didalamnya 8 untuk data input, dan 1
bit untuk parity output
Ø Baris
11 : untuk output parity.
Ø Baris
12 : untuk input data 8 bit.
Ø Baris
14 : untuk parity output wire.
Ø Baris
16 : untuk parity output = data input sampai 8 bit.
Ø Baris
21 : mengakhiri program module.
>>>>>>Sekian penjelasan codingan diatas, mohon maaf jika tidak mudah untuk di mengerti<<<<<<
sumber referensi : http://asic-world.com/examples/verilog/index.html
Komentar
Posting Komentar