The Digital Blocks DB8259A Programmable Interrupt Controller IP core is a full function equivalent to the Intel 8259A / Intersil 82C59A / NEC uPD8259A devices.
The DB8259A RTL Verilog / VHDL outputs were compared to the Intel 8259A device on a cycle-by-cycle basis as captured & represented by the Digital Blocks testbench suite.
DB8259A Programmable Interrupt Controller manages up to eight vectored priority interrupts for a microprocessor. Using multiple instantiations of the DB8259A core and programming it to cascade mode enables up to sixty-four vectored priority interrupts. More than sixty-four vectored interrupts can be accomplished by programming the DB8259A core to Poll Command Mode. Interrupt sources may be either edge or level triggered.
MCS-80/85 and 8088/8086 processor modes
Fully Nested Mode and Special Fully Nested Mode
Special Mask Mode / Buffered Mode / Poll Command Mode
Cascade Mode with Master or Slave selection
Automatic End-of-Interrupt Mode
Specific and Non-Specific End-of-Interrupt Commands
Automatic & Specific Rotation
Edge and level triggered interrupt input modes
Reading of Interrupt Request Register (IRR) and In-Service Register (ISR)
Writing and reading of Interrupt Mask Register (IMR) through data bus
VHDL or Verilog Source
Comprehensive testbench suite with expected results
Technical Reference Manual
Automotive, Communications, Consumer Electronics, Data Processing, Industrial and Medical, Military/Civil Aerospace