Forum Discussion

Volodymir's avatar
Volodymir
Icon for New Contributor rankNew Contributor
3 years ago

Stratix 10 PCI Express Avalon®-MM DMA Reference Design. Interrupt generation.

Hello !
Working with a Stratix 10 board. Per AN 829: PCI Express* Avalon®-MM
DMA Reference Design built the design and uploaded it to the board. I work with Windows. I successfully run DMA Read, DMA Write. After the end of the DMA procedure, I register an MSI interrupt.
Than want to additionally register user interrupts. To do this, I use the intx_req_i input, which became available after selecting Export Interrupt conduit interface. And also tried using the rxm_irq_i[15..0] inputs. I apply a logical unit signal of a certain duration to these inputs, but I do not register an interrupt.
As I understood from the description, I must first enable interrupts by accessing the PCIe Interrupt Enable Register, which is located at 0x0050.
Please tell me how to properly translate the address from BAR in order to access this register from under windows. The map of connections and addresses is shown in the picture. Thank you. .

15 Replies

  • Volodymir's avatar
    Volodymir
    Icon for New Contributor rankNew Contributor

    Hi ! Thanks.

    In your last answer you wrote: You need to enable export MSI interface to implement custom MSI interrupt handle and send the MSI interrupt via TXS interface.....

    I selected the option in platform designer – Export MSI/MSI-X conduit interface and after then, interface added to the top level of the project:

    .intx_req_i (), // input, width = 1, intx_intfc.intx_req

    .msi_intfc_o(), // output, width = 82, msi_intfc.msi_intfc

    .msi_control_o(), // output, width = 16, msi_control.msi_control

    .msix_intfc_o (), // output, width = 16, msix_intfc.msix_intfc

    When trigger interrupt using input .intx_req_i (), OS (operating system) register legacy interrupt.

    how this interface can help generate MSI interrupt ?

    Can you give an example for your recommendations ? about which you wrote:

    • ……….you need to create a MSI (Memory Write) Transaction,
    • and transmit it through the TXS interface based on the information that you obtain from the MSI conduit interface,

    Regards

  • Wincent_Altera's avatar
    Wincent_Altera
    Icon for Regular Contributor rankRegular Contributor

    Hi


    We do not receive any response from you.

    This thread will be transitioned to community support.

    If you have a new question, feel free to open a new thread to get support from Intel experts.

    Otherwise, the community users will continue to help you on this thread. Thank you

    If you feel your support experience was less than a 9 or 10,

    please allow me to correct it before closing or please let me know the cause so that I may improve your future support experience.

    Regards,

    Wincent_Intel

    __________________________________________________________________________________


  • Toros's avatar
    Toros
    Icon for New Contributor rankNew Contributor

    Can this design be run on Stratix 10 AX board?