Presentation is loading. Please wait.

Presentation is loading. Please wait.

Midterm Review October 23, 2001.

Similar presentations


Presentation on theme: "Midterm Review October 23, 2001."— Presentation transcript:

1 Midterm Review October 23, 2001

2 Administrivia – The Midterm
Problem solving What logic gates do How to build circuits that realize truth tables Addition circuitry Memory State machines to model situations Building the logic for state machines Putting it together to build a computer Programming the computer using machine language Representing information Understanding key ideas Von Neumann machine Moore’s law

3 Extra Midterm help DPD office hours Wednesday 2—4
My office, CS 219 Check with qlv and wtcorrea for other hours

4 More for Less --Moore’s Law
Everything doubles every 18 months Memory/dollar Disk/dollar Transistors per inch Processor speed Network bandwidth

5 Practical Details Problem sets 20% Lab reports 10% Midterm exam 25%
Final exam 25% Class Participation 20%

6 Building a computer

7 Layers of Abstraction Build more and more powerful tools out of simpler ones. Really Simple Stuff Computers

8 A Simple Logic Puzzle Frank will go to the party if Ed goes AND Dan does NOT. Dan will go if Bob does NOT go OR if Carole goes. Ed will go to the party if Alice AND Bob go. Alice and Bob decide to go, but Carol stays home. Will Frank go to the party?

9 Using 0’s and 1’s 0 = False 1 = True What do 0’s and 1’s mean?
For now, we’ll take “Natural meanings:” For example, if we have a variable Alice for whether Alice goes to the party, If Alice goes, we write Alice = 1 If Alice doesn’t, we write Alice = 0 0 = False 1 = True

10 Logic Gates Computers are circuits made of Logic Gates.
Logic gates manipulate 0’s and 1’s (False and True) by letting electrons flow or not. We’ll look at three types of Logic Gates: AND are all inputs true? OR is one input true? NOT flip the truth value

11 AND Gate AND W Y Z X W X Y Z

12 OR Gate W OR Z W X Y Z X Y

13 NOT Gate Shorthand: Truth Table
“Yanni will go to the party if Xena does NOT go.” X NOT Y Shorthand: X Y X Y 0 1 1 0 Truth Table

14 Logic Puzzle Circuit AND AND OR Alice Ed Frank Bob Dan Carole
Dan will go if Bob does NOT go OR if Carole goes.

15 Given Any Truth Table A B C F 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 0

16 Given Any Truth Table AND AND AND A B C F A 0 0 0 0 0 0 1 1 B 0 1 0 1
A AND B C A AND B C A AND B C Build AND gate for each output 1

17 Given Any Truth Table Finally, combine ANDs with an OR gate. AND F AND
Can build logic for any Truth table this way AND B C

18 Universality Note same idea works no matter how many input variables. So for ANY Truth Table we can write down, we can make a circuit for it using only 3 Logic Gates: AND, OR, NOT This gives us a very powerful tool ! But, in practice, we are limited in size we can realize – numeracy exercise.

19 Our First Abstract Tool
Universal Method: Circuits for ANY Truth Table 0’s & 1’s Universal Method Computers We are here

20 Powers of 2 (cont.) 210  1,000 (103 ) kilo
Some rough numbers: 210  1,000 (103 ) kilo 220  1,000,000 (106 ) mega RAM 230  giga disk 240  tera BIG disk 250  peta 260  exa knowledge

21 Representing Information
We represent information with 0’s and 1’s Numbers Use binary or hexadecimal Letters Use ASCII Sounds Use samples Images Use pixels

22 Adding Binary Numbers AND sum OR AND carry AND X X Y sum 0 0 0 0 1 1 Y
Y sum OR X AND Y X Y carry X carry AND Y

23 Addition We can use 1 building block to add numbers of any length.
Black box operation ith bit of X ith bit of Z ith bit of Y carry bit out carry bit Abstraction in action -- This is a piece of a carry-ripple adder

