JPH11212791A - データ書換装置 - Google Patents

データ書換装置

Info

Publication number
JPH11212791A
JPH11212791A JP1168398A JP1168398A JPH11212791A JP H11212791 A JPH11212791 A JP H11212791A JP 1168398 A JP1168398 A JP 1168398A JP 1168398 A JP1168398 A JP 1168398A JP H11212791 A JPH11212791 A JP H11212791A
Authority
JP
Japan
Prior art keywords
data
program
rewriting
area
loader
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
JP1168398A
Other languages
English (en)
Inventor
Fumihiro Minamizawa
文宏 南沢
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP1168398A priority Critical patent/JPH11212791A/ja
Priority to US09/227,898 priority patent/US6298421B1/en
Publication of JPH11212791A publication Critical patent/JPH11212791A/ja
Priority to US09/925,533 priority patent/US6694403B2/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 書換モードが設定されている場合にのみ外部
から送信されるデータに従って記憶装置のローダープロ
グラム格納領域の書換を許容する。 【解決手段】 ブートエリア書換許可モードフラグがO
Nにセットされている場合(S512:YES)、受信
装置を介して外部送信装置から受信したローダープログ
ラムデータに従ってブートローダーエリアが書き換えら
れる(S520〜S580)ように構成するとともに、
ブートエリア書換許可モードフラグがOFFである場合
(S512:NO、S514:NO)には、ブートロー
ダーエリアの書換を行うことなく受信データを読み捨て
る(S516)ように構成し、ブートエリア書換許可モ
ードフラグがONにセットされている場合にのみ、ロー
ダープログラムの書換を可能とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、電子機器の動作を
制御するプログラム等の制御データ、及び、制御データ
のロード動作を制御するローダープログラムデータが格
納されたフラッシュメモリ等の書換可能な不揮発性記憶
装置を備えたデータ書換装置に関し、特に、ローダープ
ログラムデータの書換を可能とする書換モードの設定を
可能とし、書換モードが設定されている場合にのみ外部
送信装置から送信されたローダープログラムデータに従
って記憶装置のローダープログラム格納領域を書き換え
るように構成したデータ書換装置に関するものである。
【0002】
【従来の技術】従来、例えば世界各国へ輸出される電子
機器においては、国毎に仕様を変えることが多い。ま
た、同じ国への輸出品であってもモデルの相違により仕
様を変更することも行われている。こうした多くの仕様
を有する電子機器に対して、その制御基板を、モデル・
国毎に専用のものとして生産する方法を採用すると、メ
ーカー側で用意すべき部品点数が増大する。
【0003】最近では、こうした制御基板を製造するに
当たり、フラッシュメモリをプログラム格納用のデバイ
スとして用いることで、汎用性のある制御基板を用いて
そこにダウンロードするプログラムのみを変更するとい
う方法が採用される様になってきている。より具体的に
は、フラッシュメモリに、国・モデル等の仕様の違いに
よらず共通なブートローダープログラム(ブートローダ
ー)をダウンロードしておき、このブートローダープロ
グラムを用いて、国・モデル毎に作成されたメインプロ
グラムを個々のフラッシュメモリにダウンロードする方
法が採用されつつある。
【0004】また、メインプログラムをフラッシュメモ
リにダウンロードして出荷した後に、メインプログラム
をアップデートする場合やブートローダーの書換を行う
必要が発生する場合もある。かかるメインプログラムの
アップデート方法、ブートローダーの書換方法として
は、例えば、最近におけるインターネットの普及によ
り、海外に対してもインターネットを通じて簡単にアッ
プデート用のプログラム、書換用のブートローダープロ
グラムを配信することができることから、今後は、メー
カーのホームページに国・モデルに応じた複数のアップ
デート用のプログラム、書換用のブートローダープログ
ラムへのリンクを設けておき、この複数のリンクの中か
ら、ユーザーが自分の持っている機器に対応するアップ
デート用のプログラム、書換用ブートローダープログラ
ムを自己のパーソナルコンピュータへダウンロードし、
これを電子機器へダウンロードするという方法が有力で
ある。
【0005】このとき、メインプログラムやブートロー
ダープログラムは、そのプログラムがいずれのプログラ
ムであるかに拘わらず、各プログラムデータに付属され
ているアドレスデータのみを参照して順次そのアドレス
データに基づいて、機械的にアップデートされたり書き
換えられるのが一般的である。
【0006】
【発明が解決しようとする課題】しかしながら、前記従
来におけるメインプログラムのアップデート方法、ブー
トローダープログラムの書換方法によれば、アドレスデ
ータに基づき単純に各プログラムのアップデートや書換
を行ってしまうので、例えば、アドレスデータに誤りの
存在するブートローダープログラムデータを受信した場
合には、ブートローダープログラムが誤って書き換えら
れこととなる。
【0007】かかる場合、ブートローダープログラム
は、メインプログラムのロード動作を制御する重要な作
用を行うことから、前記のように誤って書き換えられた
ブートローダープログラムによっては最早電子機器を立
ち上げることができなくなってしまう。
【0008】これを防止するには、ハードウェア上の対
策、例えば、記憶装置のデータ入出力ピン(I/Oピ
ン)に対して所定の設定を行う方法が存在するが、かか
る対策方法は煩雑である。
【0009】本発明は前記従来の問題点を解消するため
になされたものであり、メインプログラムのロード動作
を制御するローダープログラムデータの書換を可能とす
る書換モードの設定を可能とし、書換モードが設定され
ている場合にのみ外部送信装置から送信されたローダー
プログラムデータに従って記憶装置のローダープログラ
ム格納領域の書換を許容することにより、煩雑なハード
ウェア上の対策を施すことなく、過誤によりブートロー
ダープログラムを書き換えてしまうことを確実に防止可
能なデータ書換装置を提供することを目的とする。
【0010】
【課題を解決するための手段】前記目的を達成するため
本発明に係るデータ書換装置は、電子機器の動作を制御
するプログラム等の制御データを格納する制御データ格
納領域と、制御データの初期ロード時やアップデート時
に制御データ格納領域への制御データのロード動作を制
御するローダープログラムデータを格納するローダープ
ログラム格納領域とが設けられた書換可能な不揮発性の
記憶装置を有するデータ書換装置において、外部送信装
置から送信された前記制御データ及びローダープログラ
ムデータを受信する受信手段と、前記ローダープログラ
ムデータの書換を可能とする書換モードを設定するモー
ド設定手段と、前記モード設定手段を介して書換モード
が設定されている場合、前記受信手段により受信された
ローダープログラムデータに従ってローダープログラム
格納領域を書き換える書換手段とを備えたことを特徴と
する。
【0011】前記本発明のデータ書換装置では、モード
設定手段を介してローダープログラムデータの書換を可
能とする書換モードが設定されている場合、受信手段を
介して外部送信装置から受信したローダープログラムデ
ータに従ってローダープログラム格納領域が書き換えら
れる。このとき、書換モードが設定されていない場合に
は、ローダープログラム格納領域が書き換えられること
はない。
【0012】従って、モード設定手段を介して書き換え
モードが設定されている場合にのみ、ローダープログラ
ムの書換が可能となり、これより煩雑なハードウェア上
の対策を施すことなく、過誤によりブートローダープロ
グラムを書き換えてしまうことを確実に防止可能とな
る。
【0013】ここに、前記制御データ及びローダープロ
グラムデータには、アドレスデータが付属されており、
また、前記モード設定手段により書換モードが設定され
ていない場合に、前記アドレスデータに基づき受信手段
を介して受信されたデータが制御データであるかどうか
を判断する判断手段を有し、前記受信手段を介して受信
されたデータが判断手段により制御データであると判断
された場合、前記書換手段は、受信された制御データに
従って前記制御データ格納領域を書き換えるように構成
することが望ましい。これにより、制御データのアップ
デートが行われる。
【0014】また、前記判断手段により受信手段を介し
て受信されたデータが制御データでないと判断された場
合、その受信されたデータは読み捨てられるように構成
することが望ましい。かかる場合、判断手段による判断
結果に基づき、受信されたデータはローダープログラム
データであり、このローダープログラムデータによって
ローダープログラム格納領域を書き換えてしまうと、ア
ドレスデータが誤っていた場合にはローダープログラム
データを誤って書き換えてしまうこととなるので、受信
されたデータを読み捨てる処理が行われるものである。
【0015】
【発明の実施の形態】以下、本発明に係るデータ格納装
置を具体化した一実施形態について、図面を参照しつつ
詳細に説明する。この実施形態は、ファクシミリ機能、
プリンタ機能、複写機能等を備えたマルチ・ファンクシ
ョンデバイスについて具体化されており、かかるマルチ
・ファンクションデバイス10は、図1に示す様に、C
PU11、フラッシュメモリ12、RAM13、EEP
ROM14、ブザーユニット15、パラレルI/Fユニ
ット16、符号・復号器17、プリンタユニット18、
モデム19、スキャナユニット20、ネットワークコン
トロールユニット(NCU)21及び操作パネル22を
備える。
【0016】このマルチ・ファンクションデバイス10
は、操作パネル22による機能選択の結果に応じて、フ
ラッシュメモリ12に格納されたメインプログラムをC
PU11が実行することにより、ファクシミリとしての
機能の他に、プリンタ、複写機、スキャナ等としても機
能することができるものである。
【0017】フラッシュメモリ12は、図2に示す様
に、ブートローダーエリア30と、メインプログラムエ
リア40とから構成されている。ブートローダーエリア
30には、ブートローダープログラムを格納するブート
ローダープログラム格納領域31の他に、ブートローダ
ープログラムの作成時期を表す「作成時期データ」を格
納するためのブートローダー作成時期格納領域32と、
ブートローダーエリアについての「チェックサムデー
タ」を格納するためのブートローダーチェックサム格納
領域33が設定されている。また、メインプログラムエ
リア40には、メインプログラムを格納するメインプロ
グラム格納領域41の他に、「モデル・国識別用パスワ
ード」を格納するパスワード格納領域42と、メインプ
ログラムのロード完了を示す「ロード完了マーク」を格
納する完了マーク格納領域43と、メインプログラムの
作成時期を表す「作成時期データ」を格納するためのメ
インプログラム作成時期格納領域44と、メインプログ
ラムエリア40についての「チェックサムデータ」を格
納するためのメインプログラムチェックサム格納領域4
5とが設定されている。
【0018】EEPROM14は、ユーザーのパネル操
作によって設定可能なワンタッチダイヤル等の情報を格
納するためのものである。また、ブザーユニット15
は、プログラムのダウンロード完了時やエラー発生時等
の各場面に対応して、音の高低、長さを適宜組み合わせ
ることにより、異なる態様で報知音をスピーカ23から
出力するためのものである。パラレルI/Fユニット1
6は、パラレルポート24を介してパーソナルコンピュ
ータとの間でデータのやり取りを行うために設けられて
いる。メインプログラムは、後述する様に、このパラレ
ルI/Fユニット16を介してパーソナルコンピュータ
からダウンロードされる。また、本実施の形態のマルチ
・ファンクションデバイス10は、このパラレルI/F
ユニット16を介してパーソナルコンピュータから印字
データを受信した場合はプリンタとして機能する。
【0019】符号・復号器17は、ファクシミリとして
機能する際に、スキャナユニット20にて原稿から読み
取ったデータをファクシミリ送信用のデータに符号化す
る処理と、外部から受信したファクシミリデータをプリ
ンタユニット18で印字出力可能な印字データに復号化
する処理とを行うためのものである。この符号・復号器
17によって符号化されたファクシミリデータは、モデ
ム19及びNCU21を介して、一般電話回線25で送
信される。また、モデム19及びNCU21を介して、
一般電話回線25から受信したファクシミリデータは、
符号・復号器17で復号化され、プリンタユニット18
に送られて記録用紙に印字される。
【0020】操作パネル22には、電話番号を入力する
ためのテンキーの他、スタートキー、ストップキー、機
能選択キー等が設けられている。この操作パネル22に
よって機能を選択することにより、本装置10を、ファ
クシミリ、プリンタ、複写機等として機能させることが
できる様になっている。また、テンキー等による入力値
や各種メッセージを表示するための液晶ディスプレイも
この操作パネル22の中に備えられている。また、操作
パネル22上の各種キーを適宜組み合わせて押下操作を
行うことにより、後述するように、ブートローダープロ
グラム格納領域31の書換を許容する書換モードを設
定、変更することが可能となる。
【0021】次に、このように構成される本装置10の
製造方法を含め、メインプログラムをダウンロードする
手順等について説明する。
【0022】まず、本装置10に備えられるフラッシュ
メモリ12は、図3に示す様に、ワークステーションW
Sにフラッシュメモリープログラマー50を接続し、ブ
ートローダープログラムを格納したマスタチップ51を
製造する。続いて、このマスタチップ51をフラッシュ
メモリプログラマー52にセットして、コピーチップ5
3,53,…を製造する。そして、このコピーチップ5
3を、本装置10用の基板54に実装し、これを本装置
10に組み付ける。
【0023】次に、ワークステーションWSで作成した
メインプログラムを、データベース56にアップロード
する。そして、このデータベース56に対してパーソナ
ルコンピュータPCを接続し、メインプログラムをパー
ソナルコンピュータPCにダウンロードする。こうして
パーソナルコンピュータPCにメインプログラムをダウ
ンロードしたら、このPCと本装置10とをプリンタケ
ーブル57で接続し、装置10の電源を投入する。する
と、後述する様に、ブートローダープログラムが起動さ
れ、メインプログラムの初期ロードが実行される。
【0024】また、こうして製造された装置10に対し
て、ユーザーに供給した後のプログラムのアップデート
に当たっても、図4に示す様に、パーソナルコンピュー
タPCを使用することができる。メーカーは、アップデ
ート用プログラムの提供時期、方法等について、自己の
ホームページに情報を表示する。この表示を見たユーザ
ーは、インターネット経由で、アップデート用プログラ
ムを自己のパーソナルコンピュータPC内にダウンロー
ドする。そして、このパーソナルコンピュータPCと装
置10とをプリンタケーブル57で接続し、ダウンロー
ドを実行する。あるいは、他の方法として、メーカーが
フロッピーディスクあるいはCDROM等の可搬式記憶
媒体58にアップデート用プログラムを格納し、これを
各ユーザーに供給する。各ユーザーは、この記憶媒体5
8を自己のパーソナルコンピュータPCにセットし、後
は、インターネット経由の場合と同様に装置10に対し
てプリンタケーブル57を介してアップデート用プログ
ラムのダウンロードを実行する。
【0025】なお、このマルチファンクション・デバイ
ス10は、複数のモデルを有し、メインプログラムは各
モデル毎に異なるものである。また、各モデルについ
て、さらに、仕向国別にメインプログラムが異なるもの
として作成されている。しかしながら、これらメインプ
ログラムは、いずれも、上述のブートローダープログラ
ムを使ってダウンロードすることが可能である。この結
果、本実施形態では、製品に組み付ける基板54に実装
されるコピーチップ53は全て共通のものを使用する。
【0026】ここで、ワークステーションWSで作成さ
れるメインプログラムは、図5に示す様に、データの先
頭から順番に、PJLコマンド、固定文字列、モデル・
国識別用パスワード、開始レコード、データレコード、
最終レコードによって構成されている。
【0027】PJLコマンドは、このコマンドに続くデ
ータが印字データではなくプログラムであることをCP
U11に認識させるためのコマンドである。続く固定文
字列は、本装置10用のプログラムであることを識別さ
せるためのデータである。
【0028】さらに、その後に続くモデル・国識別用パ
スワードは、データレコードとして格納されているプロ
グラムが、本装置10におけるどのモデルの、どの国用
のものであるかを識別するためのパスワードである。開
始レコードと最終レコードは、データレコード領域の開
始と終了とを識別するためのものである。
【0029】データレコードは、属性フィールド、アド
レスフィールド、データフィールド、チェックサムフィ
ールドから構成されている。属性フィールドには、デー
タレコードであることを示すデータとデータフィールド
内のデータ数を判別するためのデータとが記憶される。
アドレスフィールドには、データフィールド内のデータ
のフラッシュメモリ上での格納アドレスに関するデータ
が記憶されている。チェックサムフィールドには、属性
フィールド、アドレスフィールド及びデータフィールド
のデータを加算した合計の値を示すデータが記憶されて
いる。
【0030】そして、データフィールドには、プログラ
ム、モデル・国識別用パスワード、メインプログラムロ
ード完了マーク、メインプログラム作成時期データ、メ
インプログラムエリアのチェックサムデータといったも
のが記憶されている。これらの並び方は、開始レコード
側から最終レコード側にかけて、プログラム、モデル・
国識別用パスワード、メインプログラムロード完了マー
ク、メインプログラム作成時期データ、メインプログラ
ムエリアのチェックサムデータの順となっている。
【0031】次に、メインプログラムの初期ロードを含
む、本装置10の制御処理の内容について図6〜図12
のフローチャートを用いて説明する。本装置10に電源
が投入されると、図6に示す処理が開始され、まず、I
/Oポートの初期化が実行される(S10)。次に、フ
ラッシュメモリ12のブートローダーエリア30につい
てサムチェックを行う(S20)。そして、ブートロー
ダーエリア30の内、チェックサムデータ格納領域33
を除くエリアの全データを加算した合計とチェックサム
とが一致している場合に正常と判定し(S30:YE
S)、続いてRAM13がデバイスとして正常に動作し
得るか否かを検査する(S40)。このRAM13の検
査も正常であるとき(S50:YES)、後述するメイ
ンプログラムエリアチェック処理が実行される(S10
0)。
【0032】尚、ブートローダーエリア30のサムチェ
ック結果が異常であるとき(S30:NO)には、ブー
トエリア書換許可モードフラグをONにセットした(S
35)後、後述のダウンロード処理に移行する。
【0033】そして、メインプログラムエリアチェック
処理の結果が正常であるとき(S60:YES)、後述
のメインプログラム実行ルーチンが起動される。一方、
メインプログラムエリア40に対するチェックの結果が
異常であるときは(S60:NO)、後述のダウンロー
ド処理へと移行する(S200)。なお、RAM13の
検査結果が異常であるときは(S50:NO)、装置異
常処理ルーチンが起動される。この装置異常処理ルーチ
ンは、デバイスの交換等を指示するもので、ブザーの鳴
動やエラーメッセージのディスプレイ表示あるいは印字
出力等、所定の処理が実行される。
【0034】メインプログラムエリアに対するチェック
処理は、図7に示す手順で実行される。まず、フラッシ
ュメモリ12内のロード完了マーク格納領域43にロー
ド完了マークが格納されているか否かを検査する(S1
10)。この検査の結果、ロード完了マークが正常に格
納されているときは(S120:YES)、メインプロ
グラムエリア40に対するサムチェックを実行する(S
130)。そして、メインプログラムエリア40の内、
チェックサムデータ格納領域45を除くエリアの全デー
タを加算した合計とチェックサム格納領域45に格納さ
れているチェックサムとが一致しているときは(S14
0:YES)、検査結果を正常に設定して本ルーチンを
抜ける(S150)。一方、ロード完了マークが正しく
格納されていないと判定されたとき(S120:N
O)、及びメインプログラムエリア40に対するサムチ
ェックの結果が異常であると判定されたときは(S14
0:NO)、検査結果を異常に設定して本ルーチンを抜
ける(S160)。上述のS60の処理では、こうして
S150,S160で設定された検査結果に基づき、メ
インプログラム実行ルーチン及びダウンロード処理のい
ずれのルーチンを起動すべきかが判定されることにな
る。
【0035】ダウンロード処理ルーチンが起動された場
合、図8に示す様に、まず、初期ロードとしてダウンロ
ードを実行すべき状態であるのか、アップデートとして
ダウンロードを実行すべき状態であるのかが判定される
(S210)。S60でNOと判定されたときは、初期
ロードに失敗している状態であることから、このS21
0の判定の後、S220へと処理が進む。
【0036】S210で初期ロードと判定されたとき
は、まず、初期ロードであることを特定するために動作
モードを「0」に設定すると共に、フラッシュメモリ1
2のセクタがいずれも消去されていないことを判別させ
るための消去フラグを「0」に設定する(S220)。
その後、データ待ちカウンタを「0」に設定すると共に
(S230)、パスワード照合に関する条件を「照合し
ない」に設定する(S240)。
【0037】そして、まず、フラッシュメモリ12に対
して正常に読み書き動作を実行できるか否かのデバイス
チェックを実行する(S250)。このデバイスチェッ
クの結果が正常であるときは(S260:YES)、後
述のダウンロード実行処理ルーチンを起動する(S40
0)。そして、ダウンロード実行処理ルーチンが正常に
終了した場合は(S270:YES)、先に説明したメ
インプログラムエリア40に対するチェック処理を実行
し(S100)、その結果が正常であるときは(S28
0:YES)、電源投入・リセット処理ルーチンへ戻っ
て、メインプログラム実行ルーチンを起動する。これに
対して、S260におけるデバイスチェックの結果が異
常である場合(S260:NO)には、デバイス不良で
あることをオペーレータに報知するべく、ブザーユニッ
ト15を介してスピーカ23を鳴動させる(S34
0)。このとき、スピーカ23から発せられる音として
は、音の高低及び長さを適当に組み合わせた音が発音さ
れる。いずれにしても、デバイス不良が発生したことを
オペレータに知らせることができればよい。続いて、パ
ラレルポート24の受信準備が行われ(S350)、デ
ータ待ちカウンタが「4」に設定される(S360)。
そして、後述するように、パラレルポート24を介して
データ受信を行う(S800)。かかるデータ受信処理
は、デバイス不良の場合(S260:NO)に行われる
ものであるから、受信されたデータが途絶えるまで読み
捨てられる。
【0038】また、前記S270において、ダウンロー
ド実行処理ルーチンが正常終了しなかったとき(S27
0:NO)、及びメインプログラムエリア40に対する
チェック処理の結果が異常であるときは(S280:N
O)、ダウンロード異常を報知するためにブザーユニッ
ト15によりスピーカ23を鳴動させる(S290)。
このとき、スピーカ23から発生される音としては、前
記と同様、音の高低及び長さを適当に組み合わせた音が
発音され、ダウンロード異常が発生したことをオペーレ
ータに報知される。そして、設定されている動作モード
に応じてS220またはS310へとジャンプする。
【0039】ここに、前記S210における判断がアッ
プデートである場合に実行されるS310〜S330の
処理は、初期ロードではなく、アップデートとしてメイ
ンプログラムをダウンロードする場合に実行されるステ
ップである。アップデートとしてメインプログラムのダ
ウンロードを実行するときは、初期ロードと区別するた
めに動作モードを「1」に設定すると共に、フラッシュ
メモリ12のセクタがいずれも消去されていないことを
判別させるための消去フラグを「0」に設定する(S3
10)。その後、データ待ちカウンタを「0」に設定す
ると共に(S320)、パスワード照合に関する条件を
「照合する」に設定する(S330)。
【0040】次に、ダウンロード実行ルーチンについて
図9のフローチャートに従って説明する。このルーチン
では、まず、パラレルポート24からプログラムデータ
を受信可能な状態に準備する(S410)。続いて、ダ
ウンロード開始を報知するためにスピーカ23を鳴動さ
せ(S420)、固定文字列を受信するのを待つ(S4
30)。ここに、スピーカ23は、前記と同様、音の高
低及び長さを適当に組み合わせた音で鳴動され、ダウン
ロードが開始されたことをオペレータに報知される。固
定文字列を受信したら(S430:YES)、パスワー
ド照合を実行するモードが設定されているか否かを判定
する(S440)。前述の様に、パスワード照合のモー
ドとしては、初期ロードの場合には「照合しない」が設
定され(S240)、アップデートの場合には「照合す
る」が設定されている(S330)。
【0041】従って、アップデートの場合に限ってモデ
ル・国識別用パスワードの受信が実行され、メインプロ
グラムエリア40の該当領域42に格納されているパス
ワードと照合される(S450)。そして、照合の結
果、パスワードが一致していないときは(S460:N
O)、アップデート用として選択されたメインプログラ
ムの種類が間違っていることをスピーカ23を介して報
知し(S470)、受信したデータを読み捨てる処理を
実行する(S480)。この時のスピーカ23の鳴動
は、音の高低及び長さを適当に組み合わせた音で行わ
れ、パスワードが一致していないことをオペレータに報
知される。
【0042】一方、照合の結果、パスワードが一致する
ときは(S460:YES)、ロード完了マークの格納
されている領域43に、ロード完了マークとは異なる内
容の文字列を書き込むことにより、当該領域43のデー
タを破壊する処理を実行する(S490)。そして、開
始レコードを受信するのを待った後(S500)、1セ
クタ分のデータを受信し(S510)、ブートエリア書
換許可モードフラグがONにセットされているかどうか
に基づき、ブートエリア書換許可モード中であるかどう
か判断する(S512)。ブートエリア書換許可モード
フラグがOFFであり、ブートエリア書換許可モード中
でない場合(S512:NO)には、受信データのアド
レスがブートエリア外のアドレスを有しているかどうか
判断する(S514)。そして、受信データのアドレス
がブートエリア外のアドレスを有している場合(S51
4:NO)には、受信データの読み捨てが行われる(S
516)。この後、S560に移行する。
【0043】一方、S512において、ブートエリア書
換モードフラグがONであり、ブートエリア書換許可モ
ード中である場合(S512:YES)、及び、受信デ
ータのアドレスがブートエリア外のアドレスである場合
(S514:YES)には、S520に移行する。S5
20では、この受信データを書き込むべき1セクタの領
域内のデータを消去し、消去フラグを「1」に設定する
と共に前記と同様にしてスピーカ23を鳴動させる(S
530)。そして、S510で受信した1セクタ分のデ
ータを先ほど消去を行ったセクタに書き込み(S54
0)、書き込みが完了したことを報知するべく前記と同
様にしてスピーカ23を鳴動させる(S550)。そし
て、最終レコードを受信するまでは(S560:N
O)、上記S510以下の処理を繰り返し実行する。
【0044】こうしてS510〜S560の処理を繰り
返し、最終レコードを受信したときは(S560:YE
S)、ブートローダーエリア30やメインプログラムエ
リア40の中の未消去のセクタを1セクタ消去する毎に
スピーカ23を鳴動させつつ全てのセクタを消去する
(S570)。そして、チェックサムが正しいかどうか
判断し(S572)、チェックサムが正しくない場合
(S572:NO)にはブートエリア書換許可モードフ
ラグをONにセットした(S574)後処理をリセット
する一方、チェックサムが正しい場合(S572:YE
S)には、ダウンロード完了を報知するためスピーカ2
3を前記と同様に鳴動させて本ルーチンを抜ける(S5
80)。このときは正常終了となる。よって、S270
はYESと判定され、メインプログラムエリアチェック
処理を実行し(S100)、データが正しくダウンロー
ドされたか否かを判定する処理に進む。
【0045】次に、前記S800にて行われるパラレル
ポート24からデータを受信する処理について、図10
のフローチャートに基づき説明する。この受信処理にお
いて、まず、データ待ちタイマを所定時間、例えば12
秒にセットし(S810)、受信データが存在するかど
うか判断される(S820)。受信データが有る場合
(S820:YES)、パラレルポート24から受信デ
ータを取り込んだ(S830)後、処理を終了する。ま
た、S820において受信データが存在しないと判断さ
れた場合(S820:NO)には、前記S810にてセ
ットしたデータ待ちタイマがタイムアップしたかどうか
判断され(S840)、データ待ちタイマがタイムアッ
プするまでは(S840:NO)は受信データを待つ。
【0046】データ待ちタイマがタイムアップした場合
(S840:YES)、データ待ちカウンタを1だけイ
ンクリメントし(S850)、データ待ちカウンタの値
が「5」になったかどうか判断される(S860)。デ
ータ待ちカウンタの値が「5」に等しくない場合(S8
60:≠5)には、スピーカ23が前記と同様にして鳴
動された(S870)後処理を終了する。一方、データ
待ちカウンタの値が「5」に等しくなった場合(S86
0:=5)には、データ待ち回数がオーバーしたものと
して、消去フラグの設定値を判別する(S880)。そ
して、フラッシュメモリ12のいすれかのセクタが消去
されたことに基づき、消去フラグに「1」が設定されて
いる場合(S880:1)には、ダウンロード実行処理
を異常終了として、再度S220に戻る。これはダウン
ロード途中での異常終了であることから、特に、アップ
デートの場合にはメインプログラムの一部が破壊された
状態にあり、電源投入直後の状態に復帰させると装置1
0が正常に動作できなくなってしまうおそれがあること
から、速やかにメインプログラムをダウンロードすべ
く、ダウンロード処理ルーチンを再度スタートさせるた
めである。また、フラッシュメモリ12のいずれのセク
タも消去されていないことに基づき、消去フラグに
「0」が設定されている場合(S880:0)には、電
源投入・リセットルーチンへ戻る。セクタを未だ消去し
ていない場合は、ダウンロードを全く開始していないの
と同じであるので最初から実行し直せばよいからであ
る。
【0047】次に、メインプログラム実行ルーチンにつ
いて、図11のフローチャートに基づいて説明する。こ
れルーチンでは、ブートエリア書換許可モードフラグを
OFFにし(S590)、操作パネル22上のキーから
キー入力があるまで待機する(S592)。キー入力が
あれば(S592:YES)、そのキー入力がブートエ
リア書換モードの変更を要求するキー入力であるかどう
か判断する(S594)。キー入力がブートエリア書換
モード変更を要求している場合(S594:YES)に
は、ブートエリア書換許可モードフラグの変更を行う
(S596)。例えば、フラグがONである場合はOF
Fに、逆に、フラグがOFFであればONに変更する。
【0048】一方、キー入力がブートエリア書換モード
の変更を要求していない場合(S594:NO)には、
フラッシュ12を書き換えるための書換モードキーから
のキー入力であるかどうか判断する(S598)。フラ
ッシュメモリ書換モードキーからのキー入力である場合
(S598:YES)には、前記ダウンロード処理が行
われる。一方、フラッシュメモリ書換モードキーからの
キー入力でない場合(S598:NO)には、他の処理
を行う。
【0049】即ち、外部からPJLコマンドを受信した
か否かを判定し(S610)、PJLコマンドを受信し
た場合に(S610:YES)、前述のダウンロード処
理ルーチンを起動する(S200)。これが、アップデ
ートの状態であり、ダウンロード処理ルーチンのS21
0でアップデートと判定され、S310以下の処理が実
行されることになる。
【0050】一方、印字データを受信したときは(S6
20:YES)、受信した印字データに基づいてプリン
タユニット18を制御して印字処理を実行する(S67
0)。また、NCU21及びモデム19を介してファク
シミリデータを受信した場合は(S630:YES)、
符号・復号器17に当該ファクシミリデータを入力して
復号化を行った後にプリンタユニット18を制御して受
信した情報を記録用紙に印字して出力するファクシミリ
受信処理を実行する(S680)。また、操作パネル2
2においてファクシミリ機能が選択されているときは
(S640:YES)、スキャナユニット20に投入さ
れた原稿からデータを読み取り、これを符号・復号器1
7に入力して符号化し、さらに、モデム19及びNCU
21を制御してファクシミリデータを送信する処理を実
行する(S690)。また、その他の機能、例えば、複
写機能等が選択されているときは(S650)、当該選
択された機能に従って、スキャナユニット20やプリン
タユニット18等を制御し、選択された機能に従った処
理を実行する(S700)。以上の処理は、電源がOF
Fにされるかリセットが行われるまで続行される(S6
60)。
【0051】以上詳細に説明した通り、本実施形態に係
るマルチファンクションデバイス10においては、ブー
トエリア書換許可モードフラグがONにセットされてい
る場合(S512:YES)、受信装置を介して外部送
信装置から受信したローダープログラムデータに従って
ブートローダーエリア30が書き換えられる(S520
〜S580)ように構成するとともに、ブートエリア書
換許可モードフラグがOFFである場合(S512:N
O、S514:NO)には、ブートローダーエリア30
の書換を行うことなく受信データを読み捨てる(S51
6)ように構成したので、ブートエリア書換許可モード
フラグがONにセットされている場合にのみ、ローダー
プログラムの書換が可能となり、これより煩雑なハード
ウェア上の対策を施すことなく、過誤によりブートロー
ダープログラムを書き換えてしまうことを確実に防止す
ることができる。
【0052】また、ブートエリア書換許可モードフラグ
がOFFである場合(S512:NO)に、受信データ
のアドレスに基づき、そのアドレスがブートエリア外の
アドレスであると判断された場合(S514:YES)
には、受信データがローダープログラム以外の他のプロ
グラム等のデータであることから、かかるデータの書換
が行われる(S520〜S580)。これにより、ロー
ダープログラム以外の他のプログラム等のデータのアッ
プデートを行うことができる。
【0053】尚、本実施の形態は、本発明を限定するも
のではなく、本発明の要旨を逸脱しない範囲内で種々の
改良、変形が可能であることは勿論である。例えば、仕
様特定データとしてのモデル・国識別用パスワードを、
プログラムデータの直前に付随する参照データ及びプロ
グラムデータの直後に含ませた書き込み用データの両方
としてダウンロードに当たって受信するデータを構成し
たが、参照用データを付随させることなく書き込み用デ
ータのみをデータ中に含ませる構成にしておいても構わ
ない。但し、プログラムデータを一旦読み込んでからパ
スワード照合を行う場合には、読み込んだプログラムデ
ータをバッファ等に一旦保持しておく必要が生じる。従
って、プログラムデータを読み込む前にパスワード照合
を可能にすることでこの様なバッファを特に設ける必要
をなくしている点で、上述の実施の形態の方が実用上有
利であるといえる。即ち、仕様特定データを参照データ
としてアップデート用の制御データの前に付随させてお
く方法は、無駄な記憶容量を必要としない点で実用上有
利なものということができる。
【0054】
【発明の効果】以上説明した通り本発明は、メインプロ
グラムのロード動作を制御するローダープログラムデー
タの書換を可能とする書換モードの設定を可能とし、書
換モードが設定されている場合にのみ外部送信装置から
送信されたローダープログラムデータに従って記憶装置
のローダープログラム格納領域の書換を許容することに
より、煩雑なハードウェア上の対策を施すことなく、過
誤によりブートローダープログラムを書き換えてしまう
ことを確実に防止可能なデータ書換装置を提供すること
ができる。
【図面の簡単な説明】
【図1】本実施の形態に係るマルチファンクション・デ
バイスの構成を示すブロック図である。
【図2】フラッシュメモリの構造を示す模式図である。
【図3】製品製造時のプログラムのダウンロードの手法
を示す模式図である。
【図4】アップデート時のプログラムのダウンロードの
手法を示す模式図である。
【図5】メインプログラムのデータ構造を示す模式図で
ある。
【図6】マルチファンクションデバイスにて実行される
制御処理の手順を示すフローチャートである。
【図7】マルチファンクションデバイスにて実行される
制御処理の手順を示すフローチャートである。
【図8】マルチファンクションデバイスにて実行される
制御処理の手順を示すフローチャートである。
【図9】マルチファンクションデバイスにて実行される
制御処理の手順を示すフローチャートである。
【図10】マルチファンクションデバイスにて実行され
る制御処理の手順を示すフローチャートである。
【図11】マルチファンクションデバイスにて実行され
る制御処理の手順を示すフローチャートである。
【図12】マルチファンクションデバイスにて実行され
る制御処理の手順を示すフローチャートである。
【符号の説明】
10 マルチ・ファンクションデバイス 11 CPU 12 フラッシュメモリ 13 RAM 14 EEPROM 15 ブザーユニット 16 パラレルI/Fユニット 17 符号・復号器 18 プリンタユニット 19 モデム 20 スキャナユニット 21 NCU 22 操作パネル 23 スピーカ 24 パラレルポート 25 一般電話回線 30 ブートローダーエリア 31 ブートローダープログラム格納領域 32 ブートローダー作成時期格納領域 33 ブートローダーチェックサム格納領域 40 メインプログラムエリア 41 メインプログラム格納領域 42 パスワード格納領域 43 ロード完了マーク格納領域 44 メインプログラム作成時期格納領域 45 メインプログラムチェックサム格納領域 51 マスタチップ 52 フラッシュメモリプログラマー 53 コピーチップ 54 基板 56 プログラム記憶装置 57 プリンタケーブル 58 可搬式記憶媒体 PC パーソナルコンピュータ WS ワークステーション

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 電子機器の動作を制御するプログラム等
    の制御データを格納する制御データ格納領域と、制御デ
    ータの初期ロード時やアップデート時に制御データ格納
    領域への制御データのロード動作を制御するローダープ
    ログラムデータを格納するローダープログラム格納領域
    とが設けられた書換可能な不揮発性の記憶装置を有する
    データ書換装置において、 外部送信装置から送信された前記制御データ及びローダ
    ープログラムデータを受信する受信手段と、 前記ローダープログラムデータの書換を可能とする書換
    モードを設定するモード設定手段と、 前記モード設定手段を介して書換モードが設定されてい
    る場合、前記受信手段により受信されたローダープログ
    ラムデータに従ってローダープログラム格納領域を書き
    換える書換手段とを備えたことを特徴とするデータ書換
    装置。
  2. 【請求項2】 前記制御データ及びローダープログラム
    データは、アドレスデータが付属されていることを特徴
    とする請求項1記載のデータ書換装置。
  3. 【請求項3】 前記モード設定手段により書換モードが
    設定されていない場合に、前記アドレスデータに基づき
    受信手段を介して受信されたデータが制御データである
    かどうかを判断する判断手段を有し、 前記受信手段を介して受信されたデータが判断手段によ
    り制御データであると判断された場合、前記書換手段
    は、受信された制御データに従って前記制御データ格納
    領域を書き換えることを特徴とする請求項2記載のデー
    タ書換装置。
  4. 【請求項4】 前記判断手段により受信手段を介して受
    信されたデータが制御データでないと判断された場合、
    その受信されたデータは読み捨てられることを特徴とす
    る請求項3記載のデータ書換装置。
