JP2008009798A - ソフトウェア修正装置 - Google Patents

ソフトウェア修正装置 Download PDF

Info

Publication number
JP2008009798A
JP2008009798A JP2006180667A JP2006180667A JP2008009798A JP 2008009798 A JP2008009798 A JP 2008009798A JP 2006180667 A JP2006180667 A JP 2006180667A JP 2006180667 A JP2006180667 A JP 2006180667A JP 2008009798 A JP2008009798 A JP 2008009798A
Authority
JP
Japan
Prior art keywords
program
rom
correction
data
read
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
JP2006180667A
Other languages
English (en)
Inventor
Takehiko Nitta
武彦 新田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006180667A priority Critical patent/JP2008009798A/ja
Publication of JP2008009798A publication Critical patent/JP2008009798A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ROMコレクション機能を搭載したマイクロコンピュータと修正プログラムを格納した不揮発性メモリとを備えた家電製品等の応用システムにおいて、修正プログラムデータの書き込みが途中で失敗し、プログラムデータが異常な場合でも、マイクロコンピュータ暴走等の異常動作を防止することができ、不揮発性メモリに格納されたデータの書き換えを実施することができるようにする。
【解決手段】読み出し専用メモリであるROM4と、ROMの修正プログラムを格納する不揮発性メモリ1と、不揮発性メモリに格納されたROMの修正プログラムの読出しと読出したプログラムデータの異常を判定するプログラム読出し手段3と、プログラム読出し手段により読出された修正プログラムに基づいて前記ROMのプログラムを修正した動作を行うROM修正制御手段2とを備える。
【選択図】図1

Description

