The EDSAC Replica Project

Slides:



Advertisements
Similar presentations
Computer Memory and Data Transfer
Advertisements

The Turing Machine A definition of computability by Noah Richards.
Mother boards A CPU Memory Input Out put. A mother board is a board that controls the hole computer or ipad. The mother bored provides electrical conations.
Senem Kumova Metin Introduction to Programming CS 115 Introduction to Computing PART I : Computer Basics PART II: Introduction to Computing/Programming.
INTRODUCTION OF COMPUTER
Presentation II History of Computers By Teacher Julio Cesar Peñaloza Castañeda.
19-1 Programming… The Pencil and Paper Computer The Pencil & Paper Instruction Set: (table on p148) The Operand specifies a memory location.
Introduction Digital systems (logic design, digital logic, switching circuits) are employed in: computers data communication control systems many other.
Group 3 Exploring Engineering Darin Gray July 8 th, 2011.
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
1 Intro to CS: Part 2 Lecture 1 Ata Kaban School of Computer Science The University of Birmingham [adapted from B Bordbar and M Kwiatkowska]
1 Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
The Logic Machine We looked at programming at the high level and at the low level. The question now is: How can a physical computer be built to run a program?
Computability to Practical Computing - and - How to Talk to Machines.
Consider With x = 10 we may proceed as (10-1) = 9 (10-7) = 3 (9*3) = 27 (10-11) = -1 27/(-1) = -27 Writing intermediates on paper.
SHARANPREET SIDHU IT/9. The first generation of computers is said by some to have started in 1946 with Eniac, the first 'computer' to use electronic.
“Manchester and Early Computers” Christopher P Burton The Computer Conservation Society.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
2 nd Year - 1 st Semester Asst. Lect. Mohammed Salim
BACS 287 Basics of Programming BACS 287.
1 COMP201 Computer Systems Dr Richard Nelson Room G.1.29.
Overview Introduction The Level of Abstraction Organization & Architecture Structure & Function Why study computer organization?
1 Machine Language Alex Ostrovsky. 2 Introduction Hierarchy of computer languages: 1. Application-Specific Language (Matlab compiler) 2. High-Level Programming.
THE modern world is impossible to imagine without computers. They fit on desks, in the laps – even the palm of the hand. But the first modern computers,
Computer Architecture and Organization Introduction.
Implementation of a Stored Program Computer ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides2.ppt Modification date: Oct 16,
Chapter 1 Introduction. Architecture & Organization 1 Architecture is those attributes visible to the programmer —Instruction set, number of bits used.
Chapter 1 Computers: Tools for an Information Age.
Computer Design Basics
Advanced Computer Architecture 0 Lecture # 1 Introduction by Husnain Sherazi.
ECE 103 Engineering Programming Chapter 5 Programming Languages Herbert G. Mayer, PSU CS Status 6/19/2015 Initial content copied verbatim from ECE 103.
Chapter 1 Introduction.
© 2005 Pearson Addison-Wesley. All rights reserved Figure 2.1 This chapter focuses on key hardware layer components.
Introduction to Computer Application (IC) MH Room 517 Time : 7:00-9:30pm.
Arithmetic Logic Unit Charles Henry. A.L.U Behaves like the “calculator” of the C.P.U.
Arithmetic Logic Unit (ALU) Anna Kurek CS 147 Spring 2008.
Chapter 2 Instructions: Language of the Computer Part I.
Computer History By: Taylor Northern. Intro. Do you know a lot about computers or the history of it? Do you know a lot about computers or the history.
CS 232: Computer Architecture II Prof. Laxmikant (Sanjay) Kale.
Programming in C++ Dale/Weems/Headington Chapter 1 Overview of Programming and Problem Solving.
PLC ARCHITECTURE – Memory 2 by Dr. Amin Danial Asham.
sample Chapter 10: The Stored Program Architecture.
Equations Inequalities = > 3 5(8) - 4 Numerical
Generations of Computing. The Computer Era Begins: The First Generation  1950s: First Generation for hardware and software Vacuum tubes worked as memory.
Copyright © 2005 – Curt Hill MicroProgramming Programming at a different level.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
Computer A Computer may be defined as an electronic device that operates upon data. So, a computer can store, process and retrieve data as and when desired.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
F453 Module 8: Low Level Languages 8.1: Use of Computer Architecture.
Chapter I: Introduction to Computer Science. Computer: is a machine that accepts input data, processes the data and creates output data. This is a specific-purpose.
Software Engineering, COMP201 Slide 1 Software Engineering CSE470.
Software Engineering, COMP201 Slide 1 Software Engineering CSE470.
Computer basics.
CS501 Advanced Computer Architecture
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
CS111 Computer Programming
Instructions at the Lowest Level
Compiler Construction
ECEG-3202 Computer Architecture and Organization
INTRODUCTION Term “Computer” Computer definition Data Information
ECEG-3202 Computer Architecture and Organization
Mastering Memory Modes
LO1 – Understand Computer Hardware
Computer Evolution and Performance
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Computer Architecture Assembly Language
Digital Computer & Digital Systems
Introduction to Computer Science
Computer System.
Presentation transcript:

The EDSAC Replica Project Electronic Delay Storage Automatic Calculator The EDSAC Replica Project Andrew Herbert, with thanks to Chris Burton, July 2012

The EDSAC Replica Project The Proposition Project Organisation Feasibility Studies Costs and Timescale

“Would it be feasible to build a replica of the famous EDSAC?” The Proposition An enquiry in 2010 by Hermann Hauser, well-known Cambridge technology entrepreneur: “Would it be feasible to build a replica of the famous EDSAC?” Assume the goal is to replicate the machine as it was in May 1949 when it ran its first program Let it be a tangible tribute to Maurice Wilkes, though he was somewhat sceptical about the proposal!

