JPH1115672A - データ格納状態判定方法及び装置 - Google Patents

データ格納状態判定方法及び装置

Info

Publication number
JPH1115672A
JPH1115672A JP9183033A JP18303397A JPH1115672A JP H1115672 A JPH1115672 A JP H1115672A JP 9183033 A JP9183033 A JP 9183033A JP 18303397 A JP18303397 A JP 18303397A JP H1115672 A JPH1115672 A JP H1115672A
Authority
JP
Japan
Prior art keywords
data
storage
storage area
specific data
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
Application number
JP9183033A
Other languages
English (en)
Inventor
Kazuhiro Kuwabara
和浩 桑原
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 JP9183033A priority Critical patent/JPH1115672A/ja
Publication of JPH1115672A publication Critical patent/JPH1115672A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 記憶装置にデータが正常に書き込まれている
か否かの判定において、サムチェックにおける偶然の一
致による誤判定を防止する。 【解決手段】 メインプログラムの末尾に、ロード完了
マークとして予め定めた特定の文字列を含ませておき、
ダウンロードに際しては、このロード完了マークをフラ
ッシュメモリの特定の格納領域に格納する。そして、メ
インプログラムが正しく格納されているか否かの判定で
は、フラッシュメモリ内のロード完了マーク格納領域に
ロード完了マークが格納され(S120:YES)、か
つメインプログラムエリアに対するサムチェックの結果
が正常の場合に(S140:YES)、正常と判定する
(S150)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フラッシュメモリ
等の書き換え可能な不揮発性記憶装置に対して、プログ
ラムや機器の動作に必要なデータが正しく格納されてい
るか否かを判定する方法及び装置に関するものである。
【0002】
【従来の技術】従来、フラッシュメモリ等の記憶装置に
プログラム等のデータをダウンロードした際に、正しく
ダウンロードが行われたか否かを判定する方法としてサ
ムチェックを実行するのが一般的である。
【0003】
【発明が解決しようとする課題】しかしながら、データ
が正しく格納されていない場合であっても、データの合
計とチェックサムとが偶然一致してしまう場合がないと
はいえない。このため、従来のサムチェックによる判定
方法では、こうした偶然による誤判定のおそれがある。
【0004】本発明は、前記問題点を解決するためにな
されたものであり、記憶装置にデータが正しく格納され
ているか否かの判定において偶然による誤判定を防止す
ることを目的とする。
【0005】
【課題を解決するための手段】かかる目的を達成するた
めになされた本発明のデータ格納状態判定方法は、書き
換え可能な記憶装置に対してデータを書き込む際に、該
データの本質的部分であるデータ本体、該データ本体の
チェックサム及び予め定められている特定データを、そ
れぞれについて定められた個々の格納領域に書き込み、
前記データ本体が正しく書き込まれているか否かの判定
に際しては、前記チェックサムを用いて前記データ本体
の格納領域に対するサムチェックを行うと共に、前記特
定データの格納領域に前記特定データが格納されている
か否かをも判定し、前記サムチェックの結果が正常であ
っても、前記特定データの格納領域に前記特定データが
格納されていないと判定された場合には、前記データ本
体が前記記憶装置に正しく格納されていないものと判定
するものである。
【0006】この判定方法によれば、データ格納領域の
データの合計とチェックサムとが偶然一致する様な場合
であっても、特定データが正しく格納されていない場合
には、データ本体が正しく格納されていないものと判定
する。従って、従来問題となるような偶然の一致による
誤判定を防止することができる。特に、データ合計値の
照合というサムチェックの手法に対し、特定データの有
無の判定というサムチェックとは全く別の観点から異常
を判定する構成を採用している点に一つの特徴がある。
この結果、本発明によれば、種類の異なるチェック方法
のそれぞれの特性を生かすことができ、単なる二重チェ
ックを越える的確な誤判定防止機能が発揮されることに
なる。なお、ここで、特定データは、できるだけ長いデ
ータにしておく方がよい。
【0007】また、本発明では、上記データ格納状態判
定方法において、前記データの書き込みに際して、前記
特定データの格納領域の記憶内容を前記特定データとは
異なるデータに書き換えてから前記データの書き込みを
行うようにするとよい。この方法によれば、特定データ
格納領域の記憶内容を一旦破壊することにより、データ
本体の更新時には再度特定データが書き込まれない限り
は、データ本体の格納状態が異常と判定されることにな
る。従って、データ本体を更新しようとするとき、更新
途中でエラーが起こった様なときに誤って正常と判定さ
れてしまうことがなくなる。
【0008】ここで、このデータ格納状態判定方法にお
いて、前記特定データを、前記データ本体の後に含ませ
ておき、前記記憶装置に対して前記データ本体を書き込
んだ後に、前記特定データの書き込みを行う様にすると
よい。この様に構成することで、データ本体の更新が完
了しないと特定データが書き込まれないこととなり、更
新途中でエラーが発生した場合の誤判定をより確実に防
止することができるからである。
【0009】また、上記目的を達成するためになされた
本発明のデータ格納状態判定装置は、データ本体を格納
するデータ本体格納領域、該データ本体のチェックサム
を格納するチェックサム格納領域、及び予め定められて
いる特定データを格納する特定データ格納領域を備える
書き換え可能な記憶手段と、前記データ本体格納領域に
対して、前記チェックサム格納領域に格納されているチ
ェックサムを用いて前記データ本体が正常に格納されて
いるか否かを判定するサムチェック手段と、前記特定デ
ータ格納領域内に前記特定データが格納されているか否
かを判定する特定データ判定手段と、前記サムチェック
手段により異常と判定されるか、あるいは、前記特定デ
ータ判定手段によって前記特定データ格納領域内に前記
特定データが格納されていないと判定されるときは、前
記データ本体が正しく格納されていないと判定する異常
判定手段とを備える。このデータ格納状態判定装置によ
れば、機器を作動させるためのプログラムや機器の作動
に必要なデータ等が記憶手段に正しく格納されているか
否かについての判定に当たり、サムチェックの他に、特
定データ判定手段による判定が加わることになる。この
結果、サムチェックの結果が正常であっても、特定デー
タが正しく書き込まれていない場合は異常と判定され、
先に説明した本発明方法を具体的に実施することができ
る。
【0010】また、このデータ格納状態判定装置におい
て、前記記憶手段の前記各格納領域に対して、それぞれ
前記データ本体、前記チェックサム及び前記特定データ
を書き込むデータ書込手段と、該データ書込手段による
書き込みの前に、前記特定データ格納領域の記憶内容を
前記特定データとは異なるデータに書き換える特定デー
タ破壊手段とを備える様にするとよい。この様に構成す
ることで、データ本体を更新する際にエラーが発生した
ようなとき、誤って正常と判定されることがない。
【0011】
【発明の実施の形態】次に、本発明の一実施の形態につ
いて説明する。この実施の形態は、ファクシミリ機能、
プリンタ機能、複写機能等を備えたマルチ・ファンクシ
ョンデバイスに対して動作プログラムをダウンロードす
る方法に関するものである。実施の形態として説明する
マルチ・ファンクションデバイス10は、図1に示す様
に、CPU11、フラッシュメモリ12、RAM13、
EEPROM14、ブザーユニット15、パラレルI/
Fユニット16、符号・復号器17、プリンタユニット
18、モデム19、スキャナユニット20、ネットワー
クコントロールユニット(NCU)21及び操作パネル
22を備える。
【0012】このマルチ・ファンクションデバイス10
は、操作パネル22による機能選択の結果に応じて、フ
ラッシュメモリ12に格納されたメインプログラムをC
PU11が実行することにより、ファクシミリとしての
機能の他に、プリンタ、複写機、スキャナ等としても機
能することができるものである。
【0013】フラッシュメモリ12は、図2に示す様
に、ブートローダーエリア30と、メインプログラムエ
リア40とから構成されている。ブートローダーエリア
30には、ブートローダープログラムを格納するブート
ローダープログラム格納領域31の他に、ブートローダ
ープログラムの作成時期を表す「作成時期データ」を格
納するためのブートローダー作成時期格納領域32と、
ブートローダーエリアについての「チェックサムデー
タ」を格納するためのブートローダーチェックサム格納
領域33が設定されている。また、メインプログラムエ
リア40には、メインプログラムを格納するメインプロ
グラム格納領域41の他に、本実施の形態の特徴である
「モデル・国識別用パスワード」を格納するパスワード
格納領域42と、同じく本実施の形態の特徴であるメイ
ンプログラムのロード完了を示す「ロード完了マーク」
を格納する完了マーク格納領域43と、メインプログラ
ムの作成時期を表す「作成時期データ」を格納するため
のメインプログラム作成時期格納領域44と、メインプ
ログラムエリア40についての「チェックサムデータ」
を格納するためのメインプログラムチェックサム格納領
域45とが設定されている。
【0014】EEPROM14は、ユーザーのパネル操
作によって設定可能なワンタッチダイヤル等の情報を格
納するためのものである。また、ブザーユニット15
は、プログラムのダウンロード完了時やエラー発生時に
報知音をスピーカ23から出力するためのものである。
パラレルI/Fユニット16は、パラレルポート24を
介してパーソナルコンピュータとの間でデータのやり取
りを行うために設けられている。メインプログラムは、
後述する様に、このパラレルI/Fユニット16を介し
てパーソナルコンピュータからダウンロードされる。ま
た、本実施の形態のマルチ・ファンクションデバイス1
0は、このパラレルI/Fユニット16を介してパーソ
ナルコンピュータから印字データを受信した場合はプリ
ンタとして機能する。
【0015】符号・復号器17は、ファクシミリとして
機能する際に、スキャナユニット20にて原稿から読み
取ったデータをファクシミリ送信用のデータに符号化す
る処理と、外部から受信したファクシミリデータをプリ
ンタユニット18で印字出力可能な印字データに復号化
する処理とを行うためのものである。この符号・復号器
17によって符号化されたファクシミリデータは、モデ
ム19及びNCU21を介して、一般電話回線25で送
信される。また、モデム19及びNCU21を介して、
一般電話回線25から受信したファクシミリデータは、
符号・復号器17で復号化され、プリンタユニット18
に送られて記録用紙に印字される。
【0016】操作パネル22には、電話番号を入力する
ためのテンキーの他、スタートキー、ストップキー、機
能選択キー等が設けられている。この操作パネル22に
よって機能を選択することにより、本装置10を、ファ
クシミリ、プリンタ、複写機等として機能させることが
できる様になっている。また、テンキー等による入力値
や各種メッセージを表示するための液晶ディスプレイも
この操作パネル22の中に備えられている。
【0017】次に、このように構成される本装置10の
製造方法を含め、メインプログラムをダウンロードする
手順等について説明する。
【0018】まず、本装置10に備えられるフラッシュ
メモリ12は、図3に示す様に、ワークステーションW
Sにフラッシュメモリープログラマー50を接続し、ブ
ートローダープログラムを格納したマスタチップ51を
製造する。続いて、このマスタチップ51をフラッシュ
メモリプログラマー52にセットして、コピーチップ5
3,53,…を製造する。そして、このコピーチップ5
3を、本装置10用の基板54に実装し、これを本装置
10に組み付ける。
【0019】次に、ワークステーションWSで作成した
メインプログラムを、データベース56にアップロード
する。そして、このデータベース56に対してパーソナ
ルコンピュータPCを接続し、メインプログラムをパー
ソナルコンピュータPCにダウンロードする。こうして
パーソナルコンピュータPCにメインプログラムをダウ
ンロードしたら、このPCと本装置10とをプリンタケ
ーブル57で接続し、装置10の電源を投入する。する
と、後述する様に、ブートローダープログラムが起動さ
れ、メインプログラムの初期ロードが実行される。
【0020】また、こうして製造された装置10に対し
て、ユーザーに供給した後のプログラムのアップデート
に当たっても、図4に示す様に、パーソナルコンピュー
タPCを使用することができる。メーカーは、アップデ
ート用プログラムの提供時期、方法等について、自己の
ホームページに情報を表示する。この表示を見たユーザ
ーは、インターネット経由で、アップデート用プログラ
ムを自己のパーソナルコンピュータPC内にダウンロー
ドする。そして、このパーソナルコンピュータPCと装
置10とをプリンタケーブル57で接続し、ダウンロー
ドを実行する。あるいは、他の方法として、メーカーが
フロッピーディスクあるいはCDROM等の可搬式記憶
媒体58にアップデート用プログラムを格納し、これを
各ユーザーに供給する。各ユーザーは、この記憶媒体5
8を自己のパーソナルコンピュータPCにセットし、後
は、インターネット経由の場合と同様に装置10に対し
てプリンタケーブル57を介してアップデート用プログ
ラムのダウンロードを実行する。
【0021】なお、このマルチファンクション・デバイ
ス10は、複数のモデルを有し、メインプログラムは各
モデル毎に異なるものである。また、各モデルについ
て、さらに、仕向国別にメインプログラムが異なるもの
として作成されている。しかしながら、これらメインプ
ログラムは、いずれも、上述のブートローダープログラ
ムを使ってダウンロードすることが可能である。この結
果、本実施の形態では、製品に組み付ける基板54に実
装されるコピーチップ53は全て共通のものを使用す
る。
【0022】ここで、ワークステーションWSで作成さ
れるメインプログラムは、図5に示す様に、データの先
頭から順番に、PJLコマンド、固定文字列、モデル・
国識別用パスワード、開始レコード、データレコード、
最終レコードによって構成されている。
【0023】PJLコマンドは、このコマンドに続くデ
ータが印字データではなくプログラムであることをCP
U11に認識させるためのコマンドである。続く固定文
字列は、本装置10用のプログラムであることを識別さ
せるためのデータである。
【0024】さらに、その後に続くモデル・国識別用パ
スワードは、データレコードとして格納されているプロ
グラムが、本装置10におけるどのモデルの、どの国用
のものであるかを識別するためのパスワードである。開
始レコードと最終レコードは、データレコード領域の開
始と終了とを識別するためのものである。
【0025】データレコードは、属性フィールド、アド
レスフィールド、データフィールド、チェックサムフィ
ールドから構成されている。属性フィールドには、デー
タレコードであることを示すデータとデータフィールド
内のデータ数を判別するためのデータとが記憶される。
アドレスフィールドには、データフィールド内のデータ
のフラッシュメモリ上での格納アドレスに関するデータ
が記憶されている。チェックサムフィールドには、属性
フィールド、アドレスフィールド及びデータフィールド
のデータを加算した合計の値を示すデータが記憶されて
いる。
【0026】そして、データフィールドには、プログラ
ム、モデル・国識別用パスワード、メインプログラムロ
ード完了マーク、メインプログラム作成時期データ、メ
インプログラムエリアのチェックサムデータといったも
のが記憶されている。これらの並び方は、開始レコード
側から最終レコード側にかけて、プログラム、モデル・
国識別用パスワード、メインプログラムロード完了マー
ク、メインプログラム作成時期データ、メインプログラ
ムエリアのチェックサムデータの順となっている。
【0027】次に、メインプログラムの初期ロードを含
む、本装置10の制御処理の内容について図6〜図10
のフローチャートを用いて説明する。
【0028】本装置10に電源が投入されると、図6に
示す処理が開始され、まず、I/Oポートの初期化が実
行される(S10)。次に、フラッシュメモリ12のブ
ートローダーエリア30についてサムチェックを行う
(S20)。そして、ブートローダーエリア30の内、
チェックサムデータ格納領域33を除くエリアの全デー
タを加算した合計とチェックサムとが一致している場合
に正常と判定し(S30:YES)、続いてRAM13
がデバイスとして正常に動作し得るか否かを検査する
(S40)。このRAM13の検査も正常であるとき
(S50:YES)、後述するメインプログラムエリア
チェック処理が実行される(S100)。
【0029】そして、メインプログラムエリアチェック
処理の結果が正常であるとき(S60:YES)、後述
のメインプログラム実行ルーチンが起動される。一方、
メインプログラムエリア40に対するチェックの結果が
異常であるときは(S60:NO)、後述のダウンロー
ド処理へと移行する(S200)。なお、ブートローダ
ーエリア30のサムチェック結果が異常であるとき(S
30:NO)、及びRAM13の検査結果が異常である
ときは(S50:NO)、装置異常処理ルーチンが起動
される。この装置異常処理ルーチンは、デバイスの交換
等を指示するもので、ブザーの鳴動やエラーメッセージ
のディスプレイ表示あるいは印字出力等、所定の処理が
実行される。
【0030】メインプログラムエリアに対するチェック
処理は、図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で設定された検査結果に基づき、メ
インプログラム実行ルーチン及びダウンロード処理のい
ずれのルーチンを起動すべきかが判定されることにな
る。
【0031】ダウンロード処理ルーチンが起動された場
合、図8に示す様に、まず、初期ロードとしてダウンロ
ードを実行すべき状態であるのか、アップデートとして
ダウンロードを実行すべき状態であるのかが判定される
(S210)。S60でNOと判定されたときは、初期
ロードに失敗している状態であることから、このS21
0の判定の後、S220へと処理が進む。
【0032】S210で初期ロードと判定されたとき
は、まず、初期ロードであることを特定するために動作
モードを「0」に設定すると共に、フラッシュメモリ1
2のセクタがいずれも消去されていないことを判別させ
るための消去フラグを「0」に設定する(S220)。
その後、データ待ちカウンタを「0」に設定すると共に
(S230)、パスワード照合に関する条件を「照合し
ない」に設定する(S240)。
【0033】そして、まず、フラッシュメモリ12に対
して正常に読み書き動作を実行できるか否かのデバイス
チェックを実行する(S250)。このデバイスチェッ
クの結果が異常であるときは(S260:NO)、装置
異常処理ルーチンを起動する。一方、デバイスチェック
の結果が正常であるときは(S260:YES)、後述
のダウンロード実行処理ルーチンを起動する(S40
0)。そして、ダウンロード実行処理ルーチンが正常に
終了した場合は(S270:YES)、先に説明したメ
インプログラムエリア40に対するチェック処理を実行
し(S100)、その結果が正常であるときは(S28
0:YES)、電源投入・リセット処理ルーチンへ戻っ
て、メインプログラム実行ルーチンを起動する。
【0034】一方、ダウンロード実行処理ルーチンが正
常終了しなかったとき(S270:NO)、及びメイン
プログラムエリア40に対するチェック処理の結果が異
常であるときは(S280:NO)、ダウンロード異常
を報知するためにブザー23を鳴動させる(S29
0)。そして、設定されている動作モードに応じてS2
20またはS310へとジャンプする。
【0035】S310〜S330の処理は、初期ロード
ではなく、アップデートとしてメインプログラムをダウ
ンロードする場合に実行されるステップである。アップ
デートとしてメインプログラムのダウンロードを実行す
るときは、初期ロードと区別するために動作モードを
「1」に設定すると共に、フラッシュメモリ12のセク
タがいずれも消去されていないことを判別させるための
消去フラグを「0」に設定する(S310)。その後、
データ待ちカウンタを「0」に設定すると共に(S32
0)、パスワード照合に関する条件を「照合する」に設
定する(S330)。
【0036】次に、ダウンロード実行ルーチンについて
図9のフローチャートに従って説明する。このルーチン
では、まず、パラレルポート24からプログラムデータ
を受信可能な状態に準備する(S410)。続いて、ダ
ウンロード開始を報知するためにブザーを鳴動させ(S
420)、固定文字列を受信するのを待つ(S43
0)。固定文字列を受信したら(S430:YES)、
パスワード照合を実行するモードが設定されているか否
かを判定する(S440)。前述の様に、パスワード照
合のモードとしては、初期ロードの場合には「照合しな
い」が設定され(S240)、アップデートの場合には
「照合する」が設定されている(S330)。
【0037】従って、アップデートの場合に限ってモデ
ル・国識別用パスワードの受信が実行され、メインプロ
グラムエリア40の該当領域42に格納されているパス
ワードと照合される(S450)。そして、照合の結
果、パスワードが一致していないときは(S460:N
O)、アップデート用として選択されたメインプログラ
ムの種類が間違っていることを報知し(S470)、受
信したデータを読み捨てる処理を実行する(S48
0)。
【0038】一方、照合の結果、パスワードが一致する
ときは(S460:YES)、ロード完了マークの格納
されている領域43に、ロード完了マークとは異なる内
容の文字列を書き込むことにより、当該領域43のデー
タを破壊する処理を実行する(S490)。そして、開
始レコードを受信するのを待った後(S500)、1セ
クタ分のデータを受信し(S510)、このデータを書
き込むべき1セクタの領域内のデータを消去し(S52
0)、消去フラグを「1」に設定すると共にブザーを鳴
動させる(S530)。そして、S510で受信した1
セクタ分のデータを先ほど消去を行ったセクタに書き込
み(S540)、書き込み完了ブザーを鳴動させる(S
550)。そして、最終レコードを受信するまでは(S
560:NO)、上記S510以下の処理を繰り返し実
行する。
【0039】なお、フローチャートでは処理手順が複雑
になって理解し難くならないように記載していないが、
このS510〜S560の間の処理において、パラレル
ポート24からデータを受信するに当たってデータ待ち
タイマをセットしておき、データ待ちタイマがタイムア
ップしてもデータを受信できないときは、データ待ちカ
ウンタをインクリメントし、このデータ待ちカウンタの
値が所定値になったとき、未だいずれのセクタも消去し
ていない場合は、電源投入・リセットルーチンへ戻るこ
とにしている。セクタを未だ消去していない場合は、ダ
ウンロードを全く開始していないのと同じであるので最
初から実行し直せばよいからである。
【0040】一方、既にいずれかのセクタを消去してい
る場合には、ダウンロード実行処理を異常終了として、
S270に進む様に構成してある。これはダウンロード
途中での異常終了であることから、特に、アップデート
の場合にはメインプログラムの一部が破壊された状態に
あり、電源投入直後の状態に復帰させると装置10が正
常に動作できなくなってしまうおそれがあることから、
速やかにメインプログラムをダウンロードすべく、ダウ
ンロード処理ルーチンを再度スタートさせるためであ
る。
【0041】こうしてS510〜S560の処理を繰り
返し、最終レコードを受信したときは(S560:YE
S)、メインプログラムエリア40の中の未消去のセク
タを全て消去し(S570)、ダウンロード完了を意味
するブザーを鳴動させて本ルーチンを抜ける(S58
0)。このときは正常終了となる。よって、S270は
YESと判定され、メインプログラムエリアチェック処
理を実行し(S100)、データが正しくダウンロード
されたか否かを判定する処理に進む。
【0042】次に、メインプログラム実行ルーチンにつ
いて、図10のフローチャートに基づいて説明する。こ
のルーチンでは、外部からPJLコマンドを受信したか
否かを判定し(S610)、PJLコマンドを受信した
場合に(S610:YES)、前述のダウンロード処理
ルーチンを起動する(S200)。これが、アップデー
トの状態であり、ダウンロード処理ルーチンのS210
でアップデートと判定され、S310以下の処理が実行
されることになる。
【0043】一方、印字データを受信したときは(S6
20:YES)、受信した印字データに基づいてプリン
タユニット18を制御して印字処理を実行する(S70
0)。また、NCU21及びモデム19を介してファク
シミリデータを受信した場合は(S630:YES)、
符号・復号器17に当該ファクシミリデータを入力して
復号化を行った後にプリンタユニット18を制御して受
信した情報を記録紙に印字して出力するファクシミリ受
信処理を実行する(S800)。また、操作パネル22
においてファクシミリ機能が選択されているときは(S
640:YES)、スキャナユニット20に投入された
原稿からデータを読み取り、これを符号・復号器17に
入力して符号化し、さらに、モデム19及びNCU21
を制御してファクシミリデータを送信する処理を実行す
る(S900)。また、その他の機能、例えば、複写機
能等が選択されているときは(S650)、当該選択さ
れた機能に従って、スキャナユニット20やプリンタユ
ニット18等を制御し、選択された機能に従った処理を
実行する(S1000)。以上の処理は、電源がOFF
にされるかリセットが行われるまで続行される(S66
0)。
【0044】以上説明した様に、本実施の形態では、メ
インプログラムの末尾に、ロード完了マークとして予め
定めた特定の文字列を含ませておき、ダウンロードに当
たっては、このロード完了マークをフラッシュメモリ1
2の特定の格納領域に格納する様にしている。そして、
メインプログラムが正しく格納されているか否かの判定
に当たっては、サムチェックだけでなく、このロード完
了マークの書き込みが正常か否かについてもチェックす
る様にしている。ここで、サムチェックの場合、単純に
データの数を合計した値とチェックサムとを比較するだ
けであるため、偶然の一致による誤判定の危険性があ
る。しかし、本実施の形態によれば、さらにロード完了
マークとしての文字列が格納されているか否かをもチェ
ックすることで、こうした偶然の一致による誤判定を的
確に防止することができる様になる。
【0045】また、本実施の形態では、アップデートの
際にプログラムをダウンロードする前に、このロード完
了マークを一旦破壊する構成を採用している。しかも、
ロード完了マークをプログラムデータの末尾に配置する
ことで、プログラムが正常にダウンロードされないでデ
ータの受信が中断されてしまった様なときは、正しいロ
ード完了マークが格納されていない状態になる。この結
果、本実施の形態によれば、アップデートの際に、ダウ
ンロード途中でエラーが発生した様なときにも誤判定を
防止することができる。
【0046】さらに、本実施の形態によれば、メインプ
ログラムの末尾にモデル・国識別用パスワードをデータ
として含ませておき、初期ロードの際に、このモデル・
国識別用パスワードをフラッシュメモリ12の特定の格
納領域に書き込む様にしている。そして、プログラムデ
ータの前に、このモデル・国識別用パスワードを配置し
たデータでアップデートを行う様に構成し、アップデー
ト時には最初にパスワードの照合を行う様にしている。
この結果、アップデートの際に、異なるモデル・国の仕
様に合わせたメインプログラムを間違ってダウンロード
してしまうといった不具合を防止することができる。ま
た、初期ロードの際には、このパスワード照合を行わな
いモードを設定することで、モデル・国の別に関係なく
製造したフラッシュメモリ12を用いることができる。
この結果、フラッシュメモリ12自体は、各製品に共通
のものとして採用することができ、しかも、アップデー
トにおける誤りを的確に防止し得るという優れた効果が
発揮される。
【0047】以上、本発明の一実施の形態について説明
したが、本発明はこの実施の形態に限られるものではな
く、その要旨を逸脱しない範囲内においてさらに種々の
形態を採用することができることはもちろんである。
【0048】例えば、上述の実施の形態ではロード完了
マークをプログラムデータの後ろに配置し、メインプロ
グラムエリア40の最後の部分に確保した格納領域に格
納する様にしたが、ロード完了マークをプログラムデー
タの前に配置する構造を採用し、その格納領域をメイン
プログラムエリアの先頭部分に確保する様にしてもよ
い。但し、アップデート時のダウンロード途中のエラー
に対して誤判定しない様にする上では、実施の形態に示
した様に、ロード完了マークをプログラムデータの後ろ
に配置する構成を採用する方が優れている。また、実施
の形態ではロード完了マークとして「ProgramO
K」として、それ自体ロード完了を意味する文字を連ね
たものを用いたが、それ自体が特定の意味を表す文字列
でなくても構わないし、もっと短い文字列、例えば1文
字であっても構わない。加えて、プログラム以外の、機
器の動作に必要なデータをダウンロードする場合の誤判
定防止方法としても本発明を適用することができる。
【0049】
【発明の効果】以上説明した様に、本発明によれば、サ
ムチェックによる異常判定に加えて、データ合計値の照
合というサムチェックにおける手法とは全く別の手法と
して特定データの有無をも判定する構成を採用すること
で、サムチェックでは防止できなかった偶然の一致によ
る誤判定を防止することができる。
【図面の簡単な説明】
【図1】実施の形態としてのマルチファンクション・デ
バイスの構成を示すブロック図。
【図2】実施の形態におけるフラッシュメモリの構造を
示す模式図。
【図3】実施の形態における製品製造時のプログラムの
ダウンロードの手法を示す模式図。
【図4】実施の形態におけるアップデート時のプログラ
ムのダウンロードの手法を示す模式図。
【図5】実施の形態におけるメインプログラムのデータ
構造を示す模式図。
【図6】実施の形態において実行する制御処理の手順を
示すフローチャート。
【図7】実施の形態において実行する制御処理の手順を
示すフローチャート。
【図8】実施の形態において実行する制御処理の手順を
示すフローチャート。
【図9】実施の形態において実行する制御処理の手順を
示すフローチャート。
【図10】実施の形態において実行する制御処理の手順
を示すフローチャート。
【符号の説明】
10・・・マルチ・ファンクションデバイス、11・・
・CPU、12・・・フラッシュメモリ、13・・・R
AM、14・・・EEPROM、15・・・ブザーユニ
ット、16・・・パラレルI/Fユニット、17・・・
符号・復号器、18・・・プリンタユニット、19・・
・モデム、20・・・スキャナユニット、21・・・N
CU、22・・・操作パネル、23・・・スピーカ、2
4・・・パラレルポート、25・・・一般電話回線、3
0・・・ブートローダーエリア、31・・・ブートロー
ダープログラム格納領域、32・・・ブートローダー作
成時期格納領域、33・・・ブートローダーチェックサ
ム格納領域、40・・・メインプログラムエリア、41
・・・メインプログラム格納領域、42・・・パスワー
ド格納領域、43・・・ロード完了マーク格納領域、4
4・・・メインプログラム作成時期格納領域、45・・
・メインプログラムチェックサム格納領域、51・・・
マスタチップ、52・・・フラッシュメモリプログラマ
ー、53・・・コピーチップ、54・・・基板、56・
・・プログラム記憶装置、57・・・プリンタケーブ
ル、58・・・可搬式記憶媒体、PC・・・パーソナル
コンピュータ、WS・・・ワークステーション。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 書き換え可能な記憶装置に対してデータ
    を書き込む際に、該データの本質的部分であるデータ本
    体、該データ本体のチェックサム及び予め定められてい
    る特定データを、それぞれについて定められた個々の格
    納領域に書き込み、 前記データ本体が正しく書き込まれているか否かの判定
    に際しては、前記チェックサムを用いて前記データ本体
    の格納領域に対するサムチェックを行うと共に、前記特
    定データの格納領域に前記特定データが格納されている
    か否かをも判定し、 前記サムチェックの結果が正常であっても、前記特定デ
    ータの格納領域に前記特定データが格納されていないと
    判定された場合には、前記データ本体が前記記憶装置に
    正しく格納されていないものと判定するデータ格納状態
    判定方法。
  2. 【請求項2】 請求項1記載のデータ格納状態判定方法
    において、前記データの書き込みに際して、前記特定デ
    ータの格納領域の記憶内容を前記特定データとは異なる
    データに書き換えてから前記データの書き込みを行うこ
    とを特徴とするデータ格納状態判定方法。
  3. 【請求項3】 請求項2記載のデータ格納状態判定方法
    において、前記特定データを、前記データ本体の後に含
    ませておき、前記記憶装置に対して前記データ本体を書
    き込んだ後に、前記特定データの書き込みを行うことを
    特徴とするデータ格納状態判定方法。
  4. 【請求項4】 データ本体を格納するデータ本体格納領
    域、該データ本体のチェックサムを格納するチェックサ
    ム格納領域、及び予め定められている特定データを格納
    する特定データ格納領域を備える書き換え可能な記憶手
    段と、 前記データ本体格納領域に対して、前記チェックサム格
    納領域に格納されているチェックサムを用いて前記デー
    タ本体が正常に格納されているか否かを判定するサムチ
    ェック手段と、 前記特定データ格納領域内に前記特定データが格納され
    ているか否かを判定する特定データ判定手段と、 前記サムチェック手段により異常と判定されるか、ある
    いは、前記特定データ判定手段によって前記特定データ
    格納領域内に前記特定データが格納されていないと判定
    されるときは、前記データ本体が正しく格納されていな
    いと判定する異常判定手段とを備えることを特徴とする
    データ格納状態判定装置。
  5. 【請求項5】 請求項4記載のデータ格納状態判定装置
    において、 前記記憶手段の前記各格納領域に対して、それぞれ前記
    データ本体、前記チェックサム及び前記特定データを書
    き込むデータ書込手段と、 該データ書込手段による書き込みの前に、前記特定デー
    タ格納領域の記憶内容を前記特定データとは異なるデー
    タに書き換える特定データ破壊手段とを備えることを特
    徴とするデータ格納状態判定装置。
