0% found this document useful (0 votes)
51 views

Cce521: Programming and Languages: (Lecture Notes 1)

This document provides an introduction to microprocessors, including: 1. It defines a microprocessor as a single-chip CPU that can receive input, perform computations, store data/instructions, display results, and control connected devices. 2. It describes the evolution of microprocessors from discrete logic circuits to integrated circuits like SSI, MSI, LSI, and VLSI that allowed more functions to be placed on a single chip. 3. It provides details on the first generation of microprocessors starting in 1971 with the 4-bit Intel 4004 and includes a table listing other early microprocessors.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views

Cce521: Programming and Languages: (Lecture Notes 1)

This document provides an introduction to microprocessors, including: 1. It defines a microprocessor as a single-chip CPU that can receive input, perform computations, store data/instructions, display results, and control connected devices. 2. It describes the evolution of microprocessors from discrete logic circuits to integrated circuits like SSI, MSI, LSI, and VLSI that allowed more functions to be placed on a single chip. 3. It provides details on the first generation of microprocessors starting in 1971 with the 4-bit Intel 4004 and includes a table listing other early microprocessors.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

CCE521 (PROGRAMMING LANG.) @ DCCE.

ATBU

CCE521: PROGRAMMING AND


LANGUAGES
(LECTURE NOTES 1)

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

A MICROPROCESSOR is a multipurpose programmable logic device that reads


binary instructions from a storage device called memory, accepts binary data as
input and processes data according to those instructions and provides results as
output.

Fig 1: Programmable Machine


Programmable machine: consists of a microprocessor, memory, I/O and all these
three component works together to perform a given/specified task.

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

Boolean function be expressed as: fki (A, B, C, D ……….).

Where, k → Number of Boolean Variables,


and i → Total Boolean functions generated by these variables.
If, for example, k = 4, then i = 24 = 0, 1.......15.
Hence, a Boolean function can be expressed as:
fki (A, B, C, D ……….) where i = 0,1.......15.
Example: Consider a function as: F41 (A, B, C, D) = AB + BC + CD + AB
Here k = 4, and i = 1
This function can be realized in a number of ways depending upon the types of
the technologies used:
(i) Discrete Element: The use of discrete element for realizing any function was
the first technology used before 1960 and had to generate each Boolean variable
by discrete elements to realize the whole function.
In this method, each variable was realized independently and these are combined
to get the functions (complete system).
The performance of the assembled circuit depends upon the individuals, how
neatly he/she could do it apart from the complexity of the circuit. It required
often much more time for assembling and every one had to assemble it
separately in his/her own way. This created problem in automated working
environment.
(ii) SSI: The innovation in the semiconductor technology forced the scientists &
engineers to think many a times to put them as a package either in the form of a

3
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU

single IC or in hybrid forms. In the year 1965, the development of Integrated


circuit technology came into existence which gave the possibility of packing 100
transistors on the single chip. By this time the two technologies, namely, SSI (< 10)
and MSI (< 100) were used to generate and realize functions. In SSI technology,
AB, B’C, CD, A’B all generated independently for realizing the whole function.
Thus, SSI required 5 - chips, one each for AB, B’C, CD, A’B, and AB +B’C+CD+A’B.
(iii) MSI: In the MSI technology, AB+B’C and CD+A’B were generated
independently for realizing the whole function. Thus, in SSI technology more than
4-chips were required whereas in MSI technology (just) more than 2-chips were
required for realizing the same function. This technology was used 1965 to 1970.
(vi) LSI: The continued search in semiconductor technology resulted into
realization of more functions due to high packing density. Hence the LSI
technology further increased the facility of packing transistors on a single chip up
to a few thousands. With this technology, whole functions could be realized with
only one chip. For large values of k, the function became more complicated and it
may not be possible to realize the whole function by a single chip. The continued
search in the semiconductor technology resulted in the development of the VLSI
technology wherein many more components could be packed on a single chip.

The continued development of IC technology resulted in realization of more


complicated functions with better reliability, compactness, low cost and low
power dissipation. Figure 2 shows different stages of integration. Chips such as
counters, memory devices, etc. were developed using MSI and LSI technologies.
With passage of time, the IC technology developed at an incredible pace and all
Boolean functions could be realized on a single chip. The chip capable of

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.

Fig 2: Microprocessor Family Development


There were people who said that the microprocessor was the accidental by
product of the general procedure for manufacturing the high-density
semiconductor memories using MOS-LSI technology. At the end of the 1960-70
decade, the need for the type of technology which placed thousands of
transistors on a single chip became obvious. However, it was not yet completely
clear as to which function could use so many devices effectively. Memories, of
course, were one among such functions. With the design and development of
such semiconductor memories, the need of an equally complex and efficient
processor was felt which not only were able to use them effectively, but could
pave the way for the selling of semiconductor memories easily.

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

It required about 20 or more additional devices (chips) to design a functional CPU.


Table 1: 1st generation microprocessors Lists

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

to produce any unconventional or conventional word length of the


microprocessor such as 4, 8, 10, 12, 16, 32 or higher bits. The control portion of
bit slice processor was constructed from microprocessor sequencer IC and other
logics.
2nd Generation Microprocessor
The second generation microprocessor using nMOS technology appeared in the
market in the year 1973.
Table 2: 2nd generation microprocessors Lists

The Intel 8080, an 8-bit microprocessor, of nMOS technology was developed in


the year 1974 which required only two additional devices to design a functional
CPU. Since 8080 was nMOS device, it was much faster and had many more
instructions than 8008 that facilitated the programming. The advantages of 2nd
generation microprocessors were
 Large chip size (170x200 mil) with 40-pins.
 More chips on decoding circuits.
 Ability to address large memory space (64-K Byte) and I/O ports (256).
 More powerful instruction sets.
 Dissipate less power.

8
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU

 Better interrupt handling facilities.


 Cycle time reduced to half (1.3 to 9 µ sec.)
 Sized 70x200 mil) with 40-pins.
 Less Support Chips Required
 Used Single Power Supply
 Faster Operation

3rd Generation Microprocessor


The single chip 3rd generation microprocessor having 64-pins started with the
introduction of 16-bit Intel 8086 in the year 1978. The other important 3rd
generation microprocessors were Zilog Z-8000, Motorola M68000, National
NS16016, and Texas Instruments TMS 99000 series, etc. The 16-bit
microprocessor using HMOS technology achieved enhanced performance
parameters w.r.t. the 8-bit microprocessors. In addition to enhanced
performance, it contained multiply/divide arithmetic hardware. The memory
addressing capabilities were increased i.e. IM Byte to 16 Mbyte through a variety
of flexible and powerful addressing modes.
Intel 8088 was identical to 8086 but for the 8-bit data bus. Hence 8088 could read
orwrite8-bits data at a time to or from the memory. The Intel 80186 and 80188
were the improved versions of Intel 8086 and 8088, respectively. In addition to
16-bit CPU, the 80186 and 80188 had programmable peripheral devices
integrated on the same package. The program written for 80186 and 80188 may
not work well on 8086 and 8088, but those written for 8086 and 8088 worked
without many difficulties on 80186 and 80188. This means they were upward
compatible with 8086 and 8088. The Intel 80286 was the

9
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU

advancedversionof80186. It is designed for use in multi-user/ multitasking


environment.

4th Generation Microprocessor


The single chip 32-bit microprocessor was introduced in the year 1981 by Intel as
iAPX 432. The other 4th generation microprocessors were; Bell Single Chip
Bellmac-32, Hewlett-Packard, National NSl 6032, Texas Instrument99000.
Motorola 68020 and 68030.
The power of the microprocessor went on increasing with the advancement in the
integrated circuit technology. The VLSI technology culminated in the extremely
complex microprocessor with as many as one billion transistors on a single chip.
The Intel in the year 1985 announced the 32-bit microprocessor (80386). The
80486 has already been announced and is also a 32-bit microprocessor.
Most of the microprocessors were manufactured with HMOS (high density short
channel MOS) technology because of the following advantages:
(i) Speed-power product was 4-times greater than NMOS. It’s typical value was I-
pico joule whereas it was 4-pico joules in the case of NMOS technology.
(ii) Circuit density was approximately 2-times greater than NMOS. The typical
NMOS density was 4128 um2 gate whereas it was 1852.5 um2 for HMOS.

10
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU

Tabular Comparison µPS’ Parameters


Table 3: (a) and (b) list the characteristic of some Intel microprocessor
Table 3a: Microprocessor’s characteristic (Intel microprocessor)

Table 3b: Microprocessor’s characteristic (Intel microprocessor)

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.

OVERVIEW OF INTEL PRO-PENTIUM


