JP2001117780A - 情報記憶装置およびそのダウンロード方法 - Google Patents

情報記憶装置およびそのダウンロード方法

Info

Publication number
JP2001117780A
JP2001117780A JP29871999A JP29871999A JP2001117780A JP 2001117780 A JP2001117780 A JP 2001117780A JP 29871999 A JP29871999 A JP 29871999A JP 29871999 A JP29871999 A JP 29871999A JP 2001117780 A JP2001117780 A JP 2001117780A
Authority
JP
Japan
Prior art keywords
information
nonvolatile memory
update
storage device
address space
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
JP29871999A
Other languages
English (en)
Inventor
Hitoshi Mitsui
斉 三井
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP29871999A priority Critical patent/JP2001117780A/ja
Publication of JP2001117780A publication Critical patent/JP2001117780A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】プログラム等の更新に起因するアクシデントに
対しても短時間に対処できる情報記憶装置及びそのダウ
ンロード方法を提供すること。 【解決手段】 ダウンロード時に、更新されるプログラ
ムを格納している第1のフラッシュPROM0とは別の
第2のフラッシュPROM1に、更新するプログラムを
格納し、更新後であっても選択的に更新前後のいずれか
のフラッシュPROM0、1からプログラムを読出可能
とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPUが参照する
ファームウェアなどのプログラムを外部の装置からダウ
ンロードして更新することが可能なシステムに適用され
る、情報記憶装置およびそのダウンロード方法に関す
る。
【0002】
【従来の技術】従来、一般に、システムの動作制御に用
いられるプログラムのうち、固定のプログラムはROM
(Read Only Memory)に記憶しておくが、バージョンア
ップしなければならないようなプログラムは電気的に書
き換えできるような不揮発メモリに記憶しておくように
なっている。このような電気的に書き換えできる不揮発
メモリとしては、最近では、たとえばEEPROM(El
ectrically Erasable Programmable Read Only Memory
)などのフラッシュメモリが挙げられる。このような
不揮発メモリを用いれば、いちいちROM交換を実施す
る必要がなく、プログラムを外からダウンロードして書
き換えることが可能になり、また、遠隔地から通信を用
いた書き換えを実施することも可能である。その結果、
プログラムの更新、バージョンアップが容易となる。
【0003】ところが、上記不揮発メモリに格納するプ
ログラムがシステムの動作制御にとって基本的なプログ
ラムである場合、ダウンロードの失敗といった事故が発
生してプログラムが正常にダウンロードされなかったり
するとシステムそのものが立ち上がらなくなる。
【0004】そこで、従来から、外部からプログラムを
ダウンロードして更新する場合に事故が起きないような
技術が種々提案されている。たとえば、特開平08−0
77040号公報に開示されているメモリ管理制御装置
および方法では、システムの内蔵メモリを書き換える際
に、システム本体の動作状態を判断している。これによ
って不用意に不揮発性メモリを書き換えることで発生す
るシステムの暴走といつた事故を未然に防ぐことを可能
としている。
【0005】また、特開平10−240577号公報に
開示されている自動復帰機能付き警備端末装置では、シ
ステム端末に不揮発メモリを実装し、メモリライト回路
とメモリ比較回路とプログラム暴走検出回路部とを設
け、通常はメモリライト回路部で、不揮発メモリの内容
をRAM(Randam Access Memory)に書き込んで保存
し、不揮発メモリのプログラムでシステム端末を動作さ
せている。そして、メモリ比較回路で定期的に不揮発メ
モリとRAMの内容とを比較し、プログラム暴走検出回
路部の状態により、不揮発メモリとRAMの内容で正し
いと推測される方の内容を破壊されたと推測される方に
書き込むようにする。その結果、常に正常動作が可能な
プログラムを用いることができるため、システムの動作
異常を最小限にくい止めることができる。
【0006】さらに、特開平8−194621号公報に
開示されているダウンロード装置では、ダウンロードさ
れたファームウェアを実行するバンクメモリ回路のワー
ク領域とプログラム領域のアドレス空間上における配置
とを入れ換えているとともに、バックアップ用の不揮発
メモリへのファームウェアの転送は、CPUを介さずに
転送制御回路により実施している。これにより、ファー
ムウェア更新に伴うシステムの停止時間を短くすること
ができるとともに、ファームウェアの転送と並行してC
PUが他の動作を実行することができる。
【0007】
【発明が解決しようとする課題】しかしながら、外来ノ
イズや操作ミスによる暴走や事故などによる電源切断
は、不揮発メモリへの書き込みの際にも発生する可能性
があり、書き換え中の不揮発メモリはもちろんRAM上
のデータもすべて破壊されてしまう危険性がある。ま
た、ファームウェアを更新した場合には、以前のバージ
ョンでは問題のなかった特定のアプリケーションの特定
機能に限定した不具合が更新後かなりの時間が経過して
発見されることがある。通常のプログラムの更新であれ
ば事前に調整して計画的にシステムを止めることになる
が、このようなアクシデントでシステムが停止すると業
務への影響も大きくなる。
【0008】本発明は、前記の問題点を解消するためな
されたものであって、上記のようなプログラム等の更新
に起因するアクシデントに対しても短時間に対処できる
情報記憶装置及びそのダウンロード方法を提供すること
を目的とする。
【0009】
【課題を解決するための手段】本発明は、上記の目的を
達成するため、次の構成を有する。本発明の第1の要旨
は、システム内に具備され、外部からの情報をダウンロ
ードすることにより特定の情報の更新を可能とする情報
記憶装置において、情報を電気的に書込み可能な複数の
不揮発メモリと、ダウンロード時に、更新される情報を
格納している第1の不揮発メモリとは別の第2の不揮発
メモリに、更新用の情報を格納可能とする切換部と、更
新前の情報を格納する第1の不揮発メモリと更新後の情
報を格納する第2の不揮発メモリの何れかの不揮発メモ
リを選択的に使用可能に制御する制御部と、を備えてい
ることを特徴とする情報記憶装置にある。
【0010】要旨1記載の構成によれば、複数の不揮発
メモリ、例えばEEPROMなどのフラッシュメモリを
設け、更に切換部を設けて、更新される情報、例えばプ
ログラムやデータを格納している第1の不揮発メモリと
は別の第2の不揮発メモリにその第1の不揮発メモリに
格納する情報の更新用の情報を格納可能とすることで、
第1の不揮発メモリに現在稼動中の情報を保持したまま
で、第2の不揮発メモリに改良した更新情報をダウンロ
ードできる。また、更新前の情報を格納する第1の不揮
発メモリと更新後の情報を格納する第2の不揮発メモリ
の何れかを選択的に読出可能に制御する制御部を設けた
ことで、ダウンロードが正常に終了したことを確認して
から、第1、2の不揮発メモリ間を切り換えることがで
きるとともに、不揮発メモリに保存されている更新前の
情報の読み出しに切り換えることもできる。その結果、
ダウンロード時にノイズや操作ミスが発生して正確なダ
ウンロードが失敗しても、あるいはダウンロードした情
報そのものに問題があるような場合でも、その情報のミ
スに基づいて制御されるシステムが稼動できなかった
り、暴走したりするなどの致命的な事態になることが回
避できる。すなわち、制御部による不揮発メモリの切り
換えにより、以前使用していた情報の使用状態に容易に
戻すことができるので、汎用性、信頼性の向上が図れ
る。従って、メーカー側が現場に出向かずに電話回線な
ど通信装置を利用して遠隔地からプログラムをダウンロ
ードすることでプログラムの更新が可能になり、プログ
ラムの更新がより容易、迅速かつ安全にできることとな
る。
【0011】本発明の第2の要旨は、制御部は第1の不
揮発メモリと第2の不揮発メモリの何れかをマニュアル
で選択するマニュアルスイッチを備えていることを特徴
とする要旨1記載の情報記憶装置にある。
【0012】要旨2記載の構成によれば、ユーザーによ
り複数の不揮発メモリから所望の情報(プログラム等)
を格納している不揮発メモリを選択することが容易とな
り、例えば、新たにダウンロードしたプログラムに障害
が見つかった場合などに、以前のプログラムを格納して
いる不揮発メモリを選択し、そのプログラムの読み出し
ができるので、システムが予定外に停止(不稼働状態)
するような事態を回避し、システムの停止時間を短縮す
ることができる。
【0013】本発明の第3の要旨は、切換部はダウンロ
ード時に、現在使用している更新対象情報を格納する第
1の不揮発メモリとは別の第2の不揮発メモリに、更新
用の情報を自動的に格納可能とすることを特徴とする要
旨1または2記載の情報記憶装置にある。
【0014】要旨3記載の構成によれば、更新用の新た
なプログラム等の情報を格納する不揮発メモリを自動的
に選択するので、以前に使用していたプログラムを確実
に保存しておくことができる。
【0015】本発明の第4の要旨は、更新用の情報は、
更新前の情報を格納する第1の不揮発メモリとは別のア
ドレス空間に、更新後の情報を格納する第2の不揮発メ
モリを割り付るためのアドレス空間情報を含み、制御部
はそのアドレス空間情報に基づいて、更新前の情報を格
納する第1の不揮発メモリとは別のアドレス空間に、更
新後の情報を格納する第2の不揮発メモリのアドレス空
間を割り付るように制御することを特徴とする要旨1、
2、または3記載の情報記憶装置にある。
【0016】要旨4記載の構成によれば、ダウンロード
のためのプログラムも不揮発メモリに格納できるので、
別途ROMなどにより、ダウンロードのためのプログラ
ムを保有しなくてもよいとともに、ダウンロードのため
のプログラムも更新することができる。
【0017】本発明の第5の要旨は、制御部は切換部が
現在使用している第1の不揮発メモリを、ダウンロード
した更新情報を書き込む第2の不揮発メモリに切り換え
た場合にのみ、その更新情報を第2の不揮発メモリに格
納することを特徴とする要旨1、2、または3記載のプ
ログラム記憶装置にある。
【0018】要旨5記載の構成によれば、新たなプログ
ラム等の更新情報のダウンロードの際に、使用中のもの
以外の第2の不揮発メモリをアドレス空間に割り付けた
場合にのみ、更新情報が第2の不揮発メモリに格納され
るため、使用中の第1の不揮発メモリに記憶されたプロ
グラムを確実に保存することができる。
【0019】本発明の第6の要旨は、制御部はダウンロ
ードした更新情報を格納する第2の不揮発メモリがアド
レス空間に割り付けられた場合にのみ、その更新情報を
第2の不揮発メモリに格納することを特徴とする要旨5
記載の情報記憶装置にある。
【0020】要旨6記載の構成によれば、プログラム等
の暴走などによって、現在使用している第1の不揮発メ
モリに対して新たなプログラム等の更新/書き込みが行
われ、更新前のプログラム等が壊されるような事態を防
止することができる。
【0021】本発明の第7の要旨は、システム内に具備
され、外部からダウンロードすることにより特定の情報
の更新が可能な情報記憶装置に更新情報をダウンロード
するダウンロード方法において、ダウンロードを始める
前に、アクセス可能な不揮発メモリを、更新指定された
使用中の第1の不揮発メモリから、ダウンロードする情
報を格納する第1の不揮発メモリ以外の第2の不揮発メ
モリに切り換える不揮発メモリ切換ステップと、ダウン
ロードした更新情報を第2の不揮発メモリに書き込む情
報書込ステップと、情報書込ステップの終了後、アクセ
ス可能な不揮発メモリを第2の不揮発メモリから第1の
不揮発メモリへ戻す再不揮発メモリ切換ステップを有す
ることを特徴とする情報記憶装置へのダウンロード方法
にある。
【0022】要旨7記載の方法によれば、新たな更新情
報のダウンロードの際に、更新対象となっている第1の
不揮発メモリ以外の第2の不揮発メモリがアドレス空間
に割り付けられることとなり、更新前の情報は更新され
ることなく確実に保存される。
【0023】本発明の第8の要旨は、システム内に具備
され、外部からダウンロードすることにより特定の情報
の更新が可能な情報記憶装置に更新情報をダウンロード
するダウンロード方法において、ダウンロードを始める
前に、更新指定された情報を格納する第1の不揮発メモ
リに割り付けられた第1のアドレス空間とは別の第2の
アドレス空間に対して、ダウンロードする更新情報を格
納する第2の不揮発メモリを割り付けるアドレス空間割
付ステップと、ダウンロードした更新情報を第2の不揮
発メモリに書き込む情報書込ステップと、その情報書込
ステップ終了後、第1の不揮発メモリを第1のアドレス
空間から取り外すと共に、第2の不揮発メモリに第1の
アドレス空間を割り当てるアドレス空間交換ステップを
有することを特徴とする情報記憶装置へのダウンロード
方法にある。
【0024】要旨8記載の方法によれば、ダウンロード
のための情報を第2の不揮発メモリに格納できるので、
別途ROMなどによりダウンロードのための情報を保有
しなくてもよい。また、アドレス空間交換ステップによ
り更新前の情報を第1の不揮発メモリに保有しているの
で、書込ステップ中でもシステム処理を継続可能である
とともに、更新前の情報を確実に保存できる。
【0025】
【発明の実施の形態】以下、図面を参照して本発明の実
施形態を詳細に説明する。本実施形態にかかるプログラ
ムやデータの記憶装置は、電気的に内容の書き込み、よ
り望ましくは電気的に内容の書き換えのできる不揮発メ
モリを複数個設け、現在使用しているプログラムやデー
タを所定の不揮発メモリに保存しておき、新たなプログ
ラムやデータのダウンロードの際にはその他の不揮発メ
モリを使用して、ダウンロードが正常に完了した後に使
用している不揮発メモリをダウンロード後のものに切り
換える。これによって、新たなプログラム等に更新され
ても更新前のプログラム等は依然として保存されている
ので、新たなプログラム等のダウンロードが失敗した場
合や、更新された新たなプログラム等に問題があるよう
な場合に、使用する不揮発メモリを選択的に切り換え
て、更新前のプログラム等でシステムを稼動させること
ができる。その結果、プログラム等の更新の事故により
システムが稼動できないという問題をサービスマンを待
つまでもなく迅速に回避することが可能となるものであ
る。かかる信頼性から、メーカー側が現場に出向かずに
電話回線など通信装置を利用して、研究開発環境の整っ
たメーカー側(遠隔地)からプログラム等を新たな不揮
発メモリにダウンロード、再ダウンロードすることでよ
り容易、迅速かつ安全なプログラム等の更新が可能と
る。尚、上記不揮発メモリとしては、例えば電気的に内
容の書き込み可能なPROM(Programmable Read Only
Memory )、電気的に内容の書き換え可能なEEPRO
Mなどのフラッシュメモリ及びSRAM(Static RAM)
が挙げられる。
【0026】まず、本発明の第1の実施形態にかかる情
報記憶装置について図面を参照しつつ説明する。尚、本
発明は本実施形態の情報記憶装置を備えたシステムに限
定するものではなく、装置内に設けた不揮発メモリの制
御プログラムにより動作するシステムであればよく、本
実施形態ではプリンタを例に説明する。図1は、本実施
形態におけるプログラム記憶装置の概略ブロック図を示
している。システム2は、CPUやメモリなどを備え、
ネットワークを介して電気的な制御を実施する制御部4
や、タッチパネルやボタンスイッチなどの操作部6を有
している。なお、外部のプリンタエンジンに対するイン
ターフェースなどが設けられているが、本実施形態で
は、プログラムの更新のみに注目する。
【0027】制御部4は、ホストやサーバ8aに接続さ
れていたり、外部回線10を介してメーカーのサーバ8
bに接続されており、たとえばメーカーのサーバ8bか
ら直接新たなプログラムのダウンロードが可能となって
いる。
【0028】図2には、前記制御部4の概略ブロック図
を示している。制御部4は、CPU12、切換部14、
フラッシュPROM0、PROM1、RAM16、RO
M18、ネットワークI/Fなどを備えている。上記各
構成はアドレスバス/制御線20によりそれぞれ接続さ
れているとともに、データバス22ともそれぞれ接続さ
れている。
【0029】また、本システムには、フラッシュPRO
M0、PROM1を切り換えるためのマニュアルスイッ
チSWが備えられている。このマニュアルスイッチSW
は、操作部6に備えられていてもよいし、制御部4に備
えられていてもよい。
【0030】また、切換部14は、CPU12からの信
号線、フラッシュPROM0、PROM1双方に接続さ
れているとともに、上記マニュアルスイッチSWに接続
されている。
【0031】上記CPU12はシステム2の全体の制御
を行う。上記フラッシュPROM0、PROM1はシス
テム2の制御プログラムを電気的に書き換え可能に記憶
するフラッシュメモリ(不揮発メモリ)である。
【0032】RAM16は、電源電圧が切れることでそ
の内容が消える揮発性メモリで、入カデータの記憶領域
や作業用記憶領域などとして用いられる。
【0033】ROM18は、読出専用メモリで、システ
ム2の動作状態を自己判断するプログラムを記憶してい
る。
【0034】ネットワークI/Fは、システム2のホス
トやサーバ8a、あるいはメーカーのサーバ8bなどと
の通信を行う。
【0035】切換部14は、マニュアルスイッチSWか
らの操作、あるいはプログラムダウンロード時の制御に
よってフラッシュPROM0、PROM1の切り換えを
行う。詳細な構成は、後述する。
【0036】フラッシュPROM0、PROM1の具体
的な構成としては、別個のチップを複数備えている構成
であってもよいし、1個のチップ内を複数に区画してい
る構成であってもよい。
【0037】マニュアルスイッチSWの具体的な構成と
しては、特に限定されるものではなく、あらかじめ制御
部4にDIPスイッチが設けられていてもよいし、操作
部6にある操作キーを所定の順序やシフトにより操作す
ることで複数のフラッシュPROMを切り換えられるよ
うになっていてもよい。
【0038】次に、フラッシュPROM0、PROM1
の切り換えについて説明する。ダウンロード時に、現在
ダウンロード中にあるフラッシュPROM、すなわち、
ダウンロード前には使用されていないフラッシュPRO
Mを選択するように、プログラムにより切り換え可能に
する。これによって、新たなプログラムをダウンロード
しても前のプログラムは確実に保存されることになる。
【0039】また、ダウンロードされる新たなプログラ
ムは、以前から使用されているプログラムを更新・バー
ジョンアップするものであるため、ダウンロードが正常
に終了した場合には、新たに書き込まれるプログラムが
自動的に使用されるように、新たなプログラムを格納す
るフラッシュPROMが自動的に使用されるようにして
おいてもよい。
【0040】なお、新たに書き込まれたプログラムに問
題がある場合には、上述したマニュアルスイッチSWに
て、前のプログラム、すなわち、前のプログラムが格納
されているフラッシュPROMを選択するようにしてお
いてもよい。
【0041】このように不揮発メモリが複数(本実施形
態では2つ)設けられることにより、一方のメモリに書
き込みを実施している際でも、他方のメモリには前のプ
ログラムが保存されている。従って、一方のメモリにプ
ログラムを書き込んでいる状態で、ノイズが発生した
り、電源が落ちたりしても他方のメモリに前のプログラ
ムが保存されているので、前のプログラムでシステムを
起動することができる。また、新たなプログラムの再ダ
ウンロードも可能である。
【0042】さらに、新たなプログラムのダウンロード
が成功して、該プログラムでシステム2を起動させた場
合に、該プログラムにバグなどがあって、システム2が
正常に起動しないような場合にも、他方のメモリに記憶
されている前のプログラムに戻してシステム2の起動が
可能になる。
【0043】プログラムのダウンロード方法について、
図3を参照しつつ説明する。プログラムの更新前には、
フラッシュPROM0を使用し、他方のフラッシュPR
OM1を使用していない状態であるとする。この状態で
は、図3に示すように、アドレス空間は0X20000
0毎に区画されており、0X000000〜0X2000
00までの第1区画AS1はROM18のアドレス空間
であり、0X200000〜0X400000までの第2
区画AS2は、フラッシュPROM0、PROM1のア
ドレス空間であり、0X400000〜0X600000
までの第3区画AS3はRAM16のアドレス空間であ
るとする。フラッシュPROM0及びPROM1のアド
レス空間では、これらフラッシュPROMが適宜切り換
えられるようになっている。
【0044】プログラム更新前では、フラッシュPRO
M0、PROM1のアドレス空間(第2区画AS2)
に、フラッシュPROM0が配置されるが、プログラム
の更新中、すなわちプログラムの書き込みの際には、フ
ラッシュPROM0とフラッシュPROM1とを切り換
えて、アドレス空間に当初配置されていなかった(使用
されていなかった)フラッシュPROM1を配置し、こ
のフラッシュPROM1にプログラムを書き込む。
【0045】その後、更新が終了した状態、すなわちプ
ログラムの書き込みが終了した状態では、元の状態、す
なわち当初使用されていたフラッシュPROM0を使用
する状態に戻す。この場合、フラッシュPROM0、P
ROM1のアドレス空間(第2区画AS2)には、更新
前と同様、フラッシュPROM0が配置されるが、スイ
ッチSWによってフラッシュPROM1に切り換え可能
となっている。
【0046】次に、上記ダウンロード手法に対応する切
換部14の構成について、図4を参照しつつ説明する。
図4に示すように、切換部14は、デコーダ24、フリ
ップフロップ(Flip Flop、以下、「FF」と略記する)
26、加算機ADD28、NAND回路30a〜30c
を有しており、マニュアルスイッチSWや切り換えられ
る2つの不揮発メモリであるフラッシュPROM(フラ
ッシュPROM0、PROM1)などに接続されてい
る。
【0047】デコーダ24は、入力A21、A22、A23
3bit(アドレスバス上位3bit)から8種類の選
択を実施するものである。この場合、切換部14が図3
のダウンロード手法に対応するので、フラッシュPRO
M0、PROM1の書き込みのために割り当てられてい
るアドレス空間は、0X200000〜0X400000
の区画、すなわち第2区画AS2となり、第2区画AS
2のアドレス空間が選択されるために、デコーダ24の
上から2番目のターミナルT2が、フラッシュPROM
0、PROM1用のNAND回路30b、30cを介し
てフラッシュPROM0、PROM1のチップセレクト
(Chip Select、以下「CS」と略記する)端に接続さ
れている。尚、本実施形態でのCS端は反転入力端(負
論理端子)(/CS端)としている。
【0048】マニュアルスイッチSWは、外部からフラ
ッシュPROM0、PROM1を選択するためのもので
あり、加算機ADD28に接続されている。
【0049】FF26は、プログラム入力時にフラッシ
ュPROM0、PROM1を選択するための構成であ
り、入力端Dが図4にはCPU12(図2)に接続され
ており、出力端Qが加算機ADD28と書き込み制御用
NAND回路30aに接続されている。FF26は、ク
リア入力CLR、クロック入力CKを有しており、電源
を入れてシステムを立ち上げた場合の最初のリセットな
どにより、クリア入力CLRによりリセットされて、最
初は入力Dに対する出力Qが0になる。そして、CPU
12からの出力信号によってクロック入力CKが操作さ
れると、CPU12からのデータD0がFF26に入力
Dとして取り込まれ、出力Qは今取り込んだD0の値に
等しくなり、次の出力信号によって新たなD0が取り込
まれるまで保持する。
【0050】加算機ADD28は、マニュアルスイッチ
SWの値とFF26の出力値Qとを加算するものであ
り、上述したように、入力側がマニュアルスイッチSW
と接続され、出力側がフラッシュPROM0、PROM
1用にそれぞれ設けられているNAND回路30b,3
0cに接続されている。
【0051】フラッシュPROM0、PROM1用のN
AND回路30b,30cは、いずれも2つの入力端の
うち一方がデコーダ24に接続され、他方が加算機28
に接続されている。そして出力端は、上記のようにフラ
ッシュPROM0、PROM1用の/CS端に接続され
ている。一方、フラッシュPROM0、PROM1には
書き込み信号入力端(Write Enable、以下「WE」と略
記する)が設けられており、このWE端は、書き込み制
御用のNAND回路30aの出力端に接続されている。
書き込み制御用NAND回路30aの入力端には、FF
26と書き込み制御ライン32とが接続され、FF26
の出力Qによって書き込み制御ライン32の書き込みを
制御している。尚、本実施形態でのWE端は反転入力端
(負論理端子)(/WE端)としている。
【0052】書き込み、更新を行わない通常の場合に
は、FF26の出力値Q=0にしてあるので、加算機A
DD28には、b0=0が入力されることになる。それ
ゆえ、加算機ADD28の出力Σ0は、マニュアルスイ
ッチSWの値a0がそのまま出力されることになる(Σ0
=a0)。
【0053】そのため、マニュアルスイッチSWで0が
選択された場合には、加算機ADD28から0が出力さ
れ、フラッシュPROM0、PROM1用のNAND回
路30b,30cに入力される。フラッシュPROM0
のNAND回路30bでは、加算機ADD28側の入力
端にNOT回路が設けられているので、0が入力される
とonとなり、NAND回路30bの反転出力端子と反
転/CS端が相殺してフラッシュPROM0が選択され
ることになる。この時、フラッシュPROM1のNAN
D回路30cでは0が入力され、offとなるため選択
されない。
【0054】これに対して、マニュアルスイッチSWで
1が選択された場合には、加算機ADD28から1が出
力され、フラッシュPROM0、PROM1用のNAN
D回路30b,30cに入力される。フラッシュPRO
M0のNAND回路30bでは、1が入力されるとNO
T回路によりoffとなり、NAND回路30bの反転
出力端子と反転/CS端が相殺してフラッシュPROM
0は選択されない。逆に、フラッシュPROM1のNA
ND回路30cでは1が入力されるとonとなるために
フラッシュPROM1が選択される。
【0055】次に、プログラムの書き込み時には、FF
26に対して、CPU12からD0=1が出力され、F
F26の出力Qが0から1に変化する。マニュアルスイ
ッチSWとFF26の出力QとがADD28にて加算さ
れて、フラッシュPROM0、PROM1用のNAND
回路30b,30cに入力される。ここで、ADD28
では、マニュアルスイッチSWの値a0とFF26の出
力値b0の和Σ0を算出することになるが、この場合、A
DD28では、a0およびb0の和(2進法)の1桁目を
出力すればよく、桁上げの有無については出力する必要
がない。そのため、マニュアルスイッチSWの値が0
(a0=0)の時に、プログラムの書き込み時(b0
1)であれば、ADD28からはΣ0=1が出力される
(桁上げの有無は0)。逆にマニュアルスイッチSWの
値が1(a0=1)の時に、プログラムの書き込み時
(b0=1)であれば、ADD28からはΣ0=0が出力
される(桁上げの有無は1)。すなわち、FF26の出
力Q=b0=1であれば、加算機ADD28の出力Σ。
はマニュアルスイッチSWの出力a0とは逆の値が出力
されることになる。その結果、新たなプログラムのダウ
ンロード時には、現状で選択されている一方のフラッシ
ュPROMではない、他方のフラッシュPROMが自動
的に選択されることになる。
【0056】また、FF26の出力Q=1のとき、FF
26の出力値Qは書き込み制御用NAND回路30aに
出力され、且つ書き込み制御ライン32のon信号もN
AND回路30aに入力されるので、NAND回路30
aの出力はoffし、それが/WE端にて反転入力され
ることで、フラッシュPROM0、PROM1の/WE
端子に対して、新たなプログラムが書き込まれることに
なる。ただし、実際にプログラムが書き込まれるのは、
/CS端で書き込み可能と選択されたフラッシュPRO
Mである。
【0057】上記一連のフラッシュPROM0、PRO
M1の切り換え動作をフローチャートで示すと、図5の
ような11ステップ(以下ステップを「S」と略記す
る)となる。まずSlとして、外部装置(サーバやホス
ト8a)からRAM16へデータ(プログラム)をダウ
ンロードし、S2として、ダウンロードしたデータをチ
ェックする。S3でチェックしたデータにエラーがある
か否か判定する。エラーがなければ、S4として、CP
U12の出力により、FF26の出力値Qを1にセット
することによって、フラッシュPROMを切り換え、選
択されたフラッシュPROMに対応させてアドレス空間
の割り付けを実施する。
【0058】そして、S5として、RAM16のデータ
を選択されたフラッシュPROMに書き込んだ後に、S
6として、フラッシュPROMへの書き込み結果をチェ
ックする。S7で、この書き込み結果チェックによりエ
ラーが検出されたか否かを判定し、検出されなければS
8として、リターン値に正常終了をセットし、S9とし
て、フラッシュPROMの切り換え(アドレス空間割り
付け)のためにCPU12からD0=0を出力してFF
26をリセットし、一連の処理を終了する。
【0059】一方、S3にて、ダウンロードされたデー
タにエラーがあると判定された場合には、SlOとし
て、リターン値にエラーコードをセットする。また、S
7にて、フラッシュPROMに書き込まれたデータから
エラーが検出されれば、Sllとして、リターン値にエ
ラーコードをセットする。
【0060】以上は、図3に示すようにの場合、書き込
みのためのアドレス空間が1カ所の場合のダウンロード
手法を説明したが、書き込みのためのアドレス空間を、
2ヵ所以上、各フラッシュPROM毎等に設けてもよ
い。次に、第2実施形態として、書き込みのためのアド
レス空間をフラッシュPROM0、1毎に設けた場合に
ついて説明する。
【0061】図6を参照しつつ、本発明の第2実施形態
にかかるダウンロード手法について説明する。尚、前記
第1実施の形態と同一部分については説明を省略する。
プログラムの更新前には、フラッシュPROM0が使用
(読み出し)され、他方のフラッシュPROM1を割り
当てるアドレス空間はあらかじめ確保されているもの
の、フラッシュPROM1は使用されていないとする。
この状態でのアドレス空間は、0X200000〜0X
00000までの第2区画AS2はフラッシュPROM
0のアドレス空間であり、0X400000〜0X600
000までの第3区画AS3はフラッシュPROM1の
アドレス空間で、0X600000〜0X800000ま
で第4区画AS4はRAM16のアドレス空間と割り付
けられている。
【0062】プログラムの更新の際には、新たなプログ
ラムがあらかじめ割り当てられたアドレス空間のフラッ
シュPROM1に書き込まれる。そして、プログラムの
更新終了後に、マニュアルスイッチSWにより、フラッ
シュPROM0、PROM1のアドレス空間の割付けが
切り換えられる。その結果、第2区画AS2がフラッシ
ュPROM1のアドレス空間であり、第3区画AS3が
フラッシュPROM0のアドレス空間と割付けられ、第
2区画AS2のフラッシュPROM1を使用(読み出
し)することにより新たなプログラムが実行される。
【0063】ここで図3に示す第1の実施形態のダウン
ロード手法の場合には、書き込みのためのアドレス空間
は1カ所だけであるので、書き込みの間はシステム2の
処理を完全に停止してしまう。また、書き込み・更新動
作を実施するための更新用プログラムがROM18に格
納されている。一方、図6に示す本実施形態のダウンロ
ード手法の場合には、アドレス空間を各フラッシュPR
OM毎に設けられているので、書き込み中でもシステム
2の処理を継続することが可能である。それゆえに、更
新動作には必ずしもROM18が必要ではない。また、
書き込み・更新動作を実施するための更新用プログラム
が、書き込まれる新たなプログラム中に含まれるように
なっていてもよい。ただし、書き込み中に事故が発生し
たような場合には、図6に示すダウンロード手法では、
システム2の処理が続けられているため、動作に悪影響
が及ぼされかねないので、ROM18があるほうが好ま
しい。
【0064】次に、図7を参照しつつ、第2実施形態の
ダウンロード手法に対応する切換部14bの構成につい
て説明する。図7に示すように、切換部14bは、デコ
ーダ24、FF26、ADD28、マニュアルスイッチ
SW、NAND回路30a2 、AND回路34a〜34
d、NOR回路36a、36bを有し、マニュアルスイ
ッチSWと2つのフラッシュPROM(フラッシュPR
OM0、PROM1)などに接続されている。
【0065】デコーダは24は、入力A21、A22、A23
の3bitから8種類の選択を実施するものである。こ
の場合、切換部14bが図6のダウンロード手法に対応
するので、フラッシュPROM0、PROM1の一方の
使用(読み出し)のために割り当てられているアドレス
空間が0X200000〜0X400000の区画、すな
わち第2区画AS2であり、他方の書き込みのために割
り当てられているアドレス空間が0X400000〜0X
600000の区画、すなわち第3区画AS3であるの
で、第2・第3区画のアドレス空間が選択されるため
に、デコーダ24の上から2番目および3番目のターミ
ナルT2,T3が、フラッシュPROM0、PROM1
用のAND回路34a〜34dおよびNOR回路36
a、36bを介してフラッシュPROM0、PROM1
の端点反転入力端子である/CS端に接続されている。
尚、マニュアルスイッチSW、FF26、およびADD
28の構成は第1の実施形態と同様であるのでその説明
は省略する。
【0066】フラッシュPROM0、PROM1用のA
ND回路34a〜34dは、1つのフラッシュPROM
に対して2つ設けられており、一方のAND回路は2つ
の入力端を有する第1AND回路34a、34cであ
り、他方のAND回路は3つの入力端を有する第2AN
D回路34b、34dである。
【0067】前記第1AND回路34a、34cの入力
端は、−方がデコーダの2番目のターミナルT2に接続
され、他方がマニュアルスイッチSWに接続されてい
る。
【0068】第2AND回路34b、34dの入力端の
うち1つは、デコーダの3番目のターミナルT3に接続
され、1つは、ADD28に接続され、最後の1つは、
FF26に直接接続されている。
【0069】NOR回路は、1つのフラッシュPROM
に1つ設けられており、NOR回路36aの入力端は、
第1・第2AND回路34a、34bの出力端と接続さ
れており、出力端がフラッシュPROM0の/CS端に
接続されている。また、NOR回路36bの入力端は、
第1・第2AND回路34c、34dの出力端と接続さ
れており、出力端がフラッシュPROM1の/CS端に
接続されている。
【0070】一方、フラッシュPROM0、PROM1
には反転入力となる/WE端が設けられており、この/
WE端は、書き込み制御用のNAND回路30a2の出
力端に接続されている。書き込み制御用NAND回路3
0a2の入力端は3つあり、1つはデコーダの3番目の
ターミナルT3に接続され、1つはFF26に接続さ
れ、1つは書き込み制御ライン32に接続されている。
【0071】書き込みを行わない通常の場合には、FF
26の出力値Q=0にしてあるので、各フラッシュPR
OMの第2AND回路34b、34dは共にoffとな
っている。マニュアルスイッチSWは、フラッシュPR
OM用の第1AND回路34a、34cに接続されてい
るので、使用される(第2区画AS2に割り付けられ
る)ほうのフラッシュPROMはこのマニュアルスイッ
チSWにより決定される。
【0072】マニュアルスイッチSWで0が選択された
場合には、フラッシュPROM0の第1AND回路34
aではマニュアルスイッチSWの入力端にNOT回路を
設けているので、0が入力されるとonとなる。その結
果、NOR回路36aを介して、フラッシュPROM0
が選択されたことになる。このとき、フラッシュPRO
M1の第1AND回路34cでは、マニュアルスイッチ
SWから0が入力されるとoffとなるため選択されな
い。
【0073】これに対して、マニュアルスイッチSWで
1が選択された場合には、マニュアルスイッチSWから
各フラッシュPROMの第1AND回路34a、34c
に1が入力される。ここで、フラッシュPROM0の第
1AND回路34aにおけるマニュアルスイッチSWの
入力端にはNOT回路が設けられているので、1が入力
されるとoffとなる。その結果、AND回路がonと
なるのはフラッシュPROM1のみであるのでフラッシ
ュPROM1が選択される。
【0074】次に、プログラムの書き込み時には、FF
26に対して、CPU12からD。=1が出力され、F
F26の出力Qが0から1に変化する。そのため、マニ
ュアルスイッチSWとFF26の出力Qとが加算され
て、フラッシュPROM0、PROM1用の第2AND
回路34b、34dに入力される。ここで、前記第1の
実施形態にて説明したように、加算機ADD28では、
FF26の出力Q=b0=1であれば、加算機ADD2
8の出力Σ0はマニュアルスイッチSWからの入力a0と
は逆の値が出力されることになる。これにより一方のフ
ラッシュPROMの第1ANDと他方のフラッシュPR
OMの第2ANDがonとなり、他の2個のANDはo
ffとなる。その結果、新たなプログラムのダウンロー
ド時には、現状で使用されている(第2区画AS2に割
り付けられている)一方のフラッシュPROMではな
い、他方のフラッシュPROMが自動的に選択される
(第3区画AS3に割り付けられる)ことになる。
【0075】また、このとき、FF26の出力値Qは書
き込み制御用NAND回路30a2に出力されるので、
NAND回路30a2がonとなり、フラッシュPRO
M0、PROM1の/WE端に対して、新たなプログラ
ムが書き込まることになる。ただし実際にプログラムが
書き込まれるのは、/CS端で書き込み可能と選択され
たフラッシュPROMである。書き込み制御用NAND
回路30a2には第3区画選択信号も入っているので、
第2AND34b、34dで/CS端が選択されるフラ
ッシュPROMにのみ書き込みが限定されることにな
る。
【0076】上記一連のフラッシュPROM0、PRO
M1の切り換え動作をフローチャートで示すと図5のよ
うな11ステップとなるが、同じアドレス空間で入れ替
えるか別のアドレス空間に割り付けるかを除けば第1の
実施形態と同様であるので説明は省略する。
【0077】以上説明した第1、第2の実施形態では、
フラッシュPROMが2つの場合について例示したが、
3つ以上のフラッシュPROMを備える構成であっても
よい。このときの切換部の構成は基本的に上記各実施形
態と同一である。例えば、図8に示す場合には、フラッ
シュPROMがPROM0〜3の4つ設けられており、
ダウンロード方法が図6に示すような手法であっても、
切換部の構成は基本的に図7の構成と同様である。ただ
し、フラッシュPROMが4つあるので、マニュアルス
イッチはSWおよびSW1の2bit設けられていると
ともに、マニュアルスイッチSW、SW1およびADD
28aとAND回路42a〜42iとの間にはそれぞ
れ、2bitから4種類を選択するデコーダ40a、4
0bが設けられている点が異なる。
【0078】
【発明の効果】以上説明した通り、本発明の要旨によれ
ば、ダウンロード時にノイズや操作ミスが発生して正確
なダウンロードが失敗しても、あるいはダウンロードし
た更新情報そのものに問題があるような場合でも、元の
情報を残していることからその更新処理に基づく事故が
起きても直ぐに元の情報に切り換え可能であるので長時
間のシステムストップ等の致命的な事態になることを回
避できる。従って、メーカー側が現場に出向かずに電話
回線など通信装置を利用して遠隔地からダウンロード可
能となり、より容易、迅速かつ安全な情報の更新が可能
となった。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る情報記憶装置の
概略ブロック図である。
【図2】本発明の第1の実施形態に係るシステム2の概
略ブロック図である。
【図3】本発明の第1の実施形態に係るアドレス空間の
割り付け状態の説明図である。
【図4】本発明の第1の実施形態に係る切換部14の回
路図である。
【図5】本発明の第1の実施形態に係る情報記憶装置へ
のダウンロード方法を説明するフローチャートである。
【図6】本発明の第2の実施形態に係るアドレス空間の
割り付け状態の説明図である。
【図7】本発明の第2の実施形態に係る切換部14bの
回路図である。
【図8】本発明のその他の実施形態に係る切換部の回路
図である。
【符号の説明】
2 プリンタシステム 4 制御部 SW マニュアルスイッチ 12 CPU 14 切換部 PROM1,2 不揮発メモリ AS1〜AS4 アドレス空間

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 システム内に具備され、外部からの情報
    をダウンロードすることにより特定の情報の更新を可能
    とする情報記憶装置において、 前記情報を電気的に書込み可能な複数の不揮発メモリ
    と、 ダウンロード時に、更新される情報を格納している第1
    の不揮発メモリとは別の第2の不揮発メモリに、更新用
    の情報を格納可能とする切換部と、 前記更新前の情報を格納する第1の不揮発メモリと前記
    更新後の情報を格納する第2の不揮発メモリの何れかの
    不揮発メモリを選択的に使用可能に制御する制御部と、
    を備えていることを特徴とする情報記憶装置。
  2. 【請求項2】 前記制御部は、前記第1の不揮発メモリ
    と前記第2の不揮発メモリの何れかをマニュアルで選択
    するマニュアルスイッチを備えていることを特徴とする
    請求項1記載の情報記憶装置。
  3. 【請求項3】 前記切換部は、ダウンロード時に、現在
    使用している更新対象情報を格納する第1の不揮発メモ
    リとは別の第2の不揮発メモリに、更新用の情報を自動
    的に格納可能とすることを特徴とする請求項1または2
    記載の情報記憶装置。
  4. 【請求項4】 前記更新用の情報は、更新前の情報を格
    納する第1の不揮発メモリとは別のアドレス空間に、該
    更新後の情報を格納する第2の不揮発メモリを割り付る
    ためのアドレス空間情報を含み、 前記制御部は、前記アドレス空間情報に基づいて、更新
    前の情報を格納する第1の不揮発メモリとは別のアドレ
    ス空間に、更新後の情報を格納する第2の不揮発メモリ
    のアドレス空間を割り付るように制御することを特徴と
    する請求項1、2、または3記載の情報記憶装置。
  5. 【請求項5】 前記制御部は、前記切換部が現在使用し
    ている第1の不揮発メモリを、ダウンロードした更新情
    報を書き込む第2の不揮発メモリに切り換えた場合にの
    み、該更新情報を第2の不揮発メモリに格納することを
    特徴とする請求項1、2、または3記載のプログラム記
    憶装置。
  6. 【請求項6】 前記制御部は、ダウンロードした更新情
    報を格納する第2の不揮発メモリがアドレス空間に割り
    付けられた場合にのみ、該更新情報を第2の不揮発メモ
    リに格納することを特徴とする請求項5記載の情報記憶
    装置。
  7. 【請求項7】 システム内に具備され、外部からダウン
    ロードすることにより特定の情報の更新が可能な情報記
    憶装置に更新情報をダウンロードするダウンロード方法
    において、 ダウンロードを始める前に、アクセス可能な不揮発メモ
    リを、更新指定された使用中の第1の不揮発メモリか
    ら、ダウンロードする情報を格納する第1の不揮発メモ
    リ以外の第2の不揮発メモリに切り換える不揮発メモリ
    切換ステップと、 ダウンロードした更新情報を第2の不揮発メモリに書き
    込む情報書込ステップと、 前記情報書込ステップの終了後、アクセス可能な不揮発
    メモリを、第2の不揮発メモリから、第1の不揮発メモ
    リへ戻す再不揮発メモリ切換ステップを有することを特
    徴とする情報記憶装置へのダウンロード方法。
  8. 【請求項8】 システム内に具備され、外部からダウン
    ロードすることにより特定の情報の更新が可能な情報記
    憶装置に更新情報をダウンロードするダウンロード方法
    において、 ダウンロードを始める前に、更新指定された情報を格納
    する第1の不揮発メモリに割り付けられた第1のアドレ
    ス空間とは別の第2のアドレス空間に対して、ダウンロ
    ードする更新情報を格納する第2の不揮発メモリを割り
    付けるアドレス空間割付ステップと、 ダウンロードした更新情報を第2の不揮発メモリに書き
    込む情報書込ステップと、 前記情報書込ステップ終了後、第1の不揮発メモリを第
    1のアドレス空間から取り外すと共に、第2の不揮発メ
    モリに第1のアドレス空間を割り当てるアドレス空間交
    換ステップを有することを特徴とする情報記憶装置への
    ダウンロード方法。
