6.1 MSI/MSI-X Capability结构

本文详细介绍了PCIe设备中MSI和MSI-X Capability结构,包括MSI的32/64位Message结构及Masking机制,以及MSI-X的扩展中断向量功能。MSI-X通过独立的Message Address和Message Data字段解决了中断向量号连续性的问题,同时使用MSI-X Table和Pending Table更高效地管理中断请求。
摘要由CSDN通过智能技术生成

PCIe设备可以使用MSI或者MSI-X报文向处理器提交中断请求,但是对于某个具体的PCIe设备,可能仅支持一种报文。在PCIe设备中含有两个Capability结构,一个是MSI Capability结构,另一个是MSI-X Capability结构。通常情况下一个PCIe设备仅包含一种结构,或者为MSI Capability结构,或者为MSI-X Capability结构。

6.1.1 MSI Capability结构

MSI Capability结构共有四种组成方式,分别是3264位的Message结构,32位和64位带中断Masking的结构。MSI报文可以使用32位地址或者64位地址,而且可以使用Masking机制使能或者禁止某个中断源。MSI Capability寄存器的结构如61所示。


6.1 <wbr>MSI/MSI-X <wbr>Capability结构



  • Capability ID字段记载MSI Capability结构的ID号,其值为0x05。在PCIe设备中,每一个Capability结构都有唯一的ID号。
  • Next Pointer字段存放下一个Capability结构的地址。
  • Message Control字段。该字段存放当前PCIe设备使用MSI机制进行中断请求的状态与控制信息,如61所示。

 61 MSI Cabalibities结构的Message Control字段

Bits

定义

描述

15:9

Reserved

保留位。系统软件读取该字段时将返回全零,对此字段写无意义。

8

Per-vector Masking Capable

该位为1时,表示支持带中断Masking的结构;如果为0,表示不支持带中断Masking的结构。该位对系统软件只读,该位在PCIe设备初始化时设置。

7

64 bit Address Capable

该位为1时,表示支持64位地址结构;如果为0,表示只能支持带32位地址结构。该位对系统软件只读,该位在PCIe设备初始化时设置。

6:4

Multiple Message Enable

该字段可读写,表示软件分配给当前PCIe

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值