pcie phy-电气层-gen1/2(TX)
S IP物理层讲解
在synopsys IP中对于phy层的内容分离的比较多:
cxpl中:
u_cx_phy_logical:包含ts序列的解析(smlh); pipe层协议的转换(rmlh,xmlh);pipe转dllp包(rplh,xplh);
upcs:package(mac_phy,phy_mac) 以及phy status转pipe协议;pclk_rst;
pcs: digital: pipe转 pcie phy data; aon: mplla+mpllb,分频倍频; ropll;
pma:mplla,b; ropll; lane analog;
tx: 3-tap FFE(course -1,+1,0); feed-forward equalization; post-emphasis;
RX: ctle,VGAs, 12-tap DFE,(判决反馈均衡);
xilinx phy RX:
fpga TX结构整体比较简单。
原因:xilinx fpga pcie只支持gen3 以下的速率; 所以没有TX FFE;且RX DFE 抽头系数也不一样。
pcie 结构图;
总的来说spec只是介绍了原理单并未介绍如何实现;下文中实现内容源于Mindshare_pcie文档;以及S IP内容;
在gen1,2;中是8/10b编码;会在物理层插入STP和END包;
x4 lane传输示意图;在一个time周期内,4条lane会同时依次传输1Byte包(10bit);K/D 码说明;K为control 码(Kontrol),D为data 码;
常用的K码规则:
1. S IP中K码的解码是在controller中处理的,如rdlh中提出SDP包用于分离DLLP相关内容。
D码详见附录B;分为+和-两种情况。极性需要再退出EIOS时就确认。
4.2.1.2 symbols to lanes
共有两类编码格式,order set或者 tlp ,dllp数据包。每条lane上的TS包都是串行的,所以一个完整的TS集会出现在所有lane上。STP,SDP,END三种特殊的K码用于指示pcie包。
当no package info或者TS序列传输时,tx处于 logical idle state。发送idle data为全0(不同于electrical idle:一个COM+IDL),且该包应该被加入scramble;接收器接收该空闲包。SKP OS会被连续发送。
tlp编码为顺序的(在lane中传输时是并行的);
一个STP到END中至少有18个symbol,如果少于18个被认为是错包。包含sequence num,Lcrc;
For example, for x8, STP and SDP Symbols can be placed in Lanes 0 and 4; and for x16, STP and SDP Symbols can be placed in Lanes 0, 4, 8, or 12.STP只会出现在lane4*n通道上。
4.2.1.4 data scrambing
这一过程涉及将数据流与线性反馈移位寄存器(LFSR)生成的伪随机序列进行异或运算。在发送端,加扰操作应用于8b/10b编码之前的字符;在接收端,解扰操作则在8b/10b解码之后对字符实施。the Disable Scrambling bit in the TS1 and TS2 Ordered Sets is provided for these purposes.
x1 package 格式;
x4 格式;其中Tx中所有lane都插入SKP是为了在RX端做时钟补偿,利用elastic buffer。STP总在lane0上,END总在Lane3上。
x8 TX lane 格式。
8b/10b 编码
gen1,2支持8b/10b编码;
优势:
1. 在data中嵌入时钟:确保数据流中有足够的边沿,用于rx端时钟的恢复。编码方式会避免连续的5个bit为0或1.
2. 控制直流平衡。pice 差分信号中用一个电容进行ac耦合。在长距离传输允许tx和rx端出现共模电压不同的情况。为了避免直流漂移(DC wander),会在最后一个码发送之后记录disparity。disparity:1和0的数量差。在下一个码流中会校验这个disparity。
3.增强RX错误检测。
劣势:增加了百分之20的额外开销。
字符表示法:本质就是掉个个。用10进制方式表示。
CRD (Current Running Disparity).
-
CRD(Current Running Disparity) 是一个 1-bit 状态位,用来追踪当前的符号电平偏移方向(正或负);
-
每次编码时,8b/10b 编码器会查看当前 CRD 值,并选择一个合适的 10b 码(正或负),以保持电平平衡;
-
如果当前 CRD 已经是“正”(+),再发送一个“正不平衡度”的码字(带更多 1),那就违反了规则,因为:
-
CRD 是 1-bit 状态(只有“正”或“负”两个状态),无法表示“更正”的状态;
-
会导致直流漂移和非法编码状态;
-
这将被视为编码错误或协议违例
-
所以在cdr编码时就已经插入了时钟相关的信息。
8b/10b 编码方式:1. 查找表;2. 在decode是加入解码逻辑。
但是K码是一些特殊的码流,不使用解码逻辑。
特殊K码说明
COM:在物理层中的第一个symbol,用于指示order set 的起始位置。
PAD:见传输图,两种用途:1)意思是在一个包结束时,另一个包开始时,除了STP/ENDlane上会出现pad码。之后接着为idle。2) 在link training。polling状态时,对应的lane发送pad码用于确定lane number。之后会进入到configuration状态。
使用NRZ编码来传输差分信号。
logic idle和IDLE K码并不一个概念。
TX skew 允许的最大值:(在spec中为找到出处,有知道的大佬可以指正)
Gen1:500ps+2UI; UI unit interval;单位间隔,在链路中1bit传输时间;gen1 为例2.5Gbps,400ps;在官方spec中 : data rate dependent transmitter parameters 也有对TX UI的详细说明;
Gen2: 500ps+4 UI;
Gen3: 500ps+6UI;
时钟补偿
tx和rx时钟异步;一个com 码+3个SKP码,构成一个SKIP order set。在RX端有elestic buffer可以选择丢弃SKP码或者补充SKP码来动态调整buffer深度消除lane间的skew。
相关文章:
pcie phy-电气层-gen1/2(TX)
S IP物理层讲解 在synopsys IP中对于phy层的内容分离的比较多: cxpl中: u_cx_phy_logical:包含ts序列的解析(smlh); pipe层协议的转换(rmlh,xmlh);pipe转dllp包(rplh&…...
Baklib加速企业AI数据智理转型
Baklib智理AI数据资产 在AI技术深度渗透业务场景的背景下,Baklib通过构建企业级知识中台架构,重塑了数据资产的治理范式。该平台采用智能分类引擎与语义分析模型,将分散在邮件、文档、数据库中的非结构化数据转化为标准化的知识单元…...
深度学习驱动下的目标检测技术:原理、算法与应用创新
一、引言 1.1 研究背景与意义 目标检测作为计算机视觉领域的核心任务之一,旨在识别图像或视频中感兴趣目标的类别,并确定其在图像中的位置,通常以边界框(Bounding Box)的形式表示 。其在现实生活中有着极为广泛且…...
window 显示驱动开发-使用有保证的协定 DMA 缓冲区模型
Windows Vista 的显示驱动程序模型保证呈现设备的 DMA 缓冲区和修补程序位置列表的大小。 修补程序位置列表包含 DMA 缓冲区中命令引用的资源的物理内存地址。 在有保证的协定模式下,用户模式显示驱动程序知道 DMA 缓冲区和修补程序位置列表的确切大小,…...
《指针与整数相加减的深入解析》
🚀个人主页:BabyZZの秘密日记 📖收入专栏:C语言 🌍文章目入 一、指针与整数相加的原理二、指针与整数相减的原理三、使用场景(一)数组操作(二)内存遍历 四、注意事项&…...
C++_STL_map与set
1. 关联式容器 在初阶阶段,我们已经接触过STL中的部分容器,比如:vector、list、deque、 forward_list(C11)等,这些容器统称为序列式容器,因为其底层为线性序列的数据结构,里面 存储的是元素本身。那什么是…...
1949-2022年各省农作物播种面积数据(22个指标)
1949-2022年各省农作物播种面积数据(22个指标) 1、时间:1949-2022年 2、来源:各省年鉴、国家统计局、农业部、农业年鉴 3、范围:31省 4、指标:年度标识、省份编码、省份名称、农作物总播种面积、粮食作…...
汽车二自由度系统模型以及电动助力转向系统模型
汽车二自由度系统模型与电动助力转向系统(EPS)的详细建模方案,包含理论推导、MATLAB/Simulink实现代码及参数说明: 一、二自由度汽车模型 1. 模型描述 包含以下两个自由度: 横向运动(侧向加速度…...
【学习笔记】计算机操作系统(四)—— 存储器管理
第四章 存储器管理 文章目录 第四章 存储器管理4.1 存储器的层次结构4.1.1 多层结构的存储器系统4.1.2 主存储器与寄存器4.1.3 高速缓存和磁盘缓存 4.2 程序的装入和链接4.2.1 程序的装入4.2.2 程序的链接 4.3 连续分配存储管理方式4.3.1 单一连续分配4.3.2 固定分区分配4.3.3 …...
51单片机的lcd12864驱动程序
#include <reg51.h> #include <intrins.h>#define uchar...
(03)数字化转型之库存管理:从进库到出库的数字化运营
在当今竞争激烈的商业环境中,高效的库存管理已成为企业降低成本、提高运营效率的关键。本文将系统性地介绍库存管理的全流程,包括进库、出库、移库、盘点等核心环节,帮助企业构建科学合理的库存管理体系。 一、进库管理:从计划到执…...
windows编程中加载DLL的两种典型方式的比较
文章目录 DLL定义头文件定义CPP实现DLL的调用代码直接使用通过LoadLibrary调用导入表的依赖LoadLibrary使用DLL库中的类DLL中定义工厂函数调用时的代码补充:为什么LoadLibrary不能直接导出类在windows的编程中,使用DLL是一个非常常见的操作。一般来说,有两种集成DLL的方式:…...
存储器上如何存储1和0
在计算机存储器中,数据最终以**二进制形式(0和1)**存储,这是由硬件特性和电子电路的物理特性决定的。以下是具体存储方式的详细解析: 一、存储的物理基础:半导体电路与电平信号 计算机存储器(…...
【笔记】记一次PyCharm的问题反馈
#工作记录 最近更新至 PyCharm 社区版的最新版本后,我遇到了多个影响使用体验的问题。令人感到不便的是,一些在旧版本中非常便捷的功能,在新版本中却变得操作复杂、不够直观。过去,我一直通过 PyCharm 内置的故障报告与反馈机制反…...
logrotate按文件大小进行日志切割
✅ 编写logrotate文件,进行自定义切割方式 adminip-127-0-0-1:/data/test$ cat /etc/logrotate.d/test /data/test/test.log {size 1024M #文件达到1G就切割rotate 100 #保留100个文件compressdelaycompressmissingoknotifemptycopytruncate #这个情况服务不用…...
基于大模型的脑出血智能诊疗与康复技术方案
目录 一、术前阶段1.1 数据采集与预处理系统伪代码实现流程图1.2 特征提取与选择模块伪代码实现流程图1.3 大模型风险评估系统伪代码实现流程图二、术中阶段2.1 智能手术规划系统伪代码实现流程图2.2 麻醉智能监控系统伪代码实现流程图三、术后阶段3.1 并发症预测系统伪代码片段…...
P21-RNN-心脏病预测
🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 一、RNN 循环神经网络(Recurrent Neural Network,简称 RNN)是一类以序列数据为输入,在序列的演进方向进行递归…...
懒汉式单例模式的线程安全实现
懒汉式单例模式的线程安全实现 懒汉式单例模式的核心特点是延迟实例化(在第一次使用时创建对象),但其基础实现存在线程安全问题。以下是不同线程安全实现方式的详细说明和对比: 1. 非线程安全的基础懒汉式 public class UnsafeLazySingleton {private static UnsafeLazyS…...
Java 常用的Arrays函数
文章目录 ArrayssorttoStringbinarySearchequalsfill 数组拷贝copyOfcopyOfRangearraycopy 二维数组定义遍历deepToString空指针异常 Arrays sort int[] array new int[]{1,20,3}; Arrays.sort(array);// 1 3 20toString 帮助数组转为字符串 int[] array new int[]{1,2,3…...
FEKO许可证与版本兼容性问题
随着电磁仿真技术的不断进步,FEKO软件不断更新迭代,为用户提供更强大的功能和更优秀的性能。然而,在升级过程中,FEKO许可证与版本兼容性问题往往成为用户关注的焦点。本文将为您详细解读FEKO许可证与版本兼容性问题,帮…...
HarmonyOs开发之——— ArkWeb 实战指南
HarmonyOs开发之——— ArkWeb 实战指南 谢谢关注!! 前言:上一篇文章主要介绍HarmonyOs开发之———合理使用动画与转场:CSDN 博客链接 一、ArkWeb 组件基础与生命周期管理 1.1 Web 组件核心能力概述 ArkWeb 的Web组件支持加载本地或在线网页,提供完整的生命周期回调体…...
冰箱磁力贴认证标准16CFR1262
在亚马逊平台,冰箱磁力贴这类可能被儿童接触到的产品,有着严格的规范哦。必须得遵守 16 CFR 1262 标准,还得有符合该标准的测试报告和 GCC 证书,不然产品就可能被禁止销售或者面临召回,那可就损失大啦! …...
Java中的锁机制全解析:从synchronized到分布式锁
在多线程编程中,锁是保证线程安全的核心工具。本文将详解Java中常见的锁机制及其实际应用场景,帮助开发者选择最合适的锁方案。 一、内置锁:synchronized 原理 通过JVM内置的监视器锁(Monitor)实现,可修…...
OptiStruct实例:3D实体转子分析
上一节介绍了1D转子的临界转速分析。在1D转子模型中,转子是以集中质量单元的形式建模的。此种建模方法不可避免地会带来一些简化和局部特征的缺失。接下来介绍OptiStruct3D实体转子的建模及临界转速分析实例。 3D实体转子建立详细的转子网格模型,然后将…...
简单记录坐标变换
以三维空间坐标系为例 rTt代表机械手末端相对robot root坐标系的变换关系 rTt dot p_in_tool 可以把tool坐标系下表示的某点转到root坐标系表示 其中rTt表示tool相对于root坐标系的平移和旋转 以二维图像坐标系为例说明 1坐标系定为图片坐标系左上角,横平竖直的…...
自定义快捷键软件:AutoHotkey 高效的快捷键执行脚本软件
AutoHotkey 是一种适用于 Windows 的免费开源脚本语言,它允许用户轻松创建从小型到复杂的脚本,用于各种任务,例如:表单填充、自动点击、宏等。 定义鼠标和键盘的热键,重新映射按键或按钮,并进行类似自动更…...
【Android构建系统】了解Soong构建系统
背景介绍 在Android7.0之前,Android使用GNU Make描述和执行build规则。Android7.0引入了Soong构建系统,弥补Make构建系统在Android层面变慢、容易出错、无法扩展且难以测试等缺点。 Soong利用Kati GNU Make克隆工具和Ninja构建系统组件来加速Android的…...
显性知识的主要特征
有4个主要特征: 客观存在性静态存在性可共享性认知元能性...
STM32F407VET6实战:CRC校验
CRC校验在数据传输快,且量大的时候使用。下面是STM32F407VET6HAL库使用CRC校验的思路。 步骤实现: CubeMX配置 c // 在CubeMX中启用CRC模块 // AHB总线时钟自动启用 HAL库代码 c // 初始化(main函数中) CRC_HandleTypeDef …...
LeetCode 746 使用最小花费爬楼梯
当然可以!LeetCode 746 是一道经典的动态规划入门题,我来用 C 为你详细解释。 题目描述 给定一个整数数组 cost,其中每个元素 cost[i] 表示从第 i 个台阶向上爬需要支付的费用。一旦支付费用,你可以选择向上爬 1 步 或 2 步。 你…...
隧道结构安全在线监测系统解决方案
一、方案背景 隧道是地下隐蔽工程,会受到潜在、无法预知的地质因素影响。随着我国公路交通建设的发展,隧道占新建公路里程的比例越来越大。隧道属于线状工程,有的规模较大,可长达几公里或数十公里,往往穿越许多不同环境…...
牛客网NC22000:数字反转之-三位数
牛客网NC22000:数字反转之-三位数 🔍 题目描述 时间限制:C/C/Rust/Pascal 1秒,其他语言2秒 空间限制:C/C/Rust/Pascal 32M,其他语言64M 📝 输入输出说明 输入描述: 输入一个3位整数n (100 ≤ n ≤ 999)…...
等离子模块【杀菌消毒】
图片来源于网络,与任何公司或实验室无关。 洗衣机中的等离子模块,又叫等离子杀菌模块或等离子发生器,是一种利用等离子体技术进行杀菌消毒、除异味、净化空气的部件。 输出正高压:3.0KV~4.0KV 输出负高压:-3.…...
LlamaIndex 第九篇 Indexing索引
索引概述 数据加载完成后,您将获得一个文档对象(Document)列表(或节点(Node)列表)。接下来需要为这些对象构建索引(Index),以便开始执行查询。 索引(Index) 是一种数据结构,能够让我们快速检索…...
PCIe Switch 问题点
系列文章目录 文章目录 系列文章目录完善PCIe Retimer Overview Document OutlineSwitch 维度BroadComMicroChipAsmedia 祥硕Cyan其他 完善 Functional block diagram,功能框图Key Features and Benefits,主要功能和优点Fabric 链路Multi-root PCIe Re…...
Linux》Ubuntu》安装Harbor 私有仓库
Harbor 下载Harbor地址 # 下载测试镜像 docker pull hello-world# 给镜像重新打标签 docker tag hello-world serverip/library/hello-world:latest# 登录进行上传 docker login serverip docker push serverip/library/hello-world:latest...
2025 Adobe Acrobat DC安装教程
Adobe Acrobat DC是由Adobe公司开发的一款PDF编辑软件,具有将各种文件扫描至PDF、转换PDF文档;编辑PDF、将PDF转换为Word、Excel、打印PDF;创建富媒体PDF文件等功能。 一.软件下载 点此下载 https://pan.xunlei.com/s/VOQDq6Tk1KUFmyCw9M1E…...
第八节第三部分:认识枚举、枚举的作用和应用场景
认识枚举 枚举的概述 枚举的特点 枚举的应用场景 代码: 代码一:认识枚举 A(枚举) package com.d6_enum;public enum A {//注意:枚举类的第一行必须罗列的是枚举对象的名字X,Y,Z;private String name;public String…...
WEB安全--Java安全--shiro721反序列化漏洞
一、前言 既然我把shiro721和shiro550分开写,就说明两者是有区别的 不过两者的概念和作用也是大相径庭的,这里就不再赘述 可以参考上一篇文章: WEB安全--Java安全--shiro550反序列化漏洞-CSDN博客 二、shiro721 2.1、原理 区别于shiro5…...
[Lc] 5.16 One question a day周总结
感受: 一个数据结构 表示不了,那就再用一个数据结构来帮助标识 逻辑清晰的分析出过程 就一定能写出来~ dp 逆构 依照上述 3 个条件,筛选字符串即可 历程 最开始一眼dp,后来发现要return string,看数据也不是很大&…...
【数据机构】2. 线性表之“链表”
- 第 97 篇 - Date: 2025 - 05 - 16 Author: 郑龙浩/仟墨 【数据结构 2】 续上一篇 线性表之“顺序表” 文章目录 3 链表(用指针来首位相连)① 基本介绍② 分类 与 变量命名1 )分类:2 )大体介绍不同结构: ③ “单链表” 的实现:*…...
《数字藏品APP开发:解锁高效用户身份认证与KYC流程》
开发一款数字藏品APP,要面对诸多复杂且关键的环节,其中,实现高效的用户身份认证与KYC(了解你的客户)流程,无疑是重中之重。这不仅关乎用户资产安全与平台合规运营,更是构建用户信任、保障平台可…...
问题 | 国内外软件定义卫星最新进展研究
软件定义卫星 **一、国内进展****二、国际进展****三、未来发展方向****总结** 软件定义卫星(Software-Defined Satellite, SDS)作为航天领域的重要技术革新方向,近年来在全球范围内发展迅速。其核心是通过开放式架构和动态软件配置实现卫星功…...
安全生产调度管理系统的核心功能模块
安全生产调度管理系统是运用现代信息技术构建的智能化管理平台,旨在实现生产安全风险的全面管控和应急资源的优化调度。该系统通过整合物联网、大数据、人工智能等前沿技术,建立起覆盖风险监测、预警预测、指挥调度、决策支持的全链条安全管理体系。 一…...
RNope:结合 RoPE 和 NoPE 的长文本建模架构
TL;DR 2025 年 Cohere 提出的一种高效且强大的长上下文建模架构——RNope-SWA。通过系统分析注意力模式、位置编码机制与训练策略,该架构不仅在长上下文任务上取得了当前最优的表现,还在短上下文任务和训练/推理效率方面实现了良好平衡。 Paper name …...
22、能源监控与优化 - 数据中心模拟 - /能源管理组件/data-center-energy-monitoring
76个工业组件库示例汇总 能源监控与优化组件 - 数据中心模拟 1. 组件概述 本组件旨在模拟一个典型数据中心的能源消耗情况,并提供实时的监控数据和基本的优化建议/警报功能。用户可以通过界面直观地了解数据中心总体功耗、PUE (电源使用效率)、各部分能耗构成、机…...
docker学习与使用(概念、镜像、容器、数据卷、dockerfile等)
文章目录 前言引入docker 简介docker的应用场景docker的虚拟化技术VS虚拟机docker的优点docker架构Docker仓库Docker镜像linux操作系统的大致组成部分 Docker容器 docker安装与启动校验版本移除旧的版本安装依赖工具设置软件源安装docker验证 配置镜像加速器docker服务相关命令…...
突围“百机大战”,云轴科技ZStack智塔获IDC中国AI大模型一体机推荐品牌
随着DeepSeek在今年年初火爆全球,AI大模型市场的“百模大战”已迅速燃向AI一体机市场形成“百机大战”。近日,国际数据公司(IDC)发布的《中国AI大模型一体机市场分析与品牌推荐2025》报告显示,当前中国市场有100多家厂…...
Python-homework
1.if_name_main的含义,why? 假设有一个文件 module.py,内容如下: def greet():print("Hello from module!")if __name__ __main__:print("This is the main script.")greet()如果直接执行 module.py: pyt…...
内核性能测试(60s不丢包性能)
以xGAP-200-SE7K-L(双口10G)在飞腾D2000上为例(单通道最高性能约2.8Gbps) 单口测试 0口: tcp: taskset -c 4 iperf -c 1.1.1.1 -i 1 -t 60 -p 60001 taskset -c 4 iperf -s -i 1 -p 60001 udp: taskse…...