Main

LogiCORE XAUI v9.1 and RXAUI v1.1 - Update needed for reset logic in block level for Spartan-6 Device GTP and Virtex-6 Device GTX wrappers

AR# 33486

Search For Another Answer

Topic IP-DS-XAUI
Last Updated 09/12/2009
Status Active
Description

Keywords: PCS, txreset, rxreset

For Spartan-6 FPGA and Virtex-6 FPGA designs, the transceiver PCS resets should be asserted when reset156 is asserted to insure that the PCS is held in reset until all clocks are valid.

Solution

The reset logic can be updated by making the following changes to the "example_design/<core_name>_block.v/vhd" file.

If using VHDL

1. Change:
mgt_txreset <= not lock;
To:
mgt_txreset <= reset156;

2. Add:
signal cbm_rx_reset : std_logic;

3. Change the reset output on the channel bonding monitor to a new signal name.
Change:
RXRESET => mgt_rx_reset
To:
RXRESET => cbm_rx_reset

4. Drive mgt_rx_reset with both the reset from the channel bonding monitor block and the reset156:

mgt_rx_reset <= cbm_rx_reset or reset156;

5. If using the Virtex-6 64-bit internal interface in "example_design/<core_name>_example_design.vhd":
Change:
reset_156_r1 <= '0';
To:
reset_156_r1 <= not txlock;

If using Verilog

1. Change:
assign mgt_txreset = ~lock;
To:
assign mgt_txreset = reset156;

2. Add:
wire cbm_rx_reset;

3. Change the reset output on the channel bonding monitor to a new signal name.
Change:
.RXRESET(mgt_rx_reset)
To:
.RXRESET(cbm_rx_reset)

4. Drive mgt_rx_reset with both the reset from the channel bonding monitor block and the reset156:

assign mgt_rx_reset = cbm_rx_reset | reset156;

5. If using the Virtex-6 64-bit internal interface in "example_design/<core_name>_example_design.v":
Change:
reset156_r1 <= 1'b0;
To:
reset_156_r1 <= ~txlock;


 
 
/csi/footer.htm