昨年の夏くらいに、安かったのでOCZ Agility3(64GB)を買いました。安価だったので買ってみたものの、ネット上であまり評判が良くないようなので、サブPCのシステムとして使用していました。現在600時間くらい通電しているようですが、先日、Crystal Disk Infoをみたら、不良ブロックが増えていました。購入時には不良セクタはゼロだったのに大丈夫かな…と思いHDTuneで不良セクタの走査チェックをしてみたところ、赤いブロックが転々と…読めないセクタが出るわ出るわ。ハッシュチェックで全ファイルをチェックしたところ、何度リトライしても読めないファイルがあります。
これ、書き込んでるときには正常書き込めたのだけれど、時間が経つうち(またはウェアレベリングの移動時などに)に、当該セクタ(ブロック)が壊れたっていうことですよね。SSDのセクタ管理の仕組みは良くわからないのですが、もしハードディスクのようにECC(エラー訂正)領域も連続しているならば、一緒に壊れてしまえばいかなる強固な訂正も無意味でしょうから、ファイルが読めなくなるのもわかります。
しかし、大して使ってもいないし、TempやPageFileはRAMディスクにしてあるので書き換えもしていないし、なんで不良ブロックが増えているのだろう?という疑問がありました。Waer Range Delta の値がゼロなので、ウェアレベリングの移動はまだ行われておらず、同じブロックに保持されたままでしょうから、そのブロックがいつのまにか壊れたのではないかと推測しました。
同時期に買ったCrucial M4(128MB)には、買ってきた当初から工場出荷時の不良ブロック数がある程度ありましたが、それ以降はまったく不良セクタは出ていません。Agility3とM4の品質が段違いという可能性もなくはないですが、M4には『工場出荷時の不良ブロック数』項目があるということは…と、少し考えてみました。
ここからは、もしかしたら・の話ですが、NAND型フラッシュメモリには、シリコンそもそもの品質や特徴・安い製品で使用するシリコン部位などの理由によって、トンネル酸化膜が劣化していくとかのレベル以前に、書き換えに何回も耐えられない・電荷が保てないなどの「歩留まりとしての不良」に相当する部分があるのではないだろうか…?と、考えてみました。技術的な裏づけも何も無いのですが、そこで思ったのが、
- Crucialは製品が完成した際に、何度かNAND型フラッシュメモリを走査して、弱い部分を予め洗い出してから出荷しているのではないだろうか?
- OCZは、もしかしたら製品完成時のチェックが少ない?ために、当方ではたいして使っていないうちに不良が出てきたのでは…
※この仮説は、あくまでも当方の思い付きにしか過ぎません。SSDの製造過程や技術とは関係ありません。
ということは、最初にがっつりと全体に負荷を掛けてみれば、もしかしたら読み書き保持に弱いブロックはさっさと代替され、その後しばらくは安心して使えるかも知れない…と、Agility3のファームウェアを2.25に更新するついでに、不良ブロックの代替と負荷を与えるために、QuickTest / ExtendTest/ ZeroFill を繰り返し掛け、全領域を何度か走査してみました。その過程で不良ブロックはそれ以上増加せず、HDTuneでチェックしても、不良ブロックが代替領域に置き換えられたようで、全てのセクタが緑色になりました。
CrucialのM4で工場出荷時の不良ブロック数が示されているのは、もしかしたら、Crucialは製造直後での不良部分はあって当然と認識していて、だからこそ品質管理で(何回か)全検査をして、その結果をS.M.A.R.T.に残しているのかな…とほのかに思いました。本当のところはわからないですが。
SSDは、出てきた当初に考えられていた以上に書き換え回数がタフだという話もありますので、SSDを買ってきてすぐにディスク検査を念入りにやるのも意味があるかもしれません。当方としては、今後もしSSDを買うことがあれば、購入後すぐにデータを移さず、自分だけのおまじないのつもりで、最初に念入りにテストをしようと思った次第です。なにしろ、買ってきて移動したデータがいつのまにか読めなくなってお手上げ・は困りますからね。どんなおまじないでもやりたくなります。
※再び繰り返しますが、実際に効果があるかどうかは証明できません。安心した次の日に読み込めなくなるブロックが出るかもしれないです。
SSDは高速でいいのですが、上のような経験をしてしまうと、データを安心して読み書き出来る「信頼性」に不安を持ってしまいますね。構造上いつかは壊れるのが当然としても、その「いつか」が今日明日だと厳しいです。SSDが販売され始めて何年か経ちますが、SSDでデータが読めなくなったケースはどのくらいあるのでしょうか。個人的には、エラー訂正の強化・内部での二重化・三重化のように進化する方向もあってもいいように思える経験でした。
--
にしても、SandForce SF-2281は不思議です。データを圧縮しているのですが、書き込みデータを減らして時間を短縮するためなんだろうけれど、速度にムラが出るのはわかりきっているし(実際に高速ではない)、圧縮前・伸長後のデータ化けチェックもしなきゃならないだろうし、圧縮したからと言っても使えるシリコン領域を稼げるわけでもないし。