Atlas Computer (Manchester)
Encyclopedia
The Atlas Computer was a joint development between the University of Manchester
Victoria University of Manchester
The Victoria University of Manchester was a university in Manchester, England. On 1 October 2004 it merged with the University of Manchester Institute of Science and Technology to form a new entity, "The University of Manchester".-1851 - 1951:The University was founded in 1851 as Owens College,...

, Ferranti
Ferranti
Ferranti or Ferranti International plc was a UK electrical engineering and equipment firm that operated for over a century from 1885 until it went bankrupt in 1993. Known primarily for defence electronics, the Company was once a constituent of the FTSE 100 Index but ceased trading in 1993.The...

, and Plessey
Plessey
The Plessey Company plc was a British-based international electronics, defence and telecommunications company. It originated in 1917, growing and diversifying into electronics. It expanded after the second world war by acquisition of companies and formed overseas companies...

. The first Atlas, installed at Manchester University and officially commissioned in 1962, was one of the world's first supercomputers, considered to be the most powerful computer in the world at that time. It was said that whenever Atlas went offline half of the United Kingdom's computer capacity was lost. It was a second-generation machine, using discrete
Discrete device
A discrete device is an electronic component with just one circuit element, either passive...

 germanium transistor
Transistor
A transistor is a semiconductor device used to amplify and switch electronic signals and power. It is composed of a semiconductor material with at least three terminals for connection to an external circuit. A voltage or current applied to one pair of the transistor's terminals changes the current...

s. Two other Atlas machines were built: one for British Petroleum
BP
BP p.l.c. is a global oil and gas company headquartered in London, United Kingdom. It is the third-largest energy company and fourth-largest company in the world measured by revenues and one of the six oil and gas "supermajors"...

 and the University of London
University of London
-20th century:Shortly after 6 Burlington Gardens was vacated, the University went through a period of rapid expansion. Bedford College, Royal Holloway and the London School of Economics all joined in 1900, Regent's Park College, which had affiliated in 1841 became an official divinity school of the...

, and one for the Atlas Computer Laboratory
Atlas Computer Laboratory
The Atlas Computer Laboratory on the Chilton, Oxfordshire campus shared by the Harwell Laboratory was one of the major computer laboratories in the world, which operated between 1961 and 1975 to provide a service to British scientists at a time when powerful computers were not usually available...

 at Chilton near Oxford
Oxford
The city of Oxford is the county town of Oxfordshire, England. The city, made prominent by its medieval university, has a population of just under 165,000, with 153,900 living within the district boundary. It lies about 50 miles north-west of London. The rivers Cherwell and Thames run through...

.

A derivative system was built by Ferranti for Cambridge University
University of Cambridge
The University of Cambridge is a public research university located in Cambridge, United Kingdom. It is the second-oldest university in both the United Kingdom and the English-speaking world , and the seventh-oldest globally...

. Called the Titan
Titan (computer)
Titan was the prototype of the Atlas 2 computer developed by Ferranti and the University of Cambridge Mathematical Laboratory in Cambridge, England...

, or Atlas 2, it had a different memory organisation and ran a time-sharing
Time-sharing
Time-sharing is the sharing of a computing resource among many users by means of multiprogramming and multi-tasking. Its introduction in the 1960s, and emergence as the prominent model of computing in the 1970s, represents a major technological shift in the history of computing.By allowing a large...

 operating system developed by Cambridge Computer Laboratory. Two further Atlas 2s were delivered: one to the CAD
Computer-aided design
Computer-aided design , also known as computer-aided design and drafting , is the use of computer technology for the process of design and design-documentation. Computer Aided Drafting describes the process of drafting with a computer...

 lab at Cambridge (later called CADCentre, then AVEVA), and the other to the Atomic Weapons Establishment
Atomic Weapons Establishment
The Atomic Weapons Establishment is responsible for the design, manufacture and support of warheads for the United Kingdom's nuclear deterrent. AWE plc is responsible for the day-to-day operations of AWE...

, Aldermaston.

