Programmable Interrupt Controller (PIC)

Programmable Interrupt Controller (PIC)


Category: System controller

Created: October 25, 2010

Updated: January 27, 2020

Language: VHDL

Other project properties

Development Status: Alpha

WishBone compliant: No

WishBone version: n/a

License: LGPL


“pic” is a soft core, programmable interrupt controller which can be used as an interface between peripheral interrupt lines and processor IRQ line. One of the popular PIC available in market is Intel 8259. This core is not compatible with 8259. The core was designed based on my ideas of how a PIC operates and its requirements. The first version is a really basic core which can take 8 interrupts as input. The interrupt detecting methods currently supported are polling method and fixed priority method.

A testbench code is provided with the core testing the design under both the modes.simulate the core using the given testbench and you should be able to know the signalling in the core.

If you find this design useful or if you want to give your feedback on this core then please send an email to lalnitt(at) would very much appreciate it.