首页> 中国专利> 交换机芯片的可缩放低延迟网状互连

交换机芯片的可缩放低延迟网状互连

摘要

本申请案涉及一种交换机芯片的可缩放低延迟网状互连。一种实施可缩放低延迟网的装置可包含存储器管理单元、出口处理器和包含至少第一队列和第二队列的出口单元电路。所述存储器管理单元可经配置以缓冲第一单元以用于传输。所述出口单元电路可经配置以使来自所述存储器管理单元的所述第一单元在所述第一队列中排队,使来自另一装置的芯片外存储器管理单元的第二单元在所述第二队列中排队,且调度来自所述第一队列的所述第一单元和来自所述第二队列的第二单元以用于经由出口处理器传输。所述出口处理器可经配置以在至少一个第一端口上传输所述第一和第二单元。

著录项

  • 公开/公告号CN107046511A

    专利类型发明专利

  • 公开/公告日2017-08-15

    原文格式PDF

  • 申请/专利权人 安华高科技通用IP(新加坡)公司;

    申请/专利号CN201710070962.8

  • 发明设计人 S·阿努博吕;M·卡尔昆特;

    申请日2017-02-09

  • 分类号

  • 代理机构北京律盟知识产权代理有限责任公司;

  • 代理人林斯凯

  • 地址 新加坡新加坡市

  • 入库时间 2023-06-19 03:00:53

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-11-15

    授权

    授权

  • 2019-03-01

    实质审查的生效 IPC(主分类):H04L12/933 申请日:20170209

    实质审查的生效

  • 2018-11-09

    专利申请权的转移 IPC(主分类):H04L12/933 登记生效日:20181019 变更前: 变更后: 申请日:20170209

    专利申请权、专利权的转移

  • 2017-08-15

    公开

    公开

说明书

相关申请案的交叉参考

本申请案主张2016年2月9日申请的题为“交换机芯片的可缩放低延迟网状互连”的第62/293,287号美国临时专利申请案的优先权,将其完整结合在此作为参考用于所有目的。

技术领域

本发明描述大体上涉及一种可缩放低延迟网,其包含用于交换机装置的交换机芯片的可缩放低延迟网状互连。

背景技术

在企业交换机市场中,每个交换机芯片的带宽每十八个月翻倍。由于带宽的增加,功率密度也在增加,同时成本在减小。为了支持企业交换机市场,需要有效的冷却技术来支持芯片上单系统(SoC)实施方案的持续发展。但是,使用多个交换机芯片来缩放系统的有效方式可容许减少冷却和/或功率需求。

发明内容

在一实施例中,本申请案涉及一种装置,其包括:存储器管理单元,其经配置以缓冲第一单元以用于传输;出口单元电路,其包括至少第一队列和第二队列,所述出口单元电路经配置以:使来自所述存储器管理单元的所述第一单元在所述第一队列中排队;使来自另一装置的另一存储器管理单元的第二单元在所述第二队列中排队;及调度来自所述第一队列的所述第一单元和来自所述第二队列的第二单元以用于经由出口处理器传输;及所述出口处理器,其经配置以在至少一个第一端口上传输所述第一和第二单元。

在另一实施例中,本申请案涉及一种装置,其包括:入口处理器,其经配置以接收第一单元且提供所述第一单元到存储器管理单元;所述存储器管理单元,其经配置以缓冲所述第一单元以用于传输;出口处理器,其经配置以在至少一个第一端口上传输所述第一单元的至少一部分;传输电路,其以通信的方式耦合到另一装置的另一传输电路,所述传输电路经配置以:从所述另一装置的所述另一传输电路接收对所述第一单元中的至少一些第一单元的请求;经由所述存储器管理单元的读取端口检索来自所述存储器管理单元的所述第一单元中的所述至少一些第一单元;及将所述第一单元中的所述至少一些第一单元传输到所述另一装置的所述另一传输电路以用于经由所述另一装置的至少一个第二端口上的另一出口处理器传输,所述第一单元中的所述至少一些第一单元绕开所述装置的所述出口处理器。

在又一实施例中,本申请案涉及一种方法,其包括:从芯片上存储器管理单元检索第一单元,所述第一单元已经由芯片上入口处理器接收;从第一芯片外存储器管理单元接收第二单元且从第二芯片外存储器管理单元接收第三单元,所述第二单元已经由第一芯片外入口处理器接收且所述第三单元已经由第二芯片外入口处理器接收;在不缓冲所述芯片上存储器管理单元中的所述第二或第三单元的情况下调度所述第一、第二和第三单元以用于经由芯片上出口处理器传输;及经由所述芯片上出口处理器在至少一个端口上传输所述第一、第二和第三单元。

