USB SS-PHY Tuning

news2025/1/18 17:12:01

1 USB 3.0 PIPE PHY
1.1 USB 3.0 PHY
USB 3.0 PHY = PIPE wrapper + PCS + SerDes

1.2 SS PHY电流源
CML电流源串联在NMOS管的Source中,电流是16 mA,所以差分电压摆幅是16 mA x (50 // 50) x 2 = 800 mV。

1.3 PIPE PHY数据线宽度
DWC_usb3_databook_2.50a.pdf
USB 3.0 PIPE PHY(SerDes = PCIe Gen2)的数据线宽度是可以设置的,最大宽度分别是Tx 32bit、Rx 32bit,需要根据PIPE PHY的接口频率来设置数据线宽度。如果PIPE PHY运行在128MHz,那么Tx和Rx的数据线宽度都是32bit;如果PIPE PHY运行在256MHz,那么Tx和Rx的数据线宽度都是16bit。

USB 3.0 Gen1的速度5Gbps,是指Tx和Rx的速率都是5Gbps(128MHz x 4bytes或者256MHz x 2bytes)。
USB 3.0 Gen1的速度5Gbps(625MB/s),协议开销(overhead)占用了20%带宽,所以实际有效速度是500MB/s。
USB 3.0 Tx或者Rx的传输速率虽然是5Gbps,但实际上数字信号的方波频率是2.5GHz(传输2个bit对应一个方波)。

Intel APL (Gen9, A39X0) 8-port MPH xHCI的物理层名字是ModPHY(High Speed I/O Modular Physical Layer for Intel USB 3.0)。

1.4 Lane polarity reversal
USB SS SerDes支持差分信号极性反转。

You can swap the SSTX and SSRX pairs but not the USB2 (D+/D-) pair. This is because, during SuperSpeed enumeration, certain training sequences (called TSEQs) are sent and the D10.2 symbol in this is used to detect if lane polarity inversion is done (refer to section 6.4.2 of the USB 3.0 spec). However, such lane inversion detection is not done in USB 2.0 enumeration.

1.5 Rx.Detect
Link层LTSSM会周期性驱动PHY的PIN TxDetectRx到高,让PHY做Receiver Detection。Receiver的SSRX+/-上各有一个等效的50欧姆下拉电阻,并联形成25欧姆电阻。
设备连接前的充放电时间常数T = R_Detect * C_Parasitic
设备连接后的充放电时间常数T = (R_Detect + R_Term) * (C_AC + C_Parasitic)
Probe SSTX+, you can see the 500mV Rx.Detect pulse without connecting device, its period is 13.75ms (72Hz), pulse width is less than 40us.

1.6 Redriver Rx.Detect
If Redriver detects receiver on its transmitter, then it assumes there is a valid termination. In this case, Redriver turns on its own Rx 50-ohm termination, this signals the xHCI to start Rx.Detect. Redriver does not include LTSSM, but Retimer includes LTSSM.

1.7 Electrical Idle
Electrical Idle means the differential voltage applied to the link is 0mV (no signaling). If there is 0mV differential, then the Rx cannot recover a clock and bit/symbol lock is lost.
In Logical Idle the Rx maintains bit/symbol lock because the Tx will send IDLE symbols. The IDLE symbols do not contain data and are thrown away by the Rx.

1.8 SerDes眼图
SerDes接收端眼图闭合的原因,不是由于高频的损耗太大,而是由于高低频的损耗差异过大,导致码间干扰严重,因此不能张开眼睛。

2 Link Layer
2.1 LTSSM
SS.Disabled - 产生中断
SS.Inactive - 产生中断
Compliance Mode - 不产生中断

Refer to LINK_IRQHandler() of CH569 USBSS.
USBHS: 0x4000_9000
USBSS: 0x4000_8000
https://www.wch.cn/downloads/CH569EVT_ZIP.html

2.2 Tx - Compliance mode
CP0 is sent by DUT Tx+/- firstly, when trigger device sends Ping.LFPS to DUT Rx+, then DUT will toggle CP1/CP7/CP8 to oscilloscope via Tx+/-.
CP1: SSC,调制三角波(30~33kHz)

Enter compliance mode :
1)  Plug in USB host cable w/o fixture connected
2)  Disable any power management features:
a.  echo on > /sys/bus/usb/usb1/power/control
b.  echo on > /sys/bus/usb/usb2/power/control
3)  /system/bin/r 0xA800430 0x10340
4)  Plug in the USB test fixture
5)  Compliance pattern is generated on the scope

