(57)【要約】【課題】  プログラムを確実に更新可能な画像処理装置を提供する。【解決手段】書き換え可能な不揮発性メモリを備える画像処理装置に、プログラムデータの入出力を行うための入出力プログラムデータ及び画像処理のための画像処理プログラムデータを予め記憶するデータ記憶部と、バックアップのためのプログラムデータを記憶するためのバックアップ記憶部と、データ記憶部に記憶されている入出力プログラムデータに基づいて、入出力プログラムを起動して実行する起動実行部と、画像処理プログラムデータを、データ記憶部からバックアップ記憶部に転送し、旧画像処理プログラムデータとして記憶させる転送部と、新規画像処理プログラムデータを入力するデータ入力部と、データ記憶部に記憶されている画像処理プログラムデータを、入力された新規画像処理プログラムデータに書き換える書き換え部とを設ける。【選択図】        図１
2010079713.tif 000002
【特許請求の範囲】
【請求項１】
書き換え可能な不揮発性メモリを備え、画像処理を行うための画像処理装置であって、
前記不揮発性メモリは、
プログラムデータの入出力を行うための入出力プログラムデータ及び画像処理のための画像処理プログラムデータを予め記憶するデータ記憶部と、
バックアップのためのプログラムデータを記憶するためのバックアップ記憶部と、
を有し、
前記データ記憶部に記憶されている前記入出力プログラムデータに基づいて、入出力プログラムを起動して実行する起動実行部と、
前記画像処理プログラムデータを、前記データ記憶部から前記バックアップ記憶部に転送し、旧画像処理プログラムデータとして記憶させる転送部と、
新規画像処理プログラムデータを入力するデータ入力部と、
前記データ記憶部に記憶されている前記画像処理プログラムデータを、入力された前記新規画像処理プログラムデータに書き換える書き換え部と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記入出力プログラムデータの位置情報を起動位置情報として記憶する起動位置記憶部を更に備え、
前記起動実行部は、前記起動位置情報に基づいて、前記入出力プログラムの起動を行う
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記不揮発性メモリの書き換え要求を入力する要求入力部と、
所定のタイミングで、前記書き換え要求の入力の有無を判定する判定部と、
入力有りと判定されると、前記起動実行部を制御して、前記データ記憶部の前記入出力プログラムデータに基づく前記入出力プログラムの起動して実行させる制御部と、
を更に備えることを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記判定部により入力無しと判定されると、前記制御部は、前記起動実行部を制御して、前記データ記憶部の画像処理プログラムデータに基づき、画像処理プログラムを起動して実行させることを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記画像処理プログラムデータは、フォント情報を含むことを特徴とする請求項１記載の画像処理装置。
【請求項６】
前記画像処理プログラムデータは、更に画像処理プログラムの起動開始領域を示す起動位置情報と、ビットマップデータ処理のためのビットマップデータ処理プログラムデータとを含むことを特徴とする請求項５記載の画像処理装置。
【請求項７】
前記データ入力部は、外部装置から前記新規画像処理プログラムデータを入力し、
前記入出力プログラムデータは、前記データ入力部による入力処理のための外部入出力プログラムデータと、前記転送部による転送処理及び前記書き換え部による書き換え処理のための内部入出力プログラムデータとからなることを特徴とする請求項１記載の画像処理装置。
【請求項８】
前記データ入力部により入力された前記新規画像処理プログラムデータを一時的に記憶する一時記憶部を更に備え、
前記書き換え部は、前記一時記憶部に基づいて、書き換え処理を実施することを特徴とする請求項１記載の画像処理装置。
【請求項９】
前記一時記憶部は、揮発性メモリからなることを特徴とする請求項８記載の画像処理装置。
【請求項１０】
前記転送部は、更に前記入出力プログラムデータを、前記データ記憶部から前記バックアップ記憶部に転送して、旧入出力プログラムデータとして記憶させ、
前記データ入力部は、更に新規入出力プログラムデータを入力し、
前記書き換え部は、更に前記データ記憶部に記憶されている前記入出力プログラムデータを、入力された前記新規入出力プログラムデータに書き換え、
前記起動実行部は、更に書き換えられた前記新規入出力プログラムデータに基づいて、新規入出力プログラムを起動して実行する
ことを特徴とする請求項１記載の画像処理装置。
【請求項１１】
前記入出力プログラムデータの位置情報を起動位置情報として記憶する起動位置記憶部と、
前記転送部による前記転送及び前記書き換え部により前記書き換えに伴い、前記起動位置情報記憶部を更新する更新部と、
を更に備え、
前記起動実行部は、前記起動位置情報に基づいて、前記起動を行う
ことを特徴とする請求項１０記載の画像処理装置。
【請求項１２】
前記転送部により前記データ記憶部から転送される前記入出力プログラムデータを、旧入出力プログラムデータとして一時的に記憶する一時記憶部を更に備え、
前記起動実行部は、更に前記一時記憶部に記憶される前記旧入出力プログラムデータに基づいて、入出力プログラムを起動して実行する
ことを特徴とする請求項１０記載の画像処理装置。
【請求項１３】
前記一時記憶部は、揮発性メモリからなることを特徴とする請求項１２記載の画像処理装置。
【請求項１４】
書き換え可能な不揮発性メモリを備え、画像処理を行うための画像処理装置と、該画像処理装置との間で通信可能な外部装置とを含む画像処理システムであって、
前記外部装置は、
新規画像処理プログラムデータを前記画像処理装置へ出力する出力部を備え、
前記不揮発性メモリは、
プログラムデータの入出力を行うための入出力プログラムデータ及び画像処理のための画像処理プログラムデータを予め記憶するデータ記憶部と、
バックアップのためのプログラムデータを記憶するためのバックアップ記憶部と、
を有し、
前記画像処理装置は、
前記データ記憶部に記憶されている前記入出力プログラムデータに基づいて、入出力プログラムを起動して実行する起動実行部と、
前記画像処理プログラムデータを、前記データ記憶部から前記バックアップ記憶部に転送し、旧画像処理プログラムデータとして記憶させる転送部と、
前記外部装置からの前記新規画像処理プログラムデータを入力するデータ入力部と、
前記データ記憶部に記憶されている前記画像処理プログラムデータを、入力された前記新規画像処理プログラムデータに書き換える書き換え部と、
を備えることを特徴とする画像処理システム。
【請求項１５】
前記画像処理装置は、
前記入出力プログラムデータの位置情報を起動位置情報として記憶する起動位置記憶部を更に備え、
前記起動実行部は、前記起動位置情報に基づいて、前記入出力プログラムの起動を行う
ことを特徴とする請求項１４記載の画像処理システム。
【請求項１６】
前記画像処理装置は、
前記不揮発性メモリの書き換え要求を入力する要求入力部と、
所定のタイミングで、前記書き換え要求の入力の有無を判定する判定部と、
入力有りと判定されると、前記起動実行部を制御して、前記データ記憶部の前記入出力プログラムデータに基づく前記入出力プログラムの起動して実行させる制御部と、
を更に備えることを特徴とする請求項１４記載の画像処理システム。
【請求項１７】
前記判定部により入力無しと判定されると、前記制御部は、前記起動実行部を制御して、前記データ記憶部の画像処理プログラムデータに基づき、画像処理プログラムを起動して実行させることを特徴とする請求項１６記載の画像処理システム。
【請求項１８】
前記画像処理プログラムデータは、フォント情報を含むことを特徴とする請求項１４記載の画像処理システム。
【請求項１９】
前記画像処理プログラムデータは、更に画像処理プログラムの起動開始領域を示す起動位置情報と、ビットマップデータ処理のためのビットマップデータ処理プログラムデータとを含むことを特徴とする請求項１８記載の画像処理システム。
【請求項２０】
前記入出力プログラムデータは、前記データ入力部による入力処理のための外部入出力プログラムデータと、前記転送部による転送処理及び前記書き換え部による書き換え処理のための内部入出力プログラムデータとからなることを特徴とする請求項１４記載の画像処理システム。
【請求項２１】
前記画像処理装置は、
前記データ入力部により入力された前記新規画像処理プログラムデータを一時的に記憶する一時記憶部を更に備え、
前記書き換え部は、前記一時記憶部に基づいて、書き換え処理を実施することを特徴とする請求項１４記載の画像処理システム。
【請求項２２】
前記一時記憶部は、揮発性メモリからなることを特徴とする請求項２１記載の画像処理システム。
【請求項２３】
前記外部装置において、
前記出力部は、更に新規入出力プログラムデータを出力し、
前記画像処理装置において、
前記転送部は、更に前記入出力プログラムデータを、前記データ記憶部から前記バックアップ記憶部に転送して、旧入出力プログラムデータとして記憶させ、
前記データ入力部は、更に前記新規入出力プログラムデータを入力し、
前記書き換え部は、更に前記データ記憶部に記憶されている前記入出力プログラムデータを、入力された前記新規入出力プログラムデータに書き換え、
前記起動実行部は、更に書き換えられた前記新規入出力プログラムデータに基づいて、新規入出力プログラムを起動して実行する
ことを特徴とする請求項１４記載の画像処理システム。
【請求項２４】
前記画像処理装置は、
前記入出力プログラムデータの位置情報を起動位置情報として記憶する起動位置記憶部と、
前記転送部による前記転送及び前記書き換え部により前記書き換えに伴い、前記起動位置情報記憶部を更新する更新部と、
を更に備え、
前記起動実行部は、前記起動位置情報に基づいて、前記起動を行う
ことを特徴とする請求項２３記載の画像処理システム。
【請求項２５】
前記画像処理装置は、前記転送部により前記データ記憶部から転送される前記入出力プログラムデータを、旧入出力プログラムデータとして一時的に記憶する一時記憶部を更に備え、
前記起動実行部は、更に前記一時記憶部に記憶される前記旧入出力プログラムデータに基づいて、入出力プログラムを起動して実行する
ことを特徴とする請求項２４記載の画像処理システム。
【請求項２６】
前記一時記憶部は、揮発性メモリからなることを特徴とする請求項２５記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリを備える画像処理装置及び該画像処理装置を含む画像処理システムに関し、特に、不揮発性メモリ内のデータを書き換え可能な画像処理装置及び画像処理システムに関する。
【背景技術】
【０００２】
Ｆｌａｓｈ  ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性メモリを備えるプリンタや複合機等の画像処理装置及び該画像処理装置とホストコンピュータ等の外部装置とからなる画像処理システムが知られている。この不揮発性メモリは、データの消去や書き換えが可能且つ電源オフ時にもデータを保持可能なメモリであり、画像処理装置に実装される画像処理用のプログラムに対応するプログラムデータの格納に多用されている。
【０００３】
上記した画像処理装置において、実装されるプログラムが更新される場合、従来、外部装置から画像処理装置へ、不揮発性メモリ内のデータを書き換えるための専用の書き換えプログラムに対応するプログラムデータが送信される。画像処理装置は、受信したプログラムデータを揮発性メモリに格納し、該書き換えプログラムを実行して、不揮発性メモリ内のデータを消去する。また、外部装置から画像処理装置へ、変更データが送信され、該変更データに基づいて、新規プログラムのプログラムデータが、不揮発性メモリに書き込まれる（例えば、下記特許文献１参照）。
【特許文献１】特開平９−３０５３９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記した従来の技術では、画像処理装置において、変更データの受信中や不揮発性メモリへの書き込み中に、エラーが発生した場合、新規プログラムのみならず、元のプログラムデータまでも消失してしまうという問題があった。
【０００５】
したがって、プログラムを確実に更新可能な画像処理装置及び画像処理システムが望まれていた。
【課題を解決するための手段】
【０００６】
本発明は、以上の点を解決するために、次の構成を採用する。
【０００７】
〈構成１〉
本発明に係る画像処理装置は、書き換え可能な不揮発性メモリを備え、不揮発性メモリは、プログラムデータの入出力を行うための入出力プログラムデータ及び画像処理のための画像処理プログラムデータを予め記憶するデータ記憶部と、バックアップのためのプログラムデータを記憶するためのバックアップ記憶部とを有し、データ記憶部に記憶されている入出力プログラムデータに基づいて、入出力プログラムを起動して実行する起動実行部と、画像処理プログラムデータを、データ記憶部からバックアップ記憶部に転送し、旧画像処理プログラムデータとして記憶させる転送部と、新規画像処理プログラムデータを入力するデータ入力部と、データ記憶部に記憶されている画像処理プログラムデータを、入力された新規画像処理プログラムデータに書き換える書き換え部とを備えることを特徴とする。
【０００８】
〈構成２〉
本発明に係る画像処理システムは、書き換え可能な不揮発性メモリを備え、画像処理を行うための画像処理装置と、該画像処理装置との間で通信可能な外部装置とを含み、外部装置は、新規画像処理プログラムデータを画像処理装置へ出力する出力部を備え、不揮発性メモリは、プログラムデータの入出力を行うための入出力プログラムデータ及び画像処理のための画像処理プログラムデータを予め記憶するデータ記憶部と、第２領域に設けられ、バックアップのためのプログラムデータを記憶するためのバックアップ記憶部とを有し、画像処理装置は、データ記憶部に記憶されている入出力プログラムデータに基づいて、入出力プログラムを起動して実行する起動実行部と、画像処理プログラムデータを、データ記憶部からバックアップ記憶部に転送し、旧画像処理プログラムデータとして記憶させる転送部と、外部装置からの新規画像処理プログラムデータを入力するデータ入力部と、データ記憶部に記憶されている画像処理プログラムデータを、入力された新規画像処理プログラムデータに書き換える書き換え部とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明の画像処理装置及び画像処理システムによれば、書き換え処理の実施に先立ち、書き換え前のデータが、バックアップとして転送して記憶されるので、エラー発生時にも、データが失われることなく、確実に書き換えが可能となる。したがって、プログラムを確実に更新可能な画像処理装置及び画像処理システムが実現される。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施形態を、図を用いて詳細に説明する。ここでは、本発明を電子写真方式のデジタルＬＥＤプリンタとホストコンピュータとからなるプリンタシステムに適用した場合を例に、説明を行う。
【実施例１】
【００１１】
図２は、本発明に係るプリンタシステムの構成を具体的に示すブロック図である。
プリンタシステム１０は、画像処理システムとして、プリンタ１１及びホストコンピュータから構成される。
【００１２】
プリンタ１１は、本実施例では電子写真方式のデジタルＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）プリンタであり、図２に示されるように、Ｆｌａｓｈ  ＲＯＭ１３、ＲＡＭ１４、ＣＰＵ１５及びオペレーションパネル１６を具備している。
【００１３】
Ｆｌａｓｈ  ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３は、プリンタ１１の電源オフ時にもデータ保持可能且つデータの消去や書き換えが可能な不揮発性メモリである。Ｆｌａｓｈ  ＲＯＭ１３には、ＣＰＵ１５により実行されるプログラムのプログラムデータや、固定的なデータ等が記憶される。
【００１４】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１４は、揮発性メモリであり、一時的にデータを記憶する一時記憶部としての機能を有する。ＲＡＭ１４に記憶されるデータは、プリンタ１１の電源オフに伴い失われる。ＲＡＭ１４は、ＣＰＵ１５における各プログラムの実行過程において、作業領域として使用される。
【００１５】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１５は、プリンタ１１の統括制御を行う中央処理装置であり、ＲＡＭ１４を作業領域として、Ｆｌａｓｈ  ＲＯＭ１３に記憶されている各プログラムを実行する。
【００１６】
オペレーションパネル１６は、液晶ディスプレイやスイッチ等を有するユーザインタフェース部であり、各種情報をユーザに表示する機能や、各種情報をユーザに選択させて入力する機能を有する。
【００１７】
ホストコンピュータ１２は、外部装置として、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）やセントロニクスＩ／Ｆ等のローカルポートを介して、プリンタ１１に接続される。
【００１８】
次に、プリンタ１１のＦｌａｓｈ  ＲＯＭ１３及びＲＡＭ１４に展開される各タスクを含むシステム構成について、説明する。
まず、プリンタ１１の通常運用時について、図３を用いて説明を行う。
図３は、実施例１に係るプリンタシステムの通常運用時におけるシステム構成を示す図である。
【００１９】
ホストコンピュータ１２の物理ポート４０は、本実施例ではＵＳＢやセントロニクスＩ／Ｆ等のローカルポートである。
【００２０】
プリンタ１１において、Ｆｌａｓｈ  ＲＯＭ１３には、図３に示されるように、Ｉ／Ｆデバイスドライバ４１−１〜３、オペレーティングシステム４２、初期化処理部４３、データ受信／送信処理４４、プリンタジョブコントロール部４５、システムコントロール部４６、データ編集部４７、ＰＤＬ４８、データ展開部４９、データ印刷部５０が展開される。
【００２１】
Ｉ／Ｆデバイスドライバ４１−１〜３は、物理ポートと１対１で設けられるデバイスドライバである。
【００２２】
オペレーティングシステム４２は、本システムを動作させるためのプラットフォームである。
【００２３】
初期化処理部４３は、電源投入時に動作するプログラムである。
【００２４】
データ受信／送信処理４４は、デバイスドライバからのデータ受信や、デバイスドライバへのレスポンス送信を実施するタスクである。
【００２５】
プリンタジョブコントロール部４５は、受信したデータの初期解析を実施するタスクである。
【００２６】
システムコントロール部４６は、各タスクを同期させる同期処理や、タスク間のデータ受け渡し処理を実施するタスクである。
【００２７】
データ編集部４７は、ページデータとして入力されたデータを、ＰＤＬ（Ｐｒｉｎｔｅｒ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）４８を用いて翻訳するタスクである。
【００２８】
データ展開部４９は、データ編集部４７による翻訳結果を元に、ビットマップデータを生成するタスクである。
【００２９】
データ印刷部５０は、ビットマップデータであるページデータ５２に基づいて、印刷用紙上への印刷処理を実施するタスクである。
【００３０】
ＲＡＭ１４には、図３に示されるように、ワーク５１及びページデータ５２が保持される。
【００３１】
ワーク５１は、システムの動作やページデータの生成等、各プログラムの実行時に保持されるデータである。
【００３２】
ページデータ５２は、データ編集部４７により生成された翻訳結果や、データ展開部４９で生成されたビットマップデータである。
【００３３】
次に、プリンタ１１においてＦｌａｓｈ  ＲＯＭ１３内のデータが書き換えられる場合に、Ｆｌａｓｈ  ＲＯＭ１３の所定領域に圧縮されて格納されたプリンタ１１の制御プログラムが、Ｆｌａｓｈ  ＲＯＭ１３及びＲＡＭ１４に伸長して展開される各タスクを含むシステム構成について、説明する。
図４は、実施例１に係るプリンタシステムのデータ書き換え時におけるシステム構成を示す図である。
【００３４】
プリンタ１１において、Ｆｌａｓｈ  ＲＯＭ１３には、図４に示されるように、初期化処理部４３が展開される。
【００３５】
ＲＡＭ１４には、図４に示されるように、Ｉ／Ｆデバイスドライバ５３、オペレーティングシステム５４、初期化処理部５５、データ受信／送信処理５６、プリンタジョブコントロール部５７、システムコントロール部５８、ワーク５９及び書き換えデータ６０が展開される。
【００３６】
Ｉ／Ｆデバイスドライバ５３は、物理ポートと１対１で設けられるデバイスドライバである。
【００３７】
オペレーティングシステム５４は、本システムを動作させるためのプラットフォームである。
【００３８】
初期化処理部５５は、ＲＡＭ１４におけるシステム動作初期化時に動作するプログラムである。
【００３９】
データ受信／送信処理５６は、デバイスドライバからのデータ受信や、デバイスドライバへのレスポンス送信を実施するタスクである。
【００４０】
プリンタジョブコントロール部５７は、受信したデータの解析を実施するタスクである。
【００４１】
システムコントロール部５８は、各タスクを同期させる同期処理や、タスク間のデータ受け渡し処理を実施するタスクである。
【００４２】
ワーク５９は、システムの動作や書き換えデータの記憶等、各プログラムの実行時に保持されるデータである。
【００４３】
書き換えデータ６０は、ホストコンピュータ１２から受信され、Ｆｌａｓｈ  ＲＯＭ１３内に展開されるデータである。
【００４４】
続いて、本実施例のプリンタシステム１０における主要部の機能構成について、図１を用いて説明する。
図１は、実施例１に係るプリンタシステムの要部機能構成を示すブロック図である。
【００４５】
プリンタシステム１０は、画像処理システムとして、プリンタ１１及びホストコンピュータ１２を含んで構成される。
【００４６】
ホストコンピュータ１２は、プリンタ１１との間で通信可能な外部装置であり、図１に示されるように、ホスト記憶部１７、ホスト通信部１８及びホスト制御部１９を備えている。
【００４７】
ホスト記憶部１７は、プリンタ１１に導入される新規プログラムのプログラムデータである書き換えデータが記憶される記憶部である。
【００４８】
ホスト通信部１８は、物理ポート４０を含んで構成され、出力部として、書き換えデータをプリンタ１１へ送信する。また、ホスト通信部１８は、印刷データをプリンタ１１へ送信する。
【００４９】
ホスト制御部１９は、ホストコンピュータ１２の各部を制御する機能を有する。
【００５０】
プリンタ１１は、画像処理装置として、図１に示されるように、プリンタ通信部２０、要求入力部２１、判定部２２、データ記憶部２３、バックアップ記憶部２４、一時記憶部２５、ＩＰＴ記憶部２６、起動実行部２７、転送部２８、書き換え部２９、更新部３０、画像処理部３１、印刷部３２及びプリンタ制御部３３を備えている。
【００５１】
プリンタ通信部２０は、Ｉ／Ｆデバイスドライバ及びデータ受信／送信処理を含んで構成され、入力部として、ホストコンピュータ１２から新規プログラムデータとしての書き換えデータを受信して入力する。また、プリンタ通信部２０は、ホストコンピュータ１２から印刷データを受信する。
【００５２】
要求入力部２１は、Ｆｌａｓｈ  ＲＯＭ１３内のデータの書き換え要求を入力する。本実施例では、要求入力部２１は、オペレーションパネル１６を含んで構成され、オペレーションパネル１６に設けられたスイッチが複数押下された状態で、電源スイッチが押下されると、該押下を検知した要求入力部２１が、書き換え要求を入力する。或いは、プリンタ１１のカバーを開いた状態で、何れかのセンサが操作されると、書き換え要求が入力されるべく構成することも可能である。
【００５３】
判定部２２は、プリンタ１１の電源投入時に、要求入力部２１による書き換え要求の入力の有無を判定する。
【００５４】
データ記憶部２３及びバックアップ記憶部２４は、Ｆｌａｓｈ  ＲＯＭ１３に設けられる記憶領域である。データ記憶部２３及びバックアップ記憶部２４は、プリンタ１１の電源オフ時にも、記憶するデータを保持する。
【００５５】
データ記憶部２３は、画像処理用の画像処理プログラムデータや、プログラムデータの入出力処理のための入出力プログラムデータ等が記憶される領域である。
【００５６】
バックアップ記憶部２４は、データ記憶部２３内のデータ書き換え時に、バックアップ用のプログラムデータが、旧プログラムデータとして記憶される領域である。
【００５７】
一時記憶部２５は、ＲＡＭ１４に設けられる記憶領域である。一時記憶部２５には、プリンタ通信部２０により受信された書き換えデータや、後述する転送部２８によりデータ記憶部２３から転送されたプログラムデータ等が、一時的に記憶される。一時記憶部２５に記憶される各データは、プリンタ１１の電源オフに伴い失われる。
【００５８】
ＩＰＴ記憶部２６は、Ｆｌａｓｈ  ＲＯＭ１３に設けられ、起動位置記憶部として、起動位置情報としてのＩＰＴを記憶する。ＩＰＴは、起動されるプログラムデータの先頭位置を示す情報であり、データ記憶部２３及びバックアップ記憶部２４に記憶される何れかのプログラムデータの先頭位置を示すアドレスデータからなる。通常運用時、ＩＰＴ記憶部２６には、プリンタ１１への電源投入に伴い起動されるプログラムデータの先頭位置として、データ記憶部２３に記憶される入出力プログラムデータのアドレスデータが、ＩＰＴとして記憶されている。
【００５９】
起動実行部２７は、プログラムを起動して実行する機能を有する。起動実行部２７は、例えば、画像処理プログラムを起動して、画像処理部３１による画像処理を実行させる。また、起動実行部２７は、プリンタ１１に電源が投入された場合、或いはエラーが発生した場合、ＩＰＴ記憶部２６に記憶されているＩＰＴを読み出して、該ＩＰＴに対応するプログラムデータに基づき、プログラムを起動して実行する。起動実行部２７は、電源投入時及びエラーの発生時に、ＩＰＴに対応する入出力プログラムを起動して、転送部２８による転送処理や書き換え部２９による書き換え処理を実行させる。
【００６０】
転送部２８は、起動実行部２７による入出力プログラムの起動に基づき実行される処理部である。転送部２８は、データ記憶部２３に記憶されているプログラムデータを、一時記憶部２５に転送して、旧プログラムデータとして記憶させる。また、転送部２８は、一時記憶部２５に記憶されている旧プログラムデータを、バックアップ記憶部２４に転送して記憶させる。
【００６１】
書き換え部２９は、起動実行部２７による入出力プログラムの起動に基づき実行される処理部である。書き換え部２９は、データ記憶部２３に記憶されているプログラムデータを、一時記憶部２５に記憶されている新規プログラムデータとしての書き換えデータに書き換える。
【００６２】
更新部３０は、ＩＰＴ記憶部２６に記憶されるＩＰＴを更新する機能を有する。更新部３０は、転送部２８により旧プログラムデータがバックアップ記憶部２４に転送されると、転送後の旧プログラムデータに対応するＩＰＴに基づき、ＩＰＴ記憶部２６を更新する。
【００６３】
画像処理部３１は、プリンタジョブコントロール部４５やデータ編集部４７、ＰＤＬ４８、データ展開部４９等を含んで構成され、起動実行部２７による画像処理プログラムの起動に基づき実行される処理部である。画像処理部３１は、プリンタ通信部２０により受信された印刷データを解析して、データの編集や翻訳、展開等の処理を行って、ページ単位のビットマップデータを生成する。生成された各ビットマップデータは、ページデータとして、一時記憶部２５に記憶される。
【００６４】
印刷部３２は、データ印刷部５０を含んで構成され、一時記憶部２５に記憶されているページデータに基づいて、印刷用紙への印刷を行う。
【００６５】
プリンタ制御部３３は、プリンタ１１の各部を制御する機能を有する。
【００６６】
次に、本実施例のプリンタ１１を含むプリンタシステム１０の動作について、図５に示すフローチャートに沿って、説明する。
図５は、本発明に係るプリンタの電源投入後動作を示すフローチャートである。
【００６７】
ここでは、プリンタ１１において電源が投入された後、ホストコンピュータ１２から印刷データが受信され、印刷処理が実行される場合について、即ち、プリンタ１１の通常運用時の動作について、説明する。
【００６８】
プリンタ１１において、電源が投入される（ステップＳ１０１）と、プリンタ制御部３３の制御に基づいて、判定部２２が、書き換え要求の入力の有無を判定する（ステップＳ１０２）。通常運用時には、書き換え要求は入力されないので、判定部２２は、入力無しと判定し、判定結果をプリンタ制御部３３に通知する（ステップＳ１０２）。
【００６９】
プリンタ制御部３３は、該判定結果に基づいて、プリンタ１１を通常運用させる（ステップＳ１０３）。
【００７０】
この通常運用時におけるプリンタ１１の動作（ステップＳ１０３）について、図６に示されるフローチャートと、図３に示されるシステム構成図とを用いて、詳しく説明する。
図６は、本発明に係るプリンタの通常運用動作を示すフローチャートである。
【００７１】
プリンタ制御部３３は、プリンタ１１を通常運用させるべく、まず、Ｆｌａｓｈ  ＲＯＭ１３にオペレーティングシステム（ＯＳ）４２を含む各タスクを展開する（ステップＳ２０１）。即ち、電源投入により、Ｆｌａｓｈ  ＲＯＭ１３の初期化処理部４３が動作し、Ｆｌａｓｈ  ＲＯＭ１３内に、図３に示されるように、各タスクが展開される（ステップＳ２０１）。
【００７２】
そして、プリンタ１１は、外部装置からの印刷データの受信待ち状態となる（ステップＳ２０２）。
【００７３】
ホストコンピュータ１２において、ホスト通信部１８は、ホスト制御部１９の制御に基づいて、ホスト記憶部１７に記憶されている印刷データをプリンタ１１へ送信する。
【００７４】
そして、プリンタ１１において、プリンタ通信部２０がホストコンピュータ１１から印刷データを受信する（ステップＳ２０２）。このとき、Ｉ／Ｆデバイスドライバを介して、データ受信／送信処理４４が、該印刷データを受信して、格納する（ステップＳ２０３）。
【００７５】
続いて、画像処理部３１が、印刷データの解析処理を行う（ステップＳ２０４）。Ｆｌａｓｈ  ＲＯＭ１３に展開されたプリンタジョブコントロール部４５が、印刷データの初期解析を実施して、コントロールコマンドやページ毎の画像データ等を切り分ける（ステップＳ２０４）。
【００７６】
次に、画像処理部３１は、印刷データの編集及び翻訳処理を行って、ページデータを生成し、一時記憶部２５に記憶させる（ステップＳ２０５）。即ち、データ編集部４７が、切り分けられた各ページの画像データを、ＰＤＬ４８を用いて翻訳し、翻訳結果が、ページデータ５２として、ＲＡＭ１４に記憶される（ステップＳ２０５）。
【００７７】
そして、画像処理部３１は、ページデータの展開処理を行い、ページ毎のビットマップデータを生成し、ページデータとして一時記憶部２５に記憶させる（ステップＳ２０６）。即ち、データ展開部４９が、ＲＡＭ１４のページデータ５２に基づいて、ページ単位のビットマップデータを生成し、生成されたビットマップデータが、ページデータ５２としてＲＡＭ１４に記憶される（ステップＳ２０６）。
【００７８】
続いて、印刷部３２が、一時記憶部２５からページデータを読み出して、印刷用紙への印刷を行う（ステップＳ２０７）。即ち、データ印刷部５０が、ＲＡＭ１４のページデータ５２に基づいて、印刷用紙への印刷を行う（ステップＳ２０７）。これにより、プリンタ１１の通常運用時における印刷処理が終了する。
【００７９】
上記のように、通常運用状態において、プリンタ１１は、Ｆｌａｓｈ  ＲＯＭ１３に各タスクを展開し、ホストコンピュータ１２から受信した印刷データに基づき、画像処理及び印刷処理を行う。
【００８０】
次に、プリンタ１１において電源が投入された後、Ｆｌａｓｈ  ＲＯＭ１３のデータが書き換えられる場合について、即ち、プリンタ１１のデータ書き換え時の動作について、図５に沿って説明する。
【００８１】
Ｆｌａｓｈ  ＲＯＭ１３のデータを書き換える場合、ユーザは、オペレーションパネル１６に設けられたスイッチを複数押下しながら、電源スイッチを押下する。このとき、プリンタ１１において、電源が投入される（ステップＳ１０１）と共に、要求入力部２１が、書き換え要求を入力する（ステップＳ１０２）。判定部２２は、書き換え要求の入力有りと判定し、判定結果をプリンタ制御部３３に通知する（ステップＳ１０２）。
【００８２】
プリンタ制御部３３は、該判定結果に基づいて、プリンタ１１におけるＦｌａｓｈ  ＲＯＭ１３のデータ書き換え処理を実行する（ステップＳ１０４）。
【００８３】
このデータ書き換え時におけるプリンタ１１の動作（ステップＳ１０４）について、図７に示されるフローチャートと、図４に示されるシステム構成図とを用いて、詳しく説明する。
図７は、本発明に係るプリンタのデータ書き換え動作を示すフローチャートである。
【００８４】
電源投入により、Ｆｌａｓｈ  ＲＯＭ１３の初期化処理部４３が動作し、Ｆｌａｓｈ  ＲＯＭ１３のデータを書き換えるべく、ＲＡＭ１４にオペレーティングシステム（ＯＳ）５４を含む各タスクを展開する（ステップＳ３０１）。ＲＡＭ１４には、図４に示されるように、Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え処理に必要な各タスクが展開される。
【００８５】
次に、ＲＡＭ１４に展開された初期化処理部５５が、ＲＡＭ１４内の初期化処理を実施する（ステップＳ３０２）。これにより、一時記憶部２５は初期化されることとなる。
【００８６】
そして、プリンタ１１は、外部装置からの書き換えデータの受信待ち状態となる（ステップＳ３０３）。この受信待ち状態で、通常の印刷データが受信された場合、プリンタ１１は、受け捨て処理を実行する。
【００８７】
ホストコンピュータ１２において、ホスト制御部１９は、ホスト通信部１８を制御して、ホスト記憶部１７に記憶されている書き換えデータを、プリンタ１１へ送信する。
【００８８】
そして、プリンタ１１において、プリンタ通信部２０が書き換えデータを受信する（ステップＳ３０３）。即ち、データ受信／送信処理５６が、Ｉ／Ｆデバイスドライバ５３を介して書き換えデータを受信して、格納する（ステップＳ３０４）。
【００８９】
次に、プリンタジョブコントロール部５７が、受信した書き換えデータを、書き換えデータ６０としてＲＡＭ１４に記憶させる（ステップＳ３０５）。
【００９０】
ホストコンピュータ１２からの書き換えデータの受信が完了する（ステップＳ３０６）と、ＲＡＭ１４内の書き換えデータ６０が、Ｆｌａｓｈ  ＲＯＭ１３内に展開され、書き換えられる（ステップＳ３０７）。
【００９１】
そして、プリンタ１１は、外部装置からのリブートコマンドの受信待ち状態となる（ステップＳ３０８）。
【００９２】
プリンタ１１は、ホストコンピュータ１２からリブートコマンドを受信する（ステップＳ３０８）と、リブートを実施する（ステップＳ３０９）。これにより、Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え処理が終了し、プリンタ１１は、データが書き換えられたＦｌａｓｈ  ＲＯＭ１３に基づき、通常運用される。
【００９３】
上記のように、電源投入に伴い、書き換え要求が入力されると、プリンタ１１は、ＲＡＭ１４に各タスクを展開して、ホストコンピュータ１２から受信した書き換えデータに基づき、Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え処理を実行する。
【００９４】
次に、Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え処理の詳細について、図８、図９及び図１０を用いて、説明する。
図８、図９及び図１０は、Ｆｌａｓｈ  ＲＯＭ及びＲＡＭの書き換え状態遷移図である。
【００９５】
Ｆｌａｓｈ  ＲＯＭ１３には、図３に示される通常運用時、書き換え処理のために必要なタスク群と、書き換え処理以外、例えば画像処理のために必要なタスク群とが展開され、格納されている。以降、書き換え処理に必要なタスク群をローダと記し、それ以外のタスク群をプログラムと述べることとする。図８（０）には、通常運用時におけるＦｌａｓｈ  ＲＯＭ１３及びＲＡＭ１４の状態が示される。
【００９６】
なお、図８（ａ）は、Ｆｌａｓｈ  ＲＯＭ１３及びＲＡＭ１４のテンプレートに対応する図であり、図８（ｂ）は、書き換え前後のローダと、書き換え前後のプログラムとの一例を示す図である。ここでは、書き換え前後のタスク群を区別するために、書き換え前のタスク群、即ち旧プログラムデータには「１．００」を付し、書き換え後のタスク群、即ち新規プログラムデータには「２．００」を付すこととする。また、書き換え前のローダ、即ちローダ１．００のサイズを２ブロック、書き換え後のローダ、即ちローダ２．００のサイズを３ブロックとし、書き換え前のプログラム、即ちプログラム１．００のサイズを３ブロック、書き換え後のプログラム、即ちプログラム２．００のサイズを４ブロックとする。
【００９７】
図８（０）に示される通常運用状態において、Ｆｌａｓｈ  ＲＯＭ１３は、ローダ１．００及びプログラム１．００を格納している。図８のＦｌａｓｈ  ＲＯＭ１３において左側に示されるローダ１．００及びプログラム１．００が格納される領域が、データ記憶部２３（図１）に対応している。通常運用時、プリンタ１１のＩＰＴ記憶部２６（図１）には、このローダ１．００が格納される領域の先頭位置に対応するＩＰＴが記憶されている。即ち、電源投入時、プリンタ１１の起動実行部２７は、まず、データ記憶部２３のローダ１．００を選択して、起動する。その後、プリンタ１１は、Ｆｌａｓｈ  ＲＯＭ１３のデータ記憶部２３に格納される画像処理用のプログラム１．００を実行して、画像処理を行う。図８のＦｌａｓｈ  ＲＯＭ１３において右側の領域は、後述するように、バックアップ記憶部２４（図１）に対応している。
【００９８】
図８（１）乃至図８（４）と、図９と、図１０とは、データ書き換え時におけるＦｌａｓｈ  ＲＯＭ１３及びＲＡＭ１４の状態遷移図である。
【００９９】
Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え時、プリンタ１１のＩＰＴ記憶部２６には、初期状態において、通常運用時と同様に、ローダ１．００に対応するＩＰＴが記憶されている。即ち、電源投入時、プリンタ１１の起動実行部２７は、まず、データ記憶部２３のローダ１．００を選択して、起動する。また、要求入力部２１が書き換え要求を入力し、判定部２２が書き換え要求の入力有りを判定する。そして、データ記憶部２３のローダ１．００が実行され、転送部２８が、ローダ１．００をデータ記憶部２３から一時記憶部２５に転送する。即ち、Ｆｌａｓｈ  ＲＯＭ１３のローダ１．００がコピーされ、図８（１）に示されるように、ＲＡＭ１４にローダ１．００が書き込まれる。
【０１００】
次に、起動実行部２７は、一時記憶部２５のローダ１．００を起動する。即ち、ＲＡＭ１４において、ローダ１．００が起動して実行される（図８（２））。
【０１０１】
そして、転送部２８が、ローダ１．００をデータ記憶部２３からバックアップ記憶部２４に転送する。即ち、Ｆｌａｓｈ  ＲＯＭ１３のローダ１．００がコピーされ、図８（３）に示されるように、Ｆｌａｓｈ  ＲＯＭ１３の他の領域に書き込まれる。コピーされたローダ１．００が格納される領域が、バックアップ記憶部２４（図１）に対応している。
【０１０２】
図８（１）から図８（３）までの状態遷移中に、何らかのエラーが発生した場合、プリンタ１１は、図８（１）からのリトライを行う。即ち、転送部２８が、Ｆｌａｓｈ  ＲＯＭ１３からＲＡＭ１４へのローダ１．００の転送を、再度実施する。
【０１０３】
ローダ１．００のバックアップ記憶部２４への転送が完了すると、更新部３０がＩＰＴ記憶部２６を更新する。ＩＰＴ記憶部２６に記憶されるＩＰＴは、バックアップ記憶部２４内のローダ１．００の先頭位置に対応するＩＰＴに書き換えられる。即ち、ＩＰＴが、図８（４）に示されるように、コピーされたローダ１．００の位置に移される。
【０１０４】
次に、プリンタ１１は、ホストコンピュータ１２から新規入出力プログラムデータとしてのローダ２．００を、プリンタ通信部２０により受信して、一時記憶部２５に記憶する。図８（４）に示されるように、ローダ２．００は、ＲＡＭ１４に格納される。
【０１０５】
このホストコンピュータ１２との通信中（図８（４））に、通信エラーが発生した場合、プリンタ１１は、ローダ２．００の再取得を実施する。
【０１０６】
図８（４）において、通信系以外のエラーが発生した場合、まず、起動実行部２７が、ＩＰＴ記憶部２６に記憶されるＩＰＴに基づいて、バックアップ記憶部２４のローダ１．００を起動して実行する（図８（４）−１）。即ち、Ｆｌａｓｈ  ＲＯＭ１３にコピーされたローダ１．００が起動される。そして、転送部２８が、ローダ１．００をデータ記憶部２３から一時記憶部２５に転送する。即ち、Ｆｌａｓｈ  ＲＯＭ１３からＲＡＭ１４へのローダ１．００の転送が、再度実施される（図８（４）−１）。
【０１０７】
次に、起動実行部２７は、一時記憶部２５のローダ１．００を起動する。即ち、ＲＡＭ１４において、ローダ１．００が起動して実行される（図８（４）−２）。
【０１０８】
続いて、プリンタ通信部２０が、ホストコンピュータ１２からローダ２．００を受信して、一時記憶部２５に記憶する。即ち、ローダ２．００が、ＲＡＭ１４に格納される（図８（４）−３）。
【０１０９】
ローダ２．００がＲＡＭ１４に格納されると、書き換え部２９が、データ記憶部２３に対する書き換え処理を実施し、ＲＡＭ１４のローダ２．００をコピーして、データ記憶部２３に記憶させる。Ｆｌａｓｈ  ＲＯＭ１３には、図９（５）に示されるように、ローダ２．００が書き込まれることとなる。
【０１１０】
図９（５）の処理実行中に、エラーが発生すると、起動実行部２７は、ＩＰＴ記憶部２６に記憶されるＩＰＴに基づいて、バックアップ記憶部２４のローダ１．００を起動して実行する（図９（５）−１）。そして、転送部２８が、ローダ１．００を一時記憶部２５に転送し、起動実行部２７が、一時記憶部２５に転送されたローダ１．００を起動して実行する（図９（５）−２）。即ち、Ｆｌａｓｈ  ＲＯＭ１３のローダ１．００が起動され、ＲＡＭ１４にローダ１．００がコピーされた後、ＲＡＭ１４のローダ１．００が起動される。
【０１１１】
次に、プリンタ１１は、ローダ２．００の再取得を実施する。プリンタ通信部２０が、ホストコンピュータ１２からローダ２．００を受信すると、該ローダ２．００は一時記憶部２５に記憶される。即ち、ローダ２．００が、ＲＡＭ１４に格納される（図９（５）−３）。
【０１１２】
上記した図９（５）−１〜３の処理中に、エラーが発生した場合、図９（５）−１からの処理を再度実施する。そして、図９（５）−３に示されるように、ローダ２．００がＲＡＭ１４に格納されると、該ローダ２．００はコピーされ、図９（５）に示されるように、Ｆｌａｓｈ  ＲＯＭ１３に書き込まれる。即ち、書き換え部２９が、データ記憶部２３への書き換え処理を実施し、一時記憶部２５に記憶されているローダ２．００をコピーして、データ記憶部２３に記憶させる。
【０１１３】
続いて、プリンタ１１は、ホストコンピュータ１２からプログラム２．００を取得する。プリンタ通信部２０がプログラム２．００を受信すると、該プログラム２．００は一時記憶部２５に記憶される。即ち、プログラム２．００がＲＡＭ１４に格納される（図９（６））。
【０１１４】
図９（６）において、通信エラーが発生した場合、プリンタ１１は、プログラム２．００を再取得する。
【０１１５】
図９（６）において、通信系以外のエラーが発生した場合、起動実行部２７が、ＩＰＴ記憶部２６に記憶されるＩＰＴに基づいて、バックアップ記憶部２５のローダ１．００を起動する（図９（６）−１）。そして、転送部２８が、ローダ１．００を一時記憶部２５に転送し、起動実行部２７が、一時記憶部２５のローダ１．００を起動する（図９（６）−２）。プリンタ１１は、ホストコンピュータ１２からプログラム２．００を再取得し、一時記憶部２５に記憶する（図９（６）−３）。
【０１１６】
プログラム２．００が取得され、ＲＡＭ１４に格納される（図９（６））と、更新部３０が、ＩＰＴ記憶部２６を更新する。ＩＰＴ記憶部２６に記憶されるＩＰＴは、データ記憶部２３内のローダ２．００に対応するＩＰＴに書き換えられる（図１０（７））。
【０１１７】
そして、書き換え部２９が、データ記憶部２３の書き換え処理を実施する。書き換え部２９は、一時記憶部２５のプログラム２．００をコピーして、データ記憶部２３に書き込み、図１０（７）に示されるように、Ｆｌａｓｈ  ＲＯＭ１３にプログラム２．００が格納される。
【０１１８】
図１０（７）において、エラーが発生した場合、起動実行部２７は、ＩＰＴ記憶部２６に記憶されるＩＰＴに基づいて、データ記憶部２３のローダ２．００を起動して実行する（図１０（７）−１）。そして、転送部２８が、ローダ２．００を一時記憶部２５に転送し、起動実行部２７が、一時記憶部２５に転送されたローダ２．００を起動して実行する（図１０（７）−２）。即ち、Ｆｌａｓｈ  ＲＯＭ１３のローダ２．００が起動され、ＲＡＭ１４にローダ２．００がコピーされた後、ＲＡＭ１４のローダ２．００が起動される。
【０１１９】
次に、プリンタ１１は、プログラム２．００の再取得を実施する。プリンタ通信部２０が、ホストコンピュータ１２からプログラム２．００を受信すると、該プログラム２．００は一時記憶部２５に記憶される。即ち、プログラム２．００が、ＲＡＭ１４に格納される（図１０（７）−３）。通信系エラーが発生した場合、プリンタ１１は、プログラム２．００の再取得を実施する。
【０１２０】
そして、書き換え部２９が、一時記憶部２５のプログラム２．００をコピーして、データ記憶部２３に書き込み、図１０（７）−４に示されるように、Ｆｌａｓｈ  ＲＯＭ１３にプログラム２．００が格納される。通信系以外のエラーが発生した場合、プリンタ１１は、図１０（７）−１からの処理を再度実施する。
【０１２１】
上記のように、Ｆｌａｓｈ  ＲＯＭ１３のデータ書き換え処理が行われ、Ｆｌａｓｈ  ＲＯＭ１３のローダ１．００及びプログラム１．００は、それぞれ、ローダ２．００及びプログラム２．００に改版される（図１０（８））。
【０１２２】
以上のように、本実施例のプリンタ１１は、通常運用で使用される各タスクをＲＡＭ１４内に展開することにより、Ｆｌａｓｈ  ＲＯＭ１３の書き換えが可能となるので、書き換え処理のために、専用プログラムをホストコンピュータ１２から受信する手間が不要となる。また、ホストコンピュータ１２から受信した書き換えデータを、Ｆｌａｓｈ  ＲＯＭ１３にそのまま書き込んで、プログラムの更新が可能となるので、ホストコンピュータ１２において、専用の書き換えデータを作成する手間が不要となる。更に、書き換え前のデータが、Ｆｌａｓｈ  ＲＯＭ１３内の別領域に転送して記憶されるので、エラー発生時におけるデータの消失を回避できる。したがって、Ｆｌａｓｈ  ＲＯＭ１３のデータを確実に書き換え可能となる。
【実施例２】
【０１２３】
図１１は、実施例２に係るプリンタシステムの要部機能構成を示すブロック図である。
本実施例のプリンタシステム７０は、図１１に示されるように、画像処理装置としてのプリンタ７１と、外部装置としてのホストコンピュータ１２とを含んで構成される。本実施例のプリンタ７１は、通常時ＩＰＴ記憶部７２及びエラー時ＩＰＴ記憶部７３が設けられる構成が、実施例１とは異なる。
なお、本実施例において、実施例１と同一の構成については同一の符号で示し、これらについての詳しい説明を省略する。
【０１２４】
プリンタ７１は、図１１に示されるように、プリンタ通信部２０、要求入力部２１、判定部２２、データ記憶部２３、バックアップ記憶部２４、一時記憶部２５、通常時ＩＰＴ記憶部７２、エラー時ＩＰＴ記憶部７３、エラー検知部７４、起動実行部７５、転送部２８、書き換え部２９、画像処理部３１、印刷部３２及びプリンタ制御部７６を備えている。
【０１２５】
通常時ＩＰＴ記憶部７２は、Ｆｌａｓｈ  ＲＯＭに設けられ、起動位置記憶部として、通常起動時の起動位置情報であるＩＰＴを、通常時ＩＰＴとして記憶する。本実施例では、通常時ＩＰＴ記憶部７２には、データ記憶部２３の先頭位置を示すアドレスデータが記憶される。
【０１２６】
エラー時ＩＰＴ記憶部７３は、Ｆｌａｓｈ  ＲＯＭに設けられ、起動位置記憶部として、エラー発生時の起動位置情報であるＩＰＴを、エラー時ＩＰＴとして記憶する。本実施例では、エラー時ＩＰＴ記憶部７３には、バックアップ記憶部２４の先頭位置を示すアドレスデータが記憶される。
【０１２７】
エラー検知部７４は、Ｆｌａｓｈ  ＲＯＭ内のデータ書き換え時におけるエラーの発生の有無を検知する。
【０１２８】
起動実行部７５は、プログラムを起動して実行する機能を有する。起動実行部７５は、通常起動時、通常時ＩＰＴ記憶部７２を参照して、プログラムの起動を行う。また、起動実行部７５は、エラー検知部７４によるエラー検知時、エラー時ＩＰＴ記憶部７３を参照して、プログラムの起動を行う。
【０１２９】
プリンタ制御部７６は、プリンタ７１の各部を制御する機能を有する。
【０１３０】
続いて、本実施例のプリンタ７１の具体的な構成について、説明する。
図１２は、実施例２に係るプリンタのシステム構成を示す図である。
【０１３１】
プリンタ７１は、図１２に示されるように、Ｆｌａｓｈ  ＲＯＭ７７、ＣＰＵ７８及びオペレーションパネル１６を含んで構成される。
【０１３２】
プリンタ７１には、更に、ＳＷ識別回路７９及びＨＷ発生回路８０が設けられる。
【０１３３】
ＳＷ識別回路７９は、オペレーションパネル１６において押下された各スイッチの組み合わせを判定する回路であり、判定部２２（図１１）は、このＳＷ識別回路７９を含んで構成される。
【０１３４】
ＨＷ発生回路８０は、ＳＷ識別回路７９からの入力信号に基づいて、プリンタ７１に擬似エラー状態を発生させて設定する回路である。エラー検知部７４（図１１）は、このＨＷ発生回路８０により擬似エラー状態が設定されると、エラーの発生を検知する。
【０１３５】
Ｆｌａｓｈ  ＲＯＭ７７には、記号Ａで示される通常時ＩＰＴ記憶部７２と、記号Ｂで示されるエラー時ＩＰＴ記憶部７３とが設けられる。通常時ＩＰＴ記憶部７２には、Ｆｌａｓｈ  ＲＯＭ７７内の通常時起動領域７７ａの先頭位置を示すアドレスデータが、通常時ＩＰＴとして記憶され、エラー時ＩＰＴ記憶部７３には、エラー時起動領域７７ｂの先頭位置を示すアドレスデータが、エラー時ＩＰＴとして記憶される。通常時起動領域７７ａは、データ記憶部２３（図１１）に含まれ、エラー時起動領域７７ｂは、バックアップ記憶部２４（図１１）に含まれる。
【０１３６】
ＣＰＵ７８は、図１２に示されるようにプログラムカウンタ８１を備えている。プログラムカウンタ８１は、処理すべきプログラムのアドレスを示すＩＰＴが設定されるカウンタであり、通常時ＩＰＴ記憶部７２及びエラー時ＩＰＴ記憶部７３の何れかに記憶されるＩＰＴが、このプログラムカウンタ８１に設定される。
【０１３７】
次に、本実施例のプリンタ７１の動作について、説明する。
【０１３８】
通常運用時におけるプリンタ７１の動作は、実施例１と同様であるので、説明を省略する。ここでは、Ｆｌａｓｈ  ＲＯＭ７７のデータ書き換え時におけるプリンタ７１の動作について、図１３に示すフローチャートに沿って説明する。
図１３は、本発明に係るプリンタの実施例２における選択起動動作を示すフローチャートである。
【０１３９】
プリンタ７１において、電源が投入される（ステップＳ４０１）と、Ｆｌａｓｈ  ＲＯＭ７７において、常駐タスクである初期化処理部が、Ｆｌａｓｈ  ＲＯＭ７７を初期化する（ステップＳ４０２）。
【０１４０】
また、ＳＷ識別回路７９が、電源投入時に押下されたスイッチの組み合わせを判定し、エラー時起動スイッチが押下されたか、或いは通常時起動スイッチが押下されたかの判定を行う（ステップＳ４０３）。
【０１４１】
エラー時起動スイッチが押下されたと判定される（ステップＳ４０３）と、ＳＷ識別回路７９は、ＨＷ発生回路８０へ信号を出力する。ＨＷ発生回路８０は、ＳＷ識別回路７９からの入力信号に基づいて、擬似エラー状態を発生させて設定する（ステップＳ４０４）。
【０１４２】
通常時起動スイッチが押下されたと判定される（ステップＳ４０３）と、ＳＷ識別回路７９は、ＨＷ発生回路８０への信号の出力を行わない。
【０１４３】
次に、エラー検知部７４が、擬似エラー状態の設定の有無に基づいて、エラーの発生の有無を検知し、エラー時起動であるか否かを判定する（ステップＳ４０５）。
【０１４４】
擬似エラー状態が設定されている場合、エラー時起動であると判定され（ステップＳ４０５）、ＣＰＵ７８のプログラムカウンタ８１には、エラー時ＩＰＴ記憶部７３に記憶されるエラー時ＩＰＴが設定される。即ち、起動実行部７５は、エラー時ＩＰＴ記憶部７３を参照して、バックアップ記憶部２４のエラー時起動領域７７ｂに記憶されているプログラムを選択して起動する（ステップＳ４０６）。そして、エラー起動時のデータ書き換え処理が実行される。
【０１４５】
擬似エラー状態が設定されていない場合、エラー時起動ではないと判定され（ステップＳ４０５）、ＣＰＵ７８のプログラムカウンタ８１には、通常時ＩＰＴ記憶部７２に記憶される通常時ＩＰＴが設定される。即ち、起動実行部７５は、通常時ＩＰＴ記憶部７２を参照して、データ記憶部２３の通常時起動領域７７ａに記憶されているプログラムを選択して起動する（ステップＳ４０７）。そして、通常起動時のデータ書き換え処理が実行される。
【０１４６】
以上のように、本実施例のプリンタ７１は、複数のＩＰＴ、即ち通常時ＩＰＴ及びエラー時ＩＰＴを保持できるので、書き換え処理中にエラーが発生した場合も、確実にリカバリして、プログラムを更新可能となる。
【産業上の利用可能性】
【０１４７】
上記した各実施例では、電子写真方式のデジタルＬＥＤプリンタを例に、説明を行ったが、本発明はこれに限定されない。例えば、レーザプリンタやインクジェットプリンタ、ドットマトリクスプリンタ、サーマルプリンタ、複合機プリンタ等にも適用可能である。
【０１４８】
また、上記した各実施例では、書き換え可能な不揮発性メモリとして、Ｆｌａｓｈ  ＲＯＭが採用されたが、本発明はこれに限定されない。例えば、ＥＥＰＲＯＭ等を採用することも可能である。
【０１４９】
また、上記した各実施例では、画像処理装置としてのプリンタと、外部装置としてのホストコンピュータとは、ローカルポートを介して接続されたが、本発明はこれに限定されない。例えば、ネットワーク接続や、無線接続等を採用することも可能である。
【図面の簡単な説明】
【０１５０】
【図１】実施例１に係るプリンタシステムの要部機能構成を示すブロック図である。
【図２】本発明に係るプリンタシステムの構成を具体的に示すブロック図である。
【図３】実施例１に係るプリンタシステムの通常運用時におけるシステム構成を示す図である。
【図４】実施例１に係るプリンタシステムのデータ書き換え時におけるシステム構成を示す図である。
【図５】本発明に係るプリンタの電源投入後動作を示すフローチャートである。
【図６】本発明に係るプリンタの通常運用動作を示すフローチャートである。
【図７】本発明に係るプリンタのデータ書き換え動作を示すフローチャートである。
【図８】Ｆｌａｓｈ  ＲＯＭ及びＲＡＭの書き換え状態遷移図（その１）である。
【図９】Ｆｌａｓｈ  ＲＯＭ及びＲＡＭの書き換え状態遷移図（その２）である。
【図１０】Ｆｌａｓｈ  ＲＯＭ及びＲＡＭの書き換え状態遷移図（その３）である。
【図１１】実施例２に係るプリンタシステムの要部機能構成を示すブロック図である。
【図１２】実施例２に係るプリンタのシステム構成を示す図である。
【図１３】本発明に係るプリンタの実施例２における選択起動動作を示すフローチャートである。
【符号の説明】
【０１５１】
１０、７０  プリンタシステム
１１、７１  プリンタ
１２  ホストコンピュータ
１３  Ｆｌａｓｈ  ＲＯＭ
１４  ＲＡＭ
１５  ＣＰＵ
１６  オペレーションパネル
１８  ホスト通信部
２０  プリンタ通信部
２１  要求入力部
２２  判定部
２３  データ記憶部
２４  バックアップ記憶部
２５  一時記憶部
２６  ＩＰＴ記憶部
２７、７５  起動実行部
２８  転送部
２９  書き換え部
３０  更新部
３１  画像処理部
３２  印刷部
３３、７６  プリンタ制御部
７２  通常時ＩＰＴ記憶部
７３  エラー時ＩＰＴ記憶部
７４  エラー検知部
【図１】
2010079713.tif 000003
【図２】
2010079713.tif 000004
【図３】
2010079713.tif 000005
【図４】
2010079713.tif 000006
【図５】
2010079713.tif 000007
【図６】
2010079713.tif 000008
【図７】
2010079713.tif 000009
【図８】
2010079713.tif 000010
【図９】
2010079713.tif 000011
【図１０】
2010079713.tif 000012
【図１１】
2010079713.tif 000013
【図１２】
2010079713.tif 000014
【図１３】
2010079713.tif 000015