【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比

这篇具有很好参考价值的文章主要介绍了【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这个专栏要干的事:学习PCIE理论知识,学会PCIE IP/VIP的使用。可以达到上手做项目,而不是空有理论

适合谁看:正在学习PCIE 设计验证,但学的过于零散。想有对比的系统的学习。
低价收费的目的:抵制胡乱传播转载现象。

版本控制:便于增加内容以及勘误

版本 说明

v20230829

初始版本

1、8B10B/128B130B编码方式

1.1、8b10b

8b10b编码是为了

1.防止锁相环失锁,导致serdes时钟丢失。

2.防止连续相同电平太多,经过电容积分后导致电平漂移

3.能更好的把时钟嵌入到数据中

8b转10b 256情况->1024种情况,

为了保持直流平衡,设计原8b的每种值,都使用两种编码(正负极性),根据上次发送的最后一个符号的失调来选择其中一个编码,因此需要512个编码。

然而,许多中性失调编码具有相同的值(例如D28.5),因此并非所有512个编码都被使用。

因此,超过一半的可能编码没有被使用,如果接收方看到这些编码,将被视为非法。

除了D数据码。还有一些K控制码: (D码就不写出来了)

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

D10.3的含义是8B的高三位为d3,低5位为d10。8b码即为:011 01010。

10b编码后的0和1分3种:4个0/6个1,6个0/4个1,5个0/5个1。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

10b编码经过并转串之后是低bit先出。如果lane数量不止1条,数据会先布满所有lane。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

1.2、128b/130b

说是一种编码,其实更像是一种打包排列。

130bit=128bit symbol + 2bit sync head

这样的130bit称为一个block。其中1symbol=8bit,也就是说在1条lane上接收1个head+16个symbol,也就是接收了1个block。

这样的block有两种类型,分为data block和ordered  set block (OS block)

sync head不会被加扰。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

2、控制Symbol

PCIE拥有一些控制字符,作为传输的一些标志。

2.1、8b10b

如下8个symbol,每个占一个8b/10b编码

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

2.2、128b130b

如下5个Token,每个站不同的Byte数量

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

3、OrderSet

OrderSet 有序集,它不是TLP/DLLP,是用于链路训练,或者是链路电源管理等。

8b10b和128b120b下拥有的OrderSet基本相同,也都是16个Symbol组成。只不过由于编码方式不同,导致表现上会不一样。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

4、OrderSet-TS1/TS2

TS1 TS2 作用

训练序列TS,用于初始化位对齐( initializing bit alignment)、符号对齐(Symbol alignmen)和交换物理层参数( exchange Physical Layer parameters)的有序集组成。当数据速率为 2.5 GT/s 或 5.0 GT/s 时,Ordered Sets 永远不会被加扰,而是始终采用 8b/10b 编码。 当数据速率为 8.0 GT/s 或更高时,使用 128b/130b 编码,需要对其进行加扰。

在进行建链的时候,RP和EP 互相发送TS1、TS2序列 ,来确定两端的情况,每个序列由16个Symbol 组成每个 Symbol 有着不同的含义。

在物理层的LTSSM状态机中,TS1序列和TS2序列的使用发方法不同,TS1、TS2由16个字符(Symbol)组成;TS1序列作用是检测PCIEe 链路的配置信息,而TS2序列确认TS1序列的检测结果。

TS1 TS2如何认为是连续的

使用 8b/10b 编码时,仅当 Symbol 6 与前一个 TS1 或 TS2 有序集Symbol 6 匹配,对于128/130b 则是TS1或TS2 Symbol 6-9 与之前的Symbol 6-9 相匹配。 比如说polling下,TS序列会发1024 个 有8个连续的 发这么多的原因是害怕有误码。

下面两张图片列出了在8b10b(2.5/5GT),128b130b(8GT↑)下,TS1/TS2的内容区别。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

5、DLLP和TLP标识

为DLLP和TLP增加标识的目的是方便找到DLLP和TLP的边界