本発明は、マスクROMに書き込まれたプログラムを修正して、誤りなく実行する技術に関するものである。
CPUとメモリなどを1チップ上に構成したシングルチップ型マイクロコンピュータは、種々の電子機器の制御用途に使用されている。CPUの命令実行部で実行されるプログラムは、一般に、マイクロコンピュータに内蔵されるマスクROMに書き込まれるが、プログラムのバグなどの不具合点が発見されてもこれを修正することはできない。このような場合にはROMコレクションと呼ばれるプログラムデータ修正機能を使い、プログラムの修正を行うのが一般的である。ROMコレクションは、修正プログラムを不揮発性メモリ内に記憶させて、マスクROMの不具合箇所のプログラムの代わりに使用する機能である(例えば、特許文献1参照)。
特開平11−249886号公報
しかしながら、修正プログラムを不揮発性メモリ内に記憶させる従来のソフトウェア修正装置の構成においては、不揮発性メモリにしかるべき修正プログラムデータが書き込まれていることが前提として成り立っており、不揮発性メモリに書き込まれた修正プログラムデータに異常が生じると、マイクロコンピュータの制御がどうなるかは予想がつかないという非常に大きな問題となる。この場合、時としてマイクロコンピュータの暴走となるという課題を有していた。
また、不揮発性メモリにデータを書き込む際に、途中でデータの書き込みを失敗した場合、不揮発性メモリに格納されたデータが異常であるため、データの書き換えを再度実施しようとしても、マイクロコンピュータ暴走となると、データの書き換えができないという課題を有していた。
本発明は、上記従来の課題を解決するもので、ROMの修正プログラムの読出しを行う際に、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、不揮発性メモリに格納されたデータの書き換えを実施することができるソフトウェア修正装置の提供を目的とする
前記従来の課題を解決するために、本発明のソフトウェア修正装置は、読み出し専用メモリであるROMと、ROMの修正プログラムを格納する不揮発性メモリと、不揮発性メモリに格納されたROMの修正プログラムの読出しを行うプログラム読出し手段と、プログラム読出し手段により読出された修正プログラムに基づいてROMのプログラムを修正した動作を行うROM修正制御手段とを備え、プログラム読出し手段によりROMの修正プログラムの読出しを行う際に、読出したプログラムデータの異常を判定するものである。
これにより、ROMの修正プログラムの読出しを行う際に、読出したプログラムデータの異常を判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができる。
本発明のソフトウェア修正装置は、ROMの修正プログラムの読出しを行う際に、読出したプログラムデータの異常を判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、不揮発性メモリに格納されたデータの書き換えを実施することができる。
第1の発明は、読み出し専用メモリであるROMと、ROMの修正プログラムを格納する不揮発性メモリと、不揮発性メモリに格納されたROMの修正プログラムの読出しを行うプログラム読出し手段と、プログラム読出し手段により読出された修正プログラムに基づいてROMのプログラムを修正した動作を行うROM修正制御手段とを備え、プログラム読出し手段によりROMの修正プログラムの読出しを行う際に、読出したプログラムデータの異常を判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができる。
第2の発明は、不揮発性メモリにROMの修正プログラムを複数箇所格納し、プログラム読出し手段によりROMの修正プログラムの読出しを行う際に、複数箇所格納されたプログラムデータが全て一致しているかどうかチェックしてプログラムデータの異常を判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、不揮発性メモリに格納されたデータの書き換えを実施することができる。
第3の発明は、不揮発性メモリにROMの修正プログラムとROMの修正プログラムの反転データを格納し、プログラム読出し手段によりROMの修正プログラムの読出しを行う際に、反転データをチェックすることにより、不揮発性メモリが、一度も書き込みが行われおらず、データが不定となっている場合でも(通常は全データがFFHとなっている)、プログラムデータの異常を判定することができる。
第4の発明は、不揮発性メモリにROMの修正プログラムとROMの修正プログラムのチェックコードを格納し、プログラム読出し手段によりROMの修正プログラムの読出しを行う際に、チェックコードをチェックすることにより、不揮発性メモリの必要容量を抑えて、かつ、プログラムデータの異常を判定することができる。
第5の発明は、プログラム読出し手段により読出された修正プログラムデータが異常であると判定された場合、不揮発性メモリのデータ書き換え処理動作を可能にするため、修正プログラムデータが異常である場合においても、不揮発性メモリに格納されたデータの書き換えを実施することができる。
第6の発明は、プログラム読出し手段により読出された修正プログラムデータが異常であると判定された場合、ROMのプログラム修正動作を行わないため、マイクロコンピュータ暴走を確実に防止し、不揮発性メモリに格納されたデータの書き換えを実施することができる。
以下、本発明の実施の形態について図面を参照しながら説明する。なお、この実施の形態によって本発明が限定されるものではない。
(実施の形態1)
図1は、本発明の実施の形態1におけるソフトウェア修正装置のブロック図を示すものである。図1において、マイクロコンピュータ10は、ROMコレクション機能を有するROM修正制御部を備えシステムの制御を行う制御部2と、不揮発メモリであるEEPR
OM1のプログラムデータの読み出しと読み出されたプログラムデータが正常かどうか判定するプログラム読出し部3と、制御部2の命令実行部で実行されるプログラムを格納するROM4から構成され、EEPROM1とシリアルインタフェース等を介してデータの送受信を行っている。
図2は、本発明の第1の実施の形態におけるソフトウェア修正装置のEEPROM1のメモリマップの一例を示す図である。図2では、EEPROM1にROM4の修正プログラムが3箇所格納されている。
以上のように構成されたソフトウェア修正装置について、以下、図3のフローチャートを用いて説明する。まず、電源投入により、プログラム読出し部3によりEEPROM1からROM4の修正プログラム1を読み出す(S101)。つぎに、EEPROM1からROM4の修正プログラム2を読み出す(S102)。続けて、EEPROM1からROM4の修正プログラム3を読み出す(S103)。3箇所格納されたROM4の修正プログラムを全て読み出した後、ROM4の修正プログラム1・修正プログラム2・修正プログラム3を比較し(S104)、全て一致すれば、ROMコレクション機能を使用する(S105)、一致しなければ、ROMコレクション機能を使用しない(S106)。
以上のように、本実施の形態においては、EEPROM1にROM4の修正プログラムを複数箇所格納し、プログラム読出し部3によりROM4の修正プログラムの読出しを行い、複数箇所格納されたプログラムデータが全て一致しているかどうかチェックすることにより、プログラムデータの異常が判定可能となり、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、EEPROM1に格納されたデータの書き換えを実施することができる。
(実施の形態2)
図4は、本発明の実施の形態2におけるソフトウェア修正装置のEEPROM1のメモリマップの一例を示す図である。図4では、EEPROM1にROM4の修正プログラムと修正プログラムの反転データが格納されている。
以上のように構成されたソフトウェア修正装置について、以下、図5のフローチャートを用いて説明する。まず、電源投入により、プログラム読出し部3によりEEPROM1からROM4の修正プログラムを読み出す(S201)。つぎに、EEPROM1からROM4の修正プログラムの反転データを読み出す(S202)。ROM4の修正プログラムと修正プログラムの反転データを読み出した後、修正プログラムと修正プログラムの反転データ加算し(S203)、全データを”FFH”と比較する(S204)。全て一致すれば、ROMコレクション機能を使用する(S205)、一致しなければ、ROMコレクション機能を使用しない(S206)。
以上のように、本実施の形態においては、EEPROM1にROM4の修正プログラムと修正プログラムの反転データを格納し、プログラム読出し部3により読出しを行い、修正プログラムと修正プログラムの反転データの加算結果が”FFH”かどうかチェックすることにより、EEPROM1が、”00H”や”FFH”等の不定値になっている場合や、データ書き込み途中で書き込み失敗し、EEPROM1の一部の領域が一度も書き込みが行われていない場合でも、確実にプログラムデータの異常が判定可能となり、マイクロコンピュータ暴走等の異常動作を防止することができ、また、修正プログラムデータの書き込みを失敗した時でも、EEPROM1に格納されたデータの書き換えを実施することができる。
以上のように、本発明にかかるソフトウェア修正装置は、ROMの修正プログラムの読出しを行う際に、読出したプログラムデータの異常を判定することにより、マイクロコンピュータ暴走等の異常動作を防止することができ、また、プログラムデータ異常時でも、不揮発性メモリに格納されたデータの書き換えを実施することができるため、電子機器の制御用途に使用されているマイクロコンピュータのソフトウェアを修正する技術として広く有用である。
本発明の実施の形態1におけるソフトウェア修正装置のブロック図 本発明の実施の形態1におけるソフトウェア修正装置のEEPROMのメモリマップ 本発明の実施の形態1におけるソフトウェア修正装置の動作を示すフローチャート 本発明の実施の形態2におけるソフトウェア修正装置のEEPROMのメモリマップ 本発明の実施の形態2におけるソフトウェア修正装置の動作を示すフローチャート
符号の説明
1 EEPROM
2 制御部(ROM修正制御部)
3 プログラム読出し部
4 ROM
10 マイクロコンピュータ

