11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

10
11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006

Transcript of 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

Page 1: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

11Digital Design

ENGR 3410 – Computer ArchitectureMark L. Chang

Fall 2006

Page 2: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

2

Combinational Logic Design Process

• Understand the Problem– what is the circuit supposed to do?– write down inputs (data, control) and outputs– draw block diagram or other picture

• Formulate the Problem in terms of a truth table or other suitable design representation– truth table, Boolean algebra, etc.

• Choose Implementation Target– PAL, PLA, Mux, Decoder, Discrete Gates

• Follow Implementation Procedure– K-maps, Boolean algebra, algorithmic simplification

Page 3: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

3

Process Line Control Example

• Statement of the Problem– Rods of varying length (+/-10%) travel on conveyor belt– Mechanical arm pushes rods within spec (+/-5%) to one side– Second arm pushes rods too long to other side– Rods too short stay on belt

– 3 light barriers (light source + photocell) as sensors– Design combinational logic to activate the arms

• Understanding the Problem– Inputs are three sensors, outputs are two arm control signals– Assume sensor reads "1" when tripped, "0" otherwise– Call sensors A, B, C

• Draw a picture!

Page 4: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

4

Process Line Control Example (cont.)

Where to place the light sensors A, B, and C to distinguish among the three cases?

Assume that A detects the leading edge of the rod on the conveyor

Spec

+ 5%

+10%

Too Long

ROD

Spec

+ 5%

- 5%

Within Spec

ROD

Spec

- 5%

- 10%

Too Short

ROD

Page 5: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

5

Process Line Control Example (cont.)

A

B

C

Spectification - 5%

Specification + 5%

Too Long

Too Short

Within Spec

A to B distance place apart at specification - 5%

A to C distance placed apart at specification +5%

Page 6: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

6

Process Line Control Example (cont.)

Page 7: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

7

Combinational vs. Sequential Logic

Combinational logic no feedback among inputs and outputs outputs are a pure function of the inputs e.g., seat belt light: (Dbelt, Pbelt, Passenger) mapped into (Light)

Network implemented from logic gates.The presence of feedback distinguishes between sequentialand combinational networks.

---

X1

X2

Xn

LogicNetwork

Z1Z2

Zm

---

LogicCircuit

Driver_beltPassenger_belt

Passenger

Seat Belt Light

Page 8: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

8

Circuit Timing Behavior• Simple model: gates react after fixed delay

A

B

C

D

E

F

0

1

0

1

AB C

D EF

Page 9: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

9

• Circuit can temporarily go to incorrect states

• Must filter out temporary states

Hazards/Glitches

Copilot Autopilot Request

Pilot Autopilot Request

Pilot in Charge? Autopilot EngagedA

B

C

CAR

PIC

PAR

A

B

C

AE

Page 10: 11 Digital Design ENGR 3410 – Computer Architecture Mark L. Chang Fall 2006.

10

Safe Sequential Circuits• Clocked elements on feedback, perhaps outputs

– Clock signal synchronizes operation– Clocked elements hide glitches/hazards

Clock

---

X1X2

Xn

Logic

Network

Z1Z2

Zm

---

Clock

Data Valid ComputeCompute Valid Compute