附图说明

本技术的某些特征在所附的权利要求书中阐述。但是,出于解释的目的,本技术的若干实施例在下列图中阐述。

图1图示说明实例网络环境,其中实施交换机芯片的可缩放低延迟网状互连的交换机装置可根据一或多个实施方案实施。

图2图示说明根据一或多个实施方案的实施两个交换机芯片的可缩放低延迟网状互连的实例交换机装置。

图3图示说明根据一或多个实施方案的实施三个交换机芯片的可缩放低延迟网状互连的实例交换机装置。

图4图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置的实例交换机芯片的实例传输先进先出(fifo)。

图5图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置的实例交换机芯片的实例出口单元fifo。

图6图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置的实例交换机芯片的传输fifo的实例过程的流程图。

图7图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置的实例交换机芯片的出口单元fifo的实例过程的流程图。

图8在概念上图示说明实例电子系统,可使用所述电子系统实施本技术的一或多个实施方案。

具体实施方式

下文阐述的具体实施方式意欲作为本技术的各种配置的描述且并不意欲表示其中可实践本技术的唯一配置。所附图式被并入本文中并构成具体实施方式的部分。具体实施方式包含用于提供对本技术的通透理解的特定细节。但是,本技术不限于本文阐述的特定细节且可使用一或多个实施方案来实践。在一或多个实例中,以框图的形式展示结构和组件以避免掩盖本技术的概念。

图1图示说明实例网络环境100,其中实施交换机芯片的可缩放低延迟网状互连的交换机装置110可根据一或多个实施方案实施。但是,并不使用所有描绘的组件,且一或多个实施方案可包含图中没有展示的额外组件。在不脱离本文阐述的权利要求书的精神或范围的情况下可进行组件的布置和类型的变化。可提供额外组件、不同组件或更少的组件。

实例网络环境100包含各种电子装置102、104、106,例如一或多个服务器、计算机、数据存储装置、网络组件、网络装置等。在一或多个实施方案中,网络环境100包含一组服务器、服务器储库、存储区域网络和/或经互连的计算机或网络装置的大型网络。在一或多个实施方案中,网络环境100包含一或多个其它装置,例如,一或多个移动装置、平板装置、机顶盒(STB)装置、存储装置、桌面计算机、路由器、交换机、桥接器或任何其它机器或装置。

一或多个网络装置(例如交换机装置110)可在网络环境100中实施以促进一或多个电子装置102、104、106之间的通信。网络环境100的电子装置102、104、106通过或使用交换机装置110彼此连接或以其它方式彼此通信。例如,电子装置102、104、106可各自通过网络传输线(例如,以太网传输线、同轴传输线、光学传输线、光纤通道或通常任何传输线)耦合到交换机装置110的一或多个物理端口。在一或多个实施方案中,电子装置102、104、106的一或多者经无线耦合到交换机装置110。交换机装置110和/或电子装置102、104、106的一或多者可为和/或可包含下文相对于图8讨论的电子系统的全部或部分。

交换机装置110可包含称为交换机芯片的若干集成电路或芯片。交换机芯片可经安装到共用衬底上和/或一或多个交换机芯片可经安装到单独衬底上,例如单独线路卡。各交换机芯片经耦合到交换机装置110的一或多个端口且处理通过端口传输和/或在端口上接收的数据单元。出于解释的目的,数据单元可在本文中主要被称为单元,例如包的部分;但是,数据单元可为包、协议数据单元(PDU)、数据块或通常为任何可描述的数据单元。为了促进处理数据单元,交换机芯片的各者可包含一或多个入口处理器、出口处理器和/或存储器管理单元(MMU)。

在交换机芯片的可缩放低延迟网状互连的主体系统中,交换机芯片使用低延迟网状网络在交换机装置110内互连。交换机芯片可经连接使得针对被路由通过交换机装置110的任何数据单元最多发生一个存储和转发操作。此外,各数据单元可跨整个多芯片架构最多仅通过一个入口处理器和一个出口处理器,从而导致各数据单元的一个转发延迟。在一或多个实施方案中,交换机芯片的板载网状连接可包含按高速运行的串行器/并行器(SerDes)接口。在一个实例中,各交换机芯片的包处理器能够个别地具有特定带宽。但是,当交换机芯片使用主体系统在交换机装置110中互连时,芯片的包处理器可按其满负荷的一部分运行,从而降低芯片的功率消耗且因此降低交换机装置的功率消耗。实施主体系统的实例交换机装置110在下文中相对于图2和3进一步讨论。

