Crossbar with dynamic selection
AssigneeNVIDIA Corporation
InventorsKaran Gupta, Dane Thomas Mrazek, Nan Jiang, Mukesh Chand Agarwal
Life of this patent
Estimating the term…
Abstract
A Dynamic Destination Selection (DDS) crossbar, system for routing a packet, and a switch are provided. An illustrative DDS crossbar includes one or more adaptive routing circuits to track destination credit and port availability at a time of dispatching a packet, group multiple destinations into super destination groups, perform dynamic destination routing within a super destination group, and use the destination credit and port availability for the super destination group at the time of receiving the packet to select an output destination for the packet.
Claims18
A Dynamic Destination Selection (DDS) crossbar, comprising:
- one or more adaptive routing circuits that are to track destination credit and port availability at a time of dispatching a packet, group multiple destinations into super destination groups, perform dynamic destination routing within a super destination group, and use the destination credit and port availability for the super destination group at the time of dispatching the packet to select an output destination for the packet, wherein the one or more adaptive routing circuits comprise one or more source request queues that are maintained on a super destination group basis;
- a mapper block, wherein the mapper block is connected to an output of a respective source request queue from the one or more source request queues, and wherein the mapper block maps a super destination group to multiple destination ports, based on the destination credit availability at the time of dispatching the packet;
- and
- one or more arbiter blocks to make source-to-destination assignments for the packet.
A system for dispatching a packet, comprising:
- one or more adaptive routing circuits that include:
- one or more source request queues that are maintained on a super destination group basis and that are to receive the packet for dispatching;
- a mapper block connected to an output of a respective source request queue from the one or more source request queues, wherein the mapper block maps a super destination group to multiple destination ports;
- one or more arbiter blocks that make source-to-destination assignments for the packet;
- and
- a remapper block connected to an output of the one or more arbiter blocks, wherein the remapper block maps the multiple destination ports back to the super destination group.
A switch, comprising:
- a crossbar having one or more adaptive routing circuits that are to:
- hold a packet in source request queue that is maintained on a super destination group basis;
- map the super destination group to a plurality of destination ports;
- make a source-to-destination assignment for the packet based on destination credit and port availability at a time of receiving the packet;
- remap the plurality of destination ports back to the super destination group;
- and
- trigger release of the packet from the source request queue while also causing the packet to be transmitted to a selected destination port.
Dependencies are inferred from the claim text.