“通信的基本问题是在一个点精确地或近似地再现另一个点选择的信息。”
——克劳德·香农《通信的数学理论》
人类常常喜欢将事物划分为清晰的、互斥的类别,例如“白天与黑夜”、“好与坏”。尽管现实世界是连续的,光的亮度、温度等都会在不同的时间发生变化,但我们往往用“黑白分明”的方式进行分类。这种简化的分类方法帮助我们在复杂的世界中进行有效的决策。
同样的,数字通信也遵循着这种“分类”的哲学。虽然现实世界的信号是连续的,但我们将其离散化为“0”和“1”两类,便于信号的处理和传输。
在数字通信中,逻辑“0”和“1”通常通过电压电平表示。逻辑0可能对应低电压(例如0伏),逻辑1则对应高电压(例如5伏)。通过这种电压的变化,接收端能够辨认出信号的状态,从而解码出数字信息。
电压电平与噪声容忍性
尽管我们通常说“逻辑0”对应一个低电压(例如0伏),而“逻辑1”对应一个高电压(例如5伏),但实际上,电压并不可能是完全精确的。它们受到物理设备的限制,在实际电路中会有一定的波动和误差。
因此,电压电平被分割成两个离散的区域:一个低电压区域代表逻辑0,另一个高电压区域代表逻辑1。
噪声是通信中不可避免的现象,这是信号传输过程中的干扰、失真等因素导致的额外信息。尽管现实世界中的噪声会影响信号的传输,但数字电路由于其具有“离散化”的特性,能够有效地抵抗一定程度的噪声。
也就是说,即使信号的电压出现了一些变化,只要它仍然保持在“逻辑0”或“逻辑1”对应的电压区间内,接收端就可以正确地解读信号。
这种稳健性,使得数字电路在实际应用中,比模拟电路更能抵抗噪声和干扰,尤其在复杂和动态的环境中,数字电路往往能够保持较高的可靠性。
在通信系统中,信号通常需要在发送和接收的过程中进行处理和修改。无论是在无线通信还是数字信号处理的其他应用中,系统的基本功能是接收输入信号,并对其执行某些操作,以生成适合传输或接收的输出信号。
符号映射与最小距离决策规则
“数据速率”(或“比特率”)是衡量数字通信系统性能的一个基本参数。数据速率指的是,在单位时间内可以传输的比特数量,通常以“比特每秒”(bps)为单位表示。
数据速率表示在每秒钟内传输的比特数。比如说,如果一个系统的比特率是 1 Mbps,这意味着每秒钟可以传输 1,000,000 个比特。每个比特之间的时间间隔是比特速率的倒数,表示每个比特在时间上的持续长度。
在数字通信中,传输的比特(0和1)通常被映射为不同的电压电平。在最简单的二进制数字传输中,通常使用两个电压电平来表示比特:
逻辑0可以通过电压−A 表示。逻辑1 可以通过电压+A 表示。
这种方法是数字通信系统中最基本的映射形式。
星座图(constellation diagram)通常用来表示不同信号的可能状态。在下图这个例子中,星座图会显示两个点,分别代表逻辑0和逻辑1。对于更复杂的调制方式,星座图中会有更多的点,表示更多的信号状态。
在发射端,比特序列 b 是发送的二进制数据流,由0和1组成。每个比特会被映射为符号,符号是信号的物理表示。
如果在离散时间间隔m=0,1,2,...,逻辑0(比特0)被映射到符号序列a[m]的−A 电平,逻辑1(比特1)被映射到符号序列a[m]的+A 电平:
这个过程就是比特到符号的映射。每个符号的持续时间是 T_m,这决定了发送端每个符号在时间上的“占位”。
假设比特序列是“1010”,并且设定符号的电压幅度
比特“1”映射到符号+A (即电压+2)
比特“0”映射到符号−A (即电压-2)
因此,比特序列“1010”生成的符号序列就是:a[m] = +2, -2, +2, -2,
在通信系统中,信号在传输过程中通常会受到各种噪声的干扰,导致接收端收到的信号 r[m] 与发送的符号 a[m] 不完全相同。噪声 w[m] 是一种随机扰动,通常具有不可预测性。
a[m] 是发射端发送的符号(例如,+2或-2)。w[m] 是噪声,它加到符号上,使得接收到的信号 r[m] 偏离原始符号。接收到的符号
为了恢复原始比特,接收端必须对接收到的符号做出决策,判断它是
最小距离规则是常见的符号判决方法。其核心思想是:接收到的符号
如果接收到的符号 r[m] 更接近−A(即更接近电压-2),则判定该符号为-A。
如果接收到的符号r[m] 更接近+A(即更接近电压+2),则判定该符号为+A。
为了更简单地实现符号决策,可以设定一个决策阈值,通常是0(即两个符号的中间值)。这个阈值决定了接收到的信号应该判定为哪个符号。具体来说:
如果接收到的符号r[m] 小于0,接收端认为符号−A 被发送,因此a^[m]=−A。 如果接收到的符号r[m] 大于0,接收端认为符号+A 被发送,因此a^[m]=+A。
“……我们权衡概率,选择最可能的……”
——福尔摩斯《巴斯克维尔的猎犬》
最后,一旦接收端确定了符号(即a^[m]),接下来就需要将这些符号转回比特。
由于我们的映射规则是:−A对应比特 0、+A 对应比特 1,通过这种符号-比特映射,我们就可以恢复出一个估计的比特序列b^,这个序列接近原始发送的比特序列 b。