cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
rickloh
Visitor
Visitor
5,145 Views
Registered: ‎10-01-2015

Determine whether CDR locked successfully

Jump to solution

Hi,

 

I am instantiating a GTP transceiver on the Artix-7. My question is in regards to the CDR locking.

The documentation and datasheet (ug482 , ds181) do not provide the answer to my question.

All I can find is a reserved CDR-lock signal and that "a successful CDR lock is determined by analyzing the quality of the data".

I can't use a signal that asserts when the incoming data is "of quality", because the CDR lock occurs on a random bit. This means that the data I receive will not be the data I sent, until my RxSlide statemachine has taken effect.

This statemachine, in turn, requires the following to be true in order to start RxSlide-ing:

  * PLL1 has locked

  * TxRstDone is asserted

  * RxRstDone is asserted

  * The CDR has locked successfully

This causes a loop, so I need a concrete way to determine whether the CDR has in fact locked.

I have analyzed the CDRLock signal, which seems to show distinguishable behavior separating out-of-lock and locked. Should I use a filtered version of that signal, disregarding the fact that it's a reserved signal without any documentation?

 

Thank you in advance for taking the time to reply.

0 Kudos
1 Solution

Accepted Solutions
dwisehart
Scholar
Scholar
9,523 Views
Registered: ‎06-23-2013

I have seen the same with the CDRlock signal.  So far as I know you cannot use it.

 

What I do is go ahead and keep sliding--with pauses between each slide.  When I see the correct idle character repeating I know that CDR and the slide are complete.

View solution in original post

0 Kudos
2 Replies
dwisehart
Scholar
Scholar
9,524 Views
Registered: ‎06-23-2013

I have seen the same with the CDRlock signal.  So far as I know you cannot use it.

 

What I do is go ahead and keep sliding--with pauses between each slide.  When I see the correct idle character repeating I know that CDR and the slide are complete.

View solution in original post

0 Kudos
rickloh
Visitor
Visitor
5,088 Views
Registered: ‎10-01-2015

I just happened to notice that RxCDRLock seems data dependent as well, so I'll just use the method you suggested. I'm thinking I should RxSlide until RxByteIsAligned = 1 and the data is as expected. Then while the link is up, I'll have the lock be considered as 0 when I find any RxNotInTable's... not the cleanest solution and certainly not bug free, but I see no other way currently.

0 Kudos