一种数据处理方法及装置、计算机可读存储介质转让专利

申请号 : CN201811584351.6

文献号 : CN111356151B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张钉铭刘星

申请人 : 深圳市中兴微电子技术有限公司

摘要 :

本发明实施例公开了一种数据处理方法及装置、计算机可读存储介质,该数据处理方法,包括:对传输带宽资源进行分段,得到至少一个资源块组;获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传输带宽资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。

权利要求 :

1.一种数据处理方法,其特征在于,所述方法包括:

对传输带宽资源进行分段,得到至少一个资源块组;

获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传输带宽资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;

根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。

2.根据权利要求1所述的方法,所述数据传输参数包括:用户终端信息和信道数据;所述根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,包括:从所述至少一个资源块组的数据传输参数中,获取每一个资源块组对应的第一用户终端信息和第一信道数据;

按照所述预设运算并行度,采用所述第一用户终端信息和所述第一信道数据,依次对所述每一个资源块组进行运算处理,得到所述每一个资源块组对应的资源块组天线数据;

由所述至少一个资源块组中所述每一个资源块组对应的资源块组天线数据,构成所述基站的天线数据。

3.根据权利要求2所述的方法,其特征在于,所述每一个资源块组包括至少一个资源块;所述按照所述预设运算并行度,采用所述第一用户终端信息和所述第一信道数据,依次对所述每一个资源块组进行运算处理,得到所述每一个资源块组对应的资源块组天线数据,包括:从所述第一用户终端信息和所述第一信道数据中,获取所述每一个资源块对应的第二用户终端信息和第二信道数据;

按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,依次对所述每一个资源块进行运算处理,得到所述每一个资源块对应的资源块天线数据;

由所述每一个资源块组中所述资源块天线数据,构成所述每一个资源块组对应的资源块组天线数据。

4.根据权利要求3所述的方法,其特征在于,所述资源块组天线数据包括所述至少一根天线与所述至少一个资源块映射关系,所述按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,依次对所述每一个资源块进行运算处理,得到所述每一个资源块对应的资源块天线数据,包括:按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,对所述每一个资源块对应的所述至少一根天线进行运算处理,依次得到每一根天线的所述每一个资源块对应的天线数据;

由所述每一根天线的所述每一个资源块对应的天线数据,构成所述每一个资源块对应的资源块天线数据。

5.根据权利要求3所述的方法,其特征在于,所述资源块组天线数据包括所述至少一根天线与所述至少一个资源块映射关系,所述按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,依次对所述每一个资源块进行运算处理,得到所述每一个资源块对应的资源块天线数据,包括:按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,对所述至少一根天线对应的每一个资源块进行运算处理,依次得到每一个根天线的每一个资源块对应的天线数据;

由所述每一根天线的所述每一个资源块对应的天线数据,构成所述每一个资源块对应的资源块天线数据。

6.根据权利要求3至5任一项所述的方法,其特征在于,所述每一个资源块包括至少一个资源单位,所述按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,依次对所述每一个资源块进行运算处理,得到所述每一个资源块对应的资源块天线数据,包括:从所述第二用户终端信息和所述第二信道数据中,获取所述每一个资源单位对应的第三用户终端信息和第三信道数据;

按照所述预设运算并行度,采用所述第三用户终端信息和所述第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据;

由所述每一个资源单位对应的资源单位天线数据,构成所述每一个资源块对应的资源块天线数据。

7.根据权利要求6所述的方法,其特征在于,所述按照所述预设运算并行度,采用所述第三用户终端信息和所述第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据,包括:按照预设第一并行规则,采用所述第三用户终端信息和所述第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据,所述第一并行规则用于表征通过所述预设运算并行度对所述第三信道数据进行并行处理。

8.根据权利要求6所述的方法,其特征在于,所述按照所述预设运算并行度,采用所述第三用户终端信息和所述第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据,包括:按照预设第二并行规则,采用所述第三用户终端信息和所述第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据,所述第二并行规则用于表征通过所述预设运算并行度对所述第三用户终端信息进行并行处理。

9.根据权利要求8所述的方法,其特征在于,所述按照所述预设运算并行度,采用所述第三用户终端信息和第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每一个资源单位对应的资源单位天线数据,包括:按照第一预设分组规则和所述预设第二并行规则,对所述第三用户终端信息和所述第三信道数据进行分组,所述第一预设分组规则用于表征以组为单位进行所述数据处理;

依次对分组后的第三用户终端信息和分组后的第三信道数据进行运算处理,得到所述每一个资源单位对应的资源单位天线数据。

10.根据权利要求1所述的方法,其特征在于,所述数据传输参数包括用户终端信息和信道数据,所述获取所述至少一个资源块组的数据传输参数,包括:获取所述至少一个资源块组对应的用户终端信息和信道数据,所述用户终端信息和信道数据是按照预设第二分组规则对应地存储在缓存中的,所述用户终端信息用于表征所述用户终端和所述传输带宽资源的映射关系,所述信道数据用于表征所述至少一根天线与所述用户终端之间的空间信道信息,所述预设第二分组规则用于表征以组为单位存储在所述缓存中;

将所述用户终端信息和所述信道数据作为所述至少一个资源块组的数据传输参数。

11.根据权利要求1所述的方法,其特征在于,在所述根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据之前,所述方法还包括:获取所述传输带宽资源的目标运算量;

根据所述目标运算量和所述用户终端的数量,获取所述预设数据处理的并行度。

12.一种数据处理装置,其特征在于,所述装置包括获取单元、分段单元、写入单元和计算单元,其中,所述获取单元,用于对传输带宽资源进行分段,得到至少一个资源块组;

所述分段单元,用于获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传输带宽资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;

所述计算单元,用于根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。

13.一种数据处理装置,其特征在于,所述装置至少包括处理器、存储有所述处理器可执行指令的存储器、通信接口,以及用于连接所述处理器、所述通信接口和所述存储器的总线,当所述指令被执行时,所述处理器执行时实现如权利要求1至11任一项所述的方法。

14.一种计算机可读存储介质,其上存储计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述的方法。

说明书 :

一种数据处理方法及装置、计算机可读存储介质

技术领域

[0001] 本发明涉及无线通信领域,尤其涉及一种数据处理方法及装置、计算机可读存储介质。

背景技术

[0002] 下行大规模天线技术(Massive MIMO)频域数据处理是一种基于天线阵列的信号预处理技术,其通过调整天线阵列中每个阵元的加权系数产生具有指向性的波束,从而能够获得明显的阵列增益,提高无线信号覆盖质量,其在扩大覆盖范围、改善边缘吞吐量以及干扰抑止等方面都有很大的优势。
[0003] 基站利用用户设备(User Equipment,UE)上行链路导频信息进行信道估计,得到天线阵列与用户终端之间的空间信道信息,记为W矩阵。目前,下行Massive MIMO频域数据处理采用该W矩阵与原始用户终端信息相乘后,得到发送的天线阵列数据。
[0004] 随着移动通信技术的不断发展,在第五代移动通信技术(5‑Generation wireless telephone technology,5G)场景下,大规模矩阵天线以及大带宽数据应用导致通信带宽成指数倍增长,就单个5G设备如基站或者终端而言,其频谱带宽相对单个长期演进(Long Term Evolution,LTE)增长了几倍到几十倍,而天线数量也增长了几倍到几十倍,总的通信带宽增长了几十到上百倍,上述矩阵运算得到天线阵列数据的规模也异常庞大,从而导致数据处理量大,同时现有的采用符号级的处理方式读取完所有用户终端的带宽数据才能进行计算,存在计算延时大的问题。

