Top Banner
Timing and Hazards
48

Timing and Hazards

Jan 19, 2016

Download

Documents

Ivi

Timing and Hazards. Logical levels. Negative Logic. Positive Logic. 0v = 1. 5v = 1. 5v = 0. 0v = 0. Noise – basic concepts. 1. Ideal World. 0. Noise – basic concepts. Positive Logic. 1=5v. Ideal World. Voltage. 0=0v. 1. Real World. Voltage. 0. Noise – basic concepts. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Timing and Hazards

Timing and Hazards

Page 2: Timing and Hazards

Logical levels

Positive Logic

Negative Logic

5v = 1

0v = 0

0v = 1

5v = 0

Page 3: Timing and Hazards

Noise – basic concepts

0

1Ideal World

Page 4: Timing and Hazards

Noise – basic concepts

0=0v

1=5vIdeal World

0

1Real World

Positive Logic

Voltage

Voltage

Page 5: Timing and Hazards

Noise – basic concepts

0

1

Real World

Positive Logic

Page 6: Timing and Hazards

Noise – basic concepts

5v

0v

1v1.5v

Output RangeInput Range

Input Range Output Range4v

3.5v

High Value

Low Value

Page 7: Timing and Hazards

Timing – basic concepts

0

1Ideal World

“zero” time to change

Page 8: Timing and Hazards

Timing

0

1Ideal World

“zero” time to change

0

1Real World

measurable time to change

Page 9: Timing and Hazards

Timing

0

1

Ideal World Input

0

1

Output

Page 10: Timing and Hazards

Timing

0

1

Ideal World Input

0

1

Output

0

1

Real World

0

1

Page 11: Timing and Hazards

Timing – Delay Time

0

5V

Input

Output

Time

50%

50%

50%

50%

tHL

tLH

Propagation delay = tPD = max(tHL,tLH)

Page 12: Timing and Hazards

Timing – Contamination time

0

5V

Input

Output

Time

50%

tCD

The minimum time in which the input changed (50%) and the output didn’tchange.

Page 13: Timing and Hazards

Timing Rise and Fall time(measured on the output)

0

1

10%

90%

trRise Time

10%

90%

tfFall Time

Output

Page 14: Timing and Hazards

The tpd of a circuit

The function : X1*X2 + X3’

A

C

BX3

X2

X1

Data in ns A B C

tHL 100 90 80

tLH 110 70 100

tCD 12 8 10

tr 20 12 14

Tf 17 13 19

Y

Page 15: Timing and Hazards

The tpd of a circuit a single assignment

The function : X1*X2 + X3’

A

C

BX3=1

X2=01X1=1

Data in ns A B C

tHL 100 90 80

tLH 110 70 100

tCD 12 8 10

tr 20 12 14

Tf 17 13 19

Y

Page 16: Timing and Hazards

The tpd of a circuit a single assignment

The function : X1*X2 + X3’

A

C

BX3=1

X2=01X1=1

Data in ns A B C

tHL 100 90 80

tLH 110 70 100

tCD 12 8 10

tr 20 12 14

Tf 17 13 19

01

Page 17: Timing and Hazards

The tpd of a circuit a single assignment

The function : X1*X2 + X3’

A

C

BX3=1

X2=01X1=1

Data in ns A B C

tHL 100 90 80

tLH 110 70 100

tCD 12 8 10

tr 20 12 14

Tf 17 13 19

01

Y 01

Page 18: Timing and Hazards

The tpd of a circuit a single assignment

X2=01

Output of A

Output of C

tLH(A)

tLH(B)

Page 19: Timing and Hazards

The tpd of a circuit a single assignment

X2=01

Output of A

Output of C

tLH(A)

tLH(B)

tLH(A) + tLH(B)

Page 20: Timing and Hazards

The tpd of a circuit

The tpd of a circuit is the maximal value

Over all the possible single assignments

Page 21: Timing and Hazards

