用于多入口与多出口之间的交叉并行数据的方法和装置与流程

文档序号:11532358阅读:241来源:国知局
用于多入口与多出口之间的交叉并行数据的方法和装置与流程
本发明涉及多入口与多出口之间的交叉并行数据传递技术。
背景技术
:在图1中示出了多入口与多出口之间的交叉并行数据传递的要求。这被广泛地应用于任何通信平台。图2示出了实现交叉并行数据的一种现有的解决方案。但是该解决方案的缺陷是显而易见的。数据需要被冗余存储在入口ram与mux(多路复用器)之间的块ram中,因此这耗费了块ram的大量存储成本。这一成本随着更多链路而变得更大。技术实现要素:本发明的目的是提供一种用于确定多入口与多出口之间的交叉并行数据的路由信息的方法和装置。根据本发明的一个方面,提供一种用于确定多入口与多出口之间的交叉并行数据的路由信息的方法。其中,入口、出口和mux的数量均为n,每一个入口连接到所有的mux并且每一个mux连接到一个出口,并且从多入口到多出口的数据传递序列是n*n矩阵;其中,所述方法包括以下步骤:-基于多入口与多出口之间的数据传递序列生成路由表组,其中所述路由表组包括一个为每一个入口指明将要传递的数据样本的获取地址的路由表集合,一个为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本的路由表集合,以及一个为每一个出口指明所选数据样本的保存地址的路由表集合。根据本发明的一个方面,提供一种用于多入口与多出口之间的交叉并行数据的交换设备。所述交换设备包括多个入口、多个出口以及多入口与多出口之间的多个mux,其中,入口、出口和mux的数量均为n,每一个入口连接到所有的mux并且每一个mux连接到一个出口,并且从多入口到多出口的数据传递序列是n*n矩阵;其中,在一个数据序列的传递中,每一个入口被配置来根据该入口的路由表获取将要传递的数据并且把所取回的数据传递到所有的mux,其中该入口的路由表指明所述数据的获取地址;每一个mux被配置来根据该mux的路由表把接收自一个入口的数据传递到相应的出口,其中该mux的路由表指明与传递所取回数据的入口相对应的目的地出口;每一个出口被配置来根据指明所接收到数据的保存地址的路由表保存自相应mux接收的数据。根据本发明的一个方面,提供一种用于确定多入口与多出口之间的交叉并行数据的路由信息的设备。其中,入口、出口和mux的数量均为n,每一个入口连接到所有的mux并且每一个mux连接到一个出口,并且从多入口到多出口的数据传递序列是n*n矩阵;其中,所述设备被配置来:-基于多入口与多出口之间的数据传递序列生成路由表组,其中所述路由表组包括一个为每一个入口指明将要传递的数据样本的获取地址的路由表集合,一个为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本的路由表集合,以及一个为每一个出口指明所选数据样本的保存地址的路由表集合。根据本发明的一个方面,提供一种计算机可读介质。所述计算机可读介质包含计算机代码,所述计算机代码由包括多个入口、多个出口以及多入口与多出口之间的多个mux的交换设备执行,其中入口、出口和mux的数量均为n,每一个入口连接到所有的mux并且每一个mux连接到一个出口,并且从多入口到多出口的数据传递序列是n*n矩阵;其中,所述计算机可读介质被操作来使得所述交换设备实施以下步骤:-基于多入口与多出口之间的数据传递序列生成路由表组,其中所述路由表组包括一个为每一个入口指明将要传递的数据样本的获取地址的路由表集合,一个为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本的路由表集合,以及一个为每一个出口指明所选数据样本的保存地址的路由表集合。根据本发明的一个方面,提供一种计算机程序。所述计算机程序由包括多个入口、多个出口以及多入口与多出口之间的多个mux的交换设备执行,其中入口、出口和mux的数量均为n,每一个入口连接到所有的mux并且每一个mux连接到一个出口,并且从多入口到多出口的数据传递序列是n*n矩阵;其中,所述计算机程序被操作来使得所述交换设备实施以下步骤:-基于多入口与多出口之间的数据传递序列生成路由表组,其中所述路由表组包括一个为每一个入口指明将要传递的数据样本的获取地址的路由表集合,一个为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本的路由表集合,以及一个为每一个出口指明所选数据样本的保存地址的路由表集合。本申请允许从不同的入口ram同步地取回一个数据样本,并且随后把各个数据样本分别推送到目的地出口ram中。附图说明通过参照附图阅读后面关于非限制性实施例的详细描述,本发明的其他特征、目的和优点将变得更加显而易见。图1示出了用于多入口与多出口之间的交叉并行数据的要求的示意图;图2示出了实现交叉并行数据的现有解决方案的示意图;图3示出了根据本申请的用于交叉并行数据的块ram的示意图;图4示出了根据本申请的一个实施例的rrh架构的示意图;图5示出了根据本申请的一个实施例的图4所示rrh的交叉模块的功能块的示意图。附图中的相同或类似的附图标记表明相同或相应的组件。具体实施方式后文中将参照附图更加详细地描述本发明。本发明提供了确定多入口与多出口之间的交叉并行数据传递的路由信息的一种解决方案。进一步地,本发明适用于任何类型的具有对称的多入口和多出口的交换设备。此外,除了交换设备之外,还可以由例如专用确定设备之类的其他设备来实施路由信息的确定,尽管所述路由信息被使用在具有对称的多入口和多出口的交换设备中。具体来说,对于多入口和多出口,入口和出口的数量均为n,并且有n个mux处于多入口与多出口之间。每一个入口连接到所有的mux,并且每一个mux连接到一个出口。对于包含n*m个数据样本的分组,需要m个传递周期将其从多入口传递到多出口。将要传递的分组构成一个n*n数据矩阵。在每一个传递周期中,从多入口到多出口的数据传递序列构成一个n*n传递矩阵。因此,对于一个分组的传递存在m个传递矩阵。在每一个n*n传递矩阵中,每一行和列中的数据样本不超过一个,因此在一个传递周期中最多传递n个数据样本。根据用于数据传递的传递序列,生成一个路由表组。该路由表组包括分别对应于多入口、多mux和多出口的三个路由表集合。具体来说,一个路由表集合是用于为每一个入口指明将要传递的数据样本的获取地址,一个路由表集合是用于为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本,以及一个路由表集合是用于为每一个出口指明所选数据样本的保存地址。该路由表组可以至少通过以下两种方式生成:1)可以基于已经确定的数据传递序列实时生成路由表组。当确定从多入口到多出口的数据传递序列时,相应地生成包括分别对应于每一个入口和每一个出口的三个路由表集合的路由表组。2)可以通过基于已经确定的数据传递序列调节预定义的路由表组而生成路由表组。路由表组可以被预先定义。其包括一个为每一个入口指明将要传递的数据样本的获取地址的预定义路由表集合,一个为每一个出口指明从传递自所有入口的数据样本当中所选择的数据样本的预定义路由表集合,以及一个为每一个出口指明所选数据样本的保存地址的预定义路由表集合。当从多入口到多出口的数据传递序列已知,可以相应地调节路由表组。具体来说,传递矩阵中的每一个数据样本表明一个入口与一个出口之间的相应传递关系。在预定义的路由表组中,来自任意入口的数据样本可以被传递到任意出口。因此可以基于数据传递序列调节每一个路由表中的路由序列,并且随后可以生成实时路由表组。参照图3,以4*4多链路为例,左侧的4个块ram表示多入口ram,右侧的4个块ram表示多出口ram,并且还有其间的4个mux。每一个入口ram存储将经由多mux传递到多出口的数据样本。每一个出口ram存储经由多mux自多入口接收的数据样本。每一个入口ram连接到所有的mux,并且每一个mux连接到一个出口ram。路由表组可以被离线生成。具体来说,路由表组包括三个路由表集合:每一个入口处的一个路由表集合用于使得相应的入口知道将从何处取回要传递的数据样本;每一个mux处的一个路由表集合用于使得相应的出口知道将从传递自多入口的数据样本当中选择哪些数据样本;以及每一个出口处的一个路由表集合用于使得相应的出口知道将把所选数据样本保存到何处。在此,每一个路由表可以被存储到相应的块ram中,比如入口ram、mux和出口ram,或者其可以被存储到连接到相应链路的另一个块ram中。优选的是,整个路由表组可以被存储到一个独立的块ram中,比如路由表块ram。当数据传递序列已知,例如一个分组的64个传递矩阵,可以相应地生成路由表组。为了易于说明和描述,以下使用入口1-4中的4个传递序列在表1中进行说明。表1其中对于出口m-n,m表明出口编号,n表明传递序列编号。后面在表2中示出了多入口与多出口的交叉连接关系。出口1出口2出口3出口4入口11111入口21111入口31111入口41111表2其中,“1”表明存在入口与出口之间的连接。假设:对角元素1-1、2-2、3-3、4-4是第一传递序列;对角元素2-1、3-2、4-3、1-4是第二传递序列;对角元素3-1、4-2、1-3、2-4是第三传递序列;以及对角元素4-1、1-2、2-3、3-4是第四传递序列。在此,元素由出口编号-入口编号表示。在下面的表3中示例性地示出了路由序列。表3如前所示,入口-x-地址向相应的入口表明将从何处取回数据样本,mux-x-地址向相应的出口表明将选择哪些数据样本,并且入口-x-地址向相应的出口表明将把数据样本保存到何处。根据所有已知的传递序列,可以确定相应的路由序列,并且从而可以生成路由表组。在入口与出口之间的相同吞吐量的条件下,需要更高的处理频率以从入口到出口串行地传递数据。因此有必要交叉并行数据以降低处理频率。为了避免入口和出口的拥塞,来自多入口的取回序列和去到多出口的保存序列必须被设计成一致。出于本发明的示例性说明,所述路由表组被描述成由交换设备生成。优选的是,把专用的生成器集成到交换设备中以生成路由表组。交换设备包括示例性地如图3所安排的模块。具体来说,每一个入口具有一个块ram来存储将被传递到多出口的数据,并且每一个入口连接到所有的mux。每一个mux连接到一个出口。根据数据传递序列,确定相应的路由序列。从而分别对应于多入口、多mux和多出口的三个路由表集合被确定,具体如下:1)应用于每一个入口的路由表包括对应于相应入口的in-ram读取地址,并且该读取地址表明按特定顺序将从入口ram的何处取回数据样本;2)应用于每一个出口处的路由表包括对应于相应出口的out-ram写入地址,并且该写入地址表明按特定顺序将把数据样本保存到出口-ram的何处;3)应用于每一个mux的路由表包括对应于相应出口的交换地址,并且该交换地址允许实现链路间传递。优选的是,交换设备可以基于多入口、多mux和多出口之间的连接预先定义路由表组。当数据传递序列已知时,交换设备可以通过按传递序列调节路由序列来更新该路由表组。每一个入口被配置成根据该入口的路由表取回将要传递的数据并且把所取回的数据传递到所有的mux,其中该入口的路由表表明所述数据的取回地址;每一个mux被配置成根据该mux的路由表把接收自一个入口的数据传递到相应的出口,其中该mux的路由表表明对应于传递所取回数据的入口的目的地出口;每一个出口被配置成根据路由表保存接收自相应mux的数据,该路由表表明所接收到的数据的保存地址。根据本发明的一个实施例,rrh设备是适用的。参照图4,其中示出了rrh架构。rrh设备包括充当分组交换机的交叉(crossbar)模块。如图4中所示,所述交叉模块位于cpri接口与天线处理链(后文中简称作天线-x/x)之间。lte-bbu把x*y*z个数据样本打包成一个分组。x是天线的数目,y是每个天线载波的数目,并且k是每载波数据样本的数目。举例来说,出于示例性的说明,lte-bbu在本说明书中把8*4*8个数据样本打包成一个分组。数据样本的总数是256个。分组通过cpri巷道(lane)从lte-bbu传递到rrh。一个cpri巷道仅提供64数据样本能力,因此存在4个cpri巷道。lte-bbu根据用户配置对64个数据样本进行打包。在下面的表4中示出了“分组格式”的一个示例性实例,其中lte-bbu基于相同的载波对数据样本进行打包。分组格式对于rrh是随机的。表4如图4中所示,所述交叉模块提供交换功能以把来自cpri的数据样本指派到对应的天线处理链中。分组格式信息已经通过其他信道被传递到rrh。任意cpri容器可以被路由到任意天线容器:i.cpri-x连续地传递分组。处于相同分组的数据样本组合到一个容器中。ii.把一个分组从cpri-x传递到天线-x/x侧仅花费64个周期。iii.cpri-x在一个周期仅弹射出一个数据样本。4个数据样本必须同步传递。iv.天线-x/x在一个周期仅接受一个数据样本。cpri-x是入口的一个示例性实例,天线是出口的一个示例性实例,因此从cpri传递到天线的数据样本构成一种多入口多出口情形。参照图4,每一个cpri-x和天线-x/x仅负荷64个数据样本。在此,为了cpri巷道与天线处理链之间的均等,两个天线被组合到一组中。因此,cpri巷道的数量为4,天线组的数量也是4。将要传递的数据矩阵被如下示出:并且前4个传递矩阵被如下示出:根据以上4个传递矩阵,在前面的表中示出了相应的路由序列。图5示例性地示出了所述交叉模块的功能块。参照图5,信源表示入口,信宿表示出口。传递序列定义将从各cpri巷道取得哪一个天线数据样本。所有数据样本都存放在信源存储器中并且具有其身份地址。信源和信宿是深度为64的存储器。在此,分别处于信源、mux和信宿处的路由表是信源表、mux表和信宿表。每一个信源具有其信源表,所述信源表指定将从信源单元的何处获得数据样本。每一个信宿具有其mux表,所述mux表指定信宿将从何处信源选择数据样本。每一个信宿具有其信宿表,所述信宿表指定信宿将把数据样本放置到信宿单元中的何处。把所有数据样本从信源(cpri巷道)移动到信宿(天线)需要花费64次。把一个数据样本从信源(cpri巷道)移动到信宿(天线)需要三个步骤。1)cpri巷道从信源表所指定的存储地址获得数据样本;2)天线组选择mux表所指定的数据样本;3)天线组把数据样本放置到信宿表所指定的存储地址。下面的步骤引导如何匹配传递序列和路由表组。1)根据传递序列确定将要取回哪一个天线数据样本。搜索指定的天线数据样本并且获得信源中的取回地址。将取回地址存储在信源表中。2)根据传递序列确定信源和信宿。把信源标识符保存到信宿的mux表中。搜索信宿的存储器中的空白空间以便得到保存地址。将保存地址存储在信宿的信宿表中。3)重复前面的步骤1)和2),直到所有数据样本都被从信源存储器路由到信宿存储器为止。应当提到的是,本发明可以通过软件或者软件与硬件的组合来实施;举例来说,本发明可以通过asic(专用集成电路)、通用计算机或者任何其他类似的硬件设备来实施。本发明的软件程序可以由处理器执行来实施前面的步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储在计算机可读记录介质中,例如ram存储器、磁性或光学驱动器或者软盘和其他类似的设备。此外,本发明的一些步骤或功能可以通过硬件来实施,例如与处理器协作来执行各种功能或步骤的电路。此外,本发明的一部分可以作为计算机程序产品被应用,例如计算机程序指令,其在由计算机执行时可以通过计算机的操作调用或提供根据本发明的方法和/或技术解决方案。此外,调用本发明的方法的程序指令可以被存储在固定或移动记录介质中,以及/或者通过其他信号承载介质中的广播或数据流来传送,以及/或者被存储在基于程序指令操作的计算机设备的工作存储器中。在这里,根据本发明的一个实施例包括一种装置,其包括用于存储计算机程序指令的存储器以及用于执行程序指令的处理器,其中当计算机程序指令由处理器执行时,所述装置被触发运行根据本发明的多个实施例的方法和/或技术解决方案。本领域技术人员将认识到,本发明不限于前面的示例性实施例的细节,并且在不背离本发明的精神或基本特征的情况下,可以通过其他实施例来实施本发明。因此,所述实施例在任何方面都应当被认为是示例性而非限制性的;本发明的范围由所附权利要求书而不是前面的描述限制,并且意图落到权利要求书的等效元素的含义和范围内的所有变型都应当被涵盖在本发明内。权利要求中的附图标记不应当被认为是限制所涉及的权利要求。此外还应当认识到,术语“包括”不排除其他单元或步骤,并且单数不排除复数。在系统权利要求中陈述的多个单元或模块也可以由单个单元或模块通过软件或硬件实施。例如“第一”和“第二”之类的术语被用来表明名称,而不表明任何特定顺序。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1