浅谈USB协议(一)
USB(通用串行总线)协议是现代电子设备中最广泛使用的接口标准之一。为了满足了市场对高性能接口转换的需求,电科星拓推出XUSB系列PCIe转USB桥片。本文电科星拓将详细探讨USB协议的基本原理,旨在为读者提供深入了解和技术参考。
一、USB协议简介
USB接口自1994年推出以来,经过USB1.0/1.1、USB2.0、USB3.x,最终发展到了现在的USB4.0。传输速率也从最开始的1.5Mbps,大幅提高到了最新的40Gbps。
01、超高速(SuperSpeed)的体系结构
这里着重谈一下USB协议的超高速(SuperSpeed)的体系结构,从协议的角度可以分为物理(Physical)层、数据链路(Data Link)层、协议(Protocol)层。如下图所示:
USB超高速物理层
该层定义了端口的PHY部分以及面向下游的端口(在主机或集线器上)和面向上游的设备端口之间的物理连接。GEN X物理连接由每个通道的两个差分数据对(一个用于发送和一个用于接收)组成。双通道支持(Gen X x2)用于通过USB Type-C电缆和连接器实现双通道操作。
超高速数据链路层
该层主要实现如下功能:
· 包分帧(Packet Framing);
· 路命令定义和用法(Link command definition and usage);
· 链路初始化和流程控制(Link initialization and flow control);
· 链路电源管理(Link power management);
· 链路错误规则和恢复(Link error rules/recovery);
· 复位(Resets);
· LTSSM规范(LTSSM specifications)。
USB超高速协议层
该层主要实现下面的功能:
· 数据包类型(Types of packets);
· 数据包格式(Format of the packets);
· 对由主机和设备发送的数据包的预期反应(Expected responses);
· 4个超高速事务类型(SuperSpeed transaction types);
· 支持对流批量传输类型(Streams for the bulk transfer type);
· 主机或设备可能会收到或发送的各种响应和包的时序参数(Timing parameters);
· 其中,USB数据链层的LTSSM主要负责超高速链路的初始化和训练。
二、USB SuperSpeed LTSSM
Link Training,在正常通信前,以双方的握手及交互过程,来确定双方的速率及相关配置,以确保在现实复杂的物理链路中,接收方都能可靠且正确地接收到对端的信号。而整个Link Training的过程,是基于LTSSM(Link Training and status state machine)来完成的。熟悉PCIe的同学会发现,USB LTSSM和PCIe的LTSSSM链路状态非常相似。
链路训练的目的或需要完成的任务主要包括:
· 接收均衡recevier equalization;
· 时钟恢复clock recovery;
· 数据恢复data recovery;
· 并转换和字符锁定 serial to parallel conversion adn symbol lock;
· 极性翻转 differential polarity inversion;
· 弹性缓冲区初始化 elastic buffer initializatiion。
LTSSM主要有12个状态:
· 运行状态:U0-U3;
· 链路初始化及训练状态:Rx.Detect、Polling、Hot Reset和Recovery;
· 测试状态:Compliance Mode、Loopback;
· 其他状态:SS.Inactive、SS.Disable。
USB3.0的整个运行都离不开这12个状态,借助它USB的控制器和硬件可以完成链路训练、链路错误处理、链路功耗管理、以及链路测试等。
01、Rx.Detect.Reset 状态
RX.Detect.Reset是训练的第一个子状态,这状态只会存在于上游由软件触发Warm Reset的时候,此时上游(DFP)会向下游UFP发送Reset.LFPS,这是一个10MHz-50MHz的信息,并且会持续约80-100ms。
正常退出Rx.Detect.Reset进入下一子状态的条件,取决于进入Rx.Detect的方式:
· 如果是DFP触发的Warm Reset,则Reset.LFPS发完之后,自动进入Rx.Detect.Active;
· 如果是UFP检测到上游发过来的Reset信号,则当RX检测不到这个Reset信号后,也会自动进入Rx.Detect.Active;
· 如果不是Warm Reset触发的话,那么自动跳过Rx.Detect.Reset直接进入Rx.Detect.Active,比如说上电的时候。
02、Rx.Detect.Active 状态
这个状态其实就是用来检测对端是否存在,比如一个支持USB3.0的链路上接入了USB2.0的设备,那么在这一个阶段USB3.0检测不到对端的话,就会自动回退到USB2.0。由于USB3.0的口向下兼容USB2.0,而且设备默认会优先工作在3.0,所以要求USB3.0连续尝试8次检测不到对端之后,才会退化到USB2.0。
1. TX先建立一个稳定的共模电压VTX-CM-DC。
2. 这个共模电压往上步进抬升一定的电压。
3. TX的Detect电路此时开始检测线路上(Tx+和Tx-)的电压,看看要花多长时间线路的电压抬升到新的电压。
当对端无RX的时候,这个电压不需要给耦合电容充电,所以会抬升得特别快。
当对端有RX端接的时候,由于需要给线路上的耦合电容充电,所以需要花更多的时间来抬升这个电压,也就是通过检测充电时间,就可以判断对端是否有端接电阻的存在。
03、Rx.Detect.Quiet状态
当检测不到对端,进入这个状态之后,就会关闭Rx Detect的相关电路以节省功耗,并启动一个12ms的定时器,定时器过后又进入Rx.Detect.Active尝试重新检测插入。
04、Polling.LFPS 状态
进入到Polling.LFPS后,需要在80μs内就开始发出LFPS信号,在发送LFPS信号期间,就要为下一状态接收TSEQ Ordered Sets做好准备,因为下一阶段开始就要发送5Gbps的信号了。
离开Polling.LFPS进入下一阶段需要满足以下条件:
· 设备至少发送了16组LFPS信号;
· 设备至少接收到了2组连续的LFPS信号;
· 设备在接收到LFPS信号后,至少发送过4组连续的LFPS信号。
05、Polling.RxEQ状态
双方开始交换TSEQ Ordered Sets,这个状态并没有一个握手信号来去退出这个状态,大家各自发送完64K也就是65536个TSEQ Ordered Sets之后就自动进入下一个状态,双方各自利用对端发过来的信号完成bit lock、symbol lock、接收均衡和极性翻转。
06、Polling.Active状态
双方会交换由16字节组成的TS1 Ordered Sets,当双方接收到到至少8个完全一致的TS1序列后,就可以进入下一阶段。
07、Polling.Configuration状态
双方交换TS2序列,其实也是用于双方互相告知已经准备好了可以进入U0阶段了,其中TS2的Link Configuration Field可以用于让链路进入Hot Reset、Loopback或者关闭扰码等用于调试的手段。当控制符没有要让连续进入复位或者环回等特殊操作的时候,并且已经接收到连续8个相同的TS2,同时在收到之后还发送了16个相同的TS2,就可以进入Polling.Idle了。
08 Polling.Idle 状态
在这个阶段,所有训练已经做完了,双方开始交互logical Idle信号也就是D0.0,如果上一阶段关闭了扰码,那么从这里开始就已经生效了。
双方都已经准备好进入U0了,于是DFP会将它的link error counter LECS清零,UFP会将自身的port设置改到默认状态。在收到连续8个Idle信号,且在收到1个Idle信号之后已经发送了16个Idle信号,就可以进入U0了,至此链路训练结束。
经过多年的发展,USB传输标准从3.x时代迈向了4.x时代,其中USB4.0支持的传输速率也来到了40 Gbps,除了速率更高之外,USB接口也逐渐走向统一,通过将多种协议组合到一个物理接口,大大减少了之前USB接口种类众多的问题。由于传输的数据速率越来越高,信号完整性也面临挑战,旨在解决SI问题的USB retimer以及redriver芯片也加入了整个USB互联解决方案。
下一期,我们将与您继续探讨以USB控制器及驱动相关的技术原理及应用。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由中国颜值的半壁江山转载自电科星拓公众号,原文标题为:浅谈USB协议(一),本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
【技术】电科星拓带你一文了解I2C基础知识及应用注意事项
23年3月电科星拓发布了I2C接口的全系列产品,对产品的功能做了简单介绍。本文关于I2C的基础知识部分进行介绍。
导热垫片在电子设备中的作用
导热垫片是电子设备中一个辅助使用的零件,但是它的重要性确是任何种类的零部件都无法替代的,而这就是因为这种导热垫片可以在电子设备中起到降低设备热量,起到热阻的效果,还能弥补电子设备制作过程中工艺不达标的问题等因素。
电子设备的动力之源——机壳电源
在电子设备的世界中,机壳电源无疑扮演着举足轻重的角色。作为设备的“动力之源”,它不仅为设备提供源源不断的能量,更是确保设备稳定运行的基石。本文中ZOEYGO来给大家介绍电子设备的动力之源——机壳电源,希望对各位工程师有所帮助。
电科星拓发布PCIE转USB产品,将PCIe2.0通道转换为USB3.0接口,广泛应用于服务器、个人PC及工业设备等产品
电科星拓自主研发的PCIe转USB芯片(XUSB系列)已成功实现规模化量产。该系列芯片是一种用于将PCIe2.0通道转换为USB3.0接口的芯片,实现PCIe设备与USB3.0设备之间的数据传输。最多支持1x 5Gb/s PCIe2.0通道、4x5Gb/s USB3.0接口,USB可以协商支持480Mb/s、12Mb/s和1.5Mb/s,芯片支持从外部flash、系统BIOS或者系统软件加载固件。
电科星拓芯片选型表
电科星拓提供以下技术参数的芯片选型表,包含:时钟Buffer芯片、时钟发生器芯片、I2C接口芯片、数字温度传感器芯片、PCIe Bridge(转SATA)芯片、DDR5 RCD芯片、DDR5 SPD Hub芯片、CDR芯片、电源管理芯片
产品型号
|
品类
|
系列
|
规格
|
状态
|
封装
|
TBUF0320
|
时钟Buffer芯片
|
TBUF系列
|
20路DB2000QL CLK Buffer (LPHCSL)
|
MP
|
LGA80
|
选型表 - 电科星拓 立即选型
PCIe转USB桥片的2种常见应用案例:XUSB系列助力服务器、PC和USB AIC卡高效、节能连接
USB接口已成为连接计算机与外部设备的主要方式,通过PCIe接口扩展USB端口,不仅解决了USB接口不足的问题,还充分利用了PCIe的高带宽和低延迟特性,为用户提供高效、稳定的数据传输体验。本文,电科星拓将为大家分享PCIe转USB桥片的2种常见应用案例。
成都电科星拓科技有限公司产品介绍
描述- 成都电科星拓科技有限公司专注于互联芯片的研发和销售,拥有多个研发中心,产品涵盖时钟、接口、高速接口和电源管理芯片等。公司通过三标管理体系认证,具备完善的E2E量产交付平台,拥有多项专利和荣誉。产品系列包括时钟芯片、通用接口芯片、高速接口芯片和电源管理芯片,广泛应用于服务器、存储、通信等领域。
型号- XSAT系列,PEFS1215,TGEN6308,INTL9548,INTL9306,TGEN6309,INTL9544,INTL9545,XUSB系列,INTL9546,INTL系列,OCDR2822,TBUF系列,OCDR281X,STMP112,STMP431,STMP432,TBUF1308,PSTD0601,PSTD1612,TGEN6310,XSAT2102A,TBUF0210,INTL9617,XSAT2204,XSAT2202,XUSB,OCDR2814,OCDR2811,PSTD1606,RCD,OCDR280X,TBUF0208,STMP系列,TGEN系列,XUSB2102,TBUF0320,INTL3306,TGEN6302,XUSB2104,TGEN6304,MSPD系列,MSPD,TBUF0204,STMP75,OCDR,XSAT,INTL9641,OCDR2801,PEFS0505,PMIC5001,PMIC5002,PMIC5003,OCDR2804,TBUF,INTL3416,PSTD1630,XSAT2104A,RCD系列,XSAT2104,STMP,INTL9554,INTL9555,INTL9511,RCD5001,MSPD5118,TGEN6310B,PEFS1205,TBUF0308,STMP464,OCDR系列,TBUF0306,STMP5111,TGEN6320,INTL3524,TBUF1510,PSTD1620,PEFS1250,RCD5002,TGEN,RCD5003,TBUF0304,INTL3528,INTL
XUSB2104和2102产品简介
描述- XUSB2104/2102是符合USB 3.0规范的通用串行总线3.0主机控制器,支持PCI Express 2.0接口,适用于移动计算设备如笔记本电脑。产品特性包括支持2.5Gbps和5Gbps通信速度,具有高效的电源管理和错误报告、恢复和纠正功能。
型号- XUSB2102,XUSB2104
产品国产化需求,求推荐各种国产芯片(要求性价比高) 1、PCIE转usb 芯片 2、PCIE转SATA芯片 3、大电流核电压供电芯片(电流20A~120A,多相) 4、大电流供电芯片(电流5A~12A,单相) 5、国产SATA主控 6、千兆网络控制器芯片 7、PCIE SWITCH芯片 8、高速板级连接器端子(能够走pcie sata等高速信号) 9、PCIE时钟芯片(多路) 10、I2C扩展芯片(一路I2C扩展多路I2C)
pcie switch应该是可以采用申威ICH2桥片实现的,它的上游端口是标准pcie,下游可配置成pcie,sata,gmac,dvo等接口
成都电科星拓科技有限公司(Silicon Innovation)成立于2019年12月,总部位于成都,在深圳、北京、上海、杭州设有研发中心,是一家业界领先的互联芯片解决方案提供商。
【经验】电科星拓时钟Buffer芯片TBUF1510在客户服务器上的应用案例详解
本文电科星拓将为您介绍其时钟Buffer芯片TBUF1510的相关规格参数和优势,并详细介绍TBUF1510在大客户的应用经验,帮助大家深入理解时钟Buffer的应用。
【IC】电科星拓推出I²C双向转换开关芯片INTL9548/46/45,支持0至400kHz总线频率
INTL9548/9546/9545是带复位功能的8通道/4通道I²C和SMBus转换开关,INTL9545同时支持中断功能,支持低电平有效复位(RESET)输入,将RESET下拉为低电平会使I²C状态机复位,并且使所有通道取消选中,这一功能与内部上电复位功能的作用一样。
【IC】电科星拓PCIe转SATA芯片XSAT系列:扩展SATA设备的高速桥梁,低功耗设计,性能优越
电科星拓自主研发的PCIe转SATA芯片(XSAT系列)已成功实现规模化量产。该系列芯片能够将PCIe 2.0通道转换为SATA 3.0通道,实现PCIe设备与SATA设备之间的数据传输。
电子商城
服务
深圳市启威测实验室,面向所有企业提供信号完整性测试服务,主要包括USB、HDMI 、DP、MIPI、PCIe 、SD/EMMC、DDR接口信号测试。测试手段有波形测试、眼图测试、抖动测试等。
提交需求>
整体外形尺寸小至0.6*0.3*0.3mm (DFN0603),工作电压范围覆盖2.5V~36V,电容值低至0.2pF,浪涌能力最高可达240安培,静电等级可达空气放电、接触放电±30KV。提供免费浪涌测试仪、静电测试仪测试。
提交需求>
登录 | 立即注册
提交评论