The University of Manchester's Atlas was decommissioned in 1971, but the last was in service until 1974. Parts of the Chilton Atlas are preserved by National Museums Scotland in Edinburgh.

Background

Development of MUSE—a name derived from microsecond
Microsecond
A microsecond is an SI unit of time equal to one millionth of a second. Its symbol is µs.A microsecond is equal to 1000 nanoseconds or 1/1000 millisecond...

 engine—began at Manchester University in 1956. The aim was to build a computer that could operate at processing speeds approaching one microsecond per instruction, about one million instructions per second. Mu (or µ) is a prefix in the SI and other systems of units denoting a factor of 10−6 (one millionth).

At the end of 1958 Ferranti agreed to collaborate with Manchester University on the project, and the computer was shortly afterwards renamed Atlas, with the joint venture under the control of Tom Kilburn
Tom Kilburn
Tom Kilburn CBE, FRS was an English engineer. With Freddie Williams he worked on the Williams Tube and the world's first stored-program computer, the Small-Scale Experimental Machine , while working at the University of Manchester.-Computer engineering:Kilburn was born in Dewsbury, Yorkshire and...

. The first Atlas was officially commissioned on 7 December 1962, and was considered at that time to be equivalent to four IBM 7094s and nearly as fast at the IBM 7030
IBM 7030
The IBM 7030, also known as Stretch, was IBM's first transistorized supercomputer. The first one was delivered to Los Alamos National Laboratory in 1961....

 Stretch, then the world's fastest supercomputer.

Hardware

The machine had many innovative features but the key operating parameters were as follows (the store size relates to the Manchester installation; the others were larger):
  • 48-bit word size. A word could hold one floating-point number, one instruction, two 24-bit addresses or signed integers, or eight 6-bit characters.
  • 24-bit (2 million words, 16 million characters) address space
    Address space
    In computing, an address space defines a range of discrete addresses, each of which may correspond to a network host, peripheral device, disk sector, a memory cell or other logical or physical entity.- Overview :...

     that embraced supervisor ('sacred') store, V-store, fixed store and the user store
  • 16K words of core store
    Magnetic core memory
    Magnetic-core memory was the predominant form of random-access computer memory for 20 years . It uses tiny magnetic toroids , the cores, through which wires are threaded to write and read information. Each core represents one bit of information...

     (equivalent to 96 KB
    Kibibyte
    The kibibyte is a multiple of the unit byte for quantities of digital information. The binary prefix kibi means 1024; therefore, 1 kibibyte is . The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission in 1999 and has been accepted for use...

    ), featuring interleaving of odd/even addresses
  • 96K words of drum store
    Drum memory
    Drum memory is a magnetic data storage device and was an early form of computer memory widely used in the 1950s and into the 1960s, invented by Gustav Tauschek in 1932 in Austria....

     (eqv. to 576 KB), split across four drums but integrated with the core store using virtual memory
    Virtual memory
    In computing, virtual memory is a memory management technique developed for multitasking kernels. This technique virtualizes a computer architecture's various forms of computer data storage , allowing a program to be designed as though there is only one kind of memory, "virtual" memory, which...

     (at that time referred to as 'one-level store') and paging
    Paging
    In computer operating systems, paging is one of the memory-management schemes by which a computer can store and retrieve data from secondary storage for use in main memory. In the paging memory-management scheme, the operating system retrieves data from secondary storage in same-size blocks called...

     techniques
  • A large number (more than 100) of high-speed index register
    Index register
    An index registerCommonly known as a B-line in early British computers. in a computer's CPU is a processor register used for modifying operand addresses during the run of a program, typically for doing vector/array operations...

    s (B-lines) that could be used for address modification in the mostly double-modified instructions. The register address space also included special registers such as the extracode operand address, the exponent of the floating-point accumulator
    Accumulator (computing)
    In a computer's central processing unit , an accumulator is a register in which intermediate arithmetic and logic results are stored. Without a register like an accumulator, it would be necessary to write the result of each calculation to main memory, perhaps only to be read right back again for...

     and three control (program counter
    Program counter
    The program counter , commonly called the instruction pointer in Intel x86 microprocessors, and sometimes called the instruction address register, or just part of the instruction sequencer in some computers, is a processor register that indicates where the computer is in its instruction sequence...

    ) registers: supervisor control, extracode control and user control.
  • Capability for the addition of (for the time) sophisticated new peripheral
    Peripheral
    A peripheral is a device attached to a host computer, but not part of it, and is more or less dependent on the host. It expands the host's capabilities, but does not form part of the core computer architecture....

    s such as magnetic tape
    Magnetic tape
    Magnetic tape is a medium for magnetic recording, made of a thin magnetizable coating on a long, narrow strip of plastic. It was developed in Germany, based on magnetic wire recording. Devices that record and play back audio and video using magnetic tape are tape recorders and video tape recorders...

  • Peripheral control through V-store addresses, interrupts and extracode routines
  • An associative memory (content-addressable memory
    Content-addressable memory
    Content-addressable memory is a special type of computer memory used in certain very high speed searching applications. It is also known as associative memory, associative storage, or associative array, although the last term is more often used for a programming data structure...

    ) to determine whether the desired virtual memory location was in core store
  • Instruction pipelining
    Instruction pipeline
    An instruction pipeline is a technique used in the design of computers and other digital electronic devices to increase their instruction throughput ....



