上下文编程 - 5.0 简体中文

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

Document ID
PG302
Release Date
2023-10-18
Version
5.0 简体中文
  • 将所有掩码寄存器编程为 1。这些寄存器包括从 QDMA_IND_CTXT_MASK_0 (0x824) 到 QDMA_IND_CTXT_MASK_7 (0x840) 在内的所有寄存器
  • 将上下文值编程到以下寄存器:QDMA_IND_CTXT_DATA_0 (0x804) 到 QDMA_IND_CTXT_DATA_7 (0x820)
  • 需先对主机配置文件表上下文进行编程,然后才能对任何上下文设置 QDMA_CTXT_SELC_HOST_PROFILE 进行编程。选择 QDMA_IND_CTXT_CMD (0x844) 中的 0xA,将所有数据字段写入 0,并对上下文进行编程。所有其他值均为保留值。
  • 请参阅“软件描述符上下文结构”、“C2H 预取上下文”和“C2H 预取上下文结构”,了解如何对上下文数据寄存器进行编程。
  • 对如下上下文命令寄存器中对应队列的任何上下文进行编程:QDMA_IND_CTXT_CMD (0x844)。
    • bits [19:7] 中提供 Qid。
    • 操作码 bits [6:5] 用于选择必须完成的操作。
      • 0 = QDMA_CTXT_CLR:所有上下文内容都清零。将在 tm_dsc_sts 上传出 Qinv
      • 1 = QDMA_CTXT_WR:写入上下文
      • 2 = QDMA_CTXT_RD:读取上下文
      • 3 = QDMA_CTXT_INV:Qen 输入设为 0,其他上下文值保持不变。将在 tm_dsc_sts 上传出 Qinv,同时传出未使用的信用值。
    • bits [4:1] 中将提供已访问的上下文。
      • 4'h0 = QDMA_CTXT_SELC_DEC_SW_C2H;C2H 描述符软件上下文
      • 4'h1 = QDMA_CTXT_SELC_DEC_SW_H2C:H2C 描述符软件上下文
      • 4'h2 = QDMA_CTXT_SELC_DEC_HW_C2H;C2H 描述符硬件上下文
      • 4'h3 = QDMA_CTXT_SELC_DEC_HW_H2C;H2C 描述符硬件上下文
      • 4'h4 = QDMA_CTXT_SELC_DEC_CR_C2H;C2H 描述符硬件上下文
      • 4'h5 = QDMA_CTXT_SELC_DEC_CR_H2C;H2C 描述符硬件上下文
      • 4'h6 = QDMA_CTXT_SELC_WRB;CMPT/使用环上下文
      • 4'h7 = QDMA_CTXT_SELC_PFTCH:C2H PFCH 上下文
      • 4'h8 = QDMA_CTXT_SELC_INT_COAL:中断聚合上下文
      • 4'h9 = 保留
      • 4'hA = QDMA_CTXT_SELC_HOST_PROFILE;主机配置文件表(仅支持 QDMA_CTXT_CMD_WR 和 QDMA_CTXT_CMD_RD)
      • 4'hB = QDMA_CTXT_SELC_TIMER;定时器上下文(仅支持 QDMA_CTXT_CMD_INV)
      • 4'hC = QDMA_CTXT_SELC_FMAP FMAP 表写入(仅支持 QDMA_CTXT_CMD_WR 和 QDMA_CTXT_CMD_RD)
      • 4'hD = QDMA_CTXT_SELC_FNC_STS(按功能 BME 启用/禁用)
    • 当位 [0] 置位时,不发生上下文编程写入/读取。如需了解有关寄存器 0x844 的更多信息,请参阅寄存器参考文件中提供的 qdma_v5_0_pf_registers.csv