- Atlas Computer (Manchester)
The Atlas Computer of the University of Manchester, England, became operational in 1962, as a joint development between the University,
Ferranti andPlessey . It was arguably one of the world's firstsupercomputers , and the fastest computer in the world until the release of theCDC 6600 . It was said at the time that whenever it went offline half of the UK computer capacity was lost. It was a second-generation computer, usinggermanium transistor s.Two other Atlas machines were built: one for British Petroleum and the
University of London and one for theAtlas Computer Laboratory at Chilton nearOxford . A derivative system was built by Ferranti for Cambridge University, called the Titan or Atlas 2, which had a different memory organisation, and ran atime-sharing operating system developed by Cambridge Computer Laboratory.The University of Manchester's Atlas system was eventually decommissioned in 1971. The last Atlas was in service until 1974. Parts of the Chilton Atlas are preserved by the National Museums of Scotland in Edinburgh.
Technical description
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-bitword 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 that embraced supervisor ('sacred') store, V-store, fixed store and the user store
* 16K words of core store (equivalent to 96 KB), featuring interleaving of odd/even addresses
* 96K words of drum store (eqv. to 576 KB), split across four drums but integrated with the core store usingvirtual memory (at that time referred to as 'one-level store') andpaging techniques
* A large number (more than 100) of high-speedindex register 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 thefloating-point accumulator and three control (program counter ) registers: supervisor control, extracode control and user control.
* Capability for the addition of (for the time) sophisticated newperipheral s such asmagnetic tape
* Peripheral control through V-store addresses,interrupts andextracode routines
* An associative memory (content-addressable memory ) to determine whether the desired virtual memory location was in core store
* Instruction pipeliningIt did not use a synchronous clocking mechanism so performance measurements were not easy but as an example:
* Fixed-point register add — 1.59microsecond s
*Floating-point add, no modification — 1.61 microseconds
* Floating-point add, double modify — 2.61 microseconds
* Floating-point multiply, double modify — 4.97 microsecondsExtracode
One interesting feature of the Atlas was extracode, a system that allowed new instructions to be added in software (
firmware in modern terminology). There were some 250 extracodes.The uppermost ten
bit s of a 48-bit Atlas machine instruction denoted which operation should be performed. If themost significant bit 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 jump to an address in the fixed store (ROM) where that address was determined by the other nine bits. Extracode mode had its own program address counter.Many of the extracodes were what we would probably call
microcode s nowadays; they were simple arithmeticprocedures which would have been too inefficient to implement in hardware, for examplesine ,logarithm ,square root . However, about half of the codes were designated as Supervisor functions which invokedoperating system procedures. Typical examples would be "Print the character specified on the stream specified" or "Read a block of 512 words from logical tape N".Extracodes were the only means that a program could communicate with the Supervisor program.
oftware
A unique
supervisory program known as theAtlas Supervisor managed the computer's processing time (as such it qualifies in modern terminology as an advanced job scheduler, or a simpleoperating system ).One of the first
high level language s available on Atlas was namedAtlas Autocode , 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 supportAlgol 60 , as well asFortran andCOBOL . Being a university machine it was patronised by a large number of the student population who even had access to a protectedmachine code development environment.References
*"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
*"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
*"History of Manchester Computers", S.H. Lavington, NCC Publications, 1975, ISBN 0-85012-155-8
*"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
* [http://history.dcs.ed.ac.uk/archive/docs/atlasautocode.html The Atlas Autocode Reference Manual]
Wikimedia Foundation. 2010.