片上网络(NoC)中的广播交换机系统的制作方法

文档序号:30621676发布日期:2022-07-02 03:26阅读:236来源:国知局
片上网络(NoC)中的广播交换机系统的制作方法
片上网络(noc)中的广播交换机系统
技术领域
1.本发明总体涉及在片上网络(noc)中广播事务,并且更具体地,涉及在广播管理交换系统中用于广播事务的广播交换机。


背景技术:

2.计算机处理器的系统创建、设计和开发包括多处理器系统。多处理器系统已在与片上网络(noc)通信和交互的片上系统(soc)中实现。soc一般包括主设备(发起方)知识产权(ip)和从设备(目标)ip的实例。在某些情况下,一个主设备向多个从设备发送事务或请求。事务使用行业标准协议(诸如arm、amba、axi、ahb或apb)或ocp-ip发送。这些协议具有严格的请求/响应语义,并且通常noc将其视为单播;连接到noc的主设备使用地址以选择从设备,向从设备发送请求。noc对地址进行解码,并将请求从主设备传送到从设备。从设备处理事务并发送响应,该响应由noc传送回主设备。
3.当主设备需要向多个从设备发送相同的事务和/或请求时,所利用的现代且已知的应用使主设备按顺序发送所有请求。主设备将事务发送到第一从设备,然后发送到第二从设备,然后发送到第三从设备,依此类推。例如,如果主设备想要将相同的数据写入16个不同的从设备,则主设备按顺序发送16个相同的写事务,其中一个写事务发送到每个从设备。因此,总操作所花费的时间,即写入一个事务所花费的时间乘以16,是写入单个事务的量的16倍。这限制了向多个从设备发送相同请求的速率。换言之,该速率受主设备向所有目的地(即,各个从设备)发送顺序请求的速率的限制。因此,需要一种节省时间并且潜在地可以节省线路和处理等的系统和使用方法。
4.此外,除了在上述情况下发生的此数目的事务之外,广播方法或将事务从主设备发送到从设备的方法也需要交换机。在网络或noc中发送主/从事务时,交换机用作网守,用于确定哪些事务通过哪些端口发送。通过这种方式,就像通常使用的那样,入口端口和出口端口连接到交换机,使得进入交换机的分组在离开交换机之前必须进行解码、路由和编码。通过这种方式,在现代且已知的方式中,应用利用主设备,并且被发送到从设备的所有事务必须个体地写入,通过交换机个体地进行事务处理。基于写入处理和交换机可用性及处理,这需要大量的处理,并且限制了主设备可以向所有目的地发送顺序请求的能力和速率。因此,本领域需要一种节省时间、事务处理能力并且提高事务处理效率等的系统和使用方法。


技术实现要素:

