JP3481666B2 - プロセッサのメモリアクセス制御方法及び装置 - Google Patents

プロセッサのメモリアクセス制御方法及び装置

Info

Publication number
JP3481666B2
JP3481666B2 JP06696694A JP6696694A JP3481666B2 JP 3481666 B2 JP3481666 B2 JP 3481666B2 JP 06696694 A JP06696694 A JP 06696694A JP 6696694 A JP6696694 A JP 6696694A JP 3481666 B2 JP3481666 B2 JP 3481666B2
Authority
JP
Japan
Prior art keywords
memory
microprocessor
address
processor
external memory
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
JP06696694A
Other languages
English (en)
Other versions
JPH06314234A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPH06314234A publication Critical patent/JPH06314234A/ja
Application granted granted Critical
Publication of JP3481666B2 publication Critical patent/JP3481666B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Microcomputers (AREA)
  • Stored Programmes (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサに
よる外部メモリ及び内部メモリの使用に係り、より詳細
には、外部メモリと内部メモリとの間の切り替え、及び
情報検索時間の低減に関する。
【0002】
【従来の技術】現在利用可能なマイクロプロセッサは、
16本のアドレスラインを提供し、それは、全体で64
キロバイト(KB)のアドレシング可能なメモリ空間に
相当する。該マイクロプロセッサは、16KBの内部ワ
ンタイムプログラマブルリードオンリメモリ(one time
programmable read only memory)(OTP ROM) を持ってい
る。また、付加的に、該マイクロプロセッサは、64K
Bの外部メモリをアクセスすることもできる。その外部
メモリは、値が変化するオペランドのために使用され、
また、該内部ROMメモリの限界容量以上に利用可能な
メモリ量を拡張するために使用される。該マイクロプロ
セッサは、また、内部メモリ及び外部メモリの双方が使
用されるか、又は外部メモリのみが使用されるか、とい
うことを制御するための入力ピン(EAピン)を持って
いる。
【0003】リセット時にEAピンに与えられる電圧が
例えば「1」のような第1の値であれば、特定の16K
B範囲でのマイクロプロセッサによる全てのメモリアク
セスは、内部ROMメモリに関するものであり、残りの
64−16=48KBに対するメモリアクセスは、外部
メモリに関するものである。特に、マイクロプロセッサ
が内部ROMをアクセスするときには、外部メモリをア
クセスする制御信号がディセーブルされる。かくして、
外部メモリ空間の一部が単純に利用不能となる。
【0004】リセット時にEAピンに与えられる電圧が
例えば「0」のような第2の値であれば、マイクロプロ
セッサによる全てのメモリアクセスは、外部メモリに関
するものであり、すなわち、内部メモリは使用されな
い。
【0005】通常、リセット動作は、マイクロプロセッ
サを所定の状態に強制し、すなわち内部レジスタの全て
の値を所定の値に設定し、次いで、マイクロプロセッサ
は、プリセットされたメモリアドレスから命令をフェッ
チし、その命令を実行する。一般的に、システムは、電
圧レベル検出回路を用いて、「パワーオン」時にリセッ
ト信号が発生するのを保証するように設計される。
【0006】EAピンに与えられる値とは関係なく、リ
セット後に、マイクロプロセッサは、同一のアドレス、
すなわちアドレス2080(16進)から実行を開始し
ようと試みる。内部メモリを使用するときには、このこ
とは問題とならない。なぜならば、ROMメモリのこの
アドレスの内容が実行可能なコードであることがわかっ
ているからである。外部メモリのみを使用するときに
は、外部メモリの適当なアドレスに実行可能なコードを
ロードするための好適な方法が知られていないため、問
題が生じる可能性がある。
【0007】外部メモリのアドレス2080に適当な実
行可能なコードが収容されることを確実にするための従
来の方法は、リードオンリメモリ、EPROM又はフラ
ッシュリプログラマブルメモリ(flash reprogrammable
memory) のような非揮発性のメモリを、外部メモリの少
なくともアドレス2080から適当な範囲にわたる部分
について使用することである。ランダムアクセスメモリ
のような1つの揮発性メモリを外部メモリ全体について
使用することは、外部メモリの使用法についての柔軟性
を最大化し、システム構成要素のコスト及び複雑性を最
小化するのに望ましいことであるが、上記の事情のた
め、それができず、課題となっている。
【0008】内部ROMにロードされる情報にエラーが
含まれる可能性もあれば、あるいはまた、この情報を変
更いたいという要望が生じるかもしれない。しかしなが
ら、そうするためには、ROMを含むマイクロプロセッ
サを取り外すこと、及び古いROMを新しいROMと交
換することが必要となる。したがって、外部メモリのみ
で動作することが望ましいであろう。
【0009】しかしながら、従来の装置は、結果として
は48KBの外部メモリのみ使用可能なものである。な
ぜならば、リセット直後にマイクロプロセッサが実行し
ようとする情報が確実に有効になるように、16KBの
アドレス空間をROMメモリ用に使用しなければならな
いからである。より大きなプログラムにとっては64K
Bの外部メモリ全体が常時使用可能であることが望まし
いため、このことは障害となる。
【0010】さらに、外部メモリのみ使用することにつ
いての他の問題は、内部メモリに関しては必要のないウ
エイト状態が外部メモリについては使用されるというこ
とから起因する実行時間の遅さである。
【0011】外部メモリを使用するとき、マイクロプロ
セッサは、第1のクロックサイクルでアドレスを出力
し、次のクロックサイクルで、データライン上の値をど
んな値でも有効な命令又はオペランドとみなして、それ
を処理する。すなわち、そのマイクロプロセッサは、多
重化されたアドレス/データアーキテクチャを使用す
る。典型的に、RAMチップは、データリード命令より
もデータライトに対して応答する方がより長くかかる。
すなわち、マイクロプロセッサの1クロックサイクル
は、リード動作には十分であるが、ライト動作には不十
分である。
【0012】この問題を解決するためには、いくつかの
方法がある。
【0013】第1には、マイクロプロセッサの1クロッ
クサイクルがリード動作及びライト動作の双方にとって
適切なものとなるように、非常に高速なRAMを使用す
ることである。このアプローチの不利益は、高速メモリ
が、より高価であり、「標準の」メモリよりも多くのパ
ワーを消費することである。
【0014】他の解決法は、外部メモリをアクセスする
ときにウエイト状態を使用するようにマイクロプロセッ
サを構成することである。ウエイト状態は、通常、2ク
ロックサイクルであり、1または2以上のウエイト状態
が各メモリアクセス時に導入可能である。ウエイト状態
の間、マイクロプロセッサは、単純にウエイトし(待
ち)、すなわちそのクロックサイクルの期間、何もしな
い。例えば、各メモリアクセスにおいて2ウエイト状態
を使うようにマイクロプロセッサを構成するときには、
メモリアクセスが第1のクロックサイクルで発生し、マ
イクロプロセッサは、(2ウエイト状態)×(2クロッ
クサイクル/ウエイト状態)=4クロックサイクル、の
間ウエイトし、次いで、マイクロプロセッサは、データ
ライン上の値をどんな値でも有効とみなしてそれを処理
する。このアプローチの不利益は、ライト動作のみウエ
イト時間を必要とするとはいえ、リード動作及びライト
動作の双方がウエイト時間を招くことであり、すなわ
ち、マイクロプロセッサの全体の実行時間が必要以上に
遅くなることである。
【0015】不必要なウエイト状態を最小化する更に他
の解決法は、マイクロプロセッサとともに外部制御回路
を使用することである。各々の外部メモリアクセスにお
いて、おおよそアドレスを出力するときあたりに、マイ
クロプロセッサが、あるピンの値を変更して、次のアク
セスが、リード動作を伴うものであるか、あるいはライ
ト動作を伴うものであるか、を外部メモリに対して指示
する。外部制御回路は、このピンの値を感知する。リー
ド動作が実行されるべきであるならば、外部制御回路
は、ウエイト状態が使用されないように、マイクロプロ
セッサのレディピンをセットする。ライト動作が実行さ
れるべきであるならば、外部制御回路は、適当な数のウ
エイト状態が使用されるように、レディピンをリセット
する。1つ又は2つの付加的なクロックサイクルのみが
各メモリアクセスについて必要となるだけなので、この
方式は、常にウエイト状態を使用するものよりも高速で
ある。この方式の不利益は、外部回路が必要であるこ
と、及びリード動作が可能な限り迅速に進むものではな
いことである。さらに、特定のマイクロプロセッサで
は、このピンの値は、当該外部回路が機能するのに十分
な長さの間隔を提供し損なうタイミングで変化する。す
なわち、マイクロプロセッサをそのような外部回路とと
もに使用することはできない。
【0016】
【発明が解決しようとする課題】それ故、本発明の目的
は、外部メモリとともに通常のマイクロプロセッサを使
用する技術であって、上述した従来技術の不利益を回避
するものを提供することにある。
【0017】本発明の他の目的は、マイクロプロセッサ
におけるプログラムの実行中、動作命令が格納される外
部メモリの全アドレス範囲の使用を可能とすることにあ
る。
【0018】本発明の更なる目的は、ウエイト状態を使
用しないで発生しうるメモリアクセスすなわちリード動
作に関して、実行時間の不利益を低減し又は消去するこ
とにある。
【0019】本発明の付加的な目的は、外部メモリのみ
で即ち内部メモリを使用しないで動作させつつ、外部メ
モリの全体についてランダムアクセスメモリの使用を可
能とすることにある。
【0020】本発明の更に他の目的は、ランダムアクセ
ス外部メモリに格納された命令のより高速な実行を可能
とすることにある。
【0021】
【課題を解決するための手段及び作用】この発明の一態
様によれば、プロセッサが外部メモリの各アドレスに格
納されたデータをアクセスするとき、該アクセスのアド
レスが所定の範囲内にあるかどうかが決定され、次い
で、該プロセッサは、該アドレスが該所定の範囲外にあ
るときには少なくとも1つのウエイト状態を使用し、か
つ、該アドレスが該所定の範囲内にあるときにはウエイ
ト状態の使用を省略するように制御される。
【0022】この技術は、特定のアドレス範囲に格納さ
れたぜ全データが命令又は一定のオペランド値であり、
それらはリードオンリモードでアクセスされる、という
仮定に依存している。
【0023】この発明の他の態様によれば、プロセッサ
が外部メモリに格納されたデータをアクセスするとき、
アクセスされているデータが命令であるかどうかが決定
される。該アクセスされているデータが命令でなけれ
ば、該プロセッサは、少なくとも1つのウエイト状態を
使用するように制御される。該アクセスされているデー
タが命令であれば、該プロセッサは、ウエイト状態の使
用を省略するように制御される。
【0024】この発明の更に他の態様によれば、プロセ
ッサがメモリをアクセスするとき、該プロセッサに接続
された外部メモリの一部分を指定する第1のアドレス範
囲が生成される。この第1のアドレス範囲は、該プロセ
ッサの内部メモリを指定する第2のアドレス範囲に変換
される。外部ソースからの一組のデータが該外部メモリ
の該第2のアドレス範囲にロードされ、次いで、該プロ
セッサは、外部メモリのみを使用するように構成され
る。
【0025】この技術は、外部メモリ空間の、以前はア
クセス不能であった範囲にロードすることを可能とし、
次いで、該プロセッサは、適当にロードされ全体的に使
用可能な外部メモリのみを使用するように切り替えられ
る。
【0026】本発明の上述の及び他の目的、特徴及び利
益は、以下の本発明の好適な実施例の詳細な説明を添付
図面とともに読むときに、明らかなものとなろう。な
お、図面においては、対応する部分は、同一の参照符号
によって同定される。
【0027】
【実施例】図面、特に図1、について説明する。図1の
ブロック図には、内部メモリを有するマイクロプロセッ
サ110、アドレス情報及びデータ情報(命令及びオペ
ランドのどちらでもよい)を伝送するのに適応したバス
120、アドレス情報を伝送するのに適応したバス12
5、通常の外部メモリ130、並びに入力端子150、
が示されている。マイクロプロセッサ110は、本発明
に従って書かれたプログラムを実行するのに適応したも
のである。
【0028】マイクロプロセッサ110は、本発明に関
連した6つのピン、すなわち、リセットピンRESE
T、外部アクセスピンEA、レディピンREADY、命
令ピンINSTR、ライトピンWRITE、及びエラー
ピンERROR、を備えている。
【0029】RESETピンは、マイクロプロセッサ1
10を周知の状態に強制するために外部回路によって使
用され、その状態の後には、マイクロプロセッサ110
は、所定のアドレスに格納された命令又はオペランドを
実行する。マイクロプロセッサ110は、各クロックサ
イクルの開始にてRESETピンの状態を感知するよう
にされている。
【0030】EAピンは、マイクロプロセッサ110が
内部メモリ及び外部メモリを使用するか、あるいは外部
メモリのみを使用するか、という外部からの選択を可能
とするものである。EAピンは、リセット直後にのみマ
イクロプロセッサ110の動作に影響する。
【0031】READYピンは、マイクロプロセッサ1
10がウエイト状態にあるかないかという外部からの制
御を可能とするものである。マイクロプロセッサ110
は、各クロックサイクルの開始にてREADYピンの状
態を感知するようにされている。
【0032】INSTRピンは、マイクロプロセッサ1
10が次のクロックサイクルにてメモリからの命令をリ
ードするかどうかを示すために、マイクロプロセッサ1
10によって使用される。すなわち、オペランドデータ
がリードされるべきか、あるいはその他の動作が発生す
べきであるならば、マイクロプロセッサ110は、命令
データがリードされるべきときに与えるものとは異なっ
た電圧レベルを、INSTRピンに与えるようにされて
いる。
【0033】WRITEピンは、次のメモリアクセスが
ライト動作であるかどうかを示すために、マイクロプロ
セッサ110によって使用される。
【0034】ERRORピンは、マイクロプロセッサ1
10の動作に割り込みをかけ、所定のアドレスに格納さ
れたルーチンを実行させるように強制するために、外部
回路によって使用される。マイクロプロセッサ110
は、各クロックサイクルの開始にてERRORピンの状
態を感知するようにされている。
【0035】サポート論理200は、アドレスプロセッ
サ210、レジスタ220、バッファ225、リセット
生成器230、及びウエイト状態制御回路240を含ん
でいる。アドレスプロセッサ210は、マイクロプロセ
ッサ110からバス120を介して伝送されたアドレス
を受信するようにされており、その受信したアドレスを
選択的に変換し、バス125を介してメモリ130にそ
の選択的に変換されたアドレスを提供する。
【0036】アドレスプロセッサ210は、マイクロプ
ロセッサ110からバス120を介してデータを受信
し、そのデータをレジスタ220に転送するようにされ
ている。そして、レジスタ220は、アドレスプロセッ
サ210からのデータを格納し、その格納されたデータ
を、リセット生成器230、ウエイト状態制御器24
0、及びマイクロプロセッサ110の各々に提供するよ
うにされている。
【0037】レジスタ220は、フリップフロップ回路
の集合であり(ビット当たり1つのフリップフロップ要
素)、各フリップフロップ回路は、データを格納し、そ
の格納されたデータを、「0」値又は「1」値のいずれ
かに対応する電圧レベルに変換する。フリップフロップ
の1つは、EAピンに関する制御ビット(後に議論す
る)を保持し、このフリップフロップは、バッファ22
5に結合され、次いでバッファ225は、マイクロプロ
セッサ110のEAピンに結合される。このような装置
によって、すなわちサポート論理200の援助で、マイ
クロプロセッサ110で実行されるプログラムは、内部
メモリ及び外部メモリの使用状態から、外部メモリのみ
の使用状態へと、切り替わることができる。
【0038】リセット生成器230は、レジスタ220
に格納された特定のデータが所定の値になったのを検出
したときに、マイクロプロセッサ110をリセットする
機能を果たす。以下に詳細に説明するように、外部メモ
リと内部メモリとの切り替えは、マイクロプロセッサ1
10によってレジスタ220に書き込まれたデータに応
じて発生する。すなわち、このデータの検出によって、
生成器230が、レジスタ220に格納されたこのデー
タから供給されるEAピン用の新しい値を用いて、マイ
クロプロセッサ110をリセットするように誘発される
のである。
【0039】ウエイト状態制御回路240は、不必要な
ウエイト状態の発生を低減するために4つのモードのう
ちの1つで動作するようにされており、それによってプ
ログラムの実行速度を増大させる。第1のモードにおい
ては、各メモリアクセスについてウエイト状態がもたら
される。第2のモードにおいては、メモリアクセスにつ
いてウエイト状態は決して使用されない。
【0040】第3のモードにおいては、命令(リードさ
れるのみでライトされない)を収容していると仮定され
る特定の範囲に、メモリアクセスに関するアドレスがあ
るならば、ウエイト状態は使用されないが、一方、この
範囲外の全アドレスに対するアクセスについてはウエイ
ト状態が使用される。また、第3のモードにおいては、
ウエイト状態制御回路240は、当該特定の範囲に対す
るメモリアクセスがライト動作であったかどうかを決定
し、もしもそうであれば、マイクロプロセッサ110が
メモリ回復ルーチンを実行するように誘発する。
【0041】第4のモードにおいては、各メモリアクセ
スについてINSTRピンを感知し、命令がアクセスさ
れるときには、ウエイト状態は使用されず、一方、オペ
ランドデータがアクセスされるときには、ウエイト状態
が使用される。
【0042】次に、図1に示す本発明の実施例の動作
を、図2を参照しつつ説明する。なお、図2は、マイク
ロプロセッサ110が利用可能なメモリ空間のマップを
示している。図2における全てのメモリアドレスは、1
6進表示で表されている。当該メモリマップの左側にあ
るアドレスは、開始のバイトアドレスを表示し、当該メ
モリマップの右側のアドレスは、終了のバイトアドレス
を表示している。
【0043】アドレスは、概して、外部メモリすなわち
アドレス0200〜1DFF及び6000〜FFFFを
参照するものである。しかしながら、マイクロプロセッ
サ110の内部レジスタは範囲0000〜01FFのア
ドレスによって同定され、内部ROMは範囲2000〜
5FFFのアドレスによって同定され、そしてサポート
論理200のレジスタ220は範囲1F80〜1F9F
のアドレスによって指定される。
【0044】換言すれば、マイクロプロセッサ110に
おいて走行するプログラムが、アドレス範囲1F80〜
1F9Fの32バイトの1つにデータをライトした後に
は、アドレスプロセッサ210が、このアドレスを検出
し、その随伴するデータをレジスタ220に設定する。
レジスタ220で、このデータは、EAピンに与えられ
る値を制御するとともに、リセット生成器230及びウ
エイト制御回路240によって感知される。
【0045】図3は、レジスタ220に格納されるデー
タに対応するメモリマップの一部、すなわちアドレス1
F84及び1F85を有する2バイト、を示す。本発明
においては、レジスタ220のデータは、一時に2バイ
トをリライト(rewrite) することによって変更される
が、しかしまた、1バイト又は3バイト以上の単位で該
格納データをリライトすることも可能である。
【0046】「パワーオン」後、レジスタ220のデー
タは0にセットされる。しかし、マイクロプロセッサ1
10のリセットは、「パワーオン」を伴わない場合に
は、レジスタ220のデータを不変のままとする。
【0047】サポート論理レジスタ220における2ビ
ット、すなわち図3に示すビット12及び11は、以下
に示すように、ウエイト状態制御回路240の動作のモ
ードを制御するために使用される。 00 第1のモード、1ウエイト状態が全メモリアクセ
スに使用される 01 第2のモード、0ウエイト状態が全メモリアクセ
スに使用される 10 第3のモード、範囲2000〜5FFFのメモリ
アクセスは0ウエイト状態を有し、他の全ては外部メモ
リが使用されるとき1ウエイト状態を有する 11 第4のモード、ウエイト状態の使用はINSTR
ピンの値に依存する
【0048】次いで、ウエイト状態制御に関する第3の
モードを、図4を参照しつつ説明する。図4は、このモ
ードのフローチャートである。このフローチャートは、
概して、マイクロプロセッサ110において走行するプ
ログラムと協働して、サポート論理200によって実行
されるルーチンを表している。
【0049】ステップ310において、マイクロプロセ
ッサ110は、外部メモリをアクセスする。すなわち、
バス120を構成する各線上の電圧を、外部メモリのア
ドレスを指定するレベルに強制する。ステップ320に
おいて、このメモリアクセスが、サポート論理200、
詳細にはアドレスプロセッサ210、によって検出され
る。
【0050】ステップ330において、アドレスプロセ
ッサ210は、そのアドレスが範囲2000〜5FFF
(この範囲は、リードされるべき命令のみを格納すると
仮定されている)にあるかどうかをチェックする。もし
もそのメモリアクセスのアドレスがこの範囲にあるなら
ば、ステップ340において、アドレスプロセッサは、
レジスタ220の特定の1つ、すなわちウエイト表示レ
ジスタ、に第1の値をライトする。この第1の値は、ウ
エイト状態制御回路240によってリードされ、それに
応じて、ウエイト状態制御回路240は、マイクロプロ
セッサ110のREADYピンにおける電圧レベルを、
ウエイト状態が使用されるべきでないことを示す値に強
制する。
【0051】ステップ360において、ウエイト状態制
御回路240は、当該メモリアクセスがライト動作であ
るかどうかをチェックする。本実施例においては、この
チェックは、ウエイト状態が必要かどうかの決定後に実
行される。なぜならば、このチェックを実行するのに必
要な情報は、チェックが発生し、READYピンが適当
にセットされるのを可能とするのに十分なほど早いうち
には、利用できないからである。
【0052】範囲2000〜5FFFに対するメモリア
クセスがライトでなければ(これが典型的な場合であ
る)、サポート論理200は、更なる動作を起こさな
い。この範囲に対するメモリアクセスがライトであれ
ば、何かが誤っていることを示しており、そのときには
ステップ370において、ウエイト状態制御回路240
は、マイクロプロセッサ110のERRORピンにおけ
る電圧レベルを、割り込みが発生すべきことを示す値に
強制する。サポート論理200からのそのような表示に
応答して、マイクロプロセッサ110は、直ちに、所定
のアドレスにあるコードを実行しようとする。すなわ
ち、マイクロプロセッサ110は、実行中のものを中断
し、エラー処理用のサービスルーチンを実行する。
【0053】アドレスプロセッサ210は、ステップ3
30においてメモリアクセスのアドレスが範囲2000
〜5FFFではないと判定したときには、ステップ35
0においてレジスタ220のウエイト表示レジスタに第
2の値をライトする。この第2の値は、ウエイト状態制
御回路240によってリードされ、その値に応じて、該
回路240は、マイクロプロセッサ110のREADY
ピンにおける電圧レベルを、ウエイト状態が使用される
べきであることを示す値に強制する。アドレスプロセッ
サ210は、マイクロプロセッサ110の所定のクロッ
クサイクル数の間、ウエイト表示レジスタにこの第2の
値を保持するが、そのクロックサイクル数は、次の動作
がライト動作であるときに、メモリ130がこのライト
動作を完了するのに十分な時間を有する、ということを
保証するのに適当なものである。対応して、回路240
は、マイクロプロセッサ110のREADYピンを適当
にセットする。例えば1クロックサイクルのような適当
な時間の経過後、アドレスプロセッサ210は、ウエイ
ト表示レジスタの値を更新し、それに応じて、回路24
0は、READYピンに加えられる電圧レベルを変更
し、そしてマイクロプロセッサ110は、通常動作を再
開し、すなわちもはやウエイト状態にない。
【0054】次に、ウエイト状態制御に関する第4のモ
ードを、図5を参照しつつ説明する。図5は、このモー
ドのフローチャートである。このフローチャートは、概
して、マイクロプロセッサ110において走行するプロ
グラムと協働して、サポート論理200によって実行さ
れるルーチンを表している。
【0055】ステップ510において、マイクロプロセ
ッサ110は、外部メモリをアクセスする。すなわち、
バス120を構成する各線上の電圧を、外部メモリのア
ドレスを指定するレベルに強制する。ステップ520に
おいて、このメモリアクセスは、サポート論理200に
よって、詳細にはアドレスプロセッサ210によって、
検出される。
【0056】ステップ530において、ウエイト状態制
御回路240は、INSTRピンがアクティブであるか
どうか、すなわちINSTRピンの電圧レベルが論理
「1」に対応するか又は「0」に対応するか、をチェッ
クする。
【0057】マイクロプロセッサ110が次のクロック
サイクルにおいてメモリから命令をリードすることを示
す、例えば「1」のような第1の値をINSTRピンが
有するときには、ステップ540において、ウエイト状
態制御回路240は、マイクロプロセッサ110のRE
ADYピンにおける電圧レベルを、ウエイト状態が使用
されるべきでないことを示す値に強制する。
【0058】INSTRピンが例えば「0」のような第
2の値を有するならば、ステップ550において、ウエ
イト状態制御回路240は、マイクロプロセッサ110
のREADYピンにおける電圧レベルを、1ウエイト状
態が使用されるべきであることを示す値に強制する。
【0059】図3に示されるサポート論理レジスタ情報
の他の部分であって本発明に関連するものは、外部メモ
リにおけるオーバレイを制御するために使用される(詳
細は以下に議論される)ビット4,5,6,7、マイク
ロプロセッサ110のEAピンに存在する値を決定する
ビット3、及びリセット生成器230がマイクロプロセ
ッサ110におけるリセット動作を誘発するときを決定
するビット2、である。
【0060】次に、図6のフローチャートを参照しつ
つ、本発明によりどのようにして、外部リードオンリメ
モリの必要なく、外部ランダムアクセスメモリの全アド
レス範囲の使用が可能になるか、また、適当な実行可能
コードが該外部メモリのアドレス2080に格納される
ことが保証されるか、を説明する。当業者は、上述の第
3及び第4のウエイト状態制御モードの使用を通して外
部メモリのみを使用するときに、より高速な実行時間が
どのようにして得られるのかを容易に理解するであろ
う。便宜上及び簡略化のため、マイクロプロセッサ11
0の動作は、ディスクファイルからリードされる情報に
関連して説明される。ただし、例えば磁気テープ、リー
ドオンリメモリ、又は通信ラインのような他の情報源
も、適したものである。
【0061】パワーオン時には、ステップ400に示さ
れるように、内部メモリすなわちROMメモリの使用を
イネーブルすべくEAピンが設定される。パワーオンシ
ーケンス終了時のリセット部分の後には、マイクロプロ
セッサ110は、ROMメモリのアドレス2080から
実行を開始する。
【0062】ステップ410において、ROMメモリに
収容されたプログラム(これは、工場においてロード
(「バーンイン(burn in) 」)された。)は、直ちにデ
ィスク(簡略化のため図示せず)をアクセスし、入力端
子150を通して該ディスクを上に収容されたファイル
をリードする。該ファイルは、リードされるとき、サポ
ート論理200のアドレスプロセッサ210の中を通過
する。アドレスプロセッサ210は、ファイルが外部メ
モリ130の通常アクセス可能な部分、すなわちアドレ
ス0200〜1DFF及び6000〜FFFFを構成す
る約48KB、にロードされるように、マイクロプロセ
ッサ110からのアドレスをバス125に単純に手渡
す。
【0063】ステップ420において、ROMメモリに
収容されかつマイクロプロセッサ110によって実行さ
れているプログラムは、サポート論理200のレジスタ
220のうちの1つ、より詳細には図3に示すビット
5、に所定の値をライトする。これは、アドレスプロセ
ッサ210が、アドレスにオフセットを加えることによ
りアドレスを変換するように誘発する。詳細には、当該
所定の値がレジスタ220に適当に設定されるとき、マ
イクロプロセッサ110からのアドレス(典型的に仮想
アドレスと呼ばれる)のうち範囲A000〜DFFFの
ものが、アドレスプロセッサ210によって、範囲20
00〜5FFFの対応アドレス(典型的に物理アドレス
と呼ばれる)に変換され、バス125を介して外部メモ
リ130に供給される。このようにして、外部メモリの
従来アクセス不可能であった部分がアクセス可能とな
る。このような技術の使用により、アクセス可能なメモ
リは、64KBから80KBに拡張される。ただし、サ
ポート論理200の変換機能は、そのような拡張を実現
するために、明確にイネーブル及びディセーブルされね
ばならない。
【0064】ステップ430において、内部ROMメモ
リに収容されかつマイクロプロセッサ110によって実
行されているプログラムは、他のファイルが該ディスク
からリードされ、アドレスA000〜DFFFにロード
されるように誘発する。該ファイルがその開始部分に実
行可能なコードを含んでいることが有利である。ウエイ
ト状態制御の第3のモードが使用されるべきときには、
実行可能なコードは、このファイル全体の中に収容され
ている。先に説明したように、アドレスプロセッサ21
0はアドレス変換を実行するため、該ファイルは、実際
には、外部メモリ130の物理アドレス2000〜5F
FFにロードされる。
【0065】ステップ440において、ROMメモリに
収容されかつマイクロプロセッサ110によって実行さ
れているプログラムは、レジスタ220のビットの1
つ、詳細には図3に示すビット3、の値を変更し、それ
によって、サポート論理200に対し、内部メモリの使
用をディセーブルすべく、すなわち外部メモリのみの使
用をイネーブルすべく、EAピンを設定するよう命令す
る。これに応じて、サポート論理200は、適当な電圧
をEAピンに加える。しかしながら、EAピンの電圧
は、リセット後にマイクロプロセッサ110によって感
知されるのみなので、内部メモリは、まだ使用されてい
る。ステップ450において、マイクロプロセッサ11
0において走行するプログラムは、レジスタ220のビ
ットのうちの他の1つ、すなわち図3に示すビット2、
の値を変更し、それによって、サポート論理200に対
し、マイクロプロセッサ110をリセットするよう命令
する。
【0066】ステップ460において、サポート論理2
00のリセット生成器230は、マイクロプロセッサ1
10のRESETピンに加えられる電圧を変更し、それ
によってリセットを誘発する。リセットが完了した後、
マイクロプロセッサ110は、EAピンの電圧値を感知
し、外部メモリのみ使用されるべきことを決定する。
【0067】ステップ470において、マイクロプロセ
ッサ110は、外部メモリのアドレス2080に格納さ
れたコードの実行を開始する。これから後は、マイクロ
プロセッサ110は、外部メモリの全64KBを用いて
動作する。
【0068】本発明の適用の1つは、ディスクドライブ
用マイクロコントローラにおいてなされた。例えば、通
常のハードディスクにおいては、欠陥データ(「バッド
セクタ」データ)は、そのハードディスク上に格納され
る。各ライト動作においては、欠陥データをハードディ
スクからリードし、ライトしてはいけないセクタを同定
しなければならない。本発明を使用することにより、欠
陥データを外部RAMにロードすることができる。例え
ば、図6に示される手順中に又はその後にロードするこ
とができる。その後のライト動作は、RAMから欠陥デ
ータをリードすることで果たすことができ、これは、デ
ィスクから欠陥データをリードするよりも実質的に高速
である。
【0069】本発明の例示的な実施例及びそのいろいろ
な変形を、添付図面を参照しつつ、詳細に説明してきた
が、本発明がこの詳細な実施例及び変形に限定されるも
のではないこと、並びに特許請求の範囲に記載された本
発明の範囲及び精神から逸脱することなく、いろいろな
変更及び更なる変形が当業者によってなされうること
は、理解されるべきことである。
【0070】
【発明の効果】以上説明したように、本発明によれば、
外部メモリとともに通常のマイクロプロセッサを使用す
る技術であって、上述した従来技術の不利益を回避する
ものが提供される。また、マイクロプロセッサにおける
プログラムの実行中、動作命令が格納される外部メモリ
の全アドレス範囲の使用が可能となる。また、ウエイト
状態すなわちリード動作を使用しないで発生しうるメモ
リアクセスに関する実行時間の不利益が低減され又は消
去される。また、外部メモリのみで即ち内部メモリを使
用しないで動作させつつ、外部メモリの全体についてラ
ンダムアクセスメモリの使用が可能となる。さらに、ラ
ンダムアクセス外部メモリに格納された命令のより高速
な実行が可能となる。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【図2】図1に示す本発明の実施例について使用される
メモリマップの説明図である。
【図3】図2に示すメモリマップの一部の説明図であ
る。
【図4】図1に示す本発明の実施例によって使用される
ウエイト状態制御の一態様を示すフローチャートであ
る。
【図5】図1に示す本発明の実施例によって使用される
ウエイト状態制御の他の態様を示すフローチャートであ
る。
【図6】図1に示す本発明の実施例による、内部メモリ
の使用から外部メモリの使用への切り替えを示すフロー
チャートである。
【符号の説明】
110…マイクロプロセッサ 120…アドレス/データバス 125…アドレスバス 130…外部メモリ 150…入力端子 200…サポート論理 210…アドレスプロセッサ 220…レジスタ 225…バッファ 230…リセット生成器 240…ウエイト状態制御回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭64−7238(JP,A) 特開 平3−291734(JP,A) 特開 平4−309147(JP,A) 特開 平4−318639(JP,A) 特開 昭64−82147(JP,A) 特開 昭60−43757(JP,A) 特開 昭63−268030(JP,A) 特開 平2−28859(JP,A) 特開 昭59−47624(JP,A) 実開 平2−245845(JP,U) (58)調査した分野(Int.Cl.7,DB名) G06F 12/06 G06F 9/445 G06F 15/78

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】 プロセッサによるメモリアクセスを制御
    する方法であって、 該プロセッサに接続された外部メモリの一部を指定する
    第1のアドレス範囲を生成するステップと、 該第1のアドレス範囲を、該プロセッサの内部メモリを
    指定する第2のアドレス範囲に変換することにより、
    部ソースからの一組のデータを、該外部メモリの該第2
    のアドレス範囲にロードするステップと、 外部メモリのみ使用するように該プロセッサを構成する
    ステップと、 を具備してなるプロセッサのメモリアクセス制御方法。
  2. 【請求項2】 該一組のデータが命令を含んでおり、か
    つ、該外部メモリにロードされた該命令を実行するステ
    ップをさらに具備する、請求項1に記載の方法。
  3. 【請求項3】 該プロセッサを構成する該ステップが該
    プロセッサをリセットすることを含む、請求項1に記載
    の方法。
  4. 【請求項4】 前記内部メモリがリードオンリメモリで
    ある、請求項1に記載の方法。
  5. 【請求項5】 前記外部メモリがランダムアクセスメモ
    リである、請求項1に記載の方法。
  6. 【請求項6】 プロセッサによるメモリアクセスを制御
    する装置であって、 該プロセッサに接続された外部メモリの一部を指定する
    第1のアドレス範囲を、該プロセッサの内部メモリを指
    定する第2のアドレス範囲に変換する手段と、該変換する手段を使用して、 外部ソースからの一組のデ
    ータを、該外部メモリの該第2のアドレス範囲にロード
    する手段と、 外部メモリのみ使用するように該プロセッサを構成する
    手段と、 を具備してなるプロセッサのメモリアクセス制御装置。
  7. 【請求項7】 該一組のデータが命令を含んでおり、か
    つ、該外部メモリにロードされた該命令を実行する手段
    をさらに具備する、請求項6に記載の装置。
  8. 【請求項8】 該プロセッサを構成する該手段が該プロ
    セッサをリセットする手段を含む、請求項6に記載の装
    置。
  9. 【請求項9】 前記内部メモリがリードオンリメモリで
    ある、請求項6に記載の装置。
  10. 【請求項10】 前記外部メモリがランダムアクセスメ
    モリである、請求項6に記載の装置。
JP06696694A 1993-04-28 1994-04-05 プロセッサのメモリアクセス制御方法及び装置 Expired - Fee Related JP3481666B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5452993A 1993-04-28 1993-04-28
US054529 1993-04-28

Publications (2)

Publication Number Publication Date
JPH06314234A JPH06314234A (ja) 1994-11-08
JP3481666B2 true JP3481666B2 (ja) 2003-12-22

Family

ID=21991733

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06696694A Expired - Fee Related JP3481666B2 (ja) 1993-04-28 1994-04-05 プロセッサのメモリアクセス制御方法及び装置

Country Status (1)

Country Link
JP (1) JP3481666B2 (ja)

Also Published As

Publication number Publication date
JPH06314234A (ja) 1994-11-08

Similar Documents

Publication Publication Date Title
US6148441A (en) Method for reprogramming flash ROM in a personal computer implementing an EISA bus system
EP1256055B1 (en) Computer system including a memory access controller for using non-system memory storage resources during system boot time
US6282644B1 (en) Apparatus and method for storing BIOS data of computer system
GB2385167A (en) Non-volatile memory initialisation by a controller loading firmware from the non-volatile memory to volatile memory attached to a processor.
JPH08255084A (ja) Eepromのアップグレード方法
KR100261527B1 (ko) 프로세서 상태의 선택적 제초기화용 전기핀을 구비한 다중모드 마이크로프로세서
KR100223844B1 (ko) 옵션 자동 설정 회로
JP2000163268A (ja) コンピュータ
KR100310486B1 (ko) 마이크로컴퓨터
JP3481666B2 (ja) プロセッサのメモリアクセス制御方法及び装置
US6182207B1 (en) Microcontroller with register system for the indirect accessing of internal memory via auxiliary register
KR100534613B1 (ko) 플래쉬 메모리를 이용한 시스템 부팅 장치 및 그 방법
JPS6319058A (ja) メモリ装置
JP3565987B2 (ja) エミュレータ装置
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JP3507193B2 (ja) ロード・ストア命令処理装置
GB2304209A (en) Starting up a processor system
KR20000008845A (ko) 컴퓨터 시스템의 부팅방법
EP1086417A2 (en) Method and system for updating user memory in emulator systems
JP3097602B2 (ja) データ処理装置
JPH0561659B2 (ja)
JPH03201036A (ja) マイクロコンピュータ
JPH0736154B2 (ja) データ記憶装置
JP2643803B2 (ja) マイクロコンピュータ
JPH1050086A (ja) Eepromを有するマイクロコンピュータ及びその書換方法

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

LAPS Cancellation because of no payment of annual fees