工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial Internet of Things >> 埋め込み

デジタルインターフェイスのシステムレベルのノイズがシリアルフラッシュメモリのスプリアスエラーにつながる可能性がある方法

システムレベルでのより高いパフォーマンスの絶え間ない追求において、統合型デバイスメーカー(IDM)は、電気的に困難な環境で高速で動作できるデジタルインターフェイスの開発に精通しています。 SPIやI2Cなどの標準インターフェースは、信頼性が高く効果的な方法で、さまざまなサプライヤのデバイスを相互接続する比較的簡単な方法を提供します。同じことが他のタイプのインターフェースにも当てはまります。

デジタルドメインは、「標準」テクノロジーを使用して複雑なシステムを迅速に構築しようとしている開発者に安全な避難所を提供すると考えることができます。実際、組み込み業界は、イノベーションのフレームワークを提供するため、「正しく機能する」標準ベースのインターフェースに大きく依存しています。それらが「正しく機能」しない場合、特に障害の原因が誤って解釈されている場合、混乱を招く可能性があります。インターフェイスが仕様に従って適用されたときに堅牢で信頼できるように開発されていることを考えると、混乱は理解できます。基盤となる物理インターフェイスがシリコンに固定されているという事実も、安心感をもたらします。

あらゆる形態のシステムノイズ

信号の歪みはノイズとして解釈される可能性があり、通信環境ではノイズが最も頻繁に発生すると想定するのが妥当です。受信した信号は送信された信号ではありません。この直接的な相関関係は比較的簡単に見つけることができますが、原因と結果を簡単に特定できない場合もあります。障害が断続的になると、課題はさらに複雑になります。

今日のマイクロコントローラーは、最小限の構成で信頼性の高い動作を提供するように設計されています。シリアルインターフェースの場合、これには、長いPCBトラックまたは高い容量性負荷の影響に対抗するために、I / Oピンのデフォルトで高い駆動電流が含まれる場合があります。場合によっては、これによりインターフェースが過剰に駆動され、エラーまたは障害として解釈される派生的な影響が生じる可能性があります。

一例として、シリアルフラッシュメモリデバイスは、信頼性の高い動作を保証し、デバイスへの問い合わせを可能にする多くの高度な機能を提供します。これには、ノイズフィルター、高度な適応プログラミング、およびセルマージンを管理する消去アルゴリズムが含まれます。一部のメーカーは、ストレージ要素にECCを含めて、書き込み操作ごとに追加のメタデータを保存し、シングルビットまたはマルチビットエラーを検出して修正できるようにしていますが、このECC修正は、ノイズが通信インターフェイスバスの基本的なメッセージトランザクションを破壊する場合には役立ちません。

SPIインターフェイスのノイズは、追加のクロックパルスとして誤って解釈される可能性があります。 SPIはクロック駆動のインターフェースであるため、コマンドが無視される、データが誤って解釈される、間違ったコマンドが使用されるなどの影響があります。ただし、ノイズもエネルギーを運び、場合によっては、このエネルギー自体がデバイスの動作にエラーを引き起こす可能性があります。 。

チャージポンプとオーバーシュート

ほとんどの場合、信号の一部のオーバーシュートまたはアンダーシュートは、デジタルインターフェイスで許容できます。ただし、曲線の下のエネルギーはまだ存在しており、一部の回路ではこれが混乱を招く可能性があることを忘れてはなりません。

その好例は、シリアルフラッシュメモリのチャージポンプ回路です。 SPIバス信号に重大なノイズが含まれている場合、その信号のエネルギーがチャージポンプに伝播し、その動作を妨害する可能性があります。

フラッシュメモリのチャージポンプは、メモリセルのバイアスを変更し、事実上、論理1または0を格納するために必要な電力を提供するため、重要な機能です。書き込み/消去プロセスは、フラッシュの動作において重要な時間です。メモリ、この間にチャージポンプが中断すると、書き込みまたは消去エラーが発生する可能性があります。これらのエラーは検出される可能性がありますが、明らかにならない可能性があります。

