工業用メモリー余聞

6

サンフランシスコに拠点を置くPumpkin Inc.は2000年以来人工衛星用各種コンポーネント、ユニット製品を製造・販売するユニークな会社です。 Pumpkin Inc.は、彼らの製品を支える重要なパーツであるSDカードにDelkin Devices製 工業用SDカードを選択し、以来ずっとPumpkin社はDelkin Devices 工業用SDカードを、宇宙船の中で常に使用し続けています。

Pumpkin社は、市販の「ナノサテライト」を開発・製造する最初の会社でした。 
「ナノサット」とは最大10キロの小型衛星のことです。 2002年以来、Pumpkin社は数多くのCOTSサテライトを販売してきました。 衛星キットの多くはエンドユーザがカスタマイズするためのものです。 
Pumpkin社は今、打ち上げ準備の整ったターンキー衛星として顧客の仕様に合わせて作られた完全な宇宙船の開発にフォーカスしています。

各衛星に搭載されているフライトコンピュータにはSDスロットがあり、そのスロットで使用が許可されているSDカードは唯一、Delkin社拡張温度範囲の工業用SDカードのみです。 
現在の仕様では、フライトコンピュータには複数のスロットが設けられており、少なくとも2つのDelkin 工業用SDカードが付属しています。

初期の立方体型衛星は低消費電力のマイクロコントローラを使用し、2GBの記憶容量に制限されていました。 
Pumpkin社のCEO / CTO、Andrew Kalman博士によると、「宇宙空間は厳しい環境なので、冗長システムは標準的なものと考えます。 最新の設計には、プライマリとバックアップの2つのSDスロットが含まれています。 私たちはSDカードを適切に保持するための対策を取りますが、カードを取り扱う上で他の特別なことを行う必要はありません。 開発中にSDカードを使用することには多くの利点があります。」

顧客は、教育、科学、娯楽、芸術、国防など様々な分野に及び、それぞれの目的でPimpkin衛星を使用しています。

Pumpkin社の顧客への第1四半期の2017年出荷には、前述もターンキー型宇宙船が含まれます。

■ 「Overview1」は、軌道からビデオをキャプチャするためにSpaceVR用に設計され構築されたバーチャルリアリティ宇宙船です。

■ 「バッカニア」はオーストラリアのニューサウスウェールズ大学向けに教育目的と実験目的のために作られました。

■ 「SUPERNOVA」は、米国海軍のRapid Innovation Fundプログラムで設計された多目的ビークルです。このフライトユニットは、空軍工科大学によってフライト認定を受けました。 テストでは、連続して読み書きをしながら、真空下でのホットサイクルとコールドサイクルを含む空間の影響をシミュレートします。 SUPERNOVAにはNSA認定のハードウェア暗号化通信が含まれており、サイバーセキュリティ専門家が当社の電子機器を見直していることが確認されています。
「私たちは、民生用SSDが「産業用デバイス」として使うには適していないことを認識していませんでした。」

民生用の製品は、宣伝広告による影響もあり、最初に意識してしまうのがブランドであったりするものです。 これはこれでよいのですが、組み込み用の工業用ストレージ・デバイスを検討する際に、この考えは大きな誤りとなるのです。

民生用ソリューションは、高いキャパシティとスピードのような優先順位に重点を置いています。多くの場合、コストやドル/ GBで測定されます。一方、工業用組み込み機器ソリューションでは、データの完全性、環境堅牢性(ショック、温度、振動)と電気的堅牢性に重点を置いています。 
ここを間違えると大変なことが起こることになります。

カスタマーストーリー


「当社は、当社製品への組み込み用SSDをNANDフラッシュ製造で有名なA社製とすることを決定しました。 当社の製品は、データがオフライン時にドライブに書き込まれること、データ量も少ないことから、速度について心配はしていませんでした。 この製品の優位点としては、大変ポピュラーな一般ユーザ用製品として多くの小売店でも入手がしやすく、また価格も安く購入できることでした。 私たちは、それらのアプリケーションが私たちの機器の使用用途よりはるかに集中的に酷使されていると想像していました。 」

