Inside a Microprocessor
Computerworld - The processors in today's computers have grown tremendously in performance, capabilities and complexity over the past decade. Clock speed has skyrocketed, and size has dwindled, even as the number of transistors packed on them has soared. A processor from 1983 made do with 30,000 transistors, while some current CPUs have upwards of 40 million transistors.
Any computer program consists of many instructions for operating on data. A processor executes the program through four operating stages: fetch, decode, execute and retire (or complete).
The fetch stage reads a program's instructions and any needed data into the processor.
The decode stage determines the purpose of the instruction and passes it to the appropriate hardware element.
The execution stage is where that hardware element, now freshly fed with an instruction and data, carries out the instruction. This might be an add, bit-shift, floating-point multiply or vector operation.
The retire stage takes the results of the execution stage and places them into other processor registers or the computer's main memory. For example, the result of an add operation might be stored in memory for later use.
An important part of a microprocessor is its built-in clock, which determines the maximum speed at which other units can operate and helps synchronize related operations. Clock speed is measured in megahertz and, increasingly, gigahertz. Today's fastest commercial processors operate at 2 GHz, or 2 billion clock cycles per second. Some hobbyists speed it up (a practice called overclocking) to get more performance. However, this raises the chip's operating temperature considerably, often causing early failure.
Parts Is Parts
Processor circuitry is organized into separate logic elements - perhaps a dozen or more - called execution units. The execution units work in concert to implement the four operating stages. The capabilities of the execution units often overlap among the processing stages. The following are some of the common processor execution units:
Arithmetic logic unit: Processes all arithmetic operations. Sometimes this unit is divided into subunits, one to handle all integer add and subtract instructions, and another for the computationally complex integer multiply and divide instructions.
Floating-point unit (FPU): Deals with all floating-point (noninteger) operations. In earlier times, the FPU was an external coprocessor; today, it's integrated on-chip to speed up operations.
Load/store unit: Manages the instructions that read or write to memory.
Memory-management unit (MMU): Translates an application's addresses into physical memory addresses. This allows an operating system to map an application's code and data in different virtual address spaces, which lets the MMU offer memory-protection services.
Hardware
Additional Resources



White Papers & Webcasts
CIO Strategies for the Retention and Deletion of Email
Register Now!
Extending Client Refresh - 11 Steps to Maximize Savings
Register Now!
3 Minutes with Free Tool Can Save Thousands!
Register Now!
Key Strategies for Managing Data Growth
What are you storage challenges?
Lower the Cost and Complexity of a Mobile Workforce through Automation
Download This Resource Now!
Managing Mobility: Improve Data Security, Compliance and Manageability
Download This Resource Now!
Consolidate Your Servers and Storage to Lower Costs with Oracle Database 11g
Register for this webcast!
