JP2000293367A - 不揮発性メモリ内蔵マイクロコンピュータ - Google Patents

不揮発性メモリ内蔵マイクロコンピュータ

Info

Publication number
JP2000293367A
JP2000293367A JP11096864A JP9686499A JP2000293367A JP 2000293367 A JP2000293367 A JP 2000293367A JP 11096864 A JP11096864 A JP 11096864A JP 9686499 A JP9686499 A JP 9686499A JP 2000293367 A JP2000293367 A JP 2000293367A
Authority
JP
Japan
Prior art keywords
program
nonvolatile memory
memory
ram
stored
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
Application number
JP11096864A
Other languages
English (en)
Other versions
JP3727485B2 (ja
Inventor
Kazuhiro Yaekawa
和宏 八重川
Ryuichi Ogawa
竜一 小川
Tadao Takeda
忠雄 竹田
Hiroki Shudo
啓樹 首藤
Masaaki Tanno
雅明 丹野
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.)
Nippon Telegraph and Telephone Corp
Sharp Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Sharp 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 Nippon Telegraph and Telephone Corp, Sharp Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP09686499A priority Critical patent/JP3727485B2/ja
Priority to TW089105695A priority patent/TW460836B/zh
Priority to EP00302643A priority patent/EP1041486A3/en
Priority to US09/541,086 priority patent/US6598137B1/en
Priority to KR1020000017159A priority patent/KR100413227B1/ko
Publication of JP2000293367A publication Critical patent/JP2000293367A/ja
Application granted granted Critical
Publication of JP3727485B2 publication Critical patent/JP3727485B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)

Abstract