JP9183033A 1997-06-23 1997-06-23 データ格納状態判定方法及び装置 Pending JPH1115672A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9183033A JPH1115672A (ja) 1997-06-23 1997-06-23 データ格納状態判定方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9183033A JPH1115672A (ja) 1997-06-23 1997-06-23 データ格納状態判定方法及び装置

Publications (1)

Publication Number Publication Date
JPH1115672A true JPH1115672A (ja) 1999-01-22

Family

ID=16128571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9183033A Pending JPH1115672A (ja) 1997-06-23 1997-06-23 データ格納状態判定方法及び装置

Country Status (1)

Country Link
JP (1) JPH1115672A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002057904A1 (fr) * 2001-01-19 2002-07-25 Fujitsu Limited Controleur dote d'un fonction de telechargement
WO2005015559A1 (ja) * 2003-08-12 2005-02-17 Fujitsu Ten Limited 記録媒体再生装置
JP2009053859A (ja) * 2007-08-24 2009-03-12 Fuji Xerox Co Ltd 装置およびブートロード用プログラム
JP2013029939A (ja) * 2011-07-27 2013-02-07 Kyocera Document Solutions Inc 制御装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002057904A1 (fr) * 2001-01-19 2002-07-25 Fujitsu Limited Controleur dote d'un fonction de telechargement
US7313704B2 (en) 2001-01-19 2007-12-25 Fujitsu Limited Control system having download function
WO2005015559A1 (ja) * 2003-08-12 2005-02-17 Fujitsu Ten Limited 記録媒体再生装置
US7483352B2 (en) 2003-08-12 2009-01-27 Fujitsu Ten Limited Recording medium reproduction device
JP2009053859A (ja) * 2007-08-24 2009-03-12 Fuji Xerox Co Ltd 装置およびブートロード用プログラム
JP2013029939A (ja) * 2011-07-27 2013-02-07 Kyocera Document Solutions Inc 制御装置