24 Carry-Ripple Adder Z1 Z2 X2 Universal Circuit For Z2 and carry Z0 X1
Fixed at 0 X2 X1 X0 Y2 Y1 Y0 ============ C2 Z2 Z1 Z0

25 Memory

26 Enter Rita Matt doesn’t like Rita
Matt decides to go to the party if Sue decides to go OR: If he (Matt) already feels like going AND Rita decides NOT to go. Sue OR Matt AND Rita Feedback Wire

27 The Flip-Flop OR AND M becomes 1 if Set is turned on
Reset M becomes 1 if Set is turned on M becomes 0 if Reset is turned on Otherwise (if Set and Reset are both 0), M just remembers its value

28 The Flip-Flop S M R M becomes 1 if Set is turned on
M becomes 0 if Reset is turned on Otherwise (if Set and Reset are both 0), M just remembers its value

29 The Data Flip-Flop D M Write
If Write = 0, M just keeps its value. (It ignores D.) If Write = 1, then M becomes set to D

30 RAM Group 8 of them together. 8 bits (b) is called a byte (B).
Most RAM is arranged in bytes. D M W D M W

31 RAM (cont.) We want a HUGE number of such 1 byte memory cells.
Problem: How do we indicate which byte of memory we want to use at any given time? 1B 1B

32 RAM (cont.) 220 bytes of RAM (1 Mega-byte) 20 bits of address Address
Data input Data Output Write 8 bits (1 byte) of data

33 On our way to building a computer…
Review On our way to building a computer… Logic Circuits: Universal Method Represent Info with 0’s & 1’s (aka bits) 0’s & 1’s Memory Circuits Computers We are here

34 The System Clock “500 Mhz Pentium III computer…”
What does “500 Mhz” mean? It refers to the speed of the System Clock. (actually this is only one of the clocks…) All digital systems have such “Clocks,” even traffic lights and elevator control systems.

35 Our System: A Traffic Light

36 A Traffic Light Intersection of two one-way roads A B Car Sensors

37 Light A Light B Traffic Light Behavior Otherwise Note: Clock beats
every 4 sec. So Light is Yellow for 4 sec. IF A=1 AND B=0 Light A Always Always IF A=0 AND B=1 Otherwise Light B

38 Light A Light B Traffic Light State Machine Otherwise
Note: Clock beats every 4 sec. So Light is Yellow for 4 sec. IF A=1 AND B=0 Light A Always Always IF A=0 AND B=1 Otherwise Light B

39 Light A Light B Traffic Light States 00 01 11 10 Otherwise IF A=1
AND B=0 00 01 Light A Always Always IF A=0 AND B=1 11 10 Otherwise Light B

40 Traffic Light Behavior
Build A Truth Table for next state / Output M1 M2 A B D1 D2 Light A Red Light B Red … 0 1 * * 1 1 * * … … … … … … …

41 Traffic Light Design Current State 2-bit Memory Logic Register For
Next State & Output Clock Sensor A 6 Outputs: for each Light Sensor B

42 Design for Any State Machine
Many bits Current State Memory Register Logic For Next State & Output Clock Inputs Outputs

43 State Machines in Real Life
Elevator control systems Car control systems VCR’s Alarm Clocks Personal Computers … Just about everything!

44 Computers

45 Computer Architecture
CPU Keyboard Display Bus Hard Disk CD-ROM RAM

46 The Bus Communication on the bus is via postcards CPU Keyboard Display
CPU puts “Keyboard, did the user type anything?” (represented in some way) on the Bus. CPU Keyboard Display Bus “Keyboard, did the user type anything?”

47 The Bus Each device (except CPU) is a State Machine that constantly checks to see what’s on the Bus. CPU Keyboard Display Bus “Keyboard, did the user type anything?”

48 The Bus Keyboard notices that its name is on the Bus, and reads info. Other devices ignore the info. CPU Keyboard Display Bus “Keyboard, did the user type anything?”