(57)【要約】 【課題】 不揮発性メモリ内蔵マイクロコンピュータに
おいて、新たなプログラムを不揮発性メモリに追加的に
格納した場合において、この追加プログラムを実行でき
るようにする。 【解決手段】 1チップマイコン1のメモリ空間に配置
された少なくとも1つの書き換え可能なフラッシュメモ
リ4と、1チップマイコン1の立上げ用の初期プログラ
ム、およびこの初期プログラムをフラッシュメモリ4に
転送するための転送プログラムを格納するブートROM
5と、フラッシュメモリ4に何もプログラムが格納され
ていないときに、前記初期プログラムを前記転送プログ
ラムに基づいてフラッシュメモリ4に転送し、その後、
ブートROM5を1チップマイコン1のメモリ空間から
排除する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えばEEPRO
M、フラッシュメモリあるいはFeRAMなどの書き換
え可能な不揮発性メモリを内蔵した不揮発性メモリ内蔵
マイクロコンピュータに関するものである。
【0002】
【従来の技術】不揮発性メモリ内蔵マイクロコンピュー
タである例えば1チップマイクロコンピュータ(以下、
1チップマイコンと称する)としては、従来からEEP
ROM内蔵の1チップマイコンが知られており、このマ
イコンはICカード用として広く普及している。このI
Cカード用の1チップマイコンのメモリマップは、例え
ば図16のようになっている。
【0003】このメモリマップにおいては、アドレス0
000H〜7FFFHに32kバイトのROM(Read On
ly Memory)領域が配置され、アドレス8000H〜9F
FFHに8kバイトのEEPROM領域が配置され、ア
ドレスFF00H〜FFFFHに256バイトのRAM
領域が配置されている。
【0004】アドレス0000Hはスタートアドレスで
あり、アドレス0000H〜000FHは割り込みベク
タに割り当てられている。この1チップマイコンのプロ
グラムは、マイコンがリセット動作をするとROMの先
頭番地に分岐し、また割り込みが発生するとROMの割
り込み処理領域に分岐する。即ち、このマイコンでは、
立ち上がり時に、ROMの先頭番地からプログラムを読
み出す。また、割り込み処理はプログラム実行中に頻繁
に行われるが、その度にプログラムはROMの割り込み
処理領域に戻る必要がある。したがって、このような1
チップマイコンでは、プログラムがあらかじめ上記のR
OM領域に存在している必要がある。なお、EEPRO
M領域はデータ領域としてもプログラム領域としても使
用可能である。
【0005】一方、上記EEPROMとは別の不揮発性
メモリとして、従来、フラッシュメモリを内蔵した1チ
ップマイコンが数多く市場に流通している。このフラッ
シュメモリ内蔵の1チップマイコンのメモリマップは、
例えば図17のようになっている。
【0006】このメモリマップにおいては、アドレス0
000H〜7FFFHに32kバイトのフラッシュメモ
リ領域が配置され、アドレスFF00H〜FFFFHに
256バイトのRAM(Random Access Memory)領域が配
置されている。
【0007】このメモリマップでは、図16に示したE
EPROM内蔵のICカード用の1チップマイコンと同
様に、アドレス0000Hがスタートアドレス、アドレ
ス0000H〜000FHが割り込みベクタに割り当て
られている。フラッシュメモリは例えば4kバイトごと
に8個のブロック(ブロック0〜ブロック7)に分割さ
れおり、これら各ブロック毎の一括消去は物理的に可能
である。このような1チップマイコンにおいて、不揮発
性メモリであるフラッシュメモリの領域は、全てプログ
ラム領域であることが前提となっている。即ち、フラッ
シュメモリに格納されたプログラムを実行中には、フラ
ッシュメモリに対して書き込みおよび消去を行わないこ
とが前提となっている。
【0008】上記1チップマイコンのフラッシュメモリ
にプログラムを書き込むには次のような方法がある。第
1の方法は、汎用のPROMライターを使用する方法で
ある。この方法においては、PROMライターのソケッ
トにソケットアダプタを介して1チップマイコンを内蔵
するデバイスを差し込み、1チップマイコンの外部端子
を介して、フラッシュメモリに直接データを書き込むの
が一般的である。
【0009】第2の方法は、1チップマイコンが内蔵し
ているシリアルコミュニケーションインターフェイス
(以下、SCIと称する)を介してデータを書き込む方
法であり、この方法は一般に汎用されている。
【0010】上記第2の方法を実施するための構成を示
すと図18のようになる。同図において、1チップマイ
コン101は、変換ボード102を介して、パーソナル
コンピュータ(以下、パソコンと称する)103と接続
される。パソコン103に格納されている書き込み用プ
ログラムコードは、データ線104を介して変換ボード
102に転送され、さらに変換ボード102からシリア
ルデータ線105を介して1チップマイコン101のS
CI106に取り込まれる。上記プログラムコードは、
SCI106から内部バス107を介してフラッシュメ
モリ108に送られ、ここに書き込まれる。このとき、
フラッシュメモリ108の制御はCPU109が行い、
この制御のためのプログラムはROM110またはRA
M111に格納されている。
【0011】
【発明が解決しようとする課題】ところが、図16に示
したICカード用の1チップマイコンの場合、EEPR
OMは主にデータ格納用として使用され、プログラム
は、EEPROMにも一部格納されるものの、大半は書
き換えができないROMに格納されている。この場合に
は、ROMに格納されているプログラムを書き換えるこ
とができないため、プログラムの大幅な変更はできな
い。特に、ICカードにおいてそのOS等がROMに格
納されている場合、OS等のバージョンアップは困難で
ある。
【0012】また、近年、マルチアプリケーション用の
ICカードが提案されているものの、そのICカードに
備えられる1チップマイコンが上記のような構成であれ
ば、ICカード発行後に別のアプリケーションプログラ
ムを多数書き込むことは困難である。
【0013】さらに、ROMに格納されているプログラ
ムとは別に、EEPROM内に追加的にプログラムを格
納し、このプログラムに基づいて、同一のEEPROM
をデータ領域として使おうとする場合にも、プログラム
を前述のように一旦ROM上に分岐してから上記処理を
行う必要がある。これは、メモリデバイス(EEPRO
M)をCPU側から見た場合、ハード的には、読み出し
時と書き込み時とにおいて同じアドレスとなり、同一ア
ドレスに対して読み出しと書き込みとを同時に行なうこ
とができないからである。また、上記追加プログラムと
してのアクセスプログラムはROMに転送して格納する
ことができないため、ROMに格納されているアクセス
プログラムは自由に変更することができない。したがっ
て、この場合にもあらかじめROMに格納されているプ
ログラム、即ち書き込み/消去のルーチンを使用するこ
とになるため、上記追加プログラムに基づき、その追加
プログラムが格納されている同一のEEPROMに対し
てデータの書き込み/消去を行うことはできない。
【0014】一方、前記のフラッシュメモリ内蔵の1チ
ップマイコンでは、フラッシュメモリがプログラムRO
Mとの置き換えを前提として設けられている。したがっ
て、同一のフラッシュメモリをプログラム領域とデータ
領域とに使用するのは困難である。
【0015】また、フラッシュメモリをROMの代用と
して使用している場合、ROMが無いので、プログラム
をRAM上に転送して格納すれば、フラッシュメモリに
対して書き込み/消去は実行することができる。しかし
ながら、このようにプログラムを単にRAM上に転送す
ることによってフラッシュメモリの一部をデータ領域と
して使おうとした場合には、次のような問題が発生す
る。
【0016】プログラムをフラッシュメモリからRAM
に転送し、このRAM上のプログラムに基づいてフラッ
シュメモリのデータ領域に書き込み/消去を行っている
ときに、他のブロックから割り込み要求信号が発生する
と(例えば図18においてSCI106から割り込み要
求信号112が発生すると)、プログラムはフラッシュ
メモリ上の割り込みベクタに分岐しようとする。このと
きフラッシュメモリは書き込み/消去中であるため、割
り込みベクタの読み出しができず、システムは暴走する
ことになる。特に、通常、フラッシュメモリを含む不揮
発性メモリにおいて、書き込みおよび消去は時間を要
し、CPUの書き込みおよび読み出しのサイクルと比較
して長時間となるという点から、この問題は顕著とな
る。この点は、書き込み消去のサイクルがCPUのサイ
クルと同一でない限り、不揮発性メモリ(FeRAMも
含む)が何であっても同様である。したがって、従来の
フラッシュメモリ内蔵1チップマイコンでは、同一のフ
ラッシュメモリをプログラム領域とデータ領域との両方
に使うのは困難である。
【0017】また、特開平8−278895号には、不
揮発性メモリ内蔵1チップマイコンにおいて、フラッシ
ュメモリに対してデータの書き込み/消去を行っている
ときに割り込みが発生した場合、割り込みベクタの飛び
先を自動的にRAMや他のメモリに移して暴走をさける
構成が開示されている。
【0018】しかしながら、この発明は、前述した汎用
フラッシュメモリ内蔵マイコンに外部からデータを書き
込むときのシステム安定を図る手法である。即ち、この
発明においては、フラッシュメモリに格納されたプログ
ラムに基づいて、同一フラッシュメモリのデータ領域に
対してデータの書き込み/消去を行う構成については何
ら検討されていない。
【0019】また、上記発明の構成が有する機能を活性
化するためには、マイコンを通常のユーザーモードとは
異なるモードにする必要があり、この点においても上記
課題を解決するための構成としては不適当である。
【0020】また、特開平5−342374号には、最
初にプログラムをダウンロードする手法について開示さ
れている。この本発明は、フラッシュメモリ内蔵マイコ
ンにプログラムデータをダウンロードする手法であり、
前記従来の発明と同様、マイコンを通常のユーザーモー
ドとは異なるモードにする必要がある。即ち、この発明
の機能を通常モードで使用した場合、割り込みベクタが
ブートROM内に存在しているため、ユーザープログラ
ム(ユーザーが任意に追加したプログラム)内で割り込
み処理を自由に変更することができない。
【0021】本発明は、上記の問題点を解決するために
なされたものであり、不揮発性メモリに新たに格納した
プログラムを実行することができる不揮発性メモリ内蔵
マイクロコンピュータの提供を目的としている。
【0022】また、本発明のさらなる目的は、不揮発性
メモリに新たに格納した上記プログラムに基づいて、同
一の不揮発性メモリをデータ領域としても使用すること
ができる、即ち、同一の不揮発性メモリをプログラム領
域とデータ領域との両方に使用することができる不揮発
性メモリ内蔵マイクロコンピュータの提供を目的として
いる。
【0023】
【課題を解決するための手段】上記の課題を解決するた
めに、本発明の請求項1に記載の不揮発性メモリ内蔵マ
イクロコンピュータは、マイクロコンピュータのメモリ
空間に配置された少なくとも1つの書き換え可能な不揮
発性メモリと、マイクロコンピュータ立上げ用の初期プ
ログラム、およびこの初期プログラムを前記不揮発性メ
モリに転送するための転送プログラムを格納するブート
ROMと、前記不揮発性メモリに何もプログラムが格納
されていないときに、前記初期プログラムを前記転送プ
ログラムに基づいて前記不揮発性メモリに転送し、その
後、ブートROMをマイクロコンピュータのメモリ空間
から排除する制御手段とを備えていることを特徴として
いる。
【0024】請求項1に記載の構成によれば、不揮発性
メモリに何もプログラムが格納されていないときには、
ブートROMに格納されている転送プログラムに基づい
て、制御手段がブートROMに格納されている初期プロ
グラムを不揮発性メモリに転送し、このプログラムが不
揮発性メモリに格納される。その後、ブートROMがマ
イクロコンピュータのメモリ空間から排除される。
【0025】これにより、製造直後なにもデータが格納
されていない不揮発性メモリに対し、ブートROMから
容易に初期プログラムを転送して格納することができ
る。
【0026】また、新たなプログラムを不揮発性メモリ
に追加的に格納した場合において、制御手段はブートR
OMを考慮する必要がなく、この追加プログラムを適切
に実行することができる。
【0027】さらに、割り込み処理の先頭番地を不揮発
性メモリ上に配置することが可能となるので、不揮発性
メモリ上において、OS等を含むプログラムを頻繁に書
き換えたり、追加した場合でも、これら新たなプログラ
ムの実行中に割り込み処理を行なうことができる。した
がって、プログラムの変更の柔軟性を高めることができ
る。
【0028】本発明の請求項2に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項1に記載の構成に
おいて、さらにRAMを備え、前記不揮発性メモリが、
この不揮発性メモリに格納されたプログラムを前記RA
Mに転送するための転送プログラムを格納しており、前
記制御手段が、前記RAMに格納されたプログラムを実
行可能であり、前記転送プログラムに基づいて、前記不
揮発性メモリに格納されたプログラムをRAMに転送す
るとともに、このRAMに格納されたプログラムを実行
するときに、前記初期プログラムに含まれる割り込み処
理の先頭番地を不揮発性メモリ上からRAM上に移動さ
せるものであることを特徴としている。
【0029】請求項2に記載の構成によれば、転送プロ
グラムに基づいて不揮発性メモリに格納されているプロ
グラム、例えば外部装置から不揮発性メモリ上にダウン
ロードされた、例えば不揮発性メモリに対して書き込み
および消去を行なうためのプログラムがRAMに転送さ
れ、このプログラムを実行するときには、割り込み処理
の先頭番地が不揮発性メモリ上からRAM上に移動す
る。
【0030】これにより、不揮発性メモリからRAMに
転送されたプログラムに基づき、不揮発性メモリをデー
タ領域としてこのデータ領域に対する処理、例えば書き
込みおよび消去の処理が可能となる。
【0031】また、RAM上において不揮発性メモリか
ら転送されたプログラムを実行中に割り込みが発生した
場合であっても、プログラムが暴走することなく、その
割り込み処理を適切に行なうことができる。
【0032】本発明の請求項3に記載の不揮発性メモリ
内蔵マイクロコンピュータは、RAMと、マイクロコン
ピュータのメモリ空間に配置され、割り込み処理の先頭
番地、および格納した第1プログラムを前記RAMに転
送するための転送プログラムを格納する少なくとも1つ
の書き換え可能な不揮発性メモリと、前記RAMに格納
されたプログラムを実行可能であり、前記転送プログラ
ムに基づいて、前記第1プログラムを不揮発性メモリか
らRAMに転送するとともに、このRAMに格納された
第1プログラムを実行するときに、前記割り込み処理の
先頭番地を不揮発性メモリ上からRAM上に移動させる
制御手段とを備えていることを特徴としている。
【0033】請求項3に記載の構成によれば、不揮発性
メモリに格納された第1プログラム、例えば外部装置か
ら不揮発性メモリ上にダウンロードされた、例えば不揮
発性メモリに対して書き込みおよび消去を行なうための
ユーザープログラムが転送プログラムに基づいてRAM
に転送され、RAM上において第1プログラムを実行す
るときには、割り込み処理の先頭番地が不揮発性メモリ
上からRAM上に移動する。
【0034】これにより、不揮発性メモリからRAMに
転送された第1プログラムに基づき、不揮発性メモリを
データ領域としてこのデータ領域に対する処理、例えば
書き込みおよび消去の処理が可能となる。
【0035】また、RAM上において第1プログラムを
実行中に割り込みが発生した場合であっても、プログラ
ムが暴走することなく、その割り込み処理を適切に行な
うことができる。
【0036】本発明の請求項4に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、プログラム領域とデータ領域とが同一
の前記不揮発性メモリ上に設定され、前記プログラム領
域には同一の不揮発性メモリのデータ領域を使用するこ
とを指令する第2プログラムが格納され、前記制御手段
は、前記第2プログラムに基づいて、前記データ領域を
データ格納用として使用するものであることを特徴とし
ている。
【0037】請求項4に記載の構成によれば、第2プロ
グラムに基づいて、同一の不揮発性メモリをプログラム
領域とデータ領域との両方に容易に使用することができ
る。
【0038】具体的には、第2プログラムに基づいて、
例えば、不揮発性メモリの指定アドレスと指定データ数
とRAMの指定アドレス情報とにより、不揮発性メモリ
の指定アドレスから指定データ数分のデータを連続的に
読み出し、RAMに格納する。そして、このデータをR
AMから連続的に読み出し、不揮発性メモリのデータ領
域の指定アドレスに書き込むことができる。
【0039】本発明の請求項5に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記制御手段が、前記不揮発性メモリ
からRAMに転送されて格納されたプログラムに基づい
て、前記不揮発性メモリに対するデータの書き込みと消
去との少なくとも一方を行うことを特徴としている。
【0040】請求項5に記載の構成によれば、RAMに
格納されたプログラムに基づいて、不揮発性メモリに対
するデータの書き込みと消去との少なくとも一方を行う
ことができる。また、この処理は、RAM上のプログラ
ムに基づいて行なわれるので、不揮発性メモリ上で別の
プログラムが実行中であっても、その処理に影響を与え
ることなく行なうことができる。
【0041】本発明の請求項6に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記制御手段が、前記RAMに格納さ
れたプログラムに基づいて、前記不揮発性メモリまたは
RAMの所定領域からデータを読み出し、このデータを
前記不揮発性メモリの所定領域に書き込むことを特徴と
している。
【0042】請求項6に記載の構成によれば、RAMに
格納されたプログラムに基づいて、不揮発性メモリまた
はRAMの所定領域からデータを読み出し、このデータ
を不揮発性メモリの所定領域に書き込むことができる。
また、この処理は、RAM上のプログラムに基づいて行
なわれるので、不揮発性メモリ上で別のプログラムが実
行中であっても、その処理に影響を与えることなく行な
うことができる。
【0043】本発明の請求項7に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記不揮発性メモリには割り込み処理
のプログラムが格納され、前記制御手段が、前記RAM
に格納されたプログラムに基づいて前記不揮発性メモリ
に対するデータの書き込みと消去との少なくとも一方を
実行中に割り込みが発生したとき、前記割り込み処理の
先頭番地に基づいて制御を前記不揮発性メモリに格納さ
れた割り込み処理のプログラムに分岐可能であることを
特徴としている。
【0044】請求項7に記載の構成によれば、制御手段
は、RAMに格納されたプログラムに基づいて不揮発性
メモリに対するデータの書き込みと消去との少なくとも
一方を実行中に割り込みが発生したとき、上記の処理を
中断するとともに、割り込み処理の先頭番地に基づいて
制御を不揮発性メモリに格納された割り込み処理のプロ
グラムに移し、このプログラムを実行する。これによ
り、割り込みが発生した場合に、その割り込み処理を適
切に行なうことができる。
【0045】
【発明の実施の形態】〔実施の形態1〕本発明の実施の
一形態を図1ないし図5に基づいて以下に説明する。本
発明の実施の形態における不揮発性メモリ内蔵マイクロ
コンピュータとしての1チップマイクロコンピュータ
(以下、1チップマイコンと称する)は、図2に示す構
成を有している。この1チップマイコンは例えばICカ
ードとして構成されている。図2において、1チップマ
イコン1は、各種プログラムを実行するCPU2(制御
手段)と、RAM3と、不揮発性メモリ(半導体不揮発
性メモリ)としてのフラッシュメモリ4とブートROM
5とシリアルコミュニケーションインターフェイス(以
下、SCIと称する)6とを有している。
【0046】この1チップマイコン1では、書き換え可
能な不揮発性メモリとしてフラッシュメモリ4を内蔵し
ているが、このフラッシュメモリ4に代えて他の書き換
え可能な不揮発性メモリ、例えばEEPROMやFeR
AMを内蔵していてもよい。なお、1チップマイコン1
をデータの書き換えを前提とした例えばICカードとし
て構成する場合、フラッシュメモリ(不揮発性メモリ)
4は、書き換え可能回数が10万回程度であることが好
ましい。
【0047】上記1チップマイコン1の製造直後のメモ
リマップは、例えば図3のようになっている。即ち、ア
ドレス0000H〜0FFFHに例えば4kバイトのブ
ートROM領域(ブートROM5)が設定され、アドレ
ス0000H〜7FFFHに例えば32kバイトのフラ
ッシュメモリ領域(フラッシュメモリ4)が配置され、
アドレスFF00H〜FFFFHに例えば256バイト
のRAM領域(RAM3)が配置されている。
【0048】アドレス0000Hはスタートアドレスで
あり、アドレス0000H〜000FHは割り込みベク
タに割り当てられている。また、フラッシュメモリ4は
例えば4kバイトごとに8個のブロック(ブロック0〜
ブロック7)に分割されている。これら各ブロック毎の
一括消去は物理的に可能である。
【0049】図3に示す状態では、上記のようにブート
ROM5(ブートROM領域)が有効になっており、1
チップマイコン1のリセット直後はブートROM5に格
納されている初期プログラムが実行される。ブートRO
M5には、また、フラッシュメモリ4にプログラムを転
送して格納するための転送プログラムが格納されてい
る。割り込み処理の先頭番地はブートROM上にあり、
割り込み処理のプログラムはブートROMに格納されて
いる。
【0050】上記転送プログラムに基づいて、ブートR
OM5からフラッシュメモリ4への、ブートROM5に
格納されているプログラムの転送が終了すると、プログ
ラム(制御)をフラッシュメモリ4に分岐させて、ブー
トROM5をメモリ空間から排除する。上記プログラム
の転送動作は、フラッシュメモリ4に何もプログラムが
格納されていないときに行なわれる。このときのメモリ
マップは、図4に示すものとなる。このとき、割り込み
処理の先頭番地はフラッシュメモリ4上に存在し、割込
処理の番地はフラッシュメモリ4に転送されたプログラ
ムの中で自由に設定可能である。
【0051】また、上記のように、フラッシュメモリ4
にプログラムを転送した後、このプログラムに基づいて
同一のフラッシュメモリ4に対してデータの書き込みや
消去を行うには、つまり、同一のフラッシュメモリ4を
プログラム領域とデータ領域との両方に使用するには、
割り込み処理の先頭番地(割り込みベクタ)、およびフ
ラッシュメモリ4のデータ領域に対する書き込み/消去
プログラム(第1プログラム)をフラッシュメモリ4か
らRAM3に転送し、ここに格納する。
【0052】フラッシュメモリ4からRAM3に転送さ
れるプログラムには、上記のものに加え、さらに詳細に
は、割り込み処理プログラムに対する前処理プログラム
(例えば、フラッシュメモリ4に対する書き込み/消去
の中断処理プログラム)、フラッシュメモリ4上の割り
込み処理プログラムへの分岐処理プログラム、および割
り込み処理終了後に実行される、割り込み処理プログラ
ムに対する後処理プログラム(例えば、フラッシュメモ
リ4に対する書き込み/消去の再開処理プログラム)が
含まれる。
【0053】上記処理を行なった後のメモリマップは、
図5に示すものとなる。この場合、割り込み処理の先頭
番地はRAM3上にあり、フラッシュメモリ4への書き
込み/消去中に割り込みが発生しても、RAM3に格納
された割り込み処理の先頭番地に基づいて、割り込み処
理を開始することができるようになっている。なお、こ
のときにも、図5に示すように、ブートROM5はメモ
リ空間から排除されている。
【0054】次に、1チップマイコン1において、電源
が投入されてリセット動作を行った直後に、ブートRO
M5から不揮発性メモリとしてのフラッシュメモリ4へ
制御が移行する動作を図1のフローチャートに基づいて
説明する。
【0055】先ず、1チップマイコン1は、電源が投入
されると、所定のリセット動作を行う(S201)。こ
のリセット動作が完了すると、CPU2は、メモリ空間
においてブートROM5が有効となるようにセットする
(S202)。この結果、メモリマップは図3に示す構
成となる。次に、CPU2は、プログラムカウンタをブ
ートROM5のアドレスにセットする(S203)。
【0056】S203の処理後、1チップマイコン1、
即ちCPU2は、ブートROM5に格納されているプロ
グラムの実行を開始する(S204)。
【0057】このとき、先ず、CPU2は、フラッシュ
メモリ4に既にブートROM5からプログラムが転送さ
れて格納されているか否かを判定する(S205)。こ
の結果、フラッシュメモリ4にプログラムが既に格納さ
れていればS207に進む一方、まだ格納されていなけ
れば、ブートROM5に格納されている転送プログラム
に基づいて、ブートROM5に格納されているプログラ
ムをフラッシュメモリ4に転送し、ここに書き込む(S
206)。
【0058】次に、CPU2は、そのメモリ空間におい
て、ブートROM5を排除する一方、フラッシュメモリ
4を有効にセットする(S207)。この結果、メモリ
マップは、図4に示す構成となる。
【0059】次に、CPU2は、プログラムカウンタを
フラッシュメモリ4のアドレスにセットする(S20
8)。この処理以後、CPU2は、フラッシュメモリ4
に格納されたプログラムの実行を開始する(S20
9)。
【0060】その後、フラッシュメモリ4に記憶されて
いるデータの更新を可能とするため、フラッシュメモリ
4に格納された転送プログラムに基づいて、フラッシュ
メモリ4の更新系のプログラム(書き込み/消去プログ
ラム)および割り込みベクタをRAM3に転送し、格納
する(S210)。このときのメモリマップは、図5に
示すものとなる。
【0061】なお、上記の例では、ブートROM5が独
立して存在している場合について示したが、ブートRO
M5を有していない構成として、ブートROM5に格納
すべきプログラムが、予めフラッシュメモリ4に格納さ
れている構成であってもよい。この場合には、上記S2
02〜S208の動作は不要である。
【0062】また、フラッシュメモリ4にユーザーが任
意に選択した例えばアプリケーションプログラムや、バ
ージョンアップされたOS等のプログラム(ユーザープ
ログラム)を格納する場合には、先述の図18によって
説明したように、1チップマイコン1を変換ボード10
2を介してパソコン103と接続して行なう。この場
合、ブートROM5またはこれに変わる不揮発性メモリ
(フラッシュメモリ4)が有効となり、これに格納され
た制御プログラムを用いて、パソコン103から供給さ
れるユーザープログラムが不揮発性メモリ(フラッシュ
メモリ4)に書き込まれる。
【0063】以上の構成により、ユーザーが任意に例え
ばアプリケーションプログラムをフラッシュメモリ4内
に取り込み、そのアプリケーションプログラムを実行す
ること、即ちそのアプリケーションプログラムに基づい
て、同一のフラッシュメモリ4のデータ領域を書き換え
ることが可能となる。
【0064】また、上記のように、同一のフラッシュメ
モリ(不揮発性メモリ)4にプログラム領域とデータ領
域とを設定可能であることから、これら各領域を別チッ
プとして設ける必要がない。したがって、1チップマイ
コン1、即ちこの1チップマイコン1からなる例えばI
Cカードを小型化することができる。
【0065】〔実施の形態2〕本発明の実施の他の形態
を図6ないし図15に基づいて以下に説明する。本実施
の形態における1チップマイコンは、図6に示す構成を
有している。即ち、1チップマイコン11は、各種プロ
グラムを実行するCPU2を備えるとともに、メモリと
してRAM3と1個の書き換え可能な不揮発性メモリ1
4(半導体不揮発性メモリ)とブートROM5とを備
え、さらに前記SCI6を備えている。
【0066】上記1チップマイコン11のメモリ構成
は、前記図1にて説明した動作を経た後、図7に示すも
のとなる。RAM3および不揮発性メモリ14は、CP
U2のアドレス空間に割り当てられており、CPU2か
ら各メモリに対して、読み出しアクセスおよび書き込み
アクセスが可能となっている。不揮発性メモリ14のプ
ログラム領域には、前記ブートROM5に格納されてい
たプログラムが格納される。このプログラムはCPU2
が実行可能である。
【0067】不揮発性メモリ14としては、プログラム
に基づいてCPU2が出力するコマンドによって動作を
制御可能なものが使用されている。上記コマンドは、不
揮発性メモリ14を読み出しモードに設定するコマン
ド、不揮発性メモリ14を書き込みモードに設定するコ
マンド、不揮発性メモリ14を消去モードに設定するコ
マンド、不揮発性メモリ14の書き込み/消去を中断す
るコマンド、不揮発性メモリ14の書き込み/消去を再
開するコマンド、不揮発性メモリ14の書き込み/消去
の終了を監視するコマンドである。
【0068】不揮発性メモリ14は、各々4kバイトの
ブロックA〜Fにより構成されている。不揮発性メモリ
14に書き込まれているデータの消去は、上記の各ブロ
ック単位にて行われる。
【0069】上記ブロックAには、1チップマイコン1
1のシステムプログラムであるオペレーティングシステ
ムやモニタシステムが格納されている。
【0070】ブロックBには、ユーザーアプリケーショ
ンプログラムが格納されている。このアプリケーション
プログラムからブロックAのシステムプログラムのコマ
ンドを呼び出すことができる。
【0071】ブロックC〜Eは、データ領域(データ領
域1〜3)として使用される。ブロックFはバックアッ
プ領域として使用される。このバックアップ領域には、
上記データ領域の一部を書き換える場合などに、保存が
必要なデータが一時的に格納される。
【0072】RAM3は、1チップマイコン11におけ
る割り込みベクタ領域と、不揮発性メモリ14に対する
データの書き込み動作や消去動作を行うためのプログラ
ム、即ち書き込み/消去プログラムを格納するための不
揮発性メモリ書き込み/消去プログラム領域と、システ
ムプログラムを実行する際の作業領域となるシステムプ
ログラム作業領域と、ユーザー領域とから構成されてい
る。
【0073】割り込みベクタ、および不揮発性メモリ1
4に対する書き込み/消去プログラムは、最初、不揮発
性メモリ14のシステムプログラム領域に格納されてお
り、図1において説明したように、システムプログラム
に基づいて、あらかじめRAM3へ転送される。
【0074】不揮発性メモリ14に対する読み出しアク
セスおよび書み込みアクセスは図8によって示される。
不揮発性メモリ14へのアクセスは、システムプログラ
ムのコマンドに基づいてCPU2により行われる。
【0075】上記処理(各アクセス)は、システムプロ
グラムからのコマンドの発行(P1)により開始され
る。上記コマンドは、コマンドインターフェースによっ
て解析され(P2)、不揮発性メモリ14からデータを
読み出すコマンドを参照系コマンドとし、不揮発性メモ
リ14に対しデ一タを書き込みあるいは消去するコマン
ド(第2プログラム)を更新系コマンドとして処理す
る。これら各コマンドは、不揮発性メモリ14に格納さ
れており、不揮発性メモリ14上から実行される。
【0076】上記の参照系コマンドが発行された場合、
不揮発性メモリ14に対する読み出しルーチン(P3)
に制御が移り、不揮発性メモリ14のデータ領域を読み
出す(P4)。
【0077】一方、更新系コマンドが発行された場合、
不揮発性メモリ14上において、データの書き込み/消
去に必要なパラメータ設定の処理を行った後、RAM3
にあらかじめ格納されている、不揮発性メモリ14の書
き込み/消去ルーチン(P5)に制御が移る。
【0078】即ち、上記の更新系コマンドが発行された
場合、本実施の形態の1チップマイコン11では、単一
の不揮発性メモリ14を使用しているため、このままで
は、不揮発性メモリ14に格納されているプログラムを
実行しながら、同一の不揮発性メモリ14に対するデー
タの書き込みや消去を行うことができない。そこで、こ
れらの処理を行うときには、上記のようにあらかじめR
AM3に転送して格納されている、不揮発性メモリ14
に対する書き込み/消去ルーチン(P5)へ制御が移
り、不揮発性メモリ14のデータ領域に対する書き込み
/消去動作(P4)が行われる。
【0079】この書き込み/消去動作は、不揮発性メモ
リ14からデータを読み出すときに比べ、書き込みにお
いて例えば数百倍の時間が必要であり、またブロック単
位の消去において秒単位の時間が必要な場合がある。一
例をあげると、1バイトの読み出しは数十nsecであ
るのに対し、1バイトの書き込みは数μsec〜数十μ
sec、64kバイトの1ブロック消去では数百mse
c必要である。ここで、例えば1ブロック消去に600
msecかかるとすると、ブロックを3個消去した場合
には約1.8secを要する。
【0080】このように書き込み/消去動作は長時間を
要するため、不揮発性メモリ14に対するRAM3上で
の書き込み/消去ルーチンの実行中には、割り込みの発
生を監視するようにしている。
【0081】割り込みが発生すれば、上記書き込み/消
去ルーチンを中断して、不揮発性メモリ14上の割込み
処理ルーチンを実行する(P6)。割り込み処理が終了
すると、再びRAM3上の不揮発性メモリ14に対する
書き込み/消去ルーチンへ制御が戻り、この書き込み/
消去動作を再開する。
【0082】次に、1チップマイコン11における不揮
発性メモリ14からデータを連続的に読み出す動作を図
9のフローチャートに基づいて説明する。
【0083】先ず、不揮発性メモリ14からの連続的な
データの読み出しを指令する連続読み出しコマンドが発
行されると(S1)、CPU2は、このコマンドがシス
テムプログラムから呼び出したものであるか否かを判定
する(S2)。
【0084】この結果、システムプログラムから呼び出
したものでなければ、S12に分岐して処理を中止す
る。一方、上記コマンドがシステムプログラムから呼び
出したものであった場合、データ読み出し元の不揮発性
メモリ14のアドレスを変数SRCに設定する(S
3)。
【0085】次に、不揮発性メモリ14からの読み出し
データのRAM格納アドレスを変数DSTに設定すると
ともに(S4)、不揮発性メモリ14からのデータ読み
出し数を変数CNTに設定する(S5)。
【0086】次に、データ読み出し数CNTが0か否か
を判定し(S6)、0であればS13に分岐して処理を
中止する。一方、データ読み出し数CNTが0でなけれ
ば、CPU2は、不揮発性メモリ14に対して読み出し
モードに設定するコマンドを発行することにより、不揮
発性メモリ14を読み出しモードに設定する(S7)。
【0087】次に、不揮発性メモリ14のアドレスSR
Cからデータを読み出し、RAM3のアドレスDSTに
格納する(S8)。その後、アドレスSRCとアドレス
DSTを次のデータを読み出すためのアドレスに更新し
(S9)、読み出し数CNTを1減ずる(S10)。
【0088】次に、不揮発性メモリ14からのデータの
読み出し数、即ち変数CNTが0か否かを判定すること
により、最後までデータを呼び出したかどうかを判断す
る。この結果、データを最後まで読み出していなけれ
ば、S8〜S11の動作を繰り返し、データを最後まで
読み出すと処理を終了する(S13)。
【0089】次に、1チップマイコン11における不揮
発性メモリ14またはRAM3の指定された領域から連
続的にデータを読み出し、不揮発性メモリ14の指定さ
れた領域ヘデータを書き込む動作を図10のフローチャ
ートに基づいて説明する。
【0090】先ず、不揮発性メモリ14ヘのデータの連
続的な書き込みを指令するコマンドが発行されると(S
21)、CPU2は、このコマンドがシステムプログラ
ムから呼び出したものであるか否かを判定する(S2
2)。
【0091】この結果、システムプログラムから呼び出
したものでなければ、S33に分岐して処理を中止す
る。一方、上記コマンドがシステムプログラムから呼び
出したものであれば、データ読み出し元である不揮発性
メモリ14またはRAM3のアドレスを変数SRCに設
定する(S23)。
【0092】次に、不揮発性メモリ14ヘの書き込みデ
ータの格納アドレスを変数DSTに設定するとともに
(S24)、不揮発性メモリ14へのデータの書き込み
数を変数CNTに設定する(S25)。
【0093】次に、データ書き込み数CNTが0か否か
を判定し(S26)、0であればS34に分岐して処理
を終了する。一方、データ書き込み数CNTが0でなけ
れば、不揮発性メモリ14の更新中を示すフラグを1に
設定する(S27)。また、割り込みを禁止とする(S
28)。
【0094】このように、割り込みを禁止するのは、次
のS29の動作により制御がRAM3上のルーチンに移
ったときに、割り込みの発生によって不用意に不揮発性
メモリ14上の割り込み処理ルーチンを実行させないた
めである。ここまでの処理は、不揮発性メモリ14上の
プログラム(不揮発性メモリ14に格納されているプロ
グラム)によって実行される。
【0095】ここで、不揮発性メモリ14に格納された
プログラムを不揮発性メモリ14上で実行しながら、デ
ータを同一の不揮発性メモリ14ヘ書き込むことはでき
ない。したがって、この後、あらかじめシステムプログ
ラムに基づいて不揮発性メモリ14からRAM3に転送
されてここに格納されたプログラム、即ちRAM内ルー
チンに制御を移す(S29)。
【0096】RAM内ルーチンの処理が終了すると、禁
止していた割り込みを再び許可し、再び不揮発性メモリ
14上のプログラムに制御を移す(S30)。
【0097】次に、不揮発性メモリ14の更新中フラグ
を0にリセットし(S31)、不揮発性メモリ14に対
する書き込み動作を終了する(S32)。
【0098】次に、図10におけるS29に示したRA
M内ルーチンの動作を図11フローチャートに基づいて
説明する。ここでの動作は、不揮発性メモリ14に対す
るデータの書き込みまたは消去を行うものである。
【0099】不揮発性メモリ14上のプログラムからR
AM3上のプログラムに制御が移ると、先ず、CPU2
は、プログラムから呼び出したコマンドが書き込みコマ
ンドまたは消去コマンドの何れであるかを判定する(S
41)。上記書き込みコマンドは、不揮発性メモリ14
のデータ領域へのデータの書き込みを指令するものであ
り、上記消去コマンドは、不揮発性メモリ14のデータ
領域に書き込まれているデータの消去を指令するもので
ある。
【0100】上記判定の結果、書き込みコマンドであれ
ば、CPU2は、不揮発性メモリ14を読み出しモード
に設定するコマンドを発行することにより、不揮発性メ
モリ14を読み出しモードとする(S42)。そして、
CPU2は、変数SRCに設定されているアドレスから
データを読み出す(S43)。
【0101】次に、CPU2は、不揮発性メモリ14を
書き込みモードに設定するコマンドを発行することによ
り、不揮発性メモリ14を書き込みモードとする(S4
4)。そして、CPU2は、変数DSTに設定されてい
る不揮発性メモリ14のアドレスヘ、S43において読
み出したデータを書き込む(S45)。これにより、不
揮発性メモリ14ヘの書き込みが開始される。
【0102】次に、次回のデータ書き込みのために、S
RCアドレスとDSTアドレスを更新するとともに(S
46)、書き込み数CNTを1減じる(S47)。
【0103】次に、不揮発性メモリ14ヘのデータ書き
込みは時間がかかるため、割り込みを許可し(S4
8)、CPU2は、不揮発性メモリ14への書き込み動
作の終了を監視するコマンドを発行することにより、こ
の動作の終了を待つ(S49)。上記書き込み動作が終
了するまでの間に優先度の高い割り込みが発生すると、
後述する図12の割り込み処理ルーチンヘ制御が移る。
【0104】その後、CPU2は、不揮発性メモリ14
ヘの書き込み動作の終了を検出すると、割り込みを禁止
する(S50)。
【0105】次に、CPU2は、今回の不揮発性メモリ
14ヘの書き込み動作でエラーが発生したか否かを判定
する(S51)。エラー有りと判定した場合、S54へ
進み、CPU2は、不揮発性メモリ14に対して読み出
しモードに設定するコマンドを発行することにより、不
揮発性メモリ14を読み出しモードとし、RAM内ルー
チンの処理を終了する(S55)。
【0106】また、S51の判定において、上記エラー
が発生せずに不揮発性メモリ14ヘの書き込み動作が正
常に終了した場合、不揮発性メモリ14に対する処理を
指令したコマンドが書き込みコマンドであれば(S5
2)、S53に進み、消去コマンドであれば、S54に
進む。
【0107】S53では、不揮発性メモリ14へのデー
タの書き込み残の数を示す変数CNTが0か否かを判定
することにより、最後までデータを書き込んだか否かを
判定する(S53)。このとき、最後までデータを書き
込んでいなければ、S42〜S52の動作を繰り返す。
一方、最後までデータを書き込んでいれば、S54へ進
み、不揮発性メモリ14を読み出しモードに設定し、R
AM内ルーチンの動作を終了する(S55)。
【0108】次に、図11に示したRAM内ルーチンで
のS49の動作において不揮発性メモリ14ヘの書き込
み動作の終了を監視しているときに、割り込みが発生し
た場合の動作を図12フローチャートに基づいて説明す
る。
【0109】S49のループ内において、割り込みが発
生すると、図7に示したRAM3内の割り込みベクタか
ら、対応する割り込み処理ルーチンのアドレスをCPU
2が読み出す。これにより、制御は不揮発性メモリ14
内に格納された割り込み処理ルーチンヘ移る。
【0110】なお、前述のように、不揮発性メモリ14
からRAM3へは、割り込み処理の先頭番地(割り込み
ベクタ)、不揮発性メモリ14のデータ領域に対する書
き込み/消去プログラムに加えて、さらに、割り込み処
理プログラムに対する前処理プログラム(例えば、不揮
発性メモリ14に対する書き込み/消去の中断処理プロ
グラム)、不揮発性メモリ14上の割り込み処理プログ
ラムへの分岐処理プログラム、および割り込み処理終了
後に実行される、割り込み処理プログラムに対する後処
理プログラム(例えば、不揮発性メモリ14に対する書
き込み/消去の再開処理プログラム)が予め転送されて
いる。
【0111】上記割り込み処理では、先ず、割り込みが
発生したとき、不揮発性メモリ14の更新中、即ち不揮
発性メモリ14に対する書き込み/消去中であるか否か
を判定する(S61)。不揮発性メモリ14の更新中で
あれば、CPU2は、不揮発性メモリ14に対して更新
動作を中断するコマンドを発行することにより、その処
理を中断する。即ち、CPU2は、割り込みベクタの内
容から、RAM3上に存在する割り込み処理に対する前
処理ルーチン(割り込み処理対する前処理の先頭アドレ
ス)へ制御を分岐して、不揮発性メモリ14に対する書
き込み/消去の中断処理を行なう。一方、不揮発性メモ
リ14が更新中でない場合は、S62の処理をスキップ
してS63へ進む。
【0112】S63では、CPU2が不揮発性メモリ1
4に対して、読み出しモードに設定するコマンドを発行
することにより、不揮発性メモリ14を読み出しモード
とする。
【0113】ここで、CPU2は、不揮発性メモリ14
に格納されている割り込み処理ルーチンを実行できるよ
うになるため、不揮発性メモリ14上のプログラムヘ制
御を移し、即ち不揮発性メモリ14上に存在する割り込
み処理のアドレスへ制御を分岐し、割り込み処理を実行
する(S64)。
【0114】その後、不揮発性メモリ14上での上記の
割り込み処理が終了すると、再びRAM3に格納された
プログラムヘ復帰し、CPU2は、不揮発性メモリ14
の更新処理の中断中であるか否かを判定する(S6
5)。
【0115】この結果、不揮発性メモリ14の更新処理
の中断中でなければS67へ進み、割り込み処理ルーチ
ンを終了する。また、不揮発性メモリ14に対する更新
処理の中断中であれば、CPU2は、不揮発性メモリ1
4に対して、書き込み/消去を再開するコマンドを発行
することにより、不揮発性メモリ14の更新処理を再開
する(S66)。即ち、CPU2は、RAM3上の、割
り込み処理に対する後処理ルーチン(割り込み処理に対
する後処理の先頭アドレス)へ制御を分岐し、上記更新
処理を再開する。次に、この更新処理が終了すれば、割
り込み処理ルーチンを終了する(S67)。その後、図
11におけるS49のループに復帰する。
【0116】上記の動作により、不揮発性メモリ14の
更新中に発生した割り込み要因に対して、正確に割り込
み処理を実行することが可能になる。
【0117】次に、不揮発性メモリ14における指定し
たブロックの消去動作を図13フローチャートに基づい
て説明する。
【0118】先ず、不揮発性メモリ14に対する消去コ
マンドが発行されると(S71)、CPU2は、このコ
マンドがシステムプログラムから呼び出したものである
か否かを判定する(S72)。
【0119】この結果、システムプログラムから呼び出
したものでなければ、S80に分岐して処理を中止す
る。一方、上記コマンドがシステムプログラムから呼び
出したものであれば、不揮発性メモリ14における消去
するブロックのアドレスを変数DSTに設定する(S7
3)。次に、CPU2は、不揮発性メモリ14の更新中
フラグを1にセットし(S74)、その後、割り込みを
禁止する(S75)。
【0120】このように、割り込みを禁止するのは、次
のS76の動作により制御がRAM3上のルーチンに移
ったときに、割り込みの発生によって不用意に不揮発性
メモリ14上の割り込み処理ルーチンを実行させないた
めである。ここまでの処理は、不揮発性メモリ14上の
プログラムによって実行される。
【0121】ここで、不揮発性メモリ14上のプログラ
ムを実行しながら、不揮発性メモリ14の任意のブロッ
クを消去することはできない。したがって、この後、あ
らかじめシステムプログラムに基づいてRAM3に転送
されてここに格納されたプログラム、即ちRAM内ルー
チンに制御を移す(S76)。
【0122】RAM内ルーチンの処理が終了すると、禁
止していた割り込みを再び許可し、再び不揮発性メモリ
14上のプログラム、即ち不揮発性メモリ14における
ブロック消去動作に制御を移す(S77)。
【0123】次に、不揮発性メモリ14の更新中フラグ
を0にリセットし(S78)、不揮発性メモリ14にお
けるブロック消去動作を終了する(S79)。
【0124】上記S76におけるRAM内ルーチンの動
作は、前記図11のフローチャートに示したものであ
る。このフローチャートのS41において、今回は消去
コマンドであるので、S56に進み、CPU2が不揮発
性メモリ14を消去するコマンドを発行することによ
り、変数DSTに設定された不揮発性メモリ14のアド
レスを含む1ブロックの消去が開始される。
【0125】次に、不揮発性メモリ14の1ブロックの
消去動作は時間がかかるため、割り込みを許可し(S4
8)、CPU2は、割り込みの発生を監視しながら、上
記消去動作の完了を待つ(S49)。なお、割り込みが
発生したときの動作は、前記図12のフローチャートに
基づいて説明した通りである。
【0126】その後、CPU2は、不揮発性メモリ14
における1ブロックの消去動作の終了を検出すると、割
り込みを禁止する(S50)。
【0127】次に、CPU2は、今回の不揮発性メモリ
14における1ブロックの消去動作でエラーが発生した
か否かを判定する(S51)。エラー有りと判定した場
合、S54へ進み、CPU2は、不揮発性メモリ14に
対して読み出しモードに設定するコマンドを発行するこ
とにより、不揮発性メモリ14を読み出しモードとし、
RAM内ルーチンの処理を終了する(S55)。
【0128】また、S51の判定において、上記エラー
が発生せずに不揮発性メモリ14における1ブロックの
消去動作が正常に終了した場合、不揮発性メモリ14に
対する処理を指令したコマンドが消去コマンドであれば
(S52)、S54へ進み、ここでの上記した動作を経
て、RAM内ルーチンの処理を終了する(S55)。
【0129】次に、不揮発性メモリ14に対するデータ
の上書き動作(更新動作)の詳細を図14のフローチャ
ートおよび図15に基づいて説明する。不揮発性メモリ
14にデータを上書きするためには、不揮発性メモリ1
4における上書き領域のデータを消去する必要がある。
本実施の形態の1チップマイコン11が備える不揮発性
メモリ14は、1ブロック毎の消去を行うものである。
したがって、ブロック内の任意の領域だけを消去するに
は、特別な手順が必要となる。
【0130】図15では、上記不揮発性メモリ14の任
意の領域を消去するための手順を説明している。不揮発
性メモリ14に対する上書き動作は、最初に上書き対象
領域を消去した後、その領域に対して連続書き込みを行
うものとなる。図14におけるS93からS101の処
理は、図15(a)に示すシーケンス1から図15
(d)に示すシーケンス4の処理手順に相当する。処理
を各シーケンスに分割しているのは、それぞれのシーケ
ンスに時間がかかるため、シーケンス毎にシステムプロ
グラムの処理を実行できるようにするためである。な
お、例えば図15(a)に示すブロックC〜Eは、図7
におけるデータ領域1〜3としてのブロックC〜Eに対
応する。
【0131】図14において、システムプログラムに基
づいて、不揮発性メモリ14ヘのデータ上書きコマンド
が発行されると(S91)、CPU2は、先ず、上書き
対象領域の消去を行う。
【0132】このときには、シーケンス番号を1にセッ
トし(S92)、消去対象ブロック(ブロックC〜E)
のうちの消去対象領域(ブロックD)を除くバックアッ
プ対象領域1,2(ブロックC,E)のそれぞれのスタ
ートアドレスとサイズを算出する(S93)。
【0133】次に、必要に応じてシステムプログラムま
たはユーザープログラムの処理を実行する(S94)。
【0134】次に、任意領域を消去するための消去動作
シーケンスがすべて完了したかどうかを判定する(S9
5)。このとき、シーケンス番号が0でなければ、まだ
シーケンス処理中であるので、シーケンス番号に応じて
S96〜S99へ進む。
【0135】シーケンス番号が1のとき、S96では、
図15(a)に示すように、S92において算出したバ
ックアップ対象領域1,2のスタートアドレスとサイズ
に基づき、不揮発性メモリ14への連続書き込み動作に
より、バックアップ用のブロック(バックアップブロッ
ク)ヘの書き込みが行われる。バックアップ用のブロッ
クとしては、たとえば図7に示した不揮発性メモリ14
におけるバックアップ領域(Fブロック)を使用する。
なお、このバックアップ領域内のデータはあらかじめ消
去しておく。
【0136】上記バックアップ動作が完了すると、次の
シーケンスに移るために、S100においてシーケンス
番号をプラス1にして、S94からの動作を繰り返す。
【0137】シーケンス番号が2のときには、S97に
おいて、図15(b)に示すように、消去対象領域を含
む消去対象ブロック内のデータを消去する。
【0138】シーケンス番号が3のときには、S98に
おいて、図15(c)に示すように、S96の動作でバ
ックアップしたバックアップ領域1,2を元の消去対象
ブロック内に書き戻す。
【0139】シーケンス番号が4のときには、S99に
おいて、図15(d)に示すように、バックアップブロ
ック内のデータを全て消去する。
【0140】以上の一連の動作により、不揮発性メモリ
14の任意領域の消去動作が完了する。
【0141】次に、S101では、シーケンス番号を0
にクリアし、S94、S95を経てS102へ進む。こ
のS102では、不揮発性メモリ14の図15(c)に
示した消去済み領域(ブロックD)にデータを書き込
む。これにより、不揮発性メモリ14のデータ上書き動
作が完了する(S103)。
【0142】以上に記載した1チップマイコン1,11
では、1個の不揮発性メモリを、プログラムを格納する
プログラム領域、またはデータの格納、書き換えが行な
われるデータ領域の何れか一方のみに使用するのではな
く、同時にこれら両領域として使用することができる。
特に、大容量の不揮発性メモリを搭載した場合には、上
記両領域としての使用が有効となる。
【0143】また、不揮発性メモリを同時に上記両領域
として使用できることにより、この1チップマイコン
1,11を備えた例えばICカードは、複数のチップを
備える必要がなく、小型化が可能である。
【0144】さらに、例えば上記1チップマイコン1,
11を備えたICカードにおいて、大容量の不揮発性メ
モリを搭載した場合に、プログラムの容量やデータ領域
をダイナミックに変化させて使用することができる。こ
れにより、非常に柔軟性に富んだセキュリティの高いI
Cカードとすることができるとともに、ICカードにお
いて、ダイナミックに書き換え可能なマルチアプリケー
ションシステムを実現することができる。
【0145】即ち、例えばICカード用途でマルチアプ
リケーションを実行可能な大容量メモリ搭載版が従来考
えられているが、プログラムは依然としてROM上にあ
り、使用が制限されるものしかできていないのが現状で
ある。これに対し、本1チップマイコン1,11を使用
すれば、ICカード発行後にでも真の意味でダイナミッ
クにアプリケーションの追加および消去が可能であるば
かりか、OSのバージョンアップさえ容易にできるシス
テムを実現することができる。
【0146】本発明の不揮発性メモリ内蔵マイクロコン
ピュータは、少なくとも1つの書き換え可能な不揮発性
メモリと、マイクロコンピュータ立上げ用の初期プログ
ラム、およびこの初期プログラムを前記不揮発性メモリ
に転送するための転送プログラムを格納するブートRO
Mと、前記不揮発性メモリに何もプログラムが格納され
ていないときに、前記初期プログラムを前記転送プログ
ラムに基づいて前記不揮発性メモリに転送する制御手段
とを備えている構成としてもよい。
【0147】これにより、製造直後なにもデータが格納
されていない不揮発性メモリに対し、ブートROMから
容易にデータを転送して格納することができる。
【0148】
【発明の効果】以上のように、本発明の請求項1に記載
の不揮発性メモリ内蔵マイクロコンピュータは、マイク
ロコンピュータのメモリ空間に配置された少なくとも1
つの書き換え可能な不揮発性メモリと、マイクロコンピ
ュータ立上げ用の初期プログラム、およびこの初期プロ
グラムを前記不揮発性メモリに転送するための転送プロ
グラムを格納するブートROMと、前記不揮発性メモリ
に何もプログラムが格納されていないときに、前記初期
プログラムを前記転送プログラムに基づいて前記不揮発
性メモリに転送し、その後、ブートROMをマイクロコ
ンピュータのメモリ空間から排除する制御手段とを備え
ている構成である。
【0149】これにより、製造直後なにもデータが格納
されていない不揮発性メモリに対し、ブートROMから
容易に初期プログラムを転送して格納することができ
る。
【0150】また、新たなプログラムを不揮発性メモリ
に追加的に格納した場合において、制御手段はブートR
OMを考慮する必要がなく、この追加プログラムを適切
に実行することができる。
【0151】さらに、割り込み処理の先頭番地を不揮発
性メモリ上に配置することが可能となるので、不揮発性
メモリ上において、OS等を含むプログラムを頻繁に書
き換えたり、追加した場合でも、これら新たなプログラ
ムの実行中に割り込み処理を行なうことができる。した
がって、プログラムの変更の柔軟性を高めることができ
るという効果を奏する。
【0152】本発明の請求項2に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項1に記載の構成に
おいて、さらにRAMを備え、前記不揮発性メモリが、
この不揮発性メモリに格納されたプログラムを前記RA
Mに転送するための転送プログラムを格納しており、前
記制御手段が、前記RAMに格納されたプログラムを実
行可能であり、前記転送プログラムに基づいて、前記不
揮発性メモリに格納されたプログラムをRAMに転送す
るとともに、このRAMに格納されたプログラムを実行
するときに、前記初期プログラムに含まれる割り込み処
理の先頭番地を不揮発性メモリ上からRAM上に移動さ
せる構成である。
【0153】これにより、請求項1に記載の構成による
効果に加え、不揮発性メモリからRAMに転送されたプ
ログラムに基づき、不揮発性メモリをデータ領域として
このデータ領域に対する処理、例えば書き込みおよび消
去の処理が可能となる。
【0154】また、RAM上において不揮発性メモリか
ら転送されたプログラムを実行中に割り込みが発生した
場合であっても、プログラムが暴走することなく、その
割り込み処理を適切に行なうことができるという効果を
奏する。
【0155】本発明の請求項3に記載の不揮発性メモリ
内蔵マイクロコンピュータは、RAMと、マイクロコン
ピュータのメモリ空間に配置され、割り込み処理の先頭
番地、および格納した第1プログラムを前記RAMに転
送するための転送プログラムを格納する少なくとも1つ
の書き換え可能な不揮発性メモリと、前記RAMに格納
されたプログラムを実行可能であり、前記転送プログラ
ムに基づいて、前記第1プログラムを不揮発性メモリか
らRAMに転送するとともに、このRAMに格納された
第1プログラムを実行するときに、前記割り込み処理の
先頭番地を不揮発性メモリ上からRAM上に移動させる
制御手段とを備えている構成である。
【0156】これにより、不揮発性メモリからRAMに
転送された第1プログラムに基づき、不揮発性メモリを
データ領域としてこのデータ領域に対する処理、例えば
書き込みおよび消去の処理が可能となる。
【0157】また、RAM上において第1プログラムを
実行中に割り込みが発生した場合であっても、プログラ
ムが暴走することなく、その割り込み処理を適切に行な
うことができるという効果を奏する。
【0158】本発明の請求項4に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、プログラム領域とデータ領域とが同一
の前記不揮発性メモリ上に設定され、前記プログラム領
域には同一の不揮発性メモリのデータ領域を使用するこ
とを指令する第2プログラムが格納され、前記制御手段
は、前記第2プログラムに基づいて、前記データ領域を
データ格納用として使用する構成である。
【0159】これにより、請求項2または3に記載の構
成による効果に加え、第2プログラムに基づいて、同一
の不揮発性メモリをプログラム領域とデータ領域との両
方に容易に使用することができるという効果を奏する。
【0160】本発明の請求項5に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記制御手段が、前記不揮発性メモリ
からRAMに転送されて格納されたプログラムに基づい
て、前記不揮発性メモリに対するデータの書き込みと消
去との少なくとも一方を行う構成である。
【0161】これにより、請求項2または3に記載の構
成による効果に加え、RAMに格納されたプログラムに
基づいて、不揮発性メモリに対するデータの書き込みと
消去との少なくとも一方を行うことができる。また、こ
の処理は、RAM上のプログラムに基づいて行なわれる
ので、不揮発性メモリ上で別のプログラムを実行中であ
っても、その処理に影響を与えることなく行なうことが
できるという効果を奏する。
【0162】本発明の請求項6に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記制御手段が、前記RAMに格納さ
れたプログラムに基づいて、前記不揮発性メモリまたは
RAMの所定領域からデータを読み出し、このデータを
前記不揮発性メモリの所定領域に書き込む構成である。
【0163】これにより、請求項2または3に記載の構
成による効果に加え、RAMに格納されたプログラムに
基づいて、不揮発性メモリまたはRAMの所定領域から
データを読み出し、このデータを不揮発性メモリの所定
領域に書き込むことができる。また、この処理は、RA
M上のプログラムに基づいて行なわれるので、不揮発性
メモリ上で別のプログラムを実行中であっても、その処
理に影響を与えることなく行なうことができるという効
果を奏する。
【0164】本発明の請求項7に記載の不揮発性メモリ
内蔵マイクロコンピュータは、請求項2または3に記載
の構成において、前記不揮発性メモリには割り込み処理
のプログラムが格納され、前記制御手段が、前記RAM
に格納されたプログラムに基づいて前記不揮発性メモリ
に対するデータの書き込みと消去との少なくとも一方を
実行中に割り込みが発生したとき、前記割り込み処理の
先頭番地に基づいて制御を前記不揮発性メモリに格納さ
れた割り込み処理のプログラムに分岐可能である構成で
ある。
【0165】これにより、請求項2または3に記載の構
成による効果に加え、割り込みが発生した場合に、その
割り込み処理を適切に行なうことができるという効果を
奏する。
【図面の簡単な説明】
【図1】本発明の実施の一形態における1チップマイク
ロコンピュータのリセット動作直後の動作を示すフロー
チャートである。
【図2】図1に示した動作を行う1チップマイクロコン
ピュータの構成を示すブロック図である。
【図3】図2に示した1チップマイクロコンピュータの
メモリ構成を示す説明図である。
【図4】図3に示したメモリ構成において、ブートRO
Mが排除されたときのメモリ構成を示す説明図である。
【図5】図4に示したメモリ構成において、RAMに制
御が移ったときのメモリ構成を示す説明図である。
【図6】本発明の実施の他の形態における1チップマイ
クロコンピュータの構成を示すブロック図である。
【図7】図6に示した1チップマイクロコンピュータの
メモリ構成を示す説明図である。
【図8】図7に示したメモリ構成において不揮発性メモ
リに対する読み出しおよび書き込み動作を行うための構
成を示すブロック図である。
【図9】図7に示した不揮発性メモリからのデータの連
続的な読み出し動作を示すフローチャートである。
【図10】図6に示した不揮発性メモリまたはRAMの
指定領域からデータを読み出し、このデータを不揮発性
メモリの指定領域ヘ書き込む動作を示すフローチャート
である。
【図11】図10に示したRAM内ルーチンの動作を示
すフローチャートである。
【図12】不揮発性メモリに対する図11に示した書き
込み/消去動作中に発生した割り込みの処理ルーチンを
示すフローチャートである。
【図13】図6に示した不揮発性メモリに対するデータ
の消去動作を示すフローチャートである。
【図14】図6に示した不揮発性メモリに対するデータ
の上書き動作の詳細を示すフローチャートである。
【図15】図15(a)は、不揮発性メモリに対する図
14に示したシーケンス1の処理を示す説明図、図15
(b)は同シーケンス2の処理を示す説明図、図15
(c)は同シーケンス3の処理を示す説明図、図15
(d)は同シーケンス4の処理を示す説明図である。
【図16】従来のICカード用EEPROM内蔵マイク
ロコンピュータのメモリ構造を示す説明図である。
【図17】従来のフラッシュメモリ内蔵マイクロコンピ
ュータのメモリ構造を示す説明図である。
【図18】従来のフラッシュメモリ内蔵マイクロコンピ
ュータヘのデータ書き込み方法を示すブロック図であ
る。
【符号の説明】
1 1チップマイクロコンピュータ 2 CPU(制御手段) 3 RAM 4 フラッシュメモリ(不揮発性メモリ) 5 ブートROM 6 シリアルコミュニケーションインターフェイス 11 1チップマイクロコンピュータ 14 不揮発性メモリ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小川 竜一 大阪府大阪市阿倍野区長池町22番22号 シ ャープ株式会社内 (72)発明者 竹田 忠雄 東京都新宿区西新宿3−19−2 日本電信 電話株式会社内 (72)発明者 首藤 啓樹 東京都新宿区西新宿3−19−2 日本電信 電話株式会社内 (72)発明者 丹野 雅明 東京都新宿区西新宿3−19−2 日本電信 電話株式会社内 Fターム(参考) 5B060 MM02 5B076 BB12 EB03

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】マイクロコンピュータのメモリ空間に配置
    された少なくとも1つの書き換え可能な不揮発性メモリ
    と、 マイクロコンピュータ立上げ用の初期プログラム、およ
    びこの初期プログラムを前記不揮発性メモリに転送する
    ための転送プログラムを格納するブートROMと、 前記不揮発性メモリに何もプログラムが格納されていな
    いときに、前記初期プログラムを前記転送プログラムに
    基づいて前記不揮発性メモリに転送し、その後、ブート
    ROMをマイクロコンピュータのメモリ空間から排除す
    る制御手段とを備えていることを特徴とする不揮発性メ
    モリ内蔵マイクロコンピュータ。
  2. 【請求項2】さらにRAMを備え、 前記不揮発性メモリは、この不揮発性メモリに格納され
    たプログラムを前記RAMに転送するための転送プログ
    ラムを格納しており、 前記制御手段は、前記RAMに格納されたプログラムを
    実行可能であり、前記転送プログラムに基づいて、前記
    不揮発性メモリに格納されたプログラムをRAMに転送
    するとともに、このRAMに格納されたプログラムを実
    行するときに、前記初期プログラムに含まれる割り込み
    処理の先頭番地を不揮発性メモリ上からRAM上に移動
    させるものであることを特徴とする請求項1に記載の不
    揮発性メモリ内蔵マイクロコンピュータ。
  3. 【請求項3】RAMと、 マイクロコンピュータのメモリ空間に配置され、割り込
    み処理の先頭番地、および格納した第1プログラムを前
    記RAMに転送するための転送プログラムを格納する少
    なくとも1つの書き換え可能な不揮発性メモリと、 前記RAMに格納されたプログラムを実行可能であり、
    前記転送プログラムに基づいて、前記第1プログラムを
    不揮発性メモリからRAMに転送するとともに、このR
    AMに格納された第1プログラムを実行するときに、前
    記割り込み処理の先頭番地を不揮発性メモリ上からRA
    M上に移動させる制御手段とを備えていることを特徴と
    する不揮発性メモリ内蔵マイクロコンピュータ。
  4. 【請求項4】プログラム領域とデータ領域とが同一の前
    記不揮発性メモリ上に設定され、前記プログラム領域に
    は同一の不揮発性メモリのデータ領域を使用することを
    指令する第2プログラムが格納され、前記制御手段は、
    前記第2プログラムに基づいて、前記データ領域をデー
    タ格納用として使用するものであることを特徴とする請
    求項2または3に記載の不揮発性メモリ内蔵マイクロコ
    ンピュータ。
  5. 【請求項5】前記制御手段は、前記不揮発性メモリから
    RAMに転送されて格納されたプログラムに基づいて、
    前記不揮発性メモリに対するデータの書き込みと消去と
    の少なくとも一方を行うことを特徴とする請求項2また
    は3に記載の不揮発性メモリ内蔵マイクロコンピュー
    タ。
  6. 【請求項6】前記制御手段は、前記RAMに格納された
    プログラムに基づいて、前記不揮発性メモリまたはRA
    Mの所定領域からデータを読み出し、このデータを前記
    不揮発性メモリの所定領域に書き込むことを特徴とする
    請求項2または3に記載の不揮発性メモリ内蔵マイクロ
    コンピュータ。
  7. 【請求項7】前記不揮発性メモリには割り込み処理のプ
    ログラムが格納され、 前記制御手段は、前記RAMに格納されたプログラムに
    基づいて前記不揮発性メモリに対するデータの書き込み
    と消去との少なくとも一方を実行中に割り込みが発生し
    たとき、前記割り込み処理の先頭番地に基づいて制御を
    前記不揮発性メモリに格納された割り込み処理のプログ
    ラムに分岐可能であることを特徴とする請求項2または
    3に記載の不揮発性メモリ内蔵マイクロコンピュータ。
