2 of 2 people found this helpful
Your only solace is that it's going to look awesome when you're done, far better than autorouting. Otherwise, it's just a lot of work. I'm used to routing dense DD2 and DDR3 designs, so my suggestions tend towards getting all the routing into a small area, and apply to all length matching requirements, not just diff pairs.
- You need to use Router. It has the functionality you need.
- Set your backup frequency to 5 minutes. Diff pair routing and editing seem to be my main cause of Router crashes. Program stability has improved a great deal, so use the latest version of the software.
- Learn to use the Stretch command. It will be your best editing tool, especially for length matching. The Plower settings on the Options>Routing tab affect how this works. Route and Stretch are all you need.
- Learn how the Spreadsheet View works. You can track all the lengths there.
- I recommend placing the diff pairs in their own class. With DDR routing, for example, a different class for each byte lane is helpful. I find Layout easier to use than Router for assigning classes. You can view by class in the spreadsheet.
- There's some Options>Global>General settings that help. "Show guard bands on object" lets you see the required spacing when you get close. "Distinguish protected traces and vias" helps you identify what's done and what's left.
- Set up rules for trace width and spacing of the pairs. For best results, get the numbers from your fab house. Outer layers will usually have different values than inner layers.
- Setup a reasonably fine routing grid. The smaller it is, the better diff pair routing works, but too small makes it harder to edit.
- Route all the pairs without regard for length. There's no point to length matching if they can't fit in the first place.
- The longest pair will define the length matching criteria as the high end of the tolerance window.
- Identify the longest and if you can, make it shorter, although sometimes it needs to get longer to allow room for the other pairs.
- When routed and length matched, protect the net to prevent it being edited accidently. Shoving another net can cause an existing route to lose a loop or two.
- Start with the pairs next to the longest, and use that as the border to hug, within proper separation requirements of course. When routed, protect the net.
- At least one section of each of the remaining routes should be trombone style. This is the easiest structure to length tune using the stretch command.
- You can hold down the CTRL key and window select the ends of one of the trombones. Select the inner route, and you can slide the diff pair outwards to make it longer. Select the outer route, and you can slide inwards to make it shorter. The required spacing between the pairs will be maintained as long as you're careful. The visible guard bands will guide you. With DRC on, you can't make them too close, and if they're too far apart, you'll see white space.
- Repeat until finished. I might have missed something, or need to explain something further, so don't hesitate to ask.
1 of 1 people found this helpful
I agree with everything David said above. Will add in router you can window select 4 miters and 2 ends of serpentine to make it easier to stretch. I layout expand trace width to trace + space and route traces touching each other. When you set width back to normal you have proper gap. If you have room come toward pins with longest trace centered toward pad then other trace goes toward its pad at last distance not centered between pads. This will add a little distance to short trace and not change or maybe shrink long trace.
Have you tought about upgrading to PADS Pro ?
Thank you David, I'm going to check out all of your suggestions! Yours was a very helpful answer. I'll let you know how it goes.
As far as PADS pro - I just started here in Jan. and am still learning the ropes. Maybe when I've proved myself and feel secure I'll look
at suggesting options. Until then, I'm going old-school I guess.
~Really appreciate the feedback!