Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决

     Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决

   工程:使用生成的IP核,调用Modelsim仿真,但是问题出现了,仿真没有数据输出和空满信号错误的解决,输出为高阻态'Z'。如下图:

Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决_第1张图片


如图,空empty、满full、dout数据不变化。


原因:

ISE自动生成了.do文件仿真,本放着生成的.do代码如下:

Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决_第2张图片

问题出现在24行。编译了FIFO_W8_D32.v,同时编译了FIFO_W8_D32_synth.v,两个具有相同的module名字,但FIFO_W8_D32_synth.v只有声明,没有实体,则只生成了一个FIFO_W8_D32,后生成的覆盖了先生成的库。

Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决_第3张图片


把24行注释了,则结果正确。  23行和24行顺序调换,结果正确。

Xilinx FIFO IP核仿真没有数据输出和空满信号错误的解决_第4张图片


从正确的仿真图可见,在FIFO写满以后继续写入,是无效的,可以从读数据输出得到验证。读空以后,数据继续读也是无效的,输出保持最后有效数据不变。内部自动进行了读写的空和满逻辑控制。

你可能感兴趣的:(Verilog)