译码装置以及对解析数据进行译码的方法

文档序号:7542105阅读:239来源:国知局
译码装置以及对解析数据进行译码的方法
【专利摘要】一种译码装置以及对解析数据进行译码的方法,其中对解析数据进行译码的方法包括:从随机存储单元的起始地址并按地址累加顺序读入解析数据,其中所述随机存储单元包括多个子存储单元;每当第一数量个子存储单元存满解析数据时,将已存储的解析数据输出至第二数量个译码器进行译码;当该随机存储单元的地址已累加至结束地址时,读入的解析数据再次存储至该随机存储单元的起始地址对应的子存储单元。本技术方案可以满足在超高速码率下译码器完成对解析数据译码的处理,并可以保证子存储单元的读写逻辑同步且一致,还使得多个译码器对解析数据进行迭代译码时,各个译码器所读写的缓存单元的存储资源能够共用,从而提高译码器的存储效率。
【专利说明】译码装置以及对解析数据进行译码的方法
[0001]
【技术领域】
[0002]本发明涉及译码器【技术领域】,特别涉及一种译码装置以及对解析数据进行译码的方法。
【背景技术】
[0003]低密度奇偶校验码(Low Density Parity Check Code, LDPC)码字作为一种接近香农门限的码字,不仅在理论界的码字结构研究、构造方法研究、译码算法、比特映射等等领域得到了广泛的研究,而且在工业界也是越来越得到实际的应用。比如,在地面广播电视领域,卫星通信领域,高速磁盘存储领域以及光纤数据通信领域等,都能找到LDPC码字的应用实例。
[0004]现有的LDPC译码器的设计主要采用归一化的最小和算法以及乒乓的随机存储器(random access memory, RAM)架构。如图1所示的是现有的一种LDPC译码器的架构示意图。
[0005]参考图1,LDPC译码器的架构包括两个RAM,分别为乒RAMlla和乓RAMllb、数据选择器12以及LDPC译码器13。
[0006]在工作过程中,首先,解映射得到的数据(称为解析数据)按RAM的地址顺序写入乒乓RAM。实际应用中,乒乓RAM可以是一整块RAM,这样RAM地址可以累加,而乒RAMl Ia和乓RAMllb是按照使用需要将RAM分成两块区域,其中乒RAMlla和乓RAMllb的大小相等,均为一个LDPC码字长度的深度,而每个地址里面存储的数据宽度由解析数据的位宽决定。
`[0007]当写地址累加到第一个LDPC块结束地址时(即数据写满乒RAMlla时),数据选择器(MUX)选通乒RAMl la,存储于乒RAMlla的解析数据并行读出到LDPC译码器13开始本块数据的译码。由于此时解析数据已经写满了乒RAMlla,所以继续开始写入乓RAMllb,当写地址累加到第二个LDPC块结束地址时(即数据写满乓RAMllb时),数据选择器选通乓RAMllb,存储于乓RAMllb的解析数据并行读出到LDPC译码器13开始本块数据的译码。当然,此时务必保证上一块(即乒RAMlla对应的LDPC块数据)的LDPC码字已经译码完成,且其译码后比特已经输出。然后,解映射得到的数据继续写入RAM,但此时写地址不再累加,而是重新归零,解析数据开始写入乒RAMlla,继续上述处理过程,如此往复。
[0008]可以看出,上述LDPC译码器的结构能够得到广泛应用,需要满足一个条件,就是LDPC译码器必须在前面的解析数据写满一个RAM (乒RAM或者乓RAM,代表一个LDPC码字的长度)所花的时间内,完成一个LDPC码字块的译码过程。也就是说,上述LDPC译码器的结构对码字的长度,解析数据的读入速率有关系。码字长度越长,解析数据的读入速率越慢,越能够满足条件。
[0009]事实上,基于高速芯片设计的LDPC译码器其时钟工作速率可以最大支持200-300Μ左右,所以解析数据的读入速率如果和这个速率相当是可以考虑用上述结构的。[0010]但是,随着通信技术的发展,在基于光纤的超高速的数据通信场景下,一方面由于数据通信具有突发性,码字长度比较短,另一方面由于光纤通信峰值速率达到了每秒千兆次米样(Gigabit Samples Per Second, Gsps)的数量级(lGsps=1000Msps),远大于20(T300Msps的速率,因此现有的LDPC译码器的结构就很难满足实际的需求了。

【发明内容】

[0011]本发明解决的问题是现有的LDPC译码器的结构很难满足超高速码率、短码字的数据译码处理要求。
[0012]为解决上述问题,本发明实施例提供了一种译码装置,包括:适于从起始地址开始并按地址累加顺序读入解析数据的随机存储单元,其中所述随机存储单元包括多个子存储单元;适于对经由第一数量个子存储单元输出的解析数据进行译码的第二数量个译码器;其中,所述第一数量与第二数量相等,且所述第一数量、第二数量和所有子存储单元的数目关联于解析数据的读入速率与译码器的译码速率之比。
[0013]可选地,所述子存储单元的数目为第一数量的2倍。
[0014]可选地,所述译码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。
[0015]可选地,所述子存储单元的深度为一个LDPC码字的长度。
[0016]可选地,所述子存储单元的宽度由所述解析数据的位宽来确定。
[0017]可选地,所述译码装置还包括:适于选通第一数量个子存储单元并将这些子存储单元中存储的解析数据读入至第二数量个译码器进行译码的第一数据选择器;适于选通其中一个译码器并将经过译码后的解析数据输出的第二数据选择器。
[0018]可选地,所述译码装置还包括:适于依照预定方式对当前读入解析数据的子存储单元进行计数的计数器,其中所述预定方式包括在初始化时将计数器的计数值清零,每当计数值累加到第一数量时再度清零。
[0019]本发明实施例还提供了一种利用上述译码装置对解析数据进行译码的方法,包括:从随机存储单元的起始地址并按地址累加顺序读入解析数据,其中所述随机存储单元包括多个子存储单元;每当第一数量个子存储单元存满解析数据时,将已存储的解析数据输出至第二数量个译码器进行译码;当该随机存储单元的地址已累加至结束地址时,读入的解析数据再次存储至该随机存储单元的起始地址对应的子存储单元。
[0020]可选地,所述子存储单元的数目为第一数量的2倍。
[0021]可选地,在对解析数据进行译码过程中,每当将第一数量个子存储单元中存储的解析数据输出至第二数量个译码器进行译码时,该第二数量子译码器已完成对上一次读入的解析数据的译码处理。
[0022]可选地,所述译码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。
[0023]可选地,所述子存储单元的深度为一个LDPC码字的长度。
[0024]可选地,所述子存储单元的宽度由所述解析数据的位宽来确定。
[0025]与现有技术相比,本发明技术方案具有以下有益效果:
将解映射得到的解析数据按照地址累加顺序写入至随机存储单元的各个子存储单元,当第一数量个子存储单元存满解析数据后将这些解析数据同时输出至第二数量个译码器进行译码。由于第一数量、第二数量以及所有子存储单元的数目是根据解析数据的读入速率与译码器的译码速率之比来确定的,因此可以满足在超高速码率下译码器完成对所有解析数据译码的处理,与现有技术相比,对译码器译码速率的要求有所降低。
[0026]进一步地,由于多个(第一数量个)子存储单元是同时读出解析数据至译码器进行译码,这样既可以保证译码过程中子存储单元的读写逻辑同步且一致,还使得多个(第二数量个)译码器对解析数据进行每次迭代译码时,各个译码器所读写的缓存单元的存储资源能够共用,即原来一个缓存单元的存储位宽和解析数据的位宽一样,但是需要第二数量倍个,而共用后(由于读写节拍一致),一个缓存单元的存储位宽等于多个(第二数量个)解析位宽,对第二数量个译码器只需要使用一个缓存单元,从而提高译码器的存储效率。
【专利附图】

【附图说明】
[0027]图1是现有的一种LDPC译码器的架构示意图;
图2是本发明的一种对解析数据进行译码的方法的实施方式的流程示意图;
图3是本发明的译码装置的一个具体实施例的结构示意图。
【具体实施方式】
[0028]发明人发现现有的LDPC译码器的结构很难满足超高速率、短码字的数据通信场景下的数据译码处理要求。
[0029]针对上述问题,发明人经过研究,提供了一种译码装置以及对解析数据进行译码的方法。本技术方案可以满足在超高速码率下译码器完成对解析数据译码的处理,且与现有技术相比,对译码器译码速率的要求有所降低。进一步地,在对解析数据进行译码过程中,尽量保证子存储单元的读写逻辑一致,且子存储单元的存储资源能够共用,从而提高译码处理效率。
[0030]为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的【具体实施方式】做详细的说明。
[0031]如图2所示的是本发明的一种对解析数据进行译码的方法的实施方式的流程示意图。参考图2,所述对解析数据的译码方法包括如下步骤:
步骤S1:从随机存储单元的起始地址并按地址累加顺序读入解析数据,其中所述随机存储单元包括多个子存储单元;
步骤S2:每当第一数量个子存储单元存满解析数据时,将已存储的解析数据输出至第二数量个译码器进行译码;
步骤S3:当该随机存储单元的地址已累加至结束地址时,读入的解析数据再次存储至该随机存储单元的起始地址对应的子存储单元。
[0032]需要说明的是,根据上述实施方式,各步骤之间并没有执行顺序上的限制。具体来说,在对解析数据进行译码过程中,如步骤SI所述,将解映射得到的解析数据从随机存储单元的起始地址开始并按地址累加顺序依次读入各个子存储单元。需要说明的是,为了便于对随机存储单元输出解析数据的时间点进行控制,在译码装置中可以设置一个计数器,该计时器用于记录当前读入随机存储单元的解析数据存储于第几个子存储单元,初始化时,将计该计数器清零。
[0033]在读入解析数据的过程中,基于读入的解析数据依序写入各个子存储单元,计数器的计数值不断递增,例如当解析数据写满第I个子存储单元时,计数器的计数值递增I(此时计数值为I)、当解析数据写满第2个子存储单元时,计数器的计数值再递增1(此时计数值为2)、…、以此类推。当满足如步骤S2的条件(即当第一数量个子存储单元存满解析数据时),则将这些解析数据输出至第二数量个译码器进行译码。此时,计数器的计数值累加到第一数量时(例如第一数量为N,则计数器的计数值为N),此时计数器再度清零,这N个子存储单元存储的解析数据将输出至第二数量个译码器进行译码。后续的解析数据将从第N+1个子存储单元开始继续读入,计数器的计数值重新开始计数。
[0034]也就是说,在读入随机存储单元的解析数据逐一写满子存储单元过程中,子存储单元先缓存已读入的解析数据,每当存满一定数目(即第一数量)个子存储单元时,将这些子存储单元中存储的解析数据同时输出至第二数量个译码器进行译码。在本实施例中,第一数量与第二数量相等,以保证子存储单元与译码器一一对应,使得这些子存储单元中存储的解析数据都可以输出至一个对应的译码器进行译码,这样每个译码器也可以同时对读入的解析数据进行译码处理。
[0035]这样可以保证对解析数据进行译码处理过程中,子存储单元的读写逻辑同步且一致。进一步地,通常每个译码器对应多个缓存单元(不同于本实施例中所说的随机存储单元和子存储单元),采用本实施例的译码方法还使得多个(第二数量个)译码器对解析数据进行每次迭代译码时,各个译码器所读写的缓存单元的存储资源能够共用,即原来一个缓存单元的存储位宽和解析数据的位宽一样,但是需要第二数量倍个(即N倍个),而共用后(由于读写节拍一致),一个缓 存单元的存储位宽等于多个(第二数量个)解析数据的位宽,对第二数量个译码器只需要使用一个缓存单元,从而提高译码器的存储效率。
[0036]当满足如步骤S13的条件,即当随机存储单元的地址已累加到至结束地址(该结束地址为所有子存储单元中最后一个子存储单元的结束地址)时,地址将不再累加,后续读入的解析数据将再次存储至该随机存储单元的起始地址对应的子存储单元。而后则继续依照步骤Sll所述,按照地址累加顺序读入解析数据存储至各个子存储单元中,如此循环往复,直至读入所有解析数据并完成对这些解析数据的译码处理。
[0037]与现有技术不同的是,所述第一数量、第二数量以及随机存储单元中所有子存储单元的数目是根据解析数据的读入速率与译码器的译码速率之比来确定的。一般而言,在译码装置中所使用的译码器采用的是相同逻辑资源结构,其译码速率是固定的。在对解析数据的进行译码处理时,基于不同的解析数据的读入速率,可以设定相适应的译码器的数目(即第二数量)。当解析数据的读入速率越高、码字越短,则可以设定较多数目的译码器;反之,若解析数据的读入速率越低、码字越长,则可以设定较少数目的译码器。
[0038]针对设定的第二数量(第一数量等于第二数量),进一步设定随机存储单元中所有子存储单元的数目。在设定子存储单元的数目时,还需要考虑的条件是:每当将第一数量个子存储单元中存储的解析数据输出至第二数量个译码器进行译码时,该第二数量子译码器已完成对上一次读入的解析数据的译码处理。在本实施例中,设定的子存储单元的数目为第一数量的2倍。
[0039]根据本实施例提供的解析数据的译码方法,可以应用在对LDPC码的译码处理场景下。相应地,在本实施例中,所述译码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。所述子存储单元的深度为一个LDPC码字的长度。所述子存储单元的宽度由所述解析数据的位宽来确定。
[0040]下面结合具体的译码装置的结构示意图对上述解析数据的译码方法的实施方式进行描述。
[0041]如图3所示的是本发明的译码装置的一个具体实施例的结构示意图。参考图3,所述译码装置包括:
随机存储单元RAM,包括2N个子存储单元,例如RAM1、RAM2、…、RAMN、RAMN+1、…、RAM2N),这2N个子存储单元构成一整块RAM,数据地址从RAM1的起始地址累加至RAM2n的结束地址。
[0042]N个译码器,例如,译码器1、译码器2、…、译码器N。在本实施例中,所有子存储单元的数目是所述译码器的数目的2倍。
[0043]第一数据选择器,用于选通第一数量个(本实施例中为N个)子存储单元并将这些子存储单元中存储的解析数据读入至第二数量个(本实施例中为N个)译码器进行译码。
[0044]第二数据选择器,用于选通其中一个译码器并将经过译码后的解析数据输出。
[0045]计数器(图中未示出),用于依照预定方式对当前读入解析数据的子存储单元进行计数,其中所述预定方式包括在初始化时将计数器的计数值清零,每当计数值累加到第一数量时再度清零。
[0046]在本实施例中,所述译 码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。每个子存储单元的深度为一个LDPC码字的长度,各个子存储单元的宽度由所述解析数据的位宽来确定。
[0047]在对解析数据进行译码处理过程中,解析数据从随机存储单元的起始地址并按地址累加顺序读入各个子存储单元,初始化时,计数器清零。当写地址从第I个LDPC块开始地址累加到第N个LDPC块结束地址时(此时计数器的计数值从I累加到N),读入的解析数据依序(即地址累加顺序)写入这N个子存储单元,各个子存储单元先缓存已存储的解析数据。
[0048]直到第N个LDPC块所对应的比特软值数据正好写满RAMn的空间,第一数据选择器选通这N个子存储单元并将这N个子存储单元(即RAM1、RAM2、…、RAMn)缓存的解析数据同时并行读入相应的LDPC译码器进行译码,此时计数器再度清零。在本实施例中,这N个子存储单元分别对应一个译码器,例如,RAM1对应译码器1、RAM2对应译码器2、…、RAMn对应译码器N。
[0049]接着,读入的解析数据继续开始写入RAMN+1,此时计数器重新开始计数、与上述过程相类似地,当写地址从第N+1个LDPC块开始地址累加到第2N个LDPC块结束地址时(此时计数器的计数值再次累加到N),读入的解析数据依序(即地址累加顺序)写入这N个子存储单元,各个子存储单元也先缓存这些解析数据。当第2N个LDPC块所对应的比特软值数据正好写满RAM2n的空间,第一数据选择器则选通这N个子存储单元并将这N个子存储单元(即RAMn+1、RAMn+2、…、RAM2n)缓存的解析数据同时并行读入相应的LDPC译码器进行译码,并经由第二数据选择器分别将经由各个译码器完成译码的解析数据输出。当然,这一过程需要满足的条件是:当将第N+1个至第2N个子存储单元中存储的解析数据输出至这N个译码器进行译码时,这N个译码器已完成对之前由第I个至第N个子存储单元读入的解析数据的译码处理。
[0050]然后,写地址不再进行累加,而是循环到整块RAM的起始地址(即等于RAM1的起始地址),接下来得到的解析数据又开始写入RAM1,如此往复,直至所有需译码的解析数据都已读入及完成译码处理,并通过第二数据选择器输出。
[0051 ] 本发明实施例还提供了 一种译码装置。该译码装置包括:
适于从起始地址开始并按地址累加顺序读入解析数据的随机存储单元,其中所述随机存储单元包括多个子存储单元。
[0052]适于对经由第一数量个子存储单元输出的解析数据进行译码的第二数量个译码器。其中,所述第一数量与第二数量相等,且所述第一数量、第二数量和所有子存储单元的数目关联于解析数据的读入速率与译码器的译码速率之比。
[0053]适于选通第一数量个子存储单元并将这些子存储单元中存储的解析数据读入至第二数量个译码器进行译码的第一数据选择器。
[0054]适于选通其中一个译码器并将经过译码后的解析数据输出的第二数据选择器。
[0055]适于依照预定方式对当前读入解析数据的子存储单元进行计数的计数器,其中所述预定方式包括在初始化时将计数器的计数值清零,每当计数值累加到第一数量时再度清零。
[0056]所述译码装置的具体结构可以参考如图3所示的译码装置的结构示意图,该译码装置的译码处理流程可以参考上文中实施例的描述,在此不再赘述。
[0057]本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。
【权利要求】
1.一种译码装置,其特征在于,包括: 适于从起始地址开始并按地址累加顺序读入解析数据的随机存储单元,其中所述随机存储单元包括多个子存储单元; 适于对经由第一数量个子存储单元输出的解析数据进行译码的第二数量个译码器;其中,所述第一数量与第二数量相等,且所述第一数量、第二数量和所有子存储单元的数目关联于解析数据的读入速率与译码器的译码速率之比。
2.如权利要求1所述的译码装置,其特征在于,所述子存储单元的数目为第一数量的2倍。
3.如权利要求1所述的译码装置,其特征在于,所述译码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。
4.如权利要求3所述的译码装置,其特征在于,所述子存储单元的深度为一个LDPC码字的长度。
5.如权利要求3所述的译码装置,其特征在于,所述子存储单元的宽度由所述解析数据的位宽来确定。
6.如权利要求1所述的译码装置,其特征在于,所述译码装置还包括: 适于选通第一数量个子存储单元并将这些子存储单元中存储的解析数据读入至第二数量个译码器进行译码的第一数据选择器; 适于选通其中一个译码器并将经过译码后的解析数据输出的第二数据选择器。
7.如权利要求1所述的译码装置,其特征在于,所述译码装置还包括: 适于依照预定方式对当前读入解析数据的子存储单元进行计数的计数器,其中所述预定方式包括在初始化时将计数器的计数值清零,每当计数值累加到第一数量时再度清零。
8.一种利用权利要求1所述的译码装置对解析数据进行译码的方法,其特征在于,包括: 从随机存储单元的起始地址并按地址累加顺序读入解析数据,其中所述随机存储单元包括多个子存储单元; 每当第一数量个子存储单元存满解析数据时,将已存储的解析数据输出至第二数量个译码器进行译码; 当该随机存储单元的地址已累加至结束地址时,读入的解析数据再次存储至该随机存储单元的起始地址对应的子存储单元。
9.如权利要求8所述的对解析数据进行译码的方法,其特征在于,所述子存储单元的数目为第一数量的2倍。
10.如权利要求8所述的对解析数据进行译码的方法,其特征在于,在对解析数据进行译码过程中,每当将第一数量个子存储单元中存储的解析数据输出至第二数量个译码器进行译码时,该第二数量子译码器已完成对上一次读入的解析数据的译码处理。
11.如权利要求8所述的对解析数据进行译码的方法,其特征在于,所述译码器为LDPC译码器,所述解析数据为LDPC码字对应的比特软值数据。
12.如权利要求11所述的对解析数据进行译码的方法,其特征在于,所述子存储单元的深度为一个LDPC码字的长度。
13.如权利要求11所述的对解析数据进行译码的方法,其特征在于,所述子存储单元的宽度由所述解析数据的位宽来确定。
【文档编号】H03M13/11GK103532569SQ201310344713
【公开日】2014年1月22日 申请日期:2013年8月9日 优先权日:2013年8月9日
【发明者】徐胤, 何大治, 黄巍, 李青, 蓝威涛, 张文军 申请人:上海数字电视国家工程研究中心有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1