5.1、8b10b

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

增加Start/End Symbol 即:STP/SDP/END

TLP的加扰

以一个物理层发送TLP为例:一个TLP在通过物理层时,首先要加上物理层的前后缀STP和END的控制字符,无需加扰;

数据链路层前缀、TLP和数据链路层后缀都属于数据字符,需要加扰,并由物理层发向PCIe链路。

5.2、128b/130b

在128B/130B时,使用Token代替了8b/10b时的symbol。且没有end标识,取而代之的是start标识中的length。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

6、Gen12/Gen34数据在lane上的规则

6.1、8b10b

如果PCIe链路从Logical Idle之后开始数据流的传输时,STP和SDP必须放在Lane0;如果不是从Logical Idle之后开始数据流传输,STP和SDP可以放在Lane0,4,8等;

在PCIe x2链路中,END/EDB放在Lane1,其他链路中放在Lane3,7,11等;

DLLP数据包长度为8个字符, SDP+6字符+END;

一个数据包结束之后,其他的数据包还没Ready, 这个时候需要PAD字符补位到最后一个Lane;

当数据包传输结束,所有Lane发送Logical Idle字符“idle(00)”;

所有的Lane同时发送Ordered Sets.

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

6.2、128b130b

1、STP在IDL后,必须从lane0开始。(见第一个block的symbol6)

2、TLP可以跨越block,而不用再次发送STP Token,(见第一个block的symbol6,发起了STP Token,开始了TLP传输,直至第一个block的symbol15,该TLP并没有传完,需要切到下一个block,下一个block则直接发送剩余数据,不用新起STP Token。)

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

3、EDB坏包,我们假设第一个block的Symbol6是个坏包,那么TLP末端就会加上EDB Token,表明此TLP已无效。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证

4、EDS:分割Data block和OS block。EDS代表一个Datablock的结束,接下来的是OSblock。

5、关于SKP OS(SOS),SOS允许一个block不足16或多于个symbol。可以有8,12,16,20,24个。如果凑不齐最小值8的话,就要用LFSR补全,LFSR是扰码移位寄存器的直接输出没有数据意义。

【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比,【数字IC】从实战了解PCIE,pcie,pcie设计,pcie验证,数字ic设计,数字ic验证文章来源地址https://www.toymoban.com/news/detail-683247.html

