PC Hardware in a Nutshell, 2nd Edition Free Open Book

PC Hardware in a Nutshell, 2nd Edition

Team LiB   Previous Section   Next Section

4.1 Processor Design

A 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 Components

Modern processors have the following internal components:

Execution unit

The core of the CPU, the execution unit processes instructions.

Branch predictor

The branch predictor attempts to guess where the program will jump (branch) next, allowing the Prefetch and Decode Unit to retrieve instructions and data in advance so they will already be available when the CPU requests them.

Floating-point unit

The floating-point unit (FPU) is a specialized logic unit optimized to perform non-integer calculations much faster than the general-purpose logic unit can perform them.

Primary cache

Also called Level 1or L1 cache, primary cache is a small amount of very fast memory that allows the CPU to retrieve data immediately, rather than waiting for slower main memory to respond. See Chapter 5.

Bus interfaces

Bus interfaces are the pathways that connect the processor to memory and other components. For example, modern processors connect to memory via a dedicated bus called the front-side bus (FSB) or host bus.

4.1.2 Processor Speed

The 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 Architecture

Clock 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:

Wider data buses and registers

For a given clock speed, the amount of work done depends on the amount of data processed in one operation. Early CPUs processed data in 4-bit (nibble) or 8-bit (byte) chunks, whereas current CPUs process 32 or 64 bits per operation.

Floating-point units (FPU)

All CPUs work well with integers, but processing floating-point numbers to high precision on a general-purpose CPU requires a huge number of operations. All modern CPUs include a dedicated FPU that handles floating-point operations efficiently.

Pipelining

Early CPUs took five ticks to process an instruction—one each to load the instruction, decode it, retrieve the data, execute the instruction, and write the result. Modern CPUs use pipelining, which dedicates a separate stage to each process and allows one full instruction to be executed per clock cycle.

Superscalar architecture

If one pipeline is good, more are better. Using multiple pipelines allows multiple instructions to be processed in parallel, an architecture called superscalar. A superscalar processor processes multiple instructions per tick.

    Team LiB   Previous Section   Next Section


         Main Menu
    PC Hardware in a Nutshell, 2nd Edition
    Table of Contents
    Copyright
    Dedication
    Foreword
    Preface
    Chapter 1. Fundamentals
    Chapter 2. Working on PCs
    Chapter 3. Motherboards
    Chapter 4. Processors
    Section 4.1. Processor Design
    Section 4.2. Intel Processors
    Section 4.3. Advanced Micro Devices (AMD) Processors
    Section 4.4. Choosing a Processor
    Section 4.5. Installing a Processor
    Section 4.6. Our Picks
    Chapter 5. Memory
    Chapter 6. Floppy Disk Drives
    Chapter 7. High-Capacity Floppy Disk Drives
    Chapter 8. Removable Hard Disk Drives
    Chapter 9. Tape Drives
    Chapter 10. CD-ROM Drives
    Chapter 11. CD-R and CD-RW Drives
    Chapter 12. DVD Drives
    Chapter 13. Hard Disk Interfaces
    Chapter 14. Hard Disk Drives
    Chapter 15. Video Adapters
    Chapter 16. Displays
    Chapter 17. Sound Adapters
    Chapter 18. Speakers and Headphones
    Chapter 19. Keyboards
    Chapter 20. Mice and Trackballs
    Chapter 21. Game Controllers
    Chapter 22. Serial Communications
    Chapter 23. Parallel Communications
    Chapter 24. USB Communications
    Chapter 25. Cases
    Chapter 26. Power Supplies
    Chapter 27. Backup Power Supplies
    Chapter 28. Building a PC
    Colophon
    Index


    More Books
    PHP Hacks
    Processing Xml With Java - A Guide To Sax, Dom, Jdom, Jaxp, And Trax
    The Koran (Holy Qur'an)
    Macromedia Flash 8 Bible
    Search Engine Optimization for Dummies
    YouTube Traffic
    PHP 5 for Dummies
    Harry Potter and The Chamber of Secrets
    Harry Potter and the Sorcerer's Stone
    The Pilgrim's Progress
    Wireless Hacks
    Flash Hacks. 100 Industrial-Strength Tips & Tools
    PayPal Hacks. 100 Industrial-Strength Tips and Tools
    Amazon Hacks
    Pdf Hacks
    The Da Vinci Code
    Google Hacks
    The Holy Bible
    Windows XP For Dummies
    Harry Potter and the Half-Blood Prince
    Seo Book
    Upgrading and Repairing Networks
    Macromedia Dreamweaver 8 UNLEASHED
    Windows XP Annoyances
    Windows XP Hacks
    Microsoft Windows XP Power Toolkit
    Teach Yourself MS Office In 24Hours
    iPod & iTunes Missing Manual
    PC Hacks 100 Industrial-Strength Tips and Tools
    PC Overclocking, Optimization, and Tuning - 2th Edition
    PC Hardware In A Nutshell 3rd Edition
    PC Hardware in a Nutshell, 2nd Edition
    Upgrading and Repairing PCs
    Google for Dummies
    MySQL Cookbook
    Teach Yourself Macromedia Flash 8 In 24 Hours
    PHP CookBook
    Sams Teach Yourself JavaScript in 24 Hours
    PHP5 Manual
    Free Games Paper Airplanes
    500 Juegos Gratis 500 Giochi Gratis 500 Jeux Gratuits 500 Jogos Gratis 500 Kostenlose Spiele