# US 7,613,894 B2 · Power loss recovery in non-volatile memory

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

- Number: US 7,613,894 B2
- Document ID: US7613894B2
- Status: Granted
- Kind: B2
- Application number: 11/218,371
- Filed: 2005-09-02
- Published: 2007-03-08
- Granted: 2009-11-03
- Earliest claimed: 2005-09-02
- Inventors: Hong Yu Wang; John Rudelic
- Web page: https://patentgrep.com/patent/US7613894B2

## CPC

- G06F 3/064: {Management of blocks}
- G06F 3/0619: {in relation to data integrity, e.g. data losses, bit errors}
- G06F 3/0679: {Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method that may be used in a no bit-twiddling file system of a non-volatile memory. The method comprises writing to a non-volatile memory a data sector of a file system, and writing to the non-volatile memory of a control sector that comprises a first seed at a start of the control sector, a pointer to the data sector and a second seed at an end of the control sector. The method further comprises updating a link structure table entry associated with the control sector.

## Claims

### Claim 1

A system comprising:
a non-volatile memory comprising a file system;
a volatile memory comprising a link structure, wherein the link structure includes a link state of a sector in the file system; and
a processor to determine a real state of a sector of the non-volatile memory based on the link state of the sector and a program state of the sector, wherein
the real state of the sector includes whether the sector is empty, valid, invalid, or corrupt,
the link state indicates whether the sector is linked to the file system of the non-volatile memory, and
the program state indicates whether or not data has been written to the sector and, if data has been written to the sector, whether or not the writing of the data to the sector was complete.

### Claim 2 (depends on 1)

The system of claim 1, wherein the processor further to build up in the volatile memory a real state structure of the file system of non-volatile memory based on the real state of the sector.

### Claim 3 (depends on 1)

The system of claim 1, wherein the processor further to determine that the real state of the sector is valid, in response to determining that the sector is linked to the file system.

### Claim 4 (depends on 1)

The system of claim 1 wherein the processor further to determine that the real state of the sector is empty, in response to determining that the sector is unlinked to the file system and each bit of the sector has an initial value.

### Claim 5 (depends on 1)

The system of claim 1 wherein the processor further to determine that the real state of the sector is invalid, in response to determining that the sector is unlinked to the file system and at least one bit of the sector has an updated value.

### Claim 6 (depends on 1)

The system of claim 1 wherein the processor further to determine that a control sector is linked to the file system, in response to determining that a link structure sector, indicating the link structure of the file system, comprises a pointer to the control sector.

### Claim 7 (depends on 1)

The system of claim 1 wherein the processor further to determine that a data sector is linked to the file system, in response to determining that a linked control sector comprises a pointer to the data sector.

### Claim 8 (depends on 1)

The system of claim 1 wherein the processor further to select a valid link structure sector that comprises a first seed at a start of the sector, a second seed at an end of the sector, a type field indicating that the type of the sector is a link structure sector, and has a newest version.

### Claim 9 (depends on 1)

The system of claim 1 wherein the processor further to transfer to the volatile memory a link state of the sector from a valid shut down info sector that indicates a normal shut down in the system.

### Claim 10 (depends on 9)

The system of claim 9 wherein the processor further to clear the valid shut down info sector so that the shut down info sector becomes empty.
