首页 / 专利库 / 电信 / 子载波 / 用户设备、调制解调器芯片和分配缓冲器的方法

用户设备、调制解调器芯片和分配缓冲器的方法

阅读:742发布:2024-02-12

专利汇可以提供用户设备、调制解调器芯片和分配缓冲器的方法专利检索,专利查询,专利分析的服务。并且提供了一种用户设备、 调制解调器 芯片和分配 缓冲器 的方法。所述UE包括调制解调器芯片,调制解调器芯片包括:DL HARQ缓冲器 控制器 ,在分配给UE的激活的CC的数量改变、HARQ 进程 的数量和/或大小改变、传输模式改变中的至少一个发生且HARQ处理被初始化时,通过以下步骤执行预分区:将分区的数量设置为等于激活的CC的数量;将分区的相对大小设置为与其相应的CC的容量成比例;使用标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;通过利用具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器 存储器 ,其中,每个分区具有数量等于针对该分区而选择的优化的HARQ进程的数量的子分区。,下面是用户设备、调制解调器芯片和分配缓冲器的方法专利的具体信息内容。

1.一种用户设备(UE),包括:
调制解调器芯片,包括:
下行(DL)混合自动重传请求(HARQ)缓冲器控制器,在分配给UE的激活的分量载波(CC)的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生,并且HARQ处理被初始化时,通过以下步骤执行预分区:
将分区的数量设置为等于激活的CC的数量;
将分区的相对大小设置为与它们的相应的CC的容量成比例;
使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;
通过利用具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于针对该分区而选择的优化的HARQ进程的数量的子分区。
2.如权利要求1所述的UE,其中,调制解调器芯片还包括片上存储器,UE还包括:
片外存储器;
连接片外存储器和调制解调器芯片的总线,
其中,HARQ缓冲器控制器确定可用于DL HARQ缓冲器的片上存储器与通过总线而可用于DL HARQ缓冲器片外存储器的优化比率,并且根据确定的优化比率在片上存储器与片外存储器之间分配逻辑HARQ缓冲存储器的每个分区和子分区。
3.一种分配用户设备(UE)下行(DL)混合自动重传请求(HARQ)缓冲器的方法,包括:
通过以下步骤对HARQ缓冲器进行预分区:
将分区的数量设置为等于激活的分量载波(CC)的数量;
将分区的相对大小设置为与它们的相应的CC的容量成比例;
使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;
通过具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于选择的针对该分区而选择的HARQ进程的优化数量的子分区,
其中,当激活的CC的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生时,并且HARQ处理被初始化时,执行预分区。
4.如权利要求3所述的方法,其中,如果当执行预分区时激活的HARQ进程存储在HARQ缓冲器中,则分配整个HARQ缓冲存储器的步骤包括:
分配分区和子分区,使得激活的HARQ进程能够从它们的旧的存储器位置移动到新的存储器位置。
5.如权利要求3所述的方法,还包括:
当接收到小于分配给其的子分区的传输时,确定针对该传输块而选择的压缩等级是否能够被降低,从而该传输块能够更加充分地占用分配给该传输块的子分区。
6.如权利要求3所述的方法,还包括:当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的子分区的数量时:
当针对该CC的另一HARQ进程而接收且存储在分配给其的子分区中的第一传输块被解码并且没有错误被检测到时,分配给第一传输块的子分区变为可用的,且额外的HARQ进程的传输块被存储分配给第一传输块的子分区中。
7.如权利要求3所述的方法,还包括:当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的分区的子分区的数量时,
增加该分区中的一个或多个子分区的压缩等级,以使全部的激活的HARQ进程的总数被分配给分配给该分区的子分区。
8.一种分配用户设备(UE)下行(DL)混合自动重传请求(HARQ)缓冲器的方法,包括:
确定可用于HARQ缓冲器的内部存储器与可用于HARQ缓冲器的外部存储器的优化比率;
根据确定的优化比率,在内部存储器与外部存储器之间分配逻辑HARQ缓冲器存储器的每个分区和子分区。
9.如权利要求8所述的方法,其中,优化比率包括HARQ缓冲器可用的全部内部存储器与在当前的带宽和分量载波分配处具有最大吞吐量的假设下存储全部HARQ进程所需的额外的存储器的比率。
10.如权利要求8所述的方法,其中,基于以下项中的至少一项来确定内部存储器与外部存储器之间的比率:可用的内部存储器的大小、可用的外部存储器的大小、压缩等级、当前操作情况、功率/资源管理方案以及当前通信设置和/或情况。
11.如权利要求8所述的方法,还包括:
将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分具有确定的优化比率。
12.如权利要求8所述的方法,还包括:
将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分被确定为使得确定的优化比率将是全部存储的传输块的平均。
13.如权利要求8所述的方法,还包括:
当接收到小于在内部存储器中分配给其的子分区的部分的传输块时,确定是否将传输块完全地存储器在内部存储器中。
14.如权利要求8所述的方法,其中,内部存储器包括片上存储器,外部存储器包括片外存储器。
15.一种用于用户设备(UE)的调制解调器芯片,包括:
下行(DL)混合自动重传请求(HARQ)缓冲控制器,当分配给UE的激活的分量载波(CC)的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生,并且HARQ进程被初始化时,通过以下步骤执行预分区:
将分区的数量设置为等于激活的CC的数量;
将分区的相对大小设置为与它们的相应的CC的容量成比例;
使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;
通过具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于选择的针对该分区的HARQ进程的优化数量的子分区。
16.如权利要求15所述的调制解调器芯片,其中,如果当执行预分区时激活的HARQ进程存储在HARQ缓冲器中,则DL HARQ缓冲器控制器通过分配分区和子分区来分配整个HARQ缓冲器存储器,以使激活的HARQ进程能够从它们的旧的存储器位置移动到新的存储器位置。
17.如权利要求15所述的调制解调器芯片,其中,当CC的激活的HARQ进程的数量超过在HARQ缓冲器中分配给该CC的子分区的数量时,DL HARQ缓冲器控制器在针对该CC的另一HARQ进程而接收且存储在分配给其的子分区中的第一传输块被解码并且没有错误被检测到时,将分配给第一传输块的子分区是可用的,以存储额外的HARQ进程的传输块。
18.如权利要求15所述的调制解调器芯片,其中,当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的分区的子分区的数量时,DL HARQ缓冲器控制器增大该分区中的一个或多个子分区的压缩等级,以使全部的激活的HARQ进程分配给该分区的子分区。
19.一种用于用户设备(UE)的调制解调器芯片,包括:
到总线的连接;
内部存储器;
下行(DL)混合自动重传请求(HARQ)缓冲器控制器,确定可用于DL HARQ缓冲器的内部存储器与通过连接经由总线可用于DL HARQ缓冲器可用的外部存储器的优化比率,并且根据确定的优化比率在内部存储器与外部存储器之间分配逻辑DL HARQ缓冲器存储器的每个分区和子分区。
20.如权利要求19所述的调制解调器芯片,还包括:
HARQ合并器,将重新发送的传输块的一个或多个代码块与存储在HARQ缓冲器中的原来发送的传输块的一个或多个代码块进行合并,
其中,存储在内部存储器中的原来发送的传输块的代码块在原来发送的传输块的代码块被存储在外部存储器中之前被合并。
21.如权利要求20所述的调制解调器芯片,还包括:
暂存缓冲器,保持被存储在外部存储器中并且通过总线被发送到所述调制解调器芯片的原来发送的传输块的代码块,并且使得代码块对于HARQ合并器是可用的。
22.如权利要求19所述的调制解调器芯片,其中,DL HARQ缓冲器控制器基于以下项中的至少一个,来确定内部存储器与外部存储器之间的比率:可用的内部存储器的大小、可用的外部存储器的大小、压缩等级、当前操作情况、功率/资源管理方案以及当前通信设置和/或情况。
23.如权利要求19所述的调制解调器芯片,其中,DL HARQ缓冲控制器将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分具有确定的优化比率。
24.如权利要求19所述的调制解调器芯片,其中,DL HARQ缓冲器控制器将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分被确定为使得确定的优化比率将是全部存储的传输块的平均。

说明书全文

用户设备、调制解调器芯片和分配缓冲器的方法

[0001] 本申请要求于2015年2月13日提交的标题为“Method and system for contiguous HARQ Memory Management(用于连续HARQ存储器管理的方法和系统)”的第62/116,094号美国临时申请以及于2015年9月8日提交的第14/847,320号美国申请的优先权,所述申请的内容通过引用包含于此。

技术领域

[0002] 本公开总体上涉及片上存储器和片外存储器的半静态存储器分区以及有效的存储器管理,更具体地说,涉及用于在使用载波聚合(CA)的长期演进(LTE)系统中的用户设备(UE)的下行混合自动重传请求(HARQ)缓冲器存储器管理。