Edsac Firsts The first machine to provide a “computing service” Conservatively designed, highly reliable Mathematicians, scientists, engineers at Cambridge University) took turns to use it as a personal computer Contributed to Cambridge scientific advances in astronomy, X-ray crystallography and many other fields The biggest single leap in computing power ever 1,500x speed of the mechanical calculators it replaced The first machine to read in symbolic programs (as opposed to patching, hand keying etc) Hardware “initial instructions” embodied a relocating assembler to read in user’s program and library routines from paper tape.

Overall Organisation EDSAC Replica Limited A charitable trust Sponsors + University of Cambridge + BCS Fundraising Ownership Legal Management Board CCS + TNMoC + Project Manager Overall operations The Replica Project Manager + volunteers Day to day operations

Key Facts for Programmers Two registers: accumulator and multiply 512 words of memory 35 bit memory: two 17 bit half words plus “sandwich digit” Fixed point arithmetic Paper tape input Teleprinter output Initial instructions embody simple assembler

Order Code F (5) - n (10) L A n a += [n] S n a -= [n] H n m := [n] V n a += m*[n] N n a -= m*[n] T n n := a; a := 0 U n n := a C n a += m&[n] R 2n-2 a := a >> n L 2n-2 a := a >> n E n jmp if a<0 G n jmp if a≥0 I n n:=input O n output:=[n] F n check X no op Y round a Z stop

Automatic Digital Computers, M.V. Wilkes, 1956 EDSAC Architecture Automatic Digital Computers, M.V. Wilkes, 1956

Mercury Delay Line Memory Maurice Wilkes with a battery of 16 storage tanks Each tank holds 16 x 36 bit words as a train of acoustic pulses Computer has to synchronize with the memory

Serial Computing Most of EDSAC is serial Process one bit of a word at the time Reduces number of components needed From Edsac Report

Decoding and Coincidence Have to go parallel to decode function number and memory address Automatic Digital Computers, M.V. Wilkes, 1956

Building the Replica

Authenticity We don’t have a complete blueprint, so we aim to... be consistent with photographs and contemporary records use period components and circuits when available use camouflaged modern components otherwise adhere to EDSAC architectural principles (i.e., serial processing) when designing

Feasibility Studies Documents & knowledge acquisition Physical design Logic design & simulation Electronic design & experiments Acquisition of parts Areas of work not started Skills required

Documents & Knowledge Acquisition Original technical description & diagrams from Cambridge Computer Laboratory archives Original photographs & published papers Recollections of pioneers All collected in project Dropbox EDSAC ran for 10 years so need to understand the evolution of the machine. (our target 6th May 1949)

Physical Design Scanning and measuring from photos 12 racks, 120 chassis (“panels”) An original chassis exists to measure The above chassis has been drawn up and a sample made We don’t know how many types of chassis there were, or where they were placed in the racks

Logic Design & Simulation Need to know how EDSAC works in detail Incomplete & inconsistent diagrams Evidence of much re-design during commissioning Need to extrapolate undocumented areas of logic Simulation essential to give confidence before committing to building anything

Typical Logical Diagram From Edsac Report

Typical Timing Diagram From Edsac Report

Logic Simulation Bill Purvis has written a simulator for whole logic - can run a program, very slowly. Several areas such as reader and printer modelled as ‘black boxes’

Electronic design Electronic design is incomplete and lots of redesigning went on during commissioning AC-coupled circuits - unfamiliar! AND-gate uses 3 pentodes and 3 diodes Main components: flip-flop, inverter, short delay, pulse amplifier Experiment shows stage delay is very short Requires many lumped-constant delays

Typical Circuit Diagram From Edsac Report

Mapping Logic to Circuits to Chassis Use photos to try to guess what each chassis does Physical location of more than half the logic is now understood - the easy bits! Some partial clues from logic diagrams

Mapping Logic to Chassis

Memory Tanks Maurice Wilkes with a battery of 16 storage tanks, each 16 x 36 bit words The 5 ft steel tubes contain mercury as the acoustic delay medium

Replica Memory Tanks Risky and costly to use mercury, except perhaps in one example tank Precision engineering required: tubes and end plates – aligned to within 0.001” end-to-end Will use nickel delay lines as a reasonable alternative Use semiconductor shift registers to get off the ground quickly

Acquisition of Parts Many, but not all, valves are available and already to hand B9G valveholders will be problematic Authentic ‘period’ resistors and capacitors may be difficult to find and too unreliable to use Lumped-constant delay lines need to be made, lots of coils to wind

Areas not yet looked at HT power supply - +250v at say 15 amp Negative power supplies Electrical hazard of open circuit wiring The ‘three oscilloscope unit’ Tape reader Teleprinter

Skills mix needed Understand logic and map to electronic circuits Map electronic circuits to individual chassis Wiring up 120 chassis - 3000 valves – 60,000 solder joints! Ability to track down lots of components Delicate manipulative skills for delay lines Some circuit design capability for replica store

Costs and Timescale Preliminary estimates indicate cost in the region of £250,000 With adequate availability of volunteers to do the construction, it could take 3-4 years

Current Status In addition to design research reported here… Charity registered and bank account opened Initial donations to fund first year Detailed planning started Initial milestones – pulses, counting, storing

Work in Progress Demonstrate EDSAC Pulses: Clock Pulse Generator and Digit Pulse Generator chassis operation Demonstrate Counting: Clock Pulse Generator + Half Adder + Short Tank Demonstrate Store Cycles: Address Decoding + Store Regeneration + Long Tank

The EDSAC Replica Project Electronic Delay Storage Automatic Calculator The EDSAC Replica Project