この種のエラーは、フラッシュメモリデバイスの障害として簡単に解釈できます。フラッシュメモリの読み取りと書き込みのサイクル数が有限であるという事実は、組み込み設計者にはよく理解されていますが、あまり理解されていないのは、オーバーシュートやアンダーシュートが多すぎないクリーンなインターフェイスを提供することの重要性です。

例として、図1の画像を考えてみます。これは、6つのフラッシュデバイスの正常なセルマージンを示しています。論理1(2V〜5V)と0(> 6v)を表すデータでプログラムされたセル間には、2つの異なるパターンが現れます。比較すると、図2の画像は、制御ラインのオーバーシュートとアンダーシュートによってデータが破損した3つのフラッシュデバイスのメモリセルマージンを示しています。


図1:この画像は、プログラムおよび消去されたフラッシュメモリの良好なセルマージン分離データを示しています。 (出典:Adesto)


図2:この画像は、SPIラインに大きなノイズが存在するフラッシュメモリのセルマージン分離データが不十分であることを示しています。 (出典:Adesto)

動作周波数、信号の振幅、MCUドライブレベル、ノイズスパイクに含まれるエネルギーなど、複数の要因がノイズレベルに寄与する可能性があります。 PCBの設計と信号間のクロストークも要因になっている可能性があります。

図2のデータは、シリアルインターフェイスに対する過度のオーバーシュートとアンダーシュートの影響を示しています。下の図3は、このオーバーシュートが実際のアプリケーションでどのように見えるかを示しています。

クリックすると拡大画像が表示されます

図3:このトレース画像は、SPIラインに存在するオーバーシュートとアンダーシュートが5.65Vのピークツーピーク電圧をもたらし、フラッシュメモリ仕様に記載されている絶対最大値を超えていることを明確に示しています。 。 (出典:Adesto)

このノイズの結果、デバイスの誤動作が発生し、シリアルフラッシュメモリに保存されている値にエラーとして表示されました。当初、ステータスレジスタをポーリングする頻度が少ないため、エラーの真の影響は見落とされていました。これにより、設計者は失敗の根本原因について誤った想定をすることになりました。

真の根本原因の特定

この障害はメモリ障害として表示されましたが、根本的な原因はフラッシュデバイスではありませんでした。これは、SPI信号をプローブし、存在するシステムノイズを特定することにより、Adestoのエンジニアによって発見されました。ノイズは、MCUとフラッシュメモリ間のPCBトラックに存在するインピーダンスの不一致に部分的に起因している可能性がありますが、完全な話ではありませんでした。

ノイズの発生源は実際にはMCUインターフェイスであり、電源投入時にデフォルトで高いドライブレベルになります。過剰なドライブは、SPIラインでオーバーシュートとアンダーシュートを引き起こすのに十分であり、場合によっては信号遷移として誤って解釈され、読み取りまたは書き込みエラーにつながる可能性があります。ただし、この場合、オーバーシュートがフラッシュチャージポンプを中断するのに十分なエネルギーを保持していることがわかりました。これにより、エラーが発生しました。

お客様の設計では、使用されているマイクロコントローラーは、I / Oに構成可能な駆動電流を提供しました。これは、起動時にデフォルトでHIGHになります。アプリケーションコードは初期化中にこのレベルを変更しなかったため、通常の操作では高いままでした。

デジタルインターフェイスは通常、堅牢になるように設計されているため、この影響はSPIバス上の他のデバイスでは明らかでない場合があります。フラッシュメモリの敏感な性質、はるかに高い周波数で動作する必要性、特にチャージポンプの動作により、メモリはオーバーシュート/アンダーシュートの影響を受けやすくなりました。これにより、誤った操作が発生し、当初はフラッシュメモリデバイスの障害と誤解されていました。

エラーの修正

