JP2001503167A - 内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ - Google Patents

内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ

Info

Publication number
JP2001503167A
JP2001503167A JP10509690A JP50969098A JP2001503167A JP 2001503167 A JP2001503167 A JP 2001503167A JP 10509690 A JP10509690 A JP 10509690A JP 50969098 A JP50969098 A JP 50969098A JP 2001503167 A JP2001503167 A JP 2001503167A
Authority
JP
Japan
Prior art keywords
internal memory
microcontroller
unit
memory
signal
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
JP10509690A
Other languages
English (en)
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2001503167A publication Critical patent/JP2001503167A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • G06F15/786Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) using a single memory module
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7814Specially adapted for real time processing, e.g. comprising hardware timers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 マイクロコントローラコア、内部メモリユニット、I/OパッドインターフェイスユニットおよびいくつかのI/Oパッドのすべてが単一のモノリシックシリコン基板上に形成されたマイクロコントローラが提示される。内部メモリユニットはデータを記憶するように構成される。マイクロコントローラコア内のチップ選択ユニットは内部メモリユニット内の記憶動作をイネーブルする専用の内部チップ選択(ICS♯)を発生する。内部メモリユニットの主要な動作パラメータはチップ選択ユニット内に配置される単一のプログラマブル内部メモリチップ選択レジスタ(IMCSR)に記憶される。内部メモリユニットのサイズは固定されており、サイズ情報を記憶する必要性をなくす。内部メモリチップ選択レジスタはベースアドレスフィールドを含む。ベースアドレスフィールドは物理アドレス空間のどの非重複セクションに内部メモリユニットがマッピングされるかを規定するのに必要な内部メモリユニットのベースアドレスの最小数の最上位ビットを含む。内部メモリユニットにアクセスする方法は既存のマイクロコントローラ製品との後方互換性を許容する。マイクロコントローラコアはまた実行ユニットおよびバスインターフェイスユニットを含む。実行ユニットはマイクロプロセッサ命令、好ましくはx86命令セットからの命令を実行する。バスインターフェイスユニットは確立されたプロトコルに従ってマイクロコントローラコアのためのすべてのデータ転送動作を扱う。I/Oパッドインターフェイスユニットはオフーチップデータ転送能力を有するマイクロコントローラを与え、マイクロプロセッサに外部装置からデータを読出させるかそこにデータを書込ませる。

Description

