PCI Error Handling

PCI Error Handling

在传输过程中,PCI设备能够检测、汇报地址段或者数据段的校验错误。

借助PAR信号,PCI设备能够完成“偶校验”。

如果传输的地址或者数据中,值为“1”的位数是奇数,那么主设备(Master Device)会将PAR信号设置为“1”,从而使整体上“1”的位数变为偶数。

目标设备(Target Device)收到地址或数据之后进行校验。如果目标设备检测到数据传输错误,就触发PERR#(parity error)信号。

数据传输错误一般是可以修复的,例如,读取内存时出错,只需要重新发送一次内存读请求就可以了。PCI没有硬件的自动纠错机制,所以,任何传世修复错误的手段(例如,重新发送请求)都需要软件驱动

在这里插入图片描述

当地址传输过程中出错时,处理方式与数据错误有很大不同。地址出错时,接收到请求的目标设备也就错了。这种情况下,没办法知道地址的哪些位是错的,也不知道总线上哪个设备对这个请求进行了响应,所以也就没有办法进行错误修复。地址出错时,检测出错误的设备会触发SERR#(system error)引脚信号,这通常会导致系统错误处理流程(System Error Handler)的调用。在老式的机器上,一般会导致蓝屏。

在老式的机器上,PERR#和SERR#信号都被连接到了南桥的错误逻辑(Error Logic)上,从而触发CPU的NMI信号(non-maskable interrupt signal),导致系统停止运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值