LudwigCRON / undulate

MIT License
35 stars 1 forks source link

verilog generation #6

Open LudwigCRON opened 4 years ago

LudwigCRON commented 4 years ago

proposition of enhancement:

From the given input file, the tool can generate a verilog sequence for simulation purpose. This could save time to the designer and ensure it respect the specification.

this need a new inputs from the designer such as:

LudwigCRON commented 3 years ago

Propose to generate a generator/checker verilog module as the following

module name_of_the_input_file #(
    // scale factor to adjust the timing of the dut
    parameter realtime TICK_PERIOD = 100ns
) (
    inout wire signal_name,
    // while 1 generate signal_name
    input wire gen_signal_name,
    // while 1 check signal_name
    input wire chk_signal_name,
    ...
);

...
wire new_op_signal_name;
assign new_op_signal_name = gen_signal_name | chk_signal_name;

task gen_chk_signal_name();
...
endtask

always @(posedge new_op_signal_name)
        gen_chk_signal_name();
...

endmodule

The module shall count the number of errors and display on which signal it occurs and at which moment.