JP09686499A 1999-04-02 1999-04-02 不揮発性メモリ内蔵マイクロコンピュータ Expired - Lifetime JP3727485B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP09686499A JP3727485B2 (ja) 1999-04-02 1999-04-02 不揮発性メモリ内蔵マイクロコンピュータ
TW089105695A TW460836B (en) 1999-04-02 2000-03-28 Microcomputer having built-in nonvolatile memory
EP00302643A EP1041486A3 (en) 1999-04-02 2000-03-30 Microcomputer having built-in nonvolatile memory
US09/541,086 US6598137B1 (en) 1999-04-02 2000-03-31 Microcomputer having built-in nonvolatile memory for simultaneous use as a program area and a data area
KR1020000017159A KR100413227B1 (ko) 1999-04-02 2000-04-01 비휘발성 메모리가 내장된 마이크로컴퓨터

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09686499A JP3727485B2 (ja) 1999-04-02 1999-04-02 不揮発性メモリ内蔵マイクロコンピュータ

Publications (2)

Publication Number Publication Date
JP2000293367A true JP2000293367A (ja) 2000-10-20
JP3727485B2 JP3727485B2 (ja) 2005-12-14

Family

ID=14176323

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09686499A Expired - Lifetime JP3727485B2 (ja) 1999-04-02 1999-04-02 不揮発性メモリ内蔵マイクロコンピュータ

