JP2012123498A - 時系列データを保存する情報処理装置および方法 - Google Patents

時系列データを保存する情報処理装置および方法 Download PDF

Info

Publication number
JP2012123498A
JP2012123498A JP2010272169A JP2010272169A JP2012123498A JP 2012123498 A JP2012123498 A JP 2012123498A JP 2010272169 A JP2010272169 A JP 2010272169A JP 2010272169 A JP2010272169 A JP 2010272169A JP 2012123498 A JP2012123498 A JP 2012123498A
Authority
JP
Japan
Prior art keywords
series data
time
information
storage medium
management table
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
Application number
JP2010272169A
Other languages
English (en)
Inventor
Shuhei Uchida
修平 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2010272169A priority Critical patent/JP2012123498A/ja
Publication of JP2012123498A publication Critical patent/JP2012123498A/ja
Pending legal-status Critical Current

Links

Abstract

【課題】書き込み可能回数が限られている記憶媒体に時系列データの書き込み回数を均等に分散させる情報処理装置および方法を提供する。
【解決手段】時系列データ毎の保存先アドレス情報と保存先アドレスに前記時系列データを書き込んだ回数情報と保存先アドレスに格納されている前記時系列データの書き込み順序情報からなる管理情報1310、1320を基に不揮発性記憶媒体1200の特定領域にデータ種別に関係なく時系列データを書き込む回数を平準化させる制御部1100を備える。
【選択図】図1

Description