ファームウェアを流れるドライブ電流を減らすと、オーバーシュートとアンダーシュートが事実上ゼロになり(図4)、フラッシュメモリのエラーのない動作が実現しました。

クリックすると拡大画像が表示されます

図4:オーバーシュートが見られない状態で、シリアルフラッシュメモリのチャージポンプは正しく動作し、信頼性の高い機能を提供できました。 (出典:Adesto)

障害の性質は、Flashデバイスがエラーの影響(SPIインターフェイスの過度のシステムノイズ)を補正するためにあらゆる努力をしていることを示していました。

おそらくここで最も重要な点は、原因が実際に使用されたMCUの設計機能であり、ほとんどの状況で完全に許容できる動作モードにデフォルト設定されたことです。高いドライブ出力と不完全なPCBインダクタンスの組み合わせにより、断続的な障害が発生する状態が発生しました。簡単なファームウェア変更でMCUのドライブ出力を減らすことで、問題は解決しました。

これは、ここでの本当の教訓を浮き彫りにします。本物のコンポーネントの故障として見えるかもしれないものは、実際には設計の見落としかもしれないということです。メモリデバイスの交換は、当初は障害であると考えられていたものに対する自然な対応でしたが、顧客とサプライヤ、およびハードウェアとソフトウェアのエンジニアリングチーム間の強力な協力関係を通じて、実際の原因が特定され、適切なソリューションが適用されました。 。その結果、設計が大幅に改善され、システムパフォーマンスが向上し、信頼性が向上しました。

結論

明らかな影響がない場合、システムノイズは簡単に取り除くことができます。断続的なエラーは、最適な条件下で見つけるのが特に困難ですが、エラーが誤って解釈されると、課題がさらに難しくなります。

オーバーシュートは、システムノイズの最も明白でない形式である可能性がありますが、ここで説明するように、その影響は重大である可能性があります。フラッシュメモリは信頼性の高いテクノロジですが、慎重に設計されたインターフェイスに依存しています。シリアルインターフェースの過度のノイズは、チャージポンプ回路に伝播する可能性があり、プログラミングおよび消去回路の動作を損なう可能性があります。これにより、予期しない特性が発生し、デバイス自体の障害としてメモリセルの障害として表示されたり、プログラミングや消去操作の一貫性が失われたり、信頼性が低下したりする可能性があります。

この場合、フラッシュメモリを交換し、問題が解決したと想定すると、ある時点で故障する可能性のある製品が市場に出回る可能性があります。代わりに、設計者はプログラミングを改善し、一貫性を大幅に消去することができました。効果的な耐久性は、エラーが検出される前の許容できない約20Kサイクルから、エラーがなく、補足的なエラー検出および訂正ルーチンの必要がない250万サイクルを超えました。

最新のマイクロコントローラーが提供する構成可能性のレベルは、助けと障害の両方と見なすことができます。ドライブ電流が構成可能であるという事実が、この例のオーバーシュートの原因である可能性があります。ただし、ドライブ強度を下げることも問題の解決に効果的でした。


埋め込み

  1. キーサイトが新しい位相ノイズテストシステムを発表
  2. Winbond:NOR + NANDデュアルダイメモリチップがNXPLayerscape LS1012A
  3. Acceded:CAN、GbE、PoE、4G、3G、WLANを搭載した車両PC
  4. デジタルツインがロジスティクスパフォーマンスの向上にどのように役立つか
  5. クラウド分析がデジタルサプライチェーンの変革をどのようにスピードアップできるか
  6. 材料サプライヤーがデジタルマーケティングを採用すべき理由–そして私たちがどのように支援できるか!
  7. 医療機器OEMがインダストリー4.0ビジネスモデルを実装する方法
  8. 圧縮空気中の汚染物質がプロセスにどのように影響するか
  9. エラーの数を減らし、生産品質システムを改善するにはどうすればよいですか?
  10. 小規模ショップがデジタル化する方法 — 経済的に!
  11. 旋盤を水平にする方法