# US 2010/0169743 A1 · Error correction in a solid state disk

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2010/0169743 A1
- Document ID: US20100169743A1
- Status: Published application
- Kind: A1
- Application number: 12/319,208
- Filed: 2008-12-31
- Published: 2010-07-01
- Earliest claimed: 2008-12-31
- Assignees: Intel Corporation
- Inventors: Andrew Wayne Vogan; Richard Coulson
- Web page: https://patentgrep.com/patent/US20100169743A1

## CPC

- G11B 20/1833: {by adding special lists or symbols to the coded information (G11B20/1806, G11B20/1866 take precedence)}
- G06F 11/1048: {using arrangements adapted for a specific error detection or correction feature}
- G06F 11/108: {Parity data distribution in semiconductor storages, e.g. in SSD}
- G11B 2220/61: wherein solid state memory is used for storing A/V content
- G11B: INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER (recording measured values in a way that does not require playback through a transducer G01D9/00; recording or playback apparatus using mechanically marked tape, e.g. punched paper tape, or using unit records, e.g. punched or magnetically marked cards G06K; transferring data from one type of record carrier to another G06K1/18; circuits for coupling output of reproducer to radio receiver H04B1/20; gramophone pick-ups or like acoustic electromechanical transducers or circuits therefor H04R)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

In some embodiments, a solid state disk includes a non-volatile memory and a controller. The controller performs ECC on data stored on the non-volatile memory, and performs a parity operation on the data if the ECC cannot correct the data. Other embodiments are described and claimed.

## Claims

### Claim 1

A solid state disk comprising:
a non-volatile memory; and
a controller to perform ECC on data stored on the non-volatile memory, and to perform a parity operation on the data if the ECC cannot correct the data.

### Claim 2 (depends on 1)

The solid state disk of claim 1, wherein the parity operation comprises an XOR operation.

### Claim 3 (depends on 1)

The solid state disk of claim 1, the controller to write data on the non-volatile memory, and to generate and store ECC and parity information on the non-volatile memory as the data is written.

### Claim 4 (depends on 1)

The solid state disk of claim 1, wherein the non-volatile memory is divided into a plurality of slots that each represents an engine capable of concurrent work.

### Claim 5 (depends on 4)

The solid state disk of claim 4, wherein the non-volatile memory is further divided into a plurality of pages each having a number of sectors, wherein data is written on a page in sector order in a first slot, and when the page is filled, is then written on the same page in a second slot.

### Claim 6 (depends on 4)

The solid state disk of claim 4, wherein one or more of the plurality of slots is reserved for parity information.

### Claim 7 (depends on 5)

The solid state disk of claim 5, wherein one or more of the plurality of slots is reserved for parity information.

### Claim 8

A system comprising:
a host; and
a solid state disk including:
a non-volatile memory; and
a controller to perform ECC on host data stored on the non-volatile memory, and to perform a parity operation on the data if the ECC cannot correct the data.

### Claim 9 (depends on 8)

The system of claim 8, wherein the parity operation comprises an XOR operation.

### Claim 10 (depends on 8)

The system of claim 8, the controller to write data on the non-volatile memory, and to generate and store ECC and parity information on the non-volatile memory as the data is written.

### Claim 11 (depends on 8)

The system of claim 8, wherein the non-volatile memory is divided into a plurality of slots that each represents an engine capable of concurrent work.

### Claim 12 (depends on 11)

The system of claim 11, wherein the non-volatile memory is further divided into a plurality of pages each having a number of sectors, wherein data is written on a page in sector order in a first slot, and when the page is filled, is then written on the same page in a second slot.

### Claim 13 (depends on 11)

The system of claim 11, wherein one or more of the plurality of slots is reserved for parity information.

### Claim 14 (depends on 12)

The system of claim 12, wherein one or more of the plurality of slots is reserved for parity information.

### Claim 15

A method comprising:
performing ECC on data stored on a non-volatile memory of a solid state disk; and
performing a parity operation on the data if the ECC cannot correct the data or if a program failure occurs.

### Claim 16 (depends on 15)

The method of claim 15, wherein the parity operation comprises an XOR operation.

### Claim 17 (depends on 15)

The method of claim 15, further comprising:
writing data on the non-volatile memory;
generating ECC and parity information; and
storing the ECC and parity information on the non-volatile memory as the data is written.

### Claim 18 (depends on 15)

The method of claim 15, further comprising dividing the non-volatile memory into a plurality of slots that each represents an engine capable of concurrent work.

### Claim 19 (depends on 18)

The method of claim 18, further comprising:
dividing the non-volatile memory into a plurality of pages each having a number of sectors; and
writing data on a page in sector order in a first slot, and when the page is filled, writing data on the same page in a second slot.

### Claim 20 (depends on 18)

The method of claim 18, further comprising reserving one or more of the plurality of slots for parity information.

### Claim 21 (depends on 19)

The method of claim 19, further comprising reserving one or more of the plurality of slots for parity information.