「私たちは最初に、ドライブがランダムに読み込み専用に切り替わってしまう問題を認識しました。  私たちは、トリガーイベント、またはこれを引き起こした可能性のあるエラーを見つけるために調査を行いました。 ドライブはオフラインになり、それ以降のデータの書き込みは許可されませんでしたが、その時点までに書き込まれたすべてのデータは、ドライブで読み取ることができました。 私たちの技術者は、システム内のドライブを再初期化することで、修復されたように見えました。 最も古いドライブの故障の割合が急に上昇しはじめたように見えたときにも、この現象の発生原因を調査中でした。 この段階では約1ヶ月でドライブの2〜4%をが読み取り専用となる状況でしたが、これが10%を超え、15%まで上昇しました。 私たちは心配をしはじめました。、

デルキンの調査


既製品のSSDのクライアントアプリケーションには、容量、速度、コストという3つの要素があります。 これらの機能は、速度重視のラップトップやサーバーでうまくいきます。 しかし、これらの機能は、ユーザーがコンピューター環境にあることを前提にしており、実査にはデータがかなり特殊な方法で書き込まれています。  問題は、多くの工業用組み込みシステムでは、実際にはほとんどが、フラッシュにデータを書き込むというコンピュータと同じスタイルを採らないことです。

産業用組み込み型SSDソリューションでは、注目すべき機能が全く異なります。 データの完全性が最優先され、環境と電気の堅牢性、ライフサイクル管理、フラッシュの利用、アプリケーションの仕様によって決まるその他の多くの機能の順に高い優先順位を占めています。

多くの組込み機器のホストにはLinuxが採用されており、ホストソフトウェアのカスタマイズを容易にします。 このため、NANDフラッシュに関連する1つ以上の制約が試されてしまうことがよくあります。 フラッシュは、プログラムおよび消去サイクル(P/Eサイクル)に基づいて摩耗していきます。 書き込まれるファイルのサイズは、P/Eサイクルに大きな影響を与えます。すべてのフラッシュは、その構成に基づいて利用可能な限られた数のP/Eサイクルを有しています。

典型的なFLASHチップは、4Kまたは8Kまたはそれ以上のバイトの「ページ」が、フラッシュチップに応じて256ページから16Kページのいずれかのブロックにグループ化されるように構築されています。 したがって、1つのブロックに大量のデータを格納することができます。 デバイス上の1つの制約は、消去可能な最小単位がブロック全体であることです。 したがって、1ページ内の数バイトが更新される場合、データは更新された新しいブロックに移動されなければならず、前のブロックは消去され、将来の書き込みに使用されます。 デバイスの第2の制約は、データの保持が危険にさらされる前にブロックを消去できる回数が制限されていることです。

新しいデータが物理チップに書き込まれると、そのデータは空きページに書き込まれます。 ユーザーが非常に少量のデータ、たとえば256バイトを書き込む場合、ページ全体を使用してその256バイトのデータを保持します。残りのページは未使用です。これは、一度ページを開くと、追加のデータで「書き直す」ことができないためです。次の256バイトの書き込みでは、この新しいブロックの256バイトのデータを保持するために別の空きページが使用されます。これらのデータが連続する場合、ファームウェアは前の256バイトを新しい256バイトとともに新しいページに移動し、それらをまとめて保持します。 このように、あるページから別のページへのデータの書き換えは、同じデータがFLASHに書き込まれる頻度を測定する「書き込み増幅」(WA)を引き起こします。

デルキンソリューション


これらの要素を考慮すれば、ドライブの動作モードや作業負荷がドライブの寿命に大きく影響することがわかります。 この場合のドライブの寿命に影響を及ぼす最大の要因は、コンシューマーグレードのTLCフラッシュが書き込みに使われ、且つアプリケーションの書き込みのサイズが小さかったことです。 ある種類のフラッシュメモリーではP/Eサイクルが非常に少なく、ドライブが最大P/Eサイクルに達すると、不良ブロックを交換するためにスペアブロックを使い始めることになります。 スペアブロックの数は限られていますので、これらを使い切ると、多くのドライブが読み取り専用になってしまいます。 これが今回、お客様のドライブに起こったことでした。 一部のドライブでTLCフラッシュを使用すると、わずか800 P/Eサイクルに制限されることがあります。 有名ブランド数社の市販されているフラッシュの利用可能な消去回数は、TLC:800、MLC:3000、SLC:60000 です。 しかし、これらの生の数値は、誤差補正やウェアレベリングなどのツールを使用して大幅に増加させることができます。

学んだ教訓


この件は小容量のSLCドライブに切り替えることで問題が解決しました。 おそらく、ホストアプリケーションを変更してファイルサイズの書き込みを調整するなどの他の解決策もありますが、ドライブのワークフローへのこの調整は時間がかかり、コストがかかります。 製品を選択する際には、ストレージソリューションとホストのワークフローを一致させることが重要です。 クライアント市場向けに設計された小売りのSSDやその他のストレージ製品の有名ブランドは、最適なソリューションではない場合があります。 より小さい容量のSLCベースのSSDを使用することで、顧客はもともと使用していた大容量のSSDと比較して、無理のないコストを達成することができました。

ハンドヘルド機器の某メーカーは、驚くべき速さで彼らの主力製品を返品の山にしている元凶のSDカードの破損に苦しんでいました。 被害を受けた顧客は、現場のデータ破損を報告しており、すべての注文をキャンセルすると脅していました。 この問題に対処するチームは、既存のメモリカードサプライヤからのサポートを得ることができませんでした。

カスタマーストーリー

「マーケティング担当者が主力のハンドヘルド機器のバッテリー寿命を延ばすことができるかどうかを技術部門に尋ねてきたのは6ヶ月前です。 この機器は、当社のベストセラーで最も収益性の高いコア製品であり、製品ライン全体を牽引する主力製品でした。 電力の改善が市場シェアを最大3%増加させ、2016年を最も収益性の高い年にすることができると推定されました。

調査の結果、SDカードの電源を切ることで、全体的な電力使用量を減らし、充電間のバッテリ寿命を延ばすことができることがわかりました。 変更がアプリケーションに加えられ、テストされ、わずかですが節電が達成されました。 私たちは感動しました! この変更はすべてのユニットで実装され、改良された出力レーティングで起動することができました。

この改良品の出荷後すぐに、私たちは最大かつ最長の顧客の1人から電話を受け取り、数えきれないほどの問題の報告を受けました。 この顧客は、すべての注文を取り消し、彼らが持っていた製品を返品すだけでなく、代わりのサプライヤを探し始めることにしました。

デルキンでの調査

この機器メーカーは、Delkinの顧客アプリケーションチームを迎え入れ、両社で問題の根本的な原因究明が始まりました。 すぐに使用モデルを理解し、ホストとカードの間のバスアクティビティをキャプチャするように作業進めていきました。 カードは一見、破損しているように見えましたが、現象の発生頻度はランダムであり、理由を理解する必要がありました。

調査を進めていく過程で、私たちは、SDカードのデータ破損が、追加された省電力ソフトウェアの変更の結果であることを知りました。 カードの電源がオフになっている間、顧客はカードが信号ピンの漏れから継続動作に十分な電力を引き出していることに気付きませんでした。 小さな電力漏れは、CPUを有効にしてハウスキーピング機能を実行するのに十分ではありましたが、どのタイプの書き込み操作を試みても、すぐに電源が落ち、フラッシュ書き込みエラーが発生していました。これによりデータは破壊されていました。

デルキンソリューション

デルキンは、SDカードの電源を単に「切る」のではなく、電源を切る前に、顧客がそれぞれの信号ピンを低電圧で駆動するようにアプリケーションを修正することを推奨しました。 この修正はデータ破損の問題を解決するだけでなく、主装置の電源を切った後に電流漏れを防止することにより、さらに多くの電力を節約する可能性がありました。

顧客はアプリケーションソフトウェアをすばやく更新することができました。 新しいコードをロードしてテストした後、数日ですべてのユニットが更新され、顧客ベースに出荷されました。信頼が回復し、安定した収入源が救われました。

学んだ教訓

