IntermediateQuestion 194 of 222Source: Synopsys ICC2 Implementation User Guide X-2025.06-SP2: Performing Layout-Versus-Schematic Checking; Synopsys IC Validator User Guide S-2021.06-SP2: LVS-Specific Output Files

How do you debug LVS opens and floating shapes?

From PDVerse PnR Interview Handbook · pdVerse Mentor Guide

Short Answer

An open means the pins of one net are not connected by its shapes, so one schematic net extracts as two or more layout nets. A floating shape is a piece of a net that touches none of its pins. Find both in ICC2 with check_lvs (ICC2) using full error counts and detailed open locations, fix power nets before signal nets, then confirm in IC Validator.

Technical Reference DiagramHow do you debug LVS opens and floating shapes?
A layout of one VSS net split into two islands by a missing via at a strap crossing, with the open marked by its bounding box and a detailed marker, and a separate floating M3 stub left behind by an ECO that touches no pin.

Technical Explanation

  • An open splits a net into fragments. In extraction each fragment gets its own net, so the devices on the smaller piece no longer match the schematic.
  • check_lvs -checks {open floating_routes} (ICC2) runs just those two checks. By default it reports at most 20 errors per type, so an ECO that left 380 nets open looks like 20 problems. Use -max_errors 0 (ICC2) to see them all.
  • By default opens are reported as the bounding box of the whole open net, and floating pins are not reported. -open_reporting detailed (ICC2) gives the actual break locations at some runtime cost, and -report_floating_pins true (ICC2) lists pins left hanging.
  • Power and ground terminals are treated as unconnected voltage sources by default. With -treat_terminal_as_voltage_source true (ICC2) they count as connected, so a net joined only through its terminals stops reporting opens. Pick the setting that matches how the net is really connected, and write it down.
  • Floating shapes are often leftovers: a stub after an ECO reroute, a strap segment cut by a blockage, a route that ends short of its pin. They add metal that no net needs, can create DRC or density problems, and sometimes point to the open next to them.
  • In IC Validator an open shows up as unmatched nets at a failed equivalence point in cell.LVS_ERRORS (ICV). If both fragments carry the same label, text_net() (ICV) also reports a text open.
  • Common roots are a missing via stack where a strap crosses a macro ring, a rail cut when a filler was removed, and a PG pin on a macro that the grid never reached.

What To Check

  • Open and floating counts with -max_errors 0 (ICC2), not the default 20.
  • Which nets the opens sit on: PG first, then clocks, then data.
  • Whether the opens cluster around one macro, one strap crossing or one ECO region.
  • The terminal setting used, so a clean result means what you think it means.
  • cell.RESULTS (ICV) for the LVS verdict after the fix.

Command Checks & Actions

ICC2 (icc2_shell)check_lvs -checks {open floating_routes} -max_errors 0

Reports every open net and floating shape instead of the first 20 per type.

ICC2 (icc2_shell)check_lvs -checks open -open_reporting detailed -report_floating_pins true

Gives exact break locations and lists floating pins on the nets that are open.

ICC2 (icc2_shell)check_lvs -checks open -treat_terminal_as_voltage_source true

Treats PG terminals as connected, to separate true on-chip opens from nets joined only through terminals.

IC Validator (icv)icv -i top.gds -c top -s top.v -sf VERILOG lvs_runset.rs

Runs signoff LVS on the streamed GDS against the Verilog netlist.

IC Validator (icv)cell.LVS_ERRORS

Shows the failed equivalence points and unmatched nets left by any remaining open.

Healthy, Suspicious & Hard-stop Results

  • Healthy (illustrative): 0 opens and 0 floating shapes with -max_errors 0 (ICC2), and the LVS header reads PASS.
  • Suspicious (illustrative): Exactly 20 opens reported, which is the default cap and hides the real count, or a few floating stubs all inside one ECO region.
  • Hard stop: Any open on a power or ground net inside a macro ring or a switched domain. That block cannot sign off IR drop or LVS until it is joined.

Common Mistake

The Trap: Reading the default check_lvs (ICC2) output, seeing 20 opens and planning a day to fix them by hand. With -max_errors 0 (ICC2) the real count is 380 open nets, all in one region where the ECO routing run stopped before it finished, so one rerouting run fixes them and hand edits were the wrong plan.

What The Interviewer Is Testing

  • Knowledge that check_lvs (ICC2) caps output at 20 per type and reports opens as bounding boxes by default.
  • Understanding of what the terminal option changes and why the choice must be deliberate.
  • Can the candidate tie an ICC2 routing open to the IC Validator compare result?

Follow-up Question & Model Response

"What is the difference between an open net and a floating shape?"

Candidate Model Response: An open net is a net whose pins are not all joined by its shapes, so it extracts as more than one net. A floating shape belongs to a net but touches none of that net's pins. An open always breaks LVS for the devices on the cut-off piece. A floating shape may not break the compare at all, but it is usually debris from an edit and often sits right next to a real open.

Practical Example

Tapeout Scenario: After a late ECO, check_lvs -checks {open floating_routes} -max_errors 0 (ICC2) reports 7 open nets and 12 floating shapes (illustrative). With -open_reporting detailed (ICC2), the VSS open is located at one SRAM, where a via stack between the M8 strap and the M7 ring was never dropped. The other 6 are signal nets where the ECO route stopped short of the pin. Adding the via stack and rerouting the 6 nets leaves 0 opens, and the 12 floating stubs are deleted. IC Validator then reports LVS Compare Results: PASS.

PnR Flow Mentor Guide

Read the complete 8-chapter PnR Flow Mentor Guide free on the web — library setup through placement, clock tree synthesis, routing, chip finishing, hierarchical implementation, and ECO, all the way to stream-out.

PnR Flow Physical Design Mentor Guide — eight chaptersPnR Flow Mentor GuideEight chapters, library setup through to stream-out. →