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文章
7959瀏覽量
265066 -
USB2.0
+關注
關注
2文章
187瀏覽量
46126 -
時鐘
+關注
關注
11文章
1736瀏覽量
131581 -
編碼
+關注
關注
6文章
946瀏覽量
54871 -
數據包
+關注
關注
0文章
263瀏覽量
24414
原文標題:USB的NRZI編碼與時鐘恢復
文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論