Module 5 Mup
Module 5 Mup
Module V
Intel 80286 microprocessor: architecture, signals and system connections, Real
address mode operation, protected mode operation. Intel 80386 32-bit
microprocessor: architecture, pins and signals. Introduction to 80486
microprocessor. Introduction to RISC machines.
80286 Microprocessor
what are the factors that make 80286 more advantageous than 8086
microprocessor?
Address Unit
Bus Unit
Instruction Unit
Execution Unit
Firstly, the physical address from where the data or instruction is to be
fetched is calculated, by the address unit. Once the physical address is
calculated then the calculated address is handed over to the bus unit.
More specifically we can say, that the calculated address is loaded on the
address bus of the bus unit.
This address specifies the memory location from where the data or
instruction is to be fetched. The fetching of data through the memory is
done through the data bus. For faster execution of instruction, the BU
fetches the instructions in advanced from the memory and stores them in
the queue.
This is done through the bus control module. As we have discussed that
the prefetched instructions are stored in a 6-byte instruction queue. This
instruction queue then further sends the instruction to the instruction
unit.
The instruction unit on receiving the instructions now starts decoding the
instruction. As instructions are stored in prefetched queue thus the
decoder continuously decodes the fetched instructions and stores them
into decoded instruction queue.
Now after the instructions gets decoded then further these are needed to
be executed. So, the instructions from decoded instruction queue are fed
to the execution unit. The main component of EU is ALU i.e., arithmetic
and logic unit that performs the arithmetic and logic operations over the
operand according to the decoded instruction.
Once the execution of the instruction is performed then the result of the
operation i.e., the desired data is send to the register bank through the
data bus.
But once the interrupt gets executed then then in order to get back to the
original program, its address as well as machine state must be stored in
the stack. Basically there exist 3 categories of interrupt in 80286
microprocessor:
So, this is all about the modes of operation, architecture and interrupts of
80286 microprocessor.
80386 Microprocessor
Features of 80386
80286 supports two operating modes. The first is real address mode while
the second is the protected virtual address mode.
In virtual mode, the overall memory of 80386 can be divided into various
virtual machines. And all of them acts as a separate computer with 8086
microprocessor. This mode is also called virtual 8086 mode or V86 mode.
The other one is the virtual real mode, this mode allows the system to
execute multiple programs in the protected memory. And in case a
program at a particular memory gets crashed then it will not cause any
adverse effect on the other part of the memory.
The bus interface unit or BIU holds a 32-bit bidirectional data bus as well as a
32-bit address bus. Whenever a need for instruction or a data fetch is generated
by the system then the BIU generates signals (according to the priority) for
activating the data and address bus in order to fetch the data from the desired
address.
The BIU connects the peripheral devices through the memory unit and also
controls the interfacing of external buses with the coprocessors.
2. Code Prefetch Unit
This unit fetches the instructions stored in the memory by making use of system
buses. Whenever the system generates a need for instruction then the code
prefetch unit fetches that instruction from the memory and stores it in a 16-byte
prefetch queue. So to speed up the operation this unit fetches the instructions in
advance and the queue stores these instructions. The sequence in which the
instructions are fetched and gets stored in the queue depends on the order they
exist in the memory.
As this unit fetches one double word in a single access. So, in such a case, it is
not necessary that each time only a single instruction will be fetched, as the
fetched instruction can be parts of two different instructions.
It is to be noted here that, code prefetching holds lower priority than data
transferring. As whenever a need for data transfer is generated by the
system then immediately the code prefetcher leaves control over the
buses. So that the BIU can transfer the required data. But prefetching of
instruction and storing it in the queue reduces the wait for the upcoming
instruction to almost zero.
3. Instruction Decode Unit
We know that instructions in the memory are stored in the form of bits. So,
this unit decodes the instructions stored in the prefetch queue. Basically
the decoder changes the machine language code into assembly language
and transfers it to the processor for further execution.
4. Execution Unit
The decoded instructions are stored in the decoded instruction queue. So,
these instructions are provided to the execution unit in order to execute
the instructions. The execution unit controls the execution of the decoded
instructions. This unit has a 32-bit ALU, that performs the operation over
32-bit data in one cycle. Also, it consists of 8 general purpose as well as
8 special purpose registers. These are used for data handling and
calculation of offset address.
5. Memory Management Unit
This unit has two separate units within it. These are
1. Segmentation Unit
2. Paging Unit
Segmentation unit: The segmentation unit plays a vital role in the 80836
microprocessor. It offers a protection mechanism in order to protect the
code or data present in the memory from application programs. It gives 4
level protection to the data or code present in the memory. Every
information in the memory is assigned a privilege level from PL0 to PL3.
Here, PL0 holds the highest priority and PL3 holds the lowest priority.
Suppose a file (either data or code) is needed to be accessed is stored in
the memory at PL0. Then only those programs which are working at PL0
would be able to access that file. While other programs will not be able to
access the same. Also, if a file is present at PL1, then programs of PL0
and PL1 both can access it. As PL0 has a higher priority than PL1. So, for
protection purposes, the main part of the OS is stored in PL0 while PL3
holds the user programs. Providing protection to the data or code inside
the system is the most advantageous factor that was first given by the
80386 microprocessor.
Paging Unit: The paging unit operates only in protected mode and it
changes the linear address into a physical address. As the programmer
only provides the virtual address and not the physical address. The
segmentation unit controls the action of the paging unit, as the
segmentation unit has the ability to convert the logical address into the
linear address at the time of executing an instruction. Basically, it changes
the overall task map into pages and each page has a size of 4K. This
allows the handling of tasks in the form of pages rather than segments.
A noteworthy point over here is that 80386 has 2 different versions. These
are 80386SX and 80386DX. The SX stands for single execution while the
DX stands for double execution.
80386SX holds a data bus of 16-bit. While 80386DX has a data bus of 32-
bit. Whenever we talk about 80386 then it is nothing but 80386DX having
32-bit data bus. But sometimes a system having an 8086 microprocessor
needs to improve its performance as well as protection. And we know that
8086 is a 16-bit microprocessor, that operates on 2 banks.
However, 80386 in general has a 32-bit data bus that needs 4 banks. So,
to access some of the features of 80386 in a system having 8086
processor, we use 80386SX as a processor having a data bus of 16-bit.
Thus, in this case, a system can be upgraded to facilities of 80386 by
simply changing the processor despite changing the overall system. This
is the reason why we have 80386SX version of the 80386 microprocessor.
Signal Description of 80386
Microprocessor - Classification
RISC Processor
RISC stands for Reduced Instruction Set Computer. It is designed to reduce the
execution time by simplifying the instruction set of the computer. Using RISC
processors, each instruction requires only one clock cycle to execute results in
uniform execution time. This reduces the efficiency as there are more lines of code,
hence more RAM is needed to store the instructions. The compiler also has to work
more to convert high-level language instructions into machine code.
Some of the RISC processors are −
Characteristics of RISC
The major characteristics of a RISC processor are as follows −
It consists of simple instructions.
It supports various data-type formats.
It utilizes simple addressing modes and fixed length instructions for pipelining.
It supports register to use in any context.
One cycle execution time.
“LOAD” and “STORE” instructions are used to access the memory location.
It consists of larger number of registers.
It consists of less number of transistors.