This page gives a nice recap of architectural innovations seen back in the day, in big iron machines, long before those innovations came to microprocessors:
…while today’s microprocessors are miracles of engineering, available at an almost ridiculously low price, the greater part of the performance increase is attributable to semiconductor process technology, not to architectural innovations.
The architectural history of the microprocessor is very largely the recapitulation of the architectural history of the mainframe - with the benefits of not being the first!
- 1960: IBM 7030 Stretch: Instruction pipelining, pre-fetching, interleaved memory, interrupts, first use of the 8-bit byte.
- 1962: Atlas: Paged virtual memory, hardware support for operating system functions.
- 1962: IBM/MIT 7094 for CTSS: Two modes (user/supervisor) with privileged instructions and memory reserved for supervisor use. Executing a privileged instruction in user mode trapped to supervisor mode code.
- 1964: CDC 6600: Instruction level parallelism with out-of-order execution, load-store - i.e. RISC - architecture, multi-threaded peripheral processor architecture, maximum performance by co-design of architecture and circuit details.
- 1964: IBM System/360: establishment of the 8-bit byte as the norm, byte addressable memory, 32-bit word length, general purpose registers, the concept of a family of compatible machines.
- 1967: IBM System/360 Model 67 and CP/67: Virtual machine technology (CP/67 later developed into VM/CMS).
- 1968: IBM System/360 Model 85: Cache memory.
- 1969: CDC 7600: 6600 innovations, plus pipelined functional units.
- 1975: Cray-1: Vector processing (preceeded by Illiac-IV, CDC Star-100 and TI ASC).
Not entirely unrelated:
Bret Victor - The Future of Programming (video)