§ Файл tb.v
Это главный файл, который будет содержать остальную логику.`timescale 10ns / 1ns module tb; // --------------------------------------------------------------------- reg clock; reg clock25; always #0.5 clock = ~clock; always #1.5 clock25 = ~clock25; initial begin clock = 1; clock25 = 0; #2000 $finish; end initial begin $dumpfile("tb.vcd"); $dumpvars(0, tb); end // --------------------------------------------------------------------- reg [ 7:0] mem; reg [ 7:0] memory[65536]; // 64K x 8 wire [15:0] cursor; // Адрес памяти wire [ 7:0] out; // Для записи wire we; initial $readmemh("program.hex", prgmem, 16'h0000); /* Формируется логика чтения и записи в память */ always @(posedge clock) begin mem <= memory[ cursor ]; if (we) memory[ cursor ] <= out; end // --------------------------------------------------------------------- endmodule
§ makefile
Сборочный файлall: iverilog -g2005-sv -DICARUS=1 tb.v -o tb.qqq vvp tb.qqq >> /dev/null vcd: gtkwave tb.vcd wave: gtkwave tb.gtkw mif: date quartus_cdb de0 -c de0 --update_mif quartus_asm --read_settings_files=on --write_settings_files=off de0 -c de0 date clean: rm -f tb.qqq rm -rf db incremental_db simulation timing rm -f *.jdi *.pof *.sld *.rpt *.summary *.sof *.done *.pin *.qws *.bak *.smsg *.qws *.vcd *.qqq *.jic *.map *.qqq rm -f greybox_tmp undo_redo.txt PLLJ_PLLSPE_INFO.txt c5_pin_model_dump.txt rm -rf .qsys_edit *.o *.bin *.elf
30 авг, 2020
© 2007-2023 Джерри крадет отлично