Armadilloフォーラム

アルマジロ(AGX3100-C01Z)のROM(eMMC)書き込み回数制限について

hirota_shuu

2020年8月26日 18時45分

お世話になっております。
岩崎電気株式会社の広田です。

アルマジロ(AGX3100-C01Z)のROM(eMMC)についての質問です。

1.書き込み回数制限について教えてください
 (例:1ブロックあたりの書き換え寿命3,000回)
 
2.①全ブロックが標準的に使用されるような書き込みとなるようになりますか?
  ②先頭ブロックから順に書き込まれますか?
  
  例:ブロック1~6
   ①ブロック1,2,3書き込み→ブロック1,2,3削除後、ブロック4,5,6書き込
     みというように、全ブロック(メモリ)が標準的に使用される
   ②ブロック1,2,3→ブロック1,2,3削除後、ブロック1,2,3書き込みという
     ように、先頭ブロックの使用頻度が高くなる
     ②の方が書き込み過多により寿命が短い
     
参考URL
https://pcinformation.info/pcparts/emmc-lifespan.html

コメント

古関です。

> 1.書き込み回数制限について教えてください
>  (例:1ブロックあたりの書き換え寿命3,000回)
申し訳ありません。
書き込み回数の上限値は仕様として一般公開しておりません。

お手数おかけしますが、もう少し詳細な情報が必要があれば
ご利用の代理店、または弊社担当の営業に個別にお問い合わせください。

補足として製品としての動作仕様は下記のようになります。
- 搭載のeMMCはSLCに設定している
- eMMC内部ではウェアレベリングしている
- ホストからWrite要求をしてもすぐにeMMCには書かれずに、基本的にLinux側のキャッシュに一時保存される
- キャッシュはeMMC内部にもある

> 2.①全ブロックが標準的に使用されるような書き込みとなるようになりますか?
>   ②先頭ブロックから順に書き込まれますか?
>   
>   例:ブロック1~6
>    ①ブロック1,2,3書き込み→ブロック1,2,3削除後、ブロック4,5,6書き込
>      みというように、全ブロック(メモリ)が標準的に使用される
>    ②ブロック1,2,3→ブロック1,2,3削除後、ブロック1,2,3書き込みという
>      ように、先頭ブロックの使用頻度が高くなる
>      ②の方が書き込み過多により寿命が短い
動作のイメージとしては①に近い形になります。
     
搭載しているeMMCではウェアレベリングをしていますので、
eMMC内の同一NANDフラッシュメモリセクターに書き込みせずに分散したり、
不良セクターが見つかると、代替セクターに切り替える等の処理が入っています。

ホストからWrite要求ができるのは、あくまでeMMCの論理アドレスに対してで、
eMMC内部のコントローラーではウェアレベリングをしながら
論理アドレスと物理アドレス(生NANDアドレス)の変換が行われています。

連続書き込み(P/Eサイクル)をした場合の動作ですが、
代替セクターを消費しながら全体的に寿命が減っていくようなイメージになります。

mmc-utilsを使用してeMMCの各種レジスタ値読み出しをすると
代替セクター使用率の確認などができ、寿命予測の目安にすることも可能です。

以下参考情報です。
https://armadillo.atmark-techno.com/forum/armadillo/3208