【発明の詳細な説明】 名称:内部メモリユニットと関連のイネーブル信号を発生するための回路とを含 むマイクロコントローラ 発明の背景 1.発明の分野 この発明は集積回路の製造に関し、特に、マイクロコントローラの製造に関す る。 2.関連技術の説明 一般的なコンピュータシステムはそれ自体の半導体装置パッケージ内に固定さ れたマイクロプロセッサを含む。いくつかの別個にパッケージングされた支援回 路がマイクロプロセッサに接続される。これらの支援回路は通信機能およびメモ インターフェイス機能を含む支援機能を行なう。マイクロコントローラは、同じ モノリシック半導体基板(すなわち、チップ)上にマイクロプロセッサコアと1 個以上の支援回路とを組入れる集積回路である。マイクロコントローラを用いる コンピュータシステムはこのようにより少ない半導体装置を用いて形成され得る 。このようなシステムの利点にはより低い製造コストとより高い信頼性とが含ま れる。マイクロコントローラは、制御システム、コンピュータ端末、ハンドヘル ド通信装置(たとえば、携帯電話)、写真複写機、ファクシミリ機、およびハー ドディスクドライブを含む工業用および商業用製品に応用される。 80186および80188マイクロコントローラは1980年代初期に初め て紹介された。80186マイクロコントローラは16ビット内部データバスを 介して通信する16ビットレジスタおよび機能ユニットを含む。80186マイ クロコントローラはマイクロコントローラの外部の装置に接続され得る16個の データ交換端子を有する。80188マイクロコントローラもまた16ビット内 部レジスタおよび16ビット内部データバスを有するが、データ交換端子は8個 しか有さない。 一般的なコンピュータシステムにおいて、メモリサブシステムはメモリインタ ーフェイスユニットと1個以上の別個にパッケージングされたメモリ装置とを含 む。メモリインターフェイスはマイクロプロセッサとメモリ装置との間に結合さ れ、メモリ装置内にデータを記憶し、そこから記憶された情報を取出すために必 要な制御信号を発生する。各メモリ装置がメモリインターフェイスユニットによ って発生されるチップ選択信号を受取るように結合されたチップ選択端子を含む 。所与のメモリアクセスの間に活性しているメモリ装置がアサートされたチップ 選択信号を受取る。 80186および80188マイクロコントローラはメモリインターフェイス ユニットの機能を組入れ、それによってメモリインターフェイスユニットの必要 性をなくし、1個以上の別個にパッケージングされたメモリ装置がマイクロコン トローラに直接的に接続できるようにする。80186および80188マイク ロコントローラ内のチップ選択ユニットはいくつかの異なったチップ選択信号を 発生する。各チップ選択信号は一般にマイクロコントローラの物理メモリ空間の 規定されたセクションと関連付けられる。各チップ選択信号がマイクロコントロ ーラパッケージ上に配置された専用の端子(たとえば、パッケージピン)上で駆 動される。いくつかのパッケージングされたメモリ装置のチップ選択端子はマイ クロプロセッサの特定のチップ選択端子に接続され、それによって、チップ選択 信号と関連付けられた物理アドレス空間のセクション内でメモリアクセスが起こ るときにメモリ装置をイネーブルする。さらに、80186マイクロコントロー ラはバスインターフェイスユニットを含み、このバスインターフェイスユニット は、所与のメモリアクセス動作の間にその16個のデータ交換端子上に存在する 16ビット値のどの8ビットバイトが活性しているかを示すために信号を発生す る。 80186および80188マイクロコントローラは20個のアドレスピンを 有し、したがって220個の独自のメモリアドレスを発生できる。その結果、80 186および80188マイクロコントローラは220個の独自の記憶場所(すな わち、1,048,576の8ビットバイトのメモリまたは1Mバイトの物理ア ドレス空間)にアクセスできる。すべてのx86マイクロプロセッサで、801 86および80188マイクロコントローラはリセット信号のアサートに続いて 1Mバイトの物理アドレス空間の最上位部分に近い記憶場所FFFF0Hで命令 をフェッチし始める。リセット信号のアサートは一般に電力を加えた直後にマイ クロプロセッサを初期化するために用いられる。リセット信号は「ブート」シー ケンスを開始する。場所FFFF0Hを含むどの揮発性メモリ装置(すなわち、 物理アドレス空間の最上位部分にマッピングされる)の内容も電力の中断後は信 頼できないであろうため、1個以上の不揮発性メモリ装置が一般に物理アドレス 空間の最上位部分にマッピングされる。このような不揮発性メモリ装置はさまざ まなタイプの読出専用メモリ(ROM)装置を含む。 さらに、アドレス空間の最下位部分のセクションはオペレーティングシステム 機能専用である。オペレーティングシステムはファイル管理と、入力/出力制御 と、アプリケーションプログラムの実行のための制御された環境とを与えるソフ トウェアプログラムの集まりである。MS−DOS(登録商標)およびWindows NT(商標)(マイクロソフト社)は共通のオペレーティングシステムである。ア プリケーションプログラムは、特定の機能を行ない、オペレーティングシステム によって与えられる制御された環境内で動作するように設計されたコンピュータ プログラムである。システムの初期化の間、一般的なオペレーティングシステム は記憶場所00000hで始まるメモリの最下位1,024(1k)バイトへと 割込みベクトルテーブルをロードする。割込みベクトルテーブルはマイクロコン トローラの外部に配列された装置から生じる割込みを扱う割込みサービスルーチ ンの開始アドレスを含む。外部割込みは、マイクロコントローラとデータを授受 する用意のできた(すなわち、マイクロコントローラによるサービスを必要とす る)周辺装置から生じ得る。割込みサービスルーチンそれ自体もまた一般には、 メモリアドレス空間の最下位部分(すなわち、場所00000hを含むアドレス 空間の部分)に、オペレーティングシステムによって用いられるデータおよび他 のルーチンとともに記憶される。オペレーティングシステムによって必要とされ るデータの例にはさまざまな周辺装置に割当てられるメモリアドレスが含まれる 。オペレーティングシステムによって必要とされるルーチンおよびデータはシス テムの初期化の間に外部ソースから揮発性メモリにロードされてもよく、または アドレス空間の最下位部分にマッピングされる不揮発性メモリに永続的に記憶さ れてもよい。オペレーティングシステム機能専用のアドレス空間の最下位部分の セクションはアプリケーションプログラムでの使用のために利用可能でない。 上のシステム要件の直接の結果として、80186および80188マイクロ コントローラのメモリアドレス空間は上位メモリアドレス領域、下位メモリアド レス領域、および中位メモリアドレス領域へと区分される。上位メモリアドレス 領域の高端は物理アドレス空間における最高アドレスのアドレスFFFFFhに 接し、上位メモリアドレス領域は一般にマイクロプロセッサ初期化命令を含む1 個以上の不揮発性メモリ装置を含む。チップ選択ユニットは上位メモリアドレス 領域内に配置される(すなわち、そこにマッピングされる)1個以上のメモリ装 置のための単一の上位メモリチップ選択信号を発生する。 下位メモリアドレス領域の低端は物理アドレス空間における最低アドレスのア ドレス00000hに接する。上述のように、下位メモリアドレス領域のセクシ ョンはオペレーティングシステム専用である。下位メモリアドレス領域は1個以 上の揮発性メモリ装置を含んでもよく、またはオペレーティングシステムのデー タおよびルーチンを含む1個以上の不揮発性メモリ装置を含んでもよい。チップ 選択ユニットは下位メモリアドレス領域にマッピングされる1個以上のメモリ装 置のための単一の下位メモリチップ選択信号を発生する。 中位メモリアドレス領域は上位メモリアドレス領域と下位メモリアドレス領域 との間に配置され、アプリケーションプログラムおよび関連データのために利用 可能である。8kバイトから512kバイトの連続したメモリからなる単一のメ モリブロックが中位メモリアドレス領域の範囲にマッピングされ得る。このメモ リブックは4個のセクションへと分割され得る。チップ選択ユニットは、メモリ ブロックセクションごとに1個の、4個までの中位メモリチップ選択信号を発生 できる。各中位メモリチップ選択信号は所与のメモリブロックセクションにマッ ピングされ得る1個以上の装置をイネーブルするために用いられ得る。 マイクロコントローラと外部メモリ装置との間でデータを転送するために必要 とされる時間は限られている。より高い性能レベルのシステムがこのような転送 をより短い時間で達成しなければならない。一般に、このような転送を達成する ために必要な時間量はメモリ装置の速度と、マイクロコントローラとメモリ装置 との間の距離とに依存する。より速いメモリ装置がより短い期間でデータを取出 し、記憶することができる。このようなより速いメモリ装置は一般により遅いメ モリ装置よりもコストがかかる。信号が信号経路に沿って移動する速度は限られ ており、したがってより長い距離を横断するにはより長い時間がかかる。マイク ロコントローラとメモリ装置との間の距離が大きければ大きいほど、導入される 信号遅延時間は大きく、システム性能への否定的な影響はより大きくなる。 したがって、1個以上のメモリ装置を同じマイクロコントローラチップ上に含 むことが有利であろう。マイクロコントローラと1個以上のメモリ装置との間で 信号が移動しなければならない距離が低減され、システム性能レベルがより高く なるであろう。高められたシステム統合レベルがまたシステムのコストを下げ、 システムの信頼性を上げるであろう。 発明の概要 上に概要を述べた問題は、単一のモノリシック基板上に形成され、内部メモリ ユニットと内部メモリユニットイネーブル信号を発生するための回路とを有する マイクロコントローラによって大部分が解決される。ここで用いられる場合、「 内部」はマイクロコントローラの一部である素子を説明するために用いられ、「 外部」はマイクロコントローラの一部でない素子を説明するために用いられる。 内部メモリユニットはデータを記憶するように構成される。マイクロコントロー ラのチップ選択ユニットは内部メモリユニット内の記憶動作をイネーブルする専 用の内部チップ選択(ICS♯)信号を発生する。内部メモリユニットの主要な 動作パラメータはチップ選択ユニット内に配置された単一のプログラマブル内部 メモリチップ選択レジスタ内に記憶される。内部メモリユニットのサイズは固定 されており、サイズ情報を記憶する必要がない。内部メモリチップ選択レジスタ はベースアドレスフィールドを含む。ベースアドレスフィールドは、内部メモリ ユニットが物理アドレス空間のどの非重複セクションへとマッピングされるかを 規定するために必要な内部メモリユニットのベースアドレスの最小数の最上位ビ ットを含む。たとえば、32kバイトの内部メモリユニットが220バイトの物理 アドレス空間のどの32kバイトセクションへとマッピングされるかを規定する ためには20ビットのベースアドレスの最上位5ビットしか必要とされない。こ の場合、内部メモリチップ選択レジスタのベースアドレスフィールドはベースア ドレスの最上位の5ビットしか含まない。 ここに説明されるような内部メモリユニットへのアクセスのさらなる利点は、 既存のマイクロコントローラとの後方互換性が許容されることである。このマイ クロコントローラは既存の製品とピン互換およびソフトウェア互換であるように 作られ得る。したがって、このマイクロコントローラはシステムソフトウェアを 変更する必要なしに既存のシステム内でこれまでのマイクロコントローラに置換 わることができる。システムソフトウェア変更はユーザが内部メモリユニットの 存在を利用することを望む場合にしか必要とされない。 内部メモリユニットとともに、マイクロコントローラはまたマイクロコントロ ーラコア、I/Oパッドインターフェイスユニット、およびいくつかのI/Oパ ッドを含む。チップ選択ユニットは実行ユニットおよびバスインターフェイスユ ニットとともにマイクロコントローラコア内に配置される。実行ユニットはマイ クロプロセッサ命令、好ましくはx86命令セットがらの命令を実行するように 構成される。マイクロプロセッサ命令の実行の間、実行ユニットは、そこからデ ータが読出されるべきかそこへデータが書込まれるべき物理アドレス空間内の記 憶場所のアドレスのオフセット部分を表わす出力データを発生する。バスインタ ーフェイスユニットはアドレスのオフセット部分を受取り、それをセグメント部 分と組合せ、アドレス信号を生成する。チップ選択ユニットはアドレス信号を受 取り、アドレス信号が内部メモリユニット内の記憶場所に対応していればICS #信号を発生する。アドレス信号が外部(すなわち、オフ−チップ)メモリユニ ット内の記憶場所に対応していれば、チップ選択ユニットは外部チップ選択(E CS#)信号を発生する。バスインターフェイスユニットは多数のデータバッフ ァを含み、確立されたプロトコルに従ってマイクロコントローラコアのためのす べてのデータ転送動作を扱う。I/Oパッドインターフェイスユニットはオフー チップデータ転送能力をマイクロコントローラに与え、マイクロプロセッサに外 部装置からデータを読出させ、または外部装置へとデータを書込ませる。I/O パッドインターフェイスユニットはI/Oパッド上の電圧を関連の内部信号線上 の電圧と対応させるための(すなわち、内部信号線上に存在する信号を対応のI /Oパッドへと駆動するための)ドライバ回路を含み、また、I/Oパッド上に 存在する信号を対応の内部信号線へと駆動するためのドライバ回路を含む。 図面の簡単な説明 この発明の他の目的および利点は、以下の詳細な説明を読み、添付の図面を参 照するとより明らかとなるであろう。 図1は、この発明に従うマイクロコントローラの好ましい実施例のブロック図 である。 図2は、メモリアレイに結合されたメモリ制御ユニットを含む内部メモリユニ ットの好ましい実施例のブロック図である。 図3は、外部チップ選択(ECS♯)信号および内部チップ選択(ICS♯) 信号を発生するチップ選択ユニットの一実施例のブロック図である。 図4は、外部メモリユニットの主要な動作パラメータを含み、ECS♯信号の 発生に用いられる外部メモリチップ選択レジスタの一実施例のブロック図である 。 図5は、外部メモリユニットのサイズを含み、ECS♯信号の発生に用いられ る外部メモリ補助レジスタの一実施例のブロック図である。 図6は、内部メモリユニットの主要な動作パラメータを含み、ICS♯信号の 発生に用いられる内部メモリチップ選択レジスタの一実施例のブロック図である 。 図7は、セクションに区分された1Mバイトの物理アドレス空間のブロック図 であり、各セクションは32kバイトのメモリを含み、ここで、20ビットのベ ースアドレスの最上位5ビットが内部メモリユニットがマッピングされる32k バイトセクションを規定する。 図8は、内部メモリユニットのメモリアレイ内に記憶されるデータを取出す( すなわち、読出す)ことに関連した内部バスサイクルタイミング図である。 図9は、内部メモリユニットのメモリアレイ内にデータをセーブする(すなわ ち、そこにデータを書込む)ことに関連した内部バスサイクルタイミング図であ る。 この発明はさまざまな変更および代替となる形態が可能であるが、その具体的 な実施例は図において例として示され、ここで詳細に説明される。しかしながら 、図とその詳細な説明とはこの発明を開示される特定の形態に限定せず、添付の 請 求の範囲によって規定されるようなこの発明の趣旨および範囲内にあるすべての 変更、等価物および代替例に及ぶことが理解されるべきである。 発明の詳細な説明 図1はこの発明に従うマイクロコントローラ10の好ましい実施例のブロック 図である。マイクロコントローラ10はマイクロコントローラコア12、内部メ モリユニット14、入力/出力(I/O)パッドインターフェイスユニット16 、およびI/Oパッド17のすべてを単一のモノリシック半導体基板(すなわち 、チップ)上に含む。マイクロコントローラコア12はコアバス24に結合され た実行ユニット18、チップ選択ユニット20およびバスインターフェイスユニ ット22を含む。実行ユニット18は好ましくはx86マイクロプロセッサの命 令セットからのマイクロプロセッサ命令を実行する。実行ユニット18、チップ 選択ユニット20およびバスインターフェイスユニット22はコアバス24の信 号線上を駆動される信号によって通信する。さらに、実行ユニット18およびバ スインターフェイスユニット22は「B」バス25によって互いに「固く結合さ れる」。以下により詳細に述べるように、チップ選択ユニット20は外部チップ 選択(ECS♯)信号および内部チップ選択(ICS♯)信号を生成するように 構成される(「♯」が後につく信号名は負論理であり、すなわち、信号電圧が論 理レベルローのそれに相当するときにその信号が活性しているかアサートされる ことを意味する)。信号ECS♯は外部(すなわち、オフ−チップ)メモリユニ ットまたは外部I/O装置(図示せず)のためのイネーブル信号を与える。信号 ICS♯は内部メモリユニット14のためのイネーブル信号を与える専用の内部 信号である。アサートされると、信号ICS♯は内部メモリユニット14内のデ ータ記憶動作をイネーブルする。バスインターフェイスユニット22はマイクロ コントローラコア12と内部メモリユニット14との間、また、マイクロコント ローラコア12とオフ−チップメモリ装置およびI/O装置のような外部装置と の間のあらゆるデータ転送を扱う。 図1の実施例では、バスインターフェイスユニット22が3個の内部バス、す なわち、内部アドレスバス26、内部アドレス/データバス28、および内部制 御バス30に結合される。内部アドレスバス26は多数の信号線を含み、各信号 線がアドレス信号を運ぶように構成される。内部アドレス/データバス28は共 通の多重化されたアドレス/データバスである。内部アドレス/データバス28 は多数の信号線を含み、各信号線がある時間間隔の間はアドレス信号を運び、他 の時間間隔の間はデータ信号を運ぶように構成される。このような多重化された バスは必要とされる信号線の総数を減少させるために用いられる。内部制御バス 30は多数の信号線を含み、各信号線が制御信号を運ぶように構成される。バス インターフェイスユニット22は多数のデータバッファを含み、アドレス信号、 データ信号および制御信号を発生してそれらを内部アドレスバス26、内部アド レス/データバス28および内部制御バス30のそれぞれに確立されたプロトコ ルに従って駆動して上述のようなデータ転送を達成するように構成される。 マイクロコントローラ10の製造の間、外部装置に接続されるべき信号線はチ ップの露出した表面上に配置された平坦な金属接触領域(すなわち、I/Oパッ ド)で終結する。製造に続いて、マイクロコントローラ10は一般に保護半導体 装置パッケージ内に固定される。各I/Oパッドは次に単一の線(すなわち、ワ イヤ)によって装置パッケージの端子(すなわち、ピン)に接続される。I/O パッドインターフェイスユニット16が内部信号線とI/Oパッド17との間に 結合される。I/Oパッドインターフェイスユニット16は、I/Oパッド上の 電圧レベルを関連の内部信号線上の電圧レベルに対応させる(すなわち、内部信 号線上に存在する信号を対応のI/Oパッドに駆動する)ためのドライバ回路を 含む。I/Oパッドインターフェイスユニット16はまた、I/Oパッド上に存 在する信号を対応の内部信号線に駆動するためのドライバ回路を含む。さらに、 I/Oパッドインターフェイスユニット16は、対応のI/Oパッドに駆動する 前にいくつかの内部信号をラッチする(すなわち、サンプルホールドする)ため の論理回路を含む。たとえば、I/Oパッドインターフェイスユニット16は信 号ECS♯をI/Oパッド17aに駆動する。I/Oパッドインターフェイスユ ニット16はまた内部アドレスバス26の信号線上に存在する信号を対応のI/ Oパッド17bへと駆動する。I/Oパッドインターフェイスユニット16は、 ある時間間隔の間は内部アドレス/データバス28の信号線上に存在する信号を 対応のI/Oパッド17cへと駆動し、他の時間間隔の間はI/Oパッド17c 上に存在する信号を内部アドレス/データバス28の対応の信号線へと駆動する 。I/Oパッドインターフェイスユニット16は内部制御バス30のある信号線 上に存在すろ出力制御信号を対応のI/Oパッド17dへと駆動し、I/Oパッ ド17d上に存在する入力制御信号を内部制御バス30の対応の信号線へと駆動 する。 内部メモリユニット14はデータを記憶するように構成される。図2は、メモ リアレイ34に結合されたメモリ制御ユニット32を含む、内部メモリユニット 14の好ましい実施例のブロック図である。メモリ制御ユニット32はチップ選 択ユニット20によって生成されるICS♯信号を受取るように結合され、また 、内部アドレスバス26、内部アドレス/データバス28および内部制御バス3 0の信号線に結合される。メモリアレイ34は多くの記憶場所(すなわち、メモ リセル)を含む。ICS♯信号のアサートは内部メモリユニット14内の記憶動 作をイネーブルする。メモリ制御ユニット32は、メモリアレイ34内にデータ をセーブし、かつメモリアレイ34からデータを取出すために必要なメモリアレ イ34へと制御信号を発生し、発行する。外部装置は内部メモリユニット14内 の記憶場所の内容にアクセスできず、メモリ制御ユニット32はまた好ましくは 組込み自己テスト能力を含んで内部メモリユニット14の適切な動作を確実とす る。 メモリアレイ34は好ましくは多くの高密度なダイナミックランダムアクセス メモリ(DRAM)メモリセルを含む。この場合、メモリ制御ユニット32は好 ましくはメモリセルの周期的なリフレッシュを与えるためにリフレッシュ回路も 含む。代わりに、メモリアレイ34が多くのより低い密度のスタティックランダ ムアクセスメモリ(SRAM)メモリセルを含んでもよい。他の適切なタイプの メモリセルには電気的消去再書込可能な読出専用メモリ(EEPROM)セルお よびフラッシュメモリセルのような不揮発性メモリセルが含まれる。フラッシュ メモリ装置は時にはフラッシュEEPROMデバイスと呼ばれ、電気的消去がフ ラッシュメモリ装置の大きなセクションまたは全体の内容におよぶ点でEEPR OMデバイスとは異なる。 図3はチップ選択ユニット20の一実施例のブロック図である。チップ選択ユ ニット20は、信号ECS♯を発生するために、プログラマブル外部メモリチッ プ選択レジスタ(EMCSR)36およびプログラマブル外部メモリ補助レジス タ(EMAR)38の内容と関連して用いられる論理回路を含む。チップ選択ユ ニット20はまた、信号ICS♯を発生するために、プログラマブル内部メモリ チップ選択レジスタ(IMCSR)40と関連して用いられる論理回路を含む。 3個のレジスタのすべてが記憶場所のように読出または書込され得るメモリマッ プド内部レジスタである。これらのレジスタの初期化は、内部レジスタに割当て られたアドレスに所望の値を書込むマイクロプロセッサ命令によって達成される 。 図4−6はx86マイクロプロセッサに共通のセグメント化されたメモリシス テムとともに用いられる内部レジスタの実施例のブロック図である。20ビット 物理アドレスの発生の間、実行ユニット18はアドレスの16ビット「オフセッ ト」部分を「B」バス25でバスインターフェイスユニット22へと送る。バス インターフェイスユニットは16ビットオフセット部分とアドレスの16ビット 「セグメント」部分とをシフトおよび加算動作によって組合せて20ビット物理 アドレスを形成する。バスインターフェイスユニット22はアドレスのセグメン ト部分を保持する16ビットレジスタを含み、またシフトおよび加算動作を行な うために専用のハードウェアを含む。シフトおよび加算動作の間、アドレスの1 6ビッドセグメント部分は始めに4ビット分位置を左にシフトされる。左シフト 動作の後、結果として生じる20ビットセグメントベースアドレスの最下位の4 ビットはすべて0である。16ビットオフセット部分が次にセグメントベースア ドレスに加算され、その結果が20ビット物理アドレスである。 図5に示すEMAR38の実施例は80186および80188マイクロコン トローラのPCS♯およびMCS♯補助レジスタと類似している。図5に示すE MAR38の実施例のビット14、13、12、11、10、9および8(14 −8)は以下の表1に示すようにバイトで外部メモリユニットのサイズを特定す る。EMAR38のビット15は保留され、EMAR38のビット7−0は使用 されない。 表1.EMARメモリブロックサイズのプログラミング EMARビット14-8 メモリブロックサイズ 0000001 8kバイト 0000010 16kバイト 0000100 32kバイト 0001000 64kバイト 0010000 128kバイト 0100000 256kバイト 1000000 512kバイト 図4に示すEMCSR36の実施例は80186および80188マイクロコ ントローラの中位メモリチップ選択レジスタと類似している。図4に示すEMC SR36の実施例のビット15−9は外部メモリユニットの20ビットベースア ドレスBΛ(19:13)の最上位の7ビットを規定する。ベースアドレスの残 りの13ビットは常に0である。ベースアドレスはEMARレジスタ38におけ るメモリブロックサイズの整数倍でなければならない。たとえば、メモリブロッ クサイズが64kバイトであれば、EMCSR36のビット15−9はxxxx 000としかなれず、ここで「x」は0または1である。EMCSR36のビッ ト8−3は保留される。 バスインターフェイスユニット22はシステムクロック信号の4サイクルで読 出動作および書込動作(すなわち、データ転送動作)を行なう。バスインターフ ェイスユニット22は、データ転送動作を4サイクルよりも長く拡大させる「作 動可能」制御信号を受取り、入力する。作動可能信号は内部制御バス30の専用 作動可能信号線上に存在する。I/Oパッド17dの関連のI/Oパッドに接続 する外部装置が作動可能信号によってその作動可能状態の信号を送る。装置が作 動可能であれば、装置は作動可能信号をアサートする。装置は作動可能信号をデ アサートすることによって非作動可能状態の信号を送る。I/Oパッドインター フェイスユニット16は作動可能信号を内部制御バス30の作動可能信号線へと 駆動する。バスインターフェイスユニット22は制御バス30の作動可能信号線 によって作動可能信号を受取る。バスインターフェイスユニット22はデータ転 送動作の第3のサイクルの間に内部制御バス30の作動可能信号線をサンプリン グし、データ転送動作の時間間隔を予め定められた数の付加的なサイクル分だけ 延ばす(すなわち、予め定められた数の待機状態を挿入する)ことによって、デ アサートされた作動可能信号に応答する。待機状態を挿入するプロセスは装置が 作動可能信号をアサートするまで継続される。 EMCSR36のビット2(R2)は作動可能モードビットである。R2ビッ トがOであれば、バスインターフェイスユニット22は、装置が待機状態の挿入 を必要とするかどうかを判断するためにデータ転送動作の第3のサイクルの間に 作動可能信号をサンプリングする。R2ビットが1であれば、バスインターフェ イスユニット22は作動可能信号をサンプリングせず、データ転送動作は第4の サイクルで完了する。ビット1および0(R1およびR0)は、作動可能信号が データ転送動作の間にデアサートされるときにバスインターフェイスユニット2 2が挿入する待機状態の数を規定する。 メモリからデータを読出すかメモリへとデータを書込むために、実行ユニット 18はアクセスされるべき記憶場所のアドレスの16ビットオフセット部分を「 B」バス25の信号線へと駆動する。バスインターフェイスユニット22はアド レスのオフセット部分を受取り、それを16ビットセグメント部分と組合せて上 述のような20ビット物理アドレスを発生する。バスインターフェイスユニット 22はアクセスされるべき記憶場所の20ビット物理アドレスをコアバス24へ と駆動する。チップ選択ユニット20はコアバス24から20ビット物理アドレ スを受取り、20ビット物理アドレスの最上位の7ビットがEMCSR36のビ ット15−9の内容と適合すればECS♯信号をアサートする。 図6はIMCSR40の一実施例のブロック図である。外部メモリユニットと は異なり、内部メモリユニット14のサイズは固定されており、サイズ情報を含 むための別個のレジスタの必要性をなくす。図6の実施例は32k(215)の8 ビットバイトのメモリをメモリを有する内部メモリユニット14に対応する。内 部メモリユニット14を物理メモリ空間のいくつかの非重複ブロックの1つにマ ッピングするために、内部メモリユニット14の20ビットベース(すなわち、 開始)アドレスの最上位の5ビットが特定されなければならない。したがって、 5ビットベースアドレスフィールドが記憶場所15、14、13、12および1 1(すなわち、ビット15−11)からなるIMCSR40内で規定される。一 般に、RICSR40のベースアドレスフィールドは内部メモリユニット14の ベースアドレスの最上位の(m−n)ビットを含み、ここで物理アドレス空間は 2m個の独自アドレスを含み、内部メモリユニット14は2n個の記憶場所を含む 。内部メモリユニット14の20ビットベースアドレスの最上,位5ビットが図 6におけるBA(19:15)と付されたベースアドレスフィールドに記憶され る。ベースアドレスの残りの15ビットは常に0である。IMCSR40のベー スアドレスフィールドはしたがって、内部メモリユニット14がマッピングされ る物理アドレス空間の32kバイトセクションの開始アドレスを規定する。IM CSR40の最上位ビットがベースアドレスの最上位ビットを含むために用いら れるという事実のために以下に述べるアドレス比較が容易となる。 図7は32kバイトセクションへと分割された1Mバイト物理アドレス空間の ブロック図である。図7は、32kバイト内部メモリユニット14がマッピング される32kバイトセグメントをIMCSR40のベースアドレスフィールドが いかに規定するかを示すために用いられる。最初に、IMCSR40のベースア ドレスフィールドを構成する記憶場所がすべて値0を含むと想定する。したがっ て、内部メモリユニット14のベースアドレスのビット19−15は00000 である。上述のように、ベースアドレスの残りの15ビットは常に0である。内 部メモリユニット14のベースアドレスはしたがって000000000000 00000000または00000hである。したがって、内部メモリユニット 14内のメモリの32kバイトは00000hから07FFFhに及ぶ。ここで IMCSR40のベースアドレスフィールドを構成する記憶場所がそれぞれ00 001を含むと想定する。したがって、内部メモリユニット14のベースアドレ スのビット19−15が00001であり、ベースアドレスの残りの15ビット が0であり、内部メモリユニット14のベースアドレスが0000100000 0000000000または08000hである。したがって、内部メモリユニ ット14内のメモリの32kバイトは08000hから0FFFFhに及ぶ。内 部メモリユニット14がマッピングされ得る物理アドレス空間の起こり得る非重 複32kバイトセクションは25または32個あり、図7がそのいくつかを示す 。 IMCSR40のビット10はショウリード(Show Read)(SR)ビットで ある。内部メモリユニット14を必要とする読出動作の間、内部メモリユニット 14は内部アドレス/データバス28の信号線を取出されたデータとともに駆動 する。SRビットが0であれば、I/Oパッドインターフェイスユニット16は 取出されたデータを対応のI/Oパッドへと駆動しない。SRビットが1であれ ば、I/Oパッドインターフェイスユニット16は取出されたデータを対応のI /Oパッドへと駆動する。この場合、読出動作の間に内部メモリユニット14に よって与えられるデータはしたがってマイクロコントローラ10を含む装置パッ ケージのピン上で可視にされ、デバッギングの目的のために有益であり得る。I MCSR40のビット9はメモリイネーブル(ME)ビットである。MEビット が0であれば、ICS♯信号は決してアサートされず、したがって内部メモリユ ニット14がディスエーブルされる。MEビットを1に設定するとICS♯信号 のアサートがイネーブルされ、したがって内部メモリユニット14の動作がイネ ーブルされる。チップ選択ユニット20によるICS#信号の発生は内部メモリ ユニット14のベースアドレス(IMCSR40のビット19−11)を確立し 、MEビット(IMCSR40のビット9)を1に設定することによってイネー ブルされる。IMCSR40のビット8−0は将来の使用のために保留される。 読出動作および書込動作の間、実行ユニット18はアクセスされるべき記憶場 所のアドレスのオフセット部分を「B」バス25の信号線へと駆動する。バスイ ンターフェイスユニット22は「B」バス25の信号線からオフセット部分を受 取り、それを16ビットセグメント部分と組合せて上述のような20ビット物理 アドレスを発生する。バスインターフェイスユニット22はアクセスされるべき 記憶場所の20ビット物理アドレスをコアバス24へと駆動する。チップ選択ユ ニット20はコアバス24から20ビット物理アドレスを受取り、(i)20ビ ット物理アドレスの最上位5ビットがIMCSR40のベースアドレスフィール ドの内容に適合し、(ii)IMCSR40内のメモリイネーブルビットが1に設 定されていれば、ICS♯信号をアサートする。 図8および図9はマイクロコントローラコア12と内部メモリユニット14と の間のデータ転送に関連するバスサイクルを説明するために用いられる。上述の ように、このような転送は一般にシステムクロック信号CLKの連続した4サイ クルに及ぶ。図8は内部メモリユニット14のメモリアレイ34内に記憶された データを取出す(すなわち、読出す)ことに関連した内部バスサイクルタイミン グ図である。信号CLKの第1のサイクル42の間、マイクロコントローラコア 12のバスインターフェイスユニット22は内部アドレスバス26および内部ア ドレス/データバス28の信号線を所望のデータを含む内部メモリユニット14 のメモリアレイ34内の記憶場所のアドレスとともに駆動する。チップ選択ユニ ット20はまたはICS♯信号をアサートし、内部メモリユニット14内のデー タ記憶動作を可能にする。バスインターフェイスユニット22はまた、メモリ制 御ユニット32に内部アドレスバス26および内部アドレス/データバス28の 信号線上に存在するアドレスをラッチさせる制御信号(図示せず)とともに内部 制御バス30の信号線を駆動する。信号CLKの第2のサイクル44の間、バス インターフェイスユニット22は、次のサイクルの間に同じ信号線のいくつかで データを受取る準備で、内部アドレス/データバス28の信号線の駆動を終える 。バスインターフェイスユニット22はまたアサートされた読出信号RD♯を内部 制御バス30の信号線へと駆動し、これによって、メモリ制御ユニット32はラ ッチされたアドレスで記憶場所からデータを取出すのに必要なメモリアレイ34 に制御信号を発生し、発行する。信号CLKの第3のサイクル46の間、メモリ 制御ユニット32は取出されたデータとともに内部アドレス/データバス28の 信号線を駆動する。バスインターフェイスユニット22は、第3のサイクル46 の終りを示す信号CLKの立下がり端縁で内部アドレス/データバス28の信号 線に駆動されたデータを読出す。第4のサイクル48の間、メモリ制御ユニット 32は次のサイクルの間に同じ信号線のいくつかでアドレス情報を受取る準備と して内部アドレス/データバス28の信号線の駆動を終える。バスインターフェ イスユニット22はICS♯およびRD♯信号をデアサートする。 図9は内部メモリユニット14のメモリアレイ34内にデータをセーブする( すなわち、そこにデータを書込む)ことに関連した内部バスサイクルタイミング 図である。信号CLKの第1のサイクル50の間、マイクロコントローラコア1 2のバスインターフェイスユニット22はデータがセーブされるべきメモリアレ イ34内の記憶場所のアドレスとともに内部アドレスバス26および内部アドレ ス/データバス28の信号線を駆動する。チップ選択ユニット20はまたICS ♯信号をアサートし、内部メモリユニット14内のデータ記憶機能をイネーブ ルする。バスインターフェイスユニット22はまた、メモリ制御ユニット32に 内部アドレスバス26および内部アドレス/データバス28の信号線上に存在す るアドレスをラッチさせる制御信号(図示せず)とともに内部制御バス30の信 号線を駆動する。信号CLKの第2のサイクル52の間、バスインターフェイス ユニット22はアサートされた書込信号WR♯を内部制御バス30の信号線へと 駆動し、メモリ制御ユニット32にメモリアレイ34内のデータの記憶の準備を させる。信号CLKの第3のサイクル54の間、バスインターフェイスユニット 22はWR♯信号をデアサートし、メモリ制御ユニット32が内部アドレス/デ ータバス28の信号線上のデータを読出し、ラッチされたアドレスで記憶場所に データをセーブするために必要なメモリアレイ34に制御信号を発生し、発行す るようにさせる。第4のサイクル56の間、バスインターフェイスユニット22 はICS♯信号をデアサートする。 内部メモリユニット14のメモリ制御ユニット32は内部制御バス30の作動 可能信号線に結合される。上述のように、バスインターフェイスユニット22は 常に、読出または書込動作の第3のサイクルの間には内部制御バス30の作動可 能信号線をサンプリングする。内部メモリユニット14が作動可能であれば、こ れは作動可能信号をアサートする。内部メモリユニット14は作動可能信号をデ アサートすることによって作動不可能状態の信号を送る。作動可能信号が読出ま たは書込動作の第3の信号の間に内部メモリユニット14によってデアサートさ れれば、バスインターフェイスユニット22は信号待機状態を挿入する。待機状 態を挿入するプロセスは内部メモリユニット14が作動可能信号をアサートする まで継続される。作動可能信号は全メモリアクセスが遅延されることを必要とせ ずにメモリアクセスの時たまの遅延を許容するように用いられる。このような時 たまの遅延は内部メモリユニット14のメモリアレイ34がDRAMメモリを含 み、アクセスされる記憶場所がDRAMリフレッシュ動作を受けているときに起 こり得る。 この開示の利益を得る当業者には、この発明が、単一のモノリシック半導体基 板上に形成され、内部メモリユニットと関連の内部メモリユニットイネーブル信 号を発生するための回路とを含むマイクロコントローラであると考えられること が認識されるであろう。さらに、示され説明されたこの発明の形態が例示的な目 下好ましい実施例として受取られるべきことも理解されるべきである。さまざま な変更および変化が請求の範囲に記載するようなこの発明の趣旨および範疇から 逸脱せずに行なわれ得る。以下の請求の範囲はこのような変更および変化のすべ てを包含すると解釈されたい。
【手続補正書】特許法第184条の8第1項 【提出日】平成10年8月19日(1998.8.19) 【補正内容】 モリ装置よりもコストがかかる。信号が信号経路に沿って移動する速度は限られ ており、したがってより長い距離を横断するにはより長い時間がかかる。マイク ロコントローラとメモリ装置との間の距離が大きければ大きいほど、導入される 信号遅延時間は大きく、システム性能への否定的な影響はより大きくなる。 したがって、1個以上のメモリ装置を同じマイクロコントローラチップ上に含 むことが有利であろう。マイクロコントローラと1個以上のメモリ装置との間で 信号が移動しなければならない距離が低減され、システム性能レベルがより高く なるであろう。高められたシステム統合レベルがまたシステムのコストを下げ、 システムの信頼性を上げるであろう。 公知のマイクロコントローラ装置は、アンドレ・アール(Andre R.)による「互 換性の遺産を免れて;最適な価格/性能比のマイクロコントローラファミリー」( “Free from the legacy of compatibility;microcontroller family with opti mum price/performance ratio”)、Electronik、1987年9月18日、第3 6巻、第19号、第99−102頁と、US5,438,681と、バースキー ・ディ(Bursky D.)による「最適化を確実とする4−32ビットコアベース設計 のワード幅で再利用可能な原因を利用するマイクロコントローラ設計」(“Micro controller .design exploits reusable cause with word width of 4-32 bits core-based designs ensureoptlmisation”)、電子設計(Electronic Design) 第42巻、第6号、1994年3月21日、第53−68頁と、EP−A−O 597 307とに説明される。 発明の概要 上に概要を述べた問題は、単一のモノリシック基板上に形成され、内部メモリ ユニットと内部メモリユニットイネーブル信号を発生するための回路とを有する マイクロコントローラによって大部分が解決される。ここで用いられる場合、「 内部」はマイクロコントローラの一部である素子を説明するために用いられ、「 外部」はマイクロコントローラの一部でない素子を説明するために用いられる。 内部メモリユニットはデータを記憶するように構成される。マイクロコントロー ラのチップ選択ユニットは内部メモリユニット内の記憶動作をイネーブルする専 用の内部チップ選択(ICS♯)信号を発生する。内部メモリユニットの主要な 動作パラメータはチップ選択ユニット内に配置された単一のプログラマブル内部 メモリチップ選択レジスタ内に記憶される。内部メモリユニットのサイズは固定 されており、サイズ情報を記憶する必要がない。内部メモリチップ選択レジスタ はベースアドレスフィールドを含む。ベースアドレスフィールドは、内部メモリ ユニットが物理アドレス空間のどの非重複セクションへとマッピングされるかを 規定するために必要な内部メモリユニットのベースアドレスの最小数の最上位ビ ットを含む。たとえば、32kバイトの内部メモリユニットが220バイトの物理 アドレス空間のどの32kバイトセクションへとマッピングされるかを規定する ためには20ビットのベースアドレスの最上位5ビットしか必要とされない。こ の場合、内部メモリチップ選択レジスタのベースア 請求の範囲 1.命令に応答して出力データを生成するための実行ユニット(18)と、 実行ユニットに結合され、出力データに応答してアドレス信号を生成するよう に構成されたバスインターフェイスユニット(22)と、 アドレス信号を受取るように結合され、アドレス信号に応答して内部メモリ選 択信号および外部メモリ選択信号を生成するように構成されたチップ選択ユニッ ト(20)と、 データを記憶するように構成された内部メモリ(14)とを含み、内部メモリ は内部メモリ選択信号のアサートの間にアドレス信号に応答し、さらに、 外部メモリ選択信号に応答する出力パッド(17)を含む、単一のモノリシッ ク半導体基板上に形成されたマイクロコントローラ(10)であって、 内部メモリは作動可能信号をアサートすることによってデータ転送動作の間に 作動可能状態の信号を送り、 バスインターフェイスユニットはデータ転送動作の間に予め定められた時間で 作動可能信号をサンプリングし、内部メモリが作動可能信号をアサートするまで データ転送動作の完了を延ばすことを特徴とする、マイクロコントローラ。 2.実行ユニットと、チップ選択ユニットと、バスインターフェイスユニットと の間に相互接続された、マイクロコントローラ内のバス(24)をさらに含む、 請求項1に記載のマイクロコントローラ。 3.実行ユニットはx86命令セットから生じる命令を実行するように構成され る、請求項1に記載のマイクロコントローラ。 4.実行ユニットによって生成される出力データは、アドレス信号を生成するた めにセグメント部分と組合せられるべきアドレス信号のオフセット部分を含む、 請求項1に記載のマイクロコントローラ。 5.チップ選択ユニットはプログラマブル内部メモリ選択レジスタを含み、内部 メモリ選択レジスタは内部メモリのベースアドレスを規定する第1の複数個のビ ット位置を含む、請求項4に記載のマイクロコントローラ。 6.プログラマブル内部メモリ選択レジスタは内部メモリをイネーブルするかど うかを規定するメモリイネーブル(ME)ビット位置をさらに含む、請求項5に 記載のマイクロコントローラ。 7.チップ選択ユニットは、(i)アドレス信号の最上位ビットが第1の複数個 のビット位置の内容と適合し、(ii)メモリイネーブルビット位置が値1を含め ば、内部メモリイネーブル信号をアサートする、請求項6に記載のマイクロコン トローラ。 8.物理アドレス空間は2m個の独自アドレスを含み、内部メモリは2n個の記憶 場所を含み、第1の複数個のビット位置は(m−n)個の連続ビット位置を含み 、ここで、mおよびnは正の整数であり、m>nである、請求項5に記載のマイ クロコントローラ。 9.マイクロコントローラはセグメントアドレス指定を用い、ここで、16ビッ トセグメント値は20ビット物理アドレスを形成するために16ビットオフセッ ト値と組合せられ、内部メモリチップ選択レジスタは16個のビット位置を含む 、請求項5に記載のマイクロコントローラ。 10.物理アドレス空間は220個の独自アドレスを含み、内部メモリは2n個の 記憶場所を含み、第1の複数個のビット位置は(20−n)個の連続ビット位置 を含む、請求項9に記載のマイクロコントローラ。 11.内部メモリは215個の記憶場所を含み、第1の複数個のビット位置は5個 の連続ビット位置を含む、請求項9に記載のマイクロコントローラ。 12.第1の複数個のビット位置は内部メモリチップ選択レジスタ内の最上位ビ ット位置である、請求項8,10または11に記載のマイクロコントローラ。 13.マイクロコントローラは、複数個のI/Oパッドと、内部メモリと複数個 のI/Oパッドとの間に結合されたI/Oパッドインターフェイスとをさらに含 み、チップ選択ユニットは、複数個のビット位置を有するプログラマブルレジス タ(IMCSR)を含み、読出動作の間に内部メモリはI/Oパッドインターフ ェイスによって受取られるデータ信号を生成し、複数個のビット位置の1つ(S R)の内容によって、I/Oパッドインターフェイスが複数個のI/Oパッドの 上のデータ信号を駆動するかどうかが決定される、請求項1に記載のマイクロコ ントローラ。 14.内部メモリは内部メモリの適切な動作を確実とするためにビルトインセル フテスト能力を含む、請求項13に記載のマイクロコントローラ。 15.バスインターフェイスユニットおよび内部メモリに接続された単一の多重 化されたアドレスおよびデータバス(28)をさらに含み、バスインターフェイ スユニットは単一の多重化されたアドレスおよびデータバス上のアドレス信号を 駆動するようにさらに構成され、内部メモリは単一の多重化されたアドレスおよ びデータバスによってアドレス信号を受取る、請求項1に記載のマイクロコント ローラ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スピロ,デイビッド・エイ アメリカ合衆国、78759 テキサス州、オ ースティン、バルコーンズ・ウッズ・ドラ イブ、4200 (72)発明者 カルビン,リチャード・ティ アメリカ合衆国、78749 テキサス州、オ ースティン、アビリーン・トレイル、6117 【要約の続き】 換性を許容する。マイクロコントローラコアはまた実行 ユニットおよびバスインターフェイスユニットを含む。 実行ユニットはマイクロプロセッサ命令、好ましくはx 86命令セットからの命令を実行する。バスインターフ ェイスユニットは確立されたプロトコルに従ってマイク ロコントローラコアのためのすべてのデータ転送動作を 扱う。I/Oパッドインターフェイスユニットはオフー チップデータ転送能力を有するマイクロコントローラを 与え、マイクロプロセッサに外部装置からデータを読出 させるかそこにデータを書込ませる。