The two biggest players in the PC CPU market are Intel and Motorola. Intel has
enjoyed tremendous success with its processors since the early 1980s. Most PCs
are controlled by Intel processors. The primary exception to this rule is the
Macintosh. All Macs use chips made by Motorola. In addition, there are several
firms, such as AMD and Cyrix that make processors which mimic the functionality
of Intel's chips. There are also several other chip manufacturers for workstation
PC's.
Intel Processors
The Intel Corporation is the largest manufacturer of microchips in the world, in
addition to being the leading provider of chips for PCs. In fact, Intel invented the
microprocessor, the so-called "computer on a chip," in 1971 with the 4004
models. It was this invention that led to the first microcomputers that began
appearing in 1975. However, Intel's success in this market was not guaranteed
until 198l, when IBM released the first IBM PC, which was based on the Intel
8088. Since then all IBM machines and the compatibles based on IBM's design
have been created around Intel's chips. A list of those chips, along with their basic
specifications, is shown in Table 4. Although the 80>SS was the first chip to be
used in an IBM PC IBM actually used an earlier chip, the 808(1, in a subsequent

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

The Pentium Pro


Introduced in 1995, the Pentium Pro reflected still more design breakthrough .
The Pentium Pro can process three instructions in a single clock cycle—one more
than the Pentium. In addition, the Pentium Pro can achieve faster clock speeds—
the earliest model available was packaged with a 133 MHz clock. Intel coined the
phrase "dynamic execution" to describe the specific innovation that distinguishes
the Pentium Pro. Dynamic execution refers to the chip's ability to execute
program instructions in the most efficient manner, not necessarily in the order in
which they were written. This out-of-order execution means that instructions that
cannot be executed immediately are put aside, while the Pentium Pro begins
processing other instructions. This is in contrast to the original Pentium chip that
can stall because it executes instructions in strict sequence.
MOTOROLA 68000 Series
68000-microprocessor is a 16-bit processor with an addressing space of 65536
locations, each of which holds a 64-bits word; In order to address those locations,
16-bits operands are needed, two of which leave 32 bits free for other purposes;
of these 32 bits, 16 are used to hold the op-code.
Features of Motorola 68000
Motorola 68000 architecture has the instructions that move or manipulate a
block of many locations at one time and also have some Instructions that perform
tasks that are typical of an operating system.
68000 has a total of 47 mnemonic codes, 25 of which denote “ordinary”
instructions, 14 denote instructions that perform tasks typical of an operating
system, while the last 8 are instructions acting on blocks of words.

15
CCE521 (PROGRAMMING LANG.) @ DCCE.ATBU

There are 13 essentially different addressing modes, further subdivided into 18


varieties; in particular, there are modes to address a special area of the memory
array subroutines were added in view of the needs of complex programs, and a
set of powerful instructions for consistent management of relative addressing was
developed.
DEC
A powerful new Alpha 64-bit RISC computer chip was introduced in 1977, as new
VAX (Virtual Address Extension) Computer. The VAX was a 32-bit based computer
line based on operating system, called VMS.
This new computer system was more powerful and had better time-sharing
capabilities than past DEC systems DEC net networking technology-enabled
customers to connect different types of DEC computers together from small
workstations to large corporate servers.
As the 80s drew to a close DECs were not IBM compatible and were designed as a
way for users to connect to DEC server systems rather than stand-alone products.
In addition, DEC manufactured all the components for its PCs, resulting in systems
that were much more expensive than other PC vendors. From 1984 to 1988 DEC
developing its RISC chip, the PRISM. Using these chips, DEC introduced a UNIX
workstation running on its own UNIX, Ultrix
The RISC chip to be used in these new VAXes was a new 64-Bit chip, designed by
DEC, code-named the Alpha.
The ALPHA
The development of the Alpha chip began in 1988 The new chip used 64-bit
technology, allowed users to pack more complexity into their programs than
existing 32-Bit technology chips. In addition, though designed to replace the VAX
16
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

INSTRUCTION SET COMPUTERS (RISC/CISC Architecture)


An important aspect of computer architecture is the design of the instruction set
for the processor. The instruction set chosen for a particular computer determine
the way that machine language programs are constructed. Early computers had
small and simple instruction sets, forced mainly by the need to minimize the
hardware used to implement them. As digital hardware became cheaper with the
advent of integrated circuits, computer instructions tended to increase both in
number and complexity. Many computers have instruction sets that include more
than hundred and sometimes even more than 200 instructions. These computers
also employ a variety of data types and a large number of addressing modes. The
trend for computer hardware complexity was influenced by various factors, such
as upgrading existing models to provide more customer applications, adding
instructions that facilitate the translation from high-level language into machine
language programs and striving to develop machines that move functions from
software implementation into hardware implementation. A computer with a large
number of instructions is classified as a Complex Instruction Set Computer,
abbreviated CISC.
In the early 1980s, a number of computer designers recommended that
computers use fewer instructions with simple constructs so they can be executed
much faster within the CPU without having to use memory as often. This type of
computer is classified as a Reduced Instruction Set Computer or RISC.
CISC Characteristics
The design of an instruction set for a computer must take into consideration not
only machine language constraints, but also the requirements imposed on the use
of high-level programming languages. The translation from high-level to machine
18
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

A characteristic of RISC processors is their ability to execute one instruction per


clock cycle. This is done by overlapping the fetch, decode and execute phases of
two or three instructions by using a procedure referred to as pipelining. A load or
store instruction may require two clock cycles because access to memory takes
more register operations. Efficient pipelining, as well as a few other
characteristics have sometimes attributed to RISC, although they may exist in
non-RISC architectures as well. Other characteristics attributed to RISC
architecture are:
1. A relatively large number of registers in the processor unit
2. Use of overlapped register windows to speed-up procedure call and return
3. Efficient instruction pipeline
4. Compiler support for efficient translation of high-level language programs into
machine language programs.

20

You might also like