Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020107437 - PROCÉDÉ DE DÉCODAGE DE DONNÉES ET DISPOSITIF ASSOCIÉ

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165   0166   0167   0168   0169   0170   0171   0172   0173   0174   0175   0176   0177   0178   0179   0180   0181   0182   0183   0184   0185   0186   0187   0188   0189   0190   0191   0192   0193   0194   0195   0196   0197   0198   0199   0200   0201   0202   0203   0204   0205   0206   0207   0208   0209   0210   0211   0212   0213   0214   0215   0216   0217   0218   0219   0220   0221   0222   0223   0224   0225   0226   0227   0228   0229   0230   0231   0232   0233   0234   0235   0236   0237   0238   0239   0240   0241   0242   0243   0244   0245   0246   0247   0248   0249   0250   0251   0252   0253   0254   0255   0256   0257   0258   0259   0260   0261   0262   0263   0264   0265   0266   0267   0268   0269   0270   0271   0272   0273   0274   0275   0276  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27  

附图

1   2A   2B   3   4   5   6   7   8   9   10   11  

说明书

发明名称 : 一种数据译码方法及相关设备

技术领域

[0001]
本申请涉及数据通信领域,尤其涉及一种数据译码方法及相关设备。

背景技术

[0002]
5G通信系统的下行业务信道采用低密度奇偶校验码(low density parity check code,LDPC)编译码方案,并且为了保证传输可靠性,系统支持混合自动请求重传(hybrid-automatic repeat-reQuest,HARQ)的重传调度策略。
[0003]
HARQ合并的流程是:当终端对数据传输译码错误时,会把当前数据传输中的一部分数据保存到缓冲区中,并在下一次数据传输时,从缓冲区中读取这部分数据再进行HARQ合并。LDPC是一种增量式的编码,初次数据一般对应核心编码矩阵,重传数据一般对应扩展矩阵,终端进行解速率匹配和HARQ合并后,终端需要处理的信息包括初传的核心矩阵部分信息,还有重传增加的扩展矩阵信息,即重传时需要处理的数据量往往大于初传数据的数据量。
[0004]
现有技术中,一般基于相同的最大迭代次数对初传数据以及重传数据译码,不过由于重传数据的数据量往往大于初传数据的数据量,而译码装置自身的能力规格是一定的,若仍然配置相同的最大迭代次数给初传数据和重传数据,可能导致译码装置对重传数据译码时的能力不足。
[0005]
发明内容
[0006]
本申请实施例提供了一种数据译码方法及相关设备,有效缓解了译码装置对重传数据译码时的能力不足的问题。
[0007]
有鉴于此,本申请第一方面提供一种数据译码方法,可以包括:
[0008]
译码装置首先接收数据包的初传数据并对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数,之后译码装置还将接收数据包的重传数据并对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数且第一最大迭代次数大于第二最大迭代次数。
[0009]
需要说明的是,初传数据以及重传数据均可以包括数据包的LDPC编码数据,并且译码装置接收到的是来自同一个数据源的初传数据和重传数据,例如,译码装置接收到的可以是同一个基站发送的同一个数据包中的初传数据和重传数据。
[0010]
在本申请实施方式中,分配给初传数据的最大迭代次数大于分配给重传数据的最大迭代次数,在基于LDPC编码中重传时需要处理的数据量往往大于初传数据量的情况下,有效缓解了译码装置对重传数据译码时的能力不足的问题。
[0011]
可选的,在一些可能的实施方式中,
[0012]
所述第一最大迭代次数对应于所述译码装置的能力规格的初传最大译码次数,所述第二最大迭代次数对应于所述译码装置的能力规格的重传最大译码次数。
[0013]
可选的,在一些可能的实施方式中,
[0014]
译码装置可以根据所述译码装置的能力规格,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[0015]
在本申请实施方式中,可以基于译码装置的能力规格确定初传的最大迭代次数以及重传的最大迭代次数,因此不管是对初传数据译码还是对重传数据译码,均保证了译码装置工作的稳定性。
[0016]
可选的,在一些可能的实施方式中,
[0017]
译码装置可以根据所述数据包的大小,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[0018]
在本申请实施方式中,提供了一种译码装置根据数据包的大小确定第一最大迭代次数以及第二最大迭代次数的具体实现方式,提高了本方案的实用性。
[0019]
可选的,在一些可能的实施方式中,
[0020]
译码装置可以根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定所述第二最大迭代次数。
[0021]
需要说明的是,若译码装置在译码的过程中需要对多次的重传数据译码,那么在每一次重传译码结束后都将统计该次的译码结果统计量,并结合该次的译码结果统计量来确定对下一次重传数据译码时的最大迭代次数。
[0022]
在本申请实施方式中,若初传数据译码失败,译码装置还可以对初传数据的译码结果进行统计得到译码结果统计量,进而结合数据包的大小以及译码结果统计量来确定第二最大迭代次数,例如,若初传数据译码结果比较好,可以在原基础上适当增加对重传数据译码时的最大迭代次数,提高了本方案的灵活性。
[0023]
可选的,在一些可能的实施方式中,
[0024]
译码装置还可以接收所述数据包的调度信息,所述数据包的调度信息用于指示所述数据包的大小。
[0025]
在本申请实施方式中,译码装置具体可以通过接收数据包的调度信息来确定数据包的大小,进一步提高了本方案的可实现性。
[0026]
本申请第二方面提供一种数据译码方法,可以包括:
[0027]
译码装置接收待译码的数据包,该数据包内含有LDPC编码数据,之后译码装置根据数据包的大小确定译码的最大迭代次数,并对数据包译码,其中,对数据包译码的迭代次数不超过最大迭代次数。
[0028]
需要说明的是,由于数据包是由多个部分构成的,译码装置对数据包译码具体是指对数据包中的LDPC编码数据进行译码。
[0029]
在本申请实施方式中,译码装置的能力规格是一定的,而译码装置可以根据数据包的大小来确定译码的最大迭代次数,例如,若数据包较大,对该数据包进行译码的最大迭代次数就相应的减少,保证了译码装置能力的稳定。
[0030]
可选的,在一些可能的实施方式中,
[0031]
译码装置还可以接收数据包的调度信息,其中,数据包的调度信息用于指示数据包的大小。
[0032]
在本申请实施方式中,译码装置具体可以通过接收数据包的调度信息来确定数据包的大小,提高了本方案的可实现性。
[0033]
可选的,在一些可能的实施方式中,
[0034]
译码装置接收数据包的初传数据,之后根据数据包的大小确定与初传数据对应的第一最大迭代次数,并对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数。
[0035]
在本申请实施方式中,提供了一种译码装置对初传数据译码的具体实现方式,提高了本方案的实用性。
[0036]
可选的,在一些可能的实施方式中,
[0037]
译码装置接收数据包的重传数据,之后根据数据包的大小确定与重传数据对应的第二最大迭代次数,并对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数。
[0038]
在本申请实施方式中,还提供了一种译码装置对重传数据译码的具体实现方式,提高了本方案的扩展性。
[0039]
可选的,在一些可能的实施方式中,
[0040]
在译码装置对初传数据译码结束后,译码装置还可以接收数据包的重传数据,之后根据数据包的大小以及初传数据译码的译码结果统计量确定与重传数据对应的第二最大迭代次数,并对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数。
[0041]
在本申请实施方式中,若初传数据译码失败,译码装置还可以对初传数据的译码结果进行统计得到译码结果统计量,进而结合数据包的大小以及译码结果统计量来确定第二最大迭代次数,例如,若初传数据译码结果比较好,可以在原基础上适当增加对重传数据译码时的最大迭代次数,提高了本方案的灵活性。
[0042]
本申请第三方面提供了一种译码装置,可以包括:
[0043]
接收单元,用于接收数据包的初传数据;
[0044]
译码单元,用于对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过第一最大迭代次数;
[0045]
所述接收单元,还用于接收所述数据包的重传数据,其中,所述初传数据以及所述重传数据均包括所述数据包的低密度奇偶校验码LDPC的编码数据;
[0046]
所述译码单元,还用于对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过第二最大迭代次数,所述第一最大迭代次数大于所述第二最大迭代次数。
[0047]
可选的,在一些可能的实施方式中,
[0048]
所述第一最大迭代次数对应于所述译码装置的能力规格的初传最大译码次数,所述第二最大迭代次数对应于所述译码装置的能力规格的重传最大译码次数。
[0049]
可选的,在一些可能的实施方式中,译码装置还可以包括:
[0050]
确定单元,用于根据所述译码装置的能力规格,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[0051]
可选的,在一些可能的实施方式中,译码装置还可以包括:
[0052]
确定单元,用于根据所述数据包的大小,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[0053]
可选的,在一些可能的实施方式中,译码装置还可以包括:
[0054]
确定单元,用于根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定所述第二最大迭代次数。
[0055]
可选的,在一些可能的实施方式中,所述接收单元还用于:
[0056]
接收所述数据包的调度信息,所述数据包的调度信息用于指示所述数据包的大小。
[0057]
本申请第四方面提供了一种译码装置,可以包括:
[0058]
接收单元,用于接收待译码的数据包,所述数据包内含有低密度奇偶校验码LDPC编码数据;
[0059]
确定单元,用于根据所述数据包的大小确定译码的最大迭代次数;
[0060]
译码单元,用于对所述数据包译码,其中,对所述数据包译码的迭代次数不超过所述最大迭代次数。
[0061]
可选的,在一些可能的实施方式中,
[0062]
所述接收单元,还用于接收所述数据包的调度信息,其中,所述数据包的调度信息用于指示所述数据包的大小。
[0063]
可选的,在一些可能的实施方式中,
[0064]
所述接收单元具体用于接收所述数据包的初传数据;
[0065]
所述确定单元具体用于根据所述数据包的大小确定与所述初传数据对应的第一最大迭代次数;
[0066]
所述译码单元具体用于对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过所述第一最大迭代次数。
[0067]
可选的,在一些可能的实施方式中,
[0068]
所述接收单元具体用于接收所述数据包的重传数据;
[0069]
所述确定单元具体用于根据所述数据包的大小确定与所述重传数据对应的第二最大迭代次数;
[0070]
所述译码单元具体用于对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[0071]
可选的,在一些可能的实施方式中,
[0072]
所述接收单元还用于接收所述数据包的重传数据;
[0073]
所述确定单元还用于根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定与所述重传数据对应的第二最大迭代次数;
[0074]
所述译码单元还用于对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[0075]
本申请第五方面提供了一种基带处理器,可以包括:处理单元和通信单元,所述处理单元包括通用中央处理器(central processing unit,CPU),微处理器或特定应用集成电路(application specific integrated circuit,ASIC),所述通信单元包括接口电路或 管脚,所述处理单元用于执行如本申请第三方面和第四方面任一可选实施方式中所述译码单元以及所述确定单元的操作,所述通信单元用于执行如本申请第三方面和第四方面任一可选实施方式中所述接收单元的操作。
[0076]
本申请第六方面提供了一种芯片系统,可以包括至少一个处理器,存储器和收发器,所述存储器、所述收发器和所述至少一个处理器通过线路互联,所述存储器中存储有指令,所述收发器用于执行如本申请第三方面和第四方面任一可选实施方式中所述接收单元的操作;所述至少一个处理器用于执行如本申请第三方面和第四方面任一可选实施方式中所述译码单元以及所述确定单元的操作。
[0077]
本申请第七方面提供了一种终端,可以包括:
[0078]
处理器、存储器、总线以及射频电路;
[0079]
所述射频电路用于执行如本申请第三方面和第四方面任一可选实施方式中所述接收单元的操作;
[0080]
所述存储器中存储有程序代码;
[0081]
所述处理器调用所述存储器中的程序代码时执行如本申请第三方面和第四方面任一可选实施方式中所述译码单元以及所述确定单元的操作。
[0082]
本申请第八方面提供了一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如本申请第一方面和第二方面任一可选实施方式中所述的方法。
[0083]
本申请第九方面提供了一种计算机程序产品,当其在计算机上运行时,使得计算机执行如本申请第一方面和第二方面任一可选实施方式中所述的方法。
[0084]
从以上技术方案可以看出,本申请实施例具有以下优点:
[0085]
本申请实施例中,译码装置首先接收数据包的初传数据并对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数,之后译码装置还将接收数据包的重传数据并对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数且第一最大迭代次数大于第二最大迭代次数。通过上述方式,分配给初传数据的最大迭代次数大于分配给重传数据的最大迭代次数,在基于LDPC编码中重传时需要处理的数据量往往大于初传数据量的情况下,有效缓解了译码装置对重传数据译码时的能力不足的问题。

