Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Rock3/hardware/emmc

< Rock3‎ | hardware
Revision as of 01:29, 15 November 2021 by Aghost (Talk | contribs)

    ROCK 3 >  Hardware >  eMMC Module

Introduction

ROCK 3 doesn't come with on board storag. It uses the eMMC module instead. The benefits of eMMC module is that the user can choose the storage as they need, it reduces the main board SKU for us. Also, pluggable eMMC module makes switching OS possible.

eMMC module

Emmc module black top.png Emmc module black bottom.png

Note: the green PCB and black PCB are the same, just color difference.

The eMMC socket on ROCK 3 uses two B2B connector to mount the eMMC module, the connector model is GB042 Series, one connector(34pin) for eMMC signal, the other(30pin) is for mount purpose only. This pinout of the 34pin is compatible with Odroid(Thanks Odroid for sharing their pinout).

  • on ROCK 3: GB042-34P-H10 (plug-34pin) + GB042-30P-H10 (plug-30pin)
  • on eMMC module: GB042-34S-H10 (socket-34pin) + GB042-30S-H10 (socket-30pin)

The eMMC chip we use is branded as Foresee, by Longsys, a Shenzhen embedded storage company, who acquired Lexar Brand in 2017.

Benchmarks

Below is the test we did on different brand eMMC chips.

dd

dd if=/dev/zero of=/dev/mmcblk1 bs=1G count=1 oflag=direct 
dd if=/dev/mmcblk1 of=/dev/null bs=1G count=1

result:


|      | brand    | read    | write    |
| ---- | -------- | ------- | -------- |
| 8G   | Sandisk  | 270MB/s | 39.4MB/s |
| 16G  | Sandisk  | 230MB/s | 79.6MB/s |
| 16G  | Kingston | 160MB/s | 50.1MB/s |
| 16G  | Foresee  | 189MB/s | 74.4MB/s |
| 16G  | Foresee  | 241MB/s | 79.5MB/s |
| 32G  | Sandisk  | 263MB/s | 139MB/s  |
| 32G  | Samsung  | 263MB/s | 78.3MB/s |
| 32G  | Kingston | 152MB/s | 87.2MB/s |
| 64G  | Sandisk  | 207MB/s | 100MB/s  |
| 64G  | Foresee  | 215MB/s | 148MB/s  |
| 64G  | Foresee  | 194MB/s | 148MB/s  |
| 128G | Toshiba  | 217MB/s | 143MB/s  |

fio

1M Seq

fio --name=write --ioengine=libaio --iodepth=4 --rw=write --bs=1M --direct=1 --size=2G --numjobs=30 --runtime=60 --group_reporting --filename=/dev/mmcblk1
   
fio --name=read --ioengine=libaio --iodepth=4 --rw=read --bs=1M --direct=1 --size=2G --numjobs=30 --runtime=60 --group_reporting --filename=/dev/mmcblk1

4K random

fio --name=randwrite --ioengine=libaio --iodepth=4 --rw=randwrite --bs=4K --direct=1 --size=2G --numjobs=30 --runtime=60 --group_reporting --filename=/dev/mmcblk1
   
fio --name=randread --ioengine=libaio --iodepth=4 --rw=randread --bs=4K --direct=1 --size=2G --numjobs=30 --runtime=60 --group_reporting --filename=/dev/mmcblk1

result:

  • Check full result at Github.

Dimension

eMMC2sd adapter

Emmc2sd adapter.png

With eMMC2sd adapter board, the user can write the image from PC with uSD card reader.

USB3 eMMC Reader