USB2.0支持3中传输模式:
低速模式(1.5Mb/s)
全速模式(12Mb/s)
高速模式(480Mb/s)
由于协议开销,实际速率要低一些。
USB使用的是NRZI编码方式,其编码核心是:
当数据为0时,电平翻转,
当数据为1时,电平不翻转。
USB数据包的开头有同步域(SYNC),其值为00000001,在经过NRZI编码后,就是一串方波,接收方通过方波计算出时钟频率来采样后续数据。
采样数据过程中,每当遇到数据0时就有电平翻转,那么接收方采样数据的同时,可通过翻转的信号来调整接收时钟的频率。
那么数据一直不翻转,时钟怎么恢复?
因此,bit-stuffing出现了!与serdes异曲同工之妙。
如下图:当传输的数据中有 6个连续的 1,编码前就在第 6 个 1 后插入一个 0,从而强制出现翻转,从而保证接收者可以调整对齐时钟同步,接收者需要删除 6 个连续 1 之后的 0即可恢复原始数据。由于插入了0,这也是开销降低带宽的原因之一。
审核编辑:汤梓红
-
usb
+关注
关注
60文章
7872浏览量
263656 -
USB2.0
+关注
关注
2文章
186浏览量
46011 -
时钟
+关注
关注
10文章
1713浏览量
131264 -
编码
+关注
关注
6文章
924浏览量
54727 -
数据包
+关注
关注
0文章
248浏览量
24344
原文标题:USB的NRZI编码与时钟恢复
文章出处:【微信号:全栈芯片工程师,微信公众号:全栈芯片工程师】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论