Why Does an Unconditional Default Arc Still Show When timing_disable_cond_default_arcs is true_
Why Does an Unconditional Default Arc Still Show When timing_disable_cond_default_arcs is true_
Title
Why Does an Unconditional Default Arc Still Show When timing_disable_cond_default_arcs is true?
Description
Why Does an Unconditional Default Arc Still Show When timing_disable_cond_default_arcs
is true?
Question:
I set the timing_disable_cond_default_arcs variable to true to disable unconditional default arcs. However, my timing report in
PrimeTime or Design Compiler still shows the delay value from the unconditional timing arc. Why is this the case?
Answer:
PrimeTime or Design Compiler disables the default arc only when it finds at least one conditional arc with same timing type.
The following example takes a library cell with the following timing arcs defined in the library:
In this case, the default arc has a positive_unate sense, but the other conditional arcs are described as rise_to_rise arcs. This means
that PrimeTime treats this arc as another normal arc with no "when" condition, but PrimeTime does not consider it to be a default arc.
According to the description given for the timing_disable_cond_default_arcs variable, the default arc is not disabled unless it finds at
least one conditional arc between the same pins having same timing_type definition.
pt_shell> set timing_disable_cond_default_arcs true
true
pt_shell> report_attribute [get_timing_arcs -from latch_negedge_precontrol/CK \
-to latch_negedge_precontrol/Q] -application -nosplit
If the default arc for this library cell has been defined as a rise_to_rise timing arc, then the tool would disable this default arc as it finds
another similar conditional timing arcs:
In this case, since there are equivalent conditional arcs available, the last unconditional arc is considered as a default arc defined for this
cell, and the timing_disable_cond_default_arcs variable disables this arc.
pt_shell> set timing_disable_cond_default_arcs true
true
pt_shell> report_attribute [get_timing_arcs -from latch_negedge_precontrol/CK \
-to latch_negedge_precontrol/Q] -application -nosplit
To learn why the delay in the SDF file defined for a default arc is considered, see
SolvNet article 020985, "Does a Default Arc Take Precedence Over Conditional Arcs?"
(https://solvnet.synopsys.com/retrieve/020985.html#q4)
Workaround
Product L1
PrimeTime (/s/detail/01t1U000003IY0JQAW)
Additional Product(s)
Design Compiler (80001938)
Article Number
000015140
URL Name
Why-Does-an-Unconditional-Default-Arc-Still-Show-When-timing-disable-cond-default-arcs-is-true-1576091430734
Recommended Articles
Why Does the write_sdf Command Write the Incorrect Delay Value?
Why does case analysis setting on MUX input also disables its select arc?