你使用的 DokuWiki 可能没有安装 Wrap 插件,因此 `<WRAP>` 不会生效。下面改为仅使用 DokuWiki 原生语法:标题、表格、列表、粗体、等宽文字和引用,不再使用 `<WRAP>`、`<code>` 等标签。

脉冲编码调制

一、本节导读

脉冲编码调制用于把声音、图像等模拟数据转换成可以通过数字信道传输的二进制数据。

PCM的三个核心步骤:

  1. 采样:把时间连续的模拟信号转换成时间离散的样本。
  2. 量化:把幅度连续的样本转换成有限个离散等级。
  3. 编码:把量化等级转换成二进制代码。
模拟信号
    ↓
采样 Sampling
    ↓
时间离散、幅度连续的样本
    ↓
量化 Quantization
    ↓
时间离散、幅度离散的样本
    ↓
编码 Encoding
    ↓
PCM二进制数据
核心结论:PCM就是对模拟信号进行“采样、量化、编码”,最终得到二进制数字信号。

二、PCM基本概念

1. PCM的定义

PCM(Pulse Code Modulation,脉冲编码调制)是一种常用的模拟信号数字化技术。

它通过周期性地读取模拟信号的瞬时幅度,把样本幅度量化成有限个离散等级,再将每个量化等级表示为二进制代码。

2. 数字化的含义

Digitization(数字化)是把声音、图像等模拟数据转换为数字信号的过程。

数字化后的数据具有以下特点:

3. Codec编码解码器

实现模拟信号和数字信号相互转换的设备称为:

Codec(Coder-Decoder,编码解码器)

Codec包含两项基本功能:

发送端                                         接收端
模拟数据 → Coder → PCM数据 → 数字信道 → Decoder → 模拟数据
           编码器                          解码器

4. Codec与Modem的区别

设备 英文全称 中文名称 主要功能
Codec Coder-Decoder 编码解码器 完成模拟数据与数字信号之间的转换
Modem Modulator-Demodulator 调制解调器 完成数字数据与已调模拟载波之间的转换
注意:Codec解决的是模拟数据数字化问题;Modem解决的是数字数据通过模拟载波传输的问题。

三、第一步:采样

1. 采样的定义

Sampling(采样)是每隔固定时间读取一次模拟信号的瞬时值。

模拟信号原本在时间和幅度上都是连续的。采样之后:

原模拟信号:x(t)
采样时刻:0、T、2T、3T、4T……
样本序列:x(0)、x(T)、x(2T)、x(3T)……

其中:

采样频率与采样周期的关系为:

''f_s = 1/T''

2. 奈奎斯特采样定理

Nyquist Sampling Theorem(奈奎斯特采样定理)指出:

为了能够根据采样值恢复原模拟信号,采样频率至少应为模拟信号最高频率的2倍。

公式为:

''f_s ≥ 2f_max''

教材中强调实际采样频率应高于临界值,因此写作:

''f_s > 2f_max''

其中:

符号 含义 常用单位
f_s 采样频率 Hz、kHz或MHz
f_max 模拟信号的最高频率 Hz、kHz或MHz
T 采样周期 s、ms或μs

结合 f_s=1/T,可以得到:

''1/T ≥ 2f_max''

最大采样周期应满足:

''T ≤ 1/(2f_max)''

3. 奈奎斯特速率

理论上的最低采样频率称为:

Nyquist Rate(奈奎斯特速率)

''f_N = 2f_max''

实际系统通常会选择略高于奈奎斯特速率的采样频率,以便留出滤波器过渡带和系统误差余量。

4. 混叠

如果采样频率低于信号最高频率的2倍,高频信号可能被错误识别为低频信号。

这种现象称为:

Aliasing(混叠)

防止混叠的主要方法:

采样之前使用的滤波器称为:

Anti-Aliasing Filter(抗混叠滤波器)

5. 语音信号采样示例

已知语音信号的最高频率为4 kHz,求理论最低采样频率。

