pulse_to_level.v 388 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

// Latch pulse to level, until cleared

module pulse_to_level
(
    input   wire    clock,
    input   wire    clear,
    input   wire    pulse_in,
    output  reg     level_out
);

    initial begin
        level_out = 1'b0;
    end

    always @(posedge clock) begin
        level_out = pulse_in | level_out;
        level_out = (clear == 1'b1) ? 1'b0 : level_out;
    end

endmodule