Abstract: In one embodiment, a system for configuring an interconnect device includes a non-volatile storage device to store configuration data associated with the interconnect device and a configuration interface to request the configuration data from the non-volatile storage device. Further, the system includes an initialization module to query the configuration interface for the configuration data and to distribute the configuration data provided by the configuration interface to multiple units within the interconnect device.
Abstract: A method to manage resource requests within an arbiter associated with an interconnect device includes identifying a first resource, required to issue a grant responsive to a resource request. If the first resource is unavailable, the resource request is placed within a first queue associated with the first resource. The first queue is a queue within a first group of queues for a first resource type of the first resource. A second group of queues is maintained for a second resource type.
Abstract: A method and management port for an indirect loop protocol associated with an interconnect device. In one embodiment, a method to handle a request sent to an interconnect device includes receiving the request at a destination switch from a host network adapter; generating a response to the request in the destination switch; and returning the response to the host network adapter, wherein the destination switch includes a management port for addressing the interconnect device that implements an indirect loop protocol.
Abstract: A switch for use with an InfiniBand network. The switch includes a crossbar that redirects packet-based data based on a forwarding table. At least one port that receives data from a network and selectively transfers that data to the crossbar using a variable number of virtual lanes. A state machine controls the changing of the number of virtual lanes.
Abstract: An infiniband architecture switch, includes a plurality of ports each configured to receive switch parameters, identify at least one data-packet error condition responsive to the switch parameters, generate a trap-initialization signal when the at least one data-packet error condition matches a trap-error condition, and a switch manager configured to receive the trap-initialization signal. A method for generating a switch manager control signal includes identifying at least one data-packet error condition in an infiniband architecture switch, determining when the at least one data-packet error condition matches a trap-error condition, generating a trap-initialization signal responsive to the trap-error condition, and forwarding the trap-initialization signal to a switch manager.
Abstract: A method and apparatus to allocate resource capacity within an interconnect device in accordance with a resource allocation table (e.g., a priority list) facilitate identification of a resource consumer to be allocated a portion of the resource capacity in an efficient manner. The resource allocation table stores a number of allocation entries indicating an allocation of the resource capacity to a number of resource consumers (e.g., virtual lanes). A ranking vector corresponding to a first allocation entry within the allocation table is retrieved. A pending request vector, indicating for which of the plurality of resource consumers a resource request is pending, is generated. A selected resource consumer to consume at least a portion of the resource capacity is selected, the selection being performed utilizing the ranking vector and the pending request vector.
Abstract: A switch for use with an InfiniBand network. The switch includes a hub that redirects packets from a first InfiniBand device to a second InfiniBand device, a buffer that receives packets from the first InfiniBand device, and plurality of ports for transferring the data to the hub. A plurality of registers are coupled to the buffer for storing data from the packets. A switch network for selectively connecting the registers to the ports such that each register transfers a different portion of the data to a selected port.