前面的文章提到过高级错误报告(Advanced Error Reporting,AER),接下来详细地介绍一下这一功能。在已有的PCIe错误报告机制上(之前文章介绍的),AER还支持以下特性:
· 在登记实际发生的错误类型时,有更好的粒度(Granularity,可以理解为区分度或者精确度)
· 区分各种不可校正错误的严重程度
· 支持登记包头中的错误
· 为Root通过中断报告接收到的错误消息提供了标准化的控制机制
· 可以定位错误源在PCIe体系结构中的位置
· 能够独立地屏蔽某种(或者多种)错误类型的报告
配置空间中的AER相关寄存器结构如下图所示:
前面的文章中多次提到过,ECRC的产生于校检需要AER的支持,相关控制bit位于高级错误功能控制寄存器中,如下图所示:
其中,最低5bits为当前错误指针(First Error Pointer),当相关错误状态更新时,该指针由硬件自动更新。一般情况下,当前错误指针指向的错误是优先级最高的错误,需要最先被处理的,往往也是其他错误的根源。PCIe Spec V2.1还支持多个错误的追踪(Tracking Multiple Errors)。
图中的ROS、RWS、RO等字符的意义如下:
· RO——只读(Read Only),由硬件控制
· ROS——只读且不被复位(Read Only and Sticky)
· RsvdP——保留且不可以用于其他用途
· RsvdZ——保留且只能被写0
· RWS——可读可写且不被复位(Readable,Writeable and Sticky)
· RW1CS——可读,写1清零,且不被复位
不被复位是指该bit的内容不会因为复位(断电后的上电复位除外)而发生改变。PCIe总线中有多种复位概念,Sticky bit(不被复位的位)不会受到功能层复位(Function Level Reset, FLR)、热复位(Hot Reset)和暖复位(Warm Reset)的影响,甚至不受冷复位(Cold Reset)的影响(当主电源切断后,Vaux等二级电源仍保持正常供电)。关于PCIe总线的复位机制,后续的文章会详细地介绍。
-
寄存器
+关注
关注
31文章
5386浏览量
121470 -
PCIe
+关注
关注
15文章
1273浏览量
83400
原文标题:【博文连载】PCIe扫盲——高级错误报告AER(一)
文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
PCB设计中如何进行统一批量检测并生成错误报告

Win8系统操作不当弹出错误报告
关于Quartus II 错误报告Error (171173): Node from partition Top cannot preserve previous placement at PIN_P8 and honor the location assigment to PIN_F8
MPLAB X IDE v3.20编译器使用错误的行号引用报告错误
为什么我设计的TMS320VC5402板子在调试软件时总会出现存储器错误报告?
ICC错误集锦、ICCAVR的报错
基于软件错误报告数据集成的改进贝叶斯算法
PCIe总线的错误报告机制中四个比较重要的概念
PCIe总线的三种错误报告方式

评论