Due to the bug in SOPC builder, the interrupt sources might be left unconnected, and both RxmIrq_i and RxmIrqNum_i of PCIe® core are hardwired to zero.
To work around this issue, you must implement the following steps:
- OR all the interrupt sources together to drive RxmIrq_i input of PCIe core
- Add logic to select the ID of the current interrupt source. The ID number must match the assigned ID of this interrupt source in SOPC.
Example: If we have two interrupt sources: irq_source0 with ID1 and irq_source1 with ID2, assumming irq_source0 has higher priority than irq_source1, then the work around pseudo codes looks like this:
a) RxmIrq_i = irq_source0_int or irq_source1_int;
b) RxmIrqNum_i = irq_source0_int ? ID1 : irq_source1_int? ID2;