It did not use a synchronous clocking mechanism so performance measurements were not easy but as an example:
  • Fixed-point
    Fixed-point arithmetic
    In computing, a fixed-point number representation is a real data type for a number that has a fixed number of digits after the radix point...

     register
    Processor register
    In computer architecture, a processor register is a small amount of storage available as part of a CPU or other digital processor. Such registers are addressed by mechanisms other than main memory and can be accessed more quickly...

     add – 1.59 microsecond
    Microsecond
    A microsecond is an SI unit of time equal to one millionth of a second. Its symbol is µs.A microsecond is equal to 1000 nanoseconds or 1/1000 millisecond...

    s
  • Floating-point add, no modification – 1.61 microseconds
  • Floating-point add, double modify – 2.61 microseconds
  • Floating-point multiply, double modify – 4.97 microseconds

Extracode

One feature of the Atlas was "Extracode", a technique that allowed complex instructions to be implemented in software.

The uppermost ten bit
Bit
A bit is the basic unit of information in computing and telecommunications; it is the amount of information stored by a digital device or other physical system that exists in one of two possible distinct states...

s of a 48-bit Atlas machine instruction denoted which operation should be performed. If the most significant bit
Most significant bit
In computing, the most significant bit is the bit position in a binary number having the greatest value...

 was set to zero, this was an ordinary machine instruction executed directly by the hardware. If the uppermost bit was set to one, this was an Extracode and was implemented as a special kind of subroutine
Subroutine
In computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....

 jump to a location in the fixed store (ROM
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

), its address
Memory address
A digital computer's memory, more specifically main memory, consists of many memory locations, each having a memory address, a number, analogous to a street address, at which computer programs store and retrieve, machine code or data. Most application programs do not directly read and write to...

 being determined by the other nine bits. About 250 extracodes were implemented, of the 512 possible.

Extracode mode had its own program address counter
Program counter
The program counter , commonly called the instruction pointer in Intel x86 microprocessors, and sometimes called the instruction address register, or just part of the instruction sequencer in some computers, is a processor register that indicates where the computer is in its instruction sequence...

, and easy access to the instruction operands.

Many of the extracodes were what would probably be called microcode
Microcode
Microcode is a layer of hardware-level instructions and/or data structures involved in the implementation of higher level machine code instructions in many computers and other processors; it resides in special high-speed memory and translates machine instructions into sequences of detailed...

 today. They were simple arithmetic procedures which would have been too inefficient to implement in hardware
Computer hardware
Personal computer hardware are component devices which are typically installed into or peripheral to a computer case to create a personal computer upon which system software is installed including a firmware interface such as a BIOS and an operating system which supports application software that...

