RTL to GDSii: Congestion Reduction strategies

Her kullanıcı için özel deneyim tasarlayan bettilt kişiselleştirilmiş hizmet sunar.

Kullanıcılar hızlı işlem yapmak istediklerinde bettilt bağlantısına yöneliyor.

Bahis tutkunları için ideal bir ortam yaratan bahsegel herkes için uygundur.

RTL to GDSii: Congestion Reduction strategies

In ASIC physical design, congestion occurs when there are more routing demands than available resources (tracks) in a region, leading to routing failures, increased delays, and DRC violations. Managing congestion is crucial for achieving a routable design with optimal performance.


Methods to Reduce Congestion

Macro Placement Optimization

    • Place large macros (RAMs, CPUs) at the periphery to free up routing channels.

    • Avoid placing macros in high-density standard cell regions.

    • Use channel spacing between macros for smoother routing.

Power Grid Planning

    • Avoid overly dense power stripes that block routing tracks.

    • Use staggered power stripes instead of continuous ones.

Hierarchical Floorplanning (Block-Level)

    • Divide the design into sub-blocks with controlled interconnect density.

    • Use fence regions to restrict cell placement near congested areas.

Cell Spreading

    • Increase cell spacing in congested regions (e.g., setPlaceMode -place_global_cell_spacing in Cadence Innovus).

    • Use density screens (-uniformDensity) to prevent hot spots.

  • Utilization Control

    Keep standard cell utilization ≤ 70-80% in congested areas.

    • Use partial placement blockage to restrict cell density.


Congestion-Driven Placement

  •  

    • Run global placement with congestion awareness (e.g., -timingDriven -congEffort high).

    • Use ECO placement to redistribute cells post-optimization.

Layer Assignment

    • Route local nets on lower metals (M1-M3) and global nets on higher metals (M4+).

  • Avoid excessive via stacking in dense regions.

    Track Utilization Balancing

  •  

    • Use alternate routing directions (e.g., M1: Horizontal, M2: Vertical).

    • Avoid routing bottlenecks by spreading signals across layers.

Non-Default Rules (NDR)

  •  

    • Use double-width spacing for critical nets to reduce conflicts.

    • Apply shielding for noise-sensitive nets to prevent detours.

Buffer & Inserter (Buf/Inv) Tree Balancing

    • Reduce fanout congestion by inserting buffers in high-fanout nets.

    • Use clock tree synthesis (CTS) optimizations to minimize skew-induced congestion.

Logic Restructuring

    • Replicate high-fanout cells to distribute load.

    • Split long wires with repeaters to reduce routing pressure.

Net Weighting

    • Assign higher priority to timing-critical nets (setNetWeight).

Congestion-Aware Synthesis

    • Use physical synthesis tools (e.g., Fusion Compiler, Genus iSpatial) to optimize for routability.

    • Apply gate sizing to reduce cell density.

    • Post-Route ECOs

    • Perform minor placement legalization to relieve congestion.

    • Reroute problematic nets with manual guidance.

Pin Access Optimization

    • Use offset pins or middle-of-line (MOL) routing to ease pin access.

    • Avoid pin congestion by spreading pins in macros.

DFM (Design for Manufacturability) Adjustments

    • Follow metal density rules to avoid CMP (Chemical Mechanical Polishing) issues.

    • Use fill cells to maintain uniform density.


Early-Stage Checks:

    • Use global routing congestion maps (e.g., in Innovus, ICC2).

    • Identify hotspots (red/yellow zones) in congestion reports.

Metrics to Monitor:

    • Overflow (%): Percentage of unroutable nets.

    • Cell Density: Should be < 80% in most regions.

    • Track Utilization: Should not exceed 90%.

Common Fixes:

    • If congestion is localized: Adjust placement, add routing blockages.

    • If global: Reduce utilization, optimize netlist.


    1. Initial Floorplan → Identify congestion hotspots.

    1. Adjust Macro Placement → Free up routing channels.

    1. Run Congestion-Aware Placement → Spread cells uniformly.

    1. Optimize Power Grid → Avoid blocking routing tracks.

    1. Rerun Routing & Verify → Check overflow reduction.


Summary

Final Tip: Use iterative refinement—congestion fixes often require multiple placement/routing trials.

Facebook
Twitter
LinkedIn
Email

2

2