Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Lecture 1 ”Introduction to computing and computing history” Administration of computer systems, 2009 Practical information • Course webpage: www.hh.se/te2003 • Lectures • 5 Exercises – Preparatory questions (do at home) – Exercise questions (do at exercise session) • Hardware research project – Present results in 15 min. slideshow • Written exam Lecture outline and goals • After this lecture you should be able to – Reason about the definition of “computer” – Give examples of some of the landmark events in computer history in the 20th century – Reason about the purpose of relays, vacuum tubes and transistors and how they relate to computation. – Identify the main classes of modern computer systems What is a computer? • Merriam-Webster says Main Entry: com·put·er Pronunciation: \kəm-pyü-tər\ Function: noun Usage: often attributive Date: 1646 : one that computes; specifically : a programmable usually electronic device that can store, retrieve, and process data Early mobile computer? Athens Museum of Archeology The Antikythera mechanism The Antikythera mechanism • Found on the seabed in Greece, dated back to approximately 150-100 BC [1] • Models astronomical phenomena in high detail using complex system of gears. • Thousands of years before anything as complex is known to have been created again. Is it a computer? • Definitely not electronic • Programmable via a number of dials, but basically single purpose • Data storage? • Does perform pre-defined calculations The importance of tables • Numerical tables were made and used for things like [1] – Mathematics – Engineering – Navigation – Insurance companies – Merchants Tables contd. • Creating large tables was error prone [2]… – Errors when computing the contents manually – Errors during printing and typesetting • …and extremely time consuming "It is unworthy of excellent men to lose hours like slaves in the labour of calculation which could safely be relegated to anyone else if machines were used." — Gottfried Leibniz (1646-1716) Mechanical minds • Many attempts at creating mechanical calculation machines were made – Shickard 1623 – Pascal 1642 – Leibniz 1671 – Babbage 1822 The method of differences • Method to evaluate polynomials • Example: polynomial of second order: p(x)=2x2+3x+10 p(1) = 2+3+10 = 15 p(2) = 8+6+10 = 24 p(3) =… p(4) =… Method of differences x p(x)=2x2+3x+10 1 15 2 24 3 37 4 54 p(x-1)-p(x) diff(x-1)-diff(x) Method of differences x p(x)=2x2+3x+10 1 15 2 24 15-24 = -9 3 37 24-37 = -13 4 54 37-54 = -17 p(x-1)-p(x) diff(x-1)-diff(x) Method of differences x p(x)=2x2+3x+10 1 15 2 24 15-24 = -9 3 37 24-37 = -13 -9-(-13) = 4 4 54 37-54 = -17 -13-(-17) = 4 p(x-1)-p(x) diff(x-1)-diff(x) Method of differences x p(x)=2x2+3x+10 1 15 2 24 15-24 = -9 3 37 24-37 = -13 -9-(-13) = 4 4 54 37-54 = -17 -13-(-17) = 4 p(x-1)-p(x) -17-4 = -21 diff(x-1)-diff(x) Method of differences x p(x)=2x2+3x+10 1 15 2 24 15-24 = -9 3 37 24-37 = -13 -9-(-13) = 4 4 54 37-54 = -17 -13-(-17) = 4 5 54-(-21) = 75 -17-4 = -21 p(x-1)-p(x) diff(x-1)-diff(x) Method of differences x p(x)=2x2+3x+10 1 15 2 24 15-24 = -9 3 37 24-37 = -13 -9-(-13) = 4 4 54 37-54 = -17 -13-(-17) = 4 5 54-(-21) = 75 -17-4 = -21 4 6 75-(-25) = 100 -21-4 = -25 4 p(x-1)-p(x) diff(x-1)-diff(x) 4 VIDEO Boolean logic • Algebraic system designed by George Boole in mid 1800’s • AND (A.B) • OR (A+B) • NOT (A’) Binary operators AND/OR A B AND OR 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 1 Unary operator NOT A NOT 0 1 1 0 Simple example of Boolean logic • D = Day, C = Cloudy, S = Switch, L = Light • “When the switch is on the lamp is on if it is cloudy or if it is night” • Lamp = Switch AND ((NOT Day) OR Cloudy) • L = S.(D’ + C) Claude Shannon • In 1938 Claude Shannon showed how Boolean algebra could be used as the foundation of mechanical/electrical computation. One of the most important masters thesis's ever according to some [3] From Shannons thesis Circuit interpretation • D = Day, C = Cloudy, S = Switch, L = Light • “When the switch is on the lamp is on if it is cloudy or if it is night” • L = S.(D’ + C) C S L D’ Relay based computers • To implement the switches in the example relays can be used. • As a current is fed through the coil the magnetic field and a connection is made. When the current stops the switch is returned using a spring. Relay based computers • Early computer based on Boolean logic using relays: – Konrad Zuse’s Z3, 1941 • 2000 relays • 4000 W power consumption • 5-10 Hz clock frequency Vacuum tubes • The time it takes for the switches to change state decides the speed of the machine. • Another way to implement the switches is using vacuum tubes, as in the ENIAC computer which used 18.000 of them. Wikipedia ENIAC, 1946 Weight: 27 tons Power consumption: 150kW Performance: 385 Multiplications/second ”Where the ENIAC is equipped with 18,000 vacuum tubes and weighs 30 tons, computers in the future may have 1,000 vacuum tubes and perhaps weigh just 1-1/2 tons” --Popular Mechanics, March 1949 The transistor • The way we implement the switches in most modern computers today is using transistors, made from semiconductor material. Mainly silicon. • Inventors Shockley, Bardeen and Brattain were awarded the Nobel prize for their invention in 1956 Transistor • In the cross-section of a NPN transistor below the current that flows between emitter E and collector C is controlled by the voltage between base B and the emitter. Integrated circuits • Large number of transistors tightly packed on a single chip – Low power consumption – Low cost – High reliability • In 1965 Gordon Moore predicted that the number of transistors on a chip would increase exponentially. “Moore's law” Moore’s law 1.000.000.000 100.000.000 10.000.000 1.000.000 100.000 10.000 1.000 1970 1975 1980 1985 1990 1995 2000 2005 Approximate number of transistors per chip for various generations of Intel processors Software • Remember the Antikythera mechanism? – Single purpose = One “program” • ENIAC originally had to be programmed by switches before each run – Multi-purpose but took a long time • What if the program could be stored in the same way as data? The von Neumann architecture • In the von Neumann architecture the same storage is used for data and instructions. – Simplified memory structure – Programs can modify themselves and other programs (compilers, high-level programming) CPU Data/ Instruction Memory The Harvard architecture • In the Harvard architecture data and instructions are stored in separate memories – Allows simultaneous access to both memories, higher speed – Memories can be implemented completely differently from each other Data Memory CPU Instruction Memory Modern computers • Mostly of the stored program type – Have memory – Programmable via some interface • CPU implemented using transistors on chip connected to other devices to form a computer system • Range from highly specialized to very general Embedded computers • Ubiquitous, used almost everywhere • Typically specialized for a certain task • Often need to interact with the surrounding world in real-time. E.g. a factory controller. Personal computers, PC’s • Consumer/office product – General purpose – Standardized system architecture – Expandable – Human-machine-interface – Operating system Servers/Datacenter computers • More specialized but often consists of similar components as in PC’s – High reliability and availability requirements – In large datacenters cooling and power become important – Modularity and redundancy, multiple hard drives, power supplies etc. Wikipedia Supercomputers • Specialized calculation machines – Often highly parallel – Used for compute intensive applications • Weather modeling and forecasting • Cryptography • Large networks of servers or PC’s – Google – Mare Nostrum Mare Nostrum supercomputer Review • Mechanical computers • Boolean logic/electric circuits • Switches – Relay, vacuum tube, transistor • The integrated circuit (IC) • Stored program computer – Von Neumann/Harvard architectures • Classes of modern computers – Embedded, PC, server, supercomputer Visit the course webpage • Important material that will be posted: – This lecture – Course literature – Reading recommendations and references – Exercise instructions and preparatory questions SIGN UP FOR AN EXERCISE SESSION http://www.hh.se/te2003 References and links [1] The Antikythera project: http://www.antikythera-mechanism.gr [2] M. Lindgren, ”Glory and Failure”, ISBN 91-7870-146-5 [3] C. E. Shannon, “A symbolic analysis of relay and switching circuits”, Massachusetts Institute of Technology, Dept. of Electrical Engineering, 1940