JP2007193596A - ファームウェア更新回路およびファームウェア更新方法 - Google Patents
ファームウェア更新回路およびファームウェア更新方法 Download PDFInfo
- Publication number
- JP2007193596A JP2007193596A JP2006011461A JP2006011461A JP2007193596A JP 2007193596 A JP2007193596 A JP 2007193596A JP 2006011461 A JP2006011461 A JP 2006011461A JP 2006011461 A JP2006011461 A JP 2006011461A JP 2007193596 A JP2007193596 A JP 2007193596A
- Authority
- JP
- Japan
- Prior art keywords
- address
- control device
- signal
- flash memory
- boot 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
【解決手段】識別部5とアドレス反転部4とを具備するファームウェア更新回路を用いる。識別部5は、ブートローダ及びメインプログラムを格納する不揮発性メモリ3におけるブートローダのアドレスに対応する識別データ5aを格納する。アドレス反転部4は、制御装置2がブートローダ及びメインプログラムの更新を実行するとき、ブートローダ及び更新用のブートローダの少なくとも一方が不揮発性メモリ3に存在するように、識別データ5aに基づいて、制御装置2が不揮発性メモリ3へ出力するブートローダの読出し用のアドレス10と更新用のブートローダの書込み用のアドレス10とが異なるように変更する。
【選択図】図1
Description
本発明は、既存のブートローダを格納した読出し用のアドレス(10)と更新用のブートローダを格納する書込み用のアドレス(10)とを異なるようにすることができる。それにより、不揮発性メモリ(3)において、既存のブートローダの格納領域と異なる領域に、更新用のブートローダを書き込むことができる。それにより、ファームウェア(ブートローダ+メインプログラム)の更新中に電源断などの障害が発生した場合においても、不揮発性メモリ(3)内に、既存のブートローダ及び更新用のブートローダの少なくとも一方が上書きされずに残ることができる。したがって、不揮発性メモリ(3)を交換することなく、ファームウェア更新を再実行することができる。
図10を参照すると、クロック300は、コンピュータ装置1内のクロック信号を示す。時間は、本実施例の説明のための時間の経過を表し、クロック300の1クロックごとに1加算される。
図11を参照すると、クロック300はコンピュータ装置1内のクロック信号を示す。時間は、本実施例の説明のための時間の経過を表し、クロック300の1クロックごとに1加算される。ただし、T0〜T8までは図10の正常終了時と同一であるため、それらの説明は省略する。
1a ファームウエア更新回路
2 制御装置
3 フラッシュメモリ
4 アドレス反転回路
5 アドレス識別フラグ回路
5a アドレス識別フラグ
6 タイムアウト監視回路
7 ブートローダ
8 メインプログラム
10 アドレス信号
10a 入力アドレス信号
11 データ信号
12 PC(Personal Computer)
13 更新用ファームウェア
14 LAN
15 更新フラグ回路
15a 更新フラグ
40 インバータ
41〜44 AND回路
45 OR回路
100、104 アドレス信号(0)
101、105 アドレス信号(1)
102、106 アドレス信号(2)
103、107 アドレス信号(3)
Claims (11)
- ブートローダ及びメインプログラムを格納する不揮発性メモリにおける前記ブートローダのアドレスに対応する識別データを格納する識別部と、
制御装置が前記ブートローダ及び前記メインプログラムの更新を実行するとき、前記ブートローダ及び更新用のブートローダの少なくとも一方が前記不揮発性メモリに存在するように、前記識別データに基づいて、前記制御装置が前記不揮発性メモリへ出力する前記ブートローダの読出し用のアドレスと前記更新用のブートローダの書込み用のアドレスとが異なるように変更するアドレス反転部と
を具備する
ファームウェア更新回路。 - 請求項1に記載のファームウェア更新回路において、
前記アドレス反転部は、
前記更新のとき、前記識別データに基づいて、前記読出し用のアドレスについて反転及び非反転のいずれか一方を行い、前記書込み用のアドレスについて他方を行う
ファームウェア更新回路。 - 請求項2に記載のファームウェア更新回路において、
前記アドレス反転部は、
前記識別データが第1状態の場合、前記読出し用のアドレスについて非反転を行い、前記書込み用のアドレスについて反転を行う
ファームウェア更新回路。 - 請求項2又は3に記載のファームウェア更新回路において、
前記アドレス反転部は、
前記識別データが第2状態の場合、前記読出し用のアドレスについて反転を行い、前記書込み用のアドレスについて非反転を行う
ファームウェア更新回路。 - 請求項1乃至4のいずれか一方に記載のファームウェア更新回路において、
前記更新のとき、当該更新に関するタイムアウトを監視する監視部を更に具備し、
前記識別部は、前記監視部が前記タイムアウトを検出したとき、前記識別データを前記タイムアウト前の値から変更し、
前記アドレス反転部は、変更された前記識別データに基づいて、前記読出し用のアドレス及び前記書込み用のアドレスの反転及び非反転について、それぞれ前記タイムアウト前のものから変更する
ファームウェア更新回路。 - 制御装置と、
ブートローダ及びメインプログラムを格納する不揮発性メモリと、
前記制御装置と前記不揮発性メモリとに通信可能に接続され、請求項1乃至5のいずれか一項に記載されたファームウェア更新回路と
を具備する
情報処理装置。 - (a)制御装置が不揮発性メモリに格納されたブートローダ及びメインプログラムの更新を実行するとき、前記ブートローダ及び更新用のブートローダの少なくとも一方が前記不揮発性メモリに存在するように、前記不揮発性メモリおける前記ブートローダのアドレスに対応する識別データに基づいて、前記制御装置が出力する前記ブートローダの読出し用のアドレスについて、変更及び非変更のいずれか一方を行い前記不揮発性メモリへ送信するステップと、
(b)前記識別データに基づいて、前記制御装置が出力する前記更新用のブートローダの書込み用のアドレスについて、前記変更及び非変更のうちの他方を行い前記不揮発性メモリへ送信するステップと
を具備する
ファームウェア更新方法。 - 請求項7に記載のファームウェア更新方法において、
前記(a)ステップは、
(a1)前記更新のとき、前記識別データに基づいて、前記読出し用のアドレスについて反転及び非反転のいずれか一方を行うステップを備え、
前記(b)ステップは、
(b1)前記更新のとき、前記識別データに基づいて、前記書込み用のアドレスについて前記反転及び非反転のうちの他方を行うステップを備える
ファームウェア更新方法。 - 請求項8に記載のファームウェア更新方法において、
前記(a1)ステップは、
(a11)前記識別データが第1状態の場合、前記読出し用のアドレスについて非反転を行うステップを含み、
前記(b1)ステップは、
(b11)前記識別データが第1状態の場合、前記書込み用のアドレスについて反転を行うステップを含む
ファームウェア更新方法。 - 請求項8又は9に記載のファームウェア更新方法において、
前記(a1)ステップは、
(a12)前記識別データが第2状態の場合、前記読出し用のアドレスについて反転を行うステップを含み、
前記(b1)ステップは、
(b12)前記識別データが第2状態の場合、前記書込み用のアドレスについて非反転を行うステップを含む
ファームウェア更新方法。 - 請求項7乃至10のいずれか一方に記載のファームウェア更新方法において、
(c)前記更新のとき、当該更新に関するタイムアウトを監視するステップと、
(d)前記タイムアウトを検出したとき、前記識別データを前記タイムアウト前の値から変更するステップと、
(e)変更された前記識別データに基づいて、前記(a)ステップ及び前記(b)ステップを実行するステップと
を更に具備する
ファームウェア更新方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006011461A JP4868216B2 (ja) | 2006-01-19 | 2006-01-19 | ファームウェア更新回路およびファームウェア更新方法 |
US11/623,664 US20070169098A1 (en) | 2006-01-19 | 2007-01-16 | Firmware updating circuit and firmware updating method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006011461A JP4868216B2 (ja) | 2006-01-19 | 2006-01-19 | ファームウェア更新回路およびファームウェア更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007193596A true JP2007193596A (ja) | 2007-08-02 |
JP4868216B2 JP4868216B2 (ja) | 2012-02-01 |
Family
ID=38264898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006011461A Expired - Fee Related JP4868216B2 (ja) | 2006-01-19 | 2006-01-19 | ファームウェア更新回路およびファームウェア更新方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070169098A1 (ja) |
JP (1) | JP4868216B2 (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009116195A1 (en) | 2008-03-21 | 2009-09-24 | Kabushiki Kaisha Toshiba | Data updating method, memory system and memory device |
WO2011114476A1 (ja) * | 2010-03-17 | 2011-09-22 | 富士通株式会社 | マルチコアプロセッサシステム、通知プログラム、および通知方法 |
WO2012077604A1 (ja) * | 2010-12-08 | 2012-06-14 | 三洋電機株式会社 | 処理装置、プログラム更新方法、およびプログラム |
JP2013073424A (ja) * | 2011-09-28 | 2013-04-22 | Kyocera Document Solutions Inc | 情報処理装置及び情報処理方法 |
US8694984B2 (en) | 2009-04-03 | 2014-04-08 | Samsung Electronics Co., Ltd. | Memory apparatus and method of updating firmware of the memory apparatus |
US9210823B2 (en) | 2011-03-15 | 2015-12-08 | Panasonic Intellectual Property Management Co., Ltd. | Mobile terminal having board support structure |
CN113396374A (zh) * | 2018-12-13 | 2021-09-14 | 美光科技公司 | 基于固件状态的自动掉电 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008033827A (ja) * | 2006-07-31 | 2008-02-14 | Hitachi Ltd | ストレージ装置及びプログラム更新方法 |
JP4903071B2 (ja) | 2007-03-15 | 2012-03-21 | 株式会社リコー | 情報処理装置、ソフトウェア更新方法及び画像処理装置 |
US7925877B2 (en) * | 2007-09-27 | 2011-04-12 | Texas Instruments Incorporated | Method, system and apparatus for providing a boot loader of an embedded system |
US9069990B2 (en) * | 2007-11-28 | 2015-06-30 | Nvidia Corporation | Secure information storage system and method |
US8392762B2 (en) * | 2008-02-04 | 2013-03-05 | Honeywell International Inc. | System and method for detection and prevention of flash corruption |
US8719585B2 (en) * | 2008-02-11 | 2014-05-06 | Nvidia Corporation | Secure update of boot image without knowledge of secure key |
US9069706B2 (en) * | 2008-02-11 | 2015-06-30 | Nvidia Corporation | Confidential information protection system and method |
US9158896B2 (en) * | 2008-02-11 | 2015-10-13 | Nvidia Corporation | Method and system for generating a secure key |
US20090204801A1 (en) * | 2008-02-11 | 2009-08-13 | Nvidia Corporation | Mechanism for secure download of code to a locked system |
US20090204803A1 (en) * | 2008-02-11 | 2009-08-13 | Nvidia Corporation | Handling of secure storage key in always on domain |
US9613215B2 (en) | 2008-04-10 | 2017-04-04 | Nvidia Corporation | Method and system for implementing a secure chain of trust |
US8245214B2 (en) * | 2008-06-05 | 2012-08-14 | International Business Machines Corporation | Reliably updating computer firmware while performing command and control functions on a power/thermal component in a high-availability, fault-tolerant, high-performance server |
US8954552B2 (en) * | 2008-09-18 | 2015-02-10 | Dell Products, Lp | Method of using an information handling system to receive an update while in abare metal state, and an information handling system and machine-executable code for carrying out the method |
JP5383516B2 (ja) * | 2010-01-06 | 2014-01-08 | キヤノン株式会社 | 画像形成装置及びそのファームウェア更新方法、並びにプログラム |
TWI528285B (zh) * | 2011-12-20 | 2016-04-01 | 緯創資通股份有限公司 | 製造系統及韌體燒錄方法 |
US9489924B2 (en) | 2012-04-19 | 2016-11-08 | Nvidia Corporation | Boot display device detection and selection techniques in multi-GPU devices |
JP5939896B2 (ja) * | 2012-06-12 | 2016-06-22 | キヤノン株式会社 | 画像形成装置 |
US9208072B2 (en) | 2013-06-25 | 2015-12-08 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Firmware storage and maintenance |
FR3010553B1 (fr) | 2013-09-10 | 2015-09-04 | Sagemcom Broadband Sas | Procede de mise a jour d'un logiciel de demarrage d'un dispositif multiprocesseur |
EP3060980A4 (en) * | 2013-10-24 | 2017-06-28 | Intel Corporation | Techniques for pre-os image rewriting to provide cross-architecture support, security introspection, and performance optimization |
US9785362B2 (en) * | 2015-07-16 | 2017-10-10 | Qualcomm Incorporated | Method and apparatus for managing corruption of flash memory contents |
US10977050B2 (en) * | 2018-01-11 | 2021-04-13 | Macronix International Co., Ltd. | Method for managing system boot code memory, memory device and electronic system using the same |
KR20200089939A (ko) * | 2019-01-18 | 2020-07-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그 동작 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001209543A (ja) * | 2000-01-28 | 2001-08-03 | Nec Ic Microcomput Syst Ltd | フラッシュ・マイコンにおけるプログラム書き換え方法 |
JP2002222084A (ja) * | 2001-01-24 | 2002-08-09 | Fujitsu Ltd | 半導体記憶装置、セクタアドレス変換回路、アドレス変換方法及び半導体記憶装置の使用方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5568641A (en) * | 1995-01-18 | 1996-10-22 | Hewlett-Packard Company | Powerfail durable flash EEPROM upgrade |
US6088759A (en) * | 1997-04-06 | 2000-07-11 | Intel Corporation | Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture |
US6275931B1 (en) * | 1998-06-22 | 2001-08-14 | Elsag International N.V. | Method and apparatus for upgrading firmware boot and main codes in a programmable memory |
US20030217357A1 (en) * | 2002-05-14 | 2003-11-20 | Parry Travis J. | Monitoring firmware |
US7730326B2 (en) * | 2004-11-12 | 2010-06-01 | Apple Inc. | Method and system for updating firmware stored in non-volatile memory |
US7523350B2 (en) * | 2005-04-01 | 2009-04-21 | Dot Hill Systems Corporation | Timer-based apparatus and method for fault-tolerant booting of a storage controller |
-
2006
- 2006-01-19 JP JP2006011461A patent/JP4868216B2/ja not_active Expired - Fee Related
-
2007
- 2007-01-16 US US11/623,664 patent/US20070169098A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001209543A (ja) * | 2000-01-28 | 2001-08-03 | Nec Ic Microcomput Syst Ltd | フラッシュ・マイコンにおけるプログラム書き換え方法 |
JP2002222084A (ja) * | 2001-01-24 | 2002-08-09 | Fujitsu Ltd | 半導体記憶装置、セクタアドレス変換回路、アドレス変換方法及び半導体記憶装置の使用方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009116195A1 (en) | 2008-03-21 | 2009-09-24 | Kabushiki Kaisha Toshiba | Data updating method, memory system and memory device |
US8694984B2 (en) | 2009-04-03 | 2014-04-08 | Samsung Electronics Co., Ltd. | Memory apparatus and method of updating firmware of the memory apparatus |
WO2011114476A1 (ja) * | 2010-03-17 | 2011-09-22 | 富士通株式会社 | マルチコアプロセッサシステム、通知プログラム、および通知方法 |
JPWO2011114476A1 (ja) * | 2010-03-17 | 2013-06-27 | 富士通株式会社 | マルチコアプロセッサシステム、通知プログラム、および通知方法 |
US9235426B2 (en) | 2010-03-17 | 2016-01-12 | Fujitsu Limited | Multicore processor system, computer product, and notification method for updating operating system |
WO2012077604A1 (ja) * | 2010-12-08 | 2012-06-14 | 三洋電機株式会社 | 処理装置、プログラム更新方法、およびプログラム |
US9210823B2 (en) | 2011-03-15 | 2015-12-08 | Panasonic Intellectual Property Management Co., Ltd. | Mobile terminal having board support structure |
JP2013073424A (ja) * | 2011-09-28 | 2013-04-22 | Kyocera Document Solutions Inc | 情報処理装置及び情報処理方法 |
CN113396374A (zh) * | 2018-12-13 | 2021-09-14 | 美光科技公司 | 基于固件状态的自动掉电 |
US11847014B2 (en) | 2018-12-13 | 2023-12-19 | Micron Technology, Inc. | Automated power down based on state of firmware |
CN113396374B (zh) * | 2018-12-13 | 2023-12-19 | 美光科技公司 | 基于固件状态的自动掉电 |
Also Published As
Publication number | Publication date |
---|---|
US20070169098A1 (en) | 2007-07-19 |
JP4868216B2 (ja) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4868216B2 (ja) | ファームウェア更新回路およびファームウェア更新方法 | |
US7900036B2 (en) | System and method for implementing boot/recovery on a data processing sysem | |
US7313683B2 (en) | Computer system and method which boots from a bootup-memory-image stored in nonvolatile memory and copies data within an address range of predetermined width to main memory so that the system boots quickly after initialization | |
US5568641A (en) | Powerfail durable flash EEPROM upgrade | |
TWI501253B (zh) | 於裝置開機期間處置來自非揮發性記憶體之錯誤 | |
US6836859B2 (en) | Method and system for version control in a fault tolerant system | |
EP2124151B1 (en) | Information processing system and method for starting/recovering the system | |
WO2000019317A1 (en) | Protection of boot block code while allowing write accesses to the boot block | |
JPH11110306A (ja) | 記憶装置、データ処理システム並びにデータ処理方法 | |
US10977050B2 (en) | Method for managing system boot code memory, memory device and electronic system using the same | |
US10108469B2 (en) | Microcomputer and microcomputer system | |
US7096351B2 (en) | Single-chip microcomputer and boot region switching method thereof | |
US6925522B2 (en) | Device and method capable of changing codes of micro-controller | |
EP1589427B1 (en) | Boot control system | |
JP4483876B2 (ja) | 二重化システムにおける記憶装置の制御方法 | |
US20050055530A1 (en) | Method and apparatus for protecting a specific memory section | |
JP2000293376A (ja) | ブートプログラムの切替回路及び切替方法 | |
JP2000235483A (ja) | 情報処理装置 | |
KR100575927B1 (ko) | 이동통신 단말기에서 부팅 방법 | |
JP4165423B2 (ja) | コアi/oカードを実装したシステムボード | |
US7069471B2 (en) | System PROM integrity checker | |
JPH08185354A (ja) | メモリ管理装置 | |
CN117894362A (zh) | 一次性可编程存储器修改方法、装置和电子设备 | |
JP2010231489A (ja) | マイクロコード書き換え方法 | |
JP2009301479A (ja) | マイクロコンピュータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110725 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110922 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111020 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4868216 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141125 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |