Data access method in the network system and the network system
First Claim
1. A data access method used in a network system having several node devices connected for communications configured so that each node device can execute certain processing by accessing memories in said several node devices or cache memories at a higher access speed, said method comprising:
- in each node device;
executing a speculative access to said memories in the system while reading out, from a tag memory, a tag information as information related to a data storage status in said cache memories provided in the system, anddeciding whether or not to abolish the data acquired from said memories by said speculative access according to said tag information read out,wherein said tag information indicates a data storage status comprising one of three possible states, including;
1) data is not found in any of said node devices;
2) data is found in more than one of said node devices; and
3) data is found in only one node device;
wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising;
an “
LV”
bit that shows that reply data by a speculative read oath has been returned from a local memory;
a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;
an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;
a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; and
a “
JV”
bit that shows a snoop result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist;
LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; and
LV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
.
1 Assignment
0 Petitions
Accused Products
Abstract
According to this data access method to be used in a network system, while the tag information is read out from the tag memory, the data is speculatively read out from the memory unit in the self node device. When the read out tag information shows that the speculatively read out data is not found in any of the cache memories, such speculatively read out data is sent to the processor in the self node device. When the read out tag information shows that the speculatively read out data is found in one of the cache memories, the data existing in such cache memory is acquired and sent to the processor in the self node device and the speculatively readout data is abolished.
-
Citations
16 Claims
-
1. A data access method used in a network system having several node devices connected for communications configured so that each node device can execute certain processing by accessing memories in said several node devices or cache memories at a higher access speed, said method comprising:
-
in each node device; executing a speculative access to said memories in the system while reading out, from a tag memory, a tag information as information related to a data storage status in said cache memories provided in the system, and deciding whether or not to abolish the data acquired from said memories by said speculative access according to said tag information read out, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read oath has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoop result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
.
-
-
2. A data access method used in a network system having several node devices connected for mutual communications configured so that each node device can execute certain processing by reading out data from memories in said several node devices or cache memories at a higher access speed, said method comprising:
-
in each node device; executing a speculative readout of data from said memories in the node devices while reading out, from a tag memory, a tag information as information related to a data storage status in said cache memories provided in the system, judging whether a same data as data subject to said speculative readout is in any of the cache memories based on said tag information read out, sending said speculative readout data to a processor in a self node device when the same data as the data subject to said speculative readout is not found in any of the cache memories, and acquiring, when the same data as the data subject to said speculative readout is in one of the cache memories, such data in said cache memory and sending said data to the processor in the self node device, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read nath has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoop result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
. - View Dependent Claims (3, 4, 5)
-
-
6. A network system having several node devices connected for communications configured so that each node device can execute certain processing by accessing memories in said several node devices or cache memories at a higher access speed, each node device comprising:
-
access means for speculatively accessing said memories in the system while reading out, from a tag memory, a tag information as information related to data storage status in said cache memories provided in the system; and judgment means for judging whether or not to abolish data acquired from said memories by said speculative access according to said tag information read out, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read path has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoop result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
.
-
-
7. A network system having several node devices connected by a communication mechanism for mutual communications configured so that each node device can execute certain processing by reading out data from memories in said several node devices or cache memories at a higher access speed, each node device comprising:
-
speculative readout means for executing a speculative readout of data from said memories in the node devices while reading out, from a tag memory, tag information as information related to a data storage status in said cache memories provided in the system; judgment means for judging whether same data as data subject to said speculative readout is in any of the cache memories based on said tag information read out; and read data processing means which sends said speculative readout data to a processor in a self node device when same data as data subject to said speculative readout is judged not existing in any of the cache memories and, when the same data is judged existing in one of the cache memories, acquires such data in said cache memory and sends said data to the processor in the self node device, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read path has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoon result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A computer readable memory storing a data access program for controlling the data access in a network system having several node devices connected for mutual communications configured so that each node device can execute certain processing by accessing memories in said several node devices or cache memories at a higher access speed, said data access program executing:
-
speculative access processing for the memories in the system while reading out, from a tag memory, tag information as information related to a data storage status in said cache memories provided in the system; and processing to judge whether or not to abolish data acquired from said memories by said speculative access according to said tag information read out, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read path has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoon result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache mem6rv in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
.
-
-
13. A computer readable memory storing a data access program for controlling the data access in a network system having several node devices connected for mutual communications configured so that each node device can execute certain processing by reading out data from memories in said several node devices or cache memories at a higher access speed, said data access program executing:
-
speculative readout processing to read out data from said memories in the node devices while reading out, from a tag memory, tag information as information related to a data storage status in said cache memories provided in the system; judgment processing to judge whether same data as data subject to said speculative readout is found in any of the cache memories, based on said tag information read out; processing, when the same data as the data subject to said speculative readout is not found in any of the cache memories, to send said speculative readout data to a processor in a self node device; and
,processing, when the same data as the data subject to said speculative readout is found in one of the cache memories, to acquire such data in said cache memory and send said data to the processor in the self node device, wherein said tag information indicates a data storage status comprising one of three possible states, including; 1) data is not found in any of said node devices; 2) data is found in more than one of said node devices; and 3) data is found in only one node device; wherein said deciding whether or not to abolish the data acquired from said memories by said speculative access is based upon a logical combination of five bits of information defining a status of said speculative access, said five bits of information comprising; an “
LV”
bit that shows that reply data by a speculative read nath has been returned from a local memory;a “
TV”
bit that shows that a read type transaction has been received from a processor and issued;an “
HV”
bit that shows that reply data has been returned from a memory unit mounted on an other node;a “
CV”
bit that shows that modified data held in the cache of a remote node has been returned; anda “
JV”
bit that shows a snoop result being a “
Modify found”
bit that defines whether said data has been found to be currently in a cache memory in one of said node devices in said system, andwherein said cache data is abolished when one of said following conditions exist; LV=1, TV=1, HV=0, CV=1, and JV indicates “
Modify found”
; andLV=0, TV=1, HV=1, CV=1, and JV indicates “
Modify found”
. - View Dependent Claims (14, 15, 16)
-
Specification