JP29871999A 1999-10-20 1999-10-20 情報記憶装置およびそのダウンロード方法 Pending JP2001117780A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29871999A JP2001117780A (ja) 1999-10-20 1999-10-20 情報記憶装置およびそのダウンロード方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29871999A JP2001117780A (ja) 1999-10-20 1999-10-20 情報記憶装置およびそのダウンロード方法

Publications (1)

Publication Number Publication Date
JP2001117780A true JP2001117780A (ja) 2001-04-27

Family

ID=17863401

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29871999A Pending JP2001117780A (ja) 1999-10-20 1999-10-20 情報記憶装置およびそのダウンロード方法

Country Status (1)

Country Link
JP (1) JP2001117780A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052666A (ja) * 2005-08-18 2007-03-01 Fuji Xerox Co Ltd 画像処理装置
JP2008299378A (ja) * 2007-05-29 2008-12-11 Hitachi Ltd 移動体搭載装置のリモート保守方法およびシステム
JP2009253490A (ja) * 2008-04-03 2009-10-29 Nec Corp メモリシステムの暗号化方式
US7739490B2 (en) 2005-09-29 2010-06-15 Nec Corporation Control apparatus, upgrade method and program product of the same
JP2011128702A (ja) * 2009-12-15 2011-06-30 Sharp Corp 画像形成装置及びこれに用いるファームウェアのアップデート方法
US9229815B2 (en) 2012-06-21 2016-01-05 Canon Kabushiki Kaisha Information processing apparatus, program update method, and program
JP2016062151A (ja) * 2014-09-16 2016-04-25 京セラ株式会社 通信機器およびプログラム更新方法
JP2016143132A (ja) * 2015-01-30 2016-08-08 京セラドキュメントソリューションズ株式会社 ファームウェア更新システム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052666A (ja) * 2005-08-18 2007-03-01 Fuji Xerox Co Ltd 画像処理装置
US7739490B2 (en) 2005-09-29 2010-06-15 Nec Corporation Control apparatus, upgrade method and program product of the same
JP2008299378A (ja) * 2007-05-29 2008-12-11 Hitachi Ltd 移動体搭載装置のリモート保守方法およびシステム
JP2009253490A (ja) * 2008-04-03 2009-10-29 Nec Corp メモリシステムの暗号化方式
JP2011128702A (ja) * 2009-12-15 2011-06-30 Sharp Corp 画像形成装置及びこれに用いるファームウェアのアップデート方法
US9229815B2 (en) 2012-06-21 2016-01-05 Canon Kabushiki Kaisha Information processing apparatus, program update method, and program
JP2016062151A (ja) * 2014-09-16 2016-04-25 京セラ株式会社 通信機器およびプログラム更新方法
JP2016143132A (ja) * 2015-01-30 2016-08-08 京セラドキュメントソリューションズ株式会社 ファームウェア更新システム

