Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

An Elnec Emmc

Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

eMMC Flash Memories

eMMC Flash Memories

Programming eMMC on Elnec Device Programmers

(initial version)

eMMC Flash Memories`

December 2018
AN_Elnec_eMMC, version 1.00

Version 1.00/12.2018 Page 1 of 13


eMMC Flash Memories

1. eMMC Partitions

The memory configuration initially consists of the User Area, two Boot Areas and RPMB
Area partition.The sizes and attributes of Boot Areas and RPMB Area are defined by the memory
manufacturer. The sizes and attributes of General Purpose Area Partitions 1-4(GP0-GP3) and
Enhanced User Data Area can be programmed by the host setting the corresponding values in the
Extended CSD registers.

Extended CSD bytes for configuring the parameters of General Purpose Area Partitions
and Enhanced User Data Area:

GP_SIZES_MULT_GP0 – the size for Partition 1 area


GP_SIZES_MULT_GP1 – the size for Partition 2 area
GP_SIZES_MULT_GP2 – the size for Partition 3 area
GP_SIZES_MULT_GP3 – the size for Partition 4 area
ENH_SIZE_MULT – the size for Enhanced User Data area
ENH_START_ADDR – the start address for Enhanced User Data area
PARTITIONS_ATTRIBUTE – enhanced attribute for Partition1-3, Enhanced User Data area
EXT_ PARTITIONS_ATTRIBUTE – extended attribute for Partition1-3
PARTITION_SETTING_COMPLETED – for setting successfully completed

Version 1.00/12.2018 Page 2 of 13


eMMC Flash Memories

2. Program Extended CSD register

To enable programming the Extended CSD register, open Device operation options
(ALT+O) window and use check box “Extended CSD”, see figure 1. Setting this option is
mandatory to allow programming selected bytes of Extended CSD register. For setting the
individual bytes of Extended CSD register use the checkboxes in View/Edit Device settings
(ALT+S) window, section "Extended CSD", see figure 1. During the "Program" operation only
selected bytes of the Extended CSD register are programmed and verified. During operation of
"Verify" all bytes of the Extended CSD register are verified.
For the loading Extended CSD register values you can use two ways. First, the user can
view and edit the individual bytes of Extended CSD register via the View/Edit Device settings
(Alt+S) window, section "Extended CSD", see figure 1. The Second way is import the data from
the file(*.bin) to the buffer called “Extended CSD”, see figure 2. Both ways are equivalent and the
setting of individual bytes is mirrored between the “Extend CSD” buffer and View/Edit Device
settings (Alt+S) window.

Figure 1. Enabling program Extended CSD register

Version 1.00/12.2018 Page 3 of 13


eMMC Flash Memories

Figure 4. Load input file for Extended CSD register

Version 1.00/12.2018 Page 4 of 13


eMMC Flash Memories

3. Program Boot 1(or Boot 2)


To enable programming of Boot 1 (Boot 2) area, open the Device operation options
(ALT+O) window and use check box “Boot 1”, see figure 3.
The data for the Boot 1 (Boot 2) area must be stored in a separate *.bin file. For loading
Boot 1 (Boot 2) data open the “Load file” window, select the appropriate target buffer to Boot 1
(Boot 2) and open *.bin file, see figure 4. The loaded data can be viewed in View/Edit Buffer
window, Boot 1 (Boot 2) buffer tab.

Figure 3. Enabling program Boot 1 area

Version 1.00/12.2018 Page 5 of 13


eMMC Flash Memories

Figure 4. Load input file for BOOT 1 area

Version 1.00/12.2018 Page 6 of 13


eMMC Flash Memories

4. Program User Area

To enable programming of the User Area, open the Device operation options (ALT+O)
window and tick the “User Area” check box. If the status of Command execution option "Partition
table" is disable then address range for the User Area can be set in the Operation options window,
section "Addresses", see figure 5. If the option "Partition table" is enabled then the address range
of User Area is defined by the Partition table.
The data for the User Area area must be stored in a separate *.bin file. For loading data of
the User Area, open “Load file” window, select the appropriate target buffer to User Area,
Partition1-4 and open *.bin file, see figure 6. The loaded data can be viewed in View/Edit Buffer
window, “User Area,Partition1-4” buffer tab.

Figure 5. Enabling program User Area

Version 1.00/12.2018 Page 7 of 13


eMMC Flash Memories

Figure 6. Load input file for User Area

Version 1.00/12.2018 Page 8 of 13


eMMC Flash Memories

5. Program Partitions

To enable programming of Partition 1, open the Device operation options (ALT+O) window
and tick the “Partition 1” check box. Data for the Partition 1-4 must be loaded in the 'User Area'
buffer. There exist two ways for loading input data *.bin file.
If the option "Partition table" is disabled then address range for Partition1-4 is not possible
to view and edit. The data size of Partition 1-4 in the User Area buffer must be identical to the size
of Partition 1-4 of the selected device. The data for the Partition 1-4 must be placed in the “User
Area” buffer accord to the physical size of the User Area and Partitions 1-4, see figure 7.

Buffer offset 0x0 User Area buffer eMMC device


Data for User Area User Area
Size = 0x1D000000 Size = 0x1D0000000

Buffer offset
0x1D0000000
Data for Partition 1 Partition 1
Buffer offset Size = 0x1000000 Size = 0x1000000
0x1D080000
Partition 2
Data for Partition 2
Size = 0x1000000
Size = 0x1000000

Figure 7. ”User Area” buffer MAP when Partition table = disable

If the option "Partition table" is enabled then address ranges for Partition1-4 can be viewed
and edited in the Partition Table window. The user define the size, location of data in the “User
Area, Partiton 1-4” buffer and the target area in the device, see figure 8. For more information see
section “5. Partition Table”.

Buffer offset 0x0


User Area buffer eMMC device

Buffer offset Data for Partition 1 User Area


0x800000 Size = 0x1000000 Size = 0x1D0000000

Data for Partition 2


Size = 0x1000000

Partition 1
Size = 0x1000000

Partition 2
Size = 0x1000000

Figure 8. ”User Area” buffer MAP when Partition table = enable

Version 1.00/12.2018 Page 9 of 13


eMMC Flash Memories

For loading data to the Partition 1, open Load file window, set buffer offset, choose the
“User Area,Partition1-4” target buffer and open specified *.bin file(see figure 9). It is necessary to
enter the correct buffer offset and then load the *.bin file. The loaded data can be viewed in View/
Edit Buffer window, “User Area,Partition1-4” buffer tab.

Figure 9.Load input file for Partition 1


5. Partition table

Partition table records allow user to define address ranges for User Area and General
Purposes Partition 1-4. Each partition record is specified by four items Device_Start_Sec,
Buffer_Start_Sec, Data_Size_Sec and Device_Location (4 bytes/32bits in size for each item).
Every partition record have size of 16bytes. The data in the buffer "Partition Table" is stored using
Little Endian byte ordering.

Version 1.00/12.2018 Page 10 of 13


eMMC Flash Memories

Partition table item meaning:

Device_Start_Sec – indicates the start of sector location for this partition within the device.
Buffer_Start_Sec – indicates the start of sector location for this partition within the buffer
"User Area".
Data_Size_Sec – indicates the number of bytes for processing within the specified partition
record
Device_Location – indicates the location of specified partition record. The lowest byte indicate
wich physical partition it belongs to. The higher 3 bytes are not used.

The user can view and edit the individual records of Partition table via the “Partiton table”
window, see figure 10. The Second way is import the data from the file(*.bin) to the buffer called
“Partition table”, see figure 11. The loaded data can be viewed in View/Edit Buffer window,
“Partition table” buffer tab. Both ways are equivalent and the setting of individual records is
mirrored between the “Partition table” buffer and Partion table window.

Figure 10. Setting Partition table

Version 1.00/12.2018 Page 11 of 13


eMMC Flash Memories

Figure 11.Load input file for Partition table

Version 1.00/12.2018 Page 12 of 13


eMMC Flash Memories

Revision history:

V1.00 – December 5, 2018 – Initial version

Version 1.00/12.2018 Page 13 of 13

You might also like