rmachado
Member level 2
Hello everyone,
I am new to the ASIC design flow so I decided to do a simple 8-bit counter to understand how the tools work.
I am struggling a bit in the clock tree synthesis phase on Innovus right know and would appreciate some help.
I already synthesized a clock tree using the old ck engine form Encounter. I got a 4 buffers in total, two connected in series, where the last one feed two other buffers, each one responsible for driving 4 flip flops each. As the ck engine is becoming obsolete I am trying to migrate to the ccopt design flow but I am having some issues. I was expecting to have a similar result but instead, Innovus is reporting an error regarding the slew value of the leaf cells being too low.
I followed the instructions on the Innovus user guide to migrate from a FE-CTS flow to a CCOPT flow.
I first specify the old clock tree specification file using the command specifyClockTree -file filename.ctstch command.
Then I use the ccopt_design –cts –ckSpec –genScriptOnly ccopt.spec to generate the new clock tree specification file for the ccopt engine.
After that I load the new clock tree specification using the source ccopt.spec command, and finally I run the ccopt_design -cts command to synthesize the clock tree.
I was expecting to have a similar result, or at least a synthesize clock tree, but instead I am getting the error mentioned above.
I know that the old ck engine does some property settings when running the clockDesign command, but as far as I was able to understand by reading the Innovus documentation, these properties (that can be changed using the set_ccopt_property command) are only considered if the setCTSMode is configured to use the ck engine, otherwise they are ignored.
My guessing right know is taht I am missing some ccopt property that needs to be configured but I dont really know which one. I attached the clock tree specification file that I use to generate the clock tree with the ck engine and I attached the clock tree specification file automatically generated by Innovus from the old ctstch file. i also attached the constraint file that I am using.
Can someone give me a hint on why am I having this slew value error with ccopt engine but no error with the ck engine?
Thanks in advance,
Rui
View attachment CTS_Files.rar
I am new to the ASIC design flow so I decided to do a simple 8-bit counter to understand how the tools work.
I am struggling a bit in the clock tree synthesis phase on Innovus right know and would appreciate some help.
I already synthesized a clock tree using the old ck engine form Encounter. I got a 4 buffers in total, two connected in series, where the last one feed two other buffers, each one responsible for driving 4 flip flops each. As the ck engine is becoming obsolete I am trying to migrate to the ccopt design flow but I am having some issues. I was expecting to have a similar result but instead, Innovus is reporting an error regarding the slew value of the leaf cells being too low.
I followed the instructions on the Innovus user guide to migrate from a FE-CTS flow to a CCOPT flow.
I first specify the old clock tree specification file using the command specifyClockTree -file filename.ctstch command.
Then I use the ccopt_design –cts –ckSpec –genScriptOnly ccopt.spec to generate the new clock tree specification file for the ccopt engine.
After that I load the new clock tree specification using the source ccopt.spec command, and finally I run the ccopt_design -cts command to synthesize the clock tree.
I was expecting to have a similar result, or at least a synthesize clock tree, but instead I am getting the error mentioned above.
I know that the old ck engine does some property settings when running the clockDesign command, but as far as I was able to understand by reading the Innovus documentation, these properties (that can be changed using the set_ccopt_property command) are only considered if the setCTSMode is configured to use the ck engine, otherwise they are ignored.
My guessing right know is taht I am missing some ccopt property that needs to be configured but I dont really know which one. I attached the clock tree specification file that I use to generate the clock tree with the ck engine and I attached the clock tree specification file automatically generated by Innovus from the old ctstch file. i also attached the constraint file that I am using.
Can someone give me a hint on why am I having this slew value error with ccopt engine but no error with the ck engine?
Thanks in advance,
Rui
View attachment CTS_Files.rar