一种基于FPGA的高速自适应DVB-S2 LDPC译码器及译码方法技术

技术编号:15191746 阅读:185 留言:0更新日期:2017-04-20 09:39
本发明专利技术涉及一种基于FPGA的高速自适应DVB‑S2 LDPC译码器及译码方法:(1)矩阵变换,产生左矩阵为准循环结构,右矩阵为变换下三角双对角(RTS)子矩阵的新矩阵;(2)初始化RAM和迭代次数;(3)两部分矩阵分别完成变量节点信息更新及数据回写。(4)校验节点信息更新及回写,同时计算伴随式向量s,迭代次数iter加1;(5)若伴随式向量s=0或达到最大迭代次数,转步骤(6),否则,转步骤(3)继续下一轮迭代处理;(6)读出译码判决比特,输出译码码字。

【技术实现步骤摘要】

本专利技术涉及一种符合DVB-S2标准的自适应LDPC译码器技术,特别是一种基于FPGA的高速自适应DVB-S2LDPC译码器及译码方法。
技术介绍
欧洲第二代数字卫星电视广播(DVB-S2)标准提供了一种高功率高频谱效率的自适应编码调制方案,该方案已经在卫星广播电视系统中得到了广泛的应用。为了将这种高效的自适应编码调制方案应用于地球探测卫星,2013年,国际空间数据系统咨询委员会(CCSDS)131.3-B-1标准(CCSDSspacelinkprotocolsoverETSIdvb-s2standardCCSDS131.3-b-1,bluebook,march2013)给出了使用DVB-S2标准来传输CCSDS传输帧的技术方案,解决了DVB-S2与CCSDS的格式兼容问题。然而,由于卫星广播电视系统的最大传输速率仅有135Mbps,而地球探测卫星的最大传输速率则高达几Gbps,现阶段基于卫星广播电视系统的DVB-S2自适应编译码器设计方案及芯片不能直接应用于地球探测卫星。具有自适应能力的DVB-S2LDPC编码器和译码器的高吞吐率实现技术,特别是复杂度更高的自适应译码器的高速实现技术,是DVB-S2自适应方案在地球探测卫星上应用所需要解决的关键技术问题。现阶段基于DVB-S2标准的LDPC译码器设计技术在地球探测卫星上应用都具有局限性。其中,一些译码器实现方法能够兼容DVB-S2标准不同的码率,但其速率无法满足地球探测卫星的要求。如:文献(VanYing,DanBo,ShuangquHuang,BoXiang,YunChen,XiaoyangZeng,“ACostefficientLDPCdecoderforDVB-S2,”IEEE8thInternationalConferenceonASIC,2009.ASICON'09)采用TDMP算法,实现DVB-S2标准码长为64800的11种码,译码吞吐量为135Mbps;文献(C.Marchand,L.Conde-CanenciaandE.Boutillon,“High-speedconflict-freelayeredLDPCdecoderfortheDVB-S2,-T2and-C2standards,”2013IEEEWorkshoponSignalProcessingSystems,pp118-123)基于FPGA实现了一个吞吐量为200Mbps自适应译码器。而另外的一些译码器实现方案,虽然能够实现较高的译码吞吐率,但其设计本身只针对标准中单一码率的矩阵进行设计,译码器实际不具备码率兼容的自适应能力,如:文献(Seok-MinKim,Chang-SooPark,andSun-YoungHwang,“ANovelPartiallyParallelArchitectureforHigh-throughputLDPCDecoderforDVB-S2,”IEEETrans.ConsumerElectronics,Vol.56,No.2,May2010)设计了一个同时具有变量节点和校验节点功能的模块B/CFM,实现的DVB-S2LDPC译码器最大吞吐量能够达到1020Mbps;文献(TaeHunKim,TaeDooPark,GunYeolPark,HaeChanKwon,JiWonJung,“HighThroughputLDPCDecoderArchitectureforDVB-S2,”ICUFN2013,pp430-434)采用HSS策略和简单的校验节点更新算法,采用节省存储资源的架构实现得到的固定码率译码器,吞吐量可超过2Gbps。
技术实现思路
本专利技术的技术解决问题是:克服现有技术的不足,提供一种基于FPGA的高速自适应DVB-S2LDPC译码器及译码方法,它既可以完成多种码率的兼容译码,又能够实现大吞吐率的高速译码,并且具有存储器资源利用率高的特点。本专利技术的技术解决方案是:一种基于FPGA的高速自适应DVB-S2LDPC译码器,其特征在于所述译码器包括:CTRL控制模块、系统部分外信息存储模块RAM_M、校验节点更新及校验方程计算模块CPM、RTS网络交换模块、校验外信息存储模块RAM_C、变量节点处理模块VNM、信道信息存储模块RAMF和输出存储模块RAM_OUT;所述信道信息存储模块RAMF,用于存储译码器输入端口输入的信道信道信息,由N个存储器构成,N为校验矩阵的列分块数;它分为信息部分外信息存储器RAM_QC和校验部分外信息存储器RAM_RTS两部分,其中RAM_QC包含N-q个存储器RAM,记为Ri,1≤i≤N-q;RAM_RTS包含q个存储器RAM,记为Fi,1≤i≤q,q为DVB-S2标准中对应码率的间隔常数;所述RAM_QC在译码过程中为VNM提供信息部分的信道信息,所述RAM_RTS为VNM提供校验部分的信道信息;所述变量节点处理模块VNM,完成译码过程中变量节点外信息更新计算和码字判决计算,它由N个校验节点处理单元组成,分为信息部分变量节点处理单元VNU和校验部分变量节点处理单元VTU两部分,其中VNU为N-q个,记为VNUi,1≤i≤N-q,VTU为q个,记为VTUi,1≤i≤q;VNUi从RAM_QC中的存储器Ri中获得信息部分的信道信息,同时从RAM_M中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_M中,并将码字判决结果写入RAM_OUT;VTUi从RAM_RTS中的存储器Fi中获得信息部分的信道信息,同时从RAM_C中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_C中,并将码字判决结果写入RAM_OUT;所述CPM模块,负责校验节点更新和校验的伴随式计算,它由q个校验节点更新单元CNU和q个校验方程计算单元PCU组成,分别记为CNUi和PCUi,1≤i≤q;CNUi和PCUi分别从RAM_M和RAM_C中获得变量节点更新得到的外信息和码字判决结果,CNUi根据外信息进行校验节点更新计算,将更新后的外信息回写到RAM_M和RAM_C,PCUi根据码字判决计算得到伴随式向量s,并将伴随式向量s送入CTRL控制模块;所述系统部分外信息存储模块RAM_M,负责存储信息部分子矩阵H1t的非零元素对应的外信息,用于VNM中的VNUi和CPM中的CNUi的外信息交换;每次译码迭代,首先VNUi从RAM_M中读入外信息,进行变量节点更新计算后将结果回写至RAM_M,然后CNUi从RAM_M中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_M;所述校验外信息存储模块RAM_C,负责存储校验部分子矩阵H2t的非零元素对应的外信息,用于VNM中的VTUi和CPM中的CNUi的外信息交换,由2q个MCi存储器组成,标记为MCi,1≤i≤2q;每次译码迭代,首先VTUi从RAM_C中读入外信息,进行变量节点更新计算后将后结果回写至RAM_C,然后CNUi经过RTS网络交换模块从RAM_C中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_C;所述的RAM_C存储校验部分子矩阵H2t的非零元素对应的外信本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/61/201610955524.html" title="一种基于FPGA的高速自适应DVB-S2 LDPC译码器及译码方法原文来自X技术">基于FPGA的高速自适应DVB-S2 LDPC译码器及译码方法</a>

【技术保护点】
一种基于FPGA的高速自适应DVB‑S2LDPC译码器,其特征在于所述译码器包括:CTRL控制模块、系统部分外信息存储模块RAM_M、校验节点更新及校验方程计算模块CPM、RTS网络交换模块、校验外信息存储模块RAM_C、变量节点处理模块VNM、信道信息存储模块RAMF和输出存储模块RAM_OUT;所述信道信息存储模块RAMF,用于存储译码器输入端口输入的信道信息,由N个存储器构成,N为校验矩阵的列分块数;它分为信息部分外信息存储器RAM_QC和校验部分外信息存储器RAM_RTS两部分,其中RAM_QC包含N‑q个存储器RAM,记为Ri,1≤i≤N‑q;RAM_RTS包含q个存储器RAM,记为Fi,1≤i≤q,q为DVB‑S2标准中对应码率的间隔常数;所述RAM_QC在译码过程中为VNM提供信息部分的信道信息,所述RAM_RTS为VNM提供校验部分的信道信息;所述变量节点处理模块VNM,完成译码过程中变量节点外信息更新计算和码字判决计算,它由N个校验节点处理单元组成,分为信息部分变量节点处理单元VNU和校验部分变量节点处理单元VTU两部分,其中VNU为N‑q个,记为VNUi,1≤i≤N‑q,VTU为q个,记为VTUi,1≤i≤q;VNUi从RAM_QC中的存储器Ri中获得信息部分的信道信息,同时从RAM_M中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_M中,并将码字判决结果写入RAM_OUT;VTUi从RAM_RTS中的存储器Fi中获得信息部分的信道信息,同时从RAM_C中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_C中,并将码字判决结果写入RAM_OUT;所述CPM模块,负责校验节点更新和校验的伴随式计算,它由q个校验节点更新单元CNU和q个校验方程计算单元PCU组成,分别记为CNUi和PCUi,1≤i≤q;CNUi和PCUi分别从RAM_M和RAM_C中获得变量节点更新得到的外信息和码字判决结果,CNUi根据外信息进行校验节点更新计算,将更新后的外信息回写到RAM_M和RAM_C,PCUi根据码字判决计算得到伴随式向量s,并将伴随式向量s送入CTRL控制模块;所述系统部分外信息存储模块RAM_M,负责存储信息部分子矩阵H1t的非零元素对应的外信息,用于VNM中的VNUi和CPM中的CNUi的外信息交换;每次译码迭代,首先VNUi从RAM_M中读入外信息,进行变量节点更新计算后将结果回写至RAM_M,然后CNUi从RAM_M中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_M;所述校验外信息存储模块RAM_C,负责存储校验部分子矩阵H2t的非零元素对应的外信息,用于VNM中的VTUi和CPM中的CNUi的外信息交换,由2q个MCi存储器组成,标记为MCi,1≤i≤2q;每次译码迭代,首先VTUi从RAM_C中读入外信息,进行变量节点更新计算后将后结果回写至RAM_C,然后CNUi经过RTS网络交换模块从RAM_C中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_C;所述RTS网络交换模块,用于解决CNU和VNU并行读写数据对齐不一致的问题,大小为2q×2q,它与RAM_C中的各存储器MCi,1≤i≤2q连接;2q个输入输出端口分为q组,输入端口号分别为(2,3),(4,5),…(2q,1),各分组的输出端口号分别为(1,2),(3,4),…(2q‑1,2q);所述CTRL控制模块,负责译码器各部分的协调控制,并根据CPM模块送来的伴随式向量s判断译码器继续进行循环迭代还是停止;所述输出存储模块RAM_OUT,用于存储迭代译码过程中产生的译码判决码字,并在译码结束时进行输出。...

【技术特征摘要】
1.一种基于FPGA的高速自适应DVB-S2LDPC译码器,其特征在于所述译码器包括:CTRL控制模块、系统部分外信息存储模块RAM_M、校验节点更新及校验方程计算模块CPM、RTS网络交换模块、校验外信息存储模块RAM_C、变量节点处理模块VNM、信道信息存储模块RAMF和输出存储模块RAM_OUT;所述信道信息存储模块RAMF,用于存储译码器输入端口输入的信道信息,由N个存储器构成,N为校验矩阵的列分块数;它分为信息部分外信息存储器RAM_QC和校验部分外信息存储器RAM_RTS两部分,其中RAM_QC包含N-q个存储器RAM,记为Ri,1≤i≤N-q;RAM_RTS包含q个存储器RAM,记为Fi,1≤i≤q,q为DVB-S2标准中对应码率的间隔常数;所述RAM_QC在译码过程中为VNM提供信息部分的信道信息,所述RAM_RTS为VNM提供校验部分的信道信息;所述变量节点处理模块VNM,完成译码过程中变量节点外信息更新计算和码字判决计算,它由N个校验节点处理单元组成,分为信息部分变量节点处理单元VNU和校验部分变量节点处理单元VTU两部分,其中VNU为N-q个,记为VNUi,1≤i≤N-q,VTU为q个,记为VTUi,1≤i≤q;VNUi从RAM_QC中的存储器Ri中获得信息部分的信道信息,同时从RAM_M中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_M中,并将码字判决结果写入RAM_OUT;VTUi从RAM_RTS中的存储器Fi中获得信息部分的信道信息,同时从RAM_C中获得对应的外信息,进行变量节点更新计算和码字判决计算,将更新后的外信息和码字判决结果回写到RAM_C中,并将码字判决结果写入RAM_OUT;所述CPM模块,负责校验节点更新和校验的伴随式计算,它由q个校验节点更新单元CNU和q个校验方程计算单元PCU组成,分别记为CNUi和PCUi,1≤i≤q;CNUi和PCUi分别从RAM_M和RAM_C中获得变量节点更新得到的外信息和码字判决结果,CNUi根据外信息进行校验节点更新计算,将更新后的外信息回写到RAM_M和RAM_C,PCUi根据码字判决计算得到伴随式向量s,并将伴随式向量s送入CTRL控制模块;所述系统部分外信息存储模块RAM_M,负责存储信息部分子矩阵H1t的非零元素对应的外信息,用于VNM中的VNUi和CPM中的CNUi的外信息交换;每次译码迭代,首先VNUi从RAM_M中读入外信息,进行变量节点更新计算后将结果回写至RAM_M,然后CNUi从RAM_M中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_M;所述校验外信息存储模块RAM_C,负责存储校验部分子矩阵H2t的非零元素对应的外信息,用于VNM中的VTUi和CPM中的CNUi的外信息交换,由2q个MCi存储器组成,标记为MCi,1≤i≤2q;每次译码迭代,首先VTUi从RAM_C中读入外信息,进行变量节点更新计算后将后结果回写至RAM_C,然后CNUi经过RTS网络交换模块从RAM_C中读入外信息,进行校验节点更新计算后将更新后的外信息回写至RAM_C;所述RTS网络交换模块,用于解决CNU和VNU并行读写数据对齐不一致的问题,大小为2q×2q,它与RAM_C中的各存储器MCi,1≤i≤2q连接;2q个输入输出端口分为q组,输入端口号分别为(2,3),(4,5),…(2q,1),各分组的输出端口号分别为(1,2),(3,4),…(2q-1,2q);所述CTRL控制模块,负责译码器各部分的协调控制,并根据CPM模块送来的伴随式向量s判断译码器继续进行循环迭代还是停止;所述输出存储模块RAM_OUT,用于存储迭代译码过程中产生的译码判决码字,并在译码结束时进行输出。2.根据权利要求1所述的基于FPGA的高速自适应DVB-S2LDPC译码器,其特征在于:所述校验外信息存储模块RAM_C中的存储校验部分子矩阵H2t的非零元素对应的外信息,其存储方式为,H2t中每个子行使用两个深度为L的存储器来存储非零...

【专利技术属性】
技术研发人员:谢天骄袁瑞佳张国华宋颖
申请(专利权)人:西安空间无线电技术研究所
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1