49 The Bus Keyboard then writes “CPU: Yes, user typed ‘a’.” to the Bus.
Display Bus “CPU: Yes, user typed ‘a’.”

50 The Bus At some point, CPU reads the Bus, and gets the Keyboard’s response. CPU Keyboard Display Bus “CPU: Yes, user typed ‘a’.”

51 The CPU (cont.) Memory Registers Register 0 Arithmetic / Logic Unit
Control Unit (State Machine) Instruction Register Instr. Pointer (IP)

52 Important Point One of the important features of the von Neumann model is the fact that: The instructions themselves And The data the instructions manipulate are all stored in the same RAM. This was one of the revolutionary features of the modern computer, totally unlike Punch-Card computers proposed in the past.

53 Important Point This innovation is crucial to modern computing.
It even allows for the possibility of programs that change themselves as they are executed. With great power comes great risk… Computer Viruses!

54 Machine Language We now have a machine that can execute instructions.
Basic Questions: What instructions? How do computers understand these instructions? (Representation) What does software look like to a computer?

55 Instructions 16 possible Op-Codes: 0: halt 1: add 2: subtract
3: multiply 4: bus output 5: jump 6: jump if positive 7: jump & count 8: bus input 9: load A: store B: load direct/addr. C: NAND D: AND E: Shift Right F: Shift Left

56 Adding Numbers Simple Program to calculate = 21 = 15 (hex) 10: Load R0  (always 1) 11: Load R2  (running total) 12: Load R1  (current number) 13: Add R2  R2 + R1 (R2=1) 14: Add R1  R1 + R0 (R1=2) 15: Add R2  R2 + R1 (R2=3) 16: Add R1  R1 + R0 (R1=3) 17: Add R2  R2 + R1 (R2=6) 18: Add R1  R1 + R0 (R1=4) 19: Add R2  R2 + R1 (R2=A) 1A: Add R1  R1 + R0 (R1=5) 1B: Add R2  R2 + R1 (R2=F) 1C: Add R1  R1 + R0 (R1=6) 1D: Add R2  R2 + R1 (R2=15) 1E: halt

57 Adding Numbers Alternate Loop using Jump & Count for … + N 10: Load R1  (N) 11: Load R2  (running total) 12: Add R2  R2 + R (add in N) 13: Jump to 12 and (If N isn’t 0 yet, decrease R1 if (R1>0) Let N=N-1, and go back) 14: halt (N is now 0, and R2 = 1+2+…+N)

58 Sound is a waveform

59 Sampling the waveform

60 The approximation

61 Even finer sampling

62 Digital vs. Analog A sound file is just a sequence of bytes
On a CD, the sampling rate is 44,100 samples per second. Each sample is quantized into a number in the range from 0 to 65,535, So a CD has 44,100 numbers (each 2 bytes) per channel per second of music. A graphic image is just a sequence of bytes An image is made up of pixels Each pixel might be represented by 3 bytes giving color intensities. Manipulating sounds or images just involves manipulating numbers

63 Numeracy CD has 44,100 2 byte samples per second.
44,100 x 2 x 60 x 2 (channels) = megabytes per CD minute A CD is 74 minutes (746 megabytes) long. MP3 players typically use memory 32 or 64 megabytes in size. (or 3-6 minutes) Compression is needed

64 The need for compression
A CD is 746 megabytes long A printed page requires 86.4 Megabytes of storage

65 Simple compression Simple compression More complex compression
Use redundancy More complex compression Lossy vs. lossless Ideas for lossy Drop frequencies you can’t hear Drop small differences you won’t notice

66 More complex compression
Lossy compression Can save space by eliminating parts of the image/sound that don’t matter very much Big savings compared to lossless, but the signal cannot be fully recovered. Ideas Dropping frequencies you can’t hear Dropping small differences you won’t notice Generally large savings compared to lossless

67 Pause for experiment


Download ppt "Midterm Review October 23, 2001."

Similar presentations


Ads by Google