Monte Carlo Timing Analysis

Hard MATLAB Estimation Asked at Synopsys
Solve this problem

Estimate the yield of a timing path under process variation by Monte Carlo sampling the gate delays and counting how often setup time is met.

Constraints

  • Path is a list of nominal gate delays with a percentage sigma.
  • Delays are lognormally distributed so they cannot go negative.
  • Report yield as the fraction of runs meeting the clock period.
  • Also report the mean and the 3-sigma delay.
  • Use at least 10000 trials.
  • Seed the generator so results are reproducible.
Starter codeMATLAB
1function result = timing_yield(nominal_delays, sigma_pct, clock_period)2% TODO3end