虚拟化网络中的处理链接的制作方法
未命名
07-14
阅读:127
评论:0
1.各种示例实施例涉及无线通信。
背景技术:
2.无线通信系统正在不断发展。例如,网络功能越来越多地被实现为虚拟化的网络功能,其中网络功能通过使用虚拟硬件抽象与它们在其上运行的硬件分离。支持虚拟化的硬件可以是现成的商业平台。为了进一步提高性能和降低功耗,所述功能中的一些可以从通用中央处理单元卸载到一个或多个硬件加速器,即专用处理单元。
技术实现要素:
3.根据一个方面,提供了一种装置,包括:至少一个中央处理单元;至少一个另外的处理单元;包括计算机程序代码的至少一个存储器,所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少执行:从所述至少一个另外的处理单元针对每个另外的处理单元查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所查询的所述信息包括至少端口的数量和每个端口的地址信息以及关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中端点的类型是主机端口类型或逻辑处理单元类型;以及通过经由主机端口类型的端点与所述一个或多个逻辑处理单元交互并且通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从所述至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。
4.在一个实施例中,实例化的管线抽象将端点与一个或多个所支持的接口类型相关联,并且其中所述至少一个存储器和计算机程序代码被配置为与处理单元一起使该装置至少执行:基于实例化的管线抽象中的接口类型,针对每个端点配置到该端点的接口类型。
5.在一个实施例中,所述至少一个存储器和计算机程序代码被配置为与处理单元一起使该装置至少执行:允许经由具有支持要插入的数据的接口类型的端点从所述至少一个中央处理单元进行数据插入;并且允许经由具有支持要检索的数据的接口类型的端点进行数据检索。
6.在实施例中,所述至少一个存储器和计算机程序代码被配置为与处理单元一起使所述装置至少执行:当端点的方向提供入口接口时,从包括至少如下各项的组中确定接口类型:突发数据队列接口类型,其允许以具有可配置大小的块传送数据;流数据接口类型,其允许以固定大小和固定间隔传送数据,所述大小和所述间隔是可配置的;以及定时/时钟接口类型,其允许使用具有可配置频率和占空比的定时信号;当端点的方向提供出口接口时,从包括如下各项的组中确定接口类型:突发数据队列接口类型、流数据接口类型、定时/时钟接口类型和具有回调的异步事件/数据队列接口类型,所述具有回调的异步事件/数据队列接口类型允许当数据/事件可用时异步传送数据/事件,并且包括当数据/事件可用时
调用的预先注册的回调函数。
7.在实施例中,所述至少一个存储器和计算机程序代码被配置为与处理单元一起使装置至少通过应用编程接口执行配置。
8.在实施例中,所述至少一个存储器和计算机程序代码被配置为在实例化管线抽象之前,与处理单元一起使装置至少执行:响应于接收到包括管线抽象的实例化请求,检查管线抽象的实现选项;当在检查期间发现两个或更多个实现选项时,选择实现选项之一;以及使用所选择的实现选项来实例化管线抽象。
9.在实施例中,所述至少一个存储器和计算机程序代码被配置为在实例化管线抽象之前,与处理单元一起使装置至少执行:响应于接收到包括管线抽象的实例化请求,检查管线抽象的实现选项;当在检查期间发现两个或更多个实现选项时,使朝向管线抽象从其起源的装置转发实现选项;接收关于在所述两个或更多个实现选项之中的所选择的实现选项的信息;以及使用所选择的实现选项来实例化管线抽象。
10.在实施例中,管线抽象以统一的方式表示所述两个或更多个实现选项。
11.在实施例中,所述至少一个存储器和计算机程序代码被配置为与处理单元一起使处理单元建立用于交互的直接物理连接。
12.根据一个方面,提供了一种方法,包括:从至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所查询的所述信息包括至少端口的数量和每个端口的地址信息以及关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中端点的类型是主机端口类型或逻辑处理单元类型;以及通过经由主机端口类型的端点与一个或多个逻辑处理单元交互并且通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。
13.在一个实施例中,该方法进一步包括:基于实例化的管线抽象中的接口类型,针对每个端点配置到该端点的接口类型。
14.在一个实施例中,该方法进一步包括:允许经由具有支持要插入的数据的接口类型的端点从所述至少一个中央处理单元进行数据插入;并且允许经由具有支持要检索的数据的接口类型的端点进行数据检索。
15.根据一个方面,提供了一种计算机可读介质,包括存储在其上的程序指令,所述程序指令用于执行至少以下操作:从至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所查询的所述信息包括至少端口的数量和每个端口的地址信息以及关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息至少配置端点的类型和端点连接到哪里的地址信息,其中端点的类型是主机端口类型或逻辑处理单元类型;以及通过经由主机端口类型的端点与一个或多个逻辑处理单元交互并且通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。
16.在一个实施例中,计算机可读介质是非暂时性计算机可读介质。
17.根据一个方面,提供了一种计算机程序,包括用于执行至少以下操作的指令:从至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所查询的所述信息包括至少端口的数量和每个端口的地址信息以及关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中端点的类型是主机端口类型或逻辑处理单元类型;以及通过经由主机端口类型的端点与一个或多个逻辑处理单元交互并且通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。
附图说明
18.参考附图,在下面仅通过示例的方式描述实施例,其中
19.图1图示了示例性的无线通信系统;
20.图2图示了示例性的云架构;
21.图3图示了逻辑处理单元的示例;
22.图4至图6图示了信息交换的示例;
23.图7是图示示例功能的流程图;
24.图8图示了链式逻辑处理单元的示例;
25.图9图示了图8的示例的硬件实现原理;
26.图10是图示另一示例功能的流程图;和
27.图11是示意框图。
具体实施方式
28.以下实施例是示例。尽管说明书可能在若干位置提到“一”、“一个”或“一些”实施例,但是这并不一定意味着每个这样的引用针对相同的(一个或多个)实施例,或者该特征仅适用于单个实施例。不同实施例的单个特征也可以被组合以提供其它实施例。此外,词语“包括”和“包含”应该理解为不将所描述的实施例限制为仅由已经提到的那些特征组成,并且这样的实施例还可以包含没有具体提到的特征/结构。另外,尽管包括诸如“第一”、“第二”等的序数的术语可以用于描述各种元件,但是结构元件不受所述术语的限制。所述术语仅用于将一个元件与其它元件区分开来的目的。例如,在不脱离本公开的范围的情况下,第一信号可以被称为第二信号,并且类似地,第二信号也可以被称为第一信号。
29.在下文中,将使用基于高级长期演进(lte advanced,lte-a)或新无线电(nr,5g)的无线电接入架构作为实施例可以应用于其的接入架构的示例来描述不同的示例性实施例,然而,实施例不限于这样的架构。通过适当地调整参数和程序,实施例也可以应用于具有合适部件的其它种类的通信网络。合适系统的其它选项的一些示例是通用移动电信系统(umts)无线电接入网络(utran或e-utran)、长期演进(lte,与e-utra相同)、无线局域网(wlan或wifi)、全球微波接入互操作性(wimax)、个人通信服务(pcs)、宽带码分多址(wcdma)、使用超宽带(uwb)技术的系统、传感器网络、移动自组织网络
(manet)和互联网协议多媒体子系统(ims)或其任何组合。
30.图1描绘了简化系统架构的示例,其仅示出了一些元件和功能实体,它们都是逻辑单元,它们的实现可能与所示的不同。图1中所示的连接是逻辑连接;实际的物理连接可能不同。对于本领域技术人员来说,显而易见的是该系统典型地还包括除了图1中所示的功能和结构之外的其它功能和结构。
31.然而,实施例不限于作为示例给出的系统100,而是本领域技术人员可以将该解决方案应用于提供有必要属性的其它通信系统。
32.图1的示例示出了示例性无线电接入网络的一部分。
33.图1示出了被配置为在一个或多个通信信道上与节点102无线连接的用户设备101、101’。节点102进一步连接到核心网络105。在一个示例中,节点102可以是在小区中提供设备或为设备服务的接入节点,诸如(e/g)nodeb。在一个示例中,节点102可以是非3gpp接入节点。从设备到(e/g)nodeb的物理链路被称为上行链路或反向链路,并且从(e/g)nodeb到设备的物理链路被称为下行链路或前向链路。应当领会,可以通过使用适用于这样的用途的任何节点、主机、服务器或接入点等实体来实现(e/g)nodeb或它们的功能。
34.通信系统典型地包括多于一个的(e/g)nodeb,在这种情况下,(e/g)nodeb也可以被配置为通过为此目的而设计的有线或无线链路彼此通信。这些链路可以用于信令目的。(e/g)nodeb是被配置为控制其耦合到的通信系统的无线电资源的计算设备。nodeb也可以被称为基站、接入点或包括能够在无线环境中操作的中继站的任何其它类型的接口设备。(e/g)nodeb包括或耦合到收发器。从(e/g)nodeb的收发器,连接被提供给天线单元,该天线单元建立到设备的双向无线电链路。天线单元可以包括多个天线或天线元件。(e/g)nodeb进一步连接到核心网络105(cn或下一代核心ngc)。取决于系统,cn侧的对应方可以是服务网关(s-gw,路由和转发用户数据分组)、分组数据网络网关(p-gw),用于提供用户设备(ue)到外部分组数据网络的连接,或者移动管理实体(mme),或者接入和移动性管理功能(amf)等。
35.用户设备(也称为ue、用户装备、用户终端、终端设备等)说明了一种类型的装置,空中接口上的资源被分配和指派给该装置,并且因此,本文中针对用户设备描述的任何特征都可以利用对应的装置(诸如中继节点)来实现。这样的中继节点的示例是朝向基站的第3层中继(自回程中继)。
36.用户设备典型地是指包括无线移动通信设备的设备(例如,便携式或非便携式计算设备),该无线移动通信设备利用或不利用订户标识模块(sim)进行操作,所述无线移动通信设备包括但不限于以下类型的设备:移动站(移动电话)、智能电话、个人数字助理(pda)、手机、使用无线调制解调器的设备(警报或测量设备等)、膝上型和/或触摸屏计算机、平板、游戏控制台、笔记本电脑和多媒体设备。应当领会,设备也可以是几乎排他的仅上行链路的设备,其示例是将图像或视频剪辑加载到网络的相机或摄影机。设备也可以是具有在物联网(iot)网络中操作的能力的设备,物联网是这样一种场景,其中对象被提供有通过网络传送数据的能力,而不需要人对人或人对计算机的交互,所述设备例如用于智能电网和连接的车辆中。用户设备也可以利用云。在一些应用中,用户设备可以包括具有无线电部件的用户便携式设备(诸如手表、耳机、眼镜、其它可穿戴附件或可穿戴物),并且计算在云中实行。该设备(或者在一些实施例中,第3层中继节点)被配置为执行用户装备功能中的
一个或多个。用户设备也可以被称为订户单元、移动站、远程终端、接入终端、用户终端或用户装备(ue),这里仅提及几个名称或装置。
37.本文中描述的各种技术也可以应用于信息物理系统(cps)(控制物理实体的协作计算元件的系统)。cps可以使能实现和开发嵌入在不同位置处的物理对象中的大量互连的ict设备(传感器、致动器、处理器微控制器等)。移动信息物理系统是信息物理系统的一个子类,移动信息物理系统中所讨论的物理系统具有固有的移动性。移动物理系统的示例包括由人或动物运输的移动机器人和电子器件。
38.此外,尽管所述装置已经被描绘为单个实体,但是可以实现不同的单元、处理器和/或存储器单元(在图1中没有全部示出)。
39.5g使能使用多输入多输出(mimo)天线,比lte(所谓的小型小区概念)更多得多的基站或节点,包括与较小的站合作操作的宏站点,并取决于服务需求、用例和/或可用频谱采用各种无线电技术。5g移动通信支持广泛的用例和相关应用,包括视频流、增强现实、不同方式的数据共享和各种形式的机器类型应用(诸如(大规模)机器类型通信(mmtc),包括车辆安全、不同传感器和实时控制。期望5g具有多个无线电接口,即6ghz以下、厘米波和毫米波,并且还是与现有的遗留无线电接入技术(诸如lte)可集成的。至少在早期阶段,可以将与lte的集成实现为系统,其中宏覆盖由lte提供,并且5g无线电接口接入通过聚合到lte来自小的小区。换句话说,5g被规划为支持rat间可操作性(诸如lte-5g)和ri间可操作性(无线电接口间可操作性,诸如6ghz以下-厘米波、6ghz以下-厘米波-毫米波)。5g网络中考虑使用的概念之一是网络切片,其中可以在同一基础设施内创建多个独立和专用的虚拟子网络(网络实例),以运行对时延、可靠性、吞吐量和移动性具有不同要求的服务。
40.lte网络中的当前架构完全分布在无线电中,并且完全集中在核心网络中。5g中的低时延应用和服务要求将内容接近无线电,这导致了本地爆发和多接入边缘计算(mec)。5g使得分析和知识生成能够发生在数据源处。该方法要求利用可能无法持续连接到网络的资源,诸如膝上型计算机、智能电话、平板和传感器。mec为应用和服务托管提供了分布式计算环境。它还具有在蜂窝订户紧附近存储和处理内容的能力,用于加快响应时间。边缘计算覆盖了广泛的技术,诸如无线传感器网络、移动数据采集、移动签名分析、合作分布式对等自组织联网和处理,也可分类为本地云/雾计算和网格/网式计算、露水计算、移动边缘计算、cloudlet、分布式数据存储和检索、自主自愈网络、远程云服务、增强和虚拟现实、数据高速缓存、(大规模连接和/或时延关键的)物联网、关键通信(自主车辆、交通安全、实时分析、时间关键控制、医疗保健应用)。
41.该通信系统还能够与诸如公共切换电话网或互联网106之类的其它网络通信,或者利用由它们提供的服务。通信网络还能够支持云服务的使用,例如至少部分核心网络操作可以作为云服务来实行(这在图1中由“云”107来描绘)。通信系统还可以包括中央控制实体等,为不同运营商的网络提供设施,以例如在频谱共享中进行合作。
42.通过利用网络功能虚拟化(nvf)和软件定义联网(sdn),可以将边缘云技术引入无线电接入网络(ran)。使用边缘云技术可以意味着接入节点操作至少部分地要在操作上耦合到远程无线电头端或包括无线电部分的基站的服务器、主机或节点中实行。也可能的是节点操作将分布在多个服务器、节点或主机之中。云ran架构的应用使得ran实时功能能够在ran侧(在分布式单元du 102中)实行,并且非实时功能能够以集中式方式(在集中式单元
cu 104中)实行。
43.还应该理解,核心网络操作和基站操作之间的劳动分布可以不同于lte,或者甚至不存在。可能会使用的一些其它技术进步是大数据和全ip,这可能改变正在构建和管理网络的方式。5g(或新的无线电,nr)网络被设计为支持多个层级,其中mec服务器可以放置在核心和基站或nodeb(gnb)之间。应当领会,mec也可以应用于4g网络中。
44.5g还可以利用卫星通信例如通过提供回程来增强或补充5g服务的覆盖范围。可能的用例是为机器对机器(m2m)或物联网(iot)设备或车载乘客提供服务连续性,或确保关键通信和未来铁路/海事/航空通信的服务可用性。卫星通信可以利用地球同步轨道(geo)卫星系统,但是也可以利用低地球轨道(leo)卫星系统,特别是巨型星座(其中部署了数百个(纳米)卫星的系统)。巨型星座中的每个卫星103可以覆盖创建地面小区的若干个卫星使能的网络实体。地面小区可以通过地面中继节点102或通过位于地面或卫星中的gnb来创建。
45.对于本领域技术人员来说显而易见的是,所描绘的系统仅是无线电接入系统的一部分的示例,并且在实践中,该系统可以包括多个(e/g)nodeb,用户设备可能能够接入多个无线电小区,并且该系统还可以包括其它装置,诸如物理层中继节点或其它网络元件等。(e/g)nodeb中的至少一个或者可以是家庭(e/g)nodeb。此外,在无线电通信系统的地理区域中,可以提供多个不同种类的无线电小区以及多个无线电小区。无线电小区可以是宏小区(或伞状小区),它们是通常具有高达数十千米直径的大的小区,或者是较小的小区,诸如微小区、毫微微小区或微微小区。图1的(e/g)nodeb可以提供任何种类的这些小区。蜂窝无线电系统可以被实现为包括若干种类的小区的多层网络。典型地,在多层网络中,一个接入节点提供一个种类的(一个或多个)小区,并且因此需要多个(e/g)nodeb来提供这样的网络结构。
46.为了满足改进通信系统的部署和性能的需要,已经引入了“即插即用”(e/g)nodeb的概念。典型地,能够使用“即插即用”(e/g)nodeb的网络,除了家庭(e/g)nodeb(h(e/g)nodeb)之外,还包括家庭nodeb网关或hnb-gw(图1中未示出)。典型地安装在运营商网络内的hnb网关(hnb-gw)可以将来自大量hnb的业务聚合回到核心网络。
47.图2图示了支持硬件加速的云架构中的实体的高级视图。参考图2,云架构200包括服务管理和编排框架(smo)210和开放云220,开放云220提供抽象平台以将网络功能的抽象与处理硬件230分离。应当领会,云架构还可以包括本文中未公开的其它元素。
48.对于硬件加速管线,服务管理和编排框架210包括一个或多个网络功能编排器(nfo)201。网络功能编排器201是管理多个网络功能的功能实体,所述多个网络功能通过提供网络服务的一个或多个部分来提供网络服务和/或有助于网络服务。网络功能编排器201包括不同的功能,例如网络服务的实例化,借助于所述不同的功能,网络功能编排器201可以管理网络功能。针对每个要实例化的网络服务,网络功能编排器201具有关于网络服务中涉及的一个或多个网络功能的其处理管线内的硬件加速器的信息。
49.开放云220托管云化的网络功能,并且包括一个或多个加速器管线管理服务apms实体202和一个或多个硬件加速器管理器实体203。加速器管线管理服务实体202提供部署管理服务,通过接口221与一个或多个网络功能编排实体201交互,并通过内部接口222与一个或多个硬件加速器管理器ham实体203交互。硬件加速器管理器实体203管理通过接口223与硬件加速器230的交互。
50.硬件加速器230可以包括例如一个或多个硬件装置,所述硬件装置包括不同的通用处理器,或者其它现成的商业设备或平台以及设备和平台之间的应用编程接口。用于硬件加速器的非限制性硬件列表包括中央处理单元、图形处理单元、数据处理单元、神经网络处理单元、现场可编程门阵列、基于图形处理单元的片上系统、基于现场可编程门阵列的片上系统、可编程专用集成电路和smartnic,smartnic是具有可编程加速器和以太网连接的可编程网络适配器卡。
51.在5g中和5g之后,设想将具有对应抽象模型的硬件加速与边缘云一起使用。抽象模型利用逻辑处理单元来表示硬件加速器,一些网络功能或网络功能的一个或多个部分可以卸载到所述硬件加速器。
52.图3图示了逻辑处理单元lpu 300的示例,或者更精确地说,图示了逻辑处理单元300的基本构建块的示例,逻辑处理单元300表示提供一个或多个服务的网络设备(硬件设备)实例内的资源。应当领会,一个逻辑处理单元可以表示包括多个子系统的网络设备。使用基本构建块,可能的是以统一的方式,例如在管线抽象中,表示异构类型的硬件加速器,下面描述其示例。异构类型的示例包括加速函数集合的不同实现,以及来自不同供应商的相同加速函数集合,该集合包括一个或多个加速函数。
53.参考图3,逻辑处理单元300包括一个或多个入口接口301、一个或多个出口接口302和一个或多个加速器函数303,并且如果存在两个或更多个加速器函数,则包括函数之间或两个加速器函数之间的连接。该连接可以是静态连接,其在定义抽象模型时被预定义(配置),或者是半静态连接,其例如经由应用编程接口是可编程的(或可重新配置的、可改变的)。作为入口接口301或出口接口302的接口与端点类型相关联,在所图示的示例中,端点类型是主机端口或逻辑处理单元(lpu)端口。端点类型提供了链接卸载的逻辑处理单元实例的可能性,同时允许主进程在链内插入或检索数据,这将利用图8和图9更详细地描述。不同加速器函数之间的连接(如果存在的话)和/或(一个或多个)入口接口的定义301和/或(一个或多个)出口接口的定义302可以是静态的,即在定义抽象模型时被配置,或者是半静态的,即经由应用编程接口可编程的。
54.另外,所述一个或多个支持的接口类型取决于抽象的网络设备。入口接口可以被配置为支持突发数据队列接口类型、或流数据接口类型、或定时/时钟接口类型。出口接口可以被配置为支持突发数据队列接口类型、或流数据接口类型、或定时/时钟接口类型、或具有回调的异步事件/数据队列接口类型。突发数据队列接口类型允许以具有可配置大小的块传送数据。流数据接口类型允许以固定大小和固定间隔传送数据,大小和间隔这两者是可配置的。定时/时钟接口类型允许使用具有可配置频率和占空比的定时信号。具有回调的异步事件/数据队列允许在数据/事件可用时异步传送数据/事件,并且包括在数据/事件可用时调用的预先注册的回调函数。
55.图4至图6图示了使用图2中所图示的云架构的硬件加速器的管理平面上的管线实例化的信息交换序列的不同示例。该功能可以响应于添加到网络的新硬件或者硬件的新部署而被触发,以便网络管理系统发现新硬件或者新部署的能力,或者接收到的新的服务请求。
56.参考图4,网络功能编排器nfo在块4-1中检测到对网络服务的需求,并且在块4-1中提供包含管线抽象的描述文件。管线抽象提供了加速器类型和加速器序列。描述文件可
以是例如json(javascript对象符号)格式或yaml格式。(yaml是一种人类可读的数据序列化语言。)然后,nfo使用加速器管线管理服务apms请求(消息4-2)管线实例化。消息4-2可以是“加速管线实例化请求”。apms在块4-3中检查请求的有效性,即描述文件的有效性。如果描述无效,则向nfo返回错误。然而,在所图示的示例中,假设描述文件是有效的,并且apms创建(消息4-4)朝向硬件加速器管理器ham的实例化请求(o-cloud内部实例化请求)。消息4-4可以是“抽象管线请求”。在接收到请求(消息4-4)时,ham在块4-5中针对可能的实例化选项检查其内部库存,例如ham中的存储器。实例化选项的示例的非限制性列表包括底层硬件加速器的各种能力和预定义配置。换句话说,ham通过找出底层硬件的能力来执行o-cloud内部管线映射,所述能力例如支持直接向另一硬件加速器提供输入,或者ham具有一些加速器函数所需的存储器,和/或以其它方式确保管线的逻辑结构可以部署在硬件中。换句话说,在块4-5中,发现被允许。在所图示的示例中,假设发现了一个选项,并且因此ham在块4-5中继续进行实例化,即实例化管线。然后,ham经由apms(消息4-6、消息4-7)向nfo返回用于数据插入和/或数据检索的地址集,nfo可以在所述地址上操作。消息4-6和消息4-7可以是“所请求的管线数据插入/检索点的地址”。
57.如果ham在块4-5中没有发现可能的实例化选项,则它不继续进行实例化,而是将经由apms通知管线抽象不能被实例化。在这样的情况下,消息4-6和消息4-7可以是“管线实例化请求的nack”。
58.图5和图6中所图示的信息交换与图4中所图示的内容的不同之处在于,当检查内部实例化选项时,ham发现多于一个选项。
59.参考图5,块5-1和5-3对应于利用图4描述的块4-1和4-3,以及消息5-2和5-4对应于利用图4描述的消息4-2和4-4,并且本文中不再徒劳地重复。在块5-5中,ham针对可能的实例化选项检查其内部库存。由于在所图示示例中,在块5-5中发现两个或更多个实例化选项,因此ham基于其内部策略在块5-5中选择选项之一。内部策略的非限制性列表包括最小化总能耗和最大化性能。然后,ham在块5-5中继续进行所选择的选项的实例化,并且经由apms(消息5-6、消息5-7)向nfo返回用于数据插入和/或数据检索的地址集,nfo可以在所述地址上操作。消息5-6和5-7对应于消息4-6和4-7。
60.参考图6,块6-1和6-3对应于利用图4描述的块4-1和4-3,并且消息6-2和6-4对应于利用图4描述的消息4-2和4-4,并且本文中不再徒劳地重复。在块6-5中,ham针对可能的实例化选项检查其内部库存。由于在所图示的示例中,在块6-5中发现两个或更多个实例化选项,因此ham经由apms(消息6-6、6-7)将选项转发给nfo。消息6-6和6-7可以是“替代映射选项”。在块6-8中,nfo使用nfo中指定的策略来选择选项之一,并且经由amps(消息6-9、6-10)将关于所选择的选项的信息转发给ham。该策略可以是上面作为示例给出的策略之一。消息6-9和6-10可以是“优选映射的确认”。在接收到关于所选选项的信息后,ham在块6-11中实例化所选选项。然后,ham经由apms(消息6-12、消息6-13)向nfo返回用于数据插入和/或数据检索的地址集,nfo可以在所述地址上操作。消息6-12和6-13可以是“优选管线数据插入/检索点的地址”。
61.图7图示了硬件装置的功能,或者更精确地,图示了在硬件装置上运行的应用程序的功能。一旦硬件加速器管理器已经实例化了管线抽象,就可以执行块702至704中描述的功能,即与块701中公开的功能分离地执行。
62.参考图7,在块701中,可执行代码经由硬件加速器管理器和硬件装置之间的管理接口被加载到硬件装置,并在块701中被实例化。可执行代码可以是内核代码或固件可执行代码。可执行代码是定义可用端口和加速函数的低级代码,使能实现硬件加速器的能力。应当领会,可执行代码可以被加载到硬件装置,并在需要时被实例化,或者被较早加载,在这种情况下,它被存储到硬件装置。当可执行代码已经被加载和实例化时,硬件装置在块702中经由应用编程接口,例如经由加速适配层接口(aali),查询端口的数量、它们的标识符、方向(出口或入口)以及可能的端口相关配置。例如,在块702中,应用程序可以使用应用编程接口中的通用查询函数调用。然后,在块703中,硬件装置(在硬件装置中运行的应用程序)通过针对每个端点(表示端口)定义其端点类型、其接口类型和指示连接哪个端口的地址信息,并通过命令应用配置,来配置(包括改变配置,如果需要的话)(一个或多个)逻辑处理单元的处理链。在块703中,应用程序可以使用应用编程接口中的一个或多个配置实体调用。然后,在块704中,通过使得基于配置中的端点类型和地址信息连接端口来创建处理链。例如,在块704中,应用程序可以在应用编程接口中使用通用连接命令调用。换句话说,端口连接到逻辑处理单元内的加速函数,或者连接到另一逻辑处理单元上的端口。
63.图8图示了例如用于数据流的链式逻辑处理单元的示例,其由应用程序经由应用编程接口在数据平面处理中创建和配置,如利用图7所描述的那样。
64.参考图8,已经链接了三个逻辑处理单元821、822、823,逻辑处理单元具有利用针对入口端点的大写字母ep在逻辑处理单元上方描绘的入口点,以及利用针对出口端点的小写字母ep在逻辑处理单元下方描绘的出口端点,由下划线字母描绘的主机端口的端点类型,以及由斜体字母描绘的逻辑处理单元端口的端点类型。
65.参考图8,第一逻辑处理单元821包括根据预定义的连接串联连接在一起的三个不同的加速函数af1 821-1、af2 821-2和af3 821-3。另外,第一逻辑处理单元821具有两个入口端点ep1 811、ep2 812,两者都是主机端口,这意味着主机应用可以将数据插入到对应的加速函数。第一逻辑处理单元821还具有两个出口端点ep3 831和ep4 832,其中一个831是主机端口,并且另一个832是逻辑处理单元端口。这意味着可以从端点831检索经处理的数据,而另一个端点832提供要插入到另一接口中的加速函数的数据。
66.第二逻辑处理单元822包括串联连接在一起的两个不同的加速函数af4 822-1和af5 822-2。另外,在所图示的示例中,第二逻辑处理单元仅具有一个入口端点ep4 813,其是插入由第一逻辑处理单元输出的数据的逻辑处理单元端口。第二逻辑处理单元822还具有两个出口端点ep6 833和ep7 834,其中一个833是主机端口,以及另一个834是逻辑处理单元端口。这意味着可以从端点833检索经处理的数据,而另一端点834提供要插入到另一接口中的加速函数的数据。
67.第三逻辑处理单元823包括一个加速函数af6 823-1。另外,在所图示的示例中,第三逻辑处理单元仅具有一个入口端点ep7 814,其是插入由第二逻辑处理单元输出的数据的逻辑处理单元端口。第三逻辑处理单元823还具有一个出口端点ep9 835,其是主机端口。
68.例如,假设针对不同端点定义的接口类型是用于ep1的突发数据队列、用于ep2的定时/时钟接口、用于ep3和ep6的异步数据以及用于ep9的流数据,主机应用可以通过ep1插入突发数据,以及通过ep2插入定时信号,并且通过ep3和ep6检索指示警报的异步数据,以及通过ep9流式输出数据。
69.如从图8所图示的示例中可以看出的,逻辑处理单元可以包括一个或多个加速函数。另外,应当领会,可以存在一个或多个逻辑处理单元,并且可以存在逻辑处理单元的一个或多个链,所述链意味着逻辑处理单元的出口端点被连接到另一逻辑处理单元的入口端点,所述链以仅具有主机端口类型的入口端点的逻辑处理单元开始,并且以仅具有主机端口类型的出口端点的逻辑处理单元结束。
70.应当领会,第二逻辑处理单元以及第三逻辑处理单元可以包括多于一个的入口端点,其可以是主机端口类型。换句话说,端点的数量和类型没有限制。
71.图9图示了图8的示例的硬件实现原理。换句话说,它描绘了运行在主机处理单元上的软件进程可以如何使用实例化模型的定义将处理卸载到一个或多个其它处理单元(硬件加速器)的功能图示。
72.参考图9,图8的第一逻辑处理单元821由lpua标示,并且其加速函数由af1 821-1、af2 821-2和af3 821-2标示。图8的第二逻辑处理单元822由lpub标示,并且其加速函数由af4 822-1和af5 822-2标示。图8的第三逻辑处理单元823由lpuc标示,并且其加速函数由af6 823-1标示。
73.在图9的示例中,使用了多线程内核。在该示例中,假设在主机处理单元上可以正在运行主进程(父进程)和一个或多个子进程。然而,应当领会,在另一实现中,可以不存在子进程。
74.换句话说,在图9中,在线910-1上图示了在主机处理单元(例如主机中央处理单元)上运行的主进程,以及在线910-2上图示了在主机处理单元上运行的子进程。另外,在所图示的示例中,针对每个卸载的逻辑处理单元存在单独的处理单元,例如硬件加速器。然而,应当领会,两个或更多个逻辑处理单元可以被卸载到一个硬件加速器。换句话说,两个或更多个逻辑处理单元可以是两个或更多个逻辑分区中的一个(相同)加速硬件的表示(抽象)。在线921上图示了在lpua 821的硬件加速器上运行的进程,在线922上图示了在lpub 822的硬件加速器上运行的进程,以及在线923上图示了在lpuc 823的硬件加速器上运行的进程。另外,在所图示的示例中,向卸载的逻辑处理单元插入(发送)数据或从卸载的逻辑处理单元接收(检索)数据的不同过程通过由f1 911(向lpua内的两个入口端点发送数据)、f2 912(从lpua内的一个出口端点检索数据)、f3 913(从lpub内的一个出口端点检索数据)和f4 914(从lpuc内的一个出口端点检索数据)标示的功能来描绘。
75.不同功能之间的连接(包括直接物理连接)包括“主机到加速器”连接901、“加速器到主机”连接902和“加速器到加速器”连接903,它们是在图7的示例中使用连接命令创建(建立)的,连接命令传达要使用的配置。因此,连接命令指令处理单元经由直接存储器访问向/从主机传送数据,或者向/从另一个处理单元传送数据。处理单元内的连接904是预先配置的内部连接。
76.如从图9中所图示的示例中可以看出,由于端口类型定义和地址信息,仅当主机处理单元是接收方时,数据才返回到主机处理单元。换句话说,不需要在主机处理域和一个或多个加速器域之间来回反弹数据。因此,避免了由来回反弹数据引起的处理时延。另外,数据的传送消耗电力,并且通过避免反弹,可以节省电力。
77.在使用p4语言来定义图9中所图示的处理管线的实现中,运行在主机处理单元上的功能内或卸载的逻辑处理单元内的分组处理管线可以被表示为p4目标。借助于p4语言,
确定逻辑处理管线,逻辑处理管线被翻译成硬件加速器支持的任何编程语言或配置参数,并且可以用于实现对应的处理管线。
78.图10是图示了鉴于硬件抽象层在主机处理单元中运行的一个或多个主应用进程与硬件抽象层之间通过应用编程接口(例如在装置中)进行交互的示例的流程图。
79.参考图10,在块1001中,初始化硬件加速器平台。块1001可以包括在硬件抽象层中接收没有任何信息的应用编程接口api函数“init_platform()”,以及从硬件抽象层发送具有平台标识符的api函数“init_platform_response()”。
80.然后在块1002中查询实体。实体是硬件加速器实例,即经由应用编程接口可配置的逻辑处理单元实例。块1002可以包括在硬件抽象层中接收具有平台标识符的api函数“query_platform()”,该标识符是在块1001中发送的标识符,以及从硬件抽象层发送具有关于多个实体的信息的api函数“query_platform_response()”,以及针对每个实体的公开例如实体标识符、类型、状态等的实体列表。例如,使用图8和图9中的示例,可以发送关于lpua、lpub和lpuc的信息。
81.在处理管线中使用的实体在所图示的示例中在块1003中被初始化。块1003可以包括在硬件抽象层中针对所有实体接收针对每个实体的具有对应实体标识符的api函数“init_entity()”,以及从硬件抽象层发送具有指示初始化是成功还是失败的信息的api函数“init_entity_response()”。
82.在块1004中查询成功初始化的实体。块1004可以包括在硬件抽象层中针对每个实体接收具有对应实体标识符的api函数“query_entity()”,以及从硬件抽象层发送具有关于端口数量的信息的api函数“query_entity_response()”,端口列表公开了针对每个端口的例如端口标识符、方向(输入/输出或入口/出口端口)等、函数的数量(加速函数),以及函数列表公开了针对每个函数的例如函数标识符、类型等。查询响应指示预配置的内部连接和可配置的连接这两者。
83.在所图示的示例中,应用进程基于查询响应选择进程继续进行的实体。应当领会,可以选择所有实体。在块1005中,通过确定配置并在硬件抽象层中接收它们来配置所选择的实体。块1005可以包括:接收用于所选实体的api函数“configure_entity()”,该函数具有带有要在硬件抽象层中刷新的参数(ptr_parameters)的命令,执行配置,以及从硬件抽象层发送指示配置是否成功的api函数“configure_entity_ack()”。在图示的示例中,假设配置成功。例如,配置的结果可以是图8中所图示的链。具有参数的命令可以包含例如如下各项:load_kernel、connect_ep、connect_port、setup_qos、setup_interface等,即实现对应逻辑处理单元或逻辑处理单元链的命令,最终结果是逻辑链,例如诸如图8中所图示的那样。在示例中,命令ep意指端点,连接命令可以从lpu到主机,从主机到lpu,或者从lpu到另一个lpu,qos意指服务质量,以及接口意指(支持的接口类型的)接口类型。这也使底层硬件加速器建立直接的物理连接。
84.然后,在块1006中,提交所选择和所配置的实体。块1006可以包括在硬件抽象层中针对每个实体接收具有实体标识符的api函数“commit_entity()”,并从硬件抽象层发送具有关于状态和一个或多个接口标识符等的信息的api函数“commit_entity_response()”。接口标识符是用于数据插入或数据检索的端点标识符。
85.当处理开始时,在块1007中激活所选择的实体。块1007可以包括在硬件抽象层中
针对每个实体接收具有实体标识符、一个或多个接口标识符、(一个或多个)函数标识符等的api函数“activate_entity()”,并且从硬件抽象层发送指示激活是否成功的api函数“activate_entity_ack()”。在所图示的示例中,假设激活成功。函数标识符是指已经被选择的加速函数,并且如果存在两个或更多个函数标识符,则指示加速函数在lpu(实体)内部是连接的(预先配置的)。
86.然后在块1008中重复发送数据和/或检索数据和/或查验实体程序,直到处理完成为止。块1008可以包括在硬件抽象层中接收具有实体标识符、接口标识符和带有要插入的数据的ptr数据缓冲区(刷新数据缓冲区)的api函数“send_data()”,具有实体标识符、接口标识符和ptr数据缓冲区的“retrieve_data()”,以及具有实体标识符的“ping_entity()”,并且从硬件抽象层发送api函数“send_data_ack()”,具有检索到的数据的“retrieve_data_response()”,具有实体状态的“ping_entity_response()”,以及具有实体标识符、接口标识符和要刷新的参数的“entity_callback()”。
87.当处理完成时,激活的实体在块1009中停止,并且然后在块1010中释放。块1009可以包括,针对每个激活的实体,在硬件抽象层中接收api函数“stop_entity()”,以及从硬件抽象层发送api函数“stop_entity_ack()”。块1010可以包括,针对每个激活的实体,在硬件抽象层中接收api函数“release_entity()”,以及从硬件抽象层发送api函数“release_entity_ack()”。
88.上面借助于图2至10描述的块、相关功能和信息交换不以绝对的时间次序,并且它们中的一些可以同时执行或者以不同于给定的次序执行。也可以在它们之间或它们内执行其它功能,并且可以传输其它信息。所述块中的一些或所述块的部分或一条或多条信息也可以被省略,或者被对应的块或块的部分或一条或多条信息替换。另外,针对一个块描述的不同实现可以与另一个块的任何不同实现自由组合。
89.图11图示了被配置为在虚拟化无线电接入网络中或为虚拟化无线电接入网络提供一件硬件的装置1100。装置1100可以是电子设备,示例利用图1和图2在上面列出。该装置包括主机处理单元1110,例如中央处理单元联合体或主机服务器,其至少包括诸如至少一个处理器或处理电路之类的中央处理单元(cpu)1111,以及包括计算机程序代码(软件、算法)的至少一个存储器1112,其中所述至少一个存储器和计算机程序代码(软件、算法)被配置为与所述至少一个处理器一起使所述装置实行上面描述的实施例、示例和实现中的任何一个。
90.参考图11,存储器1112可以使用任何合适的数据存储技术来实现,诸如基于半导体的存储器设备、闪速存储器、磁性存储器设备和系统、光学存储器设备和系统、固定存储器和可移除存储器。存储器可以包括配置存储装置,例如用于至少临时存储关于逻辑处理单元的配置的信息。存储器1112可以进一步存储其它数据,诸如用于等待处理的数据的数据缓冲区。
91.装置1100包括硬件加速器电路,在图示的图中利用两个硬件加速器电路a-hw11121、a-hw21122描绘。应当领会,可以存在任何数量的硬件加速器电路。上面利用图2列出了硬件电路的不同示例。两个或更多个硬件加速器电路的端口可以彼此通信地耦合,以允许它们通过接口1103连接,如果端口被配置为连接的话。主机处理单元1110和硬件加速器电路1121、1122之间的接口1101可以是pcie接口,例如,允许配置逻辑处理单元链、数据
检索和数据插入的接口。
92.装置1100进一步包括通信接口1130,通信接口1130包括用于根据一个或多个无线和/或有线通信协议来实现通信连接的硬件和/或软件。通信接口1130可以向装置提供与不同装置的无线电通信能力,以及朝向核心网络的通信能力。
93.在一个实施例中,图1100的装置的功能中的至少一些可以在两个物理上分离的装置之间共享,从而形成一个操作实体。因此,装置1100可以被视为描绘了包括用于执行上面描述的过程中的至少一些的一个或多个物理上分离的装置的操作实体。
94.如在本技术中所使用的,术语“电路”是指以下所有内容:(a)仅硬件电路实现,诸如仅在模拟和/或数字电路中的实现,以及(b)电路和软件(和/或固件)的组合,诸如(如果适用的话):(i)(一个或多个)处理器的组合或(ii)(一个或多个)处理器/软件的部分,所述(一个或多个)处理器/软件包括一起工作以使装置执行各种功能的(一个或多个)数字信号处理器、软件和(一个或多个)存储器,以及(c)电路,诸如(一个或多个)微处理器或(一个或多个)微处理器的一部分,其需要软件或固件以用于操作,即使所述软件或固件物理上不存在。“电路”的定义适用于该术语在本技术中的所有使用。作为另外的示例,如在本技术中所使用的,术语“电路”也将覆盖仅仅一个处理器(或多个处理器)或处理器的一部分及其(或它们的)伴随软件和/或固件的实现。例如,并且如果适用于特定元件,则术语“电路”还将覆盖用于移动电话的基带集成电路或应用处理器集成电路,或者服务器、蜂窝网络设备或另一个网络设备中的类似集成电路。
95.在一个实施例中,结合图2至10描述的过程中的至少一些可以由包括用于实行所描述过程中的至少一些的对应部件的装置来实行。所述装置可以包括用于分离的过程阶段的分离部件,或者可以执行若干阶段或整个过程的部件。
96.根据又另一实施例,实行实施例/示例的装置包括电路,该电路包括至少一个处理器和包括计算机程序代码的至少一个存储器。当被激活时,该电路使该装置执行根据图2至图10的实施例/示例/实现中的任何一个的功能中的至少一些,或者其操作。
97.本文中描述的技术和方法可以通过各种部件来实现。例如,这些技术可以在硬件(一个或多个设备)、固件(一个或多个设备)、软件(一个或多个模块)或其组合中实现。对于硬件实现,上面列出了示例。对于固件或软件,可以通过执行本文中描述的功能的至少一个芯片集的模块(例如,程序、功能等等)来实现。软件代码可以存储在存储器单元中,并由处理器执行。存储器单元可以在处理器内或处理器外部实现。在后一种情况下,如本领域中已知的,它可以经由各种部件通信地耦合到处理器。附加地,本文中描述的装置(节点)的组件可以被重新布置和/或由附加组件补充,以便促进关于其描述的各个方面的实现等,并且如本领域技术人员将领会的,它们不限于给定各图中阐述的精确配置。
98.所描述的实施例/示例/实现还可以以由计算机程序或其部分定义的计算机过程的形式来实行。结合图2至10描述的方法和过程的实施例可以通过执行包括对应指令的计算机程序的至少一部分来执行。计算机程序可以以源代码形式、对象代码形式或某种中间形式,并且它可以存储在某种载体中,该载体可以是能够承载程序的任何实体或设备。例如,计算机程序可以存储在由计算机或处理器可读的计算机程序分发介质上。例如,计算机程序介质可以是例如但不限于记录介质、计算机存储器、只读存储器、电载波信号、电信信号和软件分发包。例如,计算机程序介质可以是非暂时性介质。用于实行所示和所描述实施
例的软件编码完全在本领域普通技术人员的范围内。在一个实施例中,计算机可读介质包括所述计算机程序。
99.对于本领域技术人员来说,将明显的是,随着技术的进步,本发明的概念可以以各种方式实现。实施例不限于上面描述的示例性实施例,而是可以在权利要求的范围内变化。因此,所有的词语和表达应该被广义地解释,并且它们旨在说明而不是限制示例性实施例。
技术特征:
1.一种装置,包括至少一个中央处理单元;至少一个另外的处理单元;包括计算机程序代码的至少一个存储器,所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少执行:从所述至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所述被查询的信息包括至少端口的数量以及每个端口的地址信息和关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中所述端点的类型是主机端口类型或逻辑处理单元类型;和通过经由主机端口类型的端点与一个或多个逻辑处理单元交互,以及通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从所述至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。2.根据权利要求1所述的装置,其中所述实例化的管线抽象将端点与一个或多个支持的接口类型相关联,并且其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少执行:基于实例化的管线抽象中的接口类型,针对每个端点配置到所述端点的接口类型。3.根据权利要求2所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少执行:允许经由具有支持要插入的数据的接口类型的端点从所述至少一个中央处理单元进行数据插入;和允许经由具有支持要检索的数据的接口类型的端点进行数据检索。4.根据权利要求2和3中任一项所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少执行:当端点的方向提供入口接口时,从包括至少如下各项的组中确定接口类型:突发数据队列接口类型,其允许以具有可配置大小的块传送数据;流数据接口类型,其允许以固定大小和固定间隔传送数据,所述大小和所述间隔是可配置的;以及定时/时钟接口类型,其允许使用具有可配置频率和占空比的定时信号;当端点的方向提供出口接口时,从包括如下各项的组中确定接口类型:突发数据队列接口类型、流数据接口类型、定时/时钟接口类型和具有回调的异步事件/数据队列接口类型,所述具有回调的异步事件/数据队列接口类型允许当数据/事件可用时异步传送数据/事件,并且包括当数据/事件可用时调用的预先注册的回调函数。5.根据权利要求1和2中任一项所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起使所述装置至少通过应用编程接口执行所述配置。6.根据权利要求1和2中任一项所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起,在实例化管线抽象之前,使所述装置至少执行:响应于接收到包括管线抽象的实例化请求,检查管线抽象的实现选项;
当在检查期间发现两个或更多个实现选项时,选择实现选项之一;知使用所选择的实现选项实例化管线抽象。7.根据权利要求1和2中任一项所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起,在实例化管线抽象之前,使所述装置至少执行:响应于接收到包括管线抽象的实例化请求,检查管线抽象的实现选项;当在检查期间发现两个或更多个实现选项时,使朝向管线抽象从其起源的装置转发实现选项;接收关于在两个或更多个实现选项之中选择的实现选项的信息;知使用所选择的实现选项来实例化管线抽象。8.根据权利要求6和7中任一项所述的装置,其中所述管线抽象以统一的方式表示所述两个或更多个实现选项。9.根据权利要求1和2中任一项所述的装置,其中所述至少一个存储器和计算机程序代码被配置为与所述处理单元一起,使所述处理单元建立用于交互的直接物理连接。10.一种方法,包括:从至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所述被查询的信息包括至少端口的数量以及每个端口的地址信息和关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中所述端点的类型是主机端口类型或逻辑处理单元类型;以及通过经由主机端口类型的端点与一个或多个逻辑处理单元交互,以及通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从至少一个中央处理单元卸载要由所述至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。11.根据权利要求10所述的方法,进一步包括:基于实例化的管线抽象中的接口类型,针对每个端点配置到所述端点的接口类型。12.根据权利要求11所述的方法,进一步包括:允许经由具有支持要插入的数据的接口类型的端点从所述至少一个中央处理单元进行数据插入;和允许经由具有支持要检索的数据的接口类型的端点进行数据检索。13.一种包括用于执行至少以下操作的指令的计算机程序:从至少一个另外的处理单元,针对每个另外的处理单元,查询与被实例化的管线抽象中的逻辑处理单元的链接可能性相关的信息,所述被查询的信息包括至少端口的数量以及每个端口的地址信息和关于端口方向的信息;针对要被链接的每个逻辑处理单元,针对表示逻辑处理单元中的端口的每个端点,使用所述信息配置至少端点的类型和端点连接到哪里的地址信息,其中所述端点的类型是主机端口类型或逻辑处理单元类型;和通过经由主机端口类型的端点与一个或多个逻辑处理单元交互,以及通过经由逻辑处理单元端口类型的端点在逻辑处理单元之间交互,从至少一个中央处理单元卸载要由所述
至少一个另外的处理单元中的一个或多个执行的一个或多个功能,所述交互使用地址信息。
技术总结
为了动态地允许包括端点的逻辑处理单元的链接,至少端点的类型和端点连接到哪里的地址信息被配置,其中所述端点的类型是主机端口类型或逻辑处理单元类型。在从中央处理单元卸载要由至少一个另外的处理单元执行的一个或多个功能期间,中央处理单元正在经由主机端口类型的端点与一个或多个逻辑处理单元交互,并且逻辑处理单元正在经由逻辑处理单元端口类型的端点进行交互,所述交互使用地址信息。所述交互使用地址信息。所述交互使用地址信息。
技术研发人员:H
受保护的技术使用者:诺基亚技术有限公司
技术研发日:2023.01.06
技术公布日:2023/7/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种水上喷洒控藻剂的自动化装置 下一篇:信息记录介质及其制造方法与流程