The tcd of a circuit a single assignment

X2=01

Output of A

Output of C

Real tCD(Circuit)

Page 22: Timing and Hazards

The tcd of a circuit a single assignment

X2=01

Output of A

Output of C

tCD(A)

tCD(B)R

Page 23: Timing and Hazards

The tcd of a circuit a single assignment

X2=01

Output of A

Output of C

tCD(A)

tCD(B)R

Real tCD(Circuit) = tCD(A) + tCD(B) + R

Page 24: Timing and Hazards

The tcd of a circuit a single assignment

tCD(Circuit) = tCD(A) + tCD(B) <

tCD(A) + tCD(B) +R = Real tCD(circuit)

Since tCD is the minimum

Page 25: Timing and Hazards

The tCD of a circuit

The tCD of a circuit is the minimal value

Over all the possible single assignments

Page 26: Timing and Hazards

Timing The minimum time for the output to change

What is the minimal time that the output will change over a single assignment?

Page 27: Timing and Hazards

The minimum time for the output to change a single assignment

X2=01

Output of A

Output of C

tLH(A)

tLH(B)

tLH(A) + tLH(B)

Page 28: Timing and Hazards

The minimum time for the output to change a single assignment

X2=01

Output of A

Output of C

tLH(A)

tLH(B)

tLH(A) + tLH(B)

Page 29: Timing and Hazards

The minimum time for the output to change a single assignment

Real Minimum Time =

tLH(A) + tHL(A) + Tr(X2) + Tr(C)

2

Page 30: Timing and Hazards

The minimum time for the output to change a single assignment

Real Minimum Time =

tLH(A) + tHL(A) + Tr(X2) + Tr(C)

2

< Max(Tr(X2), Tr(C))

Page 31: Timing and Hazards

The minimum time for the output to change a single assignment

Estimated Minimum Time =

tLH(A) + tHL(A) +Max(Tr(X2),Tr(C)) >

Real Minimum time

Page 32: Timing and Hazards

Problems in timing

Y = X2*X3 + X1*X2’

B

DA

C

X1

X2

X3

Y

Assume tHL=tLH > 0 And equal for all gates

Page 33: Timing and Hazards

Problems in timing

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=1

X3=1

Y=1

Page 34: Timing and Hazards

Problems in timing

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=1

X3=1

Y=1

0

0

1

Page 35: Timing and Hazards

Change in input – final state

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=10

X3=1

Y=1

We changed the input But the result remained the same

1

1

0

Page 36: Timing and Hazards

Change in input – Time slice 1

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=10

X3=1

Y=1

Page 37: Timing and Hazards

Change in input – Time slice 2

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=10

X3=1

Y=1

01

0

10

1

Page 38: Timing and Hazards

Change in input – Time slice 3

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=10

X3=1

Y=0

1

01

0

10

Page 39: Timing and Hazards

Change in input – Time slice 4

Y = X2*X3 + X1*X2’

B

DA

C

X1=1

X2=10

X3=1

Y=1

1

1

0

01

Page 40: Timing and Hazards

Input Change Time 0

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Page 41: Timing and Hazards

Input Change Time 1

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Page 42: Timing and Hazards

Input Change Time 2

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Page 43: Timing and Hazards

Input Change Time 3

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Page 44: Timing and Hazards

Input Change Time 4

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Page 45: Timing and Hazards

Static Hazard

X2

A

B

C

Y

1

0

0

1

1

0

1

1

0

0

Static Hazard – A change in a single input That should not change the outputLeads to a momentary change.

Page 46: Timing and Hazards

Static hazard – another point of view

00 01 11 10

0 1

1 1 1 1

X2X3X1

Page 47: Timing and Hazards

Static hazard – another point of view

00 01 11 10

0 1

1 1 1 1

X2X3X1

Page 48: Timing and Hazards

Static hazard – another point of view

00 01 11 10

0 1

1 1 1 1

X2X3X1