Claims (1)

  1. 【特許請求の範囲】 1.単一のモノリシック半導体基板上に形成されたマイクロコントローラであっ て、 命令に応答して出力データを生成するための実行ユニットと、 実行ユニットに結合され、出力データに応答してアドレス信号を生成するよう に構成されたバスインターフェイスユニットと、 アドレス信号を受取るように結合され、アドレス信号に応答して内部メモリ選 択信号および外部メモリ選択信号を生成するように構成されたチップ選択ユニッ トと、 データを記憶するように構成された内部メモリとを含み、内部メモリは内部メ モリ選択信号のアサートの間にアドレス信号に応答し、さらに、 外部メモリ選択信号に応答する出力パッドを含む、マイクロコントローラ。 2.実行ユニットと、チップ選択ユニットと、バスインターフェイスユニットと の間に相互接続されたコアバスをさらに含む、請求項1に記載のマイクロコント ローラ。 3.実行ユニットはx86命令セットから生じる命令を実行するように構成され る、請求項1に記載のマイクロコントローラ。 4.実行ユニットによって生成される出力データはアドレス信号のオフセット部 分を含む、請求項1に記載のマイクロコントローラ。 5.チップ選択ユニットはプログラマブル内部メモリ選択レジスタを含み、内部 メモリ選択レジスタは内部メモリのベースアドレスを規定する第1の複数個のビ ット位置を含む、請求項4に記載のマイクロコントローラ。 6.プログラマブル内部メモリ選択レジスタは内部メモリをイネーブルするかど うかを規定するメモリイネーブルビット位置をさらに含む、請求項5に記載のマ イクロコントローラ。 7.チップ選択ユニットは、(i)アドレス信号の最上位ビットが第1の複数個 のビット位置の内容と適合し、(ii)メモリイネーブルビット位置が値1を含め ば、内部メモリイネーブル信号をアサートする、請求項6に記載のマイクロコン トローラ。 8.物理アドレス空間は2m個の独自アドレスを含み、内部メモリは2n個の記憶 場所を含み、第1の複数個のビット位置は(m−n)個の連続ビット位置を含む 、請求項4に記載のマイクロコントローラ。 9.第1の複数個のビット位置は内部メモリチップ選択レジスタ内の最上位ビッ ト位置である、請求項8に記載のマイクロコントローラ。 10.マイクロコントローラはセグメントアドレス指定を用い、ここで、16ビ ットセグメント値は20ビット物理アドレスを形成するために16ビットオフセ ット値と組合せられ、内部メモリチップ選択レジスタは16個のビット位置を含 む、請求項5に記載のマイクロコントローラ。 11.物理アドレス空間は220個の独自アドレスを含み、内部メモリは2n個の 記憶場所を含み、第1の複数個のビット位置は(20−n)個の連続ビット位置 を含む、請求項10に記載のマイクロコントローラ。 12.第1の複数個のビット位置は内部メモリチップ選択レジスタ内の最上位ビ ット位置である、請求項11に記載のマイクロコントローラ。 13.内部メモリは215個の記憶場所を含み、第1の複数個のビット位置は5個 の連続ビット位置を含む、請求項10に記載のマイクロコントローラ。 14.第1の複数個のビット位置は内部メモリチップ選択レジスタ内の最上位ビ ット位置である、請求項13に記載のマイクロコントローラ。 15.内部メモリチップ選択レジスタのビット位置の1つが内部メモリをイネー ブルするかどうかを規定するメモリイネーブルビット位置である、請求項14に 記載のマイクロコントローラ。 16.チップ選択ユニットは、(i)アドレス信号の最上位5ビットが第1の複 数個のビット位置の内容に適合し、(ii)メモリイネーブルビット位置が値1を 含めば、内部メモリイネーブル信号をアサートする、請求項15に記載のマイク ロコントローラ。 17.単一のモノリシック半導体基板上に形成されたマイクロコントローラであ って、 マイクロコントローラコアを含み、マイクロコントローラコアは、 命令を実行し、出力データを生成するように構成された実行ユニットと、 実行ユニットから出力データを受取るように結合され、アドレス信号を生成す るように構成されたバスインターフェイスユニットと、 アドレス信号を受取るように結合され、外部メモリイネーブル信号および内部 メモリイネーブル信号を生成するように構成されたチップ選択ユニットとを含み 、マイクロコントローラはさらに、 アドレス信号および内部メモリイネーブル信号を受取るように結合され、デー タを記憶するように構成された内部メモリユニットを含み、内部メモリユニット は内部メモリイネーブル信号のアサートの間にアドレス信号に応答し、さらに、 I/Oパッドと、 外部メモリイネーブル信号を受取るように結合され、外部メモリイネーブル信 号をI/Oパッドへと駆動するように構成されたI/Oパッドインターフェイス ユニットとを含む、マイクロコントローラ。 18.実行ユニットはx86命令セットからの命令を実行するように構成される 、請求項17に記載のマイクロコントローラ。 19.実行ユニットによって生成される出力データはメモリアドレスのオフセッ ト部分である、請求項17に記載のマイクロコントローラ。 20.チップ選択ユニットはプログラマブル内部メモリチップ選択レジスタを含 み、内部メモリチップ選択レジスタは線形配列に組織化された複数個のビット位 置を含む、請求項19に記載のマイクロコントローラ。 21.内部メモリチップ選択レジスタはベースアドレスフィールドを含み、ベー スアドレスフィールドは内部メモリユニットのベースアドレスの対応の数の最上 位ビットを記憶するように構成された複数個のビット位置の連続したサブセット である、請求項20に記載のマイクロコントローラ。 22.マイクロコントローラはセグメントアドレス指定を用い、ここで、16ビ ッドセグメント値が16ビットオフセット値と組合せられて20ビット物理アド レスを形成し、内部メモリチップ選択レジスタは16個のビット位置を含む、請 求項21に記載のマイクロコントローラ。 23.内部メモリユニットは215個の記憶場所を含み、内部メモリチップ選択レ ジスタのベースアドレスフィールドは5個のビット位置を含む、請求項22に記 載のマイクロコントローラ。 24.ベースアドレスフィールドの5個のビット位置は内部メモリチップ選択レ ジスタ内の最上位ビット位置である、請求項23に記載のマイクロコントローラ 。 25.内部メモリチップ選択レジスタのビット位置の1つは内部メモリをイネー ブルするかどうかを規定するメモリイネーブルビット位置である、請求項24に 記載のマイクロコントローラ。 26.チップ選択ユニットは、(i)メモリアドレスのセグメント部分の最上位 5ビットがベースアドレスフィールドの5個のビット位置の内容と適合し、(ii )メモリイネーブルビット位置が値1を含めば、内部メモリイネーブル信号をア サートする、請求項25に記載のマイクロコントローラ。
JP10509690A 1996-08-14 1997-06-02 内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ Pending JP2001503167A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US69663696A 1996-08-14 1996-08-14
US08/696,636 1996-08-14
PCT/US1997/009545 WO1998007099A1 (en) 1996-08-14 1997-06-02 A microcontroller including an internal memory unit and circuitry to generate an associated enable signal

Publications (1)

Publication Number Publication Date
JP2001503167A true JP2001503167A (ja) 2001-03-06

Family

ID=24797923

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10509690A Pending JP2001503167A (ja) 1996-08-14 1997-06-02 内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ

Country Status (3)

Country Link
EP (1) EP0931292A1 (ja)
JP (1) JP2001503167A (ja)
WO (1) WO1998007099A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6271928B1 (en) * 1998-03-04 2001-08-07 Hewlett-Packard Company Electrical storage device for a replaceable printing component
US6859537B1 (en) * 2000-02-17 2005-02-22 The United States Of America As Represented By The Secretary Of The Navy Non-volatile memory for use with an encryption device
US7398348B2 (en) 2004-08-24 2008-07-08 Sandisk 3D Llc Method and apparatus for using a one-time or few-time programmable memory with a host device designed for erasable/rewritable memory

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06150023A (ja) * 1992-11-06 1994-05-31 Hitachi Ltd マイクロコンピュータ及びマイクロコンピュータシステム
US5438681A (en) * 1993-08-24 1995-08-01 Mensch, Jr.; William D. Topography for CMOS microcomputer