发明内容

[0005] 为解决上述技术问题,本发明实施例期望提供一种数据处理方法及装置、计算机可读存储介质,能够提高数据处理并行度和降低延时。
[0006] 本发明的技术方案是这样实现的:
[0007] 第一方面,本发明实施例提供一种数据处理方法,所述方法包括:
[0008] 对传输带宽资源进行分段,得到至少一个资源块组;
[0009] 获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传输带宽资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;
[0010] 根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出所述基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。
[0011] 第二方面,本发明实施例提供一种数据处理装置,所述装置包括获取单元、分段单元、写入单元和计算单元,其中,
[0012] 所述获取单元,用于对传输带宽资源进行分段,得到至少一个资源块组;
[0013] 所述分段单元,用于获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传带宽输资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;
[0014] 所述计算单元,用于根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出所述基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。
[0015] 第三方面,本发明实施例提供一种数据处理装置,所述装置至少包括处理器、存储有所述处理器可执行指令的存储器、通信接口,以及用于连接所述处理器、所述通信接口和所述存储器的总线,当所述指令被执行时,所述处理器执行时实现上述实施例提供的数据处理方法。
[0016] 第四方面,本发明实施例提供一种算机可读存储介质,其上存储计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的数据处理方法。
[0017] 本发明实施例提供了一种数据处理方法及装置、计算机可读存储介质,该方法包括:对传输带宽资源进行分段,得到至少一个资源块组;获取至少一个资源块组的数据传输参数,数据传输参数表征用户终端和传输带宽资源的映射关系,以及至少一根天线与用户终端之间的空间信道信息;根据预设运算并行度和至少一个资源块组的数据传输参数,计算出基站的天线数据,运算并行度用于表征并行处理数据的能力,天线数据用于表征传输带宽资源与至少一根天线的映射关系,也就是说,本发明实施例通过对整个带宽的传输带宽资源进行分段处理,将现有的需要读取完整个传输带宽资源对应的数据传输参数才能进行计算,改进成只需要读取一个资源块组对应的数据传输参数便可以计算,如此降低了数据处理延时;同时,本发明实施例通过预设数据处理并行度,将待传输数据进行并行处理,能够实现处理并行高的效果,提高了处理效率。

附图说明

[0018] 图1为下行Massive MIMO信道传输矩阵示意图;
[0019] 图2为下行Massive MIMO处理示意图;
[0020] 图3为本发明实施例提出的一种数据处理方法的实现流程示意图一;
[0021] 图4为本发明实施例block运算处理流水示意图;
[0022] 图5为本发明实施例提出的RB运算处理流水示意图;
[0023] 图6为本发明实施例分组运算示意图;
[0024] 图7为本发明实施例示例性地用户终端信息与信道数据分组示意图;
[0025] 图8为本发明实施例提供的示例性地天线数据处理装置的结构示意图;
[0026] 图9为本发明实施例提出的一种数据处理方法的实现流程示意图二;
[0027] 图10为本发明实施例缓存中示例性的用户终端数量在17到32范围内的存储示意图;
[0028] 图11为本发明实施例缓存中示例性的用户终端数量在17到32范围内对应的信道数据的存储示意图;
[0029] 图12为本发明实施例缓存中示例性的用户终端数量在0到16范围内的存储示意图;
[0030] 图13为本发明实施例缓存中示例性的用户终端数量在0到16范围内对应的信道数据的存储示意图;
[0031] 图14为本发明实施例提供的数据处理装置的组成结构示意图一;
[0032] 图15为本发明实施例提供的数据处理装置的组成结构示意图二。

具体实施方式

