Timing and Hazards
Logical levels Positive Logic Negative Logic 5v = 1 0v = 0 0v = 1 5v = 0
Noise – basic concepts 0 1 Ideal World
Noise – basic concepts 0=0v 1=5v Ideal World 0 1 Real World Positive Logic Voltage
Noise – basic concepts 0 1 Real World Positive Logic
Noise – basic concepts 5v 0v 1v 1.5v Output Range Input Range Output Range 4v 3.5v High Value Low Value
Timing – basic concepts 0 1 Ideal World “zero” time to change
Timing 0 1 Ideal World “zero” time to change 0 1 Real World measurable time to change
Timing 0 1 Ideal WorldInput 0 1 Output
Timing 0 1 Ideal WorldInput 0 1 Output 0 1 Real World 0 1
Timing – Delay Time 0 5V Input Output Time 50% t HL t LH Propagation delay = t PD = max(t HL,t LH )
Timing – Contamination time 0 5V Input Output Time 50% t CD The minimum time in which the input changed (50%) and the output didn’t change.
Timing Rise and Fall time (measured on the output) % 90% trtr Rise Time 10% 90% tftf Fall Time Output
The t pd of a circuit The function : X 1 *X 2 + X 3 ’ A C B X3X3 X2X2 X1X1 Data in nsABC t HL t LH t CD trtr TfTf Y
The t pd of a circuit a single assignment The function : X 1 *X 2 + X 3 ’ A C B X 3 =1 X 2 =0 1 X 1 =1 Data in nsABC t HL t LH t CD trtr TfTf Y
The t pd of a circuit a single assignment The function : X 1 *X 2 + X 3 ’ A C B X 3 =1 X 2 =0 1 X 1 =1 Data in nsABC t HL t LH t CD trtr TfTf 101
The t pd of a circuit a single assignment The function : X 1 *X 2 + X 3 ’ A C B X 3 =1 X 2 =0 1 X 1 =1 Data in nsABC t HL t LH t CD trtr TfTf 101 Y 0 1
The t pd of a circuit a single assignment X 2 =0 1 Output of A Output of C t LH (A) t LH (B)
The t pd of a circuit a single assignment X 2 =0 1 Output of A Output of C t LH (A) t LH (B) t LH (A) + t LH (B)
The t pd of a circuit The t pd of a circuit is the maximal value Over all the possible single assignments
The t cd of a circuit a single assignment X 2 =0 1 Output of A Output of C Real t CD (Circuit)
The t cd of a circuit a single assignment X 2 =0 1 Output of A Output of C t CD (A) t CD (B) R
The t cd of a circuit a single assignment X 2 =0 1 Output of A Output of C t CD (A) t CD (B) R Real t CD (Circuit) = t CD (A) + t CD (B) + R
The t cd of a circuit a single assignment t CD (Circuit) = t CD (A) + t CD (B) < t CD (A) + t CD (B) +R = Real t CD (circuit) Since t CD is the minimum
The t CD of a circuit The t CD of a circuit is the minimal value Over all the possible single assignments
Timing The minimum time for the output to change What is the minimal time that the output will change over a single assignment?
The minimum time for the output to change a single assignment X 2 =0 1 Output of A Output of C t LH (A) t LH (B) t LH (A) + t LH (B)
The minimum time for the output to change a single assignment X 2 =0 1 Output of A Output of C t LH (A) t LH (B) t LH (A) + t LH (B)
The minimum time for the output to change a single assignment Real Minimum Time = t LH (A) + t HL (A) + T r (X2) + T r (C) 2
The minimum time for the output to change a single assignment Real Minimum Time = t LH (A) + t HL (A) + T r (X2) + T r (C) 2 < Max(Tr(X2), Tr(C))
The minimum time for the output to change a single assignment Estimated Minimum Time = t LH (A) + t HL (A) +Max(T r (X2),T r (C)) > Real Minimum time
Problems in timing Y = X2*X3 + X1*X2’ B D A C X1 X2 X3 Y Assume t HL =t LH > 0 And equal for all gates
Problems in timing Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 X3=1 Y=1
Problems in timing Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 X3=1 Y=
Change in input – final state Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 0 X3=1 Y=1 We changed the input But the result remained the same 1 1 0
Change in input – Time slice 1 Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 0 X3=1 Y=1
Change in input – Time slice 2 Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 0 X3=1 Y=1 0101 0 1010 1
Change in input – Time slice 3 Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 0 X3=1 Y=0 1 0101 0 1010
Change in input – Time slice 4 Y = X2*X3 + X1*X2’ B D A C X1=1 X2=1 0 X3=1 Y= 101
Input Change Time 0 X2 A B C Y
Input Change Time 1 X2 A B C Y
Input Change Time 2 X2 A B C Y
Input Change Time 3 X2 A B C Y
Input Change Time 4 X2 A B C Y
Static Hazard X2 A B C Y Static Hazard – A change in a single input That should not change the output Leads to a momentary change.
Static hazard – another point of view X2X3X2X3 X1X1
Static hazard – another point of view X2X3X2X3 X1X1
Static hazard – another point of view X2X3X2X3 X1X1