小_汪 2023-02-26 21:30 采纳率: 74.4%
浏览 17
已结题

MSI和IRQ之间有没有关系

我了解到irq只有16个中断,0~15。外设的中断都是连接到中断控制器并控制。但我看pcie走的都是msi或msi-x的中断信息,而且msi-x中断向量高达2048个。网上看的云里雾里,只知道msi是向message address写message data。我想了解的是:
1、pcie中断也是连接到中断控制器吗,和串口,usb等外设连接的中断控制器是同一个吗?
2、pcie也会占用irq值吗?

  • 写回答

3条回答 默认 最新

  • MarkHan_ 2023-02-26 21:49
    关注

    该回答引用GPTᴼᴾᴱᴺᴬᴵ
    MSI(Message Signaled Interrupt)是一种与传统中断IRQ(Interrupt Request)不同的中断机制。传统的IRQ中断机制是通过中断控制器(如PIC、APIC等)进行中断处理的,而MSI是通过直接向CPU发送中断消息的方式实现中断处理的。

    回答您的问题:

    1. PCIe设备的中断也是需要连接到中断控制器的,但与传统的中断IRQ不同,PCIe设备通过向CPU发送消息,实现直接中断处理,不需要传统中断控制器的介入。因此,PCIe设备的中断控制与串口、USB等外设连接的中断控制器不是同一个。

    2. 在MSI中断模式下,PCIe设备会占用MSI中断向量,而不是传统的IRQ值。MSI中断向量的数量取决于设备的支持情况,最多可以达到2048个。PCIe设备支持的中断向量数量较多,因此MSI可以解决IRQ数量不足的问题,提高系统的可扩展性和性能。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月9日
  • 已采纳回答 3月1日
  • 创建了问题 2月26日

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看