Cce521: Programming and Languages: (Lecture Notes 1)
Cce521: Programming and Languages: (Lecture Notes 1)
ATBU
INTRODUCTION TO MICROPROCESSOR
INTRODUCTION
Microprocessor acts as a CPU in a microcomputer. It is present as a single IC chip
in a microcomputer.
Microprocessor is the heart of the machine.
A Microprocessor is a device, which is capable of
1. Receiving Input
2 Performing Computations
3. Storing data and instructions
4. Display the results
5. Controlling all the devices that perform the above 4 functions.
The device that performs this task is called Arithmetic Logic Unit (ALU). A single
chip called Microprocessor performs these tasks together with other tasks.
1
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
Evolution of Microprocessor
The digital circuits and systems can be broken into:
Combinational Circuits: and
Sequential Circuits
2
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
It is the notion that the digital circuits and systems are the byproduct of the
Boolean functions. Let any
3
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
4
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
processing all Boolean functions was given the name of Processor. On the same
line, the chip which processed the data in a controlled manner was called the
microprocessor.
5
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
The microprocessor age began with the advancement in the IC technology to put
all necessary functions of a CPU into a single chip. Advancement in semiconductor
technology increased the capacity to include more and more logic on a single
chip. Although the cost of the microprocessor increased with its complexities, yet
it was much lower than the cost of the equivalent logic scattered over several less
capable chips. In addition to reduced number of ICs needed to perform a given
function, the total numbers of pins were reduced and hence assembly cost was
also reduced.
1st Generation Microprocessor
At the end of the 70s a group of engineers developed a chip capable of processing
data. This chip was given the name, processor chip. The large processors were
developed using VLSI technology. Another successful attempt of engineers, in
developing a processor which worked in a controlled manner, was given the name
of microprocessor. Thus a single LSI/VLSI/VVLSI chip, capable of processing data in
a controlled manner was called the microprocessor.
The design team headed by Ted Hoff of Intel Corporation developed the 1st such
controlled processor in the year 1969, but Intel started marketing its first
microprocessor in the name of Intel 4004 in 1971. This was a 4-bit microprocessor
having 16-pins housed in a single chip of pMOS technology. This was called the
first-generation microprocessor. The 4-bit microprocessor worked with 4-bit
word. The Intel 4004 along with few other devices was used for making
calculators. The ability of changing functions of any system by just changing the
programming rather than redesigning the hardware was the key behind the
evolution of the microprocessors.
The Intel 8008 was developed in the year 1972 that worked with 8-bit word.
6
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
TYPE OF MICROPROCESSORS
Microprocessors fall into three categories:
Single Chip Microcomputers → Contains microprocessor, ROM, RWM, I/O
port, clock and timer.
General purpose microprocessor.
Bit-slice microprocessor.
The general purpose microprocessor contain ALU with one or more registers
which functioned as accumulator, a control unit, an instruction decoder which
handled a fixed instruction set and general and special purpose registers which
varied significantly from microprocessor to microprocessor. A microprocessor
may have an internal stack of fixed length or use external memory for stack. The
general purpose microprocessors are available of word lengths of 1, 4, 8, 16, 32,
and 64 bits.
The Bit slice microprocessor divide the functions of ALL, general purpose and
special purpose registers and control unit into several ICs. For this general
purpose registers and ALU were packed in separately from controls. Each register
of ALU (RALU) package was essentially equivalent to 2 or 4-bit wide slice of
registers and the ALU of the microprocessor. Bit slice processor could be cascaded
7
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
8
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
9
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
10
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
11
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
It has a 32-bit address bus and a 64-bit data bus. Some of the features are
Superscalar architecture (more than one execution unit), on-chip cache memory
for data and code, Branch prediction, high performance floating point unit,
Performance monitoring.
12
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
model, called the IBM PC XT. The chips that came later—the 286, 386, 486, and
even the Pentium-I—correspond.
To certain design standards that were established by the 8086. This line of chips
often referred to as the 80×86 line.
The steady rise in bus size, register size, and addressable memory illustrated in
Table 4 has also been accompanied by increases in clock speed. For example, the
clock attached to the first PCs ran at 4.77 MHz, whereas clock speeds for Pentium
chips started at 60 MHz. In 1993 and quickly rise to 100, 120, and 133, 150, and
166 MHz.
Table 4: Intel chips their Specifications
It is important to realize that these statistics do not convey all the improvements
that have been made. The basic design of each chip, known as the architecture,
has grown steadily in sophistication and complexity. For example, the architecture
of the 386 contained 320,000 transistors, ANCI the 486 contained 1.2 million.
With the Pentium, that number grew to more than 3.1 million, and the Pentium
Pro's architecture brought the total number of transistors on tile chip to 5.5
million. The growing complexity of the architecture allowed Intel to incorporate
some sophisticated techniques for processing. One major improvement that came
13
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
with the 386 is called virtual 8086 mode. In this mode, a single 386 chip could
achieve the processing power of 16 separate 8086 chips each running a separate
copy of the operating system. It’s like capability for virtual 8086 mode enabled a
single 386 chip to run different programs at the same time, a technique known as
multitasking. All the chips that succeeded the 386 have had the capacity for
multitasking.
The 486 processor
Introduced in 1989 the 80486 did not feature any radically new processor
technology. Instead, it combined a 386 processor, a math coprocessor, and a
cache memory controller on a single chip. Because these chips were no longer
separate, they no longer had to communicate through the bus—which increased
the speed of the system.
The Pentium
The next member of the Intel family of microprocessors was the Pentium,
introduced in 1993. With the Pentium, Intel broke its tradition of numeric model
names—partly to prevent other chip manufactures from using similar numeric
names, which implied that their products were functionally identical to Intel's
chips. The Pentium, however, is still considered part of the 80x86 series.
The Pentium chip itself represented another leap forward for microprocessors.
The speed and power of the Pentium dwarfed all of its predecessors in the Intel
line. What this means in practical terms is that the Pentium runs application
programs approximately five times faster than a 486 at the same clock speed. Part
of the Pentium's speed comes from a super-scalar architecture, which allows the
chip to process more than one instruction in a single clock cycle.
14
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
15
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
chip, the Alpha chip would have the capacity to support a variety of different
operating systems, such as UNIX and Microsoft.
But the design forced all current VAX software to be rewritten to run on the new
chip. If DEC wanted other operating systems, such a UNIX or Windows NT, to run
on the chip, new versions of the operating systems would have to be developed
specifically for the Alpha chip. The software would have to be specially tuned for
the chips 64 Bit speed, which was a drawback.
PowerPC
A PowerPC is a microprocessor designed to meet a standard, which was jointly
designed by Motorola, IBM, and Apple. The PowerPC standard specifies a
common instruction set architecture (ISA), allowing anyone to design and
fabricate PowerPC processors, which will run the same code. The PowerPC
architecture is based on the IBM POWER architecture used in IBM’s RS/6000
workstations. Currently IBM and Motorola are working on PowerPC chips.
The PowerPC architecture specifies both 32 bit and 64 bit data paths. Early
implementations will be 32 bit; future higher performance implementation will be
64 bit. A PowerPC has 32 general purpose (integer) registers (32- or 64 bit) and 32
floating point (IEEE standard 64 bit) registers.
Application of PowerPC
For military and aerospace: weapons and communications systems, more than
150 programs have chosen PowerPC. For industrial applications: industrial and
processing control, transportation, and telecommunications.
17
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
language programs is done by means of a compiler program. One reason for the
trend to provide a complex instruction set is the desire to simplify the compilation
and improve the overall computer performance. The task of a compiler is to
generate a sequence of machine instructions for each high-level language
statement. The task is simplified if there are machine instructions that implement
the statements directly. The essential goal of CISC architecture is to attempt to
provide a single machine instruction for each statement that is written in a high-
level language. Examples of CISC architectures are the Digital Equipment
Corporation VAX computer and the IBM 370 computer.
The major characteristics of CISC architecture are:
1. A large number of instructions-typically from 100 to 250 instructions
2. Some instructions that perform specialized tasks and are used infrequently
3. A large variety of addressing modes-typically from 5 to 20 different modes
4. Variable-length instruction formats
5. Instructions that manipulate operands in memory
The concept of RISC architecture involves an attempt to reduce execution time by
simplifying the instruction set of the computer. The major characteristics of a RISC
processor are:
1. Relatively few instructions
2. Relatively few addressing modes
3. Memory access limited to load and store instructions
4. All operations done within the registers of the CPU
5. Fixed-length, easily decoded instruction format
6. Single-cycle instruction execution
7. Hardwired rather than micro-programmed control
19
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU
20