Jump to content

IBM 700/7000 series

From Alfawiki
IBM 700/7000 series
Company typeProduct line
IndustryComputer hardware
Founded1950s
FounderIBM
DefunctEarly 1960s (replaced by System/360)
SuccessorIBM System/360
ProductsLarge-scale mainframe computers
OwnerIBM

The IBM 700/7000 series represents a collection of large-scale mainframe computers developed by IBM throughout the 1950s and early 1960s. This lineup encompasses multiple processor designs that are not mutually compatible. The original 700 models utilized vacuum-tube components, which were later replaced by the transistor-based 7000 series. Eventually, the 7000 series gave way to the System/360, unveiled in 1964. Nonetheless, the initial System/360 unit capable of substituting for the 7000 models, the 360/65, was only released in November 1965. Early challenges with OS/360 and substantial costs associated with software migration resulted in many 7000 machines remaining in service for an extended period.

Architectures

Within the IBM 700/7000 family, six unique data and instruction storage schemes are identified:

  • Initial scientific architecture (36/18-bit words): 701 (Defense Calculator)
  • Subsequent scientific systems (36-bit words with hardware floating-point support): 704, 709, 7040, 7044, 7090, 7094
  • Commercial-oriented (variable-length character strings): 702, 705, 7080
  • 1400 series (variable-length character strings): 7010
  • Decimal-based (10-digit words featuring hardware floating-point): 7070, 7072, 7074
  • Supercomputing class (64-bit words with hardware floating-point): 7030 "Stretch"

Vacuum tubes powered the original 700 models, while magnetic-core memory was standard in transistorized 7000 systems—except for early versions of the 701 and 702, which initially relied on Williams tube CRT memory before transitioning to core memory.

Software compatibility challenges

The existence of multiple mainframe architectures compelled IBM to support distinct programming environments, complicating software development during the emergence of operating systems.

The System/360 integrated characteristics from both the 7000 and 1400 lines to serve commercial and scientific computing needs but did not provide direct architectural compatibility. Certain System/360 variants included microcode-driven emulation capabilities for executing programs designed for the 1400 and 7000 instruction sets. Its successor, the System/370 (released in mid-1970), enhanced emulation features by enabling operation under OS control without requiring system shutdown and restart to switch modes, unlike earlier System/360 models.

Peripheral devices

Although architectural differences existed, machines within each category shared similar electronic technologies and generally employed identical peripheral equipment. Tape drives predominantly used IBM's standard 7-track format; vacuum tube-era systems featured the IBM 727 drive, while transistorized units typically utilized the IBM 729. Both vacuum tube and most transistorized models operated with common card readers, punches, and line printers introduced alongside the IBM 701—such as models IBM 711, 721, and 716—originating from IBM accounting machine designs with plugboard programming. Due to their comparatively slower speed, many installations of the 7000 series incorporated an IBM 1401 system to perform faster offline card-to-tape and tape-to-printer processing. Later models including the 7010, 7040, and 7044 adopted peripherals from the midrange IBM 1400 family. Additionally, some innovations from the IBM 7030 were integrated into data channels and peripheral devices on other members of the 7000 series, exemplified by components like the IBM 7340 Hypertape.

Initial Scientific Architecture (701)

During its development phase at IBM's Poughkeepsie Laboratory, this system was referred to as the Defense Calculator. It was officially introduced on April 7, 1953, under the name IBM 701 Electronic Data Processing Machine.

Data Representation

Numerical values were represented in either 36-bit or 18-bit lengths, exclusively utilizing fixed-point binary sign/magnitude notation.

Instruction Structure

The instructions were 18 bits in length and employed a single-address format:

  • Sign (1 bit) – Indicates whether the operand address refers to a whole word (-) or a half word (+)
  • Opcode (5 bits) – Defines one of 32 possible instructions
  • Address (12 bits) – Specifies one of 4096 half-word memory locations

A special 33rd instruction allowed memory expansion from 2048 to 4096 words by using the highest bit in the address field to select between memory banks.

Processor Registers

Included registers were:

  • AC – A 38-bit accumulator
  • MQ – A 36-bit Multiplier-Quotient register
Memory Capacity

Offered configurations included either 2,048 or 4,096 words, each consisting of 36-bit binary units with six-bit character encoding.

Subsequent Scientific Architecture (704/709/7090/7094)

IBM’s 36-bit scientific architecture served as the foundation for computation-heavy tasks. The earliest models, such as the vacuum tube-based IBM 704 and IBM 709, were succeeded by transistorized variants including the IBM 7090, IBM 7094, and more economical IBM 7040 and IBM 7044. The flagship system was the Direct Coupled System (DCS), which connected a 7094 with a 7044 to delegate input/output functions.

Data Representation

