Memory controller utilizing an error coding dispersal function
First Claim
1. A memory controller comprises:
- a memory control processing module including;
an input/request unit;
a memory processor unit;
a memory interface;
temporary memory; and
an output unit, wherein;
the input/request unit receives a memory access request regarding a data segment and forwards the memory access request to the memory processor unit;
the memory processor unit is operable to;
interpret the memory access request to determine whether;
an error coding dispersal function is to be applied to the data segment to produce the error coded processed data segment;
orthe error coding dispersal function is to be applied to the error coded processed data segment to reconstruct the data segment;
orthe error coding dispersal function is not to be applied to the data segment;
orthe error coding dispersal function is not to be applied to the error coded processed data segment; and
interpret the memory access request to determine a destination of the data segment or of the error coded processed data segment, wherein the destination is one of a distributed storage processing module, the memory interface, the temporary memory, and the output unit;
generate a data routing signal based on the interpreting of the memory access request; and
the input/request unit forwards the data segment or the error coded processed data segment to the destination in accordance with the data routing signal; and
the distributed storage processing module operable to;
perform the error coding dispersal function on the data segment to produce an error coded processed data segment; and
send the error coded processed data segment to the memory control processing module.
5 Assignments
0 Petitions
Accused Products
Abstract
A memory controller comprises at least a memory control processing module and/or a distributed storage processing module. A method begins by the memory control processing module receiving a memory access request regarding a data segment. The method continues with the memory control processing module interpreting the memory access request to determine whether an error coding dispersal function of the data segment is applicable. The method continues with the memory control processing module sending the memory access request to the distributed storage processing module when the error coding dispersal function is applicable. The method continues with the distributed storage processing module performing the error coding dispersal function on the data segment to produce an error coded processed data segment. The method continues with the distributed storage processing module sending the error coded processed data segment to the memory control processing module.
88 Citations
13 Claims
-
1. A memory controller comprises:
-
a memory control processing module including; an input/request unit; a memory processor unit; a memory interface; temporary memory; and an output unit, wherein; the input/request unit receives a memory access request regarding a data segment and forwards the memory access request to the memory processor unit; the memory processor unit is operable to; interpret the memory access request to determine whether; an error coding dispersal function is to be applied to the data segment to produce the error coded processed data segment;
orthe error coding dispersal function is to be applied to the error coded processed data segment to reconstruct the data segment;
orthe error coding dispersal function is not to be applied to the data segment;
orthe error coding dispersal function is not to be applied to the error coded processed data segment; and interpret the memory access request to determine a destination of the data segment or of the error coded processed data segment, wherein the destination is one of a distributed storage processing module, the memory interface, the temporary memory, and the output unit; generate a data routing signal based on the interpreting of the memory access request; and the input/request unit forwards the data segment or the error coded processed data segment to the destination in accordance with the data routing signal; and the distributed storage processing module operable to; perform the error coding dispersal function on the data segment to produce an error coded processed data segment; and send the error coded processed data segment to the memory control processing module. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A memory controller comprises:
-
an interface for coupling to a memory device; and a processing module operably coupled to the interface, wherein the processing module is configured to function as a memory controller processing module and a distributed storage processing module, wherein; the memory control processing module is operable to receive a data segment memory transfer request from a first memory layer to a second memory layer; the memory control processing module is operable to determine whether the data segment is stored within the first memory layer in accordance with an error coding dispersal function; when the data segment is stored in accordance with the error coding dispersal function, the memory control processing module is operable to determine whether the data segment is to be stored in the second memory layer in accordance with the error coding dispersal function; when the data segment is not to be stored in the second memory layer in accordance with the error coding dispersal function, the dispersed storage processing module is operable to; retrieve a plurality of data slices from the first memory layer; convert the plurality of data slices into a reconstructed data segment; determine whether to store the reconstructed data segment in accordance with a second error coding dispersal function in the second memory layer; when the reconstructed data segment is to be stored in accordance with the second error coding dispersal function, perform the second error coding dispersal function on the reconstructed data segment to produce a second plurality of data slices; and send the second plurality of data slices to the second memory layer. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
Specification