Jump to content

IBM System/360 Model 20

From Alfawiki
IBM System/360 Model 20
Company typeComputer model
IndustryComputer hardware
FoundedNovember 1964
Headquarters
Böblingen
,
Germany
ProductsComputer system

The IBM System/360 Model 20, introduced in November 1964, represents the most compact variant within the IBM System/360 lineup. It implements only a limited portion of the System/360 instruction set, with binary numbers confined to 16 bits and lacking support for floating point arithmetic. Nevertheless, it fully incorporates the System/360 decimal instruction set, allowing operations such as addition, subtraction, multiplication, and division on packed decimal numbers up to 31 digits in length.

Engineered by IBM's team in Böblingen, Germany, the Model 20 was designed primarily for data processing tasks and intended to replace tabulating equipment. Unlike the IBM 1130, which debuted the following year targeting scientific computation but was incompatible with System/360, the Model 20 concentrated on business-oriented data processing needs.

The system’s design was shaped by internal IBM discussions: John Haanstra pushed for compatibility with IBM 1401 instructions, whereas Fred Brooks championed adherence to System/360 architecture principles. Ultimately, a cost-effective solution prevailed, offering leasing rates below $2000 per month () that included the Multi-Function Card Machine and line printer—substantially lower than the approximately $3000 monthly lease required for comparable IBM 1401 systems.

In terms of units sold, the Model 20 was the most widely distributed model within the System/360 series, with over 7,400 units installed across the United States by 1970. Despite its extensive deployment, other models yielded greater revenue. By 2020, operational Model 20 machines had become rare.


Architecture

The Model 20 provided six memory capacity options: 4, 8, 12, 16, 24, and 32 KB of byte-addressable storage. It included eight general-purpose registers (R8–R15), each 16 bits wide and usable as base registers. The system supports direct memory addressing through a combination of a twelve-bit displacement and bits extracted from the base register field to form a total 15-bit address. Storage protection was minimal, limited to safeguarding the first 144 bytes within a designated "protected area."

Its instruction set comprises a subset of the full System/360 repertoire, featuring only 37 instructions instead of the complete set of 143. Some instructions differ from standard System/360 conventions; for example, BASR (Branch And Store Register) replaces BALR (Branch And Link Register).

  • Binary arithmetic operates on halfword (16-bit) data using instructions such as Load Halfword, Add Halfword, Subtract Halfword, Compare Halfword, Store Halfword, Add Register, and Subtract Register.
  • Decimal arithmetic fully supports the System/360 decimal instruction set for packed decimal operands up to a maximum of 31 digits plus sign.
  • Logical operations include various Move and Compare functions, Edit instructions, immediate And/Or operations, Test under Mask, and Translate commands. Among these is a distinctive "Halt and Proceed" (HPR) instruction that halts processor execution and displays an error code until manually restarted.
  • Branching instructions encompass typical Branch on Condition commands along with BASR/BAS for branch-and-store operations using a 16-bit link address. The "Set PSW" (SPSW) instruction loads a full 32-bit Program Status Word; this instruction is accessible to user programs since there are no privileged or supervisor modes in this model.
  • Input/output instructions are specially designed due to the absence of dedicated I/O channels; peripherals are controlled directly by the CPU:
    • "Test I/O and Branch" (TIOB) checks device status based on hardware-specific conditions.
    • "Control I/O" (CIO) manages control functions for connected devices.
    • "Transfer I/O" (XIO) initiates byte-specific data transfers and can employ cycle stealing to share processor cycles during operation.

Consistent with other members of the System/360 family, the Model 20 utilizes microprogramming implemented via transformer read-only storage (TROS).

Peripherals

By 1967, the supported peripheral devices comprised:[1]

An integrated communications adapter was optionally included, available in two variants: one supporting Synchronous transmit-receive (STR) and the other designed for binary synchronous communications (Bisync).

2311 Disk Storage

