3.4.6 · Hardware › Sequential Circuits
Ek flip-flop magic nahi hai. Jab clock edge aati hai, output Q instantly nahi badalta. Electrons ko internal transistors ke through flow hone mein time lagta hai. Clock-to-Q delay (t c q ) woh chhota sa waiting time hai "clock edge hua" aur "Q apni nayi value dikhata hai" ke beech.
YEH KYUN HOTA HAI: Transistors mein capacitance hoti hai; ek node ko charge/discharge karna real physical time leta hai.
HUMEIN KYUN PARWAH HAI: Har clock period itni lambi honi chahiye ki yeh delay plus logic plus setup margin fit ho sake, warna circuit break ho jaata hai.
Definition Clock-to-Q delay
t c q woh time hai active clock edge se lekar us moment tak jab flip-flop ka output Q apni nayi value par valid aur stable ho jaata hai.
Clock edge se measure kiya jaata hai (usually rising edge, 50% voltage point par).
Q ke apni transition ke 50% voltage point tak pahunchne par measure kiya jaata hai.
Manufacturers actually do numbers dete hain:
t c q ke do flavours
t cc q = contamination clock-to-Q delay = woh minimum time jiske baad Q change hona shuru ho sakta hai (jaldi se jaldi Q garbage ban sakta hai). Hold-time checks ke liye use hota hai.
t p c q = propagation clock-to-Q delay = woh maximum time jiske baad Q fully valid hota hai (worst case). Setup / max-frequency checks ke liye use hota hai.
Hamesha: t cc q ≤ t p c q .
Socho do flip-flops ke beech combinational logic ka ek block hai, sab ek hi clock share kar rahe hain.
Har cycle mein signal kaise travel karta hai:
Clock edge FF1 ko hit karti hai → t p c q ke baad, FF1 ka output Q 1 valid ho jaata hai.
Q 1 combinational logic se guzarta hai → t p d (logic propagation delay) ke baad, FF2 ka input valid ho jaata hai.
FF2 ko apna input apni clock edge se pehle stable chahiye, setup time t se t u p ke barabar.
Data ko agli edge (ek period T c baad) ke liye time par pahunchne ke liye:
FF1 launch karta hai t p c q + logic t p d + FF2 catch karta hai t se t u p ≤ T c
Aur hold side (fast delay t cc q use karke):
Worked example Example 1 — Max frequency nikalo
Diya gaya: t p c q = 30 ps, t se t u p = 20 ps, logic t p d = 100 ps.
T c ≥ 30 + 100 + 20 = 150 ps
Teeno kyun add kiye? Har ek ek mandatory delay hai ek cycle mein.
f ma x = 150 ps 1 = 150 × 1 0 − 12 1 ≈ 6.67 GHz
Invert kyun kiya? Frequency = cycles per second = 1/ period .
Worked example Example 2 — Kya hold hold karta hai?
Diya gaya: t cc q = 10 ps, t h o l d = 25 ps, aur sabse chhota logic path t p d , m i n = 5 ps.
Check karo: t cc q + t p d , m i n = 10 + 5 = 15 ps.
Chahiye ≥ t h o l d = 25 ps. 15 < 25 → HOLD VIOLATION ❌
Yeh step kyun? Data FF2 tak sirf 15 ps ke baad pahunchta hai, lekin FF2 ko ise 25 ps tak hold chahiye — naya value purane ko FF2 ke pakdne se pehle hi clobber kar deta hai. Fix: chhote path mein buffer delay add karo.
Worked example Example 3 — Logic ka budget nikalo
Ek chip ko 2 GHz par run karna hai. t p c q = 40 ps, t se t u p = 30 ps. Kitna logic delay allowed hai?
T c = 2 × 1 0 9 1 = 500 ps
t p d , m a x ≤ T c − t p c q − t se t u p = 500 − 40 − 30 = 430 ps
Subtract kyun kiya? Flip-flops budget ka 70 ps "kha" lete hain; baaki logic ke liye free hai.
Common mistake "Q clock edge par instantly change ho jaata hai."
Kyun sahi lagta hai: Ek idealized textbook truth table mein, Q bas "D ban jaata hai." Timing ek discrete tick jaisi lagti hai.
Fix: Real gates mein delay hoti hai. Q edge ke t c q baad appear hota hai. Ise ignore karne se f ma x overestimate hoti hai aur real bugs chhup jaate hain.
Common mistake "Setup aur hold checks ke liye same
t c q use karo."
Kyun sahi lagta hai: Ek hi flip-flop hai, toh ek delay, sahi hai na?
Fix: Setup (slowest path) max t p c q use karta hai; hold (fastest path) min t cc q use karta hai. Galat use karne se safety margin ka direction ulta ho jaata hai.
Common mistake "Delay add karna hamesha hurt karta hai."
Kyun sahi lagta hai: Delay cheezein slow karti hai.
Fix: Hold violations ke liye, chhote path mein delay add karna standard fix hai — yeh f ma x ko affect nahi karta (jo lambe path par depend karta hai).
Recall Feynman: 12-year-old ko explain karo
Socho ek relay race. Jab starting whistle bajti hai (clock edge), runner (flip-flop) teleport nahi karta — react karne mein aur daudna shuru karne mein thoda time lagta hai. Woh reaction moment clock-to-Q delay hai. Puri lap (ek clock tick) itni lambi honi chahiye ki yeh reaction fit ho sake, plus daudna (logic), plus agla runner baton pakdne ke liye tayaar ho (setup). Agar lap zyada chhoti ho, koi baton drop kar deta hai — circuit galat answers deta hai.
"Q Jaldi Aata Hai, lekin t c q se Jaldi Nahi."
Timing budget ke liye: PLS ≤ Tc → P cq + L ogic + S etup ≤ Clock period.
Clock-to-Q delay t c q kya hai? Active clock edge se us time tak ka duration jab tak output Q valid aur stable ho jaata hai.
Setup / max-frequency check kaun si delay use karta hai, min ya max? Maximum (t p c q ), propagation clock-to-Q delay (worst case).
Hold check kaun si delay use karta hai? Minimum (t cc q ), contamination clock-to-Q delay (jaldi se jaldi Q change hota hai).
Minimum clock period inequality likho. T c ≥ t p c q + t p d + t se t u p .
Hold-time constraint likho. t cc q + t p d , m i n ≥ t h o l d .
Q clock edge par instantly kyun nahi badalta? Internal transistor capacitances ko charge/discharge karna hota hai, jo physical time leta hai.
Hold violation ko kaise fix karte hain? Chhote combinational path mein delay (buffers) add karo taaki data itni der baad aaye.
t p c q = 30 ps, t p d = 100 ps, t se t u p = 20 ps → f ma x ?1/150 ps ≈ 6.67 GHz.
t cc q aur t p c q ka relation kya hai?t cc q ≤ t p c q (contamination ≤ propagation).
Setup and Hold Time — baaki do timing parameters; t c q unke saath kaam karta hai.
Flip-Flops — woh device jiska output delay yeh describe karta hai.
Combinational Logic Delay — equation mein t p d term.
Maximum Clock Frequency — t c q use karke directly derive hoti hai.
Timing Analysis — setup/hold/clock-to-Q ka overall framework.
Clock Skew — jab clock alag-alag times par aati hai toh yeh equations modify ho jaati hain.
Tc >= tpcq + tpd + tsetup