截短型高速tpc译码器的fpga设计方法

文档序号:7523420阅读:578来源:国知局
专利名称:截短型高速tpc译码器的fpga设计方法
技术领域
本发明涉及信道编码领域中的一种截短型高速TPC译码器的FPGA设计方法,具有实现复杂度低便于实现,处理译码信息速率高,且较高的编码增益和稳定性,能够灵活满足工程需求等优点。
背景技术
随着通信技术的发展,纠错编码技术在提高信息传递可靠性方面越来越引起人们的广泛关注。1994年法国的R. Pyndiah等人受迭代译码思想的启发,在Chase算法的基础上提出了线性分组码的软输入软输出(SISO)迭代算法,并将Turbo码迭代译码思想用于乘 积码中,形成了 TPC码,该码在误码性能上接近Turbo卷积码,但译码实现复杂度相对较低,并且避免了 Turbo卷积码出现的误码率随信噪比增加的“平层效应”。然而TPC码一般根据生成多项式产生几种固定的码长和码率,很难满足某些通信系统对帧长的要求,有人提出一种基于截短型的TPC译码方法,本文仅针对截短的汉明码提出一种截短型高速TPC译码器的FPGA具体实现方法。

发明内容
本发明所要解决的技术问题在于如何在FPGA芯片上实现截短型的TPC译码器的方法。本发明的目的是这样实现的,截短型高速TPC译码器的FPGA设计方法,其特征在于包括步骤①R(k)输入到TPC译码器进行并行数据预处理计算,产生可信序列和硬判决序列;R(k)为M组共N比特并行译码信息,为截短扩展汉明码的编码矩阵的行列结构,M为同时进行译码处理的信息个数;N为同时处理的译码信息的总比特数;②采用四输入排序网络与归并排序相结合的最小值查找FPGA实现方法,搜索译码信息矩阵每一行和每一列可信度最小的四个序列的位置;③根据可信度最小的四个序列的位置产生16个错误位置序列,并与第①步骤中产生的硬判决序列组成16个测试序列;④由产生的16个测试序列与伴随式计算,产生16个错误图样,错误图样与测试序列异或进行硬判决译码,生成硬判决待选码字;⑤计算由第④步骤产生的16个硬判决待选码字与输入序列R(k)的欧氏距,找到欧氏距最小的码字作为译码输出,3个次最小码字作为竞争码字;根据译码码字及竞争码字得到每行和每列信息的可信值,并由可信值产生外信息矩阵和用于下次迭代的译码输入
息矩阵;⑥每次迭代译码计算的过程都需要对外信息及输入数据进行缓存,缓存采用行列交叉存储的FPGA实现方法;完成截短型高速TPC译码器的FPGA设计。
本发明与现有技术相比,具有以下优点实现复杂度低便于实现,处理译码信息速率高,且具有较高的编码增益和稳定性,能够灵活满足工程需求等优点。


