Академический Документы
Профессиональный Документы
Культура Документы
5
Architecture for High Speed
Functions and Features
Victor Tsai
Micron Technology, Inc.
• e·MMC
e MMC Versions
• In Conclusion
20.0%
18.0%
16.0%
14.0%
12.0%
10.0%
8.0%
6 0%
6.0%
4.0%
2.0%
0.0%
2009
2010
2011
2012
2013
80%
ntage of Un
70% 128GB
64GB
60%
32GB
50%
16GB
40%
Percen
8GB
30% 4GB
20% 2GB
10% 1GB
0%
2009
2010
2011
2012
2013
2014
80%
ntage of Un
70%
MLC-based
60% Raw/Error Free
NAND
50% SLC NAND
40%
Percen
OneNAND
30%
20% NOR
10%
0%
2009
2010
2011
2012
2013
2014
Source: Micron Marketing
• e·MMC v4.4
– JEDEC document JESD84-A44, published in March
2009
– Considered to be obsolete
– Replaced
ep aced by e
e·MMCC v4.41
BO Enabled
BO Disabled
Write
Latency
Average
Time
User is not accessing the memory Foreground User write requests
• Most time
time-consuming
consuming operations are due to exMMC internal Flash Data management (Garbage
collection, wear leveling, bad block management, …)
• By enabling the Background Operation feature:
▶ The OS can check the exMMC internal state and ask to perform time consuming operations in
background
g -- i.e. when the user applications
pp are not accessing
g the non-volatile memory
y
▶ The exMMC usage is optimized to be in the best internal state during Foreground operations
▶ The number of Foreground time consuming operations is reduced and average throughput
improved
Flash Storage Summits 2010 12
High Priority Interrupt (HPI)
• During
D i the
th execution
ti off a large
l multiple-block
lti l bl k W Write
it or Erase
E
operation, BUSY time can be long and unpredictable
• Due to this limitation, it is difficult to utilize e·MMC in system use
cases such as Demand Paging, where data must be retrieved from the
e·MMC with minimal latency
• e·MMC 4.41 introduced a mechanism to interrupt a busy condition in a
controlled manner within a well-defined timeout, without
compromising
p g data integrity
g y
• How it works
– During a large multiple-block Write operation, data transfer can be terminated by a Stop
command (CMD12), but there may still be an extended period of BUSY time necessary
to complete the Write operation on the data already transferred
– HPI interrupts
i t t this
thi process andd returns
t th
the D
Device
i tto T
Trans state
t t suchh th
thatt th
the Host
H t can
send a Read command to retrieve high-priority data
– The CORRECTLY_PRG_SECTORS_NUM field (EXT_CSD bytes [245:242]) indicates the
number of 512B sectors successfully written to the e·MMC when the Write operation is
interrupted by HPI -- Host can restart the Write operation with the correct address
offset based on this information
System Write Read Host may have to wait long time to issue the read command
System Write Read Host can restart the rest of the write operation if needed
Write stop
p Arg[0]=“1” Read Write
CMD CMD25 CMD12 CMD12 CMD18 CMD25
Device
DAT DATA-0 Device DATA DATA-1 Busy DATA-2
Busy
HPI Enabled
HPI Disabled
Paging
Latency
Average
BO+HPI Enabled
BO+HPI Disabled
Paging
Latency
Average
Time
Paging requests
– CMD0 arg=0xF0F0F0F0
arg 0xF0F0F0F0 --
device moves to Pre-Idle state Identification
Sequences
– Write protection in memory
regions protected by Power-On
Stand-by
Stand by
WP is maintained state
0x00000
General partition 2 Standard attribute
0x00000
U
User d t area
data General partition 3 Standard attribute
0x00000
General partition 4 Standard attribute
EBOOT
Partition 1
(Enhanced) IPL
Logo
MBR
User Area
(Default) Partition 2
ULDR
(Enhanced) Copying
Partitioning
image data NK
Partition 3
OS (Image FS)
(Enhanced)
User area
EXTFAT
(
(Highh density
d )
NK Power-On
Power On WP (8MB)
Partition 3
(Enhanced) OS (Image FS) Power-On WP (256MB)
User area
(High density ) EXTFAT Unprotected
Erase group A
(arg=A+1)
CMD35 (arg A+1)
Erase group A+1 CMD36 (arg=A+3)
CMD38 (arg=0x80000000)
Physical
Erase group A+2 Memory
Erase