JP2009086980A - ロギングシステム - Google Patents
ロギングシステム Download PDFInfo
- Publication number
- JP2009086980A JP2009086980A JP2007255268A JP2007255268A JP2009086980A JP 2009086980 A JP2009086980 A JP 2009086980A JP 2007255268 A JP2007255268 A JP 2007255268A JP 2007255268 A JP2007255268 A JP 2007255268A JP 2009086980 A JP2009086980 A JP 2009086980A
- Authority
- JP
- Japan
- Prior art keywords
- log data
- data
- external recording
- recording medium
- log
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】本発明は、いかなるタイミングで電源遮断が発生しても、コンパクトフラッシュ等の外部記録メディアのデータ構造を保護し、かつ、電源遮断前のログデータの復帰を可能とする高信頼性のロギングシステムを提供することを目的とする。
【解決手段】本発明は、SRAM等の高速アクセス可能な不揮発性メモリにログデータ管理領域を設ける。さらに、管理領域のアクセス時間を保証する低電圧検出回路を設け、管理領域の書込み前にはフラグ値を確認することで、データ管理領域書込み中に電源遮断が発生しない仕組みとし、外部記録メディア内のデータ構造破壊を防止する。さらに、不揮発性メモリ内部にメモリブロックを設け、メモリブロックと外部記録メディアの両方にログデータを書きこみ、電源遮断後の再起動時にログデータを比較チェックすることで、ログデータの整合性を保ち信頼性向上を実現する。
【選択図】図1
【解決手段】本発明は、SRAM等の高速アクセス可能な不揮発性メモリにログデータ管理領域を設ける。さらに、管理領域のアクセス時間を保証する低電圧検出回路を設け、管理領域の書込み前にはフラグ値を確認することで、データ管理領域書込み中に電源遮断が発生しない仕組みとし、外部記録メディア内のデータ構造破壊を防止する。さらに、不揮発性メモリ内部にメモリブロックを設け、メモリブロックと外部記録メディアの両方にログデータを書きこみ、電源遮断後の再起動時にログデータを比較チェックすることで、ログデータの整合性を保ち信頼性向上を実現する。
【選択図】図1
Description
本発明は、コンパクトフラッシュ(登録商標)等の外部記録メディアに動作ログを記録するロギングシステム装置に関する。
コンパクトフラッシュやハードディスク等の外部記録メディアにデータを記録する装置では、FATファイルシステム等の論理フォーマットを外部記録メディア内に構築することで、ファイルとしてデータを記録する方法が一般的である。
FATファイルシステムでは、FATテーブルとよばれるデータ位置を記述したテーブルと、ディレクトリエントリと呼ばれるディレクトリ構造を記述したテーブルを操作することでデータ構造を管理している。
しかし、外部記録メディア上のデータへのアクセスはMPUに直接接続する内部メモリよりも読書き速度が劣るため、ファイルへのアクセスを頻繁に行ったり、巨大なファイルを操作すると、外部メモリ上にあるFATテーブルや、ディレクトリエントリへの操作が大量に発生し、装置のスループットを低下させてしまう。
これを避けるために、特許文献1では、頻繁にアクセスするFATやディレクトリエントリを外部記録メディアとともに内部メモリ上にも配置することで、外部記録メディアへのアクセス回数を減らし、スループットを改善する手法が述べられている。
また、FATテーブルやディレクトリエントリを用いず、書込みデータを固定長とし、さらにAC電源遮断検出部を設けることでデータの損失を最小限に抑える方式が、特許文献2に開示されている。
この方式では、外部記憶装置への書き込み中に電源遮断が発生すると、書込み中の1アクセス分のデータを書き込んで処理を終了する。
従来のFATファイルシステムによるデータの保存方式では、外部記録メディア上のデータ管理領域を記録しているため、ファイルを更新したときは、いずれかのタイミングでデータ管理領域も書き換える必要がある。よって、これの書き込み中に電源遮断が発生した場合は、FATファイルシステムのデータ全体が破壊される危険がある。
特許文献2の手法においては、低電圧検出部と、データを固定長とし、“書込み中”を示すフラグを設けることで、最終データチェックを可能とし、信頼性を高めているが、“書込み中”を示すフラグを外部記録メディアに記憶しており、該データ書込み後に更新する必要があるため、フラグの値が該データよりも信頼性が低いこと、また、電源遮断直前に書込んだデータがエラーであることは検出できるがそのデータを復帰できないこと、また、データ書込みの際、該データのほかに、“書込み中”フラグのON/OFFの手順が増えるため、低電圧検出部は、外部記録メディアのアクセス3回分を保証する必要がある。
本発明は、上記の課題に鑑み、電源遮断がどのようなタイミングで発生しても、外部記録メディアのデータ構造を破壊せず、電源遮断前のデータの整合性チェックとともに、データ内容の復帰を可能とするロギングシステムを提供することを目的とする。
コンパクトフラッシュ等の低速アクセスの大容量外部記録メディアをログデータ記録域とし、SRAM等の高速アクセス可能な小容量不揮発性メモリにデータ管理領域を配置する。
書込み速度を比較するとコンパクトフラッシュの数マイクロ秒に対し、SRAMは数十ナノ秒となる。データ管理領域の書換え中に電源が遮断する確率は、書換え速度に比例するので、電源遮断によるデータ不整合の危険性は、1/100程度に低減する。
加えて、低電圧検出回路を設け、データ管理情報の書換え前には、回路が出力する低電圧検出フラグを確認する。電源遮断前の電圧立下りによる低電圧期間中はデータ管理領域にアクセスしないことで、データ管理領域書換え中に電源が遮断することを防止する。
外部記録メディアにはセクタと呼ばれるメモリブロック単位でアクセスする必要がある。各セクタに効率的なアクセスを実施するためには、セクタ単位のまとまったメモリブロックを内部メモリに設け、データをバッファリングする手法が一般的である、本発明では、高速不揮発性メモリ内にバッファリングする。
外部記録メディアへの書込み中に電源遮断したとしても、不揮発性メモリ内に、ログデータをバッファリングしているため、次回起動時に前回電源遮断時の最終ログデータの整合性チェックをすることができる。
整合性チェックでは、高速不揮発性メモリ内のデータの方が、外部記録メディア内のデータよりも先に保存されているため、高速不揮発性メモリ内のデータで外部記録メディアを書き換えることで、最終ログデータの復帰が可能である。
本発明によれば、小容量不揮発性メモリにデータ管理領域を配置することにより、外部記録メディアのデータ構造を保護できる。
また、ログデータを高速不揮発性メモリと外部記録メディアの両方に保存することにより、個々のログデータの欠落を防止し、信頼性の高いデータロギングを実現できる。
本発明の実施形態に関し、図面を引用して以下に説明する。
まず、図1〜図4に沿って実施例1に関する説明をする。
図1は、本発明における、ログデータを主体としたデータフロー図である。
図1において、101はプログラムが動作するための内部メモリ、102は高速不揮発性メモリ、103は外部記録メディア、104は低電圧検出回路、105は低電圧検出回路が有し、プログラムから参照可能な低電圧検出フラグ、106はマイクロプロセッシングユニット(MPU)等に備えた装置プログラム、107は装置プログラムのログデータ、108はロギング制御部、109はロギング制御部の作業域にコピーした内部メモリ内ログデータ、110は高速不揮発性メモリと外部記録メディア上のデータ書込み位置を保持するデータ管理領域、111は高速不揮発性メモリ内に書き込んだログデータ、112は外部記録メディアに書き込んだログデータを示す。図1内の矢印については、順次意味を示す。
図2のフローチャートを参照して、ログデータ107を外部記録メディア内のログデータ112として、外部記録メディアに書きこむ手順について説明する。
ステップS121にて、装置プログラム106は、装置制御やデータ通信を行った際に、ロギング制御部108にログ記録を依頼する。このログ記録依頼を図1内の矢印113に示す。
図3に、ログデータのデータ構造を示す。
ログデータ識別番号202はログデータの一意性と記録順序を判別するための識別番号で、ロギング制御部108がログデータ依頼を受けたときに採番する。日付時刻203は、ロギング制御部108がログデータ依頼113を受けたときの日付時刻を保存する。
ログ内容204はロギングするべきデータ内容で、装置プログラム106がパラメータとしてロギング制御部108に渡すデータである。ログデータ長205はデータ構造の長さを算出した値である。
ロギング制御部108はログ記録依頼113を受けると、ステップS122でログデータ構造作成を実施する。ログデータ識別番号202と日付時刻203、ログデータ長204をログデータ107に付加し、内部メモリ101内にログデータ109を作成する。この手順を矢印114に示す。
ステップ123は条件分岐である。ロギング制御部108は、低電圧検出回路104が出力する低電圧検出フラグ105を確認する機能を有する。低電圧検出フラグ105の値のチェックを矢印115に示す。
低電圧検出フラグ105がONの場合、装置は電源遮断の直前であることを示しているため、該当ログデータの登録は中断する。したがって、このログデータは失われるが、逆をいえば、ログ記録を続行した場合、書込み動作中に電源遮断して、誤ったログデータとなる可能性が高い。
さらに最悪の場合、書込みアドレス計算結果が不正値に化けてしまうことで、ログ領域全体がデータ破壊する可能性がある。要するに、電源遮断の直前はログ記録を中断したほうが、データ構造全体の安全性を高めることができる。
低電圧検出フラグ105がOFFであれば、ステップS124とステップ125を実行する。高速不揮発性メモリ上のデータ管理領域更新(矢印116)、および高速不揮発性メモリ内ログデータの書込み(矢印117)を実施し、高速不揮発性メモリ内ログデータ111を作成する。
ステップS124のデータ管理領域更新について、図4に示す管理領域のデータ構造図を用いて詳しく説明する。
図4は、データ管理領域110の詳細を記述した図である。
はじめに、高速不揮発性メモリへの書込みアドレス値304の読出しと更新を行う。データ管理領域301を参照し、高速不揮発性メモリへの書込みアドレス値304を得る。
これに図3のログデータ長205を加算した値と、高速不揮発性メモリ領域の末尾アドレス値303を比較し、加算値の方が小さければ、メモリ領域内に収まるので、高速不揮発性メモリへの書込みアドレス値304を書き込みアドレス値として採用する。
大きい場合は、メモリ領域を超えているため、高速不揮発性メモリ領域の先頭アドレス値302を書き込みアドレス値として採用する。次のログデータ記録に備えて、加算値(または先頭アドレス値)で、高速不揮発性メモリへの書込みアドレス値304を更新する。
次に、外部記録メディアへの書込みアドレス値307の算出と更新を行う。
データ管理領域301を参照し、外部記録メディアの書込みアドレス値307を得る。これにログデータ長205を加算した値と外部記録メディアの末尾アドレス値306を比較し、加算値の方が小さければ、メモリ領域内に収まるので、外部記録メディアへの書込みアドレス値307を書き込みアドレス値として採用する。
大きい場合は、メモリ領域を超えているため、外部記録メディアの先頭アドレス値305を書き込みアドレス値として採用する。
次のログデータ記録に備えて、加算値(または先頭アドレス値)で、外部記録メディアへの書込みアドレス値307を更新する。
かかるステップS124の完了後に、ステップS125を実行する。算出した高速不揮発性メモリへの書込みアドレス値304に内部メモリ内ログデータ109をコピーする。この手順が矢印117である。
低電圧検出フラグがOFFの場合は、ステップS123で低電圧検出フラグ参照し、ステップS125までは、低電圧検出回路104により、電源遮断しないことを保障する。
ステップS126では、高速不揮発性メモリ内111を外部記録メディア103にコピーして、外部記録メディア内ログデータ112を作成する。この書込み手順を矢印118に示す。
このときの書込み時間は、512バイトあたり数百マイクロを要するため、この期間中に電源遮断が発生する可能性は高いが、管理情報110は更新済みであり、さらに高速不揮発性メモリ内ログデータ111も保存済みであるから、次回起動時に、外部記録メディアにコピーしなおすのが可能である。
この手法について、実施例2で説明する。
図5は、実施例1において、外部記録メディアへのログデータコピー118を実行中に電源遮断した場合、次回起動時に外部記録メディアにコピーしなおす手順である。
ステップS401において、変数A1に高速不揮発性メモリへの書込みアドレス値304を代入する。変数A1は前回電源遮断前の高速不揮発性メモリ内ログデータ111のアドレス値である。
ステップS402において、変数A2に外部記録メディアの書込みアドレス値307を代入する。変数A2は前回電源遮断前の外部記録メディア内ログデータ112のアドレス値である。
次に、変数A1と変数A2のアドレスに書かれているログデータを比較チェックするステップS403を行う。ステップS403において、ログデータが一致した場合、前回の電源遮断時は両方のログデータは正常に書き込まれたと判断し、ステップステップS404に進み、ログデータのチェック処理を終了する。
ステップS404において、ログデータが一致しなかった場合は書き込み中に電源遮断が発生したために、コンパクトフラッシュ内ログデータ112には誤りがあると判断し、ステップS405に進む。S405では、変数A2のアドレスに変数A1のアドレスのログデータをコピーすることで、ログデータを復帰することができる。
上述したログデータを復帰させる機能により、外部記録メディアへのコピー中に発生した電源遮断が原因でデータ化けしたログデータを復帰することが可能である。
図6は、上述した本発明のロギングシステムを適用した装置形態の構成例を示すブロック図である。
ウエハ搬送装置602は、上位装置601から送られる制御コマンドに従い、搬送ロボット605を動作させることで、ウエハを搬送する装置である。本発明のロギングシステムは、装置本体内部に実装するのが適当であるが、説明のために、装置本体から切り離して図示すると、ロギングシステム603の構成となる。
上位装置601は、通信線を介しウエハ搬送装置602に対して、搬送コマンドを送る。通信制御部603は、搬送コマンドを受信すると、上位装置に対し、応答を送信するとともに、ロギング制御部608に対して通信内容を記録するように依頼する。
本体制御部604は、通信制御部603からの搬送コマンドを受け入れると、装置や装置内ウエハの有無チェック等を行い、エラーが発生した際は、ロギング制御部608にエラー内容を記録するように依頼する。正常であっても、正常処理中であることをログに記録することもできる。
装置やウエハの整合性に問題がなければ、ロボット制御部606により、搬送ロボット605の制御を行う。ロボット制御部606は、個々の制御動作のログを逐次、ロギング制御部608に依頼することができる。
この例の場合、制御単位を通信、エラーチェック、機器制御を区切りとして明確にしたことで、なんらかの不具合や事故が発生した際は、ログを参照すれば、エラーが発生した制御部を特定することが容易となる。
本発明のロギングシステムは、ソフトウェアであるロギング制御部608と、ハードウェアである内部メモリ607、低電圧検出回路609、高速不揮発性メモリ610、および外部記録メディア611から構成される。
ロギング制御部608は、ロギングシステムを統括するソフトウェアである。
内部メモリ607は、プログラムの作業域である。ウエハ搬送装置の制御プログラム(通信制御部603、本体制御部604、ロボット制御部606)から、ログ記録依頼を受付けると、内部メモリ607には記録形式に変換したログデータが生成される。
高速不揮発性メモリ610はログデータのにバッファリング、およびデータ管理領域が配置される。
低電圧検回路609による低電圧検出フラグを参照することで、高速不揮発性メモリ更新中の電源遮断を防止することができる。低電圧検出回路は、電源遮断前の電圧低下を検知し、低電圧検出回路をONにする機能をもつ回路である。
外部記録メディア611はログデータの最終的な記録域である。本発明のロギングシステムは、ロギング制御部608が受付けたログデータを安全に外部記録メディア611に記録する手段である。
113…ログデータの記録依頼、114…内部メモリ内ログデータの作成、115…ロギング制御部108による低電圧検出フラグの確認、116…ロギング制御部108によるデータ管理領域の更新、117…高速不揮発性メモリ内へのログデータのコピー、118…外部記録メディアへのログデータのコピー。
Claims (2)
- 動作ログのログデータを記録するための外部記録メディアと、SRAM等の高速アクセス可能な高速不揮発性メモリと、電源遮断前の低電圧を検出する低電圧検出回路と、プログラムが動作するための内部メモリを具備した装置において、
前記ログデータのためのデータ管理領域を前記高速不揮発性メモリに配置し、かつ高速不揮発性メモリ内のデータ管理領域の書換え時は、前記低電圧検出回路が検出する低電圧検出フラグを確認する機能を備えたことを特徴とするロギングシステム。 - 請求項1記載のロギングシステムにおいて、
前記ログデータを高速不揮発性メモリと外部記録メディアの両方に保存することで、電源遮断後の次回起動時に、外部記録メディアのログデータの整合性チェックを行い、データ不正のときは、高速不揮発性メモリの内容を元に外部記録メディアへのログデータ復帰させる機能を備えてことを特徴とするロギングシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007255268A JP2009086980A (ja) | 2007-09-28 | 2007-09-28 | ロギングシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007255268A JP2009086980A (ja) | 2007-09-28 | 2007-09-28 | ロギングシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009086980A true JP2009086980A (ja) | 2009-04-23 |
Family
ID=40660331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007255268A Pending JP2009086980A (ja) | 2007-09-28 | 2007-09-28 | ロギングシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009086980A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436598B2 (en) | 2011-03-04 | 2016-09-06 | Renesas Electronics Corporation | Semiconductor device with nonvolatile memory prevented from malfunctioning caused by momentary power interruption |
JP2019139646A (ja) * | 2018-02-14 | 2019-08-22 | 株式会社デンソー | データ記録装置及びデータ記録システム |
-
2007
- 2007-09-28 JP JP2007255268A patent/JP2009086980A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9436598B2 (en) | 2011-03-04 | 2016-09-06 | Renesas Electronics Corporation | Semiconductor device with nonvolatile memory prevented from malfunctioning caused by momentary power interruption |
JP2019139646A (ja) * | 2018-02-14 | 2019-08-22 | 株式会社デンソー | データ記録装置及びデータ記録システム |
JP7155532B2 (ja) | 2018-02-14 | 2022-10-19 | 株式会社デンソー | データ記録装置及びデータ記録システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8788880B1 (en) | Efficient retry mechanism for solid-state memory failures | |
US8812901B2 (en) | Methods and apparatus for marking writes on a write-protected failed device to avoid reading stale data in a RAID storage system | |
US6795890B1 (en) | Data storage method, and data processing device using an erasure block buffer and write buffer for writing and erasing data in memory | |
US9767117B2 (en) | Method and system for efficient write journal entry management for a distributed file system | |
JPH11272427A (ja) | データ退避方法および外部記憶装置 | |
JP2006268524A (ja) | 記憶装置、その制御方法及びプログラム | |
US8411526B2 (en) | Storage device, electronic device, and storage device control method | |
JP2007011522A (ja) | データの消去方法、ストレージ・デバイス及び計算機システム | |
JP2006139478A (ja) | ディスクアレイシステム | |
CN112115515A (zh) | 一种数据保护方法、装置及电子设备和存储介质 | |
US20130219244A1 (en) | Storage device | |
JP4956230B2 (ja) | メモリコントローラ | |
JP2009086980A (ja) | ロギングシステム | |
JP5193822B2 (ja) | 追記型メモリデバイス | |
US20100169572A1 (en) | Data storage method, apparatus and system for interrupted write recovery | |
JP2001101087A (ja) | メモリ及びメモリ制御方法 | |
US20070174739A1 (en) | Disk device, method of writing data in disk device, and computer product | |
US20210257024A1 (en) | Storage control device, storage device, and storage control method | |
WO2016139774A1 (ja) | 情報処理装置、情報処理システム | |
US20190243580A1 (en) | Dram-based storage device and associated data processing method | |
US11550506B2 (en) | Systems and methods for accessing hybrid storage devices | |
US11755223B2 (en) | Systems for modular hybrid storage devices | |
US11586508B2 (en) | Systems and methods for backing up volatile storage devices | |
JP3964629B2 (ja) | ディスクアレイ装置のパトロールによるデータパス異常検出方法及びディスクアレイ装置を備えたコンピュータシステム | |
US7996598B2 (en) | Memory management module |