TN-FC-32: e.MMC Device Health Report

Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Introduction
Technical Note
e·MMC Memory Device Health Report
Introduction
This technical note describes the Device Health Report procedure for Micron e·MMC™
memory devices. NAND cells are stressed by the continuous use of e·MMC devices.
Therefore, it is important to understand how e·MMC usage affects the device and device
data. The Device Health Report is a resource that enables customers to monitor a device's media usage and the length of time the device can be cycled. The devices that apply
to this technical note are listed in the table below:
Table 1: e·MMC Devices
Density
(e·MMC)
Density
(LPDDR)
NAND Information
(Die x Litography
x Cell Type)
e·MMC
Controller
PRV
PNM
MTFC4GACAAEA-WT
4GB
–
1 x 20nm MLC
PS8210
1.2
P1J54A
MTFC8GACAAEA-WT
8GB
–
2 x 20nm MLC
MT29PZZZ4D4BKESK-18 W.94H
4GB
4Gb
1 x 20nm MLC
MT29PZZZ8D5BKFTF-18 W.95L
8GB
8Gb
2 x 20nm MLC
MT29TZZZ8D4BKFRL-125 W.94K
4GB
8Gb
1 x 20nm MLC
MT29PZZZ8D4BKFSK-18 W.94L
4GB
8Gb
1 x 20nm MLC
MT29TZZZ8D5BKFAH-125 W.95K
8GB
8Gb
2 x 20nm MLC
MT29TZZZ4D4BKERL-125 W.94M
4GB
4Gb
1 x 20nm MLC
Part Number
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
1
P1J55A
PS8210
1.2
P1J94H
PS8210
1.2
P1J94K
P1J95L
P1J94L
PS8210
1.2
P1J95K
P1J94M
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Products and specifications discussed herein are subject to change by Micron without notice.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Device Health Report
Device Health Report
JEDEC introduced the Device Health Report in e·MMC version 5.0. The Device Health
Report enables customers to monitor their device's media usage for the purpose of determining the device's lifetime. Micron has extended this feature to the devices mentioned in this technical note, regardless of their e·MMC version.
Table 2: Device Health Report ECSD Fields
ECSD
Field
Description
267
PRE_EOL_INFO
Indicates the device lifetime reflected by average reserved blocks
DEVICE_LIFE_TIME_EST_TYP_A
Indicates the estimation of the device lifetime that is
reflected by the averaged wear out of SLC areas relative to its maximum estimated device lifetime
DEVICE_LIFE_TIME_EST_TYP_B
Indicates the estimation of the device lifetime which is
reflected by the averaged wear out of MLC areas relative to its maximum estimated device lifetime
268
269
Pre-EOL Information Value: PRE_EOL_INFO
ECSD[267] PRE_EOL_INFO indicates the device lifetime that is reflected by average reserved blocks.
Table 3: Pre-EOL Information Value
Value
Pre-EOL Information
Description
00h
Not defined
–
01h
Normal
Normal
02h
Warning
Consumed 80% of the reserved block
03h
Urgent
Consumed 90% of the reserved block
All other values
Reserved
–
Device Lifetime Estimation Value: DEVICE_LIFE_TIME_EST
ECSD[268] and ECSD[269] provide an estimate of the device lifetime, reflected by the
average wear out of memory in SLC and MLC areas, relative to their maximum estimated device lifetime.
Table 4: Device Lifetime Estimation Value
Value
Description
00h
Not defined
01h
0% to 10% of device lifetime used
02h
10% to 20% of device lifetime used
03h
20% to 30% of device lifetime used
04h
30% to 40% of device lifetime used
05h
40% to 50% of device lifetime used
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
2
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Device Health Report
Table 4: Device Lifetime Estimation Value (Continued)
Value
Description
06h
50% to 60% of device lifetime used
07h
60% to 70% of device lifetime used
08h
70% to 80% of device lifetime used
09h
80% to 90% of device lifetime used
0Ah
90% to 100% of device lifetime used
0Bh
Exceeded the maximum estimated device lifetime
All other values
Reserved
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
3
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
Additional Device Health Commands
Micron offers an additional set of commands that go beyond the JEDEC Device Health
Report. These additional DEVICE HEALTH commands are implemented using the generic CMD56 command and they return a significant amount of useful information
about the status of the NAND device, including the following:
• Bad block counters: Initial bad block count, run-time bad block count, and remaining
spare block count
• Block erase counters: Minimum, maximum, average, and total of block erase events
in the MLC and SLC areas
This information can be retrieved issuing a unique CMD56 GEN_CMD. The DEVICE
HEALTH command can be issued multiple times during the same power-on cycle. The
Micron specific command argument and response format ensure access to device
health information.
Figure 1: Device Health Command Flowchart
Start
CMD16: SET_BLOCKLEN
Block length = 512 bytes
CMD56: GEN_CMD
Argument [31:0]
512 bytes
Returns device data
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
4
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
Table 5: CMD56 Command Set
Bit
[0]
[7:1]
Description
Read/Write (R/W): Indicates read mode when the bit is set (1) or write mode when the bit is cleared
(0). Depending on the function, either read mode or write mode can be used.
Index = 00h: Firmware (F/W) message authentication code (MAC) signature check
Index = 1000b: Initial, run-time bad block, and remaining spare blocks count
Index = 10000b: MIN/MAX/AVG erase count
Index = 10001b: MIN/MAX/AVG erase count in the MLC area
Index = 10010b: MIN/MAX/AVG erase count in the SLC area
Index = 1000000b: Bad block information
Index = 1000001b: Total number of block erase count tables
Index = 1000010b: Block erase count retrieve
Index = 1000011b: Block address type retrieve
Index = 1010011: Buffer blocks refresh
[15:8]
Function argument #1 (1 byte)
[23:16]
Function argument #2 (1 byte)
[31:24]
Reserved
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
5
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
BAD BLOCK COUNTERS Command
The BAD BLOCK COUNTERS command indicates the total number of bad blocks (initial and later bad blocks) in the device. The BAD BLOCK COUNTERS command also retrieves the total number of remaining spare blocks that allow the bad blocks to be remapped in the device.
Table 6: BAD BLOCK COUNTERS Command
CMD56 Argument
Description
Bit[0] = 1b (read mode)
Bit[7:1] = 0001000b (CMD index)
All other bits = 0
Byte[0]: Initial bad block count (MSB)
Byte[1]: Initial bad block count (LSB)
Byte[2]: Run time bad block count (MSB)
Byte[3]: Run time bad block count (LSB)
Byte[4]: Remaining spare block count (MSB)
Byte[5]: Remaining spare block count (LSB)
Byte[511–6]: Don't care
Table 7: BAD BLOCK COUNTERS Command Response Example
Response Data (512 bytes)
Description
Initial bad block count = 1h (1 block)
Byte [5:0] = F100 0200 0100
Run-time bad block count = 2h (2 blocks)
Remaining spare block count = F1h (241 blocks)
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
6
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
BAD BLOCK DETAIL INFORMATION Command
In addition to the BAD BLOCK COUNTERS command, the BAD BLOCK DETAIL INFORMATION command retrieves information about the NAND bad blocks and the related
fail information.
Table 8: BAD BLOCK DETAIL INFORMATION Command
CMD56 Argument
Bit[0] = 1(read mode)
Bit[7:1] = 1000000 (CMD index)
Bit[15:8] = Die number1
Bit[23:16] = table number2
All other bits = 0
BAD BLOCK DETAIL INFORMATION
Byte[1:0]: Physical bad block address record
Byte[3:2]: Failed page address record
Byte[4]: Fail information3
Byte[5]: Failed bus4
Byte[7:6]: Reserved
Byte[511–6]: Don't care
Notes:
1. The die number field ([15:8]) indicates the NAND die where the bad block information is
retrieved.
2. The bad block information for each NAND is stored in one array of 250 elements, each is
8 bytes. This array is divided by four and the tables are addressed by the table number
field ([23:16]).
3. 01h or 10h = Erase failed, 02h or 11h = Program failed
4. 01h = Block located in the low bus, 02h = Block located in the high bus
Table 9: BAD BLOCK DETAIL INFORMATION Command Response Example
Response Data (512 bytes)
Byte [7:0] = 00 00 01 02 05 00 B3 01
Description
Physical bad block address record = B301h (435 address)
Failed page address record = 5000h (80 page)
Fail information = 02h (Program fail)
Failed bus = 01h (Low bus)
[7:6] = Reserved
Byte [15:8] = 00 00 00 00 00 00 00 00
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
All 8-byte entries containing 00h values indicate the end of
the bad block list for the related NAND die
7
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
BLOCK ERASE COUNTERS Command
The BLOCK ERASE COUNTERS command returns the minimum, maximum, and average total of block erases in the MLC and the SLC areas.
Table 10: BLOCK ERASE COUNTERS Command
CMD56 Argument
Block Erase Count
Bit[0] = 1 (read mode)
Bit[7:1] = 10000 (CMD index) for the total erase count
Bit[7:1] = 10001 (CMD index) for the total erase count MLC area
Bit[7:1] = 10010 (CMD index) for the total erase count SLC area
All other bits = 0
Byte[0]: Minimum block erase (MSB)
Byte[1]: Minimum block erase (LSB)
Byte[2]: Maximum block erase (MSB)
Byte[3]: Maximum block erase (LSB)
Byte[4]: Average block erase (MSB)
Byte[5]: Average block erase (LSB)
Byte[511–6]: Don't care
Table 11: BLOCK ERASE COUNTERS Command Response Example – [7:1] = 10001
Response Data (512 bytes)
Byte [5:0] = FF 00 57 01 64 00
Description
Minimum MLC block erase = 00000064h (100)
Maximum MLC block erase = 00000157h (343)
Average MLC block erase = 000000FFh (256)
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
8
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
BLOCK ERASE COUNT RETRIEVE Command
Because the general CMD56 command is only used to transfer/retrieve a single block of
data, obtaining the erase count of each block is divided into two steps:
1. Retrieve the total number of block erase count tables (1 sector/table) to determine
how many times step 2 must be issued.
2. Retrieve one block erase count table (1 sector/table).
Table 12: Step 1 of BLOCK ERASE COUNT RETRIEVE Command Format – Retrieving the Erase Count
of Each Block
CMD56 Argument
Bit[0] = 1 (read mode)
Bit[7:1] = 100 0001 (CMD index)
All other bits = 0
Expected Data
Byte[0]: Total number of block erase count tables
Byte[511–1]: Don't care
Table 13: Step 2 of BLOCK ERASE COUNT RETRIEVE Command Format – Retrieving the Erase Count
of Each Block
CMD56 Argument
Bit[0] = 1 (read mode)
Bit[7:1] = 100 0010 (CMD index)
Bit[15:8] = table index
All other bits = 0
Expected Data
Byte[1–0] - Physical Block address 1
Byte[3–2] - Physical Block address 2
⋮
Byte[255–254] - Physical Block address 128
Byte[257–256] - Erase count of Physical Block address 1
Byte[259–258] - Erase count of Physical Block address 2
⋮
Byte[511–510] - Erase count of Physical Block address 128
Table 14: Step 2 of BLOCK ERASE COUNT RETRIEVE Command Response Example – CMD index [7:1] =
100 0010
Response data (512 bytes)
Description
Byte
Byte
⋮
Byte
Byte
Physical block address 1 = 01A3h (419)
Erase count of physical block address 1 = 0040h (64)
Physical block address 2 = 0F80h (3968)
Erase count of Physical Block address 2 = 0043h (67)
[1:0] = A301h
[3:2] = 80F0h
[257:256] = 4000h
[259:258] = 4300h
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
9
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Additional Device Health Commands
BLOCK ADDRESS TYPE RETRIEVE Command
The BLOCK ADDRESS TYPE RETRIEVE command is divided into two steps:
1. Retrieve the total number of block address type tables (1 sector/table) to determine how many times step 2 must be issued.
2. Retrieve one block address type table (1 sector/table).
Step 1 of the BLOCK ADDRESS TYPE RETRIEVE command has the same command format as step 1 of the BLOCK ERASE COUNT RETRIEVE command. (Refer to Table 12 for
the format of the BLOCK ERASE COUNT RETRIEVE command.) The total number of
block address type tables and block erase count tables is identical.
Table 15: Step 2 of BLOCK ADDRESS TYPE RETRIEVE Command Format
CMD56 Argument
Expected Data
Bit[0] = 1 (read mode)
Bit[7:1] = 100 0011 (CMD index)
Bit[15:8] = Table index
All other bits = 0
Byte[1-0]: Physical block address 1
Byte[3-2]: Physical block address 2
⋮
Byte[255-254]: Physical block address 128
Byte[257-256]: Physical block address 1 type
Byte[259-258]: Physical block address 2 type
⋮
Byte[511-510]: Physical block address 128 type
Table 16: BLOCK ADDRESS TYPE RETRIEVE Command Response Example – CMD index Bit [7:1] = 100
0011
Response data (512 bytes)
Description
Byte[1:0] = A301h
Byte[3:2] = 80F0h
⋮
Byte[257:256] = 0000h
Byte[259:258] = 0001h
Physical block address = 01A3h (419)
Physical block address = 0000h (MLC)
Physical block address = 0F80h (3968)
Erase count of physical block address = 0001h (SLC)
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
10
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Appendix A: ECSD Registers
Appendix A: ECSD Registers
The JEDEC e·MMC 5.0 ECSD registers in the following table are enabled for the e·MMC
devices mentioned in this technical note. These registers are added to the ECSD registers listed in the e·MMC 4.51 datasheet on Micron's web site.
Table 17: ECSD Registers
ECSD
Field
Value
[16]
SECURE_REMOVAL_TYPE
00h
[17]
PRODUCT_STATE_AWARENESS_ENABLEMENT
01h
[21:18]
MAX_PRE_LOADING_DATA_SIZE
[25:22]
PRE_LOADING_DATA_SIZE
00000000h
[26]
FFU_STATUS
00h
[29]
MODE_OPERATION_CODES
00h
[30]
MODE_CONFIG
00h
[133]
PRODUCTION_STATE_AWARENESS
00h
[216]
SLEEP_NOTIFICATION_TIME
0Fh
[218]
PRODUCTION_STATE_AWARENESS_TIMEOUT
0Fh
[253]
PWR_CL_DDR_200_360
00h
[261:254]
FIRMWARE_VERSION
00000000000000ABh
[263:262]
DEVICE_VERSION
00h
[264]
OPTIMAL_TRIM_UNIT_SIZE
01h
[265]
OPTIMAL_WRITE_SIZE
04h
[266]
OPTIMAL_READ_SIZE
01h
[267]
PRE_EOL_INFO
01h
[268]
DEVICE_LIFE_TIME_EST_TYP_A
01h
[269]
DEVICE_LIFE_TIME_EST_TYP_B
01h
[301:270]
VENDOR_PROPRIETARY_HEALTH_REPORT
[490:487]
FFU_ARG
00000000h
[491]
OPERATION_CODE_TIMEOUT
00h
[492]
FFU_FEATURES
00h
[493]
SUPPORTED_MODES
03h
[505]
EXT_SECURITY_ERR
00h
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
11
4GB
003A6000h
8GB
0074C000h
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.
Micron Confidential and Proprietary
TN-FC-32: e·MMC Device Health Report
Revision History
Revision History
Rev. B – 12/14
• Changed title of Table 2.
• Added a title to better identify the Additional Device Health commands section.
• Removed reference to Cycling and Firmware information in the Additional Device
Health commands section.
Rev. A – 7/14
• Initial release
8000 S. Federal Way, P.O. Box 6, Boise, ID 83707-0006, Tel: 208-368-4000
www.micron.com/products/support Sales inquiries: 800-932-4992
Micron and the Micron logo are trademarks of Micron Technology, Inc.
All other trademarks are the property of their respective owners.
This data sheet contains minimum and maximum limits specified over the power supply and temperature range set forth herein.
Although considered final, these specifications are subject to change, as further product development and data characterization sometimes occur.
PDF: 09005aef85b01cbe
tnfc32_dev_health_report.pdf - Rev. B 12/14 EN
12
Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2014 Micron Technology, Inc. All rights reserved.