Professional Documents
Culture Documents
Queries
Enable flop
Clock gating circuit
How to fix setup and hold violations?
http://chipverification.blogspot.com/2008/05/clock-
dividers.html
https://electronics.stackexchange.com/questions/39709/using-
both-edges-of-a-clock
Timing arcs
Input delay timing arc:
From clk to data
Output delay timing arc:
From data to clock
When crosstalk is there, output can read 50% before input. This can cause a negative
propagation delay.
In FPGAs, there are routing switches. These are simply gates. Hence, in FPGA timing
reports we can see negative delays.
Latch timing
Timing arcs
Three arcs:
1. Data -> Out: When enable is asserted, output follows data pin.
2. Enable -> Out: When data is stable, but when enable gets asserted, output changes wrt enable.
3. Enable -> Data: Timing check arc. When data toggles near closing edge of enable, there is confusion
which data will be latched. So we impose setup and hold checks, and this becomes setup and hold
arcs.
Conventions
For delay arcs
Max and min after clock/related +ve
Max and min before clock/related –ve.