IP Library Granted Patent US 8,984,375
Granted Patent B2
US 8,984,375 · App. 13/713,442 · Granted Mar 17, 2015

Semiconductor storage device, method for controlling the same and control program

Inventor: Daisuke Hashimoto (Yokohama, JP)
Assignee: Kabushiki Kaisha Toshiba
G06F11/004G11C16/3404G11C29/42G11C2029/0409G11C2029/0411
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,984,375
App. No.
13/713,442
Granted
Mar 17, 2015
Kind
B2
Abstract

According to one embodiment, a semiconductor memory stores a program for causing a memory controller to operate in at least one of first and second modes. In the first mode, for each of the blocks, the memory controller autonomously erases and writes data and reads the written data, and determines that the block or the semiconductor storage device is defective when a count of errors in the read data exceeds a correction capability or a threshold. In the second mode, when error correction of read substantial data fails, the memory controller reads the substantial data which failed in the error correction using a read level shifted from the present read level.

Claims (51)

1. A semiconductor storage device comprising:

a semiconductor memory comprising blocks and a controller, the blocks including memory cells; and

a memory controller,

wherein,

the controller writes data in the memory cells, reads data from the memory cells, and erases data in the memory cells, and shifts a read level for data read in accordance with control by the memory controller;

the semiconductor memory stores a program for causing the memory controller to operate in at least one of a first mode and a second mode; and

the memory controller,

writes substantial data and redundant data for correcting an error in the substantial data in the semiconductor memory,

reads substantial data and corresponding redundant data from the semiconductor memory, and corrects an error, if any, in the read substantial data in accordance with the read redundant data,

reads the program when power is supplied to the semiconductor storage device, and is configured to enter the first or second mode in accordance with the program when the program is executed by the memory controller,

in the first mode, for each of the blocks, autonomously erases data, writes data, and reads the written data, counts errors in the read data, and determines that the block or the semiconductor storage device is defective when the count of errors in the read data exceeds a correction capability or a threshold of the memory controller, and

in the second mode, when error correction of substantial data read from the semiconductor memory fails, reads the substantial data which failed in the error correction using a read level shifted from the present read level.

2. The device of claim 1 , wherein in the first mode when correcting errors in read data fails, read of the data which failed in the error correction using a read level shifted from the present read level is not executed.

3. The device of claim 1 , wherein in the first mode the memory controller autonomously reads data before the data erase, and then determines that the block or the semiconductor storage device is defective when a count of errors in the read data exceeds a correction capability or the threshold of the memory controller.

4. The device of claim 1 , wherein in the first mode the memory controller autonomously reads data in the blocks, and when error correction of the read data fails, the memory controller reads the data which failed in the error correction using a read level shifted from the present read level.

5. The device of claim 4 , wherein in the first mode the memory controller:

when correction of errors in data read from a first area of the semiconductor memory fails, reads the data which failed in the error correction using a read level shifted from the present read level, and

when correction of errors in data read from a second area of the semiconductor memory fails, does not read the data which failed in the error correction using a read level shifted from the present read level.

6. The device of claim 1 , wherein whether the program causes the semiconductor storage device to operate in the first or second mode after cut off of power and the following resupply of the power to the semiconductor storage device is switched by a received command.

7. The device of claim 1 , further comprising a temperature sensor, wherein the memory controller enters the first mode after a temperature measured by the temperature sensor exceeds a second threshold.

8. A method of controlling a semiconductor storage device comprising a semiconductor memory and a memory controller, the semiconductor memory comprising blocks including memory cells, the method comprising:

in a first mode,

for each of the blocks, autonomously erasing data, writing data, and reading the written data and counting errors in the read data to determine that the block or the semiconductor storage device is defective when the count of errors in the read data exceeds a correction capability or a threshold of the memory controller;

in a second mode,

writing substantial data and redundant data for correcting an error in the substantial data in the semiconductor memory,

reading substantial data and corresponding redundant data from the semiconductor memory, correcting an error, if any in the read substantial data in accordance with the read redundant data,

when error correction of substantial data read from the semiconductor memory fails, reading the substantial data which failed in the error correction using a read level shifted from the present read level; and

writing in the semiconductor memory a program which, when executed by the memory controller, causes the memory controller to operate in the first mode or a program which, when executed by the memory controller, causes the memory controller to operate in the second mode, or writing in the semiconductor memory a program which, when executed by the memory controller, causes the memory controller to operate in a selected one of the first and second modes.

9. The method of claim 8 , wherein in the first mode when correcting errors in read data fails, read of the data which failed in the error correction using a read level shifted from the present read level is not executed.

10. The method of claim 8 , wherein in the first mode data is autonomously read before the data erase, and it is determined that the block or the semiconductor storage device is defective when a count of errors in the read data exceeds a correction capability or the threshold of the memory controller.

11. The method of claim 8 , wherein in the first mode, data is autonomously read for the blocks, and when error correction of the read data fails, the data which failed in the error correction is read using a read level shifted from the present read level.

12. The method of claim 8 , wherein in the first mode:

when correction of errors in data read from a first area of the semiconductor memory fails, the data which failed in the error correction is read using a read level shifted from the present read level, and

when correction of errors in data read from a second area of the semiconductor memory fails, read of the data which failed in the error correction using a read level shifted from the present read level is not executed.

13. The method of claim 8 , wherein the first mode is entered after a temperature measured by a temperature sensor in the semiconductor storage device exceeds a second threshold.

14. A non-transitory storage medium storing a program for a memory controller in a semiconductor storage device which comprises a semiconductor memory and the memory controller, the semiconductor memory comprising blocks and a controller, the blocks including memory cells, wherein

the memory controller,

writes substantial data and redundant data for correcting an error in the substantial data in the semiconductor memory,

reads substantial data and corresponding redundant data from the semiconductor memory,

corrects an error, if any, in the read substantial data in accordance with the read redundant data, and

when error correction of substantial data read from the semiconductor memory fails, reads the substantial data which failed in the error correction using a read level shifted from the present read level, and

said program when executed by the memory controller causes the memory controller to enter a first mode in which the memory controller, for each of the blocks, to autonomously erase data, to write data, to read the written data, to count errors in the read data, and to determine that the block or the semiconductor storage device is defective when the count of errors in the read data exceeds a correction capability or a threshold of the memory controller.

15. The medium of claim 14 , wherein the program does not cause the memory controller in the first mode to, when correcting errors in read data fails, read the data which failed in the error correction using a read level shifted from the present read level.

16. The medium of claim 15 , wherein the program causes the memory controller to, when correcting errors in read data using a read level shifted from the present level is successful, refresh the read data, and

the program does not cause the memory controller in the first mode to, when correcting errors in read data fails, refresh the read data.

17. The medium of claim 14 , wherein the program causes the memory controller in the first mode to autonomously read data before the data erase, and then determine that the block or the semiconductor storage device is defective when a count of errors in the read data exceeds a correction capability or the threshold of the memory controller.

18. The medium of claim 14 , wherein the program causes the memory controller in the first mode to autonomously read data in the blocks, and, when error correction of the read data fails, to read the data which failed in the error correction using a read level shifted from the present read level.

19. The medium of claim 14 , wherein:

when correction of errors in data read from a first area of the semiconductor memory fails, the program causes the memory controller in the first mode to read the data which failed in the error correction using a read level shifted from the present read level, and

when correction of errors in data read from a second area of the semiconductor memory fails, the program does not cause the memory controller in the first mode to read the data which failed in the error correction using a read level shifted from the present read level.

20. The medium of claim 14 , wherein the program causes the memory controller to enter the first mode after a temperature measured by a temperature sensor in the semiconductor storage device exceeds a second threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2012
From: HASHIMOTO, DAISUKE
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 029464/0268 →
Priority Claims (1)
JP 2011-275866 · Dec 16, 2011 · national
Continuity (1)
Related Publication 20130159785A1 · Jun 20, 2013