|
循环冗余校验(CRC)及其在DAB中的应用
循 环 冗 余 校 验
码, 简 称CRC 码, 属 于 循 环 码, 常 用 作
检 测 比 特 错 误。 表1 所 示 是 国 际 标 准
化 的 四 种CRC 码, 它 们 广 泛 应 用 在 数 字
通 信 中, 其 中CRC-12 用 于 字 长6 比 特, 而CRC-16、CRC-CCITT
和CRC-32 则 用 于 字 长8 比 特。
---- 下 面 首 先 讨 论CRC 的 数 学 关 系 及CRC
的 实 施, 最 后 介 绍CRC 在DAB 系 统 中 的 应
用。
循 环 冗 余 校 验(CRC) 的 数 学 关 系
---- CRC 是 通 常 用 于 同 步 通 信 中 的 能 力
强 的 差 错 检 验 方 式。
---- 二 进 制 序 列 通 常 用 多 项 式M(x) 表
示, 例 如11001011 可 表 示 成:
---- M(X)=a7X7+a6X6+a5X5+a4X4+
a3X3+a2X2+a1X1+a0X0=X7+X6+X3+X +1 … …(1)
---- 将 欲 传 送 的k 位 的M(x) 再 增 加(n-k) 位
的 校 验 码R(x), 那 么 在 新 的 数 据 块 中,
新 的 信 息 代 码 多 项 式 就 变 为Xn-k
M(x)。 图1 所 示 就 是 带 有CRC 校 验 码 的 欲
传 送 的 数 据 序 列。
图1 带 有CRC 码 的 数 据 序 列
---- 要 求 得 带 有CRC 的 整 个 欲 传 送 的 数
据 序 列, 可 按 下 列 步 骤 计 算:
---- (1) 将Xn-k 乘 以 原 始 数 据 序 列M(x), 得
到 新 的 信 息 代 码 多 项 式Xn-k. M(x);
---- (2) 将Xn-k
M(x) 除 以 预 先 给 定 的 生 成 多 项 式G(x),
得 到 商 数Q(x) 和 余 数R(x)
Xn-k
M(X) =Q(X) + R(X) … …(2)
G(X) G(X)
或
Xn-k . M(X)=Q(X)G(X)+R(X)......(3)
由 于 在 模2 多 项 式 运 算 中 定 义
1Xi+1Xi=0 和-1Xi=1Xi
因 此, 式(3) 可 写 为 以 下 形 式
Xn-k
M(x)+R(x)
=Q(x) G(x) … …(4)
现 举 例 说 明: 已 知
M(x)=X7+X5+X3+1 =10101010,
G(x)=X4+X+1=10011,
n-k=4[ 总 是 比G(x) 少 一 位]
因 此
Xn-k
M(X)=X4
(X7+X5 +X3+X)=X11+X9+X7+X5= 101010100000,
Xn-k
M(X) = X11+X9+X7+X5
G(X) X4+X+1
= 101010100000 =10110111
10011
+ 1001 … …(5)
10011
∴ 商 值Q(x)=X7+X5+X4 +X2+X+1=10110111,
余 式R(x)=X3+1=1001
---- 将Xn-k
M(x) 与R(x) 相 加, 即 得 带 有CRC 的 需 要 传
送 的 数 据 序 列:X11+X9+X7+X5+X3+1 =101010101001 …
…(7)
---- 如 果 传 输 不 出 现 差 错, 则 用 同 样
的 生 成 多 项 式G(x) 去 除 式(7), 所 得 余 数
一 定 为0, 如 式(8) 所 示:
101010101001 =10110111
10011
---- 设 上 例CRC 码[ 即R(x)] 的 系 数 按 顺 序
分 别 为C1、C2、C3 和C4, 且C1 为 最 高 有 效
位,C4 为 最 低 有 效 位。
CRC 计 算 的 实 施
---- 生 成 多 项 式G(x) 通 常 用n 次 多 项 式 定
义:
G(x)=Xn+gn-1Xn-1+...+g2x2 +g1x+1
其 中n*1, 而gi蝱0,1},i=1,2...,n-1。
---- CRC 计 算 可 以 用 含 有n 个 存 储 器 级
的 移 位 寄 存 器 实 现, 如 图3 所 示。 它 们
等 效 于 多 项 式 的 幂 次, 各 级 输 出 表 示
为b0、b1、...bn-1。 其 中,b0、b1、...bn-1 分 别
相 应 于1、X、X2...Xn-1 各 项。 如 果 多 项 式
的 相 应 项 的 系 数 为1, 那 么 相 应 的 存
储 器 级 输 入 端 的 模2 加 法 器 是 有 分 支
的。
图3 CRC 运 算 通 用 电 路 方 块 图
---- 在 开 始 进 行CRC 运 算 时, 视 应 用 规
定, 所 有 的 移 位 寄 存 器 级 全 部 置“0”
或“1”。
---- 在 图3 的 输 入 端 送 入 的 是 原 始 的
数 据 序 列M(x), 移 位 寄 存 器 各 级 的 输 出b0、b1、bn-2、bn-1
便 是CRC 码 字。 其 中b0 和bn-1 分 别 代 表 最
低 有 效 位(LSb) 和 最 高 有 效 位(MSb)。 无 论
是M(x) 还 是CRC 码 字, 首 先 传 送MSb。
CRC 在DAB 系 统 中 的 应 用
---- 在DAB 中,CRC 用 作 在 接 收 机 中 检 测 声
音 和 数 据 传 输 可 能 出 现 的 差 错。
---- 在DAB 系 统 中,CRC 码 是 以 下 列 生 成 多
项 式 为 基 础:
G(x)=X16+X12+X5+1
G(x)=X16+X15+X2+1
G(x)=X8+X4+X3+X2+1
---- 1、 声 音 辅 助 信 息 的CRC 码
---- 用 于 检 测 在DAB 音 频 帧 之 内 的 重 要
辅 助 信 息 传 输 差 错 的CRC 码, 在DAB 音 频
帧 头 之 后 插 入 到 比 特 流 中。 其 差 错 检
测 方 法 使 用“CRC-16”, 它 的 生 成 多 项 式
是G(x)=X16+X15+X2+1 包 含 在CRC 检 验 中 的 比 特
是:
---- DAB 帧 头 的16 比 特, 其 开 头 是 比 特
率 标 记, 结 尾 是 预 加 重 标 记;
---- 比 特 分 配 和 比 例 因 子 选 择 信 息(SCFSI)
的 比 特。
---- 2、 比 例 因 子 的CRC 码
---- 为 了 检 验 在 比 例 因 子(SCF) 的3 个 最
高 有 效 位 之 中 的 传 输 差 错, 在DAB 的 数
据 流 中 插 入 了CRC 校 验 字, 其 位 置 处 于DAB
音 频 帧 的F-PAD( 固 定 的 与 节 目 有 关 的 数
据) 数 据 区 的 前 面。 CRC 码 覆 盖 了 下 列
子 频 带 的 比 例 因 子:
---- 如 果 每 声 道 的 比 特 率 大 于 或 等
于56kb/s( 即 单 声 道 模 式 时 比 特 率*56kb/s,
所 有 其 它 模 式 时 的 总 比 特 率*112kb/s),
则
SCF-CRC0: 子 频 带0-3( 子 频 带 组0)
SCF-CRC1: 子 频 带4-7( 子 频 带 组1)
SCF-CRC2: 子 频 带8-15( 子 频 带 组2)
SCF-CRC3: 子 频 带16-26( 子 频 带 组3) 如 果 每
声 道 的 比 特 率 小 于56kb/s, 则
SCF-CRC0: 子 频 带0-3( 子 频 带 组0)
SCF-CRC1: 子 频 带4-7( 子 频 带 组1)
---- 为 了 保 持SCF 的CRC 校 验 字1 和2 的 位 置
与 比 特 率 无 关,SCF-CRC 校 验 字 次 序 颠 倒
地 加 到 比 特 流 中:
SCF-CRC3,SCF-CRC2,SCF-CRC1,SCF-CRC0( 比 特 率*56kb/s
每 声 道);
SCF-CRC1, SCF-CRC0( 比 特 率<56kb/s 每 声 道)
比 例 因 子 的 差 错 校 验 应 用“CRC-8”, 它
的 生 成 多 项 式 是
G(x)=X8+X4+X3+X2+1
---- 包 含 在SCF 的CRC 校 验 中 的 比 特 是 与 在
比 特 流 中 的 顺 序 相 应 的 子 频 组 的 所
有 比 例 因 子 的3 个 最 高 有 效 位。
---- 除 了 上 述 的CRC 外, 在DAB 系 统 中 还 有
快 速 信 息 块(FIB) 的CRC, 数 据 包CRC、 数 据
组CRC 等, 不 再 赘 述。
---- ( 作 者 为 北 京 广 播 学 院 李 栋 教 授)
|