NANDフラッシュメモリカードは単なる「メモリチップ」よりもはるかに複雑であることを覚えておくことが重要です。 劣化した電力が問題となるこのシナリオでは、フラッシュ書き込みが誤って解釈され、データがフラッシュ内の間違った場所に送られました。

「当社の製品は200ドル以下で販売されており、高価なSDカードを採用することは許されませんでした。

あなたがモペッド(エンジン付き自転車)にジェット燃料を入れないように、安価な製品には通常高価なSLCベースのカードを付属したりはしません。 誰も199ドルのもSDカードを必要とする60ドルの機器にお金を払う人はいません。 これは工業製品の現実であり、時には正しいカードの価格ポイントが高すぎるため、OEMの場合、経済性を優先するため安価なカードの採用が必要となる場合があります。しかし、だからといってそれが問題を覚悟した上での選択という意味でもありません。

カスタマーストーリー

「SDカードが消耗により、どの製品でも年間約1回の障害が発生する傾向にありました。 この問題は、データを収集のために設計された数百から数千もの安価なデバイスを顧客が導入したとしても管理可能と思えました。彼らがデバイスの98%からデータをプロットすることができれば、通常は必要なものを得るのに十分でした。私たちのデバイスは、24時間7日間連続でカードに絶えずデータを記録していたので、SDカードを使い切る傾向がありました。 安価なMLCベースのSDカードを使用すると、カードのTBW規格を超えることが多く、最終的には読み込み専用になります "

「私たちはホストが過酷な環境で動作していることを認識していました。したがって、TBの書面による制限を超えることに加えて、私たちはしばしば、私たちのデバイスがテキサスでは極端に熱い環境の中で、ベネズエラのような場所のサイトで巨大な温度変動がある中で使われていることがわかりました。 これらの温度変化および極端な変化は、SDカードの消耗を加速し、カードをより早く破損させることがあります。 私たちは約10ドルの予算を持っていたので、エラーが起きれば新しいカードに置き換えました。

デルキン発見

「私たちはデルキンのフラッシュメモリーの耐久性に関する論文を見たことでデルキンと知り合うことが出来た」と話し始めた。それを機会にSDカードのエラーとカードの識別法、交換するためのプロセスについての検討を開始しました。

デルキンの顧客アプリケーションエンジニアリングチームが関与し、環境に関する一連の質問だけでなく、使用されているOS、アプリケーションソフトウェア、そして最終的にカードがどのようなワークロードを経験しているかについても尋ねました。 カードは消耗していました - プログラム/消去サイクル数(P/Eサイクル)がフラッシュの定格を超え、スペアブロックが消耗して カードは無効化されていました。この障害モードは、使用モデルに適しており、この使用環境でMLCベースの製品ではそれ以上のことはできませんでした。 今回、Delkinの役割がサプライヤーよりもコンサルタントということもあり、状況を改善するためにできることすべてを実行していることを再確認することができました。

デルキンソリューション

議論された1つのポイントは、カードの寿命末期の故障が予測できる場合、状況は顧客にとってより管理しやすいことであった。

提供された解決策は、Delkin SMART Dashboardとライブラリを含むSMARTコマンドのDelkinのサポートを使用することでした。このユーティリティは、ユーザが選択した間隔で重要なカード情報を抽出することを可能にします。 このデータには、カードの残存寿命の推定%、消去回数、残りのスペアブロック情報が含まれます。 このツールを使用すると、フィールドに展開する前に、または定期的に予定されているメンテナンススケジュールに合わせて、製造元または顧客が情報を入手することができます。 約10%未満のライフサイクルが残っているSDカードは、フィールドでエラーが起きる前に置き換えられます。

このソリューションは、顧客にとって完璧であることが判明しました。 装置の構成要素が検査された定期的な保守間隔があり、このステップをプロセスに追加することによって、顧客は現場の故障をほぼゼロに減らすことができました。

しかし、デルキンのスマートツールはデルキンカードでしか使えなかったので、顧客は仕様変更をする必要がありました。

学んだ教訓

