← Physical Design Interviews

Interview Question · Debug

Diagnosing Routing Congestion

L1 JuniorL2 Mid-Levelroutingcongestion
  • Likely at Analog Devices
  • Likely at MediaTek

The Question

The interviewer asks

The global router reports the overflow below for a block with two macros and a narrow channel between them. How do you find the cause and pick a fix?

log
Two hardened MACs, glue logic between them (lesson L3.3, measured global route)
channel 9.175 um, halo 2.0     overflow 522   usage 18.37 %   wirelength 14828 um
channel 36.775 um              overflow 0                     wirelength  4981 um
pins on top edge, halo 4.6     overflow 0                     wirelength  3774 um
Reveal the Model Answer

Overflow concentrated in one place, with low usage overall, points to a local cause. Here that cause is the channel, not a block that is too full. Look at where the demand comes from. It may be nets crossing the channel, pin access at the macro edges, or straps that took the tracks. The fixes act on that cause: a wider channel, pins turned away from it, or a different halo (keep-out ring). Each fix is measured by routed wirelength and timing, not by overflow alone.

Find the Cause of the Overflow FirstArrows go from the symptom to its possible causes, then to the fix that acts on each cause.
Find the cause of the overflow firstArrows go from the symptom to its possible causes, then to the fix that acts on each cause. component Overflow in onechannel Usage low everywhereelse component Nets crossing thechannel component Pin access at themacro edges component Power straps onthe tracks component Wider channel, orpins turned away component A different halo component Count the freetracks again
Read the diagram as text
  • Overflow in one channel: Usage low everywhere else
  • Nets crossing the channel
  • Pin access at the macro edges
  • Power straps on the tracks
  • Wider channel, or pins turned away
  • A different halo
  • Count the free tracks again
  • Overflow in one channel → Nets crossing the channel
  • Overflow in one channel → Pin access at the macro edges
  • Overflow in one channel → Power straps on the tracks
  • Nets crossing the channel → Wider channel, or pins turned away
  • Pin access at the macro edges → A different halo
  • Power straps on the tracks → Count the free tracks again

Judge each fix by routed wirelength and timing, not by overflow alone.

Self-Check

Tick each key point you covered in your answer.

What Interviewers Listen For (Junior)

A good junior answer reads overflow and usage together. It suspects the channel rather than a block that is too full.

Cross-Questions

Where the interviewer goes next. Open a node to practise that follow-up.

WhyWhat IfProve ItCompareScale It

  1. Diagnosing Routing Congestion
  2. WhyGlobal Routing vs Detailed RoutingL1 JuniorL2 Mid-Level

    Why does a clean global route not guarantee a clean detailed route?

    Reveal the Model Answer

    Global routing plans each net through coarse tiles and counts tracks per tile edge. That says nothing about how a wire reaches a pin or which vias fit. Detailed routing picks real tracks, vias and pin access under width, spacing, area and enclosure rules. It can run out of iterations and leave violations in a readable layout, so its own count matters too.

    Self-Check

    Tick each key point you covered in your answer.

  3. What IfWhat a Clean Router Count CoversL2 Mid-Level

    What if the detailed router reports zero violations? Is the layout DRC clean?

    Reveal the Model Answer

    Not necessarily. The router checks the rules it knows from the technology LEF, a subset of the foundry deck. Full DRC on the merged layout, with cells, fill and every rule, is a separate run. Antenna checking is separate again. Sign-off quotes which checker ran with which deck.

    Self-Check

    Tick each key point you covered in your answer.

  4. CompareDensity Knobs vs Floorplan FixesL2 Mid-LevelL3 Senior

    Compare fixing congestion with placement density against fixing it in the floorplan.

    Reveal the Model Answer

    Density and routability-driven placement spread cells. That helps when demand comes from local crowding. It does nothing for nets that must cross a fixed gap. Floorplan fixes, such as macro position, channel width or pin edges, change where the nets go. Density changes distances but not the netlist's connectivity, so a connectivity hot spot needs the floorplan answer.

    Self-Check

    Tick each key point you covered in your answer.

  5. Prove ItSolve L3.3.1: Open a Route Past the MacrosSimulator-graded

    Show it, don't just say it: this Silicon Lab problem is graded by the simulator.

    Open Problem L3.3.1

  6. Scale ItRelieving Placement CongestionL2 Mid-LevelL3 Senior

    The global-route map shows overflow in one corner of the block. Which remedies do you try, in what order?

    Reveal the Model Answer

    Start cheap and local: lower the target density or turn on routability-driven placement, which inflates cells in crowded regions. Then look at the cause, such as a pin cluster, a wide multiplexer or a macro channel. Fix that cause with a pin plan or floorplan change. Lower utilization is the expensive last resort. Re-check timing after each step, because spreading costs wire.

    Self-Check

    Tick each key point you covered in your answer.

  7. Prove ItSolve L6.3.1: Give the Crossbar Pins RoomSimulator-graded

    Show it, don't just say it: this Silicon Lab problem is graded by the simulator.

    Open Problem L6.3.1

  8. WhyWhy Local Congestion Fixes Come FirstL2 Mid-Level

    Why try routability-driven placement before lowering the utilization of the whole block?

    Reveal the Model Answer

    Routability-driven placement adds room only where the router predicts overflow. Lower utilization grows the whole block, so area and wire grow everywhere. The local fix keeps the dense, short-wired regions that had no problem. So it is the cheaper first step.

    Self-Check

    Tick each key point you covered in your answer.

    Wrong Altitude

    "Lower utilization fixes congestion, so start there."

    It is the most expensive remedy, because it changes the block size and the parent floorplan. Try the local fixes first.

What People Get Wrong

Common wrong answers and why they fail.

Misconception

"Overflow means the block is too full; lower the utilization."

Total usage here is about 18 %. The overflow is in one channel, and widening it or turning the macro pins removes all of it without touching utilization.

Source ASIC Point lesson L3.3 (measured global route)

Half-Truth

"Give the router more layers and the problem goes away."

More layers do not help pins that cannot be reached, or a channel whose nets must all cross one gap. Enabling layers without rerouting, extracting and rechecking is not a fix.

Source ASIC Point lessons L6.3 and L6.6

Learn It, Then Prove It