背景技术

[0003] 在HARQ系统中,包的接收器对该包执行错误检测并且向发送器通知结果。更具体地说,如果没有检测到错误,则接收器发送ACK,而如果检测到错误,则接收器发送NACK。如果发送器接收NACK,则发送器将相同的包重新发送到接收器。使用称为“软合并”的技术,接收器将重新发送的包与初始发送的包进行合并,以确定包的正确内容。然而,这需要接收器存储接收的包,直到错误检测被执行之后,而如果错误被检测到,则接收器存储接收的包,直到重新发送的包被接收为止。该存储器被称为HARQ缓冲器、HARQ存储器或软缓冲器。
[0004] 不断增大的数据速度和/或吞吐量已经要求UE中的HARQ缓冲器已不得不能够存储不断增大的数据的量。在LTE中,针对UE的各种类型性能已经被定义。在类型5、6和7中,UE必须能够存储针对下行(DL)HARQ缓冲器的大约370万软比特。在LTE-升级(LTE-Adcanced)中的类型14要求大约474万软比特。通常,UE(例如,移动终端)的HARQ缓冲器被实现为“片上”,即,作为RF/基带调制解调器芯片或片上系统(SoC)中的存储器;然而,这样大的HARQ缓冲器大小将难以保持在片上。一种解决方法是将HARQ缓冲器中的一些保持在片外,即,外部存储器。然而,由于访问外部存储器比访问存储在片上的数据花费长得多的时间,因此这导致数据可用性的问题。
[0005] 现在,通过在存储软比特之前压缩软比特来有效地降低HARQ缓冲器存储器要求。量化的软比特是接收到的下行信号的信道估计的结果,并且是对数似然比(LLR)的格式,这表示可由8比特准确地表示一个软比特,然而许多实施方式使用4比特或5比特表示一个软比特。压缩可将这些4至8软比特降低到与单个比特一样小;然而,压缩的代价是原始LLR值的准确性和保真度的损失。
[0006] UE DL HARQ缓冲器的存储器分配可能是复杂的并且有些不可预测。在LTE-升级中,UE可接收多达5个分量载波(component carrier)(CC),进一步地,规格(specifications)将允许多达32CC的载波聚合,每个CC的带宽的大小可在1.4MHz至20MHz范围,每个CC可具有多达16个并行的HARQ进程。并行地执行HARQ进程以最大化吞吐量:如果一个HARQ进程停止并等待重新发送的包,则其他HARQ进程可继续。进一步地,复杂化的UE DL HARQ缓冲器存储器分配实际上就是HARQ进程的大小可以是不同的。仍进一步地,HARQ进程和CC是不断地被激活和去激活,因此不断地改变存储要求。
[0007] 一些UE DL HARQ缓冲器存储器分配系统通过随着变化发生而动态地分配(和取消分配/重新分配)存储器,来处理该不断变化的复杂度。换言之,当新的HARQ进程被激活时,HARQ缓冲器中的存储器的适当的量被分配,而当HARQ进程被去激活时,它的分配的存储器被“取消分配”(即,系统认为它“空”并且准备被分配)。随着时间,随着具有不同数量的HARQ进程的CC激活和去激活,以及在每个CC内的HARQ进程(具有不同大小)激活和去激活(“停止”以重新发送),仅保持什么被分配以及在什么位置跟踪变得越来越复杂。此外,这样的HARQ缓冲器经常针对每个接收的子而被完全地重新分配。
[0008] 这种动态的HARQ缓冲器系统通常使用复杂的链表存储器管理方案,以不断地重新分配和重新分区HARQ存储器。除了保持链表存储器管理系统所需的资源以外,通过这样的系统保持的HARQ缓冲器还将不可避免地具有存储器碎片,这可能变得相当严重,即使在不严重时,仍减慢数据的移动,可能引起HARQ进程“下降(drop)”(即,当因为数据不在它被认为应该在的位置时,HARQ进程暂停)。
[0009] HARQ进程中的数据被分割为传输,传输块依次地被分割为代码块。通过以下的事实为UE DL HARQ缓冲器添加了另一等级的复杂度:与UL不同,DL是异步的,这表示UE DL HARQ缓冲器不“知道”具体的HARQ进程的下一个传输块将在什么时候到达。因为两个传输块应该在同一时间立即可用于合并器,所以当例如重新发送的传输块需要与先前发送的传输块进行合并时,这变得有问题。
[0010] 当HARQ缓冲器被部分地存储在片外的系统使用典型的链表存储器管理时,每个新的进程在到达时被分配,并且被存储在片上或片外。当HARQ进程与DL HARQ进程的异步特性合并时,当需要与接收的重新发送的传输块合并时,由于访问存储在外部存储器中的先前发送的传输块(具有检测错误)所需的额外的时间,HARQ进程将减慢,并且可能终止。
[0011] 因此,需要有效的且高效的UE DL HARQ缓冲器存储器管理的设备、系统和方法。发明内容
[0012] 因此,进行本公开以至少解决上述的问题和/或缺点,并且至少提供下述优点。在本公开的一个方面,针对UE DL HARQ缓冲器提供更加高效的存储器管理方案,该方案不受存储器碎片的影响,并且不需要存储器针对每个子帧而重新分区。在本公开的另一方面,HARQ缓冲器可使用多个不同的压缩和/或传输模式,以最大化HARQ缓冲器利用和HARQ合并效率。在本公开的另一方面,HARQ缓冲器被预分区,以优化连续的存储器分配并且最大化HARQ缓冲器和HARQ合并器的效率和利用。
[0013] 在本公开的另一方面,HARQ缓冲器存储器被分割在片外(外部)存储器与片上(内部)存储器之间,同时满足时序约束和HARQ重新发送约束。在本公开的另一方面,HARQ缓冲器的一部分被存储在外部存储器,同时在需要时使得存储在外部存储器中的内容可用,由此在通过调整存储压缩/传输来最大化性能以及最小化功率利用并且最小化写入到外部存储器的同时,满足异步DL HARQ传输的标准要求。
[0014] 根据本公开的一方面,一种用户设备(UE)可包括调制解调器芯片,该调制解调器芯片可包括下行(DL)混合自动重传请求(HARQ)缓冲器控制器,该DL HARQ缓冲器在分配给UE的激活的分量载波(CC)的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生,并且HARQ处理被初始化时,通过以下步骤执行预分区:将分区的数量设置为等于激活的CC的数量;将分区的相对大小设置为与它们的相应的CC的容量成比例;使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;通过利用具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于针对该分区而选择的优化的HARQ进程的数量的子分区。
[0015] 所述调制解调器芯片还可包括片上存储器,并且UE还可包括片外存储器;连接片外存储器和调制解调器芯片的总线。HARQ缓冲器控制器确定可用于DL HARQ缓冲器的片上存储器与通过总线而可用于DL HARQ缓冲器片外存储器的优化比率,并且根据确定的优化比率在片上存储器与片外存储器之间分配逻辑HARQ缓冲存储器的每个分区和子分区。
[0016] 根据本公开的另一案方面,一种分配用户设备(UE)下行(DL)混合自动重传请求(HARQ)缓冲器的方法可包括:通过以下步骤对HARQ缓冲器进行预分区:将分区的数量设置为等于激活的分量载波(CC)的数量;将分区的相对大小设置为与它们的相应的CC的容量成比例;使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;通过具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于选择的针对该分区而选择的HARQ进程的优化数量的子分区,其中,当激活的CC的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生时,并且HARQ处理被初始化时,执行预分区。
[0017] 如果当执行预分区时激活的HARQ进程存储在HARQ缓冲器中,则分配整个HARQ缓冲存储器的步骤可包括:分配分区和子分区,使得激活的HARQ进程能够从它们的旧的存储器位置移动到新的存储器位置。
[0018] 所述方法还可包括:当接收到小于分配给其的子分区的传输块时,确定针对该传输块而选择的压缩等级是否能够被降低,从而该传输块能够更加充分地占用分配给该传输块的子分区。
[0019] 所述方法还可包括:当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的子分区的数量时:当针对该CC的另一HARQ进程而接收且存储在分配给其的子分区中的第一传输块被解码并且没有错误被检测到时,分配给第一传输块的子分区变为可用的,且额外的HARQ进程的传输块被存储分配给第一传输块的子分区中。
[0020] 所述方法还可包括:当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的分区的子分区的数量时,增加该分区中的一个或多个子分区的压缩等级,以使全部的激活的HARQ进程的总数被分配给分配给该分区的子分区。
[0021] 根据本公开的另一方面,一种分配用户设备(UE)下行(DL)混合自动重传请求(HARQ)缓冲器的方法可包括:确定可用于HARQ缓冲器的内部存储器与可用于HARQ缓冲器的外部存储器的优化比率;根据确定的优化比率,在内部存储器与外部存储器之间分配逻辑HARQ缓冲器存储器的每个分区和子分区。
[0022] 优化比率包括HARQ缓冲器可用的全部内部存储器与在当前的带宽和分量载波分配处具有最大吞吐量的假设下存储全部HARQ进程所需的额外的存储器的比率。
[0023] 基于以下项中的至少一项来确定内部存储器与外部存储器之间的比率:可用的内部存储器的大小、可用的外部存储器的大小、压缩等级、当前操作情况、功率/资源管理方案以及当前通信设置和/或情况。
[0024] 所述方法还可包括:将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分具有确定的优化比率。
[0025] 所述方法还可包括:将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分被确定为使得确定的优化比率将是全部存储的传输块的平均。
[0026] 所述方法还可包括:当接收到小于在内部存储器中分配给其的子分区的部分的传输块时,确定是否将传输块完全地存储器在内部存储器中。
[0027] 内部存储器包括片上存储器,外部存储器包括片外存储器。
[0028] 根据本公开的另一方面,一种用于用户设备(UE)的调制解调器芯片包括下行(DL)混合自动重传请求(HARQ)缓冲控制器,该DL HARQ缓冲器控制器在分配给UE的激活的分量载波(CC)的数量的改变、HARQ进程的数量和/或大小的改变、传输模式的改变中的至少一个发生,并且HARQ进程被初始化时,通过以下步骤执行预分区:将分区的数量设置为等于激活的CC的数量;将分区的相对大小设置为与它们的相应的CC的容量成比例;使用一个或多个标准来针对每个分区选择优化的压缩等级和HARQ进程的数量;通过具有设置的相对大小的设置数量的HARQ缓冲器分区来分配整个HARQ缓冲器存储器,其中,每个分区具有数量等于选择的针对该分区的HARQ进程的优化数量的子分区。
[0029] 如果当执行预分区时激活的HARQ进程存储在HARQ缓冲器中,则DL HARQ缓冲器控制器通过分配分区和子分区来分配整个HARQ缓冲器存储器,以使激活的HARQ进程能够从它们的旧的存储器位置移动到新的存储器位置。
[0030] 当CC的激活的HARQ进程的数量超过在HARQ缓冲器中分配给该CC的子分区的数量时,DL HARQ缓冲器控制器在针对该CC的另一HARQ进程而接收且存储在分配给其的子分区中的第一传输块被解码并且没有错误被检测到时,将分配给第一传输块的子分区是可用的,以存储额外的HARQ进程的传输块。
[0031] 当CC的激活的HARQ进程的数量超过HARQ缓冲器中的分配给该CC的分区的子分区的数量时,DL HARQ缓冲器控制器增大该分区中的一个或多个子分区的压缩等级,以使全部的激活的HARQ进程分配给该分区的子分区。
[0032] 根据本公开的另一方面,一种用于用户设备(UE)的调制解调器芯片包括:与总线的连接;内部存储器;下行(DL)混合自动重传请求(HARQ)缓冲器控制器,确定可用于DL HARQ缓冲器的内部存储器与通过连接经由总线可用于DL HARQ缓冲器可用的外部存储器的优化比率,并且根据确定的优化比率在内部存储器与外部存储器之间分配逻辑DL HARQ缓冲器存储器的每个分区和子分区。
[0033] 所述调制解调器芯片还可包括:HARQ合并器,将重新发送的传输块的一个或多个代码块与存储在HARQ缓冲器中的原来发送的传输块的一个或多个代码块进行合并,其中,存储在内部存储器中的原来发送的传输块的代码块在原来发送的传输块的代码块被存储在外部存储器中之前被合并。
[0034] 所述调制解调器芯片还可包括:暂存缓冲器,保持被存储在外部存储器中并且通过总线被发送到所述调制解调器芯片的原来发送的传输块的代码块,并且使得代码块对于HARQ合并器是可用的。
[0035] DL HARQ缓冲器控制器基于以下项中的至少一个,来确定内部存储器与外部存储器之间的比率:可用的内部存储器的大小、可用的外部存储器的大小、压缩等级、当前操作情况、功率/资源管理方案以及当前通信设置和/或情况。
[0036] DL HARQ缓冲控制器将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分具有确定的优化比率。
[0037] DL HARQ缓冲器控制器将接收的HARQ进程的传输块存储在内部存储器和外部存储器二者中,其中,传输块的内部存储器中的部分与传输块的外部存储器中的部分被确定为使得确定的优化比率将是全部存储的传输块的平均。
[0038] 本公开通过根据激活的载波分量的数量和容量而预分区整个UE DL HARQ缓冲器存储器空间,和/或通过由优化比率,在片上存储器与片外存储器之间分割UE DL HARQ缓冲器(每个分区和子分区根据优化比被分配在片上存储器与片外存储器之间),来提供有效且高效的UE DL HARQ缓冲器存储器管理的设备(包括UE和用于UE的调制解调器芯片,但不限于此)、系统和方法。附图说明
[0039] 从以下参照附图的详细的描述,本公开的实施例的以上和其他方面、特征和优点将更加清楚,其中:
[0040] 图1A是根据本公开的实施例的初始的连续HARQ存储器分配的方法的流程图
[0041] 图1B是根据本公开的实施例的将在图1A的步骤103、107和110中执行的全局HARQ存储器优化的一个可行的方法的流程图;
[0042] 图2A是根据本公开的实施例的HARQ缓冲器存储器分割的方法的流程图;
[0043] 图2B是根据本公开的实施例的接收到的传输块在内部HARQ存储器与外部HARQ存储器之间分割的图示;
[0044] 图3是根据本公开的实施例的示出暂存缓冲器(scratch buffer)的操作的示意图;
[0045] 图4是根据本公开的实施例的具有暂存缓冲器的HARQ存储器设备的框图
[0046] 图5是将HARQ连续存储器分配与HARQ存储器分割进行合并的本公开的示例的流程图。