Country Status (5)

Country Link
US (1) US6598137B1 (ja)
EP (1) EP1041486A3 (ja)
JP (1) JP3727485B2 (ja)
KR (1) KR100413227B1 (ja)
TW (1) TW460836B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533574A (ja) * 2005-03-08 2008-08-21 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング セクタ単位での消去の可能な半導体メモリ手段の第1のセクタへの再書き込み方法および装置
JP2012234568A (ja) * 2005-10-13 2012-11-29 Sandisk Technologies Inc 組込みコントローラを介するフラッシュストレージの初期化

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4034032B2 (ja) * 2000-08-07 2008-01-16 Necエレクトロニクス株式会社 キャッシュ内蔵マイクロコンピュータ
JP4230122B2 (ja) * 2001-03-30 2009-02-25 株式会社ルネサステクノロジ マイクロコンピュータ、書込み方法及び消去方法
US7072879B2 (en) * 2001-10-22 2006-07-04 Siemens Building Technologies, Inc. Partially embedded database and an embedded database manager for a control system
JP2004030438A (ja) * 2002-06-27 2004-01-29 Renesas Technology Corp マイクロコンピュータ
JP2004334486A (ja) * 2003-05-07 2004-11-25 Internatl Business Mach Corp <Ibm> ブートコードを用いた起動システム、及び起動方法
FR2872603B1 (fr) * 2004-07-03 2007-02-09 Samsung Electronics Co Ltd Procede et dispositif pour executer le code d'amorcage de systemes integres
KR100604877B1 (ko) 2004-07-03 2006-07-31 삼성전자주식회사 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법
US20060080522A1 (en) * 2004-10-13 2006-04-13 Button Russell E Method, apparatus, and system for facilitating secure computing
US7480836B2 (en) * 2005-04-25 2009-01-20 Hewlett-Packard Development Company, L.P. Monitoring error-handler vector in architected memory
KR101010489B1 (ko) * 2005-06-21 2011-01-21 미츠비시덴키 가부시키가이샤 프로그램 실행 시스템을 위한 프로그래밍 시스템 및검사장치용 프로그램 작성 시스템
JP2007052717A (ja) * 2005-08-19 2007-03-01 Fujitsu Ltd データ転送装置およびデータ転送方法
JP4917292B2 (ja) * 2005-09-30 2012-04-18 株式会社アドバンテスト 試験装置、及び試験方法
JP5754264B2 (ja) 2011-06-24 2015-07-29 富士ゼロックス株式会社 プログラム実行装置、画像処理装置およびプログラム
EP2959378A1 (en) * 2013-02-22 2015-12-30 Marvell World Trade Ltd. Patching boot code of read-only memory
DE102015213138A1 (de) * 2015-07-14 2017-01-19 Siemens Schweiz Ag Verfahren zur Durchführung eines Betriebssystem-Updates

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4698750A (en) * 1984-12-27 1987-10-06 Motorola, Inc. Security for integrated circuit microcomputer with EEPROM
US5187792A (en) * 1990-05-09 1993-02-16 International Business Machines Corporation Method and apparatus for selectively reclaiming a portion of RAM in a personal computer system
IT1254937B (it) * 1991-05-06 1995-10-11 Aggiornamento dinamico di memoria non volatile in un sistema informatico
US5388267A (en) * 1991-05-29 1995-02-07 Dell Usa, L.P. Method and apparatus for updating and restoring system BIOS functions while maintaining BIOS integrity
US5473775A (en) * 1991-10-11 1995-12-05 Kabushiki Kaisha Toshiba Personal computer using flash memory as BIOS-ROM
US5687345A (en) * 1992-03-17 1997-11-11 Hitachi, Ltd. Microcomputer having CPU and built-in flash memory that is rewritable under control of the CPU analyzing a command supplied from an external device
JPH05342374A (ja) 1992-06-11 1993-12-24 Mitsubishi Electric Corp ワンチップマイクロコンピュータ
US5574926A (en) * 1993-03-11 1996-11-12 Olympus Optical Co., Ltd. One-chip microcomputer system having function for substantially correcting contents of program
US5522076A (en) * 1993-05-13 1996-05-28 Kabushiki Kaisha Toshiba Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function
JPH08101794A (ja) 1994-09-30 1996-04-16 Nec Corp ファームウェアのプログラム書き換え方式
JP3292864B2 (ja) 1995-02-07 2002-06-17 株式会社日立製作所 データ処理装置
KR100224552B1 (ko) * 1996-03-15 1999-10-15 하나와 요시카즈 자동차용 로크 방지 브레이크 제어 시스템
JP2940480B2 (ja) * 1996-07-05 1999-08-25 日本電気株式会社 コンピュータシステム
JPH10116187A (ja) * 1996-10-11 1998-05-06 Mitsubishi Electric Corp マイクロコンピュータ
JP3773607B2 (ja) * 1996-11-28 2006-05-10 Necエレクトロニクス株式会社 フラッシュeeprom内蔵マイクロコンピュータ
JP3173407B2 (ja) * 1997-02-05 2001-06-04 日本電気株式会社 フラッシュeeprom内蔵マイクロコンピュータ
JPH11219299A (ja) * 1998-02-02 1999-08-10 Mitsubishi Electric Corp マイクロコンピュータ
US6308265B1 (en) * 1998-09-30 2001-10-23 Phoenix Technologies Ltd. Protection of boot block code while allowing write accesses to the boot block
US6457175B1 (en) * 1998-11-09 2002-09-24 Tut Systems, Inc. Method and apparatus for installing a software upgrade within a memory resource associated with a computer system
US6434695B1 (en) * 1998-12-23 2002-08-13 Apple Computer, Inc. Computer operating system using compressed ROM image in RAM

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533574A (ja) * 2005-03-08 2008-08-21 ローベルト ボツシユ ゲゼルシヤフト ミツト ベシユレンクテル ハフツング セクタ単位での消去の可能な半導体メモリ手段の第1のセクタへの再書き込み方法および装置
JP2012234568A (ja) * 2005-10-13 2012-11-29 Sandisk Technologies Inc 組込みコントローラを介するフラッシュストレージの初期化

