FRAMメモリーによる、組み込みシステムデータの記録の簡素化

October 23, 2017 CircuitStudio

フラッシュドライブ

 

選択肢が明確な場合、決断はより簡単です。白黒、正誤などの選択では、選択後に後悔することはありません。ところが、白黒に加え、多くの色合いのグレーからいずれかを選択するとなると、本当にストレスです。強誘電体メモリー(Ferromagnetic Random Access Memory、FRAM)が商業市場に流通し、複数の色合いのグレーからいずれかの選択を迫られるようになるまでは、二者択一の選択に安住していました。

このときまで、組み込みシステムデータの記録用ハードウェアの選択肢は、スタティックRAM(Static Random Access Memory、SRAM)とフラッシュのみでした。プレFRAM時代に仕事をした方々には、フラッシュの比較的低い書き込み耐久性によるSRAMデータインテグリティーの問題について妥協しなければならなかった私の苦労をご理解いただけると思います。そのような経験のない方々のために説明します。

FRAMとSRAMおよびフラッシュの比較

2005年に初めてFRAMに出会った私は、その特性にすっかり魅了されました。実装費用が高かったため、自分の設計にFRAMを使用できるようになるまで3年ほど待たなければなりませんでした。FRAMのメリットを称賛する前に、SRAMとフラッシュについて簡単に振り返っておきましょう。いずれも独自の機能で広く使用されているメモリーチップです。

SRAMは、揮発性メモリーの一種です。つまり、電源が取り除かれたり電力供給が中断したりした場合、メモリーに格納されているデータは消去されます。SRAMの優れた点は、無制限に書き込みできることです。つまり、使用するにつれて物理的に劣化することがありません。

 

 

ボタン電池

データを小さな電池のなすがままにさせないでください

 

 

その対極にあるのが、非揮発性のフラッシュメモリーです。電源供給が途絶えてもそのまま残っている必要があるトランザクションログの格納に特に有用です。唯一の欠点は、書き込み可能回数が少ないことです。多くの場合は数万回以内です。この限界に達すると、書き込もうとしてもメモリーの各セルに情報が格納されなくなります。

 

FRAMは、SRAMメモリーとフラッシュメモリーの長所を受け継いだメモリーチップです。FRAMは、非常に高い書き込み耐久性を備えた非揮発メモリーです。現在、数兆回とはいかないまでも数十億回の書き込みが可能です。さらにうれしいことに、FRAMの製造プロセスが成熟し、価格が劇的に下がりました。当然のことながら、FARMは、組み込みシステムにおけるデータ記録アーキテクチャーの設計方法を変えました。

組み込みシステムにおけるデータ記録の重要性

組み込みシステムにおいて、信頼性の高いデータ記録は、アプリケーションにかかわらず、常に必須の機能です。例えば、火災警報システムでは、監査に備えて全てのイベントを適切に記録する必要があります。また、出退勤管理システムでは、社内の従業員の動きをハードウェアコントローラーで正確に記録する必要があります。

 

 

火災報知器のボタン

データインテグリティーは、警報音よりも重要な要素です。

 

 

多くの電子機器設計者が、正確なデータ記録アーキテクチャーを問題なく実装していますが、電源障害時にデータのインテグリティーを保つことは共通課題です。メモリーチップの寿命を確実に最大限まで伸ばすことについても同じことが言えます。

 

組み込みシステムにおけるデータ記録デザインに対するFRAMの影響

データ記録を視覚化するよい方法は、大学の図書館の数千冊の本について考えてみることです。お気に入りのHarry Potterの本を取り出す場合、全ての本が適切に整理されていれば、2~3分もかかりません。ところが、書棚のラベルが突然なくなったり、本が誤った場所に置かれたりした場合、長時間探し回ることになります。組み込みシステムでは、数万のレコードがメモリーに格納され、ソフトウェア アプリケーションによって外部データベースに常時読み出されています。これは、マイクロコントローラー(MCU)自体が、最新データと最古データを継続的にトラッキングして、メモリーがフルになることで生じる問題を軽減できる機能を備えている必要があることを意味します。

 

 

「Database」と書かれたカギ

データ記録は、レコードのトラッキングができている間は簡単です。

 

 

以前からある簡単な記録方法は、全てのトランザクションログをバッテリーバックアップSRAMに格納し、ソフトウェアによって記録された内容および読み出された内容をトラッキングするいくつかのデータポインターを割り当てる方法です。この方法の限界は、データインテグリティーが100%バックアップバッテリーに依存することです。つまり、システムに電源障害や一般的なハードウェア障害が発生した場合にバッテリーが切れていないことを祈る必要があるということです。

 

その一方、フラッシュメモリーでは、データ保存に関するほとんどの問題が解消します。トランザクションデータはフラッシュメモリーに保存できますが、データポインターはやはりバッテリーバックアップSRAMに格納される必要があります。あるいは、書き込み可能回数の少ない各フラッシュメモリーセルが損傷する恐れがあります。また、ファームウェア開発者であれば、高度なデータ管理アルゴリズムを実装する可能性があります。これにより、データポインターの必要性はなくなりますが、システム全体が必要以上に複雑化し、不要なバグが発生します。

 

2000年代にFRAMが商業ベースに乗った電子機器コンポーネントになると、データ記録は途方もなく簡単になりました。メモリーチップが電源喪失によって破損したり物理的に劣化したりする心配がなくなり、データポインターをFRAMに保存できるようになりました。それ以来、プロセス監視コントローラーや複数マシンのトラッキング/記録実行を含む組み込みシステムを設計する際、私はFRAMとフラッシュを多用するようになりました。

 

このことは、FRAMがフラッシュおよびSRAMにすっかり取って代わることを意味するのでしょうか? それは状況によります。FRAMは、フラッシュやSRAMが苦労する領域でいい仕事をします。長いライフサイクルを確保しながらデータを保持できるFRAMは、構成およびダイナミックレコードの格納が必要なアプリケーションにとっては理想的な選択肢になっています。とはいえ、FRAMよりはるかに容量の大きいフラッシュも、大量のトランザクションの格納にはよりよい選択肢です。

 

SRAMに関しては、私は組み込みシステムの設計での使用を完全に止めました。FRAMの価格低下と非揮発性は、総じてSRAMの無制限の書き込みサイクルのメリットを上回っています。ただし、マイクロコントローラーが外部のSRAMからの起動を必要とする組み込みシステムの場合は例外です。

データ依存型のハードウェアを設計している方は、本番環境に数百のユニットを配備した後にデータインテグリティーの問題が頻発することを恐れていませんか? プロ仕様のソフトウェア、Altium’s CircuitStudioをご使用になれば今すぐ対応できます。

FRAMについてのご質問は、Altiumの担当チームのお問い合わせください

 
 
 
 
 
Previous Article
PLCと組み込みシステムとの比較: ユニット単価が高くてもPLCを選択すべき場合
PLCと組み込みシステムとの比較: ユニット単価が高くてもPLCを選択すべき場合

PLCの利点は、コストよりまさることもあります

Next Article
On Track Newsletter 2017年10月
On Track Newsletter 2017年10月

Altium Designerの無償評価版を入手する。

無償ダウンロード