CN102142926B - 保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 - Google Patents
保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 Download PDFInfo
- Publication number
- CN102142926B CN102142926B CN201010254630.3A CN201010254630A CN102142926B CN 102142926 B CN102142926 B CN 102142926B CN 201010254630 A CN201010254630 A CN 201010254630A CN 102142926 B CN102142926 B CN 102142926B
- Authority
- CN
- China
- Prior art keywords
- data
- multiplexer
- block
- switching network
- resource consumption
- 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.)
- Active
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
- Time-Division Multiplex Systems (AREA)
Abstract
本发明提供一种保证吞吐量时降低资源消耗的处理方法、处理单元及译码器。该译码器包括N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器;Q个处理单元,分别与每块第一交换网络的Q个第二复用器连接,用于并行处理N块复用器输出的数据;N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器,每块第二交换网络的Q个第二解复用器分别与Q个处理单元连接,每块第二交换网络用于对输入的Q个数据进行解复用处理,输出L个数据。本发明实施例可以在保证吞吐量时降低资源消耗。
Description
技术领域
本发明涉及数据处理技术,尤其涉及一种保证吞吐量时降低资源消耗的处理方法、处理单元及译码器。
背景技术
低密度奇偶效验码(Low Density Parity Code,LDPC)是一种具有可逼近香农限的增益特性的前向纠错(Forward Error Correction,FEC)码字,但是LDPC码的译码实现所消耗的逻辑资源很大。准循环LDPC(Quasi-Cyclic,QC-LDPC)是一种特殊的LDPC码,它的校验矩阵除了具有LDPC码共有的稀疏性特性,还有一个典型特征是校验矩阵由一系列循环矩阵构成,该循环矩阵称为校验矩阵的子矩阵,例如,由M行N列的M×N个度为1的子矩阵组成,每个子矩阵为L×L的矩阵。在具有优良性能的同时,QC-LDPC码更容易实现编解码。
现有LDPC译码器中,校验矩阵可以按行分为M层或者按列分为N层,每层具有L行或者L列,在每层内由L个串行处理单元(SerialProcessing Unit,SPU)并行处理L行或者L列对应的码字信息,同时每个SPU串行处理一行对应的码字信息,即需要等到与一行相关的所有数据都读入之后才能输出处理结果。并且,每个分层之间是串行处理的,即SPU处理完一层所对应的信息后,再处理下一层信息。对于需要大吞吐量的译码器来说,这样的串行译码结构所耗费的逻辑资源是巨大甚至难以实用化的。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:现有技术中为了实现大的吞吐量,资源消耗较大。
发明内容
本发明实施例是提供一种保证吞吐量时降低资源消耗的处理方法、处理单元及译码器,用以解决现有技术中存在的在高吞吐量时资源消耗较大的问题。
一方面,本发明实施例提供了一种处理单元,包括:
P个第一复用器,用于对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块中数据的个数,N=n×P;
P个处理模块,分别与所述P个第一复用器连接,用于并行处理所述第一复用器输出的数据;
P个第一解复用器,分别与所述P个处理模块连接,用于对所述处理模块输出P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
另一方面,本发明提供了一种译码器,包括:
N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器,每块第一交换网络用于对输入的L个数据进行复用处理,输出Q个数据,其中,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q;
Q个处理单元,分别与每块第一交换网络的Q个第二复用器连接,用于并行处理N块第一交换网络输出的数据;
N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器,每块第二交换网络的Q个第二解复用器分别与Q个处理单元连接,每块第二交换网络用于对输入的Q个数据进行解复用处理,输出L个数据。
再一方面,本发明实施例提供了一种译码器,包括上述的处理单元,还包括:
N块交换网络,每块交换网络分别与每个处理单元连接,每块交换网络包括至少两个的移位模块,每个移位模块的步长不同,其中,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数。
一方面,本发明实施例提供了一种保证吞吐量时降低资源消耗的处理方法,包括:
采用P个第一复用器对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块的数据的个数,N=n×P;
采用P个处理模块并行处理所述P个数据;
采用P个第一解复用器对并行处理后的P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
另一方面,本发明实施例提供了一种保证吞吐量时降低资源消耗的处理方法,包括:
采用每块第一交换网络接收输入的L个数据,并输出Q个数据,其中,共N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q;
采用Q个处理单元并行处理N块第一交换网络输出的数据;
采用每块第二交换网络对输入的Q个数据进行解复用处理,输出L个数据,其中,共N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器。
由上述技术方案可知,本发明实施例通过对输入的数据进行复用处理,可以使得后续并行处理的模块数目降低,降低资源消耗;因此,本发明实施例可以在保证高吞吐量时,降低资源消耗。
附图说明
为了更清楚地说明本发明实施例或者现有技术中的技术方案,下面将对实施例或者现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中LDPC译码器的结构示意图;
图2为现有技术中QC-LDPC码的校验矩阵的结构示意图;
图3为现有技术中的信息处理器按照层处理时的时序示意图;
图4为本发明实施例中的信息处理器按照子层处理时的时序示意图;
图5为本发明实施例中进行子层划分后译码器的结构示意图;
图6为本发明第一实施例的译码器结构示意图;
图7为本发明第二实施例的方法流程示意图;
图8为现有技术中的处理单元对输入数据进行全并行处理的时序示意图;
图9为现有技术中的处理单元对输入数据进行全串行处理的时序示意图;
图10为本发明第三施例的处理单元的结构示意图;
图11为本发明第四实施例的方法流程示意图;
图12为本发明第五实施例的交换网络的结构示意图;
图13为本发明第六实施例的译码器结构示意图
图14为本发明第七实施例的方法流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为现有技术中LDPC译码器的结构示意图,包括存储器11、交换网络12、信息处理器13、控制序列发生器14和流程控制器15。其中,存储器11存储码字信息,例如后验概率(A Posteriori Probability,APP)信息;上述模块的交换流程如下:存储器11中的码字信息中的一段数据被读取后,送入交换网络12,通过交换网络12获得期望的顺序,送入信息处理器13;信息处理器13对数据进行处理,信息处理器13由处理单元并行组成。信息处理器13将处理得到的更新值再送到交换网络12,交换网络12对数据进行交换获得原始顺序的数据,之后存储到存储器11的相应位置,更新之前读取的数据。至此完成一段数据的一次更新。继续读取下一段数据,重复上述过程,直到读完一个码字,这时就完成了一个码字的迭代更新。重复上述过程,共进行预先设定的次数的迭代更新后,完成译码,最终的译码结果存储在存储器11中。其中,交换网络12对数据进行交换获得的顺序由控制序列发生器14控制,控制序列发生器14产生控制信号,以控制交换网络12对输入的数据进行不同顺序的交换。另外,各模块的数据存在读写等操作,例如,首先从存储器11读取数据,之后再将数据写入存储器11中,因此,各模块需要读写时序控制,而流程控制器15用于进行读写时序等控制。具体数据流及控制流走向可以参见图1,图1中的实线表示数据流,虚线表示控制流。
图2为现有技术中QC-LDPC码的校验矩阵的结构示意图,参见图2,校验矩阵H由M行N列的子矩阵组成,每个子矩阵为L行L列的矩阵,每个子矩阵是单位矩阵循环移位后得到的,单位矩阵为对角线上的元素为1,其余元素为0的矩阵。
根据子矩阵的界限位置,可以将校验矩阵分为M层的水平层,每层为L行;或者,分为N层的垂直层,每层为L列。译码时,为了保证译码性能同时降低运算迭代次数,可以采用混合的置信传播(Belief Propagation,BP)算法,该算法中,对校验矩阵对应的信息进行逐层运算,在同一次迭代内,本层运算更新的信息要在下一层运算时使用。
图3为现有技术中的信息处理器按照层处理时的时序示意图,参见图3,假设每层包含的行数L为99,则第1层的1~99行对应的时序操作包括读(RE)、操作-1、操作-2、操作-3和写(WR),其中,操作-1、操作-2、操作-3为信息处理器所需进行的逻辑操作。本实施例是以操作-1、操作-2、操作-3为例,但是,逻辑操作的个数并不限于3个。
由于分层之间是串行处理的,因此,第2层的1~99行对应的时序操作要等到第1层的时序操作完成之后,即,参加图3,第2层的逻辑操作读(RE)在第1层的逻辑操作写(WR)之后。由于各层之间需要等待,需要***一定的等待时钟,造成逻辑资源的空闲浪费。
上述按照层进行并行处理的方式,需要L个处理单元,并且各层之间需要串行处理,需要较大的延时,因此在达到一定的吞吐量需求时,需要较多的资源消耗。
为了降低资源消耗,本发明实施例可以对信息处理器中的处理单元的个数进行优化。对处理单元的个数进行优化是通过对校验矩阵的每层再次进行划分,分为多个子层,对每个子层对应的数据进行并行处理,而不是对每个层对应的数据进行处理。例如,L=99行,每层分为m=3个子层,每个子层包含Q=33行。如果以层为单位进行处理,则需要99个处理单元,而以子层为单位进行处理,仅需要Q=33个处理单元。
图4为本发明实施例中的信息处理器按照子层处理时的时序示意图,参见图4,由于各子层之间的信息不相关(这是由于H矩阵的子矩阵的每行每列只有一个非零元素决定的),因此,各个子层对应的数据之间可以流水作业,即不必如图3所示的,第2层对应的数据执行要等到第1层对应的数据执行结束之后,例如,参见图4,第2子层对应的时序RE是不必等待第1子层对应的时序操作WR执行完的。图3所示的方式中,各层对应的码字数据执行的时延差为每个层的操作时间,而按照上述划分子层后的流水方式,各层对应的码字数据执行的时延差是小于每个层的操作时间的,因此可以降低时延,提高吞吐量。
由于本实施例需要对各层划分为子层,因此需要确定最优的子层数m。其中,可以计算不同的m下的吞吐量和资源消耗情况,将满足吞吐量需求且资源消耗最少时对应的m作为最优子层数。其中,在不同m下的逻辑结构设计可以如下所示。
图5为本发明实施例中进行子层划分后译码器的结构示意图,参见图5,包括存储单元51、第一交换网络52、处理单元53、第二交换网络54。其中,存储单元51分为N块,每块包含L个APP信息;每块第一交换网络52由Q个第二复用器(MUX)组成,每个第二复用器为m:1的复用器;每块第二交换网络54由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器。其中,L=m×Q。
APP信息从存储单元51中读出后,送入第一交换网络52,得到期望的顺序及个数,经过处理单元53的处理后,再经过第二交换网络54恢复为原始的顺序及个数,最后保存在存储单元51中,用以更新原始值。
通过图5所示的结构,可以计算在不同的子层数时的吞吐量及资源消耗情况,例如,m确定后,则采用的存储单元、复用器、处理单元、解复用器的情况都是确定的,因此可以统计出资源消耗情况;同时m确定后,可以根据译码延时、码字长度计算出吞吐量。因此,可以计算出不同的m时的吞吐量和资源消耗情况,之后,可以将达到吞吐量需求且资源消耗最少时对应的m作为最优的子层数。
通过上述分析,得到最优的子层数m后,则可以对现有的信息处理器进行优化,即现有的信息处理器包括L个并行处理的处理单元,而发明实施例中可以包括复用器、处理单元和解复用器,其中,处理单元的个数为Q个。本实施例虽然需要增加复用器及解复用器,但是,由于逻辑资源消耗主要在处理单元中,而本实施例可以明显降低处理单元的个数(降为原来的1/m),因此,可以降低逻辑资源开销。具体地,本实施例提供如下所示的译码器。
图6为本发明第一实施例的译码器结构示意图,本实施例可以保证吞吐量时降低资源消耗。参见图6,本实施例包括Q×N个第二复用器61、Q个处理单元62和Q×N第二解复用器63。其中,Q个第二复用器61组成一个第一交换网络,第一交换网络共N块,每块第一交换网络由Q个第二复用器61(第二复用器1~第二复用器Q)组成,每个第二复用器61为m:1的复用器,每块第一交换网络用于对输入的L个数据进行复用处理,输出Q个数据,其中,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q;Q个处理单元62(处理单元1~处理单元Q)分别与每块第一交换网络的Q个第二复用器61连接,用于并行处理N块第一交换网络输出的数据;N块第二交换网络,每块第二交换网络由Q个第二解复用器63(第二解复用器1~第二解复用器Q)组成,每个第二解复用器63为1:m的解复用器,每块第二交换网络分别与Q个处理单元连接,每块第二交换网络用于对输入的Q个数据进行解复用处理,输出L个数据。
本实施例只需Q个处理单元,而不是如现有技术中采用L个处理单元,可以降低资源消耗,并且各子层对应的数据之间可以流水处理,可以提高吞吐量,因此,本实施例可以在保证吞吐量时降低资源消耗。
对应于该结构,本发明实施例提供了一种保证吞吐量时降低资源消耗的处理方法,具体如下:
图7为本发明第二实施例的方法流程示意图,本实施例可以采用图6所述的信息处理器对数据进行处理,参见图7,包括:
步骤71:采用每块第一交换网络接收输入的L个数据,并输出Q个数据,其中,共N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q;
步骤72:采用Q个处理单元并行处理N块第一交换网络输出的数据;
步骤73:采用每块第二交换网络对输入的Q个数据进行解复用处理,输出L个数据,其中,共N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器。
本实施例只需Q个处理单元,而不是如现有技术中采用L个处理单元,可以降低资源消耗,并且各子层对应的数据之间可以流水处理,可以提高吞吐量,因此,本实施例可以在保证吞吐量时降低资源消耗。
上述是对处理单元的个数进行的优化,还可以对处理单元本身进行优化,具体如下:
每个处理单元一次处理一行对应的数据,例如,N为10,则每个处理单元一次处理10个数据。其中,处理单元可以对该10个数据进行全并行处理,也可以进行全串行处理。
图8为现有技术中的处理单元对输入数据进行全并行处理的时序示意图,参见图8,是对10个数据同时进行处理,包括RE、min、WR,其中,min表示求最小和操作,该操作只是示例,也可以进行其他操作。
全并行处理可以对10个数据同时进行计算,但是其中的min需要占用很大的资源,并且需要多个时钟周期才能完成。
图9为现有技术中的处理单元对输入数据进行全串行处理的时序示意图,参见图9,是对各数据分别进行处理,每个数据依次进行读(RE)操作及min操作,之后,等10个数据均进行完min操作之后,再依次进行写(WR)操作。
全串行所需的逻辑资源很少,min运算只需一个时钟周期即可完成,但是,这时的译码延时是最大的,也就降低了译码器的吞吐量。
本实施例中,为了满足吞吐量需求并且尽量降低逻辑资源消耗情况,可以对处理单元输入的数据进行分块,例如分为n块,之后以并行度为n对输入数据进行并行处理。此时,需要确定最优的分块数n。类似于信息处理器的设计,对于处理单元,也可以计算不同分块数时对应的吞吐量及资源消耗情况,将达到吞吐量需求且资源消耗最少时对应的分块数确定为最优分块数。
图10为本发明第三施例的处理单元的结构示意图,包括P个第一复用器101(第一复用器1~第一复用器P)、P个处理模块102(处理模块1~处理模块P)和P个第一解复用器103(第一解复用器1~第一解复用器P);P个第一复用器101用于对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块中数据的个数,N=n×P;P个处理模块102分别与所述P个第一复用器101连接,用于并行处理所述第一复用器101输出的数据;P个第一解复用器103分别与所述P个处理模块102连接,用于对所述处理模块102输出P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器103分别为1:n的解复用器。
类似于对层划分子层的处理,本实施例也可以计算在不同的分块时对应的吞吐量和逻辑资源情况,确定得到最优的分块数n。之后,采用上述1:n的复用器、n:1的解复用器及处理模块进行处理。其中,处理模块102的具体实现可以采用现有的处理单元中的进行并行处理的模块。
本实施例通过采用复用器,可以实现对输入数据的分块,进而降低处理模块的个数及提高处理延时,实现在保证吞吐量时降低资源消耗。
对应于该结构,本发明实施例提供了一种保证吞吐量时降低资源消耗的处理方法,具体如下:
图11为本发明第四实施例的方法流程示意图,本实施例可以采用图10所述的信息处理器对数据进行处理,参见图11,包括:
步骤111:采用P个第一复用器对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块的数据的个数,N=n×P;
步骤112:采用P个处理模块并行处理所述P个数据;
步骤113:采用P个第一解复用器对并行处理后的P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
本实施例通过采用复用器,可以实现对输入数据的分块,进而降低处理模块的个数及提高处理延时,实现在保证吞吐量时降低资源消耗。
为了保证一定的吞吐量并降低资源消耗,第一实施例和第三实施例可以分别实施,也可以同时实施例。即可以对处理单元的个数进行优化,也可以对处理单元内部进行优化,也可以对处理单元的个数及处理单元的内部均进行优化。
上述是以水平方向划分子层为例,可以理解的是,以垂直方向划分子层时依旧可以参照执行。
上述是对信息处理器的优化方案,本发明实施例还提供了对交换网络的优化方案。
图12为本发明第五实施例的交换网络的结构示意图,包括至少两个的移位模块121,每个移位模块121的步长不同。
参见图10,例如,设置三种步长:step1、step2、step3,则每次输入到输出可以移动的位数为:k=n1×step1+n2×step2+n3×step3,其中,n1、n2、n3分别为相应步长下移动的步数。
现有LDPC译码器中,交换网络是基于循环移位的交换,例如,输入数据为1,2,3,…,N,输出数据为k,k+1,k+2,…,N,1,2,3,…,k-1,假设循环移位步长为1,则获得上述交换需要移动k步。当k比较大时,需要很大的延时,造成吞吐量较低。为了提高吞吐量,交换网络也可以采用线路交换的方式来实现,该方式中,每种可能的输入输出数据之间设置一条链路,该方式可以提高吞吐量,但是当N较大时,消耗的资源很大。
要实现移动的位数为k,如果采用现有的固定步长为1的移位方式,需要移动k步,而本实施例只需n1+n2+n3,当k较大时,n1+n2+n3远远小于k,因此,本实施例可以降低时延,提高吞吐量;另外,当输入输出的数据分别为N个时,如果采用现有的线路交换的方式,需要部署N个线路,而本实施例只需部署3(设置的步长的个数)个线路,当N较大时,N远远大于3,因此,本实施例可以降低资源消耗。
其中,本实施例中采用的多种步长可以根据实际需要进行设置,并不限于3个,具体数值也无限制。
本实施例采用变步长、多级移位的方式,可以避免单一移位方式造成的时延较长的问题,可以避免多线路交换造成的资源消耗较大的问题,实现降低延时及降低资源消耗。
本实施例的变步长交换网络并不限于LDPC译码器中,其他N个输入到N个输出的数据路由交换应用场景均可适用。
基于图10所示的处理单元及图12所示的交换网络,本发明实施例可以提供一种译码器,参见图13,图13为本发明第六实施例的译码器结构示意图,包括N块交换网络131和L个处理单元132,其中,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,具体地,每块交换网络131的结构可以参见图10所示,每个处理单元132的结构可以参见图12所示。
对应于该结构,本发明实施例提供了一种保证吞吐量时降低资源消耗的处理方法,具体如下:
图14为本发明第七实施例的方法流程示意图,参见图14,包括:
步骤141:采用N块交换网络对输入的数据进行至少两次的移位操作,其中,每次移位的步长不同,并输出N个数据;
步骤142:采用P个第一复用器对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块的数据的个数,N=n×P;
步骤143:采用P个处理模块并行处理所述P个数据;
步骤144:采用P个第一解复用器对并行处理后的P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
本实施例采用变步长、多级移位的方式,可以避免单一移位方式造成的时延较长的问题,可以避免多线路交换造成的资源消耗较大的问题,实现降低延时及降低资源消耗。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种译码器,其特征在于,包括:
N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器,每块第一交换网络用于对输入的L个数据进行复用处理,输出Q个数据,其中,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q,其中,所述最优分层数m采用如下方式确定:计算在不同的分层数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分层数为最优分层数m;
Q个处理单元,分别与每块第一交换网络的Q个第二复用器连接,用于并行处理N块第一交换网络输出的数据;
N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器,每块第二交换网络的Q个第二解复用器分别与Q个处理单元连接,每块第二交换网络用于对输入的Q个数据进行解复用处理,输出L个数据;
其中,所述处理单元,包括:
P个第一复用器,用于对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块中数据的个数,N=n×P,其中,所述最优分块数n采用如下方式确定:计算在不同的分块数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分块数为最优分块数n;
P个处理模块,分别与所述P个第一复用器连接,用于并行处理所述第一复用器输出的数据;
P个第一解复用器,分别与所述P个处理模块连接,用于对所述处理模块输出P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
2.一种译码器,其特征在于,包括L个处理单元,还包括:
N块交换网络,每块交换网络分别与每个处理单元连接,每块交换网络包括至少两个的移位模块,每个移位模块的步长不同,其中,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数;
其中,所述处理单元,包括:
P个第一复用器,用于对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块中数据的个数,N=n×P,其中,所述最优分块数n采用如下方式确定:计算在不同的分块数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分块数为最优分块数n;
P个处理模块,分别与所述P个第一复用器连接,用于并行处理所述第一复用器输出的数据;
P个第一解复用器,分别与所述P个处理模块连接,用于对所述处理模块输出P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
3.一种保证吞吐量时降低资源消耗的处理方法,其特征在于,包括:
采用P个第一复用器对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块的数据的个数,N=n×P,其中,所述最优分块数n采用如下方式确定:计算在不同的分块数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分块数为最优分块数n;
采用P个处理模块并行处理所述P个数据;
采用P个第一解复用器对并行处理后的P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器;
采用N块交换网络对输入的数据进行至少两次的移位操作,其中,每次移位的步长不同,并输出N个数据分别给所述P个第一复用器。
4.一种保证吞吐量时降低资源消耗的处理方法,其特征在于,包括:
采用每块第一交换网络接收输入的L个数据,并输出Q个数据,其中,共N块第一交换网络,每块第一交换网络由Q个第二复用器组成,每个第二复用器为m:1的复用器,m为预先确定的校验矩阵的最优分层数,N为校验矩阵的列数,L为校验矩阵每层包含的行数或者列数,Q为校验矩阵每个子层包含的行数或者列数,L=m×Q,其中,所述最优分层数m采用如下方式确定:计算在不同的分层数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分层数为最优分层数m;
采用Q个处理单元并行处理N块第一交换网络输出的数据;
采用每块第二交换网络对输入的Q个数据进行解复用处理,输出L个数据,其中,共N块第二交换网络,每块第二交换网络由Q个第二解复用器组成,每个第二解复用器为1:m的解复用器;
其中,每个所述处理单元采用如下方式处理所述N块第一交换网络输出的数据:
采用P个第一复用器对输入的N个数据进行复用处理,输出P个数据,其中,每个第一复用器为n:1的复用器,n为预先获取的最优分块数,P为每个分块的数据的个数,N=n×P,其中,所述最优分块数n采用如下方式确定:计算在不同的分块数时的资源消耗情况及吞吐量,确定达到吞吐量需求且资源消耗最少时的分块数为最优分块数n;
并行处理所述P个数据;
采用P个第一解复用器对并行处理后的P个数据进行解复用处理,输出N个数据,其中,每个第一解复用器分别为1:n的解复用器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010254630.3A CN102142926B (zh) | 2010-08-13 | 2010-08-13 | 保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010254630.3A CN102142926B (zh) | 2010-08-13 | 2010-08-13 | 保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102142926A CN102142926A (zh) | 2011-08-03 |
CN102142926B true CN102142926B (zh) | 2014-12-31 |
Family
ID=44410181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010254630.3A Active CN102142926B (zh) | 2010-08-13 | 2010-08-13 | 保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102142926B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9536495B2 (en) * | 2014-01-31 | 2017-01-03 | Samsung Display Co., Ltd. | System for relayed data transmission in a high-speed serial link |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101106381A (zh) * | 2007-08-09 | 2008-01-16 | 上海交通大学 | 分层的低密度校验码译码器及译码处理方法 |
CN101212277A (zh) * | 2006-12-29 | 2008-07-02 | 中兴通讯股份有限公司 | 支持多协议标准的ldpc码译码装置 |
-
2010
- 2010-08-13 CN CN201010254630.3A patent/CN102142926B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101212277A (zh) * | 2006-12-29 | 2008-07-02 | 中兴通讯股份有限公司 | 支持多协议标准的ldpc码译码装置 |
CN101106381A (zh) * | 2007-08-09 | 2008-01-16 | 上海交通大学 | 分层的低密度校验码译码器及译码处理方法 |
Non-Patent Citations (1)
Title |
---|
苏凌杰 等.基于DTMB标准的新型LDPC译码器实现.《福州大学学报(自然科学版)》.2010,第38卷(第2期), * |
Also Published As
Publication number | Publication date |
---|---|
CN102142926A (zh) | 2011-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140223255A1 (en) | Decoder having early decoding termination detection | |
CN101106381B (zh) | 分层的低密度校验码译码器及译码处理方法 | |
US8966339B1 (en) | Decoder supporting multiple code rates and code lengths for data storage systems | |
US8996972B1 (en) | Low-density parity-check decoder | |
CN101800559B (zh) | 一种基于tdmp的高速可配置qc-ldpc码解码器 | |
CN101771421A (zh) | 基于tdmp的超高速低功耗qc-ldpc码解码器 | |
US9195536B2 (en) | Error correction decoder and error correction decoding method | |
CN101188426B (zh) | 用于对准循环结构的ldpc码进行并行处理的译码器及方法 | |
US20150227419A1 (en) | Error correction decoder based on log-likelihood ratio data | |
CN101777921B (zh) | 用于显式存储片上***的结构化ldpc码译码方法及装置 | |
KR102543059B1 (ko) | 저밀도 패리티 체크 코드의 디코딩 방법, 이를 수행하는 디코더 및 시스템 | |
US8225174B2 (en) | Decoding device and decoding method | |
CN103188035A (zh) | 迭代解映射解码方法和*** | |
CN102291153B (zh) | Cmmb中ldpc码的译码方法及部分并行译码器 | |
WO2012094179A1 (en) | Low latency simd architecture for multiple iterative decoders arranged parallel | |
EP2992429B1 (en) | Decoder having early decoding termination detection | |
CN101692611A (zh) | 一种基于simd结构的多标准ldpc译码器电路 | |
CN102142926B (zh) | 保证吞吐量时降低资源消耗的处理方法、处理单元及译码器 | |
CN104158549A (zh) | 一种极性码译码方法及译码装置 | |
CN104052500B (zh) | Ldpc码译码器及实现方法 | |
CN101958718B (zh) | 用于ldpc码的改进型半并行译码器和译码方法 | |
CN102611462B (zh) | 一种ldpc-cc译码算法及译码器 | |
CN115694513A (zh) | 一种基于移位型基图的超高吞吐率ldpc译码器 | |
CN102299719B (zh) | 一种非迭代式ldpc码译码器 | |
CN101777920B (zh) | 低密度奇偶校验码的编码方法和编码译码装置 |
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 |