xilinx的fifo读数不对
对xilinx的fifo核仿真一下看看咋用。发现没用对。还没找出问题。请教
fifo_16_1024 uut (
.rst(rst),
.wr_clk(wr_clk),
.rd_clk(rd_clk),
.din(din),
.wr_en(wr_en),
.rd_en(rd_en),
.dout(dout),
.full(full),
.empty(empty),
.wr_data_count(wr_data_count),
.rd_data_count(rd_data_count)
);
always #5 wr_clk =!wr_clk;
always #7 rd_clk =!rd_clk;
always #20 din = din+1'b1;
initial begin
// Initialize Inputs
rst = 0;
wr_clk = 0;
rd_clk = 0;
din = 32'd10;
wr_en = 1;
rd_en = 0;
// Wait 100 ns for global reset to finish
#100;
#100;
#100;
wr_en = 0;
#100 rd_en = 1;
#14 rd_en = 0;
#50 rd_en = 1;
#14 rd_en = 0;
#50 rd_en = 1;
#14 rd_en = 0;
#50 rd_en = 1;
#14 rd_en = 0;
#50 rd_en = 1;
#14 rd_en = 0;
// Add stimulus here
end


1)看到里面那rd_count确实在4个读使能后减了4
(2)但是为啥4个读使能只跑出了两个dout?
(3)数据从10开始。就算读出两个。应该也是10 11。为啥是两个10我就不能明白了。
fifo有两种模式,你选择的是哪种?

是的,
第一个是你没有写进去把?
