History of Computers
Total Page:16
File Type:pdf, Size:1020Kb
Chronological History of Pre and Early Computer Developments Computer Technology “Foreign” Milestones American Milestones 500 B. C. Abacus 1621 Slide Rule Built from two types of components plus interconnection: 1623 Schickard’s Adding Machine (Germany) Gates: 1642 Pascal’s Adding Machine (France) A B OR 1673 Leibniz Calculator (Germany) Binary Binary Output F F F 1804 Jacquard Loom and Punch Cards Inputs Function F T T 1822 Babbage’s Difference & T F T Analytical Engine (England) T T T 1850 George Boole’s Boolean Algebra (Irish) Memory Cells: 1890 Census and Tabulating Machines One Bit 1924 IBM Input Output 1937 Alan Turing and the Turing 1937 John Atanasoff and the ABC Storage Machine Computer (ISU) 1938 Konrad Zuse’s Z-series Read/Write control singal (Germany) 1939 Harvard MARK I 1943 COLOSSUS (England) Circuit - collection of gates and/or memory cells to 1945 ENIAC Mauchly and Eckert perform some function 1946 Manchester Mark I (England) (First Stored-Program Computer) 1947 Transistor Bell Labs EDSAC 1949 (England) . 1951 UNIVAC Mauchly/Eckert Sperry Rand Corp Grace Hopper wrote first compiler for it 1 2 Computer Generations Computer Generations (continued) 1st Generation - vacuum tubes with wires for 3rd Generation - Small-scale integrated circuits (ICs) interconnection (one gate per vacuum tube) Many gates on same wafer of silicon (chip) and connected to form circuits. Examples: ENIAC - 1943-46 Army’s Ballistics Lab Advantages: Mauchly/Eckert (U. of Penn.) 1st general-purpose 1) cheaper since the cost per chip the same, but fewer electronic digital computer needed since more powerful 30 tons, 15,000 sq. ft., 18,000 vacuum tubes, 140 KW, 2) denser chipsd shorter connections d faster 5000 adds/sec 3) smaller computersd used in more places Programmed with wires and switches 4) reduced power and cooling consumption 1945-52 - IAS John von Neumann (Princeton) used 5) interconnections on ICs more reliable that stored-program concept interconnections between ICs 2nd Generation - transistors - solid state device made 4th Generation - Large-scale ICs - microprocessor from silicon, but single gate each Enough gates per chip to implement whole CPU 10,000 to 100,000 transistors soldered to circuit board Intel 4004 (1971) - 1st Advantages: improved speed, reliability, size, power Intel 8080 (1974) - lst general-purpose microprocessor consumption Some system software: early OS and High-level programming languages 3 4 Moore’s Law von Neumann Model: Stored-Program Concept CPU/Processor System Bus Memory (Addresses) PSW-process status word Operating 0 Control Gordon Moore - Intel cofounder (1965) System 1 Unit Area 2 3 . Predicted that gate density would double every year Stack ALU (+ into near future. ,-,*, etc) Unused Space Address Program's A R0 This held true until early 1970s when the rate slowed to Heap doubling every 18 months. R1 R2 5 (X) Global Data Register File 3 (Y) 0 (SUM) R31 s s PC, program counter Area Program u Load R3, Y u s u B B l Load R2, X B s o s a r e t t Add R1,R2,R3 r a n d o IR, instruction register D d Store R1, SUM C A MAR . MDR I/O Controller Disk Instruction/Machine Cycle of stored-program computer - repeat all day 1. Fetch Instruction - read instruction pointed at by the program counter (PC) from memory into Instr. Reg. (IR) 2. Decode Instruction - figure out what kind of instruction was read 3. Fetch Operands - get operand values from the memory or registers 4. Execute Instruction - do some operation with the operands to get some result 5. Write Result - put the result into a register or in a memory location (Note: Sometime during the above steps, the PC is updated to point to the next instruction.) 5 6 Today’s stored-program computers have the Programming Languages following characteristics: –Three hardware systems: Machine Assembly High-Level •A central processing unit (CPU) Language Language Languages Assembler Compiler •A main memory system 10100100 Load R3, Y •An I/O system 10011011 Load R2, X SUM = X+Y –The capacity to carry out sequential instruction 00110011 Add R1,R2,R3 processing. 10011100 Store R1, SUM –A single data path between the CPU and main memory. •This single path is known as the von Neumann Instruction Set Architecture (ISA)/Family of Computers Several implementation of computer can run the same bottleneck . assembly/machine language with different cost/performance •Register File - store a small amount of data in the ratios. CPU close to the computation circuits Examples: •Level 1 (L1) and Level 2 (L2) caches on CPU store IBM 700/7000 Series (overhead) larger amounts of data and instruction on CPU Intel 486, Pentium I, II, III, IV (overhead) Advantages of High-Level Programming Languages: 1) Portability - computer independent 2) Productivity - more and better software in less time 3) Application specific languages 7 8 11 12 lower levels to perform tasks as required. as tasks perform to levels lower particular instructions, calling upon machines at machines upon calling instructions, particular The machines at each level execute their own their execute level each at machines The virtual machine layers. machine virtual similar technique through a series of series a through technique similar • Complex computer systems employ a employ systems computer • Complex problem. each program module solves a smaller a solves module program each “divide and conquer” approach, where approach, conquer” and “divide • Writing complex programs requires a requires programs complex • Writing worthwhile, it must also use software. use also must it worthwhile, • Before a computer can do anything do can computer a • Before besides chips. besides • Computers consist of many things many of consist • Computers The Computer Level Hierarchy Level Computer The 9 ABC 1940 Military Vacuum Tube Vacuum Tube Vacuum 1st Generation ML Transistor 1950 going??? applications are Where US Census AL GE - Payroll Applications Computer Banking Sputnik I FORTRAN, COBOL, etc. BASIC, SIMULA, SmallTalk, (D)ARPA Trans. IC IC & R D 2nd 3rd Computer Applications Computer 1960 Military Programming Language Programming Hardware Computer Sketchpad unlimited??? be will bandwidth networking Soon Time Line High-LevelLanguages Programming . 4 Calculator . RDBMS Telnet ARPANET Intel19 740040 . LSI VLSI FTP connected computers four Later, 4th Intel 8080 (Bolt, Beranek, and Newman) to build first packet s packet first build to Newman) and Beranek, (Bolt, Ethernet Network Computer witches Elec. Pencil 111 MS/Apple company Mass. Cambridge, a commissioned ARPA - 1969 VisiCalc Xerox-desktop Usenet RISC 1980 Internet Pac Man TCP/IP Commodore 64 research networking sponsors Comm. e-mail Token Agency Projects Research Advanced - ARPA - 1965 Hypercard Ring MS Windows 200K 5th switching. Internet/WWW institution) and Paul Baran begin research into pac into research begin Baran Paul and institution) 1990 ket Gopher NCSAMosaic nonprofit a Development and (Research RAND - 1962 100M? Computer Networking Computer 2000 • Level 6: The User Level • Level 2: Machine Level –Program execution and user interface level. –Also known as the Instruction Set –The level with which we are most familiar. Architecture (ISA) Level. –Consists of instructions that are particular to • Level 5: High-Level Language Level the architecture of the machine. –The level with which we interact when we –Programs written in machine language need write programs in languages such as C, no compilers, interpreters, or assemblers. Pascal, Lisp, and Java. • Level 1: Control Level • Level 4: Assembly Language Level –A control unit decodes and executes –Acts upon assembly language produced instructions and moves data through the from Level 5, as well as instructions system. programmed directly at this level. –Control units can be microprogrammed or hardwired . • Level 3: System Software Level –A microprogram is a program written in a –Controls executing processes on the system. low-level language that is implemented by –Protects system resources. the hardware. –Assembly language instructions often pass –Hardwired control units consist of hardware through Level 3 without modification. that directly executes machine instructions. 13 14 • Level 0: Digital Logic Level –This level is where we find digital circuits (the chips). –Digital circuits consist of gates and wires. –These components implement the mathematical logic of all other levels. 15.