在一或多个实施方案中,实施主体系统的结构可载送具有各数据单元(例如,各包)的系统标头,以便促进实施主体系统。结构可按字节封包,例如,以太网包间间隙可用来封包系统标头。标头可具有可变大小,例如,用于基本单播流的第一大小和当例如仪器设备的特征开启时的第二大小。第一大小可匹配包间间隙,从而不需要任何超速。

图2图示说明根据一或多个实施方案的实施两个交换机芯片210A到B的可缩放低延迟网状互连的实例交换机装置110。但是,并不使用所有描绘的组件,且一或多个实施方案可包含图中没有展示的额外组件。在不脱离本文阐述的权利要求书的精神或范围的情况下可进行组件的布置和类型的变化。可提供额外组件、不同组件或更少的组件。此外,图示说明的组件的一或多者可合并/组合成单一组件和/或图示说明的组件的一或多者可分成多个单独组件。

交换机装置110包含通过链路211A到B互连的第一交换机芯片210A和第二交换机芯片210B。第一交换机芯片210A包含传输fifo 212A、存储器管理单元(MMU)214A、出口单元fifo 215A、入口处理器216A、端口宏217A和出口处理器218A。第二交换机芯片210B可包含传输fifo 212A、MMU 214B、出口单元fifo 215B、入口处理器216B、端口宏217B和出口处理器218B。

入口处理器216A到B可为例如入口包处理器,且出口处理器218A到B可为例如出口包处理器。端口宏217A到B可各自经耦合到一或多个端口的单独组。例如,图1的电子装置102可经连接到耦合到交换机芯片210A的端口宏217A的端口,且图1的电子装置104可经连接到耦合到交换机芯片210B的端口宏217B的端口。链路211A到B可各自为(例如)在衬底上的单独物理连接,其连接交换机芯片210A到B。链路211A到B可各自为双向或单向的。

各交换机芯片210A到B的MMU 214A到B可各自包含对应于耦合到各交换机芯片210A到B的各端口的虚拟输出队列。交换机芯片210A到B的各者的出口单元fifo 215A到B包含交换机装置110中的所有端口(例如,256个端口或任何数量的端口)的输出队列。交换机芯片210A到B利用传输fifo 212A到B来支持网状网络拓扑。传输fifo 212A到B各经由链路211A到B驱动网状网络连接的串行器到并行器接口。传输fifo 212A到B可各自通过看标头来复制单元、丢弃单元或穿过单元而实施直通式交换。传输fifo 212A到B也可称为传输电路。实例传输fifo 212A在下文中关于图4进一步讨论,且实例传输fifo 212A的实例过程在下文中关于图6进一步讨论。

交换机芯片210A到B还利用出口单元fifo 215A到B以自相应的MMU 214A到B和相应传输fifo 212A到B拉动/接收单元作为输入。出口单元fifo 215A到B可为基于单元的、基于包的或通常基于任何数据单元。出口单元fifo 215A到B也可称为出口单元电路。实例出口单元fifo 215A在下文中相对于图5进一步讨论,且实例出口单元fifo 215A的实例过程在下文中相对于图7进一步讨论。

在操作中,入口处理器216A经由端口宏217A从耦合的端口接收单元。入口处理器216A将用于传输的单元存储在MMU 214A中。在一或多个实施方案中,对于局部直通式交换,入口处理器216A直接将单元提供到出口单元fifo 215A或出口处理器218A。在一或多个实施方案中,局部直通式交换可取决于出口单元fifo 215A的队列的占用。出口单元fifo215A从芯片上MMU 214A接收单元且使专用fifo(或队列/缓冲区)中的单元排队以用于经由出口处理器218A和端口宏217A在耦合的端口上传输。交换机芯片210A的组件可称为芯片上(相对于出口单元fifo 215A),且交换机芯片210B的组件可称为芯片外(相对于出口单元fifo 215A)。

出口单元fifo 215A从交换机芯片210B的芯片外MMU 214B检索单元且使单独专用fifo中的单元排队以用于经由出口处理器218A和端口宏217A在耦合的端口上传输。例如,出口单元fifo 215A经由传输fifo 212A、链路211A和传输fifo 212B从芯片外MMU 214B请求单元。传输fifo 212A经由传输fifo 212B从芯片外MMU 214B检索单元(而不使单元穿过交换机芯片210B的出口处理器218B),且传输fifo 212A将单元直接提供到出口单元fifo215A(例如,绕过芯片上MMU 214A)。接着,出口单元fifo 215A使从芯片外MMU 214B检索的单元排队以用于经由出口处理器218A和端口宏217A的耦合端口上的传输,例如,分布在从芯片上MMU 214A检索的单元的传输内。因此,从芯片外MMU 214B检索的一些单元最初经由交换机芯片210B的入口处理器216B接收,但不经由交换机芯片210B的出口处理器218B传输,而是经由交换机芯片210A的出口处理器218A传输。交换机芯片210B的出口单元fifo215B可按类似方式操作。

交换机装置110可在交换机芯片210A到B的一者的MMU 214A到B的一者处执行多播复制,所述MMU 214A到B的一者是多播的来源。交换机装置110也可利用优先流控制来防止从按照队列组织的出口单元fifo 215A到B排出,且可利用信用控制来防止从来源MMU 214A到B排出。

交换机装置110还可利用对交换机芯片210A到B的各者内和/或跨交换机芯片210A到B的端口的等价多路径(ECMP)和/或链路聚集协议(LAG)通道的计量。例如,可利用缓慢更新来同步跨交换机芯片210A到B的两者的网状网络的计量状态。当交换机芯片210A到B的数量少时更新速率可为低的。

在一或多个实施方案中,交换机芯片210A到B、传输fifo 212A到B、MMU 214A到B、出口单元fifo 215A到B、入口处理器216A到B、端口宏217A到B、出口处理器218A到B和/或链路211A到B的一或多者可在软件中实施,及/或可在硬件中实施(例如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、控制器、状态机、门控逻辑、分离硬件组件或任何其它适当的装置)及/或可在软件和硬件两者的组合中实施。在本发明中进一步描述根据本技术的各种方面的这些模块的额外特征和功能。

图3图示说明根据一或多个实施方案的实施三个交换机芯片210A到B、310的可缩放低延迟网状互连的实例交换机装置110。但是,并不使用所有描绘的组件,且一或多个实施方案可包含图中没有展示的额外组件。在不脱离本文阐述的权利要求书的精神或范围的情况下可进行组件的布置和类型的变化。可提供额外组件、不同组件或更少的组件。此外,图示说明的组件的一或多者可合并/组合成单一组件和/或图示说明的组件的一或多者可分成多个单独组件。

交换机装置110包含图2的交换机芯片210A到B以及第三交换机芯片310。交换机芯片310包含传输fifo 312、MMU 314、出口单元fifo 315、入口处理器316、端口宏317和出口处理器318。交换机芯片210A到B、310经由链路311A到C互连。链路311A到C可各自是单向或双向的。因此,如在图3中展示,交换机芯片210A可经由链路311A直接和交换机芯片310通信,且交换机芯片210A可例如使用交换机芯片210B作为媒介经由链路311B到C间接和交换机芯片310通信。

为了支持多个不同的链路311A到C,传输fifo 212A到B、312可各自包含调度器,如在下文中关于图4进一步讨论。传输fifo 212A到B、312的调度器可跟踪链路占用且可彼此共享链路状态信息,例如,链路和路径利用统计量。个别传输fifo 212A到B、312的调度器可使用链路状态信息来确定传输给定单元的适当链路(例如)以确保链路311A到C在逐单元基础上保持平衡。因此,传输fifo 212A可选择链路311或链路311B到C传输给定单元到传输fifo 312,且传输fifo 212A可选择链路311B或链路311A、C传输给定单元到传输fifo212B。传输fifo 212B、312可以相似方式操作。传输fifo 212A到B、312可至少部分基于和给定单元相关的系统标头确定是否复制、穿过或删除给定单元。

主体系统也可用于配置平面实施方案中,其中交换机芯片210A到B、310呈现为存储器映射图的三个端点,例如,三个外围设备组件互连快速(PCIe或PCI-E)端点。在此情况中,交换机芯片210A到B、310可经耦合到PCIe竖板卡,所述竖板卡经耦合到存储器模块和主机CPU。选择或推选交换机芯片210A到B、310的一者来执行实施方案的包踢下路径。CPU队列可为负载平衡的且给定队列可与交换机芯片210A到B、310的一者相关。

在一或多个实施方案中,交换机芯片210A到B、310、传输fifo 212A到B、312、MMU214A到B、314、出口单元fifo 215A到B、315、入口处理器216A到B、316、端口宏217A到B、317、出口处理器218A到B、318和/或链路311A到C的一或多者可在软件中实施,及/或可在硬件中实施(例如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、控制器、状态机、门控逻辑、分离硬件组件或任何其它适当的装置)及/或可在软件和硬件两者的组合中实施。在本发明中进一步描述根据本技术的各种方面的这些模块的额外特征和功能。