, for example sine
Sine
In mathematics, the sine function is a function of an angle. In a right triangle, sine gives the ratio of the length of the side opposite to an angle to the length of the hypotenuse.Sine is usually listed first amongst the trigonometric functions....

, logarithm
Logarithm
The logarithm of a number is the exponent by which another fixed value, the base, has to be raised to produce that number. For example, the logarithm of 1000 to base 10 is 3, because 1000 is 10 to the power 3: More generally, if x = by, then y is the logarithm of x to base b, and is written...

, and square root
Square root
In mathematics, a square root of a number x is a number r such that r2 = x, or, in other words, a number r whose square is x...

. But about half of the codes were designated as Supervisor functions, which invoked operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

 procedures. Typical examples would be “Print the specified character on the specified stream” or “Read a block of 512 words from logical tape N”. Extracodes were the only means by which a program
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...

 could communicate with the Supervisor. Other UK machines of the era, such as the Ferranti Orion
Ferranti Orion
The Orion was a mid-range mainframe computer introduced by Ferranti in 1959 and installed for the first time in 1961. Ferranti positioned Orion to be their primary offering during the early 1960s, complementing their high-end Atlas and smaller systems like the Sirius and Argus...

, had similar mechanisms for calling on the services of their operating systems.

Software

Atlas pioneered many software concepts still in common use today, including the Atlas Supervisor
Atlas Supervisor
The Atlas Supervisor was the program which managed the allocation of processing resources of Manchester University's Atlas Computer so that the machine was able to act on many tasks and user programs concurrently....

, "considered by many to be the first recognisable modern operating system".

One of the first high level languages available on Atlas was named Atlas Autocode
Atlas Autocode
Atlas Autocode was a programming language developed around 1965 at Manchester University for the Atlas Computer. It was developed by Tony Brooker and Derrick Morris as an improvement on the ALGOL programming languages, removing some of Algol's poorer features such as "passing parameters by name"...

, which was contemporary to Algol60 and created specifically to address what Tony Brooker perceived to be some defects in that language. The Atlas did however support Algol 60
ALGOL 60
ALGOL 60 is a member of the ALGOL family of computer programming languages. It gave rise to many other programming languages, including BCPL, B, Pascal, Simula, C, and many others. ALGOL 58 introduced code blocks and the begin and end pairs for delimiting them...

, as well as Fortran
Fortran
Fortran is a general-purpose, procedural, imperative programming language that is especially suited to numeric computation and scientific computing...

 and COBOL
COBOL
COBOL is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments....

. Being a university machine it was patronised by a large number of the student population who had access to a protected machine code
Machine code
Machine code or machine language is a system of impartible instructions executed directly by a computer's central processing unit. Each instruction performs a very specific task, typically either an operation on a unit of data Machine code or machine language is a system of impartible instructions...

development environment.

Further reading

  • The Central Control Unit of the 'Atlas' Computer, F.H. Sumner, G. Haley, E.C.Y. Chen, Information Processing 1962, Proc. IFIP Congress '62
  • One-Level Storage System, T. Kilburn, D.B.G. Edwards, M.J. Lanigan, F.H. Sumner, IRE Trans. Electronic Computers April 1962 Accessed 2011-10-13
  • The Manchester University Atlas Operating System, Part I: Internal Organization, T. Kilburn, D.J. Howarth, R.B. Payne, F.H. Sumner, Comp. J. October 1961
  • The Manchester University Atlas Operating System, Part II: Users' Description, D.J. Howarth, R.B. Payne, F.H. Sumner, Comp. J. October 1961
  • The Atlas Supervisor, T. Kilburn, R.B. Payne, D.J. Howarth, reprinted from Computers – Key to Total Systems Control, Macmillan 1962
  • The Atlas Scheduling System, D.J. Howarth, P.D. Jones, M.T. Wyld, Comp. J. October 1962
  • The First Computers: History and Architectures, edited by Raúl Rojas and Ulf Hashagen, 2000, MIT Press, ISBN 0-262-18197-5
  • A History of Computing Technology, M.R. Williams, IEEE Computer Society Press, 1997, ISBN 0-8186-7739-2

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK