Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
Lecture 7 Review
Paramate Horkaew
School of Computer Engineering, Institute of EngineeringSuranaree University of Technology
Previous Lecture• Digital Feedback
– Meta-states and Oscillations– Electronic SPDT (Single-Pole Double-Throw) Switch Debouncer
• Flip!
• Set-Reset (S-R) Latches– Designing S-R Latches using NOR and NAND gates
– N-Latch Extension
• Clocked S-R Latches– Transient Glitches and Level-Sensitive Clock
• Data (D) Latches• Master-Slave (M-S) Flip-Flops
– Edge-Triggered Clock (Edge Sensitive Clock)
• Toggle (T) Flip-Flops• J-K Flip-Flops
• Data (D) Flip-Flops• Clock Timing and Stability Analysis
System Feedbackในวงจร combinational delay ในวงจร logic gates ทําใหเกิด transient glitches แตในที่นี้เราจะนําสมบัติการเกิด delay มาใชประโยชน โดยการทํา positive feedback
(+) feedback
System delay
• (+) feedbackทําใหระบบ ลูออกไปสูคาสูง/ต่ํา สุด
• (-) feedbackทําใหระบบ ลู เขาไปสูคาใดคาคงที่ที่เสถียร
Digital Feedbackสําหรับการสราง sequential digital circuits เราจะนํา (+)/(-) feedback มาใช
Feedback Output• Perfect Oscillation (0↔1)• Matastable
ขึ้นอยูกับคาคงตัวเวลาของระบบ
Feedback = +OUT/-OUT
วงจรสมมูล ในรูปของระบบที่มีตัวหนวงเวลา
Digital Oscillatorรูปสัญญาณที่ไดจากวงจรดังกลาวจะเกิดการสั่น (oscillation) ดวยคาบเวลาเทากับ 2 เทาของคา delay time บวกดวย rising time (เวลาที่ใชในการเปลี่ยนสถานะของ output ของวงจร logic gate)
วงจร analog ที่สมมูลกัน
Astable Multi-vibrator
Bi-Stable Switch Debouncer• ถาสถานะเริ่มตนสวิทชเปนดังรูป inverter ตัวบนมี
input = 0 ซึ่งให output = 1 และการปอนกลับทําให inverter ตัวลางให output = 0
•เมื่อสวิทชโยกมาขั้วดานลาง ในขณะที่หนาสัมผัสยังไมหยุดนิ่ง inverter ทั้งสองตัวจะอยูในสถานะเสถียร (จากการปอนกลับแบบบวก)•เมื่อหนาสัมผัสหยุด inverter ตัวลางจะมี input = 0 ซึ่งให output = 1 หลังจาก gate delay
Set-Reset Latchการแกไขปรากฏการณคา Q คางสามารถทําไดเพียงเปลี่ยน inverter ตัวที่สองเปน NOR gate ดังรูปดานซาย
จัดเรียงวงจรใหมใหสมมาตรกันจะไดรูปทางขวามือ โดยที่
•Input/Output ของวงจรเดิมจะเรียกวา RESET และ Q•Input ของ NOR gate ที่เพิ่มเขาไปใหมเรียกวา SET
S-R Latch Operationการทํางานของ S-R Latch สามารถอธิบายไดดังตอไปนี้
เมื่อ S และ R มีคาเทากับ 0 พิจารณา สถานะของคา Q กอนหนานี้
S-R Latch จาก NOR gates
เมื่อ Q = 0 output ของ NOR ตัวลางจะเปน NOR (0, 0) = 1 Output ของ NOR ตัวบนเปน NOR (0, 1) = 0 = Q
เมื่อ Q = 1 output ของ NOR ตัวลางจะเปน NOR (1, 0) = 0 Output ของ NOR ตัวบนเปน NOR (0, 0) = 1 = Q
เมื่อ S = 1 และ R = 0 จะไดวา output ของ NOR ตัวลางเปน NOR (Q, 1) = 0 และ NOR ตัวบนเปน NOR (0, 0) = 1 = Q
เมื่อ R = 1 และ S = 0 ก็พิจารณาทํานองเดียวกัน แต S = R = 1 ระบบไมเสถียร
Designing an S-R Latch
การออกแบบวงจร S-R Latches ดวย gate พื้นฐานเริ่มจากการสรางตารางคาความจริงของ output โดยแบงแยกระหวางคาปจจุบัน QN กับคาถัดไป QN+1
• เมื่อ S-R = (0, 0) คา Q จะไมเปลี่ยน นั่นคือ QN = QN+1
• เมื่อ S-R = (0, 1) หรือ (1, 0) คา QN+1 จะเทากับ R และ S ตามลําดับ
• เมื่อ S-R = (1, 1) คา QN = INV (QN+1)
ซึ่งสามารถนําไปเขียน K-Map ไดดังนี้
An S-R Latch from NOR Gates
จาก K-Map เราสามารถสรางวงจรที่ประกอบดวย NOR gates แตเพียงอยางเดียวไดโดยการหา Product of Sums (POS)
โดยการใชเทคนิคการหา cover ดวย K-Map เราสามารถเปลี่ยน พจน Don’t Care สองพจน เมื่อ S-R = (1, 1) ใหเปน 0 ได
วงจรที่สรางไดเปนดังรูปดานขวา delay
An S-R Latch from NAND Gates
ในทํานองเดียวกัน เราสามารถสรางวงจรที่ประกอบดวย NAND gates แตเพียงอยางเดียวไดโดยการหา Sum of Products (SOP)
( ) SQR
SQRQ
N
NN
⋅⋅=
+⋅=+1โดยการใชเทคนิคการหา cover ดวย K-Map เราสามารถเปลี่ยน พจน Don’t Care สองพจน เมื่อ S-R = (1, 1) ใหเปน 1 ได
S-R Latch and Its Symbolนําไปสรางวงจรไดดังนี้ และเมื่อตัด NAND gate ตัวลางทิ้งจะไดรูปดานลางสุด
สัญลักษณ S-R Latch
Level-Sensitive Clockสําหรับวงจร S-R Latch เพิ่มขา CONTROL เพื่อรอให input S-R เปลี่ยนไปตามเงื่อนไขพรอมกอน ในที่นี้เราจะเรียกขา CONTROL วาสัญญาณนาฬิกา (CLOCK)
ก า ร ใ ช CLCK มีป ร ะ โ ยชน ใ น ก า ร แ ก ไ ข Transient Glitch และ เขาจั ง ห ว ะ สัญญาณ input
ขา CLK จะผานให ผลลัพธของ A AND INV (A) ออกไปปรากฏที่ขา S ไดเมื่ อผ านพนช วงที่เปน glitch ไปแลว
Course Outline
• Introduction to Digital System• Truth Table and Boolean Algebra• Methods for Minimizing Boolean Expression• Programmable Circuits• Sequential Flip-Flops• Synchronous Counters• Synchronous Finite State Machine• A/D and D/A Conversion• Asynchronous Sequential Circuit Design• Practical Digital Designs (Part I Arithmetic Operations)• Practical Digital Designs (Part II Microprocessor)• Practical Digital Designs (Part III Data Communication)
Lecture 8 Introduction to Sequential Circuits: Evolution of
Flip-Flops (Part II)
Paramate Horkaew
School of Computer Engineering, Institute of EngineeringSuranaree University of Technology
Lecture Outline• Digital Feedback
– Meta-states and Oscillations– Electronic SPDT (Single-Pole Double-Throw) Switch Debouncer
• Flip!
• Set-Reset (S-R) Latches– Designing S-R Latches using NOR and NAND gates
– N-Latch Extension
• Clocked S-R Latches– Transient Glitches and Level-Sensitive Clock
• Data (D) Latches• Master-Slave (M-S) Flip-Flops
– Edge-Triggered Clock (Edge Sensitive Clock)
• Toggle (T) Flip-Flops• J-K Flip-Flops
• Data (D) Flip-Flops• Clock Timing and Stability Analysis
Data (D) Latchเราอาจปรับปรุง วงจร SR-Latch แบบมีสัญญาณนาฬิกา โดย เพิ่ม Literal สองตัวซึ่งเปน Inverse ของกันและกัน
• สังเกตวา input ลักษณะนี้ โดยปรกติจะทําใหเกิด Transient Glitch แตถา CLK เปน HI หลังจาก ผานชวง delay ที่ INV (D) มาแลวจะไมเกิด glitch ที่ขา Q
• เมื่อสัญญาณ CLK เปน LO S-R จะมีคาเปน (0, 0) นั่นคือ Flip-Flop จะคงคาเดิม ของ D ไว (Hold) หรือ อีกนัยหนึ่งคือประพฤติตัวเปน Memory นั่นเอง
A D-Latch Applicationจากคุณสมบัติของ D-Latch ที่จะ “จํา” ขอมูลเฉพาะชวงเวลาสั้นๆ (CLK เปน HI) สามารถนํามาใชในวงจรแปลงสัญญาณ Analog เปน Digital ได
เมื่อ ADC แปลงสัญญาณเสร็จ พรอมที่จะสงขอมูลออกที่ขา D0-D3 จะสงสัญญาณ INV (BUSY) มีคา 1 ออกมา (=READY) ซึ่งตอตรงกับ CLK ของ D-Latch
Master-Slave (M-S) Flip-FlopD Latch สองตัวที่มาตออนุกรมกัน (ดังรูป) โดยมี INV (CLK) คั่นกลาง จะเรียกวาวงจา Master-Slave (M-S) Flip-Flop
Output ของ Latch ซายมือ (Master) จะ “สั่ง” Input ของ Latch ทางขวามือ (Slave) สังเกตการตอ CLK ลักษณะนี้ใชสัญลักษณ สามเหลี่ยม ที่ขาสัญญาณ
Edge-Trigged M-S Flip-Flopจากแผนผังเวลาจะเห็นวา Q-S จะเปลี่ยนก็ตอเมื่อ CLK-S เปลี่ยนจาก 0 เปน 1 (+ delay) เมื่อดูจากวงจรภายนอก ชวงขอบขาลงของ CLK-M ทําให Q-S เปลี่ยนตาม ขอมูล DATA (a) จึงเรียกวา Negative Edge-Trigged หรือ Flip-Flop (FF)
Shift Register with M-S FFเราสามารถนํา FF ชนิด Edge-Trigged ไปออก แบบ Shift Register ซึ่งขอมูล เลื่อน (Shift) ไปตามอนุกรมของ M-S FF ดังรูป
กํ าหนดใหที่ สถานะเริ่มตน Di = Qi = 0
จากรูป Qi จะเปลี่ยนตาม Di ก็ตอเมื่อ CLK เปลี่ยนจาก 1 เปน 0
(สมมติให delay ใน FF นอยมาก เพื่อความชัดเจน)วงจรนี้จึงเลื่อนขอมูลจาก Q1 ผาน Q2, Q3, Q4 ตามจังหวะ CLK
Maximum CLK Rate in M-S FFMaster จําขอมูล a เมื่อ CLK (M) คงสถานะ 1 (Latch), ที่ขอบขาลงของ CLK (M) ที่จุด b CLK (S) กําลังจะเปลี่ยน (0 เปน 1) หลังจาก delay ∆ หากระหวางนี้ CLK (M) เปลี่ยนเปน 1 ที่จุด c และ ขอมูล a เปน 0 คา QM จะเปลี่ยนเปน 0, ถา delay ∆ > delay ของ Master ทําให input ของ Slave เห็นเพียงคา QM ที่เปน 0 ไปแลว (จํา QM กอนหนาไมทัน)
ดังนั้น ชวงที่ CLK (M) มีคาเปน 0 (b - c) ควรมีคาอยางนอยเทากับ ∆: f (CLK) = 1/2∆
Toggle (T) Flip-Flopการออกแบบให input ของ M-S FF ปรากฏแตสถานะ ที่เปน complement กัน (01 หรือ 10) สามารถทําได โดยตอ X และ INV (X) ที่ input
หรืออีกวิธี ที่ใหผลเหมือนกันคือ ตอ Q และ INV (Q) ไปเขาที่ขา R และ S ตามลําดับ (ดังรูป) เรียกวงจร ที่ไดวา T-Flip Flop
T-FF 1 ตัวสามารถนํามาสรางเปน counter ขนาด 2 บิตไดดังแผนผังดานลาง
หมายเหตุ T FF ตางจากวงจร Oscillator แบบ feedback แบบพื้นฐาน ตรงที่ สถานะจะเปลี่ยนเฉพาะตรงขอบขาลงของ CLK
Ripple Counterถานํา T-FF มาตอเรียงกัน หลายๆ ตัว จะไดเปน ripple counter ขนาด N bit ดังรูป
T-FF สองตัว ตอเรียงกันโดยที่ output ของตัวซายมือ ตอเขา CLK ของตัวขวามือ วงจรที่ไดคือ counter ขนาด 2 บิต โดยที่ Q1 และ Q2 คือ Least และ Most Significant Bit (LSB, MSB) ตามลําดับ
ถาพิจารณา CLK เปน LSB จะได 3-bit counter ดังแผนผังเวลา ดานลาง
Q=INV (Q) เมื่อ EN=1
M-S S-R Flip Flopถายอนไปพิจารณา negative edge trigged D FF ดังรูปดานซาย พบวา มีเพียง input เดียว (ซึ่งไดจากการตอ complement ภายใน ของ S-R Latch)
ดังนั้น D FF จะไมมีการจําขอมูลระหวางสถานะ
ในขณะที่ S-R FF สาม า รถ จํ า ข อ มู ล ของสถานะ กอนหนาได เมื่อ S-R = (0, 0) ระหวางที่ CLK เปน HI (วงจรภายใน)
Edge trigged MS FF
Ones and Zeros Catchingเมื่อ Pulse (a, b) เกิดขึ้นระหวาง CLK (M)=1 จะทําให QM=1 และเมื่อ CLK (S) เปน 1 (c) ทําให QS เปลี่ยนตาม QM ดวย (d) เมื่อ pulse (e) เกิด QS จึงเปลี่ยนในทํานองเดียวกัน (f)
ตางจาก D FF ตรงที่ pulse (a, b) และ e ไมตองคางตลอดชวง CLK (M)
1 catching 0 catching
J-K Flip Flop (I)ปญหาที่สําคัญของ S-R Flip Flop คือ สถานะที่ S-R เปน 1 พรอมกัน (1, 1) เราสามารถ หลีกเลี่ยงขอจํากัด นี้ได โดยสราง J-K Flip Flop ดังรูป
วงจรที่ไดจะคลาย S-R FF คือมี 2 input (ในที่นี้ชื่อ J-K)• เมื่อ J-K = (1, 1) : AND ที่ตอกับ J ทํางานซึ่งนํา INV (Q) ไปเขา D และ S-R
FF (toggle) ซึ่งทําให OUT = INV (Q) ที่ขอบขาลงของ CLK• เมื่อ J-K = (0, 0) : AND ที่ตอกับ K ทํางานซึ่งนํา Q กลับไปเขา input (สถานะคงที่) ซึ่งทําให OUT = Q ที่ขอบขาลงของ CLK
J-K Flip Flop (II)สําหรับอีกสองสถานะที่เหลือ ของ J-K ก็พิจารณาไดในทํานองเดียวกัน ดังนี้
• เมื่อ J-K = (1, 0) : AND ที่ตอกับ J และ K ทํางาน ซึ่งเปนไปได 2 กรณี– INV (Q) = 1 ทําให D เปน 1 (ผาน AND ตัวบน)– Q = 1 ทําให D เปน 1 (ผาน AND ตัวลาง
• เมื่อ J-K = (0, 1) : AND ที่ตอกับ J และ K ไมทํางาน ทําให input D เปน 0 เสมอ ซึ่งทําให OUT = 1 ที่ขอบขาลงของ CLK
OUT = 1 ที่ขอบขาลงของ CLK
J-K Flip Flop SymbolJ-K FF มีที่ใชมากในทางปฏิบัติสําหรับการออกแบบวงจรอนุกรม ซึ่งโดยทั่วไป มักจะมีขา INV (CLR) และ INV (PRE) ซึ่งทําให OUT = 0 และ 1 ตามลําดับ โดยไมสนใจสัญญาณนาฬิกา (Override)
ตารางคาความจริง ที่ขอบขาลงของ CLK แสดงดานซายมือเมื่อ J-K = (0, 0) คา Q จะคงสถานะเดิม ในขณะที่ เมื่อ J-K = (1, 1) คา Q จะ toggleเมื่อ J-K = (1, 0) คา Q = 1 และ J-K = (0, 1) คา Q = 0
ถา CLR เปน 0 เมื่อ PRE เปน 1 คา Q = 0 โดยไมขึ้นกับสัญญาณ CLKถา PRE เปน 0 เมื่อ CLR เปน 1 คา Q = 1 โดยไมขึ้นกับสัญญาณ CLK
2nd Edge-Trigged D FFEdge Triggered D-FF สามารถสรางไดอีกวิธีหนึ่งจากการนํา S-R Latch ตอดังรูป
เมื่อ CLK = 1 ทําให Q1, Q2 อยูในสถานะ reset นั่นคือ S-R ของ Q3 = (0, 0) ทําให OUT มีสถานะ ไมเปลี่ยน
เมื่อ CLK = 1 ขอมูลที่ OUT ไมเปลี่ยนแปลง
2nd Edge-Trigged D FF (I)คราวนี้พิจารณาเมื่อ CLK เปลี่ยนจาก 1 เปน 0 (ขอบขาลง) เมื่อ DATA = 1
1. Input ทั้งสองของ OR เปน 0 ซึ่งทําให ขา S ของ Q1 = 1 ตาม DATA2. ขอ 1 ทําให INV (Q1) = 0 ซึ่งทําให Q2 คงสถานะเดิม (0) เมื่อ S, R = (0, 0)3. ที่ Q3 ขณะนี้ S, R = (1, 0) ทําให OUT มีคาเปน 1 ตาม DATA
2nd Edge-Trigged D FF (II)คราวนี้พิจารณาเมื่อ CLK เปลี่ยนจาก 1 เปน 0 (ขอบขาลง) เมื่อ DATA = 0
1. Input ทั้งสองของ OR เปน 0 และ S, R = (0, 0) ซึ่งทําให Q1 ไมเปลี่ยน (0)2. ขอ 1 ทําให INV (Q1) = 1 ซึ่งทําให S, R = (1, 0) และ Q2 = 13. ที่ Q3 ขณะนี้ S, R = (0, 1) ทําให OUT มีคาเปน 0 ตาม DATA
J-K versus D Flip-FlopEdge trigged FF มีใชอยางแพรหลายในการออกแบบ ทั้งนี้ ขอแตกตางของ J-K และ D FF ทําให เราตองพิจารณาเลือกใช FF ในการออกแบบอยางเหมาะสม
J-K Flip-Flopสามารถจําสถานะกอนที่จะเกิดขอบขาลง (หรือขึ้น) ของสัญญาณ CLK ได1. จากขอ 1 ทําใหเราสรางสถานะ toggle ได (J, K) = (1, 1)2. จากขอ 1 ทําใหเราสรางวนอยูในสถานะเดิมได (J, K) = (0, 0)
D Flip-Flop1. ออกแบบไดงายกวา ใช
gate (และพื้นที่) นอยกวา J-K FF
2. D FF มีเพียง input เ ดี ย วทํ า ให program gate ขนาดใหญไดงาย ตัวอยางการใช D FF ทํา 4-bit register
Clocked FF: Setup/Hold Timesเมื่อพิจารณาโดยละเอียดแลว ถึงแมวาการใชขอบขาลงของสัญญาณนาฬิกาในการควบคุมการทํางานของ FF จะแกปญหา transient glitch ได แตก็เกิดปญหาใหม
สัญญาณที่ output จะเปนเชนไร หากขอมูลเปลี่ยน พรอมๆ กับ CLK
ใ น ท า ง ป ฏิ บั ติ จึ ง มั กออกแบบให DATA คงสถานะไวกอน (SETUP) และ หลัง (HOLD) การเปลี่ ยนแปลงของ CLK เล็กนอย ดังรูป
Timing Parametersนอกจากนี้ในการออกแบบวงจร FF ยังมีคาตัวแปรที่ตองพิจารณา ดังตอไปนี้
• tsetup คือเวลานอยที่สุดที่ตองการให DATA มีคาคงที่กอนถึงขอบขาขึ้นของ CLK (มิฉะนั้นจะไมมีการบันทึก DATA)
• thold คือเวลาที่นอยที่สุด ที่ตองการให DATA มีคาคงที่หลังจากขอบขาขึ้นของ CLK (มิฉะนั้นวงจรจะไมพิจารณา DATA)
• tw คือชวงเวลาที่นอยที่สุดของ CLK pulse (นับจากขอบขาขึ้นถึงขาลง) ที่วงจรยังถือวาเปนสัญญาณ CLK
• tp คือ propagation delay (เวลาที่ใชจนกวา input จะไปปรากฏที่ output)• Slew rate (volt per second) คืออัตราการเปลี่ยนแปลงของคาแรงดัน (จาก 0 ไป 1) ตอเวลาที่มากที่สุด ที่ยอมรับได (ความถี่ต่ําสุดของ CLK ที่ยอมรับ)
• ความถี่สูงสุดของ CLK สามารถคํานวณไดจากสมการตอไปนี้
( ) 1max
−++= pholdsetup tttf
The Metastable Stateในกรณีที่ DATA มาถึงชากวาสัญญาณ CLK เล็กนอย (คา setup time ไมเปนไปตามเงื่อนไข) ดังรูป
ถาบังเอิญวา DATA เขามาในจังหวะที่สัญญาณ CLK กําลังจะเปลี่ยน ทําใหชวงเล็ก กอนหนานั้นไปกระตุนวงจรใหอยูในสถานะก้ํากึ่งระหวาง 0 กับ 1 (metastate)
กรณีนี้เปรียบเทียบไดกับการโยนเหรียญลงตรงขอบ เมื่อเวลาผานไปนานมากๆ ถึงที่สุดเหรียญจะกลับไปเปน 0 หรือ 1 เหมือนเดิม แตจะเปนกรณีใดนั้น ทํานายไมได
Mega Hertz Designตัวอยางจากขอกําหนดของ IC 74AC74 ระบุวา อัตราของสัญญาณ CLK เทากับ 20 ns (หรือ 50 MHz) โดยที่คาความนาจะเปนที่วงจรจะคงสถานะที่ metastate เปนเวลา t ns เปนไปตามการกระจายของ Poisson
( ) ⎟⎠⎞
⎜⎝⎛−=
ττttP exp1
โดยที่ τ คือคาคงตัวเวลามีคาเทากับ 0.39 ns
ดังนั้นถา DATA เปลี่ยนแปลง tsetup หลังจาก ขอบขาขึ้นของสัญญาณนาฬิกา คาความนาจะเปนที่จะเกิด metastate เปนเวลา 1 ns จะสามารถคํานวณไดดังนี้
( ) %839.00.1exp
39.010.1 =⎟
⎠⎞
⎜⎝⎛−=P
Synchronizerเพื่อหลีกเลี่ยง metastate ในการออกแบบวงจรขนาดใหญ จึงจําเปนตองใชตัวเขาจังหวะ (Synchronizer)วงจรดานลางแสดงรายละเอียดภายใน synchronizer ประกอบดวย D FF อนุกรม
Metastate ชวงสั้นๆ จะถูกลบทิ้งระหวาง Q1 และ D
Mean Time Between Failureสําหรับวงจรความถี่สูงเราสามารถคํานวณคาระยะเวลาเฉลี่ยระหวางการเกิดขอผิดพลาดในวงจร sequential ไดดวยสมการ
( )
r
t
fdTeMTBF
0
τ+
=
ไอซี D FF เบอร 74LS74 ระบุคาคงที่ T0 = 7 s และ τ = 1.3 ns ในขณะที่เบอร 74AC74 ระบุคาคงที่ T0 = 0.3 s และ τ = 0.5 ns ถาเปรียบเทียบขอผิดพลาด เมื่อใชในวงจรที่มีความถี่ CLK = 40 Hz (25 ns) และ ความถี่สูงสุดของขอมูล 15 Hz:
( )
( ) ( )( )
( ) ( ) yeareMTBF
nseMTBF
AC
LS
110200
105101510403.0
50104000
102101510407
12
21
66
5.025
12
8
66
3.125
≈××
≈××××
=
≈×
×≈
××××=
+
+
Conclusions• Digital Feedback
– Meta-states and Oscillations– Electronic SPDT (Single-Pole Double-Throw) Switch Debouncer
• Flip!
• Set-Reset (S-R) Latches– Designing S-R Latches using NOR and NAND gates
– N-Latch Extension
• Clocked S-R Latches– Transient Glitches and Level-Sensitive Clock
• Data (D) Latches• Master-Slave (M-S) Flip-Flops
– Edge-Triggered Clock (Edge Sensitive Clock)
• Toggle (T) Flip-Flops• J-K Flip-Flops
• Data (D) Flip-Flops• Clock Timing and Stability Analysis