4.1 Processor DesignA processor executes programs—including the operating system itself and the user applications—all of which perform useful work. From the processor's point of view, a program is simply a group of low-level instructions that it executes more or less in sequence as it receives them. How efficiently and effectively the processor executes instructions is determined by its internal design, also called its architecture. The CPU architecture, in conjunction with CPU speed, determines how fast the CPU executes instructions of various types. The external design of the processor, specifically its external interfaces, determines how fast it communicates information back and forth with external cache, main memory, the chipset, and other system components. 4.1.1 Processor ComponentsModern processors have the following internal components:
4.1.2 Processor SpeedThe processor clock coordinates all CPU and memory operations by periodically generating a time reference signal called a clock cycle or tick. Clock frequency is specified in megahertz (MHz), which specifies millions of ticks per second, or gigahertz (GHz), which specifies billions of ticks per second. Clock speed determines how fast instructions execute. Some instructions require one tick, others multiple ticks, and some processors execute multiple instructions during one tick. Ticks per instruction varies according to processor architecture, its instruction set, and the specific instruction. Complex Instruction Set Computer (CISC) processors use complex instructions. Each requires many clock cycles to execute, but accomplishes a lot of work. Reduced Instruction Set Computer (RISC) processors use fewer, simpler instructions. Each takes few ticks but accomplishes relatively little work. These differences in efficiency mean that one CPU cannot be directly compared with another purely on clock speed. A 1.4 GHz AMD Athlon, for example, may be faster than a 1.7 GHz Intel Pentium 4, depending on the application. The comparison is complicated because different CPUs have different strengths and weaknesses. For example, the Athlon is generally faster than the Pentium 4 clock-for-clock on both integer and floating-point operations (that is, it does more work per CPU tick), but the Pentium 4 has an extended instruction set that may allow it to run optimized software literally twice as fast as the Athlon. The only safe use of direct clock speed comparisons is within a single family. A 1.2 GHz Tualatin-core Pentium III, for example, is roughly 20% faster than a 1.0 GHz Tualatin-core Pentium III, but even there the relationship is not absolutely linear. And a 1.2 GHz Tualatin-core Pentium III is more than 20% faster than a 1.0 GHz Pentium III that uses the older Coppermine core. Also, even within a family, processors with similar names may substantially differ internally. 4.1.3 Processor ArchitectureClock speeds increase every year, but the laws of physics limit how fast CPUs can run. If designers depended only on faster clock speeds for better performance, CPU performance would have hit the wall years ago. Instead, designers have improved internal architectures while also increasing clock speeds. Recent CPUs run at 500 times the clock speed of the PC/XT's 8088, but provide 5,000 or more times the performance. Here are some major architectural improvements that have allowed CPUs to continue to get faster every year:
|