Date post: | 03-Jun-2018 |
Category: |
Documents |
Upload: | christopher-baker |
View: | 231 times |
Download: | 0 times |
of 53
8/11/2019 8086 Hardware
1/53
Prepared bySHIHABUDEEN H
8/11/2019 8086 Hardware
2/53
8086 includes few features, which enhancemultiprocessing capability (it can be used with mathcoprocessors like 8087, I/O processor 8089 etc.
Operates on +5v supply and single phase (single line)
clock frequency.(Clock is generated by separateperipheral chip 8284).
8086 comes with different versions. 8086 runs at 5MHz, 8086-2 runs at 8 MHz, 8086-1 runs at 10 MHz
It comes in 40-pin configuration with HMOStechnology having around 20,000 transistors in itscircuitry.
It has multiplexed address and data bus like 8085 dueto which the pin count is reduced considerably
8/11/2019 8086 Hardware
3/53
8/11/2019 8086 Hardware
4/53
Some of the pins serve particular function inminimum mode(single processor mode) andothers function in maximummode(multiprocessor mode)
Control signals are mainly 3 groups
1. signals having common functions in
minimum mode and maximum mode2. signals having special functions in minimum mode
3. signals having special functions in maximum mode
8/11/2019 8086 Hardware
5/53
AD15
AD0:-these are time multiplexedaddress/data bus A19A16/S6-S3these are time multiplexed
address/status lines.S6is always low.S5
denotes the status of interrupt enable flag.S4& S3denotes which segment register is usedfor memory access. Address bits are separatedfrom status bits by ALE signal
S4 S3 segment
0 0 Data/Extra
0 1 Stack
1 0 Code/None
1 1 Data
8/11/2019 8086 Hardware
6/53
7 :- Bus high enable signal indicate thetransfer of data over higher order data bus
:- when low it indicates the peripherals that
the processor is performing a memory or I/Oread operation
READY:- is an acknowledgement fromperipherals that they have completed the data
transfer INTR :-interrupt request from peripherals . if a
request is pending ,the processor entersinterrupt acknowledgement cycle
8/11/2019 8086 Hardware
7/53
:- the input is examined by aWAITinstruction .when it is low , the execution willcontinue , but the processor remains in an idle
state NMI:- Non Maskable Interrupt . This is an edge
triggered interrupt and cannot be maskedusing software
RESET:- the processor terminates its activity &the execution start from FFFF0H
8/11/2019 8086 Hardware
8/53
CLK: - clock input for the system timing
VCC:- + 5V power supply
GND:- Ground for internal circuit
MN/:- the logic level at this pin decideswhether the processor has to operate either insingle or multiprocessor mode
8/11/2019 8086 Hardware
9/53
M/:the state of this line indicates whetherthe CPU is having a memory or I/O operation
:- a read strobe for interrupt
acknowledgement cycles . when it is low , theprocessor has accepted the interrupt
/:-Data Transmit /Receive :- it denotes thedirection of data flow through the transceivers
:- when low it indicates the peripherals thatthe processor is performing a memory or I/Owrite operation
8/11/2019 8086 Hardware
10/53
ALE:- Address latch Enable . Denotes theavailability of valid address on multiplexedbus
HOLD,HLDA:- Hold& hold acknowledge:-when hold is high , another master isrequesting the bus access. After receivingHOLD request , the processor issues hold
acknowledge signal on HLDA pin
:-Data enable. Indicates the availability ofvalid data over address/data line
8/11/2019 8086 Hardware
11/53
2 , 1, 0 status lines.Reflects the types ofoperation
: this O/P indicates the other system busmaster will be prevented from gaining the systembus , while lock is low
2 0 Operation
0 0 0 Interrupt acknowledge
0 0 1 Read I/O port
0 1 0 Write I/O port
0 1 1 Halt
1 0 0 Code access
1 0 1 Read memory
1 1 0 Write memory1 1 1 Passive
8/11/2019 8086 Hardware
12/53
QS0,QS1:- Queue status . Indicates the status of
prefetch queue
0 1 :-Request/Grant . These pinsare used in other local masters , to force theprocessor to release the local bus at the end ofcurrent bus cycle
QS
1
QS0
Indication
0 0 No operation
0 1 First byte of Opcode
1 0 Queue is empty
1 1 Subsequent byte of Opcode
8/11/2019 8086 Hardware
13/53
8086 processor has a 16-bit data bus multiplexedwith the 16 lower address lines
The processor loads on the address bus (AD0to
AD7, AD8to AD15and A16to A19) the address to beused, and sets the ALE. Thus the address signalsA0to A15are latched on the 74LS373.
On the next clock the processor resets the ALE and
the AD0to AD7and AD8 to AD15lines are used tocarry data (D0to D7 and D8to D15). The enables the buffers of the 74LS245, while the /specifies the direction (read/write)
8/11/2019 8086 Hardware
14/53
The 74LS373 and the 74LS245 are used todemultiplex the AD0to AD7and AD8 to AD15lines. They also provide the necessary bufferingfor the A0to A7, A8to A15, D0to D7 and D8to
D15 lines.
The rest of the address lines (A16to A19) as wellas control lines (, , and M/) need to be
buffered using the 74LS244 octal buffer.
8/11/2019 8086 Hardware
15/53
8/11/2019 8086 Hardware
16/53
During the first clocking period (T1), the address is sent to the
address and address/data connections, and the ALE, /andM/signals are also output
During T2the , are asserted, and data appear on the bus
In T4all bus signals are deactivated in preparation for the next buscycle, and the signal returns to logic 1.
ADDRESS/DATA
WR
8/11/2019 8086 Hardware
17/53
During the first clocking period (T1), the address is sent to the addressand address/data connections, and the ALE, /and M/signals
are also outputDuring T2the , are assertedIn T3the READY signal is sampled and if low, T3becomes a wait state,to allow time to the memory to access dataThe bus is sampled at the end of T3Finally, the signal is deactivated
8/11/2019 8086 Hardware
18/53
8086 support 1MB of external memory .thismemory space is organized as bytes of datastored at consecutive addresses over the range
00000H to FFFFFH 8086 can access any two consecutive bytes as
word of data
Lower addressed data is taken as LSB byte andHigher addressed data as MSB byte of word
8/11/2019 8086 Hardware
19/53
D15-D8 D7-D0
CS CS
BHE A0A1---A19
UPPER BANK LOWER BANK
ODDEVEN
Memory is organized as even and odd banks , each of 512KB,byte data with even address is transferred on D7to D0andbyte data with odd addresses transferred on D15to D8lines
8/11/2019 8086 Hardware
20/53
Instruction stream is fetched from the memoryas words .then there are 3 possibilities
1: Both may be data 2: both the bytes may be Opcode
3: one of the byte may be Data while the othermaybe Opcode
All the 3 possibilities are taken care of by thedecoder circuit , which further derives thesignals those acts as input to the timing and
control unit The timing and control unit derives all signals
required for the execution of instruction
8/11/2019 8086 Hardware
21/53
7 0 memory address
FFFFFH
FFFFEH
00002H
00001H
00000H
8 bits
Memory address space
8/11/2019 8086 Hardware
22/53
The locations from FFFF0H to FFFFF H arereserved for operations including jump toinitialization programme and I/O processor
initialization The locations 00000H to 003FFH are reserved
for interrupt vector table
8/11/2019 8086 Hardware
23/53
8086 can address up to 64 KB I/O byte registers or32 k word I/O registers
Address of an I/O device must not be greater than16 bits, 216=64 KB I/O devices can be accessed by
CPU
I/O address appear on address lines A0 to A15A16 to A19 are at logic 0 levelduring I/Ooperations
DX register is user as 16 bit I/O address pointer. I/O ports are addressed in the same manner as
memory locations
8/11/2019 8086 Hardware
24/53
In a minimum mode 8086 system, the
microprocessor 8086 is operated in minimummode by strapping its MN/MXpin to logic 1.
In this mode, all the control signals are given outby the microprocessor chip itself. There is asingle microprocessor in the minimum modesystem. The remaining components in thesystem are latches, transceivers, clock generator,
memory and I/O devices. Some type of chip selection logic may be
required for selecting memory or I/O devices,depending upon the address map of the system.
8/11/2019 8086 Hardware
25/53
Latches are generally buffered output D-typeflip-flops like 74LS373 or 8282. They are used forseparating the valid address from the
multiplexed address/data signals and arecontrolled by the ALE signal generated by 8086.
Transceivers are the bidirectional buffers andsome times they are called as data amplifiers.
They are required to separate the valid datafrom the time multiplexed address/data signals.
8/11/2019 8086 Hardware
26/53
CLK
READY
RESET
8284A
CLOCK
GENERATOR
WAIT STATE
GENERATOR
MN/
M/
INTA
R
WR
DT/ R
EN
ALE
HE
AD0-AD15
A16-A19
8286
TRANCEIVER
RAM 21422716
PROM
PERIPHERAL
DATAADDR/DATA
ADDR
8282
LATCH
CONTROL
8/11/2019 8086 Hardware
27/53
They are controlled by two signals namely, DENand DT/ R.
The DT/ Rsignal indicates the direction of data,
i.e. from or to the processor. The system containsmemory for the monitor and users programstorage.
Usually, EPROM are used for monitor storage,while RAM for users program storage. A systemmay contain I/O devices.
8/11/2019 8086 Hardware
28/53
The clock generator generates the clock from thecrystal oscillator and then shapes it and dividesto 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 signal with the system clock. It has 20address lines and 16 data lines, the 8086 CPU
requires three octal address latches and two octaldata buffers for the complete address and dataseparation.
8/11/2019 8086 Hardware
29/53
The working of the minimum mode configurationsystem can be better described in terms of the timingdiagrams rather than qualitatively describing theoperations.
The opcode fetch and read cycles are similar. Hencethe timing diagram can be categorized in two parts,the first is the timing diagram for read cycle and thesecond is the timing diagram for write cycle.
The read cycle begins in T1with the assertion ofaddress latch enable (ALE) signal and alsoM/ signal. During the negative going edge of thissignal, the valid address is latched on the local bus.
8/11/2019 8086 Hardware
30/53
The BHEand0signals address low, high or bothbytes. From T1to T4, the M/signal indicates amemory or I/O operation.
At T2, the address is removed from the local bus and
is sent to the output. The bus is then tristated. Theread (RD) control signal is also activated in T2. The read (RD) signal causes the address device to
enable its data bus drivers. After RDgoes low, thevalid data is available on the data bus.
The addressed device will drive the READY linehigh. When the processor returns the read signal tohigh level, the addressed device will again tristateits bus drivers.
8/11/2019 8086 Hardware
31/53
A write cycle also begins with the assertion of ALEand the emission of the address. The M/ signalis again asserted to indicate a memory or I/Ooperation. In T2, after sending the address in T1,the processor sends the data to be written to theaddressed location.
The data remains on the bus until middle ofT4state. The becomes active at the beginning ofT2(unlike is somewhat delayed in T2 to Provide
time for floating). The and0signals are used to select the
proper byte or bytes of memory or I/O word to beread or write.
8/11/2019 8086 Hardware
32/53
M/ Transfer Type
0 0 1 I / O read
0 1 0 I/O write1 0 1 Memory read
1 1 0 Memory write
Data transfer table
The M/ , andsignals indicate the
type of data transfer as specified in table below
8/11/2019 8086 Hardware
33/53
8/11/2019 8086 Hardware
34/53
8/11/2019 8086 Hardware
35/53
The HOLD pin is checked at leading edge of eachclock pulse. If it is received active by the processorbefore T4of the previous cycle or during T1state ofthe current cycle, the CPU activates HLDA in the
next clock cycle and for succeeding bus cycles, thebus will be given to another requesting master.
The control of the bus is not regained by theprocessor until the requesting master does not
drop the HOLD pin low. When the request isdropped by the requesting master, the HLDA isdropped by the processor at the trailing edge ofthe next clock
8/11/2019 8086 Hardware
36/53
8/11/2019 8086 Hardware
37/53
In the maximum mode, the 8086 is operated bystrapping the MN/pin to ground.
In this mode, the processor derives the statussignal
2
, 1,
0
. Another chip called buscontroller derives the control signal using thisstatus information .
In the maximum mode, there may be more
than one microprocessor in the systemconfiguration.
The components in the system are same as inthe minimum mode system.
8/11/2019 8086 Hardware
38/53
CLK
READY
RESET
8284A
CLOCK
GENERATOR
WAIT STATE
GENERATOR
MN/
AD0-AD15
A16-A19
DATA
BUFFERS
RAM 21422716
PROM
PERIPHERAL
DATA
ADDR/DATA
ADDR
8282
LATCH
8288
BUS
CONTROLER CONTROL
/
CLK
8/11/2019 8086 Hardware
39/53
The basic function of the bus controller chipIC8288, is to derive control signals likeR ndWR( for memory and I/O devices),DT/
R
,EN,ALEetc. using the information by theprocessor on the status lines.
The bus controller chip has input lines 2 , 1, 0 andCLK. These inputs to 8288 are driven by CPU.
It derives the outputs DT/ R,EN,ALE, ,, , .The, and CEN pins are specially useful formultiprocessor systems.
8/11/2019 8086 Hardware
40/53
and are generally grounded. CENpin is usually tied to +5V. The significance ofthe MCE/PDENoutput depends upon thestatus of the pin.
If is grounded, it acts as master cascadeenable to control cascade 8259A, else it acts asperipheral data enable used in the multiple busconfigurations.
pin used to issue two interruptacknowledge pulses to the interrupt controlleror to an interrupting device.
8/11/2019 8086 Hardware
41/53
, are I/O read command and I/Owrite command signals respectively . These signalsenable an I/O interface to read or write the datafrom or to the address port.
The , are memory read commandand memory write command signals respectivelyand may be used as memory read or write signals.
All these command signals instructs the memory
to accept or send data from or to the bus. For both of these write command signals, the
advanced signals namely are available.
8/11/2019 8086 Hardware
42/53
They also serve the same purpose, but areactivated one clock cycle earlier than the signals respectively.
The maximum mode system timing diagramsare divided in two portions as read (input) andwrite (output) timing diagrams.
The address/data and address/status timings
are similar to the minimum mode.
8/11/2019 8086 Hardware
43/53
ALE is asserted in T1, just like minimum mode.
Here the only difference between in timingdiagram between minimum mode and
maximum mode is the status signals used andthe available control and advanced commandsignals.
2 , 1, 0
are set at the beginning of buscycle.8288 bus controller will output a pulse ason the ALE and apply a required signal to itsDT/ Rpin during T1
8/11/2019 8086 Hardware
44/53
In T2, 8288 will set EN=1 thus enablingtransceivers, and for an input it will activateor . These signals are activated
until T4. For an output, the oris activated from T2to T4and oris activated from T3to T4. The statusbit S0to S2remains active until T3and become
passive during T3and T4. If reader input is not activated before T3, wait
state will be inserted between T3and T4
8/11/2019 8086 Hardware
45/53
8/11/2019 8086 Hardware
46/53
8/11/2019 8086 Hardware
47/53
The request/grant response sequence containsa series of three pulses. The request/grant pinsare checked at each rising pulse of clock input.
When a request is detected and if the conditionfor HOLD request are satisfied, the processorissues a grant pulse over the pinimmediately during T4(current) or T1(next)state.
When the requesting master receives this pulse,it accepts the control of the bus, it sends arelease pulse to the processor using pin
8/11/2019 8086 Hardware
48/53
8/11/2019 8086 Hardware
49/53
8088P
8/11/2019 8086 Hardware
50/53
8/11/2019 8086 Hardware
51/53
Both are 40 pin DIP
8086 is having 16 bit data bus and 20 bitaddress bus
8088 is having 8 bit data bus and 20 bit addressbus
Pin no 34 is /S7 for 8086 but for 8088 it is
0
(status pin)
8086 :- 6 byte instruction prefetch queue
8088 :- 4 byte instruction prefetch queue
8/11/2019 8086 Hardware
52/53
8086 :- M/control signal
8088 :- /IOcontrol signal
8086 draws a maximum supply current of 360mA , For 8088 it is 340 mA
Both requires +5v power supply
Temperature range 320FH to 1800FH
Execution time is more in 8088 as compared to8086
8/11/2019 8086 Hardware
53/53
8088 can execute the complete instruction set of8086
Address lines A8to A15are not multiplexed in8088
In 8088 ,BIU will fetch a from memory if atleast one byte is free in the queue , but in 8086
at least 2 bytes should be free for nextinstruction fetch