IBM 305 RAMAC

Last updated
IBM 305 RAMAC
IBM Logo 1947 1956.svg
IBM 305 RAMAC system (1).jpg
IBM 305 RAMAC system:

IBM 305 main system (Processing unit, magnetic process drum, magnetic core register, electronic logical and arithmetic circuits)

Contents

IBM 370 printer (left), IBM 380 console (right)
Developer IBM
Manufacturer IBM
Release dateSeptember 14, 1956;67 years ago (1956-09-14)
Introductory priceUS$3,200(equivalent to $33,300 in 2022) per month
Discontinued1961
Units soldMore than 1,000
Successor IBM 1401
Website www.ibm.com/ibm/history/exhibits/storage/storage_PH0305.html

The IBM 305 RAMAC was the first commercial computer that used a moving-head hard disk drive (magnetic disk storage) for secondary storage. [1] The system was publicly announced on September 14, 1956, [2] [3] with test units already installed at the U.S. Navy and at private corporations. [2] RAMAC stood for "Random Access Method of Accounting and Control", [4] as its design was motivated by the need for real-time accounting in business. [5]

History

The first RAMAC to be used in the U.S. auto industry was installed at Chrysler's MOPAR Division in 1957. It replaced a huge tub file which was part of MOPAR's parts inventory control and order processing system.

During the 1960 Olympic Winter Games in Squaw Valley (USA), IBM provided the first electronic data processing systems for the Games. The system featured an IBM RAMAC 305 computer, punched card data collection, and a central printing facility.

More than 1,000 systems were built. Production ended in 1961; the RAMAC computer became obsolete in 1962 when the IBM 1405 Disk Storage Unit for the IBM 1401 was introduced, and the 305 was withdrawn in 1969.

Overview

The first hard disk unit was shipped September 13, 1956. [6] The additional components of the computer were a card punch, a central processing unit, a power supply unit, an operator's console/card reader unit, and a printer. There was also a manual inquiry station that allowed direct access to stored records. IBM touted the system as being able to store the equivalent of 64,000 punched cards. [5]

The 305 was one of the last vacuum tube computers that IBM built. It weighed over a ton. [7]

The IBM 350 disk system stored 5 million alphanumeric characters recorded as six data bits, one parity bit and one space bit for eight bits recorded per character. [8] It had fifty 24-inch-diameter (610 mm) disks. Two independent access arms moved up and down to select a disk, and in and out to select a recording track, all under servo control. Average time to locate a single record was 600 milliseconds. Several improved models were added in the 1950s. The IBM RAMAC 305 system with 350 disk storage leased for US$3,200 (equivalent to $33,300in 2022) per month.

One RAMAC storage disk showing head crash damage RAMAC 305 disk.JPG
One RAMAC storage disk showing head crash damage
IBM 305 at U.S. Army Red River Arsenal. Foreground: two 350 disk drives. Background: 380 console and 305 processing unit BRL61-IBM 305 RAMAC.jpeg
IBM 305 at U.S. Army Red River Arsenal. Foreground: two 350 disk drives. Background: 380 console and 305 processing unit

