IP Library Granted Patent US 8,423,709
Granted Patent B2
US 8,423,709 · App. 12/716,547 · Granted Apr 16, 2013

Controller

Inventors: Tetsuro Kimura (Tokyo, JP); Shinichi Kanno (Tokyo, JP); Shigehiro Asano (Kanagawa, JP); Kazuhiro Fukutomi (Kanagawa, JP)
Assignee: Kabushiki Kaisha Toshiba
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,423,709
App. No.
12/716,547
Granted
Apr 16, 2013
Kind
B2
Abstract

A controller stores therein a sector address set indicating logical storage positions within a nonvolatile-memory storage area; page addresses indicating, in units of pages, physical storage positions within the nonvolatile-memory storage area; and pieces of management information each indicating whether one or more special sectors each being either a bad sector or a trimmed sector trimmed by a TRIM command are present in the corresponding page, while associating them with each other. When an access to a specified sector address is requested, the device refers to the piece of management information and judges whether any special sector is present in the page identified by the page address corresponding to the sector address. The device generates predetermined response data if the page contains one or more special sectors and accesses the nonvolatile-memory storage position corresponding to the sector address if the page contains no special sector.

Claims (32)

1. A controller, comprising:

a first storing unit that stores therein page addresses indicating, in units of pages, physical storage positions within the storage area of a nonvolatile memory, and pieces of management information each indicating whether one or more special sectors, each being either a bad sector or a trimmed sector trimmed by a TRIM command, are present in a corresponding one of the pages, while a set of sector addresses each indicating a logical storage position within a storage area of the nonvolatile memory, a page address, and the pieces of management information are associated with each other;

a first judging unit that, in a case where an access to a specified sector address has been requested, refers to a corresponding one of the pieces of management information and judges whether one or more special sectors are present in a page identified by the page address corresponding to the specified sector address;

a generating unit that, in a case where one or more special sectors are present in the identified page, generates predetermined response data; and

a controlling unit that, in a case where no special sector is present in the identified page, accesses the storage position in the nonvolatile memory that corresponds to the specified sector address.

2. The controller according to claim 1 , further comprising a first updating unit that, in a case where it has been requested that a specified first sector address should be registered as a special sector, updates a corresponding one of the pieces of management information stored in the first storing unit so as to indicate that one or more special sectors are present in a page identified by the page address corresponding to the specified first sector address.

3. The controller according to claim 2 , wherein

each of the pieces of management information indicates one of the following situations: no special sector is present in the corresponding page, special sectors are present in an entirety of the corresponding page, and one or more special sectors are present in a part of the corresponding page, and

the first updating unit includes

a second judging unit that, in the case where it has been requested that the specified first sector address should be registered as a special sector, judges whether registering the specified first sector address results in a situation where special sectors are present in an entirety of the page identified by the page address corresponding to the specified first sector address; and

a second updating unit that, in a case where it has been judged that the registration results in the situation where special sectors are present in the entirety of the page, updates the corresponding one of the pieces of management information stored in the first storing unit so as to indicate that special sectors are present in the entirety of the page and that, in a case where it has been judged that the registration results in the situation where special sectors are present in a part of the page, updates the corresponding one of the pieces of management information stored in the first storing unit so as to indicate that special sectors are present in a part of the page.

4. The controller according to claim 3 , further comprising a second storing unit storing therein the sector addresses of the special sectors, wherein

the first judging unit includes

a third judging unit that, in a case where an access to a specified sector address has been requested, refers to a corresponding one of the pieces of management information and judges whether one or more special sectors are present in a page identified by the page address corresponding to the specified sector address; and

a fourth judging unit that, in a case where it has been judged that one or more special sectors are present in the page, judges whether the specified sector address is stored in the second storing unit,

the generating unit generates the response data in the case where it has been judged that the specified sector address is stored in the second storing unit, and

in the case where it has been judged that the specified sector address is not stored in the second storing unit, the controlling unit accesses the storage position that corresponds to the specified sector address.

5. The controller according to claim 4 , further comprising a storing controlling unit that, in a case where it has been requested that a specified first sector address should be registered as a special sector, stores the specified first sector address into the second storing unit.

6. The controller according to claim 5 , wherein in a case where it has been requested that a specified first sector address should be registered as a special sector, and also, it has been judged that registering the specified first sector address does not result in a situation where special sectors are present in an entirety of a page identified by the page address corresponding to the specified first sector address, the storing controlling unit stores the specified first sector address into the second storing unit.

7. The controller according to claim 6 , wherein in a case where it has been requested that a specified first sector address should be registered as a special sector, and also, it has been judged that registering the specified first sector address results in the situation where special sectors are present in the entirety of the page identified by the page address corresponding to the specified first sector address, the storing controlling unit deletes all sector addresses that correspond to the page address from the second storing unit.

8. The controller according to claim 7 , wherein

in a case where it has been requested that data should be written into a specified sector address, the third judging unit refers to a corresponding one of the pieces of management information and judges whether one or more special sectors are present in the corresponding page,

in a case where it has been judged that the specified sector address is stored in the second storing unit, the controlling unit accesses one of the storage positions that corresponds to the specified sector address and writes the data into the storage position,

in the case where it has been judged that the specified sector address is stored in the second storing unit, the generating unit generates response data indicating that writing of the data has been completed, and

in the case where the specified sector address is stored in the second storing unit, the storing controlling unit deletes the specified sector address from the second storing unit.

9. The controller according to claim 8 , wherein

the first updating unit further includes

a fifth judging unit that, in a case where it has been requested that data should be written into a specified sector address, and also, it has been judged that the specified sector address is stored in the second storing unit, judges whether any of other sector addresses corresponding to the page address that corresponds to the specified sector address is stored in the second storing unit; and

a third updating unit that, in a case where it has been judged that none of the other sector addresses is stored in the second storing unit, updates a corresponding one of the pieces of management information stored in the first storing unit so as to indicate that no special sector is present in a corresponding one of the pages and that, in a case where it has been judged that one or more of the other sector addresses are stored in the second storing unit, updates the corresponding one of the pieces of management information stored in the first storing unit so as to indicate that special sectors are present in a part of the corresponding one of the pages.

10. The controller according to claim 9 , wherein

in a case where it has been requested that data should be written into a specified sector address, the third judging unit refers to a corresponding one of the pieces of management information and judges which one of the following situations applies: no special sector is present in the corresponding page, special sectors are present in an entirety of the corresponding page, and special sectors are present in a part of the corresponding page, and

in a case where it has been judged that special sectors are present in the entirety of the corresponding page, the storing controlling unit stores the other sector addresses corresponding to the page address that corresponds to the specified sector address into the second storing unit.

Assignments (5)
MERGER Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: K.K. PANGEA
Reel/Frame 055659/0471 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 055669/0001 →
CHANGE OF NAME AND ADDRESS Recorded Jan 22, 2021
From: K.K. PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 055669/0401 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2017
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 043709/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2010
From: KIMURA, TETSURO; KANNO, SHINICHI; ASANO, SHIGEHIRO; FUKUTOMI, KAZUHIRO
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 024245/0357 →
Priority Claims (1)
JP 2009-209224 · Sep 10, 2009 · national
Continuity (1)
Related Publication 20110060863A1 · Mar 10, 2011