Generating error correcting code (ECC) data using an ECC corresponding to an identified ECC protection level
First Claim
Patent Images
1. An apparatus, comprising:
- a cache configured to store error correcting code (ECC) data; and
a controller coupled to the cache, the controller configured to;
identify an ECC protection level from a plurality of ECC protection levels for a block of data that is to be stored in a memory device,generate ECC data for the block of data that is to be stored in the memory device using an ECC corresponding to the identified ECC protection level,store the generated ECC data in the cache as a portion of an ECC word, the ECC word including another portion that stores ECC data generated for a different block of data,store the block of data in the memory device, andstore the ECC word in the memory device when the ECC word is a complete data word associated with the memory device.
4 Assignments
0 Petitions
Accused Products
Abstract
A memory controller provides error correcting code (ECC) capability for a memory. In some implementations, the controller is configured to identify an ECC protection level from a plurality of ECC protection levels for data that is to be stored in the memory device, generate ECC data for the data that is to be stored in the memory device using an ECC corresponding to the identified ECC protection level, store the generated ECC data in the cache, and store the data in the memory device.
-
Citations
16 Claims
-
1. An apparatus, comprising:
-
a cache configured to store error correcting code (ECC) data; and a controller coupled to the cache, the controller configured to; identify an ECC protection level from a plurality of ECC protection levels for a block of data that is to be stored in a memory device, generate ECC data for the block of data that is to be stored in the memory device using an ECC corresponding to the identified ECC protection level, store the generated ECC data in the cache as a portion of an ECC word, the ECC word including another portion that stores ECC data generated for a different block of data, store the block of data in the memory device, and store the ECC word in the memory device when the ECC word is a complete data word associated with the memory device. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system, comprising:
-
a memory device; and a controller configured to; determine that a level of error correcting code (ECC) protection to be applied to data stored in the memory device is to be switched from a first ECC protection level to a second ECC protection level, modify allocation of a portion of the memory device to redistribute the portion between an application data region that stores application data and an ECC data region that stores ECC data, generate ECC data for system data stored in the memory device using an ECC associated with the second ECC protection level, store the ECC data in the ECC data region, and switch from the first ECC protection level to the second ECC protection level, wherein the controller configured to generate the ECC data for the system data stored in the memory device using the ECC associated with the second ECC protection level comprises the controller configured to; read the system data from the memory device, perform error correction on the system data using an ECC and ECC data associated with the first ECC protection level, and generate ECC data for the corrected system data using the ECC associated with the second ECC protection level. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method, comprising:
-
determining that a level of error correcting code (ECC) protection to be applied to data stored in the memory device is to be switched from a first ECC protection level to a second ECC protection level; modifying allocation of a portion of the memory device to redistribute the portion between an application data region that stores application data and an ECC data region that stores ECC data; generating ECC data for system data stored in the memory device using an ECC associated with the second ECC protection level; storing the ECC data in the ECC data region; and switching from the first ECC protection level to the second ECC protection level, wherein generating the ECC data for the system data stored in the memory device using the ECC associated with the second ECC protection level comprises; reading the system data from the memory device; performing error correction on the system data using an ECC and ECC data associated with the first ECC protection level; and generating ECC data for the corrected system data using the ECC associated with the second ECC protection level. - View Dependent Claims (14, 15, 16)
-
Specification