You are on page 1of 12


A central processing unit (CPU) is the electronic circuitry within a computer that carries out the instructions of
a computer program by performing the basic arithmetic, logical, control and input/output (I/O) operations
specified by the instructions. The term has been used in the computer industry at least since the early 1960s.

Traditionally, the term "CPU" refers to a processor, more specifically to its processing unit and control unit (CU),

distinguishing these core elements of a computer from external components such as main memory and I/O
The form, design and implementation of CPUs have changed over the course of their history, but their
fundamental operation remains almost unchanged. Principal components of a CPU include the arithmetic logic
unit (ALU) that performs arithmetic and logic operations, processor registers that supply operands to the ALU and
store the results of ALU operations, and a control unit that orchestrates the fetching (from memory) and execution
of instructions by directing the coordinated operations of the ALU, registers and other components.
Most modern CPUs are microprocessors, meaning they are contained on a single integrated circuit (IC) chip. An
IC that contains a CPU may also contain memory, peripheral interfaces, and other components of a computer;
such integrated devices are variously called microcontrollers or systems on a chip (SoC). Some computers
employ a multi-core processor, which is a single chip containing two or more CPUs called "cores"; in that context,
single chips are sometimes referred to as "sockets". [3] Array processors or vector processors have multiple
processors that operate in parallel, with no unit considered central. There also exists the concept of Virtual
CPUs which are an abstraction of dynamical aggregated computational resources

A microprocessor is a computer processor which incorporates the functions of a computer's central processing
unit (CPU) on a single integrated circuit (IC),[1] or at most a few integrated circuits.[2] The microprocessor is a
multipurpose, clock driven, register based, programmable electronic device which accepts digital or binary data
as input, processes it according to instructions stored in its memory, and provides results as output.
Microprocessors contain both combinational logic and sequential digital logic. Microprocessors operate on
numbers and symbols represented in the binary numeral system.
The integration of a whole CPU onto a single chip or on a few chips greatly reduced the cost of processing
power. Integrated circuit processors are produced in large numbers by highly automated processes resulting in a
low per unit cost. Single-chip processors increase reliability as there are many fewer electrical connections to fail.
As microprocessor designs get faster, the cost of manufacturing a chip (with smaller components built on a
semiconductor chip the same size) generally stays the same.













many medium- and small-scale integrated circuits. Microprocessors combined this into one or a few large-

scale ICs. Continued increases in microprocessor capacity have since rendered other forms of computers almost
completely obsolete (see history of computing hardware), with one or more microprocessors used in everything
from the smallest embedded systems and handheld devices to the largest mainframes and supercomputers.

The Intel 8085 ("eighty-eighty-five") is an 8-bit microprocessor produced by Intel and introduced in 1976.[1] It is
software-binary compatible with the more-famous Intel 8080 with only two minor instructions added to support its
added interrupt and serial input/output features. However, it requires less support circuitry, allowing simpler and
less expensive microcomputer systems to be built.
The "5" in the part number highlighted the fact that the 8085 uses a single +5-volt (V) power supply by
using depletion-mode transistors, rather than requiring the +5 V, 5 V and +12 V supplies needed by the 8080.
This capability matched that of the competing Z80, a popular 8080-derived CPU introduced the year before.
These processors could be used in computers running the CP/M operating system.
The 8085 is supplied in a 40-pin DIP package. To maximise the functions on the available pins, the 8085 uses a
multiplexed address/data bus. However, an 8085 circuit requires an 8-bit address latch, so Intel manufactured
several support chips with an address latch built in. These include the 8755, with an address latch, 2 KB of
EPROM and 16 I/O pins, and the 8155 with 256 bytes of RAM, 22 I/O pins and a 14-bit programmable
timer/counter. The multiplexed address/data bus reduced the number of PCB tracks between the 8085 and such
memory and I/O chips.
Both the 8080 and the 8085 were eclipsed by the Zilog Z80 for desktop computers, which took over most of the
CP/M computer market, as well as a share of the booming home-computer market in the early-to-mid-1980s.
The 8085 had a long life as a controller, no doubt thanks to its built-in serial I/O and 5 prioritized interrupts,
arguably microcontroller-like features that the Z80 CPU did not have. Once designed into such products as
the DECtape controller and the VT102 video terminal in the late 1970s, the 8085 served for new production
throughout the lifetime of those products. This was typically longer than the product life of desktop computers