具体实施方式

[0047] 现在将参照附图详细地描述本公开的各种实施例。在以下的描述中,仅提供诸如详细的配置和组件的特定细节,以帮助全面理解本公开的这些实施例。因此,对本领域技术人员应该清楚的是,可在不脱离本公开的范围和精神的情况下,进行在此描述的实施例的各种改变和修改。此外,为了清楚和简明,省略公知的功能和构造的描述。
[0048] 各种实施例可包括一个或多个元件。元件可包括被安排执行特定操作的任何结构。虽然可通过示例的方式在特定布置中使用有限数量的元件来描述实施例,但是实施例可在提供的实施例所期望的可选的布置中包括更多或更少的元件。值得注意的是,对“一个实施例”或“实施例”的任何参考表示与实施例相关地描述的具体的特征、结构或特点被包括在至少一个实施例中。在本说明书中的不同位置中出现的术语“在一个实施例中”不必须全部参考同一实施例。
[0049] 根据本公开的实施例的连续HARQ存储器分配根据激活的DL载波分量的容量来对UE DL HARQ缓冲器进行预分区。然后执行优化,从而针对每个分区以及每个分区中的子分区的大小和数量而选择压缩等级。整个HARQ缓冲器存储器被分配。使用这种存储器分配的HARQ进程继续,直到激活的分量载波的传输模式和/或数量和/或带宽存在改变为止,且在此时,连续HARQ存储器分配再次被执行。如果连续HARQ存储器分配在存储在HARQ缓冲器中的激活的数据(例如,激活的HARQ进程的传输块)存在时被执行,则无缝的HARQ重新分区被执行,以保证没有数据的损失。
[0050] 根据本公开的实施例的HARQ存储器分割提供在片上存储器与片外存储器之间有效且高效地分配UE DL HARQ缓冲器的方法、系统和设备。而不是将HARQ进程分配在片上或片外,根据本公开的实施例HARQ存储器分割将每个HARQ进程(或每个HARQ进程的每个传输块)分割在片上存储器和片外存储器之间。为了阻止HARQ进程下降,暂存缓冲器被提供在片上。
[0051] 从在本公开中呈现的各个方面产生的一些优点包括:
[0052] · UE DL HARQ缓冲器需要的更小的芯片区域
[0053] ·UE DL HARQ缓冲器操作消耗更少的功率
[0054] ·更少地倾向于由于存储器碎片而引起的HARQ进程降低
[0055] ·在仍满足异步HARQ接收的要求的同时,将HARQ存储器卸载到外部缓冲器[0056] ·通过更高效的HARQ存储器管理以及通过调整HARQ存储器的更多进程的存储而获得的更高的数据吞吐量
[0057] ·避免根据新接收的进程动态地重新分配和重新分区HARQ存储器所需的复杂的链表存储器管理
[0058] ·避免由于HARQ进程的异步特性引起下一个接收的进程的知识的缺乏而导致HARQ合并的下降
[0059] 可一起或单独地实施根据本发明的实施例的连续HARQ存储器分配和HARQ存储器分割。为了便于描述/解释,以下首先单独地描述连续HARQ存储器分配,然后描述HARQ存储器分割,最后描述采用二者的方法。
[0060] I、连续HARQ存储器分配
[0061] 如以上所讨论的,UE可被分配多个成分载波(CC),其中,这些多个CC中的每个CC可具有不同数量的并行的HARQ进程,这些HARQ进程中的每个HARQ进程可具有不同的大小。传统的HARQ缓冲器存储器分配系统在接收到新的HARQ进程时,在HARQ缓冲器中搜索空位置以分配新接收的进程,导致存储器碎片、闲置的存储器和总体效率低。
[0062] 在根据本公开的实施例中,整个HARQ缓冲器被预分区。逻辑HARQ缓冲器分区的数量被设置为等于分配给UE的CC的数量。基于每个分区的相应的CC的容量(例如,基于CC上的可能的并行HARQ进程的数量、分配到该CC的带宽、每个HARQ进程发送的传输块(TB)的数量、传输模式(或者,更准确地说,由于传输模式的可能的大小和数量)等)来初始地设置每个分区的相对大小。在一个实施例中,每个分区的大小被设置为与存储针对其相应CC的最小数量的HARQ进程所需的大小成比例(如针对每个传输模式的标准所需),其中,这些HARQ进程中的每个HARQ进程具有如通过最大带宽分配和传输模式确定的最大可能的传输块分配。实际的传输块分配将依赖多个因素,其中,多个因素可包括接收装置的信道质量以及如通过多用户调度器确定的分配给该装置的带宽的部分。在另一实施例中,根据在操作传输模式所允许的HARQ进程的最大数量以及每个HARQ进程的最大大小来初始地设置逻辑HARQ分区的数量和大小。
[0063] 然后,执行全部的HARQ缓冲器优化,至少引起针对每个分区的压缩等级和子分区数量的选择。根据实施例,逻辑HARQ分区/子分区的数量/大小和/或针对每个、一些或全部逻辑HARQ分区/子分区的压缩/传输方案可被修改,以优化资源利用和/或消耗。在任何情况下,在预分区之后,全部分区的聚合的大小等于HARQ缓冲器可用的全部存储器的大小,并且每个分区中的全部子分区的聚合的大小等于该分区的全部存储器的大小,即,HARQ缓冲器可在初始时被完全地分配。一旦完成了全部的这些,就通过计算缓冲器分配表来实际地分配存储器。
[0064] 在一个实施例中,全部的HARQ缓冲器优化共同地对针对CC(分区)中的每个CC的压缩等级以及针对每个CC的将被存储的HARQ进程的数量(即,每个分区的子分区的数量)进行优化,同时还最大化缓冲器占用(即,填充每个分区)并且保证针对每个CC的HARQ进程的最小数量。将使用最大化HARQ缓冲器的利用并且具有最小闲置的存储器的约束,基于提供的存储在HARQ缓冲器中的HARQ进程的最大的聚合数量,为每个分区/CC来选择HARQ进程的压缩等级和数量。在另一实施例中,子分区的数量等于可被同时地存储的CC的HARQ进程的数量。
[0065] 图1A是根据本发明的实施例的初始的连续HARQ存储器分配的方法的流程图。在步骤103中,HARQ缓冲器分区的数量被设置为分配给UE的CC的数量。在步骤107中,每个分区的初始大小被设置为与存储最小数量的针对相应的CC的HARQ进程所需的大小成比例,其中,每个HARQ进程具有传输块(TB)的最大可能分配。TB的最大数量依赖于载波带宽。
[0066] 在步骤110中,选择优化的(i)针对每个分区/CC的压缩等级以及(ii)存储在每个分区/CC中的HARQ进程的数量。在本实施例中,每个分区/CC的压缩等级和HARQ进程的数量可共同地被优化,以最大化每个分区/CC的将被存储的HARQ进程的总数以及HARQ缓冲器占用。当然,存储每个载波的进程所需的最小数量也可被保证。如果每个分区/CC的压缩等级以及HARQ的数量的两个不同的组合导致相同的(并且最大的)聚合数量的HARQ进程,则选择具有最大的HARQ缓冲器占用和对于主载波的更多的分配的组合。
[0067] 下面进一步描述的图1B是根据本公开的实施例的可如图1A的步骤103、107和110执行的全局优化的方法的流程图。
[0068] 在步骤115中,基于先前的计算来执行HARQ缓冲器的存储器分配。分配在步骤103中计算的分区的数量,其中,每个分区具有在步骤107中计算的大小。为每个分区分配在步骤110中计算的HARQ进程的优化数量。在本实施例中,每个分区均匀地除以它的确定的HARQ进程的优化数量,因此它的全部子分区具有相同的大小。在其他实施例中,大小可在分区内变化,并且可合理地被选择作为优化的部分。
[0069] 如图1A中所指示,如果HARQ缓冲器存储器分配发生在HARQ处理(即,由于,例如,分量载波的激活或去激活而实际地重新分配)期间,则在步骤115和步骤117二者中执行无缝的HARQ重新分区或重新分配。因为当前分配的HARQ缓冲器可能具有必须被保持的“活(live)”HARQ进程的传输块,所以步骤115中的新的分配必须考虑到这一点。随着无缝的HARQ重新分配,根据步骤115中的新的分配的新的存储器映射被设计,使得“活”HARQ进程可被首先移动到它们的新位置。这要求旧的和新的存储器位置不重叠,如参照下面的步骤117进一步详细讨论的。最后,在步骤115中,计算缓冲器分配表。
[0070] 步骤117被示出为虚线框,用于指示仅在步骤103、107、110、115被执行时激活的CC已具有带有“活”数据的分区的情况下(这将是大部分情况)才执行步骤117。如上所述,根据本公开的实施例,在步骤115和117中执行无缝的HARQ缓冲器重新分配(或重新分区),以将“活”数据保存在存在的“旧的”分区中。在步骤117中,旧的HARQ进程被驱逐出HARQ缓冲器,如果新的HARQ存储器分配需要它(例如,如果它们的压缩被改变),则旧的HARQ进程被修改,并且旧的HARQ进程首先(即,在任何新的HARQ进程被保存之前)被保存到它们的新分配的存储器位置。因此,步骤117是示出在规律的HARQ进程继续(如图1A中的灰色方框所表示的)之前发生的事。当规律的HARQ进程继续时,在步骤117之后,新的HARQ进程等被保存,旧的分区/存储器位置将根据新的HARQ缓冲器存储器分配方案被重新分配/重新分区。换言之,旧的存储器位置被有效地清除并且被新的HARQ缓冲器存储器分配方案所替换,但是仅在这些旧的位置中的“活”内容根据新的HARQ缓冲器存储器分配方案被存储在它们的新的位置之后。如本领域普通技术人员将理解的,虽然在此使用术语“继续”,但是不应被解释为表示在步骤103、107、110、115(117)被执行的同时HARQ处理必需“停止”,而是这些操作和步骤中的许多可被并行地执行,或相反地被实现为允许连续的处理。
[0071] 一旦UE DL HARQ缓冲器存储器在步骤115中被分配(如果必需,步骤117被执行),UE就执行根据针对步骤110中的每个CC选择的优化的等级而被压缩的传入的TB的HARQ处理。只要不存在分配给UE的带宽、分配给UE的CC的数量、HARQ进程的数量或最大大小(它们中的任何一个可由于,例如,传输模式、载波激活/去激活和/或带宽重新分配的改变而改变)的改变,在图1A的步骤103、107、110、115中确定的初始的连续HARQ存储器分配就保持在适当的位置。
[0072] 如图1A中的判定菱形所示,如果存在分配给UE的带宽、分配给UE的CC的数量、HARQ进程的数量或最大大小等的变化,则步骤103、107、110、115,HARQ缓冲器存储器的初始化和分配被再次执行。
[0073] 在本公开的其他实施例中,如图1A中的可选的步骤122A和122B所示,在不要求步骤103、107、110、115(117)的完整的重新初始化/重新分配的情况下,可在HARQ处理期间对自适应的HARQ存储器分配进行各种修改。
[0074] 如通过判定菱形120的“否”循环上的位置(即,不存在带宽、CC的数量等的改变)所示,在正常的HARQ处理期间执行可选的步骤122A。在一个实施例中,可选步骤122A包括针对每个接收的子帧执行下面操作:如果调度TB小于它的HARQ进程的最大大小(即,它的子分区的大小),则它的分配的压缩变换可被改变,从而TB将充分地占用它的子分区。以这种方式,HARQ进程被更加保真地存储,并且合并增益(combining gain)将被观察到。
[0075] 如通过判定菱形120的“是”循环上的位置所示,当存在带宽、CC的数量、HARQ进程的数量或最大大小等的改变时,可选择的步骤122B被执行。在一个实施例中,当CC中的HARQ进程的数量超过分配给该CC的子分区的数量时,可选择的步骤122B被执行。在本实施例中,针对与CC的进程相应的每个子帧、每个载波以及每个TB,如果解码结果和错误检测结果指示TB被正确地接收,则与该TB相应的存储器子分区被标注为可用的。然后不具有在HARQ缓冲器中分配的子分区的载波内的每个接收的进程,在不改变任何子分区大小的情况下,被分配给可用的存储器子分区中的一个(当然,随后该子分区被标注为占用)。如果与子分区不相关联的TB被接收并且不存在可用的子分区存在,则接收的TB被解码并且被检查错误,但是不被保存用于稍后可能的合并。在另一实施例中,当在分区中,CC中的HARQ进程的数量超过分配给该CC的子分区的数量时,增加针对存在的子分区的压缩等级,从而为该分区中的另一子分区创建充足的空间。在这样的实施例中,在不要求完整的重新分配的情况下(即,在不重复步骤103、107、110、115(117)的情况下),分区将保持在合适的位置,而每个分区中的子分区的数量可随时间改变。
[0076] 图1B是图1A的步骤103、107、110的一个可行的实施方式的流程图。更具体地说,图1B是根据本公开的实施例的全局HARQ存储器优化的方法的流程图。
[0077] 在图1B的步骤103-A中,确定载波分量的数量(N)。在步骤107-A中,确定每个CC(B_i)的带宽(BW)、每个CC的代码块的最大数量(C_i)以及每个CC的HARQ进程的数量(M_i)。在步骤107-B中,HARQ缓冲器被初始化为N个分区,其中,每个分区的大小与它的相应的CC的相对最大的带宽成比例(N_cb*C_i*M_i),其中,N_cb是每个代码块的将被存储的比特的数量。N
在步骤110-010中,制作长度L(=(压缩模式的数量))的全部压缩模式的列表。
[0078] 在步骤110-022、110-023、110-025、110-027、110-029中,该方法循环经过全部可行的压缩模式,从而根据设置的约束来制作全部有效可行的压缩模式的列表。在步骤110-021中,索引j被设置为1,以初始化处理。接下来,在步骤110-022中,确定j是否小于或等于L,其中,L是全部压缩模式的长度(参见步骤110-010)。在步骤110-023中,选择在步骤110-
010制作的压缩模式的列表中的第j个压缩模式,以计算可以以第j个压缩等级被存储在CC/分区i(针对CC/分区,i=1到N)中的HARQ进程(m_ji))的数量。
[0079] 在步骤110-025中,确定在步骤110-023计算的可以以第j个压缩等级被存储在CC/分区i的HARQ进程的数量(m_ji)是否大于或等于针对CC/分区i的HARQ进程所需的最小数量(它是M_i和8中的最小(即,min{M_i,8})。这针对每个CC/分区i(即,i=1至N)而被执行。如果在步骤110-025中,计算的HARQ进程的数量(m_ji)大于或等于针对CC/分区i的HARQ进程所需的最小数量,则第j个压缩模式是有效的,因此,在步骤110-027中它被添加到有效的压缩列表。在步骤110-027之后,或者如果在步骤110-025中,计算的HARQ进程的数量(m_ji)小于针对CC/分区i的HARQ进程所需的最小数量,则在步骤110-029中索引j被增加1,然后该方法返回到步骤110-022。通过这些方法,步骤110-022、110-023、110-025、110-027、110-029的循环保持重复直到在步骤110-022中j大于全部压缩模式的长度L为止。
[0080] 当处理停止,即,当在步骤110-022中索引j变得大于L时,在步骤110-030中选择在压缩模式列表中的最大化存储的HARQ进程和HARQ缓冲器占用的数量的有效的压缩模式。
[0081] 在参考图1B讨论的实施例中,提供用于最大化HARQ存储器利用并且最大化HARQ合并效率的HARQ存储器分区的全局优化。通过贯穿全部分区寻找将最大化存储在HUARQ缓冲器中的HARQ进程的数量的压缩等级的合并,来完成全局优化。然而,这样的全局优化在具有更少可能的HARQ进程或接收的每个子帧的比特的CC的开销(expense)处,导致支持(favoring)具有更多可能的HARQ进程或接收的每个子帧的比特的CC,因为将为这些CC分配更小的分区和/或更高的压缩等级,所以导致这些CC的更低的HARQ合并效率。根据本公开的另一实施例将分区公平地分配在CC之中,并且局部地优化比特压缩等级,以最大化针对每个CC的HARQ合并效率,并且最大化它的相应的分区的缓冲器利用率。在本实施例中,步骤110中的优化包括根据全局优化过程、本地优化过程或它们的组合为每个分区选择比特压缩变换。如果在优化之后该分配的缓冲器占用小于分区的100%,则在不改变第一分区的压缩模式的情况下,该分区的相应的未使用的存储器被分配(传递)到具有下降的HARQ进程的另一载波。如果没有更多的下降的进程,则聚合的剩余的存储器可被逻辑地重新分配,并且被聚合到另一分区,以提高它的相应的载波的HARQ效率。
[0082] 如上所述,在HARQ处理期间,CC的HARQ进程的数量可超过进程的最小需要的数量,即,可大于根据LTE-升级标准规范被UE存储所需的最小数量。在这样的情况中,装置可选择不为额外的进程分配存储器,虽然存储额外的进程将提供HARQ合并增益,并由此提供更高的数据吞吐量和更好的性能。可选地,HARQ控制器可通过使用更积极的压缩变换软比特LLT来选择存储更多的HARQ进程,以使每个子分区将需要更少的存储器。本公开的方案将共同地为每个载波优化压缩等级,以使不同的CC可使用不同的压缩等级。
[0083] II、HARQ存储器分割
[0084] 当HARQ存储器被分割为片上(内部)存储器和片外(外部)存储器时,存在很多挑战。一个挑战是由于DL HARQ进程的异步特性而引起的硬件的严格的时序(strict timing)。此外,当重新发送的传输块被接收到时,只有有限的时间段来对于该进程执行HARQ合并操作。另一个挑战是每个HARQ在HARQ合并操作之前应该是内部可用的。然而,当一些HARQ进程被存储在内部存储器中,而其他HARQ进程被存储在外部存储器中(这需要,例如,通过总线读取/写入)时,HARQ进程在需要时可能不是立即可用的,导致不能满足时序要求,或者至少导致HARQ合并效率的损失。
[0085] 当根据本公开的实施例在片上存储器与片外存储器之间分割HARQ缓冲器时,每个HARQ进程被分割,即,HARQ进程的部分被存储在内部,而HARQ的部分被存储在外部。在下面讨论的实施例中,在片上存储器与片外存储器之间分割HARQ进程内的传输块。虽然下面讨论的一些实施例存在在两个存储器(片上存储器和片外存储器)之间分割的UE DL HARQ缓冲器,但是本公开同样适用于包括多个片上存储器和/或片外存储器的情况。例如,在使用两个外部存储器的实施例中,传输块可被分割为三部分,其中,具有最大时延的外部存储器将存储最后的传输块,从而这些代码块将具有将被发送到HARQ合并器的最多时间(即,在传输块的最初的两部分正在被合并的同时)。
[0086] 图2A是根据本公开的实施例的HARQ缓冲器存储器分割的方法的流程图。在步骤210中,确定是否在内部存储器与外部存储器之间分割HARQ缓冲器。该步骤可几乎发生在任何时间,该确定可基于任何标准。在一个实施例中,步骤210可发生在初始的HARQ缓冲器存储器分配期间,该确定可基于片上存储器是否足够大以适合需要的HARQ进程。在其他实施例中,该步骤可发生在规律的HARQ处理期间,并且可基于移动装置的当前操作情况、总体系统的当前操作情况、移动装置的功率/资源管理方案等中的一个或多个。在其他实施例中,确定是否分割HARQ缓冲器可根据特定的阈值,诸如,将被要求容纳在内部存储器内的全部HARQ进程(在最大吞吐量处)、子分区的结果总数等,和/或其他启发式模式的压缩技术。在一些实施例中,该步骤可发生在HARQ进程激活、去激活、改变它的存储需求等任何时候。在其他实施例中,对装置的默认设置将具有HARQ缓冲器存储器分割,因此不存在步骤210,但是存在确定是否存储代码块、传输块、HARQ进程、CC/分区和/或完全地在片上的整个HARQ缓冲器的另一步骤。
[0087] 在图2A中所示的实施例中,这些步骤发生在HARQ缓冲器存储器分配期间,步骤210基于全部HARQ进程按给定载波聚合和带宽合并时是否可容纳在内部存储器中。如果全部的HARQ进程可容纳在内部存储器中(步骤210中的否),则仅使用内部存储器来继续HARQ缓冲器存储器分配。如果全部的HARQ进程不可容纳在内部存储器中,则确定为需要分割(步骤210中的是),然后该方法在步骤220中继续。
[0088] 在步骤220中,计算容纳全部的HARQ进程所需的附加的外部存储器。在按当前带宽和载波聚合分配的最大可能的吞吐量的假设下完成该计算。在其他实施例中,可使用不同的假设,外部存储器容量可被限制,外部存储器可根据例如操作条件等是设置的值或是自适应的。此外,在其他实施例中,步骤220中的计算可以是更加复杂的,包括诸如以下因素:可用的外部存储器(假设多于一个外部存储器可被使用,和/或,例如存储器是两用的)、可用的压缩方案、移动装置的当前操作情况、整个系统的当前操作情况、移动装置的功率/资源管理方案。在大部分实施例中,在步骤210中分割的原因与步骤220中进行的任何计算/确定直接地相关。
[0089] 在步骤230中,计算内部存储器与需要的外部存储器的比率。在此计算的比率将基于步骤220中准确计算的是什么,如以上所指示,这可随着本公开的实施例和/或实施方式而改变。在其他实施例中,该比率可被预先确定,被限制为一组离散的值,被限制为值的范围等。在一些实施例中,该比率将至少部分地基于可用的外部存储器的量(假设多余一个外部存储器可被使用,和/或,例如存储器是两用的)、可用的压缩方案、移动装置的当前操作情况、整个系统的当前操作情况、移动装置的功率/资源管理方案等中的一个或多个。
[0090] 在步骤240中,存储器分配根据步骤230中计算的比率来被分割。因此,片外存储器的分区和子分区将具有与片上存储器的分区和子分区相同的划分和相对比例,但是不同的绝对大小。如果计算的比率是Y%:1-Y%,则片上的整个HARQ缓冲器的大小与在片外存储的整个HARQ缓冲器的大小的比率将是Y%:1-Y%,片上的每个分区的大小与它的相应的片外分区的大小的比率将是Y%:1-Y%,片上的每个子分区的大小与它的相应的片外子分区的大小的比率将是Y%:1-Y%等。本质上,它保持被分割为两部分的相同的单一存储器分配。
[0091] 当在正常的HARQ处理期间被接收到传输块时,发生图2A的步骤250。具体地说,传输块被分割,使得它的代码块的Y%被存储在内部存储器中的合适的子分区中,剩余的1-Y%代码块被存储在相应的外部存储器中的子分区中。这被图形地示出在图2B中,其中,传输块n 280正被存储在内部HARQ存储器260与外部HARQ存储器270之间分割的HARQ缓冲器中。因此,包括传输块n 280的Y%的第一部分282被存储在内部HARQ存储器260中,而包括传输块n 280的1-Y%的剩余的第二部分284被存储在外部HARQ存储器270中。
[0092] 在上面的步骤中,如果HARQ进程的传输块构成在获得最大吞吐量的带宽合并中的C个代码块,则在内部存储器中存储Floor(Y%*C)个代码块,在外部存储器中存储传输块的C-Floor(Y%*C)个代码块,其中,Floor(x)表示x的整数部分。
[0093] 在实际的HARQ处理期间,每个子帧的传输块大小可不同。在根据本公开的一个HARQ分割的实施例中,如果接收到的子帧中的传输块的大小小于为传输块分配的全部内部存储器(即,小于针对带宽合并的最大大小的Y%),则整个传输块可被存储在内部存储器中,在执行传输块的HARQ合并时不需要外部存储器访问。
[0094] 如果假设全部HARQ存储器被分割为2个物理部分,其中,内部存储器是全部HARQ存储器的X%,外部存储器是全部HARQ存储器的(100-X)%,则根据本公开的实施例,多达片上存储器的(100-X)%可被释放,用于其他用途和/或被消除。在上面的实施例中,如果分配的吞吐量和HARQ存储器分配处于如通过针对载波和带宽分配的最大允许的吞吐量而确定的最大值,则Y%=X%。然而,如果如基站基于包括装置的实际信道质量以及多用户计划约束而确定的分配的吞吐量小于最大允许吞吐量,则Y%>X%,并且装置可在内部存储器中存储更多的HARQ进程。
[0095] 在HARQ存储器分割的另一实施例中,存在两种模式:高性能和功率效率。在高性能模式中,优化压缩等级被用于最佳性能,从而使用更多的外部存储器。在功率效率模式中,压缩等级被增大,使得每个HARQ进程的大部分可被存储在片上,从而在片上存储更多但是对原始的软比特具有更小的保真度,在片外存储更少,由此减少访问外部存储器的次数,这将减少功耗。
[0096] 在另一实施例中,所述装置可根据一些设计标准(诸如,通过提供给主要分量载波更大的存储分割比率而将更高的优先权提供给主要分量载波),来选择改变针对每个传输块的外部存储器与内部存储器之间的存储分割比率。这样的贯穿传输块的存储分割比率中的变化可被完成,从而保持平均分割比率为Y%,如参照上面的图2A的步骤250所解释的。
[0097] 在针对HARQ存储器分割的另一实施例中,当HARQ分割比率不导致整数的代码块时,因此存在部分的内部存储器浪费/未占用每个传输块,通过允许一些传输块比其余的代码块多一个的代码块存储在内部,在保持Y%的平均分割比率的同时,存储分割比率在每个传输块是不同的。在下面,NT是存储在针对分量载波的HARQ缓冲器中的传输块的总数,其中,L是存储在外部存储器中的传输块的数量,NT–L是存储在内部存储器中的传输块的数量,C是传输块中的代码块的数量。使(1-Y%)C不是整数,然后调整为每个传输块分配的子分区,使得L=[NT([(1-Y)C]-(1-Y)C)]个传输块将外部地保持(1-Y)C CB,NT–L将外部地保持[(1-Y)C]CB,其中,[x]表示大于x的最小整数,[x]表示x的floor(是小于x的最大整数)。这将导致存储在外部存储器中的[NT([(1-Y)C]-(1-Y)C)]代码块的保留,这体现为功耗的节省。
[0098] 在针对HARQ存储器分割的另一实施例中,如果一些内部分区在存储全部代码块之后未被充分地占用,并且传输块的一些代码块被存储在外部存储器,则代码块可被进一步分割为内部部分和外部部分。
[0099] A、用于HARQ存储器分割的暂存缓冲器(scratch buffer)
[0100] 为了保证合适的时序并且阻止HARQ合并下降,根据本公开的实施例的HARQ分割需要相对较小的内部存储器“暂存”缓冲器。暂存缓冲器在合适的时间保证存储在外部存储器中的信息的可用性。如本领域的普通技术人员将理解的,暂存缓冲器的大小是基于具体的实施例和/或实施方式实现的另一个优化因素。然而,在很多情况下,附加的暂存缓冲器的大小可远远小于在由HARQ缓冲器分割提供的片上HARQ利用中的降低。
[0101] 图3是根据本公开的实施例的示出可保持两个代码块的暂存缓冲器的操作的示意图。为了便于描述/解释,暂存缓冲器308将被称为两个分开的部分,“暂存A”308A和“暂存B”308B,它们中的每个可保持单个代码块。如本领域的普通技术人员所理解的,虽然本实施例的暂存缓冲器保持两个代码块,但是为了方便描述/解释而使用这相对最小的大小,本公开不限于此,而是可具有更大的大小,仅被本公开的实现具体需要和要求所限制。
[0102] 在图3中,传输块已被重新发送,现在,新接收的传输块正与先前存储的传输块进行合并。更具体地说,在时间t=t0,存储在内部存储器中的传输块的代码块已全部被合并和保存,现在,存储在外部存储器中的传输块的第一代码块CBm需要与接收到的重新发送的传输块的相应的CBm进行合并。
[0103] 因此,在图3中的时间t=t0,代码块CBm从外部存储器330被加载到暂存A 308A中。虽然未在图3中示出,但是在t=t0的合并缓冲器306(在片上)可被合并,并且将最后的代码块存储在内部存储器。针对图3中的稍后的时间间隔,将不重复参考标号。
[0104] 在时间t=t1,如图3的上部所示,CBm从暂存A 308A被加载到合并缓冲器306中,与重新发送的传输块的相应的CBm(新的CBm)进行合并,并且结果(CBm*)被返回存储到暂存A 308A。在同一时间,如图3的下部所示,下一个代码块CBm+1从外部存储器330被加载到暂存B 
308B中。虽然图3中的t=t1的上部比下部似乎更加活跃,但是它们将花费大约相同的时间,因为暂存A 308A、暂存B 308B以及合并缓冲器306位于片上,并且可被访问,数据在它们之间相对快速地移动,而外部存储器330是在片外,因此从外部存储器加载(或“写入”)到片上暂存缓冲器中可花费相对较长的时间。
[0105] 在时间t=t2,如图3中的上部所示,合并的代码块CBm*从暂存A 308A被移动,以被存储在外部存储器330中,而下一个代码块CBm+2从外部存储器加载到暂存A 308A中。在同一时间,如图3的下部中所示,CBm+1从暂存B 308B加载到合并缓冲器306,CBm+1与相应的重新发送的传输块CBm+1(新的CBm+1)进行合并,并且结果(CBm+1*)被返回保存到暂存B 308B。
[0106] 图3中的时间t=t2示出每个时钟循环中将发生什么:一个暂存缓冲器的内容将被合并,同时另一暂存缓冲器的内容被存储,然后与下一个代码块一起被架在。因此,在时间t=t3,CBm+2将与新的CBm+2进行合并,结果CBm+2*返回加载到暂存A 308A中,同时随着CBm+1被返回加载到外部存储器330中而CBm+3将被加载到暂存B 308B中。实际上,虽然为了便于描述/解释而未在图3中示出,但是相似的同时操作也可发生在t=t0和t=t1。如上所述,在t=t0的合并缓冲器可合并来自内部存储器的最后的代码块CBm-1,合并的结果(CBm-1*)将被返回存储在内部存储器中。CBm-1*将不被存储在暂存缓冲器中,因为合并缓冲器30和内部存储器二者在片上,这表示CBm-1*可从合并缓冲器306相对直接地返回加载到内部存储器中。尽管如此,在t=t0在暂存B中存储CBm-1*是有益的和/或必要的实施例中,随着CBm+1在时间t=t1被加载到暂存B中CBm-1*已被移动到内部存储器。根据本公开的实施例,如图3的示例所示,存储在外部存储器中的代码块可在需要合并时(即,当存在重新发送的传输块时)是适当可用的。
[0107] 为了便于解释/描述,图3中的全部的暂存缓冲器(暂存A+暂存B)包括两个代码块,但是本公开不限于此,其他实施例可具有适合于保存更多或更少的代码块的暂存缓冲器大小。在一些实施例中,暂存缓冲器被实施为允许充足的提前时序用于软缓冲器信息的使用。在其他实施例中,暂存缓冲器可被实施为来自几个不同的传输块的代码块可在同一时间被访问,这将有益于例如并行处理。
[0108] 在一个实施例中,暂存缓冲器将用作初始存储器,而外部存储器将仅在重新发送是必须时(即,当错误被检测到时)被使用。在这样的实施例中,分配给外部存储器的传输块的代码块将被初始地存储在暂存缓冲器中。将对整个传输块(内部存储器中的代码块和暂存缓冲器中的代码块二者)执行错误检测。如果没有检测到错误,则不需要将代码块存储在外部存储器中,因此大大降低功率和资源消耗。如果检测到错误,则暂存缓冲器中的代码块被加载到外部存储器中用于稍后与重新发送的传输块进行合并。在其他实施例中,初始存储器可被实施为比外部存储器更容易访问的片外。
[0109] 在其他实施例中,暂存缓冲器和/或外部存储器可被用于存储其他数据。例如,软比特的派生物(诸如,硬判定比特或解码结果)可被写入到暂存缓冲器或外部存储器,以降低功耗或提高性能。
[0110] 图4是根据本公开的实施例的具有暂存缓冲器的HARQ存储器设备的框图。为了便于解释/描述,图4被大大地简化以及摘取。因此,图4中元件的相对位置和大小没有内在的和/或分开的含义。为了便于解释/描述仅示出有用的元件,并且如本领域的普通技术人员将知道的,实现本公开的实施例将需要更多的组件、连接等。相似地,虽然未分开地示出组件,但是一个或多个组件可根据本公开而被合并,或者相反地,组件被分离为子组件。
[0111] 在图4中,虚线框400指示片上的元件,而虚线框400外部的元件在片外。因此,数据总线420和外部HARQ存储器430在片外。LLR软比特410表示针对HARQ缓冲器的输入,并且被示出为片上和片外二者,因为将软比特提供到合适的组件的实际实施方式可采用各种各样的形式。例如,一个实施例中,为了速度和/或效率,可将期望针对外部存储器的传输/代码块直接引导到外部存储器,无需进行片上和/或具有专用的片上数据路径。
[0112] 图4中的片上400,HARQ控制器402至少控制与本公开有关的HARQ存储器操作。因此,在一些实施例中,HARQ控制器402可控制全部的片上HARQ功能。虽然可将HARQ控制器402实施为软件固件、硬件和/或它们的组合,但是本实施例中的HARQ控制器402被实施为运行从固件加载的指令的硬件。HARQ控制器确定与HARQ存储器管理相关的全部功能,以及存储和检索来自内部和外部HARQ存储器的数据。
[0113] HARQ控制器402具有通过到图4中的HARQ控制器402的虚线以及来自图4中的HARQ控制器402的虚线所指示的连接,以将控制、状态和数据信号发送到LLR软比特410、内部HARQ存储器404、合并缓冲器406、暂存缓冲器408以及外部HARQ存储器430,并且从LLR软比特410、内部HARQ存储器404、合并缓冲器406、暂存缓冲器408以及外部HARQ存储器430接收控制、状态和数据信号。如果传输块到达,则已经被执行存储器分配的HARQ控制器402将发送将传输块/代码块路由到片上或片外的控制信号。更具体地说,根据内部HARQ存储器404与外部HARQ存储器430之间的存储器分配来分割传输/代码块。去往外部HARQ存储器430的传输/代码块必需通过总线420被发送到它们的目的地。HARQ控制器402还将控制信号发送和/或已将控制信号发送到合适地初始化以及分配针对输入的传输块/代码块的而分配存储空间的内部HARQ存储器404与外部HARQ存储器430二者。
[0114] 软比特的压缩和/或传输有时作为存储处理的完整部分,通常紧接在存储之前而被执行。然而,根据本公开的压缩和/或传输的位置不被这样限制,而是可在很多位置被执行。此外,这些功能可被分开和/或是流线式的,并且在几个位置被执行。例如,指定给外部存储器430的软比特可作为被存储在外部存储器430的部分,而在它们通过总线420被发送之前,被压缩/传输,或者被压缩和传输。
[0115] 如果传输块被重新发送(即,如果在先前接收的当前被存储在HARQ缓冲器中的传输块中检测到错误),则新的传输块需要与旧的传输块进行合并。如果旧的传输块被全部地存储在内部HARQ存储器402中,则一个或多个新的和旧的代码块(根据合并缓冲器402的大小)将仅在片上周围被移动,以在合并缓冲器406中被合并然后被重新存储。如果,例如,存储的/旧的传输块在内部HARQ存储器404与外部HARQ存储器430之间被分割,则片上的代码块被合并以及被重新存储,然后,如以上操作图3所讨论的,片外的代码块被合并以及被重新存储。因此,片外的代码块将通过总线420从外部HARQ存储器430被发送到暂存缓冲器408中,从而在合并缓冲器406中被合并。如图3的示例所示,使用暂存缓冲器408,随着至少一个代码块被合并以及被重新存储在暂存缓冲器408中,至少一个代码块可在同一时间从外部存储器被上传/下载,由此降低HARQ合并下降。
[0116] 使用与图3中的示例所示出的相同原理,可实施进一步的流水线和/或存储器层级,以保证任何数量的片外的代码块在需要时可被用于片上合并。例如,可在从外部HARQ存储器430至暂存缓冲器408的数据路径中实现一个或多个中间“高速缓冲器存储器(cache)”的种类,诸如,外部HARQ存储器430与总线420之间的“高速缓冲器存储器”(可降低通过从外部HARQ存储器430读取代码块引起的延迟),或者总线420与暂存缓冲器408之间的相似的“高速缓冲器存储器”(可在片上和/或片外)。
[0117] 如本领域普通技术人员将理解的,片上存储器(诸如,内部HARQ存储器404、合并缓冲器406以及暂存缓冲器408)可被实施为静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等中的任何。相似地,本领域的普通技术人员将理解,外部HARQ存储器430可被实施为SRAM、DRAM、同步DRAM(SDRAM)、双倍数据速率(DDR)SDRAM等中的任何。简言之,如本领域技术人员将清楚的,外部和内部存储器是可存储数据然后检索数据的任何系统。如本领域普通技术人员所理解的,总线420可以是任何合适的接口,诸如,ARM先进可扩展接口(AXI),并且可以以各种各样的方式来实现总线420。
[0118] III、使用HARQ连续存储器分配和HARQ分割二者的实施例
[0119] 如上所述,本公开的一些实施例将HARQ连续存储器分配的不同实施例与HARQ存储器分割的不同实施例进行合并。
[0120] 图5是将HARQ连续存储器分配与HARQ存储器分割进行合并的本公开的示例的流程图。
[0121] 在步骤501中,HARQ缓冲器分区的数量被设置为等于激活的CC的数量,分区的相对大小被初始地设置为与它们的相应的CC的带宽成比例。在步骤503中,对分区的分区大小和压缩等级进行优化。在本实施例中,优化标准是可在HARQ缓冲器中具有最少闲置的存储器的同时适应于HARQ缓冲器的传输块的最大数量。在步骤505中,可根据在步骤503中确定的优化的大小,来分配分区的存储器位置。如上面所讨论的,如果存在正被存储的激活的HARQ进程,则执行无缝的HARQ分区。在步骤507中,根据针对每个载波优化的HARQ进程的数量而在每个分区中分配相同大小的子分区。可根据,例如,上面图1A和1B的描述中所讨论的全局优化进程来完成优化过程。
[0122] 在步骤510中,确定外部存储器是否能够用于HARQ缓冲器存储器分配。如果不能,则如下面所讨论的在步骤520继续进行过程。如果确定外部存储器能够用于HARQ缓冲器存储器分配,则在步骤515中,HARQ缓冲器的每个子分区在内部存储器与外部存储器之间被分割。在步骤501、503、505、507中分配的分区/子分区的相对大小和位置以选择比Y%:1-Y%的方式,而被保留和复制到外部存储器中,从而每个分区/子分区的Y%是在片上,剩余的1-Y%是在片外。可如描述图2A的步骤240和步骤250的段落以及下面描述的段落中所描述的来完成该过程。
[0123] 在步骤520中,确定接收到的传输块是否来自新的HARQ进程。如果接收到的传输块不是来自新的HARQ进程,则在步骤530中,根据先前确定的子分区分配、存储器分割比和压缩等级,将接收到的传输块存储在它的激活的子分区中。如果接收到的传输块是来自新的HARQ进程,则在步骤525中确定HARQ进程是否具有分配的子分区。如果在步骤525中HARQ进程不具有分配的子分区,则在步骤540中确定在它的CC的分区中是否存在任何可用的子分区。如果存在可用的子分区,则传输块被存储在所述可用的子分区中;如果不存在可用的子分区,则传输块不被存储在HARQ缓冲器中。
[0124] 如果在步骤525中,HARQ进程具有分配的子分区,则在步骤550中,对用于存储接收的传输块的压缩等级进行优化,并且传输块被存储在HARQ缓冲器中。如果HARQ缓冲器被分割,则内部存储器与外部存储器的分割比也被优化,并且传输块的适当的部分被存储在内部存储器和外部存储器中。如果实际吞吐量分配小于允许的最大吞吐量分配,则传输块将需要更少的存储器,比特压缩针对这些传输块而被重新优化,以在最小化针对这些传输块分配的子分区中的闲置存储器的同时而允许以更高保真度的方式进行存储。在步骤550中传输块被合适地存储之后,在步骤555继续进行过程。
[0125] 在步骤555中,如果传输块被发现为没有错误,即,它通过了循环冗余检测(CRC)测试,则它的子分区对于另一传输块的存储变为可用的。在此之后,在步骤560,当HARQ进程构成多个传输块时,过程等待另一HARQ进程和/或新的传输块到达。如果在步骤560中HARQ进程到达,则在步骤570中确定载波已经被激活还是被去激活。如果载波已经被激活/去激活,则再次执行步骤501、503、505、507、510、515的初始处理。如果载波没有被激活/去激活,则再次执行步骤520、525、530、540、550、555的HARQ处理。
[0126] 根据本公开的实施例,如本领域普通技术人员将理解的,在不同的实施例中,可以以不同的顺序,或并行地,或针对不同的时期同时地等发生根据本公开的步骤和/或操作。相似地,如本领域普通技术人员将理解的,图1、图2A和图5是执行的动作的简化的表示,真实的实现可在没有如图1A的步骤120、图2A中的步骤210、以及图5中的步骤510、520、525、
560和570进行的“判定”的情况下执行动作。相似地,作为简化的表示,图1、图2A和图5未示出本领域的普通技术人员所知的和所理解并且与本描述不相关和/或对本描述没有用的其他需要的步骤。
[0127] 根据本公开的实施例,可在便携装置上至少部分地实现或相反地执行步骤和/或操作的一些或全部。在此使用的“便携式装置”表示具有以下的能的任何便携的、移动的或可移动的电子装置:接收无线信号,包括多媒体播放器、通信装置、计算装置、导航装置等,但不限于此。因此,移动装置包括膝上型电脑、平板计算机、便携数字助手(PDA)、mp3播放器、手持式PC、即时通讯装置(IMD)、蜂窝电话、全球卫星导航系统(GNSS)接收器、手表、相机或可在人身体上穿戴和/或携带的任何这样的装置,但不限于此。
[0128] 根据本公开的实施例,可使用运行指令、程序、交互数据结构、客户端和/或服务器组件的一个或多个处理器至少部分地实现或相反地执行步骤和/或操作的一些或全部,其中,这样的指令、程序、交互数据结构、客户端和/或服务器部分被存储在一个或多个非暂时计算机可读介质中。一个或多个非暂时计算机可读介质可被实例化在软件、固件、硬件和/或它们的组合中。此外,在此讨论的任何“模块”的功能可被实现在软件、固件、硬件和/或它们的组合中。
[0129] 一个或多个非暂时计算机可读介质和/或用于实现/执行本公开的实施例的一个或多个操作/步骤/模块的方法在未限制的情况下可包括:专用集成电路(ASIC)、标准集成电路、执行合适的指令的控制器(包括微控制器和/或嵌入式控制器)、现场可编程阵列(FPGA)、复杂可编程逻辑器件(CPLD)等。任何系统组件和/或数据结构的一些或全部还可被存储为非暂时计算机可读介质(例如,硬盘、存储器、计算机网络或蜂窝无线网络或其他数据传输介质,或通过合适的驱动读取或通过合适的连接读取的便携介质物品,诸如DVD或闪存装置)上的内容(例如,如可执行的或其他非暂时机器可读的软件指令或结构化的数据),从而使得或配置计算机可读介质和/或一个或多个相关联的计算系统或装置,来执行或相反地使用或提供用于执行描述的技术中的至少一些内容。任何系统组件和数据结构中的一些或全部还可被存储为各种的非暂时计算机可读传输介质上的数据信号,可从包括经由基于无线的和基于有线/电缆的介质的非暂时计算机可读传输介质读取数据信号,然后发送数据信号,并且可采用各种方式(例如,如单一或多路模拟信号的部分,或者如多个离散数字数据包或帧)。这样的计算机程序产品还可在其他实施例中采用其他方式。因此,本公开的实施例可被实践在任何计算机系统配置中。
[0130] 因此,在此使用的术语“非暂时计算机可读介质”表示包括实际执行操作的任何介质(诸如,硬件电路),该操作包括将被提供给一个或多个处理器的程序和/或更高等级的指令(诸如,存储在非暂时存储器中的指令)以执行/实施,和/或包括存储在例如固件或非易失存储器中的机器等级指令。非暂时计算机可读介质可采用许多形式,诸如,包括以下项的非易失和易失介质,软盘、软磁盘、硬盘、RAM、PROM、EPROM、FLASH-EPROM、EEPROM、任何存储器芯片或盒式磁盘、任何磁带,或可读取计算机指令的任何磁性介质、CD-ROM、DVD、或可读取计算机指令的任何其他光学介质,或可读取计算机指令的任何其他非暂时介质,但不限于此。
[0131] 虽然在此已经示出并描述了本公开的特定实施例,但是本领域的普通技术人员将理解,在不脱离本公开的精神和范围的情况下可在形式和细节上对其进行各种改变,即本发明不限于在此描述的任何实施例,而是可被附加的权利要求和它们的等同物所限定。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