Converting asynchronous packets into isochronous packets for transmission through a multi-dimensional switched fabric network
AssigneeWestern Digital Ventures, Inc.
InventorsMichael K. Eneboe, Andrew D. Hospodor
Life of this patent
Estimating the term…
Abstract
A switched node for use in a multi-dimensional switched fabric network is disclosed. The switched node comprises adapter circuitry connected to receive asynchronous and isochronous packets from an external entity. Each asynchronous packet comprises destination node routing information and data, and each isochronous packet comprises a path ID corresponding to a reserved path through the network, an arrival time parameter identifying a target arrival time of the isochronous packet into the switched node, and data. An asynchronous-to-isochronous converter converts the asynchronous packets into isochronous packets comprising the data from the asynchronous packets.
Claims19
A switched node for use in a multi-dimensional switched fabric network, the switched node comprising:
- (a) adapter circuitry connected to receive asynchronous and isochronous packets from an external entity, wherein:
- each asynchronous packet comprises destination node routing information and data;
- and
- each isochronous packet comprises a path ID corresponding to a reserved path through the network, an arrival time parameter identifying a target arrival time of the isochronous packet into the switched node, and data;
- (b) an asynchronous-to-isochronous converter for converting the asynchronous packets into isochronous packets comprising the data from the asynchronous packets;
- (c) a plurality of bi-directional ports for receiving isochronous packets from other switched nodes and for transmitting isochronous packets to other switched nodes;
- (d) a data buffer for storing the isochronous packets received from the bi-directional ports, the isochronous packets received from the adapter circuitry, and the isochronous packets comprising the asynchronous data;
- (e) routing circuitry for selecting at least one of the bi-directional ports to output the stored isochronous packets, and for storing a departure time parameter for each of the stored isochronous packets;
- and
- (f) a scheduler, responsive to the target arrival times and the departure times, for scheduling the transmission of the stored isochronous packets through at least one of the bi-directional ports.
A multi-dimensional switched fabric network, comprising:
- a plurality of interconnected switched nodes, wherein a selected number of the switched nodes each comprise:
- adapter circuitry connected to receive asynchronous and isochronous packets from an external entity, wherein:
- each asynchronous packet comprises destination node routing information and data;
- and
- each isochronous packet comprises a path ID corresponding to a reserved path through the network, an arrival time parameter identifying a target arrival time of the isochronous packet into the switched node, and data;
- an asynchronous-to-isochronous converter for converting the asynchronous packets into isochronous packets comprising the data from the asynchronous packets;
- a plurality of bi-directional ports for receiving isochronous packets from other switched nodes and for transmitting isochronous packets to other switched nodes;
- a data buffer for storing the isochronous packets received from the bi-directional ports, the isochronous packets received from the adapter circuitry, and the isochronous packets comprising the asynchronous data;
- routing circuitry for selecting at least one of the bi-directional ports to output the stored isochronous packets, and for storing a departure time parameter for each of the stored isochronous packets;
- and
- a scheduler, responsive to the target arrival times and the departure times, for scheduling the transmission of the stored isochronous packets through at least one of the bi-directional ports.
A multi-dimensional switched fabric network, comprising:
- (a) a plurality of interconnected switched nodes;
- (b) an input for receiving asynchronous and isochronous packets from host initiators, wherein:
- each asynchronous packet comprises destination node routing information and data;
- and
- each isochronous packet comprises a path ID corresponding to a reserved path through the network, an arrival time parameter identifying a target arrival time of the isochronous packet into each switched node, and data;
- (c) a central microprocessor for converting the received asynchronous packets into isochronous packets comprising the data from the asynchronous packets;
- wherein each switched node comprises:
- a plurality of bi-directional ports for transmitting the received isochronous packets and the isochronous packets comprising the data from the asynchronous packets through the network;
- a data buffer for storing the received isochronous packets and the isochronous packets comprising the asynchronous data;
- routing circuitry for selecting at least one of the bi-directional ports to output the stored isochronous packets, and for storing a departure time parameter for each of the stored isochronous packets;
- and
- a scheduler, responsive to the target arrival times and the departure times, for scheduling the transmission of the stored isochronous packets through at least one of the bi-directional ports.
A method of transmitting asynchronous and isochronous packets through a multi-dimensional switched fabric network comprising a plurality of switched nodes, the method comprising the steps of:
- (a) injecting an asynchronous packet into the switched fabric network, the asynchronous packet comprising destination routing information;
- (b) injecting an isochronous packet into the switched fabric network, the isochronous packet comprising a path ID corresponding to a reserved path through the network, and a target arrival time parameter identifying a target arrival time of the isochronous packet into a selected one of the switched nodes;
- (c) converting the asynchronous packet into an isochronous packet comprising the data from the asynchronous packet;
- (d) storing the injected isochronous packet and the isochronous packet comprising the data from the asynchronous packet in a data buffer within the switched nodes;
- (e) storing departure time and routing information within each switched storage node corresponding to the injected isochronous packet and the isochronous packet comprising the data from the asynchronous packet;
- and
- (f) scheduling the transmission of the stored isochronous packets through the switched nodes based on the target arrival times and the departure times.
Dependencies are inferred from the claim text.