''f_s ≥ 2f_max''
''f_s ≥ 2 × 4 kHz''
''f_s ≥ 8 kHz''

因此,最低采样频率为:

''8 kHz = 8000次/秒''

对应的最大采样周期为:

''T = 1/f_s''
''T = 1/8000 s''
''T = 0.000125 s''
''T = 125 μs''

6. 采样频率的影响

采样频率 时间还原精度 产生的数据量 处理要求
较低 较低 较少 较低
较高 较高 较多 较高
考试重点:采样频率决定时间轴上的还原精度,量化等级决定幅度轴上的还原精度。

四、第二步:量化

1. 量化的定义

采样后获得的样本值仍然是连续幅度,不能直接用有限长度的二进制数精确表示。

Quantization(量化)是把连续的样本幅度近似为有限个离散等级的过程。

例如:

原始样本值 量化后的近似值
1.09 1.1
1.21 1.2
1.55 1.6
0.69 0.7

2. 量化等级与编码位数

若量化等级数为 L,每个样本使用 n 位二进制代码表示,则:

''L = 2^n''

反过来:

''n = log₂L''

常见对应关系如下:

编码位数n 量化等级数L 二进制代码范围
3 bit 8级 000~111
4 bit 16级 0000~1111
7 bit 128级 0000000~1111111
8 bit 256级 00000000~11111111
10 bit 1024级 0000000000~1111111111
12 bit 4096级 12位二进制代码
16 bit 65536级 16位二进制代码

教材图示将信号幅度划分成16个量化等级,因此每个样本需要:

''n = log₂16''
''n = 4 bit''

相应的二进制代码范围为:

''0000~1111''

3. 量化误差

原始样本值与量化后的近似值通常不能完全相等,其差值称为:

Quantization Error(量化误差)

''量化误差 = 原始样本值 - 量化值''

例如:

原始样本值:1.09
量化值:1.10
量化误差:1.09 - 1.10 = -0.01

量化过程引起的失真称为:

Quantization Noise(量化噪声)

量化误差只能通过增加量化等级等方式减小,不能被完全消除。

4. 量化等级的影响

比较项目 量化等级较少 量化等级较多
每个样本的编码位数
量化间隔
量化误差
信号还原精度
数据传输速率
存储空间
设备处理要求 较低 较高
核心规律:量化等级越多,幅度表示越精确,但每个样本所需的二进制位数也越多。

5. 均匀量化

Uniform Quantization(均匀量化)是将整个信号幅度范围划分为大小相等的量化区间。

主要特点:

6. 非均匀量化

Non-uniform Quantization(非均匀量化)是对不同幅度范围采用不同的量化间隔。

通常采用:

五、第三步:编码

1. 编码的定义

Encoding(编码)是将量化后的幅度等级转换成相应二进制代码的过程。

如果采用16级量化,每个样本需要4位二进制代码:

量化等级 二进制代码
第0级 0000
第1级 0001
第2级 0010
第3级 0011
第4级 0100
第5级 0101
第6级 0110
第7级 0111
第8级 1000
第9级 1001
第10级 1010
第11级 1011
第12级 1100
第13级 1101
第14级 1110
第15级 1111

2. 编码示例

假设连续样本的量化等级依次为:

''3、8、5、15''

对应的4位二进制代码为:

量化等级 PCM代码
3 0011
8 1000
5 0101
15 1111

形成的PCM比特流为:

''0011 1000 0101 1111''

3. 单个样本的转换过程

假设某次采样得到的幅度为1.09:

实际样本值:1.09
        ↓
量化近似值:1.1
        ↓
确定量化等级
        ↓
转换成对应二进制代码
        ↓
形成PCM数字数据

六、PCM数据速率

1. 单通道PCM速率

PCM数据速率等于每秒采样次数乘以每个样本的编码位数:

''R = f_s × n''

其中:

符号 含义 单位
R PCM数据传输速率 b/s
f_s 采样频率 Hz,即次/秒
n 每个样本的编码位数 bit/样本

2. 多通道PCM速率

