1. NRZ编码
不归零法(Nonreturn to Zero, NRZ)可能是最简单的一种编码方案。它传送一个0时把电压升高,而传送一个1时则使用低电平。这样,通过在高低电平之间作相应的变换来传送0和1的任何序列。N R Z指的是在一个比特位的传送时间内,电压是保持不变的(比如说,不回到零点)。下图描述了二进制串1 0 1 0 0 11 0的NRZ传输过程。
需要额外的时钟同步信号。
3 .曼彻斯特编码
曼彻斯特编码(Manchester Code)用信号的变化来保持发送设备和接收设备之间的同步。也有人称之为自同步码( Self-Synchronizing Code)。为了避免上面第二个图中出现的情况,它用电压的变化来分辨0和1。它明确规定,从高电平到低电平的跳变代表0,而从低电平到高电平的跳变代表1。下图给出了比特串0 1 0 11 0 0 1的曼彻斯特编码。如图所示,信号的保持不会超过一个比特位的时间间隔。即使是0或1的序列,信号也将在每个时间间隔的中间发生跳变。这种跳变将允许接收设备的时钟与发送设备的时钟保持一致。曼彻斯特编码的一个缺点是需要双倍的带宽。也就是说,信号跳变的频率是NRZ编码的两倍。
4、差分曼彻斯特编码
曼彻斯特编码的一个变形称为差分曼彻斯特编码(Differential Manchester Encoding)。和曼彻斯特编码一样,在每个比特时间间隔的中间,信号都会发生跳变。区别在于每个时间间隔的开始处。0将使信号在时间间隔的开始处发生跳变。而1将使信号保持它在前一个时间间隔尾部的取值。因此,根据信号初始值的不同, 0将使信号从高电平跳到低电平,或从低电平跳到高电平。下图给出了比特串1 0 1 0 0 11 0的差分曼彻斯特编码。在这里,我们通过检查每个时间间隔开始处信号有无跳变来区分0和1。检测跳变通常更加可靠,特别是线路上有噪音干扰的时候。如果有人把连接的导线颠倒了,也就是把高低电平颠倒了,这种编码仍然是有效的(现在,你也许会问哪个神志清醒的人会把两根连接的导线颠倒呢。有几种可能的原因。其一是某人过于匆忙,其二是某人不小心搞错了。这种事情常有发生!)。
参考文献:
http://course.cc.shu.edu.cn/safe/lantech/fuzhu/code1.htm
http://baike.baidu.com/view/1477404.htm