cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ytlai
Visitor
Visitor
596 Views
Registered: ‎01-08-2019

Problem with ultrascale GTY 8B/10B with 5Gbps

Jump to solution

I am testing the ultrascale GTY 8B/10B with 5Gbps. FPGA is xcvu080.
By using the IP core, I have tried both qpll0 and cpll.
(By checking ug578, cpll is recommended under 5 Gbps.)
The data from TX is fixed as 16'h00BC, and tx_ctrl2 (tx_charisk) is set a 0'b00000001.
In this setup, RX should receive the same pattern and charisk is the same position.
But the data from RX looks totally crashed.
Here are some of the points that I have confirmed:
- Data path width is 16 bits, so userclk is ~250 MHz.
userclk for both TX and RX are generated with correct frequency.
gtwiz_userclk_tx_active and gtwiz_userclk_rx_active are both 1.
- rxcommadeten, rxmcommaalignen, and rxpcommaalighen are set to 0 by default.
- tx8b10ben and rx8b10ben are set to 0 by default.
- rxvalid port is all 0.
- cplllock is 1.
- cpllfbclklost and cpllrefclklost are both 1.
- All the resetdone, tx_done, rx_done are 1.

In summary, it is in clklost state (cpll is locked) and rxvalid is not ready.
I also tried to use cpllreset and gtwiz_reset_all to recover, but the situation is still the same.
Is there anyone know how to improve it or there is anything I missed to setup?
Thank you.

0 Kudos
Reply
1 Solution

Accepted Solutions
ytlai
Visitor
Visitor
389 Views
Registered: ‎01-08-2019

I found the solution. The setup below should be used:

rxcommadeten = 1

rxmcommaalignen = 1

rxpcommaalignen = 1

rxslide = 0

Then, the data from RX is correct.

View solution in original post

0 Kudos
Reply
4 Replies
roym
Moderator
Moderator
541 Views
Registered: ‎07-30-2007

>>

rxcommadeten, rxmcommaalignen, and rxpcommaalighen are set to 0 by default.
- tx8b10ben and rx8b10ben are set to 0 by default.

<<

Don't all of these need to be set to 1 for comma alignment to work?  Does the example design simulate properly?

 




----------------------------------------------------------------------------
Don't forget to reply, kudo, and accept as solution
Be sure to visit the Resources post periodically to keep up with the latest
https://forums.xilinx.com/t5/Serial-Transceivers/Serial-Transceiver-Forum-Guidelines-and-Useful-Resources/td-p/1173590
----------------------------------------------------------------------------


0 Kudos
Reply
ytlai
Visitor
Visitor
510 Views
Registered: ‎01-08-2019

Thank you pointing it out.
As far as I know, commaalignen and commadeten have to be set as 0, which means comma alignment is enabled. It is the same as in virtex 6 GTH and GTX (0 means enabled).
Also, tx8b10ben and rx8b10bin are both 1 actually. Sorry for the typos in original text.

0 Kudos
Reply
ytlai
Visitor
Visitor
498 Views
Registered: ‎01-08-2019

I checked the user guide again and I found the recommended way:

rxcommadeten = 1

rxmcommaalignen = 0

rxpcommaalignen = 0

rxslide = 0

Also, virtex 6 uses the same setup as above.

However, the RX data is still crashed.

 

 

0 Kudos
Reply
ytlai
Visitor
Visitor
390 Views
Registered: ‎01-08-2019

I found the solution. The setup below should be used:

rxcommadeten = 1

rxmcommaalignen = 1

rxpcommaalignen = 1

rxslide = 0

Then, the data from RX is correct.

View solution in original post

0 Kudos
Reply