本発明は、書き込み可能回数が限られている記憶媒体に時系列データを保存する情報処理装置および方法に関する。
情報処理装置で利用する記憶媒体には、保持データを書き換えると少しずつ劣化していくものがいくつかある。電源を切っても内容が保持される媒体においては、フラッシュメモリ、CD−RW、DVD−RWなど、書き換え可能回数が数百から数千回程度のものが近年では多用されてきている。
一般的に、これらの記憶媒体の書き換え限度回数は、媒体全体に対しての回数ではなく、記憶素子1つに対しての回数となる。つまり、データ書き換えを媒体中の記憶素子にできるだけ均等に分散させることで媒体全体としての書き換え限度回数を飛躍的に向上させることができる。
情報処理装置において、データ書き込み回数を記憶媒体の特定の領域内で均等化する技術として特許文献1と特許文献2が知られている。
特許文献1には、時系列データを記録し、記録するための空き領域がない場合に最も古いデータが保存されている領域を割り当てることが記載されている。
特許文献2には、記憶媒体の書き込み回数の少ない領域に最新データを保存する方法が記載されている。
特開2006−79463号公報 特開2009−205689号公報
しかしながら、特許文献1の方法では、時系列データを順番に空き領域に保存することはできるが、記憶媒体の特定領域内でのデータ書き込み回数をカウントしているわけではないため、記憶媒体のデータ書き換え回数を均等に分散させることはできない。
また、特許文献2の方法では、データ書き込み回数を均等に分散させることはできるが、時系列データを管理するようになっていないため、所望する時系列データの読み出し及び書き込み順序の修正を行うことができない。
上記の課題を解決するために、本発明では、書き込み可能回数が限られている記憶媒体に時系列データの書き込み回数を均等に分散させる情報処理装置および方法を提供することを目的とする。
上記課題を解決するために本発明は、書き込み可能回数が限られている不揮発性記憶媒体に時系列データを保存する情報処理装置において、時系列データ毎の保存先アドレス情報と保存先アドレスに前記時系列データを書き込んだ回数情報と保存先アドレスに格納されている前記時系列データの書き込み順序情報からなる管理情報を基に不揮発性記憶媒体の特定領域にデータ種別に関係なく時系列データを書き込む回数を平準化させる制御部を備えることを特徴とする。
また本発明は、更に時系列データと修正情報を受け取る入力部を備え、前記制御部は、前記情報処理装置の電源投入時に前記不揮発性記憶媒体に保存されている前記管理情報を該揮発性記憶媒体に転送する管理テーブル読み出し処理部と、前記揮発性記憶媒体に転送された管理情報を基に不揮発性記憶媒体の時系列データ保存領域に前記入力部が受け取った時系列データを保存する時系列データ書き込み処理部と、定期的あるいは前記管理情報の変更タイミングで前記揮発性記憶媒体に保存されている前記管理情報を不揮発性記憶媒体に保存する管理テーブル保存処理部とを備えることを特徴とする。
また本発明における前記制御部は、前記入力部より受け取った修正情報から管理情報を変更することで、前記時系列データの書き込み順序を修正する書き込み順序修正処理部をさらに備えることを特徴とする。
また本発明は、書き込み可能回数が限られている不揮発性記憶媒体に時系列データを保存する情報処理方法において、時系列データと修正情報を受け取る入力部を備え、情報処理装置の電源投入時に前記不揮発性記憶媒体に保存されている管理情報を揮発性記憶媒体に転送する管理テーブル読み出し処理ステップと、前記揮発性記憶媒体に転送された管理情報を基に不揮発性記憶媒体の時系列データ保存領域に前記入力部が受け取った時系列データを保存する時系列データ書き込み処理ステップと、前記入力部より受け取った修正情報から管理情報を変更することで、前記時系列データの書き込み順序を修正する書き込み順序修正処理ステップと、定期的あるいは前記管理情報の変更タイミングで前記揮発性記憶媒体に保存されている前記管理情報を不揮発性記憶媒体に保存する管理テーブル保存処理ステップと、からなることを特徴とする。
本発明によれば、書き込まれているデータ種別によらず、記録媒体のデータ保存領域に対してデータ書き込み回数を均等に分散させることができる。これにより、書き込み可能回数が限られている記憶媒体の寿命を延ばし、結果として記憶媒体を含む装置の維持費用を減少させることが可能となる。
また、データの書き込み順序の修正が可能となり、データの管理を容易としている。
本発明における情報処理装置の構成例を示す図である。 時系列データ保存領域の一例を示す図である。 管理テーブルの一例を示す図である。 最新時系列データ関連情報の一例を示す図である。 本発明におけるプログラム構成例を示す図である。 管理テーブル読み出し処理部の動作を示すフローチャートである。 最新時系列データ関連情報の作成結果を示す図である。 時系列データ読み出し処理部の動作を示すフローチャートである。 時系列データ書き込み処理部の動作を示すフローチャートである。 S4730の第2段階適用後の管理テーブルを示す図である。 S4730の第4段階適用後の管理テーブルを示す図である。 S4730の第5段階適用後の最新時系列データ関連情報を示す図である。 書き込み順序修正処理部の動作を示すフローチャートである。 S4820の第2段階適用後の管理テーブルを示す図である。 S4820の第3段階適用後の管理テーブルを示す図である。 S4820の第4段階適用後の管理テーブルを示す図である。 管理テーブル保存処理部の動作を示すフローチャートである。
以下、本発明の実施の形態について、詳細に説明する。
図1は、本発明における情報処理装置の構成例を示す図である。
図1に示すように、情報処理装置1000は、マイクロプロセッサ1100、不揮発性メモリの一種であるフラッシュメモリ1200、揮発性メモリの一種であるDRAM1300、キーボード、マウスなどの入力部1800、ディスプレイ装置、プリンタなどの出力部1900を備える。
フラッシュメモリ1200は、請求項1における「書き込み可能回数が限られている記憶媒体」に相当し、時系列データ保存領域1210、管理テーブル保存領域1280、およびプログラム保存領域1290を備える。ここで、プログラム保存領域1290は、電源投入時の起動時処理や時系列データの読み出し・書き込み・修正などの本発明に係る各処理を実施するプログラムのみならず、他の処理を実行するプログラム(以下、アプリケーションプログラムと称する)も保存されている。
DRAM1300は、管理情報が保存されている作業用管理テーブル領域1310、および最新時系列データ関連情報領域1320を備える。ここで、作業用管理テーブル領域1310は、管理テーブル保存領域1280に保存されている管理テーブルの情報を、情報処理装置1000が動作する間保持し続けるメモリ領域であり、時系列データの読み出し・書き込み・修正の各処理において使用される。また、最新時系列データ関連情報領域1320は、作業用管理テーブル領域1310に保存されている管理テーブルの情報から最新時系列データ関連情報を作成し、時系列データの読み出し・書き込み・修正の各処理において使用される。
入力部1800は、時系列データ入力者2000によるデータ入力・修正操作、および制御部1100に対する要求操作で使用される。また、出力部1900は、時系列データ入力者2000による入力部1800を通した操作の確認、および制御部1100の動作確認で使用される。
なお、上記において、プログラム保存領域1290はフラッシュメモリ1200内にのみあるものとしているが、そのほかの場所にあっても良い。例えば、起動後にDRAM1300内にプログラムを転送し、DRAM1300上の前記プログラムを実行しても良い。
また、情報処理装置1000のデータ入力・修正は、時系列データ入力者2000(人間)である必要はなく、ネットワーク(図示せず)を経由した他の装置からの処理要求プログラムであっても良く、情報処理装置1000内のアプリケーションプログラムが行っても良い。
マイクロプロセッサ(制御部)1100は、プログラム保存領域に保存されているプログラムを読み出し、起動時処理部4000、管理テーブル読み出し処理部4100、時系列データ読み出し処理部4600、時系列データ書き込み処理部4700、書き込み順序修正処理部4800、アプリケーション処理部4500、管理テーブル保存処理部4900の各処理部を実行させる。各処理部の概要については、図5のプログラム構成で後述する。
図2は、時系列データ保存領域1210の一例を示す図である。図2では、アドレスと、そのアドレスが示す領域に保存されている時系列データと、前記時系列データの作成日時情報を示す。本実施例では、時系列データの種別として、2種類(業務1の情報、および業務2の情報)が存在する。時系列データは、時系列データ入力者2000により、入力部1800を通して随時入力され、入力したデータは、制御部により所定の時系列データ保存領域1210に保存される。
ここで、業務1の情報、および業務2の情報のデータサイズは、どちらもフラッシュメモリ1200のセクタサイズの60%〜99%程度としている。これは、本実施例では1セクタに1個の時系列データを書き込むことを想定しており、その際の時系列データとして実用上、適切と考えられるサイズとして定めたものであり、本発明の本質ではない。
図3は、本発明における新規考案部分である管理テーブル3000の構成である。管理テーブル3000は、インデックス、アドレス、書き換え回数、前回データのインデックス、データサイズの各列から構成されている。次に各列の項目について説明する。
1.インデックス3050:各行にインデックスを格納する。このインデックスは図2で説明した時系列データに一つのインデックスが対応する(以降、「列INDEX」と表記)。
2.アドレス3100:インデックスに対応する時系列データのアドレスを格納する(以降、「列ADDR」と表記)。
3.書き換え回数3150:インデックスに対応するアドレスが示す領域が書き換えられた回数を格納する(以降、「列REWRITE」と表記)。
4.前回データのインデックス3200:同一種別の時系列データを新しい順に並べたとき、インデックスに対応する時系列データの1つ前に保存したときの時系列データに対応するインデックスを格納する(以降、「列PREV」と表記)。また、値「該当無し」は、インデックスに対応する時系列データが最も古いデータであることを示す。この前回データのインデックスから時系列ータの保存順を知ることができる。さらに、列PREVとは別に、同一種別ごとに前回データのインデックスを持っても良い。
5.データサイズ3250:図2で説明した時系列データのデータサイズを格納する(以降、「列SIZE」と表記)。
管理テーブル3000の情報は、情報処理装置1000が電源断状態の間は、フラッシュメモリ1200内の管理テーブル保存領域1280に保存されている。一方、情報処理装置1000が動作している間は、管理テーブル保存領域1280にある管理テーブル3000の情報が読み出され、DRAM1300内の作業用管理テーブル領域1310に転送され、作業用管理テーブル領域1310の管理テーブル3000が編集される。また、作業用管理テーブル領域1310の管理テーブル3000の情報は、定期的に、あるいは管理テーブルの情報に変更が生じたタイミングで、作業用管理テーブル領域1310の管理テーブル3000の情報を管理テーブル保存領域に保存する。
図4は、最新時系列データ関連情報3500である。最新時系列データ関連情報3500は、時系列データ種別、最新時系列データのインデックスの各列から構成されている。次に各列の項目について説明する。
1.時系列データ種別3550:時系列データの種別を格納する(以降、「列CLASS_DATA」と表記)。
2.最新時系列データのインデックス3600:最新時系列データに対応する管理テーブル3000のインデックスを格納する(以降、「列NEWESTINDEX」と表記)
(プログラム構成)
図5は、プログラム保存領域1290に保存されるプログラムの構成概略である。各処理部の実態は処理プログラムとなっている。
(起動処理部4000)
起動処理部4000は、情報処理装置1000の電源投入時に最初に起動されるプログラムであり、管理テーブル保存領域1280にある管理テーブル3000の情報をDRAM1300内の作業用管理テーブル領域1310に転送するため、管理テーブル読み出し処理部4100を呼び出し、アプリケーション処理部に起動要求を出す。
(アプリケーション処理部)
アプリケーション処理部4500は、時系列データ読み出し処理部4600、時系列データ書き込み処理部4700、書き込み順序修正処理部4800、管理テーブル保存処理部4900を呼び出し、各種処理部を実行する。
また、アプリケーション処理部4500は、管理テーブル3000の情報を保持するために定期的に、あるいは管理テーブル3000の情報に変更が生じたタイミングで、管理テーブル保存処理部4900を呼び出し、作業用管理テーブル領域1310の管理テーブル3000の情報を管理テーブル保存領域に保存する。
さらに、アプリケーション処理部4500は、入力部1800を通じて時系列データ入力者2000からの時系列データの読み出し・書き込み・修正指令に対応し、時系列データ読み出し処理部4600、時系列データ書き込み処理部4700、書き込み順序修正処理部4800を呼び出す。
なお、本実施例では、情報処理装置1000が電源断等により突発的に停止した場合にも、管理テーブル3000で管理する時系列データの管理情報と時系列データ保存領域1210に保存された時系列データの情報に不整合が生じないようにするため、管理テーブル保存処理部4900をアプリケーション処理部4500から呼び出している。しかし、前記呼び出し元がアプリケーション処理部4500であることは、本発明の本質ではない。
(管理テーブル読み出し処理部4100)
図6は、管理テーブル読み出し処理部4100の動作を説明する処理フローを示す図である。
管理テーブル読み出し処理部4100は、管理テーブル保存領域1280に保存されている管理テーブル3000の情報を、作業用管理テーブル領域1310に転送する(S4110)。さらに、作業用管理テーブル領域1310に保存されている管理テーブル3000の情報から、最新時系列データ関連情報3500を作成する(S4120)。これは、管理テーブル3000の列ADDR、列PREVの全ての行に対し読み取ることにより実施する。次に、S4120で作成した最新時系列データ関連情報3500(時系列データ種別、最新時系列データのインデックス)を、最新時系列データ関連情報領域1320に保存する(S4130)。
図7は、図3の管理テーブル3000の情報から管理テーブル読み出し処理部4100により作成された最新時系列データ関連情報を示す。
(時系列データ読み出し処理部4600)
図8は、時系列データ読み出し処理部4600の動作を説明する処理フローを示す図である。
以降、時系列データの種別を「class」、何番目に新しい時系列データがあるかを表す値を「dataINDEX」と表記する。
時系列データ読み出し処理4600は、最新時系列データ関連情報3500、および管理テーブル3000から、指定された種別・インデックスを持つ時系列データが保存されている時系列データ保存領域1210中のアドレスを検索する(S4610)。
S4610は、下記の手順で実施する。
(ア)最新時系列データ関連情報3500から、classに対する列NEWESTINDEXの値を読み取る。
(イ)(ア)で読み取った列NEWESTINDEXの値、および管理テーブル3000に記載の列PREVを使用し、dataINDEXに対応する時系列データの列ADDRの値を求める。
次に、S4610で求めた値が示す時系列データ保存領域1210のアドレスから時系列データを読み出す(S4620)。
例えば、図2に記載の時系列データ保存領域1210、図3に記載の管理テーブル3000、および、図7に記載の最新時系列データ関連情報3500に対し、class=「業務1の情報」、dataINDEX=「1」(最新データ)を指定し、時系列データ読み出し処理部4600を実行した場合、2010年8月1日12:00に作成された時系列データ「業務1の情報」が読み出される。
(時系列データ書き込み処理部4700)
図9は、時系列データ書き込み処理部4700の動作を説明する処理フローを示す図である。
以降、書き込む時系列データの種別を「newclass」、時系列データとして書き込むデータを「newdata」、時系列データとして書き込むデータのサイズを「SIZE」、各時系列データの種別に対し、新しい方から何番目のデータが書き換えられてはならないかを示す値の集合を「REWRITEprohibset」と表記する。
前記集合は、最新の時系列データ、および、修正時に使用される時系列データが書き換えられることを防ぐために指定するものであり、本発明の本質ではない。
時系列データ書き込み処理部4700は、最新時系列データ関連情報3500、および管理テーブル3000から、もっとも書き換え回数の少ない時系列データ保存領域1210中のアドレスを検索する(S4710)。
S4710は、下記の手順で実施する。
(ア)書き換えてはならない時系列データに対応する管理テーブル3000の列INDEXを求める。すなわち、最新時系列データ関連情報3500に記載の各種別に対する列NEWESTINDEX、および管理テーブル3000に記載の列PREVから管理テーブル3000を検索することにより、REWRITEprohibsetに対応する管理テーブル3000における列INDEXの値の集合を求める。
(イ)最新時系列データ関連情報3500に記載の全種別に対する列NEWESTINDEX、および管理テーブル3000に記載の列PREVから管理テーブル3000を検索することにより、検索対象の管理テーブル3000における行の中で列REWRITEが最小である行の列INDEXの値=「4」を求める。ただし、(ア)で求めた値の集合に含まれる列INDEXの値は、前記検索の対象から除外する。
ここで、最新時系列データ関連情報3500に記載のclassに対する列NEWESTINDEXではなく、「全種別」に対する列NEWESTINDEXを使用することで、データ種別に関係なく時系列データを書き込む回数を平準化させることを可能としている。
(ウ)(イ)で求めた列INDEXの値と同一行にある列ADDRの値を、管理テーブル3000から読み取る。
次に、S4710の(ウ)で読み取った列ADDRの値が示す時系列データ保存領域1210のアドレスに、newdataを書き込む(S4720)。
次に、管理テーブル3000および最新時系列データ関連情報3500を更新する(S4730)。これは、下記手順で実施する。
なお、処理の理解を容易とするため、必要に応じ、図2に記載の時系列データ保存領域1210、図3に記載の管理テーブル3000および図7に記載の最新時系列データ関連情報3500に対し、newclass=業務2の情報、newdata=業務2の情報に関する時系列データ、SIZE=「FE85」、REWRITEprohibset=「2」を指定し、時系列データ書き込み処理4700を実行した場合の各ステップにおける管理テーブル3000および最新時系列データ関連情報3500の変化も合わせて示す。
(ア)(S4730の第1段階)
説明の都合上、管理テーブル3000中、S4710の(イ)で求めた列INDEXの値(書き換え領域に対応するインデックス)が記載されている行を、Lとおく。
(イ)(S4730の第2段階)
管理テーブル3000における列PREVの値が行Lの列INDEXの値と同一である行(以下、行L)が存在するときに限り、行Lの列PREVの値を行Lにおける列PREVの値に変更する。
この時点における管理テーブル3000を図10に示す。図10における太字(インデックス「5」に対応する前回データのインデックス「0」)は、図3から変更となった値であることを示す。
(ウ)(S4730の第3段階)
行Lにおける列REWRITEの値を1増やし、「2」とする。ここで、行Lにおける列SIZEの値=「FE85」にする。
(エ)(S4730の第4段階)
行Lにおける列PREVの値を、最新時系列データ関連情報3500における種別newclassに対する列NEWESTINDEXの値=「2」(書き換え前の最新時系列データに対応するインデックス)にする。
この時点における管理テーブル3000を図11に示す。図11における太字(インデックス「4」に対応する書き換え回数「2」、次回データのインデックス「2」、データサイズ「FE85」)は、図10から変更となった値であることを示す。
(オ)(S4730の第5段階)
最新時系列データ関連情報3500における種別newclassに対する列NEWESTINDEXの値=「2」をS4710の(イ)で求めた列INDEXの値=「4」にする。
この時点における最新時系列データ関連情報3500を図12に示す。図12における太字(時系列データ種別「業務2の情報」に対応する最新時系列データのインデックス「4」)は、図7から変更となった値であることを示す。
なお、時系列データ書き込み処理4700におけるS4730の各段階の実行順序は、本発明の本質ではない。
(書き込み順序修正処理部4800)
図13は、書き込み順序修正処理部4800の動作を説明する処理フローを
示す図である。
本処理は、時系列データ入力者2000が時系列データの書き込み順序を修正する際に、時系列データ入力者2000によりアプリケーションプログラム4500から呼び出され、処理するものである。
以降、時系列データの種別を「class」、最新の時系列データとして使用する時系列データが何番目に新しいかを表す値を「dataINDEX」と表記する。
最新時系列データ関連情報3500、および管理テーブル3000を使用し、修正したい時系列データに対応する管理テーブル3000中のインデックスを検索する(S4810)。
S4810は、下記手順で実施する。
(ア)最新時系列データ関連情報3500から、classに対する列NEWESTINDEXの値を読み取る。
(イ)(ア)で読み取った列NEWINDEXの値、および管理テーブル3000に記載の列PREVを使用し、dataINDEXに対応する管理テーブルのインデックスを検索する。
次に、修正したい時系列データが最新の時系列データとなり、S4810実行前の時点における最新の時系列データが最古の時系列データとなるように、最新時系列データ関連情報3500、および管理テーブル3000を更新する(S4820)。
S4820は、下記手順で実施する。
なお、処理の理解を容易とするため、必要に応じ、図2に記載の時系列データ保存領域1210、図3に記載の管理テーブル3000、および、図7に記載の最新時系列データ関連情報3500を基に、class=「業務1の情報」、dataINDEX=「2」(2番目に新しいデータ)の情報を入力部より受け取り、書き込み順序修正処理部4800を実行した場合の各ステップにおける管理テーブル3000、および最新時系列データ関連情報3500の変化も合わせて示す。
(ア)(S4830の第1段階)
説明の都合上、最新時系列データ関連情報3500における列CLASS_DATAがclass=「業務1の情報」である行を行Lとおく。
(イ)(S4830の第2段階)
行Lにおける列NEWESTINDEXの値、および管理テーブル3000中の列PREVの値を使用し、種別がclass=「業務1の情報」である時系列データ中で最も古い時系列データに対応する管理テーブル3000中の行(以下、行L)を検索する。そのうえで、行Lにおける列PREVの値を、行Lにおける列NEWESTINDEXの値=4とする。
この時点における管理テーブル3000を図14に示す。図14における太字(インデックス「1」に対応する前回データのインデックス「5」)は、図3から変更となった値であることを示す。
(ウ)(S4830の第3段階)
行Lにおける列NEWESTINDEXの値を持つ管理テーブル3000中の行における列PREVを「該当無し」とする。
この時点における管理テーブル3000を図15に示す。図15における太字(インデックス「5」に対応する前回データのインデックス「該当無し」)は、図14から変更となった値であることを示す。
(ア)(S4830の第4段階)
行Lにおける列NEWESTINDEXの値をS4810の(イ)で求めた列INDEXの値=「4」とする。
この時点における最新時系列データ関連情報3500を図16に示す。図16における太字(時系列データ種別「業務1の情報」に対応する最新時系列データのインデックス「4」)は、図7から変更となった値であることを示す。
なお、S4830において書き込み順序修正処理部4800実行前の時点における最新の時系列データを、実行後は最古の時系列データとなるような処理とした。しかし、これは、書き込み順序修正処理部4800実行前の時点における最新の時系列データを最新でない時系列データとすることにより、過去の時系列データを最新の時系列データとして修正することを目的としている。したがって、書き込み順序修正処理部4800実行前の時点における最新の時系列データを、書き込み順序修正処理部4800により最古の時系列データとしていることは、本発明の本質ではない。
また、書き込み順序修正処理部4800におけるS4730の各段階の実行順序も、発明の本質ではない。
上述した書き込み順序修正処理部の動作は、2番目に新しいデータを最新データとし、最新データを最も古いデータに修正する例であるが、その他にも、所望する時系列データを削除したり、所望する書き込み順序に修正することができる。
また、時系列データを修正する場合は、時系列データ書き込み処理部4700と書き込み順序修正処理部4800の動作により容易に実施することができる。この時、修正したデータは、修正前に保存されていた時系列データ保存領域1210のアドレスに保存するのではなく、最も書き込み回数の少ないアドレスに保存することで、頻繁に同じ時系列データの修正が発生したとしても時系列データ保存領域の書き込む回数を平準化させることが可能となる。
(管理テーブル保存処理部4900)
図17は、管理テーブル保存処理部4900の動作を説明する処理フローを示す図である。
作業用管理テーブル領域1310に保存されている管理テーブル3000の情報を、管理テーブル保存領域1280に保存する(S4910)。これは、管理テーブル3000の情報を保持するための動作であり、定期的に、あるいは管理テーブル3000の情報に変更が生じたタイミングで実施する。
本実施例によれば、書き込まれているデータ種別によらず、記録媒体のデータ保存領域に対してデータ書き込み回数を均等に分散させることができる。これにより、書き込み可能回数が限られている記憶媒体の寿命を延ばし、結果として記憶媒体を含む装置の維持費用を減少させることが可能となる。
また、データの書き込み順序の修正が可能となり、データの管理を容易としている。さらに、修正したデータについても書き込む回数を平準化させることが可能となる。
1000 情報処理装置
1100 マイクロプロセッサ
1200 フラッシュメモリ
1210 時系列データ保存領域
1280 管理テーブル保存領域
1290 プログラム保存領域
1300 DRAM
1310 作業用管理テーブル領域
1320 最新時系列データ関連情報領域
1800 入力部
1900 出力部
2000 時系列データ入力者
3000 管理テーブル
3500 最新時系列データ関連情報
4000 起動時処理部
4100 管理テーブル読み出し処理部
4500 アプリケーション処理部
4600 時系列データ読み出し処理部
4700 時系列データ書き込み処理部
4800 書き込み順序修正処理部
4900 管理テーブル保存処理部