Claims (6)

  1. 読み出し専用メモリであるROMと、前記ROMのプログラムを修正した修正プログラムを格納する不揮発性メモリと、前記不揮発性メモリに格納された前記ROMの修正プログラムの読出しと読出したプログラムデータの異常を判定するプログラム読出し手段と、前記プログラム読出し手段により読出された修正プログラムに基づいて前記ROMのプログラムを修正した動作を行うROM修正制御手段とを備えたソフトウェア修正装置。
  2. 不揮発性メモリにROMの修正プログラムを複数箇所格納することを特徴とする請求項1に記載のソフトウェア修正装置。
  3. 不揮発性メモリにROMの修正プログラムとROMの修正プログラムの反転データを格納することを特徴とする請求項1に記載のソフトウェア修正装置。
  4. 不揮発性メモリにROMの修正プログラムとROMの修正プログラムのチェックコードを格納することを特徴とする請求項1に記載のソフトウェア修正装置。
  5. ROM修正制御手段は、プログラム読出し手段により読出された修正プログラムデータが異常であると判定された場合、不揮発性メモリのデータ書き換え処理動作を許可することを特徴とする請求項1〜4のいずれか1項に記載のソフトウェア修正装置。
  6. ROM修正制御手段は、プログラム読出し手段により読出された修正プログラムデータが異常であると判定された場合、ROMのプログラムを修正した動作を行わないことを特徴とする請求項1〜5のいずれか1項に記載のソフトウェア修正装置。