The original 305 RAMAC computer system could be housed in a room of about 9 m (30 ft) by 15 m (50 ft); the 350 disk storage unit measured around 1.5 square meters (16 sq ft). Currie Munce, research vice president for Hitachi Global Storage Technologies (which has acquired IBM's hard disk drive business), stated in a Wall Street Journal interview [9] that the RAMAC unit weighed over a ton, had to be moved around with forklifts, and was delivered via large cargo airplanes. According to Munce, the storage capacity of the drive could have been increased beyond five megabytes, but IBM's marketing department at that time was against a larger capacity drive, because they did not know how to sell a product with more storage.

RAMAC mechanism at Computer History Museum IBM 350 RAMAC.jpg
RAMAC mechanism at Computer History Museum

Programming the 305 involved not only writing machine language instructions to be stored on the drum memory, but also almost every unit in the system (including the computer itself) could be programmed by inserting wire jumpers into a plugboard control panel.

Architecture

System architecture was documented in the 305 RAMAC Manual of Operation. [4] The 305 was a character-oriented variable "word" length decimal (BCD) computer with a drum memory rotating at 6000  RPM that held 3200 alphanumeric characters. A core memory buffer of 100 characters was used for temporary storage during data transfers.

Each character was six bits  plus one odd parity bit ("R")  composed of two zone bits ("X" and "O") and remaining four binary bits for the value of the digit in the following format:

X O 8 4 2 1 R

Instructions could only be stored on 20 tracks of the drum memory and were fixed length (10 characters), in the following format:

T1 A1 B1 T2 A2 B2 M N P Q
Field positionsFunction
T1 A1 B1Source operand address Track, low order AB character
T2 A2 B2Destination operand address Track, low order AB character
M NLength of operands (each operand must be entirely on its specified track)
PProgram exit code; used to select test conditions, perform jumps, and initiate input/output. The 305's control panel programming determines the action(s) performed.
QControl code; modifies the operation (similar to an op code), the default operation being a copy from source to destination. Other operations were: "1" Compare, "2" Field compare, "3" Compare & Field compare, "5" Accumulator reset, "6" Blank transfer test, "7" Compress & Expand, "8" Expand, "9" Compress

Fixed-point data "words" could be any size from one decimal digit up to 100 decimal digits, with the X bit of the least significant digit storing the sign (signed magnitude).

Data records could be any size from one character up to 100 characters.

Drum memory

The drum memory was organized into 32 tracks of 100 characters each.

The color code of this table is:

  • Yellow Storage
  • Blue Arithmetic
  • Green Input/output
  • Red Special function
Track specifierSource functionDestination function
W X Y ZGeneral storage
0 1 2 3 4 5 6 7 8 9
& A B C D E F G H I
Instruction storage, general storage
LRead accumulatorAdd to accumulator
MRead & clear accumulatorSubtract from accumulator
VMultiplicand (1 to 9 characters) or divisor (1 to 9 characters)
NMultiply (1 to 11 characters)
Stores 2 to 20 character product
in accumulators 0 & 1
PDivide (option)
K380 Punched card input
S T323 Punched card output,
370 Printer Output,
407 Printer output
Q380 Inquiry input/output
J350 File Address
R350 File data input/output
-Core bufferCharacter selector
$382 Paper tape input/output (option)

L and M select the same track, containing ten 10-character "Accumulators". As a destination L specifies addition, M specifies subtraction. (Numbers in these accumulators were stored in ten's complement form, with the X bit of the most significant digit storing the sign. The sign of each accumulator was also held in a relay. However the 305 automatically converted between its standard signed magnitude format and this format without the need for special programming.)

J, R, and - do not select tracks on the drum, they specify other sources and destinations.

Jumps

The 305's instruction set does not include any jumps, instead these are programmed on the control panel:

  • Unconditional jump the program exit code (P field) specifies a Program exit hub on the control panel, which has a wire plugged into it and, via distributors, to Program entry hubs specifying the first, second and third address digit of the instruction to jump to.
  • Conditional jump the program exit code (P field) specifies a Program exit hub on the control panel, which has a wire plugged into it and the appropriate Condition selector common hub to be tested, the corresponding two Condition selector output hubs have wires plugged into them and the Program entry hubs specifying the instructions to jump to or the Program advance hub to continue in sequence. Complicated conditions involving many Condition selectors could be wired to execute in a single instruction (e.g., Testing the sign and zero states of multiple accumulators), with one of several Program entry hubs activated.
  • Multi-way jump the destination track (T2 field) is set to - and the appropriate Character selector hubs on the control panel have wires plugged into them and the Program entry hubs specifying the instructions to jump to or the Program advance hub to continue in sequence.

Timing

All timing signals for the 305 were derived from a factory recorded clock track on the drum. The clock track contained 816 pulses 12 μs apart with a 208 μs gap for sync.

Reading or writing a character took 96 μs.

The 305's typical instruction took three revolutions of the drum (30 ms): one (I phase) to fetch the instruction, one (R phase) to read the source operand and copy it to the core buffer, and one (W phase) to write the destination operand from the core buffer. If the P field (Program exit code) was not blank, then two (D phase and P phase) additional revolutions of the drum (20 ms) were added to the execution time to allow relays to be picked. The Improved Processing Speed option could be installed that allowed the three instruction phases (IRW) to immediately follow each other instead of waiting for the next revolution to start; with this option and well optimized code and operand placement a typical instruction could execute in as little as one revolution of the drum (10 ms).

Certain instructions though took far longer than the typical 30 ms to 50 ms. For example, multiply took six to nineteen revolutions of the drum (60 ms to 190 ms) and divide (an option) took ten to thirty seven revolutions of the drum (100 ms to 370 ms). Input/Output instructions could interlock the processor for as many revolutions of the drum as needed by the hardware.

Hardware implementation

The logic circuitry of the 305 was built of one- and two-tube pluggable units and relays.

IBM 305 with 370 printer and 380 console IBM 305 RAMAC system (2).jpg
IBM 305 with 370 printer and 380 console
IBM 380 console IBM 380 console (1).jpg
IBM 380 console

A basic system was composed of the following units:

See also

Related Research Articles

<span class="mw-page-title-main">Accumulator (computing)</span> Register in which intermediate arithmetic and logic results of a CPU are stored

In a computer's central processing unit (CPU), the accumulator is a register in which intermediate arithmetic logic unit results are stored.

<span class="mw-page-title-main">Data General Nova</span> 16-bit minicomputer series

The Data General Nova is a series of 16-bit minicomputers released by the American company Data General. The Nova family was very popular in the 1970s and ultimately sold tens of thousands of units.

<span class="mw-page-title-main">IBM System/360</span> IBM mainframe computer family (1964–1977)

The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applications and a complete range of applications from small to large. The design distinguished between architecture and implementation, allowing IBM to release a suite of compatible designs at different prices. All but the only partially compatible Model 44 and the most expensive systems use microcode to implement the instruction set, featuring 8-bit byte addressing and binary, decimal and hexadecimal floating-point calculations.

<span class="mw-page-title-main">Booting</span> Process of starting a computer

In computing, booting is the process of starting a computer as initiated via hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its main memory, so some process must load software into memory before it can be executed. This may be done by hardware or firmware in the CPU, or by a separate processor in the computer system.

The Honeywell 6000 series computers were rebadged versions of General Electric's 600-series mainframes manufactured by Honeywell International, Inc. from 1970 to 1989. Honeywell acquired the line when it purchased GE's computer division in 1970 and continued to develop them under a variety of names for many years. In 1989, Honeywell sold its computer division to the French company Groupe Bull who continued to market compatible machines.

<span class="mw-page-title-main">IBM 1620</span> Small IBM scientific computer released in 1959

The IBM 1620 was announced by IBM on October 21, 1959, and marketed as an inexpensive scientific computer. After a total production of about two thousand machines, it was withdrawn on November 19, 1970. Modified versions of the 1620 were used as the CPU of the IBM 1710 and IBM 1720 Industrial Process Control Systems.

<span class="mw-page-title-main">IBM 650</span> Vacuum tube computer system

The IBM 650 Magnetic Drum Data-Processing Machine is an early digital computer produced by IBM in the mid-1950s. It was the first mass produced computer in the world. Almost 2,000 systems were produced, the last in 1962, and it was the first computer to make a meaningful profit. The first one was installed in late 1954 and it was the most-popular computer of the 1950s.

<span class="mw-page-title-main">IBM 709</span> Vacuum tube computer system

The IBM 709 was a computer system, initially announced by IBM in January 1957 and first installed during August 1958. The 709 was an improved version of its predecessor, the IBM 704, and was the third of the IBM 700/7000 series of scientific computers. The improvements included overlapped input/output, indirect addressing, and three "convert" instructions which provided support for decimal arithmetic, leading zero suppression, and several other operations. The 709 had 32,768 words of 36-bit magnetic core memory and could execute 42,000 add or subtract instructions per second. It could multiply two 36-bit integers at a rate of 5000 per second.

<span class="mw-page-title-main">IBM 700/7000 series</span> Mainframe computer systems made by IBM through the 1950s and early 1960s

The IBM 700/7000 series is a series of large-scale (mainframe) computer systems that were made by IBM through the 1950s and early 1960s. The series includes several different, incompatible processor architectures. The 700s use vacuum-tube logic and were made obsolete by the introduction of the transistorized 7000s. The 7000s, in turn, were eventually replaced with System/360, which was announced in 1964. However the 360/65, the first 360 powerful enough to replace 7000s, did not become available until November 1965. Early problems with OS/360 and the high cost of converting software kept many 7000s in service for years afterward.

<span class="mw-page-title-main">IBM 1130</span> 16-bit IBM minicomputer introduced in 1965

The IBM 1130 Computing System, introduced in 1965, was IBM's least expensive computer at that time. A binary 16-bit machine, it was marketed to price-sensitive, computing-intensive technical markets, like education and engineering, succeeding the decimal IBM 1620 in that market segment. Typical installations included a 1 megabyte disk drive that stored the operating system, compilers and object programs, with program source generated and maintained on punched cards. Fortran was the most common programming language used, but several others, including APL, were available.

Addressing modes are an aspect of the instruction set architecture in most central processing unit (CPU) designs. The various addressing modes that are defined in a given instruction set architecture define how the machine language instructions in that architecture identify the operand(s) of each instruction. An addressing mode specifies how to calculate the effective memory address of an operand by using information held in registers and/or constants contained within a machine instruction or elsewhere.

IBM manufactured magnetic disk storage devices from 1956 to 2003, when it sold its hard disk drive business to Hitachi. Both the hard disk drive (HDD) and floppy disk drive (FDD) were invented by IBM and as such IBM's employees were responsible for many of the innovations in these products and their technologies. The basic mechanical arrangement of hard disk drives has not changed since the IBM 1301. Disk drive performance and characteristics are measured by the same standards now as they were in the 1950s. Few products in history have enjoyed such spectacular declines in cost and physical size along with equally dramatic improvements in capacity and performance.

<span class="mw-page-title-main">IBM System/3</span> IBM midrange computer (1969–1985)

The IBM System/3 was an IBM midrange computer introduced in 1969, and marketed until 1985. It was produced by IBM Rochester in Minnesota as a low-end business computer aimed at smaller organizations that still used IBM 1400 series computers or unit record equipment. The first member of what IBM refers to as their "midrange" line, it also introduced the RPG II programming language. It is the first ancestor in the product line whose current version is the IBM i series and includes the highly successful AS/400.

<span class="mw-page-title-main">IBM 1400 series</span> Second generation mid-range business decimal computers

The IBM 1400 series were second-generation (transistor) mid-range business decimal computers that IBM marketed in the early 1960s. The computers were offered to replace tabulating machines like the IBM 407. The 1400-series machines stored information in magnetic cores as variable-length character strings separated on the left by a special bit, called a "wordmark," and on the right by a "record mark." Arithmetic was performed digit-by-digit. Input and output support included punched card, magnetic tape, and high-speed line printers. Disk storage was also available.

<span class="mw-page-title-main">IBM 7070</span> Decimal computer introduced by IBM in 1958

IBM 7070 is a decimal-architecture intermediate data-processing system that was introduced by IBM in 1958. It was part of the IBM 700/7000 series, and was based on discrete transistors rather than the vacuum tubes of the 1950s. It was the company's first transistorized stored-program computer.

<span class="mw-page-title-main">CER-12</span> Third-generation digital computer

CER model 12 was a third-generation digital computer developed by Mihajlo Pupin Institute (Serbia) in 1971 and intended for "business and statistical data processing". However, the manufacturer also stated, at the time, that having in mind its architecture and performance, it can also be used successfully in solving "wide array of scientific and technical issues". Computer CER-12 consisted of multiple modules connected via wire wrap and connectors.

<span class="mw-page-title-main">D-17B</span> Missile guidance computer

The D-17B (D17B) computer was used in the Minuteman I NS-1OQ missile guidance system. The complete guidance system contained a D-17B computer, the associated stable platform, and power supplies.

This timeline of binary prefixes lists events in the history of the evolution, development, and use of units of measure which are germane to the definition of the binary prefixes by the International Electrotechnical Commission (IEC) in 1998, used primarily with units of information such as the bit and the byte.

William A. Goddard was an American engineer and inventor. He earned a degree in physics from Occidental College. Before working in industry, Goddard was a high school science teacher in Los Angeles. He briefly worked in the aerospace industry for North American Aviation, Inc. before becoming an engineer at International Business Machines (IBM). His most acclaimed achievement is co-inventing along with John Lynott United States Patent 3,503,060, which is entitled “Direct Access Magnetic Disc Storage Device”. This invention claims cover modern-day hard disk drives.

ICT 1900 was a family of mainframe computers released by International Computers and Tabulators (ICT) and later International Computers Limited (ICL) during the 1960s and 1970s. The 1900 series was notable for being one of the few non-American competitors to the IBM System/360, enjoying significant success in the European and British Commonwealth markets.

References

  1. Preimesberger, Chris (2006-09-08). "IBM Builds on 50 Years of Spinning Disk Storage". eWeek.com. Retrieved 2012-10-16.
  2. 1 2 650 RAMAC announcement The 305 RAMAC and the 650 RAMAC were internally announced on September 4, 1956.
  3. I.B.M. To Put Out New 'Think' Units, New York Times, September 14, 1956
  4. 1 2 305 RAMAC Manual of Operation, IBM, April 1957.
  5. 1 2 IBM RAMAC promotional film
  6. Steven Levy, "The Hard Disk That Changed the World" Newsweek, August 7, 2006
  7. Weik, Martin H. (March 1961). "IBM 305 RAMAC". ed-thelen.org. A Third Survey of Domestic Electronic Digital Computing Systems. See SUNOCO Philadelphia.
  8. "RAMAC 305 Customer Engineering Manual of Instruction" (PDF). IBM Corp., 1959. pp. 7–8 and 85.
  9. Lee Gomes, "Talking Tech" The Wall Street Journal, August 22, 2006