| Bit | Default | Access Type | Field | Description |
|---|---|---|---|---|
| [31:20] | 0 | NA | Reserved | |
| [19:12] | 0 | RW | usr_irq_in_fun | User interrupt function number |
| [11:9] | 0 | NA | Reserved | |
| [8:4] | 0 | RW | usr_irq_in_vec | User interrupt vector number |
| [3:1] | 0 | NA | Reserved | |
| [0] | 0 | RW | usr_irq | User interrupt. When set, the example design generates a user interrupt. |
To generate a user interrupt:
- Write the function number at bits [19:12]. This corresponds to
the function that generates the
usr_irq_in_fncuser interrupt. - Write MSI-X Vector number at bits [8:4]. This corresponds to the
entry in the MSI-X table that is set up for
usr_irq_in_vecuser interrupt. - Write 1 to bit [0] to generate user interrupt. This bit clears
itself after
usr_irq_out_ackfrom the DMA is generated.
All three above steps can be done at the same time, with a single write.
Following is the user interrupt timing diagram:
Figure 1. Interrupt