8086 Microprocessor
8086 Microprocessor
v) DATA BUS: The data bus consists of 8, 16, 32 or more parallel signal lines.
As indicated by the double-ended arrows on the data bus line, the data bus
lines are bi-directional.
This means that the CPU can read data in on these lines from memory or
from a port as well as send data out on these lines to memory location or to a
port.
Many devices in a system will have their outputs connected to the data bus,
but the outputs of only one device at a time will be enabled.
vi) CONTROL BUS: The control bus consists of 4-10 parallel signal
lines.
The CPU sends out signals on the control bus to enable the outputs
of addressed memory devices or port devices.
Typical control bus signals are memory read, memory write, I/O
read, and I/O writer.
To read a byte of data from a memory location, for example, the
CPU sends out the address of the desired byte on the address bus and
then sends out a memory read signal on the control bus.
History of mp
8086 Microprocessor features:
1. It is 16-bit microprocessor
2. It has a 16-bit data bus, so it can read data from or write data
to memory and ports either 16-bit or 8-bit at a time.
3. It has 20 bit address bus and can access up to memory
locations (1 MB).
4. It can support up to 64K I/O ports
5. It provides 14, 16-bit registers
6. It has multiplexed address and data bus AD0-AD15 & A16-A19
7. It requires single phase clock with 33% duty cycle to
provide internal timing.
8. Prefetches up to 6 instruction bytes from memory and
queues them in order to speed up the processing.
9. 8086 supports 2 modes of operation
a. Minimum mode
b. Maximum mode
Intel 8086
internal
architecture
Architecture of 8086 microprocessor:
As shown in the above figure, the 8086 CPU is divided into two independent functional parts
Bus Interface Unit(BIU)
Execution Unit(EU)
Dividing the work between these two units’ speeds up processing.
Interface act as a mediator for execution parts to external device (RAM, ROM, I/O )
or it is a bridge between external device and processor.
Function of the Bus Interface Unit (BIU):
Fetches instructions or data from memory
Reads data from ports
Write data to memory
Writes data to ports.
In simple words, the BIU handles all transfers of data and addresses on the
buses for the execution unit.
PIN DESCRIPTION
AD0-AD15 (Bidirectional): Address/Data bus. These are low
order address bus. They are multiplexed with data.
When AD lines are used to transmit memory address the symbol A
is used instead of AD, for example A0-A15.
When data are transmitted over AD lines the symbol D is used in
place of AD, for example D0-D7, D8-D15 or D0-D15.
A16-A19 (Output): High order addresses bus. These are
multiplexed with status signals. A16/S3, A17/S4, A18/S5,
A19/S6: The specified address lines are multiplexed with
corresponding status signals.
BHE (Active Low)/S7 (Output): Bus High Enable/Status. During
T1 it is low. It is used to enable data onto the most significant
half of data bus, D8-D15. 8-bit device connected to upper half of
the data bus use BHE (Active Low) signal. It is multiplexed with
status signal S7. S7 signal is available during T2, T3 and T4.
RD (Read) (Active Low): The signal is used for read operation. It
is an output signal. It is active when low.
READY: This is the acknowledgement from the slow device or
memory that they have completed the data transfer. The signal
made available by the devices is synchronized by the 8284A
clock generator to provide ready input to the 8086. The signal is
INTR-Interrupt Request: This is a triggered input. This is sampled
during the last clock cycles of each instruction to determine the
availability of the request. If any interrupt request is pending, the
processor enters the interrupt acknowledge cycle. This can be internally
masked by resulting the interrupt enable flag. This signal is active high
and internally synchronized.
NMI (Input) –NON-MASKABLE INTERRUPT: It is an edge triggered input
which causes a type 2 interrupt. A subroutine is vectored to via an
interrupt vector lookup table located in system memory. NMI is not
mask-able internally by software. A transition from LOW to HIGH initiates
the interrupt at the end of the current instruction. This input is internally
INTA: INTA: Interrupt acknowledges. It is active LOW during T2, T
3 and T w of each interrupt acknowledge cycle.
MN/ MX MINIMUM / MAXIMUM: This pin signal indicates what
mode the processor is to operate in.
Q/GT RQ/GT0: REQUEST/GRANT: These pins are used by other
local bus masters to force the processor to release the local bus at
the end of the processor's current bus cycle. Each pin is
bidirectional with RQ/GT having higher priority than RQ /GT1.
LOCK: It’s an active low pin. It indicates that other system bus
masters are not to allowed to gain control of the system bus while
LOCK is active LOW. The LOCK signal remains active until the
TEST: This input is examined by a ‘WAIT’ instruction. If the TEST pin
goes low, execution will continue, else the processor remains in an
idle state. The input is synchronized internally during each clock cycle
on leading edge of clock.
CLK- Clock Input: The clock input provides the basic timing for
processor operation and bus control activity. It’s an asymmetric
square wave with 33% duty cycle.
RESET (Input) : RESET: causes the processor to immediately
terminate its present activity. The signal must be active HIGH for at
least four clock cycles.
Vcc – Power Supply ( +5V D.C.)
QS1, QS0 (Queue Status) These signals indicate the status of the
internal 8086 instruction queue according to the table shown
below
DT/R : DATA TRANSMIT/RECEIVE: This pin is needed in minimum
system that desires to use an 8286/8287 data bus transceiver. It is
used to control the direction of data flow through the transceiver.
DEN: DATA ENABLE .This pin is provided as an output enable for the
8286/8287 in a minimum system which uses the transceiver. DEN is
active LOW during each memory and I/O access and for INTA cycles.
HOLD/HOLDA: HOLD indicates that another master is requesting a
local bus .This is an active HIGH. The processor receiving the ``hold''
request will issue HLDA (HIGH) as an acknowledgement in the middle
of a T 4 or T 1 clock cycle.