STI - FSM - Solutions
STI - FSM - Solutions
[2]
Setup Time:
Setup time is the minimum amount of time the data signal should be held steady before
the clock event so that the data are reliably sampled by the clock. This applies to
synchronous circuits such as the flip-flop.
Or In short I can say that the amount of time the Synchronous input (D) must be stable
before the active edge of the Clock.
The Time when input data is available and stable before the clock pulse is applied is
called Setup time.
Hold time:
Hold time is the minimum amount of time the data signal should be held steady after
the clock event so that the data are reliably sampled. This applies to synchronous
circuits such as the flip-flop.
Or in short I can say that the amount of time the synchronous input (D) must be stable
after the active edge of clock.
The Time after clock pulse where data input is held stable is called hold time.
A2: In the following Circuit, Find out whether there is any Setup Or Hold Violation?
[5]
Solution:
Hold Analysis:
When a hold check is performed, we have to consider two things-
If the difference between the data path and the clock path is negative, then a timing violation
has occurred. ( Note: there are few Exceptions for this)
Setup Analysis:
When a setup check is performed, we have to consider two things-
If the difference between the clock path and the data path is negative, then a timing violation
has occurred. ( Note: there are few Exceptions for this)
A3: In order to work correctly, what should be the Setup and Hold time at Input A in the
following Circuit. Also find out the maximum operating frequency for this circuit. (Note:
Ignore Wire delay). Where Tsu- Setup time; Thd-Hold Time; Tc2q- Clock-to-Q delay
[5]
Solution:
Step1: Find out the maximum Register to register Delay.
All the wire dealy is neglected. If Wire delay present, we have to consider those one.
There are 2 Data path
o A -> U7 -> U4 -> D of U2 (Data path Delay = 1+7 =8ns )
o A -> U7 -> U3 -> D of U1 ( Data path Delay = 1+8 =9ns )
Since for Setup calculation we need maximum Data path delay, we have choosen 2nd for
our calculation.
Clock to Out
= Cell delay of U8 + Clk-to-Q delay of FlipFlop+ Cell delay of U5+ Cell delay of U6+ (all wire
delay)
= Tpd U8+ U2 Tc2q + U5 Tpd + U6 Tpd
= 2 + 5 + 9 + 6 = 22 ns
Note:
There are 2 Clock to Out path- one from Flip flop U1 and other from U2.
Since in this case the Clk-to-Q path for both Flipflop is same, we can consider any path.
But in some other Circuit where the delay is different for both the paths, we
should consider Max delay path.
So summery is:
A5: The D ip-ops below have setup time ts = 18 ns and hold time th = 4 ns..
a.Suppose the clock is delayed by exactly 10 ns. (See the left device in the figure above.) What
are the setup and hold times for this modified flip-flop?
Sol:
When the clock is delayed, the data may be delayed by the same amount without violating
the setup time. But the hold time is increased because the clock does not arrive until later.
Setup time: ts = 18 - 10 = 8 ns Hold time: th = 4 + 10 = 14 ns
b. Suppose the data input is delayed by exactly 10 ns. (See the right device in the figure
above.) What are the setup and hold times for this modified flip-flop?
IT is used to avoid metastability, which occurs during transfer of data from one clock domain to
another asynchronous clock domain. It resolves setup time & Hold time violation.