JP1168398A 1998-01-12 1998-01-23 データ書換装置 Pending JPH11212791A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP1168398A JPH11212791A (ja) 1998-01-23 1998-01-23 データ書換装置
US09/227,898 US6298421B1 (en) 1998-01-12 1999-01-11 Data storage device
US09/925,533 US6694403B2 (en) 1998-01-12 2001-08-10 Data storage device having download notification means

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1168398A JPH11212791A (ja) 1998-01-23 1998-01-23 データ書換装置

Publications (1)

Publication Number Publication Date
JPH11212791A true JPH11212791A (ja) 1999-08-06

Family

ID=11784819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1168398A Pending JPH11212791A (ja) 1998-01-12 1998-01-23 データ書換装置

Country Status (1)

Country Link
JP (1) JPH11212791A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109204A (ja) * 2000-09-29 2002-04-12 Tiger Vacuum Bottle Co Ltd インターネットを用いた米と炊飯器との提携販売方法
JP2002373083A (ja) * 2001-06-14 2002-12-26 Pioneer Electronic Corp 情報再生装置、再生プログラムの修正方法及び情報記録媒体
US7383431B2 (en) 2002-06-11 2008-06-03 Seiko Epson Corporation Control system and method for rewriting data in a flash memory and a data storage medium in which a program is stored for rewriting data in a flash memory
JP2008148851A (ja) * 2006-12-15 2008-07-03 Le Tekku:Kk 遊技機制御用チップ及びそのromライタ

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002109204A (ja) * 2000-09-29 2002-04-12 Tiger Vacuum Bottle Co Ltd インターネットを用いた米と炊飯器との提携販売方法
JP2002373083A (ja) * 2001-06-14 2002-12-26 Pioneer Electronic Corp 情報再生装置、再生プログラムの修正方法及び情報記録媒体
US7383431B2 (en) 2002-06-11 2008-06-03 Seiko Epson Corporation Control system and method for rewriting data in a flash memory and a data storage medium in which a program is stored for rewriting data in a flash memory
JP2008148851A (ja) * 2006-12-15 2008-07-03 Le Tekku:Kk 遊技機制御用チップ及びそのromライタ

