To "fudge" a project for now (a release is coming up - RTL changes will be needed but not enough time), I have a load of set_max_delay constraints that will only apply to the fitter ( if { $current_exe == "quartus_fit" } etc). I am running 12 seeds a night and not meeting timing, but the following is frustrating me. I have the following registers in a 368MHz clock domain.
A->B->C
I set a max delay constraint of A->B of 2.0ns on one run. Results were that the failure now occurs B->C
I added another constraint for a max of B->C 2.0ns. This then caused A->B to fail a lot again.
Register A is inside a DSP slice, so it cant move. But I suspect the 2nd constraint is "pulling" B away from the DSP again.
So would the order of the set_max_delay constraints make a difference?
A->B->C
I set a max delay constraint of A->B of 2.0ns on one run. Results were that the failure now occurs B->C
I added another constraint for a max of B->C 2.0ns. This then caused A->B to fail a lot again.
Register A is inside a DSP slice, so it cant move. But I suspect the 2nd constraint is "pulling" B away from the DSP again.
So would the order of the set_max_delay constraints make a difference?