問題を解決するには複数の方法があり、問題を緩和する方法を探している顧客とDelkinとのチームとして働くことが重要です。ホストの使用モデル、およびホスト環境が正しい解決策を得るためには、長い道のりを歩むことができます。いくつかのソリューションはコストに重点を置くことができ、あるレベルの欠陥が許容される可能性があり、他の設計にはゼロの障害要件があり、既知の問題を回避するためにカスタム設計またはより特長のコントローラが必要です。最も重要なのは、責任を回避する理由を見つけるよりも、問題の解決に重点を置いたサプライヤーを選ぶことです。
「DelkinのSDカードは、新しい大容量デュプリケータでは動作しません。他ブランド製品では問題ありません。」

背景:

何年もの間、Delkin SDカードを購入していた顧客は、売上高が大きく伸び、新しいコンテンツローディング機器(Duplicator)を購入しました。 デュプリケーターでカードにコンテンツを追加した製品は、3年以上も問題なくホスト機器で使用されていました。販売が好調だったこともあり、また新しいデュプリケータがラインに持ち込まれました。

カスタマーストーリー:

新しい36スロット、高速のデュプリケーターが購入、設置されましたが、すぐに障害が発生しました。 私たちは古いデュプリケーターでデルキンのSDカードを動作させていましたが、問題なく書き込むことができました。 しかし、新しい機器に挿入すると、非常に高い故障率が発生してしまいました。 次に試したことは、他のブランドのSDカードと、新しい機器との組み合わせでしたが、問題はありませんでした。 私たちは出荷を続ける必要があったため、最初のステップでは、古い機器のデルキンカードを複製し、新しいデュプリケーターでは別のブランドのカードを使用して作業を進めました。 理想的な状況ではありませんでしたが、機器の特性やデルキンSDカードに何か問題があったかどうかを判断する時間はありませんでした。

Delkin Discovery:

最初に、顧客はデュプリケーターの製造元に連絡をしました。 製造元はいくつかのテストを実行し、コピー検証フェーズではなく、リード検証テスト中にDelkinカードが故障していると判断しました。 デュプリケーターのメーカーは、デルキンのSDカードがシステムと互換性がないとの報告を出してきました。

顧客がデルキンに連絡し、その問題を調査するためのケースが開かれました。 最初に、顧客が経験した結果が、顧客が使用していたのと同じ環境で再現されました。 次に、読み取り確認の段階でカードに障害が発生したことが確認され、デュプリケータのベンダーレポートが正しいと判明しました。 さまざまなテストが実施され、問題なくデルキンカードが複製されていた顧客が使用した以前のデュプリケーターも分析されました。

Delkinソリューション:

Delkin SDカードの信号については、組み込みシステムの使用に適したタイミング仕様を満たしており、また、カードの消費電力やその他の仕様もすべて規格内収まっていました。 分析中、カードのBUS強度が電力を節約するためにわずかに減少したことに気づきました。 Delkin SDカードの初期化で利用できる多くのオプションの中には、このように電力を節約するオプションがあります。初期デュプリケータ上のケーブルは、新しい高速デュプリケータ上のケーブルの長さの半分であったことも注目されました。その後、これが問題の原因であることが判明しました。カードとデュプリケータマザーボードとの間の配線距離が、読み取り中にカード信号が弱くなっていることがわかりました。デュプリケータ製造元はケーブルの長さを変更できなかったため、デルキンはカードのバス強度を上げてカードをカスタマイズし、重複している間の読み取り確認エラーを防いだ。

教訓:

このシナリオでは、カードの電源が最適化され、エラーが発生しました。ホスト製造業者(この場合は複写機メーカー)が問題を解決するための変更を行うことができなかったため、デルキンはカードを修正することができました。このカスタマーストーリーのもう一つの教訓は、ホストやソフトウェアではなくカードのカスタマイズが、他の可能なソリューションより速く、安価で簡単になることがあることです。デルキンのケースでは、新しいパーツ番号が発行され、カスタム初期化命令が追加されました。これにより、追加されたバス強度のカードのみが保証され、問題は解決されました。
「同じメーカーからの同じカードを2年間使用していますが、突然仕様変更?」

背景:

