JP2000215098A - メモリ書き込み方法 - Google Patents
メモリ書き込み方法Info
- Publication number
- JP2000215098A JP2000215098A JP1394199A JP1394199A JP2000215098A JP 2000215098 A JP2000215098 A JP 2000215098A JP 1394199 A JP1394199 A JP 1394199A JP 1394199 A JP1394199 A JP 1394199A JP 2000215098 A JP2000215098 A JP 2000215098A
- Authority
- JP
- Japan
- Prior art keywords
- data
- flash rom
- writing
- area
- stored
- 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
Landscapes
- Read Only Memory (AREA)
Abstract
とによりフラッシュロムへのデータ書き込み時間を短縮
する。 【解決手段】 一時格納領域に格納されたデータを不揮
発性メモリに書き込むメモリ書き込み方法において、新
たに書き込むべきデータ及び、書き込み先の不揮発性メ
モリ領域に格納されているデータを一時待避させ、上記
一時格納領域に保存する工程と、上記書き込み先の不揮
発性メモリ領域が、上書き可能か否かを判断する工程
と、上記判断工程において、上書き可能であるならば、
該メモリ領域に一時格納領域に格納されたデータを直接
上書きすると共に、上書き可能でなければ、該メモリ領
域をイレースした後一時格納領域に格納されたデータを
書き込む工程と、を備えた。
Description
性メモリに書き込む際のメモリ書き込み方法に関する。
るデータ管理イメージを示した図である。図において、
6Aは不揮発性メモリであるフラッシュロム、61Aは
フラッシュロム内部に格納されるデータを管理するデー
タ管理テーブル領域、62Aはフラッシュロム内部に格
納されるデータが格納されるデータ領域である。なお、
データ管理テーブル領域61Aは、格納されているデー
タの種類を示すデータ種類611A、データの序数を示
すデータ番号612A、データが格納されているフラッ
シュロムのアドレスが示されるアドレス613A、該デ
ータのデータ長を示すデータ長614Aから成るデータ
を各データ毎に格納している。
ムに書き込む際の概略手順について示したフローチャー
トである。図11は、データをフラッシュロムに書き込
む際の詳細手順について示したフローチャートである。
図12は、フラッシュロムへのデータ書き込み手順の動
作説明図である。
タ書き込み動作について説明する。フラッシュロムに対
して書き込むパケットデータが送信されてきた場合、ス
テップS41で該パケットに格納されているデータが書
き込みデータとしての先頭なのか、書き込みデータとし
ての中間のデータなのか、書き込み終了を示す終了デー
タなのかを判定する。パケットが、これからフラッシュ
ロムへのデータ書き込みを行う先頭を示すものであると
き、ステップS42に移行し、書き込むデータ種類と書
き込みサイズを判定する。
定した書き込むデータ種類とサイズに基づき、今回書き
込むデータが既にフラッシュロム内に存在しているデー
タか否かの判定を行い、既に存在するデータの場合、ス
テップS44で存在しているデータの削除を行う。な
お、ステップS44でのデータ削除は、フラッシュロム
内のデータを削除(変更)することではなく、そのデー
タを無効とすることである。また、ステップS43に
て、存在するデータが無い場合は、ステップS45に移
行する。
より、データの格納先の空き領域を検索し、空き領域が
ある場合は、そのアドレスを保存し、ステップS46に
移行する。ここで、データ格納先の空き領域が無い場合
は、エラーとなる。
RAM上に保存し、ステップS47でそのサイズがバッ
ファ以上になった場合、ステップS48で保存しておい
たアドレスのフラッシュロムにデータを書き込む。な
お、フラッシュロムへのデータ書き込みは、書き込みア
ドレス、書き込みサイズ、DRAMバッファに基づいて
行う。
ュロムへの具体的データ書き込みについて説明する。図
12において、フラッシュロム上、「無効」と示されて
いる領域は、以前は使用されていたが何等かの理由で削
除された無効領域であり、それ以外はデータが有効に存
在する有効領域である。また、図12において、(a)
〜(f)は、書き込みが行われる際の動作を時系列的に
示している。
タがDRAM上に書き込まれる。(図12(a)) ステップS51では、フラッシュロム書き込みアドレス
に対するセクタの先頭を算出し、ステップS52に移行
する。ステップS52では、新たにフラッシュロムへ書
き込むべきデータが格納されたコピー元DRAMデータ
のセクタ先頭からのオフセット値を算出し、ステップS
53でそのオフセット位置へコピー元DRAM上のデー
タをコピーする。つまり、DRAM上のデータが書き込
み先であるフラッシュロムと同じオフセット位置になる
ように移動する。(図12(b))
タに対応するフラッシュロム上のデータを、有効データ
・無効データを問わず、書き込み部分以外を全てDRA
Mにコピーする。(図12(c)) そして、ステップS55にて、セクタのイレースを行い
(図12(d))、ステップS56でDRAM内のデー
タをフラッシュロムに書き込む(図12(e))ことに
より、フラッシュロムへの書き込みが終了する。(図1
2(f))
「1」→「0」への書き込みは可能であるが、その逆で
あるビット「0」→「1」への書き込みは不可である。
また、ビット「0」を「1」にするためにはセクタ単位
のイレース処理が必要であり、イレースを行うことによ
りセクタデータすべてのビットが「1」となる。
書き込み処理では、書き込み処理の度にフラッシュロム
のイレース処理を行っている。ここで、フラッシュロム
のイレース処理には、数秒の時間を要するため、フラッ
シュロムへの書き込み処理が遅くなってしまうといった
問題点があった。
なされたもので、イレース処理の回数を可能な限り削減
することにより不揮発性メモリへのデータ書き込み時間
を短縮することを目的とする。
領域に格納されたデータを不揮発性メモリに書き込むメ
モリ書き込み方法において、新たに書き込むべきデータ
及び、書き込み先の不揮発性メモリ領域に格納されてい
るデータを一時待避させ、上記一時格納領域に保存する
工程と、上記書き込み先の不揮発性メモリ領域が、上書
き可能か否かを判断する工程と、上記判断工程におい
て、上書き可能であるならば、該メモリ領域に一時格納
領域に格納されたデータを直接上書きすると共に、上書
き可能でなければ、該メモリ領域をイレースした後一時
格納領域に格納されたデータを書き込む工程と、とを備
えたものである。
格納されているデータを一時待避させ、上記一時格納領
域に保存する際に、一時待避させるデータの有効性を判
断し、無効なデータである場合には、該無効データに対
応するメモリ領域に初期化したデータを用いるものであ
る。
は、フラッシュロムへのデータ書き込みをモニタ装置に
おいて説明する。図1は、接続される機器のモニタを行
うモニタ装置の概略を示す構成図である。図において、
1はプログラマブルコントローラ(以下、PCと称す)
を介して、工場組立ラインのロボットや数値制御装置の
状況をモニタするモニタ装置、2はモニタ装置が動作す
るための画面データを作成するパソコン、3はロボット
や数値制御装置を制御するPCである。モニタ装置1
は、モニタ装置を動作させたりモニタを実行するための
CPU4と、データを表示したり数値入力を行うべくタ
ッチパネルを備えた表示手段5と、画面に表示する画面
データを保存する不揮発性メモリであり、例えばフラッ
シュロムからなるメモリ6と、PC3とモニタ装置が通
信するためのPCインタフェース(以下、PCI/Fと
称す)7と、パソコン2とモニタ装置が通信するための
パソコンインタフェース(以下パソコンI/Fと称す)
8とを有している。
をモニタ装置1のメモリ、すなわちフラッシュロムにダ
ウンロードする際の処理について機能ブロックで示した
ブロック図である。図において、11はパソコン2との
パケット単位の通信を保証する通信機能、12はパケッ
トデータに対する処理を決定する処理分岐機能、13は
パケット単位のデータを画面単位のデータに再生成し、
フラッシュロム6に書き込むFROM書き込み機能、1
4はフラッシュロム6に格納されたデータを読み出し、
画面データの内容によりPC3からデータを読み込み画
面に表示するモニタ機能である。
データ管理イメージを示した図である。図において、6
は不揮発性メモリであるフラッシュロム、61はフラッ
シュロム内部に格納されるデータを管理するデータ管理
テーブル領域、62はフラッシュロム内部に格納される
データが格納されるデータ領域である。なお、データ管
理テーブル領域61は、格納されているデータの種類を
示すデータ種類611、データの序数を示すデータ番号
612、データが格納されているフラッシュロムのアド
レスが示されるアドレス613、該データのデータ長を
示すデータ長614から成るデータを各データ毎に格納
している。
に書き込む際の概略手順について示したフローチャート
であり、従来技術説明した動作と同一である。図5は、
本実施の形態におけるデータをフラッシュロムに書き込
む際の詳細手順について示したフローチャートである。
図6は、本実施の形態におけるフラッシュロムへのデー
タ書き込み手順の動作説明図であり、(a)〜(c)
は、書き込みが行われる際の動作を時系列的に示してい
る。
ータ書き込み概略動作について説明する。フラッシュロ
ムに対して書き込むパケットデータ(画面データ)が送
信されてきた場合、通信機能は該パケットデータを受け
取り、モニタ装置内部処理に対応した所定のデータ変換
を行い処理分岐機能12に渡す。処理分岐機能12で
は、ステップS1で該パケットに格納されているデータ
が書き込みデータとしての先頭なのか、書き込みデータ
としての中間のデータなのか、書き込み終了を示す終了
データなのかを判定する。パケットが、これからフラッ
シュロムへのデータ書き込みを行う先頭を示すものであ
るとき、ステップS2に移行し、パケットに付された情
報に基づき、書き込むデータ種類とフラッシュロムのい
ずれのアドレスに書き込むのかを示す書き込みアドレ
ス、書き込みサイズを判定する。
いるデータ種類、書き込みアドレス、書き込みサイズ
と、データ管理テーブル領域61内の比較を行い(ステ
ップS3)、今回書き込むデータが既にフラッシュロム
内に存在している場合、ステップS4で存在しているデ
ータの削除を行う。なお、ステップS4でのデータ削除
は、フラッシュロム内のデータを削除(変更)すること
ではなく、そのデータを無効とすることである。また、
ステップS3にて、存在するデータが無い場合は、ステ
ップS5移行する。
り、今回書き込むべきデータのデータ長に基づきデータ
の格納先の空き領域を検索し、空き領域がある場合は、
そのパケットに付されていたアドレスを保存し、ステッ
プS6に移行する。ここで、データ格納先の空き領域が
無い場合は、エラー表示を行い、パケットによるフラッ
シュロムへの書き込みを中止する。
格納領域であるDRAM上に保存し、ステップS7でそ
のサイズがバッファ以上になった場合、ステップS8で
保存しておいたアドレスのフラッシュロム6にデータを
書き込む。なお、フラッシュロムへのデータ書き込み
は、書き込みアドレス、書き込みサイズ、DRAMバッ
ファに基づいて行う。
ム6への具体的データ書き込みについて説明する。
タがDRAM上に書き込まれる。(図6(a)) ステップS11では、フラッシュロムへ書き込むデータ
の書き込みアドレスに基づいて、該書き込みアドレスに
対応するフラッシュロム6のセクタの先頭を算出し、ス
テップS12に移行する。ステップS12では、新たに
フラッシュロムへ書き込むべきデータが格納されたコピ
ー元DRAMデータのセクタ先頭からのオフセット値を
算出し、ステップS13でそのオフセット位置へコピー
元DRAM上のデータをコピーする。つまり、DRAM
上のデータが書き込み先であるフラッシュロムと同じオ
フセット位置になるように移動する。(図6(b))
タに対応するフラッシュロム上のデータを、書き込み部
分以外を全てDRAMにコピーし、ステップS15に移
行する。そして、ステップS15では、フラッシュロム
6におけるコピー先のビットが全て「1」であるか否か
をチェックし、ビットが全て「1」でない場合は、ステ
ップS16にて、セクタのイレースを行い、ステップS
17でDRAM内のデータをフラッシュロムに書き込む
ことにより、フラッシュロムへの書き込みが終了する。
合は、ステップS16を行わず、ステップS17に移行
してDRAM内のデータをフラッシュロムに書き込むこ
とにより、フラッシュロムへの書き込みが終了する。
(図6(c))
ビット「1」→「0」への書き込みは可能であり、その
逆であるビット「0」→「1」への書き込みは不可であ
る特性をいかし、DRAMからフラッシュロム6へのデ
ータ書き込みの際に、フラッシュロム6のビットを判定
し、ビットが「1」の場合、セクタ単位のイレースを行
わなくすることができるので、従来イレースに要してい
た時間を短縮でき、画面データの書き換え、更新等を短
時間で行え、プログラミング作業が簡単となり、作業生
産性が向上する。
の形態1に対し、コピー元のフラッシュロムデータが有
効であるか否かの判定を加え、コピー元のフラッシュロ
ムのデータが無効であった場合、該データを一旦DRA
Mにコピーした後、再度フラッシュロムに書き込む際に
無効データの領域を全てビット「1」にして書き込むも
のである。
ラッシュロムに書き込む際の詳細手順について示したフ
ローチャートである。図8は、本実施の形態におけるフ
ラッシュロムへのデータ書き込み手順の動作説明図であ
り、(a)〜(f)は、書き込みが行われる際の動作を
時系列的に示している。
て、コピー元となるDRAMデータ領域のビット全てを
「1」に初期化してからフラッシュロムに書き込むべき
データがDRAM上に書き込まれる。(図8(a)) ステップS22では、フラッシュロムへ書き込むデータ
の書き込みアドレスに基づいて、該書き込みアドレスに
対応するフラッシュロム6のセクタの先頭を算出し、ス
テップS23に移行する。ステップS23では、新たに
フラッシュロムへ書き込むべきデータが格納されたコピ
ー元DRAMデータのセクタ先頭からのオフセット値を
算出し、ステップS24でそのオフセット位置へコピー
元DRAM上のデータをコピーする。つまり、DRAM
上のデータが書き込み先であるフラッシュロムと同じオ
フセット位置になるように移動する。(図8(b))
ッシュロム6のセクタにおいて、今回書き込むべきアド
レスより上の領域が、有効なデータであるか無効なデー
タであるかをデータ管理テーブル領域のデータ種類を参
照することにより判断する。データ種類に基づく判断に
より無効なデータであると判断された場合は、該無効デ
ータはコピーせず、フラッシュロム6に対応するDRA
M上の該領域をビット「1」にする。(図8(c)) なお、DRAMは最初に初期化を行っておる関係上、D
RAM上の該領域がビット「1」である場合は、無効デ
ータをコピーしないことにより、再度初期化を行う必要
はない。また、この際に該DRAM上の領域をビット
「1」に初期化しても良い。一方、有効なデータである
場合は、ステップS26にて、フラッシュロムのデータ
をDRAMにコピーする。(図8(d))
込みを行うフラッシュロム6のセクタにおいて、今回書
き込むべきアドレスより下の領域が、有効なデータであ
るか無効なデータであるかをデータ管理テーブル領域の
データ種類を参照することにより判断する。データ種類
に基づく判断により無効なデータであると判断された場
合は、該無効データはコピーせず、フラッシュロム6に
対応するDRAM上の該領域をビット「1」とする。
(図8(c)) なお、DRAMは最初に初期化を行っておる関係上、D
RAM上の該領域がビット「1」である場合は、無効デ
ータをコピーしないことにより、再度初期化を行う必要
はない。また、この際に該DRAM上の領域をビット
「1」に初期化しても良い。一方、有効なデータである
場合は、ステップS28にて、フラッシュロムのデータ
をDRAMにコピーする。(図8(d))
ロム6におけるコピー先のビットが全て「1」であるか
否かをチェックし、ビットが全て「1」でない場合は、
ステップS30に移行して、セクタのイレースを行い、
ステップS31でDRAM内のデータをフラッシュロム
に書き込むことにより、フラッシュロムへの書き込みが
終了する。(図8(e)、図8(f))
合は、ステップS30を行わず、ステップS31に移行
してDRAM内のデータをフラッシュロムに書き込むこ
とにより、フラッシュロムへの書き込みが終了する。
(図8(e)、図8(f))
ビット「1」→「0」への書き込みは可能であり、その
逆であるビット「0」→「1」への書き込みは不可であ
る特性をいかし、DRAMからフラッシュロム6へのデ
ータ書き込みの際に、フラッシュロム6のビットを判定
し、ビットが「1」の場合、セクタ単位のイレースを行
わなくすることができるので、従来イレースに要してい
た時間を短縮でき、画面データの書き換え、更新等を短
時間で行え、プログラミング作業が簡単となり、作業生
産性が向上する。
ーを行う際に、フラッシュロム上の無効データは一旦D
RAM上にコピーせず、DRAMからフラッシュロムへ
の書き込みに際しては、該領域には初期化されたデータ
であるビット「1」を書き込むことにより、該領域への
次回以降の書き込み処理に対してイレース処理が発生せ
ず、従来イレースに要していた時間を短縮でき、画面デ
ータの書き換え、更新等を短時間で行え、プログラミン
グ作業が簡単となり、作業生産性が向上する。
下に示す効果を奏する。一時格納領域に格納されたデー
タを不揮発性メモリに書き込むメモリ書き込み方法にお
いて、新たに書き込むべきデータ及び、書き込み先の不
揮発性メモリ領域に格納されているデータを一時待避さ
せ、上記一時格納領域に保存する工程と、上記書き込み
先の不揮発性メモリ領域が、上書き可能か否かを判断す
る工程と、上記判断工程において、上書き可能であるな
らば、該メモリ領域に一時格納領域に格納されたデータ
を直接上書きすると共に、上書き可能でなければ、該メ
モリ領域をイレースした後一時格納領域に格納されたデ
ータを書き込む工程と、を備えたので、イレース処理の
回数を可能な限り削減することにより不揮発性メモリへ
のデータ書き込み時間を短縮することができる。
格納されているデータを一時待避させ、上記一時格納領
域に保存する際に、一時待避させるデータの有効性を判
断し、無効なデータである場合には、該無効データに対
応するメモリ領域に初期化したデータを用いるので、無
効データが格納されている不揮発性メモリ上の領域が初
期化され、次回以降にメモリ書き込みを行う際に、直接
上書き可能な領域を確保し、イレース処理の回数を可能
な限り削減することにより不揮発性メモリへのデータ書
き込み時間を短縮することができる。
概略を示す構成図である。
ロムにダウンロードする際の処理について機能ブロック
で示したブロック図である。
イメージを示した図である。
際の概略手順について示したフローチャート
ムに書き込む際の詳細手順について示したフローチャー
トである。
ータ書き込み手順の動作説明図である。
ムに書き込む際の詳細手順について示したフローチャー
トである。
ータ書き込み手順の動作説明図である。
タ管理イメージを示した図である。
む際の概略手順について示したフローチャートである。
細手順について示したフローチャートである。
動作説明図である。
ントローラ、4 CPU、5 表示手段、6 メモリ、
7 PCインタフェース、8 パソコンインタフェー
ス、11 通信機能、12 処理分岐機能、13 FR
OM書き込み機能、14 モニタ機能、61 データ管
理テーブル領域、62 データ領域。
Claims (2)
- 【請求項1】 一時格納領域に格納されたデータを不揮
発性メモリに書き込むメモリ書き込み方法において、 新たに書き込むべきデータ及び、書き込み先の不揮発性
メモリ領域に格納されているデータを一時待避させ、上
記一時格納領域に保存する工程と、 上記書き込み先の不揮発性メモリ領域が、上書き可能か
否かを判断する工程と、 上記判断工程において、上書き可能であるならば、該メ
モリ領域に一時格納領域に格納されたデータを直接上書
きすると共に、上書き可能でなければ、該メモリ領域を
イレースした後一時格納領域に格納されたデータを書き
込む工程と、を備えたメモリ書き込み方法。 - 【請求項2】 書き込み先の不揮発性メモリ領域に格納
されているデータを一時待避させ、上記一時格納領域に
保存する際に、一時待避させるデータの有効性を判断
し、無効なデータである場合には、該無効データに対応
するメモリ領域に初期化したデータを用いることを特徴
とする請求項1に記載のメモリ書き込み方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1394199A JP2000215098A (ja) | 1999-01-22 | 1999-01-22 | メモリ書き込み方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1394199A JP2000215098A (ja) | 1999-01-22 | 1999-01-22 | メモリ書き込み方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2000215098A true JP2000215098A (ja) | 2000-08-04 |
Family
ID=11847244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1394199A Pending JP2000215098A (ja) | 1999-01-22 | 1999-01-22 | メモリ書き込み方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2000215098A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005531842A (ja) * | 2002-06-28 | 2005-10-20 | アクサルト・エス・アー | 不揮発性メモリへの書き込み方法およびこの方法を実現するシステム |
-
1999
- 1999-01-22 JP JP1394199A patent/JP2000215098A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005531842A (ja) * | 2002-06-28 | 2005-10-20 | アクサルト・エス・アー | 不揮発性メモリへの書き込み方法およびこの方法を実現するシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6571312B1 (en) | Data storage method and data processing device using an erasure block buffer and write buffer for writing and erasing data in memory | |
JP3898305B2 (ja) | 半導体記憶装置、半導体記憶装置の制御装置及び制御方法 | |
JP3171901B2 (ja) | 不揮発性メモリカードの書換え方法 | |
JP2001209543A (ja) | フラッシュ・マイコンにおけるプログラム書き換え方法 | |
WO2006011186A1 (ja) | コントローラ、データ記憶システム、データ書き換え方法及びコンピュータプログラムプロダクト | |
US7185140B2 (en) | Method for storing in nonvolatile memory and storage unit | |
JP2003076605A (ja) | ブロック消去型不揮発メモリを搭載した半導体記憶装置とそのデータの書込み・読出し方法 | |
EP1347458A1 (en) | Information storage apparatus | |
JPH06349286A (ja) | フラッシュメモリ用書き込み制御方法および制御装置 | |
JP3539752B2 (ja) | 半導体記憶装置とメモリ制御方法 | |
JP2000215098A (ja) | メモリ書き込み方法 | |
JP2000276402A (ja) | フラッシュメモリ駆動方法及びフラッシュメモリ装置 | |
JPH06222985A (ja) | メモリ制御装置 | |
JPH0581012A (ja) | 情報処理装置のフアームウエア書き換え方式 | |
JP2000035919A (ja) | フラッシュ型メモリ、その管理装置、その管理方法 | |
JP4710274B2 (ja) | メモリ装置、メモリ装置の制御方法およびデータ処理システム | |
JP2004348342A (ja) | Icカードとicカードの処理方法 | |
JP2000035916A (ja) | メモリ動作管理方法 | |
JP2009211152A (ja) | 情報処理装置、メモリシステムおよびその制御方法 | |
JP3166659B2 (ja) | 記憶装置 | |
JP2013003655A (ja) | フラッシュメモリにデータの書き込みを行う制御装置 | |
KR100336745B1 (ko) | 플래시 메모리의 라이트장치 및 방법 | |
JPH07281962A (ja) | 電気的書換可能な不揮発性メモリのアクセス方法 | |
JP4580724B2 (ja) | 不揮発性メモリの制御方法 | |
JP2000181696A (ja) | プログラム制御装置及びプログラム制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040615 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20040623 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040706 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040902 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041019 |