FIFO IP核的总结(一)
第一次使用Vivado中的FIFO generator,同步FIFO的常用端口也就10个左右:
CLK;
srst:复位端口
读相关:
dout:FIFO数据输出(output);
empty:读空(output),empty为1,表明FIFO内无数据;
Vaild:读有效(output):等到rd_en拉高后的下一个上升沿置1
rd_en:读使能(input)
写相关:
din:FIFO数据输入(input)
wr_en:写使能(input)
Full:写满(output)full为1,数据写入将丢失
wr_ack:写成功/握手信号(output),等到wr_en拉高后的下一个上升沿置1。
//下面是顶层code,里面例化了一个FIFO generator IP核:
`timescale 1ns / 1ps
module FIFO_test(clk, srst, din, wr_en, rd_en, dout, full, wr_ack, empty,
valid);
input clk;
input srst;
input [3:0]din;
input wr_en;
input rd_en;
output [3:0]dout;
output full;
output wr_ack;
output empty;
output valid;
fifo_generator_0 fifo_use (.clk(clk),.srst(srst),.din(