附图说明

[0086]
图1为本申请实施例所应用的系统场景示意图;
[0087]
图2a为LDPC编码的校验矩阵示意图;
[0088]
图2b为LDPC编码的流程示意图;
[0089]
图3为本申请实施例数据译码方法的一个实施例示意图;
[0090]
图4为本申请实施例数据压缩方法的一个实施例示意图;
[0091]
图5为本申请实施例中对初传数据译码的流程示意图;
[0092]
图6为本申请实施例中对重传数据译码的流程示意图;
[0093]
图7为本申请实施例中译码装置的一个实施例示意图;
[0094]
图8为本申请实施例中译码装置为终端设备时的一种结构示意图;
[0095]
图9为本申请实施例中译码装置为终端设备时的另一种结构示意图;
[0096]
图10为本申请实施例中译码装置为终端设备时的另一种结构示意图;
[0097]
图11为本申请实施例中译码装置为终端设备时的另一种结构示意图。

具体实施方式

[0098]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0099]
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0100]
本申请主要应用的系统架构或者场景如图1所示,包括接入网设备和终端设备。接入网设备和终端设备均可以工作在许可频段或免许可频段上的基站和终端设备。无论是许可频段,还是免许可频段,在本申请中,都可以包括一个或多个载波,许可频段和非许可频段进行载波聚合,可以包括许可频段包括的一个或多个载波与非许可频段包括的一个或多个载波进行载波聚合。
[0101]
接入网设备可以是长期演进(long term evolution,LTE)系统或者授权辅助接入长期演进(authorized auxiliary access long-term evolution,LAA-LTE)系统中的演进型基站(evolutional Node B,简称可以为eNB或e-NodeB)、宏基站、微基站(也称为“小基站”)、微微基站、接入站点(access point,AP)、传输站点(transmission point,TP)或新空口(new radio,NR)系统中的基站,例如,新一代基站(new generation Node B,gNodeB)等。
[0102]
终端设备可称之为用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal)、智能终端等,该终端设备可以经无线接入网(radio access network,RAN)与一个或多个核心网进行通信。例如,终端设备可以是移动电话(或称为“蜂窝”电话)、具有移动终端的计算机等,终端设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置以及未来NR网络中的终端设备,它们与无线接入网交换语音或数据。对终端设备的说明:本申请中,和基站可以进行数据通信的都可以看为终端设备,本申请中将以一般意义上的UE来介绍。
[0103]
5G通信系统的下行业务信道采用的是LDPC编译码的方案,LDPC码是一种基于校验矩阵的分组码编码,请参阅图2a,根据3GPP协议标准定义,初传数据一般采用部分校验矩阵进行编码,如图2a中所示的校验矩阵中左上角部分的核心校验矩阵,重传数据可采用扩 展校验矩阵部分进行编码,然后根据冗余版本(redundency version,RV)的配置发送不同位置的信息。对于UE端译码器来说,译码器需要处理的信息包括初传的核心矩阵部分信息,还有重传增加的扩展矩阵信息,意味着初传和重传需要处理的数据量不同,根据协议分析,重传需要处理的数据量可以是初传的2到3倍,而相比之下,4G系统采用的Turbo编码,初重传数据均采用1/3母码率的分量码卷积编码,经过解速率匹配处理后,初重传需要处理的数据量是相同的。
[0104]
数据通信最初是在有线网上发展起来的,通常要求较大的带宽和较高的传输质量。对于有线连接,数据传输的可靠性是通过重传来实现的。当前一次尝试传输失败时,就要求重传数据分组,这样的传输机制就称之为自动请求重传(automatic repeat-request,ARQ)。在无线传输环境下,信道噪声和由于移动性带来的衰落以及其他用户带来的干扰使得信道传输质量很差,所以应该对数据分组加以保护来抑制各种干扰。这种保护主要是采用前向纠错编码(forward error correction,FEC),在分组中传输额外的比特。然而,过多的前向纠错编码会使传输效率变低。因此,一种混合方案HARQ,即ARQ和FEC相结合的方案被提出了。
[0105]
HARQ是将FEC与ARQ结合起来使用,HARQ的核心包括:在接收端使用FEC技术纠正所有错误中能够纠正的那一部分,通过错误检测判断不能纠正错误的数据包,丢弃不能纠错的数据包,向发射端请求重新发送相同的数据包。HARQ主要有两种实现方式,分别是软合并(Chase Combine,CC)和增量冗余(Incremental Redundancy,IR),在单纯的HARQ机制中,接收到的错误数据包是直接被丢弃的。虽然这些错误数据包不能够独立地正确译码,但是它们依然包含有一定的信息,软合并就是利用这部分信息,即是将接收到的错误数据包保存在存储器中,与重传的数据包合并在一起进行译码,提高了传输效率。增量冗余技术是通过在第一次传输时发送信息bit和一部分冗余bit,而通过重传发送额外的冗余bit。如果第一次传输没有成功解码,则可以通过重传更多冗余bit降低信道编码率,从而提高解码成功率。如果加上重传的冗余bit仍然无法正常解码,则进行再次重传。随着重传次数的增加,冗余bit不断积累,信道编码率不断降低,从而可以获得更好的解码效果。
[0106]
下面对HARQ的调度流程进行描述:基站首先调度发送初传数据,UE端对接收到的数据译码,译码正确了反馈确认字符(acknowledgement,ACK)给基站,流程结束;译码错误则反馈否定字符(negative acknowledgment,NACK)给基站,要求重新发送,并把当前传输的接收数据存储到缓冲区中,随后基站调度发送重传数据,UE端将接收到的重传数据和从缓冲区里读出前一次传输的数据,进行HARQ合并后译码,译码正确了反馈ACK给基站,流程结束;译码错误则反馈NACK给基站,依次重复前面的步骤直到达到最大的重传调度次数。
[0107]
请参阅图2b,下面对数据包的编码过程进行描述:
[0108]
数据包包含24bit的数据包校验码,一个数据包可以互粉为若干等长度的编码块,其中,每个编码块的尾部添加24bit长的编码块校验码,最后一个编码块还包含数据包校验码。假设数据包划分为2个编码块,以编码块(包含编码块校验码)为单位进行LDPC编码,其中核心编码矩阵生成第一校验比特,扩展编码矩阵生成第二校验比特,若以1/3母码率 进行编码,则一个编码块的长度经编码后长度为3倍的编码块长度。之后根据协议计算得到编码块的循环缓冲区的大小,循环缓冲区的大小一般小于3倍的编码块长度,从编码后编码块的数据中,跳过前面的若干信息比特,取出与循环缓冲区的大小等长的数据放入循环缓冲区中,需要发送的数据只能从该循环缓冲区中读取。根据循环缓冲区的长度划分为4个位置索引作为4个RV版本的起始位置,基站一般以RV=0,2,3,1的顺序调度初重传发送,即:初传数据从RV0的位置发送,发送长度为Er1(与空口实际能承载的信息量有关);若初传译码错误,则第一次重传数据从RV2的位置发送,发送长度为Er2(与Er1的大小关系不确定,可大可小);若译码仍然错误,则进行后续的重传调度。
[0109]
一般来说,基站调度初传和重传的码率基本相同,也就是说Er2和Er1的长度基本接近,从图2b中可以看出,第一次重传HARQ合并后,译码器一次迭代需要处理的数据量约是初传的2倍。
[0110]
现有技术中,一般基于相同的最大迭代次数对初传数据以及重传数据译码,若译码正确或达到最大的迭代次数则终止译码迭代,然而根据上述LDPC码的特性,重传时需要处理的数据量往往大于初传数据的数据量,而译码装置自身的能力规格是一定的,若仍然配置相同的最大迭代次数给初传数据和重传数据,可能导致译码装置对重传数据译码时的能力不足。
[0111]
为了解决上述问题,本申请实施例提供了一种数据译码方法,下面进行介绍。
[0112]
需要说明的是,本申请实施例中用于执行数据译码方法具体可以是终端中的译码装置,下面从译码装置的角度对本申请的数据译码方法进行描述。
[0113]
请参阅图3,本申请数据译码方法的一个实施例包括:
[0114]
301、接收数据包的初传数据。
[0115]
本实施例中,译码装置接收数据源(如基站)发送的数据包,具体地,译码装置首先接收数据包的初传数据,该初传数据包括数据包的LDPC的编码数据。例如,基站调度发送1000bit的数据包,经编码后得到3000bit的LDPC编码数据,其中,这3000bit编码数据中的前1000bit编码数据即可以是初传数据。
[0116]
需要说明的是,译码装置还可以接收数据包的调度信息,例如,基站在调度发送数据包之前,会先发送该数据包的调度信息,可以理解的是,该调度信息可以指示数据包的大小。具体地,该调度信息可以是下行链路控制信息(downlink control information,DCI),其中,DCI除了可以指示数据包的大小外,还可以包括上下行资源的分配信息,HARQ信息以及功率控制信息等。
[0117]
302、对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数。
[0118]
本实施例中,译码装置收到数据包的初传数据后将对该初传数据译码,其中,在译码过程中,对初传数据译码的实际迭代次数应当不超过第一最大迭代次数。该第一最大迭代次数是根据译码装置的能力规格确定的初传最大译码次数,即在实际译码过程中,若对初传数据译码的次数达到了第一最大迭代次数,将结束对初传数据的译码。
[0119]
303、接收数据包的重传数据。
[0120]
本实施例中,若译码装置对初传数据译码失败,还将接收数据包的重传数据,该重传 数据包括数据包的LDPC的编码数据,其中,该重传数据指的是经过HARQ合并后的重传数据,具体地,在译码装置收到数据包的初传数据后可以将初传数据中的部分或全部编码数据存储于缓冲区中,在译码装置收到基站调度的重传数据后,还可以将其与从缓冲区中读取出的数据进行HARQ合并得到最终需要译码的重传数据。此外,译码装置还需要将HARQ合并后的重传数据存储于缓冲区中用于之后的HARQ合并。
[0121]
需要说明的是,基站调度的初传数据和重传数据之间可以有交叉,也可以不交叉,具体此处不做限定。例如,来自同一数据源的编码数据共3000bit,初传数据可以为这3000bit中的前1000bit数据,重传过程可以分批次传输后2000bit的数据,除此之外,重传过程传输的数据也可以有部分属于前1000bit数据。
[0122]
需要说明的是,本申请实施例中的缓冲区特指HARQ缓冲区(HARQ buffer),可以存储用于HARQ合并的数据,具体地,该缓冲区在硬件上的实现形式包括但不限于动态随机存取存储器(DRAM,dynamic random access memory)及静态随机存取存储器(SRAM,static random access memory)等。
[0123]
304、对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数,第一最大迭代次数大于第二最大迭代次数。
[0124]
本实施例中,译码装置对HARQ合并后的重传数据进行译码,其中,在译码过程中,对重传数据译码的实际迭代次数应当不超过第二最大迭代次数。该第二最大迭代次数是根据译码装置的能力规格确定的重传最大译码次数,即在实际译码过程中,若对重传数据译码的次数达到了第二最大迭代次数,将结束对重传数据的译码。
[0125]
需要说明的是,译码装置的能力规格可以定义为数据量与迭代次数的乘积,也就是说,译码装置的能力规格是一定的,若需要译码的数据量较大,则其对应的最大迭代次数就较小,反之亦然。根据上述的描述可知,重传数据的数据量往往大于初传数据的数据量,而译码装置自身的能力规格是一定的,因此第一最大迭代次数应当大于第二最大迭代次数。
[0126]
可以理解的是,每个译码装置的能力规格都是有上限的,对应初传数据和重传数据分别有初传迭代次数上限以及重传迭代次数上限,即第一最大迭代次数不超过初传迭代次数上限,第二最大迭代次数不超过重传迭代次数上限。
[0127]
本实施例中,译码装置可以从基站发送的数据包的调度信息中获知数据包的大小以及调制与编码策略(modulation and coding scheme,MCS)索引等信息,在假定初传数据和重传数据的码率基本相同的前提下,可以基本确定初传数据的数据量以及重传数据的数据量,进而根据译码装置的能力规格即可确定第一最大迭代次数以及第二最大迭代次数。
[0128]
下面将介绍本实施例中确定第一最大迭代次数以及第二最大迭代次数的具体实现方式。
[0129]
第一步,根据译码装置的能力规格设置有对应的数据量门限,如果译码装置接收的数据包的大小未超过该数据量门限,那么该数据包的初传数据以及重传数据较小,译码装置的能力不受限制,在译码装置的能力规格允许范围内可以将第一最大迭代次数以及第二最大迭代次数设置的相对较大,尽可能提高译码的成功率。
[0130]
需要说明的是,针对不同的调制方式对应有不同的数据量门限,译码装置可以从数据包的调度信息获知对应的调制方式。具体可以参阅表1,其中,调制方式包括但不限于表1 中的正交相移键控(quadrature phase shift keying,QPSK)、16正交振幅调制(quadrature amplitude modulation,QAM)、64QAM及256QAM等调制方式。若需要译码的数据包大小不超过对应调制方式下的数据量门限,即可根据表1确定第一最大迭代次数以及第二最大迭代次数。可以理解的是,表1中的数值只是一种示例,在实际应用中,表1中的数值可以根据译码装置的能力规格进行设置,具体此处不做限定。
[0131]
表1
[0132]
[0133]
第二步,如果译码装置接收的数据包的大小超过了数据量门限,那么该数据包的初传数据以及重传数据也相应的较大,说明译码装置的能力受到一些限制,进一步需要根据调制与编码策略(modulation and coding scheme,MCS)索引确定第一最大迭代次数以及第二最大迭代次数,译码装置可以从数据包的调度信息获知对应的MCS索引。具体地,请参阅下表2和表3,设置有MCS索引分别与第一最大迭代次数以及第二最大迭代次数之间的对应关系,其中,表2与表3的不同之处在于,表2最大可以支持到64QAM的调制方式,表3最大可以支持到256QAM的调制方式,即表2适用于最大支持64QAM调制方式的译码装置,而表3可以适用于最大支持256QAM调制方式的译码装置。
[0134]
可以理解的是,表2以及表3中的数值只是一种示例,在实际应用中,表2以及表3中的数值也可以是其他值,具体此处不做限定。
[0135]
表2
[0136]
[0137]
[0138]
表3
[0139]
[0140]
[0141]
第三步,译码装置对初传数据译码结束后,还将对初传译码的结果进行统计得到译码结果统计量,进而在上述第二步已经确定的第二最大迭代次数的基础上,可以结合该译码结果统计量对第二最大迭代次数进行动态调整。例如,由于数据包的大小超过了上述第一步中设置的数据量门限,因此考虑到译码装置的能力规格,从上述第二步中得到的第二最大迭代次数是一个相对保守的数值,如果在对初传数据的实际译码过程中,译码的结果比较好,译码装置的能力还比较富余,那么为了提高对重传数据译码的成功率,可以在上述步骤二所确定的第二最大迭代次数上适当的增加一些迭代次数,并以调整后的迭代次数为最终的第二最大迭代次数。
[0142]
具体地,译码结果统计量可以包括但不限于初传数据中译码错误的数据块数量与数据块总数量的比值(block error rate,BLER)、初传数据中连续译码错误的数据块个数(error number,ErrNum)和/或初传数据中译码正确的数据块的平均迭代次数(average iteration number,AvgIterNum)等。下面针对译码结果统计量中可能包含的信息进行进一步的说明。
[0143]
1、译码结果统计量为初传数据中的BLER,那么译码装置可以将上述第二步中确定的第二最大迭代次数除以初传数据中的BLER得到第一计算结果,接下来,需要判断该第一计算结果是否超过译码装置的能力规格允许的重传迭代次数上限,若该第一计算结果大于或等于重传迭代次数上限,则确定重传迭代次数上限为第二最大迭代次数;若该第一计算结果小于重传迭代次数上限,则确定第一计算结果为第二最大迭代次数。
[0144]
需要说明的是,这样设计的考虑在于,为了提高对重传数据进行译码的正确率,可以在已经确定的第二最大迭代次数的基础上适当的增加迭代次数,增加了迭代次数相应也会提高译码的正确率,至于迭代次数的增加幅度就需要根据初传数据的BLER进行确定,若初传数据中BLER较小,即初传数据中译码错误的数据块较少,那么就可以多增加一些迭代次数,当然最大不能超过重传迭代次数上限,例如,重传迭代次数上限为31,调整前的第二迭代次数为20,初传数据中的BLER为50%,那么第一计算结果为20/0.5=40,由于40大于31,所以确定31为调整后的第二最大迭代次数。而若初传数据中BLER较大,即初传数据中译码错误的数据块较多,那么就只能少增加一些迭代次数,例如,重传迭代次数上限为31,调整前的第二迭代次数为20,初传数据中的BLER为80%,那么第一计算结果为20/0.8=25,由于25小于31,所以确定25为调整后的第二最大迭代次数。
[0145]
2、译码结果统计量为初传数据中的ErrNum,那么译码装置将确定与初传数据中的ErrNum对应的第一调整量,如下表4所示,进一步计算重传迭代次数上限减去第一调整量 得到的第二结算结果,即可确定第二计算结果为第二最大迭代次数。
[0146]
需要说明的是,这样设计的考虑在于,若初传数据中的ErrNum较少,即初传数据中连续译码错误的数据块个数较少,就可以多增加一些迭代次数,与其对应的第一调整量也就相应设置的较小,例如,初传数据中的ErrNum在第1档位,对应的第一调整量为0,重传迭代次数上限为31,第二计算结果为31-0=31,所以确定31为调整后的第二最大迭代次数。而若初传数据中的ErrNum较大,即初传数据中连续译码错误的数据块个数较多,就需要少增加一些迭代次数,与其对应的第一调整量也就相应设置的较大,例如,初传数据中的ErrNum在第3档位,对应第一调整量为2,重传迭代次数上限为31,第二计算结果为31-2=29,所以确定29为调整后的第二最大迭代次数。
[0147]
表4
[0148]
[表0001]
档位 第一数据中的ErrNum 第一调整量
1 1~50 0
2 51~100 1
3 >100 2

