Microprocessor (Caroline Era)

The Microprocessor is a CPU developed in 1974 by IBM and used in the IBM 5100 the year after. It was licenced for sale to other manufacturers in 1979 and is a major factor in triggering off the microchip revolution of the Caroline Era.

Physical Implementation
The Microprocessor initially consisted of a number of LSI integrated circuits on a system board. The "micro" in the name refers to "microcode", where the complex instruction set apparent to a machine code programmer is actually an emulation via software using a subset of instructions realised in hardware. This decision was made in order to simplify the design of the processor and reduce the area of circuit board and number of chips required for the processor to perform as required.

Although IBM devoted an entire board to the CPU, manufacturers who used the licenced version generally used the Microprocessor on a board with many other components, such as memory and I/O, enabling even more advanced computers to be manufactured on single boards. Some manufacturers also mixed the chips with other components and rewrote the microcode to provide other facilities. This approach was also adopted back into IBM.

In 1984, IBM released a somewhat improved version of the Microprocessor which occupied only half the space and used half the number of chips. This was licenced immediately and formed the basis of a new generation of small business, scientific and domestic computers. This halving was, however, not to be duplicated later.

Programmer's perspective
The Microprocessor is a six-bit CPU with an eighteen-bit address space, which is usually largely unused due to the expense of providing enough storage. It is optimised for the use of certain IBM 360 op-codes and to ease the compilation of FORTRAN source code - there is sometimes a direct correspondence between op-codes and FORTRAN keywords and even some variable names. The processor divides the memory into eighteen bit words and therefore cannot load or store less than three six-bit bytes, though it does so in series - the low, mid and high bytes are fetched and stored consecutively in three cycles. ALU operations are performed in series inside the processor to reduce the components required.