Rockpi4/hardware/emmc
ROCK Pi 4 > Hardware > eMMC Module
Introduction
ROCK Pi 4 doesn't come with on board storage, it uses the eMMC module instead. The benefits of eMMC module is 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
Note: the green PCB and black PCB are the same, just color difference.
The eMMC socket on ROCK Pi 4 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 Pi 4: GB042-34S-H10 (socket-34pin) + GB042-30S-H10 (socket-30pin)
- on eMMC module: GB042-34P-H10 (Plug-34pin) + GB042-30P-H10 (Plug-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.
eMMC2sd adapter
With eMMC2sd adapter board, the user can write the image from PC with uSD card reader.