The 3033: The Big One
While the System/370 line dominated mainframe computing for many years by introducing new models with new features and performance characteristics, IBM announced in March 1977 the successor to this very successful family of computers, the 3033, or "The Big One."
Although IBM mainly stressed the additional speed (1.6 to 1.8 times the speed of the System/370 168-3) and its much smaller size, ironically for "The Big One," this machine's technical merits would not look out of place on a modern computer. Running at 17.24 MHz, the processor sported an eight-stage pipeline, branch prediction, and even speculative execution. It contained several logical units and 12 channels. The units of 3033 processor were the instruction preprocessing function (IPPF), execution function (E-function), processor storage control function (PSCF), maintenance and retry function, and the well-known channels indigenous to all IBM mainframes. The IPPF fetched instructions and prepared them for the execution by the E-function, determined priority, and made fetch requests for the operand. It not only used branch prediction, but it could buffer three instruction streams at once, so in the event it "guessed" wrong, it was likely to have the other instruction sequence ready and preprocessed for the E-Function. The E-Function, not surprisingly, was the execution engine of the processor, boasting a very large 64 K cache (with a 64 byte line size) for the first time, to speed up memory accesses. Memory itself was eight-way interleaved, allowing refreshes to occur in the seven banks it was not accessing when it did a read, which sped up read time if the next access was in one of those seven banks (DRAM requires a refresh after a read to be accessed again).
The processor storage control function handled all requests for storing or fetching data from processor storage, and translated virtual address to absolute storage addresses using a technology we previously mentioned as dynamic address translation. Like modern processors, it used translation lookaside buffers to speed this up. Essentially, this is a cache of addresses already translated from virtual to absolute, so if the processor can find them there, conversion is unnecessary. On the 3033, if an address could be found, it would take one clock cycle to resolve it, or if not, it could take anywhere from 10 to 40, which is quite a difference.
The maintenance and retry function provided the data path between the operator console and the 3033 processor for manual and service operations.
So, while ostensibly the 3033 was just a very fast successor to the powerful System/370 168-3, when we look closer we see it has almost all the technologies of a modern processor and even some that are lacking in a portion of today's modern CPUs. However, it was still a scalar design, and despite its impressive characteristics, was replaced relatively quickly by the 3081. While I know you are just brimming with curiosity about the 3081 (who could blame you?), and I can assure we will get very familiar with it, let us first take a short interlude by looking at what DEC, the second largest computer company of the world at that time, had to offer.