2.3 Rx - Loopback mode
这里的环回表示Link层,不是PHY层的PCS或者PMA环回。
Figure 2-1 USB Rx Test-Loopback

watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pvb3NlbnBpbg==,size_16,color_FFFFFF,t_70

Need a BERT(Bit Error Rate Tester, 误码率测试仪)
Polling.LFPS->65536 Rx.EQ->256 TS1->256 TS2(TS2 Symbol 5 bit2, Loopback)->Loopback

Verilog big endian data, 0xBC means COMMA
Rx.EQ: 32'hBCFF17C0, 32'h14B2E702, 32'h82726E28, 32'hA6BE6DBF, 32'h4A4A4A4A, 32'h4A4A4A4A, 32'h4A4A4A4A, 32'h4A4A4A4A

TS1: 32'hBCBCBCBC, 32'h00004A4A, 32'h4A4A4A4A, 32'h4A4A4A4A

TS2: 32'hBCBCBCBC, 8'h00, {4'h0, 1'h0, loopback > 0, 1'h0, hot_reset_count > 0}, 16'h4545, 32'h45454545, 32'h45454545

2.4 APL xHCI LTSSM stuck issue
not warm reset yet, waiting 200ms
not enabled, trying warm reset again

This log shows ss port stuck issue.
Disable USB3 roothub port: Clear power Feature and Set BH_Reset Feature.
23 01 0008 port1 0000
23 03 001c port1 0000
Disable USB3 non roothub port: Set Rx.disabled Feature.
23 03 0005 0400|port1 0000
Add # define DEBUG at the first line of the hub.c file (above the header files) for enabling Linux dynamic debug log.

3 Standalone SerDes
Freescale MC92610
STM C65SPACE-HSSL SerDes, HSSL stands for High Speed Serial Link

4 USB4 v2
借助PAM3调制技术,可实现上行120Gbps(Tx),下行40Gbps(Rx),也即是3Tx+1Rx。

5 URLs
daisho USB
http://www.greatscottgadgets.com/daisho/

[RFC v2 00/22] USB 3.0 hub support & xHCI split roothub for 2.6.38
http://www.spinics.net/lists/linux-usb/msg40949.html

6 Abbreviations
ARC:Argonant RISC Core
AT91SAM9260:SAM means Smart ARM-based Microcontroller
ATMEL SAMBA:ATMEL Smart ARM-based Microcontroller Boot Assistant
DWC2:Design Ware Controller 2,Apple的嵌入式设备,包括iPad和iPhone都是使用的DWC2
EOM: On chip Eye Opening Monitor for USB PIPE PHY receiver side
HUB3CV:USB 3 Hub Command Verifier Ver. 2.1.12.1
ISP1161:Philips' Integrated host Solution Pairs 1161,“Firms introduce USB host controllers”,https://www.eetimes.com/document.asp?doc_id=1290054
LatticeECP: EConomy Plus, integrate USB SerDes
PAM-4:每个符号表示2个bit,眼图有3个眼睛;而NRZ眼图只有一个眼睛
SL811HS:Cypress/ScanLogic 811 Host/Slave,性能上与ISP1161(Integrated host Solution Pairs 1161)相当
TDI:TransDimension Inc.,该公司首先发明了将TT集成到EHCI RootHub中的方法,这样对于嵌入式系统来说,就省去了OHCI/UHCI的硬件,同时降低了成本,作为对该公司的纪念,Linux内核定义了宏ehci_is_TDI(ehci);产品UHC124表示USB Host Controller;收购了ARC USB技术;现已被chipidea收购,chipidea又被mips收购
TT:Transaction Translator(事务转换器,将USB2.0的包转换成USB1.1的包)
U0:USB SS link is Up
USB BH reset:Bigger Hammer or Brad Hosler,表示warm reset;you may be confused why the USB 3.0 spec calls the same type of reset "warm reset" in some places and "BH reset" in other places. "BH" reset is supposed to stand for "Big Hammer" reset, but it also stands for "Brad Hosler". Brad died shortly after the USB 3.0 bus specification was started, and they decided to name the reset after him. The suggestion was made shortly before the spec was finalized, so the wording is a bit inconsistent.
usb3_mifgen:Altera Memory Initialization File
VNA:Vector Network Analyzer,矢量网络分析仪

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/532581.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

涂鸦智能生活App SDK:全量级灵活定制,让你的App更具差异化

之前一期,我们介绍过涂鸦 OEM App 开发方案(点击查看往期介绍),它集品牌 UI 自定义、服务、运营、商城营销于一体,无需代码,开发者点选拖拽即可快速配置想要的常用功能,最快 10 分钟即可完成一款…

【敬伟ps教程】历史工具、画笔、橡皮擦

文章目录 历史工具面板上的操作按历史记录选项历史记录画笔历史记录艺术画笔 画笔工具画笔基本操作画笔预设画笔面板 铅笔工具背景橡皮擦魔术橡皮擦 历史工具 窗口–历史记录 历史记录是从上到下是操作步骤,编辑时会有很多历史记录,点击下方删除按钮可删…

产线故障ar远程协助系统为运维提供可视化的画面

说起AR增强现实技术,其适为企业设计、生产、装配、销售和运维所有链条提供更优的解决方案,今天为您具体介绍AR远程专家协助技术应用工作制造中的好处。 1、设备、产线发生重大故障,需要厂家派人来现场,停工损失巨大; 2、借助手机进…

【PyQt】PyQt学习(三)QWidget介绍

概述 QWidget 类是所有 Qt GUI 界面类的基类,是 PyQt 程序中的最小元素,也就是所有可现实的控件的基类。一个继承自 QWidget 的类可以在屏幕上绘制自身,这是因为 QWidget 继承了 QPaintDevice 类,该类用于将控件绘制在屏幕上。每一…

leecode每日一题 1054 距离相等的条形码

题目描述 在一个仓库里,有一排条形码,其中第 i 个条形码为 barcodes[i]。请你重新排列这些条形码,使其中任意两个相邻的条形码不能相等。 你可以返回任何满足该要求的答案,此题保证存在答案。 示例 1: 输入&#xf…

JS逆向 -- 分析某站aid、cid、w_rid和sid的加密过程

接上节课内容 JS逆向 -- 分析某站buvid3和_uuid的加密过程 JS逆向 -- 分析某站b_lsid值加密过程 一、清除cookie信息,刷新网页,ctrlf搜索sid,这样找到的数据是在url里或者响应信息里面,全局搜索找到的一般都是在js里面的数据&a…

ChatGPT生成Excel统计公式——检查数据是否满足要求

背景需求 有一张表格如下,需要统计每个用户是否在第一到第三周中,每周发文数量都大于等于两篇,是的话给出Yes,否的话给出No 操作流程 给出描述,让ChatGPT生成对应的公式,条件如下: 在excel中…

【保护和自动控制 JDX-1000信号继电器 机械保持、电复归 JOSEF约瑟】

名称:信号继电器;型号:JDX-1000系列;品牌:JOSEF约瑟;额定电压:110、220VDC/AC;起动电流:3mA;稳定电流:2A;功率消耗:不大于…

TH2822D手持式 LCR数字电桥产品资料

TH2822D是一款手持式LCR数字电桥,可测量电容、电感和电阻,具有高精度、高灵敏度、低功耗和易于携带等特点。TH2822D适用于生产、现场维修和科研等多个领域。 TH2822D手持式LCR数字电桥的主要特点如下:1. 标准源四终点测量方法,准…

【优秀!44个HCIA-Datacom知识点总结】

1、IPV4地址的组成部分?IP地址长度?表达形式?如何区分网络位和主机位? 组成部分:网络位主机位 IP地址长度:32bit 表达形式:点分十进制 区分:子网掩码区分,为1是网络位&am…

以云原生推动代际跃升,2023通明湖论坛云原生分论坛召开

5月12日,由神州数码主办,北京经开区国家信创园、中关村云计算产业联盟协办的2023通明湖论坛-云原生分论坛在京召开。本次论坛,以“抓住云原生机遇,推动我国信息基础设施技术代际跃升”为主题,聚焦以云原生为核心引领的…

vue2和elementUI 打造落日余晖登录页和滑块校验

文章目录 前言1 项目搭建2 依赖引入3 项目调整①vue-router② App.vue③ main.js 4 写登录页5 写滑块校验6 源码下载7 问题解决①项目一直报错② 背景图存在白边 前言 标题很夸张,实则是AI的功能,今天咱也搞一个登录页,其实满简单的一个东东…

Gigabayte-Z87-DS3H i3 4130电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网,转载需注明出处。(下载请直接百度黑果魏叔) 硬件型号驱动情况 主板Gigabayte-Z87-DS3H 处理器英特尔酷睿i3 4130 Haswell已驱动 内存4x4GB DDR3/1600Mhz金士顿已驱动 硬盘SSD 480GB PNY CS900已驱动 显卡英特尔高…

想学透OSPF,先搞懂这6个技术点再说

大家好,我是老杨。 OSPF,这玩意儿作为目前主流的IGP协议,主要是为了解决RIP的三大问题而出现的。 应用面非常广,认可度也高,毕竟的确是好用的。 也有很多正在学习的小友想找我讲讲,OSPF该怎么学。 基础的…

Beerus:基于Helios light client的Starknet Stateless Client

1. 引言 前序博客: Helios——a16z crypto构建的去中心化以太坊轻节点 Beerus为基于Helios light client构建的Starknet Stateless Client,开源代码实现见: https://github.com/keep-starknet-strange/beerus(Rust&#xff09…

食饮品牌如何用Social Power抓住消费者心智?

2023 Foodaily创博会 2023.05.14-2023.05.16 数说故事将深度参与Foodaily创博会(第八届Foodaily FBIC全球食品饮料创新大会),和食饮品牌一起玩转Social Power,抓住消费者心智,用一种很新的方法营销与创新。 作为食饮…

Qt5.15.2替换mingw32-make.exe为emmake

qtcreator对qt程序的编译过程是先“qmake” ,然后“构建(等价于make)”。 qtcreator右键点击项目 出现的 “执行qmake”和“构建” 两个选项其实就是运行 项目-》build->构建步骤 中的“qmake”和“make”步骤所对应的命令行命令。 从项目…

类和对象(三)

目录 前言 1.再谈构造函数 1.1 初始化列表 1.2 explicit关键字 2.static成员 2.1 概念 2.2 特性 3.友元 3.1. 友元函数 3.2 友元类 4.内部类 5.匿名对象 6.拷贝对象时的一些编译器优化 前言 今天小编给大家介绍的就是类最后的相关内容,希望大家好好学习理…

僵尸进程?孤儿进程?为什么他有如此惨烈的身世...

文章目录 💐专栏导读💐文章导读🌷认识进程状态🌺如何查看进程状态 🌷R状态🌺引例🌺如何观察 🌷S状态与D状态🌺S状态🍁如何观察 🌺D状态 &#x1f…

【机器学习】Yellowbrick 包的理解和说明

文章目录 一、介绍二、Visualizers2.1 Classification Visualization2.2 Clustering Visualization2.3 Feature Visualization2.4 Model Selection Visualization2.5 Regression Visualization2.6 Target Visualization2.7 Text Visualization 一、介绍 首先是包的安装过程&am…