Merging Result from a Parser in a Network Processor with Result from an External Coprocessor
    22.
    发明申请
    Merging Result from a Parser in a Network Processor with Result from an External Coprocessor 失效
    从具有外部协处理器结果的网络处理器中的解析器合并结果

    公开(公告)号:US20120204190A1

    公开(公告)日:2012-08-09

    申请号:US13365778

    申请日:2012-02-03

    IPC分类号: G06F9/46

    CPC分类号: G06F9/546 G06F9/544

    摘要: A mechanism is provided for merging in a network processor results from a parser and results from an external coprocessor providing processing support requested by said parser. The mechanism enqueues in a result queue both parser results needing to be merged with a coprocessor result and parser results which have no need to be merged with a coprocessor result. An additional queue is used to enqueue the addresses of the result queue where the parser results are stored. The result from the coprocessor is received in a simple response register. The coprocessor result is read by the result queue management logic from the response register and merged to the corresponding incomplete parser result read in the result queue at the address enqueued in the additional queue.

    摘要翻译: 提供了一种机制,用于在来自解析器的网络处理器结果和来自提供由所述解析器请求的处理支持的外部协处理器的结果中合并。 结果队列中的机制排队,解析器结果需要与协处理器结果合并,并且不需要与协处理器结果合并的解析器结果。 使用一个附加队列来排列存储解析器结果的结果队列的地址。 协处理器的结果是在简单的响应寄存器中接收的。 协处理器结果由响应寄存器的结果队列管理逻辑读取,并被合并到在附加队列中排队的地址的结果队列中读取的相应的不完整解析器结果。

    Host Ethernet Adapter for Handling Both Endpoint and Network Node Communications
    23.
    发明申请
    Host Ethernet Adapter for Handling Both Endpoint and Network Node Communications 失效
    用于处理端点和网络节点通信的主机以太网适配器

    公开(公告)号:US20120192190A1

    公开(公告)日:2012-07-26

    申请号:US13011663

    申请日:2011-01-21

    IPC分类号: G06F9/46

    CPC分类号: G06F15/1735

    摘要: A host Ethernet adapter (HEA) and method of managing network communications is provided. The HEA includes a host interface configured for communication with a multi-core processor over a processor bus. The host interface comprises a receive processing element including a receive processor, a receive buffer and a scheduler for dispatching packets from the receive buffer to the receive processor; a send processing element including a send processor and a send buffer; and a completion queue scheduler (CQS) for dispatching completion queue elements (CQE) from the head of the completion queue (CQ) to threads of the multi-core processor in a network node mode. The method comprises operatively coupling an Ethernet adapter to a multi-core processor system via a processor bus, selectively assigning a first plurality of packets to a first queue pair for servicing in an endpoint mode, running a device driver on the multi-core processing system, the device driver controlling the servicing of the first queue pair by dispatching the first plurality of packets to only one processor core of the multi-core processor system, selectively assigning a second plurality of packets to a second queue pair for servicing in a network node mode; and the Ethernet adapter controlling the servicing of the second queue pair by dispatching the second plurality of packets to multiple processor threads.

    摘要翻译: 提供主机以太网适配器(HEA)和管理网络通信的方法。 HEA包括被配置为通过处理器总线与多核处理器进行通信的主机接口。 所述主机接口包括接收处理元件,所述接收处理元件包括接收处理器,接收缓冲器和用于从所述接收缓冲器向所述接收处理器分发分组的调度器; 包括发送处理器和发送缓冲器的发送处理元件; 以及用于从完成队列(CQ)的头部将网络节点模式中的多核处理器的线程调度完成队列元素(CQE)的完成队列调度器(CQS)。 该方法包括经由处理器总线可操作地将以太网适配器耦合到多核处理器系统,选择性地将第一多个分组分配到第一队列对以在端点模式下进行服务,在多核处理系统上运行设备驱动程序 所述设备驱动程序通过将所述第一多个分组分派到所述多核处理器系统的一个处理器核心来控制所述第一队列对的服务,选择性地将第二多个分组分配给第二队列对以在网络节点中进行服务 模式; 以及所述以太网适配器通过将所述第二多个分组分派到多个处理器线程来控制所述第二队列对的服务。

    Multicore communication processing
    24.
    发明授权
    Multicore communication processing 有权
    多核通讯处理

    公开(公告)号:US07715428B2

    公开(公告)日:2010-05-11

    申请号:US11669419

    申请日:2007-01-31

    IPC分类号: H04L12/66 H04J3/16 H04J3/22

    CPC分类号: H04L47/50

    摘要: Mechanisms for processing of communications between data processing devices are provided. With the mechanisms of the illustrative embodiments, a set of techniques that enables sustaining media speed by distributing transmit and receive-side processing over multiple processing cores is provided. In addition, these techniques also enable designing multi-threaded network interface controller (NIC) hardware that efficiently hides the latency of direct memory access (DMA) operations associated with data packet transfers over an input/output (I/O) bus. Multiple processing cores may operate concurrently using separate instances of a communication protocol stack and device drivers to process data packets for transmission with separate hardware implemented send queue managers in a network adapter processing these data packets for transmission. Multiple hardware receive packet processors in the network adapter may be used, along with a flow classification engine, to route received data packets to appropriate receive queues and processing cores for processing.

    摘要翻译: 提供了用于处理数据处理设备之间的通信的机制。 利用说明性实施例的机制,提供了一组通过在多个处理核上分发发送和接收侧处理来维持媒体速度的技术。 此外,这些技术还可以设计出多线程网络接口控制器(NIC)硬件,可有效地隐藏通过输入/输出(I / O)总线传输数据分组的直接存储器访问(DMA)操作的延迟。 多个处理核心可以使用通信协议栈和设备驱动程序的单独实例同时运行,以处理用于传输的数据分组,其中单独的硬件实现了处理这些数据分组以进行传输的网络适配器中的发送队列管理器。 可以使用网络适配器中的多个硬件接收分组处理器以及流分类引擎将接收到的数据分组路由到适当的接收队列和处理核心进行处理。

    Flexible control block format for frame description and management
    25.
    发明授权
    Flexible control block format for frame description and management 失效
    灵活的控制块格式,用于帧描述和管理

    公开(公告)号:US07466715B2

    公开(公告)日:2008-12-16

    申请号:US11091245

    申请日:2005-03-28

    IPC分类号: H04L12/28

    摘要: A communication network used to link information handling systems together utilizes a switching network to transmit data among senders and receivers. Each individual packet of data is described and controlled by an FCB. The bandwidth associated with the storing and distribution of data is optimized by chaining the data packets in different types of queues, or operating without chaining outside a queue. When a frame is in an output queue, the third word contains an RFCBA for egress of the frame to a line port, and an MCID for ingress from an output queue to a switch port. The RFCBA and the MCID have multicast capabilities. The format does not require a third word when a frame is in an input queue.

    摘要翻译: 用于将信息处理系统链接在一起的通信网络利用交换网络在发送者和接收者之间传送数据。 每个单独的数据包由FCB描述和控制。 与存储和分发数据相关联的带宽通过将数据分组链接在不同类型的队列中进行优化,或者在不在队列外链接的情况下运行。 当帧位于输出队列中时,第三个字包含用于将帧从线路端口排出的RFCBA,以及用于从输出队列进入交换机端口的MCID。 RFCBA和MCID具有多播功能。 当帧在输入队列中时,格式不需要第三个字。

    DRAM access command queuing structure
    26.
    发明授权
    DRAM access command queuing structure 有权
    DRAM访问命令排队结构

    公开(公告)号:US07277982B2

    公开(公告)日:2007-10-02

    申请号:US10899937

    申请日:2004-07-27

    IPC分类号: G06F12/00

    CPC分类号: G06F13/1642

    摘要: Access arbiters are used to prioritize read and write access requests to individual memory banks in DRAM memory devices, particularly fast cycle DRAMs. This serves to optimize the memory bandwidth available for the read and the write operations by avoiding consecutive accesses to the same memory bank and by minimizing dead cycles. The arbiter first divides DRAM accesses into write accesses and read accesses. The access requests are divided into accesses per memory bank with a threshold limit imposed on the number of accesses to each memory bank. The write receive packets are rotated among the banks based on the write queue status. The status of the write queue for each memory bank may also be used for system flow control. The arbiter also typically includes the ability to determine access windows based on the status of the command queues, and to perform arbitration on each access window.

    摘要翻译: 访问仲裁器被用于将对DRAM存储器件,特别是快速循环DRAM中的各个存储体的读取和写入访问请求进行优先级排序。 这用于通过避免对同一存储体的连续访问并且通过最小化死循环来优化用于读取和写入操作的存储器带宽。 仲裁器首先将DRAM访问划分为写访问和读访问。 访问请求被划分为每个存储体的访问,并且对每个存储体的访问次数施加了阈值限制。 基于写入队列状态,写入接收数据包在存储体之间旋转。 每个存储体的写入队列的状态也可以用于系统流控制。 仲裁器还通常包括基于命令队列的状态来确定访问窗口的能力,并且在每个访问窗口上执行仲裁。

    Providing to a parser and processors in a network processor access to an external coprocessor
    27.
    发明授权
    Providing to a parser and processors in a network processor access to an external coprocessor 有权
    向网络处理器中的解析器和处理器提供对外部协处理器的访问

    公开(公告)号:US09088594B2

    公开(公告)日:2015-07-21

    申请号:US13365679

    申请日:2012-02-03

    IPC分类号: G06F9/30 H04L29/06

    CPC分类号: H04L69/12

    摘要: A mechanism is provided for sharing a communication used by a parser (parser path) in a network adapter of a network processor for sending requests for a process to be executed by an external coprocessor. The parser path is shared by processors of the network processor (software path) to send requests to the external processor. The mechanism uses for the software path a request mailbox comprising a control address and a data field accessed by MMIO for sending two types of messages, one message type to read or write resources and one message type to trigger an external process in the coprocessor and a response mailbox for receiving response from the external coprocessor comprising a data field and a flag field. The other processors of the network poll the flag until set and get the coprocessor result in the data field.

    摘要翻译: 提供了一种用于共享由网络处理器的网络适配器中的解析器(解析器路径)使用的通信的机制,用于发送对要由外部协处理器执行的进程的请求。 解析器路径由网络处理器(软件路径)的处理器共享,以将请求发送到外部处理器。 该机制用于软件路径,包括由MMIO访问的控制地址和数据字段的请求邮箱,用于发送两种类型的消息,一种用于读取或写入资源的消息类型和一个消息类型以触发协处理器中的外部进程, 用于从包括数据字段和标志字段的外部协处理器接收响应的响应邮箱。 网络的其他处理器轮询该标志直到设置,并获得协处理器结果的数据字段。

    Providing to a Parser and Processors in a Network Processor Access to an External Coprocessor
    29.
    发明申请
    Providing to a Parser and Processors in a Network Processor Access to an External Coprocessor 有权
    提供给网络处理器中的解析器和处理器访问外部协处理器

    公开(公告)号:US20120204002A1

    公开(公告)日:2012-08-09

    申请号:US13365679

    申请日:2012-02-03

    IPC分类号: G06F15/76 G06F9/06

    CPC分类号: H04L69/12

    摘要: A mechanism is provided for sharing a communication used by a parser (parser path) in a network adapter of a network processor for sending requests for a process to be executed by an external coprocessor. The parser path is shared by processors of the network processor (software path) to send requests to the external processor. The mechanism uses for the software path a request mailbox comprising a control address and a data field accessed by MMIO for sending two types of messages, one message type to read or write resources and one message type to trigger an external process in the coprocessor and a response mailbox for receiving response from the external coprocessor comprising a data field and a flag field. The other processors of the network poll the flag until set and get the coprocessor result in the data field.

    摘要翻译: 提供了一种用于共享由网络处理器的网络适配器中的解析器(解析器路径)使用的通信的机制,用于发送对要由外部协处理器执行的进程的请求。 解析器路径由网络处理器(软件路径)的处理器共享,以将请求发送到外部处理器。 该机制用于软件路径,包括由MMIO访问的控制地址和数据字段的请求邮箱,用于发送两种类型的消息,一种用于读取或写入资源的消息类型和一个消息类型以触发协处理器中的外部进程, 用于从包括数据字段和标志字段的外部协处理器接收响应的响应邮箱。 网络的其他处理器轮询该标志直到设置,并获得协处理器结果的数据字段。

    Systems and methods for rate-limited weighted best effort scheduling
    30.
    发明授权
    Systems and methods for rate-limited weighted best effort scheduling 失效
    速率限制加权最佳努力调度的系统和方法

    公开(公告)号:US07474662B2

    公开(公告)日:2009-01-06

    申请号:US11119329

    申请日:2005-04-29

    IPC分类号: H04L12/56

    摘要: Systems and methods for scheduling data packets in a network processor are disclosed. Embodiments provide a network processor that comprises a best-effort scheduler with a minimal calendar structure for addressing schedule control blocks. In one embodiment, a four-entry calendar structure provides for rate-limited weighted best effort scheduling. Each of a plurality of different flows has associated schedule control blocks. Schedule control blocks are stored as linked lists in a last-in-first-out buffer. Each calendar entry is associated with a different linked list by storing in the calendar entry the address of the first-out schedule control block in the linked list. Each schedule control block has a counter and is assigned a rate limit according to the bandwidth priority of the flow to which the corresponding packet belongs. Each time a schedule control block is accessed from a last-in-first-out buffer storing the linked list, the scheduler generates a scheduling event and the counter of the schedule control block is incremented. When an incremented counter of a schedule control block equals its rate limit, the schedule control block is temporarily removed from further scheduling until a time interval concludes.

    摘要翻译: 公开了一种用于在网络处理器中调度数据分组的系统和方法。 实施例提供了一种网络处理器,其包括具有用于寻址日程控制块的最小日历结构的尽力而为调度器。 在一个实施例中,四入口日历结构提供速率受限加权最佳努力调度。 多个不同流中的每一个都具有相关联的调度控制块。 计划控制块作为链表存储在先进先出缓冲区中。 通过在日历条目中存储链表中的先出时间表控制块的地址来将每个日历条目与不同的链表相关联。 每个调度控制块都有一个计数器,并根据相应数据包所属的流的带宽优先级分配速率限制。 每当从存储链表的最先进先出缓冲器访问调度控制块时,调度器生成调度事件,并且调度控制块的计数器递增。 当调度控制块的递增计数器等于其速率限制时,调度控制块暂时从进一步调度中移除,直到时间间隔结束。