The 8085 is a conventional von Neumann design based on the Intel 8080. Unlike the 8080 it does not multiplex
state signals onto the data bus, but the 8-bit data bus is instead multiplexed with the lower 8-bits of the 16bit address bus to limit the number of pins to 40. State signals are provided by dedicated bus control signal pins
and two dedicated bus state ID pins named S0 and S1. Pin 40 is used for the power supply (+5 V) and pin 20 for
ground. Pin 39 is used as the Hold pin. Pins 15 to 8 are generally used for address buses. [clarification



processor was designed using nMOS circuitry, and the later "H" versions were implemented in Intel's enhanced
nMOS process called HMOS ("High-performance MOS"), originally developed for fast static RAM products. Only
a single 5 volt power supply is needed, like competing processors and unlike the 8080. The 8085 uses
approximately 6,500 transistors.[2]
The 8085 incorporates the functions of the 8224 (clock generator) and the 8228 (system controller) on chip,
increasing the level of integration. A downside compared to similar contemporary designs (such as the Z80) is the
fact that the buses require demultiplexing; however, address latches in the Intel 8155, 8355, and 8755 memory
chips allow a direct interface, so an 8085 along with these chips is almost a complete system.
The 8085 has extensions to support new interrupts, with three maskable vectored interrupts (RST 7.5, RST 6.5
and RST 5.5), one non-maskable interrupt (TRAP), and one externally serviced interrupt (INTR). Each of these
five interrupts has a separate pin on the processor, a feature which permits simple systems to avoid the cost of a
separate interrupt controller. The RST 7.5 interrupt is edge triggered (latched), while RST 5.5 and 6.5 are levelsensitive. All interrupts are enabled by the EI instruction and disabled by the DI instruction. In addition, the SIM
(Set Interrupt Mask) and RIM (Read Interrupt Mask) instructions, the only instructions of the 8085 that are not
from the 8080 design, allow each of the three maskable RST interrupts to be individually masked. All three are
masked after a normal CPU reset. SIM and RIM also allow the global interrupt mask state and the three
independent RST interrupt mask states to be read, the pending-interrupt states of those same three interrupts to
be read, the RST 7.5 trigger-latch flip-flop to be reset (cancelling the pending interrupt without servicing it), and
serial data to be sent and received via the SOD and SID pins, respectively, all under program control and
independently of each other.

SIM and RIM each execute in 4 clock cycles (T states), making it possible to sample SID and/or toggle SOD
considerably faster than it is possible to toggle or sample a signal via any I/O or memory-mapped port, e.g. one
of the port of an 8155. (In this way, SID can be compared to the SO ["Set Overflow"] pin of the 6502 CPU
contemporary to the 8085.)
Like the 8080, the 8085 can accommodate slower memories through externally generated wait states (pin 35,
READY), and has provisions for Direct Memory Access (DMA) using HOLD and HLDA signals (pins 39 and 38).
An improvement over the 8080 is that the 8085 can itself drive a piezoelectric crystal directly connected to it, and
a built-in clock generator generates the internal high amplitude two-phase clock signals at half the crystal
frequency (a 6.14 MHz crystal would yield a 3.07 MHz clock, for instance). The internal clock is available on an
output pin, to drive peripheral devices or other CPUs in lock-step synchrony with the CPU from which the signal
is output. The 8085 can also be clocked by an external oscillator (making it feasible to use the 8085 in
synchronous multi-processor systems using a system-wide common clock for all CPUs, or to synchronize the
CPU to an external time reference such as that from a video source or a high-precision time reference).
The 8085 is a binary compatible follow up on the 8080. It supports the complete instruction set of the 8080, with
exactly the same instruction behavior, including all effects on the CPU flags (except for the AND/ANI operation,
which sets the AC flag differently).[3] This means that the vast majority of object code (any program image in ROM
or RAM) that runs successfully on the 8080 can run directly on the 8085 without translation or modification.
(Exceptions include timing-critical code and code that is sensitive to the aforementioned difference in the AC flag
setting or differences in undocumented CPU behavior.) 8085 instruction timings differ slightly from the 8080
some 8-bit operations, including INR, DCR, and the heavily used MOV r,r' instruction, are 1 clock cycle faster, but
instructions that involve 16-bit operations, including stack operations (which increment or decrement the 16-bit
SP register) generally 1 cycle slower. It is of course possible that the actual 8080 and/or 8085 differs from the
published specifications, especially in subtle details. (The same is not true of the Z80.) As mentioned already,
only the SIM and RIM instructions were new to the 8085.[4]

Programming model

The processor has seven 8-bit registers accessible to the programmer, named A, B, C, D, E, H, and L, where A is
also known as the accumulator. The other six registers can be used as independent byte-registers or as three 16bit register pairs, BC, DE, and HL (or B, D, H, as referred to in Intel documents), depending on the particular
instruction. Some instructions use HL as a (limited) 16-bit accumulator. As in the 8080, the contents of the
memory address pointed to by HL can be accessed as pseudo register M. It also has a 16-bit program
counter and a 16-bit stack pointer to memory (replacing the 8008's internal stack). Instructions such as PUSH
PSW, POP PSW affect the Program Status Word (accumulator and flags). The accumulator stores the results of
arithmetic and logical operations, and the flags register bits (sign, zero, auxiliary carry, parity, and carry flags) are
set or cleared according to the results of these operations. The sign flag is set if the result has a negative sign
(i.e. it is set if bit 7 of the accumulator is set). The auxiliary or half carry flag is set if a carry-over from bit 3 to bit 4
occurred. The parity flag is set according to the parity (odd or even) of the accumulator. The zero flag is set if the

result of the operation was 0. Lastly, the carry flag is set if a carry-over from bit 7 of the accumulator (the MSB)

The Intel 80286[1] (also marketed as the iAPX 286[2] and often called Intel 286) is a 16-bit microprocessor that was














multiplexed, address and data buses and also the first with memory management and wide protection abilities.
The 80286 used approximately 134,000 transistors in its original nMOS (HMOS) incarnation and, just like the
contemporary 80186,[3] it









earlier Intel

8086 and 8088 processors.[4]

The 80286 was employed for the IBM PC/AT, introduced in 1984, and then widely used in most PC/AT
compatible computers until the early 1990s. Although now long since obsolete for use in personal computers,
80286 based processors are still widely[citation needed] used in embedded microcontroller applications.[5]

History and performance

Intel's first 80286 chips were specified for a maximum clockrate of 4, 6 or 8 MHz and later releases for
12.5 MHz. AMD and Harris later produced 20 MHz and 25 MHz parts, respectively. Intersil and Fujitsu also
designed fully static CMOS versions of Intel's original depletion-load nMOS implementation, largely aimed at
battery powered devices.
On average, the 80286 was reportedly measured to have a speed of about 0.21 instructions per clock on "typical"
programs,[6] although it could be significantly faster on optimized code and in tight loops as many instructions
could execute in 2 clock cycles. The 6 MHz, 10 MHz and 12 MHz models were reportedly measured to operate at
0.9 MIPS, 1.5 MIPS and 2.66 MIPS respectively.[7]
The later E-stepping level of the 80286 was free of the several significant errata that caused problems for
programmers and operating system writers in the earlier B-step and C-step CPUs (common in the AT and AT


Protected mode
The 286 was the first of the x86 CPU family to support protected mode. In addition, it was the first commercially
available microprocessor with on-chip MMU capabilities. (Systems using the contemporaneous Motorola
68010 and NS320xx could be equipped with an optional MMU controller.) This would allow IBM compatibles to











the Unix-

dominated server/workstation market.

Several additional instructions were introduced in protected mode of 80286, which are helpful for multitasking
operating systems.
Another important feature of 80286 is Prevention of Unauthorized Access. This is achieved by:

Forming different segments for data, code, and stack, and preventing their overlapping

Assigning Privilege levels to each segment. Segment with lower privilege level cannot access the
segment with higher privilege level.

In 80286 (and in its co-processor Intel 80287), arithmetic operations can be performed on the following different
types of numbers:

unsigned packed decimal,

unsigned binary,

unsigned unpacked decimal,

signed binary, and

floating point numbers.

By design, the 286 could not revert from protected mode to the basic 8086-compatible "real mode" without a
hardware-initiated reset. In the PC/AT introduced in 1984, IBM added external circuitry as well as specialized
code in the ROM BIOS to enable special series of program instructions to cause the reset, allowing real-mode
reentry (while retaining active memory and control). Though it worked correctly, the method imposed a huge
performance penalty.
In theory, real-mode applications could be directly executed in 16-bit protected mode if certain rules were
followed; however, as many DOS programs broke those rules, protected mode was not widely used until the
appearance of its successor, the 32-bit Intel 80386, which was designed to go back and forth between modes
easily. When Intel designed the 286, it was not designed to be able to multitask real-mode applications; real
mode was intended to be a simple way for a bootstrap loader to prepare the system and then switch to protected
To support protected mode, new instructions have been added: ARPL, VERR, VERW, LAR, LSL, SMSW, SGDT,

The Intel 80386 ("eight-oh-three-eighty-six"),



as i386 or

just 386,



bit microprocessor introduced in 1985. The first versions had 275,000 transistors and were the CPU of


many workstations and high-end personal computers of the time. As the original implementation of the 32bit extension of the 80286 architecture,[3] the 80386 instruction set, programming model, and binary encodings
are still the common denominator for all 32-bit x86 processors, which is termed the i386-architecture, x86, or IA32, depending on context.
The 32-bit 80386 can correctly execute most code intended for the earlier 16-bit processors such
as 8088 and 80286 that were ubiquitous in early PCs. (Following the same tradition, modern 64-bit x86
processors are able to run most programs written for older x86 CPUs, all the way back to the original 16bit 8086 of 1978.) Over the years, successively newer implementations of the same architecture have become
several hundreds of times faster than the original 80386 (and thousands of times faster than the 8086). [4]A
33 MHz 80386 was reportedly measured to operate at about 11.4 MIPS.
The 80386 was introduced in October 1985, while manufacturing of the chips in significant quantities commenced
in June 1986.[6][7]Mainboards for 80386-based computer systems were cumbersome and expensive at first, but
manufacturing was rationalized upon the 80386's mainstream adoption. The first personal computer to make use
of the 80386 was designed and manufactured by Compaq[8] and marked the first time a fundamental component
in the IBM PC compatible de facto-standard was updated by a company other than IBM.
In May 2006, Intel announced that 80386 production would stop at the end of September 2007. [9] Although it had
long been obsolete as a personal computer CPU, Intel and others had continued making the chip for embedded
systems. Such systems using an 80386 or one of many derivatives are common in aerospace technology and
electronic musical instruments, among others. Some mobile phones also used (later fully static CMOS variants
of) the 80386 processor, such as BlackBerry 950[10] and Nokia 9000 Communicator.


The processor was a significant evolution in the x86 architecture, and extended a long line of processors that
stretched back to the Intel 8008. The predecessor of the 80386 was the Intel 80286, a 16-bit processor with
a segment-based memory management and protection system. The 80386 added a 32-bit architecture and
a paging translation unit, which made it much easier to implement operating systems that used virtual memory. It
also offered support for register debugging.
The 80386 featured three operating modes: real mode, protected mode and virtual mode. The protected
mode which debuted in the 286 was extended to allow the 386 to address up to 4 GB of memory. The all
new virtual 8086 mode (or VM86) made it possible to run one or more real mode programs in a protected
environment, although some programs were not compatible.
The ability for a 386 to be set up to act like it had a flat memory model in protected mode despite the fact that it
uses a segmented memory model in all modes would arguably be the most important feature change for the x86
processor family until AMD released x86-64 in 2003.
Several new instructions have been added to 386: BSF, BSR, BT, BTS, BTR, BTC, CDQ, CWDE, LFS, LGS,
Two new segment registers have been added (FS and GS) for general purpose programs, single Machine Status
Word of 286 grew into eight control registers CR0-CR7. Debug registers DR0-DR7 were added for hardware
breakpoints. New forms of MOV instruction are used to access them.
Chief architect in the development of the 80386 was John H. Crawford.[11] He was responsible for extending the
80286 architecture and instruction set to 32-bit, and then led the microprogram development for the 80386 chip.
The 80486 and P5 Pentium line of processors were descendants of the 80386 design

The Intel 486 ("four-eighty-six"), also known as the i486 or 80486 is a higher performance follow-up to the Intel
80386microprocessor. The 486 was introduced in 1989 and was the first tightly [a] pipelined x86 design as well as
the first x86 chip to use more than a million transistors, due to a large on-chip cache and an integrated floatingpoint unit. It represents a fourth generation of binary compatible CPUs since the original 8086 of 1978.
A 50 MHz 486 executes around 40 million instructions per second on average and is able to reach 50 MIPS peak
The i486 does not have the usual 80-prefix because of a court ruling that prohibits trademarking numbers (such
as 80486). Later, with the introduction of the Pentium brand, Intel began branding its chips with words rather than

Differences between i386 and i486

An 8 kB on-chip (level 1) SRAM cache stores the most recently used instructions and data (16 kB
and/or write-back on some later models). The 386 had no such internal cache but supported a slower offchip cache (which was not a level 2 cache because there was no internal level 1 cache on the 80386).

Tightly coupled pipelining completes a simple instruction like ALU reg,reg or ALU reg,im every clock
cycle (after a latency of several cycles). The 386 needed two clock cycles to do this.

Integrated FPU (disabled or absent in SX models) with a dedicated local bus; together with faster
algorithms on more extensive hardware than in the i387, this performs floating point calculations faster
compared to the i386+i387 combination.

Improved MMU performance.


Just as in the 80386, a simple flat 4 GB memory model could be implemented by setting all "segment selector"
registers to a neutral value in protected mode, or setting (the same) "segment registers" to zero in real mode, and
using only the 32-bit "offset registers" (x86-terminology for general CPU registers used as address registers) as a

linear 32-bit virtual address bypassing the segmentation logic. Virtual addresses were then normally mapped
onto physical addresses by the paging system except when it was disabled. (Real mode had
no virtual addresses.) Just as with the 80386, circumventing memory segmentation could substantially improve
performance in some operating systems and applications.
On a typical PC motherboard, either four matched 30-pin (8-bit) SIMMs or one 72-pin (32-bit) SIMM per bank
were required to fit the 486's 32-bit data bus. The address bus used 30-bits (A31..A2) complemented by four
byte-select pins (instead of A0,A1) to allow for any 8/16/32-bit selection. This meant that the limit of directly
addressable physical memory was 4 gigabytes as well,(230 32-bit words = 232 8-bit words).

Pentium is a brand used for a series of x86-compatible microprocessors produced by Intel since 1993. In its
current form, Pentium processors are considered entry-level products that Intel rates as "two stars", [1] meaning
that they are above the low-end Atom and Celeron series but below the faster Core i3, i5 and i7 lines as well as
the high-end Xeon processors.
The current Pentium processors have only the name in common with the early ones, and are in fact based on
the Intel Core architecture, typically implemented by lowering the clock frequency and disabling some features,
such as hyper-threading, virtualization and, partly, L3 cache.
The name Pentium is originally derived from the Greek word pente, meaning "five" (a reference to Intel's fifthgeneration microarchitecture employed on the first Pentium processors), with the Latin ending -ium.
The original Pentium branded CPUs were expected to be named 586 or i586, to follow the naming convention of
previous generations (286, i386, i486). However, as the company wanted to prevent their competitors from
branding their processors with similar names (as AMD had done with their Am486), Intel attempted to file
a trademark on the name in the United States, only to be denied because a series of numbers was not
considered distinct.[3]
Following Intel's previous series of 8086, 80186, 80286, 80386, and 80486 microprocessors, the company's first
P5-based microprocessor was released as the original Intel Pentium on March 22, 1993. Marketing firm Lexicon
Branding was hired to coin a name for the new processor. The suffix -ium was chosen as it could connote a
fundamental ingredient of a computer, like a chemical element,[4]while the prefix pent- could refer to the fifth
generation of x86.[3]
Due to its success, the Pentium brand would continue through several generations of high-end processors. In
2006, the name briefly disappeared from Intel's roadmaps,[5][6] only to re-emerge in 2007.[7]
In 1998, Intel introduced the Celeron[8] brand for low-priced microprocessors. With the 2006 introduction of
the Intel Core brand as the company's new flagship line of processors, the Pentium series was to be
discontinued. However, due to a demand for mid-range dual-core processors, the Pentium brand was repurposed to be Intel's mid-range processor series, in between the Celeron and Core series, continuing with
the Pentium Dual-Core line.

Intel Core
Intel Core is Intel's brand name for various mid-range to high-end home and business microprocessors. These
processors displaced the existing mid-to-high end Pentium processors of the time, moving the Pentium to the
entry level, and bumping the Celeron series of processors to low end. Identical or more capable versions of Core
processors are also sold as Xeon processors for the server and workstation markets.
As of 2016 the current lineup of Core processors included the Intel Core i7, Intel Core i5, Intel Core i3, Intel Core
m7, Intel Core m5 and Intel Core m3

Core i5
The first Core i5 using the Nehalem microarchitecture was introduced on September 8, 2009, as a mainstream
variant of the earlier Core i7, the Lynnfield core.[29][30] Lynnfield Core i5 processors have an 8 MB L3 cache, a DMI
bus running at 2.5 GT/s and support for dual-channel DDR3-800/1066/1333 memory and have Hyperthreading disabled. The same processors with different sets of features (Hyper-Threading and other clock
frequencies) enabled are sold as Core i7-8xx and Xeon 3400-series processors, which should not be confused
with high-end Core i7-9xx and Xeon 3500-series processors based on Bloomfield. A new feature called Turbo
Boost Technology was introduced which maximizes speed for demanding applications, dynamically accelerating
performance to match the workload.
The Core i5-5xx mobile processors are named Arrandale and based on the 32 nm Westmere shrink of
the Nehalem microarchitecture. Arrandale processors have integrated graphics capability but only two processor
cores. They were released in January 2010, together with Core i7-6xx and Core i3-3xx processors based on the
same chip. The L3 cache in Core i5-5xx processors is reduced to 3 MB, while the Core i5-6xx uses the full cache
and the Core i3-3xx does not support for Turbo Boost.[31] Clarkdale, the desktop version of Arrandale, is sold as
Core i5-6xx, along with related Core i3 and Pentium brands. It has Hyper-Threading enabled and the full 4 MB L3
According to Intel "Core i5 desktop processors and desktop boards typically do not support ECC memory", [33] but
information on limited ECC support in the Core i3 section also applies to Core i5 and i7.

Core i7

Intel Core i7 as an Intel brand name applies to several families of desktop and laptop 64-bit x86-64 processors
using the Nehalem, Westmere, Sandy Bridge, Ivy Bridge, Haswell, Broadwell and Skylake microarchitectures.
The Core i7 brand targets the business and high-end consumer markets for both desktop and laptop computers,





the Core

and Xeon (server and workstation) brands.

i3 (entry-level

consumer), Core

i5 (mainstream


Intel introduced the Core i7 name with the Nehalem-based Bloomfield Quad-core processor in late 2008.[36][37][38]

In 2009 new Core i7 models based on the Lynnfield (Nehalem-based) desktop quad-core processor and

the Clarksfield (Nehalem-based) quad-core mobile were added,[40] and models based on the Arrandale dual-core
mobile processor (also Nehalem-based) were added in January 2010. The first six-core processor in the Core
lineup is the Nehalem-based Gulftown, which was launched on March 16, 2010. Both the regular Core i7 and
the Extreme Edition are advertised as five stars in the Intel Processor Rating.
In each of the first three microarchitecture generations of the brand, Core i7 has family members using two
distinct system-level architectures, and therefore two distinct sockets (for example, LGA 1156 and LGA 1366 with
Nehalem). In each generation, the highest-performing Core i7 processors use the same socket and QPI-based
architecture as the medium-end Xeon processors of that generation, while lower-performing Core i7 processors
use the same socket and PCIe/DMI/FDI architecture as the Core i5.
"Core i7" is a successor to the Intel Core 2 brand.[41][42][43][44] Intel representatives stated that they intend
the moniker Core i7 to help consumers decide which processor to purchase as Intel releases newer Nehalembased products in the future