Skip to content

Commit

Permalink
variables.yaml: tweak docs
Browse files Browse the repository at this point in the history
Signed-off-by: Øyvind Harboe <[email protected]>
  • Loading branch information
oharboe committed Dec 8, 2024
1 parent 6f7753a commit 0bb1ef0
Showing 1 changed file with 8 additions and 5 deletions.
13 changes: 8 additions & 5 deletions flow/scripts/variables.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -390,23 +390,26 @@ HOLD_SLACK_MARGIN:
hold repair using a negative HOLD_SLACK_MARGIN.
Exiting timing repair early is useful in exploration where
the .sdc has a fixed clock period at designs target clock period and where
the .sdc has a fixed clock period at the design's target clock period and where
HOLD/SETUP_SLACK_MARGIN is used to avoid overrepair(extremely long running
times) when exploring different parameter settings.
When an ideal clock is used, that is before CTS,
a clock insertion delay of 0 is used in timing paths. This creates
a mismatch between macros that have a .lib file from after CTS, when
the clock is propagated. To mitigate this, OpenSTA will use subtract
the clock insertion delay of macros when calculating timing.
This works with macros built with OpenROAD that have min_clock_tree_path
and max_clock_tree_path set. This is less accurate than if OpenROAD had
the clock insertion delay of macros when calculating timing with ideal
clock. Provided that min_clock_tree_path
and max_clock_tree_path are in the .lib file, which is the case for
macros built with OpenROAD. This is less accurate than if OpenROAD had
created a placeholder clock tree for timing estimation purposes
prior to CTS.
There will inevitably be inaccuracies in the timing calculation prior
to CTS. Use a slack margin that is low enough, even negative, to
avoid overrepair.
avoid overrepair. Inaccuracies in the timing prior to CTS can also
lead to underrepair, but there no obvious and simple way to avoid
underrapir in these cases.
Overrepair can lead to excessive runtimes in repair or too much buffering
being added, which can present itself as congestion of hold cells or
Expand Down

0 comments on commit 0bb1ef0

Please sign in to comment.