Similar Documents

Publication Publication Date Title
JP4791061B2 (ja) 計算機システムのファームウェアのバージョン管理方法及び情報処理装置
KR100415371B1 (ko) 컴퓨터
US7739490B2 (en) Control apparatus, upgrade method and program product of the same
US20030126493A1 (en) Method for automatically duplicating a bios
CN110096300B (zh) 一种fpga程序文件备份管理系统、运行方法及升级方法
JP4302113B2 (ja) 車載制御装置
KR100634356B1 (ko) 메인 데이터를 안전하게 로딩하는 메모리 시스템 및 그것의 데이터 로딩 방법
JP3173407B2 (ja) フラッシュeeprom内蔵マイクロコンピュータ
JP2001117780A (ja) 情報記憶装置およびそのダウンロード方法
JPH11110218A (ja) ファームウェア書き換え装置
JP2002278850A (ja) 半導体装置
JP5084853B2 (ja) ファームウエア更新装置、通信装置、電子機器、ファームウエア更新システム、ファームウエア更新方法及びプログラム
CN113613954A (zh) 电子控制装置以及控制数据的设定方法
EP1461711B1 (en) Method and apparatus for modifying the contents of a revision identification register
JP2002175193A (ja) プログラム書き換え装置及びプログラム書き換え方法
JPH1063497A (ja) プログラム更新方法
JPH10187454A (ja) Bios書き換え方式
EP3584697B1 (en) Information processing device
JP2000293376A (ja) ブートプログラムの切替回路及び切替方法
JP2002024044A (ja) 制御装置
JP7491765B2 (ja) ファームウェア更新システムおよびファームウェア更新方法
JP7446537B1 (ja) プログラマブルロジックコントローラ、制御方法及びプログラム
JP2005332228A (ja) プログラム切替え制御装置
JPH0973437A (ja) マルチcpuシステム
JP2853593B2 (ja) ダウンロード装置