t
t
 

循环冗余校验(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 等, 不 再 赘 述。

---- ( 作 者 为 北 京 广 播 学 院 李 栋 教 授)

 


版权所有:广东粤广数字多媒体广播有限公司
Copyright? Yue Guang 2003 All Rights Reserved.