[0149]
3、译码结果统计量为初传数据中的AvgIterNum,那么译码装置将确定与初传数据中的AvgIterNum对应的第二调整量,如下表5所示,进一步将计算调整前的第二最大迭代次数加上第二调整量的第三计算结果;若第三计算结果大于或等于重传迭代次数上限,则重传迭代次数上限为调整后的第二最大迭代次数;若第三计算结果小于重传迭代次数上限,则确定第三计算结果为调整后的第二最大迭代次数。
[0150]
需要说明的是,这样设计的考虑在于,若初传数据中AvgIterNum较少,即对初传数据进行译码的效率较高,就可以多增加一些迭代次数,与其对应的调整量相应设置的较大,例如,初传数据中的AvgIterNum在第1档位,对应的第而调整量为2,调整前的第二最大迭代次数为30,重传迭代次数上限为31,第三计算结果为30+2=32,由于32大于31,超过了重传迭代次数上限,所以确定31为调整后的第二最大迭代次数。若初传数据中AvgIterNum较多,即对初传数据进行译码的效率较低,就可以少增加一些迭代次数,与其对应的调整量相应设置的较小,例如,初传数据中的AvgIterNum在第3档位,对应的第而调整量为0,调整前的第二最大迭代次数为30,重传迭代次数上限为31,第三计算结果为30+0=30,由于30小于31,所以确定30为调整后的第二最大迭代次数。
[0151]
表5
[0152]
[0153]
需要说明的是,译码装置对数据包的重传数据译码结束后,若译码仍未成功,译码装置也将对此次重传译码的结果进行统计得到译码结果统计量,并结合该译码结果统计量对下一次重传数据对应的最大迭代次数进行动态调整,调整的方式与上述的描述类似,具体 此处不再赘述。
[0154]
需要说明的是,本申请实施例的方案除了适用于LDPC的编码数据外,同样也可以适用于其他的编码方式,例如Turbo编码,具体此处不做限定。
[0155]
本申请实施例中,译码装置首先接收数据包的初传数据并对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数,之后译码装置还将接收数据包的重传数据并对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数且第一最大迭代次数大于第二最大迭代次数。通过上述方式,分配给初传数据的最大迭代次数大于分配给重传数据的最大迭代次数,在基于LDPC编码中重传时需要处理的数据量往往大于初传数据量的情况下,有效缓解了译码装置对重传数据译码时的能力不足的问题。
[0156]
上面介绍了本申请实施例中的数据译码方法,下面还将介绍一种数据压缩方法。
[0157]
4G和5G通信系统对于HARQ重传调度的差别在于:4G的重传调度都是以传输块(Transmission Block,TB)为单位的,即使某次传输的TB中只有一个编码块(Coding Block,CB)译码错误,重传也会调度发送整个TB;5G系统中,则把单个TB分为若干个编码块组(Coding Block Group,CBG),重传只调度发送译码错误CB对应的CBG。
[0158]
5G系统为了支持更大的吞吐量,单次传输调度的最大TB块长度可数倍于4G系统(如4G系统可以支持1.2G吞吐量,一个TB最多含64个6144长度的CB;5G系统支持8G吞吐量时,一个TB最多含150多个8448长度的CB)。
[0159]
由于5G系统下单次传输调度的最大TB块变大,5G系统中需要存入缓冲区中的数据大小会数倍于4G系统,而缓冲区里数据的数据宽度一般都是相同的。因此可能出现缓冲区的读写量大增(功耗大增),且超出读写硬件能力的情况。
[0160]
本申请实施例中的数据压缩方法可以降低缓冲区的最大读写功耗。
[0161]
请参阅图4,本申请数据压缩方法的一个实施例包括:
[0162]
401、获取待处理数据。
[0163]
本实施例中,译码装置获取的待处理数据可以是初传数据也可以是经过HARQ合并后的重传数据,需要说明的是,译码装置是以CB为单位对待处理数据进行处理的,在此基础上,CB可以包括若干对数似然比(log likelihood ratio,LLR)信息,每个LLR都具有固定的位宽,例如,每个LLR的位宽可以为6bit。
[0164]
402、若待处理的数据宽度大于数据宽度阈值,则对待处理数据进行压缩处理,以得到目标数据。
[0165]
本实施例中,为了降低缓冲区的读写功耗,基于缓冲区的读写能力预先设置了数据宽度阈值,若待处理数据的数据宽度大于数据宽度阈值,就对待处理数据进行压缩得到目标数据。
[0166]
需要说明的是,译码装置可以根据待处理数据的LLR的位宽计算得到待处理数据的数据宽度。具体地,采用如下方式计算待处理数据的数据宽度:
[0167]
B=C*E*L;
[0168]
其中,B表示待处理数据的数据宽度;
[0169]
C表示待处理的CB个数;
[0170]
E表示每个CB中LLR的个数;
[0171]
L表示待处理LLR的位宽。
[0172]
计算得到待处理数据的数据宽度之后,进一步判断待处理数据的数据宽度是否大于预先设置的数据宽度阈值,若待处理数据的数据宽度大于数据宽度阈值,则对待处理数据进行压缩处理,得到目标数据,目标数据中包括目标LLR。具体地,可以将上述公式进行变形得到如下公式:
[0173]
L0<=T/(C*E);
[0174]
其中,L0表示目标LLR的位宽;
[0175]
T表示数据宽度阈值;
[0176]
C表示待处理的CB个数;
[0177]
E表示每个CB中LLR的个数。
[0178]
将数据宽度阈值带入该公式可以计算得到目标LLR的位宽,进而终端按照计算得到的LLR的位宽对待处理的LLR进行压缩得到目标LLR。
[0179]
例如,待处理数据的LLR的初始位宽为6bit,通过计算得到的待处理数据的数据宽度大于数据宽度阈值,那么需要对该待处理的数据进行压缩,之后再计算得到目标LLR的位宽为4,那么对位宽为6bit的待处理LLR进行压缩得到位宽为4的目标LLR,通过这种方式将待处理数据压缩得到目标数据。
[0180]
可以理解的是,若计算得到的L0不是整数,例如,计算结果为4.3,那么L0可以取小于4.3的最大的整数,即4。
[0181]
403、若目标数据的数据带宽小于或等于数据宽度阈值,则将目标数据存储于缓冲区中。
[0182]
本实施例中,LLR的位宽通常最小可以压缩到2bit,那么若LLR的位宽压缩到2bit仍不能满足要求,即将待处理数据的数据带宽压缩所允许的最小值仍然大于数据宽度阈值,那么可以考虑丢弃当次的部分或全部重传数据,而若经过压缩后得到的目标数据的数据带宽小于或等于数据宽度的阈值,则将该目标数据存储于缓冲区中,用于下一次重传时读取出目标数据进行HARQ合并。
[0183]
下面通过一个举例对本申请的数据压缩方法进行进一步的说明:
[0184]
例如,待处理的数据包括2个CB,每个CB的长度为4976bit,编码后每个CB的长度为3*5000bit,假设空口承载的总比特数为20000bit,则每个CB分到10000bit,缓冲区读写带宽的能力为100000bit,数据位宽默认为6bit。如果初传译码过程中,2个CB译码全错,按照默认位宽需要写出2*10000*6=120000bit,超过了读写能力范围,把数据位宽压缩到4bit后写出2*10000*4=80000bit,小于100000bit的读写能力,之后将2个CB的80000bit数据存入缓冲区中,在后一次的重传过程中,假设HARQ合并后的2个CB译码一对一错,译码正确的CB需要写出4976bit,译码错误的CB需要写出40000bit,而当前总带宽剩余100000-80000-4976=15024bit,因此只能把译码错误的CB中的前15024bit写出。
[0185]
本申请实施例中,译码装置在译码之前,需要将当前接收到数据与从缓冲区中读取出的数据进行HARQ合并,并且若HARQ合并后的数据的数据宽度大于数据数据宽度阈值,终端将对该HARQ合并后的数据进行压缩,这样一来,HARQ合并后的数据的数据宽度不再是 固定不变的,将压缩后的数据存入缓冲区,降低了缓冲区的读写功耗。
[0186]
下面结合数据压缩方法以及数据译码方法对分别对初传数据译码和重传数据译码的流程进行描述:
[0187]
请参阅图5,图5为译码装置对初传数据译码的流程图。
[0188]
501、接收初传数据。
[0189]
译码装置可以接收到基站发送的经过调制编码后的初传数据。
[0190]
502、确定初传数据的数据宽度。
[0191]
译码装置对接收到的初传数据先后进行解调、解交织、解CB级联和解速率匹配之后,将确定初传数据的数据宽度。其中,计算初传数据的数据宽度的方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0192]
503、判断初传数据的数据宽度是否大于数据宽度阈值,若是,则执行步骤504,若否,则执行步骤505。
[0193]
译码装置在确定了初传数据的数据宽度之后,将进一步判断该初传数据的数据宽度是否大于数据宽度阈值,其中,判断该初传数据的数据宽度是否大于数据宽度阈值的具体方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0194]
504、若初传数据的数据宽度大于数据宽度阈值,则将对初传数据进行压缩,其中,对初传数据进行压缩的具体方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0195]
505、在步骤503之后,若初传数据的数据宽度小于数据宽度阈值,则将初传数据存入缓冲区;此外,在步骤504之后,将压缩后的初传数据存入缓冲区中,具体方式与如图4所示实施例中步骤403的相关描述类似,具体此处不再赘述。
[0196]
需要说明的是,初传数据不能丢弃,无论是否进行压缩,初传数据都必须要存入缓冲区中。
[0197]
506、确定第一最大迭代次数。
[0198]
译码装置可以根据数据包的大小确定与初传数据对应的第一最大迭代次数,具体的方式与图3所示实施例中的相关描述类似,具体此处不再赘述。
[0199]
507、对初传数据译码。
[0200]
译码装置对初传数据译码的实际迭代次数不超过第一最大迭代次数,若译码次数达到了第一最大迭代次数,将结束对初传数据的译码。
[0201]
508、获取初传数据的译码结果统计量。
[0202]
译码装置在对初传数据译码结束后还将获取初传数据的译码结果统计量,具体地,该译码结果统计量可以包括但不限于初传数据中译码错误的数据块数量与数据块总数量的比值(BLER)、初传数据中连续译码错误的数据块个数(ErrNum)和/或初传数据中译码正确的数据块的平均迭代次数(AvgIterNum)等。
[0203]
需要说明的是,对于译码正确的CB块,译码装置可以将缓冲区中对应CB块的LLR数据更新为1比特的译码输出结果。
[0204]
需要说明的是,步骤502至505与步骤506至508之间没有固定的时序关系,可以先 执行步骤502至505,也可以先执行步骤506至508,又或者可以同时执行步骤502至505与步骤506至508,具体此处不做限定。
[0205]
下面请参阅图6,图6为译码装置对重传数据译码的流程图。
[0206]
601、接收重传数据。
[0207]
译码装置可以接收到基站发送的经过调制编码后的重传数据。
[0208]
602、读取缓冲区中存储的数据。
[0209]
由于译码装置当前需要处理的是重传数据,即需要进行HARQ合并,因此,将读取出缓冲区中存储的数据,可以理解的是,若之前存入缓冲区中的数据是经过压缩后再存储的,那么终端读取出缓冲区中的数据后,还需要对该数据进行解压缩。
[0210]
603、将重传数据与缓冲区中读取出的数据进行HARQ合并。
[0211]
译码装置对收到的重传数据先后进行解调、解交织、解CB级联和解速率匹配之后,将该重传数据与缓冲区中读取出的数据进行HARQ合并得到待处理数据。
[0212]
604、确定HARQ合并后数据的数据宽度。
[0213]
译码装置计算HARQ合并后数据的数据宽度的方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0214]
605、判断HARQ合并后数据的数据宽度是否大于数据宽度阈值,若是,则执行步骤606,若否,则执行步骤607。
[0215]
译码装置在确定了HARQ合并后数据的数据宽度之后,将进一步判断该HARQ合并后数据的数据宽度是否大于数据宽度阈值,其中,终端判断该HARQ合并后数据的数据宽度是否大于数据宽度阈值的具体方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0216]
606、若HARQ合并后数据的数据宽度大于数据宽度阈值,则译码装置将对HARQ合并后数据进行压缩,其中,对HARQ合并后数据进行压缩的具体方式与如图4所示实施例中步骤402的相关描述类似,具体此处不再赘述。
[0217]
607、在步骤605之后,若HARQ合并后数据的数据宽度小于数据宽度阈值,则终端将HARQ合并后数据存入缓冲区;此外,在步骤606之后,将压缩后的数据存入缓冲区中,具体方式与如图4所示实施例中步骤403的相关描述类似,具体此处不再赘述。
[0218]
608、确定第二最大迭代次数。
[0219]
译码装置可以根据数据包的大小确定与HARQ合并后的重传数据对应的第二最大迭代次数,具体的方式与图3所示实施例中的相关描述类似,具体此处不再赘述。
[0220]
609、终端对HARQ合并后数据译码。
[0221]
译码装置对HARQ合并后数据译码的实际迭代次数不超过第二最大迭代次数,若译码次数达到了第二最大迭代次数,将结束译码。
[0222]
610、获取HARQ合并后数据的译码结果统计量。
[0223]
译码装置在对HARQ合并后数据译码结束后还将获取HARQ合并后数据的译码结果统计量,具体地,该译码结果统计量可以包括但不限于HARQ合并后数据中译码错误的数据块数量与数据块总数量的比值(BLER)、HARQ合并后数据中连续译码错误的数据块个数(ErrNum) 和/或HARQ合并后数据中译码正确的数据块的平均迭代次数(AvgIterNum)等。
[0224]
需要说明的是,对于译码正确的CB块,可以将缓冲区中对应CB块的LLR数据更新为1比特的译码输出结果。
[0225]
需要说明的是,步骤604至607与步骤608至610之间没有固定的时序关系,可以先执行步骤604至607,也可以先执行步骤608至610,又或者可以同时执行步骤604至607与步骤608至610,具体此处不做限定。
[0226]
上面对本申请实施例中的数据译码方法以及数据压缩方法进行了描述,下面对本申请实施例中的译码装置进行描述:
[0227]
请参阅图7,本申请实施例中译码装置的一个实施例包括:
[0228]
接收单元701,用于接收数据包的初传数据;
[0229]
译码单元702,用于对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数;
[0230]
接收单元701,还用于接收数据包的重传数据,其中,初传数据以及重传数据均包括数据包的低密度奇偶校验码LDPC的编码数据;
[0231]
译码单元702,还用于对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数,第一最大迭代次数大于第二最大迭代次数。
[0232]
可选地,第一最大迭代次数对应于译码装置的能力规格的初传最大译码次数,第二最大迭代次数对应于译码装置的能力规格的重传最大译码次数。
[0233]
可选地,该译码装置还可以包括:
[0234]
确定单元703,用于根据译码装置的能力规格,确定第一最大迭代次数,和/或,第二最大迭代次数。
[0235]
可选地,确定单元703,还可以用于根据数据包的大小,确定第一最大迭代次数,和/或,第二最大迭代次数。
[0236]
可选地,确定单元703,还可以用于根据数据包的大小,以及初传数据译码的译码结果统计量,确定第二最大迭代次数。
[0237]
可选地,接收单元701,还可以用于接收数据包的调度信息,数据包的调度信息用于指示数据包的大小。
[0238]
仍然参阅图7,本申请实施例中译码装置的另一个实施例包括:
[0239]
接收单元701,用于接收待译码的数据包,数据包内含有低密度奇偶校验码LDPC编码数据;
[0240]
确定单元703,用于根据数据包的大小确定译码的最大迭代次数;
[0241]
译码单元702,用于对数据包译码,其中,对数据包译码的迭代次数不超过最大迭代次数。
[0242]
可选地,接收单元701,还可以用于接收数据包的调度信息,其中,数据包的调度信息用于指示数据包的大小。
[0243]
可选地,接收单元701具体用于接收数据包的初传数据;
[0244]
确定单元703具体用于根据数据包的大小确定与初传数据对应的第一最大迭代次数;
[0245]
译码单元702具体用于对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数。
[0246]
可选地,接收单元701具体用于接收数据包的重传数据;
[0247]
确定单元703具体用于根据数据包的大小确定与重传数据对应的第二最大迭代次数;
[0248]
译码单元702具体用于对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数。
[0249]
可选地,接收单元701还用于接收数据包的重传数据;
[0250]
确定单元703还用于根据数据包的大小,以及初传数据译码的译码结果统计量,确定与重传数据对应的第二最大迭代次数;
[0251]
译码单元702还用于对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数。
[0252]
本申请实施例中,接收单元701首先接收数据包的初传数据,译码单元702对初传数据译码,其中,对初传数据译码的迭代次数不超过第一最大迭代次数,之后接收单元701还将接收数据包的重传数据,译码单元702对重传数据译码,其中,对重传数据译码的迭代次数不超过第二最大迭代次数且第一最大迭代次数大于第二最大迭代次数。通过上述方式,分配给初传数据的最大迭代次数大于分配给重传数据的最大迭代次数,在基于LDPC编码中重传数据量往往大于初传数据量的情况下,有效缓解了译码装置对重传数据译码时的能力不足的问题。
[0253]
上面从模块化功能实体的角度对本申请实施例中的译码装置进行了描述,下面从硬件处理的角度对本申请施例中的译码装置进行描述:
[0254]
本申请实施例还提供一种译码装置,该译码装置可以是终端设备也可以是电路。该译码装置可以用于执行上述方法实施例中由译码装置所执行的动作。
[0255]
当该译码装置为终端设备时,图8示出了一种简化的终端设备的结构示意图。便于理解和图示方便,图8中,终端设备以手机作为例子。如图8所示,终端设备包括处理器、存储器、射频电路、天线以及输入输出装置。处理器主要用于对通信协议以及通信数据进行处理,以及对终端设备进行控制,执行软件程序,处理软件程序的数据等。存储器主要用于存储软件程序和数据。射频电路主要用于基带信号与射频信号的转换以及对射频信号的处理。天线主要用于收发电磁波形式的射频信号。输入输出装置,例如触摸屏、显示屏,键盘等主要用于接收用户输入的数据以及对用户输出数据。需要说明的是,有些种类的终端设备可以不具有输入输出装置。
[0256]
当需要发送数据时,处理器对待发送的数据进行基带处理后,输出基带信号至射频电路,射频电路将基带信号进行射频处理后将射频信号通过天线以电磁波的形式向外发送。当有数据发送到终端设备时,射频电路通过天线接收到射频信号,将射频信号转换为基带信号,并将基带信号输出至处理器,处理器将基带信号转换为数据并对该数据进行处理。为便于说明,图8中仅示出了一个存储器和处理器。在实际的终端设备产品中,可以存在一个或多个处理器和一个或多个存储器。存储器也可以称为存储介质或者存储设备等。存储器可以是独立于处理器设置,也可以是与处理器集成在一起,本申请实施例对此不做限 制。
[0257]
在本申请实施例中,可以将具有收发功能的天线和射频电路视为终端设备的收发单元,将具有处理功能的处理器视为终端设备的处理单元。如图8所示,终端设备包括收发单元810和处理单元820。收发单元也可以称为收发器、收发机、收发装置等。处理单元也可以称为处理器,处理单板,处理模块、处理装置等。可选的,可以将收发单元810中用于实现接收功能的器件视为接收单元,将收发单元810中用于实现发送功能的器件视为发送单元,即收发单元810包括接收单元和发送单元。收发单元有时也可以称为收发机、收发器、或收发电路等。接收单元有时也可以称为接收机、接收器、或接收电路等。发送单元有时也可以称为发射机、发射器或者发射电路等。
[0258]
应理解,收发单元810用于执行上述方法实施例中译码装置侧的发送操作和接收操作,处理单元820用于执行上述方法实施例中译码装置上除了收发操作之外的其他操作。
[0259]
例如,在一种实现方式中,收发单元810用于执行图7中的接收单元的操作,和/或收发单元810还用于执行本申请实施例中译码装置的其他收发步骤。处理单元820,用于执行图7中确定单元和译码单元的操作,和/或处理单元820还用于执行本申请实施例中译码装置的其他处理步骤。
[0260]
本实施例中的译码装置为终端设备时,可以参照图9所示的设备。在图9中,该设备包括处理器910,发送数据处理器920,接收数据处理器930。上述实施例中的译码单元702和/或确定单元703可以是图9中的该处理器910,并完成相应的功能。上述实施例中的接收单元701可以是图9中的发送数据处理器920,和/或接收数据处理器930。虽然图9中示出了信道编码器、信道解码器,但是可以理解这些模块并不对本实施例构成限制性说明,仅是示意性的。
[0261]
图10示出本实施例的另一种形式。处理装置1000中包括调制子系统、中央处理子系统、周边子系统等模块。本实施例中的译码装置可以作为其中的调制子系统。具体的,该调制子系统可以包括处理器1003,接口1004。其中处理器1003完成上述译码单元702和/或确定单元703的功能,接口1004完成上述接收单元701的功能。作为另一种变形,该调制子系统包括存储器1006、处理器1003及存储在存储器1006上并可在处理器上运行的程序,该处理器1003执行该程序时实现上述方法实施例中终端设备侧的方法。需要注意的是,所述存储器1006可以是非易失性的,也可以是易失性的,其位置可以位于调制子系统内部,也可以位于处理装置1000中,只要该存储器1006可以连接到所述处理器1003即可。
[0262]
在另一种可能的设计中,当该译码装置为基带处理器时,该基带处理器包括处理单元和通信单元。通信单元用于执行图7中的接收单元701的操作,和/或通信单元还用于执行本申请实施例中译码装置的其他收发步骤。处理单元用于执行图7中确定单元703和译码单元702的操作,和/或处理单元还用于执行本申请实施例中译码装置的其他处理步骤。其中,通信单元可以是输入输出电路、通信接口;处理单元为集成的处理器或者微处理器或者集成电路。
[0263]
在另一种可能的设计中,当该译码装置为芯片时,该芯片包括至少一个处理器,存储器和收发器,存储器中存储有指令,存储器还可以存储用于HARQ合并的数据,收发器用于 执行图7中的接收单元701的操作,和/或收发器还用于执行本申请实施例中译码装置的其他收发步骤。处理器用于执行图7中确定单元703和译码单元702的操作,和/或处理器还用于执行本申请实施例中译码装置的其他处理步骤。
[0264]
图11示出本实施例中的译码装置为终端设备时的另一种形式,包括译码器模块110、自动增益控制(automatic gain control,AGC)模块111、信道估计模块112及解调模块113等,其中,译码器模块110中包括解速率匹配单元、译码控制单元、译码单元、缓冲区以及图11中为画出的通信接口。终端通过接收天线接收基站发送的数据包以及控制信令,在数据流的方向上,数据包先后通过AGC模块111、信道估计模块112及解调模块113的处理后通过通信接口传输至译码器模块110,解速率匹配单元用于对经过编码速率匹配的数据进行解速率匹配,之后与从缓冲区中读取的数据进行HARQ合并,译码单元用于对HARQ合并后的数据进行译码并输出译码结果,在控制流的方向上,译码控制单元通过通信接口接收控制信令,译码控制单元用于根据控制信令进行读写控制以及迭代次数的确定等功能。具体地,译码器模块中的通信接口用于执行图7中的接收单元701的操作,译码单元用于执行图7中译码单元702的操作,译码控制单元用于执行图7中确定单元703的操作。
[0265]
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述方法实施例中终端设备侧的方法。
[0266]
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,该指令被执行时执行上述方法实施例中终端设备侧的方法。
[0267]
应理解,本发明实施例中提及的处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0268]
还应理解,本发明实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
[0269]
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
[0270]
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0271]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0272]
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0273]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0274]
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0275]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-only memory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0276]
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