[0033] 为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0034] 本发明实施例提供的一种数据处理方法应用在基站的下行Massive MIMO频域数据处理中。图1为下行Massive MIMO信道传输矩阵示意图,如图1所示,UE通过天线ant0、antx至antl‑1发送上行导频信息给基站,基站根据该导频信息进行信道估计,得到天线阵列与用户终端之间的信道状态矩阵H。其中W0,0代表天线0与UE0的信道状态,W0,x代表天线0与UEx的信道状态。图2为下行Massive MIMO处理示意图,如图2所示,通过用户终端信息s(0)、s(x)和s(k‑1)和信道状态矩阵W,即信道数据相乘后,得到天线数据通过天线ant0、antx至antl‑1和信道状态矩阵H发送给用户设备UE(0)、UE(X)和UE(K‑1)。
[0035] 目前下行Massive MIMO频域数据处理是采用矩阵的运算方式进行处理,该矩阵运算表达式如公式(1):
[0036]
[0037] 其中,din代表用户终端信息对应的矩阵,标记为S;w代表信道数据对应的矩阵;dout代表天线数据对应的矩阵,标记为A,其中,m代表带宽内子载波个数,k表示用户数量;l代表天线数量;在LTE和5G系统中,是按照资源块(Resource Block,RB)为单位进行资源分配的,每个RB是12个资源单元(Resource Element,RE),每个RE对应一个子载波,不同RB的数据需要乘以不同的W矩阵,以产生不同的波束指向。假设有N个RB,其中RBn的用户终端信息对应的矩阵为Sn,信道数据对应的矩阵为Wn,则天线数据对应的矩阵An为An=Sn*Wn,其中(0≤n≤N‑1)。
[0038] 下面以典型LTE系统的4用户8天线、典型5G系统的32用户64天线下行Massive MIMO频域数据处理为例进行运算量的对比说明。
[0039] 5G系统计算每个子载波的运算量是32*64;LTE系统每个子载波运算量的4*8,则对应的5G系统计算每个子载波的运算量是LTE系统每个子载波运算量的(32*64)/(4*8)=64倍。又典型5G系统带宽100M为LTE典型带宽20M的5倍,因此在下行Massive MIMO频域数据处理中,5G系统的运算密度为LTE运算密度的64*5=320倍。
[0040] 若一个5G系统所要求的性能为一个符号时间内处理完终端数量为32,天线数量为64的100M带宽的所有数据,由于100M带宽对应需要273RB,又1RB=12RE,则其一个符号的运算量为273*64*32*12=6394752复数乘法,如果一个符号时间为35.4微秒,则其运算并行度为6394752/35.4复乘运算量/微秒=180复乘运算量/纳秒,即每纳秒完成180*4=720个标量乘法,而LTE系统需要完成720/320=3个乘法/纳秒。
[0041] 由此可以看出,5G系统的运算密度以及要求的并行能力都远超LTE系统,同时5G系统的功耗和延迟也需要进一步减小,因而,本发明实施例提出了设置加速器进行并行处理,同时对传输带宽资源进行分段处理,降低计算延时,能够支持5G无线通信下行massive MIMO频域数据处理。
[0042] 实施例一
[0043] 本发明实施例提供了一种数据处理方法,应用于基站中,图3为本发明实施例提出的一种数据处理方法的实现流程示意图一,如图3所示,基站实现数据处理方法至少包括以下步骤:
[0044] 步骤101、对传输带宽资源进行分段,得到至少一个资源块组。
[0045] 本发明实施例中,基站将下行massive MIMO频域数据处理所需的传输带宽资源进行分段,得到至少一个资源块组,其中资源块组可以包括至少一个资源块。
[0046] 需要说明的是,在实际计算的过程中,如果采用符号级的方式读取该运算资源,即读完带宽内传输带宽资源对应的所有数据传输参数才能进行计算,其不仅计算延迟大,还可能因为前面的数据读得快,后面的数据不读导致接口带宽分配不均匀的问题。
[0047] 因此,本发明实施例提出了对传输带宽资源进行分段,即将传输带宽资源分段为资源块组,记为block,以block为单位进行数据处理,将至少一个RB定义为一个块block。图4为本发明实施例block运算处理流水示意图,如图4所示,将传输带宽资源分为多个block,本发明实施例以block为单位进行读入、计算和写出操作,即完成block0的读入后,进行block0的计算以及写出,同时进行block1的读入,完成block0的计算后,进行block1的计算以及写出,同时进行block2的读入。如此可以看出,本发明实施例的处理延时是block级别的,相对于现有的符号级别的处理方式,能够减少数据处理读取量,进而降低数据处理延时。
[0048] 示例性地,若带宽为100M,对应273RB,当用户终端数量为16时,可以设置block=273/16=18个block,也就是说,本发明实施例可以传输带宽资源分段为18个block,这样就可以得到18个block对应地的数据传输参数。其处理延时为一个block,即16个RB的处理延时,如果按符号处理,则处理延时为273个RB的处理延时。
[0049] 步骤102、获取至少一个资源块组的数据传输参数。
[0050] 本发明实施例中,基站在对传输带宽资源进行分段,得到至少一个资源块组之后,基站可以获取至少一个资源块组的数据传输参数,其中数据传输参数表征用户终端和传输带宽资源的映射关系,以及至少一根天线与用户终端之间的空间信道信息,该至少一根天线在基站中以天线阵列的形式进行呈现。
[0051] 需要说明的是,上述数据传输参数包括用户终端信息和信道数据,该用户终端信息用于对应用户终端和传输带宽资源的映射关系;信道数据用于对应通过用户终端上行链路导频信息得到至少一根天线与用户终端之间的空间信道信息。
[0052] 步骤103、根据预设运算并行度和至少一个资源块组的数据传输参数,计算出基站的天线数据。
[0053] 本发明实施例中,基站在获取至少一个资源块组的数据传输参数之后,基站还可以根据预设运算并行度和至少一个资源块组的数据传输参数,计算出基站的天线数据,其中,运算并行度用于表征并行处理数据的能力,天线数据用于表征传输带宽资源与至少一根天线的映射关系。
[0054] 需要说明的是,现有的LTE系统只需要完成720/320=3个乘法/纳秒,实现复杂度低,并不需要对数据进行并行处理,然而,对于5G系统,需要180个乘法/纳秒,其每纳秒需要180*4=720个标量乘法,由此可以看出,5G系统的运算密度大,需要对数据进行高度并行处理以满足5G系统的需求。本发明实施例中,数据传输参数包括用户终端信息和信道数据,根据预设运算并行度和至少一个资源块组的数据传输参数,计算出基站的天线数据,可以包括:通过预设运算并行度,对至少一个资源块组对应的用户终端信息和信道数据采用矩阵乘法的运算方式进行处理,得到基站的天线数据。
[0055] 进一步地,基站在根据预设运算并行度和至少一个资源块组的数据传输参数,计算出基站的天线数据之前,即基站实现数据传输还可以包括:
[0056] 获取传输带宽资源的目标运算量;根据所述目标运算量和用户终端的数量,获取预设数据处理的并行度。
[0057] 本发明实施例中,传输带宽资源的目标运算量可以根据基站数据处理的实际需求进行设定。
[0058] 示例性地,以5G典型系统用户终端数量为32天线数量为64的100M带宽为例,其5G典型系统每符号每天线每RE的运算量为32个复乘运算。如果基站要满足180运算量/纳秒的要求,则每纳秒需要计算180/32≈6RE,即表明基站一次运算的并行处理能力是6RE;对应的,当用户终端数量为16时,其每纳秒需要计算180/16≈12RE,即表明基站一次运算的并行处理能力是12RE,当然根据实际并行需求,本发明实施例也可以设置基站的数据处理并行度为1RE、2RE、3RE、4RE等。
[0059] 在其他实施例中,本发明实施例是基于block的数据处理,基站根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,即步骤103可以包括步骤104、步骤105和步骤106,其中,
[0060] 步骤104、从至少一个资源块组的数据传输参数中,获取每一个资源块组对应的第一用户终端信息和第一信道数据。
[0061] 本发明实施例中,传输带宽资源包括至少一个资源块组,数据传输参数包括用户终端信息和信道数据,基站在根据预设运算并行度和至少一个资源块组的数据传输参数,得到基站的天线数据时,需要先将获取每一个资源块组对应的第一用户终端信息和第一信道数据。
[0062] 需要说明的是,如果读完运算资源需要的符号时间是采用block读取需要时间的两倍,则采用block方式只需要读取一半的数据量便可以进行计算,这样能够将处理延时由符号级降低到了block级,同时将符号时间进行分段后,只需要分段时间内读入分段后的数据量,利于接口带宽的均匀化。
[0063] 可以理解的是,设置的block越大,存储资源消耗越多,但是接口利用率越高。
[0064] 示例性地,本发明实施例中可以设置block大小为1RB、2RB、4RB、8RB或者16RB。
[0065] 步骤105、按照预设运算并行度,采用第一用户终端信息和第一信道数据,依次对每一个资源块组进行运算处理,得到每一个资源块组对应的资源块组天线数据。
[0066] 本发明实施例中,基站在获取每一个资源块组对应的第一用户终端信息和第一信道数据之后,基站按照预设运算并行度,采用第一用户终端信息和第一信道数据,依次对每一个资源块组进行运算处理,得到每一个资源块组对应的资源块组天线数据。
[0067] 需要说明的是,上述运算处理包括:对第一用户终端信息对应的矩阵与第一信道数据对应的矩阵进行乘法运算。
[0068] 步骤106、由至少一个资源块组中每一个资源块组对应的资源块组天线数据,构成基站的天线数据。
[0069] 本发明实施例中,基站在获取到每一个资源块组对应的资源块组天线数据之后,基站由至少一个资源块组中每一个资源块组对应的资源块组天线数据,构成基站用户终端的天线数据。
[0070] 需要说明的是,由于运算处理是以矩阵的是形式进行处理的,因此,在得到每一个资源块组的资源块组天线数据之后,将其组合便可以构成基站的天线数据。
[0071] 在其他实施例中,基于RB的数据处理,图5为本发明实施例提出的RB运算处理流水示意图,如图5所示,天线0对应RB0至RBx,天线1对应RB0至RBx,依次输出天线0的RB0至RBx,再输出天线1的RB0至RBx,如此输出一个资源块组里面所有RB。
[0072] 基于上述RB运算处理流水,基站按照预设运算并行度,采用第一用户终端信息和第一信道数据,依次对述每一个资源块组进行运算处理,得到每一个资源块组对应的资源块组天线数据,即步骤105可以包括步骤107、步骤108和步骤109,其中,
[0073] 步骤107、从第一用户终端信息和第一信道数据中,获取每一个资源块对应的第二用户终端信息和第二信道数据。
[0074] 步骤108、按照预设运算并行度,采用第二用户终端信息和第二信道数据,依次对每一个资源块进行运算处理,得到每一个资源块对应的资源块天线数据。
[0075] 步骤109、由所述每一个资源块组中资源块天线数据,构成所述每一个资源块组对应的资源块组天线数据。
[0076] 本发明实施例中,每一个资源块组包括至少一个资源块,基站在资源块组对应的第一用户终端信息和第一信道数据进行运算时,需要先从每一个资源块组对应的第一用户终端信息和第一信道数据中,获取每一个资源块对应的第二用户终端信息和第二信道数据,再通过对每一个资源块对应的第二用户终端信息和第二信道数据进行处理,得到每一个资源块对应的资源块天线数据,最后根据每一个资源块组对应的资源块天线数据,构成资源块组天线数据。
[0077] 需要说明的是,上述运算处理包括:对第二用户终端信息对应的矩阵与第二信道数据对应的矩阵进行乘法运算。
[0078] 在其他实施例中,基站按照预设运算并行度,采用第二用户终端信息和第二信道数据,依次对述每一个资源块进行运算处理,得到每一个资源块对应的资源块天线数据,即步骤108可以包括108A或者108B,其中,
[0079] 步骤108A、按照预设运算并行度,采用第二用户终端信息和第二信道数据,对每一个资源块对应的至少一根天线进行运算处理,依次得到每一根天线的每一个资源块对应的天线数据;由每一根天线的每一个资源块对应的天线数据,构成每一个资源块对应的资源块天线数据。
[0080] 步骤108B、按照预设运算并行度,采用第二用户终端信息和第二信道数据,对至少一根天线对应的每一个资源块进行运算处理,依次得到每一个根天线的每一个资源块对应的天线数据;由每一根天线的每一个资源块对应的天线数据,构成每一个资源块对应的资源块天线数据。
[0081] 本发明实施例中,资源块组天线数据包括至少一根天线与至少一个资源块映射关系,基站在处理一个资源块组的传输参数时,可以通过两种不同的处理方式获取每一个资源块组对应的资源块天线数据。
[0082] 表1
[0083] ANT0 RB0 RB1 … RBkANT1 RB0 RB1 … RBk
… … … … …
ANTx RB0 RB1 … RBk
[0084] 需要说明的是,天线数据的存储方式如表1,ANT表示为天线,RB0至RBK表示天线ANT对应的资源块,由上述表1可以看出,每根天线输出的所有资源是连续存储的,即先存储完一根天线对应的所有资源块,再存储下一根天线对应的所有资源块,直到存储完所有的天线对应的所有资源块数据。基于表1中天线数据的存储方式可知,步骤108A对应的处理方式是先得到一根天线的一个RB,依次得到每一根天线的一个RB,迭代每一根天线的下一个RB,依次得到每一根天线的每一个RB;步骤108B对应的处理方式是先处理得到一根天线的一个RB,依次得到一根天线的每一个RB,迭代下一根天线的每一个RB,依次得到每一根天线的每一个RB。
[0085] 关于上述步骤108B的处理方式,例如,存在至少一个天线,当完成天线0的每一个RB处理后,再进行其他天线处理时,需要重复读取用户终端信息,即计算天线0时,需要读取所有用户终端信息,计算天线1时,同样需要读取所有用户终端信息。关于上述步骤108A的处理方式,只需要将处理一个RB时将数据传输参数进行缓存,然后依次完成所有天线的该RB处理。
[0086] 需要说明的是,本发明实施例通过上述步骤108A和步骤108B均可以实现得到每一个资源块对应的资源块天线数据,但相对于步骤108B的运算处理方式,步骤108A的运算处理方式不需要在每次运算处理不同天线时,重复读取用户终端信息,能够节省带宽和功耗。
[0087] 在其他实施例中,基于RE的数据处理,基站按照预设运算并行度,采用第二用户终端信息和第二信道数据,依次对每一个资源块进行运算处理,得到每一个资源块对应的资源块天线数据,即步骤105实现数据处理方法可以包括:步骤110、步骤111和步骤112,其中,[0088] 步骤110、从第二用户终端信息和第二信道数据中,获取每一个资源块对应的资源单位的第三用户终端信息和第三信道数据。
[0089] 本发明实施例中,每一个资源块包括至少一个资源单位,基站在资源块对应的第二用户终端信息和第二信道数据进行运算时,需要获取从每一个资源块对应的第二用户终端信息和第二信道数据中,获取每一个资源单位对应的第三用户终端信息和第三信道数据。
[0090] 步骤111、按照预设运算并行度,采用第三用户终端信息和第三信道数据,依次对每一个资源单位进行运算处理,得到每个资源单位对应的资源单位天线数据。
[0091] 本发明实施例中,基站在获取第三用户终端信息和第三信道数据之后,基站可以按照预设运算并行度,一次处理并行度对应的资源单位的天线数据。
[0092] 需要说明的是,如果运算并行度为6RE,则基站可以采用第三用户终端信息和第三信道数据,一次处理6RE对应的资源单位的天线数据。
[0093] 示例性地,如果要满足180运算量/纳秒的要求,当用户终端数量为32时,运算并行度为6个RE,每个RB有2组信道数据;当用户终端数量为16时,运算并行度为12个RE,每个RB有1组信道数据。在其他用户终端数量的情况下,也可以是,运算并行度为1RE,即1RE一组信道数据,每RB有12组信道数据;对应的,运算并行度为2RE,即2RE一组信道数据,每RB有6组信道数据;对应的,运算并行度为3RE,3即RE一组信道数据,每RB有4组信道数据;对应地,运算并行度为4RE,即4RE一组信道数据,每RB有3组信道数据。
[0094] 进一步,由于一次运算处理都是以一个RB为单位,因此,只需要考虑6RE和12RE的并行度,即在用户终端数量在17至32范围内时,以6RE并行计算天线数据;在用户终端数量在1至16范围内时,以12RE并行计算天线数据。
[0095] 步骤112、由每一个资源块中每一个资源单位对应的资源单位天线数据,构成每一个资源块对应的资源块天线数据。
[0096] 在其他实施例中,基站按照预设运算并行度,采用第三用户终端信息和第三信道数据,依次对每一个资源单位进行运算处理,得到每一个资源单位对应的资源单位天线数据,即步骤111实现数据处理方法可以包括步骤111A或者111B,其中,
[0097] 步骤111A、按照预设第一并行规则,采用第三用户终端信息和第三信道数据,依次对每一个资源单位进行运算处理,得到每一个资源单位对应的资源单位天线数据。
[0098] 步骤111B、按照预设第二并行规则,采用第三用户终端信息和第三信道数据,依次对每一个资源单位进行运算处理,得到每一个资源单位对应的资源单位天线数据。
[0099] 本发明实施例中,第一并行规则用于表征通过预设运算并行度对第三信道数据进行并行处理;第二并行规则用于表征通过预设运算并行度对第三用户终端信息进行并行处理。
[0100] 需要说明的是,步骤111A和步骤111B是采用不同的并行处理方式得到每一个资源单位对应的资源单位天线数据。
[0101] 示例性地,一个RB由12个RE组成,在进行下行Massive MIMO频域数据处理中,一个RB的处理表达式如公式(2):
[0102]
[0103] 其中,din代表用户终端信息对应的矩阵,为一个12*k的矩阵,标记为S,纵项表示一个RB的12RE,行项表示用户终端数量为k;W为信道数据对应的矩阵,为一个k*l的矩阵,纵项表示用户终端数量为k,行项表示天线数量为l;dout代表天线数据对应的矩阵,为一个12*l的矩阵,标记为A,纵项表示一个RB的12个RE,行项表示天线数量为l。
[0104] 需要说明的是,每个RB对应的矩阵W是不同的;天线0的RE0为矩阵S的第一行与矩阵W的第一列相乘加,为公式(3):
[0105] din0,0×w0,0+din0,1×w1,0+...din0,k‑1×wk‑1,0=dout0,0………(3)
[0106] 天线1的RE0为矩阵S的第一行与矩阵W的第二列相乘加,为公式(4):
[0107] din0,0×w0,1+din0,1×w1,1+...din0,k‑1×wk‑1,1=dout0,1………(4)
[0108] 依次类推,天线0的RE1为矩阵S的第二行与矩阵W的第一列相乘加,为公式(5):
[0109] din1,0×w0,0+din1,1×w1,0+...din1,k‑1×wk‑1,0=dout1,0…………(5)[0110] 天线1的RE1为矩阵S的第二行与矩阵W的第二列相乘加,为公式(6):
[0111] din1,0×w0,1+din1,1×w1,1+...din1,k‑1×wk‑1,1=dout1,1…………(6)[0112] 通过上述一个RB的计算过程可以看出,并行计算可以包括步骤111A和步骤111B这两种方式,下面以用户终端数量为32,运算并行度为6RE进行不同并行方式的举例说明。
[0113] 步骤111A的并行方式可以理解为:并行计算6根天线的同一个RE,即矩阵S取同一行,矩阵W取出6列,一次计算得到矩阵A同一行的6列的数据;
[0114] 步骤111B的并行方式可以理解为:并行计算同一天线的6个RE,即矩阵S取6行,矩阵W取一列,一次计算得到矩阵A同一列的6行数据。
[0115] 由于本发明实施例天线数据的存储方式如表1,每根天线输出的所有资源是连续存储的,如果采用步骤111A的并行方式,同时输出的6个RE,其存储不仅在不同的地址上,需要依次发出6个写命令才可以完成一次并行输出,同时每次写命令输出的数据非常小,接口带宽利用率很低。如果采用缓存全部天线的数据到一定的数据量后,然后倒序输出第一根天线的数据,接着输出第二根天线,依次顺序输出,这样虽然可以避免上述缺陷,但需要增加缓存,导致硬件布置面积增大而增加硬件实现成本。
[0116] 如果采用步骤111B的并行方式,由于输出的6个RE是属于同一根天线的,其本身就是连续存储的,发出一个写命令就可以完成一次并行输出,这样保证了接口输出带宽。同时,矩阵是以RB为单位进行计算,每根天线每个RB的12个RE的信道数据都是相同的,因此,发出一个写命令就可以完成连续两个周期该天线1个RB的运算,并将此RB数据全部输出,这样进一步提高了接口利用率。
[0117] 进一步,采用步骤111B的并行方式,一次计算同一天线的6RE,连续计算一根天线同一RB数据的矩阵可以采用如下公式(8)和公式(7)。
[0118] 第一时钟周期,计算天线x的前半个RB,即6个RE的表达式如公式(7):
[0119]
[0120] 本发明中采用一次计算同一天线的6RE,连续计算一根天线同一RB数据的方案,其表达式如公式(8):
[0121]
[0122] 在其他实施例中,基站按照预设运算并行度,采用第三用户终端信息和第三信道数据,依次对每一个资源单位进行运算处理,得到每个资源单位对应的资源单位天线数据,即步骤111实现数据处理可以包括步骤113、步骤114,其中,
[0123] 步骤113、按照第一预设分组规则和预设第二并行规则,对第三用户终端信息和第三信道数据进行分组。
[0124] 本发明实施例中,一个RB包括至少一个RE,基站按照第一预设分组规则和预设第二并行规则,对一个RB中的RE对应的第三用户终端信息和第三信道数据进行分组,其中,第一预设分组规则用于表征以组为单位进行数据处理。
[0125] 下面以用户终端数量为32,运算并行度为6RE为例进行本发明实施例分组计算所有天线的一个RB的说明。
[0126] 根据用户终端数据和运算并行度可得,本发明实施例需要复数乘法器为32*6=192组,由一组复数乘法对应4组实数乘法器,因此对应需要192*4=768组实数乘法器,若天线数据与权值数据的实部虚部都是16bit,每组乘法器的输入为16*16,如此可以看出运算规模比较大,必然会引入较多的连线以及交叉,进而导致后端布局布线困难。此外,从上述一个RB的矩阵运算公式也可以看出,输出的天线数据都跟输入的用户终端信息有直接关联,其也会导致交叉连线多。基于此,本发明实施例提出采用分组方式来对192组复乘运算进行流水处理。
[0127] 将32个用户终端,运算并行度6RE进行分组,将每8个用户,对应3RE作为一组,一共8组,其分组规则为如下:
[0128] grpi,j,其中,i={str0‑7,str8‑15,str16‑23,str24‑31};j={RE0‑2,RE3‑5}或者j={RE6‑8,RE9‑11}
[0129] 上述grp表示分组,i表示用户终端分组,str0‑7为用户终端0至用户7终端;str8‑15为用户终端8至用户终端15;str16‑23为用户终端16至用户终端23;str24‑31为用户终端24至31,RE0‑2表示并行处理前6RE的前三个RE,RE0‑2表示并行处理6RE的后三个RE,RE6‑8表示一个RB的12RE中后6RE的前三个RE,RE9‑11表示一个RB的12RE中后6RE的后三个RE。
[0130] 步骤114、依次对分组后的第三用户终端信息和分组后的第三信道数据进行运算处理,得到每一个资源块对应的资源块天线数据。
[0131] 本发明实施例中,基站在对第三用户终端信息和第三信道数据进行分组之后,基站需要依次对分组后的第三用户终端信息和分组后的第三信道数据进行运算处理,得到所述每一个资源单位对应的资源单位天线数据。
[0132] 图6为本发明实施例分组运算示意图,如图6所示,基于步骤113中上述对32个用户终端和运算并行度6RE的分组规则,将str0‑7和RE0‑2对应在组grp0,0;将str8‑15和RE0‑2对应在组grp1,0;将str16‑23和RE0‑2对应在组grp2,0;将str24‑31和RE0‑2对应在组grp3,0,通过分组对上述四个组进行计算得到一根天线的前三个RE0‑2的数据,记为ANT×RE0‑2。具体地,处理6RE的前三个RE0‑2的运算处理过程为:先将每组组内的用户终端数据与信道数据相乘;再计算分组组内所有乘法的结果相加后的值;最后计算所有分组相加后的值,即可得到一根天线的RE0~RE2,并行处理6RE,对应地,计算得到该天线的RE3~RE5,依次可以计算得到该天线的RE0~RE11,即一根天线的一个RB。
[0133] 通过上述分组对192组复乘运算进行流水处理,先将组内数据汇聚计算后,得到小位宽数据,每组得到3个RE后,再与其他组相计算,组与组之间只有3个RE的交叉运算,能够减少后端实现连线的交叉,组与组之间数据避免直接运算,从而避免了组与组之间大规模的连线交叉。
[0134] 在其他实施例中,基站获取至少一个资源块组的数据传输参数,包括:获取至少一个资源块组对应的用户终端信息和信道数据;将用户终端信息和信道数据作为至少一个资源块组的数据传输参数。
[0135] 本发明实施例中,基站包括缓存单元和计算单元,计算单元用于完成计算输出基站的天线数据,缓存单元用于缓存数据传输参数。为了减少运算单元与缓存单元之间的数据交叉,缓存单元也需要进行分组。
[0136] 需要说明的是,用户终端信息和信道数据是按照预设第二分组规则对应地存储在缓存中,用户终端信息用于表征用户终端和传输带宽资源的映射关系,信道数据用于表征至少一根天线与用户终端之间的空间信道信息,第二预设分组规则用于表征以组为单位存储在缓存中。
[0137] 下面以用户终端数量为32,运算并行度为6RE为例进行本发明实施例分组存储用户终端数据和信道数据的说明。
[0138] 将用户终端数据分组4组,依次为组0为用户终端0至用户终端7,组1为用户终端8至用户终端15,组2为用户终端16至用户终端23,组3为用户终端24至用户终端31;
[0139] 为了让缓存分组与运算进行匹配,需要每组内按照3RE分为4小组,依次对应缓存单元中的RAM,即组0=R4i,组1=R4i+1,组2=R4i+2,组3=R4i+3,其中(0≤i≤7);
[0140] 为了将信道数据与用户终端信息分组相匹配,每个RAM存储同一天线4个用户终端的信道数据,信道数据也可以分为4组,则组0为R0、R1、R8和R9,存储的是用户终端0至用户终端7的信道数据,组1为R2、R3、R10和R11,存储的是用户终端8至用户终端15的信道数据,组2为R4、R5、R12和R13,存储的是用户终端16‑23的信道数据,组3为R6、R7、R14和R15,存储的是用户终端24至用户终端31的信道数据。
[0141] 图7为本发明实施例示例性地用户终端信息与信道数据分组示意图,如图7所示,存储器RAM对应的R0、R2、R4、R6、R8、R10、R12和R14用于存储用户终端0至用户终端15对应的用户终端信息,用户终端0至用户终端15的RE0~RE2或RE6~RE8对应的信道数据存储在R0、R1、R2和R3,为组0记为grp0;存储器RAM对应的R1、R3、R5、R7、R9、R11、R13和R15用于存储用户终端0~用户终端15对应的用户终端信息,用户终端0~用户终端15的RE3~RE5或RE9~RE11对应的信道数据存储在R8、R9、R10和R11,为组1记为grp1;存储器RAM为R0、R2、R4、R6、R8、R10、R12和R14用于存储用户终端16~用户终端31对应的用户终端信息,用户终端16~用户终端31的RE0~RE2或RE6~RE8对应的信道数据存储在R4、R5、R6和R7,为组2,记为grp2;存储器RAM为R1、R3、R5、R7、R9、R11、R13和R15用于存储用户终端16~用户终端31对应的用户终端信息,用户终端16~用户终端31的RE3~RE5或RE9~RE11对应的信道数据存储在R12、R13、R14和R15,为组3记为grp3。
[0142] 对应地,当用户终端数量为16时,用户终端0~用户终端7的RE0~RE2或RE6~RE8为组0,对应其存储在R0、R2、R8和R10的信道数据;用户终端0~用户终端7的RE3~RE5或RE9~RE11为组1,对应其权存储在R1、R3、R9和R11的信道数据;用户终端8~用户终端15的RE0~RE2或RE6~RE8为组2,对应其存储在R4、R6、R12和R14的信道数据;用户终端8~用户终端15的RE3~RE5或RE9~RE11为组3,对应其存储在R5、R7、R13和R15的信道数据。
[0143] 本发明实施例通过对传输带宽资源进行分段处理,将现有的需要读取完整个传输带宽资源对应的传输参数才能进行计算,改进成只需要读取一个资源块组对应的数据传输参数可以计算,如此降低了数据处理延时;同时,本发明实施例通过预设数据处理并行度,将待传输数据进行并行处理,能够实现处理并行高的效果,提高了处理效率。
[0144] 实施例二
[0145] 基于实施例一同一发明构思,本发明实施例提供了一种数据处理装置,图8为本发明实施例提供的示例性地天线数据处理装置的结构示意图,如图8所示,用户终端数量为32,数据处理并行度为6,用户终端信息和信道数据输入控制模块从外部存储器中读取用户终端信息和信道数据存入缓存单元,计算单元从缓存模块中读取用户终端信息和信道数据,其对应的复乘运算为32*6=192个复乘运算,6个RE和32用户数输入加法树,并将计算的天线数据通过输出控制模块进行输出。
[0146] 基于上述天线数据处理装置,本发明实施例提供一种数据处理方法,图9为本发明实施例提出的一种数据处理方法的实现流程示意图二,如图9所示,基站实现数据处理方法至少包括以下步骤:
[0147] 步骤201、通过外部存储器存储用户终端信息和信道数据。
[0148] 本发明实施例中,基站的外部存储器可以用于存储用户终端信息和信道数据。
[0149] 本发明实施例的用户终端信息的存储方式如表2,从表2可以看出,用户终端信息以用户终端为单位,一个用户终端的所有的RB紧排。
[0150] 表2
[0151]S0 RB0 RB1 … RBk
S1 RB0 RB1 … RBk
… … … … …
Sx RB0 RB1 … RBk
[0152] 本发明实施例的信道数据的存储方式如表3,从表3可以看出,信道数据以RB为单位,一个RB信道数据以天线为单位,一个天线的所有用户终端的信道数据紧排。
[0153] 表3
[0154]
[0155]
[0156] 步骤202、从外部存储器中读取分段后的用户终端信息以及信道数据。
[0157] 本发明实施例中,基站在外部存储器存储了用户终端信息和信道数据之后,基站的用户终端信息和信道数据输入控制模块可以从外部存储器中读取分段后的用户终端信息和信道数据。
[0158] 需要说明的是,分段后用户终端信息的读取方式可以是:先读取一个用户终端的block数据,其次读取下一个用户终端的block数据,迭代进行,读入所有用户终端的block数据;
[0159] 分段后信道数据的读取方式可以是:先读取RB0的所有天线全部用户终端的信道数据,其次,读取RB1的所有天线全部用户终端的信道数据,迭代进行,读入block内所有RB的信道数据。
[0160] 步骤203、根据用户终端数量与天线数量的配置,将分段后的用户终端信息和信道数据写入到内部的缓存单元中。
[0161] 本发明实施例中,基站在读入用户终端信息和信道数据之后,基站可以根据用户终端数量与天线数量的配置,将分段后的用户终端信息和信道数据写入到内部的缓存中,以便于计算模块直接从缓存中读取对应的用户终端信息和信道数据进行计算。
[0162] 以5G典型系统32用户64天线100M带宽为例,其5G典型系统每符号每天线每RE的运算量为32个复乘运算。如果要满足180运算量/纳秒的要求,则每纳秒需要计算180/32≈6个RE,即表明基站一次运算的并行处理能力是6个RE;对应的,当用户数为16时,其每纳秒需要计算180/16≈12个RE,即表明基站一次运算的并行处理能力是12个RE。
[0163] 需要说明的是,本发明实施例可以对读入的用户终端信息和信道数据进行分组存储在内部缓存中。
[0164] 示例性地,当用户终端数量小于等于32大于等于17时,用户终端信息可分为4组,用户终端0‑7为组0,用户终端8‑15为组1,用户终端16‑23为组2,用户终端24‑31为组3,其对应的运算并行度为6RE,图10为本发明实施例缓存中示例性的用户终端数量在17到32范围内的存储示意图,如图10所示,列出了前16个用户终端的存储方式,具体为,从外部存储中,写入用户0的block数据,需要32个RAM,本发明实施例中按照一个block为8RB依次写入第一行的所有RAM中;继续写入用户1的block数据,将数据按照半个RB,即6RE进行循环右移后,写入在第二行的所有RAM中;依次迭代,直到将最后一个用户15的block数据写入所有RAM中;后面的用户16至用户31,写入的方式与前面的用户16与用户0写入方式一致,存入另外一组的RAM中。
[0165] 其中,B0‑0和B0‑1分别表示一个RB0前半段6RE和后半段6RE。
[0166] 为了让缓存分组与运算规则相匹配,需要每组内按照3RE分为4小组,即可以标识为组0=R4i,组1=R4i+1,组2=R4i+2,组3=R4i+3,其中(0≤i≤7),利用分组后的缓存来存储用户终端信息。
[0167] 图11为本发明实施例缓存中示例性的用户终端数量在17到32范围内对应的信道数据的存储示意图,如图11所示,需要15个RAM,按照天线和用户终端的格式排列,即先写入RB0天线0的所有用户终端的信道数据A0‑0至A0‑7,接着RB0天线1的所有用户终端的信道数据A1‑0至A1‑7,迭代到RB0最后一根天线的所有用户终端的信道数据,然后写入RB1所有天线所有用终端户的信道数据,直到最后一个RB对应的所有天线所有用户终端的信道数据写入到所有的RAM中。
[0168] 需要说明的是,每个RAM存储同一天线4个用户的信道数据,为了与用户终端分组相匹配,本发明实施例的信道数据可以分为4组,0组为R0、R1、R8和R9,存储的是用户终端0‑7的信道数据,1组为R2、R3、R10和R11,存储的是用户终端8‑15的信道数据,2组为R4、R5、R12和R13,存储的是用户终端16‑23的信道数据,3组为R6、R7、R14和R15,存储的是用户终端24‑
31的信道数据,其中,A0表示天线0,依次类推,A63表示天线63,A0‑0表示天线A0的第0组,一组包括4个用户终端,在运算过程中,可以依次读取A0‑0至A0‑7为一个Block信道数据进行计算。
[0169] 当用户终端数量小于等于16大于等于0时,用户终端可以分为4大组,用户终端0‑3为组0,用户终端4‑7为组1,用户终端8‑11为组2,用户终端12‑15为组3,则对应的运算并行度为12RE,图12为本发明实施例缓存中示例性的用户终端数量在0到16范围内的存储示意图,如图12所示,列出了前8个用户终端的存储示意图,图11的一行表示一个用户终端的一个block数据,一个block为8RB,每个RAM可存储3个RE,这样对应需要32个RAM来缓存32个用户终端信息。其中,B0‑0和B0‑1表示一个RB0前半段6RE和后半段6RE,由于运算并行度为12RE,因此,在运算过程中,可以依次读取第一列和第二列的用户终端信息进行计算。
[0170] 图13为本发明实施例缓存中示例性的用户终端数量在0到16范围内对应的信道数据的存储示意图,如图13所示,每RAM存储同一天线4个用户终端的信道数据,为了与用户终端分组相匹配,本发明实施例的信道数据可以分为4组,第0组为R0、R1、R8和R9,存储的是用户终端0‑3的信道数据,第1组为R2、R3、R10和R11,存储的是用户终端4‑7的信道数据,第2组为R4、R5、R12和R13,存储的是用户终端8‑11的信道数据,第3组为R6、R7、R14和R15,存储的是用户终端12‑15的信道数据,其中,A0表示天线0,依次类推,A63表示天线63,A0‑0表示天线A0的第0组,一组包括4个用户终端,在运算过程中,可以依次读取A0‑0至A0‑3为一个Block信道数据进行计算。
[0171] 步骤204、从缓存中读取对应的用户终端信息和信道数据,输入至计算模块。
[0172] 本发明实施例中,基站在分段后的用户终端信息和信道数据写入缓存之后,基站从缓存中读取对应的用户终端信息和信道数据,输入至计算模块。
[0173] 需要说明的是,依据不同用户终端数量对应的基站执行并行度不一样,因此,对应的读数据的方式也是不同的。
[0174] 示例性地,对于用户终端数量为32,其用户终端信息存储方式对应图10,信道数据对应的存储方式为图11,在读取缓存中用户终端信息和信道数据时,其并行度为6RE,对于用户终端信息,按照RB为粒度,首先读取RB0前半部分的所有用户终端的数据,再读取RB0后半部分的所有用户终端的数据,接着读取RB1前半部分的数据,迭代,直到所有block的所有RB均读取完毕,即先读取图10中用户终端信息的第一列,依次读取下一列,直到一个block的数据最后一列读取完毕;对于信道数据,首先读取天线0,RB0的所有用户终端的信道数据,接着读取天线0,RB1的所有用户终端的信道数据,迭代读取完天线0最后一个RB的所有用户终端的信道数据,然后继续读取天线1的所有RB的用户终端的信道数据,迭代到最后一根天线的所有RB的用户终端的信道数据,即先读取图11中信道数据RB0中的A0‑0、A0‑1至A0‑7,再读取RB1的A0‑0、A0‑1至A0‑7,直到RB7的A0‑0、A0‑1至A0‑7,继续再依次读取下一个A1‑0、A1‑1至A1‑7,直到最后的A63‑0、A63‑1至A63‑7读完。
[0175] 对于用户数为16,其用户终端信息存储方式对应图13,信道数据对应的存储方式为图12,在读取缓存中用户终端信息和信道数据时,其并行度为12RE,对于用户终端信息,先读取图12中用户终端信息的第一列和第二列,依次读取下一个第三列和第四列,直到一个block的数据最后两列读取完毕;对于信道数据,先读取图13中信道数据RB0中的A0‑0、A0‑1至A0‑3,再读取RB1的A0‑0、A0‑1至A0‑3,直到RB7的A0‑0、A0‑1至A0‑3,继续再依次读取下一个A1‑0、A1‑1至A1‑7,直到最后的A63‑0、A63‑1至A63‑3读完。
[0176] 步骤205、通过计算模块对用户终端信息和信道数据进行计算得到天线数据,并通过天线数据输出控制模块输出天线数据。
[0177] 本发明实施例中,基站在计算模块得到对应的用户终端信息和信道数据之后,基站需要对用户终端信息和信道数据进行计算得到天线数据。
[0178] 本发明实施例中,先计算得到天线0的block内的RB数据,再计算得到天线1的block内的RB数据,迭代进行,计算全部天线block的RB数据,输出每一根天线block的所有RB数据,即可得到天线数据。
[0179] 本发明实施例通过用户终端数量获取运算并行度,并行处理用户终端信息,能够提高基站数据处理的并行度;通过采用block的方式进行读、写和计算,能够将处理延时由符号级降低到了block级,同时将符号时间进行分段后,只需要分段时间内读入分段后的数据量,利于接口带宽的均匀化;通过采用分组的方式对计算中的复乘运算进行流水处理,减少了后端实现连线的交叉,组与组之间数据避免直接运算,从而避免了组与组之间大规模的连线交叉。
[0180] 实施例三
[0181] 基于实施例一至实施例二的同一发明构思,本发明实施例提供一种数据处理装置,图14为本发明实施例提供的数据处理装置的组成结构示意图一,如图14所示,所述装置300包括分段单元301、获取单元302和计算单元303,其中,
[0182] 所述分段单元301,用于对传输带宽资源进行分段,得到至少一个资源块组;
[0183] 所述获取单元302,用于获取所述至少一个资源块组的数据传输参数,所述数据传输参数表征用户终端和所述传输带宽资源的映射关系,以及至少一根天线与所述用户终端之间的空间信道信息;
[0184] 所述计算单元303,用于根据预设运算并行度和所述至少一个资源块组的数据传输参数,计算出基站的天线数据,所述运算并行度用于表征并行处理数据的能力,所述天线数据用于表征所述传输带宽资源与所述至少一根天线的映射关系。
[0185] 在其他实施例中,所述计算单元303具体包括:
[0186] 第一获取单元304,用于从所述至少一个资源块组的数据传输参数中,获取每一个资源块组对应的第一用户终端信息和第一信道数据;
[0187] 第二获取单元305,用于按照所述预设运算并行度,采用所述第一用户终端信息和所述第一信道数据,依次对所述每一个资源块组进行运算处理,得到所述每一个资源块组对应的资源块组天线数据;
[0188] 第一构成单元306,用于由所述至少一个资源块组中所述每一个资源块组对应的资源块组天线数据,构成所述基站的天线数据。
[0189] 在其他实施例中,所述第一处理单元304具体包括:
[0190] 第三获取单元307,用于从所述每一个资源块组对应的所述第一用户终端信息和所述第一信道数据中,获取所述每一个资源块对应的第二用户终端信息和第二信道数据;
[0191] 第四获取单元308,用于按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,依次对所述每一个资源块进行运算处理,得到所述每一个资源块对应的资源块天线数据;
[0192] 第二构成单元309,用于由所述每一个资源块组中所述资源块天线数据,构成所述每一个资源块组对应的资源块组天线数据。
[0193] 在其他实施例中,所述第四获取单元308具体包括:
[0194] 第一处理单元310,用于按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,对所述每一个资源块对应的所述至少一根天线进行运算处理,依次得到每一根天线的所述每一个资源块对应的天线数据;
[0195] 第三构成单元311,用于由所述每一根天线的所述每一个资源块对应的天线数据,构成所述每一个资源块对应的资源块天线数据。
[0196] 在其他实施例中,所述第四获取单元308具体包括:
[0197] 第二处理单元312,用于按照所述预设运算并行度,采用所述第二用户终端信息和所述第二信道数据,对所述至少一根天线对应的每一个资源块进行运算处理,依次得到每一个根天线的每一个资源块对应的天线数据;
[0198] 第四构成单元313,用于由所述每一根天线的所述每一个资源块对应的天线数据,构成所述每一个资源块对应的资源块天线数据。
[0199] 在其他实施例中,所述第四获取单元308具体包括:
[0200] 第五获取单元314,用于从所述每个资源块对应的所述第二用户终端信息和所述第二信道数据中,获取所述每个资源块对应的资源单位的第三用户终端信息和第三信道数据;
[0201] 第六获取单元315,用于按照所述预设运算并行度,采用所述第三用户终端信息和第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每个资源单位对应的资源单位天线数据;
[0202] 第五构成单元316,用于由所述每一个资源块中所述每个资源单位对应的资源单位天线数据,构成所述每一个资源块对应的资源块天线数据。
[0203] 在其他实施例中,所述第六获取单元315具体包括:
[0204] 第一获取单元317,用于按照预设第一并行规则,采用所述第三用户终端信息和第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每个资源单位对应的资源单位天线数据,所述第一并行规则用于表征通过所述预设运算并行度对所述第三信道数据进行并行处理。
[0205] 在其他实施例中,所述第六获取单元315具体包括:
[0206] 第一获取单元318,用于按照预设第二并行规则,采用所述第三用户终端信息和第三信道数据,依次对所述每一个资源单位进行运算处理,得到所述每个资源单位对应的资源单位天线数据,所述第二并行规则用于表征通过所述预设运算并行度对所述第三用户终端信息进行并行处理。
[0207] 在其他实施例中,所述第六获取单元315具体包括:
[0208] 第一分组单元319,用于按照第一预设分组规则和预设第二并行规则,对第三用户终端信息和第三信道数据进行分组,第一预设分组规则用于表征以组为单位进行数据处理;
[0209] 第七获取单元320,用于依次对分组后的第三用户终端信息和分组后的第三信道数据进行运算处理,得到每一个资源单位对应的资源单位天线数据。
[0210] 在其他实施例中,所述获取单元302还包括:
[0211] 第八获取单元321,用于获取所述至少一个资源块组对应的用户终端信息和信道数据,所述用户终端信息和信道数据是按照预设第二分组规则对应地存储在缓存中,所述用户终端信息用于表征所述用户终端和所述传输带宽资源的映射关系,所述信道数据用于表征所述至少一根天线与所述用户终端之间的空间信道信息,所述第二预设分组规则用于表征以组为单位存储在所述缓存中;将所述用户终端信息和所述信道数据作为所述至少一个资源块组的数据传输参数。
[0212] 在其他实施例中,所述装置300还包括:
[0213] 第九获取单元322,用于获取传输带宽资源的目标运算量;根据所述目标运算量和所述用户终端的数量,获取所述预设数据处理的并行度。
[0214] 实施例四
[0215] 基于实施例一至实施例二的同一发明构思,本发明实施例提供一种数据处理装置,图15为本发明实施例提供的数据处理装置的组成结构示意图二,如图15所示,数据处理装置至少包括处理器01、通信总线02、存储器03及通信接口04,其中,通信总线02用于实现处理器01、通信接口04和存储器03之间的连接通信;处理器01用于执行存储器03中存储的数据处理程序,以实现上述实施例一和实施例二提供的数据处理方法中的步骤。
[0216] 另外,在本发明实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
[0217] 所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本发明实施例所述方法的全部或部分步骤。而前述的存储介质包括:磁性随机存取存储器(FRAM,ferromagnetic random access memory)、只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read‑Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read‑Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read‑Only Memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD‑ROM,Compact Disc Read‑Only Memory)等各种可以存储程序代码的介质,本发明实施例不作限制。
[0218] 基于前述实施例,本发明实施例提供了一种计算机可读存储介质,其上存储有数据处理程序,上述数据处理程序被上述处理器执行时实现上述实施例一至实施例二中的数据处理方法。
[0219] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0220] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0221] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0222] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0223] 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。