Also Published As

Publication number Publication date
TW460836B (en) 2001-10-21
EP1041486A2 (en) 2000-10-04
JP3727485B2 (ja) 2005-12-14
KR20010006947A (ko) 2001-01-26
EP1041486A3 (en) 2003-04-23
US6598137B1 (en) 2003-07-22
KR100413227B1 (ko) 2003-12-31

Similar Documents

Publication Publication Date Title
JP2000293367A (ja) 不揮発性メモリ内蔵マイクロコンピュータ
US7089549B2 (en) Updating flash memory
US6745278B2 (en) Computer capable of rewriting an area of a non-volatile memory with a boot program during self mode operation of the computer
JP6070360B2 (ja) 情報処理装置およびその処理方法
KR100604877B1 (ko) 내장 시스템의 메모리 어드레스의 매핑을 제어하는 장치와방법
US20070011416A1 (en) Data storage device and medium and related method of storing backup data
JP2003345730A (ja) インタフェース装置、インタフェース装置におけるファームウェアの更新方法、及びそのプログラム
US5940627A (en) User selectable feature set for a flash ROM based peripheral
US6543008B1 (en) Computer system and program rewriting method
US6795915B2 (en) Computer system and method for setting up information on an operating system thereof
JP3805195B2 (ja) プログラム書き換え装置及びプログラム書き換え方法
CN111338771B (zh) 引导程序切换处理方法及装置、计算机设备、介质
KR100316584B1 (ko) 시스템에서 부팅 및 수행 프로그램을 공유하는 플래시메모리 및 그 메모리 갱신 방법
KR20000033437A (ko) 부트스트랩로더 기능 구현 장치
JP2023020590A (ja) 情報処理装置、及び監視方法
JP2842252B2 (ja) 計算機システムにおけるフラッシュメモリカードへのデータ書き込み方式
JP2002073360A (ja) 起動情報書換装置
JP2008003668A (ja) 制御プログラム書換システム、書換プログラム及び制御プログラム書換方法、並びに情報処理装置、情報処理装置制御プログラム及び情報処理装置制御方法
KR20060118715A (ko) 연산처리장치와 메모리 인터페이스 장치 및 방법
CN115904424A (zh) 空中下载升级方法、装置及计算机可读存储介质
JP2022024904A (ja) ファームウェア更新システムおよびファームウェア更新方法
JP2738611B2 (ja) 電子装置
CN116669224A (zh) 网络连接方法、智能设备以及存储介质
JP2003015951A (ja) 画像形成装置
CN118363636A (zh) 固件更新方法、计算机及终端设备

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050822

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: 20050927

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050928

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091007

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101007

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101007

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111007

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121007

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121007

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131007

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term