发明名称 OPTIMIZED CREDIT RETURN MECHANISM FOR PACKET SENDS
摘要 Method and apparatus for implementing an optimized credit return mechanism for packet sends. A Programmed Input/Output (PIO) send memory is partitioned into a plurality of send contexts, each comprising a memory buffer including a plurality of send blocks configured to store packet data. A storage scheme using FIFO semantics is implemented with each send block associated with a respective FIFO slot. In response to receiving packet data written to the send blocks and detecting the data in those send blocks has egressed from a send context, corresponding freed FIFO slots are detected, and a lowest slot for which credit return indicia has not be returned is determined. The highest slot in a sequence of freed slots from the lowest slot is then determined, and corresponding credit return indicia is returned. In one embodiment an absolute credit return count is implemented for each send context, with an associated absolute credit sent count tracked via software that writes to the PIO send memory, with the two absolute credit counts used for flow control.
申请公布号 US2015378953(A1) 申请公布日期 2015.12.31
申请号 US201414316689 申请日期 2014.06.26
申请人 Intel Corporation 发明人 Debbage Mark;Mutha Yatin M.
分类号 G06F13/42;G06F13/16;G06F13/28;G06F13/362 主分类号 G06F13/42
代理机构 代理人
主权项 1. A method comprising: partitioning memory space in a Programmed Input/Output (PIO) send memory into a plurality of send contexts, each comprising a memory buffer including a plurality of send blocks configured to store packet data; implementing a storage scheme using First-in, First-out (FIFO) semantics for each send context under which each send block occupies a respective FIFO slot in a FIFO buffer having a FIFO order and data for a given packet is stored in one or more send blocks occupying one or more respective sequential FIFO slots in a FIFO order; receiving packet data written to send blocks out of order such that for at least a portion of packets send blocks are filled with packet data in a different order than the FIFO order; egressing send blocks containing filled packet data; in response to detecting one or more send blocks have been egressed from a send context, detecting one or more FIFO slots that have been freed;detecting if any of the one or more FIFO slots that have been freed occupies a lowest slot in the FIFO order for the send context for which credit return indicia has not been returned; and, if so,returning credit return indicia from which a highest FIFO slot of a sequence of freed slots in the FIFO order including the lowest slot for which credit information has not been returned can be identified.
地址 Santa Clara CA US