PCIE-TS1/TS2,变量总结

2024-08-21 11:44
文章标签 总结 变量 pcie ts1 ts2

本文主要是介绍PCIE-TS1/TS2,变量总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.标准TS1/TS2

2.EQ TS1/TS2

3.Modified TS1/TS2

Modified TS1/TS2 是什么?Modify了什么?为什么要Modify?PCIe 协议运行在 PCIe PHY 上或发送 TS Message 时,在 LTSSM 部分子状态采用 Modified TS1/TS2。允许发送 Modified TS1/TS2 LTSSM 子状态有 Cfg.Lanenum.Wait、Cfg.Lanenum.Accept、Cfg.Complete在此之前的,必须在 Polling.Active、Polling.Cfg、Cfg.Linkwidth.Start、Cfg.Linkwidth.Accept 状态将 Standard TS1/TS2 Symbol 5 bit[7:6] 置为 2’b11,以此在收发端协商是否支持 Modified TS只有在收发端均支持 Modefied TS 时,才能发送 Modified TS,否则仍然发送 Standard TS。Standard TS1 / TS2 比,Modified TS 更改了 Symbol 6~15,这些 Symbol 主要是均衡相关字段,采用 Modified TS 是为了在协商完毕链路宽度后,同时协商Lane numberalternate protocololbypass EQ (勘误:没有这个说法,bypass eq 指示位只是换了位置了,该 eq 还得 eq)。(参考网络)

Standard TS1

针对selectable de-emphasis:

另外在Recovery.RcvrCfg状态会使用到此域:

针对Speed_change ,在Recovery.RcvrCfg也会使用此域:

针对Equalization Bypass to Highest NRZ Rate support,在2.5GT/s or 5.0GT/s -> 32GT/s的转化过程中使用:

针对No equalization needed,在-> 64GT/s的过程中使用:No equalization needed + Equalization Bypass to Highest NRZ -> Equalization Bypass to Highest NRZ.

另外No Equalization Needed or Equalization Bypass to Highest NRZ Rateconfiguration.idle中的使用,没列全具体参考pcie协议。

针对Receiver Preset Hint,是用于rx,进8.0GT/sdown端使用,不是强制使用,用于rxdc增益。Rx均衡的一种,ctleContinuous Time Linear Equalizer

CTLE技术的工作原理是直接通过线性模拟高通滤波器拟合信道的衰减,实现信道的补偿。信道的频率响应可以看做是一个低通滤波器。因此将信道和一个高通滤波器串联就能得到一个全通的滤波器。当然,在实际的模拟电路中并不存在高通滤波器,但是只要保证我们关心的带宽内呈现高通的特性就能满足均衡的要求需要说明的是,CTLE电路并不是放大高频信号,而是通过减小低频信号的方式补偿高低频的衰减差。因此,通常CTLE电路会与放大器配合使用。而CTLE最为人诟病的缺点是其在放大高频信号的同时也会放大高频噪声,因此会降低信噪比。此外,高频的CTLE电路需要保证非常大的带宽(通常稍大于信号的奈奎斯特频率),因此需要非常大的静态电流;同时,需要电感进行扩频,改善其频率响应。因此,CTLE往往伴随着巨大的面积和功耗开销。

针对Transmitter Preset,参考下表,64GT/s和其他速率下对应的table不一样。

针对use preset,表示是否使用preset值。

针对Equalization Redo:

三种情况会触发重做均衡:某速率均衡失败;某速率均衡成功,但检查均衡系数设置时发现了问题;改变链路宽度????

注意,bit7不仅仅表示qualization还表示Use Preset,协议上其实阐述了在qualization中的phase2/phse3中该bit实际上是起use preset的作用,但是协议又规定该bitlockeqloopback下有意义,

那么在phase1中收到的该bit表示的是redo吗?

Lock下收到该bit1表示redo,但是sip是通过产生中断由软件去控制redo的过程的。

针对Reset EIEOS Interval Count65536个以后是必须发还是根据32的倍数来的??

phase2phase3的描述里说可能会一次性发65536TS1,这是因为phy的评估算法可能需要依赖较长时间的PRBS pattern,master可以通过TS1里把reset EIEOS interval count1来实现。

变量总结:

(1)changed_speed_recovery:表示链路双方已经将链路速率协商为更高的速率

change_speed_revovery变量学习总结_r.speed状态-CSDN博客

