⚡ USB · LTSSM 实战
📘 30章 从协议到状态机
01
USB协议概述
诞生背景 · 2.0/3.x/4.0/Type-C差异 · 生态系统
基础
概览
02
USB电气特性与信号
D+/D-差分 · 驱动/终端 · SSTX/SSRX · CC逻辑
电气
Type-C
03
USB包结构与传输
SOP/PID/ADDR/CRC · 令牌/数据/握手/特殊包 · 传输类型
协议
包
04
USB枚举过程
连接复位 · 描述符获取 · 地址分配 · Set Configuration
枚举
核心
05
USB描述符体系
设备/配置/接口/端点/字符串/BOS描述符
描述符
USB 3.0+
06
USB请求与标准命令
bmRequestType · 标准/类/厂商请求
控制
命令
07
USB HID协议
HID描述符 · 报告描述符 · Set/Get Report · 自定义键盘
HID
实战
08
USB Mass Storage
BOT协议 · CBW/CSW · U盘读写 · UAS
存储
BOT
09
USB Video Class (UVC)
UVC描述符 · VS/VC接口 · 帧格式 · 摄像头采集
视频
UVC
10
USB Audio Class (UAC)
UAC描述符 · 同步方式 · Isochronous实战
音频
同步
11
USB Hub与电源管理
Hub架构 · 2.0/3.x差异 · Suspend/Resume · VBUS
Hub
电源
12
USB Type-C与PD协议
CC1/CC2 · PD消息 · 电源角色交换 · Alternate Mode
Type-C
PD
13
USB 3.x超高速协议
DPP/LMP · 流控制 · 链路层管理 · 超高速传输
3.x
超高速
14
USB 4.0 & Thunderbolt
USB4隧道 · 协议适配 · 带宽分配 · TB3/4兼容
USB4
融合
15
USB协议分析仪实战
逻辑分析仪抓包 · 3.x分析仪 · CRC/STALL/Babble
调试
分析仪
16
USB设备固件开发(STM32)
外设初始化 · 端点配置 · PMA/双缓冲 · 自定义HID
固件
STM32
17
USB主机控制器开发
OHCI/EHCI/xHCI · TD/QH · 裸机主机栈
主机
驱动
18
USB Linux驱动框架
usbcore · urb · probe/remove · 键盘驱动
Linux
驱动
19
USB Windows驱动开发
WDF · UMDF/KMDF · INF · WinUSB
Windows
WDF
20
USB测试与认证
USB-IF认证 · 眼图/抖动 · 协议测试 · 兼容性
测试
认证
21
LTSSM基础概念
LTSSM作用 · 11个状态 · 触发条件
LTSSM
状态机
22
LTSSM检测状态(Detect)
Rx Detect · Polling.LFPS · 示波器抓波形
Detect
实战
23
LTSSM轮询状态(Polling)
Polling.Active/Configuration/Compliance · 速度协商
Polling
Gen1-4
24
LTSSM配置状态(Configuration)
LinkWidth · LaneNumber · Hot Reset · Loopback
配置
宽度
25
LTSSM恢复状态(Recovery)
Recovery.Active · Equalization · Speed · 重训练
Recovery
均衡
26
LTSSM L0与L0s状态
L0数据传输 · L0s快速退出 · 功耗测量
L0
L0s
27
LTSSM L1与L2状态
L1 ASPM · L2休眠 · L1.1/L1.2 · 退出延迟
省电
L1/L2
28
LTSSM Hot Reset & Loopback
TS1序列 · BER测试 · 协议分析仪触发
复位
Loopback
29
LTSSM Equalization
CTLE/DFE · Phase 1/2/3 · Preset协商
均衡
Gen3/4
30
LTSSM实战调试
卡死问题 · 逻辑分析仪跟踪 · 修复链路训练
实战
调试