Both fixed-point and floating-point numbers were represented using 36 bits:

  • Fixed-point numbers employed binary sign/magnitude format.
  • Single-precision floating-point values consisted of a sign bit, an 8-bit excess-128 exponent, and a 27-bit magnitude.
  • Double-precision floating-point (introduced with the 7094) included a sign bit, a 17-bit excess-65536 exponent, and a 54-bit magnitude.
  • Alphameric data utilized packed six-bit BCD encoding.
Instruction Format

Instructions incorporated a three-bit prefix that identified the instruction class. A fifteen-bit decrement field often contained immediate operands. A three-bit tag selected index registers—three on earlier models and seven on the 7094. The fifteen-bit address field held either an address or an immediate operand. The tag indicated which index registers to subtract from this address to compute the effective address.

Processor Registers
IBM 704x/709x Register Set
Data Registers
S Q P 1 2 3 ... 17 18 20 21 ... 35 (bit position)
Accumulator AC
S   Multiplier/Quotient MQ

Registers within the processor encompassed:

  • AC – A 38-bit accumulator using sign/magnitude representation
  • MQ – A 36-bit multiplier-quotient register
  • XR – Fifteen-bit index registers (three on earlier systems, seven on the IBM 7094)
  • SI – Thirty-six-bit Sense Indicator register

The accumulator contained overflow bits labeled Q and P. Logical operations either cleared or disregarded these overflow indicators. Index registers employed two’s complement format and were subtracted from instruction addresses during effective address calculation. The IBM 7094 supported multiple tag mode to maintain compatibility with legacy software.

Sense Indicators provided operators with interactive control through panel switches and indicator lights.

Memory Configuration
  • IBM 704: Memory size could be configured at 4,096, 8,192, or up to 32,768 words, all composed of 36 bits with six-bit characters.
  • IBM 709 series (including models such as the 709 and 7090): Memory was fixed at a maximum of 32,768 words, also utilizing six-bit character encoding.
Input/Output Systems

The IBM 709 and IBM 7090 series employed Data Synchronizer Channels (DSCs) for managing high-speed input/output devices like magnetic tape and disk drives. Basic seven-bit DSCs executed simple control programs for data movement between memory and peripherals. More advanced nine-bit DSCs supported complex channel programs. Since unit record equipment operated slowly on these machines, punched card input/output and high-speed printing tasks were frequently delegated to an offline IBM 1401 via magnetic tape transfers. Later system configurations combined a high-performance computer (such as an IBM 7094) with a lower-cost machine (like an IBM 7044) connected through data channels to form the IBM 7094/7044 Direct Coupled System (DCS). In this arrangement, the smaller system managed faster peripheral I/O processing.

FORTRAN assembly program

The FORTRAN Assembly Program (FAP) functions as an assembler designed for the IBM 709, 7090, and 7094 systems. It was initially created for the 709 at Western Data Processing Center by David E. Ferguson and Donald P. Moore. FAP runs on IBM's Fortran Monitor System (FMS) as well as the IBSYS operating systems. Prior assemblers included the SHARE Compiler-Assembler-Translator (SCAT), which operated under the SHARE Operating System (SOS). Bell Laboratories enhanced FAP by incorporating macros, resulting in BE-FAP. The ultimate assembler for the 7090/7094 series was the Macro Assembly Program (IBMAP), which ran under IBSYS/IBJOB. It is important to note that SCAT, FAP, and MAP were not compatible with each other.

The pseudo-operation BSS in FAP, utilized for reserving memory space, gave rise to the term "BSS section" that remains widely used across numerous assembly languages today to denote reserved memory areas excluded from executable files.

Commercial architecture (702/705/7080)

The IBM 702 and IBM 705 share a degree of compatibility; notably, the 705 can execute many programs developed for the 702 without modification, although full compatibility is not guaranteed.

The IBM 7080 serves as a transistor-based advancement over the 705, incorporating various enhancements. To maintain backward compatibility, it supports operation modes corresponding to 705 I, 705 II, 705 III, as well as its native full 7080 mode.

Data format

Information is stored as variable-length character strings that conclude with a Record mark.

Instruction format

Instructions consist of five characters: a single opcode character followed by four address characters – formatted as OAAAA.

Registers
  • 702
    • Two accumulators labeled A and B, each capable of holding 512 characters.
  • 705
    • A single accumulator with a capacity of 256 characters.
    • Fourteen auxiliary storage units holding 16 characters each.
    • One auxiliary storage unit containing 32 characters.
  • 7080
    • One accumulator sized at 256 characters.
    • Thirty auxiliary storage units, each with a capacity of 512 characters.
    • Thirty-two communication storage units of 8 characters each.
