JPH11338690A - フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法 - Google Patents
フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法Info
- Publication number
- JPH11338690A JPH11338690A JP14570798A JP14570798A JPH11338690A JP H11338690 A JPH11338690 A JP H11338690A JP 14570798 A JP14570798 A JP 14570798A JP 14570798 A JP14570798 A JP 14570798A JP H11338690 A JPH11338690 A JP H11338690A
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- address
- flash memory
- program
- specific area
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
っても、システムを確実に立ち上げることができ、フラ
ッシュメモリ上のファームウエアを書き換えることがで
きるとともに、システムのコストダウンを実現できるよ
うにする。 【解決手段】 フラッシュメモリ12内の、最上位アド
レスが1である上位アドレス特定領域に、ファームウエ
アを格納し、最上位アドレスが0である下位アドレス特
定領域に、システム立ち上げプログラムおよびファーム
ウエア書き換えプログラムを格納する。フラッシュメモ
リ12の最上位アドレスは、CPU11のアドレスバス
11aではなく、出力ポートOcによって切り替えられ
るようにするとともに、電源投入時またはリセット時、
出力ポートOcからは0が出力されて、下位アドレス側
から動作を開始するようにする。したがって、ファーム
ウエア書き換え中に電源がオフになっても、電源を再投
入することによって、システムを確実に立ち上げること
ができ、ファームウエアの書き換えを行うことができ
る。
Description
が格納されたフラッシュメモリ、フラッシュメモリ上の
ファームウエアを実行するファームウエア使用システム
装置、およびフラッシュメモリ上のファームウエアを書
き換えるファームウエア書き換え方法に関する。
格納し、そのファームウエアをCPUにより実行するシ
ステムにおいて、システム内のCPUなどによって、フ
ラッシュメモリ上のファームウエアを書き換える方法と
しては、ファームウエアを書き換えるプログラムを、C
PU内部など、フラッシュメモリ以外の記憶手段に格納
する方法と、フラッシュメモリ内に、フラッシュメモリ
自身を書き換えるプログラムやファームウエアを、特に
領域を制限しないで格納する方法とが、考えられてい
る。
の、フラッシュメモリ上のファームウエアを書き換える
プログラムを、CPU内部など、フラッシュメモリ以外
の記憶手段に格納する方法は、CPUの選択の条件が厳
しくなり、またはフラッシュメモリ以外の記憶手段を必
要とするので、システムのコストアップを来たす欠点が
ある。
ラッシュメモリ自身を書き換えるプログラムやファーム
ウエアを、特に領域を制限しないで格納する方法は、フ
ラッシュメモリの書き換え中に、システムの電源がオフ
になる異常が発生したとき、システムを立ち上げるプロ
グラムが、いまだ完全に記述されていない場合があり、
電源を再投入しても、システムが立ち上がらなくなる可
能性がある。
ウンを実現できるとともに、ファームウエア書き換え中
に電源がオフになっても、電源を再投入することによっ
て、システムを確実に立ち上げることができ、フラッシ
ュメモリ上のファームウエアを書き換えることができる
ようにしたものである。
ュメモリ内の第1特定領域に、ファームウエアを格納
し、第1特定領域とは別の第2特定領域に、システム立
ち上げプログラムおよびファームウエア書き換えプログ
ラムを格納する。
ステム装置においては、CPU内部など、フラッシュメ
モリ以外の記憶手段ではなく、ファームウエアが格納さ
れるフラッシュメモリ内に、そのファームウエアを書き
換えるプログラムやシステムを立ち上げるプログラムが
格納されるので、システムのコストダウンを実現するこ
とができる。
テムの電源がオフになっても、ファームウエアが格納さ
れた第1特定領域とは別の第2特定領域に、システムを
立ち上げるプログラムおよびファームウエアを書き換え
るプログラムが格納されているので、電源を再投入した
とき、システムが第2特定領域側から立ち上がるように
することによって、システムを確実に立ち上げることが
でき、ファームウエアの書き換えを行うことができる。
の一実施形態を示す。この実施形態のシステム装置は、
システム10として示すように、CPU11、フラッシ
ュメモリ12、EEPROM13などを備え、CPU1
1に、ファームウエア送信手段20として、例えばパソ
コン(パーソナルコンピュータ)が接続される。
には、最上位アドレスが1である上位アドレス領域に、
ファームウエアを格納し、最上位アドレスが0である下
位アドレス領域に、システム立ち上げプログラムおよび
ファームウエア書き換えプログラムを格納する。
アドレスは、CPU11のアドレスバス11aではな
く、出力ポートOcによって切り替えられるようにする
とともに、電源投入時またはリセット時、出力ポートO
cからは0が出力されるようにする。
アドレスバス11a、最上位アドレス制御用の制御バス
11c、データバス11d、およびアウトプットイネー
ブルやライトイネーブルなどの制御用の制御バス11e
によって接続される。
フラッシュメモリ12の上位アドレス領域にファームウ
エアが正しく記述されているか否かを示す情報が書き込
まれる。CPU11とEEPROM13とは、バス11
rによって接続される。
ファームウエアを読み込んで、入出力ポートIOsに接
続されたシステム制御バス11sを介してシステム各部
を制御し、パソコン20から書き換え用の新たなファー
ムウエアを受信して、フラッシュメモリ12の書き換え
を行う、などの処理をする。
アドレスマップを示し、最上位アドレスが0である、ア
ドレス00000からアドレス0FFFFまでの下位ア
ドレス領域A0に、システム立ち上げプログラムおよび
ファームウエア書き換えプログラムを格納し、最上位ア
ドレスが1である、アドレス10000からアドレス1
FFFFまでの上位アドレス領域A1に、ファームウエ
アを格納する。
フラッシュメモリ12のアドレスマップとしては、上記
の下位アドレス領域A0中の、アドレス01000から
アドレス0EFFFまでの領域A0xを、システム立ち
上げプログラムおよびファームウエア書き換えプログラ
ムを格納する下位アドレス特定領域とし、上記の上位ア
ドレス領域A1中の、アドレス11000からアドレス
1EFFFまでの領域A1xを、ファームウエアを格納
する上位アドレス特定領域とするとともに、CPU11
のアドレスマップとしては、アドレス1000からアド
レスEFFFまでを外部ROM領域とし、アドレスF0
00からアドレスFFFFまでを内部RAM領域とす
る。
および図5の下位アドレス実行処理30および図6の上
位アドレス実行処理50で示すように、以下のように動
作する。
1に示すように、システム10に電源が投入され、また
はシステム10がリセットされると、上述したようにフ
ラッシュメモリ12の最上位アドレスを設定するCPU
11の出力ポートOcが0となることによって、下位ア
ドレス側から動作を開始する。
U11は、まずステップ32で、自分自身を初期設定
し、次にステップ33に進んで、EEPROM13に記
録されている情報から、フラッシュメモリ12にファー
ムウエアが正しく記述されているか否かを判断する。
正しく記述されている場合には、CPU11は、ステッ
プ33からステップ34に進んで、「最上位アドレスを
0から1に変更し、ファームウエアの先頭から始める」
というプログラムを、図3に示した内部RAM領域に記
述し、さらにステップ35に進んで、その内部RAM領
域に記述したプログラムを実行して、プログラムカウン
タを上位アドレス側に移す。
のは、フラッシュメモリ12上のプログラムによって、
「出力ポートOcを0から1に変更し、最上位アドレス
を変更する」こと、および「プログラムカウンタをファ
ームウエアの先頭に移す」ことは、不可能であり、プロ
グラムが暴走してしまうからである。
234で最上位アドレスを0から1に変更すると、プロ
グラムカウンタはアドレス11235に移ってしまい、
アドレス01235を実行することはできない。これに
対して、内部RAM領域上で行えば、最上位アドレスを
変更しても、プログラムカウンタは次のアドレスを実行
することができる。
が上位アドレス側に移ると、図6のステップ51に示す
ように、下位アドレス側から上位アドレス側に移動した
ことになり、上位アドレス実行処理50が開始される。
この上位アドレス実行処理50では、CPU11は、ま
ずステップ52で、自分自身を初期設定し、次にステッ
プ53に進んで、システム10を立ち上げる。
ファームウエア書き換え要求を確認しながら、通常のシ
ステム制御を行う。すなわち、ステップ54で、システ
ム10を制御し、次にステップ55に進んで、パソコン
20からファームウエアの書き換え要求があるか否かを
判断し、書き換え要求がなければ、ステップ54に戻っ
て、システム10を制御する。
御中にパソコン20からファームウエアの書き換え要求
があると、CPU11は、ステップ55からステップ5
6に進んで、まず、フラッシュメモリ12上のファーム
ウエアを書き換えることを示すために、フラッシュメモ
リ12にファームウエアが正しく記述されていないこと
をEEPROM13に記録する。すなわち、ファームウ
エアが正しく記述されていないことを示す情報をEEP
ROM13に書き込む。
および35で下位アドレス側から上位アドレス側に移動
したときと同様に、ステップ57に進んで、「最上位ア
ドレスを1から0に変更し、ファームウエアの先頭から
始める」というプログラムを、内部RAM領域に記述
し、さらにステップ58に進んで、その内部RAM領域
に記述したプログラムを実行して、プログラムカウンタ
を下位アドレス側に移す。内部RAM領域上で動作させ
るのは、上述したのと同じ理由による。
ンタが下位アドレス側に移ると、図4のステップ31に
示すように、上位アドレス側から下位アドレス側に移動
したことになり、下位アドレス実行処理30が開始され
る。
した電源投入時またはリセット時と同様に、CPU11
は、まずステップ32で、自分自身を初期設定し、次に
ステップ33に進んで、EEPROM13に記録されて
いる情報から、フラッシュメモリ12にファームウエア
が正しく記述されているか否かを判断する。
の移動時には、図6のステップ56でフラッシュメモリ
12にファームウエアが正しく記述されていないことを
示す情報がEEPROM13に書き込まれているので、
CPU11は、ステップ33でファームウエアが正しく
記述されていないと判断し、ステップ33から図5のス
テップ36に進んで、システム10を立ち上げ、パソコ
ン20からの書き換え用の新たなファームウエアを受信
できる状態とする。
の新たなファームウエアの一部を受信し、さらにステッ
プ38に進んで、「受信したデータを上位アドレス特定
領域に書き込む」というプログラムを、内部RAM領域
に記述し、実行する。
たなファームウエアを全て受信し、フラッシュメモリ1
2の上位アドレス特定領域A1xに書き込んだか否かを
判断し、全て受信し、書き込んでいなければ、ステップ
37および38に戻って、ファームウエアの一部データ
の受信および書き込みを繰り返す。
し、フラッシュメモリ12の上位アドレス特定領域A1
xに書き込んだら、CPU11は、ステップ39からス
テップ41に進んで、まず、フラッシュメモリ12にフ
ァームウエアが正しく記述されていることをEEPRO
M13に記録する。すなわち、ファームウエアが正しく
記述されていることを示す情報をEEPROM13に書
き込む。
4のステップ34と同様に、「最上位アドレスを0から
1に変更し、ファームウエアの先頭から始める」という
プログラムを、内部RAM領域に記述し、さらにステッ
プ43に進んで、図4のステップ35と同様に、その内
部RAM領域に記述したプログラムを実行して、プログ
ラムカウンタを上位アドレス側に移す。
した場合〕図5のステップ36〜39におけるファーム
ウエア書き換え中に、システム10の電源がオフになっ
ても、フラッシュメモリ12の下位アドレス特定領域A
0xの内容には全く影響がない。そのため、電源を再投
入すると、電源投入時にはフラッシュメモリ12の最上
位アドレスを設定するCPU11の出力ポートOcが0
となることによって、図4のステップ31に示すよう
に、下位アドレス側から動作を開始し、CPU11は、
まずステップ32で、自分自身を初期設定し、次にステ
ップ33に進んで、EEPROM13に記録されている
情報から、フラッシュメモリ12にファームウエアが正
しく記述されているか否かを判断する。
前に図6のステップ56でフラッシュメモリ12にファ
ームウエアが正しく記述されていないことを示す情報が
EEPROM13に書き込まれているので、CPU11
は、ステップ33でファームウエアが正しく記述されて
いないと判断し、ステップ33から図5のステップ36
に進んで、システム10を立ち上げ、パソコン20から
の書き換え用の新たなファームウエアを受信できる状態
とし、さらにステップ37,38に進んで、その新たな
ファームウエアを受信し、フラッシュメモリ12の上位
アドレス特定領域A1xに書き込む。
に、システム10の電源がオフになっても、電源を再投
入することによって、システム10は確実に立ち上が
り、フラッシュメモリ12上のファームウエアを書き換
えることができる。
ァームウエア書き換え中に電源がオフになっても、電源
を再投入することによって、システムを確実に立ち上げ
ることができ、フラッシュメモリ上のファームウエアを
書き換えることができるとともに、システムのコストダ
ウンを実現することができる。
である。
アドレスマップを示す図である。
Uのアドレスマップの具体例を示す図である。
の一部を示すフローチャートである。
ーチャートである。
を示すフローチャートである。
…出力ポート、12…フラッシュメモリ、13…EEP
ROM、20…パソコン(ファームウエア送信手段)、
A0x…下位アドレス特定領域、A1x…上位アドレス
特定領域
Claims (5)
- 【請求項1】内部の第1特定領域にファームウエアが格
納され、第1特定領域とは別の第2特定領域にシステム
立ち上げプログラムおよびファームウエア書き換えプロ
グラムが格納されたフラッシュメモリ。 - 【請求項2】請求項1のフラッシュメモリを備え、前記
第1特定領域上のファームウエアを実行するとともに、
前記第2特定領域上のファームウエア書き換えプログラ
ムによって前記第1特定領域上のファームウエアを書き
換えるファームウエア使用システム装置。 - 【請求項3】請求項2のファームウエア使用システム装
置において、 当該システム装置の電源投入時には、前記第2特定領域
側から立ち上がり、前記第1特定領域にファームウエア
が正しく記述されていることが確認されたら、前記第1
特定領域側に移行するファームウエア使用システム装
置。 - 【請求項4】請求項2のファームウエア使用システム装
置において、 前記第1特定領域側で動作中に、ファームウエアの書き
換えが必要になったら、前記第2特定領域側に移行する
ファームウエア使用システム装置。 - 【請求項5】内部の第1特定領域にファームウエアが格
納され、第1特定領域とは別の第2特定領域にシステム
立ち上げプログラムおよびファームウエア書き換えプロ
グラムが格納されたフラッシュメモリの、前記第1特定
領域上のファームウエアを、前記第2特定領域上のファ
ームウエア書き換えプログラムによって書き換えるファ
ームウエア書き換え方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14570798A JPH11338690A (ja) | 1998-05-27 | 1998-05-27 | フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14570798A JPH11338690A (ja) | 1998-05-27 | 1998-05-27 | フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11338690A true JPH11338690A (ja) | 1999-12-10 |
Family
ID=15391271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14570798A Pending JPH11338690A (ja) | 1998-05-27 | 1998-05-27 | フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11338690A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7418542B2 (en) | 2004-10-14 | 2008-08-26 | Sharp Kabushiki Kaisha | Rewritable, nonvolatile memory, electronic device, method of rewriting rewritable, nonvolatile memory, and storage medium having stored thereon rewrite program |
US7676670B2 (en) | 2005-09-08 | 2010-03-09 | Sony Corporation | Power supply control device and method, program, and recording/playback apparatus |
-
1998
- 1998-05-27 JP JP14570798A patent/JPH11338690A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7418542B2 (en) | 2004-10-14 | 2008-08-26 | Sharp Kabushiki Kaisha | Rewritable, nonvolatile memory, electronic device, method of rewriting rewritable, nonvolatile memory, and storage medium having stored thereon rewrite program |
US7676670B2 (en) | 2005-09-08 | 2010-03-09 | Sony Corporation | Power supply control device and method, program, and recording/playback apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3838840B2 (ja) | コンピュータ | |
JP2007122627A (ja) | 情報処理装置及びメモリ初期化方法 | |
JP3830867B2 (ja) | シングルチップマイクロコンピュータおよびそのブート領域切り替え方法 | |
JP2000163268A (ja) | コンピュータ | |
JP2005234872A (ja) | コンピュータ、コンピュータ起動方法、biosプログラムおよび情報記憶媒体 | |
JP3805195B2 (ja) | プログラム書き換え装置及びプログラム書き換え方法 | |
JP2001034822A (ja) | 自動販売機の制御装置 | |
JPH11338690A (ja) | フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法 | |
JPH11265283A (ja) | 記憶装置におけるファームウェアの修正方法及び記憶装置 | |
JPH10333898A (ja) | マイクロコンピュータ | |
JPH09146774A (ja) | パーソナルコンピュータシステム | |
JPH08305561A (ja) | ファームウエアダウンロード方法とその装置 | |
JP2005050079A (ja) | サーバ装置、bios更新プログラム、初期起動プログラム、及びbios更新方法 | |
JP2001273143A (ja) | 電子制御装置 | |
JP2003288213A (ja) | ブートプログラム記憶装置、電子機器のブートプログラム記憶方法 | |
JP2005128613A (ja) | 画像形成装置 | |
JPH10283172A (ja) | フラッシュromデータ書き換え方式 | |
JPH08161160A (ja) | 光ディスク再生装置のファームウエア更新方法 | |
JPH09265399A (ja) | Bios書き込み方法 | |
JP2004355310A (ja) | 画像処理装置 | |
JP2003122575A (ja) | 情報処理装置 | |
JPH08101794A (ja) | ファームウェアのプログラム書き換え方式 | |
JP2003242046A (ja) | 情報処理装置、情報処理装置の動作方法及びプログラム | |
JP2006243810A (ja) | マイクロコンピュータシステム | |
KR19990077915A (ko) | 이중 운영 시스템을 가지는 컴퓨터 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070626 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070726 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070925 |
|
A131 | Notification of reasons for refusal |
Effective date: 20071106 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080312 |