图4图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置110的实例交换机芯片210A的实例传输fifo 212A。但是,并不使用所有描绘的组件,且一或多个实施方案可包含图中没有展示的额外组件。在不脱离本文阐述的权利要求书的精神或范围的情况下可进行组件的布置和类型的变化。可提供额外组件、不同组件或更少的组件。此外,图示说明的组件的一或多者可合并/组合成单一组件和/或图示说明的组件的一或多者可分成多个单独组件。

实例传输fifo 212A包含用于调度用于在链路311A到B上传输的调度器410和用于缓冲在链路311A到B上接收的单元的一或多个缓冲器420。一或多个缓冲器420可为用来延迟匹配(例如,考虑在不同链路311A到B上接收的单元之间的延迟)且使接收的单元保持顺序的小型缓冲器。

在操作中,传输fifo 212A可接收存储在MMU 214A中的单元的请求。可从(例如)代表出口单元fifo 215B的传输fifo 212B和/或代表出口单元fifo 315的传输fifo 312接收请求。传输fifo 212A调度用于在链路311A到B的一者上传输的请求单元,在调度时间检索自MMU 214A请求的单元,且经由链路311A到B的一个被选择的链路将单元传输到传输fifo212B和/或传输fifo 312。传输fifo 212A可从传输fifo 212B、312接收链路状态信息且可将链路状态信息提供到传输fifo 212B、312。调度器410至少部分基于所接收的链路状态信息确定传输各单元的合适链路。

传输fifo 212A也从代表出口单元fifo 215A的MMU 214B、314请求单元。请求的单元在链路311A到B的一或多者上接收且在一或多个缓冲器420中缓冲。一旦已经重新排序单元(如果必要),那么传输fifo 212A将单元直接传输到出口单元fifo 215A(绕过MMU214A),从而最小化处理单元的读/写操作的数量且因此降低与处理单元相关的延迟。

在一或多个实施方案中,交换机芯片210A、传输fifo 212A、调度器410、缓冲器420和/或链路311A到B的一或多者可在软件中实施,及/或可在硬件中实施(例如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、控制器、状态机、门控逻辑、分离硬件组件或任何其它适当的装置)及/或可在软件和硬件两者的组合中实施。在本发明中进一步描述根据本技术的各种方面的这些模块的额外特征和功能。

图5图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置110的实例交换机芯片210A的实例出口单元fifo 215A。但是,并不使用所有描绘的组件,且一或多个实施方案可包含图中没有展示的额外组件。在不脱离本文阐述的权利要求书的精神或范围的情况下可进行组件的布置和类型的变化。可提供额外组件、不同组件或更少的组件。此外,图示说明的组件的一或多者可合并/组合成单一组件和/或图示说明的组件的一或多者可分成多个单独组件。

出口单元fifo 215A包含一或多个队列505A到D和调度器510。例如,出口单元fifo215A可包含对于交换机装置110的各端口的各输出队列的单独专业队列,例如,跨交换机装置110的交换机芯片的各者。因此,如果交换机装置110包含三个交换机芯片212A到B、312,交换机芯片212A到B、312的各者经耦合到64个端口,且各端口与4个输出队列相关,那么出口单元fifo 215A包含64*4*3=768个队列。因此,当出口单元fifo 215A从芯片外MMU214B、314的一者接收单元时,出口单元fifo 215A使单元在与芯片外MMU 214B、314的一者相关的队列505A到D的一个适当队列中排队。

在操作中,出口单元fifo 215A经由传输fifo 212A从芯片上MMU 214A的读取端口且从芯片外MMU 214B、314检索单元。当与相应MMU 214A到B、314相关的队列505A到D中的空间允许时,出口单元fifo 215A从相应MMU 214A到B、314检索单元。调度器510使用(例如)对于各端口的基于来源的信用将输出队列调度到规定耦合端口。调度器510确保给予来自芯片上MMU 214A的单元和来自芯片外MMU 214B、314的单元对规定端口的公平存取。

在一或多个实施方案中,交换机芯片210A、出口单元fifo 215A、队列505A到D和/或调度器510的一或多者可在软件中实施,及/或可在硬件中实施(例如,专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、控制器、状态机、门控逻辑、分离硬件组件或任何其它适当的装置)及/或可在软件和硬件两者的组合中实施。在本发明中进一步描述根据本技术的各种方面的这些模块的额外特征和功能。

图6图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置110的实例交换机芯片210A的传输fifo 212A的实例过程600的流程图。出于解释目的,在本文中主要参考图2到3的交换机装置110的交换机芯片210A的传输fifo 212A描述实例过程600;但是,实例过程600不限于图2到3的交换机芯片210A的传输fifo 212A,例如,实例过程600可通过交换机芯片210B、310的传输fifo 212B、312的一或多者执行及/或实例过程600可通过传输fifo 212A的一或多个组件执行。进一步出于解释目的,实例过程600的框块在本文中描述为串行或线性发生。但是,实例过程600的多个框块可并行发生。另外,可按不同于所展示的顺序的顺序执行实例过程600的框块及/或可不执行实例过程600的一或多个框块。

传输fifo 212A从芯片外传输fifo 212B接收对存储在芯片上MMU 214A中的单元的请求(602)。传输fifo 212A确定将单元传输到芯片外传输fifo 212B的适当链路(604)。例如,如果存在多个链路311A到C来将单元传输到芯片外传输fifo 212B,那么传输fifo212A基于从芯片外传输fifo 212B和/或芯片外传输fifo 312接收的链路状态信息(例如链路占用信息)确定适当链路。传输fifo 212A直接从MMU 214A的读取端口检索请求的单元(606)且经由确定的链路将单元传输到芯片外传输fifo 212B以经由芯片外出口处理器218B传输(608)。这样,从MMU 214A检索的单元绕过芯片上出口处理器218A,例如,不通过芯片上出口处理器218A处理。

传输fifo 212A从芯片上出口单元fifo 215A接收对存储在芯片外MMU(例如,芯片外MMU 214B)中的单元的请求(610)。传输fifo 212A将请求传输到在与芯片外MMU 214B相同的交换机芯片212B上的芯片外传输fifo 212B。传输fifo 212A从芯片外传输fifo 212B接收来自芯片外MMU 214B的单元。传输fifo 212A将接收的单元传输到芯片上处理单元fifo 215A以用于经由芯片上出口处理器218A传输(616)。

图7图示说明根据一或多个实施方案的实施交换机芯片的可缩放低延迟网状互连的交换机装置110的实例交换机芯片210A的出口单元fifo 215A的实例过程700的流程图。出于解释目的,在本文中主要参考图2到3的交换机装置110的交换机芯片210A的出口单元fifo 215A描述实例过程700;但是,实例过程700不限于图2到3的交换机芯片210A的出口单元fifo 215A,例如,实例过程700可通过交换机芯片210B、310的出口单元fifo 215A、315的一或多者执行及/或实例过程700可通过出口单元fifo 215A的一或多个组件执行。进一步出于解释目的,实例过程700的框块在本文中描述为串行或线性发生。但是,实例过程700的多个框块可并行发生。另外,可按不同于所展示的顺序的顺序执行实例过程700的框块及/或可不执行实例过程700的一或多个框块。

出口单元fifo 215A经由芯片上MMU 214A的读取端口检索第一单元(702)。出口单元fifo 215A使来自芯片上MMU 214A的第一单元在第一队列505A中排队(704)。出口单元fifo 215A经由芯片上传输fifo 212A及与第一芯片外MMU 214B相关的第一芯片外传输fifo 212B从第一芯片外MMU 214B接收第二单元。出口单元fifo 215A使来自第一芯片外MMU 214B的第二单元在第二队列505B中排队(708)。出口单元fifo 215A经由芯片上传输fifo 212A及与第二芯片外MMU 314相关的第二芯片外传输fifo 312从第二芯片外MMU 314接收第三单元。出口单元fifo 215A使来自第一芯片外MMU 214B的第三单元在第三队列505C中排队(712)。接着,出口单元fifo 215A的调度器510调度第一、第二和第三单元以用于经由芯片上出口处理器218A、芯片上端口宏217A和一或多个耦合端口的传输(714)。

图8在概念上图示说明实例电子系统800,可使用所述电子系统实施本技术的一或多个实施方案。电子系统800(例如)可为或可包含电子装置102、104、106、交换机装置110、路由装置、台式计算机、膝上型计算机、平板装置、电话和/或通常为任何电子装置的一或多者。此电子系统800包含各种类型的计算机可读媒体和各种其它类型的计算机可读媒体的接口。电子系统800包含总线808、一或多个处理单元812、系统存储器804、只读存储器(ROM)810、永久存储装置802、输入装置接口814、输出装置接口806、一或多个网络接口816和/或其子集和变化。

总线808总体表示以通信方式连接电子系统800的许多内部装置的所有系统、外围设备和芯片组总线。在一或多个实施方案中,总线808将一或多个处理单元812和ROM 810、系统存储器804以及永久存储装置802以通信方式连接。根据这些各种存储器单元,一或多个处理单元812检索待执行的指令和待处理的数据以便执行本发明的过程。一或多个处理单元812在不同实施方案中可为单一处理器或多核处理器。

ROM 810存储由电子系统800的一或多个处理单元812和其它模块利用的统计数据和指令。另一方面,永久存储装置802可为读写存储器装置。永久存储装置802可为甚至当电子系统800关闭时仍存储指令和数据的非易失性存储器单元。在一或多个实施方案中,大容量存储装置(例如磁盘或光盘和其对应磁盘驱动器)可用作永久存储装置802。

在一或多个实施方案中,可移动存储装置(例如软盘、闪存驱动器和其对应磁盘驱动器)可用作永久存储装置802。如同永久存储装置802,系统存储器802可为读写存储器装置。但是,不同于永久存储装置802,系统存储器804可为易失性读写存储器,例如,随机存取存储器(RAM)。系统存储器804可存储一或多个处理单元812可在运行时间利用的一或多个指令和/或数据。在一或多个实施方案中,本发明的过程经存储在系统存储器804、永久存储装置802和/或ROM 810中。根据这些各种存储器单元,一或多个处理单元812检索待执行的指令和待处理的数据以便执行一或多个实施方案的过程。

总线808也连接到输入和输出装置接口814和806。输入装置接口814使用户能够传达信息且选择命令到电子系统800。可配合输入装置接口814使用的输入装置可包含(例如)字母数字键盘和指针装置(也称为“光标控制装置”)。输出装置接口806可使(例如)通过电子系统800产生的图像能够被显示。可配合输出装置接口806使用的输出装置可包含(例如)打印机和显示器装置,例如,液晶显示器(LCD)、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、柔性显示器、平板显示器、固态显示器、投影器或用于输出信息的任何其它装置。一或多个实施方案可包含起到输入和输出装置两者的作用的装置,例如触摸屏。在这些实施方案中,提供到用户的反馈可为任何形式的感觉性反馈,例如,视觉反馈、听觉反馈或触觉反馈;且来自用户的输入可以任何形式接收,其包含听觉、语音或触觉输入。

如在图8中所示,总线808还通过一或多个网络接口816将电子系统808耦合到一或多个网络(未展示)。一或多个网络接口可包含光学接口、以太网接口、无线接口、同轴电缆多媒体联盟(MoCA)接口、缩减千兆位媒体独立接口(RGMII)或通常为用于连接到网络的任何接口。这样,电子系统800可为计算机的一或多个网络(例如局域网络(LAN)、广域网络(WAN)、或内联网、或网络的网络(例如因特网))的部分。电子系统800的任何或所有组件可结合本发明使用。

本发明的范围内的实施方案可使用编码一或多个指令的有形计算机可读存储媒体(或一或多个类型的多个有形计算机可读存储媒体)分布或完全实现。有形计算机可读存储媒体也可在本质上是非暂时性的。

计算机可读存储媒体可为可通过通用或专用计算装置读取、写入或以其它方式存取的任何存储媒体,其包含能够执行指令的任何处理电子装置和/或处理电路。例如,未加以限制,计算机可读媒体可包含任何易失性半导体存储器,例如,RAM、DRAM、SRAM、T-RAM、Z-RAM和TTRAM。计算机可读媒体也可包含任何非易失性半导体存储器,例如,ROM、PROM、EPROM、EEPROM、NVRAM、闪存、nvSRAM、FeRAM、FeTRAM、MRAM、PRAM、CBRAM、SONOS、RRAM、NRAM、跑道型存储器、FJG和Millipede(千足虫)存储器。

此外,计算机可读存储媒体可包含任何非半导体存储器,例如,光盘存储装置、磁盘存储装置、磁带、其它磁性存储装置或能够存储一或多个指令的任何其它媒体。在一或多个实施方案中,有形计算机可读存储媒体可直接耦合到计算装置,而在其它实施方案中,有形计算机可读存储媒体可间接耦合到计算装置,例如经由一或多个有线连接、一或多个无线连接或其任何组合。

指令可直接执行或可用于开发可执行指令。例如,指令可被实现为可执行或不可执行机器码或实现为可在可进行编译以产生可执行或不可执行机器码的高级语言中的指令。此外,指令还可被实现为或可包含数据。计算机可执行指令还可以任何格式组织,其包含例程、子例程、程序、数据结构、对象、模块、应用程序、小应用程序、功能等。如所属领域的技术人员认识到的,包含但不限于指令的数量、结构、顺序和组织的细节可在不改变基础逻辑、功能、处理和输出的情况下显著变化。

虽然以上描述主要提到了执行软件的微处理器或多核处理器,但是一或多个实施方案通过一或多个集成电路(例如,专用集成电路(ASIC)或现场可编程门阵列(FPGA))执行。在一或多个实施方案中,此集成电路执行存储在电路本身上的指令。

所属领域的技术人员将了解到,本文描述的各种图示说明性的框块、模块、元件、组件、方法和算法可实施为电子硬件、计算机软件或其两者的组合。为了图示说明硬件和软件的可互换性,各种图示说明性的框块、模块、元件、组件、方法和算法在上文中通常按照其功能性进行描述。此功能性是否实施为硬件或软件取决于对总体系统施加的特定应用程序和设计约束。技术人员可对于各特定应用程序以不同方式实施描述的功能性。在各种组件和框块的全部都不脱离本技术的范围的情况下,其可有区分地布置(例如,以不同顺序布置或以不同方式划分)。

应理解,所揭示的过程中的框块的任何特定顺序或层次是实例方法的图示说明。基于设计偏好,应理解,过程中的框块的特定顺序或层次可重新布置,或可执行所有图示说明的框块。可同时执行框块的任一者。在一或多个实施方案中,多任务和并行处理可为有利的。而且,上文描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要此分离,且应理解,所描述的程序组件和系统通常可一起集成在单个软件产品中或封装到多个软件产品中。

如本申请说明书和权利要求中所用,术语“基站”、“接收器”、“计算机”、“服务器”、“处理器”和“存储器”都是指电子装置或其它技术装置。这些术语排除人或人群。为了本说明书的目的,术语“显示器”、“显示”意味着在电子装置上显示。

如本文中所使用,在一系列项目(其中术语“和”或“或”用来分离项目的任一者)之前的短语“至少一个”修饰整个列表,而非列表的各成员(例如,各项)。短语“至少一个”不需要选择列出的各项的至少一者;相反,短语允许包含项目的任一者的至少一者和/或项目的任何组合的至少一者和/或项目的各者的至少一者的含义。通过实例,短语“A、B和C的至少一者”或“A、B或C的至少一者”各自是指仅是A、仅是B或仅是C;A、B和C的任何组合;和/或A、B和C的各者的至少一者。

谓语词组“经配置以”、“可操作以”和“经编程以”并不意味着对对象的任何特定有形或无形修改,而相反地,期望可互换地使用。在一或多个实施方案中,经配置以监测且控制操作或组件的处理器也可意味着处理器经编程以监测且控制操作或可操作处理器监测且控制操作。同样地,经配置以执行代码的处理器可理解为经编程以执行代码或可操作以执行代码的处理器。

短语(例如,一个方面、所述方面、另一方面、一些方面、一或多个方面、一个实施方案、所述实施方案、另一实施方案、一些实施方案、一或多个实施方案、一个实施例、所述实施例、另一实施例、一些实施例、一或多个实施例、一个配置、所述配置、另一配置、一些配置、一或多个配置、本技术、揭示内容、本发明、其其它变化等)是为了方便起见且不意味着与此短语相关的揭示内容是本技术必需的或此揭示内容适用于本技术的所有配置。与此短语相关的揭示内容可适用于所有配置或一或多个配置。与此短语相关的揭示内容可提供一或多个实例。短语(例如,一个方面或一些方面)是指一或多个方面,反之亦然,且这也适用于其它前述短语。

单词“示范性”在本文中用来意谓“充当实例、情况或图示说明”。本文描述为“示范性”或“实例”的任何实施例不必要理解为优于其它实施方案的优选或有益的方案。此外,就术语“包含”、“具有”等用于描述或权利要求书中的方面来说,此术语意欲以类似于术语“包括”用作权利要求书中的过渡词时的方式为包含性的。

将对于本领域的技术人员已知或者后来变得已知的本发明所描述的各个方面的要素的所有结构和功能等价物清楚地通过引用的方式并在本文中,并且意欲包括在权利要求书中。而且,本文揭示的任何内容都不意欲用于大众,这与此揭示内容是否在权利要求书中明确叙述无关。任何权利要求项要素均不应在35 U.S.C.§112第六段的条款下加以解释,除非使用短语“用于……的装置”来清楚地叙述所述要素,或者在方法项的情况下使用短语“用于……的步骤”来叙述所述要素。

提供之前的描述来使所属领域的技术人员能够实践本文描述的各种方面。所属领域的技术人员将容易了解对这些方面的各种修改,且本文定义的一般原理可适用于其它方面。因此,权利要求书不意欲限制于本文展示的方面,而意欲赋予其与权利要求书语言相一致的完整范围,其中除非有明确声明,否则以单数形式参考元件并不意味着“一个且仅一个”,而是意味着“一或多个”。除非另有具体说明,否则术语“一些”是指一或多个。男性代词(例如,他的)包含女性代词和中性代词(例如,她的和它的),反之亦然。标题和子标题(如果存在)都只是为了方便,且并不限制本发明。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号