5.本发明总体涉及在片上网络(noc)中广播事务。更具体地但非限地,本发明涉及一种用于广播事务的广播交换机。更具体地但非限制地,本发明涉及广播交换机系统、广播管理交换系统以及noc中的使用方法。
6.本发明提供了用于在noc中广播事务的新系统和方法。更具体地,本发明提供了一种广播交换机技术。换言之,本发明为本领域提供了一种针对noc的新构建块。
7.在所示布置中以及在本发明中,呈现了一种广播交换机,其用作还执行交换机的
路由功能的广播适配器。在本发明中,这些路由功能与事务广播处理同时执行,从而导致广播事务和/或发送事务的更有效的手段,特别是关于事务中存在的主/从关系。
8.换言之,本发明为本领域提供了一种还具有交换功能的广播适配器。换言之,所提供的机制可以执行事务广播,同时也执行交换功能。本文公开的广播交换机将广播适配器和交换机的功能组合成一个单元,其同时执行事务广播和交换。这消除了现代流程中发生的许多事务,特别是那些与跨越适配器和交换机的物理边界相关的事务。
9.换言之,本文呈现的系统和方法简化了片上网络,因为更少的链接、更少的例示和更少的构建块布线以及其他优点。在本文所示的布置中,作为一个示例,广播交换机减少了具有交换机的广播适配器中所需的链路数目。此外,广播交换机实现了路由表查找和端口表查找,因此广播交换机可以经由同一出口端口将事务广播到多个目的地。由于此原因以及其他原因,这种新的构建块及其相应的功能极大地提高了出口端口的容量,同时整个系统的组装也需要更少的出口端口。
10.根据本发明的方面,实施本发明的系统通常通过用硬件描述语言描述它们的功能来设计。因此,本发明也实施在这种硬件描述和将系统描述为这种硬件描述的方法中,但本发明的范围不限于此。
附图说明
11.为了更全面地理解本发明,请参考附图或图示。参照附图或图示(fig.),根据以下描述中的各方面和实施例来描述本发明,其中相同的数字表示相同或相似的元件。理解这些附图不被认为是对本发明范围的限制,通过使用附图更详细地描述了本发明的目前描述的方面和目前理解的最佳模式。
12.图1示出了根据本发明的各方面和实施例的使用广播交换机将请求从主设备广播到多个从设备的流程过程。
13.图2示出了根据本发明的各方面和实施例的使用广播交换机将请求从主设备广播到多个从设备的流程过程。
14.图3示出了根据本发明的各方面和实施例的使用广播交换机将请求从主设备广播到多个从设备的流程过程。
15.图4示出了根据本发明的各方面和实施例的具有主设备和多个从设备的片上网络。
16.图5示出了根据本发明的各方面和实施例的具有主设备和多个从设备的noc。
17.图6示出了根据本发明的各方面和实施例的具有主设备和多个从设备的noc,其还示出了多个写入器的集成。
18.图7示出了根据本发明的各方面和实施例的广播交换机的实施例,其示出了入口和至少一个出口。
19.图8示出了根据本发明的各方面和实施例的多个广播交换机的实施例,其被布置为使得将多个广播交换机串在一起可以增强功能。
20.图9示出了多个广播交换机的实施例,其被布置为使得将多个广播交换机串在一起可以增强如本发明所示的实施例的功能。
21.图10示出了根据本发明的各方面和实施例的广播交换机的实施例,其示出了入口
和至少一个出口。
22.图11示出了根据本发明的各方面和实施例的广播交换机的实施例,其示出了入口和至少一个出口。
23.图12示出了根据本发明的各方面和实施例的系统的实施例,其示出了具有集成转换功能的广播交换机。
24.图13示出了根据本发明的各方面和实施例的系统的实施例,其包括具有集成到广播交换机中的至少一个缓冲器的广播交换机。
25.图14示出了根据本发明的各方面和实施例的系统以及用于各种广播交换机地址和目标地址的广播交换机信道范围和特定信道的实施例。
具体实施方式
26.在下面的具体实施方式中,参考形成其一部分的附图,并且其中通过图示的方式示出了可以实施本发明的具体实施例。对这些实施例进行了足够详细的描述,以使本领域技术人员能够实施本发明,并且应当理解,可以利用其他实施例,并且可以在不背离(多个)本发明的精神和范围的情况下做出机械的、程序的和其他的改变。因此,下面的具体实施方式不是在限制意义上进行的,并且(多个)本发明的范围仅由所附权利要求以及这些权利要求享有的等同形式的全部范围来定义。
27.如本文所使用的,术语诸如垂直、水平、顶、底、前、后、端、侧等是根据所呈现的视图、部分和图示来引用的。然而,应当理解,这些术语仅用于描述目的,并不意图用作限制。因此,在不脱离本发明范围的情况下,对象或对象组合的取向可以改变。
28.贯穿本说明书,提及“一个实施例”、“实施例”、“一个示例”或“示例”意味着结合该实施例或示例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,在贯穿本说明书的各个地方出现的短语“在一个实施例中”、“在实施例中”、“一个示例”或“示例”不一定都指代相同的实施例或示例。此外,在一个或多个实施例或示例中,特定特征、结构、数据库或特性可以以任何适合的组合和/或子组合的方式进行组合。此外,应当理解,本文提供的图示是为了向本领域普通技术人员解释的目的,并且附图不一定是按比例绘制的。
29.根据本发明的实施例可以实施为装置、方法或计算机程序产品。因此,本发明可以采取完全由硬件组成的实施例、完全由软件组成的实施例(包括固件、驻留软件、微代码等),或者组合本文统称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。此外,本发明的实施例可以采取实施在任何有形介质中的计算机程序产品的形式。
30.可以利用一个或多个计算机可用或计算机可读介质的任意组合。例如,计算机可读介质可以包括以下一个或多个:便携式计算机磁盘、硬盘、随机存取存储器(ram)设备、只读存储器(rom)设备、可擦除可编程只读存储器(eprom或闪存)设备、便携式压缩盘只读存储器(cdrom)、光存储设备和磁存储设备。用于执行本发明的操作的计算机程序代码可以用一种或多种编程语言的任意组合来编写。通过这种方式的代码可以从源代码编译成适合于将在其上执行代码的设备或计算机的计算机可读汇编语言或机器代码。
31.实施例还可以在云计算环境中实现。在本说明书和所附权利要求书中,“云计算”可以被定义为用于实现对可配置计算资源(例如,网络、服务器、存储、应用和服务)的共享
池的普适的、方便的、按需的网络访问的模型,这些计算资源可以经由虚拟化被快速提供,并且以最少的管理工作或服务提供商交互来释放,然后被相应地缩放。云模型可以由各种特性(例如,按需自助服务、广泛的网络接入、资源池化、快速弹性和测量的服务)、服务模型(例如,软件即服务(saas)、平台即服务(paas)和基础设施即服务(iaas))和部署模型(例如,私有云、社区云、公有云和混合云)组成。
32.如本文所使用的,“源”、“主设备”和“发起方”指的是类似的知识产权(ip)块、模块或单元;这些术语在本发明的范围和实施例内可互换使用。如本文所使用的,“宿”、“从设备”和“目标”指的是类似的ip模块或单元,并且这些术语在本发明的范围和实施例内可互换使用。如本文所使用的,事务可以是请求事务或响应事务。请求事务的示例包括写请求和读请求。
33.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的体系结构、功能和操作。就此而言,流程图或框图中的每个框可以表示代码的模块、段或部分,其包括用于实现(多个)指定逻辑功能的一个或多个可执行指令。还应注意的是,框图和/或流程图的每个框以及框图和/或流程图中的框的组合可以由执行指定功能或动作的基于专用硬件的系统、或专用硬件和计算机指令的组合来实现。这些计算机程序指令还可以存储在计算机可读介质中,该计算机可读介质可以指导计算机或其他可编程数据处理装置以特定方式运行,使得存储在计算机可读介质中的指令产生包括实现流程图和/或框图的一个或多个框中指定的功能/动作的指令部件的制品。
34.附图的所有图示都是为了描述本发明的选定版本,而不是意图限制本发明的范围。
35.以下描述参照图1至图14。本发明涉及在片上网络(noc)中广播事务。更具体地但非限制地,本发明涉及一种用于广播事务的广播交换机。更具体地但非限制地,本发明涉及noc中的广播交换机系统、广播管理交换系统和使用方法。
36.根据本发明的一些方面和实施例,公开了一种用于noc的组件,该组件是具有广播能力的交换机或广播交换机20。广播交换机20实现了一种新的方法来将事务从主设备发送到多个从设备和/或从多个主设备发送到多个从设备。根据本文描述的本发明的各种实施例和方面,可以使用特定的地址范围。noc广播在特定地址范围内的一个或多个特定地址处接收的事务。所广播的事务可以同时到达多个目的地和/或从设备,而不是将所广播的事务发送到单个目的地,同时还提供了交换功能等。
37.许多优点之一是通过将广播适配器功能和交换功能内置于单个、更高效的事务处理器中所获得的操作效率。在本文公开的许多优点中,另一个优点是广播网络的整体操作和事务处理的效率,其包括将相同的事务发送到多个目的地。在本文公开的许多优点中,还有一个优点包括在广播事务之前对事务执行功能的能力。在本文公开的许多优点中,另一个优点是在广播事务之前对事务执行交换功能的能力的效率。
38.根据本发明的各个方面和实施例,该系统提供了可用于noc的新组件,特别是广播事务功能中的新构建块。根据本发明的各个方面和实施例,本文公开的广播交换机是广播适配器,并且在执行事务广播时执行交换机的路由功能。根据本发明的各个方面和实施例,广播交换机将广播适配器和交换机的功能组合成一个构建块。广播交换机同时执行事务广播功能和交换功能。通过这种方式,这是为noc提供的同时执行这些功能的第一个构建块组
件。
39.此外,本文公开的广播交换机消除了当跨越适配器和交换机的物理边界时引起的多个事务开销。这些物理边界可以包括布线、处理和增加的noc设计规模。通过这种方式,本发明消除了部分布线,减少了处理延迟,并且减小了noc设计的尺寸。这些特征以及其他特征是通过使用和实现本文公开的新构建块来实现的。
40.根据本发明的各个方面和实施例,消除由于使用广播交换机而发生的许多事务开销简化了noc,因为需要更少的链路和更少的构建块的例示和布线。本文公开的广播交换机将使用带有交换机的广播适配器进行设计时所需的链路数目减少多达一半或至少一半。根据本发明的一些方面和实施例,广播交换机可以基于传入事务的路由字段从查找表中检索或查找路由信息和端口信息(用于预期目标或从设备)。根据本发明的一些方面和实施例,广播交换机包括使用传入事务的路由字段来确定事务的路由信息的路由计算模块。因此,广播交换机实现了路由表查找。广播交换机可以通过利用更新后的路由信息修改传入事务的路由字段,经由从路由表中选择的各种路由将事务广播到多个目的地。根据本发明的一些方面和实施例,由广播交换机的修改模块更新、修改或改变传入事务。
41.此外,由于广播交换机实现了出口表查找,因此广播交换机可以经由同一出口端口将事务广播到多个目的地。当出口端口的数目小于目的地的数目时,以及在许多其他情况下,该功能以及其他功能和优点可以是有用的,并且提供增强的效率,如本文公开的和预期使用的。
42.根据本发明的一些方面和实施例,广播交换机是使用一个出口端口,在请求侧向多个目标发送事务的多播交换机。如本文所使用的,术语“事务”包括以下各项并可与以下各项互换使用:“传入事务”、“到达事务”、“离开事务”、“传出事务”、“数据”、“数据分组”和“分组”。
43.根据本发明的方面和实施例,广播交换机还包括足以容纳整个分组的缓冲器,因为广播交换机串行地发送出(广播)事务或分组,特别是当广播交换机具有比其正广播到的目的地的数目更少的出口端口时。例如,当广播交换机使用一个出口端口向两个或更多个目的地广播时。此方法的优点是允许源(发起方)向广播交换机发送一个请求,而不必各自创建单独的请求。
44.虽然可以结合实施例的示例来解释本发明,但是应理解,在不脱离本发明的精神和范围的情况下,可以做出许多其他可能的修改和变化。
45.根据本发明的各个方面和实施例,示出了广播管理系统10(以下称为“广播管理系统”、“具有广播能力的交换系统”或“广播系统”或简称为“系统”)。广播管理系统10由任何适合的大小、形状和设计形成,因此本发明的范围不限于此。在所示的布置中,作为一个示例,系统10是根据本发明的实施例所示的noc的一部分,并且还可以包括远程服务器、数据库、应用服务器、应用数据库、应用编程接口、用户数据库、事件数据库、传输规则数据库、规则数据库、数据传输组件和/或特征、移动应用和/或计算机、蜂窝传输、数据分组等,它们实现本文公开的功能。
46.先前的noc技术充其量需要多个广播适配器和多个交换机。在这些布置中,从端到端(在此情况下为主设备到从设备)的连接必须通过交换机。交换机计算路由并修改分组中的路由字段,并且知道分组要经过哪个端口。因此,广播适配器的入口端口和出口端口必须
连接到交换机。因此,从端到端(或从主设备到从设备/目标)经过系统的分组必须在系统中的每个交换机级进行解码、路由和编码。因此,在分组到达目的地之前,最少必须进行两次解码、路由和编码。
47.根据各个方面和实施例,本发明以以下一般方式提供了这些功能、系统和解决方案。参照本文公开的图4,广播交换机(0)20使用网络接口单元(niu)14将其他广播交换机(1和2)20连接到主设备12。在广播交换机(1)20和目标22之间还存在niu 14。广播交换机可以执行适配器和各种交换机的所有功能。此外,目标22通过其他网络元件(为清楚起见未示出)与广播交换机20(如图所示)以及其他源设备通信(可以从其接收事务)。因此,存在将目标连接到用于接收多播事务的广播交换机的路由,并且存在连接到用于接收正常事务的目标的路由(未示出)。
48.主设备12将事务发送到广播交换机,诸如广播交换机20。事务包括告知广播交换机该事务是多播事务还是普通事务(即,仅针对一个目标或目的地)的信息。根据本发明的一些方面和实施例,广播交换机基于传入分组(事务)中将传入分组标识为正常事务的信息而充当普通交换机。根据本发明的一些实施例,广播交换机直接连接到任何ip块。通过这种方式,广播交换机可以计算路由并修改分组和/或数据分组中的路由字段。此外,广播交换机能够确定到目的地的路由。因此,广播交换机包括基于事务(传入请求)中包含的信息来屏蔽广播交换机能够向其广播的任何一个或多个目标的能力。
49.根据本发明的一些方面和实施例,具有多于一个出口端口的广播交换机可以从所有出口端口中选择将接收分组和/或数据分组的广播的一个或多个出口端口中的任何一个。根据本发明的一些方面和实施例,具有一个出口端口的广播交换机可以从它可以使用出口端口向其广播的所有可能的目标中,选择将接收分组和/或数据分组的广播的一个或多个目的地(目标)中的任何一个。屏蔽基于在广播交换机处接收到的请求(广播分组)所提供的信息。该请求包括有关屏蔽的信息。广播交换机使用该信息从与该广播交换机的广播树相关联的目标的固定集合中屏蔽(防止向其广播)特定(多个)目标。
50.在所示布置中,系统10以以下方式提供这些优点和更多优点。当从主设备12广播分组和/或数据分组时,广播交换机使用请求分组中的目标标识来查找目标路径路由表,以从广播交换机检索到该目标的路由。通过这种方式,针对该分组的路由被放入去往该目标的请求分组中(也称为并行查找功能,它可以独立于传输顺序运行)。
51.在查找目标路径路由表之后,或者同时和并行地,广播交换机20使用目标标识来确定和/或查找目标路径端口表。这也在请求分组中进行,以检索广播交换机20的出口端口号。通过这种方式,去往目标的请求分组被发送到目标路径端口表的目标标识中所指示的出口端口。一个优点是,此特征允许经由同一出口端口发送去往多个目标的请求分组。
52.作为本文公开的另一种布置,可以设置目标路径路由表和目标路径端口表,使得广播交换机可以经由相同的出口端口将分组和/或事务广播到多个目的地。这种新颖的特征和新颖的能力是有优势的,原因有很多。该新颖的特征具有优势的一个原因是,在某些情况下,广播交换机的出口端口数目少于目的地数目。通过这种方式,由于广播交换机的组织特性,出口端口的利用率和效率大大提高。
53.在查找目标路径路由表和目标路径端口表之后,或者同时和并行地,广播交换机使用响应分组中的源标识,来确定和/或查找源路径路由表。广播交换机使用源路径路由表
和源标识,来确定从广播交换机到源的路由。通过这种方式,路由被放入去往源的响应分组中。
54.一旦广播交换机确定了目标路径路由表、目标路径端口表和源路径路由表,广播交换机就针对请求路径和响应路径执行交换机的路由功能。
55.在所示布置中,作为一个示例,系统10以新颖的方式执行本文的方法中描述的这些功能,以及各种组件、功能和特征以执行这些功能。这些组件中的一些(如本文进一步描述的)可以包括主设备12、niu 14、队列、事务、写入器18、广播交换机20、从设备22(或“目标”)、入口端口26、出口端口28、具有广播能力的交换机(“bcs”)地址范围30、bcs地址32、从设备地址范围34(或“目标地址范围”)、从设备地址36(或“目标地址”)、缓冲器40、目标路径路由表、目标路径端口表、源路径路由表和其他各种特征、组件和功能。此外,根据本发明的各种实施例,系统10包括各种管线元件,其中一些在本文的布置中被示出,其中一些未在本文的布置中被示出。
56.根据本发明的各个方面和实施例,作为一个示例,系统10包括主设备12。主设备12(也称为“发起方”、“源”或“发送方”)由任何适合的大小、形状和设计形成,并且被配置为创建和/或发送分组和/或数据分组和/或发送数据传输。在所示布置中,作为一个示例,发起方可以是计算机、cpu或服务器等,其指的是因特网协议模块或单元。如本文所公开的,主设备12的主要目的是创建和/或发送数据分组,并潜在地提供与正在广播的传输相关的其他信息。
57.在所示布置中,作为一个示例,主设备12与niu 14通信(本文将进一步讨论)。随后,niu 14连接到多个从设备(或“目标”)22(本文将进一步讨论)。通过这种方式,主设备12能够向多个从设备22发送事务。
58.尽管本文讨论了单个主设备,但作为一个示例,显然可以想到包括多个主设备和多个从设备的许多其他实施例,即使为了清楚起见;为了便于解释,在该示例中仅示出了一个主设备和若干从设备。
59.根据本发明的各个方面和实施例,一个主设备可以向多个从设备22发送事务或请求。此外,主设备12可以使用用于选择从设备22的地址来向从设备22发送请求。此外,主设备12可以将相同的数据写入多个不同的从设备22。
60.根据本发明的各个方面和实施例,在示出为示例的布置中,系统10包括多个从设备22。从设备22(或“目标”)由任何适合的大小、形状和设计形成,并且被配置为目标地址和/或目标因特网协议,其被设置为经由本文讨论的管线从主设备接收事务(本文将进一步讨论)。
61.根据本发明的各个方面和实施例,多个从设备22,每一个或单独,与niu 14通信(本文将进一步讨论)。随后,niu 14连接到多个主设备12。通过这种方式,目标22能够从一个主设备或多个主设备12接收事务。
62.虽然本文有时讨论单个目标22,但作为一个示例,显然可以想到许多其他实施例,诸如两个目标、三个目标、四个目标、任何其他数目的目标和多个主设备,即使为了清楚起见;为了便于解释,在该示例中可能仅示出一个主设备和一个目标。换言之,一个主设备可以向多个从设备22发送事务或请求。此外,主设备12可以使用用于选择从设备22的地址来向从设备22发送请求。此外,主设备12可以将相同的数据写入多个不同的从设备22。在所示
布置中,作为一个示例,系统10包括多个事务。事务由任何适合的大小、形状和设计形成,并且是用于描述正由主设备12广播的数据和/或正由主设备12请求的数据的术语。
63.在所示布置中,作为一个示例,一个或多个主设备12可以向或从多个从设备22发送事务和/或请求事务。此外,主设备12可以使用用于选择从设备22的地址来向从设备22发送事务请求。此外,主设备12可以将相同的数据写入多个不同的从设备22。
64.在所示布置中,作为一个示例,到达事务和离开事务可以来自具有不同优先级的各种地址、源。此外,在所示布置中,到达事务和离开事务可以来自axi、ace lite、chi,并且可以携带服务质量字段和可用于确定要求和/或目标的各种其他标识符。
65.根据本发明的各个方面和实施例,系统10包括网络接口单元(niu)14(或“网络接口”)。niu 14由任何适合的大小、形状和设计形成,并且被配置为主设备12(或简单地是计算机)和专用或公共网络之间的互联点。根据本发明的各个方面和实施例,网络接口可以是网络接口卡,并且不需要具有物理形式。通过这种方式,所实现的软件在此也被认为是niu 14。
66.此外,在所示布置中,系统10还可以包括位于从设备和/或目标22侧的网络接口单元14。通过这种方式,多个网络接口单元14可以连接到从设备22,并且用于将noc内部使用的协议转换成由目标22使用的协议。通过这种方式,网络接口单元14使主设备12能够通过系统10与多个从设备22通信。
67.换言之,网络接口单元14将由主设备12形成的传入事务转换成noc内部使用的协议以用于传送。在所示布置中,作为一个示例,根据本发明的各种实施例,niu 14与主设备12、与广播交换机20以及潜在的其他各种管线元件通信,其中一些实施例被示出,其中一些实施例未示出。
68.根据本发明的各个方面和实施例,系统10包括广播交换机20。具有广播能力的交换机20(也称为“广播交换机”)由任何适合的大小、形状和设计形成,并且被配置为接收事务(和/或表示请求和/或请求事务的分组)。广播交换机20被配置为复制分组,将分组副本发送到每个请求出口端口(本文将进一步讨论)。广播交换机20可以处理表示到达入口端口的事务的请求数据分组(本文将进一步讨论)。广播交换机根据需要并根据请求类型复制分组,并且副本作为分组通过各种出口端口来被发送。
69.根据本发明的各个方面和实施例,广播交换机20可以通过复制、然后通过到从设备22的网络接口接收通信、并随后通过类似于第二或第三路径的第二或第三网络接口发送附加通信,来处理到达入口端口的分组。
70.通过这种方式,广播交换机20处理单个构建块内的广播适配器功能以及广播交换机功能。在此想到这些方法和其他方法以供使用。上面讨论的示例是可以由广播交换机20处理的许多过程和/或事务之一。
71.对于另一示例,广播交换机20可以直接连接到其他网络接口、其他广播适配器和/或其他交换机,因为广播交换机计算路由并修改分组中的路由字段,并且可以确定哪个端口是相对事务22要去往的端口。
72.换言之,广播交换机20可以连接到主设备12和从设备22的网络接口。该连接通过广播交换机20。允许广播交换机20计算路由并修改事务中的路由字段,因此知道该事务要去往的端口。通过这种方式,广播交换机的入口端口和出口端口可以在广播交换机内进行
解码、路由和编码。
73.参照图1、图2和图3,根据本发明的各个方面和实施例,示出了其中广播交换机20执行广播适配器和广播交换机两者的功能的过程。广播交换机20使用请求分组中的目标标识来查找目标路径路由表,以检索到广播交换机的目标前端的路由(下行路径)。此路由被放入去往目标的请求分组中。
74.广播交换机20使用请求分组中的目标标识来查找目标路径端口表,以检索广播交换机的出口端口号。从目标传出的请求分组按照指示发送到出口端口。此外,此特征允许请求分组去往多个目标,并经由相同的出口端口发送。
75.根据本发明的各个方面和实施例,在被示为一个示例的布置中,设置了目标路径路由表和目标路径端口表,使得广播交换机20可以经由相同的出口端口向多个目的地(或目标)广播事务。在所示布置中,作为一个示例,当广播交换机20的出口端口数目小于目标22的数目时,该功能是有用的。
76.随后,广播交换机20使用响应分组中的源标识来查找源路径路由表,以从广播交换机20检索去往源的路由。通过这种方式,该路由被放置为去往源的响应分组的一部分。利用目标路径路由表、目标路径端口表和源路径路由表,广播交换机20执行广播适配器功能,并且同时执行用于请求路径和响应路径的多个交换机的路由功能。
77.根据本发明的各个方面和实施例,作为一个示例,广播交换机20包括入口端口26和出口端口28。入口端口26由任何适合的大小、形状和设计形成,并且被配置为事务请求侧上的管线。出口端口28由任何适合的大小、形状和设计形成,并且一般被配置为广播交换机20将通过其发送事务和/或复制事务的一个或多个端口。
78.通过这种方式,并且如本文所讨论的,广播交换机20复制在入口端口上接收的事务,并使用出口端口在网络中发送所复制的事务。参照附图,作为示例,图12的广播交换机20被示为配置有一个入口端口26和三个请求出口端口28。类似地,根据本发明的各个方面和实施例,附图还表示(未示出)三个响应入口端口和一个响应出口端口,以处理来自连接到请求出口端口的所有目标的响应。在所示布置中,作为一个示例,示出了各种实施例,可以想到各种数目的入口端口和出口端口以供使用。此外,广播交换机20可以使用组合功能来执行响应聚合、和/或将对应于一个副本和/或多个副本请求分组的所有响应组合成单个响应分组。可以通过各种端口发送和/或请求所组合的响应。
79.根据本发明的各个方面和实施例,系统10,更具体地为广播交换机20,可以包括缓冲器40。缓冲器40由任何适合的大小、形状和设计形成,并且被配置为允许每个出口端口的独立进程,而不必实现每个出口端口的先进先出。通过这种方式,广播交换机20能够实现复杂的广播网络,同时避免死锁、时延或丢弃。
80.根据本发明的各个方面和实施例,系统10还包括管线,其也可以被称为路径。路径由任何适合的大小、形状和设计形成,并且被配置为动态适配的管线,其目的是提供芯片上的传输和组网。一个或多个路径也可以简单地称为管线,在该布置中,数据和/或数据分组通过该管线传送并与本文的系统10交互。此外,系统10可以包括附加的交换机和/或广播适配器等。
81.作为一个示例,本发明呈现了一种系统和方法,其目的是针对单个目标和单个广播,以及针对多播上的单个目标以及多播上的多目标提供传输广播,并且另外通过利用多
个广播交换机的树构建来提供传输广播。
82.根据图1至图14所示的本发明的各个方面和实施例,第一广播交换机连接其他广播交换机。通过这种方式,广播交换机可以执行适配器和各种交换机先前需要的所有功能。通过这种方式,广播交换机可以直接连接并计算路由,并修改分组和/或数据分组中的路由字段。
83.通过这种方式,广播交换机知道分组和/或数据分组要去往哪个端口。
84.在所示布置中,系统10以如下方式提供这些优点和更多优点。当从主设备广播分组和/或数据分组时,广播交换机使用请求分组中的目标标识来查找目标路径路由表,以检索从广播交换机到目标的路由。通过这种方式,针对分组的路由被放入去往目标的请求分组中(也称为并行查找功能,它可以独立于传输顺序运行)。
85.在查找目标路径路由表之后,或者同时和并行地,广播交换机使用目标标识来确定和/或查找目标路径端口表。这也在请求分组中进行,以检索广播交换机的出口端口号。通过这种方式,将去往目标的请求分组发送到如目标路径端口表的目标标识中所指示的出口端口。作为一个优势,此功能允许经由同一出口端口发送去往多个目标的请求分组。
86.作为本文公开的另一种布置,可以设置目标路径路由表和目标路径端口表,使得广播交换机可以经由相同的出口端口将分组和/或事务广播到多个目的地。这种新颖的特证和新颖的能力是有优势的,原因有很多。该新颖的特征具有优势的一个原因是,在某些情况下,广播交换机的出口数目少于目的地数目。通过这种方式,由于广播交换机的组织特性,出口端口的利用率和效率大大提高。
87.在查找目标路径路由表和目标路径端口表之后,或者同时和并行地,广播交换机使用响应分组中的源标识来确定和/或查找源路径路由表。广播交换机使用源路径路由表和源标识来确定从广播交换机到源的路由。通过这种方式,路由被放入去往源的响应分组中。
88.一旦广播交换机确定了目标路径路由表、目标路径端口表和源路径路由表,广播交换机就针对请求路径和响应路径执行交换机的路由功能。
89.在此可以想到这些和其他使用方法和过程以供使用。例如,并行处理可以提供巨大的加速。这对于诸如深度神经网络计算的应用非常重要,这些应用可能需要将相同数据集同时分发到多个节点。根据本发明的一些方面,神经网络解决方案的设计者可以利用广播交换机20来实现并行或同时完成事务。例如,本发明的各个方面和实施例可以在人工智能计算和深度网络加速器领域实现。当以硬件和软件实现时,这种系统可以充分利用使用包括广播交换机20的noc进行广播的并行性,并且运行速度快几个数量级。
90.本文已经描述了某些示例,并且应注意,来自不同示例的不同组件的不同组合是可能的。呈现了显著特征以更好地解释示例;然而,应清楚,可以添加、修改和/或省略某些特征,无需修改所描述的这些示例的功能方面。
91.各种示例是使用机器中的任一个或其组合的行为的方法。无论最多组成步骤在世界上哪个地方发生,方法示例都是完整的。例如,并且根据本发明的各个方面和实施例,ip元件或单元包括:处理器(例如,cpu或gpu)、随机存取存储器(ram-例如,片外动态ram或dram)、用于有线或无线连接的网络接口,诸如以太网、wifi、3g、4g长期演进(lte)、5g和其他无线接口标准无线电设备。ip还可以包括根据不同外围设备的需求的各种i/o接口设备,
诸如触摸屏传感器、地理位置接收器、麦克风、扬声器、蓝牙外围设备和usb设备,诸如键盘和鼠标等。通过执行存储在ram设备中的指令,处理器执行本文描述的方法步骤。
92.一些示例是被布置为存储用于本文描述的方法的这种指令的一个或多个非瞬态计算机可读介质。无论什么机器保存了包括任何必要代码的非瞬态计算机可读介质都可以实现示例。一些示例可以被实现为:诸如半导体芯片的物理设备;这种设备的逻辑或功能行为的硬件描述语言表示;以及被布置为存储这种硬件描述语言表示的一个或多个非瞬态计算机可读介质。本文记载原理、方面和实施例的描述包括其结构和功能上的等同形式。本文描述为耦合的元件具有可通过直接连接或利用一个或多个其他介入元件的间接连接实现的有效关系。
93.本领域技术人员将理解,在不脱离本发明的精神和范围(特别是各种可编程特征)的情况下,可以对该设备做出其他各种修改。所有这种修改和改变都落入权利要求的范围内,并且意在被其涵盖。此外,本领域技术人员将认识到许多修改和变化。修改和变化包括所公开的特征的任何相关组合。本文记载原理、方面和实施例的描述包括其结构和功能上的等同形式。本文描述为“耦合”或“在通信上耦合”的元件具有可通过直接连接或使用一个或多个其他介入元件的间接连接实现的有效关系。本文被描述为“通信”或与另一设备、模块或元件“通信”的实施例包括任何形式的通信或链路,并且包括有效关系。例如,可以使用有线连接、无线协议、近场协议或射频标识(rfid)来建立通信链路。
94.因此,本发明的范围并不意图限于本文所示出和所描述的示例性实施例。相反,本发明的范围和精神体现在权利要求中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1