CN1825770A - 解码ldpc编码信号的加速消息传递解码器和方法 - Google Patents
解码ldpc编码信号的加速消息传递解码器和方法 Download PDFInfo
- Publication number
- CN1825770A CN1825770A CN 200610058805 CN200610058805A CN1825770A CN 1825770 A CN1825770 A CN 1825770A CN 200610058805 CN200610058805 CN 200610058805 CN 200610058805 A CN200610058805 A CN 200610058805A CN 1825770 A CN1825770 A CN 1825770A
- Authority
- CN
- China
- Prior art keywords
- sub
- square formation
- soft bit
- sideline
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种解码LDPC(低密度奇偶校验)编码信号的AMP(加速消息传递)解码器。本发明提出新的解码方法,可以对LDPC编码信号进行更有效、更快的解码且具有更低的计算复杂度。解码LDPC码奇偶校验矩阵高层子方阵时产生的软比特信息被用来对下面各层其它子方阵进行解码。所述方法允许对奇偶校验矩阵的列权值大于1(例如2或更大)的LDPC码进行解码,从而可以在不同的通信***中对所使用的LDPC码进行更广泛的选择。本发明还对作为Eb/No的函数的BER/LBER进行改进,该方法同时提供了很大的性能改进,而当与其它解码方法相比执行少得多(如50%)的解码迭代时却能获得大致相当(或是更好)的性能指标。
Description
技术领域
本发明涉及通信***,更具体地,本发明涉及通信***中的信号解码。
背景技术
数据通信***多年来一直不断发展。此类通信***中近期非常受到关注的是一种采用迭代纠错码的通信***。其中又以采用LDPC(低密度奇偶校验)码的通信***受到特别关注。在给定信噪比(SNR)情况下,使用迭代码的通信***通常可以比使用交替码的通信***得到更低的误码率(BER)。
本领域此前一直的发展方向均为不停地尝试降低通信***中为达到给定BER的SNR需求。理想的目标是达到信道的香农极限(Shannon’s limit)。香农极限可以看作是应用于具有特定SNR(信噪比)的信道中的数据传输率,通过该信道能实现无误差传送。换言之,香农极限是给定调制和编码率下信道容量的理论限度。
LDPC码时常涉及多种方式。例如,LDPC码的迭代软解码可以通过很多方式实现,包括基于BP(Belief Propagation,置信度传播)算法、SP(Sum-Product,和积)算法和MP(Message-Passing,消息传递)算法;MP算法有时指的是SP/BP联合算法。尽管对这些类型的LDPC码已经进行了大量的关注和努力,不管在特定情况下采用迭代解码的何种特定形式(其中3种在上文已提及:BP、SP、MP),在通信设备中完成这种解码的应用和处理中仍旧有充足的改进空间。例如,为实现对LDPC编码信号的精确解码,必须进行多种相关的复杂且繁琐的计算、数据管理和处理。
LDPC码可以提供优异的解码性能,在某些情况下能够逼近香农极限。例如某些LDPC解码器已表明可以达到距离理论香农极限0.3dB(分贝)的范围。这个例子使用长度为100万的不规则LDPC码来实现,这是LDPC码在通信***中非常有前途的应用。
图4是现有技术中的MP(消息传递)解码功能块400的示意图。在此现有技术中的示例中,比特度量410被初始化并提供给一个或多个比特引擎处理器(如图中所示的比特引擎421、比特引擎422、比特引擎423、……、比特引擎424)。一个或多个比特引擎处理器421-424使用初始化的比特度量410更新与多个比特节点相关的多个边线消息(edge message)Medgeb,完成对比特节点的处理。
这生成了更新过的关于多个比特节点的边线消息Medgeb。此后,这些更新过的关于多个比特节点的边线消息Medgeb被传送并存储于边线存储器(edge memory)430内,随后在使用一个或多个校验引擎处理器(如校验引擎441、校验引擎442、校验引擎443、……、校验引擎444)进行校验节点处理时,将其从边线存储器430内适当地取出。一个或多个校验引擎处理器441-444使用最近更新的关于多个比特节点的边线消息Medgeb更新关于多个校验节点的多个边线消息Medgec,以执行校验节点处理。之后,这些更新过的关于多个校验节点的边线消息Medgec被提供并存储于边线存储器430内,随后可将该边线消息Medgec从边线存储器430中适当地取出,用于使用一个或多个比特引擎处理器421-424进行比特节点处理。
一个或多个比特引擎处理器421-424和一个或多个校验引擎处理器441-444共同协作来执行迭代解码处理,包括更新关于多个比特节点的边线消息Medgeb,和更新关于多个校验节点的边线消息Medgec。最后一次解码迭代之后,使用最近更新的关于多个比特节点的多个边线消息Medgeb生成软比特信息(soft bit information),随后依据该软比特信息做出硬判决,以对一个或多个经过LDPC编码的信息位进行最优估计。
另外,另有两种已知的解码LDPC编码信号的现有技术可以依照LMP(分层消息传递)解码方法执行。下面两篇参考文献描述了LMP解码方法。
[a]M.M.Mansour and N.R.Shanbhag,”High-throughput LDPC decoder”IEEE Trans.Inform.Theory,Vol.11,no.6,pp.976-966,Dec.2003
[b]D.E.Hocevar,“A reduced complexity decoder architecture via layereddecoding of LDPC codes”,Signal Processing Systems,2004,SIPS 2004,IEEEWorkshop on 13-15 October 2004,pp.107-112.
使用LMP解码方法,LDPC码的奇偶校验矩阵H具有如下形式:
H=[H1 H2 … HL]T (等式1)
在此等式中,每个子矩阵Hi具有相同的行数。并且,每个子矩阵Hi可以进一步分解为如下形式:
Hi=[Hi,1 Hi,2 … Hi,M] (等式2)
在上述分解等式里,可以注意到,每个子矩阵Hi,j或者是一个p×p的所有元素均为0的矩阵(即全零矩阵)或者是一个p×p的单位矩阵的置换矩阵。尽管上述两个现有技术的解码方法均可以提供一种减少总的解码迭代所需(因其采用分层解码方法)次数的方法,但这两个已有的解码方法都有明显的局限,因为它们只适用于子矩阵Hi,j为一个p×p单位阵的置换矩阵的情况。
LDPC编码信号的使用不断扩展到许多新的应用领域。一个这样的应用领域是数字视频广播。数字视频广播项目组织(DVB)是一个由超过35个国家的260多家广播公司、生产商、网络运营商、软件开发商、标准化团体及其它单位共同组成的工业联盟,为数字电视和数据服务的全球传输制定全球标准。关于DVB的***息可以从如下的网址获得:
http://www.dvb.org
DVB-S2(即DVB-卫星第2版)标准草案也可以从这个网址公开获得,当前的DVB-S2标准草案的Adobe PDF格式可以从以下网址下载:
www.dvb.org/document//en302307.v1.1.1.draft.pdf
本发明全文引用DVB-S2标准草案——“Draft ETSI EN 302 307 V1.1.1(2004-06),Digital Video Broadcasting(DVB);Second generation framing structure,channel coding and modulation systems for Broadcasting,Interactive Services,News Gathering and other broadband satellite applications”,并将其作为本申请公开的一部分。
此外,“Draft ETSI EN 302 307 V1.1.1(2004-06),Digital Video Broadcasting(DVB);Second generation framing structure,channel coding and modulationsystems for Broadcasting,Interactive Services,News Gathering and otherbroadband satellite applications”标准已经于2005年3月被ETSI(欧洲电信标准化协会)正式批准。该标准也被全文引用于此,作为本申请公开的一部分。
此外,DVB-S2使用基于BCH(Bose-Chaudhuri-Hocquenghem)外码和LDPC内码相结合的高效FEC(前向纠错)***。结果显示其有时距离香农极限只有0.7dB。FEC参数的选择依赖于***需求。随着VCM(可变编码和调制)和ACM(自适应编码和调制),编码率可以在一帧帧的基础上动态变化。
包含解码器的接收设备遵循DVB-S2标准必须使用的多个操作参数在传输***操作参数描述中被清楚的指出。但是,只要包含解码器的接收设备遵循由DVB-S2标准规定的这些操作参数,执行方式上允许有很大的自由度。通信信道发射端的信号生成已在DVB-S2标准中清楚地指出,这些信号的接收处理(在通信信道的接收端)的执行方式对设计者是广泛开放的。显而易见,此种接收设备的一个关键设计约束是要在提供非常高的性能的同时占据相对小的空间和具有相对较低的复杂度,以适用于这些DVB-S2信号。
在DVB-S2或其它的通信***之中,对LDPC编码的信号(同样包括其它类型的编码信号)进行更快且更有效的解码的需求不断增加,以提供多种设计约束,包括操作速度、更低的计算复杂度、减少繁琐的存储管理以及在不同的SNR(信噪比)下相对较小的BER(误码率)。
此外,目前在现有技术中没有使用低密度奇偶校验矩阵H(H具有p×p子矩阵Hi,j,为多个p×p置换单位矩阵之和)进行分层解码的方法。例如,p×p子矩阵Hi,j每一行或者每一列有多于一个的“1”时,现有的分层解码技术便无法工作。
从现有技术可知,对构建LDPC码的约束越多,越限制LDPC码的性能。已有技术的分层解码方法只能处理p×p子矩阵Hi,j每一列或每一行只有一个“1”的情况,这限制了对所采用的LDPC码的选择。当仅局限于此形式的LDPC码时,使用已有技术分层解码方法,设计人员将不能更灵活地设计具有更好性能的LDPC码。
发明内容
根据本发明的一个方面,提供一种解码LDPC(低密度奇偶校验)编码信号的AMP(加速消息传递)解码器,所述解码器包括:
软比特更新处理器,使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
校验引擎,使用所述对应于第二子方阵的第二软比特信息或所述对应于第一子方阵的第一软比特信息,更新关于对应的校验节点的边线消息。
优选地,所述软比特更新处理器使用所述对应于第二子方阵的第二软比特信息来计算对相应于第三子方阵的第三软比特信息,且所述对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的所述列还包括所述第三子方阵。
优选地,所述解码器对所述第一子方阵和第二子方阵每一个分别进行解码。
优选地,所述软比特更新处理器和所述校验引擎协同工作以对所述LDPC编码信号执行迭代纠错解码,从而生成对已编码入所述LDPC编码信号的至少一个信息位的最佳估计。
优选地,所述关于对应的校验节点的边线消息是关于所述对应的校验节点的第三边线消息;且
所述校验引擎使用所述对应于第二子方阵的第二软比特信息与所述关于对应的校验节点的第二边线消息之间的差值,更新所述关于对应的校验节点的第三边线消息;或者使用所述对应于第二子方阵的第一软比特信息与所述关于对应的校验节点的第一边线消息之间的差值,更新所述关于对应的校验节点的第三边线消息。
优选地,包括所述第一子方阵和第二子方阵的所述列的权值为1。
优选地,所述解码器进一步包括:
中间信息计算模块,使用所述对应于第二子方阵的第二软比特信息与所述关于对应的校验节点的边线消息之间的差值来计算中间信息。
优选地,包括所述第一子方阵和第二子方阵的所述列的权值大于1。
优选地,所述软比特更新处理器使用对应于所述第二软比特信息的比特的LLR(对数似然比)信息、更新过的关于对应的校验节点的边线消息和关于对应的校验节点的至少一个附加边线消息来计算所述对应于第二子方阵的第二软比特信息。
优选地,所述解码器进一步包括:
边线存储器,与所述软比特更新处理器通信连接,所述关于对应的校验节点的至少一个附加边线消息从所述边线存储器中获取。
优选地,所述解码器解码遵循DVB-S2(数字视频广播一卫星第2版)标准的LDPC编码信号。
根据本发明的一个方面,提供一种解码LDPC(低密度奇偶校验)编码信号的AMP(加速消息传递)解码器,所述解码器包括:
软比特更新处理器,使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
第一中间信息计算模块,使用关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息之间的差值来计算第一中间信息;
第二中间信息计算模块,使用所述关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息和所述对应于第一子方阵的第一软比特信息二者之和之间的差值来计算第二中间信息;
校验引擎,使用所述第一中间信息更新所述关于对应的校验节点的边线消息。
优选地,所述软件更新处理器使用所述第二中间信息和所述已更新的关于对应的校验节点的边线消息来计算所述对应于第二子方阵的第二软比特信息。
优选地,所述软比特更新处理器使用所述对应于第二子方阵的第二软比特信息来计算对应于第三子方阵的第三软比特信息;
对应于用以生成所述LDPC编码信号的发生器矩阵的奇偶校验矩阵的所述列还包括所述第三子方阵。
优选地,所述解码器对所述第一子方阵和第二子方阵每一个分别进行解码。
优选地,所述软比特更新处理器和所述校验引擎协同工作以对所述LDPC编码信号执行迭代纠错解码,从而生成对已编码入所述LDPC编码信号的至少一个信息位的最佳估计。
根据本发明的一个方面,提供一种解码LDPC(低密度奇偶校验)编码信号的方法,所述方法包括:
使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
对所述LDPC编码信号执行迭代纠错解码,从而生成对已编码入所述LDPC编码信号的至少一个信息位的最佳估计。
优选地,所述方法进一步包括:对所述第一子方阵和第二子方阵每一个分别进行解码。
优选地,所述方法进一步包括:
使用关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息之间的差值来计算第一中间信息;
使用所述关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息和所述对应于第一子方阵的第一软比特信息二者之和之间的差值来计算第二中间信息;
使用所述第一中间信息更新所述关于对应的校验节点的边线消息。
优选地,所述方法进一步包括:
使用所述对应于第二子方阵的第二软比特信息与关于对应的校验节点的边线消息之间的差值来计算中间信息;
使用所述中间信息更新所述关于对应的校验节点的边线消息。
本发明的其他特征和优点将结合以下附图在本发明的详细描述中说明。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是通信***的一个实施例的示意图;
图2是通信***的一个实施例的示意图;
图3是LDPC(低密度奇偶校验)码的一个实施例的二分图;
图4是现有技术中的MP(消息传递)解码功能块的一个实施例的示意图;
图5是块大小为1248比特且具有624个校验方程、比率为1/2的并行-区块(parallel-block)LDPC码的LDPC区块二分图;
图6是图5中LDPC区块二分图中所有边线的排列表的示意图;
图7是奇偶校验矩阵H的各部分的示意图。
图8是执行解码处理以使用奇偶校验矩阵H的前一方子阵的软比特信息来生成奇偶校验矩阵H的当前方子阵的软比特信息的示意图;
图9是当奇偶校验矩阵H的列权值等于1时其子矩阵Hi,j的软比特信息更新处理的示意图;
图10是当奇偶校验矩阵H的列权值大于1时其子矩阵Hi,j的软比特信息更新处理的示意图;
图11是奇偶校验矩阵H的子矩阵Hi,j的软比特更新处理的另一实施例的示意图;
图12是MP(消息传递)解码处理和AMP(加速消息传递)解码处理的性能比较图;
图13是解码LDPC编码信号的方法的一个实施例的流程图;
图14是解码LDPC编码信号的方法的一个实施例的流程图;
图15是解码LDPC编码信号的方法的一个实施例的流程图。
具体实施方式
本发明结合多个实施例介绍了对LDPC编码信号执行解码的设备。在某些实例中,本发明所述的解码方法和功能可对依照SVB-S2(即SVB-卫星第2版)标准生成的信号进行解码和处理。
数字通信***的目标是从一个位置或子***传输无错误或可接受错误率的数字数据到另一个位置或子***。如图1所示,数据可通过各种通信信道在各种通信***内传输:磁媒介、无线网络、光纤、铜线和其它媒介。
图1和图2所示是分别是通信***100和200的实施例的示意图。
参看图1,通信***100中,通信信道199将位于通信信道199一端的通信设备110(包括具有编码器114的发射器112和具有解码器118的接收器116)与位于通信信道199另一端的另一个通信设备120(包括具有编码器128的发射器126和具有解码器124的接收器122)连接。在某些实施例中,通信设备110和120均只包括一个发射器或一个接收器。通信信道199可以通过几种不同类型的媒介来实现(例如:使用卫星天线132和134的卫星通信信道130、使用通讯塔142和144与/或本地天线152和154的无线通信信道140、电线通讯***150和/或使用电光(E/O)接口162和光电(O/E)接口164的光纤通信信道160)。另外,可使用多于一种的媒介相结合形成通信信道199。
为了减少通信***内出现的不想要的传输错误,经常会采用错误校正和信道编码方案。一般来说,这些错误校正和信道编码方案在发射器端使用编码器,在接收器端使用解码器。
参看图2所示的通信***200,在通信信道299的发射端,信息位201被提供给发射器297,发射器297使用编码器和符号映射器220(该符号映射器可视为各自不同的功能块222和224)对信息位201进行编码,从而生成离散值调制符号序列203并提供给发射驱动器230,该发射驱动器230使用数模转换器232生成时间连续发射信号204,并使用发射滤波器234生成滤波后时间连续发射信号205,该滤波后时间连续发射信号205与通信信道299充分一致。在通信信道299的接收端,时间连续接收信号206被提供给模拟前端260,该模拟前端206包括接收滤波器262(生成滤波后时间连续接收信号207)和模数转换器264(生成离散接收信号208)。度量生成器270生成符号度量209,解码器280使用该符号度量209对所述离散值调制符号和编码于其中的信息位作出最佳估测(210)。
前述实施例中的通信设备可以使用此处描述的各种解码特征来实现。另外,接下来的几个附图对用于支持实现对LDPC编码信号的解码的设备、***、功能与/或方法的其他和特定实施例进行描述(某些实施例将给出更详细的介绍)。在提出更具体的介绍之前,先对LDPC码进行一般的介绍。
图3是LDPC码300的一个实施例的示意图。在现有技术中,LDPC二分图有时也称为坦纳图(Tanner Graph)。LDPC码可以视为具有二进制奇偶校验矩阵的代码,这样的话,该矩阵中几乎所有的元素值为0(例如:该二进制奇偶校验矩阵是稀疏矩阵)。例如,H=(hi,j)N×M可以被看作是块长度为N的LDPC码的奇偶校验矩阵。
在该奇偶校验矩阵中,第i列中1的数量可以表示为dv(i),第j行的1的数量可以表示为dc(j)。如果对于所有i,dv(i)=dv,以及对于所有的j,dc(j)=dc,那么该LDPC码被称为(dv,dc)规则LDPC码,否则该LDPC码称作不规则LDPC码。
LDPC码在下面的R.Gallager所著的参考文献[1]以及M.Luby等所著的参考文献[2]中已经给出介绍。
[1]R.Gallager,Low-Density Parity-Check Codes,Cambrridge,MA:MITPress,1963.
[2]M.Luby,M.Mitzenmacher,M.A.Shokrollahi,D.A.Spielman,and V.Stemann,“Practical Loss-Resilient Codes”,Proc.29th Symp.on Theory ofComputing,1997, pp.150-159.
规则LDPC码可以表示为二分图300,其奇偶校验矩阵的左侧节点代表编码位(或“变量节点”(或“比特节点”)310以比特解码的方法对LDPC编码信号进行解码)变量,右侧节点代表校验方程(或校验节点320)。由H定义的LDPC码的二分图300可以由N个变量节点(例如N个比特节点)和M个校验节点定义。N个变量节点310中的每个变量节点具有dv(i)个边线(edge,标号330所示为其中的一个示例),将比特节点vi312与一个或多个校验节点(M个校验节点内的)相连。图中所示的边线330将比特节点vi312与校验节点cj322连接。边线dv的数量(如图中dv314所示)又称为变量节点i的度(degree)。近似地,M个校验节点320的每个校验节点有刚好dc(j)个边线(图中表示为dc324)将该节点与一个或多个变量节点(或比特节点)310连接。该边线的数量dc又称为校验节点j的度。
在变量节点vi(或比特节点bi)312和校验节点cj322之间的边线330可定义为e=(i,j)。但是,另一方面,对于给定的边线e=(i,j),该边线的节点也可以被表示为e=(v(e),c(e))(或者e=(b(e),c(e))。给定变量节点vi(或比特节点bi),可以定义一组从节点vi(或比特节点bi)发出的边线为Ev(i)={e|v(e)=i}(或者为Eb(i)={e|b(e)=i})。给定校验节点cj,可以定义一组从节点cj发出的边线为Ec(j)={e|c(e)=j}。因此,推导结果是|Ev(i)=dv|(或|Eb(i)|=db)和|Ec(j)|=dc。
通常来说,任何能由二分图表示的节点可以特征化为图形码。还需要注意的是,不规则LDPC码也可以用二分图描述。然而,在不规则LDPC码中每一组节点的度可以根据某些分布进行选择。因此,对于一个不规则LDPC码的两个不同的节点vi1和vi2,|Ev(i1)|可能不等于|Ev(i2)|。此关系对于两个校验节点也成立。不规则LDPC码的概念最初由M.Luby等人在参考文献[2]中给出介绍。
需要注意,本发明的解码方法既适用于规则LDPC码也适用于不规则LDPC码(如图5和图6所示)。
LDPC码的LLR(对数似然比)解码方法可以概述如下:计算实际有发送1时接收向量中某一位的值为1的概率。类似的,计算实际有发送0时接收向量中某一位的值为0的概率。此概率可使用用于校验该接收向量的奇偶性的LDPC码的奇偶校验矩阵来计算。LLR是这两个计算出来的概率的比值的对数。LLR给出了传输信号的通信信道对向量内的位产生不良影响程度的一个度量。
LDPC码的LLR解码可以由以下的数学方式描述:
设C={v|v=(v0,...,vN-1)vHT=0}为一LDPC码,形式为((-1)v0i,...,(-1)vN-1)的发送信号内的一个接收向量为y=(y0,...,yN-1),则信道的度量可以定义为p(yi|vi=0),p(yi|vi=1),i=0,...,N-1。度量的LLR,即Lmetric(i),可以定义如下:
注意,此处各种数学表达式中的“ln”指以e为底的自然对数。
对于每个变量节点vi,其LLR信息值可以定义如下:
由于变量节点vi位于LDPC码字内,这些值的比值
可以作如下替换:
其中Ev(i)是从如上定义的vi开始的一组边线。
当执行本申请的BP(置信度传播)解码方法时,
的值可以作如下替换:
Lmetric(i,j)被称作关于边线(i,j)的校验节点cj的EXT(非本征)信息。此外,e∈Ec(j)\{(i,j)}表示所有从校验节点cj发射出去的边线但不包括从校验节点cj到变量节点vi的边线。非本征信息值可看作是对生成接收向量中真实信息位的最佳估计起辅助作用的值。而且在BP算法中,关于边线(i,j)的变量节点vi的非本征信息可以定义如下:
如上所述,LDPC码的奇偶校验矩阵H具有以下形式:
(等式3)
在此形式中,奇偶校验矩阵H的每个子矩阵Hi,j可以是(1)所有元素为0的p×p矩阵,或者是(2)p×p的单位矩阵的置换矩阵,或者是(3)几个置换单位阵的和。
美国专利申请No.10/851,614(代理案号为No.BP3580)中公开的并行-区块LDPC码便是一种具有上述特征的LDPC码。本申请全文引用该美国专利申请并将其作为本申请公开的一部分。
可以考虑一个典型的比率1/2的LDPC码,其区块大小为1248比特,具有624个校验方程,p=52,m=24,L=12。该LDPC码的区块二分图将结合以下附图进行描述。
图5是比率为1/2的并行-区块LDPC码的LDPC区块二分图500的示意图,其区块大小为1248比特,具有624个校验方程。其中,黑色的边线表示并行边线。该图中的LDPC码为比率1/2的LDPC码,块大小为1248比特,有624个校验方程。如上所述令p=52。那么,则有24个位块(如B0,B1,B2,...,B23)和12个校验块(如图中C0,C1,C2,...,C12所示)。前12个位块为Bi={52i,52i+1,...,52(i+1)i-1},i=0,1,...,11。接下来的12个位块为Bj={52j,52j+12,52j+24,...,52j+51×12},j=0,1,...,11。图中,黑色的边线表示并行边线。每个边线的排列πi,j是循环移位的,列于图6的表格中。
图6所示为图5中LDPC区块二分图中所有边线的排列列表600。同样,每个边线的排列πi,j是循环移动的,如图中表格所示。在图中所示的表格中,如果给定单元中没有数字,这表示那些节点之间没有连接(例如,位块节点与校验块节点之间没有连接),否则该数字表示循环移动的深度。2个数字则表示并行边线的两个循环移位(即黑色边线表示并行边线)。
在美国专利申请No.10/851,614(代理案号为No.BP3580)中,列举了一些并行-区块LDPC码的例子(包括每个单独的位节点被当作一个位块节点且每个校验节点被当作一个校验块节点的规则LPDC码——即每个区块只有一个元素)。此外,DVB-S2的欧洲标准使用的LDPC码是并行-区块LDPC码的另一个例子,可以使用本发明的新方法进行解码。这些LDPC码在DVB-S2(DVB-卫星第2版)标准和上文提到的标准草案中都有描述。
并行-区块LDPC码的更多例子可以从下列3个参考文献中找到:
[3]H.Zhong and T.Zhang,“Design of VLSI implementation-oriented LDPCcodes”,IEEE Semiannual Vehicular Technology Conference(VTC),Oct.2003.
[4]S.J.Johnson and S.R.Weller,”Quasi-cyclic LDPC codes from differencefamilies”,3rd AusCTW,Canberra,Australia,Feb.4-5,2002.
[5]F.Verdier and D.Declercq,”A LDPC parity check matrix construction forparallel hardware decoding”,3rd International Symposium on Turbo-Codes &Related Topics Brest,France,September 2003.
表格600中每一个单值条目(例如n)表示一个52×52的矩阵,数字n表示该条目是n重循环移位的单位阵。相应的,表格600中的每个双值条目(如x,y)表示两个循环移位的单位矩阵被加在一起构成相应的结果。
当考虑这些或其它并行-区块LDPC码时,要注意的是,前面提到的LMP解码方法不能对此类LDPC码进行解码。
但是,本发明的新的解码方法可以对此类LDPC码进行解码。本发明不仅能对此类LDPC码进行解码(这对LMP解码方法来说是不可能的),而且其解码过程相对更快,还可以在信噪比方面获得相对好的性能(如低的误码率)。
以下将介绍一种新的针对LDPC编码信号(包括并行-区块LDPC码)的解码方法。在描述该解码方法时,采用与上文相同的标号。这种解码方法一般又称为AMP(加速消息传递)解码处理方法。以下介绍该AMP解码方法的各种实施例。
图7是奇偶校验矩阵H的多个组成部分中的一个示例700的示意图。在示例700中,奇偶校验矩阵H 707有多个矩形子矩阵(如图中所示的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703等)。奇偶校验矩阵H 707可以看作具有如下形式:
此外,每个矩形子矩阵都包括有多个方子阵。这些子方阵可以看作是被排成很多列。其中两列被描述为奇偶校验矩阵H的第j列704和第j+1列705。可见,奇偶校验矩阵H的第j列704有其自己相应的多个方子阵(如图中所示的子阵Hi-2,j713、方子阵Hi-1,j715、方子阵Hi,j717等)。奇偶校验矩阵H的第j+1列705有其自己相应的多个方子阵(如图中所示的方子阵Hi-2,j+1723、方子阵Hi-1,j+1725、方子阵Hi,j+1727等)。
当使用奇偶校验矩阵H 707执行解码时,采用自顶向下的方法执行,即包括每个方子阵的各列均从顶部开始解码。第一个方子阵被解码从而生成其对应的软比特信息,然后在对处于第一方子阵下方的第二方子阵进行解码时,使用该软比特信息。这个处理过程沿着奇偶校验矩阵H 707的每一列连续向下进行。这种方法解码速度非常快,这时因为关于一个方子阵的软比特信息一旦可用就立即向前传递给位于同一列下方的方子阵用于解码。
如示例700中所示,当奇偶校验矩阵H 707的第j列在进行解码时,方子阵Hi-2,j713使用位于其上方的方子阵(如果存在的话)提供的软比特信息进行解码。注意,对于奇偶校验矩阵H 707的每一列中的第一个非0方子阵,作为其输入用到的软比特信息是第一轮解码迭代中对应于该比特的比特度量信息(即初始接收的LLR)。但是,这只是第一轮迭代的情况。对于第一轮之后的解码迭代,奇偶校验矩阵H 707的每一列的第一个非0方子阵使用奇偶校验矩阵H 707的每一列的最后一个非0方子阵产生的软比特信息作为其对应的输入。
例如,若方子阵Hi-2,j713为奇偶校验矩阵H 707该列的第一个非0方子阵,则其解码初始条件是对应于该位的比特度量信息(即初始接收的LLR)。解码方子阵Hi-2,j713时所产生的软比特信息714被送至并应用于方子阵Hi-1,j715的解码过程,以生成软比特信息716。
类似的,解码方子阵Hi-1,j715时所生成的软比特信息716被送至并应用于方子阵Hi,j717的解码过程,以生成软比特信息,用于对奇偶校验矩阵H第j列704内位于方子阵Hi,j717之下的其它方子阵进行解码。奇偶校验矩阵H的第j+1列705的解码过程与奇偶校验矩阵H第j列的解码过程类似。
可以看出,奇偶校验矩阵H 707的解码处理使用已解码的软比特信息来执行,当分别对每个方子阵解码时,软比特信息通过每一列向下级联。使用这种方法,解码过程可以通过比其它方法执行更少的解码迭代次数来获得解。当执行与其它解码方式一样多的解码迭代时,可以获得更好的性能。这给了设计者很大的自由度,并对其它方法作出改进,也即,本发明的解码方法可以提供更好的性能(使用同等的解码迭代次数)或提供获得同等性能的方法(只使用少的多的解码迭代次数)。
图8是执行解码处理以使用奇偶校验矩阵H的前一子方阵的软比特信息来生成奇偶校验矩阵H的当前子方阵的软比特信息的一个实施例800的示意图。实施例800展示了一种并行的配置,其中多个处理器执行奇偶校验矩阵H的每个子方阵的解码。
例如,在时间891,处理器801接收对应于方子阵Hi-2,j814的软比特信息。处理器801接着使用接收到的对应于子方阵Hi-2,j814的软比特信息解码子方阵Hi-1,j。之后处理器801生成对应于子方阵Hi-1,j816的软比特信息。
类似的,在时间891,处理器802接收对应于子方阵Hi-2,j+1824的软比特信息。处理器801接着使用接收到的对应于子方阵Hi-2,j+1824的软比特信息解码子方阵Hi-1,j+1。之后处理器801生成对应于子方阵Hi-1,j+1826的软比特信息。
完全相同的处理器801和802接着被重新用来解码奇偶校验矩阵H的这两列各自接下来的子方阵。
在时间892,处理器801接收对应于子方阵Hi-1,j816的软比特信息。处理器801接着使用接收到的对应于子方阵Hi-1,j816的软比特信息解码子方阵Hi,j。之后处理器801生成对应于子方阵Hi,j818的软比特信息。
类似的,在时间892,处理器802接收对应于子方阵Hi-1,j+1826的软比特信息。处理器801接着使用接收到的对应于子方阵Hi-1,j+1826的软比特信息解码子方阵Hi,j+1。之后处理器801生成对应于子方阵Hi,j+1826的软比特信息。
在另一个实施例中,可以使用单个处理器对奇偶校验矩阵H的各列进行串行解码。例如,首先解码奇偶校验矩阵H的第一列的每个子方阵,然后解码奇偶校验矩阵H的第二列的每个子方阵,依此类推。
图9和图10对应第一个实施例(AMP-I解码方法),图11对应第二个实施例(AMP-II解码法)。
图9为当奇偶校验矩阵H的列权值等于1时其子矩阵Hi,j的软比特信息更新处理的实施例900的示意图。
AMP-I解码方法根据图9中所示的功能操作。对于列权值等于1的奇偶校验矩阵H的那些由子方阵Hi,j构成的列,软比特更新处理根据图9所示的功能块执行。
在第一轮解码迭代期间,边线存储器920被置“0”。对应于第k-1次解码迭代的Hi,j的边线消息(图中使用标号922表示)从边线存储器920中提取。然后用从软比特信息存储器910中提取的Hi-1,j列的软比特信息减去该边线消息。
然后将相减的结果提供给校验引擎930用于执行校验节点处理,从而更新关于校验节点的至少一个边线消息,从而生成Hi,j的对应于第k次解码迭代的更新后的边线消息(图中使用标号932表示)。
然后将Hi,j的对应于第k轮解码迭代的一个或多个更新过的边线消息(如标号932所示)提供给求和模块,并还返回给边线存储器920。该求和模块将校验引擎930提供的Hi,j的对应于第k轮解码迭代的更新过的边线消息(使用标号932表示)与同样是校验引擎930提供的相减结果两者相加。
由Hi,j的对应于第k轮解码迭代的更新过的边线消息(使用标号932表示)和上述相减结果所构成的和值,构成了Hi,j列的软比特信息(图中使用标号908表示)。之后该软比特信息被送至软比特存储器910以备下一个矩形子矩阵(例如图7中的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703)随后解码时使用。
图10为当奇偶校验矩阵H的列权值大于1时,其子矩阵Hi,j的软比特更新处理过程1000的示意图。该实施例可以看作是与图9中的实施例900结合起来执行的。例如,当奇偶校验矩阵H的方子矩阵Hi,j的列权值大于1时,其软比特信息更新处理使用图10中所示的处理过程1000进行。处理过程1000和图9中的处理过程900有很多相似之处。
Hi,j的对应于第k-1轮解码迭代的边线消息(使用标号1022表示)从边线存储器1020中取出,然后送至中间信息I处理器1040。
中间信息I处理器1040还从软比特信息存储器1010中接收解码前一矩形子矩阵Hj时产生的Hi-1,j的列的软比特信息(使用标号1022表示)。然后,中间信息I处理器1040使用Hi-1,j的列的软比特信息(使用标号1022表示)来计算中间信息,并将此中间信息提供给校验引擎1030。
中间信息I处理器1040按照以下等式计算每一列v和每一行u的中间信息MI:
校验引擎1030用来进行节点校验处理,从而更新关于校验节点的至少一个边线信息,从而生成Hi,j的对应于第k轮解码迭代的更新过的边线消息(使用标号1032表示)。
然后将Hi,j的对应于第k轮解码迭代的一个或多个更新过的边线消息(使用标号1032表示)送至比特更新模块1060,并还返回给边线存储器1020。比特更新模块1060用于计算Hi,j列的下一个软比特信息(使用标号1008表示),并将该下一个软比特信息送至软比特信息存储器1010以备下一个矩形子矩阵(图7中的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703)随后解码之用。
比特更新模块1060还用来接收存储于存储器1050中的满足l≠i(即l不等于i)的Hi,j的边线消息。此外,比特更新模块1060还用来接收LLR(对数似然比)(使用标号1085表示)。该LLR信息1085可以从使用方法1000进行解码的通信设备的接收器前端部分获得。例如,此通信设备的接收器部分可执行多种预处理操作,包括降频转换、采样、基带处理、度量生成和LLR信息的计算。比特更新模块1060用于计算Hi,j列的下一个软比特信息(使用标号1008表示),之后将该下一个软比特信息送至软比特信息存储器1010以备下一个矩形子矩阵(图7中的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703)随后解码之用。
执行“比特更新”的比特更新模块1060所指的比特节点处理可以描述如下。对于上一轮迭代(即k-1轮),关于校验节点的边线消息(有时表示为Medgec)也可以被描述为Mu,v k-1(Hi,j)(以便于读者理解下面的公式)。对于当前迭代(即k),关于校验节点的边线消息(之前有时表示为Medgec)也可以被描述为Mu,v k(Hi,j)。另外,从通信设备中获得并用于计算对应特定比特b的接收符号的度量的LLR(对数似然比)可表示为:metb。则软比特信息S(j-1)p+v可以表示如下:
可见,
中包含了校验引擎1030的输出,
中包含了从存储器1050获取的各项。同样,metb可以从该通信设备的接收器部分获得。同样可以看出,若子矩阵Hk,l的(u,v)项为0,则不存在Mu,v(Hk,l)。
如上面所述,图11(将在下面详述)是对应于本发明的第二种解码方法(即AMP-II解码处理)的示意图
图11是奇偶校验矩阵H的子矩阵Hi,j的软比特更新处理的另一实施例1100的示意图。该实施例使用与前述相同的标号。实施例1100中假设子方阵Hi,j权值为w。在第1列,矩阵的各项如下:
。据此,依据AMP-II解码处理方法的子块处理可以依据图11所示的实施例1100执行。
Hi,j的对应于第k-1轮解码迭代的边线消息(使用标号1122表示)从边线存储器1120中获得。然后这些边线消息被送至中间信息II处理器1145。此外,这些边线消息还被送至中间信息I处理器1140。
中间信息I处理器1140还从软比特信息存储器1110接收Hi-1,j列的软比特信息(使用标号1112表示),该软比特信息在解码前一矩形子矩阵Hi时生成。之后,中间信息I处理器1140通过从Hi,j的对应于第k-1轮解码迭代的边线消息中减掉Hi-1,j列的软比特信息(使用标号1112表示)来计算第一中间信息,并将此第一中间比特信息提供给校验引擎1130。
校验引擎1130执行校验节点处理,继而更新关于校验节点的至少一个边线消息,继而生成Hi,j的对应于第k轮循环迭代的更新过的边线消息(使用标号1132表示)。
Hi,j的对应于第k轮解码迭代的一个或多个更新过的边线消息(使用标号1132表示)被送至比特更新模块1160,并还返回给边线存储器1120。比特更新模块1160计算Hi,j列的下一个软比特信息(使用标号1108表示),之后将该下一个软比特信息送至软比特信息存储器1110以备通过将中间信息II处理器1145生成的结果与Hi,j的对应于第k轮解码迭代的所有更新过的边线消息(使用标号1132表示)相加来对下一个矩形子矩阵(图7中的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703)进行解码之用。
此外,中间信息II处理器1145还从软比特信息存储器1110接收在上一轮迭代中生成的Hi-1,j列的软比特信息(使用标号1112表示)。中间信息II处理器1145接着通过从Hi-1,j列的软比特信息中减掉Hi,j的对应于第k轮解码迭代的所有更新过的边线消息(使用标号1132表示)来计算第二中间信息,并将该第二中间信息提供给比特更新模块1160。
例如,在Hi,j的列中有2个或更多的“1”值的情况下,中间信息II处理器1145通过从该列的软比特信息中减掉Hi,j的(相应于第k-1轮解码迭代的)对应在Hi,j的列中每个“1”值的所有边线消息来计算第二中间信息。
在初始化阶段(即第一轮解码迭代之前),软比特信息存储器1110接收LLR(对数似然比)(使用标号1185表示)。与上面所述另一实施例类似,LLR信息1185可以由使用实施例1000的解码方法的通信设备的接收器前端部分提供。例如,此通信设备的接收器部分可执行多种预处理操作,包括降频转换、采样、基带处理、度量的生成和LLR的计算。
比特更新模块1160计算Hi,j列的下一个软比特信息(使用标号1108表示),之后将该下一个软比特信息送至软比特信息存储器1110以备下一个矩形子矩阵(图7中的矩形子矩阵Hi-2701、矩形子矩阵Hi-1702、矩形子矩阵Hi703)随后解码之用。软比特更新模块1160将中间信息II处理器1145的输出加到Hi,j的(对应于第k轮解码迭代的)更新过的边线消息上。例如,在Hi,j的列中有2个或更多的“1”值的情况下,比特更新模块1160将Hi,j的(对应于第k轮解码迭代的)对应Hi,j的每列中每个“1”值的边线消息相加。
中间信息I处理器1140按照如下等式计算每一列v和每一行u的第一中间信息MI(与图10中实施例1000的中间信息I处理器1040的处理类似):
中间信息II处理器1145按照如下等式对每一列l计算Tl:
执行“比特更新”的比特更新处理器1160所指的比特节点处理描述如下,用以计算软比特信息S(j-1)p+v。
本发明所描述的AMP解码方法适用于每行或每列具有不止一个“1”的p×p的子矩阵Hi,j的能力,使设计者可以构造范围更广的LDPC码。这给了设计者更多的自由度来针对指定应用构造性能更好的编码。
在本申请中,通过BER(误码率)(或BLER(块错误率))与Eb/No(每一位的能量Eb与噪声谱密度No之比)的关系曲线来进行性能对比。Eb/No是对数字通信***中的SNR(信噪比)的度量。通过观察这些性能曲线,对任何给定的Eb/No(或信噪比),可以确定BLER或BER,因而可以给出本发明解码方法性能的相对简明的表达。
图12为MP(消息传递)解码过程和AMP(加速消息传递)解码过程的性能比较1200的示意图。该性能比较图采用上文提到的(1248,624)LDPC码。
使用本发明提供的各种创新和改进的解码方法,可以看出,使用本发明提到的新AMP解码处理在获得相同性能指标的条件下可以减少几乎50%的解码迭代次数。而且,当进行相同次数的解码迭代时,与MP解码处理方法相比,把BLER/BER看作是Eb/No(或信噪比)的函数,AMP解码处理方法在性能指标上可以提供接近0.2dB的增益。因此,本发明所述的新的解码方法在执行LDPC编码信号的解码时,可以提供比已有技术的解码方法更好的性能,在执行较少的解码迭代时可以提供和已有技术解码方法相当(通常是更好)的性能。
注意到,在上文“背景技术”中提到的已有技术中的分层解码方法的性能在图12中没有标出,因为该已有的分层解码方法的性能在错误率上与本发明的AMP解码处理方法比相对较高。
图13、图14和图15列举了对LDPC编码信号进行解码的方法的各种实施例。
参照图13中的实施例1300,如步骤1310所示,该方法计算对应于第一子方阵的第一软比特信息。这可以看作使用对应于LDPC码的奇偶校验矩阵执行解码处理。然后,步骤1320中使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,步骤1330中使用对应于第二子方阵的第二软比特信息来计算对应于第三子方阵的第三软比特信息。最后,如步骤1340所示,该方法对LDPC编码信号执行迭代纠错解码,以生成对编码入LDPC编码信号的至少一个信息位的最优估计。
根据上文所述以及一些其它实施例,该解码过程可以看作是沿着奇偶校验矩阵的各列将软比特信息(根据奇偶校验矩阵的各个子方阵计算得到)向下级联。
参考图14中的实施例1400,如步骤1410所示,该方法包括计算对应于第一子方阵的第一软比特信息。该方法还使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,如步骤1420所示。该第一子方阵和第二子方阵位于奇偶校验矩阵的同一列。
该方法接下来使用对应于第二子方阵的第二软比特信息与关于对应校验节点的边线消息之差来计算中间信息,如步骤1430所示。该方法接下来使用第一中间信息更新关于对应校验节点的边线消息,如步骤1450所示。该方法最后对LDPC编码信号执行迭代纠错解码,以生成对已编码入LDPC编码信号的至少一个信息位的最优估计,如步骤1460所示。
参看图15中的实施例1500,如步骤1510所示,该方法包括计算对应于第一子方阵的第一软比特信息。接下来,该方法包括使用对相应于第一子方阵的第一软件信息来计算对应于第二子方阵的第二软比特信息,如步骤1520所示。如上文所述的其它方法一样,该实施例1500中的第一子方阵和第二子方阵同样位于奇偶校验矩阵的同一列。
该方法接下来使用关于对应校验节点的边线消息与对应于第二子方阵的第二软比特信息之差来计算第一中间信息,如步骤1530所示。接着,使用关于对应校验节点的边线消息与对应于第二子方阵的第二软比特信息和对应于第一子方阵的第一软比特信息二者之和的差值来计算第二中间信息,如步骤1540所示。
之后,该方法使用第一中间信息更新关于对应校验节点的边线消息,如步骤1550所示。最后,该方法对LDPC编码信号执行迭代纠错解码,以生成对已编码入LDPC编码信号的至少一个信息位的最优估计,如步骤1560所示。
还要注意的是,前面的图中所描述的任何方法都可以适用于各种***和设备设计(通信***、通信发射器、通***、通信收发机和/或其它各种功能性)。
另外,还要指出的是,本发明中介绍的各种功能性、***或设备设计以及本发明涉及的相关方法都可在对数域中实现,这样,乘法操作可以使用加法执行而除法操作可以使用减法来执行。
基于上述结合附图对本发明的详细描述,对本发明的其他修改和变更是显而易见的。而且很明显,这些修改和变更不超出本发明的范围和精神实质。
本申请全文引用并要求申请日为2005年2月26日、名称为“适用于LDPC(低密度奇偶校验)码的AMP(加速消息传递)解码器”的美国临时专利申请No.60/656,566(代理案号为No.BP4443)的优先权。
本申请还全文引用以下专利申请:
申请日为2005年5月21日、名称为“使用并行同时比特节点和校验节点处理的LDPC(低密度奇偶校验)编码信号解码”的美国专利申请No.10/851,614(代理案号为No.BP3580)。
Claims (10)
1、一种解码LDPC编码信号的加速消息传递解码器,所述解码器包括:
软比特更新处理器,使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
校验引擎,使用所述对应于第二子方阵的第二软比特信息或所述对应于第一子方阵的第一软比特信息,更新关于对应的校验节点的边线消息。
2、根据权利要求1所述的解码器,其特征在于,所述软比特更新处理器使用所述对应于第二子方阵的第二软比特信息来计算对相应于第三子方阵的第三软比特信息,且所述对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的所述列还包括所述第三子方阵。
3、根据权利要求1所述的解码器,其特征在于,所述解码器对所述第一子方阵和第二子方阵每一个分别进行解码。
4、根据权利要求1所述的解码器,其特征在于,所述软比特更新处理器和所述校验引擎协同工作以对所述LDPC编码信号执行迭代纠错解码,从而生成对已编码入所述LDPC编码信号的至少一个信息位的最佳估计。
5、根据权利要求1所述的解码器,其特征在于,所述关于对应的校验节点的边线消息是关于所述对应的校验节点的第三边线消息;且
所述校验引擎使用所述对应于第二子方阵的第二软比特信息与所述关于对应的校验节点的第二边线消息之间的差值,更新所述关于对应的校验节点的第三边线消息;或者使用所述对应于第二子方阵的第一软比特信息与所述关于对应的校验节点的第一边线消息之间的差值,更新所述关于对应的校验节点的第三边线消息。
6、一种解码LDPC编码信号的加速消息传递解码器,所述解码器包括:
软比特更新处理器,使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
第一中间信息计算模块,使用关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息之间的差值来计算第一中间信息;
第二中间信息计算模块,使用所述关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息和所述对应于第一子方阵的第一软比特信息二者之和之间的差值来计算第二中间信息;
校验引擎,使用所述第一中间信息更新所述关于对应的校验节点的边线消息。
7、根据权利要求6所述的解码器,其特征在于,所述软件更新处理器使用所述第二中间信息和所述已更新的关于对应的校验节点的边线消息来计算所述对应于第二子方阵的第二软比特信息。
8、一种解码LDPC编码信号的方法,所述方法包括:
使用对应于第一子方阵的第一软比特信息来计算对应于第二子方阵的第二软比特信息,其中,对应于生成LDPC编码信号所使用的发生器矩阵的奇偶校验矩阵的一列,包括所述第一子方阵和所述第二子方阵;
对所述LDPC编码信号执行迭代纠错解码,从而生成对已编码入所述LDPC编码信号的至少一个信息位的最佳估计。
9、根据权利要求8所述的方法,其特征在于,所述方法进一步包括:对所述第一子方阵和第二子方阵每一个分别进行解码。
10、根据权利要求8所述的方法,其特征在于,所述方法进一步包括:
使用关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息之间的差值来计算第一中间信息;
使用所述关于对应的校验节点的边线消息与所述对应于第二子方阵的第二软比特信息和所述对应于第一子方阵的第一软比特信息二者之和之间的差值来计算第二中间信息;
使用所述第一中间信息更新所述关于对应的校验节点的边线消息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US65656605P | 2005-02-26 | 2005-02-26 | |
US60/656,566 | 2005-02-26 | ||
US11/262,574 | 2005-10-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1825770A true CN1825770A (zh) | 2006-08-30 |
CN100566182C CN100566182C (zh) | 2009-12-02 |
Family
ID=36936240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100588057A Expired - Fee Related CN100566182C (zh) | 2005-02-26 | 2006-02-27 | 解码ldpc编码信号的加速消息传递解码器和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100566182C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159436B (zh) * | 2006-10-02 | 2010-04-21 | 美国博通公司 | 解码设备及方法 |
CN101931497A (zh) * | 2009-06-26 | 2010-12-29 | 芯光飞株式会社 | 低密度奇偶校验(ldpc)码的译码装置及方法 |
WO2019033422A1 (en) * | 2017-08-18 | 2019-02-21 | Nokia Solutions And Networks Oy | USE OF BASIC GRAPHICS LDPC FOR NR |
CN109923787A (zh) * | 2016-11-02 | 2019-06-21 | 高通股份有限公司 | 用于分层ldpc解码器的早期终止 |
WO2020001212A1 (zh) * | 2018-06-29 | 2020-01-02 | 中兴通讯股份有限公司 | 译码器、译码方法和计算机存储介质 |
CN113273085A (zh) * | 2019-01-14 | 2021-08-17 | 上海诺基亚贝尔股份有限公司 | 信道解码中的数据处理 |
-
2006
- 2006-02-27 CN CNB2006100588057A patent/CN100566182C/zh not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159436B (zh) * | 2006-10-02 | 2010-04-21 | 美国博通公司 | 解码设备及方法 |
CN101931497A (zh) * | 2009-06-26 | 2010-12-29 | 芯光飞株式会社 | 低密度奇偶校验(ldpc)码的译码装置及方法 |
CN101931497B (zh) * | 2009-06-26 | 2014-12-17 | 芯光飞株式会社 | 低密度奇偶校验(ldpc)码的译码装置及方法 |
CN109923787A (zh) * | 2016-11-02 | 2019-06-21 | 高通股份有限公司 | 用于分层ldpc解码器的早期终止 |
CN109923787B (zh) * | 2016-11-02 | 2023-04-04 | 高通股份有限公司 | 用于分层ldpc解码器的早期终止 |
WO2019033422A1 (en) * | 2017-08-18 | 2019-02-21 | Nokia Solutions And Networks Oy | USE OF BASIC GRAPHICS LDPC FOR NR |
US11070314B2 (en) | 2017-08-18 | 2021-07-20 | Nokia Solutions And Networks Oy | Use of LDPC base graphs for NR |
US11558148B2 (en) | 2017-08-18 | 2023-01-17 | Nokia Solutions And Networks Oy | Use of LDPC base graphs for NR |
WO2020001212A1 (zh) * | 2018-06-29 | 2020-01-02 | 中兴通讯股份有限公司 | 译码器、译码方法和计算机存储介质 |
CN113273085A (zh) * | 2019-01-14 | 2021-08-17 | 上海诺基亚贝尔股份有限公司 | 信道解码中的数据处理 |
Also Published As
Publication number | Publication date |
---|---|
CN100566182C (zh) | 2009-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7500172B2 (en) | AMP (accelerated message passing) decoder adapted for LDPC (low density parity check) codes | |
JP5138221B2 (ja) | 誤り訂正符号をmin−sum復号化する方法 | |
JP4879970B2 (ja) | Ldpc符号化符号語の復号を制御する方法および装置 | |
CN101903890B (zh) | 用于迭代解码器的改进的turbo均衡方法 | |
CN1830149A (zh) | 用于对低密度奇偶校验码编码的方法 | |
CN1547806A (zh) | 使用结构化奇偶校验矩阵的低密度奇偶校验码的编码 | |
CN1608347A (zh) | 低密度奇偶校验码用检查矩阵生成方法 | |
US20070168833A1 (en) | Apparatus and method for receiving signal in a communication system using a low density parity check code | |
CN1838542A (zh) | 解码设备和方法以及程序 | |
CN1701515A (zh) | 解码方法、解码装置和程序 | |
CN101079638A (zh) | 用于降低复杂度的低密度奇偶校验解码的***和方法 | |
CN1697359A (zh) | 用于发送和接收数据的***、装置和方法 | |
CN1947368A (zh) | 对具有可变块长度的块低密度奇偶校验码编码/解码的设备和方法 | |
CN1639985A (zh) | Ldpc码用检查矩阵生成方法及检查矩阵生成装置 | |
CN101032084A (zh) | 低密度奇偶校验(ldpc)解码器 | |
CN1993892A (zh) | 用于编码和解码块低密度奇偶校验码的装置和方法 | |
EP1947772A1 (en) | Decoder and decoding method | |
KR20080053346A (ko) | 저밀도 패리티 검사 디코더용 방법 및 장치 | |
CN1825770A (zh) | 解码ldpc编码信号的加速消息传递解码器和方法 | |
Zimmermann et al. | Reduced complexity LDPC decoding using forced convergence | |
CN1252935C (zh) | 基于低密度奇偶检验编码的信源信道联合编码方法 | |
CN1666420A (zh) | 检查矩阵生成方法及检查矩阵生成装置 | |
US7383485B2 (en) | Fast min*- or max*-circuit in LDPC (low density parity check) decoder | |
CN1906856A (zh) | 消除不可靠消息交换的置信传播解码器 | |
CN101043218A (zh) | Ldpc码的译码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091202 Termination date: 20160227 |