Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Organization and Design Transistors & Logic - I Montek Singh Mon, Feb 28, 2011 Lecture 8.

Similar presentations


Presentation on theme: "Computer Organization and Design Transistors & Logic - I Montek Singh Mon, Feb 28, 2011 Lecture 8."— Presentation transcript:

1 Computer Organization and Design Transistors & Logic - I Montek Singh Mon, Feb 28, 2011 Lecture 8

2 Outline A B Comp 411 Box-o-Tricks F = A xor B 1)The digital contract 2)Encoding bits with voltages 3)Processing bits with transistors 4)Gates 5)Truth-table SOP Realizations 6)Multiplexer Logic

3 Where Are We?  Things we know so far: Computers process information Computers process information Information is measured in bits Information is measured in bits Data can be represented as groups of bits Data can be represented as groups of bits Computer instructions are encoded as bits Computer instructions are encoded as bits Computer instructions are just data Computer instructions are just data We, humans, don’t want to deal with bits… We, humans, don’t want to deal with bits…  so we invent Assembly Language and Compilers  But, what PROCESSES all these bits?

4 A Substrate for Computation  We can build devices for processing and representing bits using almost any physical phenomenon neutrino flux trained elephants engraved stone tablets orbits of planets sequences of amino acids polarization of a photon Wait! Those last ones might have potential... 1 0 1 0 0 1 1 0 1 0 0 1

5 Using Electromagnetic Phenomena  Things like: voltages, phase, currents, frequency voltages, phase, currents, frequency  For today let’s discuss using voltages to encode info Voltage pros: Voltage pros:  easy generation, detection  voltage changes can be very fast  lots of engineering knowledge Voltage cons: Voltage cons:  easily affected by environment  need wires everywhere

6 Representing Information with Voltage  Representation of each point (x, y) on a B&W pic: 0 volts: BLACK 0 volts: BLACK 1 volt:WHITE 1 volt:WHITE 0.37 volts: 37% Gray, etc. 0.37 volts: 37% Gray, etc.  Representation of a picture: scan points in some prescribed raster order… scan points in some prescribed raster order… generate voltage waveform generate voltage waveform How much information at each point?

7 Information Processing = Computation  First, let’s introduce some processing blocks: (say, using a fancy photocopier/scanner/printer) v Copy v INV v 1-v

8 Let’s build a system! ? CopyINV CopyINV CopyINV CopyINV output (In Theory) (Reality) input

9 Why Did Our System Fail?  Why doesn’t reality match theory? COPY Operator doesn’t work right COPY Operator doesn’t work right INVERSION Operator doesn’t work right INVERSION Operator doesn’t work right Theory is imperfect Theory is imperfect Reality is imperfect Reality is imperfect Our system architecture stinks Our system architecture stinks  ANSWER: all of the above! Noise and inaccuracy are inevitable Noise and inaccuracy are inevitable We cannot reliably reproduce infinite information We cannot reliably reproduce infinite information Must design our system to tolerate some amount of error if it is to process information reliably! Must design our system to tolerate some amount of error if it is to process information reliably!

10 The Key to System Design  A SYSTEM is a structure that is guaranteed to exhibit a specified behavior, assuming all of its components obey their specified behaviors.  How is this achieved? CONTRACTS! Every system component will have clear obligations and responsibilities. If these are maintained we have every right to expect the system to behave as planned. If contracts are violated all bets are off. Every system component will have clear obligations and responsibilities. If these are maintained we have every right to expect the system to behave as planned. If contracts are violated all bets are off.

11 The Digital Panacea...  Why DIGITAL? … because it keeps the contracts SIMPLE! … because it keeps the contracts SIMPLE!  The price we pay for this robustness? All the information that we transfer between components is only 1 crummy bit! All the information that we transfer between components is only 1 crummy bit! But, in exchange, we get a guarantee of a reliable system. But, in exchange, we get a guarantee of a reliable system. 0 or 1

12 The Digital Abstraction Real World “Ideal” Abstract World Volts or Electrons or Ergs or Gallons Bits 0/1 Keep in mind, the world is not digital, we engineer it to behave so. We must use real physical phenomena to implement digital designs! Noise Manufacturing Variations

13 A Digital Processing Element  A combinational device is a circuit element that has: one or more digital inputs one or more digital inputs one or more digital outputs one or more digital outputs a functional specification that details the value of each output for every possible combination of valid input values a functional specification that details the value of each output for every possible combination of valid input values  output depends only on the latest inputs a timing specification consisting (at minimum) of an upper bound t pd on the time the device will take to produce the output value from stable valid input values a timing specification consisting (at minimum) of an upper bound t pd on the time the device will take to produce the output value from stable valid input values Output a “1” if at least 2 out of 3 of my inputs are a “1”. Otherwise, output “0”. I will generate a valid output in no more than 2 minutes after seeing valid inputs input A input B input C output Y

14 A Combinational Digital System  A system of interconnected elements is combinational if: each circuit element is combinational each circuit element is combinational every input is connected to exactly one output or directly to a source of 0’s or 1’s every input is connected to exactly one output or directly to a source of 0’s or 1’s the circuit contains no directed cycles the circuit contains no directed cycles  no feedback (yet!)  But, in order to realize digital processing elements we have one more requirement!

15 Noise Margins  Key idea: Keep “0”s distinct from the “1”s say, “0” is represented by min voltage (e.g., 0 volts) say, “0” is represented by min voltage (e.g., 0 volts) … “1” is represented by high voltage (e.g., 1.8 volts) … “1” is represented by high voltage (e.g., 1.8 volts) use the same voltage representation throughout the entire system! use the same voltage representation throughout the entire system!  For reliability, outlaw “close calls” forbid a range of voltages between “0” and “1” forbid a range of voltages between “0” and “1” volts Forbidden Zone Valid “0” Valid “1” Invalid CONSEQUENCE: Notion of “VALID” and “INVALID” logic levels Min Voltage Max Voltage

16 AND Digital Processing Elements  Some digital processing elements occur so frequently that we give them special names and symbols AY I will only output a ‘1’ if all my inputs are ‘1’ A B Y OR I will output a ‘1’ if any of my inputs are ‘1’ A B Y AY A B Y XOR I will only output a ‘1’ if an odd number of my inputs are ‘1’ buffer inverter I will output the complement of my input I will copy and restore my input to my output

17 AND Digital Processing Elements  Some digital processing elements occur so frequently that we give them special names and symbols AY A B Y OR A B Y AY A B Y XOR buffer inverter


Download ppt "Computer Organization and Design Transistors & Logic - I Montek Singh Mon, Feb 28, 2011 Lecture 8."

Similar presentations


Ads by Google