12.07.2015 Views

Using the Fanout Command Effectively

Using the Fanout Command Effectively

Using the Fanout Command Effectively

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Allegro PCB Router Application Note<strong>Using</strong> <strong>the</strong> fanout command effectivelySource: Cadence Engineering March 1998Revised by: Geoffrey Indrajo March 1998Edited by: David Busdeicker August 2001This application note explains when and how you can best use <strong>the</strong> basic fanout commandin ALLEGRO PCB ROUTER.OverviewThe fanout command generates escape wires and vias for SMD pins. Because SMDcomponents are so common in modern PCB designs, fanout is one of <strong>the</strong> most frequentlyused commands in ALLEGRO PCB ROUTER. This application note discusses when andhow you can best use <strong>the</strong> basic fanout command in ALLEGRO PCB ROUTER.<strong>Using</strong> <strong>Fanout</strong><strong>Fanout</strong> is one of <strong>the</strong> first commands you should use if your PCB design incorporatesSMD components. If you do not generate escape wires and vias for <strong>the</strong> pins of SMDcomponents, those pins will probably not be connected during autorouting.After running fanout, you should investigate any remaining unroutes to assure that <strong>the</strong>autorouter will achieve 100% completion overall during <strong>the</strong> main routing phase.The following tips about using fanout should improve your success in autorouting.• Do not use fanout if <strong>the</strong> design does not have SMD components.• Do not use fanout if <strong>the</strong> design is restricted to only one or two signal layers. The vias placed during fanout willblock much of <strong>the</strong> routing area that is needed by <strong>the</strong> autorouter in designs that only have one or two signallayers. This situation will likely prevent <strong>the</strong> autorouter from achieving 100% completion. You should only usefanout on designs that have four or more signal layers.• If <strong>the</strong> design contains buses (groups of pins that belong to <strong>the</strong> same net and that are located on <strong>the</strong> same X orY coordinate), and you are using <strong>the</strong> bus_diagonal command, do not use <strong>the</strong> fanout command first. The fanoutcommand must follow <strong>the</strong> bus_diagonal command in all ALLEGRO PCB ROUTER versions prior to version 8.0.• Generally, you will see very little improvement by attempting to run more than five fanout passes. If certain SMDcomponents are not fanned out after five passes, problems with placement, pin spacing, or o<strong>the</strong>r clearancerules are inhibiting <strong>the</strong> fanout.Investigating fanout unroutes


One way to resolve fanout unroutes is to highlight and inspect all of <strong>the</strong> fanout violations.To do this, use <strong>the</strong> command highlight no_fanout or choose Highlight from <strong>the</strong> Viewmenu, and <strong>the</strong>n select SMD Pads Without <strong>Fanout</strong>s.After considering this overall view of <strong>the</strong> fanouts, you now have <strong>the</strong> option to globallychange a parameter on your design, or to closely investigate each problem individually,correcting <strong>the</strong>m one at a time.To look at each fanout unroute1. From <strong>the</strong> View menu, choose Visit.This displays <strong>the</strong> Visit dialog box.2. Click <strong>the</strong> SMD tab.3. Select SMD Pads Without <strong>Fanout</strong>s.4. Click First to visit <strong>the</strong> first instance, and <strong>the</strong>n click Next to visit <strong>the</strong> subsequent instances.The count shown in <strong>the</strong> Current text box indicates which instance you are currently visiting, out of a total count.Each failure you visit will display <strong>the</strong> pad in <strong>the</strong> center of <strong>the</strong> screen. These should be highlighted if you invoked<strong>the</strong> highlight no_fanout command earlier.In <strong>the</strong> example Visit dialog box shown here, <strong>the</strong>re are 91 pads without fanouts to visit.However, <strong>the</strong> highlight no_fanout command would report that <strong>the</strong>re are 119 pads withoutfanouts. This difference is due to <strong>the</strong> fact that Visit does not count power and ground netsthat are not fanned out. This might be corrected in a future release.


Ano<strong>the</strong>r discrepancy you may encounter is an occasional small difference between <strong>the</strong>number of fanout failures listed in <strong>the</strong> status file report (report status window) ascompared to <strong>the</strong> number of failures noted in <strong>the</strong> highlight command. This differenceoccurs primarily if you use multiple fanout passes. The difference between <strong>the</strong> tworeports should be small. The number of fanouts reported by <strong>the</strong> highlight command isalways <strong>the</strong> correct number, and you should rely on that count.Fixing fanout problemsThe following guidelines will help you resolve some of <strong>the</strong> more common problems youmay encounter with fanout.• Check <strong>the</strong> via grid size. A via grid that is too large will significantly reduce <strong>the</strong> number of places where vias arepermitted. Consider setting a via grid of 1 and using via-to-via clearance rules.• Use smaller vias. This solution will yield more board area for placing vias around dense SMD componentpatterns.• Check <strong>the</strong> component placement and try to adhere to <strong>the</strong> following guidelines for placement:ooPlace similarly sized SMD components back-to-back on opposite sides of <strong>the</strong> board, where possible.If similarly sized SMD components are not available, place as many SMD discrete components aspossible on <strong>the</strong> opposite side of <strong>the</strong> larger SMD footprints.Both of <strong>the</strong>se placement tips should yield more area for via placement.• <strong>Using</strong> <strong>the</strong> interactive editor, manually edit <strong>the</strong> existing fanouts to make space for <strong>the</strong> escape vias that are stillneeded to complete <strong>the</strong> fanout of <strong>the</strong> unrouted SMD pins.ConclusionHigh fanout completion is essential to achieving good autorouting results. If you cannotfanout certain SMD components in <strong>the</strong> design, you will probably not achieve 100%completion during autorouting. ALLEGRO PCB ROUTER provides tools to find,investigate and correct areas where you might have problems with fanout. By applying<strong>the</strong>se effectively, you will create better PCB designs and achieve higher success rates inautorouting <strong>the</strong>m.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!