diff options
Diffstat (limited to 'control_lib/fifo_reader.v')
-rw-r--r-- | control_lib/fifo_reader.v | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/control_lib/fifo_reader.v b/control_lib/fifo_reader.v new file mode 100644 index 000000000..49d05b1a6 --- /dev/null +++ b/control_lib/fifo_reader.v @@ -0,0 +1,28 @@ + +module fifo_reader + #(parameter rate=4) + (input clk, + input [31:0] data_in, + output read_o + input ready_i, + input done_i + ); + + reg [7:0] state = 0; + + always @(posedge clk) + if(ready) + if(state == rate) + state <= 0; + else + state <= state + 1; + else + state <= 0; + + assign read = (state == rate); + + initial $monitor(data_in); + +endmodule // fifo_reader + + |