USB、UTMI、ULPI

1、NRZI编码和位填充(Bit Stuffing)

NRZI,Non-Return-to-Zero, Inverted,翻译成中文是翻转不归零码不归零的意思是编码方式相对于归零码(正电平,负电平,0电平)而言,还是只有两种电平,不用每次编码完都回到0电平。
翻转是指当出现逻辑0时,电平翻转,因此不需要负电平来表示0。总结一下编码方式:0变1不变

为什么要用NRZI?  (1)没有归0步骤,节省了大量的数据带宽;(2)没有负电平,表示起来方便

如何自同步? NRZ编码本身并不带自同步功能,USB在协议中加入了同步头(SYNC),对于每一个USB Packet,都有一个同步域固定为0000_0001,这个域翻译成NRZI编码就是01010100,接收者通过这个同步头可以算出发送者的频率。

为什么需要Bit-Stuffing?  SYNC可以解决同步的问题,但是如果发送端一直发1,那由NRZI编码后的电平会一直保持不变,从SYNC计算出来的频率只要有一点点偏差,累积后都会造成较大的误差,所以USB协议中采取了bit stuffing的机制来避免出现长时间的1。简单说,每6个连续的1之后,会强制插入一个0,使得发送信号强制出现翻转,接收方在收到翻转信号时可以调整频率,从而实现时钟同步。
2、ULPI协议

ULPI协议的全称是UTMI+Low Pin Interface。从名字上就可以看出ULPI是UTMI的Low Pin版本。UTMI(USB2.0 Transceiver Macrocell Interface,USB2.0收发器宏单元接口)是一种用于USB controller和USB PHY通信的协议。相对于ULPI,UTMI有更多的控制信号,支持8bit/16bit 数据接口。前者PIN少,后者PIN多,所以如果用ULPI,PHY一般外部另接;用UTMI,PIN多,一般内置。

  • UTMI 接口信号

  • ULPI 接口信号

参考:

1、https://blog.csdn.net/huangkangying/article/details/103570707?spm=1001.2014.3001.5501

2、https://www.docin.com/p-1047013864.html

3、http://blog.sina.com.cn/s/blog_55220bcf01000949.html

  • 8
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值