Freelance Electronics Components Distributor
Closed Dec 25th-26th
800-300-1968
We Stock Hard to Find Parts

ID82C59A

Part # ID82C59A
Description INTERRUPT CNTRLR 5V 28CDIP -Rail/Tube
Category IC
Availability In Stock
Qty 1
Qty Price
1 + $24.59246
Manufacturer Available Qty
Harris Corporation
  • Shipping Freelance Stock: 1
    Ships Immediately



Technical Document


DISCLAIMER: The information provided herein is solely for informational purposes. Customers must be aware of the suitability of this product for their application, and consider that variable factors such as Manufacturer, Product Category, Date Codes, Pictures and Descriptions may differ from available inventory.

4-7
80C86, 8OC88, 80C286 Interrupt Response Mode
80C86/88/286 mode is similar to 8080/85 mode except that
only two Interrupt Acknowledge cycles are issued by the pro-
cessor and no CALL opcode is sent to the processor. The
first interrupt acknowledge cycle is similar to that of 8080/85
systems in that the 82C59A uses it to internally freeze the
state of the interrupts for priority resolution and, as a master,
it issues the interrupt code on the cascade lines. On this first
cycle, it does not issue any data to the processor and leaves
its data bus buffers disabled. On the second interrupt
acknowledge cycle in the 86/88/286 mode, the master (or
slave if so programmed) will send a byte of data to the pro-
cessor with the acknowledged interrupt code composed as
follows (note the state of the ADI mode control is ignored
and A5 - A11 are unused in the 86/88/286 mode).
Programming the 82C59A
The 82C59A accepts two types of command words gener-
ated by the CPU:
1. Initialization Command Words (ICWs): Before normal
operation can begin, each 82C59A in the system must be
brought to a starting point - by a sequence of 2 to 4 bytes
timed by
WR pulses.
2. Operation Command Words (OCWs): These are the
command words which command the 82C59A to operate
in various interrupt modes. Among these modes are:
a. Fully nested mode.
b. Rotating priority mode.
c. Special mask mode.
d. Polled mode.
The OCWs can be written into the 82C59A anytime after ini-
tialization.
Initialization Command Words (lCWs)
General
Whenever a command is issued with A0 = 0 and D4 = 1, this
is interpreted as Initialization Command Word 1 (lCW1).
lCW1 starts the initialization sequence during which the fol-
lowing automatically occur:
a. The edge sense circuit is reset, which means that follow-
ing initialization, an interrupt request (IR) input must make
a low-to-high transition to generate an interrupt.
b. The Interrupt Mask Register is cleared.
c. lR7 input is assigned priority 7.
d. Special Mask Mode is cleared and Status Read is set to
lRR.
e. If lC4 = 0, then all functions selected in lCW4 are set to
zero. (Non-Buffered mode (see note), no Auto-EOI,
8080/85 system).
NOTE: Master/Slave in ICW4 is only used in the buffered mode.
Initialization Command Words 1 and 2 (ICW1, lCW2)
A5 - A15: Page starting address of service routines. In an
8080/85 system the 8 request levels will generate CALLS to
8 locations equally spaced in memory. These can be pro-
grammed to be spaced at intervals of 4 or 8 memory loca-
tions, thus, the 8 routines will occupy a page of 32 or 64
bytes, respectively.
CONTENT OF THIRD INTERRUPT VECTOR BYTE
D7 D6 D5 D4 D3 D2 D1 D0
A15 A14 A13 A12 A11 A10 A9 A8
CONTENT OF INTERRUPT VECTOR BYTE FOR
80C86/88/286 SYSTEM MODE
D7 D6 D5 D4 D3 D2 D1 D0
lR7 T7 T6 T5 T4 T3 1 1 1
lR6 T7 T6 T5 T4 T3 1 1 0
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
IR2 T7 T6 T5 T4 T3 0 1 0
IR1 T7 T6 T5 T4 T3 0 0 1
IR0 T7 T6 T5 T4 T3 0 0 0
ICW1
ICW2
IN
CASCADE
MODE
ICW3
IS ICW4
NEEDED
ICW4
READY TO ACCEPT
INTERRUPT REQUESTS
NO (SNGL = 1)
YES (SNGL = 0))
YES (IC4 = 1)
NO (IC4 = 0)
FIGURE 6. 82C59A INITIALIZATION SEQUENCE
82C59A
4-8
D
7
A
0
D
6
D
5
D
4
D
3
D
2
D
1
D
0
0
A
7
A
6
A
5
LTIM1 ADI SNGL IC4
ICW1
1 = ICW4 needed
0 = No ICW4 needed
1 = Single
0 = Cascade Mode
CALL address interval
1 = Interval of 4
0 = Interval of 8
1 = Level triggered mode
0 = Edge triggered mode
A
7
- A
5
of Interrupt vector address
(MCS-80/85 mode only)
D
7
A
0
D
6
D
5
D
4
D
3
D
2
D
1
D
0
1
A
15
A
14
A
13
A
11
A
10
A
9
A
8
A
12
T
7
T
6
T
5
T
4
T
3
ICW2
A
15
- A
8
of interrupt vector address
(MCS80/85 mode)
T
7
- T
3
of interrupt vector address
(8086/8088 mode)
D
7
A
0
D
6
D
5
D
4
D
3
D
2
D
1
D
0
1S
7
S
6
S
5
S
3
S
2
S
1
S
0
S
4
ICW3 (MASTER DEVICE)
1 = IR input has a slave
0 = IR input does not have a slave
D
7
A
0
D
6
D
5
D
4
D
3
D
2
D
1
D
0
1000 0ID
2
ID
1
ID
0
0
ICW3 (SLAVE DEVICE)
SLAVE ID (NOTE)
01 5234 67
01 1010 01
00 0110 11
00 1001 11
D
7
A
0
D
6
D
5
D
4
D
3
D
2
D
1
D
0
1 0 0 0 BUF M/S AEOI µPMSFNM
ICW4
1 = 8086/8088 mode
0 = MCS-80/85 mode
1 = Auto EOI
0 = Normal EOI
0
1
11
0
X - Non buffered mode
- Buffered mode slave
- Buffered mode master
1 = Special fully nested moded
0 = Not special fully nested mode
FIGURE 7. 82C59A INITIALIZATION COMMAND WORD FORMAT
NOTE: Slave ID is equal to the corresponding master IR input.
82C59A
4-9
The address format is 2 bytes long (A0 - A15). When the
routine interval is 4, A0 - A4 are automatically inserted by
the 82C59A, while A5 - A15 are programmed externally.
When the routine interval is 8, A0 - A5 are automatically
inserted by the 82C59A while A6 - A15 are programmed
externally.
The 8-byte interval will maintain compatibility with current
software, while the 4-byte interval is best for a compact jump
table.
In an 80C86/88/286 system, A15 - A11 are inserted in the
five most significant bits of the vectoring byte and the
82C59A sets the three least significant bits according to the
interrupt level. A10 - A5 are ignored and ADI (Address inter-
val) has no effect.
LTlM: If LTlM = 1, then the 82C59A will operate in the level
interrupt mode. Edge detect logic on the interrupt
inputs will be disabled.
ADI: ALL address interval. ADI = 1 then interval = 4; ADI
= 0 then interval = 8.
SNGL: Single. Means that this is the only 82C59A in the
system. If SNGL = 1, no ICW3 will be issued.
IC4: If this bit is set - lCW4 has to be issued. If lCW4 is
not needed, set lC4 = 0.
Initialization Command Word 3 (ICW3)
This word is read only when there is more than one 82C59A
in the system and cascading is used, in which case
SNGL = 0. It will load the 8-bit slave register. The functions of
this register are:
a. In the master mode (either when
SP = 1, or in buffered
mode when M/S = 1 in lCW4) a “1” is set for each slave in
the bit corresponding to the appropriate IR line for the
slave. The master then will release byte 1 of the call
sequence (for 8080/85 system) and will enable the corre-
sponding slave to release bytes 2 and 3 (for 80C86/88/
286, only byte 2) through the cascade lines.
b. In the slave mode (either when
SP = 0, or if BUF = 1 and
M/S = 0 in lCW4), bits 2 - 0 identify the slave. The slave
compares its cascade input with these bits and if they are
equal, bytes 2 and 3 of the call sequence (or just byte 2 for
80C86/88/286) are released by it on the Data Bus.
NOTE: (The slave address must correspond to the IR line it is con-
nected to in the master ID).
Initialization Command Word 4 (ICW4)
SFNM: If SFNM = 1, the special fully nested mode is pro-
grammed.
BUF: If BUF = 1, the buffered mode is programmed. In
buffered mode,
SP/EN becomes an enable output
and the master/slave determination is by M/S.
M/S: If buffered mode is selected: M/S = 1 means the
82C59A is programmed to be a master, M/S = 0
means the 82C59A is programmed to be a slave. If
BUF = 0, M/S has no function.
AEOI: If AEOI = 1, the automatic end of interrupt mode is
programmed.
µPM: Microprocessor mode: µPM = 0 sets the 82C59A for
8080/85 system operation, µPM = 1 sets the
82C59A for 80C86/88/286 system operation.
Operation Command Words (OCWs)
After the Initialization Command Words (lCWs) are pro-
grammed into the 82C59A, the device is ready to accept
interrupt requests at its input lines. However, during the
82C59A operation, a selection of algorithms can command
the 82C59A to operate in various modes through the Opera-
tion Command Words (OCWs).
Operation Command Word 1 (OCW1)
OCW1 sets and clears the mask bits in the Interrupt Mask
Register (lMR) M7 - M0 represent the eight mask bits. M = 1
indicates the channel is masked (inhibited), M = 0 indicates
the channel is enabled.
Operation Command Word 2 (OCW2)
R, SL, EOI - These three bits control the Rotate and End of
Interrupt modes and combinations of the two. A chart of
these combinations can be found on the Operation Com-
mand Word Format.
L2, L1, L0 - These bits determine the interrupt level acted
upon when the SL bit is active.
Operation Command Word 3 (OCW3)
ESMM - Enable Special Mask Mode. When this bit is set to 1
it enables the SMM bit to set or reset the Special Mask
Mode. When ESMM = 0, the SMM bit becomes a “don’t
care”.
SMM - Special Mask Mode. If ESMM = 1 and SMM = 1, the
82C59A will enter Special Mask Mode. If ESMM = 1 and
SMM = 0, the 82C59A will revert to normal mask mode.
When ESMM = 0, SMM has no effect.
Fully Nested Mode
This mode is entered after initialization unless another mode
is programmed. The interrupt requests are ordered in priority
from 0 through 7 (0 highest). When an interrupt is acknowl-
edged the highest priority request is determined and its vec-
tor placed on the bus. Additionally, a bit of the Interrupt
Service register (IS0 - 7) is set. This bit remains set until the
microprocessor issues an End of Interrupt (EOI) command
OPERATION COMMAND WORDS (OCWs)
A0 D7 D6 D5 D4 D3 D2 D1 D0
OCW1
1 M7M6M5M4M3M2M1M0
OCW2
0 R SL EOI 0 0 L2 L1 L0
OCW3
0 0 ESMM SMM 0 1 P RR RIS
82C59A
PREVIOUS1234567NEXT