Lane-to-lane skew implementation

Post a reply

Confirmation code
Enter the code exactly as it appears. All letters are case insensitive.
Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :| :mrgreen: :geek: :ugeek:
BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON
Topic review
   

Expand view Topic review: Lane-to-lane skew implementation

Re: Lane-to-lane skew implementation

Post by Guest »

Thanks anyway! I appreciate your time!

Re: Lane-to-lane skew implementation

Post by support »

Hi,

I'm afraid I can't help much on this, because I never needed to implement anything this low-level. I can unfortunately only direct you to the spec in general. I'm not familiar with the parts dealing with the physical layer.

Regards,
Eli

Re: Lane-to-lane skew implementation

Post by Guest »

ok great. Lets talk about the rock-bottom level interface for a PCIe link. Let us assume that the skew between the lanes exceeds the symbol clock rate. Lets think of the elastic buffer as a dual clock FIFO. We can pop out words from the elastic buffers as soon all the FIFOs have a ready byte. The logic necessary would be simply the signal indicating whether data is available or not. This design seems sufficient to tolerate dynamic lane-skew variation. On the contrary, the specs and most of the resources on the internet state that a delay circuit that imposes static configurable delay is necessary. Are you following?

Re: Lane-to-lane skew implementation

Post by support »

Hello,

It depends on what you're working on. If you're doing the rock-bottom level interface for a PCIe link, it's possible that the bits in a single "popped" word will belong to different words as were sent from the transmitter, if the skew between the lanes exceeds the symbol clock rate. In that case, there's a need to fix this with some logic circuitry. For example, in a 5 GT/s link, a skew of 0.2 ns is enough to require deskewing logic.

On the other hand, if you're working with a PCIe core from some hardware vendor, you don't need to worry about this at all. This deskewing has been done for you.

Regards,
Eli

Lane-to-lane skew implementation

Post by Guest »

Hi Eli,

Thank you for your great efforts in responding to our doubts. Your help is valuable to us. I have question for you about the lane de-skew delay circuit. I cannot understand why is this circuit necessary. Cannot we just pop out the byte from the elastic buffers as soon as the byte is available in the elastic buffers of all lanes using some control signals? If this is implemented, even if the skew of the lanes change, the byte-popping out delay would dynamically change to adapt to the new skew. Is there something I am missing, or is this design valid?

Thanks!

Top