natasha_a
Newbie
I have a couple of designs written in Verilog that I'm trying to synthesize with Synopsys DC Compiler. Specifically, I would like to maintain a 1ns upper bound on my critical path delay (CPD) on my designs — I have been able to successfully synthesize these designs with yosys (open source RTL synthesis tool) and meet this constraint.
I've tried setting a variety of parameters in a tcl script that I am using for synthesis of my Verilog modules, but none seem to be enforcing this upper bound on my CPD. Just to name a few things I have attempted: I've used the compile_ultra command, with and without the -retime flag (and the set_optimize_registers flag preceding this). I've tried using the set_max_delay command on all clocked paths, and any path from all inputs to all outputs. I've tried various settings of the clock period, to see whether increasing/decreasing the clock period from 1ns could help things.
Unfortunately, none of these has worked. Consistently, the DC compiler indicates that the timing slack has been violated and returns a CPD of nearly 4ns. I've been stuck on this issue for some time, and I'm not sure where else to turn to for help. I'm new to this tool, but I've tried reading through large portions of the DC Compiler manual in search of more parameters/commands that may help.
I would really appreciate it if someone had any advice on things that would enforce this 1ns constraint, or some intuition about the tool that could help. Thanks in advance.
I've tried setting a variety of parameters in a tcl script that I am using for synthesis of my Verilog modules, but none seem to be enforcing this upper bound on my CPD. Just to name a few things I have attempted: I've used the compile_ultra command, with and without the -retime flag (and the set_optimize_registers flag preceding this). I've tried using the set_max_delay command on all clocked paths, and any path from all inputs to all outputs. I've tried various settings of the clock period, to see whether increasing/decreasing the clock period from 1ns could help things.
Unfortunately, none of these has worked. Consistently, the DC compiler indicates that the timing slack has been violated and returns a CPD of nearly 4ns. I've been stuck on this issue for some time, and I'm not sure where else to turn to for help. I'm new to this tool, but I've tried reading through large portions of the DC Compiler manual in search of more parameters/commands that may help.
I would really appreciate it if someone had any advice on things that would enforce this 1ns constraint, or some intuition about the tool that could help. Thanks in advance.