(2)Direct_speed_changeIf greater than 2.5 GT/s data rate support has been noted, the Downstream Port must set the directed_speed_change variable to 1b if the Retrain Link bit of the Link Control Register is set to 1b and the Target Link Speed field in the Link Control 2 Register is not equal to the current Link speed. l1也会存在)

(3)successful_speed_negotiation

(4)use_modified_TS1_TS2_Ordered_Set:使用Modified TS1/TS2

(5)Flit_Mode_Enabled

(6)L0p_capable

(7)SRIS_Mode_Enabled

(8)upconfigure_capable:支持带宽从小变大

(9)idle_to_rlock_transitioned该变量记录了因为配置过程没有起作用,从而导致状态机从 Configuration.Idle 状态跳转到 Recovery 状态的次数。这可能是因为均衡设置不合适,或者当前选择的速率无法正常工作导致的,Recovery 状态内会采取措施尝试解决这些问题。该变量限制了从本状态跳转至 Recovery 状态的尝试次数,从而避免了永久的无限循环。如果链路在 256 次尝试后(变量计数至 FFh)仍然没法正常工作,那么跳转回 Detect 状态重新开始,并希望这次能有更好的结果。

(10)start_equalization_w_preset:为1表示使用预设值

(11)select_deemphasis

a:detect.quit:The select_deemphasis variable must be set to either 0b or 1b based on platform specific needs for an Upstream Port and identical to the Selectable Preset/De-emphasis bit in the Link Control 2 Register for a Downstream Port.

b:recovery.speed:If the negotiated data rate is 5.0 GT/s, and if operating in full swing mode, -6 dB de-emphasis level must be selected for operation if the select_deemphasis variable is 0b and -3.5 dB de-emphasis level must be selected for operation if the select_deemphasis variable is 1b.

c:recovery.cfg:On entry to this substate, a Downstream Port must set the select_deemphasis variable equal to the Selectable De-emphasis field in the Link Control 2 Register or adopt some implementation specific mechanism to set the select_deemphasis variable, including using the value requested by the Upstream Port in the eight consecutive TS1 Ordered Sets it received. A Downstream Port advertising 5.0 GT/s data rate support must set the Selectable De-emphasis bit (Symbol 4 bit 6) of the TS2 Ordered Sets it transmits identical to the select_deemphasis variable.

Upstream Ports must register the Selectable De-emphasis bit (bit 6 of Symbol 4) advertised in these eight consecutive TS2 Ordered Sets in the select_deemphasis variable.

(12)select_preset:仅仅用在Polling.Compliance状态中

(13)equalization_done_8GT_data_rate

(14)equalization_done_16GT_data_rate

(15)equalization_done_32GT_data_rate

(16)equalization_done_64GT_data_rate

这篇关于PCIE-TS1/TS2,变量总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1093066

相关文章

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

一文全面详解Python变量作用域

《一文全面详解Python变量作用域》变量作用域是Python中非常重要的概念,它决定了在哪里可以访问变量,下面我将用通俗易懂的方式,结合代码示例和图表,带你全面了解Python变量作用域,需要的朋友... 目录一、什么是变量作用域?二、python的四种作用域作用域查找顺序图示三、各作用域详解1. 局部作

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

MySQL基本查询示例总结

《MySQL基本查询示例总结》:本文主要介绍MySQL基本查询示例总结,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Create插入替换Retrieve(读取)select(确定列)where条件(确定行)null查询order by语句li

java变量内存中存储的使用方式

《java变量内存中存储的使用方式》:本文主要介绍java变量内存中存储的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍2、变量的定义3、 变量的类型4、 变量的作用域5、 内存中的存储方式总结1、介绍在 Java 中,变量是用于存储程序中数据

Linux区分SSD和机械硬盘的方法总结

《Linux区分SSD和机械硬盘的方法总结》在Linux系统管理中,了解存储设备的类型和特性是至关重要的,不同的存储介质(如固态硬盘SSD和机械硬盘HDD)在性能、可靠性和适用场景上有着显著差异,本文... 目录一、lsblk 命令简介基本用法二、识别磁盘类型的关键参数:ROTA查询 ROTA 参数ROTA

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Python实现图片分割的多种方法总结

《Python实现图片分割的多种方法总结》图片分割是图像处理中的一个重要任务,它的目标是将图像划分为多个区域或者对象,本文为大家整理了一些常用的分割方法,大家可以根据需求自行选择... 目录1. 基于传统图像处理的分割方法(1) 使用固定阈值分割图片(2) 自适应阈值分割(3) 使用图像边缘检测分割(4)

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解