Skip to content

Path-based analysis (PBA) for critical paths #14

@robtaylor

Description

@robtaylor

Summary

Re-analyze critical paths with path-specific slew propagation to recover pessimism from graph-based analysis (GBA).

Current State

GEM's STA (compute_timing()) uses graph-based analysis — worst-case delay at each pin regardless of which path is being analyzed. This is pessimistic because a pin's worst-case delay may come from a different path than the one being analyzed.

Proposed Approach

  • After GBA identifies top N critical paths, re-analyze each with path-specific input slew values
  • Use Liberty NLDM (Non-Linear Delay Model) tables to compute delay as f(input_slew, output_load)
  • Typically recovers 5-10% margin on critical paths
  • Only needed for paths close to violation threshold

Impact

Medium — reduces false-positive timing violations and gives more realistic slack values.

Effort

Medium-High — requires NLDM table lookup and slew propagation along specific paths.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions