JP2000010872A - フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法 - Google Patents

フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法

Info

Publication number
JP2000010872A
JP2000010872A JP10179460A JP17946098A JP2000010872A JP 2000010872 A JP2000010872 A JP 2000010872A JP 10179460 A JP10179460 A JP 10179460A JP 17946098 A JP17946098 A JP 17946098A JP 2000010872 A JP2000010872 A JP 2000010872A
Authority
JP
Japan
Prior art keywords
unit
flash memory
memory unit
error
microcomputer
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
JP10179460A
Other languages
English (en)
Inventor
Tatsuya Nishimura
達也 西村
Kenji Sakiyama
健次 崎山
Tsutomu Mikami
勉 三上
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 JP10179460A priority Critical patent/JP2000010872A/ja
Publication of JP2000010872A publication Critical patent/JP2000010872A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 フラッシュメモリを混載するマイクロコンピ
ュータにおいて、フラッシュメモリの長寿命化とマイク
ロコンピュータの信頼性の向上を可能とすることを目的
とする。 【解決手段】 外部装置5から動作モードを指定し、第
2メモリ部110に被デバッグプログラムをダウンロード
し、CPU30により第2メモリ部110が記憶する被デバ
ッグプログラムを試実行し、試実行結果に基づいて、外
部装置5において被デバッグプログラムを修正し、デバ
ッグ完了後外部装置5より動作モードを指定し、デバッ
グを行った第2メモリ部110の被デバッグプログラムを
フラッシュメモリ部100に書き込む。これにより、デバ
ッグ中は第2メモリ部110を使用し、デバッグ完了後フ
ラッシュメモリ部100へ書き込みを行うことにより、最
小限の書き込み回数とすることができ、フラッシュメモ
リ部100を長寿命化できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フラッシュメモリ
を混載するマイクロコンピュータおよびそのデバッグ方
法に関する。
【0002】
【従来の技術】近年、マイクロコンピュータは書き換え
不可能なROMにプログラムを書き込んでシステム化さ
れていたが、電気的に書き換え可能なフラッシュメモリ
を使用することにより、デバッグ時の効率化、およびシ
ステムに実装された状態でもプログラムの書き換えが可
能となることから、フラッシュメモリを搭載したマイク
ロコンピュータが広く使用されるようになってきた。
【0003】しかし、現状のフラッシュメモリは消去お
よび書き込み回数に制限があるため、使用する際には十
分な注意が必要である。従来のフラッシュメモリを混載
するマイクロコンピュータの構成およびデバッグ方法を
図4のブロック図に基づいて説明する。
【0004】従来のフラッシュメモリを混載するマイク
ロコンピュータ4は、同図に示すように、フラッシュメ
モリ10と、RAM20と、マイクロコンピュータを制御す
るCPU(セントラルプロセッシングユニット)30とに
より構成されている。
【0005】上記構成のマイクロコンピュータのデバッ
グ方法として、ICE(インサーキットエミュレータ)
を使用する方法がある。しかし、製品に組み込まれた場
合はICEを使用することはできないので、従来のマイ
クロコンピュータ4のデバッグを行う際には、すなわち
フラッシュメモリ10のプログラムを変更するときには、
再度フラッシュメモリ10にダウンロードしている。
【0006】また、フラッシュメモリ10のデータがノイ
ズなどにより変化することを防ぐために、フラッシュメ
モリ10のデータを読み出してRAM20に一時的に待避さ
せ、その後、フラッシュメモリ10の元のエリアへRAM
20から読み出したデータを再書き込みする処理を定期的
に行い、フラッシュメモリ10の記憶データを保持してい
る。
【0007】
【発明が解決しようとする課題】しかし、図4のように
構成された従来のフラッシュメモリを混載するマイクロ
コンピュータでは、デバッグが完了するまで毎回フラッ
シュメモリ10にダウンロードしているため、書き込み寿
命の短いフラッシュメモリ10に対してダウンロードする
頻度に比例して信頼性を低下させていた。
【0008】また、定期的に再書き込みを行い値を、記
憶データを保持させる構成では、再書き込みを行うサイ
クルを早くした場合はフラッシュメモリ10の寿命が短く
なると同時に、マイクロコンピュータ4の信頼性を低下
させていた。
【0009】さらに、一度フラッシュメモリ10中のデー
タが壊れると、壊れた状態のままの値で再書き込みする
ことになるため、データが回復されないという問題点を
有していた。
【0010】本発明は、このようなフラッシュメモリを
混載するマイクロコンピュータにおいて、フラッシュメ
モリの長寿命化とマイクロコンピュータの信頼性の向上
を可能とし、エラーが発生した場合は自己修復を可能と
することを目的とする。
【0011】
【課題を解決するための手段】本発明のフラッシュメモ
リを混載するマイクロコンピュータは、CPUと、フラ
ッシュメモリ部と、前記CPUによる読出しが前記フラ
ッシュメモリ部との間で選択的に行われる第2メモリ部
と、外部から前記第2メモリ部へデータをダウンロード
する第2メモリ部ダウンロード手段と、前記第2メモリ
部が記憶するデータを前記フラッシュメモリへ転送する
転送手段と、外部から動作モードが指定される制御手段
とを備え、前記制御手段は、外部から第1動作モードが
指定されると、外部から与えられたアドレスに基づいて
外部から与えられたデータを前記第2メモリ部へダウン
ロードするように前記第2メモリ部ダウンロード手段を
制御し、外部から第2動作モードが指定されると、前記
第2メモリ部が記憶するデータを前記フラッシュメモリ
部へ転送するように転送手段を制御することを特徴とし
たものである。
【0012】この本発明によれば、フラッシュメモリの
長寿命化とマイクロコンピュータの信頼性の向上を可能
としたフラッシュメモリを混載するマイクロコンピュー
タが得られる。
【0013】
【発明の実施の形態】本発明の請求項1記載の発明は、
CPUと、フラッシュメモリ部と、前記CPUによる読
出しが前記フラッシュメモリ部との間で選択的に行われ
る第2メモリ部と、外部から前記第2メモリ部へデータ
をダウンロードする第2メモリ部ダウンロード手段と、
前記第2メモリ部が記憶するデータを前記フラッシュメ
モリへ転送する転送手段と、外部から動作モードが指定
される制御手段とを備え、前記制御手段は、外部から第
1動作モードが指定されると、外部から与えられたアド
レスに基づいて外部から与えられたデータを前記第2メ
モリ部へダウンロードするように前記第2メモリ部ダウ
ンロード手段を制御し、外部から第2動作モードが指定
されると、前記第2メモリ部が記憶するデータを前記フ
ラッシュメモリ部へ転送するように転送手段を制御する
ことを特徴としたものであり、デバッグ時には、外部か
ら第1動作モードを指定し、アドレス、データを与え、
フラッシュメモリ部の代替えとなる第2メモリ部へダウ
ンロードし、デバッグが完了するまで第2メモリ部を使
用し、デバッグが完了すると外部から第2動作モードを
指定し第2メモリ部のデータをフラッシュメモリ部に内
部転送を行い、よって最小限の書き込み回数となるとい
う作用を有する。
【0014】請求項2記載の発明は、上記請求項1記載
の発明であって、前記フラッシュメモリ部と前記第2メ
モリ部とは、前記CPUの管理するアドレス空間が互い
に重複することとしたものであり、フラッシュメモリ部
と第2メモリ部間のデータの転送が容易になるという作
用を有する。
【0015】請求項3記載の発明は、CPUと、フラッ
シュメモリ部と、前記フラッシュメモリ部の記憶内容と
前記記憶内容に予め付随して記憶されたエラー検出コー
ドとを所定のタイミングで読出してエラー検出を行うエ
ラー検出部と、前記エラー検出部によってエラーが検出
されたときに該エラーが訂正可能か否かを判断し、訂正
可能と判断した場合に該エラーを訂正するエラー訂正部
とを備えたことを特徴としたものであり、フラッシュメ
モリ部の記憶内容と前記記憶内容に予め付随して記憶さ
れたエラー検出コードとを所定のタイミングで読み出し
てエラー検出を行い、エラーが検出されたときにエラー
が訂正可能か否かを判断し、訂正可能と判断した場合に
該エラーを訂正し、エラーが発生した場合に自己修復が
可能となるいう作用を有する。
【0016】請求項4記載の発明は、上記請求項3記載
の発明であって、予め前記フラッシュメモリ部と同じ記
憶内容を記憶した第2メモリ部を備え、前記エラー訂正
部は、前記エラー検出部によって検出されたエラーが訂
正不可能と判断した場合に、前記第2メモリ部の記憶内
容を読出して、前記エラーが検出された前記フラッシュ
メモリ部の前記記憶内容を置き換えることを特徴とした
ものであり、エラー訂正部は、エラー検出部によって検
出されたエラーが訂正不可能と判断した場合に、第2メ
モリ部の記憶内容を読み出して、前記エラーが検出され
た前記フラッシュメモリ部の前記記憶内容を置き換え、
再度コピーすることによりマイクロコンピュータの長寿
命化が可能となるという作用を有する。
【0017】請求項5記載の発明は、請求項4記載の発
明であって、前記CPUの初期実行を前記フラッシュメ
モリ部から行うか前記第2メモリ部から行うかを選択す
るブート選択部を備え、前記ブート選択部は、前記エラ
ー検出部によって検出されたエラーが訂正不可能と判断
した回数が所定の数に達した場合に、前記CPUの初期
実行を前記第2メモリ部から行うように選択することを
特徴としたものであり、ブート選択部は、エラー検出部
によって検出されたエラーが訂正不可能と判断した回数
が所定の数に達した場合に、CPUの初期実行を第2メ
モリ部から行うように選択し、よってマイクロコンピュ
ータが停止することを防止できるという作用を有する。
【0018】請求項6記載は、請求項3〜請求項5のい
ずれかに記載の発明であって、前記CPUは、クロック
を受けて動作し、前記所定のタイミングは、前記CPU
への前記クロックの供給の開始時点であることを特徴と
したものであり、エラー検出部がエラー検出を行う所定
のタイミングを、CPUへのクロックの供給の開始時点
とし、これによりプログラムの動作に影響を与えないエ
ラー処理を行うことが可能となるという作用を有する。
【0019】請求項7記載の発明は、請求項6記載の発
明であって、前記開始時点は、前記CPUへの前記クロ
ックの供給が停止された後の供給の再開時点、または前
記クロックの発振が停止された後の発振の再開時点、ま
たは前記マイクロコンピュータに対する電源投入時点で
あるとしたものであり、エラー検出部がエラー検出を行
うクロックの供給の開始時点は、CPUへの前記クロッ
クの供給が停止された後の供給の再開時点、または前記
クロックの発振が停止された後の発振の再開時点、また
は前記マイクロコンピュータに対する電源投入時点とす
るという作用を有する。
【0020】請求項8記載の発明は、CPUと、フラッ
シュメモリ部と、前記CPUによる読出しが前記フラッ
シュメモリとの間で選択的に行われる第2メモリ部と、
外部から前記第2メモリ部へデータをダウンロードする
第2メモリ部ダウンロード手段と、前記第2メモリ部が
記憶するデータを前記フラッシュメモリへ転送する転送
手段とを備えたマイクロコンピュータが実行するプログ
ラムをデバッグするデバッグ方法であって、前記第2メ
モリ部ダウンロード手段を用いて、外部装置から前記第
2メモリ部へ被デバッグプログラムをダウンロードする
ダウンロードステップと、前記第2メモリ部が記憶する
前記被デバッグプログラムを試実行する試実行ステップ
と、前記試実行ステップの結果に基づいて、前記外部装
置において前記被デバッグプログラムを修正する修正ス
テップと、前記修正ステップにおいて修正された前記被
デバッグプログラムを前記転送手段を用いて前記フラッ
シュメモリへ転送する転送ステップとを有することを特
徴としたものであり、外部装置から第2メモリ部へ被デ
バッグプログラムをダウンロードし、この第2メモリ部
が記憶する前記被デバッグプログラムを試実行し、この
試実行の結果に基づいて、外部装置において前記被デバ
ッグプログラムを修正し、修正終了後、すなわちデバッ
グ完了後、修正された前記被デバッグプログラムを前記
転送手段を用いてフラッシュメモリへ転送するという作
用を有する。
【0021】以下、本発明の実施の形態を図面に基づい
て説明する。 (実施の形態1)図1は、本発明の実施の形態1におけ
るフラッシュメモリを混載するマイクロコンピュータの
構成を示すブロック図である。
【0022】図1において、1は本発明のフラッシュメ
モリを混載するマイクロコンピュータ、5はマイクロコ
ンピュータ1にダウンロードさせるための外部装置(た
とえば、ホストコンピュータなど)である。
【0023】マイクロコンピュータ1は、マイクロコン
ピュータ全体を制御するCPU30と、フラッシュメモリ
部100と、内部データバス500と、内部アドレスバス510
を備え、さらにフラッシュメモリ部100と同等の動作を
させるSRAM、NVRAMなどを用いた第2メモリ部
110と、フラッシュメモリ部100に書き込み/読み出しの
ための信号を制御する同種信号OR回路部120と、第2
メモリ部110に書き込み/読み出しのための信号を制御
する同種信号OR回路部130と、フラッシュメモリ部100
へ書き込むための信号を生成するフラッシュメモリ部ダ
ウンロード信号生成部140と、フラッシュメモリ部100と
第2メモリ部110の内容を相互にコピーするための信号
を生成する相互コピー信号生成部150と、第2メモリ部1
10へ書き込むための信号を生成する第2メモリ部ダウン
ロード信号生成部160とを備え、さらに前記2種類のメ
モリ部100,110と書き込み/読み出し動作を行う時に一
時的にデータを保持しておくデータ保持部190と、デー
タ保持部190にデータを取り込むための信号を生成する
データ保持生成部200と、外部装置5から入力される動
作モードを選択するモード選択信号生成部210を備えて
いる。
【0024】前記CPU30は、通常フラッシュメモリ部
100を読み出してプログラムを実行する。またフラッシ
ュメモリ部100と第2メモリ部110とは、CPU30の管理
するアドレス空間が互いに重複しており、データの転送
を容易としている。
【0025】また図1において、550はフラッシュメモ
リ部100に書き込み/読み出しを行う制御信号、560は第
2メモリ部110に書き込み/読み出しを行う制御信号、5
70はデータ保持部190にデータを書き込み/読み出す制
御信号、580は2種のメモリ部100,110間の相互にコピ
ーするための書き込み/読み出すための制御信号、590
はフラッシュメモリ部100に書き込みを行うための制御
信号、600は第2メモリ部110に書き込みを行うための制
御信号、610はフラッシュメモリ部ダウンロード信号生
成部140を選択する信号、620は第2メモリ部ダウンロー
ド信号生成部160を選択する信号、630は相互コピー信号
生成部150を選択する信号、700は外部装置5からのダウ
ンロード用のデータ、710は外部装置5からのダウンロ
ード用のアドレス、720は2種のメモリ部100,110間の
相互コピーを開始する信号、730は外部装置5からのダ
ウンロード時の書き込み信号、740はフラッシュメモリ
部100へのダウンロードモード,第2メモリ部110へのダ
ウンロードモード,フラッシュメモリ部100から第2メ
モリ部110にコピー、または第2メモリ部110からフラッ
シュメモリ部100にコピーするためのコピーモードの中
から1モードを選択するモード信号である。
【0026】以上のように構成された本発明のフラッシ
ュメモリを混載するマイクロコンピュータについて、そ
の動作を説明する。動作モードは3つのモードがある。 [第1動作モード]第1動作モードは、外部装置5から
マイクロコンピュータ1に動作させるためのプログラム
をフラッシュメモリ部100にダウンロードするモードで
ある。
【0027】この第1動作モードでは、外部装置5から
マイクロコンピュータ1に、ダウンロード用アドレス71
0と、このアドレスのダウンロード用データ700と、ダウ
ンロード書き込み信号730と、動作させるためのプログ
ラムをフラッシュメモリ部100にダウンロードするモー
ドを選択するモード信号740が出力される。
【0028】選択信号生成部210は、上記フラッシュメ
モリ部100へのダウンロードモードのモード信号740に基
づいて、フラッシュメモリ部ダウンロード信号生成部14
0を選択し、選択信号610を出力する。この生成部140
は、この選択信号610とダウンロード書き込み信号730に
基づいて、フラッシュメモリ部100に書き込みを行うた
めの制御信号590を生成し、同種信号OR回路部120とデ
ータ保持信号生成部200へ出力する。同種信号OR回路
部120は、制御信号590に基づいて、フラッシュメモリ部
100へデータ書き込み制御信号550を出力し、データ保持
信号生成部200は、制御信号590に基づいて、データ保持
部190へデータ書き込み制御信号570を出力する。
【0029】ダウンロード用データ700は、データ書き
込み制御信号570により上記データ保持部190に保持され
る。またダウンロード用アドレス710は相互コピー信号
生成部150を通して内部アドレスバス510へ出力され内部
アドレスとして使用される。
【0030】以上の流れにより、フレッシュメモリ部10
0にダウンロードされる。 [第2動作モード]第2動作モードは、外部装置5から
マイクロコンピュータ1に動作させるためのプログラム
を第2メモリ部110にダウンロードするモードである。
【0031】外部装置5からマイクロコンピュータ1
に、ダウンロード用アドレス710と、このアドレスのダ
ウンロード用データ700と、ダウンロード書き込み信号7
30と、プログラムを第2メモリ部110にダウンロードす
るモードを選択するモード信号740が出力される。
【0032】選択信号生成部210は、上記第2メモリ部1
10へのダウンロードモードのモード信号740に基づい
て、第2メモリ部ダウンロード信号生成部160を選択
し、選択信号620を出力する。この生成部160は、この選
択信号620とダウンロード書き込み信号730に基づいて、
第2メモリ部110に書き込みを行うための制御信号600を
生成し、同種信号OR回路部130とデータ保持信号生成
部200へ出力する。同種信号OR回路部130は、制御信号
600に基づいて、第2メモリ部110へデータ書き込み制御
信号560を出力し、データ保持信号生成部200は、制御信
号600に基づいて、データ保持部190へデータ書き込み制
御信号570を出力する。
【0033】ダウンロード用データ700は、データ書き
込み制御信号570により上記データ保持部190に保持され
る。またダウンロード用アドレス710は相互コピー信号
生成部150を通して内部アドレスバス510へ出力され内部
アドレスとして使用される。
【0034】以上の流れにより、第2メモリ部110にダ
ウンロードされる。 [第3動作モード]第3動作モードは、2種類のメモリ
110,110間でメモリに記憶したデータをコピーするモー
ドである。第2メモリ部110のデータをフラッシュメモ
リ部100にコピーする方法と、フラッシュメモリ部100の
データを第2メモリ部110にコピーする方法の2つを有
している。
【0035】*第2メモリ部110にデータをダウンロー
ドした後、第2メモリ部110のデータをフラッシュメモ
リ部100にコピーする方法 外部装置5からマイクロコンピュータ1に、相互コピー
開始信号720と、フラッシュメモリ部100から第2メモリ
部110にコピーを行うためのモート゛を選択するモード信
号740に入力される。
【0036】選択信号生成部210は、上記フラッシュメ
モリ部100から第2メモリ部110にコピーを行うためのモ
ート゛のモード信号740に基づいて、相互コピー信号生成
部150を選択し、選択信号630を出力する。
【0037】相互コピー信号生成部150は、この選択信
号630と相互コピー開始信号720を入力すると、アドレス
を生成し、2種のメモリ部100,110間の相互にコピーす
るための読み出すための制御信号580を同種信号OR回
路部130へ出力し、書き込むための制御信号580を同種信
号OR回路部120とデータ保持信号生成部200へ出力す
る。同種信号OR回路部130は、制御信号580に基づい
て、第2メモリ部110へデータ読み出し制御信号560を出
力し、同種信号OR回路部120は、制御信号580に基づい
て、フラッシュメモリ部100へデータ書込み制御信号550
を出力し、データ保持信号生成部200は、制御信号580に
基づいて、データ保持部190へデータ書き込み制御信号5
70を出力する。
【0038】この流れにより、第2メモリ部110からデ
ータが読み出され、読み出されたデータは一旦、データ
保持部190に保持され、このデータ保持部190のデータが
フラッシュメモリ部100に書き込まれる。アドレス信号
は、相互コピー信号生成部150により先頭アドレスから
順次更新され、メモリ100,110間のコピー動作が行われ
る。
【0039】*フラッシュメモリメモリ部100にデータ
をダウンロードした後、フラッシュメモリ部100のデー
タを第2メモリ部110にコピーする方法 外部装置5からマイクロコンピュータ1に、相互コピー
開始信号720と、第2メモリ部110からフラッシュメモリ
部100にコピーを行うためのモート゛を選択するモード信
号740に入力される。
【0040】選択信号生成部210は、上記第2メモリ部1
10からフラッシュメモリ部100にコピーを行うためのモ
ードのモード信号740に基づいて、相互コピー信号生成
部150を選択し、選択信号630を出力する。
【0041】相互コピー信号生成部150は、この選択信
号630と相互コピー開始信号720を入力すると、アドレス
を生成し、2種のメモリ部100,110間の相互にコピーす
るための読み出すための制御信号580を同種信号OR回
路部120へ出力し、書き込むための制御信号580を同種信
号OR回路部130とデータ保持信号生成部200へ出力す
る。同種信号OR回路部120は、制御信号580に基づい
て、フラッシュメモリメモリ部100へデータ読み出し制
御信号550を出力し、同種信号OR回路部130は、制御信
号580に基づいて、第2メモリ部110へデータ書き込み制
御信号560を出力し、データ保持信号生成部200は、制御
信号580に基づいて、データ保持部190へデータ書き込み
制御信号570を出力する。
【0042】この流れにより、フラッシュメモリメモリ
部100からデータが読み出され、読み出されたデータは
一旦、データ保持部190に保持され、このデータ保持部1
90のデータが第2メモリ部110に書き込まれる。アドレ
ス信号は、相互コピー信号生成部150により先頭アドレ
スから順次更新され、メモリ100,110間のコピー動作が
行われる。
【0043】上記2通りの方法を有しており、実施の形
態1においては、外部装置5からアドレス、データおよ
び動作モードを与えフラッシュメモリの代替えとなる第
2メモリ部110に被デバッグプログラム(データ)をダ
ウンロードし、CPU30により第2メモリ部110が記憶
する前記被デバッグプログラムを試実行し、試実行ステ
ップの結果に基づいて、外部装置5において前記被デバ
ッグプログラムを修正し、デバッグ完了後、外部装置5
より動作モードを指定し、第2メモリ部110からフラッ
シュメモリ部100にコピーするためのモード信号740と相
互コピー開始信号720を入力することにより、デバッグ
を行った第2メモリ部110の被デバッグプログラムを確
実にフラッシュメモリ部100に書き込むことが可能とな
る。
【0044】また外部装置5よりフラッシュメモリ部10
0から第2メモリ部110にコピーするためのモード信号74
0と相互コピー開始信号720を入力することにより、フラ
ッシュメモリ部100で実行されるプログラムを第2メモ
リ部110に書き込むことが可能となり、バックアップが
可能となる。
【0045】このように実施の形態1によれば、デバッ
グ中は第2メモリ部110を使用し、デバッグ完了後フラ
ッシュメモリ部100へ書き込みを行うことにより、最小
限の書き込み回数とすることができ、フラッシュメモリ
部100を長寿命化することができる。またフラッシュメ
モリ部100で実行されるプログラムを第2メモリ部110に
同時に格納することができ、バックアップすることがで
きる。 (実施の形態2)図2は、本発明の実施の形態2におけ
るフラッシュメモリを混載するマイクロコンピュータの
構成を示すブロック図である。なお、上記実施の形態1
と同一の構成には同一の符号を付して説明を省略する。
【0046】実施の形態2では、ダウンロードするデー
タには予めデータ全体に対するエラー検出コード及びエ
ラー訂正コードを付加しておく。この方法は、コンパク
トディスクなどのディスクメディアに使用される方法な
どが考えられる。実施の形態1の2種類のメモリ部11
0,110に代えて、エラー検出コードとエラー訂正コード
を記憶したフラッシュメモリメモリ部300と第2メモリ
部310を設けている。
【0047】またこれら2種類のメモリ部300,310のエ
ラーを検出するエラー検出部170と、エラー検出部170か
らのエラー検出信号を基にエラー訂正を行うエラー訂正
部180が新たに設けられている。
【0048】また図2において、520はエラー検出部170
から出力されるエラー検出信号、530はエラー検出部170
から出力される2種のメモリ部300,310からの読み出し
/イネーブルの信号、540はエラー訂正部170から出力さ
れる2種のメモリ部300,310の書き込み/読み出し/イ
ネーブルの信号、640は2種のメモリ部300,310間の相
互にコピーするための書き込み/読み出すための制御信
号である。
【0049】以上のように構成された本発明のフラッシ
ュメモリを混載するマイクロコンピュータについて、そ
の動作を説明する。まず、デバッグ中は第2メモリ部11
0にプログラムを実施の形態1で説明した手順でダウン
ロードする。デバッグを完了した後、第2メモリ部110
のデータをフラッシュメモリ部100に実施の形態1で説
明した手順でコピーする。
【0050】そして、フラッシュメモリ部100でプログ
ラムの動作が開始されると、エラー検出部170は後述す
る所定のタイミングでフラッシュメモリ300中のエラー
検出コードを使用し、フラッシュメモリ部100のデータ
からエラーを検出する。
【0051】エラーが検出された場合は、エラー検出信
号520をエラー訂正部180に出力する。エラー訂正部180
はエラー訂正可能範囲の場合は、フラッシュメモリ部10
0中のエラー訂正コードを使用しエラー個所を訂正する
ことにより自己修復を行う。またエラー訂正部180は、
エラー訂正可能範囲外の場合は、第2メモリ部110には
フラッシュメモリ部100と同じデータが格納されている
ことから、第2メモリ部110のデータをエラー検出部170
およびエラー訂正部180によりエラーが無いことを確認
した後、第2メモリ部110から再度フラッシュメモリ部1
00へメモリ間のコピーを行うことにより、再度フラッシ
ュメモリ部100は正しいデータとなる。
【0052】このように実施の形態2によれば、フラッ
シュメモリ部300にエラーが発生した場合は、エラー検
出およびエラー訂正機能によりエラー訂正可能範囲では
自己修復することが可能となり、エラー訂正可能範囲外
では第2メモリ部310に保持していたを再度コピーしな
おすことで修復が可能となり、マイクロコンピュータ2
の長寿命化が可能となる。
【0053】なお、CPU30は、クロックを受けて動作
し、エラー検出部170がエラーを検出する前記所定のタ
イミングは、プログラムの動作中にエラー検出のための
割り込みが入るとプログラムの動作に影響を与える可能
性があるため、CPU30への前記クロックの供給の開始
時点としている。前記開始時点は、CPU30への前記ク
ロックの供給が停止された後の供給の再開時点、または
前記クロックの発振が停止された後の発振の再開時点、
またはマイクロコンピュータ2に対する電源投入時点で
ある。これにより、プログラムの動作に影響を与えない
エラー処理を行うことが可能となる。 (実施の形態3)図3は、本発明の実施の形態3におけ
るフラッシュメモリを混載するマイクロコンピュータの
構成を示すブロック図である。なお、上記実施の形態2
と同一の構成には同一の符号を付して説明を省略する。
【0054】新たに、2種類のメモリ部300,310から起
動されるメモリを選択するブート選択部220を設けてい
る。図3において、520はエラー検出部から出力される
エラー検出信号、750はメモリ部300,310間コピーを行
うフラグ、760と770は各メモリ部300,310用のイネーブ
ル信号である。
【0055】以上のように構成された本発明のフラッシ
ュメモリを混載するマイクロコンピュータについて、そ
の動作を説明する。実施の形態3では、フラッシュメモ
リ部300で動作中にエラーエラーが発生した場合、エラ
ー検出部170はブート選択部220とエラー訂正部180にエ
ラー検出信号520を出力する。エラー訂正部180は、エラ
ー訂正能力以上の場合は、ブート選択部220へメモリ間
コピーを行うフラグ750を出力し、相互コピー信号生成
部640へ相互コピー用制御信号640を出力し、第2メモリ
部310のデータをフラッシュメモリ部300に実施の形態1
で説明した手順でコピーする。コピー完了後再度フラッ
シュメモリ部300にエラーが発生する場合は、ブート選
択部220は前記メモリ間コピーフラグ750がセットされて
いる時に、エラー検出部170からエラー検出信号520を判
断し、この繰り返しを任意の回数だけ繰り替えすと、フ
ラッシュメモリ部300は書き換え不能な状態と判断す
る。以降、第2メモリ部310を使用してプログラムが動
作するようにブート選択部220は第2メモリ部310を有効
にするためのイネーブル信号770を出力し、第2メモリ
部310からプログラムが実行される。
【0056】このように実施の形態3によれば、フラッ
シュメモリ部300が使用不可能な状態に場合は第2メモ
リ部310を使用することでマイクロコンピュータ3は再
起動することが可能となり、マイクロコンピュータ3が
停止することを防止することができる。
【0057】
【発明の効果】以上のように本発明によれば、デバッグ
時には、外部から第1動作モードを指定し、アドレス、
データを与え、フラッシュメモリ部の代替えとなる第2
メモリ部へダウンロードし、デバッグが完了するまで第
2メモリ部を使用し、デバッグが完了すると外部から第
2動作モードを指定し第2メモリ部のデータをフラッシ
ュメモリ部に内部転送を行うことにより、書き込み回数
を最小限にすることができ、フラッシュメモリを長寿命
化することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1におけるフラッシュメモ
リを混載するマイクロコンピュータの構成を示すブロッ
ク図である。
【図2】本発明の実施の形態2におけるフラッシュメモ
リを混載するマイクロコンピュータの構成を示すブロッ
ク図である。
【図3】本発明の実施の形態3におけるフラッシュメモ
リを混載するマイクロコンピュータの構成を示すブロッ
ク図である。
【図4】従来のフラッシュメモリを混載するマイクロコ
ンピュータの構成を示すブロック図である。
【符号の説明】
1,2,3 フラッシュメモリ搭載マイクロコンピュ
ータ 5 外部装置 100 フラッシュメモリ部 110 第2メモリ部 120 ,130 同種信号OR回路部 140 フラッシュメモリ部ダウンロード信号生成部 150 相互コピー信号生成部 160 第2メモリダウンロード信号生成部 170 エラー検出部 180 エラー訂正部 190 データ保持部 200 データ保持信号生成部 210 モード選択信号生成部 220 ブート選択部 300 エラー検出及びエラー訂正を記録したフラッシ
ュメモリ部 310 エラー検出及びエラー訂正を記録した第2メモ
リ部 500 内部データバス 510 内部アドレスバス 520 エラー検出信号 530 読み出し/イネーブル信号 540 書き込み/読み出し/イネーブル信号 550 フラッシュメモリ用制御信号 560 第2メモリ用制御信号 570 データ入出力制御信号 580 ,640 相互コピー用制御信号 590 フラッシュメモリ用書き込み制御信号 600 第2メモリ用書き込み制御信号 610 フラッシュメモリ部ダウンロード信号生成部選
択信号 620 第2メモリ部ダウンロード信号生成部選択信号 630 相互コピー信号生成部選択信号 700 ダウンロード用データ 710 ダウンロード用アドレス 720 相互コピー開始信号 730 ダウンロード書き込み信号 740 モード信号 750 メモリ間コピーフラグ 760 ,770 イネーブル信号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 三上 勉 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 Fターム(参考) 5B018 GA02 GA06 HA04 HA14 KA03 NA06 NA08 5B048 AA11 AA19

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 CPUと、 フラッシュメモリ部と、 前記CPUによる読出しが前記フラッシュメモリ部との
    間で選択的に行われる第2メモリ部と、 外部から前記第2メモリ部へデータをダウンロードする
    第2メモリ部ダウンロード手段と、 前記第2メモリ部が記憶するデータを前記フラッシュメ
    モリへ転送する転送手段と、 外部から動作モードが指定される制御手段とを備え、 前記制御手段は、 外部から第1動作モードが指定されると、外部から与え
    られたアドレスに基づいて外部から与えられたデータを
    前記第2メモリ部へダウンロードするように前記第2メ
    モリ部ダウンロード手段を制御し、 外部から第2動作モードが指定されると、前記第2メモ
    リ部が記憶するデータを前記フラッシュメモリ部へ転送
    するように転送手段を制御すること、を特徴とするフラ
    ッシュメモリを混載するマイクロコンピュータ。
  2. 【請求項2】 前記フラッシュメモリ部と前記第2メモ
    リ部とは、前記CPUの管理するアドレス空間が互いに
    重複することを特徴とする請求項1記載のフラッシュメ
    モリを混載するマイクロコンピュータ。
  3. 【請求項3】 CPUと、 フラッシュメモリ部と、 前記フラッシュメモリ部の記憶内容と前記記憶内容に予
    め付随して記憶されたエラー検出コードとを所定のタイ
    ミングで読出してエラー検出を行うエラー検出部と、 前記エラー検出部によってエラーが検出されたときに該
    エラーが訂正可能か否かを判断し、訂正可能と判断した
    場合に該エラーを訂正するエラー訂正部とを備えたこと
    を特徴とするフラッシュメモリを混載するマイクロコン
    ピュータ。
  4. 【請求項4】 予め前記フラッシュメモリ部と同じ記憶
    内容を記憶した第2メモリ部を備え、 前記エラー訂正部は、前記エラー検出部によって検出さ
    れたエラーが訂正不可能と判断した場合に、前記第2メ
    モリ部の記憶内容を読出して、前記エラーが検出された
    前記フラッシュメモリ部の前記記憶内容を置き換えるこ
    とを特徴とする請求項3記載のフラッシュメモリを混載
    するマイクロコンピュータ。
  5. 【請求項5】 前記CPUの初期実行を前記フラッシュ
    メモリ部から行うか前記第2メモリ部から行うかを選択
    するブート選択部を備え、 前記ブート選択部は、前記エラー検出部によって検出さ
    れたエラーが訂正不可能と判断した回数が所定の数に達
    した場合に、前記CPUの初期実行を前記第2メモリ部
    から行うように選択することを特徴とする請求項4記載
    のフラッシュメモリを混載するマイクロコンピュータ。
  6. 【請求項6】 前記CPUは、クロックを受けて動作
    し、前記所定のタイミングは、前記CPUへの前記クロ
    ックの供給の開始時点であることを特徴とする請求項3
    〜請求項5のいずれかに記載のフラッシュメモリを混載
    するマイクロコンピュータ。
  7. 【請求項7】 前記開始時点は、前記CPUへの前記ク
    ロックの供給が停止された後の供給の再開時点、または
    前記クロックの発振が停止された後の発振の再開時点、
    または前記マイクロコンピュータに対する電源投入時点
    であることを特徴とする請求項6記載のフラッシュメモ
    リを混載するマイクロコンピュータ。
  8. 【請求項8】 CPUと、 フラッシュメモリ部と、 前記CPUによる読出しが前記フラッシュメモリとの間
    で選択的に行われる第2メモリ部と、 外部から前記第2メモリ部へデータをダウンロードする
    第2メモリ部ダウンロード手段と、 前記第2メモリ部が記憶するデータを前記フラッシュメ
    モリへ転送する転送手段とを備えたマイクロコンピュー
    タが実行するプログラムをデバッグするデバッグ方法で
    あって、 前記第2メモリ部ダウンロード手段を用いて、外部装置
    から前記第2メモリ部へ被デバッグプログラムをダウン
    ロードするダウンロードステップと、 前記第2メモリ部が記憶する前記被デバッグプログラム
    を試実行する試実行ステップと、 前記試実行ステップの結果に基づいて、前記外部装置に
    おいて前記被デバッグプログラムを修正する修正ステッ
    プと、 前記修正ステップにおいて修正された前記被デバッグプ
    ログラムを前記転送手段を用いて前記フラッシュメモリ
    へ転送する転送ステップとを有することを特徴とするフ
    ラッシュメモリを混載するマイクロコンピュータのデバ
    ッグ方法。
JP10179460A 1998-06-26 1998-06-26 フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法 Pending JP2000010872A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10179460A JP2000010872A (ja) 1998-06-26 1998-06-26 フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10179460A JP2000010872A (ja) 1998-06-26 1998-06-26 フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法

Publications (1)

Publication Number Publication Date
JP2000010872A true JP2000010872A (ja) 2000-01-14

Family

ID=16066247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10179460A Pending JP2000010872A (ja) 1998-06-26 1998-06-26 フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法

Country Status (1)

Country Link
JP (1) JP2000010872A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658564B1 (ko) 2004-12-06 2006-12-15 한국전자통신연구원 임베디드 시스템의 소프트웨어 개발 및 실행 방법, 그리고이를 이용한 이동 단말 장치
KR100665134B1 (ko) 2004-12-09 2007-01-04 한국전자통신연구원 임베디드 시스템의 루트 파일 시스템 구성 및 실행 방법,그리고 이를 이용한 이동 단말 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658564B1 (ko) 2004-12-06 2006-12-15 한국전자통신연구원 임베디드 시스템의 소프트웨어 개발 및 실행 방법, 그리고이를 이용한 이동 단말 장치
KR100665134B1 (ko) 2004-12-09 2007-01-04 한국전자통신연구원 임베디드 시스템의 루트 파일 시스템 구성 및 실행 방법,그리고 이를 이용한 이동 단말 장치

Similar Documents

Publication Publication Date Title
JP4722839B2 (ja) メモリ制御回路、不揮発性記憶装置及びメモリ制御方法
US7558904B2 (en) Controller, data memory system, data rewriting method, and computer program product
EP1607865B1 (en) Data control unit capable of correcting boot errors, and corresponding method
US20080294938A1 (en) Semiconductor integrated circuit device having fail-safe mode and memory control method
JP2001506388A (ja) 光学ディスクドライブマイクロコントローラのプログラムコード更新方法及び光学ディスクドライブ
JP4279902B2 (ja) ディジタルテレビジョン放送受信装置およびディジタルテレビジョン放送受信用プログラムの取得方法
JP2002351685A (ja) 不揮発性メモリのデータ更新方法及び制御装置
US7971014B2 (en) Information processing apparatus and data recovering method
JP2004046453A (ja) シングルチップマイクロコンピュータおよびそのブート領域切り替え方法
JP2005157528A (ja) メモリ装置
JP2000010872A (ja) フラッシュメモリを混載するマイクロコンピュータおよびそのデバッグ方法
JP4375857B2 (ja) プログラム再書き込み機能付コンピュータ
JP3987244B2 (ja) 電子機器
JPH07248978A (ja) 不揮発性メモリ
JP2001117766A (ja) マスクromのパッチ機能を備えた情報処理装置
JP3425838B2 (ja) データ退避読み出し方法
JP2000059981A (ja) ディジタル形保護継電装置
JP4689792B2 (ja) Prom切替制御システム
JP2001344156A (ja) フラッシュメモリを有する装置およびデータの書き換え方法
JP2007041798A (ja) 情報処理装置及び情報処理装置のメモリ書き換え方法
US20050068842A1 (en) Electronic device, nonvolatile memory and method of overwriting data in nonvolatile memory
JP2003242046A (ja) 情報処理装置、情報処理装置の動作方法及びプログラム
JP2003122575A (ja) 情報処理装置
JP2005128613A (ja) 画像形成装置
JPH0652065A (ja) メモリ制御回路