Altera_Forum
Honored Contributor
13 years agoTiming Closure with a Gated Clock
I'm making a design that processes data in several stages. In the first stage data is clocked in at 60MHz, but is only present some of the time. Once 50 samples are received a resulting value is passed to the next stage.
Right now my second stage is having difficulty meeting timing. I'm clocking it with the same 60MHz clock as the first stage, and using an enable signal to mark when the first stage results are updated. The fastest this can happen is 1.2MHz, though in actuality it will always be a random slower delay. What is the best way to handle this? Should I use a clock control block with an enable line? How do I specify the timing of the output clock? Is it easier to just declare all of the logic as taking multiple cycles? Any advice for writing the SDC file to specify that for a whole module?