JP2006180667A 2006-06-30 2006-06-30 ソフトウェア修正装置 Pending JP2008009798A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006180667A JP2008009798A (ja) 2006-06-30 2006-06-30 ソフトウェア修正装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006180667A JP2008009798A (ja) 2006-06-30 2006-06-30 ソフトウェア修正装置

Publications (1)

Publication Number Publication Date
JP2008009798A true JP2008009798A (ja) 2008-01-17

Family

ID=39067934

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006180667A Pending JP2008009798A (ja) 2006-06-30 2006-06-30 ソフトウェア修正装置

Country Status (1)

Country Link
JP (1) JP2008009798A (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11249886A (ja) * 1998-02-27 1999-09-17 Matsushita Electric Ind Co Ltd 電子機器
JPH11327891A (ja) * 1998-05-20 1999-11-30 Matsushita Graphic Communication Systems Inc 電子機器
JP2003288276A (ja) * 2002-03-27 2003-10-10 Nikon Corp 電子機器
WO2003107193A1 (ja) * 2002-06-14 2003-12-24 松下電器産業株式会社 半導体集積回路装置、データ記憶検証装置およびデータ記憶検証方法
JP2004220474A (ja) * 2003-01-17 2004-08-05 Sony Corp 電子機器、システム復帰方法、プログラムおよび記録媒体
JP2006171961A (ja) * 2004-12-14 2006-06-29 Matsushita Electric Ind Co Ltd データ再生装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11249886A (ja) * 1998-02-27 1999-09-17 Matsushita Electric Ind Co Ltd 電子機器
JPH11327891A (ja) * 1998-05-20 1999-11-30 Matsushita Graphic Communication Systems Inc 電子機器
JP2003288276A (ja) * 2002-03-27 2003-10-10 Nikon Corp 電子機器
WO2003107193A1 (ja) * 2002-06-14 2003-12-24 松下電器産業株式会社 半導体集積回路装置、データ記憶検証装置およびデータ記憶検証方法
JP2004220474A (ja) * 2003-01-17 2004-08-05 Sony Corp 電子機器、システム復帰方法、プログラムおよび記録媒体
JP2006171961A (ja) * 2004-12-14 2006-06-29 Matsushita Electric Ind Co Ltd データ再生装置

Similar Documents

Publication Publication Date Title
JP2001195241A (ja) コンピュータ
JP2007287022A (ja) 電子制御装置の情報記憶方法
JP3830867B2 (ja) シングルチップマイクロコンピュータおよびそのブート領域切り替え方法
WO2015184732A1 (zh) 引导程序的存储方法、故障恢复方法及设备、计算机存储介质
JP2016081341A (ja) 電子制御装置
JP5083890B2 (ja) エレベータの制御装置
JP6304007B2 (ja) マイクロコントローラ
JP5815212B2 (ja) データ書き込み方法およびシステム
JP2006331185A (ja) 制御装置、書換装置、書換方法および書換プログラム
JP6708596B2 (ja) 電子制御装置及び制御プログラム検証方法
JP2008009798A (ja) ソフトウェア修正装置
JP2000293376A (ja) ブートプログラムの切替回路及び切替方法
US20070169086A1 (en) System and method for updating in-system program
JP2011150383A (ja) ファームウェア書き込み方法
JP2010079686A (ja) データ処理装置、メモリ制御回路およびメモリ制御方法
JP2011028657A (ja) Ram診断装置、そのプログラム
JP2008146530A (ja) ソフトウェア修正装置
JP2005128613A (ja) 画像形成装置
JP2008209963A (ja) ソフトウェア修正装置
JP6891789B2 (ja) 演算装置
JP2003242046A (ja) 情報処理装置、情報処理装置の動作方法及びプログラム
JP2005063311A (ja) プロセッサシステムのパッチ方法およびパッチ適用プログラム
JP2007084232A (ja) エレベータ制御プログラム更新装置
JP4636940B2 (ja) 電子制御装置
ITMI20071696A1 (it) Procedimento di correzione per un microprocessore ri-programmabile

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090310

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090414

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111115

A521 Written amendment

Effective date: 20120112

Free format text: JAPANESE INTERMEDIATE CODE: A523

A02 Decision of refusal

Effective date: 20120131

Free format text: JAPANESE INTERMEDIATE CODE: A02