权利要求书

[权利要求 1]
一种数据译码方法,其特征在于,包括: 接收数据包的初传数据; 对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过第一最大迭代次数; 接收所述数据包的重传数据,其中,所述初传数据以及所述重传数据均包括所述数据包的低密度奇偶校验码LDPC的编码数据; 对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过第二最大迭代次数,所述第一最大迭代次数大于所述第二最大迭代次数。
[权利要求 2]
根据权利要求1所述的方法,其特征在于,所述第一最大迭代次数对应于所述译码装置的能力规格的初传最大译码次数,所述第二最大迭代次数对应于所述译码装置的能力规格的重传最大译码次数。
[权利要求 3]
根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 根据所述译码装置的能力规格,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[权利要求 4]
根据权利要求1所述的方法,其特征在于,所述方法还包括: 根据所述数据包的大小,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[权利要求 5]
根据权利要求1所述的方法,其特征在于,所述方法还包括: 根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定所述第二最大迭代次数。
[权利要求 6]
根据权利要求4或5所述的方法,其特征在于,所述方法还包括: 接收所述数据包的调度信息,所述数据包的调度信息用于指示所述数据包的大小。
[权利要求 7]
一种数据译码方法,其特征在于,包括: 接收待译码的数据包,所述数据包内含有低密度奇偶校验码LDPC编码数据; 根据所述数据包的大小确定译码的最大迭代次数; 对所述数据包译码,其中,对所述数据包译码的迭代次数不超过所述最大迭代次数。
[权利要求 8]
根据权利要求7所述的方法,其特征在于,所述方法还包括: 接收所述数据包的调度信息,其中,所述数据包的调度信息用于指示所述数据包的大小。
[权利要求 9]
根据权利要求7或8所述的方法,其特征在于,接收待译码的数据包包括: 接收所述数据包的初传数据; 根据所述数据包的大小确定译码的最大迭代次数包括: 根据所述数据包的大小确定与所述初传数据对应的第一最大迭代次数; 对所述数据包译码包括: 对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过所述第一最大迭代次数。
[权利要求 10]
根据权利要求7或8所述的方法,其特征在于,接收待译码的数据包包括: 接收所述数据包的重传数据; 根据所述数据包的大小确定译码的最大迭代次数包括: 根据所述数据包的大小确定与所述重传数据对应的第二最大迭代次数; 对所述数据包译码包括: 对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[权利要求 11]
根据权利要求9所述的方法,其特征在于,所述方法还包括: 接收所述数据包的重传数据; 根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定与所述重传数据对应的第二最大迭代次数; 对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[权利要求 12]
一种译码装置,其特征在于,包括: 接收单元,用于接收数据包的初传数据; 译码单元,用于对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过第一最大迭代次数; 所述接收单元,还用于接收所述数据包的重传数据,其中,所述初传数据以及所述重传数据均包括所述数据包的低密度奇偶校验码LDPC的编码数据; 所述译码单元,还用于对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过第二最大迭代次数,所述第一最大迭代次数大于所述第二最大迭代次数。
[权利要求 13]
根据权利要求12所述的译码装置,其特征在于: 所述第一最大迭代次数对应于所述译码装置的能力规格的初传最大译码次数,所述第二最大迭代次数对应于所述译码装置的能力规格的重传最大译码次数。
[权利要求 14]
根据权利要求12或13所述的译码装置,其特征在于,还包括: 确定单元,用于根据所述译码装置的能力规格,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[权利要求 15]
根据权利要求12所述的译码装置,其特征在于,还包括: 确定单元,用于根据所述数据包的大小,确定所述第一最大迭代次数,和/或,所述第二最大迭代次数。
[权利要求 16]
根据权利要求12所述的译码装置,其特征在于,还包括: 确定单元,用于根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定所述第二最大迭代次数。
[权利要求 17]
根据权利要求15或16所述的译码装置,其特征在于: 所述接收单元还用于: 接收所述数据包的调度信息,所述数据包的调度信息用于指示所述数据包的大小。
[权利要求 18]
一种译码装置,其特征在于,包括: 接收单元,用于接收待译码的数据包,所述数据包内含有低密度奇偶校验码LDPC编码 数据; 确定单元,用于根据所述数据包的大小确定译码的最大迭代次数; 译码单元,用于对所述数据包译码,其中,对所述数据包译码的迭代次数不超过所述最大迭代次数。
[权利要求 19]
根据权利要求18所述的译码装置,其特征在于: 所述接收单元,还用于接收所述数据包的调度信息,其中,所述数据包的调度信息用于指示所述数据包的大小。
[权利要求 20]
根据权利要求18或19所述的译码装置,其特征在于,所述接收单元具体用于: 接收所述数据包的初传数据; 所述确定单元具体用于: 根据所述数据包的大小确定与所述初传数据对应的第一最大迭代次数; 所述译码单元具体用于: 对所述初传数据译码,其中,对所述初传数据译码的迭代次数不超过所述第一最大迭代次数。
[权利要求 21]
根据权利要求18或19所述的译码装置,其特征在于,所述接收单元具体用于: 接收所述数据包的重传数据; 所述确定单元具体用于: 根据所述数据包的大小确定与所述重传数据对应的第二最大迭代次数; 所述译码单元具体用于: 对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[权利要求 22]
根据权利要求20所述的译码装置,其特征在于,所述接收单元还用于: 接收所述数据包的重传数据; 所述确定单元还用于: 根据所述数据包的大小,以及所述初传数据译码的译码结果统计量,确定与所述重传数据对应的第二最大迭代次数; 所述译码单元还用于: 对所述重传数据译码,其中,对所述重传数据译码的迭代次数不超过所述第二最大迭代次数。
[权利要求 23]
一种基带处理器,其特征在于,包括处理单元和通信单元,所述处理单元用于执行如权利要求12至22中所述译码单元以及所述确定单元的操作,所述通信单元用于执行如权利要求12至22中所述接收单元的操作。
[权利要求 24]
一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器,存储器和收发器,所述存储器、所述收发器和所述至少一个处理器通过线路互联,所述存储器中存储有指令,所述收发器用于执行如权利要求12至22中所述接收单元的操作;所述至少一个处理器用于执行如权利要求12至22中所述译码单元以及所述确定单元的操作。
[权利要求 25]
一种终端,其特征在于,包括: 处理器、存储器、总线以及射频电路; 所述射频电路用于执行如权利要求12至22中所述接收单元的操作; 所述存储器中存储有程序代码; 所述处理器调用所述存储器中的程序代码时执行如权利要求12至22中所述译码单元以及所述确定单元的操作。
[权利要求 26]
一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-11中任意一项所述的方法。
[权利要求 27]
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至11中任意一项所述的方法。

附图

[ 图 1]  
[ 图 2A]  
[ 图 2B]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]  
[ 图 9]  
[ 图 10]  
[ 图 11]