Escolar Documentos
Profissional Documentos
Cultura Documentos
Features Description
• 12.5MHz, 8MHz and 5MHz Versions Available The Intersil 82C59A is a high performance CMOS Priority
- 12.5MHz Operation . . . . . . . . . . . . . . . . . . . 82C59A-12 Interrupt Controller manufactured using an advanced 2µm
- 8MHz Operation . . . . . . . . . . . . . . . . . . . . . . . 82C59A CMOS process. The 82C59A is designed to relieve the sys-
tem CPU from the task of polling in a multilevel
- 5MHz Operation . . . . . . . . . . . . . . . . . . . . . . 82C59A-5
priority system. The high speed and industry standard
• High Speed, “No Wait-State” Operation with 12.5MHz configuration of the 82C59A make it compatible with micro-
80C286 and 8MHz 80C86/88 processors such as 80C286, 80286, 80C86/88, 8086/88,
8080/85 and NSC800.
• Pin Compatible with NMOS 8259A
The 82C59A can handle up to eight vectored priority inter-
• 80C86/88/286 and 8080/85/86/88/286 Compatible rupting sources and is cascadable to 64 without additional
• Eight-Level Priority Controller, Expandable to circuitry. Individual interrupting sources can be masked or
64 Levels prioritized to allow custom system configuration. Two modes
of operation make the 82C59A compatible with both 8080/85
• Programmable Interrupt Modes and 80C86/88/286 formats.
• Individual Request Mask Capability Static CMOS circuit design ensures low operating power.
• Fully Static Design The Intersil advanced CMOS process results in performance
equal to or greater than existing equivalent products at a
• Fully TTL Compatible fraction of the power.
• Low Power Operation
- ICCSB . . . . . . . . . . . . . . . . . . . . . . . . . 10µA Maximum
- ICCOP . . . . . . . . . . . . . . . . . . . . . 1mA/MHz Maximum
• Single 5V Power Supply
• Operating Temperature Ranges
- C82C59A . . . . . . . . . . . . . . . . . . . . . . . . .0oC to +70oC
- I82C59A . . . . . . . . . . . . . . . . . . . . . . . . -40oC to +85oC
- M82C59A . . . . . . . . . . . . . . . . . . . . . . -55oC to +125oC
Ordering Information
PART NUMBER
TEMPERATURE
5MHz 8MHz 12.5MHz PACKAGE RANGE PKG. NO.
CAUTION: These devices are sensitive to electrostatic discharge; follow proper IC Handling Procedures. File Number 2784.2
http://www.intersil.com or 407-727-9207 | Copyright © Intersil Corporation 1999
4-1
82C59A
Pinouts
82C59A (PDIP, CERDIP, SOIC) 82C59A (PLCC, CLCC)
TOP VIEW TOP VIEW
INTA
VCC
CS 1 28 VCC
WR
RD
CS
D7
A0
WR 2 27 A0
4 3 2 1 28 27 26
RD 3 26 INTA
D6 5 25 IR7
D7 4 25 IR7
D5 6 24 IR6
D6 5 24 IR6
23 IR5 D4 7 23 IR5
D5 6
D4 7 22 IR4 D3 8 22 IR4
D3 8 21 IR3 D2 9 21 IR3
D2 9 20 IR2 D1 10 20 IR2
D1 10 19 IR1
D0 11 19 IR1
D0 11 18 IR0
12 13 14 15 16 17 18
CAS 0 12 17 INT
CAS 0
CAS 1
GND
CAS 2
SP/ EN
INT
IR0
CAS 1 13 16 SP/EN
GND 14 15 CAS 2
PIN DESCRIPTION
D7 - D0 Data Bus (Bidirectional)
RD Read Input
WR Write Input
A0 Command Select Address
CS Chip Select
CAS 2 - CAS 0 Cascade Lines
SP/EN Slave Program Input Enable
INT Interrupt Output
INTA Interrupt Acknowledge Input
IR0 - IR7 Interrupt Request Inputs
Functional Diagram
INTA INT
DATA
D7-D0 BUS
CONTROL LOGIC
BUFFER
IR0
RD READ/ IR1
WR WRITE IN - INTERRUPT IR2
A0 LOGIC SERVICE PRIORITY REQUEST IR3
REG RESOLVER REG IR4
(ISR) (IRR) IR5
CS IR6
IR7
FIGURE 1.
4-2
82C59A
Pin Description
PIN
SYMBOL NUMBER TYPE DESCRIPTION
VCC 28 I VCC: The +5V power supply pin. A 0.1µF capacitor between pins 28 and 14 is recommended for
decoupling.
GND 14 I GROUND
CS 1 I CHIP SELECT: A low on this pin enables RD and WR communications between the CPU and the
82C59A. INTA functions are independent of CS.
WR 2 I WRITE: A low on this pin when CS is low enables the 82C59A to accept command words from
the CPU.
RD 3 I READ: A low on this pin when CS is low enables the 82C59A to release status onto the data bus
for the CPU.
D7 - D0 4 - 11 I/O BIDIRECTIONAL DATA BUS: Control, status, and interrupt-vector information is transferred via
this bus.
CAS0 - CAS2 12, 13, 15 I/O CASCADE LINES: The CAS lines form a private 82C59A bus to control a multiple 82C59A struc-
ture. These pins are outputs for a master 82C59A and inputs for a slave 82C59A.
SP/EN 16 I/O SLAVE PROGRAM/ENABLE BUFFER: This is a dual function pin. When in the Buffered Mode it
can be used as an output to control buffer transceivers (EN). When not in the Buffered Mode it is
used as an input to designate a master (SP = 1) or slave (SP = 0).
INT 17 O INTERRUPT: This pin goes high whenever a valid interrupt request is asserted. It is used to inter-
rupt the CPU, thus, it is connected to the CPU's interrupt pin.
IR0 - IR7 18 - 25 I INTERRUPT REQUESTS: Asynchronous inputs. An interrupt request is executed by raising an
IR input (low to high), and holding it high until it is acknowledged (Edge Triggered Mode), or just
by a high level on an IR input (Level Triggered Mode). Internal pull-up resistors are implemented
on IR0 - 7.
INTA 26 I INTERRUPT ACKNOWLEDGE: This pin is used to enable 82C59A interrupt-vector data onto the
data bus by a sequence of interrupt acknowledge pulses issued by the CPU.
A0 27 I ADDRESS LINE: This pin acts in conjunction with the CS, WR, and RD pins. It is used by the
82C59A to decipher various Command Words the CPU writes and status the CPU wishes to read.
It is typically connected to the CPU A0 address line (A1 for 80C86/88/286).
Functional Description
CPU - DRIVEN
Interrupts in Microcomputer Systems MULTIPLEXER
CPU
Microcomputer system design requires that I/O devices such
as keyboards, displays, sensors and other components
receive servicing in an efficient manner so that large
amounts of the total system tasks can be assumed by the
microcomputer with little or no effect on throughput. RAM I/O (1)
4-3
82C59A
A more desirable method would be one that would allow the The Programmable Interrupt Controller (PlC) functions as an
microprocessor to be executing its main program and only overall manager in an Interrupt-Driven system. It accepts
stop to service peripheral devices when it is told to do so by requests from the peripheral equipment, determines which
the device itself. In effect, the method would provide an of the incoming requests is of the highest importance (prior-
external asynchronous input that would inform the processor ity), ascertains whether the incoming request has a higher
that it should complete whatever instruction that is currently priority value than the level currently being serviced, and
being executed and fetch a new routine that will service the issues an interrupt to the CPU based on this determination.
requesting device. Once this servicing is complete, however,
Each peripheral device or structure usually has a special
the processor would resume exactly where it left off.
program or “routine” that is associated with its specific func-
This is the Interrupt-driven method. It is easy to see that sys- tional or operational requirements; this is referred to as a
tem throughput would drastically increase, and thus, more “service routine”. The PlC, after issuing an interrupt to the
tasks could be assumed by the microcomputer to further CPU, must somehow input information into the CPU that can
enhance its cost effectiveness. “point” the Program Counter to the service routine associ-
ated with the requesting device. This “pointer” is an address
INT in a vectoring table and will often be referred to, in this docu-
CPU ment, as vectoring data.
INTA INT
DATA
D 7 - D0 BUS
BUFFER CONTROL LOGIC
IR0
RD READ/ IR1
WR WRITE IN INTERRUPT IR2
A0 LOGIC SERVICE PRIORITY REQUEST IR3
REG RESOLVER REG IR4
(ISR) (IRR) IR5
CS IR6
IR7
4-4
82C59A
This output goes directly to the CPU interrupt input. The The powerful features of the 82C59A in a microcomputer
VOH level on this line is designed to be fully compatible with system are its programmability and the interrupt routine
the 8080, 8085, 8086/88, 80C86/88, 80286, and 80C286 addressing capability. The latter allows direct or indirect
input levels. jumping to the specified interrupt routine requested without
any polling of the interrupting devices. The normal sequence
Interrupt Acknowledge (INTA) of events during an interrupt depends on the type of CPU
being used.
INTA pulses will cause the 82C59A to release vectoring
information onto the data bus. The format of this data These events occur in an 8080/8085 system:
depends on the system mode (µPM) of the 82C59A. 1. One or more of the INTERRUPT REQUEST lines
(IR0 - IR7) are raised high, setting the corresponding IRR
Data Bus Buffer
bit(s).
This 3-state, bidirectional 8-bit buffer is used to interface the
2. The 82C59A evaluates those requests in the priority
82C59A to the System Data Bus. Control words and status
resolver and sends an interrupt (INT) to the CPU, if
information are transferred through the Data Bus Buffer.
appropriate.
Read/Write Control Logic 3. The CPU acknowledges the lNT and responds with an
The function of this block is to accept output commands from INTA pulse.
the CPU. It contains the Initialization Command Word (lCW) 4. Upon receiving an lNTA from the CPU group, the highest
registers and Operation Command Word (OCW) registers priority lSR bit is set, and the corresponding lRR bit is
which store the various control formats for device operation. reset. The 82C59A will also release a CALL instruction
This function block also allows the status of the 82C59A to code (11001101) onto the 8-bit data bus through D0 - D7.
be transferred onto the Data Bus.
5. This CALL instruction will initiate two additional INTA
Chip Select (CS) pulses to be sent to 82C59A from the CPU group.
A LOW on this input enables the 82C59A. No reading or 6. These two INTA pulses allow the 82C59A to release its
writing of the device will occur unless the device is selected. preprogrammed subroutine address onto the data bus.
The lower 8-bit address is released at the first INTA pulse
Write (WR) and the higher 8-bit address is released at the second
A LOW on this input enables the CPU to write control words INTA pulse.
(lCWs and OCWs) to the 82C59A. 7. This completes the 3-byte CALL instruction released by
the 82C59A. In the AEOI mode, the lSR bit is reset at the
Read (RD) end of the third INTA pulse. Otherwise, the lSR bit
A LOW on this input enables the 82C59A to send the status remains set until an appropriate EOI command is issued
of the Interrupt Request Register (lRR), In-Service Register at the end of the interrupt sequence.
(lSR), the Interrupt Mask Register (lMR), or the interrupt The events occurring in an 80C86/88/286 system are the
level (in the poll mode) onto the Data Bus. same until step 4.
A0 4. The 82C59A does not drive the data bus during the first
INTA pulse.
This input signal is used in conjunction with WR and RD sig-
nals to write commands into the various command registers, 5. The 80C86/88/286 CPU will initiate a second INTA pulse.
as well as to read the various status registers of the chip. During this INTA pulse, the appropriate ISR bit is set and
This line can be tied directly to one of the system address the corresponding bit in the IRR is reset. The 82C59A
lines. outputs the 8-bit pointer onto the data bus to be read by
the CPU.
4-5
82C59A
CONTROL BUS
CS A0 D 7 - D0 RD WR INT INTA
CASCADE CAS 0
LINES CAS 1 82C59A
CAS 2 IRQ IRQ IRQ IRQ IRQ IRQ IRQ IRQ
SP/EN 7 6 5 4 3 2 1 0
6. This completes the interrupt cycle. In the AEOI mode, the CONTENT OF SECOND INTERRUPT VECTOR BYTE
ISR bit is reset at the end of the second INTA pulse. Oth-
erwise, the ISR bit remains set until an appropriate EOI IR INTERVAL = 4
command is issued at the end of the interrupt subroutine. D7 D6 D5 D4 D3 D2 D1 D0
During the third INTA pulse, the higher address of the appro-
priate service routine, which was programmed as byte 2 of the
initialization sequence (A8 - A15), is enabled onto the bus.
4-6
82C59A
D7 D6 D5 D4 D3 D2 D1 D0 ICW1
lR7 T7 T6 T5 T4 T3 1 1 1
lR6 T7 T6 T5 T4 T3 1 1 0
ICW2
IR5 T7 T6 T5 T4 T3 1 0 1
IR4 T7 T6 T5 T4 T3 1 0 0
IR3 T7 T6 T5 T4 T3 0 1 1
NO (SNGL = 1) IN
IR2 T7 T6 T5 T4 T3 0 1 0 CASCADE
MODE
IR1 T7 T6 T5 T4 T3 0 0 1
IR0 T7 T6 T5 T4 T3 0 0 0 YES (SNGL = 0))
4-7
82C59A
ICW1
A0 D7 D6 D5 D4 D3 D2 D1 D0
0 A7 A6 A5 1 LTIM ADI SNGL IC4
1 = ICW4 needed
0 = No ICW4 needed
1 = Single
0 = Cascade Mode
A0 D7 D6 D5 D4 D3 D2 D1 D0
A15 A14 A13 A12 A11 A10 A9 A8
1
T7 T6 T5 T4 T3
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 S7 S6 S5 S4 S3 S2 S1 S0
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 0 0 0 0 0 ID2 ID1 ID0
SLAVE ID (NOTE)
0 1 2 3 4 5 6 7
0 1 0 1 0 1 0 1
0 0 1 1 0 0 1 1
0 0 0 0 1 1 1 1
ICW4
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 0 0 0 SFNM BUF M/S AEOI µPM
1 = 8086/8088 mode
0 = MCS-80/85 mode
1 = Auto EOI
0 = Normal EOI
0 X - Non buffered mode
4-8
82C59A
The address format is 2 bytes long (A0 - A15). When the AEOI: If AEOI = 1, the automatic end of interrupt mode is
routine interval is 4, A0 - A4 are automatically inserted by programmed.
the 82C59A, while A5 - A15 are programmed externally.
µPM: Microprocessor mode: µPM = 0 sets the 82C59A for
When the routine interval is 8, A0 - A5 are automatically
8080/85 system operation, µPM = 1 sets the
inserted by the 82C59A while A6 - A15 are programmed
82C59A for 80C86/88/286 system operation.
externally.
The 8-byte interval will maintain compatibility with current Operation Command Words (OCWs)
software, while the 4-byte interval is best for a compact jump
table. After the Initialization Command Words (lCWs) are pro-
grammed into the 82C59A, the device is ready to accept
In an 80C86/88/286 system, A15 - A11 are inserted in the
interrupt requests at its input lines. However, during the
five most significant bits of the vectoring byte and the
82C59A operation, a selection of algorithms can command
82C59A sets the three least significant bits according to the
the 82C59A to operate in various modes through the Opera-
interrupt level. A10 - A5 are ignored and ADI (Address inter-
tion Command Words (OCWs).
val) has no effect.
LTlM: If LTlM = 1, then the 82C59A will operate in the level OPERATION COMMAND WORDS (OCWs)
interrupt mode. Edge detect logic on the interrupt A0 D7 D6 D5 D4 D3 D2 D1 D0
inputs will be disabled.
OCW1
ADI: ALL address interval. ADI = 1 then interval = 4; ADI 1 M7 M6 M5 M4 M3 M2 M1 M0
= 0 then interval = 8.
OCW2
SNGL: Single. Means that this is the only 82C59A in the
0 R SL EOI 0 0 L2 L1 L0
system. If SNGL = 1, no ICW3 will be issued.
OCW3
IC4: If this bit is set - lCW4 has to be issued. If lCW4 is
0 0 ESMM SMM 0 1 P RR RIS
not needed, set lC4 = 0.
Initialization Command Word 4 (ICW4) SMM - Special Mask Mode. If ESMM = 1 and SMM = 1, the
82C59A will enter Special Mask Mode. If ESMM = 1 and
SFNM: If SFNM = 1, the special fully nested mode is pro- SMM = 0, the 82C59A will revert to normal mask mode.
grammed. When ESMM = 0, SMM has no effect.
BUF: If BUF = 1, the buffered mode is programmed. In
Fully Nested Mode
buffered mode, SP/EN becomes an enable output
and the master/slave determination is by M/S. This mode is entered after initialization unless another mode
is programmed. The interrupt requests are ordered in priority
M/S: If buffered mode is selected: M/S = 1 means the
from 0 through 7 (0 highest). When an interrupt is acknowl-
82C59A is programmed to be a master, M/S = 0
edged the highest priority request is determined and its vec-
means the 82C59A is programmed to be a slave. If
tor placed on the bus. Additionally, a bit of the Interrupt
BUF = 0, M/S has no function.
Service register (IS0 - 7) is set. This bit remains set until the
microprocessor issues an End of Interrupt (EOI) command
4-9
82C59A
immediately before returning from the service routine, or if After the initialization sequence, IR0 has the highest priority
the AEOI (Automatic End of Interrupt) bit is set, until the trail- and IR7 the lowest. Priorities can be changed, as will be
ing edge of the last INTA. While the IS bit is set, all further explained in the rotating priority mode or via the set priority
interrupts of the same or lower priority are inhibited, while command.
higher levels will generate an interrupt (which will be
acknowledged only if the microprocessor internal interrupt
enable flip-flop has been re-enabled through software).
OCW1
A0 D7 D6 D5 D4 D3 D2 D1 D0
1 M7 M6 M5 M4 M3 M2 M1 M0
Interrupt Mask
1 = Mask set
0 = Mask reset
OCW2
A0 D7 D6 D5 D4 D3 D2 D1 D0
0 R SL EOI 0 0 L2 L1 L0 IR LEVEL TO BE
ACTED UPON
0 1 2 3 4 5 6 7
0 1 0 1 0 1 0 1
0 0 1 1 0 0 1 1
0 0 1 Non-specific EOI command 0 0 0 0 1 1 1 1
End of interrupt
0 1 1 † Specific EOI command
1 0 1 Rotate on non-specific EOI command
1 0 0 Rotate in automatic EOI mode (set)
0 0 0 Automatic rotation
Rotate in automatic EOI mode (clear)
1 1 1 † Rotate on specific EOI command
1 1 0 † Set priority command
Specific rotation
0 1 0 No operation
† L0 - L2 are used
OCW3
A0 D7 D6 D5 D4 D3 D2 D1 D0
0 0 ESMM SMM 0 1 P RR RIS
READ REGISTER COMMAND
0 1 0 1
0 0 1 1
1 = Poll command
0 = No poll command
SPECIAL MASK MODE
0 1 0 1
0 0 1 1
4-10
82C59A
End of Interrupt (EOI) After Rotate (lR4 was serviced, all other priorities rotated
correspondingly)
The In-Service (IS) bit can be reset either automatically fol-
lowing the trailing edge of the last in sequence INTA pulse IS7 IS6 IS5 IS4 IS3 IS2 IS1 IS0
(when AEOI bit in lCW1 is set) or by a command word that
must be issued to the 82C59A before returning from a ser- “IS” Status 0 1 0 0 0 0 0 0
vice routine (EOI Command). An EOI command must be Priority 2 1 0 7 6 5 4 3
issued twice if servicing a slave in the Cascade mode, once Status
for the master and once for the corresponding slave. highest lowest
There are two forms of EOl command: Specific and Non- There are two ways to accomplish Automatic Rotation using
Specific. When the 82C59A is operated in modes which pre- OCW2, the Rotation on Non-Specific EOI Command (R = 1,
serve the fully nested structure, it can determine which IS bit SL = 0, EOI = 1) and the Rotate in Automatic EOI Mode
to reset on EOI. When a Non-Specific command is issued which is set by (R = 1, SL = 0, EOI = 0) and cleared by
the 82C59A will automatically reset the highest IS bit of (R = 0, SL = 0, EOl = 0).
those that are set, since in the fully nested mode the highest
IS level was necessarily the last level acknowledged and Specific Rotation (Specific Priority)
serviced. A non-specific EOI can be issued with OCW2
(EOl = 1, SL = 0, R = 0). The programmer can change priorities by programming the
lowest priority and thus, fixing all other priorities; i.e., if IR5 is
When a mode is used which may disturb the fully nested programmed as the lowest priority device, then IR6 will have
structure, the 82C59A may no longer be able to determine the highest one.
the last level acknowledged. In this case a Specific End of
Interrupt must be issued which includes as part of the com- The Set Priority command is issued in OCW2 where: R = 1,
mand the IS level to be reset. A specific EOl can be issued SL = 1, L0 - L2 is the binary priority level code of the lowest
with OCW2 (EOI = 1, SL = 1, R = 0, and L0 - L2 is the binary priority device.
level of the IS bit to be reset). Observe that in this mode internal status is updated by soft-
An lRR bit that is masked by an lMR bit will not be cleared by ware control during OCW2. However, it is independent of the
a non-specific EOI if the 82C59A is in the Special Mask End of Interrupt (EOI) command (also executed by OCW2).
Mode. Priority changes can be executed during an EOI command
by using the Rotate on Specific EOl command in OCW2
Automatic End of Interrupt (AEOI) Mode (R = 1, SL = 1, EOI = 1, and L0 - L2 = IR level to receive low-
est priority).
If AEOI = 1 in lCW4, then the 82C59A will operate in AEOl
mode continuously until reprogrammed by lCW4. In this Interrupt Masks
mode the 82C59A will automatically perform a non-specific
EOI operation at the trailing edge of the last interrupt Each Interrupt Request input can be masked individually by
acknowledge pulse (third pulse in 8080/85, second in the Interrupt Mask Register (IMR) programmed through
80C86/88/286). Note that from a system standpoint, this OCW1. Each bit in the lMR masks one interrupt channel if it
mode should be used only when a nested multilevel interrupt is set (1). Bit 0 masks IR0, Bit 1 masks IR1 and so forth.
structure is not required within a single 82C59A. Masking an IR channel does not affect the operation of other
channels.
Automatic Rotation (Equal Priority Devices)
Special Mask Mode
In some applications there are a number of interrupting
devices of equal priority. In this mode a device, after being Some applications may require an interrupt service routine
serviced, receives the lowest priority, so a device requesting to dynamically alter the system priority structure during its
an interrupt will have to wait, in the worst case until each of 7 execution under software control. For example, the routine
other devices are serviced at most once. For example, if the may wish to inhibit lower priority requests for a portion of its
priority and “in service” status is: execution but enable some of them for another portion.
Before Rotate (lR4 the highest priority requiring service) The difficulty here is that if an Interrupt Request is acknowl-
edged and an End of Interrupt command did not reset its IS
bit (i.e., while executing a service routine), the 82C59A
IS7 IS6 IS5 IS4 IS3 IS2 IS1 IS0 would have inhibited all lower priority requests with no easy
“IS” Status 0 1 0 1 0 0 0 0
way for the routine to enable them.
Priority 7 6 5 4 3 2 1 0 That is where the Special Mask Mode comes in. In the Spe-
Status cial Mask Mode, when a mask bit is set in OCW1, it inhibits
further interrupts at that level and enables interrupts from all
lowest highest other levels (lower as well as higher) that are not masked.
Thus, any interrupts may be selectively enabled by loading
the mask register.
4-11
82C59A
The Special Mask Mode is set by OCW3 where: ESMM = 1, The word enabled onto the data bus during RD is:
SMM = 1, and cleared where ESMM = 1, SMM = 0.
D7 D6 D5 D4 D3 D2 D1 D0
Poll Command I - - - - W2 W1 W0
In this mode, the INT output is not used or the microproces-
W0 - W2: Binary code of the highest priority level request-
sor internal Interrupt Enable flip flop is reset, disabling its
ing service.
interrupt input. Service to devices is achieved by software
using a Poll command. I: Equal to a “1” if there is an interrupt.
The Poll command is issued by setting P = 1 in OCW3. The This mode is useful if there is a routine command common to
82C59A treats the next RD pulse to the 82C59A (i.e., RD = several levels so that the INTA sequence is not needed (saves
0, CS = 0) as an interrupt acknowledge, sets the appropriate ROM space). Another application is to use the poll mode to
IS bit if there is a request, and reads the priority level. Inter- expand the number of priority levels to more than 64.
rupt is frozen from WR to RD.
D Q NON-
IR MASK LATCH MASKED
C Q REQ
D Q
INTA
C
8080/85
MODE CLR
FREEZE
NOTES:
1. Master clear active only during ICW1.
2. FREEZE is active during INTA and poll sequence only.
3. Truth Table for D-latch.
C D Q Operation
1 D1 D1 Follow
0 X Qn-1 Hold
4-12
82C59A
treats the RD following a “poll write” operation as an INTA. In both the edge and level triggered modes the IR inputs
After initialization, the 82C59A is set to lRR. must remain high until after the falling edge of the first INTA.
If the IR input goes low before this time a DEFAULT lR7 will
For reading the lMR, no OCW3 is needed. The output data bus
occur when the CPU acknowledges the interrupt. This can
will contain the lMR whenever RD is active and A0 = 1 (OCW1).
be a useful safeguard for detecting interrupts caused by spu-
Polling overrides status read when P = 1, RR = 1 in OCW3.
rious noise glitches on the IR inputs. To implement this fea-
Edge and Level Triggered Modes ture the lR7 routine is used for “clean up” simply executing a
return instruction, thus, ignoring the interrupt. If lR7 is
This mode is programmed using bit 3 in lCW1. needed for other purposes a default lR7 can still be detected
If LTlM = “0”, an interrupt request will be recognized by a low to by reading the ISR. A normal lR7 interrupt will set the corre-
high transition on an IR input. The IR input can remain high sponding ISR bit, a default IR7 won’t. If a default IR7 routine
without generating another interrupt. occurs during a normal lR7 routine, however, the ISR will
remain set. In this case it is necessary to keep track of
If LTIM = “1”, an interrupt request will be recognized by a “high” whether or not the IR7 routine was previously entered. If
level on an IR input, and there is no need for an edge detection. another lR7 occurs it is a default.
The interrupt request must be removed before the EOI com-
mand is issued or the CPU interrupt is enabled to prevent a In power sensitive applications, it is advisable to place the
second interrupt from occurring. 82C59A in the edge-triggered mode with the IR lines nor-
mally high. This will minimize the current through the internal
The priority cell diagram shows a conceptual circuit of the level pull-up resistors on the IR pins.
sensitive and edge sensitive input circuitry of the 82C59A. Be
sure to note that the request latch is a transparent D type latch.
80C86/88/286
8080/85
IR
INT
80C86/88/286
INTA
NOTE:
1. Edge triggered mode only.
FIGURE 10. IR TRIGGERING TIMING REQUIREMENTS
4-13
82C59A
This modification forces the use of software programming to release the device routine address during bytes 2 and 3 of
determine whether the 82C59A is a master or a slave. Bit 3 INTA. (Byte 2 only for 80C86/88/286).
in ICW4 programs the buffered mode, and bit 2 in lCW4
The cascade bus lines are normally low and will contain the
determines whether it is a master or a slave.
slave address code from the leading edge of the first INTA
Cascade Mode pulse to the trailing edge of the last INTA pulse. Each
82C59A in the system must follow a separate initialization
The 82C59A can be easily interconnected in a system of sequence and can be programmed to work in a different
one master with up to eight slaves to handle up to 64 priority mode. An EOI command must be issued twice: once for the
levels. master and once for the corresponding slave. Chip select
The master controls the slaves through the 3 line cascade decoding is required to activate each 82C59A.
bus (CAS2 - 0). The cascade bus acts like chip selects to the NOTE: Auto EOI is supported in the slave mode for the 82C59A.
slaves during the INTA sequence. The cascade lines of the Master 82C59A are activated only
In a cascade configuration, the slave interrupt outputs (INT) for slave inputs, non-slave inputs leave the cascade line
are connected to the master interrupt request inputs. When inactive (low). Therefore, it is necessary to use a slave
a slave request line is activated and afterwards acknowl- address of 0 (zero) only after all other addresses are used.
edged, the master will enable the corresponding slave to
CONTROL BUS
INT REQ
DATA BUS (8)
INTERRUPT REQUESTS
4-14
82C59A
Die Characteristics
Gate Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1250 Gates
CAUTION: Stresses above those listed in “Absolute Maximum Ratings” may cause permanent damage to the device. This is a stress only rating and operation
of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied.
DC Electrical Specifications VCC = +5.0V ±10%, TA = 0oC to +70oC (C82C59A), TA = -40oC to +85oC (I82C59A), TA = -55oC to
+125oC (M82C59A)
II Input Leakage Current -1.0 +1.0 µA VIN = GND or VCC, Pins 1-3, 26-27
IO Output Leakage Current -10.0 +10.0 µA VOUT = GND or VCC, Pins 4-13, 15-16
lCCSB Standby Power Supply Current - 10 µA VCC = 5.5V, VIN = VCC or GND Outputs
Open, (Note 1)
ICCOP Operating Power Supply Current - 1 mA/MHz VCC = 5.0V, VIN = VCC or GND, Outputs Open,
TA = 25oC, (Note 2)
NOTES:
1. Except for IR0 - lR7 where VIN = VCC or open.
2. ICCOP = 1mA/MHz of peripheral read/write cycle time. (ex: 1.0µs I/O read/write cycle time = 1mA).
Capacitance TA = +25oC
SYMBOL PARAMETER TYP UNITS TEST CONDITIONS
4-15
82C59A
AC Electrical Specifications VCC = +5.0V ±10%, GND = 0V, TA = 0oC to +70oC (C82C59A), TA -40oC to +85oC (l82C59A),
TA = -55oC to +125oC (M82C59A)
TIMING REQUIREMENTS
(11) TRHRL End of RD to next RD, End of INTA (within 160 - 160 - 90 - ns
an INTA sequence only)
TIMING RESPONSES
NOTE:
1. Worst case timing for TCHCL in an actual microprocessor system is typically greater than the values specified for the 82C59A,
(i.e. 8085A = 1.6µs, 8085A -2 = 1µs, 80C86 = 1µs, 80C286 -10 = 131ns, 80C286 -12 = 98ns).
4-16
82C59A
AC Test Circuit
V1
R1
OUTPUT FROM TEST
DEVICE UNDER POINT
TEST C1 R2
(NOTE)
TEST
CONDITION V1 R1 R2 C1
1 1.7V 523Ω Open 100pF
2 VCC 1.8kΩ 1.8kΩ 50pF
INPUT OUTPUT
VIH +0.4V VOH
1.5V 1.5V
NOTE: AC Testing: All input signals must switch between VIL - 0.4V and VIH + 0.4V. Input rise and fall times are driven at 1ns/V.
Timing Waveforms
WR (6)
TWLWH
(4) (5)
TAHWL TWHAX
CS
ADDRESS BUS
A0
(7) (8)
TDVWH TWHDX
DATA BUS
4-17
82C59A
(3)
RD/INTA TRLRH
(18) (19)
TRLEL TRHEH
EN
(1) (2)
TAHRL TRHAX
CS
ADDRESS BUS
A0
(14) (15)
TRLDV TRHDZ
DATA BUS
(20)
TAHDV
RD
INTA (11)
TRHRL
WR
(12)
RD TWHWL
INTA
WR (13)
TCHCL
RD
INTA
WR
(16)
TJHIH
IR
INT
INTA
SEE NOTE 1
SEE
DB NOTE 2
(10) (10)
TCVIAL TCVIAL
CAS 0 - 2
(17) (21)
TIALCV TCVDV
NOTES:
1. Interrupt Request (IR) must remain HIGH until leading edge of first INTA.
2. During first INTA the Data Bus is not active in 80C86/88/286 mode.
3. 80C86/88/286 mode.
4. 8080/8085 mode.
FIGURE 15. INTA SEQUENCE
4-18
82C59A
Burn-In Circuits
MD82C59A CERDIP
R1
GND 1 28 VCC
R1
WR 2 27 R1 A0 C1
R1
RD 3 26 R1 INTA
R1
D7 4 25 R2 IR7
R1
D6 5 24 R2 IR6 VCC
R1
D5 6 23 R2 IR5
R1
D4 7 22 R2 IR4
R1 R3
D3 8 21 R2 IR3
R1 A
D2 9 20 R2 IR2
R1
D1 10 19 R2 IR1
R3
R1
D0 11 18 R2 IR0
R3
CAS 0 12 17 A
R3
CAS 1 13 16 R3 SP/EN
GND 14 15 R3 CAS 2
MR82C59A CLCC
VCC C1
D7 RD WR GND A0 INTA
R1 R1 R1 R1 R1 R1
4 3 2 1 28 27 26
R1 R2
D6 5 25 IR7
R1 R2
D5 6 24 IR6
R1 R2
D4 7 23 IR5
R1 R2
D3 8 22 IR4
R1 R2
D2 9 21 IR3
R1 R2
D1 10 20 IR2
R1 R2
D0 11 19 IR1
12 13 14 15 16 17 18
R1 R1 R1 R1 R4 R2
CAS0
CAS1
GND
CAS2
SP/EN
VCC/2
IR0
NOTES:
1. VCC = 5.5V ±0.5V. 7. R3 = 10kΩ ±5%.
2. VIH = 4.5V ±10%. 8. R4 = 1.2kΩ ±5%.
3. VIL = -0.2V to 0.4V. 9. C1 = 0.01µF min.
4. GND = 0V. 10. F0 = 100kHz ±10%.
5. R1 = 47kΩ ±5%. 11. F1 = F0/2, F2 = F1/2, ...F8 = F7/2.
6. R2 = 510Ω ±5%.
4-19
82C59A
Die Characteristics
DIE DIMENSIONS:
143 x 130 x 19 ±1mils
(3630 x 3310 x 525µm)
METALLIZATION:
Type: Si-Al-Cu
Thickness: Metal 1: 8kÅ ± 0.75kÅ
Metal 2: 12kÅ ± 1.0kÅ
GLASSIVATION:
Type: Nitrox
Thickness: 10kÅ ± 3.0kÅ
D0 D1 D2 D3 D4 D5 D6
CAS0 D7
CAS1 RD
GND WR
CS
CAS2
SP/EN VCC
INT A0
IR0 INTA
All Intersil semiconductor products are manufactured, assembled and tested under ISO9000 quality systems certification.
Intersil products are sold by description only. Intersil Corporation reserves the right to make changes in circuit design and/or specifications at any time without
notice. Accordingly, the reader is cautioned to verify that data sheets are current before placing orders. Information furnished by Intersil is believed to be accurate
and reliable. However, no responsibility is assumed by Intersil or its subsidiaries for its use; nor for any infringements of patents or other rights of third parties which
may result from its use. No license is granted by implication or otherwise under any patent or patent rights of Intersil or its subsidiaries.
For information regarding Intersil Corporation and its products, see web site http://www.intersil.com
4-20