The IBM System/360 and the Use of Microcode

The IBM/System 360. from 'The Many Colors of the IBM System/360) [1] ... Stylish like in "Mad Men" :)

The IBM/System 360. from ‘The Many Colors of the IBM System/360) [1] … Stylish like in “Mad Men” 🙂

On April 7, 1964, IBM introduced the IBM System/360, a rather successful family of mainframe computer systems, originally produced between 1965 and 1978 using microcode to implement the instruction set. It was the first family of computers designed to cover the complete range of applications, from small to large, both commercial and scientific. The design made a clear distinction between architecture and implementation. Also if you are not a computer scientist, you might have seen the S/360 in the TV series “Mad Men”. There, the “IBM 360” was featured as a plot device where a company leased the system to the advertising agency and was a prominent background in the seventh season.

The IBM System/360 had a huge impact on the development of computers. Contrasting with at-the-time normal industry practice, IBM decided to create an entire series of computers, from small to large, low to high performance, all using the same instruction set. The basic idea behind that strategy was that it allowed customers first to use a cheaper model and then, if necessary, easily upgrade to larger systems as their needs increased without the time and expense of rewriting software. Code written for the smallest member of the family had to be upwardly compatible with each of the family’s larger processors. This gave IBM a unique point of sale and a huge advantage over contemporary competitors. This flexibility greatly lowered barriers for a company to invest into a computer. With other vendors customers had to choose between machines they could outgrow and machines that were potentially overpowered. As a result, many companies simply did not buy computers and IBM with the System/360 enabled them to participate. Thus, the IBM System/360 has been ranked along with Ford’s Model T and Boeing’s first jetliner, the Boeing 707, as the topmost business accomplishments of the 20th century. It set IBM on a path to dominate the computer industry for the following decades.

IBM was the first manufacturer to exploit microcode technology to implement a compatible range of computers of widely differing performance, although the largest, fastest, models had hard-wired logic instead. The S/360 replaced all five of IBM’s computer product lines with one strictly compatible family, using a new architecture that pioneered the eight-bit byte still in use on every computer today, rather than adopting the 7030 concept of accessing bytes of variable size at arbitrary bit addresses. The announcement was revolutionary in concept and unprecedented in scope.[1] Moreover, it introduced also Byte-addressable memory as opposed to bit-addressable or word-addressable memory, 32-bit words, the IBM floating point architecture as well as the EBCDIC character set. System/360 could handle logic instructions as well as three types of arithmetic instructions: fixed-point binary, fixed-point decimal and floating-point hexadecimal. The architecture of System/360 provided for up to 224 = 16,777,216 bytes of memory; however, the Model 67 extended the architecture and allowed 232 = 4,294,967,296[NB 1] bytes of virtual memory.

The six models announced in April of 1964 had a performance range of roughly 25-to-1, with the smallest model performing 33,000 additions per second and the largest more than 750,000 additions per second. Six years later, after the introduction of additional models, the range jumped to 200-to-1.[1] Another very important innovation was the commercial use of microcoded CPUs for the S/360. Microcode is a technique that imposes an interpreter between the system’s hardware and the architectural level of a computer, a concept first introduced in 1951 by British computer pioneer Maurice Wilkes. This concept greatly simplified CPU development. Writing microcode is often called microprogramming and the microcode in a particular processor implementation is sometimes called a microprogram. Microprogramming was first described at the University of Manchester Computer Inaugural Conference in 1951, then published in expanded form in IEEE Spectrum in 1955.

Thus, the microcode is a layer of hardware-level instructions that implement higher-level machine code instructions or internal state machine sequencing in many digital processing elements. Each microinstruction in a microprogram provides the bits that control the functional elements that internally compose a CPU. The advantage over a hard-wired CPU is that internal CPU control becomes a specialized form of a computer program. Microcode thus transforms a complex electronic design challenge (the control of a CPU) into a less complex programming challenge.

The chief architect of System/360 was Gene Amdahl, and the project was managed by Fred Brooks, responsible to Chairman Thomas J. Watson Jr. In 1989, a quarter of a century after IBM System/360 debuted, products based on S/360 architecture and its extensions accounted for more than half of IBM’s total revenues.[1] Every subsequent IBM mainframe is a descendant of the first System/360s.[3] In 2010, the IBM z/90, a compatible direct descendant of System/360, was still an important and profitable product line. Furthermore, many philosophies and design concepts initiated in IBM System/360 survived in all computers given the generic name of “mainframe” or “server.” [5]

At yovisto you can learn more about mainframes and their history in the Computer Chronicles’ feature on Mainframes to Minis to Micros.

Related Work and Further Reading:


Leave a Reply

Your email address will not be published. Required fields are marked *

Relation Browser
0 Recommended Articles:
0 Recommended Articles: