Armadilloフォーラム

Armadillo eMMCのブロックサイズ

umaiboy

2021年4月2日 15時20分

Armadillo-X1ユーザです

新たな用途でArmadilloを使いたいのですが、その用途では下記の制限があります
・OverlayFSが使えない(readonlyにできない)
・外付けSDも差せない

このため、想定される利用の仕方で本体ストレージのeMMCがどの程度書き込めるか、どの程度の期間持ちそうか試算が
必要なのですが、試算に必要な基礎値(eMMC ブロックサイズ)が不明です。

eMMCのデータシート(下記)は参照しているのですが記載がなく、情報をお持ちでしたらご教示をお願いします。

https://media-www.micron.com/-/media/client/global/documents/products/d…

以上

コメント

at_ohsawa

2021年4月9日 14時32分

eMMCは実際にはその内部に表記している容量以上の
NANDフラッシュメモリを内包し、書き込みを分散して
平均化しつつ、耐性に問題が発生した箇所をマスク
しながら内部のコントローラーが駆動しています。

従ってスペック上の容量をブロックサイズで割って
も寿命を推定することはできません。
更にArmadilloは高寿命化のためeMMCを容量を半分に
してSLCモードで駆動しているので、それも影響します。

eMMCの寿命と呼ばれるものは、この上の処理を通じて
余分な領域が尽きるまでの期間を示します。

ここで、上記の処理を全ておこなった上で、Linuxを
使っている側から見える見かけの寿命は
Armadillo-X1(RAM 2GB製品を除く)のeMMCの場合
約4万回の書き込みが上限となります。

(全容量に対して4万回書込むと考えてください)
なお、LinuxもeMMCの内部コントローラーもともに
書き込みをキャッシュするので、たとえば1byte
のfwriteを繰り返しても実際には纏めて書き込まれ
ているので、あまり小さい単位で書き込む前提で
積算すると、短めに寿命が計算されます。

また、この値は保証値ではありませんが、少なくと
もこの値の数倍以上動作できてしまうので、動作中
の寿命(をパーセンテージで示した値)を確認する
レジスタがあります。その確認手法について、
次のスレッドとそのリンクでも説明しています。
https://armadillo.atmark-techno.com/forum/armadillo/7515