Professional Documents
Culture Documents
Rule: CLK_0026
Severity: Warning
Description
Clocks used as data may cause large transition time violations which cannot be fixed during optimization; this can increase
runtime or degrade quality during clock tree synthesis. It can also result in poor test pattern generation or low test coverage for
design testing.
What Next
The "Violation Details" section provides the name of the clock that is being used as data and the clock source locations. Use the
analyze_clock_networks command to get more detail about the data signals as shown in the report below:
https://spdocs.synopsys.com/dow_retrieve/P-2019.03/dg/gcaolh/Default.htm#rules/CLK_0026.htm?Highlight=clk_0026 1/2
17/06/2021 CLK_0026
CLK - positive, negative
The report generated using the analyze_clock_networks command shows there is a data path that originates from the clock port
CLK and terminates at the register data pin ff2/D. For more detail about this particular data path, use the -to [get_pins ff2/D]
option, the -style full option, and the -end_types data option as shown below:
The report shows a data path from the port CLK through the XOR gate xor1 to the register data pin ff2/D.
Fix Suggestion
Check if the clock needs to be used as both data and clock. If possible, modify the design so the clock is not used as data. If the
clock must be used as both clock and data, consider using clock isolation logic so the data paths and clock paths are separated. A
simple clock isolation solution using a two-phase shifted clock divider is shown below:
See Also
create_clock
analyze_clock_networks
https://spdocs.synopsys.com/dow_retrieve/P-2019.03/dg/gcaolh/Default.htm#rules/CLK_0026.htm?Highlight=clk_0026 2/2