数字基带信号的码型
各位同学,今天我们来聊聊数字基带信号的码型。说实话,这是通信系统里最基础、也最容易踩坑的地方。我刚开始做项目时,就因为码型选错,折腾了整整一周才找到问题。嗯,咱们今天就把这几种码型彻底讲透。
1. 单极性不归零码(NRZ)
先看最简单的。单极性不归零码,说白了就是用高电平表示“1”,低电平表示“0”。整个码元周期内电平保持不变,所以叫“不归零”。
核心特点:
- 只有两种电平:+V 和 0
- 一个码元周期内电平不变化
- 实现简单,但存在直流分量
我在项目中遇到过这种情况:用单极性NRZ传数据,接收端总是误码。后来发现,是因为长串连续的“0”导致接收端时钟同步丢失。你想想看,如果连续几十个“0”,接收端根本不知道什么时候该采样。
避坑指南:我曾经在低速串口通信中用过单极性NRZ,结果发现长距离传输时,直流分量会严重衰减信号。后来改用双极性码,问题就解决了。
2. 双极性不归零码
双极性不归零码,用正电平表示“1”,负电平表示“0”。注意,这里没有零电平。
为什么要有双极性?我个人的习惯是,只要条件允许,优先选双极性。原因很简单:
- 没有直流分量,适合变压器耦合
- 抗干扰能力更强
- 判决门限可以设在0电平,非常稳定
举个例子,我在做以太网接口时,用的就是双极性NRZ。当时测试发现,即使信号衰减到原来的十分之一,依然能正确判决。这就是双极性的优势。
3. 单极性归零码(RZ)
单极性归零码,和NRZ的区别在于:每个码元周期内,高电平只持续一半时间,然后归零。
为什么要归零?说白了,就是为了提取时钟。我记得有一次做光纤通信,接收端时钟恢复特别困难。后来换成RZ码,时钟提取就变得非常容易。
| 特性 | NRZ | RZ |
|---|---|---|
| 带宽 | 较窄 | 较宽(约2倍) |
| 时钟提取 | 困难 | 容易 |
| 直流分量 | 有 | 有 |
经验之谈:RZ码虽然带宽大,但时钟提取方便。如果你在做高速系统,时钟同步是瓶颈,不妨试试RZ码。
4. 双极性归零码
双极性归零码,结合了双极性和归零的特点。正电平表示“1”,负电平表示“0”,但每个码元周期内只持续一半时间,然后归零。
这种码型有什么好处?我总结三点:
- 无直流分量
- 时钟提取方便
- 抗干扰能力强
不过要注意,双极性RZ的带宽是NRZ的两倍。我在做低频系统时常用它,但高频系统就得权衡了。
5. 差分码
差分码比较特殊。它不是用电平高低表示“0”和“1”,而是用电平的变化来表示。
规则很简单:
- 遇到“1”,电平翻转
- 遇到“0”,电平不变
为什么会有人用差分码?我告诉你一个真实案例。有一次做远程监控系统,信号线经常接反。用普通码型,接反了数据全错。换成差分码后,接反了只是极性反转,数据依然能正确解码。
关键优势:差分码对极性不敏感。不管信号线怎么接,只要保证相对关系,数据就不会错。
知识体系总览
下面这张图,是我自己总结的码型选择逻辑。你仔细看看,就能明白什么时候该用什么码型。
这张图我画了好几次才满意。你仔细看,从根节点往下,先分归零和不归零,再分单极性和双极性。差分码单独一路,因为它本质上是另一种编码思路。
我的建议:刚开始学的时候,先掌握单极性NRZ和双极性NRZ。这两种最常用,也最容易理解。等用熟了,再研究归零码和差分码。
好了,这几种码型就讲到这里。每种码型都有它的脾气,选对了事半功倍,选错了...嗯,你懂的。下次咱们聊聊码间串扰的问题,那个更刺激。
公众号:蓝海资料掘金营,微信deep3321