In my PCI Express end point design, using legacy interrupts, the “Deassert_INTA” message was sent out immediately after the “Assert_INTA” message. Signal Rxmirq_irq[n] is still asserted.
Turns out that there is a problem in the Altera PCI Express core implementation, where the “Deassert_INTA” message may be sent out shortly after the “Assert_INTA” message, while the “Rxmirq_irq[n]” signal is still asserted. This issue affects PCIe cores implemented in Qsys and configured for legacy interrupts. The workaround is: 1. Download the following file: pciexp_dcram.v 2. Copy this file to the following directory in your Quartus II installation directory: <install_dir>/ip/altera/ip_compiler_for_pci_express/lib 3. Regenerate the PCI Express core within Qsys 4. Regenerate the Qsys design 5. Recompile your project Looks like Altera has fixed this issue in Quartus II software version 11.1.