若系统包含多个独立通道,则:

''R = f_s × n × C''

其中:

3. 已知量化等级的速率公式

因为:

''n = log₂L''

所以:

''R = f_s × log₂L × C''

其中 L 为量化等级数。

七、教材语音数字化示例

教材给出的条件如下:

1. 计算采样频率

''f_s = 2 × 4 kHz''
''f_s = 8 kHz''

即:

''f_s = 8000次/秒''

2. 计算编码位数

''n = log₂128''
''n = 7 bit''

3. 计算数据速率

''R = f_s × n''
''R = 8000 × 7''
''R = 56000 b/s''
''R = 56 kb/s''

因此,按照教材采用的128级量化方案,数字语音信号的数据速率为:

56 kb/s

补充说明:教材示例采用7位编码,因此结果为56 kb/s。常见电话PCM通常采用8 kHz采样和8 bit编码,对应64 kb/s。

八、PCM计算示例

例1:16级量化

某模拟信号最高频率为5 kHz,采用16级量化,求最低PCM数据速率。

最低采样频率:

''f_s = 2 × 5 kHz = 10 kHz''

每个样本的编码位数:

''n = log₂16 = 4 bit''

PCM数据速率:

''R = 10000 × 4''
''R = 40000 b/s''
''R = 40 kb/s''

例2:256级量化

某语音信号最高频率为4 kHz,采用256级量化,求最低PCM数据速率。

最低采样频率:

''f_s = 2 × 4 kHz = 8 kHz''

编码位数:

''n = log₂256 = 8 bit''

PCM数据速率:

''R = 8000 × 8''
''R = 64000 b/s''
''R = 64 kb/s''

例3:双声道音频

某双声道音频采用44.1 kHz采样频率,每个样本使用16 bit,求未经压缩的数据速率。

已知:

计算:

''R = 44100 × 16 × 2''
''R = 1411200 b/s''
''R = 1.4112 Mb/s''

例4:根据数据速率求量化等级

某单通道PCM系统的采样频率为8 kHz,数据速率为64 kb/s,求每个样本的编码位数和量化等级数。

编码位数:

''n = R/f_s''
''n = 64000/8000''
''n = 8 bit''

量化等级数:

''L = 2^8''
''L = 256级''

九、语音与视频数字化比较

比较项目 语音信号 视频信号
信号带宽 较小 较大
所需采样频率 较低 较高
每秒样本数量 较少 较多
量化数据量 相对较少 很大
传输速率要求 较低 较高
存储空间要求 较小 较大

教材指出:

视频采样频率计算:

''f_s ≥ 2 × 6 MHz''
''f_s ≥ 12 MHz''

十、参数对PCM数据量的影响

1. 提高采样频率

采样频率提高
      ↓
每秒样本数量增加
      ↓
时间还原精度提高
      ↓
PCM数据速率提高

2. 增加量化等级

量化等级增加
      ↓
每个样本的编码位数增加
      ↓
幅度还原精度提高
      ↓
量化误差减小
      ↓
PCM数据速率提高

3. 增加通道数量

通道数量增加
      ↓
同一时间需要处理的样本增加
      ↓
PCM总数据速率按比例增加

十一、PCM完整工作流程

1. 发送端

模拟信号
    ↓
抗混叠滤波器
Anti-Aliasing Filter
    ↓
采样
Sampling
    ↓
量化
Quantization
    ↓
编码
Encoding
    ↓
PCM二进制数据
    ↓
数字信道

2. 接收端

接收到的PCM数据
    ↓
译码
Decoding
    ↓
恢复量化样本
    ↓
数模转换
Digital-to-Analog Conversion
    ↓
重建滤波
Reconstruction Filter
    ↓
近似恢复原模拟信号

十二、PCM的优点和局限

1. 主要优点

2. 主要局限

十三、核心公式汇总

