What is MCMM/DMSA (multi-mode multi-corner / distributed multiscenario analysis), and what commands does PrimeTime provide to manage it?
From PDVerse STA Mentor Guide · pdVerse Mentor Guide
Technical Explanation
MCMM is verifying and optimizing timing across the cross-product of functional modes and analysis (PVT) corners, with each mode-corner combination forming a scenario; DMSA is the distributed execution architecture where a master PrimeTime session coordinates per-scenario worker sessions and merges their results.
Timing-path Reasoning
A design rarely operates at just one condition — it has multiple functional modes (e.g., test, functional, low-power) and multiple PVT/analysis corners, and MCMM analyzes the full cross-product of these as distinct scenarios, declaring the design as meeting timing only when the worst slack across all scenarios is acceptable. DMSA implements this at scale by having a master session coordinate worker sessions, one per scenario, then merging their results and driving merged ECO generation so fixes account for all scenarios simultaneously rather than being optimized in isolation for just one.
Command
create_scenario; current_scenarioSwitch-by-switch
create_scenario defines a new mode/corner combination as a distinct scenario for
analysis. current_scenario selects or reports which scenario context subsequent
commands operate within. report_global_timing explicitly supports distributed multiscenario analysis (DMSA) and simultaneous multivoltage analysis (SMVA/DVFS)
reporting across these scenarios.Expected Result
The full cross-product of modes and corners is analyzed as separate scenarios, worker sessions compute per-scenario results in parallel, and the master session merges them so that the design's overall signoff status reflects the worst slack across every modecorner combination, and ECO fixes are derived to be safe across all scenarios at once.
Failure Symptoms
Analyzing only a subset of mode-corner combinations, or fixing violations scenario-byscenario without merged ECO coordination, risks a fix that helps one scenario while worsening another, or an overall signoff declaration that misses the true worst-case scenario.
Root Cause
Design timing behavior genuinely differs across functional modes and PVT corners, so any analysis or fix that only considers a single scenario cannot guarantee correctness across the full operating envelope the chip must support.
Mentor Note — Debugging Procedure
Confirm all intended mode-corner combinations are declared as scenarios (via create_scenario), verify current_scenario context when interpreting single-scenario reports, and use the DMSA-aware report_global_timing to check the merged worstcase result across all scenarios before declaring signoff. MCMM defines the cross-product of modes and corners as scenarios that all must pass, and DMSA is the distributed master/worker architecture that makes analyzing and fixing across that full scenario set tractable at scale.
Continue learning free
Get a practical low-power chapter
Receive the existing “Low Power and Multivoltage Fundamentals” PDF chapter and its download link by email.
Continue practising