JP3826617B2 - 不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 - Google Patents
不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 Download PDFInfo
- Publication number
- JP3826617B2 JP3826617B2 JP13431599A JP13431599A JP3826617B2 JP 3826617 B2 JP3826617 B2 JP 3826617B2 JP 13431599 A JP13431599 A JP 13431599A JP 13431599 A JP13431599 A JP 13431599A JP 3826617 B2 JP3826617 B2 JP 3826617B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- printer
- memory
- writing
- volatile memory
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
【発明の属する技術分野】
本発明は、不揮発性メモリ上に記憶したプリンタの動作状況に関するデータを、揮発性メモリ上へ読み取って動作するプリンタに関し、特に前記不揮発性メモリへの更新データの書き込み制御の方法に関するものである。
【0002】
【従来の技術】
プリンタの動作状況、例えばインク残量、ヘッドクリーニング時間、印字ヘッドの位置、ロール紙残量等の制御情報や、印字文字数、紙送り行数、稼働時間等のカウンタ値と呼ばれる情報は、プリンタを正しく動作させるために必要なデータである。特に、プリンタの動作中における障害(電源オフ、停電、リセットなど)によりプリンタが停止した場合等は、障害復帰時に停止前の動作状況を確認して正しく回復するための処理を実行させることが好ましい。
【0003】
このようなことから従来、プリンタにEEPROM(Electrically Erasable Programmable ROM)やフラッシュメモリ等の不揮発性メモリを備え、該不揮発性メモリ上に、DRAM(Dynamic RAM)等の揮発性メモリ内で更新される前記プリンタの動作状況を定期的に書き込むことによってこれを保存し、次のプリンタの動作時において不揮発性メモリの内容を揮発性メモリ上に復帰させ動作するものがある。
【0004】
【発明が解決しようとする課題】
ところで、このような従来のプリンタにおいては、プリンタの稼動中における一定時間間隔毎に、前記不揮発性メモリへのデータの書き込みを行っている。具体的には、タイマーで計測する一定時間が経過すると実行中の処理が中断され、中央処理装置(以下、CPUという)が前記不揮発性メモリへの書き込み処理のために渡される。定期的なデータの書き込みによって、障害発生前のプリンタの動作状況の再現性が向上する。
【0005】
このような障害はいつ起きるか予測がつかないため、障害発生時におけるプリンタ停止前の動作状況をできるだけ正確に把握する目的からは、前記一定時間間隔をできるだけ短くすることが好ましい。 一方で、CPUが印字動作やデータ処理のために使用されている時に前記実行中の処理の中断が発生すると、不揮発性メモリへの書き込みが完了するまでは前記印字動作やデータ処理が停止してしまい、印字のスループットが低下するという問題がある。管理するデータ量が多くなるに連れて、不揮発性メモリへの書き込み時間は長くなり、前記スループットの低下は無視できないものとなる。従って、管理するデータ量に拘わらず、不揮発性メモリへの書き込み時間をできるだけ短くすることが好ましい。
【0006】
また従来の書き込み制御においては、書き込みのタイミングが来ると、揮発性メモリ上の各種データは、データの更新の有無に拘わらず、全て不揮発性メモリ上へ書き込まれている。不揮発性メモリの寿命は、その書き込み回数に依存するので、変更されていないデータの書き込みを行うことは、制限された書き込み回数を無駄に消費する結果を招く。
【0007】
従って本発明の目的は、不揮発性メモリへのデータの書き込み時間を短くし、書き込みによる印字動作に対する影響を小さくすることにある。
【0008】
また、本発明の別の目的は、不揮発性メモリに対する不要なデータの書き込みを行わないようにして、不揮発性メモリの寿命を向上させることにある。
【0009】
【課題を解決するための手段】
本発明は、プリンタにおける不揮発性メモリに対する書き込み制御方法に関する。
【0010】
本発明の書き込み制御方法は、各々異なる所定のタイミングで前記不揮発性メモリに記憶されるデータを、各タイミング毎に予めグループ化し、該各グループ化されたデータ群を揮発性メモリ及び不揮発性メモリ上の複数のメモリ領域に予め割り当てる工程(a)と、前記所定のタイミングのうちの一つが発生した時に、揮発性メモリの内容を不揮発性メモリへ書き込む書き込み命令を発生する工程(b)と、前記書き込み命令に応じて、前記発生したタイミングに対応してグループ化された前記揮発性メモリ上のデータを、前記不揮発性メモリ上の対応するメモリ領域へ書き込む工程(c)とを備えて構成される。
【0011】
前記不揮発性メモリへの書き込みは、所定のタイミングに対する各メモリ領域毎に行われ、それ以外の領域に対する書き込みは行われないので、書き込み時間が短縮され、また不揮発性メモリの寿命が向上する。
【0012】
本発明の書き込み制御方法は、前記所定のタイミングとして、ホストコンピュータからのリセット信号の検出時を含み、前記不揮発性メモリへのデータの書き込み工程(c)の後に、前記リセット信号に基くプリンタのリセットを実行するよう工程(d)を含むように構成することができる。
【0013】
また、前記所定のタイミングとして、所定の時間間隔、プリンタの電源のオン及びオフ時、その他のプリンタの動作状況に関するデータを変更する所定のイベント発生時を含んで構成することもできる。プリンタの動作状況に関するデータを変更する所定のイベントは、具体的には印字ヘッドのクリーニング、インクカートリッジやロール紙の交換、印字ヘッドの温度上昇やキャリッジの搬送ベルト外れ等の動作エラーが含まれる。
【0014】
また、前記不揮発性メモリに記憶されるデータを、第1のデータ群と第2のデータ群に予めグループ化して、所定の時間間隔毎に、前記第1のデータ群を、前記不揮発性メモリへ書き込む工程(c1)と、前記所定のイベントの発生時に、第1のデータ群および前記第2のデータ群を、前記不揮発性メモリへ書き込むとともに、前記所定の間隔の計時を初期化する工程(c2)とを備えるようにしてもよい。
【0015】
不揮発性メモリへ書き込まれるデータの多くは、このようなイベントの発生時に所定の制御を実行することにより更新されるので、該制御の実行後に不揮発性メモリへの書き込みを行うことで、障害発生時のデータ喪失の被害を最小限に抑えることができる。このとき、所定の時間間隔毎に不揮発性メモリに保存されるデータ群も同時に保存され、所定の間隔の計時を初期化するため、徒に不揮発性メモリにデータを保存する頻度が高くなることを防ぐことができる。
【0016】
また、本発明は前記各メモリ領域毎に誤り検出符号を備え、前記メモリ領域上のデータの誤り検出を行う工程(e)を、更に備えて構成することができる。
【0017】
前記誤り検出を行う工程は、前記不揮発性メモリ上のデータを読み込み前記揮発性メモリに一時的に記憶する場合に、該読み込みが行われたメモリ領域上のデータの誤り検出を行うようにしてもよい。また、前記誤り検出を行う工程は、前記揮発性メモリ上のデータを前記不揮発性メモリに書き込む場合に、前記不揮発性メモリへの書き込みを行った後に、該書き込みが行われたメモリ領域上のデータの誤り検出を行うようにしてもよい。
【0018】
この場合に、前記誤り検出を行う工程で、前記メモリ領域上に書き込まれたデータの誤りが検出された場合に、該メモリ領域のデータに対応する所定の初期化データを、前記揮発性メモリと不揮発性メモリの対応するメモリ領域に書き込む工程(f)を、更に備えることが好ましい。これによって、誤りが発生した場合に生じ得るプリンタの動作不良を最小限のものとすることができる。
【0019】
本発明は、また、不揮発性メモリを備えたプリンタに関する。
【0020】
本発明のプリンタは、プリンタの動作状況に関するデータを記憶する不揮発性メモリと、該不揮発性メモリから読み出したデータ及びプリンタの動作に伴って更新された前記データを一時的に記憶する揮発性メモリとを備えたプリンタにおいて、各々異なる所定のタイミングで更新されるデータ毎にグループ化されたデータ群を記憶するために、前記揮発性メモリ上に割り当てられた複数のメモリ領域と、当該揮発性メモリ上に割り当てられた複数のメモリ領域の各々に対応して、前記不揮発性メモリ上に設けられた複数のメモリ領域と、前記所定のタイミングのうちの一つが発生した時に、揮発性メモリの内容を不揮発性メモリへ書き込む書き込み命令を発する書き込み命令手段と、前記書き込み命令に応じて、前記発生したタイミングに対応してグループ化された前記揮発性メモリ上のデータ群を、前記不揮発性メモリ上の対応するメモリ領域へ書き込む書き込み手段とを備えたことを特徴とする。
【0021】
これにより、前記不揮発性メモリへの書き込みは、所定のタイミングに対する各メモリ領域毎に行われ、それ以外の領域に対する書き込みは行われないので、書き込み時間が短縮され、また不揮発性メモリの寿命が向上する。
【0022】
前記不揮発性メモリに記憶されるデータを、第1のデータ群と、第2のデータ群に予めグループ化し、プリンタに、所定の間隔を計測するカウンタと、所定のイベントの有無を監視する監視手段と、前記カウンタにおける所定の間隔毎に、前記第1のデータ群を、前記不揮発性へ書き込む第1の書き込み手段と、前記監視手段において監視される所定のイベントの発生時に、第1のデータ群および前記第2のデータ群を、前記不揮発性メモリへ書き込む第2の書き込み手段と、前記第2の書き込み手段による書き込みが行われた際に、前記カウンタを初期化する初期化手段とを備えるようにすればよい。
【0023】
不揮発性メモリへ書き込まれるデータの多くは、このようなイベントの発生時に所定の制御を実行することにより更新されるので、該制御の実行後に不揮発性メモリへの書き込みを行うことで、障害発生時のデータ喪失の被害を最小限に抑えることができる。このとき、所定の時間間隔毎に不揮発性メモリに保存されるデータ群も同時に保存され、所定の間隔の計時を初期化するため、徒に不揮発性メモリにデータを保存する頻度が高くなることを防ぐことができる。
【0024】
また、前記各メモリ領域毎に、プリンタの動作状況に関するデータが記憶されるデータ領域と、誤り検出符号が記憶されるチェックサム領域を設けても良い。
【0025】
また、更に、前記不揮発性メモリ上に設けられた複数のメモリ領域の少なくとも1つを、複数のサブメモリ領域に分割してもよい。この場合において、前記サブメモリ領域は、更に、プリンタの動作状況に関するデータが記憶されるデータ領域と、当該領域に記憶されたデータの更新履歴が記憶される履歴記憶領域に分割されていることが好ましい。
【0026】
特にリセット信号の検出時に不揮発性メモリに保存されるデータ群は、プリンタの制御上重要なものが多く、リセット信号検出時以外のイベント発生時においても不揮発性メモリに保存する必要がある。従って、このようなデータ群は頻繁に保存されるため、特定のメモリ領域の書き込み回数が増加してしまう。このように頻繁に更新されるデータ群に関しては、前記複数のサブメモリ領域(ブロック)を準備し、データ群を更新する際には、順次、前回使用したブロックの次のブロックに最新のデータ群を書き込むようにすればよい。このようにすれば、不揮発性メモリの一部分が頻繁に使用されることによって、不揮発性メモリの寿命が低下することがない。
【0027】
また、不揮発性メモリからデータ群を読み込む際には、どのサブメモリ領域に保存されているものが最新のものか知る必要があるが、そのような履歴情報も、前記サブメモリ領域に、プリンタの動作状況に関するデータが記憶されるデータ群と共に記憶されているため、複数のサブメモリ領域に記憶されているデータ群の履歴を比較して最新のものを読み込むようにすればよい。
【0028】
もちろん、各メモリ領域同様、各サブメモリ領域毎に、誤り検出符号が記憶されるチェックサム領域を設けても良い。このようにすれば、不揮発性メモリからデータ群を読み込む際に、複数のサブメモリ領域に記憶されているデータ群のうち、最新のデータ群に関して、データの誤りが検出された場合に、2番目に新しいデータ群のチェックサムを検査し、誤りがない場合、それを揮発性メモリに書き込み利用することができる。故に、誤りが発生した場合に生じ得るプリンタの動作不良を最小限のものとすることができる。
【0029】
【発明の実施の形態】
以下、本発明の一実施形態を図面に沿って説明する。図1は本発明の一実施形態に係る制御方法を実現したプリンタ装置の概要を示す機能ブロック図である。
【0030】
図1においてプリンタ装置1は、例えば、単票紙、ロール紙共に印刷可能なシリアル型インクジェットプリンタであり、動作状況に関するデータを格納するEEPROM5、プリンタの動作に伴って更新されたデータを一時的に記憶するRAM3及び、これらのデータのEEPROM5への書き込み、 EEPROM5からの読み込みを司る各手段51〜56を備えている。
【0031】
EEPROM5には、プリンタの動作状況、すなわちインク残量、ヘッドクリーニング時間、印字ヘッドの位置、ロール紙残量等の制御情報や、印字文字数、紙送り行数、稼働時間等のカウンタ値を格納すべき記憶領域が確保されている。EEPROM5及びRAM3は、複数の記憶領域に論理的に区切られており、前記制御情報及びカウンタ値はグループ化され、所定の記憶領域に割り当てられている。
【0032】
詳細については後述するが、前記制御情報及びカウンタ値は、各々異なる所定のタイミングで更新されるデータ毎にグループ化されたデータ群を構成している。
【0033】
本例のプリンタ装置1では、後述するように(図3、図4に示す)、 EEPROM5及びRAM3は、6つの記憶領域に論理的に区切られており、5種類の所定のタイミングで更新されるデータ毎に、5つのデータ群に予めグループ分けされている。その中には、所定の時間間隔毎に、不揮発性メモリに書き込まれる第1のデータ群と、主にプリンタの動作状況に関するデータを変更する所定のイベントの発生時(所定の制御実行時)に、書き込まれる第2のデータ群が含まれている。
【0034】
カウンタ7で計時した値が所定の時間が経過すると、書き込み命令手段56によって、第1の書き込み手段51に、RAM3に記憶されている第1のデータ群の内容をEEPROM5へ書き込む書き込み命令が発せられる。
【0035】
また、所定のイベントとは、例えば、印字ヘッドのクリーニングであり、タイマーを参照して、前回の印字ヘッドからのクリーニング時間が所定時間経過したことを監視手段55が検知した場合に、書き込み命令手段56によって、第2の書き込み手段52に、RAM3に記憶されている第2のデータ群の内容をEEPROM5へ書き込む書き込み命令が発せられる。このとき、第2のデータ群に加えて、第1のデータ群の内容もEEPROM5へ書き込む書き込み命令が発せられ、第2のデータ群および前記第1のデータ群がEEPROM5へ書き込まれる。また、第2の書き込み手段52による書き込みが行われた際には、初期化手段54によって、カウンタ7が初期化される。なお、電源ON時等には、読み込み手段53によって、EEPROM5に記憶されているデータ群が、RAM5に読み込まれる。
【0036】
これら、第1の書き込み手段51、第2の書き込み手段52、読み込み手段53、初期化手段54,書き込み命令手段56は、マイクロプロセッサ及びこれらの動作を記述したプログラムコードが保存されたROM、それを一時的に保存ずるRAM等によって構成される。また、監視手段55は、マイクロプロセッサ、及びこの動作を記述したプログラムコードが保存されたROM等に加え、プリンタ1のプリンタの動作状況の変化を検出するための不図示のセンサ、タイマー等で構成される。
【0037】
図2は本発明の一実施形態に係る制御方法を実現したプリンタ装置の回路ブロック図である。
【0038】
図2においてプリンタ装置1は、プリンタ装置全体の制御を司るCPU2(前述のマイクロプロセッサに相当する)、メインメモリとしてのRAM3、制御データ及びプログラム等を格納したROM4、動作状況に関するデータを格納するEEPROM5、印字ヘッドによる用紙への印字を実現する印字機構6、所定の経過時間を計測するカウンタ7及びホストコンピュータとの接続を行うインターフェース8を備えている。
【0039】
CPU2は、ROM4上のプログラム及び制御データ、EEPROM5上のデータをRAM3上にロードし、これらのプログラムやデータに基づいてプリンタ装置を制御する。プリンタ装置1の電源を投入した時点で、ROM4及びEEPROM5上のデータ及びプログラムはRAM3上にロードされ、ロードされたデータに従ってプリンタ装置は初期状態にされ、ホストからの命令を待ち受ける。
【0040】
プリンタ装置1は、図示しない各種センサを備えており、該各センサによって前記プリンタ装置の動作状況をリアルタイムで計測している。前記各種制御情報やカウンタ値は、RAM3上で順次更新され、後述する所定のタイミングでEEPROM5上の割り当てられた各領域に書き込まれ、保存される。EEPROM5上に書き込まれた制御情報及びカウンタ値は、プリンタ装置1の起動時及びリセット時にRAM3上にロードされ、これらの情報の初期データとされる。例えば、前記ヘッドクリーニング時間は、前回のヘッドクリーニング時間を記録したものであり、CPU2はこのデータに基づいて次回のクリーニングの開始タイミングを決定し、実行する。また、プリンタ装置の障害時、例えば、印字中にプリンタ装置が停止した場合には、リセット後に前記EEPROM5から読み込まれた印字ヘッドの位置の情報を元に正常状態への復帰動作を行う。前記EEPROM5への書き込みタイミングの決定、書き込み、EEPROM5からの読み出しは、CPU2における制御機能により行われる。
【0041】
カウンタ7は、図示しない内蔵のクロック回路に基いて、所定の経過時間を計測する。カウンタ7により計測される経過時間の中に、EEPROM5への書き込み経過時間が含まれる。すなわち、EEPROM5へのデータの書き込みが行われると、CPU2はカウンタ7を起動し、時間の経過をカウントさせる。そして予め定められた時間(例えば1時間)が経過すると、カウンタ7はCPU2に信号を出力し、時間が経過したことを通知する。尤も、CPU2にこのような機能を持たせて、経過時間の計測を行うように構成しても良い。
【0042】
前記CPU2は、また、リセット信号検出機能9及びリセット実行機能10を備えている。リセット信号検出機能9は、ホストコンピュータからリセット信号が送信された時にこれを検出する機能であり、CPU2はリセット信号を検出すると、RAM3上の一部のデータをEEPROM5へ書き込む命令を出力する。リセット実行機能10は、プリンタをリセットするための機能であり、この実行により、EEPROM5の全てのデータがRAM3上にロードされると共に、プリンタの各機構部分(例えば、印字ヘッド)が初期位置にセットされ、ホストコンピュータからのデータの待ち受け状態となる。CPU2は、リセット信号に基くEEPROM5へのデータの書き込みを完了した時点で、前記リセット実行機能10を起動させる。これによってリセット前のプリンタの状態に関するデータがEEPROM5へ保存される。
【0043】
図3は、本発明に係る書き込み制御を実現するためのEEPROM5及びRAM3のデータ記憶領域における論理構成の一例を示す概念図である。図に示すように、EEPROM5及びRAM3は、それぞれ6つの記憶領域(領域1〜領域6)に論理的に区切られたデータの記憶領域を有している。EEPROM5の各領域とRAM3の各領域は対応しており、各領域単位でRAM3からEEPROM5へ書き込みが可能なように構成されている。前記制御情報やカウンタ値は、後述する5種類の所定のタイミングに従って、6つのグループに分けられ、それぞれ各領域1〜6へ割り当てられており、よってデータの保存は、前記1又は複数のグループ単位で行われることとなる。
【0044】
各領域1〜6には、それぞれチェックサムデータを格納する領域が設けられている。EEPROM5からRAM3にデータのロードがなされると、読み出しが行われた領域のチェックサムにより、誤り検出が実行される。EEPROM5から読み出しを行う領域に保存されていたデータに基づいてチェックサムが算出され、その領域に保存されていたチェックサムと比較される。また、RAM3からEEPROM5へデータの書き込みが行われる際に、書き込みが行われた領域のチェックサムにより、誤り検出が実行される。すなわち、RAM3上のチェックサムは、対応する領域内のデータが更新される度に再計算される。EEPROM5への書き込みがなされると、その領域に書き込まれたデータに基づいてチェックサムが算出され、前記RAM3上の対応するチェックサムと比較される。
【0045】
図2におけるROM4又はEEPROM5の他のメモリ領域には、EEPROM5に保存する制御情報及びカウンタ値の初期化データが格納されている。初期化データとして、プリンタが正常に動作することが保証された値を使用する。前記チェックサムによる誤り検出においてデータ誤りが検出された場合、RAM3及びEEPROM5上の該当データが、前記初期化データに置換えられる。これによって誤りが発生した場合に生じ得るプリンタの動作不良が最小限に抑えられる。
【0046】
図4は、プリンタの制御に関する前記選択されたタイミングと記憶領域との対応関係を示す図である。本発明においては、その実施に先立って、プリンタの制御に関する複数のタイミングが選択される。本実施形態においては、このタイミングとして、プリンタの電源オン時、予め定められた一定の時間間隔(例えば1時間)、プリンタにおける所定の処理実行時(ヘッドクリーニング時、インクカートリッジやロール紙の交換時、プリンタの動作エラーの発生時など)、制御情報の一つをカウントするカウンタの所定の変化間隔(例えば、ロール紙を切断するためのカッタの累積駆動回数をカウントするカウンタのカウント値が所定値に達する毎に)、及びリセット信号検出時(ホストから通知されたり、異常電圧を検出した場合等)が選択されている。EEPROM5に保存すべき各種制御情報及びカウンタ値は、前記各種タイミングに従って6つにグループ分けされ、図3に示す6つの記憶領域に割り当てられている。例えば、本例のプリンタでは、以下の制御情報及びカウンタ値がEEPROM5の各領域に保存される。
領域1:プリンタの電源を入れた時の時刻
領域2:前回の印字ヘッドのクリーニングからの印字ライン数、出荷時からの累積印字ライン数
領域3:印字ヘッドのクリーニングが実行された時刻、実行されたクリーニングのレベル
領域4:ロール紙を切断するためのカッタの累積駆動回数
領域5:リセットの有無を示すフラグ、制御情報を保存した最新時刻、インク消費量カウンタ
領域6:各種補正値(キャリッジの移動量等)
図4に示すタイミングと記憶領域との対応テーブルによって、各タイミングが発生した時に、どの記憶領域のデータがEEPROM5へ書き込まれるかが決定されている。例えば、電源オン時には、領域1のデータ(第3のデータ群)の保存が行われ、一定の時間間隔で領域2と領域5のデータ(第1のデータ群)の保存が行われる。また、所定の処理の実行時には、領域2から領域5のデータ(第2のデータ群)が、リセット時には、領域5のみのデータ(第5のデータ群)が保存される。制御情報の一つをカウントするカウンタの所定の変化間隔毎に、領域2と領域4と領域5のデータ(第4のデータ群)の保存が行われる。領域6に保存されているデータは、プリンタの機構部の固体間のバラツキに起因する印字位置の補正値等が保存される領域であり、工場出荷時、修理時等に必要に応じて書き込まれる。従って、図4に示すタイミングで書き込む必要のないデータ群が保存されている。
【0047】
ここで、領域5に保存されている第5のデータ群は、他の領域に保存されているものに比べ、プリンタの制御上重要な情報が含まれているため、頻繁に更新・保存されるようになっている。また、例えば、停電等が生じ、電圧低下を検出すると、リセット信号が検出されるようになっている。このときは、領域5のみのデータがRAM3からEEPROM5に保存され、他の領域のデータの保存は行われない。
【0048】
なお、図4に示す対応テーブルは、ROM4又はEEPROM5の他のメモリ領域に格納され、前記タイミングの発生時に読み出される。
【0049】
図5は、EEPROM5への書き込み制御を示すフローチャートである。図においては、前記選択された所定のタイミングが発生してから所定のデータがEEPROM5上に書き込まれるまでの手順を示している。CPU2は所定のタイミングの何れかを検知すると(401)、ROM4又はEEPROM5に格納した前記変換テーブル40を読み出し、これに基いてEEPROM5に保存すべきデータ、すなわち書き込みの対象となる領域を指定する(402)。そして、RAM3における指定された領域のデータを、対応するEEPROM5の領域に書き込む(403)。これによって、所定のタイミングに対応するデータのみが保存される。
【0050】
図6及び図7は、プリンタ装置1におけるEEPROMへの書き込み制御の一実施形態を示すフローチャートであり、図6は所定時間間隔毎の書き込み処理(第1の書き込み処理)を示し、図7は所定の選択された制御の実行毎の書き込み処理(第2の書き込み処理)を示している。
【0051】
図6において、プリンタ装置1が起動されると、EEPROM5に保存された各種データがRAM3上にロードされ、前記カウンタ7による時間計測が開始される(201)。カウンタ7による時間計測が開始されてから、予め定められた書き込み時間(例えば1時間)が経過すると(202)、EEPROM5に対するデータの書き込みが実行される(203)。ここでは、EEPROM5の領域2と領域5(図3、4に示す)について書き込みが実行される。
【0052】
EEPROM5に対するデータの書き込みが完了すると、カウンタ7はリセットされ、次の書き込みのために待機する(204)。このようにして、予め定められた時間が経過する毎に、EEPROM5へのデータの書き込みが実行される。
【0053】
本発明においては、前記一定時間毎の書き込みとは異なるタイミング、すなわち所定の選択された制御のタイミングでも、EEPROM5への書き込みが行われる。ここで、選択される制御としては、前述したように、印字ヘッドのクリーニング、インクカートリッジやロール紙の交換、印字ヘッドの温度上昇やキャリッジの搬送ベルト外れ等の動作エラーを対象とすることができる。
【0054】
プリンタの各種制御のうち、EEPROM5への書き込みを実行するタイミングとして選択された制御が実行され、それが完了すると、図7の制御にCPU2の処理が渡される。
【0055】
すなわち、選択された制御が終了すると(301)、該制御によって更新されたRAM3上の各種制御情報やカウンタ値は、EEPROM5へ書き込まれる(302)。ここでは、EEPROM5の領域2から領域5(図3、4に示す)について書き込みが実行される。
【0056】
EEPROM5に対するデータの書き込みが完了すると、カウンタ7はリセットされる(303)。図7の工程における前記カウンタ7のリセットにより、図6の処理における時間間隔(工程202で計時される計時される時間間隔)は、図7の工程の終了時から起算されることとなる。
【0057】
領域3に保存されるデータは、このような所定の制御を実行することによりのみに更新されるので、図7の工程302で、EEPROM5に書き込まれる。一方、領域2に保存されるデータは、本来、所定時間間隔毎(工程203)に、EEPROM5への書き込み処理が行われるものであるが、本例では、所定の制御を実行することによっても、領域3に保存されるデータに加えて、 EEPROM5に書き込まれる。このとき、所定の間隔の計時を初期化(工程303)するため、徒に不揮発性メモリにデータを保存する頻度が高くなり、印字のスループットが低下するということを防ぐことができる。
【0058】
図8は、図3に示した概念図のうち、EEPROM5及びRAM3のデータ記憶領域の領域5における論理構成を示す概念図である。図に示すように、EEPROM5のメモリの領域5は、更に複数のサブメモリ領域5A〜5Nに分割されている。
【0059】
各領域5A〜5Nのそれぞれには、プリンタの動作状況に関するデータが記憶される領域に加え、その領域に記憶されたデータの更新履歴が記憶される領域とチェックサムデータを格納する領域とが設けられている。
【0060】
図5のフローチャートにおいて、領域5が指定され(工程402)、RAM3における領域5のデータを、対応するEEPROM5の領域に書き込み(工程403)、これを更新する際は、順次、前回使用したサブメモリ領域の次のサブメモリ領域に最新のデータ群を書き込まれる。例えば、前回の工程403で、領域5Aにデータが書き込まれた場合は、今回の工程403では、領域5Bにデータが書き込まれる。
【0061】
更新履歴が記憶される領域は2バイト分与えられており、00〜FFのコードが記述可能である。そして、工程403が実行される毎に、その値が増加もしくは減少されて、その領域に記述される。
【0062】
例えば、前回の工程403で、領域5Aにデータが書き込まれ、領域5Aの更新履歴が記憶される領域に「05」が記述された場合、今回の工程403では、更新履歴の値を1つ増加させ、領域5Bの更新履歴が記憶される領域に「06」と記述される。
【0063】
EEPROM5から、RAM3の領域5に、保存されているデータをロードするときには、サブメモリ領域5A〜5Nに記憶されているデータ群の更新履歴を比較して最新のものをが読み込まれる。これは、隣り合う領域に保存された更新履歴を比較し、その値が不連続に変化する(単調に増加していない)位置を調べることによって行われる。例えば、領域5A、5B、5Cの各更新履歴が、「05」、「06」、「F8」となっていた場合、「06」と「F8」は不連続であるので、領域5Bに保存されているデータを最新ものと判断して、 RAM3の領域5にロードする。
【0064】
領域5に保存されるデータ群は、図4からみてもわかるように、リセット信号の検出時に不揮発性メモリに保存されるものであり、プリンタの制御上重要なものが多い。故に、リセット信号検出時以外のイベント発生時においても不揮発性メモリに保存されるため、メモリ領域の書き込み回数が、他の領域に比べ多くなってしまう。
【0065】
このように頻繁に更新されるデータ群に関しては、このようにEEPROM内に複数のサブメモリ領域を設け、順次シフトして記憶するようにしたので、不揮発性メモリの一部分が頻繁に使用されることによって、不揮発性メモリの寿命が低下することがない。
【0066】
もちろん、各メモリ領域同様、各サブメモリ領域毎に、誤り検出符号が記憶されるチェックサム領域を設けられているため、EEPROM5からデータ群を読み込む際に、複数のサブメモリ領域に記憶されているデータ群のうち、最新のデータ群に関して、データの誤りが検出された場合に、2番目に新しいデータ群のチェックサムを検査し、誤りがない場合、それをRAM3にロードすればよい。以上、本発明の一実施形態を図面に沿って説明したが、本発明は前記実施形態において示された事項に限定されず、特許請求の範囲及び発明の詳細な説明の記載、並びに周知の技術に基づいて、当業者がその変更・応用を行うことができる範囲が含まれる。前記実施形態においては、プリンタの動作状況に関するデータを記憶する不揮発性メモリとしてEEPROMを示したが、フラッシュメモリを用いても良い。また、不揮発性メモリ上に保存するデータは、前記実施形態に示したものに限らず、各種のプリンタの動作状況に関するデータを対象とすることができるし、また前記実施形態に示したものの一部を対象としても良い。不揮発性メモリはまた、動作状況に関するデータ以外のデータ、例えばフォントデータやプログラム等を共に格納するように構成しても良い。
【0067】
前記データ保存のタイミングとして選択される各種タイミングは、前記実施形態に示したものに限定されない。また、前記実施形態においてはチェックサムを用いて誤り検出を行うようにしたが、他の誤り検出符号、例えばパリティチェックを用いても良い。また、前記実施形態においては、書き込みのタイミング毎の書き込み領域の選択をテーブルにより行うようにしたが、テーブル化しなくても良い。
【0068】
【発明の効果】
以上の如く本発明によれば、不揮発性メモリへの書き込みは、所定のタイミングに対する各メモリ領域毎に行われ、それ以外の領域に対する書き込みは行われないので、書き込み時間が短縮され、また不揮発性メモリの寿命が向上する。
【0069】
また、前記各メモリ領域は誤り検出符号を備えているので、データの信頼性が向上すると共に、誤りが発生した際に初期化データでこれを置換えることによって、誤りが発生した場合に生じ得るプリンタの動作不良を最小限のものとすることができる。
【0070】
更に、リセット信号の検出時には、不揮発性メモリへのデータの書き込みの後に、プリンタのリセットを実行することにより、リセット直前のプリンタの状態が不揮発性メモリへ保存されるので、リセット後のプリンタの正常な動作が保証される。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る制御方法を実現したプリンタ装置のの概要を示す機能ブロック図である。
【図2】本発明の一実施形態に係る制御方法を実現したプリンタ装置の回路ブロック図である。
【図3】本発明に係る書き込み制御を実現するためのEEPROM及びRAMのデータ記憶領域における論理構成を示す概念図である。
【図4】本発明に係るプリンタの制御に関する選択されたタイミングと記憶領域との対応関係を示す図である。
【図5】本発明に係るEEPROMへの書き込み制御を示すフローチャートである。
【図6】本発明に係るEEPROMへの書き込み制御の一実施形態を示すフローチャートである。
【図7】本発明に係るEEPROMへの書き込み制御の一実施形態を示すフローチャートである。
【図8】図3に示した概念図のうち、EEPROM5及びRAM3のデータ記憶領域の領域5における論理構成を示す概念図である。
【符号の説明】
1 プリンタ装置
2 中央処理部CPU
3 RAM
4 ROM
5 EEPROM
6 印字機構
7 カウンタ
8 インターフェース
9 リセット信号検出機能
10 リセット実行機能
Claims (15)
- プリンタの動作状況に関するデータを記憶する不揮発性メモリと、該不揮発性メモリから読み出したデータ及びプリンタの動作に伴って更新された前記データを一時的に記憶する揮発性メモリとを備えたプリンタにおける不揮発性メモリへの書き込み制御方法において、
各々異なる所定のタイミングで前記不揮発性メモリに記憶されるデータを、各タイミング毎に予めグループ化し、該各グループ化されたデータ群を前記揮発性メモリ及び不揮発性メモリ上の複数のメモリ領域に予め割り当てる工程(a)と、
前記所定のタイミングのうちの一つが発生した時に、揮発性メモリの内容を不揮発性メモリへ書き込む書き込み命令を発生する工程(b)と、
前記書き込み命令に応じて、前記発生したタイミングに対応してグループ化された前記揮発性メモリ上のデータを、前記不揮発性メモリ上の対応するメモリ領域へ書き込む工程(c)とを備えたことを特徴とするプリンタにおける不揮発性メモリへの書き込み制御方法。 - 請求項1記載のプリンタにおける不揮発性メモリへの書き込み制御方法において、
前記所定のタイミングとして、ホストコンピュータからのリセット信号の検出時を含み、
前記不揮発性メモリへのデータの書き込み工程(c)の後に、
前記リセット信号に基くプリンタのリセットを実行する工程(d)を含むことを特徴とする不揮発性メモリへの書き込み制御方法。 - 請求項1もしくは2記載のプリンタにおける不揮発性メモリへの書き込み制御方法において、
前記所定のタイミングとして、所定の時間間隔、プリンタの電源のオン及びオフ時、プリンタの動作状況に関する所定のイベント発生時を含むことを特徴とするプリンタにおける不揮発性メモリへの書き込み制御方法。 - 請求項3記載のプリンタにおける不揮発性メモリへの書き込み制御方法において、
前記所定のイベントは、印字ヘッドのクリーニングを含むものであることを特徴とするプリンタにおける不揮発性メモリへの書き込み制御方法。 - 請求項3もしくは4記載のプリンタにおける不揮発性メモリへの書き込み制御方法において、
前記不揮発性メモリに記憶されるデータは、第1のデータ群と、第2のデータ群に予めグループ化されており、
更に、前記所定の時間間隔毎に、前記第1のデータ群を、前記不揮発性メモリへ書き込む工程(c1)と、
前記所定のイベントの発生時に、第1のデータ群および前記第2のデータ群を、前記不揮発性メモリへ書き込むとともに、前記所定の間隔の計時を初期化する工程(c2)と
を備えたことを特徴とするプリンタにおける不揮発性メモリへの書き込み制御方法。 - 前記各メモリ領域毎に誤り検出符号を備え、
前記メモリ領域上のデータの誤り検出を行う工程(e)を、更に備えることを特徴とする請求項1記載のプリンタにおける不揮発性メモリへの書き込み制御方法。 - 前記誤り検出を行う工程(e)は、前記不揮発性メモリ上のデータを読み込み前記揮発性メモリに一時的に記憶する場合に、該読み込みが行われたメモリ領域上のデータの誤り検出を行うことを特徴とする請求項6記載のプリンタにおける不揮発性メモリへの書き込み制御方法。
- 前記誤り検出を行う工程(e)は、前記揮発性メモリ上のデータを前記不揮発性メモリに書き込む場合に、前記不揮発性メモリへの書き込みを行った後に、該書き込みが行われたメモリ領域上のデータの誤り検出を行うことを特徴とする請求項6記載のプリンタにおける不揮発性メモリへの書き込み制御方法。
- 前記誤り検出を行う工程(e)で、前記メモリ領域上のデータの誤りが検出された場合に、
該メモリ領域のデータに対応する所定の初期化データを、前記揮発性メモリと不揮発性メモリの対応するメモリ領域に書き込む工程(f)を、更に備えることを特徴とする請求項6乃至8のいずれかに記載のプリンタにおける不揮発性メモリへの書き込み制御方法。 - プリンタの動作状況に関するデータを記憶する不揮発性メモリと、
該不揮発性メモリから読み出したデータ及びプリンタの動作に伴って更新された前記データを一時的に記憶する揮発性メモリとを備えたプリンタにおいて、
各々異なる所定のタイミングで更新されるデータ毎にグループ化されたデータ群を記憶するために、前記揮発性メモリ上に割り当てられた複数のメモリ領域と、
当該揮発性メモリ上に割り当てられた複数のメモリ領域の各々に対応して、前記不揮発性メモリ上に設けられた複数のメモリ領域と、
前記所定のタイミングのうちの一つが発生した時に、揮発性メモリの内容を不揮発性メモリへ書き込む書き込み命令を発する書き込み命令手段と、
前記書き込み命令に応じて、前記発生したタイミングに対応してグループ化された前記揮発性メモリ上のデータ群を、前記不揮発性メモリ上の対応するメモリ領域へ書き込む書き込み手段とを備えたことを特徴とするプリンタ。 - 請求項10記載のプリンタにおいて、前記不揮発性メモリに記憶されるデータは、第1のデータ群と、第2のデータ群に予めグループ化されており、更に、
所定の間隔を計測するカウンタと、
プリンタの動作状況に関する所定のイベント発生の有無を監視する監視手段と、
前記カウンタにおける所定の間隔毎に、前記第1のデータ群を、前記不揮発性へ書き込む第1の書き込み手段と、
前記監視手段において監視される所定のイベントの発生時毎に、第2のデータ群および前記第1のデータ群を、前記不揮発性メモリへ書き込む第2の書き込み手段と、
前記第2の書き込み手段による書き込みが行われた際に、前記カウンタを初期化する初期化手段とを、有することを特徴とするプリンタ。 - 請求項10もしくは11記載のプリンタにおいて、前記各メモリ領域毎に、プリンタの動作状況に関するデータが記憶されるデータ領域と、
誤り検出符号が記憶されるチェックサム領域が設けられていることを特徴とするプリンタ。 - 請求項10乃至12のいずれかに記載のプリンタにおいて、
前記不揮発性メモリ上に設けられた複数のメモリ領域の少なくとも1つは、更に、複数のサブメモリ領域に分割されていることを特徴とするプリンタ。 - 請求項13記載のプリンタにおいて、前記サブメモリ領域は、更に、プリンタの動作状況に関するデータが記憶されるデータ領域と、当該領域に記憶されたデータの更新履歴が記憶される履歴記憶領域に分割されていることを特徴とするプリンタ。
- 請求項13もしくは14記載のプリンタにおいて、前記各サブメモリ領域毎に、誤り検出符号が記憶されるチェックサム領域が設けられていることを特徴とするプリンタ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13431599A JP3826617B2 (ja) | 1998-05-14 | 1999-05-14 | 不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10-132072 | 1998-05-14 | ||
JP13207298 | 1998-05-14 | ||
JP13431599A JP3826617B2 (ja) | 1998-05-14 | 1999-05-14 | 不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000035922A JP2000035922A (ja) | 2000-02-02 |
JP3826617B2 true JP3826617B2 (ja) | 2006-09-27 |
Family
ID=26466725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13431599A Expired - Fee Related JP3826617B2 (ja) | 1998-05-14 | 1999-05-14 | 不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3826617B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4557341B2 (ja) * | 2000-01-07 | 2010-10-06 | キヤノン株式会社 | バックアップ記憶制御装置 |
JP2002254622A (ja) | 2001-02-28 | 2002-09-11 | Canon Inc | 記録装置及び記録システム |
JP2006062266A (ja) | 2004-08-27 | 2006-03-09 | Seiko Epson Corp | プリンタ及びプリンタの制御方法 |
EP1630662B1 (en) | 2004-08-27 | 2013-01-02 | Seiko Epson Corporation | Printer and printer control method |
JP2007226602A (ja) * | 2006-02-24 | 2007-09-06 | Murata Mach Ltd | 画像形成装置 |
JP5150419B2 (ja) * | 2008-09-08 | 2013-02-20 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置及びその起動制御方法 |
JP2015141575A (ja) * | 2014-01-29 | 2015-08-03 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置および制御方法 |
US9684853B2 (en) | 2014-04-15 | 2017-06-20 | Kyocera Document Solutions Inc. | Image forming apparatus that writes data from volatile memory to non-volatile memory |
JP6168660B2 (ja) * | 2014-04-15 | 2017-07-26 | 京セラドキュメントソリューションズ株式会社 | 電子機器 |
JP6168661B2 (ja) * | 2014-04-17 | 2017-07-26 | 京セラドキュメントソリューションズ株式会社 | 電子機器 |
JP5982025B1 (ja) | 2015-02-27 | 2016-08-31 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置およびメモリー管理プログラム |
JP6365346B2 (ja) * | 2015-02-27 | 2018-08-01 | 京セラドキュメントソリューションズ株式会社 | 情報処理装置およびメモリー管理プログラム |
JP6363044B2 (ja) * | 2015-03-31 | 2018-07-25 | 日立オートモティブシステムズ株式会社 | 制御装置 |
JP2017059009A (ja) * | 2015-09-17 | 2017-03-23 | 横河電機株式会社 | 制御装置 |
-
1999
- 1999-05-14 JP JP13431599A patent/JP3826617B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000035922A (ja) | 2000-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6516440B1 (en) | Printer and a control method for saving data from volatile to nonvolatile memory in the printer | |
JP3826617B2 (ja) | 不揮発性メモリを備えたプリンタ、及びそのプリンタにおける不揮発性メモリへの書き込み制御方法 | |
KR100488269B1 (ko) | 인쇄장치,그제어방법및기록매체 | |
EP3904104A1 (en) | Printing consumable and ink cartridge | |
JP2010204851A (ja) | 記憶装置及び情報処理装置 | |
WO2007088606A1 (ja) | 故障情報管理方法及び検出方法、装置並びに記憶媒体 | |
CN114953755B (zh) | 成像盒的检测方法 | |
JP3823532B2 (ja) | プリンタにおける不揮発性メモリへの書き込み制御方法及びプリンタ | |
JP2000322326A (ja) | バックアップメモリの情報管理方法 | |
JP7011160B2 (ja) | ストレージ装置、ストレージシステム、及びプログラム | |
US6388763B1 (en) | Method for processing a ROM image when electrical power supplied to a laser printer has been interrupted | |
JP3697785B2 (ja) | プリンタ装置 | |
JP5451291B2 (ja) | 画像形成装置、画像形成装置の制御方法及びプログラム | |
JP3919375B2 (ja) | 画像形成装置及び画像形成装置の制御方法 | |
JP4375857B2 (ja) | プログラム再書き込み機能付コンピュータ | |
JP2004341783A (ja) | データ記憶方法、及びデータ記憶装置 | |
JP3823535B2 (ja) | プリンタにおける不揮発性メモリへの書き込み制御方法及びプリンタ | |
JPH11250675A (ja) | 記憶装置及び記憶制御方法 | |
JP2007041798A (ja) | 情報処理装置及び情報処理装置のメモリ書き換え方法 | |
JP2000132464A (ja) | データ書き込み方法、装置及び画像形成装置 | |
JP2005035229A (ja) | プリンタ装置 | |
JPH08255040A (ja) | 印刷装置 | |
JP5067105B2 (ja) | 印刷装置,バックアップ装置,バックアップ方法およびバックアッププログラム | |
JP7193763B2 (ja) | ストレージ装置、ストレージシステム、及びプログラム | |
JP4131147B2 (ja) | プリンタにおけるフラッシュメモリの判定方法、この方法をコンピュータに実行させるプログラム、このプログラムを記録した記録媒体、フラッシュメモリを備えるプリンタ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060509 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060522 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060613 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060626 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100714 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120714 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120714 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130714 Year of fee payment: 7 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |