Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

8b10b clock recovery?

Would it be possible to use an Altera FPGA (Arria II GX or Cyclone IV GX) to snoop on a 2.5 Gbps PCI Express link (via the PIPE interface), recover the clock and send out the recovered clock to one of the differential outputs? One of the differential output signals could then be used to trigger a scope for eye-diagram testing. The scope would then connect both channels to the diff signals (possibly using the math function to recreate the differential signal in the scope).

For this to work, the recovered output clock signal must be in phase with the input differential signal.

Thanks.

20 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    If it were me, I'd just use the complementary data signal to trigger the scope.

    Jake
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    My initial though was to clock the scope with one of the signals in the differential pair. This, of course, means that jitter will not be measurable since the scope will always trigger on the rising (or falling) edge of the signal, effectively not displaying the jitter.

    --- Quote End ---

    I need to correct myself. Jitter is defined as variations in the high or low bit times and due to this, the jitter will be visible as variations in the signal transitions in the right part of the eye diagram. Therefore, it should be fine to trigger the scope on one of the differential signals. It will not be accordingly to the PCIe spec's compliance rules but it will be useful as a comparison tool to find out whether signal degradation occurs in my setup.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    PCIe spec is a good point. In my understanding, it uses the reference clock as trigger in performance meaurements, as I already suggested.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Just to tie up all loose ends:

    --- Quote Start ---

    Second best case jitter is to recover the clock and use it to trigger the scope viewing non-reclocked data.

    --- Quote End ---

    How did you recover the clock? I have found no circuit that actually outputs the clock from a 2.5 gbps 8b/10b diff signal. If the solution is fairly simple i could build this circuitry into the 'SMA board' and get better overall result.

    Thanks.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    As I mentioned before. I was working with 3G SDI data not 2.5G 8b10b. There are a plethora of products that provide CDR for SDI.

    Jake
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    I have found no circuit that actually outputs the clock from a 2.5 gbps 8b/10b diff signal.

    --- Quote End ---

    The Mindspeed CDR devices mentioned by jakobjones e.g. do.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I could not see any recovered clock being output from the mindspeed devices. I however did not see any datasheet but rather block diagrams.

    If i'm not mistaken there is a 100 MHz reference clock that must be sent along with the differential signals. Since this should be phase aligned with the diff signals, or at the very least have low jitter in relation to the data, would it be possible to use the reference clock to trigger the scope?

    Also, must i feed the differential reference clock into the Cyclone IV for it to be able to consume the differential high-speed PCI express data? I searched the Cyclone IV handbook but could not find must information (it is late, though so i might have missed it).

    Thanks.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I saw a block diagram of a Mindspeed 4 channel CDR, that has Data inputs and Clock + Data outputs. Clock means recovered clock in my understanding.

    As I previously mentioned, the PCIe Refclk can be used as a trigger for jitter measurements, because all Tx signals are phase locked to it. See also PCie 2.0 Base Spec chapter 4.3.2. jitter budgeting and measurement for a discussion of the PCIe jitter model.

    If you use REFCLK as a trigger, you see the transmitter fully contributing to measured jitter. But I don't think that this is a problem in comparative measurements.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    the PCIe Refclk can be used as a trigger for jitter measurements, because all Tx signals are phase locked to it.

    --- Quote End ---

    Thanks. I came to the same conclusion and this is what i'll do.