• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. PCB Design
  3. High speed DDR multi-tiered T routing

Stats

  • Locked Locked
  • Replies 7
  • Subscribers 163
  • Views 17443
  • Members are here 0
More Content
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

High speed DDR multi-tiered T routing

archive
archive over 17 years ago

Hey all,

I'm trying to setup some matched length T routing for some high speed DDR memory. I have scheduled the nets properly with virtual pins and setup pin pairs in constraint manager under Relative Propagation Delay but I don't understand how to specify a length range for the individual pin pairs of the T route. Should this be setup somewhere besides Relative Prop Delay?

Image 1: multi-tiered T routing of DDR address buss. All segments A must match length. All segments B & C must match length. All segments D, E, F and G must match length. Data buss length must match address segment length to each DDR.

I'm running 15.5.1 with the performance option.

Any help would be appreciated....need to get moving on this board!!!!!

  • DDRTroute.JPG
  • View
  • Hide
  • Cancel
Parents
  • archive
    archive over 17 years ago

    Hello Hermann,
    The following is a generic approach that can be applied to any bus.

    Start with a transaction going in one direction on the bus.

    Start with the transmitter of the transaction.
    Take the INTERNAL ASIC clock signal as a reference for that transaction.
    Now look at each signal in turn and find the skew relative to the internal clock signal (note that the external clock signal will also have a skew relative to the internal clock). The skew will probably be expressed as two figures giving you the earliest and latest signals.

    Next you need to formulate an equation for each line on the bus.
    You need to know about the skew relative to that signals timing reference.
    For example D0 references DQS0
    If DQS can vary +/- 100ps (I'm making these values up, they bear no resemblance to real life) relative to the internal ASIC clock, amd
    D0 can vary +/-300ps relative to the internal ASIC Clock then

    D0 can vary +/- 400ps relative to DQS.

    Next, you go to the datasheet for the receiver of the transaction.
    Look up the required relaitonship for D0 to DQS. You may find that you have +/-1ns. So, you know that the maximum skew allowed by the net is 1ns - 400ps =(+/-) 600ps.

    You now have a static timing equation. But only for data travelling in one direction. If data can flow the other way, you need to swap the direction of data flow and repeat the process. You will then have two equations. Lets say that one direction say the nets can have +/-600ps and the other gives you +400 / -700. Your constraint will become:
    D0 = DQS +400/-600 ps.

    You do need to take into account any noise injected into the net that will make the signal slower to settle. The noise could be reflections or crosstalk, or even groundbounce. So your static equation is a start, but does not emcompass everything you need to know.

    Please don't ask me to give further detail than this! Mainly becasue I'd be guessing at the answers, I'm a logic designer, whilst I speak a bit of SI and know a bit about high speed techniques, I am not a SI engineer.

    Hope that helps you.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • archive
    archive over 17 years ago

    Hello Hermann,
    The following is a generic approach that can be applied to any bus.

    Start with a transaction going in one direction on the bus.

    Start with the transmitter of the transaction.
    Take the INTERNAL ASIC clock signal as a reference for that transaction.
    Now look at each signal in turn and find the skew relative to the internal clock signal (note that the external clock signal will also have a skew relative to the internal clock). The skew will probably be expressed as two figures giving you the earliest and latest signals.

    Next you need to formulate an equation for each line on the bus.
    You need to know about the skew relative to that signals timing reference.
    For example D0 references DQS0
    If DQS can vary +/- 100ps (I'm making these values up, they bear no resemblance to real life) relative to the internal ASIC clock, amd
    D0 can vary +/-300ps relative to the internal ASIC Clock then

    D0 can vary +/- 400ps relative to DQS.

    Next, you go to the datasheet for the receiver of the transaction.
    Look up the required relaitonship for D0 to DQS. You may find that you have +/-1ns. So, you know that the maximum skew allowed by the net is 1ns - 400ps =(+/-) 600ps.

    You now have a static timing equation. But only for data travelling in one direction. If data can flow the other way, you need to swap the direction of data flow and repeat the process. You will then have two equations. Lets say that one direction say the nets can have +/-600ps and the other gives you +400 / -700. Your constraint will become:
    D0 = DQS +400/-600 ps.

    You do need to take into account any noise injected into the net that will make the signal slower to settle. The noise could be reflections or crosstalk, or even groundbounce. So your static equation is a start, but does not emcompass everything you need to know.

    Please don't ask me to give further detail than this! Mainly becasue I'd be guessing at the answers, I'm a logic designer, whilst I speak a bit of SI and know a bit about high speed techniques, I am not a SI engineer.

    Hope that helps you.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information