Learning Outcomes: After Undergoing The Subject, The Students Will Be Able To
Learning Outcomes: After Undergoing The Subject, The Students Will Be Able To
Learning Outcomes: After Undergoing The Subject, The Students Will Be Able To
1.INTRODUCTION
A microprocessor is one of the most central parts of a modern personal computer or, in fact, any
advanced computer device. It integrates the functions of a central processing unit , the portion of
a computer responsible for carrying out programmed instructions, onto a single integrated
circuit that couples the important thinking devices of the machine with the electrical
infrastructure needed to support them. Microprocessor design is able to incorporate a
tremendous amount of processing power in a very small space. Perhaps more than any other
component of the modern computer, the microprocessor has a long and storied history, and an
almost mythological status thanks to its great importance. Each step of the way to modern micro-
processing has spurred more triumphs, innovations, and competition.
Microprocessor contains ALU, register array, and a control unit. As it is called as heart of the
system, each unit in the microprocessor perform its own activities resulting in proper output for
the users. So, ALU performs arithmetical and logical operations on the data that is stored in the
memory or an input device. Register array includes registers indicated by alphabets like B, C, D,
E, H, L and accumulator which helps in fast memory accessing. The control unit as usual gives
instructions to the computer’s memory, ALU and input and output devices to respond to the
program’s instructions within the computer.
1.2Evolution of Microprocessor
1.2.1-4-bit Microprocessors
The first microprocessor was introduced in 1971 by Intel Corp. It was named Intel 4004 as it
was a 4 bit processor. It was a processor on a single chip. It could perform simple arithmetic
and logic operations such as addition, subtraction, Boolean AND and Boolean OR. It had a
control unit capable of performing control functions like fetching an instruction from memory,
decoding it, and generating control pulses to execute it. It was able to operate on 4 bits of data
at a time.This first microprocessor was quite a success in industry. Soon other microprocessors
were also introduced. Intel introduced the enhanced version of 4004, the 4040. Some other 4 bit
processors are International’s PPS4 and Toshiba T3472.
1.2.2-8-bit Microprocessors
The first 8 bit microprocessor which could perform arithmetic and logic operations on 8 bit
words was introduced in 1973 again by Intel. This was Intel 8008 and was later followed by an
improved version, Intel 8088. Some other 8 bit processors are Zilog-80 and Motorola M6800.
1.2.3-16-bit Microprocessors
The 8-bit processors were followed by 16 bit processors. They are Intel 8086 and 80286.
1.2.4-32-bit Microprocessors
The 32 bit microprocessors were introduced by several companies but the most popular one is
Intel 80386.
The first step is to arrange the instructions in a sequential order that are stored in the memory.
The microprocessor then fetches those instructions from the memory, decodes it and executes
those instructions untill the STOP instruction is reached. Later, it sends the result in binary form
as the computer does not understand human language it sends the instructions in its code
language to the output port. In the meanwhile of processes, the register that stores the data
temporarily and ALU performs arithmetic and logical functions.
1.3.2Features of a Microprocessor
Cost-effective − The microprocessor chips are available at low prices and results its low cost.
Versatility − The microprocessors are versatile as we can use the same chip in a number of
applications by configuring the software program.
Today, we literally swim in a sea of silicon. There are dozens of chips in every car and dozens in
every office. Microprocessors in the form of watches, pagers, cellular phones, and Sharp
Wizard's adorn our bodies as jewelry. Beyond embedded systems, the rapid rise of the Internet
now appears to be on the verge of ensuring that the personal computer truly becomes ubiquitous.
Where in the past PCs have been concentrated in the workplace and scattered in the homes of
the wealthier third of American society, the Internet is almost certain to lower the final obstacles
and make it possible to create a new class of information appliances that will extend the reach of
the Net until it matches that of television or the telephone. Microprocessors are everywhere, but
how is modern life different? In many areas the advent of microelectronics obviously does have
clear benefits. That can be seen in the effect of computing technology on the disabled; the
transformation of certain kinds of boring and dangerous manual labor; advances in medical
technology and weather forecasting. Indeed the easy answer is that microprocessors have
transformed modern society. They affect the way we work and play, the way we travel and
communicate. They offer remarkable processing power at infinitesimal cost.
Chapter 2
2.1Bus architecture
A bus is a collection of wires, chips and slots inside the computer through which data are
transmitted from one part of the computer to another from peripheral devices. It is also called a
pathway in the computer on which data travels. It is a set of parallel distinct wires, serving
different purposes, which allow devices attached to it to communicate with the CPU.
It carries the control signal. The control signal is used for controlling and coordinating the
various activities of the computer. It is generated from the control unit of the CPU. Different
architectures result in a different number of lines within the control bus, as each line is used to
perform a specific task.
For instance, different specific lines are used for each of read, write and reset requests. These
are not a group of lines like address bus and data bus, but individual lines that provide a pulse to
indicate a microprocessor operation. The control unit generates a specific control signal for
every operation, such as memory read or input/output operation. This signal is also used to
identify a device type, with which the microprocessor intends to communicate.
Address Bus:
Address bus carries memory address within the device. It allows the CPU to reference memory
locations within the device. It connects the CPU and other peripherals and carries only memory
address. In a computer system, each peripheral or memory location is identified by a numerical
value, called an address and the address bus is used to carry this numerical value as well as it
also contains a few control lines to carry control commands. The address bus is unidirectional,
bits flow in one direction from the processor to peripherals.
The processor uses the address bus to perform the first function of identifying a peripheral or a
memory location. The address bus contains the connections between the processor and memory
that carry the signals relating to the address which the CPU is processing at that time, such as
the locations that the CPU is reading from or writing to. The processor uses the address bus to
perform, identifying a peripheral or a memory location.
When the address bus carries 8 bit at a time, the CPU could address only 256 (i.e. 28) bytes of
RAM. Most of the early PCs had 20 bit address buses. So, CPU could address 220bytes of data.
Now, with 32-bit address buses, CPU can address 4GB of RAM. If there is wider bus path, more
information can be processed at a time and hence, it also affects the processing speed of a
computer.
Data Bus:
Data bus transfer data from one location to another across the computer. On these lines, the
meaningful data which is to be retrieved from a device is placed. Data bus is used by CPU to
transfer data. It may be 16-bit or 32-bit data bus. It is an electrical path that connects the CPU,
memory and other hardware devices on the motherboard. These lines are bidirectional in which
the data flows in both directions between the processor and memory and peripheral devices. The
number of wires in the bus affects the speed at which data can be travel between hardware
components just as the number of lanes on a highway affects the time it takes people to reach
their destination. Each wire can transfer 1 bit of data at a time and 8 wire bus can move 8 bit at
a time, which is 1-byte data at a time. A 16-bit bus can transfer 2 bytes. 32 bits can transfer 4
bytes and so on. Intel 80286 microprocessor used16 bit data bus and Intel 80386 used 32-bit
data bus. When the data bus width grows larger, more data can be transferred.
The transmission of the data on bus lines takes place between approximately 1M baud for the
microcomputer to about 1000 M baud or more for the large more expensive computers (1 baud
= 1 bit/sec). Communication between the different units of a processing system is carried out
along address and data bus and also along various control lines. All control operations are
governed by the master timing source and clock.
The microprocessor MPU performs various operations with peripheral devices or a memory
location by using three sets of communication lines called buses: the address bus, the data bus
and the control bus. And these three combined lines is called as system bus.
Image 1 bus structure
Address bus:
The address bus is a group of 16 lines generally called as A0 – A15 to carry a 16-bit address of
memory location.
In a computer system, each peripheral or memory location is identified by a binary number
called an address. This is similar to the postal address of a house.
The address bus is unidirectional, that means bit flow in only one direction from MPU to
peripheral.
MPU carries 16-bit address i.e. 216 = 65,536 or 64K memory locations.
Data Bus:
The data bus is a group of eight bidirectional lines used for data flow in both the directions
between MPH and peripheral devices.
The 8 data lines are manipulating 8-bit data ranging from 00 to FF i.e. (28 = 256) numbers
from 0000 0000 -1111 1111
This 8 bit data is called as word length and the register size of a microprocessor and MPH is
called 8–bit microprocessor.
Control bus:
Control bus is having various single lines used for sending control signals in the form of pulse to
the memory and I/O devices.
The MPU generates specific control signals to perform a particular operations. Some of these
control signals are memory read, memory write, I/O read and I/O write.
The 8085 is an 8-bit general purpose microprocessor that can address 64K Byte of
memory.
It has 40 pins and uses +5V for power. It can run at a maximum frequency of 3 MHz.
The pins on the chip can be grouped into 6 groups:
Address Bus.
Data Bus.
Control and Status Signals.
Power supply and frequency.
Externally Initiated Signals.
Serial I/O ports.
Accumulator:-It is a 8-bit register which is used to perform arithmetical and logical operation. It
stores the output of any operation. It also works as registers for i/o accesses.
Temporary Register:-It is a 8-bit register which is used to hold the data on which the
accumulator is computing operation. It is also called as operand register because it provides
operands to ALU.
Flag Registers:-It consists of 5 flip flop which changes its status according to the result stored in
an accumulator. It is also known as status registers. It is connected to the ALU.
There are five flip-flops in the flag register are as follows:
1.Sign(S)
2.zero(z)
3.Auxiliary carry(AC)
4.Parity(P)
5.Carry(C)
The bit position of the flip flop in flag register is:
All of the three flip flop set and reset according to the stored result in the accumulator.
1.Sign- If D7 of the result is 1 then sign flag is set otherwise reset. As we know that a number on
the D7 always decides the sign of the number.
if D7 is 1: the number is negative.
if D7 is 0: the number is positive.
2. Zeros(Z)-If the result stored in an accumulator is zero then this flip flop is set otherwise it is
reset.
3. Auxiliary carry(AC)-If any carry goes from D3 to D4 in the output then it is set otherwise it is
reset.
4. Parity(P)-If the no of 1's is even in the output stored in the accumulator then it is set otherwise
it is reset for the odd.
5. Carry(C)-If the result stored in an accumulator generates a carry in its final output then it is
set otherwise it is reset.
Instruction registers(IR):-It is a 8-bit register. When an instruction is fetched from memory then
it is stored in this register.
Instruction Decoder:- Instruction decoder identifies the instructions. It takes the information
from instruction register and decodes the instruction to be performed.
Program Counter:-It is a 16 bit register used as memory pointer. It stores the memory address of
the next instruction to be executed. So we can say that this register is used to sequencing the
program. Generally the memory have 16 bit addresses so that it has 16 bit memory.
The program counter is set to 0000H.
Stack Pointer:-It is also a 16 bit register used as memory pointer. It points to the memory
location called stack. Generally stack is a reserved portion of memory where information can be
stores or taken back together.
Timing and Control Unit:-It provides timing and control signal to the microprocessor to perform
the various operation.It has three control signal. It controls all external and internal circuits. It
operates with reference to clock signal.It synchronizes all the data transfers.
There are three control signal:
1.ALE-Arithmetic Latch Enable, It provides control signal to synchronize the components of
microprocessor.
2.RD- This is active low used for reading operation. 3.WR-
This is active low used for writing operation.
There are three status signal used in microprocessor S0, S1 and IO/M. It changes its status
according the provided input to these pins.
Serial Input Output Control-There are two pins in this unit. This unit is used for serial data
communication.
Interrupt Unit-There are 6 interrupt pins in this unit. Generally an external hardware is
connected to these pins. These pins provide interrupt signal sent by external hardware to
microprocessor and microprocessor sends acknowledgement for receiving the interrupt
signal. Generally INTA is used for
acknowledgement.
20)What is opcode?
21)What is operand?
B.Long answer type questions:
3)Explain the functions of address bus, data bus and control bus.
8)Draw the block diagram of 8085 microprocessor. Explain the function of each block.
12)Draw and Explain the timing diagram for memory read operations.