Similar Documents

Publication Publication Date Title
US6298421B1 (en) Data storage device
US20090063842A1 (en) Printer
US7418542B2 (en) Rewritable, nonvolatile memory, electronic device, method of rewriting rewritable, nonvolatile memory, and storage medium having stored thereon rewrite program
JP2020160747A (ja) 情報処理装置、その制御方法、及びプログラム
CN115145650A (zh) 信息处理装置、存储介质及信息处理方法
JPH1115672A (ja) データ格納状態判定方法及び装置
JPH1115668A (ja) データ格納方法及び装置
US20060153615A1 (en) Print control device and print control method
KR20070044268A (ko) 메인 보드의 부팅 처리 방법 및 그 장치
JPH11212791A (ja) データ書換装置
JP3826533B2 (ja) 印字装置
JPH11203121A (ja) データ格納装置
JPH11203141A (ja) データ格納装置
US7600132B1 (en) System and method for authentication of embedded RAID on a motherboard
JP2007041798A (ja) 情報処理装置及び情報処理装置のメモリ書き換え方法
JP4054802B2 (ja) データ処理装置及びそのプログラム更新方法
JP2007069514A (ja) インクジェット記録装置
US7502942B1 (en) System and method for authentication of embedded raid on a motherboard having input/output processor
JP2001344156A (ja) フラッシュメモリを有する装置およびデータの書き換え方法
JP2003150327A (ja) 情報機器
JP4366207B2 (ja) 印刷制御装置、印刷装置、プログラム起動方法、及びプログラム
JP5487603B2 (ja) 記録制御装置、記録制御方法、記録制御プログラムおよび記憶媒体
JP4453359B2 (ja) 画像処理装置、画像処理装置の機能管理方法、機能管理プログラム、及び媒体
JP4453360B2 (ja) 画像処理装置、画像処理装置の機能管理方法、機能管理プログラム、及び媒体
JP3755722B2 (ja) ファクシミリ装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070116