Claims (4)

  1. 書き込み可能回数が限られている不揮発性記憶媒体に時系列データを保存する情報処理装置において、
    時系列データ毎の保存先アドレス情報と保存先アドレスに前記時系列データを書き込んだ回数情報と保存先アドレスに格納されている前記時系列データの書き込み順序情報からなる管理情報を基に不揮発性記憶媒体の特定領域にデータ種別に関係なく時系列データを書き込む回数を平準化させる制御部を備えることを特徴とする情報処理装置。
  2. 請求項1記載の情報処理装置において、
    更に時系列データと修正情報を受け取る入力部を備え、
    前記制御部は、
    前記情報処理装置の電源投入時に前記不揮発性記憶媒体に保存されている前記管理情報を該揮発性記憶媒体に転送する管理テーブル読み出し処理部と、
    前記揮発性記憶媒体に転送された管理情報を基に不揮発性記憶媒体の時系列データ保存領域に前記入力部が受け取った時系列データを保存する時系列データ書き込み処理部と、
    定期的あるいは前記管理情報の変更タイミングで前記揮発性記憶媒体に保存されている前記管理情報を不揮発性記憶媒体に保存する管理テーブル保存処理部と、
    を備えることを特徴とする情報処理装置。
  3. 請求項2記載の情報処理装置において、
    前記制御部は、
    前記入力部より受け取った修正情報から管理情報を変更することで、前記時系列データの書き込み順序を修正する書き込み順序修正処理部をさらに備えることを特徴とする情報処理装置。
  4. 書き込み可能回数が限られている不揮発性記憶媒体に時系列データを保存する情報処理方法において、
    時系列データと修正情報を受け取る入力部を備え、
    情報処理装置の電源投入時に前記不揮発性記憶媒体に保存されている管理情報を揮発性記憶媒体に転送する管理テーブル読み出し処理ステップと、
    前記揮発性記憶媒体に転送された管理情報を基に不揮発性記憶媒体の時系列データ保存領域に前記入力部が受け取った時系列データを保存する時系列データ書き込み処理ステップと、
    前記入力部より受け取った修正情報から管理情報を変更することで、前記時系列データの書き込み順序を修正する書き込み順序修正処理ステップと、
    定期的あるいは前記管理情報の変更タイミングで前記揮発性記憶媒体に保存されている前記管理情報を不揮発性記憶媒体に保存する管理テーブル保存処理ステップと、
    からなることを特徴とする情報処理方法。
JP2010272169A 2010-12-07 2010-12-07 時系列データを保存する情報処理装置および方法 Pending JP2012123498A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010272169A JP2012123498A (ja) 2010-12-07 2010-12-07 時系列データを保存する情報処理装置および方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010272169A JP2012123498A (ja) 2010-12-07 2010-12-07 時系列データを保存する情報処理装置および方法

Publications (1)

Publication Number Publication Date
JP2012123498A true JP2012123498A (ja) 2012-06-28

Family

ID=46504899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010272169A Pending JP2012123498A (ja) 2010-12-07 2010-12-07 時系列データを保存する情報処理装置および方法

Country Status (1)

Country Link
JP (1) JP2012123498A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715341B2 (en) 2014-10-29 2017-07-25 Samsung Electronics Co., Ltd. Operating a memory device using a program order stamp to control a read voltage
US9858014B2 (en) 2014-10-29 2018-01-02 Samsung Electronics Co., Ltd. Memory system and method of operating same using program order information
US9921749B2 (en) 2014-10-29 2018-03-20 Samsung Electronics Co., Ltd. Memory system and method including determining a read voltage based on program order information and a plurality of mapping tables

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715341B2 (en) 2014-10-29 2017-07-25 Samsung Electronics Co., Ltd. Operating a memory device using a program order stamp to control a read voltage
US9858014B2 (en) 2014-10-29 2018-01-02 Samsung Electronics Co., Ltd. Memory system and method of operating same using program order information
US9921749B2 (en) 2014-10-29 2018-03-20 Samsung Electronics Co., Ltd. Memory system and method including determining a read voltage based on program order information and a plurality of mapping tables

