PCI总线中定义了四种复位名称

pci总线中定义了四种复位名称:冷复位(cold reset)、暖复位(warm reset)、热复位(hot reset)和功能层复位(function-level reset,flr)。其中flr是pcie spec v2.0加入的功能,因此一般把另外三种复位统称为传统的复位方式(conventional reset)。其中冷复位和暖复位是基于边带信号perst#的,又被统称为基本的复位方式(fundamental reset)。
基本复位由硬件自动处理,会复位整个pcie设备,初始化所有状态机与相关硬件逻辑,端口状态以及配置空间中的配置寄存器等等。但是,也有一个例外,就是前面介绍pcie错误报告机制的相关文章中提到过sticky(不受复位影响)的概念。这里指的不受复位影响的前提是,pcie设备的电源并未被完全切断。sticky这一功能有助于系统定位错误与分析错误起因。
基本复位中的冷复位(cold reset)指的是因为主电源断开后重新连接导致的复位。需要注意的是,即使主电源断开了,如果pcie设备仍有辅助电源vaux为其供电,该复位仍不会影响到sticky的bits。
pcie spec允许两种实现基本复位的方式。一是直接通过边带信号perst#(pci express reset);而是不使用边带信号perst#,pcie设备在主电源被切断时,自行产生一个复位信号。一个简单的例子如下图所示:
暖复位(warm rest)是可选的,指的是在不关闭主电源的情况下,产生的复位。然而,pcie spec并未明确规定暖复位的产生机制,因此,如果产生暖复位完全是由系统设计者决定的。
热复位(hot reset)是一种in-band 复位,其并不使用边带信号。pcie设备通过向其链路(link)相邻的设备发送数个ts1 ordered set(其中第五个字符的bit0为1),如下图所示。这些ts1os在所有的通道(lane)上同时发送,并持续2ms左右。
注:关于ordered set以及ltssm等相关内容,请参考前面介绍链路初始化与训练的相关文章。
主要注意的是,如果switch的upstream端口收到了热复位,则会将其广播至所有的downstream端口,并复位其自己。如果pcie设备的downstream端口接收到热复位,则只需要复位其自己即可。
当pcie设备接收到热复位后,ltssm会进入recovery and hot reset状态,然后返回值detect状态,并重新开始链路初始化训练。其该pcie设备的所有状态机,硬件逻辑,端口状态和配置空间中的寄存器(除了sticky bits)都将被初始化值默认状态。
软件可以通过向桥设备的,特定端口的配置空间中的二级总线复位(secondary bus reset)bit先写0再写1,来产生热复位,如下图所示:
需要注意的是,如果软件设置的是switch的upstream端口的二级总线复位bit,则该switch会往其所有的downstream端口广播热复位信号。而pcie-to-pci桥则会将接收到的热复位信号转换为prst#置位,发送给pci设备。
二级总线复位(secondary bus reset)bit在配置空间的位置如下图所示:
pcie spec还允许软件禁止某个链路(link),强制使其进入电气空闲状态(electrical idle)。如果将某个链路禁止,则该链路所有的下游pcie设备都将收到链路禁止信号(通过ts1os,如下图所示)。

便携式应用的LED驱动的方案解决
lm358充电自停电路图
CAI赋能媒体行业,解决流量分配问题
西门子寻求买家 欲转让诺西合资公司一半股权
新一代人工智能技术研发中心成立 助力打造交通运输样板示例
PCI总线中定义了四种复位名称
骁龙888!下月即将发售的国产机还有iQOO7、vivo X60 Pro+
企业能源管控系统
苹果手表被“专利流氓”起诉心率传感器侵权
惠普电脑存在危险漏洞,键盘记录器可窃取用户敏感信息
全球智慧城市的推出有什么意义
有哪些高速信号完整性测试的手段
什么是嵌入式计算机?
BD7F系列IC的功能和特征
巴西圣保罗要求苹果出售iPhone12时必须含充电器
科技部建设国家新一代人工智能开放创新平台
中国电信联合华为成功验证了SRv6具备商用能力
浅析单车智能和单车智能下的自动驾驶
总是学不会FPGA的功耗是怎么回事?这篇文章告诉你
亚太天能科技F5指纹锁简介