Data storage and replay apparatus
First Claim
1. A data storage and replay device comprising:
- a storage medium including a plurality of regions;
an error rate assessment unit configured to generate information about a prediction of an error rate of retrieval for respective ones of the plurality of regions based on measurements of performance of the respective ones of the plurality of regions of the storage medium during use, the measurements of performance being made repeatedly during a useful life of the storage medium based on data for real time signal rendering; and
an encoder configured to;
perform encoding of received data into each of a plurality of error correcting codes (ECCs);
divide the encoded data into blocks having a similar predetermined first size; and
store the encoded received data into the plurality of regions, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with the encoded received data.
7 Assignments
0 Petitions
Accused Products
Abstract
A data storage and replay device uses measurements of the evolution of performance of the storage medium (typically a flash memory circuit) to predict an error rate of retrieval from a region of the storage medium. The prediction is used as a basis for dynamically selecting an ECC for encoding the data prior to storage of the data. The ECC is selected from a plurality of available ECC'"'"'s so that a fastest encodable ECC is selected that is predicted to produce no more than a predetermined post-decoding error rate given the information. On decoding the data, which is typically audio or video data, is decoded and replayed at a predetermined speed. In another embodiment, the data stored using a plurality of ECC'"'"'s together and an ECC is selected dynamically for decoding, so that an output data rate can be maximized or power consumption on replay can be minimized.
-
Citations
13 Claims
-
1. A data storage and replay device comprising:
-
a storage medium including a plurality of regions; an error rate assessment unit configured to generate information about a prediction of an error rate of retrieval for respective ones of the plurality of regions based on measurements of performance of the respective ones of the plurality of regions of the storage medium during use, the measurements of performance being made repeatedly during a useful life of the storage medium based on data for real time signal rendering; and an encoder configured to; perform encoding of received data into each of a plurality of error correcting codes (ECCs); divide the encoded data into blocks having a similar predetermined first size; and store the encoded received data into the plurality of regions, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with the encoded received data. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data storage and transmission device comprising:
-
a storage medium comprising a plurality of regions; an error rate assessment unit configured to generate information about a prediction of an error rate of retrieval for respective ones of the regions based on measurements of performance of the respective ones of the plurality of regions of the storage medium during use, the measurements of performance being made repeatedly during a useful life of the storage medium based on data for real time signal rendering; and a decoder configured to perform decoding of data, which is retrieved from the plurality of regions of the storage medium according to a plurality of error correcting codes (ECCs), the decoder selecting one ECC for each particular region from the plurality of available ECC'"'"'s dependent on the information for the particular region from the error rate assessment unit obtained during the useful life of the storage medium, wherein the data is divided into blocks having a similar predetermined first size, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with encoded received data. - View Dependent Claims (8, 9, 10)
-
-
11. A method of writing data into a storage medium, the method comprising:
-
gathering, repeatedly during a useful life of the storage medium, measurements of performance for a plurality of regions of the storage medium based on data for real time signal rendering; generating information about a prediction of an error rate of retrieval for respective ones of the regions based on the measurements; encoding received data according to each of a plurality of error correcting codes (ECCs); dividing the encoded data into blocks having a similar predetermined first size; and storing the encoded received data into the respective one of the regions, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with the encoded received data.
-
-
12. A method of reading data from a storage medium, the method comprising:
-
gathering, repeatedly during a useful life of the storage medium, measurements of performance for a plurality of regions of the storage medium based on data for real time signal rendering; generating information about a prediction of an error rate of retrieval for respective ones of the regions based on the measurements; selecting for each particular region a plurality of error correcting codes ECCs that are supported by a decoder; decoding data retrieved from a region of the storage medium with the decoder according to the selected ECC; and selecting one ECC for the region from the plurality of ECCs dependent on the information for the particular region from an error rate assessment unit obtained during the useful life of the storage medium, wherein the data is divided into blocks having a similar predetermined first size, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with encoded received data.
-
-
13. A non-transitory computer program product comprising machine instructions which, when loaded into a programmable computer, cause the computer to:
-
gather, repeatedly during a useful life of a storage medium, measurements of performance for a plurality of regions of the storage medium based on data for real time signal rendering; generate information about a prediction of an error rate of retrieval for respective ones of the regions-based on the measurements; encode received data according to each of a plurality of error correcting codes (ECCs) with an encoder before storage of the encoded received data into the respective one of the regions; divide the encoded data into blocks having a similar predetermined first size; and store the encoded received data into the respective one of the regions, each of the plurality of regions having a similar predetermined second size that is sufficiently larger than the first size to also store additional data associated with the encoded received data.
-
Specification