一种Viterbi译码器的FPGA实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

砍4
吞吐率要求。 译码器的硬件实现可以 采用串行或者并行方式。 串行方式可以 通过对硬件单元的复用降 低电 路设计门数, 适合于K值较大的 情况, 但降低了数据的吞吐量。 同样基于数据吞吐率的 要求, 在 译码器的实现中,采用了全并行方式。 电 2 C 单元、 路主要由3 个A S 全局路径比 较和回溯逻辑组成。一个A S C 单元由4 个加法器、
元。对于约束长度K 7 译码,总计需3 个蝶形单元。 =的 2 对于译码码元的输出, 根据编码方采取的 策略, 有两种不同的 方式: 1 编码端采用固定长度的数据块。 、 在每一个数据块的尾部增加 K个 0 迫使每块数据输出 , 后的编码器状态复原为全0 。在译码端, 选择最终状态为全 0 的路径作为最佳路径,沿该路径行 进记录的信息位为输出的 译码信息. 这种方法实现起来有一定的简化, 不需要最终的 6 4条路径 的比 较。 但是, 编码效率降低了。 2 编码端信息流是连续的。 、 在译码端经过一段码流后 ( 一般为L (-0 K , = - ) 可以认为 51 ) 后 续的 码流与L 位以前的 码流相关性很弱, 选择最小路径度量值的记录信息作为输出。 考虑到要求较高的编码效率,我们在设计中采用了第二种方式. 在译码器的 输出处理上, 有两种方式: 回溯法和寄存器交换法。 溯法在输入码流达到一定 回
度量的最大值和最小值; K时约束长度。当K 7 三位软判决时, =, 路径度量的范围为0 2 -4. 因此,设计中路径度量值用 6 位二进制表示。为了保证各状态的路径度量值不溢出,需要对 路径度量值做归一化处理。
全局路径比 较器需要从2, 态路径 值中 最小 K个状 - 度量 选出 结果。 设计中 采用了比 器阵 较
条。
3 Vt b译码器的结构 . e i ir
s. z1
B (j1 M2 , + B (i1i K M 2 . - + + 2 2
斌21 K) 1+ - ,22
B (jj M 2. )
图 2一个典型的蝶形单元
译码算法: 在每接收到新的码元 时,各条路径计算自己的路径度量 值,加上原来的路径度量值;比 较两 条到达同一状态的路径度量值; 选择 最小度量值 的路径 。称之为相加 (D ) A D 一比 (O P R ) 较 C M A E 一选 择 (E E T ,即 A S算法。 SL C ) C 采用 此算法时,我们注意到,当K 7 = 时, S与 S3将在下一步达到同一个状 * i + 2 态: 输入信息位为0 达到S; 当 时, 2 . 当输入信息位为 1 达到S i。 时, 2 i因 " + 此,可以两两比较,组成一个蝶形单
图I
卷积码编码逻辑图
卷积码的约束长度决定了 编码的 抗误码能力。 约束长度越长, 抗误码能力越强, 但随之而来
翻含
译码的复杂度也大大增加.从后面的分析中可知, 并行译码的复杂度是与约束长度成指数关系。 应根据具体的通信信道,综合考虑纠错能力和实现复杂度。在卫星通信中, 一般选取约束长度 K 7 在第二代移动通信标准I 5 中, =; S 4 约束长度K 5 在C MA中 - =: D 采用约束长度K 9 卷积码 =. 的实现较为简单, 等效于 一个长 度为K1 I. -的F R 卷积码的译码器分为概率译码和序列译码。 序列译码适用于约束长度较大的码。 而当码的 约 束度较小时, IE B 译码就显出了 VT R I 它的优势: 算法效率更高, 速度更快, 译码器也较简单, 因 而广泛的应用于各种数据传输系统中, 特别是卫星通信系统中。 Ve i ir 译码是一种基于最大似然原理的概率译码, tb 它的译码采用穷举的方法. 在接收端接收 到编码码流时,对发送端的每一种可能 信息进行与发送端相同的再次编码,得到多个编码路径, 在这些路径输出的码流中与接收到的码流最为接近的码流被认为是最正确的码流, 沿这条路径行 进时的被编码信息认为是最可能接近发送端的 信息。 依据这种做法, 对于 1 编码的码流, / 2 每收到两个编码码元, 则有一位信息输出, 其有两种 选择: 0或 1 。因此, 随着接收编码码流的 线性增加, 可能的编码路径是按指数增加的,当 接收
两 较器 个比 组成。 杂 路源自量 范围 复 度与 释度 值的 有关, 献6 了 径 值的 值范围 文 1 1 给出 路 度量 取 :
P u 一 Mra 一 ) Mnx N v B m) Mnx P m5 伏 1B ( - Mn
其中的P MX P n 分别是路径度量的最大值和最小值; M 和B t M A, u M N B ̄ M m分别是一次路径 a
列完成。它包括 6 阶比较器,各阶比 较器的个数为 3, 2 1,…,1 6 。比较器阵列产生6 个时 钟周期的延时。 回 溯逻辑设计的关键是路 径存储器的结构。 径存储器的列数为 2,行 路 L 数为状态数 2 1 Ka - AS C 阵列将每一步的比 较结果写入路径存储器的一列; 回溯逻辑沿相反的方向读取路径存储器内 容。 最直观的方法是路径存储器由 循环移位寄存器实现。 为了实现全并行操作, 需要L 个回溯逻 辑单元同时进行回溯. P A的实现中, 在FG 路径存储器由 寄存器实现。 采用循环移位寄存器结构 需要2* 位寄 KL 存器,占 大量的资 Xlx 用了 源。 i 公司的V e 系 P A器件含有大量的 i n i x 列FG t r 片上 存储器BokA I R M,如果利用BokA c I R M构造路径存储器, c 则会节省资源。 用R M结构实现路径存储器是通过增加存储器列数来实现的( A 见图4 。 C 阵列( R ) 当A S W ) 写满一个存储区单位 ( 列) L 并开始写下一个存储区时,回 溯逻辑 (B 可以开始对该存储区的 T) 数据进行回溯。当 A S阵列写满第二个存储区时,回溯逻辑完成了第一存储区的回溯过程。 C 但 是由于并非第一存储区的所有存储路径都满足相关长度大于L 所以回溯结果不能直接输出。当 , A S阵列写满第三个存储区时,回溯逻辑完成了 C 第二个存储区路径的回溯:当A S阵列写第四 C 个存储区时, 溯逻辑进行第三个 回 存储区 路径的回 同时另 溯逻辑对第一存储区开 溯, 溯, 一回 始回 为区别起见,这一回溯逻辑称为译码输出 逻辑 (C 。 D ) 回溯逻辑的最后一位最优状态作为 译码输 出逻辑的输入最优状态,从而保证了 译码存储区的 所有存储路径的相关长度都大于L , 采用 R M 结构的回溯方法己增加存储单元为代价,降低了回溯逻辑的数量,充分利用了 A FG P A的片上资源,也降低了电 路的功耗。

存储区
P }
空 空 空
存储区 2 空 空
图4 R M结构的回溯逻辑 A
5 Vtb译码器的F G , e i ir P A实现结果
FG P A的实现采用了Xlx i 公司的V t 系列器件。 C 20 上实现了V e i i n ix r e 在X V . 04 ir 译码的全 tb 部功能: 包括卷积码编译码器、 软判决和同步指示功能。 最大运行速率达到了5M z 超出了 0 H, 设
就可直接将该状态对应的 信息寄存器内容的首位输出。 可以看出, 寄存器交换法与回 溯法比 较而 言, 译码延迟减少了一半。 但是由 于每一个时钟周期都有大量的寄存器单元进行交换, 大大增加
了电路的功耗。由于译码器设计需求对译码延识汾有特铁要求.在实却. 中妥用了同溯注。
厂 一一一一一一一一一一一一一]
到L 码 时, 能 路 数 v 但 于 积 码的 , 际 编 路 不 决 接 位 流 可 的 径 为2 。 是由 卷 编 特点 实 的 码 径 取 于 收 2
码流长度, 而取决于编码的约束长度K 这是因为: 。 卷积编码的寄存器状态是一个M r v a o 过程: c 某时刻编码的状态与且仅与此前时刻的状态有关。 当两条路径在某一状态S 、 上重合时, 则两条路 径此后的编码状态、 码字度量是完全一样的。 这样, 我们只需在此刻进行两条路径此前的路径度 量的比较,可以 抛弃度量值大的那一条路径.因此, 对于约束长度 K的编码,译码路径有 2- K i
方案 。
关 词 F , 译 器 :PA V ‘码 键 Y i G 呼
1 、前言
仙农理论在二十世纪四 十年代给出了信息无失真传输的条件,并给出了 信道传输的极限容 量。 在此以 后的几十年中, 人们一直致力于采用各种编码手段, 提高信道的容量。 在功率受限系 统中,由于信道编码能够带来一定的 编码增益, 在同样的 功率条件下达到更大的信道容量, 信道 编码已 经成为通信系统中不可或缺的环节之一。 常用的信道编码可以 分为分组码和卷积码两大类。 它们都通过码字冗余使一定范围内临近的 码元之间产生相关性, 从而在接收端利用这种相关冗余进行译码, 来纠正一定的由 扰引起的 于干 误码. 但与分组码不同的是, 卷积码对输入信息 序列进行循环卷积. 每个分组的相关长度相当于 无限长. 因而更适合于误码干扰较严重的 场合, 它可以一定程度上改善通信信道的 误码率。以分 组码为外码, 卷积码为内 码构成的级联码具有更好的性能,已 经在卫星通信中得到广泛应用。
计要求. 经过M tb aa仿真, 误码率为1' 编 l 在 0 时, 码增已 ' 达到了3de .B 5
6 、参考文献
1 王新梅、肖国 . 镇编著,《 纠错码一原理与方法》 ,西安电子科技大学出版社,19 96 2 .胡 爱群 、庞康 、苏杰 ,( 卷积 码 的 V e i译码 算法 及 其 FG 实现 》 K9 = ir tb PA , 应用科学学报, 1 卷,第2 1 8 第 6 期 9. 96 3 .yi P :U A , cicr tdos s v o s une o n ee i . e n G L K (r ttar ef f u i r ec m m r m a m n n G g , G F A heu l a o rv e r q e y a g t V e i dr I E s tn o m n aos o 4, , h 3 ir d oe ) tn co o cm uitn vl 1 o m r 19 tb e s E r a i n c E a c i , n. a 9 . 3 c 4 . c ehri, ib u, g e le d i thie tcbc s i r o Mialo t Rb .a ( e rid g e n u f re a u v mm r h . wz o n r n A az e n q o a - k o e y n s c r v r
砚从
程度 (= ) > L 后,根据纪录的 前L 步存储路径和当 前的最优状态, 逐步沿存储路径追溯到第一位 输出 码流;寄存器交换法则是每一个状态都有一个对应的 信息寄存器, 在每一步 A S单元比 C 较
中 由 态S i , * i 前 应 信 寄 器内 交 。 样, 旦 择出 有 径, , 状 , 时 将S 此 对 的 息 存 容 换 这 一 选 最 路 到S 和S
2 Vtb编译码器的简介 , e i ir
卷积码是一种有记忆分组的 线性编码方法, 等效于输入信息流与某个冲激响应之间的卷积。 在每一个码组内的 监督位, 时监督其它码组内的信息位:因 也同 此在译码过程中, 不仅从当 前时 刻收到的码组中 提取译码信息,而且还要利用以 前或以 后各时刻收到的码组中提取有关信息。
一种 Vt b译码器的 F G iri e P A实现
吕 婪 王拴荣 付文君 范忠范
( 中国科学院空间科学与应用研究中心)
摘要: 本文介绍了V e i tb译码器的实现方法及其在卫星通信中的应用,给出了基于 FG r PA 采用硬件全并行结构实现Ve i tb译码器的 r 一种方案及其实施效果。 该方案满足了 译码器的纠错性 能、 数据吞吐能力和延迟时间等方面的 要求, 成为宽带卫星通信中高速Vtb译码器的一种可选 ei r
图3 V e i tb译码器结构框图 ir
4 Vtb译码器的FG , e i ir P A实现与设计优化
Ve i ir 译码器的不同 tb 实现方式应根据系统的 要求来确定。 主要的几项指标包括: 数据吞吐率、 编码延迟、硬件实现复杂度和功耗等。 Ve i ir 译码算法的实现,可以由 tb 软件, 也可以由 硬件实现。 i T 公司的C 4 5 系列D P己 S 经针 对 Vtb译码算法进行了 ir ei 指令优化, 6 系列已 C4 经集成了V e i ir 协处理器,非常适合于窄带数 tb 据通信的各种应用。由 于译码器设 计的目 标是服务于宽带卫星通信, 采用了 硬件实现来满足数据
相关文档
最新文档