0
\$\begingroup\$

In multi cycle path of 3 cycles, the setup for data D1 is checked at 3rd cycle. But for the next data, D2, the setup will be checked at 4th cycle or 6th cycle?

I have this doubt because, data takes 3 cycles to propagate, so that means after 1st launch the data will reach by 3rd edge and similarly data launched at 2nd edge will reach by 4th edge.

I am thinking like... data propagation as car travelling in a road. At a time two cars can be at two different positions in the same road(net).

\$\endgroup\$
1
  • \$\begingroup\$ The thing is you never launch data at second edge on such a multipath .... \$\endgroup\$ – Mitu Raj Nov 11 '19 at 7:19
1
\$\begingroup\$

First of all, that isn't how static timing analysis works. It isn't a simulator.

Second, that isn't how multi-cycle paths work. If it takes 3 cycles for the data to propagate, you can't launch new data every cycle. You'd need to have pipeline registers for that to work, and that would eliminate the multi-cycle path — each stage of the pipeline would be single-cycle.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you Dave, and that is exactly why I always say that you should avoid using multi-cycle paths until you really, really understand them. There are just too many pitfalls. \$\endgroup\$ – Oldfart Nov 10 '19 at 14:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.