在线客服系统

期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

三维TPC译码器的设计及FPGA实现(2)

人气指数: 发布时间:2013-12-13 17:09  来源:http://www.zgqkk.com  作者: 瞿海慧
分享到:

 

  (1)对接收向量[R]的前[n]个比特进行硬判决,得到硬判决序列[Y=y1,y2,…,yn],判决规则为:

  [yi=1,ri>00,ri≤0](4)

  (2)根据接收向量[R]选择[p]个最不可靠的位置。最不可靠位置的选取原则为:选取[R]中绝对值最小的[p]个元素所在的位置。

  (3)产生[2p]个测试图样[T=Tjj=1,2,…,2p,]每个测试图样的长度均为[n,]并且[T]包含所有上述[p]个位置为0或1、其余位置均为0的二元向量。

  (4)确定[2p]个扰动序列:

  [Zj=Tj+Y,j=1,2,…,2p](5)

  (5)对于每个扰动序列进行代数译码,得到译码结果[Cj]。

  (6)计算[Cj]与[R]之间的度量即它们之间的欧氏距离:

  [mj=-](6)

  (7)选择[mj]中的最小者对应的码字作为最大似然码字[D],记相应的度量为[mD],即:

  [D=Ck,k=argminmj](7)

  (8)对于每个码元位置i(i=1,2,3,…,n+1),在[Cj]中搜索码字[D]的竞争者,即[Cji≠Di]的码字。若存在多个,则选择度量值最小的作为竞争者,记[D]的竞争者的度量为[mC](需要说明的是[Cj]中可能不存在[D]的竞争者)。

  (9)计算位置i的边缘信息,方法如下:

  ①若存在[D]的竞争者,则:

  [wi=2Di-1mC-mD-ri](8)

  ②若不存在[D]的竞争者,则:

  [wi=2Di-1β](9)

  式中[β]为预先指定的修正系数。

  (10)对先验信息进行修正:

  [ri=ri+αwi](10)

  根据上面的译码过程可以得到TPC的核心模块——Chase算法的译码流程,如图3所示。

  图3Chase算法译码流程

  3译码器设计及FPGA实现

  在本方案中,[x]和[y]方向上的TPC子码选用(32,26,6)的扩展汉明码,[z]方向上的TPC子码选用(4,3,2)的偶校验码,最不可靠位置数[p=4,]迭代次数设为5次,[α=0.5,][β=1],[λ1=λ2=1。]在此条件下,3D?TPC的译码性能如图4所示。从图4中可以看出,当SNR=1.5dB,其误码率可以达到10-6量级,显示了3D?TPC卓越的译码性能。

  图43D?TPC的译码性能

  三维TPC译码器的硬件实现方案如图5所示。图5显示的是1次迭代的过程,如果迭代5次,可以将图5代表的模块例化5次。

  下面分别说明图5中各模块的作用。

  FIFO:存放z方向软输入信息;

  RAM1:存放接收向量[[R];]

  RAM2:存放z和x方向软输出[[Rz,x(m)],]同时也是x和y方向软输入[[Rx,y(m)];]

  RAM3:存放x方向边缘信息[[Wx(m)];]

  RAM4:存放y方向软输出信息[[Ry(m)];]

  ROM1和ROM2:存放汉明码错误图样;

  加法器:将y方向软输出和x方向边缘信息相加,输出即为z方向软输入;

  译码控制器:控制三个方向译码器的工作时序以及各个存储器的读写过程。

  图5中,软输入信息被量化为16b,先进入FIFO缓存,在译码控制器的控制下将RAM1中的接收向量与FIFO中的数据读出送入z方向译码器,译码软输出信息存放在RAM2中。紧接着,在译码控制器的控制下将RAM1中的接收向量与RAM2中的软信息读出送入x方向译码器,译码软输出信息存放在RAM2中。y方向的译码过程与x方向一样。最后将y方向软输出和x方向边缘信息分别从RAM4和RAM3中读出相加,即得z方向软输入,既而完成一次迭代译码过程。

  采用图5所示的三维TPC译码器实现方案在XilinxVirtex6实验平台上作了仿真测试,综合结果如表1所示,最大工作频率为160.77MHz。

  表1三维TPC译码器实现方案资源使用量

  [FPGA资源\&已用\&可用\&利用率/%\&NumberofSliceRegisters\&57255\&455040\&12\&NumberofSliceLUTs\&41070\&227520\&18\&NumberofoccupiedSlices\&16885\&56880\&29\&NumberofbondedIOBs\&21\&600\&3\&NumberofRAMB18E1/FIFO18E1s\&265\&832\&31\&NumberofBUFG/BUFGCTRLs\&1\&32\&3\&NumberofSTARTUPs\&1\&1\&100\&]

  4结语

  本文基于Xilinx公司的Virtex6系列的xc6vlx365t?1ff1156芯片采用Chase算法实现了三维TPC的迭代译码,该TPC的三个分量码分别为(32,26,6),(32,26,6),(4,3,2)。当系统时钟为160.77MHz时,其译码信道速率可达37.10Mb/s。通过修改程序中的参数,本设计可以实现任意码率、任意码长的三维TPC译码。

  参考文献

  [1]ELIASP.Error?freecoding[J].IEEETransactiononInformationTheory,1954,IT?4:29?37.

  [2]BERROUC,GLAVIEUXA,THITIMAJSHIMAP.NearShannonlimiterror?correctingcodinganddecoding[C]//ProceedingsofIEEEInternationalConferenceonComm.[S.l.]:IEEE,1993:1064?1070.

  [3]PYNDIAHR.Nearoptimumdecodingofproductcodes:BlockTurboCodes[J].IEEETransactiononCommunications.1998,46(8):1003?1010.

  [4]WUXiao?xiao,HEYe?jun,ZHUGuang?xi.Performanceofimprovedthree?dimensionalTurboProductCodedecoder[C]//Proceedingsofthe2007IEEEInternationalConferenceonIntegrationTechnology.Shenzhen,China:IEEE,2007:563?567.

  [5]向冰.基于VHDL的TPC译码器设计[J].现代电子技术,2010,33(7):73?76.

  [6]李嘉席,黄进燕,王宏丽.三维TPC编解码器的仿真研究[J].计算机与网络,2010(8):34?37.

  [7]WEIXF,AKANSUAN.Onparalleliterativedecodingofproductcode[C]//IEEEVTC’2001Fall.NewJersey,USA:IEEE,2001:2483?2486.

  [8]ARGONC,MCLAUGHLINSW.AparalleldecoderforlowlatencydecodingofTurboProductCodes[J].IEEECommunicationsLetters,2002,6(2):70?72.

  [9]弥宪梅,沈蕾.Turbo乘积码译码的FPGA实现[J].电信技术研究,2008(6):31?35.

  [10]陈炜炜.TPC编译码算法研究与实现[D].南京:南京理工大学,2009.

 


期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有