The Model 20 utilized IBM 2311 disk drives, either model 11 or model 12, which were connected through a built-in "storage control feature" within the CPU.[1] All attached drives had to be of the same model type. Both models employed the 1316 disk pack, featuring up to 203 cylinders with ten tracks per cylinder. Model 11 accessed all cylinders, whereas model 12 used only the outermost 103 cylinders. Each track was divided into ten sectors, each holding 270 bytes. The formatted storage capacity reached approximately 5.4 million bytes for model 11 and about 2.5 million bytes for model 12.[2]

IBM 2560 Multi-Function Card Machine

Introduced alongside Model 20, the IBM 2560 Multi-Function Card Machine (MFCM)[3] was prone to reliability challenges, frequently experiencing card jams.

The device incorporated two card hoppers to hold either punched cards or blank cards awaiting punching. It was offered in two configurations:

  • Model A1: equipped with five card stackers and an optional printing/interpreter feature featuring two, four, or six print heads.[4]
  • Model A2: containing four card stackers.

Cards passed sequentially through a read station, a punch station, and on Model A2, a print station that applied text to cards before sorting into stackers.[1] This arrangement enabled the machine to operate as a card reader, puncher, interpreter, and sorter under program control—effectively consolidating multiple punched-card operations into a single unit.

IBM marketed the 2560 as providing "a card-handling capability never before possible on a single pass."[5][4][6] Because all input/output operations were managed by the processor, timing-critical peripherals such as the 2560 were handled efficiently, enabling simultaneous reading, punching, printing, and sorting of cards at full rated speed in one continuous pass.

Disk Programming System

The Disk Programming System (DPS) serves as the operating environment for the Model 20 when equipped with a minimum of 12 KiB memory and at least one disk drive. DPS components include:

  • The Initial Program Loader (IPL).
  • A compact resident monitor responsible for managing disk input/output, error handling, job transitions, and loading programs from the disk's core-image library.
  • A Job Control Program that orchestrates job preparation between executions.
  • Various service utilities for managing libraries, maintaining I/O device tables, performing linkage editing, loading and copying disk systems, as well as backing up and restoring disk data.

The Rollout/Rollin feature allows operators to pause batch jobs to perform inquiries and subsequently resume processing.

Tape Programming System

Tape Programming Support (TPS) is designed for configurations that include magnetic tape drives but lack disk storage. The minimum setup requires 4096 bytes of memory, along with a card reader/punch, printer, and two tape drives. TPS offers an assembler and tape-related utility programs. Systems with 8192 bytes or more memory and additional tape drives benefit from expanded functionality.

Card Programming Support

Card Programming System (CPS) caters to Model 20 setups utilizing only card input/output devices.

Languages

Other IBM programs

  • Utilities for Sort/Merge operations.
  • Disk and tape maintenance tools including initialization and clearing utilities.

Clones

The UNIVAC 9200 and 9300 models were direct replicas of the Model 20 architecture.

Remaining machines

Although the System/360 Model 20 enjoyed widespread sales or leases during its operational period, only a limited number of units survive today, predominantly preserved by museums or private collectors. Significant instances include:

  • Two Model 20 processors with peripherals acquired in 2019 for €3710 on eBay by UK-based hobbyists. This system was discovered in an abandoned facility in Nürnberg, Germany, later transferred to Creslow Park, Buckinghamshire, UK, and as of September 2024 is on extended loan at the System Source Computer Museum in Hunt Valley, Maryland, USA for exhibition and restoration.
  • As of 2020, a Model 20 processor with associated peripherals is publicly displayed at the Deutsches Museum in Munich, Germany.

A detailed inventory of surviving System/360 units can be found at World Inventory of remaining System/360 CPUs.

See also

Further reading

  1. ↑ 1.0 1.1 1.2 Cite error: Invalid <ref> tag; no text was provided for refs named FuncChar
  2. ↑ Lua error in Module:Citation/CS1/Configuration at line 2123: attempt to index field '?' (a nil value).
  3. ↑ Template:Cite conference
  4. ↑ 4.0 4.1 Lua error in Module:Citation/CS1/Configuration at line 2123: attempt to index field '?' (a nil value).
  5. ↑ Lua error in Module:Citation/CS1/Configuration at line 2123: attempt to index field '?' (a nil value).
  6. ↑ Lua error in Module:Citation/CS1/Configuration at line 2123: attempt to index field '?' (a nil value).