新しい顧客が私たちに電話をして当社のCFカードについて尋ねてきました。 彼らは何年もの間、Amazonで同じブランドと容量の民生用グレードのCFカードを購入しており、 過去に問題が一度も起きたことがないという話をしてくれました。 彼らは、ブランド名、モデル名、そして容量が同じならば、性能、特性がまったく同じカードになると思い込んでいました。しかしながら、最新のロットでは全く異なる機能と仕様を示し、自社のホストでは動作しませんでした。 まったく突然に、製品の構成要素上、重要度の低い、最小限のものと考えられていた部品が、製品全体の出荷を妨げるということが起こりました。

カスタマーストーリー:

同じブランドのカードを使用した場合、最初にテストしたものと同じカードを購入することが常に考えられました。 CF(CompactFlash)カードを初めて購入したとき、Amazonで、4つまたは5つの異なるブランドのカードを購入しました。いくつかはうまくいき、他は問題を抱えていました。 私たちはよく知られたトップブランドの採用を決定しました。 私たちはこのブランドカードの評価に一生懸命取り組みましたが、製品の内部部品の変更が行われるかもしれないという事実について考えたことはありませんでした。 しかし、私たちの仮定は間違っていました。 過去2年間に同じブランドと容量カードを購入してきましたが、今回、15回目の注文で来た製品は、動作しませんでした。 最初に、ホストソフトウェアまたはハードウェアでOSのアップグレードや変更が行われていないことを確認し、すぐに変更されたカードであることを確認しました。 私たちは、カードがサプライヤーでどのように作られたのか、技術的に知識のある人間と接触するのに苦労しました。 最終的には、BOM(部品表)を頻繁に変更することでコストを節約することが出来ているというを聞いただけでなく、コンシューマの使用を目的とした製品であるため、変更の内容、影響が把握されていないようでした。 私たちはすぐに代替ソースを探し始めました。

デルキンディスカバリー:

当初、デルキンのカスタマーアプリケーションエンジニアリングチームが関与し、お客様にカードの使用モデルがどのようなものであるか、およびレビューできる最低限の環境または性能仕様があるかどうかを尋ねました。 これが利用できないときは、ホストを借りて、顧客アプリケーション環境を最適に複製する方法についての情報を求めました。わずか数日間のテストの後、アプリケーション要件と顧客のコストとリードタイムに関する商業的な期待に最も合致するカードがデルキンによって推奨されました。 サンプルカードが顧客に送られ、テストされました。 これらのカードは合格し、量販注文はカリフォルニアのPowayにある私たちの工場から出荷されました。

デルキンソリューション:

デルキンカードの大きな違いは、顧客が承認し注文した部品番号に基づいてBOMを管理していたことです。この部品番号には、フラッシュ部品番号、コントローラ、およびファームウェアを含むが、これに限定されないカードの多くの側面が定義されています。 BOMをこの部品番号でロックすることにより、顧客は何らかの理由でカードを改変しないことが保証されました。さらに、EOLのフラッシュや推奨されるファームウェア変更のために、変更が必要な場合は、そのパーツ番号の変更、推奨交換部品、および前回承認された部品の最終出荷を購入し、スケジュールを設定します。この通知は、顧客が提供された交換部品をテストするのに十分な時間を許すように行われました。デルキンの部品番号は、コンテンツのロード、または任意の顧客が必要とするカスタム機能またはファームウェアを指定するためにカスタマイズすることもできます。

教訓:

民生品のエレクトロニクスの世界では、NANDフラッシュカードやドライブの採用品を決定した後でも、それらの部品を変更することで「コストダウン」を実現するという方法が取られます。 この考え方は、ほとんどの工業製品メーカーの考え方とは相容れません。 カードやドライブを承認するには、数週間、さらには数カ月かかることがあります。 さらに、EPA、FAA、FDCなどの様々な機関からの承認が必要となる場合があります。 多くの場合、経済的にも市場投入までにも大きな費用がかかります。ホスト内のコンポーネントを変更すると、このテストと承認が危険にさらされる可能性があります。 制御されたBOMを持つことは、産業および組込み市場にストレージ製品を供給するためのパズルの重要な部分の1つにすぎません。