到了这里,关于【PCIE系统学习】Gen1/2&Gen3/4 symobl与OrderSet概念对比的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [EFI]ThinkPad-X13-Gen1-20T3电脑 Hackintosh 黑苹果efi引导文件

    硬件 型号 驱动情况 主板 Gigabyte X570 Aorus Elite 处理器 AMD Ryzen 9 5900X 已驱动 内存 32GB DDR4 3200MHz 已驱动 硬盘 NMVe XPG Atom 50 1TB PCIe Gen4 已驱动 显卡 AMD Radeon RX 6900XT 16GB 已驱动 声卡 瑞昱 Realtek ALC257 @ 英特尔 High Definition Audio 控制器 已驱动 网卡 Intel® GbE LAN 已驱动 无线网卡+蓝牙

    2024年02月22日
    浏览(48)
  • 小米14Pro渲染图曝光:2.5D 2K屏、50MP方形相机模组和骁龙8 Gen3

    小米14 Pro渲染图曝光,多项升级令人期待。据外媒91 Mobiles报道,知名爆料人士OnLeaks于近日曝光了一组小米14 Pro的渲染图。该机型相较于前代机型小米13 Pro,有多项明显改进,备受期待。 根据91 Mobiles透露,小米14 Pro将采用2.5D直屏/极微四曲屏技术,屏幕采用平面AMOLED 2.5D显示

    2024年02月06日
    浏览(89)
  • 关于USB4/雷电转PCIE GEN4*4(ASM2464PD Data Sheet)学习及应用整理

    一概述:ASM2464PD是祥硕(USB4/Thunderbolt to PCIe Gen4 x4 NVMe Bridge Controller)的芯片,新一代的USB4/雷电转到PCIe/NVMe配件控制器,这是建立在ASMedia内部设计的PHYs。USB4/雷电技术使PCIe和USB协议能够封装到USB4/雷电结构中,并跨越USB4/雷电3.0领域。 ASM2464PD可以在各种类型的存储设备中实现

    2023年04月08日
    浏览(30)
  • [halcon] 局部图片保存 gen_circle 和 gen_rectangle2 对比 这怕不是bug吧

    我想实现一个功能,获取图片中瑕疵的位置,将瑕疵周边的一块区域抠图并保存。 一开始我代码这么写的: gen_circle (Rectangle, Row[i], Column[i], 256) reduce_domain(Image,Rectangle,GrayEllipse) crop_domain(GrayEllipse, ImagePart1) write_image(ImagePart1, ‘bmp’, 0, ‘monk01.bmp’) 因为 gen_circle 指定的是半径

    2024年02月11日
    浏览(40)
  • 天玑9000+和骁龙8gen1+哪个性能更强 两者配置对比

    天玑9000+在今日正式发布了,作为天玑9000的升级版,在配置上有所提升,但如果和高通的骁龙8gen1+相对比,天玑9000+和骁龙8gen1+哪个性能更强?下面来看看两者的配置对比吧。 天玑9000+和骁龙8gen1+配置对比 制作工艺 在制作工艺上两者都是采用的台积电的4nm的制作工艺。 架构方

    2024年02月06日
    浏览(63)
  • PCIE学习系列 五(Linux之PCIe设备驱动开发框架)

    本文讲述一个开源的PCIe设备驱动,通过这个例子可以基本上理解所有的PCIe设备驱动。后续也会做关于Linux各类驱动的文章。 通过前面的学习,我们知道PCIe设备访问之前需要先做枚举。一般来说,PCI设备的枚举操作不需要我们来做,BIOS或者系统初始化时已经做好了,当系统枚

    2024年02月05日
    浏览(58)
  • 【Microsemi PolarFire】PCIe学习笔记(一)——PCIe IP核配置

    根据对GUI的输入生成参考时钟,PCIESS系统的参考时钟使用差分HCSL/LVDS。 根据PCIe时钟架构,有以下三种参考时钟可供选择:收发端共享同一个参考时钟、收发端采用独立的参考时钟、仅发送端需要参考时钟(适用于PCIe 2.0以上)。 考虑到系统稳定性,这里使用同源的PCIe插槽提

    2024年02月08日
    浏览(36)
  • PCIE 学习笔记(入门简介)

    书到用时方恨少啊,一年前学PCIE的笔记,再拿出来瞅瞅。发到博客上,方便看。 PCIE和PCI的不同 PCIE采用差分信号传输,并且是dual-simplex传输——每条lane上有TX通道和RX通道,所以每条lane上的信号是4条。PCI是同步时钟、并行传输。 PCIE是端到端的传输,一条链路上只能有两个

    2024年02月06日
    浏览(68)
  • PCIE学习笔记:PCIE-PHY功能描述之什么是PMA/PCS?

    PMA和PCS模块用于处理PHY packets。 PMA : Physical Medium Attachment PMA在串行通道上接收和传输高速串行数据,串行化/去串行化、时钟数据恢复等功能,以及连续时间线性均衡器(CTLE)、判决反馈均衡器(DFE)和传输均衡等模拟前端功能。。 PCS : Physical Coding Sublayer PCS充当PMA和PCIe控制

    2024年02月11日
    浏览(55)
  • 王道操作系统学习笔记(1)——操作系统基本概念

    本文介绍了操作系统的基本概念,文章中的内容来自B站王道考研操作系统课程,想要完整学习的可以到B站官方看完整版。 操作系统:系统资源的管理者(处理机管理、存储器管理、文件管理、设备管理) 交互式命令(在终端中输命令)和批处理命令(Shell脚本) 并发: 宏

    2024年02月10日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包