Similar Documents

Publication Publication Date Title
TWI590049B (zh) 記憶體裝置與其操作方法
US9996462B1 (en) Data storage device and data maintenance method thereof
JP5990430B2 (ja) Ssd(ソリッドステートドライブ)装置
TWI406127B (zh) 更新使用者資料的方法
JP4925301B2 (ja) 半導体メモリシステム
JP2008192266A (ja) メモリコントローラ
JP2008181399A (ja) メモリコントローラ
KR20100003244A (ko) 판독 실패 관리 방법 및 시스템
JP2009521049A (ja) ブロック消去可能な記憶場所を有するメモリ
US9465538B2 (en) Flash memory control chip and data storage device and flash memory control method
JP2013222435A (ja) 半導体記憶装置及びその制御方法
US20160170674A1 (en) Optimized management of operation data in a solid-state memory
TWI450271B (zh) 用來管理一快閃記憶體的複數個區塊之方法以及相關之記憶裝置及其控制器
US10248526B2 (en) Data storage device and data maintenance method thereof
JP2012123498A (ja) 時系列データを保存する情報処理装置および方法
JP2011209963A (ja) メモリ制御装置及びメモリ制御方法
US20080313451A1 (en) Data recovery method
US20130080690A1 (en) Method to emulate eeprom using flash memory
JP2009086738A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2017054173A (ja) メモリー管理回路、記憶装置、メモリー管理方法、及びメモリー管理プログラム
JP6636930B2 (ja) フラッシュメモリ内蔵マイコン、マイコンに内蔵されたフラッシュメモリへのデータ書込み方法、および、フラッシュメモリへのデータを書込むプログラム
JP4468342B2 (ja) データ管理方法
JP2011175361A (ja) データ記憶装置及びデータ記憶方法
JP5535113B2 (ja) メモリシステム
JP2006164354A (ja) カウンタ装置およびカウント方法