基于FDMA的PCIE传输HDMI: 从FIFO中取数据到FDMA传输过程:(FIFO例化如下)
W0_FIFO W0_FIFO_0 (
.rst(W0_FIFO_Rst), // input wire rst
.wr_clk(W0_wclk_i), // input wire wr_clk
.din(W0_data_i), // input wire [31 : 0] din
.wr_en(W0_wren_i), // input wire wr_en
.rd_clk(ui_clk), // input wire rd_clk
.rd_en(pkg_wr_en), // input wire rd_en
.dout(fifo_data), // output wire [63 : 0] dout
.rd_data_count(W0_rcnt) // output wire [10 : 0] wr_data_count
);
视频中讲解: W0_rcnt达到256以后W0_REQ置1,然后pkg_wr_areq置1,pkg_wr_en输出1使能rd_en开始下次从FIFo取数,开始FDMA的brust计数直到256再开始一次brust,,,,
但是第一次的FIFO 读使能.rd_en(pkg_wr_en)从哪来?只有使能后才能读出来,才能读计数到达256,才能W0_REQ <= (W0_rcnt >= PKG_SIZE)置1,然后pkg_wr_areq置1,pkg_wr_en输出1。。。。。。或者说 W0_REQ怎么置1的。
不知道是不是我理解的问题,请汤老师详解一下??
|