wr_endpoint: keep rx pcs and rx clk alignment fifo in reset until serdes is locked
Earlier we were resetting clock alignment fifo (ep_rx_path) when GTX was still not locked and was not producing rx clock. Xilinx document ug363 (Virtex-6 FPGA Memory Resources) says that dual-clock fifo should have reset signal asserted for at least three clock cycles. Chipscope says our fifo was reset while rx clock was not yet there. This apparently was causing Xilinx fifo block going crazy once every few boots. As a result FIFO was asserting _empty_ and _almost_full_ outputs at the same time causing the rx path to stall forever.
Showing
- modules/wr_endpoint/endpoint_pkg.vhd 2 additions, 0 deletionsmodules/wr_endpoint/endpoint_pkg.vhd
- modules/wr_endpoint/endpoint_private_pkg.vhd 2 additions, 0 deletionsmodules/wr_endpoint/endpoint_private_pkg.vhd
- modules/wr_endpoint/ep_1000basex_pcs.vhd 5 additions, 0 deletionsmodules/wr_endpoint/ep_1000basex_pcs.vhd
- modules/wr_endpoint/ep_clock_alignment_fifo.vhd 2 additions, 1 deletionmodules/wr_endpoint/ep_clock_alignment_fifo.vhd
- modules/wr_endpoint/ep_rx_path.vhd 1 addition, 0 deletionsmodules/wr_endpoint/ep_rx_path.vhd
- modules/wr_endpoint/ep_rx_pcs_16bit.vhd 15 additions, 11 deletionsmodules/wr_endpoint/ep_rx_pcs_16bit.vhd
- modules/wr_endpoint/ep_rx_pcs_8bit.vhd 13 additions, 10 deletionsmodules/wr_endpoint/ep_rx_pcs_8bit.vhd
- modules/wr_endpoint/wr_endpoint.vhd 7 additions, 4 deletionsmodules/wr_endpoint/wr_endpoint.vhd
- modules/wr_endpoint/xwr_endpoint.vhd 2 additions, 0 deletionsmodules/wr_endpoint/xwr_endpoint.vhd
Please register or sign in to comment