Pin Configuration of 8086
Pin Configuration of 8086
BHE / S7 : The bus high enable (BHE) signal is used to indicate the transfer of data over the higher
order D15 ↔ D8 data bus. It goes low for the data transfer over D15 ↔ D8 and is used to derive
chip select of odd address memory bank or peripherals.
BHE A0 Indication
0 0 Whole word
0 1 Upper byte from or to odd address
1 0 Lower byte from or to even address
1 1 None
RD : Read: whenever the read signal is at logic 0, the data bus receives the data from the
memory or I/O devices connected to the system
READY: This is the acknowledgement from the slow devices or memory that they have completed
the data transfer operation. This signal is active high.
INTR: Interrupt Request: Interrupt request is used to request a hardware interrupt of INTR is
held high when interrupt enable flag is set, the 8086 enters an interrupt acknowledgement
cycle after the current instruction has completed its execution.
TEST : This input is tested by “WAIT” instruction. If the TEST input goes low; execution will
M / IO : Memory/IO - M / IO signal selects either memory operation or I/O operation. This line
indicates that the microprocessor address bus contains either a memory address or an I/O port
address. Signal high at this pin indicates a memory operation. This line is logically equivalent to
S 2 in maximum mode.
INTA : Interrupt acknowledge: The interrupt acknowledge signal is a response to the INTR input
signal. The INTA signal is normally used to gate the interrupt vector number onto the data bus
in response to an interrupt request.
ALE- Address Latch Enable: This output signal indicates the availability of valid address on the
address/data bus, and is connected to latch enable input of latches.
DT / R :Data transmit/Receive: This output signal is used to decide the direction of date flow
DEN : Data Enable: Data bus enable signal indicates the availability of valid data over the
address/data lines.
WR : Write: whenever the write signal is at logic 0, the data bus transmits the data to the memory
or I/O devices connected to the system.
HOLD: The hold input request a direct memory access (DMA). If the hold signal is at logic 1, the
micro process stops its normal execution and places its address, data and control bus at the
high impedance state.
HLDA: Hold acknowledgement indicates that 8086 has entered into the hold state.
Maximum mode signal: The following signals are for maximum mode operation of 8086.
S 2 , S 1 , S 0 : Status lines: These are the status lines that reflect the type of operation being carried
out by the processor.
QS1 and QS0 - Queue status: The queue status bits shows the status of the internal instruction
queue. The encoding of these signals is as follows
RQ / GT1and RQ / GT 0 : request/Grant: The request/grant pins are used by other local bus
masters to force the processor to release the local bus at the end of the processors current bus
cycle. These lines are bidirectional and are used to both request and grant a DMA operation.
RQ / GT 0 is having higher priority than RQ / GT1
2. Operation of 8086 in Minimum mode operation with Read/ Write Timing diagrams.
The latches are generally buffered output D-type flip-flops, like, 74LS373 or 8282. They are
used for separating the valid address from the multiplexed address/data signals and are
controlled by the ALE signal generated by 8086. Since it has 20 address lines and 16 data lines,
the 8086 CPU requires three octal address latches and two octal data buffers for the complete
address and data separation.
Transreceivers are the bidirectional buffers and sometimes they are called as data
amplifiers. They are required to separate the valid data from the time multiplexed address/data
signal. They are controlled by two signals, namely, DEN and DT / R . The DEN signal indicates
that the valid data is available on the data bus, while DT / R indicates the direction of data, i.e.
from or to the processor.
The system contains memory for the monitor and users program storage. Usually, EPROMS
are used for monitor storage, while RAMs for users program storage. A system may contain I/O
devices for communication with the processor as well as some special purpose I/O devices.
The clock generator generates the clock from the crystal oscillator and then shapes it and
divides to make it more precise so that it can be used as an accurate timing reference for the
system. The clock generator also synchronizes some external signals with the system clock.
The working of the minimum mode configuration system described in terms of the timing
diagrams. The timing diagram can be categorized in two parts, the
first is the timing diagram for read cycle and the second is the timing diagram for write cycle.
A write cycle also begins with the assertion of ALE and the emission of the address. The
M / IO signal is again asserted to indicate a memory or I/O operation. In T2, after sending the
address in T1, the processor sends the data to be written to the addressed location. The data
remains on the bus until middle of T4 state. The WR becomes active at the beginning of T2
(unlike RD is somewhat delayed in T2 to provide time for floating). The BHE and A0 signals are
used to select the proper byte or bytes of memory or I/O word to be read or written. The M / IO ,
RD and WR signals indicate the types of data transfer as specified in Table
3. Operation of 8086 in Maximum mode operation with Read/ Write Timing diagrams.
In the maximum mode, the 8086 is operated by strapping the MN / MX pin to ground. In
this mode, the processor derives the status signals S 2 , S 1 , S 0 . Another chip called bus controller
derives the control signals using this status information. In the maximum mode, there may be
more than one microprocessor in the system configuration. The other components in the system
are the same as in the minimum mode system. The general system organization is as shown in
the below figure.
The basic functions of the bus controller chip IC8288, is to derive control signals like RD
and WR (for memory and I/O devices), DEN, DT / R , ALE, etc. using the information made
available by the processor on the status lines. The bus controller chip has input lines S 2 , S 1 , S 0
and CLK. These inputs to 8288 are driven by the CPU. It derives the outputs ALE, DEN, DT / R ,
MWTC, MRDC , IORC , IOWC and INTA. INTA pin is used to issue two interrupt acknowledge
pulses to the interrupt controller or to an interrupting device.
IORC*, IOWC* are I/O read command and I/O write command signals respectively. These
signals enable an IO interface to read or write the data from or to the addressed port. The
MRDC*, MWTC* are memory read command and memory write command signals respectively
and may be used as memory read and write signals. All these command signals instruct the
memory to accept or send data from or to the bus. The maximum mode system timing diagrams
are also divided in two portions as read (input) and write (output) timing diagrams. The
address/data and address/status timings are similar to the minimum mode. ALE is asserted in
T1, just like minimum mode. The only difference lies in the status signals used and the available
control and advanced command signals.
Memory Read Timing Diagram:
Each interrupt type is given a number between 0 to 255 and the address of each interrupt is found by multiplying the type by 4 e.g. for type 11,
interrupt address is 11×4=4410=0002CH
Only the first five types have explicit definitions.
The next 27 interrupt types, from 5 to 31, are reserved by Intel for use in future microprocessors.
The upper 224 interrupt types, from 32 to 255, available for user for hardware or software interrupts.
When 8086 responds to an interrupt, it automatically goes to specified location in the interrupt vector table to get the starting address of
interrupt service routine.
1. It decrements the stack pointer by 2 pushes the flag register on the stack.
2. It disables the 8086 INTR interrupt input by clearing the interrupt flag(IF) in the flag register.
4. It decrements the stack pointer by 2 and pushes the current code segment register contents on the stack.
5. It decrements the stack pointer again by 2 and pushes the current instruction pointer contents on the stack.
6. It does an indirect far jump to start of the procedure by loading the CS and IP values for the start of the interrupt service routine.
An IRET instruction at the end of the interrupt service routine returns execution to main program.
The 8086 gets the new values of CS and IP register from four memory addresses.
When it responds to an interrupt, the 8086 goes to memory locations to get the CS an IP values to start of the interrupt service routine.
DOS BIOS
S.No
1. DOS is loaded from the bootable BIOS is located in an 8 Kbyte ROM.
diskette.
The programs within the ROM-BIOS
DOS program offer different degree of provide the most direct, lowest level
2. flexibility, portability and hardware interaction with the various devices in
independence. the system. Using these programs
require hardware knowledge.
DOS has ability to load and execute ROM-BIOS does not have ability to load and
3. programs directly. execute programs directly.
DOS can store data on the ROM-BIOS cannot store data on the diskette
4. diskette organized as a logical organized as a logical files.
files.
DOS has command interpreter to allow ROM-BIOS have no command interpreter to
5. us to copy files, print files and delete allow us to copy files, print files and delete
files. files.
7. Design an 8086 based system with the following specifications
i.8086 in minimum mode
ii.64Kb EPROM
iii.64Kb RAM
Draw the complete schematic of the design indicating address map
8. Design an 8086 based system with the following specifications
i.8086 in maximum mode
ii.64Kb EPROM
iii.64Kb RAM
Draw the complete schematic of the design indicating address map