Apparatus and method for retrieving data from a data storage system
First Claim
Patent Images
1. A memory controller connected to at least one CPU including a first cache memory and a main memory to execute a process for a read request from any CPU, said controller comprising:
- a second cache memory; and
a control block respectively issuing a read request to a storing area of a data block within the first cache memory or the second cache memory as an object of the read request and a storing area of other data block included in an entry to which the data block belongs.
1 Assignment
0 Petitions
Accused Products
Abstract
In a memory controller such as a system controller including a level-3 cache memory for common use of data with a level-2 cache memory within a CPU by forming a chip set such as a server, an effective memory controller and a control method are realized to store the necessary data into the level-2 cache memory of the CPU with a single access, thereby reducing or eliminating deterioration of performance and suppression of throughput caused by memory latency.
17 Citations
24 Claims
-
1. A memory controller connected to at least one CPU including a first cache memory and a main memory to execute a process for a read request from any CPU, said controller comprising:
-
a second cache memory; and
a control block respectively issuing a read request to a storing area of a data block within the first cache memory or the second cache memory as an object of the read request and a storing area of other data block included in an entry to which the data block belongs. - View Dependent Claims (4, 5)
-
-
2. A memory controller connected to at least one CPU including a first cache memory and a main memory to execute a process for a read request from any CPU, said controller comprising:
-
a second cache memory; and
a control block for comparing a valid status of a data block in the first and said second cache memories with the read request from any CPU and issuing a read request to respective storing areas when the data block for the read request and other data blocks included in an entry to which a relevant data block belongs and stored into a plurality of storing areas.
-
-
3. A memory controller connected to at least one CPU including a first cache memory and a main memory to execute a process for a read request from any CPUs, said controller comprising:
-
a second cache memory;
a first tag memory storing a valid status of each data block included in the first cache memory to which a CPU belongs;
a second tag memory storing the valid status of each data block included in the second cache memory; and
a control block comparing contents of the first and said second tag memories with a read request from any CPU and issuing a read request to respective storing areas when the data block corresponding to the read request and other data blocks included in an entry to which a relevant data block belongs are stored into a plurality of storing areas included within the first and second cache memories.
-
-
6. An information processor, comprising:
-
at least one CPU;
a first cache memory provided to the CPU to include a plurality of entries formed of a plurality of data blocks;
a main memory;
at least one memory controller for processing read requests from the CPU; and
a second cache memory provided to the memory controller to include a plurality of entries formed of a plurality of data blocks; and
wherein the memory controller issues a read request to respective storing areas within the first or said second cache memories when a data block corresponding to the read request and other data blocks included in an entry to which a relevant data block belongs are scattered and stored into a plurality of storing areas. - View Dependent Claims (7, 8, 11, 12)
-
-
9. A memory control method for a memory controller to execute a read request at least from one CPU, comprising:
-
receiving the read request issued from any CPU;
comparing a valid status of a data block included in a cache memory within the CPU and the valid status of the data block included in the cache memory within the memory controller with the read request; and
issuing the read request to respective storing areas within the first or second cache memories when a comparison result proves that the data block corresponding to the read request and other data blocks included in an entry to which a relevant data block belongs are scattered and stored into a plurality of storing areas. - View Dependent Claims (10)
-
-
13. A memory controller connected to at least one CPU and a main memory and also connected to other memory controllers via a data transmission path and including a first cache memory in which an entry is formed of a plurality of data blocks and a first tag memory for storing a valid flag of data blocks in order to execute a read request from the CPU in a unit of a data block or entry, a second tag memory for storing, by a copying process, contents of tag memory included in all CPUs connected in direct and a first pipeline for inspecting storing area of the valid data corresponding to a read request by comparing the contents of the first and said second tag memories with the read request issued from any CPU connected in direct, wherein the read request is issued to respective storing areas when a inspection result proves that the data block corresponding to the read request and the other data blocks included in an entry to which a relevant data block belongs are scattered and stored into a plurality of storing areas.
-
14. A method for retrieving data from a layered data storage system, comprising:
reading data blocks from a main data storage area included within the system only when said blocks are absent or invalid in any other data storage area.
-
15. A method for retrieving data from a layered data storage system, comprising:
-
receiving a request to read an entry included within a data block containing valid and invalid entries, wherein at least one valid entry is stored in a data storage area different from a data storage area of at least one invalid entry;
reading said invalid entries from a first storage area to convert said invalid entries to valid; and
merging said converted entries with valid entries from a second storage area. - View Dependent Claims (16, 17, 18)
-
-
19. An apparatus for allowing effective memory control, comprising:
a unit merging a valid entry included within a data block of a first data storage area with a previously invalid entry retrieved from a second data storage area. - View Dependent Claims (20, 21, 22, 23)
-
24. A data buffer, comprising:
-
a data block representing an entry having a valid status; and
a data block representing an entry having an invalid status.
-
Specification