3. What is the Microprocessor !
A microprocessor is a modern computer processor where data processing logic and control
consists of a single integrated circuit and a small number of integrated circuits.
The microprocessor contains the mathematical, logic, and control circuitry required to perform
the functions of a computer's central processing unit.
What about 8086 Microprocessor ?
It was designed in 1978 by Intel and is a 16-bit microprocessor. Unlike, 8085, an 8086
microprocessor has 20-bit address bus. Thus, is able to access 220 that is 1 MB address in the
memory.
As we know, that a microprocessor performs arithmetic and logic operations. It an 8086
microprocessor is able perform these operations with 16-bit data in one cycle. Hence is the 16-
bit microprocessor. Thus, the size of the data bus is 16-bit as it can carry on 16-bit data at a
time. The architecture of 8086 microprocessor, is very much different from that of 8085
microprocessors.
Working of 8086 Microprocessor
In the previous section, we have discussed the operation of various sections of the BIU and EU.
Now in this section So, basically, when an instruction is to be fetched from the memory, then
firstly its physical address must be calculated and this is done at the BIU. The physical address of
an instruction is given as:
PA = Segment address Χ 10 + Offset
the generated physical address is 24356 H. Here, the code segment register provides the base
address of the code segment which is combined with the offset address.
4. The control unit decodes the opcode and generates control signals that inform the BL and CL
register to release the value stored in it. Also, it signals the ALU to perform the ADD operation
on that particular data.
It is to be noteworthy that is BIU, pipelining fails whenever there is a branching in an instruction.
This is because generally instructions are present in the sequential manner.
5. Block Diagram of 8086 Microprocessor
The architecture of 8086 microprocessor is the composed of 2 major units, the BIU that is Bus
Interface Unit and EU that is Execution Unit. The figure below shows the block diagram of the
architectural representation of the 8086 microprocessors.
6. Draw the pin diagram of 8086
There would be two pin diagrams—one for MIN mode and the other for MAX mode of 8086, the
pins that differ with each other in the two modes are from pin-24 to pin-31 (total 8 pins).
Signals of intel 8086 for minimum mode of operation
7. Bus Interface Unit
The Bus Interface Unit (BIU) manages the data, address and control buses.
The BIU functions in such a way that it:
Fetches the sequenced instruction from the memory,
Finds the physical address of that location in the memory where the instruction is stored
and
Manages the 6-byte pre-fetch queue where the pipelined instructions are stored.
Instruction Queue: When EU executes instructions, the BIU gets 6-bytes of the next
instruction and stores them in the instruction queue and this process is known as instruction pre
fetch. This process increases the speed of the processor.
Segment Registers: A segment register contains the addresses of instructions and data in
memory which are used by the processor to access memory locations. It points to the starting
address of a memory segment currently being used.
There are 4 segment registers in 8086 as given below:
Code Segment
Register (CS)
Data Segment
Register (DS)
Stack Segment
Register (SS)
Extra Segment
Register (ES)
Code segment
of the memory
holds
instruction
codes of the
program.
The data,
variables and
constants given
in the program
are held in a
data segment of
the memory.
Stack segment
holds addresses
and data of
subroutines. It
holds contents
of registers &
memory
locations in
push instruction.
Extra segment
holds a
destination
addresses of
some data of
certain string
instructions.
8. Execution Unit
EU and then unit decodes or executes an instruction, then the BIU fetches instruction codes from
the memory.
Control Unit:
In the timing & control unit in 8085 microprocessors, a control unit in 8086 microprocessor
produces control signal after decoding the opcode to the general-purpose register to release a
value stored in it. It also signals the ALU to perform the desired operation.
ALU: The arithmetic and logic unit carries out the logical tasks according to the signal
generated by the CU. The result of the operation is stored in the desired register.
General Purpose Registers: We have four 16-bit general purpose registers: AX
(Accumulator Register), BX (Base Register), CX (Counter) and DX. And each of these 16-bit
registers are further subdivided into 8-bit registers as shown below:
Conditional
Flags
This flag represents the result of the last arithmetic or logical instruction
executed.
Carry Flag
Auxiliary Flag
Parity Flag
Zero Flag
Sign Flag
Overflow Flag
9. Index
Register
The following four registers are in the group of pointer and index registers:
SP (Stack Pointer)
BP (Base Pointer)
SI (Source Index)
DI (Destination Index)
Control
Flags
It controls the operations of the execution unit. Control flags are:
Trap Flag
Interrupt Flag
Direction Flag