Also Published As

Publication number Publication date
WO1998007099A1 (en) 1998-02-19
EP0931292A1 (en) 1999-07-28

Similar Documents

Publication Publication Date Title
JP3670041B2 (ja) 不揮発性メモリチップイネーブル符号化方法、コンピュータシステム、およびメモリコントローラ
US5812858A (en) Method and apparatus for providing register and interrupt compatibility between non-identical integrated circuits
US5796981A (en) Method and apparatus for providing register compatibility between non-identical integrated circuits
RU2442211C2 (ru) Гибридное запоминающее устройство с единым интерфейсом
US5937423A (en) Register interface for flash EEPROM memory arrays
US20060195650A1 (en) Method to detect NAND-flash parameters by hardware automatically
TWI776553B (zh) 具有晶片內執行能力的串列式反及閘快閃記憶體
US5572683A (en) Firmware selectable address location and size for cis byte and ability to choose between common memory mode and audio mode by using two external pins
US6880094B2 (en) Cas latency select utilizing multilevel signaling
EP0657825B1 (en) Non-volatile memory array controllers
EP0757316B1 (en) External device selection unit for data processor
US6691179B2 (en) Direct memory access controller for converting a transfer mode flexibly in accordance with a data transfer counter value
US5339402A (en) System for connecting an IC memory card to a central processing unit of a computer
US5127096A (en) Information processor operative both in direct mapping and in bank mapping, and the method of switching the mapping schemes
JP3673015B2 (ja) 半導体装置における周辺デバイス識別方法
JP2001503167A (ja) 内部メモリユニットと関連のイネーブル信号を発生するための回路とを含むマイクロコントローラ
US6023750A (en) Microcontroller having dedicated hardware for memory address space expansion via auxilliary address signal generation
JPWO2006003693A1 (ja) データプロセッサ
US5828857A (en) ASIC cell implementation of a bus controller with programmable timing value registers for the apple desktop bus
US5860129A (en) Data processing system for writing an external device and method therefor
US20020188771A1 (en) Direct memory access controller for carrying out data transfer by determining whether or not burst access can be utilized in an external bus and access control method thereof
JP3862031B2 (ja) マイクロプロセッサ
US5752267A (en) Data processing system for accessing an external device during a burst mode of operation and method therefor
KR930009061B1 (ko) 메모리 억세스 장치
KR0157843B1 (ko) 아이디이 입출력 포트 변환 인터페이스