USER_INTERRUPT_VECTOR (0x09C) - 4.0 简体中文

QDMA Subsystem for PCI Express v4.0 产品指南 (PG302)

Document ID
PG302
Release Date
2022-05-20
Version
4.0 简体中文
表 1. 用户中断矢量 (0x09C)
默认 访问类型 描述
[31:0] 0 RW 用户中断矢量

此处所提供的 user_interrupt_mask[31:0]user_interrupt_vector[31:0] 寄存器均作为设计示例提供给用户中断聚合,用户中断聚合可为功能生成用户中断。user_interrupt_mask[31:0]user_interrupt_vector[31:0] 两者间属于“与”关系(按位与),生成一个用户中断。user_interrupt_vector[31:0] 在读取寄存器上清零。

要生成用户中断,请执行以下操作:

  1. user_interrupt[19:12] 中写入功能编号。这对应于生成 usr_irq_in_fnc 用户中断的功能。
  2. user_interrupt[8:4] 中写入 MSI-X 矢量编号。这对应于 MSI-X 表中为 usr_irq_in_vec 用户中断设置的条目。
  3. user_interrupt_mask[31:0] 寄存器中写入掩码值。
  4. user_interrupt_vector[31:0] 寄存器中写入中断矢量值。

这样即可向 DMA 块生成用户中断。

有两种方法可用于生成用户中断:

  • 写入 user_interrupt[0],或者
  • 写入已设置掩码的 user_interrupt_vector[31:0] 寄存器。