1.4 PCI总线的中断机制

PCI总线使用INTA#等中断信号与处理器交互,这些是低电平有效的边带信号。中断请求的同步是个挑战,因为INTx信号是异步的。PCI设备可通过INTx或MSI机制提交中断请求,其中MSI可以提高中断处理效率并解决数据完整性问题。在x86系统中,中断路由表用于管理PCI设备的中断连接。在嵌入式系统中,中断处理相对简单,而在复杂的x86系统中,BIOS或ACPI表扮演关键角色。
摘要由CSDN通过智能技术生成

PCI总线使用INTA#INTB#INTC#INTD#信号向处理器发出中断请求。这些中断请求信号为低电平有效,并与处理器的中断控制器连接。在PCI体系结构中,这些中断信号属于边带信号(Sideband Signals)PCI总线规范并没有明确规定在一个处理器系统中如何使用这些信号,因为这些信号对于PCI总线是可选信号。PCI设备还可以使用MSI机制向处理器提交中断请求,而不使用这组中断信号。有关MSI机制的详细说明见8

1.4.1 中断信号与中断控制器的连接关系

不同的处理器使用的中断控制器不同,如x86处理器使用APIC(Advanced Programmable Interrupt Controller)中断控制器,而PowerPC处理器使用MPIC(Multiprocessor Interrupt Controller)中断控制器。这些中断控制器都提供了一些外部中断请求引脚IRQ_PINx#。外部设备,包括PCI设备可以使用这些引脚向处理器提交中断请求。

但是PCI总线规范没有规定PCI设备的INTx信号如何与中断控制器的IRQ_PINx#信号相连,这为系统软件的设计带来了一定的困难,为此系统软件使用中断路由表存放PCI设备的INTx信号与中断控制器的连接关系。在x86处理器系统中,BIOS可以提供这个中断路由表,而在PowerPC处理器中Firmware也可以提供这个中断路由表。

在一些简单的嵌入式处理器系统中,Firmware并没有提供中断路由表,此时系统软件开发者需要事先了解PCI设备的INTx信号与中断控制器的连接关系。此时外部设备与中断控制器的连接关系由硬件设计人员指定。

我们假设在一个处理器系统中,共有3PCI插槽(分别为PCI插槽ABC),这些PCI插槽与中断控制器的IRQ_PINx引脚(分别为IRQW#IRQX#IRQY#IRQZ#)可以按照15所示的拓扑结构进行连接。

1.4 <wbr>PCI总线的中断机制

    采用 1 5 所示的拓扑结构时, PCI 插槽 A B C INTA# INTB# INTC# 信号将分散连接到中断控制器的 IRQW# IRQX# IRQY# 信号,而所有 INTD# 信号将共享一个 IRQZ# 信号。采用这种连接方式时,整个处理器系统使用的中断请求信号,其负载较为均衡。而且这种连接方式保证了每一个插槽的 INTA# 信号都与一根独立的 IRQx# 信号对应,从而提高了 PCI 插槽中断请求的效率。

在一个处理器系统中,多数PCI设备仅使用INTA#信号,很少使用INTB#INTC#信号,而INTD#信号更是极少使用。在PCI总线中,PCI设备配置空间的Interrupt Pin寄存器记录该设备究竟使用哪个INTx信号,该寄存器的详细介绍见第2.3.2节。

1.4.2

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值