2.8 完成超时机制
在任何分割事务协议中,如果请求者未能收到预期的完成,都会存在风险。为了允许请求者以标准方式尝试从这种情况中恢复,定义了完成超时机制。此机制旨在仅在没有合理预期完成将被返回时激活,并且不应在正常运行条件下发生。注意,这里指定的值不反映预期的服务延迟,并且不能用来估计典型的响应时间。
发出需要完成的请求的PCI Express设备功能必须实现完成超时机制,配置请求除外(见下文)。完成超时机制在传输请求时为每个需要一个或多个完成的请求激活。由于交换机不会自主启动需要完成的请求,因此完成超时支持的要求仅限于根复合体、PCI Express-PCI桥和端点。
完成超时机制可以通过配置软件禁用。完成超时限制设置在设备控制2寄存器的完成超时值字段中。完成超时是与请求者功能相关联的报告错误(见第6.2节)。
注意:对于有多个完成的内存读取请求,只有在请求者收到所有完成时,才应认为已完成。如果在完成超时计时器到期之前返回了部分但不是全部请求的数据,请求者可以选择保留或丢弃在计时器到期之前返回的数据。
配置请求的完成超时对支持PCI Express到PCI/PCI-X桥有特殊要求。默认情况下,PCI Express到PCI/PCI-X桥不被启用以返回配置请求重试状态(CRS)给桥后面的PCI/PC-X设备。这可能导致必须由根复合体中的完成超时值理解的长时间完成延迟。系统软件可以通过在设备控制寄存器中设置桥配置重试使能位来启用PCI Express到PCI/PCI-X桥返回CRS,但须遵守[PCIe-to-PCI-X-Bridge-1.0]中注明的限制。