Implement IRQ mechanism