書き込み保護

書き込み保護

書き込み保護

本文では一般的なSSDの書き込み保護(Write Protect)方法について説明するとともに、それぞれの方法のメリットとデメリット、複雑さについて分析していきます。

工業での利用においては、製品信頼性は常に最重要課題の一つとなっています。製品の品質を確保し、信頼性を向上させることは、すべてのメーカーが一貫して目指し続ける目標でもあります。データの整合性を確保するためには、SSDの「書込み保護」テクノロジーが必要となります。その主な原理は、ハードウェアやソフトウェアの設定からこの機能を有効にすることです。SSDのファームウェアが書込み保護機能が有効にされたことを検知すると、ホストからの書き込み命令を受信しても、データはNANDフラッシュに書き込まれることはなく、ディスクもRead-onlyモードに変わります。ホストからのSSDへの書き込みが無効となり、SSD内のデータの整合性が保護されます。

Figure 1

上図に示すように、1つ目の一般的な方法は、ソフトウェアから書込み保護機能を設定する方法で、ユーザーはホスト側のソフトウェアから設定を行い、vendor commandをSSDに送信します。SSDのファームウェアがこのコマンドを受信すると、最初に書込み保護のメッセージが記録され、断電後もこの設定が引き続き有効となります。同時にFTL(Flash Translation Layer)に書込み保護が有効になっていることが通知されます。FTLの受信後、TRIM、セキュア消去といった書き込みに関するすべてのコマンドはNANDへの書込みができませんが、Data Scan、Refresh、Flush LogなどのSSD本体のバックグラウンド書込み機能については引き続き実行されます。この方法のメリットは、ハードウェアを変更する必要がなく、ソフトウェアとファームウェアを変更するだけで書込みを防止することができる点にあります。

Figure 2

上図に示すように、もう1つの書込み保護方法は、ハードウェアから設定を行います。まず、SSDのボード上にスイッチを設け、このスイッチをSSDコントローラのGPIOピンに接続します。書込み保護機能を有効にしたい場合は、このスイッチをオンにします。この時SSDのファームウェアがGPIOピンの信号を検知し、FTLに書込み保護が有効になっていることを通知します。以降は1つ目の方法と同様の動作となります。この方法のメリットは、ハードウェアスイッチを使用して書込み禁止設定を有効にすることができる点にあります。ソフトウェアを介する必要が無く、簡単で、SDカードの多くもこの方法によって書込みを防止しています。

Figure 3

上図に示すように、3つ目はハードウェアのみによる方法です。SSDにスイッチを設ける点では同じですが、このスイッチは直接NANDフラッシュのwrite protectピンに接続するため、SSDのファームウェアを変更する必要がありません。この方法のメリットは、ボードの設計メーカーが独立した書込み保護機能を設けていることです。だだし、NANDへの書き込みができないため、SSDのファームウェアの機能(Prevent Read Disturb、Data Retention、Flush Logなど)も正常に実行することができません。

この他にもSSDのファームウェアによって有効になる書込み保護機能があります。NANDフラッシュには一定の寿命があり、SSDファームウェアがNANDフラッシュの使用期限を検知した場合、または不良ブロックが設定した上限を超えた場合に、SSDファームウェアは自動的に書込み保護を有効にし、ユーザーが重要なデータをこのSSDに書き込み続けることで生じるデータの破損を防ぎます。この書込み保護は自動的に有効になるため、ユーザーによる設定が不要で、現在市販されているSSDのほとんどにこの機能が備わっています。

その他の技術

お問い合わせ