计算内容 公式 说明
采样频率与周期 f_s=1/T 采样频率是采样周期的倒数
奈奎斯特采样条件 f_s≥2f_max 采样频率至少为最高频率的2倍
最大采样周期 T≤1/(2f_max) 采样周期不能超过临界值
量化等级数 L=2^n n位代码可以表示2的n次方个等级
编码位数 n=log₂L 由量化等级数计算编码位数
单通道PCM速率 R=f_s×n 不考虑帧头等额外开销
多通道PCM速率 R=f_s×n×C C为通道数量
已知量化等级求速率 R=f_s×log₂L×C 把编码位数替换为log₂L

十四、快速解题模板

1. 已知最高频率和量化等级

第一步:f_s = 2f_max
第二步:n = log₂L
第三步:R = f_s × n × C

2. 已知采样频率和编码位数

单通道:

''R = f_s × n''

多通道:

''R = f_s × n × C''

3. 已知PCM速率和采样频率

''n = R/f_s''
''L = 2^n''

4. 已知编码位数求量化等级

''L = 2^n''

例如,每个样本使用12位编码:

''L = 2^12 = 4096级''

十五、考试重点

必须掌握:

十六、常见易错点

容易出错的内容:

十七、PCM与相关技术对比

技术或步骤 输入 输出 核心作用
采样 连续时间模拟信号 离散时间样本 时间离散化
量化 连续幅度样本 离散幅度等级 幅度离散化
编码 量化等级 二进制代码 数字化表示
PCM 模拟信号 数字比特流 完成模拟信号数字化
数字调制 数字数据 已调模拟载波 通过模拟信道传输数字数据
数字解调 已调模拟载波 数字数据 恢复载波表示的数字数据
数模转换 数字样本 模拟信号 将数字样本转换成模拟信号

十八、英文缩写与术语速查表

缩写或术语 英文全称 中文含义
PCM Pulse Code Modulation 脉冲编码调制
Codec Coder-Decoder 编码解码器
Coder Coder 编码器
Decoder Decoder 解码器
Modem Modulator-Demodulator 调制解调器
ADC Analog-to-Digital Converter 模数转换器
DAC Digital-to-Analog Converter 数模转换器
Sampling Sampling 采样
Quantization Quantization 量化
Encoding Encoding 编码
Decoding Decoding 译码
Aliasing Aliasing 混叠
Anti-Aliasing Filter Anti-Aliasing Filter 抗混叠滤波器
Nyquist Sampling Theorem Nyquist Sampling Theorem 奈奎斯特采样定理
Nyquist Rate Nyquist Rate 奈奎斯特速率
Quantization Error Quantization Error 量化误差
Quantization Noise Quantization Noise 量化噪声
Uniform Quantization Uniform Quantization 均匀量化
Non-uniform Quantization Non-uniform Quantization 非均匀量化
Reconstruction Filter Reconstruction Filter 重建滤波器
Hz Hertz 赫兹,每秒周期数
kHz kilohertz 千赫兹
MHz megahertz 兆赫兹
b/s bit per second 比特每秒
kb/s kilobit per second 千比特每秒
Mb/s megabit per second 兆比特每秒
ms millisecond 毫秒,千分之一秒
μs microsecond 微秒,百万分之一秒
bit binary digit 二进制位

十九、本节知识脉络

模拟信号数字化
│
└─ PCM:脉冲编码调制
   │
   ├─ 采样 Sampling
   │  ├─ 时间离散化
   │  ├─ f_s = 1/T
   │  ├─ f_s ≥ 2f_max
   │  └─ 采样不足会产生混叠
   │
   ├─ 量化 Quantization
   │  ├─ 幅度离散化
   │  ├─ L = 2^n
   │  ├─ n = log₂L
   │  └─ 产生量化误差
   │
   └─ 编码 Encoding
      ├─ 量化等级转换为二进制代码
      ├─ 单通道:R = f_s × n
      └─ 多通道:R = f_s × n × C

二十、相关条目

软考 网络规划设计师 计算机网络 数据通信 PCM 脉冲编码调制 采样 量化 编码 奈奎斯特 量化误差 Codec