Memory
  • 702
    • Memory capacity ranges from 2,000 to 10,000 characters using Williams tubes, increasing in increments of 2,000.
    • Character cycle time is approximately 23 microseconds.
  • 705 (Models I, II, III)
    • Core memory spans from 20,000 to 80,000 characters.
    • Character cycle rates are either 17 or 9.8 microseconds depending on model.
  • 7080
    • Offers core memory options of either 80,000 or 160,000 characters.
    • Character cycle time improves significantly to about 2.18 microseconds.
Input/output

Both the IBM 705 and standard IBM 7080 models utilize channels equipped with a 7-bit interface. The IBM 7080 can also be configured with faster data channels known as the 7908, which employ a 9-bit interface.

1400 series architecture (7010)

The commercial architectures of the IBM 700/7000 series influenced the development of the IBM 1400 series, a line of mid-range business computers. Subsequently, IBM released a mainframe variant known as the IBM 7010 based on the IBM 1410 design.

Data format
  • Data is represented as variable-length character strings terminated by a word mark.
Instruction format
  • Instructions vary in length and may be composed of 1, 2, 6, 7, 11, or 12 characters.
Registers

Fifteen index registers are implemented as five-character fields located at fixed low-memory addresses; these registers facilitate address modification by adding offsets to instruction addresses. Additionally, internal registers such as the B address register—which supports subroutine linkage—are accessible to programmers.

Memory
  • The system features memory capable of storing up to 100,000 characters.

Decimal architecture (7070/7072/7074)

The IBM 7070, IBM 7072, and IBM 7074 are decimal-based systems featuring fixed word lengths of ten digits, similar to the earlier IBM 650, although they do not share instruction compatibility.

Data Representation
  • Word size – Ten decimal digits plus a sign
  • Digit encoding – two-out-of-five code
  • Optional floating-point format with a two-digit exponent
  • Each word includes three signs – Plus, Minus, Alpha
    • Plus and Minus denote numeric values
    • Alpha encodes five alphabetic characters through digit pairs (e.g., 61 corresponds to A)
Instruction Structure
  • Instructions occupy a single word
  • Two-digit opcode accompanied by a Plus or Minus sign
  • Two-digit index register specifier
  • Two-digit field control for digit selection and shifting operations
  • Four-digit memory address
Registers
  • Registers consist of one-word units accessible as memory locations:
    • Three accumulators located at addresses 9991-9993 by default; expanded in the 7074 model
    • Program register at address 9995 standard; extended in the 7074, accessible from the console to hold the current instruction
    • Instruction counter at address 9999 standard; also extended in the 7074 and console-accessible
    • Ninety-nine index registers occupying addresses 0001-0099
Memory Specifications
  • Standard memory ranges from 5,000 to 9,990 words; the IBM 7074 supports up to 30,000 words in extended configurations
  • Access time varies by model: 6 microseconds for the 7070/7072 and 4 microseconds for the 7074
  • Addition operation times span from 10 to 72 microseconds depending on the specific system
Input/Output Interfaces

Employs channels with a 7-bit interface; additionally, the IBM 7070 and 7074 models can utilize faster channels featuring a 9-bit interface through the use of the 7907 data channel.

Timeline

Year Category Logic Memory
Decimal Commercial Scientific Supercomputer
1952 IBM 701 vacuum tubes Williams tubes
1953 IBM 702
1954 IBM 705 IBM 704 core memory
1958 IBM 709
IBM 7070 transistors
1959 IBM 7090
1960 IBM 7074
1961 IBM 7072 IBM 7080 IBM 7030
1962 IBM 7010 IBM 7094
1963 IBM 7040
IBM 7044
1964 IBM 7094 II

In 1962, an instance of the IBM 7074 was installed at the U.S. Internal Revenue Service.

Despite its designation, the IBM 7700 Data Acquisition System, announced in December of 1963, is not classified within the IBM 7000 series.

Performance

The IBM series from the 700 through the early 7000 models were introduced before standardized performance benchmarks such as Whetstone (1972), Dhrystone (1984), LINPACK (1979), and Livermore loops (1986) were established.

The following table presents performance comparisons using Gibson and Knight metrics (where higher values indicate better performance) alongside TRIDIA program execution times in seconds (lower values signify faster completion):

Model Gibson
mix
KIPS
Knight
Index
scientific
TRIDIA program
(FORTRAN)
(seconds)
IBM 705 m1,2 0.50
IBM 705 m3 0.38
IBM 709 21
IBM 7030 372 15.58
IBM 7040 148
IBM 7044 [1] 74
IBM7090 [2] 66
IBM7094 [3] 31.35
IBM7094 II [4] [5] 16.50


See also

External links

Reference manuals

701
702
704
705
7010
7030
7040/7044
7070/7072/7074
7080
7090/7094