图I是本发明的电原理方框图。图2是本发明四输入排序网络与归并排序相结合的最小值查找实现原理框图。
图3是本发明硬判决译码的实现原理框图。图4是本发明欧氏距及外信息产生模块的实现原理框图。图5是本发明迭代数据缓存的实现原理框图。图6是本发明FPGA实现后实测误码曲线图。
具体实施例方式参照图I至图5,图I是本发明实施例的电原理方框图,它主要包括最小可信度搜索、硬判决译码、欧氏距及外信息产生以及迭代数据缓存模块组成。截短型高速TPC译码器的FPGA设计方法,其特征在于包括步骤①R(k)输入到TPC译码器进行并行数据预处理计算,产生可信序列和硬判决序列;R(k)为M组共N比特并行译码信息,为截短扩展汉明码的编码矩阵的行列结构,M为同时进行译码处理的信息个数;N为同时处理的译码信息的总比特数。本实施例中可信序列采用对输入数据进行取绝对值操作来完成,硬判决序列为对输入数据取符号位操作完成。例如输入数据为补码Z(k),则可信序列R(k) =abs(Z(K)),硬判决序列Rh(k)= sign (Z (k)) { 表示取反操作}。②采用四输入排序网络与归并排序相结合的最小值查找FPGA实现方法,搜索译码信息矩阵每一行和每一列可信度最小的四个序列的位置。最小值查找可以归结为排序问题,本实施例中最小值查找实现方法可如图2实现,采用四输入排序网络与归并排序相结合构成最小值查找的串行流水线结构模块。可将一行或列N点数据分成X组8点数据输入,先进行四点数据的排序,再进行两个四点数据的归并排序,得到四个最小值,然后再进行其余四点比较最终得到四个最小值及位置。在进行比较操作时,比较的是低a比特的可信序列值,高b比特在原始可信序列中的位置随比较的操作与数据一起移动。③根据可信度最小的四个序列的位置产生16个错误位置序列,并与第①步骤中产生的硬判决序列组成16个测试序列。本实施例中试探序列采用查表方法,以四点最小值的位置作为地址产生四个位置的序列,通过将这四个序列组合产生15个测试图样,然后和全零序列一起共16个测试图样。将16个测试图样与输入硬判决序列进行异或产生16个测试序列输出。④由产生的16个测试序列与伴随式计算,产生16个错误图样,错误图样与测试序列异或进行硬判决译码,生成硬判决待选码字;本实施例中可分为两部分设计,首先是伴随式产生模块,伴随式的计算由校验矩阵产生;其次是根据伴随式产生错误图样模块,这一部分的设计采用经典的扩展汉明码硬判决译码电路实现。本实施例实现结构如图3所示。⑤计算由第④步骤产生的16个硬判决待选码字与输入序列R(k)的欧氏距,找到欧氏距最小的码字作为译码输出,3个次最小码字作为竞争码字;根据译码码字及竞争码字得到每行和每列信息的可信值,并由可信值产生外信息矩阵和用于下次迭代的译码输入信息矩阵;本实施例的实现结构如图4所示。⑥每次迭代译码计算的过程都需要对外信息及输入数据进行缓存,缓存采用行列交叉存储的FP GA实现方法。由于输入数据每次迭代时都需要和外信息进行运算,且译码迭代是行列交叉进行的,因此对于数据和外信息缓存要能够行列交叉存储。输出数据缓存可以认为和输入数据缓存相反,最终译码结果串行输出。本实施例的存储矩阵设计如图5所示。完成截短型高速TPC译码器的FPGA设计。按照以上TPC译码器的FPGA设计方法,译码器处理的信息数据可达到较高速率,并在Xilinx公司XC5VFX70T芯片上实现了码长506比特,码率O. 53的截短型TPC译码器,设计中采用QPSK调制方式对TPC译码器的误码性能进行了基带编码环测试,设置译码迭代次数为4次,译码数据速率为25Mbps,FPGA量化比特数为5比特,测试的误码率曲线如图6所示。从实测结果可以看出,在EbZX大约为4. 2dB左右误码率可以达到I X 10-6,这与算法仿真是基本吻合的。
权利要求
1.截短型高速TPC译码器的FPGA设计方法,其特征在于包括步骤 ①R(k)输入到TPC译码器进行并行数据预处理计算,产生可信序列和硬判决序列;R(k)为M组共N比特并行译码信息,为截短扩展汉明码的编码矩阵的行列结构,M为同时进行译码处理的信息个数;N为同时处理的译码信息的总比特数; ②采用四输入排序网络与归并排序相结合的最小值查找FPGA实现方法,搜索译码信息矩阵每一行和每一列可信度最小的四个序列的位置; ③根据可信度最小的四个序列的位置产生16个错误位置序列,并与第①步骤中产生的硬判决序列组成16个测试序列; ④由产生的16个测试序列与伴随式计算,产生16个错误图样,错误图样与测试序列异或进行硬判决译码,生成硬判决待选码字; ⑤计算由第④步骤产生的16个硬判决待选码字与输入序列R(k)的欧氏距,找到欧氏距最小的码字作为译码输出,3个次最小码字作为竞争码字;根据译码码字及竞争码字得到每行和每列信息的可信值,并由可信值产生外信息矩阵和用于下次迭代的译码输入信息矩阵; ⑥每次迭代译码计算的过程都需要对外信息及输入数据进行缓存,缓存采用行列交叉存储的FPGA实现方法; 完成截短型高速TPC译码器的FPGA设计。
全文摘要
本发明公开了一种截短型高速TPC译码器的FPGA设计方法,它是基于软输入软输出的Chase II迭代译码算法,该算法的基本思想是认为接收序列中可信值较低的位置出错概率比较大,根据每个码元的可信值,找到最不可靠信息的位置,产生试探序列,从中挑选与接收序列有最小欧氏距的码字即译码输出。设计中选取截短的扩展汉明码,采用并行处理多组数据的方法,优化搜索算法使得在较少迭代次数下较短时间内搜索出欧氏距最小的码字,具有实现复杂度低便于实现,处理信息速率高,能够灵活满足工程需求等优点。
文档编号H03M13/05GK102932002SQ20121045043
公开日2013年2月13日 申请日期2012年11月12日 优先权日2012年11月12日
发明者李辉, 岳田, 张鹏宗, 杨慧博, 王利军, 张娜 申请人:中国电子科技集团公司第五十四研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1