RZ、NRZ、NRZ1、曼彻斯特编码


1、RZ(Return Zero Code)编码
也称为归零码,特性就是在一个周期内,用二进制传输数据位,在数据位脉冲结束后,需要维持一段时间的低电平。
RZ编码又分为两种:

单极性归零码
低电平表示0,正电平表示1,如下图:

 

红色的线表示数据,只占据一部分的周期,剩下周期部分为归零段
双极性归零码
高电平表示1,负电平表示0

 

RZ编码特点:能够同时传递时钟信号和数据信号,但由于归零,需要占用一部分的带宽

2、NRZ(Non Return Zero Code)编码

也称不归零编码,即正电平表示1,低电平表示0。它与RZ码的区别就是它不用归零,也就是说,一个周期可以全部用来传输数据,这样传输的带宽就可以完全利用

使用NRZ编码若想传输高速同步数据,基本上都要带有时钟线因为本身NRZ编码无法传递时钟信号。但在低速异步传输下可以不存在时钟线,但在通信前,双方设备要约定好通信波特率,例如UART

一般常见的带有时钟线的传输协议都是使用NRZ编码或者差分的NRZ编码

示意图


3、NRZI(Non Return Zero Inverted Code)编码

 

反向不归零编码,集成了前两种编码的优点,即既能传输时钟信号,又能尽量不损失系统带宽

编码方式:当电平状态发生变化时,表示的数据为0,信号电平不变表示1  (开始)

USB2.0通信的编码方式就是NRZI编码

波形示意图:(表示00100010)


特点:

 

1)在传输的数据中,很少出现全1的状态,故接收端可以根据发送端的电平变化确定采样时钟频率

2)如出现数据为全1的状态,也就是说信号线一直保持一个状态,这个时候时钟信号就无法传输,接收端就无法同步时钟信号,这该如何解决呢?
解决方式:

在一定数量的1之后强行插入一个0,就是说若信号线状态一直持续一段时间不变的话,发送端强行改变信号线的状态,接收端则只需要将这个变化忽略掉就可以了
USB2.0的协议中规定为传输7个1则在数据中插入一个0
举例发送数据1111 1111 ,如下图:

 

NRZ 和 NRZI 都没有自同步特性,但是可以用一些特殊的技巧解决。比如,先发送一个同步头,内容是 0101010 的方波让接受者通过这个同步头计算出发送者的频率,然后再用这个频率来采样之后的数据信号,就可以了

4、曼彻斯特编码

利用信号的跳变方向来决定数据的。在位中间,信号由高向低跳变表示数据0,信号由低向高跳变表示数据1 
波形示意图:(数据1001 1010)

 

  • 33
    点赞
  • 173
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值