USB2.0协议
USB总线的信号
使用差分传输,两个数据线D+和D-
差分信号1:D+高电平;D-低电平
差分信号0:D-高电平;D+低电平
常见信号
USB总线的信号:USB总线的信号说经过编码最后呈现的格式
对于全速设备J状态是差分信号1,K状态时差分信号0
常见信号 | 状态介绍 |
---|---|
ldle空闲状态 | J状态,数据发、送前后总线的状态 |
Suspend挂起状态 | 3ms以上的J状态 |
Resume恢复信号 | 20ms的K状态+低速EOP |
Reset信号 | 主机拉低两根信号线(SE0状态)10ms,把设备设置到默认的未配置状态 |
SYNC | 3个KJ状态切换,后跟随2位时间的K状态 |
SOP | 包传输开始标志,从IDLE状态切换到K状态 |
EOP | 包传输开始标志,持续2位时间的SE0信号,后跟随1位时间的J状态 |
数据编解码和位填充
常见信号是由输入信号经过编码得到,下面是具体过程
-1-位填充:输入数据先经过位填充再编码
数据流中每6个连续的“1”,就要插入1个“0”,从而保证编码数据出现电平变化
-2-编码:USB采用NRZI(非归零编码)对发送的数据包进行编码
输入数据0, 编码成“电平翻转”
输入数据1, 编码成“电平不变”
编码出来的序列,高电平:J状态;低电平:K状态
-3-解码:接收方赋值解码NRZI码流,然后识别出填充位,并丢弃它们
原始数据----填充数据-