Similar Documents

Publication Publication Date Title
US6298421B1 (en) Data storage device
US8266613B2 (en) Image forming apparatus, program updating system, and program updating program
KR100440950B1 (ko) 네트워크 환경에 있어서 소프트웨어 업그레이드 방법 및그에 따른 네트워크 디바이스
JP2007243845A (ja) 情報処理システム、情報処理装置および端末登録方法
JP2009053901A (ja) プリンタ
US7577766B2 (en) Method for controlling electronic apparatus, program for controlling electronic apparatus, electronic apparatus, and recording apparatus
CN115145650A (zh) 信息处理装置、存储介质及信息处理方法
JPH11212791A (ja) データ書換装置
JPH1115668A (ja) データ格納方法及び装置
KR20070044268A (ko) 메인 보드의 부팅 처리 방법 및 그 장치
JP2008009799A (ja) 画像形成装置
JPH11203121A (ja) データ格納装置
JPH11203141A (ja) データ格納装置
JP3826533B2 (ja) 印字装置
JPH1115672A (ja) データ格納状態判定方法及び装置
JP2008162054A (ja) 印刷装置
JP2023130149A (ja) 画像形成システム、及び画像形成装置
JP2007133512A (ja) フラッシュromを備えた情報処理装置及びフラッシュromのデータ消去方法
JP2008201001A (ja) 印刷装置及び制御方法
JP2007069514A (ja) インクジェット記録装置
JP2000263897A (ja) 画像形成装置及び画像形成装置の制御プログラム更新方法
JP2001273143A (ja) 電子制御装置
JP6915565B2 (ja) 画像処理装置
JP2006092580A (ja) 通信システム、及び記憶媒体
KR101041879B1 (ko) 컨트롤 장치 및 기억 장치의 효과적인 이용 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20031212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061024