The brain of the PC is the processor, or Central
Processing Unit (CPU). The CPU performs the
system's calculating and processing--except for special
math-intensive processing in systems that have a math
coprocessing unit chip. The processor is easily the most
expensive chip in the system. All the PC-compatibles use
processors that are compatible with the Intel family of chips,
although the processors themselves may have been manufactured
or designed by various companies, including AMD, IBM, Cyrix,
and others.
The following sections cover the processor chips that have
been used in personal computers since the first PC was
introduced almost two decades ago. These sections provide a
great deal of technical detail about these chips and explain
why one type of CPU chip can do more work than another in a
given period of time. First, however, you learn about two
important components of the processor: the data bus and the
address bus.
Processor Specifications
Many confusing specifications often are quoted in
discussions of processors. The following sections discuss some
of these specifications, including the data bus, address bus,
and speed. The next section includes a table that lists the
specifications of virtually all PC processors.
Data Bus
One of the most common ways to describe a processor is by
the size of the processor's data bus and address bus. A
bus is simply a series of connections that carry common
signals. Imagine running a pair of wires from one end of a
building to another. If you connect a 110v AC power generator
to the two wires at any point and place outlets at convenient
locations along the wires, you have constructed a power bus.
No matter which outlet you plug the wires into, you have
access to the same signal, which in this example is 110v AC
power.
Any transmission medium that has more than one outlet at
each end can be called a bus. A typical computer system has
several buses, and a typical processor has two important buses
for carrying data and memory--addressing information: the data
bus and the address bus.
The processor bus discussed most often is the data
bus--the bundle of wires (or pins) used to send and
receive data. The more signals that can be sent at the same
time, the more data can be transmitted in a specified interval
and, therefore, the faster the bus.
Data in a computer is sent as digital information
consisting of a time interval in which a single wire carries
5v to signal a 1 data bit, or 0v to signal a 0 data bit. The
more wires you have, the more individual bits you can send in
the same time interval. A chip such as the 286, which has 16
wires for transmitting and receiving such data, has a 16-bit
data bus. A 32-bit chip, such as the 486, has twice as many
wires dedicated to simultaneous data transmission as a 16-bit
chip and can send twice as much information in the same time
interval as a 16-bit chip.
A good way to understand this flow of information is to
consider a highway and the traffic it carries. If a highway
has only one lane for each direction of travel, only one car
at a time can move in a certain direction. If you want to
increase traffic flow, you can add another lane so that twice
as many cars pass in a specified time. You can think of an
8-bit chip as being a single-lane highway because with this
chip, one byte flows through at a time. (One byte equals eight
individual bits.) The 16-bit chip, with two bytes flowing at a
time, resembles a two-lane highway. To move a large number of
automobiles, you may have four lanes in each direction. This
structure corresponds to a 32-bit data bus, which has the
capability to move four bytes of information at a time.
Just as you can describe a highway by its lane width, you
can describe a chip by the width of its data bus. When you
read an advertisement that describes a computer system as
being a 16-bit or 32-bit system, the ad usually is referring
to the data bus of the CPU. This number provides a rough idea
of the performance potential of the chip (and, therefore, the
system).
Table 6.1 lists the specifications, including the data-bus
sizes, for the Intel family of processors used in IBM and
compatible PCs.
Table 6.1 Intel Processor Specifications
Processor |
CPU Clock |
Std. Voltage |
Internal Register Size |
Data-Bus Width |
Address-Bus Width |
Maximum Memory |
Integral Cache |
Cache Type |
Burst Mode |
Integral FPU |
No. of Transistors |
Date Introduced |
8088 |
1x |
5v |
16-bit |
8-bit |
20-bit |
1M |
No |
- |
No |
No |
29,000 |
June '79 |
8086 |
1x |
5v |
16-bit |
16-bit |
20-bit |
1M |
No |
- |
No |
No |
29,000 |
June '78 |
286 |
1x |
5v |
16-bit |
16-bit |
24-bit |
16M |
No |
- |
No |
No |
134,000 |
Feb. '82 |
386SX |
1x |
5v |
32-bit |
16-bit |
24-bit |
16M |
No |
- |
No |
No |
275,000 |
June '88 |
386SL |
1x |
3.3v |
32-bit |
16-bit |
24-bit |
16M |
0K* |
WT |
No |
No |
855,000 |
Oct. '90 |
386DX |
1x |
5v |
32-bit |
32-bit |
32-bit |
4G |
No |
- |
No |
No |
275,000 |
Oct. '85 |
486SX |
1x |
5v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
No |
1,185,000 |
April '91 |
486SX2 |
2x |
5v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
No |
1,185,000 |
April '94 |
487SX |
1x |
5v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
Yes |
1,200,000 |
April '91 |
486DX |
1x |
5v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
Yes |
1,200,000 |
April '89 |
486SL** |
1x |
3.3v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
Optional |
1,400,000 |
Nov. '92 |
486DX2 |
2x |
5v |
32-bit |
32-bit |
32-bit |
4G |
8K |
WT |
Yes |
Yes |
1,100,000 |
March '92 |
486DX4 |
2-3x |
3.3v |
32-bit |
32-bit |
32-bit |
4G |
16K |
WT |
Yes |
Yes |
1,600,000 |
Feb. '94 |
Pentium OD |
2.5x |
5v |
32-bit |
32-bit |
32-bit |
4G |
2x16K |
WB |
Yes |
Yes |
3,100,000 |
Jan. '95 |
Pentium 60/66 |
1x |
5v |
32-bit |
64-bit |
32-bit |
4G |
2x8K |
WB |
Yes |
Yes |
3,100,000 |
March '93 |
Pentium 75+ |
1.5-3x |
3.3v*** |
32-bit |
64-bit |
32-bit |
4G |
2x8K |
WB |
Yes |
Yes |
3,300,000 |
March '94 |
Pentium Pro |
2-3x |
2.9v |
32-bit |
64-bit |
36-bit |
64G |
2x8K |
WB |
Yes |
Yes |
5,500,000 |
Sept. '95 |
The 386SL contains an integral-cache controller, but the
cache memory must be provided outside the chip. **There are
several different voltage variations of Pentium processors,
including what Intel calls VRE (3.465v), and VR
(3.3v). ***These figures do not include the optional 256K
or 512K Level 2 cache built-in to the CPU packages. The L2
cache contains an additional 15.5 million or 31 million
transistors! FPU = Floating-Point Unit (math
coprocessor) WT = Write-Through cache (caches reads
only) WB = Write-Back cache (caches both reads and
writes) Note that the Pentium Pro processor includes 256K
of L2 cache in a separate die within the chip.
Internal Registers
The size of the internal register is a good indication of
how much information the processor can operate on at one time.
Most advanced processors today--all the chips from the 386 to
the Pentium--use 32-bit internal registers.
Some processors have an internal data bus (made up of data
paths and of storage units called registers) that is
different from the external data bus. The 8088 and 386SX are
examples of this structure. Each chip has an internal data bus
twice the width of the external bus. These designs, which
sometimes are called hybrid designs, usually are low-cost
versions of a "pure" chip. The 386SX, for example, can pass
data around internally with a full 32-bit register size; for
communications with the outside world, however, the chip is
restricted to a 16-bit-wide data path. This design enables a
systems designer to build a lower-cost motherboard with a
16-bit bus design and still maintain compatibility with the
full 32-bit 386.
Internal registers often are larger than the data bus,
which means that the chip requires two cycles to fill a
register before the register can be operated on. For example,
both the 386SX and 386DX have internal 32-bit registers, but
the 386SX has to "inhale" twice (figuratively) to fill them,
whereas the 386DX can do the job in one "breath." The same
thing would happen when the data is passed from the registers
back out to the system bus.
The Pentium is an example of the opposite situation. This
chip has a 64-bit data bus but only 32-bit registers--a
structure that may seem to be a problem until you understand
that the Pentium has two internal 32-bit pipelines for
processing information. In many ways, the Pentium is like two
32-bit chips in one. The 64-bit data bus provides for very
efficient filling of these multiple registers.
Address Bus
The address bus is the set of wires that carry the
addressing information used to describe the memory location to
which the data is being sent, or from which the data is being
retrieved. As with the data bus, each wire in an address bus
carries a single bit of information. This single bit is a
single digit in the address. The more wires (digits) used in
calculating these addresses, the greater the total number of
address locations. The size (or width) of the address bus
indicates the maximum amount of RAM that a chip can
address.
The highway analogy can be used to show how the address bus
fits in. If the data bus is the highway, and if the size of
the data bus is equivalent to the number of lanes, the address
bus relates to the house number or street address. The size of
the address bus is equivalent to the number of digits in the
house address number. For example, if you live on a street in
which the address is limited to a two-digit (base 10) number,
no more than 100 distinct addresses (00 to 99) can exist for
that street (10 to the power of 2). Add another digit, and the
number of available addresses increases to 1,000 (000 to 999),
or 10 to the third power.
Computers use the binary (base 2) numbering system, so a
two-digit number provides only four unique addresses (00, 01,
10, and 11) calculated as 2 to the power of 2; and a
three-digit number provides only eight addresses (000 to 111)
which is 2 to the 3rd power. For example, the 8086 and 8088
processors use a 20-bit address bus that calculates as a
maximum of 2 to the 20th power or 1,048,576 bytes (1M) of
address locations. Table 6.2 describes the memory-addressing
capabilities of Intel processors.
Table 6.2 Intel Processor Memory-Addressing
Capabilities
Processor Family |
Address Bus |
Bytes |
Kilobytes |
Megabytes |
Gigabytes |
8088/8086 |
20-bit |
1,048,576 |
1,024 |
1 |
none |
286/386SX |
24-bit |
16,777,216 |
16,384 |
16 |
none |
386DX-Pentium Pro |
32-bit |
4,294,967,296 |
4,194,304 |
4,096 |
4 |
Pentium II |
36-bit |
68,719,476,736 |
67,108,864 |
65,536 |
64 |
The data bus and address bus are independent, and chip
designers can use whatever size they want for each. Usually,
however, chips with larger data buses have larger address
buses. The sizes of the buses can provide important
information about a chip's relative power, measured in two
important ways. The size of the data bus is an indication of
the information-moving capability of the chip, and the size of
the address bus tells you how much memory the chip can handle.
Processor Speed Ratings
A common misunderstanding about processors is their
different speed ratings. This section covers processor speed
in general and then provides more specific information about
Intel processors.
A computer system's clock speed is measured as a frequency,
usually expressed as a number of cycles per second. A crystal
oscillator controls clock speeds, using a sliver of quartz in
a small tin container. As voltage is applied to the quartz, it
begins to vibrate (oscillate) at a harmonic rate dictated by
the shape and size of the crystal (sliver). The oscillations
emanate from the crystal in the form of a current that
alternates at the harmonic rate of the crystal. This
alternating current is the clock signal. A typical computer
system runs millions of these cycles per second, so speed is
measured in megahertz (MHz). (One hertz is equal to one cycle
per second.)
NOTE: The hertz was named for the German
physicist Heinrich Rudolph Hertz. In 1885, Hertz confirmed
through experimentation the electromagnetic theory, which
states that light is a form of electromagnetic radiation and
is propagated as waves.
A single cycle is the smallest element of time for the
processor. Every action requires at least one cycle and
usually multiple cycles. To transfer data to and from memory,
for example, an 8086 chip needs four cycles plus wait states.
(A wait state is a clock tick in which nothing happens
to ensure that the processor isn't getting ahead of the rest
of the computer.) A 286 needs only two cycles plus any wait
states for the same transfer.
The time required to execute instructions also varies. The
original 8086 and 8088 processors take an average of 12 cycles
to execute a single instruction. The 286 and 386 processors
improve this rate to about 4.5 cycles per instruction; the 486
drops the rate further to two cycles per instruction. The
Pentium includes twin instruction pipelines and other
improvements that provide for operation at 1 cycle per average
instruction.
Different instruction execution times (in cycles) make it
difficult to compare systems based purely on clock speed, or
number of cycles per second. One reason the 486 is so fast is
that it has an average instruction-execution time of 2 clock
cycles. Therefore, a 100MHz Pentium is about equal to a 200MHz
486, which is about equal to a 400MHz 386 or 286, which is
about equal to a 1,000MHz 8088. As you can see, you have to be
careful in comparing systems based on pure MHz alone; many
other factors affect system performance.
How can two processors that run at the same clock rate
perform differently, with one running "faster" than the other?
The answer is simple: efficiency.
Intel has devised a specific series of benchmarks that can
be run against Intel chips to produce a relative gauge of
performance. It has recently been updated to reflect
performance on 32-bit systems, and is called the iCOMP 2.0
(intel COmparative Microprocessor Performance) index. Table
6.3 shows the relative power, or iCOMP 2.0 index, for several
processors.
Table 6.3 Intel iCOMP 2.0 Index Ratings
Processor |
iCOMP 2.0 Index |
Pentium 75 |
67 |
Pentium 100 |
90 |
Pentium 120 |
100 |
Pentium 133 |
111 |
Pentium 150 |
114 |
Pentium 166 |
127 |
Pentium 200 |
142 |
Pentium-MMX 166 |
160 |
Pentium-MMX 200 |
182 |
Pentium-MMX 233 |
203 |
Pentium Pro 180 |
197 |
Pentium Pro 200 |
220 |
Pentium II 233 |
267 |
Pentium II 266 |
303 |
Pentium II 300 |
N/A* |
* As of this writing, the Pentium II 300 has not yet
been rated. The iCOMP 2.0 index is derived from several
independent benchmarks and is a stable indication of relative
processor performance. The benchmarks balance integer with
floating point and multimedia performance.
Modern systems use a variable frequency synthesizer circuit
usually found in the main motherboard chipset to control the
motherboard speed and CPU speed. Most Pentium motherboards
will have 3 or 4 speed settings. The processors used today are
available in a variety of versions that run at different
frequencies based on a given motherboard speed. For example,
most of the Pentium chips run at a speed that is some multiple
of the true motherboard speed. For example, Pentium processors
and motherboards run at the speeds shown in Table 6.4.
Table 6.4 Intel Processor and Motherboard
Speeds
CPU Type/Speed |
CPU Clock |
Motherboard Speed |
Pentium 60 |
1x |
60 |
Pentium 66 |
1x |
66 |
Pentium 75 |
1.5x |
50 |
Pentium 90 |
1.5x |
60 |
Pentium 100 |
1.5x |
66 |
Pentium 120 |
2x |
60 |
Pentium 133 |
2x |
66 |
Pentium 150 |
2.5x |
60 |
Pentium/Pentium Pro/MMX 166 |
2.5x |
66 |
Pentium/Pentium Pro 180 |
3x |
60 |
Pentium/Pentium Pro/MMX 200 |
3x |
66 |
Pentium-MMX/Pentium II 233 |
3.5x |
66 |
Pentium II 266 |
4x |
66 |
Pentium II 300 |
4.5x |
66 |
If all other variables are equal--including the type of
processor, the number of wait states (empty cycles) added to
different types of memory accesses, and the width of the data
bus--you can compare two systems by their respective clock
rates. However, the construction and design of the memory
subsystem can have an enormous effect on a system's final
execution speed.
In building a processor, a manufacturer tests it at
different speeds, temperatures, and pressures. After the
processor is tested, it receives a stamp indicating the
maximum safe speed at which the unit will operate under the
wide variation of temperatures and pressures encountered in
normal operation. The rating system usually is simple. For
example, the top of the processor in one of my systems is
marked like this: A80486DX2-66 The A is Intel's indicator that
this chip has a Ceramic Pin Grid Array form factor, or an
indication of the physical packaging of the chip. The 80486DX2
is the part number, which identifies this processor as a
clock-doubled 486DX processor. The -66 at the end indicates
that this chip is rated to run at a maximum speed of 66MHz.
Because of the clock doubling, the maximum motherboard speed
is 33MHz. This chip would be acceptable for any application in
which the chip runs at 66MHz or slower. For example, you could
use this processor in a system with a 25MHz motherboard, in
which case the processor would happily run at 50MHz.
Most 486 motherboards also have a 40MHz setting, in which
case the DX2 would run at 80MHz internally. Because this is
14MHz beyond its rated speed, many would not work; or if they
worked at all, it would only be for a short time. On the other
hand, I have found that most of the newer chips marked with
-66 ratings seem to run fine (albeit somewhat hotter!) at the
40/80MHz settings. This is called overclocking, and can
end up being a simple, cost-effective way to speed up your
system. However, I would not recommend this for
mission-critical applications where the system reliability is
of the utmost importance, because a system pushed beyond
specification like this can often exhibit erratic behavior
under stress.
One good source of online overclocking information is
located at
http://www.sysopt.com/overc.html
It includes, among other things, fairly thorough
overclocking FAQs, and an ongoing survey of users that have
successfully (and sometimes unsuccessfully) overclocked their
CPUs.
Sometimes, however, the markings don't seem to indicate the
speed directly. In the older 8086, for example, -3 translates
to 6MHz operation. This marking scheme is more common in some
of the older chips manufactured before some of the marking
standards used today were standardized.
A manufacturer sometimes places the CPU under a heat sink,
which prevents you from reading the rating printed on the
chip. (A heat sink is a metal device that draws heat
away from an electronic device.) Most of the processors
running at 50MHz and higher should have a heat sink installed
to prevent the processor from overheating.
Intel Processors
PC-compatible computers use processors manufactured
primarily by Intel. Some other companies, such as Cyrix and
AMD, have reverse-engineered the Intel processors and made
their own compatible versions. IBM also manufactures
processors for some of its own systems as well as for
installation in boards and modules sold to others. The x86
series of IBM microprocessors was developed in conjunction
with Cyrix, and is essentially identical to that company's
popular 6x86 units.
Knowing the processors used in a system can be very helpful
in understanding the capabilities of the system, as well as in
servicing it. To fully understand the capabilities of a system
and perform any type of servicing, you must know at least the
type of processor that the system uses.
8088 and 8086 Processors
The original IBM PC used an Intel CPU chip called the 8088.
The original 8088 CPU chip ran at 4.77MHz, which means that
the computer's circuitry drove the CPU at a rate of 4,770,000
ticks, or computer heartbeats, per second. Each tick
represents a small amount of work--the CPU executing an
instruction or part of an instruction--rather than a period of
elapsed time.
Computer users sometimes wonder why a 640K
conventional-memory barrier exists if the 8088 chip can
address 1M of memory. The conventional-memory barrier exists
because IBM reserved 384K of the upper portion of the 1,024K
(1M) address space of the 8088 for use by adapter cards and
system BIOS (a computer program permanently "burned into" the
ROM chips in the PC). The lower 640K is the conventional
memory in which DOS and software applications execute.
In 1976, before the 8088 chip, Intel made a slightly faster
chip named the 8086. The 8086, which was one of the first
16-bit chips on the market, addressed 1M of RAM. The design
failed to catch on, however, because both the chip and a
motherboard designed for the chip were costly. The cost was
high because the system needed a 16-bit data bus rather than
the less expensive 8-bit bus. Systems available at that time
were 8-bit, and users apparently weren't willing to pay for
the extra performance of the full 16-bit design. Therefore,
Intel introduced the 8088 in 1978. Both the 8086 and the 8088
CPU chips are quite slow by today's standards.
80186 and 80188 Processors
After Intel produced the 8086 and 8088 chips, it turned its
sights toward producing a more powerful chip with an increased
instruction set. The company's first efforts along this
line--the 80186 and 80188--were unsuccessful. But
incorporating system components into the CPU chip was an
important idea for Intel, because it led to faster, better
chips, such as the 286.
The relationship between the 80186 and 80188 is the same as
that of the 8086 and 8088; one is a slightly more advanced
version of the other. Compared CPU to CPU, the 80186 is almost
the same as the 8088 and has a full 16-bit design. The 80188
(like the 8088) is a hybrid chip that compromises the 16-bit
design with an 8-bit external communications interface. The
advantage of the 80186 and 80188 is that they combine on a
single chip 15 to 20 of the 8086-8088 series system
components, a fact that can greatly reduce the number of
components in a computer design. The 80186 and 80188 chips are
used for highly intelligent peripheral adapter cards, such as
network adapters.
286 Processors
The Intel 80286 (normally abbreviated as 286) processor did
not suffer from the compatibility problems that damned the
80186 and 80188. The 286 chip, introduced in 1981, is the CPU
behind the IBM AT. Other computer makers manufactured what
came to be known as IBM clones, many of these manufacturers
calling their systems AT-compatible or AT-class computers.
When IBM developed the AT, it selected the 286 as the basis
for the new system because the chip provided compatibility
with the 8088 used in the PC and the XT, which means that
software written for those chips should run on the 286. The
286 chip is many times faster than the 8088 used in the XT,
and it offered a major performance boost to PCs used in
businesses. The processing speed, or throughput, of the
original AT (which ran at 6 MHz) was five times greater than
that of the PC running at 4.77 MH Hz.
For several reasons, 286 systems are faster than their
predecessors. The main reason is that 286 processors are much
more efficient in executing instructions. An average
instruction takes 12 clock cycles on the 8086 or 8088, but an
average 4.5 cycles on the 286 processor. Additionally, the 286
chip can handle up to 16 bits of data at a time through an
external data bus twice the size of the 8088.
The 286 chip has two modes of operation: real mode and
protected mode. The two modes are distinct enough to make the
286 resemble two chips in one. In real mode, a 286 acts
essentially the same as an 8086 chip and is fully object-code
compatible with the 8086 and 8088. (A processor with
object-code compatibility can run programs written for another
processor without modification and execute every system
instruction in the same manner.)
In the protected mode of operation, the 286 was truly
something new. In this mode, a program designed to take
advantage of the chip's capabilities believes that it has
access to 1G of memory (including virtual memory). The 286
chip, however, can address only 16M of hardware memory. A
significant failing of the 286 chip is that it cannot switch
from protected mode to real mode without a hardware reset (a
warm reboot) of the system. (It can, however, switch from real
mode to protected mode without a reset.) A major improvement
of the 386 over the 286 is that software can switch the 386
from real mode to protected mode, and vice versa.
Only a small amount of software that took advantage of the
286 chip was sold until Windows 3.0 offered Standard Mode for
286 compatibility; and by that time, the hottest-selling chip
was the 386. Still, the 286 was Intel's first attempt to
produce a CPU chip that supported multitasking, in which
multiple programs run at the same time. The 286 is designed so
that if one program locks up or fails, the entire system
doesn't need a warm boot (reset) or cold boot (power off or
on). Theoretically, what happens in one area of memory doesn't
affect other programs. Before multitasked programs are "safe"
from one another, however, the 286 chip (and subsequent chips)
needs an operating system that works cooperatively with the
chip to provide such protection.
386 Processors
The Intel 80386 (normally abbreviated as 386) caused quite
a stir in the PC industry because of the vastly improved
performance that it brought to the personal computer. Compared
with 8088 and 286 systems, the 386 chip offers greater
performance in almost all areas of operation.
The 386 is a full 32-bit processor optimized for high-speed
operation and multitasking operating systems. Intel introduced
the chip in 1985, but the 386 appeared in the first systems in
late 1986 and early 1987. The Compaq Deskpro 386 and systems
made by several other manufacturers introduced the chip;
somewhat later, IBM used the chip in its PS/2 Model 80. For
several years, the 386 chip rose in popularity, which peaked
around 1991. Since then, the popularity of the 386 has waned
to the point that it is virtually nonexistent on the market
today.
The 386 can execute the real-mode instructions of an 8086
or 8088, but in fewer clock cycles. The 386 was as efficient
as the 286 in executing instructions, which means that the
average instruction takes about 4.5 clock cycles. In raw
performance, therefore, the 286 and 386 actually seemed to be
about at equal clock rates. Many 286 system manufacturers were
touting their 16MHz and 20 MHz 286 systems as being just as
fast as 16MHz and 20MHz 386 systems, and they were right! The
386 offered greater performance in other ways, mainly due to
additional software capability (modes) and a greatly enhanced
Memory Management Unit (MMU).
The 386 can switch to and from protected mode under
software control without a system reset, a capability that
makes using protected mode more practical. In addition, the
386 has a new mode, called virtual real mode, which enables
several real-mode sessions to run simultaneously under
protected mode.
Other than raw speed, probably the most important feature
of this chip is its available modes of operation, which are:
- Real mode
- Protected mode
- Virtual real mode (sometimes called virtual 86 mode)
Real mode on a 386 chip, as on a 286 chip, is
8086-compatible mode. In real mode, the 386 essentially is a
much faster "turbo PC" with 640K of conventional memory, just
like systems based on the 8088 chip. DOS and any software
written to run under DOS requires this mode to run.
The protected mode of the 386 is fully compatible with the
protected mode of the 286. The protected mode for both chips
often is called their native mode of operation, because these
chips are designed for advanced operating systems such as OS/2
and Windows NT, which run only in protected mode. Intel
extended the memory-addressing capabilities of 386 protected
mode with a new MMU that provides advanced memory paging and
program switching. These features are extensions of the 286
type of MMU, so the 386 remains fully compatible with the 286
at the system-code level.
The 386 chip's virtual real mode is new. In virtual real
mode, the processor can run with hardware memory protection
while simulating an 8086's real-mode operation. Multiple
copies of DOS and other operating systems, therefore, can run
simultaneously on this processor, each in a protected area of
memory. If the programs in one segment crash, the rest of the
system is protected. Software commands can reboot the blown
partition.
Numerous variations of the 386 chip exist, some of which
are less powerful and some of which are less power-hungry. The
following sections cover the members of the 386-chip family
and their differences.
386DX Processors
The 386DX chip was the first of the 386-family members that
Intel introduced. The 386 is a full 32-bit processor with
32-bit internal registers, a 32-bit internal data bus, and a
32-bit external data bus. The 386 contains 275,000 transistors
in a VLSI (Very Large Scale Integration) circuit. The chip
comes in a 132-pin package and draws approximately 400
milliamperes (ma), which is less power than even the 8086
requires. The 386 has a smaller power requirement because it
is made of CMOS (Complementary Metal Oxide Semiconductor)
materials. The CMOS design enables devices to consume
extremely low levels of power.
The Intel 386 chip was available in clock speeds ranging
from 16MHz to 33MHz; other manufacturers, primarily AMD and
Cyrix, offered comparable versions with speeds up to 40MHz. In
general, these "clones" were fully functional with Intel
chips, meaning that they could run any software designed for
the Intel 386 chips.
The 386DX can address 4G of physical memory. Its built-in
virtual memory manager enables software designed to take
advantage of enormous amounts of memory to act as though a
system has 64T of memory. (A terabyte (T) is
1,099,511,627,776 bytes of memory.)
386SX Processors
The 386SX, code-named the P9 chip during its development,
was designed for systems designers who were looking for 386
capabilities at 286-system prices. Like the 286, the 386SX is
restricted to only 16 bits when communicating with other
system components such as memory. Internally, however, the
386SX is identical to the DX chip; the 386SX has 32-bit
internal registers, and can therefore run 32-bit software. The
386SX uses a 24-bit memory-addressing scheme like that of the
286, rather than the full 32-bit mem-ory address bus of the
standard 386. The 386SX, therefore, can address a maximum 16M
of physical memory rather than the 4G of physical memory that
the 386DX can address. Before it was discontinued, the 386SX
was available in clock speeds ranging from 16 to 33MHz.
The 386SX signaled the end of the 286 because of the 386SX
chip's superior MMU and the addition of the virtual real mode.
Under a software manager such as Windows or OS/2, the 386SX
can run numerous DOS programs at the same time. The capability
to run 386-specific software is another important advantage of
the 386SX over any 286 or older design. For example, Windows
3.1 runs nearly as well on a 386SX as it does on a 386DX.
NOTE: One common fallacy about the 386SX is
that you can plug one into a 286 system and give the system
386 capabilities. This is not true; the 386SX chip is not
pin-compatible with the 286 and does not plug into the same
socket. Several upgrade products, however, have been
designed to adapt the chip to a 286 system. In terms of raw
speed, converting a 286 system to a 386 CPU chip results in
little performance gain because 286 motherboards are built
with a restricted 16-bit interface to memory and
peripherals. A 16MHz 386SX is not markedly faster than a
16MHz 286, but it does offer improved memory-management
capabilities on a motherboard designed for it, as well as
the capability to run 386-specific software.
386SL Processors
Another variation on the 386 chip is the 386SL. This
low-power CPU has the same capabilities as the 386SX, but it
is designed for laptop systems in which low power consumption
is needed. The SL chips offer special power-management
features that are important to systems that run on batteries.
The SL chip offers several sleep modes that conserve
power.
The chip includes an extended architecture that includes a
System Management Interrupt (SMI), which provides
access to the power-management features. Also included in the
SL chip is special support for LIM (Lotus Intel Microsoft)
expanded memory functions and a cache controller. The cache
controller is designed to control a 16-64K external processor
cache.
These extra functions account for the higher transistor
count in the SL chips (855,000) compared with even the 386DX
processor (275,000). The 386SL is available in 25MHz clock
speed.
Intel offered a companion to the 386SL chip for laptops
called the 82360SL I/O subsystem. The 82360SL provides many
common peripheral functions, such as serial and parallel
ports, a direct memory access (DMA) controller, an interrupt
controller, and power-management logic for the 386SL
processor. This chip subsystem works with the processor to
provide an ideal solution for the small size and low
power-consumption requirements of portable and laptop systems.
486 Processors
In the race for more speed, the Intel 80486 (normally
abbreviated as 486) was another major leap forward. The
additional power available in the 486 fueled tremendous growth
in the software industry. Tens of millions of copies of
Windows, and millions of copies of OS/2, have been sold
largely because the 486 finally made the graphical user
interface (GUI) of Windows and OS/2 a realistic option for
people who work on their computers every day.
Four main features make a given 486 processor roughly twice
as fast as an equivalent MHz 386 chip. These features are:
- Reduced instruction-execution time. Instructions
in the 486 take an average of only two clock cycles to
complete, compared with an average of more than four cycles
on the 386.
- Internal (Level 1) cache. The built-in cache has
a hit ratio of 90 to 95 percent, which describes how often
zero-wait-state read operations will occur. External caches
can improve this ratio further.
- Burst-mode memory cycles. A standard 32-bit
(4-byte) memory transfer takes two clock cycles. After a
standard 32-bit transfer, more data up to the next 12 bytes
(or three transfers) can be transferred with only one cycle
used for each 32-bit (4-byte) transfer. Thus, up to 16 bytes
of contiguous, sequential memory data can be transferred in
as little as five cycles instead of eight cycles or more.
This effect can be even greater when the transfers are only
8 bits or 16 bits each.
- Built-in (synchronous) enhanced math coprocessor
(some versions). The math co- processor runs
synchronously with the main processor and executes math
instructions in fewer cycles than previous designs did. On
average, the math coprocessor built into the DX-series chips
provides two to three times greater math performance than an
external 387 chip.
The 486 chip is about twice as fast as the 386, which means
that a 386DX-40 is about as fast as a 486SX-20. This made the
486 a much more desirable option, primarily because it could
more easily be upgraded to a DX2 or DX4 processor at a later
time. You can see why the arrival of the 486 rapidly killed
off the 386 in the marketplace.
Before the 486, many people avoided GUIs because they
didn't have time to sit around waiting for the hourglass,
which indicates that the system is performing
behind-the-scenes operations that the user cannot interrupt.
The 486 changed that situation. Many people believe that the
486 CPU chip spawned the widespread acceptance of GUIs.
With the release of its faster Pentium CPU chip, Intel
began to cut the price of the 486 line to entice the industry
to shift over to the 486 as the mainstream system. Intel later
did the same thing with its Pentium chips, spelling the end of
the 486 line. The 486 is now offered by Intel only for use in
embedded microprocessor applications, used primarily in
expansion cards.
Most of the 486 chips were offered in a variety of maximum
speed ratings, varying from 16MHz all the way up to 120MHz.
Additionally, 486 processors have slight differences in
overall pin configurations. The DX, DX2, and SX processors
have a virtually identical 168-pin configuration, whereas the
OverDrive chips have either the standard 168-pin configuration
or a specially modified 169-pin OverDrive (sometimes also
called 487SX) configuration. If your motherboard has two
sockets, the primary one likely supports the standard 168-pin
configuration, and the secondary (OverDrive) socket supports
the 169-pin OverDrive configuration. Most newer motherboards
with a single ZIF (Zero Insertion Force) socket support any of
the 486 processors except the DX4. The DX4 is different
because it requires 3.3v to operate instead of 5v, like most
other chips up to that time.
A processor rated for a given speed always functions at any
of the lower speeds. A 100MHz-rated 486DX4 chip, for example,
runs at 75MHz if it is plugged into a 25MHz motherboard. Note
that the DX2/OverDrive processors operate internally at two
times the motherboard clock rate, whereas the DX4 processors
operate at two, two-and-a-half, or three times the motherboard
clock rate. Table 6.5 shows the different speed combinations
that can result from using the DX2 or DX4 processors with
different motherboard clock speeds.
Table 6.5 Intel DX2 and DX4 Operating Speeds
versus Motherboard Clock Speeds
Motherboard Clock Speed |
16MHz |
20MHz |
25MHz |
33MHz |
40MHz |
50MHz |
DX2 processor speed |
32MHz |
40MHz |
50MHz |
66MHz |
80MHz |
N/A |
DX4 (2x mode) speed |
32MHz |
40MHz |
50MHz |
66MHz |
80MHz |
100MHz |
DX4 (2.5x mode) speed |
40MHz |
50MHz |
63MHz |
83MHz |
100MHz |
N/A |
DX4 (3x mode) speed |
48MHz |
60MHz | <TD
ALIGN |