棋子 · 9月18日

PCIe物理层:链路初始化和训练:EIOS(Electrical Idle Ordered Set)

1.Electrical Idle Sequences (EIOS)

在Transmitter进入Electrical Idle状态之前,必须向链路伙伴发送一个电气空闲有序集序列(EIOSQ)(另有规定除外),告知对端自身即将进入或已经进入Electrical Idle状态。接收端接收到EIOS后,相应调整其状态以匹配电气空闲状态。

Ø2.5 GT/s 和5.0 GT/s 速率:

一个EIOS 由一个K28.5 (COM)字符和3个K28.3 (IDL)字符组成。Transmitter必须发送EIOS的所有字符。但是接收侧收到COM和2个IDL字符即可识别成收到了一个EIOS。

Ø8.0 GT/s及其以上速率:

EIOS是一个Ordered Set block,由16个8’h66组成。如果当前EIOS后还有EIOS需要发送,则Transmitter必须传输当前EIOS的所有字符,Transmitter必须传输EIOS的符号0-13,但在进入到电气空闲状态后,允许在符号14或15中的任何位置终止EIOS。

当一个Ordered Set Block的符号0-3与EIOS的定义匹配时,则认为已经接收到EIOS。

ØElectrical Idle Ordered Set Sequence 的组成

2.5 GT/s, 8.0 GT/s, 16.0 GT/s, or 32.0 GT/s 速率下,一个EIOS表示一个Electrical Idle Ordered Set Sequence (EIOSQ) 。5.0 GT/s速率下,2个连续的EIOS表示一个EIOSQ。

image.png

2.EIOS的应用

Ø在Recovery.Speed状态进入电气空闲状态

PCIe设备在Recovery.Speed状态会进行速率切换,此阶段Transmitter会进入电气空闲状态,并保持该状态直到Receiver Lanes也进入电气空闲状态。Transmitter在进入电气空闲状态之前必须发送EIOS。

Ø在L0s状态进入电气空闲状态之前Transmitter需发送EIOS    

3.参考文档

PCI Express Base Specification Revision 5.0, Version 1.0

作者:IC小鸽
文章来源:IC小鸽

推荐阅读

更多IC设计干货请关注IC设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。

推荐阅读
关注数
18556
内容数
1291
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息