JPH11272642A - 1チップマイクロコンピュータ及び起動アドレス設定方法 - Google Patents

1チップマイクロコンピュータ及び起動アドレス設定方法

Info

Publication number
JPH11272642A
JPH11272642A JP7879398A JP7879398A JPH11272642A JP H11272642 A JPH11272642 A JP H11272642A JP 7879398 A JP7879398 A JP 7879398A JP 7879398 A JP7879398 A JP 7879398A JP H11272642 A JPH11272642 A JP H11272642A
Authority
JP
Japan
Prior art keywords
program
writing
address
cpu
write
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
JP7879398A
Other languages
English (en)
Inventor
Akihiro Ono
明洋 小野
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP7879398A priority Critical patent/JPH11272642A/ja
Publication of JPH11272642A publication Critical patent/JPH11272642A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Microcomputers (AREA)
  • Read Only Memory (AREA)

Abstract

(57)【要約】 【課題】 内蔵する半導体記憶素子に記憶されたプログ
ラムを更新した後に、不正処理の実行を防止することの
できる1チップマイクロコンピュータ 【解決手段】 オンボード書き込み時、書き込みデータ
生成回路8は、データポート5を介して取得したデータ
をフラッシュメモリ3に順次格納する。書き込みアドレ
ス生成回路7は、フラッシュメモリ3に全てのデータを
格納すると、リセットアドレス生成回路6にアドレス終
了信号を出力する。CPU1は、電源投入時に、リセッ
トアドレス生成回路6に示されるフラッシュメモリ3に
記憶された新しいプログラムを実行する。一方、オンボ
ード書き込み処理が未完了のまま終了した場合、CPU
1は、電源投入時に、リセットアドレス生成回路6に示
される外部メモリ9に記憶されたオンボード書き込みプ
ログラムを再度実行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、内蔵する半導体記
憶素子に記憶されたプログラムを更新できる1チップマ
イクロコンピュータに関し、特に、プログラムの更新後
における不正処理の実行を防止することのできる1チッ
プマイクロコンピュータ及び起動アドレス設定方法に関
する。
【0002】
【従来の技術】従来の1チップマイクロコンピュータ
(以下、「1チップマイコン」という。)は、CPU
(central processing unit)、ROM(read only mem
ory)及びRAM(random access memory)等が1つの
チップとして形成される。1チップマイコンは、システ
ムに応じた周辺電子デバイス等が配置された基板上に実
装され、内蔵のROMに記憶されたプログラムに従っ
て、CPUにより予め定められた処理を行う。
【0003】最近では、ROMの代わりにフラッシュ型
EEPROM(Electrically Erasable Programmable R
OM:以下、「フラッシュメモリ」という。)が内蔵され
た1チップマイコンも知られている。このような1チッ
プマイコンは、システムとして完成した後、機能強化等
のためにCPUに実行させるプログラムを変更する必要
が生じた場合でも、フラッシュメモリに新しいプログラ
ムの書き込みを行い、プログラムを更新することができ
る。このように、完成したシステムの基板上に実装され
た1チップマイコンのフラッシュメモリに、新しいプロ
グラムを書き込むことを”オンボード書き込み”とい
う。
【0004】このオンボード書き込みは、ROMライタ
のような専用の書き込み装置を使用する第1の方式と、
1チップマイコンに内蔵された書き込み回路を使用する
第2の方式とが知られている。
【0005】以下、この第2の方式によりオンボード書
き込みを行う1チップマイコンについて図6を参照して
説明する。図6は、オンボード書き込み可能な基板上に
実装された従来の1チップマイコンの構成を示す模式図
である。
【0006】この1チップマイコンは、CPU101
と、フラッシュメモリ104のデータを書き込むための
アドレス信号を生成する書き込みアドレス生成回路10
2と、データポート106から入力したデータをデータ
バスに出力する書き込みデータ生成回路103と、フラ
ッシュメモリ104と、オンボード書き込みを指示する
モード信号を入力するフラッシュ書き込みモード信号入
力端子105と、外部記憶装置等にデータとして記憶さ
れた新しいプログラムを入力するデータポート106と
から構成される。
【0007】また、基板側には、予めオンボード書き込
み処理のための処理プログラムを記憶した外部メモリ1
07が実装されている。
【0008】電源投入時に、フラッシュ書き込みモード
信号入力端子105からアクティブ(例えば、ハイレベ
ル)のモード信号が入力されると、CPU101には、
外部メモリ107に記憶されたオンボード書き込みプロ
グラムのスタートアドレスとなるリセットアドレスが設
定される。CPU101は、外部メモリ107に記憶さ
れたオンボード書き込みプログラムに従って、フラッシ
ュメモリ104に新しいプログラムの書き込みを開始す
る。
【0009】書き込みアドレス生成回路102は、フラ
ッシュ書き込みモード信号入力端子105から入力され
るモード信号がアクティブとなると、予め定められたフ
ラッシュメモリ104に割り当てられたアドレス信号を
生成する。
【0010】データポート106は、図示せぬインター
フェース部を介して供給される新しいプログラムとなる
データ取得し、書き込みデータ生成回路103に出力す
る。書き込みデータ生成回路103は、データポート1
06から取得したデータをデータバスに出力する。その
際、書き込みデータ生成回路103は、データバスへの
データ出力に同期を合わせて、書き込み信号をフラッシ
ュメモリ104及び書き込みアドレス生成回路102に
出力する。
【0011】フラッシュメモリ104は、書き込みアド
レス生成回路102に示されるアドレスに、書き込みデ
ータ生成回路103から送信されるデータを格納する。
【0012】書き込みアドレス生成回路102は、書き
込みデータ生成回路103から送られる書き込み信号の
変化時(例えば、ハイレベルからローレベルへの立ち下
がりのタイミング)に、生成するアドレス信号の値をイ
ンクリメントする。
【0013】これらの動作を繰り返すことにより、1チ
ップマイコンは、データポート106を介して入力した
データが、順次フラッシュメモリ104に格納され、こ
の結果、フラッシュメモリ104に新しいプログラムが
書き込まれて更新される。
【0014】
【発明が解決しようとする課題】しかし、上述のオンボ
ード書き込み処理中に、何らかの原因により書き込みが
中断し、オンボード書き込み処理を未完了のまま終了す
ると、フラッシュメモリ104に不完全なプログラムが
書き込まれてしまう。この状態で、電源を投入すると、
1チップマイコンが不正処理を行い、システム自体に障
害を生じさせるおそれがあった。
【0015】特開平8−249305号公報には、オン
ボード書き込み処理中において1チップマイコンのCP
UにEEPROMのプログラムを実行させずに、外部メ
モリの予め定められたアドレスに記憶されたスタートア
ドレスを読み込ませ、外部メモリに記憶されたプログラ
ムを実行させる技術が開示されている。しかし、特開平
8−249305号公報に開示されている1チップマイ
コンは、オンボード書き込みによりEEPROMに不完
全なプログラムが書き込まれた状態で起動された場合
に、同様に不正処理を行い、システム自体に障害を生じ
させるおそれがあった。
【0016】本発明は、上記実状に鑑みてなされたもの
で、内蔵する半導体記憶素子に記憶されたプログラムを
更新した後に、不正処理の実行を防止することのできる
1チップマイクロコンピュータ及び起動アドレス設定方
法を提供することを目的とする。
【0017】
【課題を解決するための手段】上記目的を達成するた
め、この発明の第1の観点に係る1チップマイクロコン
ピュータは、プログラムを記憶するデータ消去及びデー
タ書き込み可能な半導体メモリと、前記半導体メモリに
記憶されたプログラムを実行するCPUとが1つのチッ
プに形成される1チップマイクロコンピュータであっ
て、前記CPUに実行させるプログラムを入力するプロ
グラム入力手段と、前記プログラム入力手段が入力した
プログラムを前記半導体メモリに書き込む書き込み手段
と、前記書き込み手段によるプログラムの書き込みが未
完了の場合に、前記CPUが動作を開始する起動アドレ
スを予め定められたアドレス空間に設定する起動アドレ
ス設定手段と、を備えることを特徴とする。
【0018】この発明によれば、書き込み手段は、プロ
グラム入力手段が入力したプログラムを半導体メモリに
書き込む。起動アドレス設定手段は、書き込み手段によ
るプログラムの書き込みが未完了の場合に、CPUが動
作を開始する起動アドレスを予め定められたアドレス空
間に設定する。この結果、内蔵する半導体メモリへのプ
ログラムの書き込みが未完了となった場合に、不正処理
の実行を防止することができる。
【0019】前記書き込み手段によるプログラムの書き
込みの未完了を判別する書き込み判別手段を更に備え、
前記起動アドレス設定手段は、前記書き込み判別手段が
前記書き込み手段によるプログラムの書き込みの未完了
を判別した場合に、前記CPUが動作を開始する起動ア
ドレスを予め定められたアドレス空間に設定してもよ
い。この結果、内蔵する半導体メモリへのプログラムの
書き込みが未完了となった場合に、不正処理の実行を防
止することができる。
【0020】前記半導体メモリは、フラッシュメモリか
ら構成され、前記書き込み手段は、プログラム入力手段
が入力したプログラムをフラッシュメモリに書き込んで
もよい。
【0021】上記目的を達成するため、この発明の第2
の観点に係る1チップマイクロコンピュータは、予め定
められた第1の起動アドレス及び第2の起動アドレスに
示される何れかのプログラムを実行するCPUと、プロ
グラムの消去及び書き込みが可能な半導体メモリとが1
つのチップとして形成される1チップマイクロコンピュ
ータであって、前記CPUに実行させるプログラムを外
部から入力するプログラム入力手段と、前記プログラム
入力手段が入力したプログラムを前記半導体メモリに書
き込む書き込み手段と、前記書き込み手段によるプログ
ラムの書き込みが正常終了した場合に、第1の起動アド
レスを前記CPUの起動アドレスに設定し、前記書き込
み手段によるプログラムの書き込みが異常終了した場合
に、第2の起動アドレスを前記CPUの起動アドレスに
設定する起動アドレス設定手段と、を備えることを特徴
とする。
【0022】この発明によれば、書き込み手段は、プロ
グラム入力手段が入力したプログラムを半導体メモリに
書き込む。起動アドレス設定手段は、書き込み手段によ
るプログラムの書き込みが正常終了した場合に、第1の
起動アドレスをCPUの起動アドレスに設定し、書き込
み手段によるプログラムの書き込みが異常終了した場合
に、第2の起動アドレスをCPUの起動アドレスに設定
する。この結果、内蔵する半導体メモリへのプログラム
の書き込みが未完了となった場合に、不正処理の実行を
防止することができる。
【0023】上記目的を達成するため、この発明の第3
の観点に係る1チップマイクロコンピュータは、プログ
ラムを記憶するデータ消去及びデータ書き込み可能な記
憶手段と、前記記憶手段に記憶されたプログラムを実行
する処理制御手段とが一体に形成される1チップマイク
ロコンピュータであって、前記処理制御手段に実行させ
るプログラムを外部から入力するプログラム入力手段
と、前記プログラム入力手段が入力したプログラムを前
記記憶手段に書き込む書き込み手段と、前記書き込み手
段によるプログラムの書き込みが未完了の場合に、前記
処理制御手段が動作を開始する起動アドレスを予め定め
られたアドレス空間に設定する起動アドレス設定手段
と、を備えることを特徴とする。
【0024】この発明によれば、書き込み手段は、プロ
グラム入力手段が入力したプログラムを記憶手段に書き
込む。起動アドレス設定手段は、書き込み手段によるプ
ログラムの書き込みが未完了の場合に、処理制御手段が
動作を開始する起動アドレスを予め定められたアドレス
空間に設定する。この結果、内蔵する半導体メモリへの
プログラムの書き込みが未完了となった場合に、不正処
理の実行を防止することができる。
【0025】上記目的を達成するため、この発明の第4
の観点に係る起動アドレス設定方法は、1チップマイク
ロコンピュータに内蔵されるCPUに実行させるプログ
ラムを入力するプログラム入力ステップと、前記プログ
ラム入力ステップにて入力したプログラムを1チップマ
イクロコンピュータに内蔵されるデータ消去及びデータ
書き込み可能な半導体メモリに書き込む書き込みステッ
プと、前記書き込みステップによるプログラムの書き込
みが未完了の場合に、CPUが動作を開始する起動アド
レスを予め定められたアドレス空間に設定する起動アド
レス設定ステップと、を備えることを特徴とする。
【0026】この発明によれば、書き込みステップは、
プログラム入力ステップにて入力したプログラムを1チ
ップマイクロコンピュータに内蔵されるデータ消去及び
データ書き込み可能な半導体メモリに書き込む。起動ア
ドレス設定ステップは、書き込みステップによるプログ
ラムの書き込みが未完了の場合に、CPUが動作を開始
する起動アドレスを予め定められたアドレス空間に設定
する。この結果、内蔵する半導体メモリへのプログラム
の書き込みが未完了となった場合に、不正処理の実行を
防止することができる。
【0027】上記目的を達成するため、この発明の第5
の観点に係る起動アドレス設定方法は、処理制御装置に
実行させるプログラムを入力するプログラム入力ステッ
プと、前記プログラム入力ステップにて入力したプログ
ラムをプログラムの消去及び書き込みが可能な記憶装置
に書き込む書き込みステップと、前記書き込みステップ
によるプログラムの書き込みが未完了の場合に、処理装
置が動作を開始する起動アドレスを予め定められたアド
レス空間に設定する起動アドレス設定ステップと、を備
えることを特徴とする。
【0028】この発明によれば、書き込みステップは、
プログラム入力ステップにて入力したプログラムをプロ
グラムの消去及び書き込みが可能な記憶装置に書き込
む。起動アドレス設定ステップは、書き込みステップに
よるプログラムの書き込みが未完了の場合に、処理装置
が動作を開始する起動アドレスを予め定められたアドレ
ス空間に設定する。この結果、内蔵する半導体メモリへ
のプログラムの書き込みが未完了となった場合に、不正
処理の実行を防止することができる。
【0029】
【発明の実施の形態】本発明の実施の形態にかかる1チ
ップマイクロコンピュータ(以下、「1チップマイコ
ン」という。)について以下図面を参照して説明する。
【0030】図1は、この発明の実施の形態にかかるオ
ンボード書き込み可能な基板上に実装された1チップマ
イコンの構成を示す模式図である。この1チップマイコ
ンは、図1に示すように、CPU1と、書き込み制御回
路2と、フラッシュメモリ3と、フラッシュ書き込みモ
ード信号入力端子4と、データポート5とから構成され
る。CPU1は、書き込み制御回路2、フラッシュメモ
リ3及び、後述する外部メモリ9と、アドレスバス及び
データバスを介して接続される。また、CPU1は、リ
セットアドレス生成回路6を備え、電源投入時等の起動
時に、リセットアドレス生成回路6により設定されたフ
ラッシュメモリ3又は外部メモリ9のリセットアドレス
に記憶されている処理プログラムを実行する。
【0031】リセットアドレス生成回路6は、図2に示
すように、P.O.C61と、アドレス記憶レジスタ6
2と、アドレスセレクタ63とから構成される。P.
O.C(パワーオンリセット信号発生回路)61は、図
示せぬ電源の投入時にワンショットパルス信号を生成
し、アドレス記憶レジスタ62に供給する。
【0032】アドレス記憶レジスタ62は、RSフリッ
プフロップ(RSラッチ)から構成される。アドレス記
憶レジスタ62は、P.O.C61から出力されるワン
ショットパルス信号及び後述する書き込みアドレス生成
回路7から出力されるアドレス終了信号をリセット信号
として入力し、また、フラッシュ書き込みモード信号入
力端子4から入力したフラッシュ書き込みモード信号を
セット信号として入力する。アドレス記憶レジスタ62
は、図3に示すように、入力したリセット信号及びセッ
ト信号に従って、リセットアドレス選択信号をアドレス
セレクタ63に出力する。例えば、アドレス記憶レジス
タ62は、リセット信号、即ち、ワンショットパルス信
号又はアドレス終了信号がハイレベルセット信号、か
つ、セット信号、即ちフラッシュ書き込みモード信号が
ローレベルの場合に、ローレベルのリセットアドレス選
択信号を出力する。
【0033】アドレスセレクタ63は、アドレス記憶レ
ジスタ62から供給されるリセットアドレス選択信号に
従って、フラッシュメモリ3に割り当てられた起動アド
レスとなるフラッシュメモリ用のリセットアドレス又
は、外部メモリ9に割り当てられた外部メモリ用のリセ
ットアドレスをCPU1の起動アドレスに設定する。ア
ドレスセレクタ63は、アドレス記憶レジスタ62から
供給されるリセットアドレス選択信号がローレベルの場
合に、フラッシュメモリ用のリセットアドレスを選択
し、一方、リセットアドレス選択信号がハイレベルの場
合に、外部アドレス用のリセットアドレスを選択する。
【0034】図1に戻って、書き込み制御回路2は、書
き込みアドレス生成回路7と、書き込みデータ生成回路
8とから構成される。書き込みアドレス生成回路7は、
フラッシュ書き込みモード信号入力端子4から入力され
るモード信号が、ハイレベルとなると、予め定められた
フラッシュメモリ3に割り当てられたアドレス信号を生
成する。
【0035】書き込みデータ生成回路8は、データポー
ト5から入力したデータをデータバスに出力する。ま
た、書き込みデータ生成回路8は、データバスへのデー
タ出力に同期を合わせて、書き込み信号をフラッシュメ
モリ3及び書き込みアドレス生成回路7に出力する。
【0036】フラッシュメモリ3は、CPU1が実行す
る処理プログラムを記憶する。また、オンボード書き込
み時に、フラッシュメモリ3は、書き込みアドレス生成
回路7の指定するアドレスに、書き込みデータ生成回路
8から出力されたデータを格納する。
【0037】フラッシュ書き込みモード信号入力端子4
は、図示せぬインターフェース回路等からオンボード書
き込みを指示するモード信号を入力する。
【0038】データポート5は、図示せぬインターフェ
ース回路等を介して、外部記憶装置等にデータとして記
憶された新しいプログラムを入力する。
【0039】また、基板側には、予めオンボード書き込
み処理の処理プログラムを記憶した外部メモリ9が実装
されている。
【0040】以下、1チップマイコンが行うオンボード
書き込み処理について図4を参照して説明する。電源投
入時に、P.O.C61からワンショットパルス信号が
出力されるため、アドレス記憶レジスタ62は、リセッ
ト信号がハイレベルとなり、ローレベルのリセットアド
レス選択信号を出力する。その後、フラッシュ書き込み
モード信号入力端子4からハイレベルのモード信号が入
力されると、アドレス記憶レジスタ62は、セット信号
がハイレベルとなるため、ハイレベルのリセットアドレ
ス選択信号をアドレスセレクタ63に出力する。アドレ
スセレクタ63は、CPU1の起動アドレスに、外部メ
モリ9に記憶されたオンボード書き込みプログラムのリ
セットアドレスを設定する。このため、CPU1は、外
部メモリ9に記憶されたオンボード書き込みプログラム
に従って、フラッシュメモリ3に新しいプログラムの書
き込みを開始する。
【0041】CPU1は、図示せぬインターフェース回
路等を介して、外部記憶装置等にデータとして記憶され
た新しいプログラムをデータポート5に順次入力できる
ように配置する(ステップS1)。
【0042】書き込みアドレス生成回路7は、フラッシ
ュ書き込みモード信号入力端子4から入力されるモード
信号がハイレベルであるため、予め定められたフラッシ
ュメモリ3に割り当てられたアドレス信号を生成する
(ステップS2)。
【0043】書き込みデータ生成回路8は、CPU1に
より配列されたデータをデータポート5から入力し、入
力したデータをデータバスに出力する(ステップS
3)。その際、書き込みデータ生成回路8は、データバ
スへのデータ出力に同期を合わせて、書き込み信号をフ
ラッシュメモリ3及び書き込みアドレス生成回路7に出
力する。
【0044】フラッシュメモリ3は、書き込みアドレス
生成回路7に示されるアドレスにデータバスを介して書
き込みデータ生成回路8から送信されたデータを格納す
る(ステップS4)。
【0045】書き込みアドレス生成回路7は、書き込み
データ生成回路8から送られる書き込み信号が、ハイレ
ベルからローレベルに変化すると、生成するアドレス信
号の値をインクリメントする(ステップS5)。
【0046】書き込みアドレス生成回路7は、予め定め
られた終了アドレスに達したか否かを判別する(ステッ
プS6)。
【0047】書き込みアドレス生成回路7の生成するア
ドレスが、予め定められた終了アドレスに達しない間、
ステップS3からステップS6の処理が繰り返され、デ
ータポート5から入力したデータがフラッシュメモリ3
に順次格納される。
【0048】一方、書き込みアドレス生成回路7は、予
め定められた終了アドレスに達したと判別した場合、リ
セットアドレス生成回路6にハイレベルのアドレス終了
信号を出力し、オンボード書き込み処理を終了する(ス
テップS7)。リセットアドレス生成回路6は、書き込
みアドレス生成回路7からハイレベルのアドレス終了信
号が入力されると、リセット信号がハイレベルとなるた
め、ローレベルのリセットアドレス選択信号をアドレス
セレクタ63に出力する。リセットアドレス生成回路6
は、リセットアドレス選択信号をローレベルに保持す
る。
【0049】この結果、フラッシュメモリ3に新しいプ
ログラムが書き込まれ更新される。また、フラッシュ書
き込みモード信号入力端子4からローレベルのモード信
号が入力される通常時の、ソフトウェアリセット時等
に、アドレス記憶レジスタ62は、セット信号がローレ
ベルに保持されるため、ローレベルのリセットアドレス
選択信号を出力する。アドレスセレクタ63は、CPU
1の起動アドレスに、フラッシュメモリ3に記憶された
プログラムのリセットアドレスを設定する。このため、
CPU1は、フラッシュメモリ3に記憶された新しいプ
ログラムに従って、所定の処理を開始する。
【0050】また、オンボード書き込み処理中に、何ら
かの原因により書き込みが中断し、オンボード書き込み
処理を未完了のまま終了した場合、書き込みアドレス生
成回路7は、アドレス記憶レジスタ62にハイレベルの
アドレス終了信号を供給しない。このため、ソフトウェ
アリセット時等に、アドレス記憶レジスタ62は、ロー
レベルのリセットアドレス選択信号をそのまま出力し、
アドレスセレクタ63が、CPU1の起動アドレスに、
外部メモリ9に記憶されたプログラムのリセットアドレ
スを設定する。この結果、CPU1は、外部メモリ9に
記憶されたオンボード書き込みプログラムに従って、フ
ラッシュメモリ3に新しいプログラムの書き込みを再度
開始する。
【0051】このように、上述の実施の形態では、フラ
ッシュメモリ3への新しいプログラムの書き込みが未完
了となった場合に、リセットアドレス生成回路6が外部
メモリ9に記憶されたプログラムのリセットアドレスを
設定するため、CPU1の不正処理の実行を防止するこ
とができる。
【0052】上述の実施の形態では、アドレス記憶レジ
スタ62がRSフリップフロップ(RSラッチ)から構
成されていたが、アドレス記憶レジスタ62は、不揮発
性メモリから構成されてもよい。以下、不揮発性メモリ
から構成されたアドレス記憶レジスタ62を使用したこ
の発明の実施の形態に係る1チップマイコンの変形例に
ついて説明する。
【0053】図5は、この発明の実施の形態に係る1チ
ップマイコンの変形例のリセットアドレス生成回路6の
構成を示す模式図である。図5に示すリセットアドレス
生成回路6は、不揮発性メモリから構成されたアドレス
記憶レジスタ62と、アドレスセレクタ63と、書き込
み制御回路64とから構成される。
【0054】書き込み制御回路64は、書き込みアドレ
ス生成回路7から出力されるアドレス終了信号及び、フ
ラッシュ書き込みモード信号入力端子4から供給される
フラッシュ書き込みモード信号を入力する。書き込み制
御回路64は、ハイレベルのフラッシュ書き込みモード
信号を入力すると、アドレス記憶レジスタ62に書き込
み信号を出力し、一方、ハイレベルのアドレス終了信号
を入力すると、アドレス記憶レジスタ62に消去信号を
出力する。
【0055】アドレス記憶レジスタ62は、書き込み制
御回路64から書き込み信号が供給されると、外部アド
レス9の選択を記憶し、ハイレベルのリセットアドレス
選択信号をアドレスセレクタ63に出力する。一方、ア
ドレス記憶レジスタ62は、消去信号が供給されると、
フラッシュメモリ3の選択を記憶し、ローレベルのリセ
ットアドレス選択信号をアドレスセレクタ63に出力す
る。
【0056】アドレスセレクタ63は、アドレス記憶レ
ジスタ62から供給されるリセットアドレス選択信号に
従って、フラッシュメモリ3に割り当てられた起動アド
レスとなるフラッシュメモリ用のリセットアドレス又
は、外部メモリ9に割り当てられた外部メモリ用のリセ
ットアドレスをCPU1の起動アドレスに設定する。
【0057】アドレスセレクタ63は、アドレス記憶レ
ジスタ62から供給されるリセットアドレス選択信号が
ローレベルの場合に、フラッシュメモリ用のリセットア
ドレスを選択し、一方、リセットアドレス選択信号がハ
イレベルの場合に、外部アドレス用のリセットアドレス
を選択する。
【0058】この結果、フラッシュメモリ3に新しいプ
ログラムが書き込まれ正常に更新されると、アドレス記
憶レジスタ62は、書き込み制御回路64から消去信号
が供給され、フラッシュメモリ3の選択を記憶する。従
って、電源投入時等に、アドレス記憶レジスタ62は、
ローレベルのリセットアドレス選択信号をアドレスセレ
クタ63に出力し、アドレスセレクタ63が、CPU1
の起動アドレスに、フラッシュメモリ3に記憶されたプ
ログラムのリセットアドレスを設定する。このため、C
PU1は、フラッシュメモリ3に記憶された新しいプロ
グラムに従って、所定の処理を開始する。
【0059】また、オンボード書き込み処理中に、何ら
かの原因により書き込みが中断し、オンボード書き込み
処理を未完了のまま終了した場合、書き込みアドレス生
成回路7は、書き込み制御回路64にハイレベルのアド
レス終了信号を供給しない。このため、アドレス記憶レ
ジスタ62は、フラッシュメモリ3の選択を記憶したま
まであるため、電源投入時等に、ローレベルのリセット
アドレス選択信号をそのまま出力し、アドレスセレクタ
63が、CPU1の起動アドレスに、外部メモリ9に記
憶されたプログラムのリセットアドレスを設定する。こ
の結果、CPU1は、外部メモリ9に記憶されたオンボ
ード書き込みプログラムに従って、フラッシュメモリ3
に新しいプログラムの書き込みを再度開始する。
【0060】このように、上述の実施の形態では、フラ
ッシュメモリ3への新しいプログラムの書き込みが未完
了となった場合に、リセットアドレス生成回路6が外部
メモリ9に記憶されたプログラムのリセットアドレスを
設定するため、CPU1の不正処理の実行を防止するこ
とができる。
【0061】上述の実施の形態では、フラッシュメモリ
3に記憶されるプログラムの更新について説明したが、
フラッシュメモリ3に記憶されるデータは、任意であ
る。例えば、システム特有の設定データ等を記憶しても
よく、その設定データが有効に更新されたか否かを判別
してもよい。
【0062】上述の実施の形態では、ハードウェア割り
込み等が発生しない前提で説明したが、ハードウェア割
り込み等に対応したオンボード書き込みとしてもよい。
例えば、オンボード書き込み時の最初に、ハードウェア
割り込みの割り込みベクタに予め定められた外部メモリ
のアドレスを設定してもよい。
【0063】
【発明の効果】以上説明したように、本発明によれば、
内蔵する半導体記憶素子に記憶されたプログラムを更新
した後に、不正処理の実行を防止することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係る1チップマイコンの
構成を示す模式図である。
【図2】本発明の実施の形態に係るリセットアドレス生
成回路の構成を示す模式図である。
【図3】本発明の実施の形態に係るアドレス記憶レジス
タの入力信号と出力信号との関係を説明するための図で
ある。
【図4】本発明の実施の形態に係るオンボード書き込み
処理を説明するフローチャートである。
【図5】本発明の実施の形態の変形例に係るリセットア
ドレス生成回路の構成を示す模式図である。
【図6】従来の1チップマイコンの構成を示す模式図で
ある。
【符号の説明】
1 CPU 2 書き込み制御回路 3 フラッシュメモリ 4 フラッシュ書き込みモード信号入力端子 5 データポート 6 リセットアドレス生成回路 7 書き込みアドレス生成回路 8 書き込みデータ生成回路 9 外部メモリ 61 P.O.C 62 アドレス記憶レジスタ 63 アドレスセレクタ 64 書き込み制御回路 101 CPU 102 書き込みアドレス生成回路 103 書き込みデータ生成回路 104 フラッシュメモリ 105 フラッシュ書き込みモード信号入力端子 106 データポート 107 外部メモリ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】プログラムを記憶するデータ消去及びデー
    タ書き込み可能な半導体メモリと、前記半導体メモリに
    記憶されたプログラムを実行するCPU(central proc
    essing unit)とが1つのチップに形成される1チップ
    マイクロコンピュータであって、 前記CPUに実行させるプログラムを入力するプログラ
    ム入力手段と、 前記プログラム入力手段が入力したプログラムを前記半
    導体メモリに書き込む書き込み手段と、 前記書き込み手段によるプログラムの書き込みが未完了
    の場合に、前記CPUが動作を開始する起動アドレスを
    予め定められたアドレス空間に設定する起動アドレス設
    定手段と、 を備えることを特徴とする1チップマイクロコンピュー
    タ。
  2. 【請求項2】前記書き込み手段によるプログラムの書き
    込みの未完了を判別する書き込み判別手段を更に備え、 前記起動アドレス設定手段は、前記書き込み判別手段が
    前記書き込み手段によるプログラムの書き込みの未完了
    を判別した場合に、前記CPUが動作を開始する起動ア
    ドレスを予め定められたアドレス空間に設定する、 ことを特徴とする請求項1に記載の1チップマイクロコ
    ンピュータ。
  3. 【請求項3】前記半導体メモリは、フラッシュメモリか
    ら構成され、 前記書き込み手段は、プログラム入力手段が入力したプ
    ログラムをフラッシュメモリに書き込む、 ことを特徴とする請求項1又は2に記載の1チップマイ
    クロコンピュータ。
  4. 【請求項4】予め定められた第1の起動アドレス及び第
    2の起動アドレスに示される何れかのプログラムを実行
    するCPUと、プログラムの消去及び書き込みが可能な
    半導体メモリとが1つのチップとして形成される1チッ
    プマイクロコンピュータであって、 前記CPUに実行させるプログラムを外部から入力する
    プログラム入力手段と、 前記プログラム入力手段が入力したプログラムを前記半
    導体メモリに書き込む書き込み手段と、 前記書き込み手段によるプログラムの書き込みが正常終
    了した場合に、第1の起動アドレスを前記CPUの起動
    アドレスに設定し、前記書き込み手段によるプログラム
    の書き込みが異常終了した場合に、第2の起動アドレス
    を前記CPUの起動アドレスに設定する起動アドレス設
    定手段と、 を備えることを特徴とする1チップマイクロコンピュー
    タ。
  5. 【請求項5】プログラムを記憶するデータ消去及びデー
    タ書き込み可能な記憶手段と、前記記憶手段に記憶され
    たプログラムを実行する処理制御手段とが一体に形成さ
    れる1チップマイクロコンピュータであって、 前記処理制御手段に実行させるプログラムを外部から入
    力するプログラム入力手段と、 前記プログラム入力手段が入力したプログラムを前記記
    憶手段に書き込む書き込み手段と、 前記書き込み手段によるプログラムの書き込みが未完了
    の場合に、前記処理制御手段が動作を開始する起動アド
    レスを予め定められたアドレス空間に設定する起動アド
    レス設定手段と、 を備えることを特徴とする1チップマイクロコンピュー
    タ。
  6. 【請求項6】1チップマイクロコンピュータに内蔵され
    るCPUに実行させるプログラムを入力するプログラム
    入力ステップと、 前記プログラム入力ステップにて入力したプログラムを
    1チップマイクロコンピュータに内蔵されるデータ消去
    及びデータ書き込み可能な半導体メモリに書き込む書き
    込みステップと、 前記書き込みステップによるプログラムの書き込みが未
    完了の場合に、CPUが動作を開始する起動アドレスを
    予め定められたアドレス空間に設定する起動アドレス設
    定ステップと、 を備えることを特徴とする起動アドレス設定方法。
  7. 【請求項7】処理制御装置に実行させるプログラムを入
    力するプログラム入力ステップと、 前記プログラム入力ステップにて入力したプログラムを
    プログラムの消去及び書き込みが可能な記憶装置に書き
    込む書き込みステップと、 前記書き込みステップによるプログラムの書き込みが未
    完了の場合に、処理装置が動作を開始する起動アドレス
    を予め定められたアドレス空間に設定する起動アドレス
    設定ステップと、 を備えることを特徴とする起動アドレス設定方法。
JP7879398A 1998-03-26 1998-03-26 1チップマイクロコンピュータ及び起動アドレス設定方法 Pending JPH11272642A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7879398A JPH11272642A (ja) 1998-03-26 1998-03-26 1チップマイクロコンピュータ及び起動アドレス設定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7879398A JPH11272642A (ja) 1998-03-26 1998-03-26 1チップマイクロコンピュータ及び起動アドレス設定方法

Publications (1)

Publication Number Publication Date
JPH11272642A true JPH11272642A (ja) 1999-10-08

Family

ID=13671762

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7879398A Pending JPH11272642A (ja) 1998-03-26 1998-03-26 1チップマイクロコンピュータ及び起動アドレス設定方法

Country Status (1)

Country Link
JP (1) JPH11272642A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001097056A1 (fr) * 2000-06-14 2001-12-20 Seiko Epson Corporation Circuit integre et procede d'ecriture dans une memoire remanente a l'interieur d'un circuit integre
JP2006164228A (ja) * 2004-11-15 2006-06-22 Denso Corp マイクロコンピュータ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001097056A1 (fr) * 2000-06-14 2001-12-20 Seiko Epson Corporation Circuit integre et procede d'ecriture dans une memoire remanente a l'interieur d'un circuit integre
JP2006164228A (ja) * 2004-11-15 2006-06-22 Denso Corp マイクロコンピュータ

Similar Documents

Publication Publication Date Title
KR100198382B1 (ko) 멀티-부팅 기능을 갖는 컴퓨터 장치
US6745278B2 (en) Computer capable of rewriting an area of a non-volatile memory with a boot program during self mode operation of the computer
KR100280637B1 (ko) 고정된플래시롬의데이터갱신이가능한컴퓨터시스템및그제어방법
JP2000065899A (ja) 半導体装置およびそのデータ書き換え方法
US5950222A (en) Microcomputer using a non-volatile memory
CN114661368B (zh) 一种芯片及其启动方法
JP3173407B2 (ja) フラッシュeeprom内蔵マイクロコンピュータ
JP3830867B2 (ja) シングルチップマイクロコンピュータおよびそのブート領域切り替え方法
KR100377608B1 (ko) 데이터 처리장치 및 데이터 처리방법
JP3053301B2 (ja) 半導体集積回路及びicカード
US6584540B1 (en) Flash memory rewriting circuit for microcontroller
JPH11272642A (ja) 1チップマイクロコンピュータ及び起動アドレス設定方法
JP3214469B2 (ja) マイクロコンピュータによるフラッシュeepromの書き込み制御方法及び装置
US6604195B1 (en) Method and apparatus to use non-volatile read/write memory for bootstrap code and processes
JP2002175193A (ja) プログラム書き換え装置及びプログラム書き換え方法
JP4958201B2 (ja) マイクロコンピュータ
JPH10283172A (ja) フラッシュromデータ書き換え方式
JPH1186580A (ja) フラッシュメモリのライトステートマシンのハードウェアリセット
JP2001147863A (ja) フラッシュメモリ書き替え装置
JP2023020590A (ja) 情報処理装置、及び監視方法
JP2928216B1 (ja) 半導体集積回路
JPH11328089A (ja) Pciバスインタフェース用デバイスにおけるid情報書き込み回路
JPH11338690A (ja) フラッシュメモリ、ファームウエア使用システム装置およびファームウエア書き換え方法
JP3405239B2 (ja) 初期値設定変更装置
JP2001331325A (ja) 初期起動装置及び初期起動方法並びに記録媒体