JP3032747B2 - オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法 - Google Patents

オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法

Info

Publication number
JP3032747B2
JP3032747B2 JP20949498A JP20949498A JP3032747B2 JP 3032747 B2 JP3032747 B2 JP 3032747B2 JP 20949498 A JP20949498 A JP 20949498A JP 20949498 A JP20949498 A JP 20949498A JP 3032747 B2 JP3032747 B2 JP 3032747B2
Authority
JP
Japan
Prior art keywords
flash memory
block
embedded flash
unit
memory unit
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.)
Expired - Fee Related
Application number
JP20949498A
Other languages
English (en)
Other versions
JPH11306009A (ja
Inventor
錫榮 蔡
芳銘 郭
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.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics 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 Winbond Electronics Corp filed Critical Winbond Electronics Corp
Publication of JPH11306009A publication Critical patent/JPH11306009A/ja
Application granted granted Critical
Publication of JP3032747B2 publication Critical patent/JP3032747B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、埋め込みフラッシ
ュメモリを備えたマイクロコンピュータ、特に外部プロ
グラミングツールを使用することなくマイクロコンピュ
ータ自体を介して再プログラミングできる埋め込みフラ
ッシュメモリを備えたマイクロコンピュータに関するも
のである。さらに、本発明はマイクロコンピュータの埋
め込みフラッシュメモリにデータをプログラミングする
方法に関するものである。
【0002】
【従来の技術】マイクロコンピュータは、完成されたマ
イクロプロセッサユニットと埋め込みフラッシュメモリ
ユニットを備えたモノリシック集積回路である。すべて
のマイクロコンピュータは、きわめて小型で機能的に高
密度に集積化されているコンピュータオンチップとみな
せる。EEPROM(電気的に消去可能でプログラム可
能な読出し専用メモリ)とは違って、マイクロコンピュ
ータ内の埋め込みフラッシュメモリは紫外光を使用する
ことなく再プログラムされる。したがって、フラッシュ
メモリはマイクロプロセッサ内の埋め込みメモリとして
の使用においてEEPROMよりも人気がある。
【0003】従来において、データは外部プログラミン
グツールの使用によってマイクロコンピュータの埋め込
みフラッシュメモリにプログラムされ、マイクロコンピ
ュータ自体によって直接にプログラムされない。したが
って、バグが発見されたり、新しい機能を追加したりす
る場合、埋め込みフラッシュメモリにあらかじめプログ
ラムされているプログラムコードを更新あるいは変える
ことは非常に不便である。
【0004】従来の設計では、マイクロコンピュータ内
のマイクロプロセッサユニットと埋め込みフラッシュメ
モリは同じチップ上に集積化されるよりもむしろ分離さ
れていて、それによりマイクロコンピュータにオンライ
ンプログラミング能力を持たせている。しかしながら、
この設計は追加のコントロール回路および外部メモリユ
ニットを必要とするため、マイクロコンピュータ全体に
わたるシステム構成が複雑になり、寸法が増大し、集積
化の低密度化が生じる。また、そのようなマイクロコン
ピュータは、製造が困難であってコストも高くなる。
【0005】図1は、埋め込みフラッシュメモリを備え
た従来型のマイクロコンピュータの基本構成を示す概略
図である。マイクロコンピュータはマイクロプロセッサ
ユニット110、およびバス120を介してマイクロプ
ロセッサユニット110に接続される埋め込みフラッシ
ュメモリ130のバンクを含む。この埋め込みフラッシ
ュメモリ130は、マイクロプロセッサユニット110
によって実行されるべきプログラムを記憶するために使
用される。このマイクロコンピュータ構成における一つ
の欠点は、埋め込みフラッシュメモリの単一のバンクの
みが使用されていることである。これはマイクロコンピ
ュータにオンチッププログラミングプロセスを適切に実
施させる場合には不充分である。何故なら、オンチップ
プログラミングプロセス中に、マイクロプロセッサユニ
ット110は埋め込みフラッシュメモリ130において
書き込み作業および読出し作業の両方を実施する必要が
あり、埋め込みフラッシュメモリの単一のバンクだけで
はそのような作業を効率的に実行できないからである。
【0006】マイクロコンピュータにオンチッププログ
ラミング能力を持たせるための従来の解決策は、埋め込
みフラッシュメモリへのデータのローディングを制御す
るために使用されるローダプログラムを記憶するための
追加ROM(読出し専用メモリ)をマイクロコンピュー
タに設けることである。しかしながら、この設計はフラ
ッシュメモリ構造とROM構造という二つの異なる半導
体メモリ構造、およびマイクロコンピュータのICチッ
プ内にフラッシュメモリ用とROM用の2つの異なる周
辺回路を必要とする。その結果、マイクロコンピュータ
の設計と製造の両方において実施が困難となっている。
【0007】
【発明が解決しようとする課題】以上をまとめると、図
1に示す従来技術には以下の欠点がある。
【0008】(1)第1に、この従来技術は埋め込みフ
ラッシュメモリの単一のバンクを使用しているので、マ
イクロコンピュータは埋め込みフラッシュメモリに新し
いデータをプログラムするためにオンチッププログラミ
ング能力を持つことができない。そのため、外部プログ
ラミングツールの使用が必要となる。これはマイクロコ
ンピュータの実用面で不便でありコスト性も悪い。
【0009】(2)第2に、マイクロコンピュータにオ
ンチッププログラミング能力を持たせるために、マイク
ロコンピュータ内のマイクロプロセッサユニットと埋め
込みフラッシュメモリは同じチップ上に集積化されるよ
りもむしろ分離されるべきであり、適切なオペレーショ
ンのためにそれぞれ周辺回路を必要とする。これは、低
集積化、大型化、コストアップを招く。 (3)第3に、オンチッププログラミング能力はマイク
ロコンピュータ内にローダプログラムを記憶するための
追加ROMを設けることにより得られるが、それにもか
かわらず低集積化、大型化、コストアップが避けられな
い。さらに、設計と手直しの両方が開発者にとって困難
となる。
【0010】
【課題を解決するための手段】したがって、本発明の目
的は、外部プログラミングツールを使用することなくマ
イクロコンピュータ自体を介して埋め込みフラッシュメ
モリ内への再プログラムを行うことができるオンチップ
プログラミング能力を有する埋め込みフラッシュメモリ
を備えたマイクロコンピュータを提供することである。
【0011】本発明のさらなる目的は、アプリケーショ
ンプログラムおよびローダプログラムをそれぞれ記憶す
るために使用される2つのフラッシュメモリブロックを
有する埋め込みフラッシュメモリを備えたマイクロコン
ピュータを提供することである。ローダプログラムは、
埋め込みフラッシュメモリへのデータのプログラミング
を制御するようにマイクロコンピュータのマイクロプロ
セッサユニットよって実行される。
【0012】本発明の別の目的は、開発中あるいは販売
後の何時でも外部プログラミングツールを使用すること
なく更新されたデータ、あるいは新しいデータを埋め込
みフラッシュメモリにプログラムすることができるマイ
クロコンピュータを提供することである。
【0013】本発明の別の目的は、より小さいレイアウ
ト面積でマイクロコンピュータを実現し、それにより高
集積化、小型化、安価な実行可能性をもたらすととも
に、マイクロコンピュータの設計および手直しがしやす
い構成を有する埋め込みフラッシュメモリを備えたマイ
クロコンピュータを提供することである。
【0014】本発明の前途した目的およびその他の目的
に基づいて、埋め込みフラッシュメモリを備えたマイク
ロコンピュータの新しい構成が提供される。本発明のマ
イクロコンピュータは、マイクロプロセッサユニット、
埋め込みフラッシュメモリユニット、レジスタセット、
バスマルチプレクサを含む。これらの構成要素はデータ
バスを介して相互に連結される。
【0015】埋め込みフラッシュメモリユニットは、ロ
ーダプログラムを記憶するためのローダブロック、およ
び少なくとも一つのアプリケーションプログラムを記憶
するためのユーザーブロックに分割される。埋め込みフ
ラッシュメモリユニットのユーザーブロックにプログラ
ムされるべき新しいデータは、まずレジスタセットに記
憶される。埋め込みフラッシュメモリユニットにおい
て、ローダブロックとユーザーブロックの一方のみがア
クティブな動作状態になれる。このアクティブな動作状
態はマイクロプロセッサユニットからのメモリ選択信号
によって制御される。バスマルチプレクサは、埋め込み
フラッシュメモリユニットのアクティブブロック(メモ
リ選択信号により決定されるローダブロックあるいはユ
ーザーブロック)を選択的にマイクロプロセッサユニッ
トあるいはレジスタセットのいずれかに接続するために
マイクロプロセッサユニットからのバス選択信号によっ
て制御される。マイクロプロセッサユニットは、プリセ
ット時間が経過した時に割り込み信号を生成するタイマ
ーを含む。マイクロプロセッサユニットがアイドルモー
ドにある時、マイクロプロセッサユニットは一時的にオ
ペレーションを停止する。
【0016】本発明に基づく2つの好ましい実施形態に
ついて説明する。第1の実施形態に基づくマイクロコン
ピュータは、以下の構成要素、すなわち、埋め込みフラ
ッシュメモリ、マイクロプロセッサユニット、レジスタ
セット、およびバスマルチプレクサを含む。埋め込みフ
ラッシュメモリユニットは、ローダプログラムを記憶す
るためのローダブロック、およびローダプログラムと同
じスタートアドレスを有し少なくとも一つのアプリケー
ションプログラムを記憶するためのユーザーブロックを
含む少なくとも2つのブロックに分割される。マイクロ
プロセッサユニットは、プリセット時間が経過した時に
割り込み信号を生成する能力のあるタイマーを含み、埋
め込みフラッシュメモリユニットに連結される。レジス
タセットは埋め込みフラッシュメモリ一ユニットのユー
ザーブロックにプログラムされるべきデータを一時的に
保存する。バスマルチプレクサは、マイクロプロセッサ
ユニットによって発信されるバス選択信号に応じて埋め
込みフラッシュメモリユニットをマイクロプロセッサユ
ニットあるいはレジスタセットのいずれかに選択的に接
続するために、マイクロプロセッサユニット、埋め込み
フラッシュメモリユニット、およびレジスタセットの間
に連結される。
【0017】データ再プログラミングプロセスが前記の
マイクロコンピュータにおいて実施される場合、マイク
ロプロセッサユニットは埋め込みフラッシュメモリユニ
ットのローダブロックをアクティブブロックとして選択
する。一方、マイクロプロセッサユニットは、埋め込み
フラッシュメモリユニットのローダブロックをマイクロ
プロセッサユニットに接続するためにバスマルチプレク
サに指令する、それによりマイクロプロセッサユニット
は埋め込みフラッシュメモリユニットのローダブロック
に記憶されているローダプログラムをフェッチして実行
する。
【0018】データ再プログラミングプロセスにおい
て、受信されたデータはまずレジスタセットに移されて
そこに一時的に記憶される。そして、埋め込みフラッシ
ュメモリユニットのユーザーブロックにデータの1ブロ
ックを書き込むの必要とされる時間がマイクロプロセッ
サユニット内のタイマーにセットされる。その後、マイ
クロプロセッサユニットはアイドルモードに切り換えら
れて埋め込みフラッシュメモリユニットのユーザーブロ
ックをアクティブブロックとして選択する。マイクロプ
ロセッサユニットは、さらに埋め込みフラッシュメモリ
ユニットのユーザーブロックをレジスタセットに接続す
るためにバスマルチプレクサに指令する、それによりレ
ジスタセットに現在記憶されているデータが埋め込みフ
ラッシュメモリユニットのユーザーブロックに移されて
そこに書き込まれる。プリセット時間が経過した時、タ
イマーは割り込み信号を生成する。割り込み信号によっ
てマイクロプロセッサユニットがアイドルモードから目
覚めてオペレーションを再開する。
【0019】本発明の第2の実施形態において、マイク
ロコンピュータは、次の構成要素、すなわち、埋め込み
フラッシュメモリユニット、マイクロプロセッサユニッ
ト、レジスタセットおよびバスマルチプレクサを含む。
埋め込みフラッシュメモリユニットは、ローダプログラ
ムを記憶するためのローダブロック、およびローダブロ
ックの最後のアドレス直後に続くスタートアドレスを有
し少なくとも一つのアプリケーションプログラムを記憶
するためのユーザーブロックを含む少なくとも2つのブ
ロックに分割される。マイクロプロセッサユニットは、
プリセット時間が経過した時に割り込み信号を生成する
能力のあるタイマーを含み、埋め込みフラッシュメモリ
ユニットに連結される。レジスタセットは埋め込みフラ
ッシュメモリ一ユニットのユーザーブロックにプログラ
ムされるべきデータを一時的に保存する。バスマルチプ
レクサは、マイクロプロセッサユニットによって発信さ
れるバス選択信号に応じて埋め込みフラッシュメモリユ
ニットをマイクロプロセッサユニットあるいはレジスタ
セットのいずれかに選択的に接続するために、マイクロ
プロセッサユニット、埋め込みフラッシュメモリユニッ
ト、およびレジスタセットの間に連結される。
【0020】第1の実施形態では、ローダブロックとユ
ーザーブロックは同じスタートアドレスを有し、マイク
ロプロセッサユニットからのメモリ選択信号によってど
ちらのブロックがアクティブブロックとして選択される
かが決定される。しかしながら、第2の実施形態におい
ては、ローダブロックとユーザーブロックは、ユーザー
ブロックのスタートアドレスがローダブロックの最終ア
ドレスのすぐ後に続くように連続的に連結される。
【0021】両方の実施形態において、レジスタセット
は、埋め込みフラッシュメモリユニットのユーザーブロ
ックにプログラムされるべきデータを記憶するためのデ
ータレジスタ、埋め込みフラッシュメモリユニットのユ
ーザーブロックにプログラムされるべきデータの連想ア
ドレスを記憶するためのアドレスレジスタ、および埋め
込みフラッシュメモリユニットのユーザーブロックへの
データのプログラミングに関係する制御命令を記憶する
ためのコントロールレジスタを含む。
【0022】さらに、本発明は、埋め込みフラッシュメ
モリユニットとマイクロプロセッサユニットの両方を備
えたマイクロコンピュータを使用して、埋め込みフラッ
シュメモリユニット内に1セットの新しいデータをプロ
グラムするデータ再プログラミングプロセスを実施する
ための方法を提供する。
【0023】本発明の方法は次のステップを含む: (1)埋め込みフラッシュメモリユニットをローダプロ
グラムを記憶するためのローダブロックおよび少なくと
も一つのアプリケーションプログラムを記憶するための
ユーザーブロックに分割する; (2)マイクロプロセッサユニットをプログラミングモ
ードに切り換える; (3)埋め込みフラッシュメモリユニットのローダブロ
ックに記憶されるローダプログラムを実施する; (4)埋め込みフラッシュメモリユニットへの新しいデ
ータのプログラミングに関係するパラメータを設定す
る; (5)新しいデータの1ブロックを受信する; (6)受信したデータのブロックをマイクロプロセッサ
ユニットのユーザーブロックに書き込む; (7)新しいデータのすべてのブロックが埋め込みフラ
ッシュメモリユニットのユーザーブロックにプログラム
されたかどうかチェックし、もしプログラムされていな
いならステップ(5)に戻る。
【0024】本発明の方法は、さらにデータ再プログラ
ミングプロセスのためのリクエストが受信されたかどう
かチェックするステップを含み、もし受信されていない
場合、マイクロプロセッサユニットは埋め込みフラッシ
ュメモリユニットのユーザーブロックに記憶されている
アプリケーションプログラムを実行するために指令され
る。
【0025】ステップ(5)は、新しいデータと新しい
データを連想させるアドレス値をレジスタセットに書き
込むサブステップを含む。新しいデータは、まずマイク
ロプロセッサユニットのI/Oポートを介して受信さ
れ、それからレジスタセットに移される。
【0026】本発明の方法はデータの1ブロックをマイ
クロプロセッサユニットのユーザーブロックにプログラ
ムするのに必要とされる時間をチェックするステップ、
およびマイクロプロセッサユニット内のタイマーをプリ
セット時間でセットするステップを含む。このタイマー
は、タイマーがスタートされてプリセット時間が経過し
た時にマイクロプロセッサユニットに割り込み信号を生
成する能力を有する。
【0027】マイクロプロセッサユニットをプログラミ
ングモードに切り換えるステップ(2)は次のサブステ
ップを含む:プログラミングモードを初期化する;マイ
クロプロセッサユニットの割り込み機能を割り込み可能
にする;タイマーをセットする;タイマーをスタートす
る;マイクロプロセッサユニットをアイドルモードに切
り換える;タイマーからの割り込み信号を受けて、マイ
クロプロセッサユニットをアイドルモードから目覚めさ
せる;タイマーを停止する;マイクロプロセッサユニッ
トの割り込み機能を割り込み不可能にする。
【0028】本発明の方法は、パラメータをセットする
ステップ(4)の前に、プログラミングモードに難なく
入ったかどうかチェックするステップを含む。もし入っ
ていない場合、プログラミングモードは再初期化され
る。
【0029】データを書き込むためのステップ(6)は
以下のサブステップを含む:マイクロプロセッサユニッ
トの割り込み機能を割り込み可能にする;タイマーをス
タートする;マイクロプロセッサユニットをアイドルモ
ードに切り換える;レジスタセットに現在記憶されてい
るデータを埋め込みフラッシュメモリユニットのユーザ
ーブロックに移し、これらのデータを埋め込みフラッシ
ュメモリユニットのユーザーブロックに書き込む;タイ
マーからの割り込み信号に基づいて、マイクロプロセッ
サユニットをアイドルモードから目覚めさせる;タイマ
ーをストップする;マイクロプロセッサユニットの割り
込み機能を割り込み不可能にする。
【0030】この後、手続きは次のデータブロックを受
信して、それを埋め込みフラッシュメモリユニットのユ
ーザーブロックに書き込むためにメインプログラムに戻
る。
【0031】
【発明の実施の形態】図2は、本発明にかかる埋め込み
フラッシュメモリを備えたマイクロコンピュータの基本
構成を示す概略ブロック図である。本発明のマイクロコ
ンピュータは、マイクロプロセッサユニット210、お
よびマイクロプロセッサユニット210にデータバス2
20を介して接続される埋め込みフラッシュメモリユニ
ット230を含む。埋め込みフラッシュメモリユニット
230は、2つのブロック、すなわち、ローダブロック
231およびユーザーブロック232に分割される。ロ
ーダブロック231はローダプログラムを記憶するため
に使用される。ローダプログラムはデータローディング
機能を実施するために使用される。一方、ユーザーブロ
ック232は、マイクロコンピュータに種々のアプリケ
ーションプログラムを記憶するために使用される。
【0032】マイクロコンピュータがスタートされる
と、マイクロコンピュータに接続されたシステムに特定
の機能を提供するためにユーザーブロック232に記憶
されているアプリケーションプログラムが実行される。
マイクロコンピュータが外部で発信されたリクエストを
受信して埋め込みフラッシュメモリユニット230のユ
ーザーブロック232に新しいデータをプログラムする
データ再プログラミングプロセスを実施する時、マイク
ロプロセッサユニットはまずデータバス220を埋め込
みフラッシュメモリユニット230のローダブロック2
31に接続し、ローダブロック231に記憶されている
ローダプログラムを実行する。このプロセスにおいて、
新しいプログラムコードが外部回路からマイクロコンピ
ュータにロードされ、その後ユーザーブロック232内
の古いデータは消去されて新しいデータがユーザーブロ
ック232に書き込まれる。この後、マイクロプロセッ
サユニット210は、データバス220をユーザーブロ
ック232に接続し、それによりマイクロプロセッサユ
ニット210はユーザーブロック232に現在記憶され
ている新しいプログラムコードを実行する。
【0033】従来型のマイクロコンピュータにおいて、
一つの書き込み指令を実行するのに必要な時間は、埋め
込みフラッシュメモリにデータのあるブロックをプログ
ラムするのに必要な時間よりもきわめて短い。したがっ
て、一つの書き込み指令を実行するサイクル内に埋め込
みフラッシュメモリへのデータプログラミングを完了す
ることは不可能である。例えば、40ヘルツマイクロプ
ロセッサにおいて、次の命令:MOVX@DPTR、A
を実行するには2つの命令サイクルが必要である。
【0034】1つの命令サイクルは、12クロックピリ
オドに等しい。したがって、上記命令を実行するには1
**25=600ナノ秒(ns)かかる。さらに、お
よそ150マイクロ秒(μs)が埋め込みフラッシュメ
モリにデータの各バイトをプログラムするのに必要であ
るので、マイクロコンピュータは、依然として1命令サ
イクル内でデータ再プログラミングプロセスを完了する
ことができない。埋め込みフラッシュメモリに記憶され
るプログラムコードは、データ再プログラミングプロセ
スが終了するまでアクセスできない。したがって、マイ
クロプロセッサユニットは、プログラミングプロセスが
終了するまで小休止する。プログラミングプロセスが完
了した後、マイクロプロセッサユニットは次の仕事を実
施するために埋め込みフラッシュメモリにおいて次の命
令へのアクセスを獲得することができる。
【0035】第1実施例 図3は、本発明にかかるマイクロコンピュータの第1実
施例の詳細な構成を示す概略ブロック図である。この実
施例のマイクロコンピュータは、マイクロプロセッサユ
ニット310(図2に示されるマイクロプロセッサユニ
ット210)、データバス320、埋め込みフラッシュ
メモリユニット330(図2に示される埋め込みフラッ
シュメモリユニット230)、レジスタセット340、
およびバスマルチプレクサ350を含む。
【0036】マイクロプロセッサユニット330はさら
にI/Oポート360、タイマー370、メモリ選択信
号MSELを出力すための出力ポートMSEL、および
バス選択信号BSELを出力するための出力ポートBS
ELを含む。I/Oポート360は、マイクロコンピュ
ータにプログラムされるべき新しいデータDATの流れ
を受信するために使用される。埋め込みフラッシュメモ
リユニット330は、ローダブロック331およびユー
ザーブロック332に分割される。ローダブロック33
1とユーザーブロック332は、I/O回路333を共
有し合う。レジスタセット340は、データレジスタ3
41、アドレスレジスタ342、コントロールレジスタ
343を含む。
【0037】埋め込みフラッシュメモリユニット330
において、I/O回路333はアドレスデコーダ、チャ
ージャーポンパー、および制御論理回路(これらは図示
されていない)を含む。これらは、ICチップレイアウ
ト内において非常に大きな面積を占有する。したがっ
て、全体のチップサイズを小さくするために、I/O回
路333は、ローダブロック331とユーザーブロック
332がマイクロコンピュータ内においてI/O回路を
共有し合うように設計される。この実施例において、ロ
ーダブロック331内のスタートアドレスおよびユーザ
ーブロック332内のスタートアドレスは同じ値であ
り、例えば、00hである。換言すれば、ローダブロッ
ク331およびユーザーブロック332は時分割的な手
法で作動し、それらのうちのどちらがアクティブに作動
するかはマイクロプロセッサユニット310から発信さ
れるメモリ選択信号MSELによって制御される。
【0038】データ再プログラミングプロセスの実施が
望まれる時、関係する命令はマイクロプロセッサユニッ
ト310にロードされ、それによりマイクロプロセッサ
ユニット310は埋め込みフラッシュメモリユニット3
30のローダブロック331をアクティブブロックとし
て選択し、ローダブロック内に記憶されているローダプ
ログラムを実行する。
【0039】ローダプログラムによって、埋め込みフラ
ッシュメモリユニット330のユーザーブロック332
にプログラムされるべき新しいデータDATがI/Oポ
ート360を介してマイクロプロセッサユニット310
に受信される。その新しいデータ、連想アドレス値およ
び制御命令がまずレジスタセット340に移され、レジ
スタセット340のデータレジスタ341、アドレスレ
ジスタ342、およびコントロールレジスタ343にそ
れぞれ記憶される。
【0040】その後、フラッシュメモリユニット330
のユーザーブロック332内にデータの1ブロックをプ
ログラムするのに必要とされる時間がチェックされ、そ
れに基づいてタイマーがセットされる。タイマー370
は、タイマーがスタートされてプリセット時間が経過し
た時にマイクロプロセッサユニット310に割り込み信
号を生成する。データ再プログラミングプロセスが開始
されるとすぐに、タイマー370がスタートされ、マイ
クロプロセッサユニット310がアイドルモードに切り
換えられる。さらに、MSELおよびBSELのロジッ
ク状態は、埋め込みフラッシュメモリユニット330の
アクティブブロックがユーザーブロック332に切り換
えられるように、そして埋め込みフラッシュメモリユニ
ット330のI/O回路333がバスマルチプレクサ3
50によってレジスタユニット340に接続されるよう
にそれぞれ切り換えられる。その結果、レジスタセット
に現在記憶されているデータ(すなわち、埋め込みフラ
ッシュメモリユニット330のユーザーブロック332
にプログラムされるべき新しいデータ)は、バスマルチ
プレクサ350を介してユーザーブロック332に移さ
れ、それにより新しいデータはユーザーブロック332
に書き込まれる。
【0041】マイクロプロセッサユニット310がアイ
ドルモードにある時、レジスタセット340に記憶され
ているデータは埋め込みフラッシュメモリユニット33
0のユーザーブロック332に移されてそこに書き込ま
れる。タイマー370がプリセット時間に到達すると、
タイマーはマイクロプロセッサユニット310をアイド
ルモードから目覚めさせるために割り込み信号を生成す
る。さらに、MSELおよびBSELのロジック状態
は、埋め込みフラッシュメモリユニット330のアクテ
ィブブロックがローダブロックに切り換えられるよう
に、そして埋め込みフラッシュメモリユニット330の
I/O回路333がマルチプレクサ350によってデー
タバス320に接続されるようにそれぞれ変えられる。
その結果、マイクロプロセッサユニット310は、ロー
ダブロック331に記憶されているローダプログラムを
フェッチして実行し、新しいデータの次のブロックを受
信し、それを埋め込みフラッシュメモリユニット330
のユーザーブロック332にプログラムするために準備
する。前途の手続きは新しいデータのすべてのブロック
がユーザーブロック332にプログラムされるまで繰り
返される。
【0042】新しいデータのすべてのブロックが埋め込
みフラッシュメモリユニット330のユーザーブロック
332にプログラムされた時、MSELおよびBSEL
のロジック状態は、埋め込みフラッシュメモリユニット
300のアクティブブロックがユーザーブロックに切り
換えられるように、そして埋め込みフラッシュメモリユ
ニット330のI/O回路333がバスマルチプレクサ
350によってデータバス320に接続されるようにそ
れぞれ変えられる。その結果、マイクロプロセッサユニ
ット310は、前途したデータ再プログラミングプロセ
スに基づいて埋め込みフラッシュメモリユニット330
のユーザーブロック332に記憶された新しいプログラ
ムを実行する。
【0043】図4は、埋め込みフラッシュメモリに新し
いデータをプログラムするためにデータ再プログラミン
グプロセスを実施する時の本発明のマイクコンピュータ
における種々のオペレーションのタイミングを示す概略
図である。各データ再プログラミングプロセスは2段
階、準備サイクルとプログラミングサイクルを含む。
【0044】準備サイクルにおいて、マイクロプロセッ
サユニット310は、埋め込みフラッシュメモリユニッ
ト330のローダブロック331をアクティブブロック
として選択し、同時に埋め込みフラッシュメモリユニッ
ト330のI/O回路333をデータバス320に接続
するためにバスマルチプレクサ350に指令する。その
結果、マイクロプロセッサユニット310は、ローダブ
ロック331に記憶されているローダプログラムをフェ
ッチして実行する。そして新しいデータがI/Oポート
360を介して受信され、そしてレジスタセット340
に移される。さらに、プログラミングプロセスを制御す
るために使用される命令がコントロールレジスタ343
に設定される。
【0045】プログラミングサイクルは、準備サイクル
が完了され、マイクロプロセッサユニット310がアイ
ドルモードに切り換えられた後に実行される。このプロ
グラミングサイクルにおいて、マイクロプロセッサユニ
ット310は埋め込みフラッシュメモリユニット330
のユーザーブロック332をアクティブブロックとして
選択するとともに、埋め込みフラッシュメモリユニット
330のI/O回路333をレジスタセット340に接
続するためにバスマルチプレクサに指令する。その結
果、レジスタセット340に現在記憶されているデータ
(埋め込みフラッシュメモリユニット330にプログラ
ムされるべき新しいデータ)がバスマルチプレクサ35
0を介して埋め込みフラッシュメモリユニット330の
ユーザーブロック332に移される。プログラミングサ
イクルが完了されるプリセット時間が経過した時、タイ
マー370はマイクロプロセッサユニット310をアイ
ドルモードから目覚めさせるための割り込み信号を発信
する。その結果、マイクロプロセッサユニット310
は、データの次のブロックを受信してそれを埋め込みフ
ラッシュメモリユニット330のユーザーブロック33
2にプログラムするために準備する。
【0046】図5〜図7は、埋め込みフラッシュメモリ
ユニット330にデータをプログラムするためのデータ
再プログラミングプロセスに含まれる手順を示すフロー
チャートである。図5は、データ再プログラミングプロ
セスを実施するために本発明のマイクロコンピュータに
よって実行されるメインプログラムに含まれるステップ
を示すフローチャートである。図6は、図5のメインプ
ログラムへの切り換えサブルーティンに含まれるステッ
プを示すフローチャートである。図7は、図5のメイン
プログラムへの書き込みサブルーティンに含まれるステ
ップを示すフローチャートである。この書き込みサブル
ーティンは、新しいデータの各ブロックを埋め込みフラ
ッシュメモリに書き込むために使用される。
【0047】データ再プログラミングプロセスがリクエ
ストされる時、本発明のマイクロコンピュータは図5の
メインプログラムを実施し、埋め込みフラッシュメモリ
330のユーザーブロック332に新しいデータをプロ
グラムする。
【0048】第1ステップ510において、マイクロプ
ロセッサユニット310は、データ再プログラミングプ
ロセスのリクエストが外部回路から受信されたかどうか
チェックする。もし受信されていないなら、ステップ5
20に進み埋め込みフラッシュメモリユニット330の
ユーザーブロック332に記憶されているアプリケーシ
ョンプログラムを実行する。一方、受信されているな
ら、ステップ530に進む。
【0049】ステップ530において、マイクロプロセ
ッサユニット310はプログラミングモードに切り換え
られる。このプログラミングモードにおいて、埋め込み
フラッシュメモリユニット330のローダブロック33
1がアクティブブロックに切り換えられる。この切り換
えプロセス中、マイクロプロセッサユニット310にお
けるフラグが現在の状態を示すために設定される。現在
の状態を示すためのマイクロプロセッサにおけるフラグ
の使用は良く知られた技術であるので、ここでこれ以上
詳細に述べる必要はないだろう。
【0050】その後、ステップ531において、メイン
プログラムはデータの1ブロックを埋め込みフラッシュ
メモリユニット330のユーザーブロック332に書き
込むのに必要とされる時間、および埋め込みフラッシュ
メモリユニット330のユーザーブロック332にプロ
グラムされるべき新しいデータの全体量をチェックす
る。得られた時間はマイクロプロセッサユニット310
のタイマー370をセットするために使用される。
【0051】ステップ532において、マイクロプロセ
ッサユニット310は新しいデータのあるブロックを受
信し、このブロックを埋め込みフラッシュメモリユニッ
ト330のユーザーブロック332にプログラムする。
このブロックのプログラミングが完了された時、マイク
ロプロセッサユニット310は新しいデータの全てのブ
ロックのプログラミングが終了したかどうかをチェック
する。もし終了していないなら、ステップ540に進
む。もし終了しているならステップ550に進む。
【0052】ステップ550において、マイクロプロセ
ッサユニット310は実行モードに切り換えられる。次
のステップ551において、埋め込みフラッシュメモリ
ユニット330のユーザーブロック332がアクティブ
ブロックに切り換えられる。その結果、マイクロプロセ
ッサユニット310は、埋め込みフラッシュメモリユニ
ット330のユーザーブロック332に記憶されている
アプリケーションプログラムを実行する。
【0053】ステップ540において、マイクロプロセ
ッサユニット310はI/Oポート360を介して新し
いデータの次のブロックを受信する。そして、ステップ
541において、この受信されたブロックがレジスタセ
ット340に移されて、そこに一時的に記憶される。ス
テップ542において、レジスタセット340に記憶さ
れているデータは埋め込みフラッシュメモリユニット3
30のユーザーブロック332に移されてその特定の場
所に書き込まれる。この後、手続きはステップ532に
戻って再びステップ532を繰り返す。ステップ532
からステップ542までのループは、新しいデータの全
てのブロックが埋め込みフラッシュメモリユニット33
0のユーザーブロック332に受信されてそこにプログ
ラムされるまで繰り返される。
【0054】図5のフローチャートにおいて、プログラ
ミングモードへの切り換えステップ530は、図6のフ
ローチャートに示される切り換えサブルーティンを含
む。
【0055】ステップ610において、マイクロプロセ
ッサユニット310は、プログラミングモードに関係す
るフラグおよびコントロール命令を設定する。
【0056】その後、ステップ611において、切り換
えサブルーティンはマイクロプロセッサユニット310
の割り込み機能を割り込み可能にし、それによりマイク
ロプロセッサユニット310はタイマーによって後に生
成される割り込み信号に応答する。タイマー370がス
タートされてプリセット時間が経過した時、タイマー3
70は割り込み信号を生成するようにセットされる。前
途したように、タイマー370のプリセット時間は、デ
ータの1ブロックを埋め込みフラッシュメモリユニット
330のユーザーブロック332に書き込むのに必要と
される時間に等しい。ステップ611においてタイマー
がスタートされ、ステップ612においてマイクロプロ
セッサユニット310はアイドルモードに切り換えられ
る。タイマー370は、プリセット時間が経過した時、
割り込み信号を生成する。
【0057】その後、ステップ620において、タイマ
ー370によって生成された割り込み信号によりマイク
ロプロセッサユニット310はアイドルモードから目覚
めてオペレーションを再開する。
【0058】ステップ621において、切り換えサブル
ーティンはタイマー370を停止し、マイクロプロセッ
サユニット310の割り込み機能を割り込み不可能にす
る。その結果、マイクロプロセッサユニット310はそ
の後の割り込み信号を拒絶する。
【0059】ステップ622において、切り換えサブル
ーティンは、マイクロプロセッサユニット310がプロ
グラミングモードに切り換えられたかどうかチェックす
る。もし切り換えられているなら、切り換えサブルーテ
ィンは図5のメインプログラムに戻る。これに対して、
もし切り換えられていないなら、切り換えサブルーティ
ンはステップ630に進む。ステップ630において、
マイクロプロセッサユニット310はプログラミングモ
ードに切り換えられる。
【0060】図5のメインプログラムにおいて、レジス
タセット340に一時的に記憶されているデータを埋め
込みフラッシュメモリユニット330のユーザーブロッ
ク322に移して書き込むステップ542は書き込みサ
ブルーティンを含む。このサブルーティンにおける手続
きを図7に示す。
【0061】第1ステップ710において、書き込みサ
ブルーティンはマイクロプロセッサユニット310の割
り込み機能を割り込み可能にし、タイマー370をスタ
ートさせる。この時、図5のステップ531に示される
ように、タイマー37はすでに割り込み信号を生成する
ようにセットされている。すなわち、タイマー370が
スタートされてプリセット時間が経過した時、タイマー
はマイクロプロセッサユニット310に割り込み信号を
生成する。前途したように、タイマー370のプリセッ
ト時間は、データの1ブロックを埋め込みフラッシュメ
モリユニット330のユーザーブロック332に書き込
むのに必要とされる時間に等しい。
【0062】その後、書き込みサブルーティンのステッ
プ711において、マイクロプロセッサユニット310
はアイドルモードに切り換えられ、そしてMSELおよ
びBSELのロジック状態はそれぞれ、埋め込みフラッ
シュメモリユニット330のユーザーブロックがアクテ
ィブブロックに切り換えられるように、そして埋め込み
フラッシュメモリユニット330のI/O回路333が
マルチプレクサ350によってレジスタセット340に
接続されるように変えられる。その結果、レジスタセッ
ト340に記憶されているデータはバスマルチプレクサ
350を介して埋め込みフラッシュメモリユニット33
0のユーザーブロック332に移されてそこに書き込ま
れる。
【0063】その後、ステップ720において、タイマ
ー370によって生成される割り込み信号によってマイ
クロプロセッサユニット310がアイドルモードから目
覚めてオペレーションを再開する。この時、データの現
在のブロックは埋め込みフラッシュメモリユニット33
0のユーザーブロック332に完全に書き込まれる。
【0064】書き込みサブルーティンのステップ730
において、マイクロプロセッサユニット310の割り込
み機能が割り込み不可能にされるとともに、タイマー3
70を停止する。そして書き込みサブルーティンは図5
のメインプログラムに戻り、新しいデータの次のブロッ
クを埋め込みフラッシュメモリユニット330のユーザ
ーブロック332にプログラムする。
【0065】第2実施例 図8は、本発明にかかるマイクロコンピュータの第2実
施例の詳細な構成を示す概略ブロック図である。この実
施例は、図3に示す先の実施例と実質的に同じ構成であ
る。したがって、図8においては、各構成部品を図面番
号の始まりの数字を3の代わりに8を使用して示してあ
る。図3の実施例の埋め込みフラッシュメモリユニット
330におけるローダブロック331およびユーザーブ
ロック332は同じスタートアドレス、例えば、00h
を有し、I/O回路333を共有しあっている。それら
のうちの一方がアクティブな動作状態になることがで
き、それはマイクロプロセッサユニット310によって
発信されるメモリ選択信号MSELによって制御され
る。
【0066】しかしながら、この実施例では、埋め込み
フラッシュメモリユニット830のローダブロック83
1とユーザーブロック832がアドレスに関して連続的
に連結されている。換言すれば、一方のブロックのスタ
ートアドレスが他方のブロックの最終アドレスの直後に
続くように連結されている。
【0067】例えば、ユーザーブロック832は00h
で始まってXXh−1で終わるXXhバイトのメモリ能
力を有し、ローダブロック831はアドレスのXXhで
始まる。メモリ選択信号MSELの使用の代わりに、マ
イクロプロセッサユニット810によって発信されるア
ドレス信号によって埋め込みフラッシュメモリユニット
830のローダブロック831あるいはユーザーブロッ
ク832のいずれかが直接にアクセスされる。例えば、
ローダブロック831に記憶されているローダプログラ
ムをマイクロプロセッサユニット810に実行させる必
要がある場合、マイクロプロセッサユニット810はロ
ーダブロック831のスタートアドレスを表すアドレス
信号を埋め込みフラッシュメモリユニット830に発信
する。これにより、マイクロプロセッサユニット810
はローダブロック831への直接アクセスを獲得する。
一方、ユーザーブロック832へのデータの書き込みが
望まれる場合、マイクロプロセッサユニット810はユ
ーザーブロック332のスタートアドレスを表すアドレ
ス信号を埋め込みフラッシュメモリユニット830に発
信し、ユーザーブロック832への直接アクセスを獲得
する。図3に示されているMSEL信号線および出力ポ
ートはここでは削除されている。その他の動作は図3で
示した実施例と同じであるので詳細な説明を省略する。
【0068】以上のように、本発明を好適な実施例に基
づいて説明したが、本発明はこれらの実施例に限定され
ない。当業者であれば容易に理解できるように、必要に
応じて本発明の技術思想の範囲内において適当な変更な
らびに修正が行われるだろう。したがって、本発明の請
求の範囲はそのような変更や修正を含むような広い解釈
に基づいてなされるべきである。
【0069】
【発明の効果】以上まとめると、本発明に基づく埋め込
みフラッシュメモリを備えたマイクロコンピュータは先
行技術を上回る以下の長所を兼ね備えている。
【0070】(1)第1に、本発明のマイクロコンピュ
ータの埋め込みフラッシュメモリは、2つのブロック:
ローダプログラムを記憶するために使用されるローダブ
ロックおよびアプリケーションプログラムを記憶するた
めに使用されるユーザーブロックに分割される。その結
果、データ再プログラミングプロセスが外部再プログラ
ミングツールを使用することなくマイクロコンピュータ
自体を介して実行可能となる。
【0071】(2)第2に、本発明のマイクロコンピュ
ータは、専用制御回路を使用することなく、オンチップ
プログラミングプロセスを実施することができる。これ
は、マイクロコンピュータの高集積化およびチップサイ
ズの小型化をもたらす。
【0072】(3)第3に、ローダブロックとユーザー
ブロックは同じ埋め込みフラッシュメモリユニットから
分割される。ローダブロックは、追加ROMユニットを
使用することなくローダプログラムを記憶するために使
用される。ローダブロックとユーザーブロックは埋め込
みフラッシュメモリの同じI/O回路を共有できるの
で、全回路構造の複雑性を顕著に緩和できる。さらに、
高集積化、チップサイズの小型化、優れたコスト効果が
得られるとともに、開発者による設計および手直し(デ
バッギング)を容易にする。
【図面の簡単な説明】
【図1】埋め込みフラッシュメモリを備えた従来型のマ
イクロコンピュータの基本構成を示す概略ブロック図で
ある。
【図2】本発明にかかる埋め込みフラッシュメモリを備
えたマイクロコンピュータの基本構成を示す概略ブロッ
ク図である。
【図3】本発明にかかるマイクロコンピュータの第1実
施例を示す概略ブロック図である。
【図4】埋め込みフラッシュメモリに新しいデータをプ
ログラムするためにデータ再プログラミングプロセスを
実施する時の本発明のマイクコンピュータにおける種々
のオペレーションのタイミングを示す概略図である。
【図5】データ再プログラミングプロセスを実施するた
め本発明のマイクロコンピュータによって実行されるメ
インプログラムに含まれるステップを示すフローチャー
トである。
【図6】図5のメインプログラムへの切り換えサブルー
ティンに含まれるステップを示すフローチャートであ
る。
【図7】図5のメインプログラムへの書き込みルーティ
ンに含まれるステップを示すフローチャートである。
【図8】本発明にかかる埋め込みフラッシュメモリを備
えたマイクロコンピュータの第2実施例を示す概略ブロ
ック図である。
【符号の説明】
300 マイクロコンピュータ 310 マイクロプロセッサユニット 320 バス 330 埋め込みフラッシュメモリ 331 ローダブロック 332 ユーザーブロック 333 I/O回路 340 レジスタセット 341 データレジスタ 342 アドレスレジスタ 343 コントロールレジスタ 350 バスマルチプレクサ 360 I/Oポート 370 タイマー
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平2−257496(JP,A) 特開 平9−282181(JP,A) 特開 平9−269894(JP,A) 特開 平9−152969(JP,A) 特開 平9−231065(JP,A) 特開 平5−166390(JP,A) 特開 平9−258976(JP,A) 特開 平7−261997(JP,A) 特開 平8−328844(JP,A) 特開 平9−128230(JP,A) 特開 平9−168175(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 9/06 - 9/46 G06F 15/78

Claims (31)

    (57)【特許請求の範囲】
  1. 【請求項1】 以下の構成を含むことを特徴とするオン
    チッププログラミング能力を有するマイクロコンピュー
    タ: ローダプログラムを記憶するためのローダブロック、お
    よびローダブロックと同じスタートアドレスを有し少な
    くとも一つのアプリケーションプログラムを記憶するた
    めのユーザーブロックを含む少なくとも2つのブロック
    に分割される埋め込みフラッシュメモリユニット; プリセット時間が経過した時に割り込み信号を生成する
    能力を有するタイマーを含み、前記埋め込みフラッシュ
    メモリユニットに連結されるマイクロプロセッサユニッ
    ト; 埋め込みフラッシュメモリユニットのユーザーブロック
    にプログラムされるべきデータを一時的に記憶するため
    のレジスタセット; マイクロプロセッサユニットによって発信されるバス選
    択信号に応じてマイクロプロセッサユニットかレジスタ
    セットのいずれかに埋め込みフラッシュメモリユニット
    を選択的に接続するため、マイクロプロセッサユニッ
    ト、埋め込みフラッシュメモリユニット、およびレジス
    タセットの間に連結されるバスマルチプレクサ; データ再プログラミングプロセスを実施する時、マイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックをアクティブブロックとして選択
    するとともに、埋め込みフラッシュメモリユニットのロ
    ーダブロックをマイクロプロセッサユニットに接続する
    ためにバスマルチプレクサに指令し、それによりマイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックに記憶されているローダプログラ
    ムをフェッチして実行する; データ再プログラミングプロセスを実施する時、受信し
    たデータが最初にレジスタセットに移されてそこに一時
    的に記憶されるとともに、埋め込みフラッシュメモリユ
    ニットのユーザーブロックにデータの1ブロックを書き
    込むのに必要とされる時間がマイクロプロセッサユニッ
    トのタイマーにセットされる; マイクロプロセッサユニットがその後アイドルモードに
    切り替えられるとともに、埋め込みフラッシュメモリユ
    ニットのユーザーブロックをアクティブブロックとして
    選択する時、マイクロプロセッサユニットはさらに埋め
    込みフラッシュメモリユニットのユーザーブロックをレ
    ジスタセットに接続するためにバスマルチプレクサに指
    令し、それによりレジスタセットに現在記憶されている
    データが埋め込みフラッシュメモリユニットのユーザー
    ブロック内に移されてそこに書き込まれる; プリセット時間が経過してタイマーが割り込み信号を生
    成した時、割り込み信号によってマイクロプロセッサユ
    ニットがアイドルモードから目覚めてオペレーションを
    再開する。
  2. 【請求項2】 前記埋め込みフラッシュメモリユニット
    は、ローダブロックとユーザーブロックの両方によって
    共有されるI/O回路を含むことを特徴とする請求項1
    のマイクロコンピュータ。
  3. 【請求項3】 前記マイクロプロセッサユニットは、埋
    め込みフラッシュメモリユニットのローダブロックとユ
    ーザーブロックのいずれかをI/O回路に接続されるア
    クティブブロックとして選択するために、埋め込みフラ
    ッシュメモリユニットにメモリ選択信号を発信すること
    を特徴とする請求項2のマイクロコンピュータ。
  4. 【請求項4】 前記マイクロプロセッサユニットは、埋
    め込みフラッシュメモリユニットのユーザーブロックに
    プログラムされるべきデータを受信するためのI/Oポ
    ートを含むことを特徴とする請求項3のマイクロコンピ
    ュータ。
  5. 【請求項5】 前記レジスタセットは、埋め込みフラッ
    シュメモリユニットのユーザーブロックにプログラムさ
    れるべきデータを記憶するためのデータレジスタ;埋め
    込みフラッシュメモリユニットのユーザーブロックにプ
    ログラムされるべきデータの連想アドレスを記憶するた
    めのアドレスレジスタ;埋め込みフラッシュメモリユニ
    ットのユーザーブロックへのデータのプログラミングに
    関係する制御命令を記憶するためのコントロールレジス
    タを含むことを特徴とする請求項4のマイクロコンピュ
    ータ。
  6. 【請求項6】 マイクロプロセッサユニットは、プログ
    ラミングモードと実行モードにおいて作動し、プログラ
    ミングモードにおいてマイクロプロセッサユニットは埋
    め込みフラッシュメモリユニットのローダブロックに記
    憶されているローダプログラムをフェッチして実行し、
    実行モードにおいてマイクロプロセッサユニットは埋め
    込みフラッシュメモリユニットのユーザーブロックに記
    憶されているアプリケーションプログラムをフェッチし
    て実行することを特徴とする請求項5のマイクロコンピ
    ュータ。
  7. 【請求項7】 マイクロプロセッサユニットは、プログ
    ラミングモードにおいてローダブロックをアクティブブ
    ロックとして選択するために埋め込みフラッシュメモリ
    ユニットにメモリ選択信号を発信するとともに、埋め込
    みフラッシュメモリユニットのアクティブブロックをマ
    イクロプロセッサユニットに接続するためにバスマルチ
    プレクサにバス選択信号を発信する、それによりマイク
    ロプロセッサユニットが埋め込みフラッシュメモリユニ
    ットのローダブロックに記憶されるローダプログラムを
    実行することを特徴とする請求項6のマイクロコンピュ
    ータ。
  8. 【請求項8】 前記マイクロプロセッサユニットは、実
    行モードにおいてユーザーブロックをアクティブブロッ
    クとして選択するために埋め込みフラッシュメモリユニ
    ットにメモリ選択信号を発信するとともに、埋め込みフ
    ラッシュメモリユニットのアクティブブロックをマイク
    ロプロセッサユニットに接続するためにバスマルチプレ
    クサにバス選択信号を発信する、それによりマイクロプ
    ロセッサユニットが埋め込みフラッシュメモリユニット
    のユーザーブロックに記憶されるアプリケーションプロ
    グラムを実行することを特徴とする請求項7のマイクロ
    コンピュータ。
  9. 【請求項9】 前記マイクロプロセッサユニットがアイ
    ドルモードにある時にコントロールレジスタに記憶され
    る制御命令がプログラミングモードに設定される場合、
    データレジスタに現在記憶されているデータが埋め込み
    フラッシュメモリユニットのユーザーブロックに移され
    てアドレスレジスタに記憶されるアドレス値によって指
    定される場所に書き込まれることを特徴とする請求項8
    のマイクロコンピュータ。
  10. 【請求項10】 前記マイクロプロセッサユニットは、
    アイドルモードに入るに先立って、タイマーによって生
    成される割り込み信号がマイクロプロセッサユニットに
    割り込めるように割り込み機能を割り込み可能にするこ
    とを特徴とする請求項9のマイクロコンピュータ。
  11. 【請求項11】 前記マイクロプロセッサユニットは、
    アイドルモードに入るに先立って、埋め込みフラッシュ
    メモリユニットのユーザーブロックに新しいデータを書
    き込むために必要な時間をチェックし、それに基づいて
    前記タイマーをセットすることを特徴とする請求項10
    のマイクロコンピュータ。
  12. 【請求項12】 前記マイクロプロセッサユニットが実
    行モードにおいて作動する時、割り込み機能が割り込み
    可能にされるとともにタイマーがセットされた後にアイ
    ドルモードに入る、そしてタイマーがプリセット時間に
    達した時、タイマーは割り込み信号を生成してマイクロ
    プロセッサユニットをアイドルモードから目覚めさせ、
    マイクロプロセッサユニットをプログラミングモードに
    入らせることを特徴とする請求項11のマイクロコンピ
    ュータ。
  13. 【請求項13】 前記マイクロプロセッサユニットは実
    行モードにおいて作動する時、実行モードに入るための
    命令がセットされ、マイクロプロセッサユニットが再ス
    タートされた後にマイクロプロセッサユニットが実行モ
    ードに切り替えられることを特徴とする請求項12のマ
    イクロコンピュータ。
  14. 【請求項14】 以下の構成を含むことを特徴とするオ
    ンチッププログラミング能力を有するマイクロコンピュ
    ータ: ローダプログラムを記憶するためのローダブロック、お
    よびローダブロックの最後のアドレス直後に続くスター
    トアドレスを有し少なくとも一つのアプリケーションプ
    ログラムを記憶するためのユーザーブロックを含む少な
    くとも2つのブロックに分割される埋め込みフラッシュ
    メモリユニット; タイマーがスタートされ、プリセット時間が経過した時
    に割り込み信号を生成する能力を有するタイマーを含
    み、前記埋め込みフラッシュメモリユニットに連結され
    るマイクロプロセッサユニット; 埋め込みフラッシュメモリユニットのユーザーブロック
    にプログラムされるべきデータを一時的に記憶するため
    のレジスタセット; マイクロプロセッサユニットによって発信されるバス選
    択信号に応じてマイクロプロセッサユニットかレジスタ
    セットのいずれかに埋め込みフラッシュメモリユニット
    を選択的に接続するため、マイクロプロセッサユニッ
    ト、埋め込みフラッシュメモリユニット、およびレジス
    タセットの間に連結されるバスマルチプレクサ; データ再プログラミングプロセスを実施する時、マイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックをアクティブブロックとして選択
    するとともに、埋め込みフラッシュメモリユニットのロ
    ーダブロックをマイクロプロセッサユニットに接続する
    ためにバスマルチプレクサに指令し、それによりマイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックに記憶されているローダプログラ
    ムをフェッチして実行する; データ再プログラミングプロセスを実施する時、受信し
    たデータは最初にレジスタセットに移されてそこに一時
    的に記憶される、そして埋め込みフラッシュメモリユニ
    ットのユーザーブロックにデータの1ブロックを書き込
    むのに必要とされる時間がマイクロプロセッサユニット
    のタイマーにセットされる; その後、マイクロプロセッサユニットはアイドルモード
    に切り替えられ、埋め込みフラッシュメモリユニットの
    ユーザーブロックをアクティブブロックとして選択し、
    さらに埋め込みフラッシュメモリユニットのユーザーブ
    ロックをレジスタセットに接続するためにバスマルチプ
    レクサに指令し、それによりレジスタセットに現在記憶
    されているデータが埋め込みフラッシュメモリユニット
    のユーザーブロックに移されてそこに書き込まれる; プリセット時間が経過してタイマーが割り込み信号を生
    成した時、割り込み信号によってマイクロプロセッサユ
    ニットがアイドルモードから目覚めてオペレーションを
    再開する。
  15. 【請求項15】 前記埋め込みフラッシュメモリユニッ
    トは、ローダブロックとユーザーブロックの両方によっ
    て共有されるI/O回路を含むことを特徴とする請求項
    14のマイクロコンピュータ。
  16. 【請求項16】 前記マイクロプロセッサユニットは、
    埋め込みフラッシュメモリユニットのユーザーブロック
    にプログラムされるべきデータを受信するためのI/O
    ポートを含むことを特徴とする請求項15のマイクロコ
    ンピュータ。
  17. 【請求項17】 前記レジスタセットは、埋め込みフラ
    ッシュメモリユニットのユーザーブロックにプログラム
    されるべきデータを記憶するためのデータレジスタ;埋
    め込みフラッシュメモリユニットのユーザーブロックに
    プログラムされるべきデータの連想アドレスを記憶する
    ためのアドレスレジスタ;埋め込みフラッシュメモリユ
    ニットのユーザーブロックへのデータのプログラミング
    に関係する制御命令を記憶するためのコントロールレジ
    スタを含むことを特徴とする請求項16のマイクロコン
    ピュータ。
  18. 【請求項18】 マイクロプロセッサユニットは、プロ
    グラミングモードと実行モードにおいて作動し、プログ
    ラミングモードにおいてマイクロプロセッサユニットは
    埋め込みフラッシュメモリユニットのローダブロックに
    記憶されているローダプログラムをフェッチして実行
    し、実行モードにおいてマイクロプロセッサユニットは
    埋め込みフラッシュメモリユニットのユーザーブロック
    に記憶されているアプリケーションプログラムをフェッ
    チして実行することを特徴とする請求項17のマイクロ
    コンピュータ。
  19. 【請求項19】 マイクロプロセッサユニットは、プロ
    グラミングモードあるいは実行モードにおいて作動し、
    マイクロプロセッサユニットは、バスマルチプレクサに
    よって埋め込みフラッシュメモリユニットの現在アドレ
    スされているブロックがマイクロプロセッサユニットに
    接続されるようにバスマルチプレクサにバス選択信号を
    発信することを特徴とする請求項18のマイクロコンピ
    ュータ。
  20. 【請求項20】 前記マイクロプロセッサユニットがア
    イドルモードにある時にコントロールレジスタに記憶さ
    れた制御命令がプログラミングモードに設定される場
    合、データレジスタに現在記憶されているデータが埋め
    込みフラッシュメモリユニットのユーザーブロックに移
    されてアドレスレジスタに記憶されるアドレス値によっ
    て指定される場所に書き込まれることを特徴とする請求
    項19のマイクロコンピュータ。
  21. 【請求項21】 前記マイクロプロセッサユニットは、
    アイドルモードに入るに先立って、タイマーによって生
    成される割り込み信号がマイクロプロセッサユニットに
    割り込めるように割り込み機能を割り込み可能にするこ
    とを特徴とする請求項20のマイクロコンピュータ。
  22. 【請求項22】 前記マイクロプロセッサユニットは、
    アイドルモードに入るに先立って、埋め込みフラッシュ
    メモリユニットのユーザーブロックに新しいデータを書
    き込むために必要な時間をチェックし、それに基づいて
    前記タイマーをセットすることを特徴とする請求項21
    のマイクロコンピュータ。
  23. 【請求項23】 前記マイクロプロセッサユニットが実
    行モードにおいて作動する時、割り込み機能が割り込み
    可能にされるとともにタイマーがセットされた後にアイ
    ドルモードに入る、そしてタイマーがプリセット時間に
    達した時、タイマーは割り込み信号を生成してマイクロ
    プロセッサユニットをアイドルモードから目覚めさせ、
    マイクロプロセッサユニットをプログラミングモードに
    入らせることを特徴とする請求項22のマイクロコンピ
    ュータ。
  24. 【請求項24】 前記マイクロプロセッサユニットは実
    行モードにおいて作動する時、実行モードに入るための
    命令がセットされ、マイクロプロセッサユニットが再ス
    タートされた後にマイクロプロセッサユニットが実行モ
    ードに切り替えられることを特徴とする請求項23のマ
    イクロコンピュータ。
  25. 【請求項25】ローダプログラムを記憶するためのロー
    ダブロック、および少なくとも一つのアプリケーション
    プログラムを記憶するためのユーザーブロックを含む少
    なくとも2つのブロックに分割される埋め込みフラッシ
    ュメモリユニットと、プリセット時間が経過した時に割
    り込み信号を生成するタイマーを含むマイクロプロセッ
    サユニットと、埋め込みフラッシュメモリユニットのユ
    ーザーブロックにプログラムされるべきデータを一時的
    に記憶するためのレジスタセットと、マイクロプロセッ
    サユニットによって発信されるバス選択信号に応じてマ
    イクロプロセッサユニットかレジスタセットのいずれか
    に埋め込みフラッシュメモリユニットを選択的に接続す
    るため、マイクロプロセッサユニット、埋め込みフラッ
    シュメモリユニット、およびレジスタセットの間に連結
    されるバスマルチプレクサとを含むマイクロコンピュー
    タを使用して埋め込みフラッシュメモリユニットに新し
    いデータセットをプログラムするためのオンチッププロ
    グラミングプロセスを実施する方法であって、前記方法
    は以下のステップに特徴がある: (1)マイクロプロセッサユニットをプログラミングモ
    ードに切り換える; (2)バスマルチプレクサによって埋め込みフラッシュ
    メモリがマイクロプロセッサーに接続され、それにより
    埋め込みフラッシュメモリユニットのローダブロ ックに
    記憶されているローダプログラムを実施する; (3)記憶されるべき新しいデータの1ブロックを埋め
    込みフラッシュメモリのユーザーブロックに書き込むの
    に必要とされる時間をプリセット時間としてタイマーに
    セットする; (4)前記データの1ブロックがレジスタセットに移さ
    れ、そこに一時的に記憶される; (5)タイマーをスタートさせて、マイクロプロセッサ
    ユニットをアイドルモードに切り換える; (6)バスマルチプレクサによってレジスタが埋め込み
    フラッシュメモリに接続され、それによりレジスタに記
    憶されている前記データの1ブロックを埋め込みフラッ
    シュメモリのユーザーブロックに書き込む; (7)前記プリセット時間が経過した時、タイマーが割
    り込み信号を生成し、この割り込み信号を受信してマイ
    クロプロセッサユニットがアイドルモードから目覚め
    る; (8)新しいデータのすべてのブロックが埋め込みフラ
    ッシュメモリユニットのユーザーブロックにプログラム
    されたかどうかチェックし、プログラムされていない場
    合はステップ(4)にもどる。
  26. 【請求項26】 データ再プログラミングプロセスのた
    めのリクエストが受信されたかどうかをチェックし、も
    し受信されていないなら、埋め込みフラッシュメモリユ
    ニットのユーザーブロックに記憶されているアプリケー
    ションプログラムを実行するためにマイクロプロセッサ
    ユニットに指令するステップを含むことを特徴とする請
    求項25の方法。
  27. 【請求項27】 前記ステップ(4)は、新しいデータと
    新しいデータに関連するアドレス値をレジスタセットに
    書き込むサブステップを含むことを特徴とする請求項
    の方法。
  28. 【請求項28】 前記新しいデータは、最初にマイクロ
    プロセッサユニットのI/Oポートを介して受信されて
    からレジスタセットに転送されること特徴とする請求項
    25の方法。
  29. 【請求項29】 前記ステップ(4)に先だって、プログ
    ラミングモードに入ったかどうかチェックし、入ってい
    ない場合はプログラミングモードを再初期化するステッ
    プを含むことを特徴とする請求項25の方法。
  30. 【請求項30】 データ再プログラミングプロセスが完
    了されたかどうかチェックし、もし完了されているなら
    実行モードに入るための指令をセットし、それからマイ
    クロプロセッサユニットを再スタートすることを特徴と
    する請求項25の方法。
  31. 【請求項31】 以下の構成を含むことを特徴とするオ
    ンチッププログラミング能力を有するマイクロコンピュ
    ータ: ローダプログラムを記憶するためのローダブロック、お
    よび少なくとも一つのアプリケーションプログラムを記
    憶するためのユーザーブロックを含む少なくとも2つの
    ブロックに分割される埋め込みフラッシュメモリユニッ
    ト、前記ユーザーブロックは、ローダブロックと同じス
    タートアドレスもしくはローダブロックの最後のアドレ
    ス直後に続くスタートアドレスを有し、前記埋め込みフ
    ラッシュメモリユニットは、ローダブロックとユーザー
    ブロックの両方によって共有されるI/O回路を含む; プリセット時間が経過した時に割り込み信号を生成する
    能力を有するタイマーを含み、前記埋め込みフラッシュ
    メモリユニットに連結されるマイクロプロセッサユニッ
    ト; 埋め込みフラッシュメモリユニットのユーザーブロック
    にプログラムされるべきデータを一時的に記憶するため
    のレジスタセット; マイクロプロセッサユニットによって発信されるバス選
    択信号に応じてマイクロプロセッサユニットかレジスタ
    セットのいずれかに埋め込みフラッシュメモリユニット
    を選択的に接続するため、マイクロプロセッサユニッ
    ト、埋め込みフラッシュメモリユニット、およびレジス
    タセットの間に連結されるバスマルチプレクサ; データ再プログラミングプロセスを実施する時、マイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックをアクティブブロックとして選択
    するとともに、埋め込みフラッシュメモリユニットのロ
    ーダブロックをマイクロプロセッサユニットに接続する
    ためにバスマルチプレクサに指令し、そ れによりマイク
    ロプロセッサユニットは埋め込みフラッシュメモリユニ
    ットのローダブロックに記憶されているローダプログラ
    ムをフェッチして実行する; データ再プログラミングプロセスを実施する時、受信し
    たデータが最初にレジスタセットに移されてそこに一時
    的に記憶されるとともに、埋め込みフラッシュメモリユ
    ニットのユーザーブロックにデータの1ブロックを書き
    込むのに必要とされる時間がマイクロプロセッサユニッ
    トのタイマーにセットされる; マイクロプロセッサユニットがその後アイドルモードに
    切り替えられるとともに、埋め込みフラッシュメモリユ
    ニットのユーザーブロックをアクティブブロックとして
    選択する時、マイクロプロセッサユニットはさらに埋め
    込みフラッシュメモリユニットのユーザーブロックをレ
    ジスタセットに接続するためにバスマルチプレクサに指
    令し、それによりレジスタセットに現在記憶されている
    データが埋め込みフラッシュメモリユニットのユーザー
    ブロック内に転送されてそこに書き込まれる; プリセット時間が経過してタイマーが割り込み信号を生
    成した時、割り込み信号によってマイクロプロセッサユ
    ニットがアイドルモードから目覚めてオペレーションを
    再開する。
JP20949498A 1998-04-17 1998-07-24 オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法 Expired - Fee Related JP3032747B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW087105870A TW368626B (en) 1998-04-17 1998-04-17 Microprocessor with self-programmed embedded flash memory and programming method
TW87105870 1998-04-17

Publications (2)

Publication Number Publication Date
JPH11306009A JPH11306009A (ja) 1999-11-05
JP3032747B2 true JP3032747B2 (ja) 2000-04-17

Family

ID=21629898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20949498A Expired - Fee Related JP3032747B2 (ja) 1998-04-17 1998-07-24 オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法

Country Status (3)

Country Link
US (1) US5974528A (ja)
JP (1) JP3032747B2 (ja)
TW (1) TW368626B (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363492B1 (en) * 1998-04-30 2002-03-26 Compaq Computer Corporation Computer method and apparatus to force boot block recovery
DE19819569B4 (de) * 1998-04-30 2005-09-22 Siemens Ag Elektronischer Schaltkreis für die Umwandlung von Daten
JP2000181898A (ja) * 1998-12-14 2000-06-30 Nec Corp フラッシュメモリ搭載型シングルチップマイクロコンピュータ
US6397324B1 (en) * 1999-06-18 2002-05-28 Bops, Inc. Accessing tables in memory banks using load and store address generators sharing store read port of compute register file separated from address register file
US6715067B1 (en) * 1999-09-21 2004-03-30 Intel Corporation Initializing a processor-based system from a non-volatile re-programmable semiconductor memory
US6266273B1 (en) * 2000-08-21 2001-07-24 Sandisk Corporation Method and structure for reliable data copy operation for non-volatile memories
US6510488B2 (en) 2001-02-05 2003-01-21 M-Systems Flash Disk Pioneers Ltd. Method for fast wake-up of a flash memory system
FR2821456B1 (fr) * 2001-02-28 2003-06-20 St Microelectronics Sa Microprocesseur a architecture harvard ayant un espace adreassable lineaire
JP2002269065A (ja) 2001-03-08 2002-09-20 Mitsubishi Electric Corp プログラム可能な不揮発性メモリを内蔵したマイクロコンピュータ
JP4136359B2 (ja) * 2001-11-15 2008-08-20 株式会社ルネサステクノロジ マイクロコンピュータ
JP4492025B2 (ja) 2002-05-21 2010-06-30 株式会社デンソー 電子制御装置のデータ格納方法
WO2003104976A2 (en) * 2002-06-06 2003-12-18 Koninklijke Philips Electronics N.V. Method for writing data to a non-volatile memory embedded in an integrated circuit and corresponding circuit
CA2426619A1 (en) * 2003-04-25 2004-10-25 Ibm Canada Limited - Ibm Canada Limitee Defensive heap memory management
US7827375B2 (en) * 2003-04-30 2010-11-02 International Business Machines Corporation Defensive heap memory management
US7155562B2 (en) * 2003-05-08 2006-12-26 Micron Technology, Inc. Method for reading while writing to a single partition flash memory
JP2005026805A (ja) * 2003-06-30 2005-01-27 Renesas Technology Corp 半導体集積回路
US6975140B2 (en) * 2003-11-26 2005-12-13 International Business Machines Corporation Adaptive data transmitter having rewriteable non-volatile storage
EP1630657A1 (en) * 2004-08-30 2006-03-01 STMicroelectronics S.r.l. Embedded storage device with integrated data-management functions and storage system incorporating it
CN100342335C (zh) * 2004-09-23 2007-10-10 华为技术有限公司 芯片程序加载方法
TW200719141A (en) * 2005-11-07 2007-05-16 Cheertek Inc Flash memory access method and circuit of an embedded system
KR100710081B1 (ko) * 2005-08-22 2007-04-23 삼성전자주식회사 디스플레이장치 및 그 제어방법
US7428610B2 (en) * 2006-02-14 2008-09-23 Atmel Corporation Writing to flash memory
EP2016494A4 (en) * 2006-02-14 2010-02-03 Atmel Corp DESCRIPTING AND SETTING FLASH SAVINGS
US8102202B2 (en) * 2008-08-12 2012-01-24 Infineon Technologies Ag Modem unit and mobile communication unit
US9424896B2 (en) 2012-06-22 2016-08-23 Nxp B.V. Method and system for fast initialization of a memory unit
TWI510910B (zh) * 2013-11-11 2015-12-01 Wistron Corp 電腦系統及其遠端控制方法
US9430220B2 (en) * 2014-07-22 2016-08-30 GM Global Technology Operations LLC Method, medium, and apparatus for re-programming flash memory of a computing device
US9886264B2 (en) * 2014-12-09 2018-02-06 Xiaomi Inc. Method and device for upgrading firmware
TWI679534B (zh) * 2017-09-18 2019-12-11 慧榮科技股份有限公司 資料儲存裝置以及資料儲存方法
US20210373908A1 (en) * 2020-05-29 2021-12-02 Micron Technology, Inc. Data techniques for system boot procedures
TWI788894B (zh) * 2021-06-29 2023-01-01 新唐科技股份有限公司 記憶體控制電路及快閃記憶體之抹除操作的控制方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69230642T2 (de) * 1991-11-12 2001-05-23 Microchip Tech Inc Automatischer programmierungs-mikrokontroller mit gespeichertem befehl zur programm-steuerung von externem speicher und verfahren
US5678082A (en) * 1994-12-09 1997-10-14 Olympus Optical Co., Ltd. Electrical system apparatus including one-chip microcomputer
US5841996A (en) * 1995-10-13 1998-11-24 Microchip Technology Incorporated Serial communication interface system having programmable microcontroller for use in a battery pack
US5818755A (en) * 1996-10-16 1998-10-06 Fujitsu Limited Storage apparatus having a nonvolatile storage device capable of retaining data after an incomplete write operation and method of accessing same
US5848026A (en) * 1997-12-08 1998-12-08 Atmel Corporation Integrated circuit with flag register for block selection of nonvolatile cells for bulk operations
US5894549A (en) * 1997-12-12 1999-04-13 Scenix Semiconductor, Inc. System and method for fault detection in microcontroller program memory

Also Published As

Publication number Publication date
US5974528A (en) 1999-10-26
TW368626B (en) 1999-09-01
JPH11306009A (ja) 1999-11-05

Similar Documents

Publication Publication Date Title
JP3032747B2 (ja) オンチッププログラミング能力を有する埋め込みフラッシュメモリを備えたマイクロコンピュータ、および埋め込みフラッシュメモリにデータをプログラムする方法
JP4822465B2 (ja) データ処理システム
US6601131B2 (en) Flash memory access control via clock and interrupt management
JPH11219299A (ja) マイクロコンピュータ
US4095268A (en) System for stopping and restarting the operation of a data processor
KR100506031B1 (ko) 마이크로 컴퓨터, 전자 기기 및 에뮬레이션 방법
JP2005529399A (ja) 集積回路に埋め込まれた不揮発性メモリにデータを書き込む方法及び対応する回路
KR100465610B1 (ko) 온-칩 프로그래밍 능력을 가지는 내장된 플래시 메모리를 구비한 마이크로컴퓨터 및 상기 내장된 플래시 메모리에 데이터를프로그램하는 방법
JP4958201B2 (ja) マイクロコンピュータ
JP3699947B2 (ja) マイクロコントローラ
JP3779758B2 (ja) 随時にホストコンピュータと接続してユーザプログラムを変更することができるシングルボードコンピュータ
JP2004013338A (ja) データ処理装置および方法
JP3097602B2 (ja) データ処理装置
JP3147727B2 (ja) 情報処理装置及びその制御方法
JPH1153224A (ja) ウォッチドッグタイマ及びマイクロコンピュータ
JPH10247187A (ja) 1チップマイクロコンピュータ
JPH11353170A (ja) フラッシュメモリ制御装置およびフラッシュメモリ制御装置のメモリアクセス方法
JP2004280789A (ja) 半導体集積回路装置およびマイクロコンピュータ開発支援装置
JP2000105701A (ja) データ処理装置
JPH04199228A (ja) 半導体集積回路装置
JPH0561659B2 (ja)
JP2002287994A (ja) マイクロコントローラ
JPH1050086A (ja) Eepromを有するマイクロコンピュータ及びその書換方法
JPH0630056B2 (ja) 信号処理装置
JPH04310140A (ja) 計算機システム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000111

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20090210

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100210

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110210

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120210

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130210

Year of fee payment: 13

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees