用户 IRQ 设计示例 - 4.1 简体中文

DMA/Bridge Subsystem for PCI Express 产品指南 (PG195)

Document ID
PG195
Release Date
2023-11-24
Version
4.1 简体中文

用户 IRQ 设计示例支持采用默认 DMA/Bridge Subsystem for PCI Express® 设计示例将主机连接到 AXI4‑Lite 主接口。在设计示例中,AXI4‑Lite 接口上集成了用户中断生成器模块和外部块 RAM。主机可使用此接口通过写入用户中断生成器模块的寄存器空间来生成用户 IRQ,还可对外部 1K 块 RAM 执行读取/写入。下图显示了设计示例。

设计示例可使用以下 Tcl 命令来生成。

set_property -dict [list CONFIG.usr_irq_exdes {true}] [get_ips <ip_name>]
图 1. 用户 IRQ 设计示例

下表中提供了寄存器描述。

表 1. 设计示例寄存器
寄存器偏移 寄存器名称 访问类型 描述
0x00 Scratch Pad RW 暂存寄存器
0x04 DMA BRAM Size RO 连接到 XDMA 的用户存储器大小。

存储器大小 = (2[7:4]) ([3:0]Byte)

[7:4] - 以 2 次幂来表示大小。

  • 0 - 1
  • 1 - 2
  • 2 - 4
  • 8 - 256
  • 9 - 512

[3:0] - 表示单位。

  • 0 - 字节
  • 1 - KB
  • 2 - MB
  • 3 - GB

例如,如果寄存器值为 21,大小为 4 KB。如果寄存器值为 91,大小为 512 KB。

0x08 Interrupt Control Register RW

中断控制寄存器(写入 1 以生成中断)。

中断状态寄存器对应位必须为 1(就绪)才能生成中断。并且,提供 ISR 后,将对应的位复位。

0x0C Interrupt Status Register RO

中断状态。

1:就绪

0:正在进行中断生成

注释: 对于遗留中断,只有在提供 ISR 之后才应清除对应中断位的中断控制寄存器 (0x08) 值,因为这可供主机用于判定中断源。