1 // megacz@cs.berkeley.edu, public domain
4 read_empty, read_enable, read_data,
5 write_full, write_enable, write_data);
12 input [7:0] read_data;
13 output [7:0] write_data;
16 assign read_enable = read_enable_;
18 assign write_enable = write_enable_;
19 reg [7:0] write_data_;
20 assign write_data = write_data_;
22 initial read_enable_ = 1;
23 initial write_enable_ = 0;
25 always @(posedge clk) begin
27 // if there's stuff to read and room to write, read a byte,
28 // increment it, and write it
29 if (!read_enable_ && !write_enable_ && !read_empty && !write_full) begin
32 write_data_ <= read_data + 1;