Memory arbitration system and method having an arbitration packet protocol
First Claim
1. A method of responding to a read request in a system memory having a responding memory hub and at least one interposing memory hub through which a read response is transmitted on a data path of the interposing memory hub, the method comprising:
- retrieving read data from a memory device coupled to the responding memory hub and preparing a read response including the read data;
generating an arbitration packet including data indicative of a data path configuration for the read response;
providing the arbitration packet and the read response to the interposing memory hub, the arbitration packet provided prior to the read response; and
receiving the arbitration packet at the interposing memory hub, decoding the data of the arbitration packet and enabling a data path for the read response in the interposing memory hub in accordance with the data of the arbitration packet.
8 Assignments
0 Petitions
Accused Products
Abstract
A memory hub and method for transmitting a read response on a data path of a memory hub interposed between a transmitting memory hub and a receiving memory hub. An arbitration packet including data indicative of a data path configuration for an associated read response is received at the memory hub. The arbitration packet is decoded, and the data path is configured in accordance with the data of the arbitration packet. The associated read response is received at the memory hub and the associated read response is coupled to the configured data path for transmitting the same to the receiving memory hub.
151 Citations
36 Claims
-
1. A method of responding to a read request in a system memory having a responding memory hub and at least one interposing memory hub through which a read response is transmitted on a data path of the interposing memory hub, the method comprising:
-
retrieving read data from a memory device coupled to the responding memory hub and preparing a read response including the read data;
generating an arbitration packet including data indicative of a data path configuration for the read response;
providing the arbitration packet and the read response to the interposing memory hub, the arbitration packet provided prior to the read response; and
receiving the arbitration packet at the interposing memory hub, decoding the data of the arbitration packet and enabling a data path for the read response in the interposing memory hub in accordance with the data of the arbitration packet. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of transmitting a read response on a data path of a memory hub interposed between a transmitting memory hub and a receiving memory hub, the method comprising:
-
receiving at the memory hub an arbitration packet including data indicative of a data path configuration for an associated read response;
decoding the arbitration packet;
configuring the data path in accordance with the data of the arbitration packet;
receiving the associated read response at the memory hub; and
coupling the associated read response to the configured data path for transmitting the same to the receiving memory hub. - View Dependent Claims (9, 10, 11)
-
-
12. A method of configuring a data path of a memory hub through which a read response is provided, the method comprising:
-
generating at a first memory hub an arbitration packet including data indicative of a data path configuration for an associated read response;
providing the arbitration packet to a second memory hub coupled to the first memory hub;
decoding the arbitration packet at the second memory hub; and
configuring a data path of the second memory hub in accordance with the data of the arbitration packet in preparation of receiving the associated read response. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method of communicating between a first and second memory hub for configuring a data path in the second memory hub, the method comprising:
-
generating an arbitration packet for an associated read response to be coupled through the second memory hub, the arbitration packet having a command code field including data identifying that it is an arbitration packet and further having a data path field including data indicative of a data path configuration in the second memory hub;
transmitting the arbitration packet prior to transmitting the associated read response to the second memory hub; and
configuring the data path in the second memory hub in accordance with the data included in the data path field. - View Dependent Claims (19, 20, 21)
-
-
22. A memory hub coupled to at least one memory device, the memory hub comprising:
-
remote and local input nodes;
an output node;
a configurable data path coupled to the remote and local input nodes and further coupled to the output node, the configurable data path operable to couple at least one of a read response coupled through the remote and local input nodes to the output node; and
an arbitration control circuit coupled to the configurable data path, the output node, and the remote input node, the arbitration control circuit operable to generate an arbitration packet for an associated read response coupled through the local input node, the arbitration packet including data indicative of a data path configuration for the associated read response, the arbitration control circuit further operable to configure the configurable data path in accordance with the data included with an arbitration packet coupled thorough the remote input node in preparation of coupling an associated read response coupled through the remote input node to the output node. - View Dependent Claims (23, 24)
-
-
25. A memory hub, comprising:
-
a bypass data path coupled between an input node and an output node on which read responses are coupled therebetween in response to being enabled; and
an arbitration control circuit coupled to the bypass data path operable to generate an arbitration packet in response to retrieving read data from a memory device coupled to the memory hub, the arbitration packet having a data path field including activation data to enable a bypass data path of an upstream memory hub, the arbitration control circuit further operable to receive an arbitration packet from a downstream memory hub and enable the bypass data path to couple a read response received therefrom from the input node to the output node. - View Dependent Claims (26)
-
-
27. A memory module, comprising:
-
a plurality of memory devices; and
a memory hub coupled to the memory devices through a memory device bus to access the memory devices, the memory hub comprising;
remote and local input nodes, the local input node coupled to the memory device bus;
an output node;
a configurable data path coupled to the remote and local input nodes and further coupled to the output node, the configurable data path operable to couple at least one of a read response coupled through the remote and local input nodes to the output node; and
an arbitration control circuit coupled to the configurable data path, the output node, and the remote input node, the arbitration control circuit operable to generate an arbitration packet for an associated read response coupled through the local input node, the arbitration packet including data indicative of a data path configuration for the associated read response, the arbitration control circuit further operable to configure the configurable data path in accordance with the data included with an arbitration packet coupled thorough the remote input node in preparation of coupling an associated read response coupled through the remote input node to the output node. - View Dependent Claims (28, 29)
-
-
30. A memory module, comprising:
-
a plurality of memory devices; and
a memory hub coupled to the memory devices through a memory device bus to access the memory devices, the memory hub comprising;
a bypass data path coupled between an input node and an output node on which read responses are coupled therebetween in response to being enabled; and
an arbitration control circuit coupled to the bypass data path operable to generate an arbitration packet in response to retrieving read data from a memory device coupled to the memory hub, the arbitration packet having a data path field including activation data to enable a bypass data path of an upstream memory hub, the arbitration control circuit further operable to receive an arbitration packet from a downstream memory hub and enable the bypass data path to couple a read response received therefrom from the input node to the output node. - View Dependent Claims (31)
-
-
32. A processor-based system, comprising:
-
a processor having a processor bus;
a system controller coupled to the processor bus, the system controller having a peripheral device port, the system controller further comprising a controller coupled to a system memory port;
at least one input device coupled to the peripheral device port of the system controller;
at least one output device coupled to the peripheral device port of the system controller;
at least one data storage device coupled to the peripheral device port of the system controller;
a memory bus coupled to the system controller for transmitting memory requests and responses thereon; and
a plurality of memory modules coupled to the memory bus, each of the modules having;
a plurality of memory devices; and
a memory hub coupled to the memory devices through a memory device bus to access the memory devices, the memory hub comprising;
remote and local input nodes, the local input node coupled to the memory device bus;
an output node;
a configurable data path coupled to the remote and local input nodes and further coupled to the output node, the configurable data path operable to couple at least one of a read response coupled through the remote and local input nodes to the output node; and
an arbitration control circuit coupled to the configurable data path, the output node, and the remote input node, the arbitration control circuit operable to generate an arbitration packet for an associated read response coupled through the local input node, the arbitration packet including data indicative of a data path configuration for the associated read response, the arbitration control circuit further operable to configure the configurable data path in accordance with the data included with an arbitration packet coupled thorough the remote input node in preparation of coupling an associated read response coupled through the remote input node to the output node. - View Dependent Claims (33, 34)
-
-
35. A processor-based system, comprising:
-
a processor having a processor bus;
a system controller coupled to the processor bus, the system controller having a peripheral device port, the system controller further comprising a controller coupled to a system memory port;
at least one input device coupled to the peripheral device port of the system controller;
at least one output device coupled to the peripheral device port of the system controller;
at least one data storage device coupled to the peripheral device port of the system controller;
a memory bus coupled to the system controller for transmitting memory requests and responses thereon; and
a plurality of memory modules coupled to the memory bus, each of the modules having;
a plurality of memory devices; and
a memory hub coupled to the memory devices through a memory device bus to access the memory devices, the memory hub comprising;
a bypass data path coupled between an input node and an output node on which read responses are coupled therebetween in response to being enabled; and
an arbitration control circuit coupled to the bypass data path operable to generate an arbitration packet in response to retrieving read data from a memory device coupled to the memory hub, the arbitration packet having a data path field including activation data to enable a bypass data path of an upstream memory hub, the arbitration control circuit further operable to receive an arbitration packet from a downstream memory hub and enable the bypass data path to couple a read response received therefrom from the input node to the output node. - View Dependent Claims (36)
-
Specification