JP4008948B2 - マイクロプロセッサおよび出力バッファ - Google Patents

マイクロプロセッサおよび出力バッファ Download PDF

Info

Publication number
JP4008948B2
JP4008948B2 JP2006071095A JP2006071095A JP4008948B2 JP 4008948 B2 JP4008948 B2 JP 4008948B2 JP 2006071095 A JP2006071095 A JP 2006071095A JP 2006071095 A JP2006071095 A JP 2006071095A JP 4008948 B2 JP4008948 B2 JP 4008948B2
Authority
JP
Japan
Prior art keywords
memory
microprocessor
input
control signal
external
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 - Lifetime
Application number
JP2006071095A
Other languages
English (en)
Other versions
JP2006228239A (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.)
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 JP2006228239A publication Critical patent/JP2006228239A/ja
Application granted granted Critical
Publication of JP4008948B2 publication Critical patent/JP4008948B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers or receivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microcomputers (AREA)
  • Memory System (AREA)
  • Logic Circuits (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

発明の背景
この発明は一般に外部メモリタイミングを制御するメモリクロックと同期して外部メモリへのアクセスを行なうように配列されたマイクロプロセッサに関し、かつより特定的に、マイクロプロセッサ処理速度が外部メモリタイミングと等しいときまたは予め定められた多数の外部メモリタイミングであるときにかかる同期化されたアクセスを行なうように配列されたマイクロプロセッサに関する。
動作命令に従ってオペランドデータ上で実行を行なうマイクロプロセッサは当該技術分野において周知である。マイクロプロセッサがかかる態様で機能するために、外部メモリはマイクロプロセッサ動作命令、オペランドデータおよびマイクロプロセッサ結果を記憶するためのマイクロプロセッサに通常は対応づける。マイクロプロセッサは読出しまたは記憶動作を行なうことによって外部メモリにアクセスし、読出し動作において、マイクロプロセッサは外部メモリから動作命令を取出すかまたはデータを入手し、かつ記憶動作においてマイクロプロセッサは外部メモリに結果を記憶する。
マイクロプロセッサが外部メモリにアクセスすることを可能にするために、マイクロプロセッサおよび外部メモリは複数個の制御ラインと1つ以上の多数ビットバスによって通常は結合される。或る組の制御ラインはマイクロプロセッサから外部メモリへアクセス制御信号を運び、別の組の制御ラインは外部メモリからマイクロプロセッサへアクセス制御信号を運ぶ。マイクロプロセッサから外部メモリへの制御信号は、もしアクセスが読出しまたは記憶動作であれば、アクセス要求を含んだり外部メモリへ伝えるべき情報を読出す/書込むことが可能である。
或る多数ビットバスはマイクロプロセッサから外部メモリへ外部メモリアドレスを運んで、読出しの間要求される命令またはデータを入手するための、または記憶の間結果を記憶するための既知の外部メモリ場所へ、マイクロプロセッサがアクセスすることを可能にするために一般に使用される。別の複数ビットバスは読出し動作の間外部メモリからマイクロプロセッサへ要求されたデータまたは命令を運ぶために、かつ記憶動作の間マイクロプロセッサから外部メモリへ結果のようなデータを運ぶために利用される。
マイクロプロセッサ外部メモリアクセスをサポートするためにマイクロプロセッサと外部メモリとの間のタイミング制御は非常に重要である。適切なタイミング制御は所望のマイクロプロセッサ処理速度をサポートするための効率的でかつ正確なアクセスを確実にする。かかるタイミング制御はメモリがかかるマイクロプロセッサ信号を受信することを可能にされている予め定められた時間期間の間のみプロセッサがメモリへアドレス、制御信号またはデータを駆動することを要求し、かつ同様に、プロセッサがかかる外部メモリ信号を受信することを可能にされている予め定められた時間期間の間のみ外部メモリがプロセッサへ制御信号とデータとを駆動することを要求する。かかるタイミング制御は一般に同期外部メモリアクセスと呼ばれる。
同期外部メモリアクセスは、メモリクロック周波数で高い位相と低い位相とを有するメモリクロックパルスを与えるメモリクロックを備えることによって達成された。メモリクロックパルスはアクセスタイミングを確立するために外部メモリとマイクロプロセッサとの双方に与えられる。マイクロプロセッサはプロセッサ動作周波数で高い位相と低い位相とを有するプロセッサクロックパルスを発生するそれ自体の内部クロックを一般に含み、この周波数は最も一般的には外部メモリクロック周波数に等しかった。メモリクロックパルスの位相とプロセッサクロックパルスの位相との間の関係は、それから確立されかつマイクロプロセッサが外部メモリへ制御信号、アドレスまたはデータを駆動する時間期間、および外部メモリがマイクロプロセッサへ制御信号またはデータを駆動する時間期間を決定するために維持される。これらの位相関係を固守するとマイクロプロセッサによる外部メモリの同期アクセスという結果になる。
同期アクセスはメモリクロック周波数がプロセッサクロック周波数に等しいような状況に制限されてきた。これは残念なことである、なぜなら改良された処理性能は、もし所与のメモリが外部メモリクロック周波数より大きい動作周波数で処理することが可能なマイクロプロセッサをサポートすることができれば、得られるからである。たとえば、25メガヘルツの動作周波数を有し、かつ25メガヘルツの外部メモリに対応づけるマイクロプロセッサが50メガヘルツのマイクロプロセッサと取替えられれば、たとえメモリが25メガヘルツのメモリであるとしても、大半の場合処理システムの全体的な性能は2倍になるであろう。残念ながら、先行技術はプロセッサ動作周波数で動作する外部メモリ、またはマイクロプロセッサ動作周波数の2分の1のような分数で動作する外部メモリに同期してアクセスするために選択的に動作可能なマイクロプロセッサを提供しなかった。もしかかるマイクロプロセッサが外部メモリ、外部バスおよび制御ラインに見えるような態様でいずれかの外部メモリにアクセスすることができれば、それによってマイクロプロセッサおよびメモリの相対的な動作周波数にかかわらずかかる同期アクセスを与えることは、非常に有利であろう。
発明の概要
この発明は、プロセッサクロック周波数のプロセッサクロック信号を受信するための入力端子および前記プロセッサクロック信号に同期してメモリアクセス要求を供給するための出力端子を有する中央処理装置と、前記中央処理装置およびメモリバスに結合され、メモリクロック周波数のメモリクロック信号を受信するための入力端子を有し、前記メモリアクセス要求に応答して前記メモリクロック信号を用いて前記メモリバスにおいてアクセスを行うメモリアクセス回路とを備えるマイクロプロセッサを提供する。
マイクロプロセッサは、速度制御信号に応答して選択される第1または第2の動作モードのいずれかで動作し、前記第1の動作モードにおいては、前記プロセッサクロック周波数は前記メモリクロック周波数よりも高く、前記メモリアクセス回路が前記メモリバスにおけるアクセスを前記メモリクロック信号を用いて行いつつ、前記中央処理装置は前記プロセッサクロック周波数で動作を継続し、前記第2の動作モードにおいては、前記メモリクロック周波数は前記プロセッサクロック周波数に等しい。
また、この発明は、メモリのアクセス速度を制御するためにメモリクロックパルスに第1の周波数を与えるメモリクロックと同期して、読出しおよび記憶動作を実行するために外部メモリにアクセスするように配列されたマイクロプロセッサを提供する。マイクロプロセッサはマイクロプロセッサの処理速度を制御するために第2の周波数でクロックパルスを発生するための内部クロックと、第1の周波数に等しい第2の周波数を表わす第1のレベルかまたは予め定められた多数の第1の周波数である第2の周波数を表わす第2のレベルかを有する速度制御信号を受信するための速度制御入力とを含む。マイクロプロセッサは速度制御入力に結合されて速度制御信号とメモリクロックパルスとに応答して、速度制御信号が第1のレベルにありかつ第2の周波数が第1の周波数と等しい場合にメモリクロックと同期にマイクロプロセッサが外部メモリにアクセスすることを引起こすための、かつ速度制御信号が第2のレベルにありかつ第2の周波数が予め定められた多数の第1の周波数である場合にマイクロプロセッサがメモリクロックと同期して外部メモリにアクセスすることを引起こすためのメモリアクセス制御手段をさらに含む。
この発明は、外部アドレスバスによってマイクロプロセッサに結合された外部メモリにアクセスして、第1の周波数でのメモリクロックパルスをマイクロプロセッサと外部メモリとに与えて、バスを介してメモリのアクセス速度を制御するメモリクロックと同期して、読出しおよび記憶動作を実行するように配列されたマイクロプロセッサをさらに提供する。マイクロプロセッサは第2の周波数でクロックパルスを発生して、マイクロプロセッサの処理速度を制御するための内部クロックと、マイクロプロセッサが外部メモリにアクセスしようとする場合に外部メモリアドレスを与えるための中央処理装置とを含む。マイクロプロセッサは外部メモリアドレスがバスを介して外部メモリに伝えられて外部メモリの同期アクセスを可能にしようとする時を制御するためのバスインタフェース装置をさらに含み、第1の周波数に等しい第2の周波数を表わす第1のレベルか、または予め定められた多数の第1の周波数である第2の周波数を表わす第2のレベルかを有する速度制御信号を受信するための速度制御入力を含む。バスインタフェース装置はまた速度制御信号レベル、メモリクロックおよび内部クロックに応答して、メモリクロックおよび内部クロックがマイクロプロセッサによる外部メモリの同期アクセスを得るためにお互いに対して第1の予め定められた位相関係にある場合に、外部メモリアドレスがバス上に置かれることを引起こすための制御手段をも含む。
この発明は外部バスを介して外部メモリへの出力を駆動するためにマイクロプロセッサで使用するための出力バッファをさらに提供する。出力バッファは入力信号レベルを受信するための入力、入力信号のレベルで外部バスを駆動するための出力および制御信号を受信するための制御入力を含む。制御入力は出力に結合されて出力が制御信号に応答する入力信号のレベルで外部バスを駆動することを引起こす。出力バッファは入力と出力との間に結合されかつ制御入力に結合されて、制御信号に応答して出力から入力を分離し外部バスが入力信号レベルで駆動されつつある一方で入力が新しい入力信号レベルで更新されることを可能にするための分離手段をさらに含む。
(1)本発明のマイクロプロセッサは、外部メモリにアクセスするように配列されたマイクロプロセッサであって、外部メモリは第1の周波数でメモリクロックパルスを与えて前記メモリのアクセス速度を制御するメモリクロックと同期して読出しおよび記憶動作を実行し、
第2の周波数でクロックパルスを発生して前記マイクロプロセッサの処理速度を制御する内部クロックと、
前記第1の周波数に等しい前記第2の周波数を示す第1のレベルかまたは予め定められた多数の前記第1の周波数である前記第2の周波数を示す第2のレベルかを有する速度制御信号を受信するための速度制御入力と、さらに
前記速度制御入力に結合され、かつ前記速度制御信号と前記メモリクロックパルスとに応答して、前記速度制御信号が前記第1のレベルにありかつ前記第2の周波数が前記第1の周波数と等しい場合に前記マイクロプロセッサが前記メモリクロックと同期して前記外部メモリにアクセスすることを引起こし、かつ前記速度制御信号が前記第2のレベルでありかつ前記第2の周波数が前記予め定められた多数の前記第1の周波数である場合に前記マイクロプロセッサが前記メモリクロックと同期して前記外部メモリにアクセスすることを引起こすためのメモリアクセス制御手段とを含む。
上記マイクロプロセッサは以下のように構成してもよい。
(2)前記予め定められた多数を2とする。
(3)前記第1の速度制御信号レベルは論理1でありかつ前記第2の速度制御信号レベルは論理0である。
(4)前記メモリクロックパルスは第1の位相部分と第2の位相部分とを含み、前記外部メモリは前記第1の位相部分の間前記マイクロプロセッサから入力を受信しかつ前記第2の位相部分の間前記マイクロプロセッサに出力を与えるように配列され、かつ前記メモリアクセス制御手段は前記第1の位相部分の間前記マイクロプロセッサが前記外部メモリに出力を与えることを可能にし、かつ前記第2の位相部分の間前記マイクロプロセッサが前記外部メモリから入力を受信することを可能にするための可能化手段を含む。
(5)前記内部クロックは第1および第2のプロセッサクロックパルスを発生するために配列され、前記第1および第2のプロセッサクロックパルスは前記第2の周波数であり、第1および第2のクロックパルス位相を有し、かつ逆の位相関係にあり、前記可能化手段は前記速度制御信号第1のレベルに応答して、各前記第1のクロックパルス第1の位相と前記メモリクロックパルス第1の位相部分との一致があるとすぐ前記マイクロプロセッサが前記外部メモリに前記出力を与えることを可能にし、かつ各前記第2のクロックパルス第1の位相と前記メモリクロックパルス第2の位相部分との一致があるとすぐマイクロプロセッサが前記外部メモリから入力を受信することを可能にする。
(6)前記可能化手段は前記速度制御信号第2のレベルにさらに応答して、1つおきの前記第1のクロックパルス第1の位相と前記メモリクロックパルス第1の位相部分との一致があるとすぐマイクロプロセッサが前記外部メモリに前記出力を与えることを可能にし、かつ1つおきの前記第2のクロックパルス第1の位相と前記メモリクロックパルス第2の位相部分との一致があるとすぐマイクロプロセッサが前記外部メモリから入力を受信することを可能にする。
(7)前記可能化手段は前記マイクロプロセッサが前記外部メモリに前記出力を与えることを可能にする第1の制御信号と、前記マイクロプロセッサが前記外部メモリから前記入力を受信することを可能にする第2の制御信号とを発生するための手段を含む。
(8)前記可能化手段は前記メモリクロックパルス、前記速度制御信号ならびに前記第1および第2のプロセッサクロックパルスに応答して前記第1および第2の制御信号を発生する。
(9)前記マイクロプロセッサによって前記外部メモリに与えられた前記出力はマイクロプロセッサアクセス制御信号、外部メモリアドレスおよびデータを含み、前記マイクロプロセッサによって受信された前記入力は外部メモリアクセス制御信号およびデータを含む。
(10)前記マイクロプロセッサは複数個の制御ライン、データバスおよびアドレスバスによって前記外部メモリに結合されるように配列され、前記マイクロプロセッサは前記出力を前記制御ライン、前記データバスおよび前記アドレスバス上に与えるための複数個の出力ポートを含み、かつ前記出力ポートは前記第1の制御信号によって可能化され、前記メモリクロックパルスと同期して前記外部メモリへ前記出力を与えるように配列された出力バッファを含む。
(11)前記出力バッファは前記第1の制御信号に応答して前記出力を初めに与えるための激しい駆動手段と前記第1の制御信号の終結の後前記出力を維持するための弱い駆動手段とを含む。
(12)前記出力バッファは前記外部メモリに与えられるべき前記出力をレベルを受信するための入力を含み、前記マイクロプロセッサは前記第1の制御信号の前に前記出力バッファ入力に前記出力レベルを与えるように配列され、かつ前記出力バッファは前記レベルを前記入力に一時的に保持するための前記入力に結合されたラッチを含む。
(13)前記バッファは前記第1の制御信号に応答して前記ラッチから前記入力を分離するための分離手段を含み、前記入力でのレベルが以前のレベルが前記外部メモリに与えられるときに更新されることを許容する。
(14)前記出力バッファは前記更新された出力レベルを保持する前記入力ラッチの前に前記第1の制御信号の終結に応答して前記激しい駆動手段から前記弱い駆動手段へ前記前のレベルを転送するように配列される。
(15)前記出力バッファは前記転送された出力レベルを保持するための第2のラッチと、前記第1の制御信号の終結に応答して前記更新されたレベルから前記第2のラッチを分離するための第2の分離手段とを含む。
(16)前記マイクロプロセッサは前記外部メモリから外部アクセス制御信号を受信するための少なくとも1つの入力を含み、前記入力は前記第2の制御信号、前記メモリクロックパルスの前記第2の位相部分および前記第2のプロセッサクロックパルスの前記第1の位相部分に応答して、前記外部メモリから前記外部アクセス制御信号を受信するための論理手段を含む。
(17)前記外部メモリからの前記外部アクセス制御信号は外部アクセスの成功した完成を示す動作可能信号であり、前記論理手段は前記動作可能信号に応答して内部動作可能信号を与えるように配列され、かつ前記マイクロプロセッサは前記内部動作可能信号に応答して前記完成された外部アクセスを終結させる。
(18)前記メモリアクセス制御手段は少なくとも第1および第2の状態を有する状態マシーンを含み、前記第2の状態は外部アクセスを始めて完成まで継続させるためのものでありかつ前記第1の状態は前記完成されたアクセスを終結させるためのものである。
(19)外部アクセス要求信号を与えるための中央処理装置をさらに含み、前記メモリアクセス制御手段は前記外部アクセス要求信号に応答して未決定の要求信号を発生するためのラッチ手段を含み、かつ前記状態マシーンは前記未決定の要求信号、前記第2の制御信号および前記第1の状態にあることに応答し、前記第2のプロセッサクロックパルスの次の第1の位相になるとすぐ前記第2の状態に続いて前記外部アクセスを開始する。
(20)前記状態マシーンは前記外部アクセスを開始するとすぐ前記ラッチ手段からの前記未決定の要求信号を取除くために配列される。
(21)前記メモリアクセス制御手段は前記論理手段に結合されてかつ前記内部動作可能信号に応答して修飾された動作可能信号を与えるための動作可能手段をさらに含む。
(22)前記状態マシーンは前記修飾された読出信号、前記未決定の要求信号がないことおよび前記第2の状態にあることに応答して前記第2のプロセッサクロックパルスの次の第1の位相になるとすぐ前記第1の状態へと続いて前記完成された外部アクセスを終結させる。
(23)前記マイクロプロセッサは外部ソースから前記メモリクロックパルスを受信するための入力を含む。
(24)前記マイクロプロセッサは前記メモリクロックパルスを与えるためのクロック発生器と前記メモリクロックパルスを前記外部メモリに与えるための出力とを含む。
(25)本発明の別のマイクロプロセッサは、外部メモリにアクセスするように配列されたマイクロプロセッサであって、外部メモリは外部アドレスバスによって前記マイクロプロセッサに結合されて第1の周波数でメモリクロックパルスを前記マイクロプロセッサと前記外部メモリとに与えて前記バスを介して前記メモリのアクセス速度を制御するメモリクロックと同期して読出しおよび記憶動作を実行し、
第2の周波数でクロックパルスを発生して前記マイクロプロセッサの処理速度を制御する内部クロックと、
前記マイクロプロセッサが前記外部メモリにアクセスしようとするときに外部メモリアドレスを与える中央処理装置と、さらに
前記外部メモリアドレスが前記バスを介して前記外部メモリに伝えられようとするときを制御して前記外部メモリの前記同期アクセスを可能にし、かつ前記第1の周波数に等しい前記第2の周波数を示す第1のレベルかまたは予め定められた多数の前記第1の周波数である前記第2の周波数を示す第2のレベルかを有する速度制御信号を受信するための速度制御入力を含むバスインタフェース装置とを含み、前記バスインタフェース装置は前記速度制御信号レベル、前記メモリクロックおよび前記内部クロックに応答して、前記メモリクロックと前記内部クロックとがお互いに第1の予め定められた位相関係にあって前記マイクロプロセッサによる前記外部メモリの前記同期アクセスを得る場合に、前記外部メモリアドレスが前記バス上に置かれることを引起こすための制御手段を含む。
上記マイクロプロセッサは以下のように構成することもできる。
(26)前記バスインタフェース装置は複数個の制御ラインによって前記外部メモリに結合されるように配列され、かつ前記制御手段は前記メモリクロックと前記内部クロックとがお互いに前記第1の予め定められた位相関係にある場合に、前記バスインタフェース装置が制御ラインの選択されたラインを介して前記外部メモリに第1のアクセス制御信号を与えることを引起こすように配列される。
(27)前記バスインタフェース装置は前記制御ラインの選択されたラインを介して前記外部メモリから第2のアクセス制御信号を受信するように配列され、かつ前記制御手段は前記メモリクロックと前記内部クロックとがお互いに対して第2の予め定められた位相関係にある場合に、前記バスインタフェース装置が前記メモリから前記第2の制御信号を受信することを可能にするように配列される。
(28)前記予め定められた多数は2に等しい。
(29)前記メモリクロックパルスは第1の位相部分と第2の位相部分とを含み、前記外部メモリは前記第1の位相部分の間前記マイクロプロセッサから前記メモリアドレスと前記第1のアクセス制御信号とを受信し、かつ前記第2の位相部分の間前記マイクロプロセッサへ前記第2のアクセス制御信号を与えるように配列され、かつ前記制御手段は前記第1の位相部分の間前記マイクロプロセッサが前記アドレスと前記制御信号とを前記外部メモリに与えることを可能にし、かつ前記第2の位相部分の間前記マイクロプロセッサが前記外部メモリから前記第2の制御信号を受信することを可能にするための可能化手段を含む。
(30)前記内部クロックは第1および第2のプロセッサクロックパルスを発生するように配列され、前記第1および第2のプロセッサクロックパルスは前記第2の周波数であり、第1および第2のクロックパルス位相を有し、かつ反対の位相関係にあり、前記可能化手段は前記速度制御信号第1のレベルに応答して各前記第1のクロックパルス第1の位相と前記メモリクロックパルス第1の位相部分との一致があるとすぐ前記マイクロプロセッサが前記アドレスおよび第1の制御信号を前記外部メモリに与えることを可能にし、かつ各前記第2のクロックパルス第1の位相と前記メモリクロックパルス第2の位相部分との一致があるとすぐ前記マイクロプロセッサが前記外部メモリから前記第2の制御信号を受信することを可能にする。
(31)前記可能化手段は前記速度制御信号第2のレベルにさらに応答して1つおきの前記第1のクロックパルス第1の位相と前記メモリクロックパルス第1の位相部分との一致があるとすぐ前記マイクロプロセッサが前記アドレスと第1の制御信号とを前記外部メモリに与えることを可能にし、かつ1つおきの前記第2のクロックパルス第1の位相と前記メモリクロックパルス第2の位相部分との一致があるとすぐ前記マイクロプロセッサが前記第2の制御信号を前記外部メモリから受信することを可能にする。
(32)前記可能化手段は駆動出力制御信号を発生して前記マイクロプロセッサが前記アドレスと第1の制御信号とを前記外部メモリに与えることを可能にし、かつ可能化入力制御信号を発生して前記マイクロプロセッサが前記第2の制御信号を前記外部メモリから受信することを可能にするための手段を含む。
(33)前記可能化手段は前記メモリクロックパルス、前記速度制御信号ならびに前記第1および第2のプロセッサクロックパルスに応答して前記駆動出力および可能化入力制御信号を発生する。
(34)前記マイクロプロセッサは双方向データバスによって前記外部メモリに結合されるように配列され、前記マイクロプロセッサは読出しアクセスの間前記可能化入力制御信号に応答して前記外部メモリからデータを受信し、かつ記憶アクセスの間前記駆動出力制御信号に応答して前記外部メモリへデータを与えるように配列される。
(35)前記中央処理装置に結合されて前記外部メモリアドレスを受信し、かつ前記バスインタフェース装置に結合されて前記駆動出力制御信号を受信し前記駆動出力制御信号に応答して前記アドレスバス上に前記外部メモリアドレスを置くアドレスバスインタフェースをさらに含む。
(36)前記中央処理装置に結合されて前記中央処理装置から前記外部メモリに与えられるべきデータを受信し、かつ前記外部メモリから受信されたデータを前記中央処理装置へ与えるためのデータバスインタフェースをさらに含み、前記データバスインタフェースはまた前記バスインタフェース装置に結合されて前記駆動出力制御信号に応答して前記中央処理装置からのデータを前記データバス上に置き、かつ前記可能化入力制御信号に応答して前記外部メモリからのデータを受信する。
(37)前記バスインタフェース装置、前記アドレスバスインタフェースおよび前記データバスインタフェースは前記駆動出力制御信号によって可能化されて前記メモリクロックパルスと同期に前記第1の制御信号、前記アドレスおよび前記データを前記外部メモリに与えるように配列されたバッファを出力する。
(38)前記出力バッファは前記駆動出力制御信号に応答して前記第1の制御信号、アドレスおよびデータを最初に駆動するための激しい駆動手段と前記駆動出力制御信号の終結後前記第1の制御信号、アドレスおよびデータを維持するための弱い駆動手段とを含む。
(39)前記出力バッファは前記外部メモリに与えられるべき前記第1の制御信号、前記アドレスおよび前記データの入力レベルを受信するための入力を含み、前記マイクロプロセッサは前記駆動出力制御信号の前に前記入力レベルを前記出力バッファ入力に与えるように配列され、かつ前記出力バッファは前記入力に結合されて前記入力レベルを一時的に保持するためのラッチを含む。
(40)前記バッファは前記駆動出力制御信号に応答して前記ラッチから前記入力を分離して前の入力レベルが前記外部メモリに与えられるときに前記入力での入力レベルが更新されることを許容するための分離手段を含む。
(41)前記出力バッファは前記更新された入力レベルを保持する前記入力ラッチに先立って前記駆動出力制御信号の終結に応答して前記前の入力レベルを前記激しい駆動手段から前記弱い駆動手段へ転送するように配列される。
(42)前記出力バッファは前記転送された入力レベルを保持するための第2のラッチと前記駆動制御信号の終結に応答して前記更新された入力レベルから前記第2のラッチを分離するための第2の分離手段とを含む。
(43)前記バスインタフェース装置は前記外部メモリから前記第2のアクセス制御信号の1つを受信するための少なくとも1つの入力を含み、前記入力は前記可能化入力制御信号、前記メモリクロックパルスの前記第2の位相部分および前記第2のプロセッサクロックパルスの前記第1の位相部分とに応答して前記外部メモリから前記第2のアクセス制御信号を受信するための論理手段を含む。
(44)前記外部メモリからの前記第2のアクセス制御信号は外部アクセスの成功した完成を示す動作可能信号であり、前記論理手段は前記動作可能信号に応答して内部動作可能信号を与えるように配列され、かつ前記マイクロプロセッサは前記内部動作可能信号に応答して前記完成された外部アクセスを終結させる。
(45)前記バスインタフェース装置は制御装置を含み、前記制御装置は少なくとも第1および第2の状態を有する状態マシーンを含み、前記第2の状態は外部アクセスを始めてかつ外部アクセスを完成まで継続させるためのものでありかつ前記第1の状態は前記完成されたアクセスを終結させるためのものである。
(46)前記中央処理装置は外部アクセス要求信号を与えるように配列され、前記制御装置は前記外部アクセス要求信号に応答して未決定の要求信号を発生するためのラッチ手段を含み、かつ前記状態マシーンは前記未決定の要求信号、前記可能化入力制御信号および前記第1の状態にあることに応答して前記第2のプロセッサクロックパルスの次の第1の位相になるとすぐ前記第2の状態に続いて前記外部アクセスを開始する。
(47)前記状態マシーンは前記外部アクセスを開始するとすぐ前記ラッチ手段から前記未決定の要求信号を取除くように配列される。
(48)前記制御装置はさらに前記論理手段に結合されて前記内部動作可能信号に応答して修飾された動作可能信号を与えるための動作可能手段を含む。
(49)前記状態マシーンは前記修飾された読出信号、前記未決定の要求信号がないことおよび前記第2の状態であることに応答して前記第2のプロセッサクロックパルスの次の第1の位相になるとすぐ前記第1の状態に続いて前記完成された外部アクセスを終結させる。
(50)前記マイクロプロセッサは、外部ソースから前記メモリクロックパルスを受信するための入力を含む。
(51)前記マイクロプロセッサは前記メモリクロックパルスを与えるためのクロック発生器と前記メモリクロックパルスを前記外部メモリに与えるための出力とを含む。
(52)本発明の出力バッファは、外部バスを介して外部メモリに出力を駆動するためにマイクロプロセッサで使用するための出力バッファであって、
入力信号レベルを受信するための入力と、
前記入力信号の前記レベルで前記外部バスを駆動するための出力と、
制御信号を受信するための制御入力とを含み、前記制御入力は前記出力に結合されて前記制御信号に応答して前記入力信号の前記レベルで前記出力が前記外部バスを駆動することを引起こし、さらに
前記入力と前記出力との間に結合されてかつ前記制御入力に結合されて前記制御信号に応答して前記出力から前記入力を分離して前記外部バスが前記入力信号レベルで駆動されている間に前記入力が新しい入力信号レベルで更新されることを可能にするための分離手段を含む。
上記出力バッファは、下記のように構成してもよい。
(53)前記出力は前記制御信号に応答して前記入力信号の前記レベルで前記バスを最初に駆動するための激しい駆動手段と、前記制御信号の終結後前記入力信号の前記レベルで前記バスを駆動するための弱い駆動手段とを含む。
(54)前記出力バッファはさらに前記分離手段と前記出力との間に結合されて前記入力レベルを一時的に保持するための第1のラッチを含む。
(55)前記出力バッファは前記制御信号の終結に応答して前記入力信号レベルを前記激しい駆動手段から前記弱い駆動手段へと転送するように配列される。
(56)前記出力バッファは前記転送された入力レベルを保持するための第2のラッチと、前記制御信号の終結に応答して前記更新された入力レベルから前記第2のラッチを分離するための第2の分離手段とを含む。
新規であると考えられるこの発明の特徴は前掲の特許請求の範囲で詳細に述べられる。この発明は他の目的および利点と共に添付の図面と共に以下の説明を参照することによって最もよく理解され、幾つかの図において類似の参照番号は同一の要素を示す。
好ましい実施例の詳細な説明
ここで図1を参照して、図1はこの発明を具体化する処理システム10を例示する。処理システム10は一般にメモリクロック12、外部クロック14、マイクロプロセッサ16、および外部メモリ18を含む。
外部メモリ18はメモリ制御装置20および主要メモリ22を含む。かかる外部メモリは当該技術分野において周知である。
メモリクロック12は外部メモリ18の動作周波数かつゆえに外部メモリ処理速度を決定する周波数でメモリクロックパルスを与えるように好ましくは配列される。その目的のために、クロック12はMEMCLKと示された入力でメモリ制御装置20とマイクロプロセッサ16とに結合される。当該技術分野において周知であるように、メモリクロック12は高い位相と低い位相とを含むメモリクロックパルスを与える。
外部クロック14は水晶発振器24、水晶26およびバッファ28を含む。外部クロック14はINCLKと示された入力でマイクロプロセッサ16に結合される。外部クロック14はマイクロプロセッサ16の動作または処理周波数を決定する周波数でマイクロプロセッサ16にクロックパルスを与える。外部クロック14からのクロック信号はここでPH1およびPH2と呼ばれる1組のプロセッサクロックを内部で発生するためにマイクロプロセッサ16によって利用される。プロセッサクロックPH1およびPH2は好ましくは外部クロック14によって決定された同一の周波数であり、かつプロセッサクロックPH1およびPH2の各々が高い位相と低い位相とを有する状態で逆の位相である。結果として、PH1が高い位相にある場合に、PH2は低い位相にありかつ対応してPH2が高い位相にあるときはPH1は低い位相にある。外部メモリ18へのアクセスを行なう場合に、マイクロプロセッサは、以下に見られるように、PH1の高い位相とメモリクロックの高い位相との一致がある場合には外部メモリ18へ出力を駆動し、かつPH2の高い位相とメモリクロックの低い位相との一致がある場合にはマイクロプロセッサ16へ出力を駆動する。PH1、PH2およびメモリクロックの間のこれらの位相関係を固守することによって、マイクロプロセッサ16は外部メモリ18への同期アクセスを行なうことが可能である。
図1に例示されるように、メモリクロックパルスは外部クロック12によって与えられる。しかしながら、この発明に従って、メモリクロックパルスはまたマイクロプロセッサ16によって発生されることも可能であり、そこではMEMCLKはメモリ制御装置20にメモリクロックパルスを与えるための出力として利用される。かかる場合に、メモリクロック12は必要とされないであろう。マイクロプロセッサ16は外部クロック14から受信されたクロックパルスに応答してメモリクロックパルスを発生するように配列される。
マイクロプロセッサ16は論理1または論理0レベルであり得る制御信号(PWRCLK)を受信するための入力30を含む。入力30での制御信号は例示された位置にある場合正の電圧源に結合され、スイッチ32が矢印34によって示されたもう一方の位置にある場合には接地に結合される。スイッチ32が図に例示された位置にある場合に、論理1は入力30に与えられてマイクロプロセッサ16がメモリクロックパルスを発生し、かつそのメモリクロックパルスをMEMCLKに指定された出力で与えることを引起こす。スイッチ32が接地に結合されるように代替の位置にある場合に、入力30は論理0レベルであり、外部クロック12のような外部クロックソースから外部から発生されたメモリクロックパルスを受信するための入力としてNEMCLKが機能することを引起こすであろう。
マイクロプロセッサは論理1の第1のレベルかまたは論理0の第2のレベルかを有する速度制御信号(*DIV2)を受信するためのさらなる入力36を含む。入力36でのレベルは論理1レベルを発生するために正の電圧源に結合されるか、または論理0レベルを発生するために接地に結合される別のスイッチ38によって決定される。入力36での速度制御信号のレベルは、外部メモリ18の動作周波数がマイクロプロセッサ動作周波数に等しいかどうか(速度制御信号が論理1である場合に)、または外部メモリ18の動作周波数がマイクロプロセッサ16の動作周波数の2分の1であるかどうか(速度制御信号が論理0である場合に)をマイクロプロセッサ16に知らせる。また、もし入力30が論理1であってマイクロプロセッサ16がメモリクロックパルスを発生することを引起こせば、マイクロプロセッサ16は、もし入力36が論理1であればその動作周波数で、かつもし入力36での速度制御信号が論理0であればマイクロプロセッサの動作周波数の2分の1でメモリクロックパルスを発生するであろう。結果として、マイクロプロセッサ16は外部から発生されたメモリクロックパルスを受信し得るかまたはメモリクロックパルスを発生し得るかである。さらに、マイクロプロセッサ16は入力36での入力信号レベルに依存して動作周波数かまたは動作周波数の2分の1かでメモリクロックパルスを発生するように配列される。以下に見られるように、入力36での速度制御入力レベルはまた外部メモリの動作周波数がマイクロプロセッサ動作周波数に等しい場合、および外部メモリの動作周波数がマイクロプロセッサ動作周波数の2分の1である場合に外部メモリ18の同期アクセスを達成するようにマイクロプロセッサ16によって利用される。
マイクロプロセッサ16はマイクロプロセッサ16と外部メモリ18との間にアクセス制御信号を伝える複数個のアクセス制御ライン40、42および44によってメモリ制御装置20に結合される。制御ライン40および42はマイクロプロセッサ16からライン40を介する制御信号*REQおよびライン42を介するR*Wを含むメモリ制御装置20へ第1のアクセス制御信号を伝える。*REQはメモリアクセスを要求するとすぐマイクロプロセッサ16によって発生される制御信号である。この信号が活性(ロー)である場合に、アクセスのためのアドレスはマイクロプロセッサ16と主要メモリ22との間に結合されたアドレスバス46上に現われる。R*Wはマイクロプロセッサアクセスが読出し(ロード)アクセスであるか書込(記憶)アクセスであるかを示す制御信号である。もしアクセスが読出しアクセスであれば、この信号は高く、かつもしアクセスが書込アクセスであればこの信号は低いであろう。
制御ライン44はメモリ制御装置20からマイクロプロセッサ16へ第2のアクセス制御信号を伝える。第2のアクセス制御信号は読出アクセスに対して有効なデータまたは命令はマイクロプロセッサ16と主要メモリ22との間に結合される命令/データバス48上に現在あることを示す*RDYである。書込アクセスに対しては、この信号はアクセスが完全でありかつデータはもはや命令/データバス48上のマイクロプロセッサ16によって駆動される必要がないことを示す。
アドレスバス46はマイクロプロセッサ16によって発生されたアクセスされるべき主要メモリ記憶場所のアドレスを伝える単一方向の多数ビットバスである。命令/データバス48はマイクロプロセッサ16から主要メモリ22へアドレスバス46上に与えられたアドレスに対応するメモリ場所に記憶されるべきデータを伝え、かつ主要メモリからマイクロプロセッサ16へアドレスバス46上に伝えられたアドレスに対応する主要メモリのメモリ場所からの命令およびデータを伝えるための双方向多数ビットバスである。
ここで図2を参照して、図2はブロック図の形態でこの発明を具体化する図1のマイクロプロセッサを例示する。マイクロプロセッサ16は一般に中央処理装置50、バスインタフェース装置52、アドレスバスインタフェース54およびデータバスインタフェース56を含む。
中央処理装置50は外部メモリアクセスのためのアドレスを発生し、かつマイクロプロセッサが実行している現在のプログラムのデータを実行または処理する。中央処理装置50は多数ビット内部アドレスバス58によってアドレスバスインタフェース54に結合されて、アドレスバスインタフェース54にアクセスするための外部メモリアドレスを伝える。中央処理装置50はまた内部多数ビットデータバス60によってデータバスインタフェース56に結合されてデータバスインタフェース56に外部メモリに記憶されるべきデータを伝え、かつ外部アクセスの間外部メモリから受信されたデータまたは命令をデータバスインタフェースから受信する。中央処理装置50はさらに複数個の内部制御ライン62、64および66によってバスインタフェース装置52に結合される。内部制御ライン66は中央処理装置によって発生されたアクセス要求をバスインタフェース装置に伝える。内部制御ライン62および64はバスインタフェース装置52から中央処理装置50にデータ動作可能制御信号および命令動作可能制御信号をそれぞれ伝える。
バスインタフェース装置52はマイクロプロセッサ16による外部メモリの同期アクセスを確実にする制御信号を発生する。バスインタフェース装置は要求および読出/書込制御信号で制御ライン40および42を駆動し同一のものを外部メモリに伝える。これはまた読出または書込アクセスが完成するとすぐ制御ライン44を介して外部メモリから動作可能信号を受信する。加えて、バスインタフェース装置52は第1および第2のプロセッサクロックパルスPH1およびPH2を発生してマイクロプロセッサの内部タイミングを制御する。前述のように、第1および第2のプロセッサクロックパルスPH1およびPH2はそれぞれ同一の周波数でありかつ各々が高い位相と低い位相とを有する状態で反対の位相である。結果として、PH1が高い位相にある場合には、PH2は低い位相にありかつPH1が低い位相にある場合にはPH2は高い位相にある。
バスインタフェース装置はまた、もしPWRCLK制御信号のレベルが論理1であれば、メモリクロックパルスを発生するように配列される。バスインタフェース装置52はさらにライン66を介して中央処理装置アクセス要求信号を受信するように配列され、かつ制御ライン62および64を介して中央処理装置にデータ動作可能制御信号および命令動作可能制御信号を与える。
以下に見られるように、バスインタフェース装置は速度制御入力信号を受信する入力36に結合されかつ速度制御信号とメモリクロックパルスとに応答して、速度制御信号が論理1でありかつマイクロプロセッサ処理周波数がメモリクロック周波数に等しい場合にはメモリクロックと同期してマイクロプロセッサが外部メモリにアクセスすることを引起こすための、かつ速度制御信号が論理0でありかつマイクロプロセッサ処理周波数がメモリクロック周波数の2倍である場合にはメモリクロックと同期してマイクロプロセッサが外部メモリにアクセスすることを引起こすためのメモリアクセス制御手段を含む。バスインタフェース装置はまた以下に説明されるべき制御信号をアドレスバスインタフェース54とデータバスインタフェース56とに与えて、アドレスやデータのような出力がマイクロプロセッサから外部に駆動されるときを制御する。
アドレスバスインタフェース54は内部アドレスバス58を介して中央処理装置50から外部メモリアドレスを受信する。アドレスバスインタフェースは入力70でバスインタフェース装置から受信されたラッチ内部アドレス制御信号(LATCHIA)に応答してアクセスのためのアドレスをラッチする内部ラッチ(図示せず)を含む。アドレスバスインタフェースはまたバスインタフェース装置から受信された増分アドレス出力ラッチ制御信号(INCAOL)を受信するための他の入力72をも含む。増分アドレス出力ラッチは出力ラッチが中央処理装置50に順次アクセスの各々に対してアドレスを発生することを要求することなく、次のアドレスへ増分することを引起こすように順次アクセスのために利用される。アドレスバスインタフェース54は、バスインタフェース装置からアドレス出力ラッチを受信して、アドレスバスインタフェースがアドレスが現在そのラッチでラッチされた状態で外部アドレスバス46を駆動することを引起こすバス制御信号(AOLTOA)をアドレスするための他の入力74をさらに含む。最後に、アドレスバスインタフェースはバスインタフェース装置から高いインピーダンスアドレスバス制御信号(HIZAB)を受信するための他の入力76を含み、この信号は外部アドレスバス46を駆動する出力のすべてが高いインピーダンス状態を仮定して外部アドレスバスからこれらの出力を分離することを引起こす。
図2で注目されるように、アドレスバスインタフェースは速度制御信号およびメモリクロックパルスをさらに受信する。アドレスバスインタフェースはまた内部制御ライン78を介してバスインタフェース装置からアドレスバスインタフェース制御信号をも受信する。アドレスバスインタフェース54はさらに例示されたように第1および第2のプロセッサクロックパルスPH1およびPH2を受信する。
データバスインタフェース56はアドレスバスインタフェース54と類似の機能を行なう。データバスインタフェースは内部データバス60によって中央処理装置に結合されて、記憶アクセスの間中央処理装置からデータを受信し、かつ読出しアクセスの間中央処理装置へデータまたは命令を伝える。データバスインタフェースはまた入力80でラッチ内部データバス制御信号(LATCHID)を含む制御信号をバスインタフェース装置から受信する。アドレスバスインタフェース54のように、データバスインタフェース56は内部データバス56を介して中央処理装置から受信されたデータをラッチするための内部ラッチ(図示せず)を含む。データバスインタフェースはさらにバスインタフェース装置からデータバス制御信号(DOLTOD)へのデータ出力ラッチを入力82で受信して、データバスインタフェースがその内部ラッチにあるデータを外部命令/データバス48に転送することを引起こすようにさらに配列される。他の入力84で、データバスインタフェース56は、バスインタフェース装置が外部命令/データバス48を介して受信されたデータをラッチすることを引起こすラッチデータバス制御信号(LATCHD)をバスインタフェース装置から受信する。データバスインタフェースはまた入力86でバスインタフェース装置から高いインピーダンスデータバス制御信号(HIZDB)を受信して、外部バス48を駆動するデータバスインタフェースの出力が高いインピーダンス状態を想定して外部命令/データバス48からこれらの出力を分離することを引起こす。データバスインタフェース56はまた内部制御ライン88を介してバスインタフェース装置52からデータバス制御信号を受信する。また例示されているように、データバスインタフェースはメモリクロックパルス、速度制御信号ならびに第1および第2のプロセッサクロック信号PH1およびPH2を受信する。
前述のように、メモリクロックパルスは高い位相である第1の位相部分と低い位相である第2の位相部分とを含む。この発明の好ましい実施例に従って、外部メモリはメモリクロックパルスの高い位相部分の間マイクロプロセッサから入力を受信し、かつメモリクロックパルスの低い位相部分の間マイクロプロセッサへ出力を駆動するように配列される。同期のアクセスを与えるために、この好ましい実施例に従って、マイクロプロセッサは第1のプロセッサクロックパルスPH1の高い位相部分とメモリクロックパルスの高い位相部分との一致がある場合には外部メモリに出力を駆動することを可能にされ、かつ第2のプロセッサクロックパルスPH2の高い位相部分とメモリクロックパルスの低い位相部分との一致がある場合には外部メモリから入力を受信することを可能にされる。好ましくは、メモリクロックパルスと第1のプロセッサクロックパルスとの立上がり縁は本質的に一致しているか、または第1のプロセッサクロックパルスの立上がり縁はメモリクロックパルスの立上がり縁に対して僅かに遅れているかである。
プロセッサクロックパルスとメモリクロックパルスとが同一の周波数である場合に、メモリクロックパルスのすべての立上がり縁はマイクロプロセッサが第1のプロセッサクロックパルスの次の高い位相の間に出力を駆動するための有効なエッジまたは時間を表わし、第2のプロセッサクロックパルスのすべての立上がり縁は外部メモリから入力の受信を可能にするための適切なエッジまたは時間を規定する。しかしながら、もし速度制御信号がメモリクロックパルスは処理クロックパルスの周波数の2分の1であることを示す論理0であれば、前述の関係は必ずしも有効であるとは限らない。当業者によって理解されるように、これらの条件の下では第1のプロセッサクロックパルスPH1の高い位相がメモリクロックパルスの高い位相に一致しないが、その代わりにメモリクロックパルスの低い位相部分に一致するときがあり、同じことが第2のプロセッサクロックパルスに対しても当てはまるであろう。結果として、マイクロプロセッサが処理周波数の2分の1の周波数で動作しているメモリにアクセスしようとする場合に、マイクロプロセッサが外部メモリに出力を駆動する適切な時間を決定し、かつマイクロプロセッサがその適切な時間期間の間に外部メモリから入力を受信することを可能にすることが必要である。
外部メモリへのアクセスについては、メモリクロックパルスがプロセッサクロックパルスと同一の周波数である場合に、中央処理装置は、第1のプロセッサクロックパルスPH1の高い位相の間、ライン66上に要求信号を与え、かつ外部メモリアドレスを内部アドレスバス58上のアクセスに与える。第2のプロセッサクロックパルスPH2の直後の高い位相の間に、バスインタフェース装置はライン66から要求を検出してアドレスバスインタフェース54の入力70で制御信号LATCHIAをアサートしアドレスバスインタフェースが外部メモリアドレスをラッチすることを引起こす。もし外部アドレスバスが利用可能であり、かつもし未決定のアクセスがなければPH1の直後の高い位相になるとすぐ、バスインタフェース装置はアドレスバスインタフェース54の入力74で制御信号AOLTOAをアサートして、アドレスバスインタフェースがアクセスのための外部メモリアドレスで外部アドレスバス46を駆動することを引起こす。またこの時間期間の間に、バスインタフェース装置は制御ライン40(活性ロー)上の要求信号を与え、かつアクセスが読出し(ロード)アクセスであるかまたは書込(記憶)アクセスであるかをライン42上に示す。もしそれが読出しアクセスであれば、ライン42は論理1であり、かつもしそれが書込アクセスであればライン42は論理0であろう。
もしアクセスが読出しアクセスであれば、PH2の次の直後の高い位相とPH2のすべての後続の高い位相の間、中央処理装置50は制御ライン62上のデータ動作可能制御信号の状態をチェックするであろう。もし読出しが完了するために非常に多くのマイクロプロセッササイクルをとれば、中央処理装置はライン62を介してデータ動作可能制御信号を受信するまでこの状態での処理をやめるであろう。バスインタフェース装置がPH2の高い位相の間制御ライン44を介して動作可能信号を受信する場合に、バスインタフェース装置は次に中央処理装置50によって検知されるデータ動作可能制御信号をライン62を介してアサートする。ライン62上にアサートされたデータ動作可能信号を見るとすぐ、中央処理装置はアクセスが完成しかつ要求されたデータは命令/データバス48上にラッチされてデータを受信しかつ処理を続けることを知る。
ここで図3を参照して、図3はバスインタフェース装置の内部クロック発生器100とバスインタフェース装置の可能化手段140とを例示する。内部クロック発生器100は一般にバッファ102、クロック発生器104、2で割る周波数分周器106、マルチプレクサ108およびトライステートバッファ110を含む。
バッファ102は外部クロックソース14(図1)から入力クロック信号を受信するための入力112を含む。バッファ102はクロック発生器104の入力114に結合される。クロック発生器104は第1のプロセッサクロックパルスPH1を与えるための第1の出力116と第2のプロセッサクロックパルスPH2を与えるための第2の出力118とを含む。前述のように、クロックパルスPH1およびPH2はマイクロプロセッサの処理周波数を規定し、高い位相と低い位相とを有し、かつ反対の位相関係にある。
マルチプレクサ108はバッファ102の出力に結合される第1の入力120を含む。マルチプレクサ108は2で割る周波数分割器106の出力に結合される第2の入力122を含み、その入力124は順に外部クロックソース14(図1)によって与えられた入来クロックパルスに結合される。マルチプレクサ108の出力126はトライステートバッファ110の入力128に結合される。マルチプレクサ108はまた速度制御信号制御ライン132に結合される選択入力130を含む。トライステートバッファ110は制御信号PWRCLKを運ぶ制御ライン136に結合される可能化入力134を含む。最後に、トライステートバッファはマイクロプロセッサがメモリクロックパルスを外部ソースから受信する場合には入力として機能し、かつマイクロプロセッサがメモリクロックパルスを与える場合には出力として機能するポート139(MEMCLK)に結合される出力138を含む。
マイクロプロセッサが外部ソースからのメモリクロックパルスを備える場合には、ライン136を介してトライステートバッファ110の可能化入力134に与えられる制御信号PWRCLKは論理0であろう。このことはトライステートバッファが出力138でトライステートし、かつポート139とトライステートバッファの入力128との間に高いインピーダンスを課すことを引起こす。これによりポート139は外部から発生されたメモリクロックパルスを受信するための入力として利用されることが可能になる。
マイクロプロセッサがメモリクロックパルスを与えようとする場合には、制御信号PWRCLKは論理1であり、トライステートバッファの可能化入力134上に与えられる。これはトライステートバッファがその入力128で受信されたクロックパルスをその出力138に、かつゆえに現在出力として機能するポート139に、かつマイクロプロセッサのすべての他のメモリクロックパルス入力にかつ外部メモリに転送することを引起こす。もしマイクロプロセッサがプロセッサクロックパルスPH1およびPH2と同一の周波数でメモリクロックパルスを与えようとすれば、マルチプレクサ108の選択入力130上に与えられるライン132上の速度制御信号は論理1であろう。これによりマルチプレクサは入力120をその出力126に結合し、プロセッサクロックパルスと同一の周波数でメモリクロックパルスを与える。
もしマイクロプロセッサがマイクロプロセッサ処理周波数の2分の1である周波数でメモリクロックパルスを与えようとすれば、マルチプレクサ108の選択入力130上に与えられるライン132上の速度制御信号は論理0であろう。これはマルチプレクサ108がその入力122をその出力126に結合させることを引起こし、それによってトライステートバッファ110に外部ソース14(図1)によって与えられた入力クロック信号を伝え、この入力クロック信号はここで2で割られてプロセッサクロックパルスの2分の1の周波数でメモリクロックパルスを与える。
可能化手段140はマイクロプロセッサが外部メモリへ出力を駆動することが可能なときを制御するための第1の制御信号(DRIVE OUTPUT)を出力142で与え、外部メモリから入力を受信するためのマイクロプロセッサを可能化するための第2の制御信号(ENAINPUT)を出力144で与える。以下に見られるように、これらの信号はマイクロプロセッサがマイクロプロセッサ処理速度でまたはマイクロプロセッサ処理速度の半分で動作しているメモリにアクセスしているかどうかにかかわらず発生される。以下、マイクロプロセッサがマイクロプロセッサ処理速度で動作しているメモリにアクセスしている場合には、この状態を1Xモードと呼び、マイクロプロセッサがマイクロプロセッサ処理速度の2分の1で動作しているメモリにアクセスしている場合には、この状態を.5Xモードと呼ぶこととする。
出力142で第1の制御信号を発生するために、可能化手段140はインバータ146、NANDゲート148、pチャネル電界効果トランジスタ150、ラッチ152、インバータ154、ANDゲート156、ANDゲート158、NORゲート160、インバータ162およびpチャネル電界効果トランジスタ164を含む。
NANDゲート148は第1のプロセッサクロックパルスPH1に結合される入力、インバータ146の出力に結合された第2の入力およびメモリクロックパルスに結合された第3の入力を含む。インバータ146の入力はマイクロプロセッサの出力が高いインピーダンスになり得るかどうかを決定する制御信号HIZCHLに結合される。もしそれらが高いインピーダンスになることができなければ、インバータ146の入力での制御信号は論理0レベルであり、NANDゲート148の第2の入力が高いレベルになることを引起こすであろう。
マイクロプロセッサの1Xモードの動作において、PH1の高い位相とメモリクロックパルスの高い位相部分との一致があるとすぐ、NANDゲート148はローレベルをpチャネル電界効果トランジスタ150のゲートに与えてトランジスタ152が導通することを引起こすであろう。これは出力142での第1の制御信号を高いレベルで維持してマイクロプロセッサが外部メモリに出力を駆動することを可能にするためにラッチ152上にハイレベルを与える。ANDゲート156は1Xモードで論理1である速度制御信号に結合される第1の入力と、第2のプロセッサクロックパルスPH2に結合される他の入力とを含む。ANDゲート158は第1のプロセッサクロックパルスPH1に結合される入力と、インバータ166を介して速度制御信号に結合される第2の入力とメモリクロックパルスの逆に結合される第3の入力とを含む。ANDゲート156および158の出力はNORゲート160の入力に結合される。NORゲート160の出力はその出力がnチャネル電界効果トランジスタ164のゲートに結合されるインバータ162の入力に結合される。
PH1がローになると、PH2はハイになるであろう。またメモリクロックパルスの逆もまたハイになってANDゲート156がNORゲート160にハイレベルを与えることを引起こし、かつANDゲート158がNORゲート160にローレベルを与えることを引起こすであろう。これはNORゲート160がインバータ162の入力にローレベルを与えることを引起こし、インバータ162は順にトランジスタ164のゲートにハイレベルを与える。これによりトランジスタ164はオンになり、ラッチ152が高い入力レベルから低い入力レベルになって、順に出力142で第1の制御信号がローになることを引起こす。結果として、1Xモードにおいて、第1の制御信号(DRIVE OUTPUT)はPH1の高い位相とメモリクロックパルスの高い位相部分との一致の間ハイであり、かつPH1の低い位相とメモリクロックパルスの低い位相部分との間ローレベルである。以下でわかるように、これによりマイクロプロセッサが第1のプロセッサクロックパルスとメモリクロックパルスとがどちらもハイレベルである場合に外部メモリに出力を駆動することを可能にし、かつマイクロプロセッサが外部メモリに出力を駆動することができないようにする。
.5Xモードにおいて、第1の制御信号は出力142で上に述べられたのと同じ条件下で、つまり第1のプロセッサクロックパルスの高い位相とメモリクロックパルスの高い位相部分との一致の間ハイになるであろう。しかしながら、第1の制御信号はメモリクロックパルスの低い位相部分の開始までアサートされないことが注目されるであろう。これによりマイクロプロセッサは.5Xモードでメモリクロックパルスの全体の高い位相部分の間の時間の延長された期間の間、外部メモリクロックと依然として同期のままでありながら、出力を駆動することが可能になる。
出力144で第2の制御信号を発生するために、可能化手段140はANDゲート170、nチャネル電界効果トランジスタ172、174および176、ラッチ178ならびに1組のインバータ180および182を含む。1Xモードにおいて、論理1速度制御信号はnチャネル電界効果トランジスタ174のゲート上に与えられる。これによりトランジスタ174はオンし、ローレベルをラッチ178の入力上に与える。これによりラッチ178の出力は第2のプロセッサクロック信号PH2の各高い位相の間出力144に転送されるハイレベルに継続的にあることを引起こす。結果として、1Xモードにおいて、マイクロプロセッサはPH2の各高い位相の間外部メモリから入力を受信するために可能化される。
.5Xモードにおいて、速度制御信号のローレベルはラッチ178がPH1の高い位相の間にメモリクロックのレベルを抽出することを可能にする。もしメモリクロックがハイであれば(立上がり縁に遭遇したそのとき)、PH2の次の高い位相は出力144での第2の制御信号が外部メモリからの動作可能信号のような入力信号を無視して外部アクセスを試みないときであることを示す論理0になることを引起こすであろう。もしメモリクロックがPH1の高い位相の間にローを抽出されれば、マイクロプロセッサは.5Xモードで動作しているので、PH1の次の高い位相はメモリクロックの立上がり縁にほぼ対応するであろう。これは入力を抽出して出力ドライバを可能化するかまたは以下に述べられるような態様で状態マシーン上に移行する有効なときである。
結果として、可能化手段140は出力を駆動するための可能化と、マイクロプロセッサが1Xモードであろうと.5Xモードであろうと適当な時間の間入力を受信するための可能化を与える。.5Xモードにある場合に、入力は1つおきのPH2の高い位相の間に外部メモリから入力を受信するために可能化され、かつ出力はPH1の1つおきの高い位相の間でかつメモリクロックパルスの立下がり縁まで外部メモリに出力を駆動するために可能化される。
ここで図4を参照して、図4は概略の回路図の形態で出力バッファ200を例示し、出力バッファ200は外部バスおよび制御ラインを外部メモリに駆動するマイクロプロセッサ16の出力の各々でこの好ましい実施例に従ってこの発明を実施する際に役立つように利用され得る。出力バッファ200は一般に入力レベルを受信するための入力202、以下に述べるような態様で適当な時間に入力202で受信された入力レベルで外部制御ライン40を駆動するための出力204、入力レベル202での入力レベルが出力204によって外部制御ライン40上に駆動されるべきときを制御するための第1の制御信号(DRIVE OUTPUT)を受信するための制御入力206および出力204が高いインピーダンスを外部制御ライン40上に課して外部制御ライン40から入力204を分離するときに制御信号(HIGH Z OUTPUT)を受信するための高いインピーダンス出力制御入力208を含む。
出力204は1組のnチャネル電界効果トランジスタ212および214を含む強いかまたは激しい(hard)駆動手段210と、pチャネル電界効果トランジスタ218とnチャネル電界効果トランジスタ220とを含む弱い(weak)駆動手段216とを含む。以下に見られるように、入力レベルがまず外部制御ライン40上に駆動される場合に、入力レベルは制御入力206で制御信号のアサーションの間に強い駆動手段210によって駆動され、その後入力206で制御信号が終了した後、入力レベルは弱い駆動手段216によって外部制御ライン40上に駆動されてその出力で入力レベルを保つ。弱い駆動手段は出力バッファが入力信号レベルが強い駆動手段210によって保持されていた場合より素早く入力208で高いインピーダンス出力制御入力信号に応答して高いインピーダンス状態にトライステートすることを許容する。
出力バッファ200はより特定的にインバータ222、nチャネル電界効果トランジスタ224、ラッチ226、他のインバータ228、トランスファゲート230、さらに他のインバータ232およびnチャネル電界効果トランジスタ234を含む。出力バッファはさらに他のトランスファゲート236、他のインバータ238およびnチャネル電界効果トランジスタ240を含む。
出力バッファはさらに他のインバータ242、nチャネル電界効果トランジスタ244、他のラッチ246、インバータ248、インバータ250、NANDゲート252およびNORゲート254を含む。最後に、出力バッファ200は他のNORゲート256およびnチャネル電界効果トランジスタ258を含む。
インバータ222は制御入力206とトランジスタ224のゲートとの間に結合される。トランジスタ224は入力202とラッチ226との間に結合される。インバータ228はラッチ226と制御入力206に結合されるトランスファゲート130との間に結合される。インバータ232はインバータ228の出力とトランジスタ234のゲートとの間に結合される。トランジスタ234はトランスファゲート230と接地電位との間に結合される。トランジスタ234のソースはトランジスタ212のゲートに結合される。
ラッチ226の出力もまたインバータ238の入力と制御入力206にも結合されるトランスファゲート236とに結合される。インバータ238の出力はトランジスタ240のゲートとトランスファゲート236とに結合される。トランジスタ240はトランスファゲート236と接地電位との間に結合され、そのソースはトランジスタ214のゲートに結合される。トランジスタ212のドレインはトランジスタ214のソースに結合され、その共通接合点は外部制御ライン40に結合される。
トランジスタ244はインバータ228の出力とラッチ246の入力との間に結合される。ラッチ246の出力はその出力がNANDゲート252の1つの入力に結合されるインバータ248の入力に結合される。NANDゲート252の他の入力はNORゲート256の出力に結合される。トランジスタ258はNORゲート256の出力と接地電位との間に結合され、そのゲートは高いインピーダンス出力制御入力208に結合される。NORゲート256の出力はまたその出力がNORゲート254の1つの入力に結合されるインバータ250に入力に結合される。NORゲート254の他の入力はインバータ248の出力に結合される。NANDゲート252の第2の入力はまたインバータ248の出力に結合される。NANDゲート252の出力はトランジスタ218のゲートに結合され、NORゲート254の出力はトランジスタ220のゲートに結合される。トランジスタ218のドレインはトランジスタ220のソースに結合され、その共通接合点は外部制御ライン40に結合される。
出力バッファ200は外部バスまたは外部制御ラインを駆動するマイクロプロセッサの出力ポートのいずれにおいても使用され得るが、例示の目的のために、出力バッファ200の動作は以前に言及された外部メモリの外部アクセスを要求するためにマイクロプロセッサによって発生される要求制御信号(*REQ)の発生に関して説明することとする。図4で注目されるように、入力202は早いと指定される早い要求(EREQ)制御信号を受信するように適用される、なぜならそれは要求信号として出力によって外部制御ライン40上に駆動されるべき時間に先立って入力202に現われるからである。早い要求信号の出現によって、早い要求信号の入力レベルは前もって設定されることが可能であり、その後要求信号として外部メモリに伝えられる。
動作において、入力206での制御信号がアサートされない場合(ローレベルで)、トランジスタ224はオンにされて入力レベル202での入力レベルがラッチ226によってラッチされることを許容することは注目されるであろう。また、入力206での制御信号がローの場合に、トランジスタ212と214との双方は外部制御ライン40に何ら出力を与えないようにオフにされるであろう。
入力206での制御信号がアサートする(ハイになる)場合に、トランジスタ224はオフにされて入力202での入力レベルがラッチ226に影響を及ぼすことなく変化することを許容するであろう。結果として、トランジスタ224は入力202をラッチ226から分離するかつゆえに出力バッファ200の出力から分離するための分離手段として機能し、そのとき前の入力信号レベルは外部制御ライン40上に駆動される。
入力206での制御信号のアサーションは強い駆動手段210が外部制御ライン40に前の入力信号レベルを駆動することを可能にする。前の入力信号は、もし前の入力信号レベルがハイレベルであれば、強い駆動トランジスタ212がライン260上で可能化ハイ制御信号によってオンにされ、強い駆動トランジスタ214がライン262上の可能化ロー制御信号によってオフにされて高い入力レベルが外部制御ライン40上に駆動されることを引起こすように、ラッチ226によってラッチされるであろう。
もし前の入力信号がローレベルであれば、強い駆動トランジスタ212はライン260上の可能化ハイ信号によってオフにされ、かつ強い駆動トランジスタ214はライン262上の可能化ロー制御信号によってオンにされるであろう。これによって前の入力信号のロー入力レベルが外部制御ライン40上に駆動されることを引起こす。ローレベルが外部制御信号上に駆動されるこの後者の場合は要求制御信号(*REQ)のアサーションに対応する。
前の入力レベルが入力206での制御信号のアサーションに応答して強い駆動手段210によって外部制御ライン40上に駆動された場合に、前の入力信号レベルはトランジスタ244を介してラッチ246に転送されつつあるインバータ228の出力のレベルによって弱い駆動手段216に転送される。この転送が可能にされるのは、ライン260および262上の可能化ハイおよび可能化ロー制御信号がそれぞれNORゲート256の入力に結合されているからである。これらの信号の一方がハイでかつ他方がローでなければならないので、インバータ242によって反転されてトランジスタ244のゲート上にハイレベルを与えるNORゲート256の出力はローであろう。これによってトランジスタ244のオンが維持されて前の入力レベルをラッチ246に転送する。
入力206での制御信号(DRIVE OUTPUT)がデアサートする(ローになる)場合に、ライン260および262上の可能化ハイおよび可能化ロー制御信号の双方はローになって強い駆動手段210をオフにしてNORゲート256の出力がハイになることを引起こす。これによってトランジスタ244はオフになり、ラッチ246をインバータ228の出力から分離する。トランジスタ244をオンにするために要求された時間がラッチ226を新しい入力信号レベルで更新するために要求された時間より短いので、前の入力信号レベルはラッチ246によって維持されるであろう。
弱い駆動手段216はここで出力204かつゆえに外部制御ライン40を元来は強い駆動手段によって確立されたレベルに維持するために引継ぐ。当該技術分野において周知であるように、強い駆動手段210と弱い駆動手段216との違いは主に弱い駆動トランジスタと比べたときの強い駆動トランジスタの物理的な寸法にある。周知のように、強い駆動トランジスタは弱いトランジスタより大きく、かつゆえにより大きな電流を駆動することが可能である。
弱い駆動手段216は出力が高いインピーダンスを想定しようとする場合に出力バッファ200のトライステーティングを収容するために利用される。弱いドライバは強いドライバよりずっと素早くトライステートされ得る。もし前の入力レベルの弱い駆動手段216への転送後に出力バッファ200がトライステートされることになれば、208での高いインピーダンス出力入力制御信号はハイレベルとしてアサートしてトランジスタ258をオンにするであろう。これによってインバータ250の入力はローレベルになり、このレベルによってトランジスタ218および220の双方がオフにされて外部制御ライン40から出力204を分離することを引起こす。
したがって前述からわかるように、出力バッファ200は制御入力206でDRIVE OUTPUT制御信号に応答して外部メモリに出力を開始する。もし入力206での制御信号がローレベルであれば、出力バッファ200の出力は入力202での入力レベルにかかわらずオフにされるであろう。入力206での制御信号がアサートする場合には、出力バッファ200はラッチ226によって維持された前の入力信号レベルで外部制御ラインを駆動する一方で、入力222はラッチ226から分離されて入力202での入力レベルが新しいレベルを想定することを許容するであろう。制御信号が入力206でデアサートする場合には、前の入力信号レベルは弱い駆動手段216に転送され、この弱い駆動手段は外部制御ライン40を前の入力信号レベルに対応するレベルに維持する。結果として、外部メモリへの出力はDRIVE OUTPUT制御信号のアサーションがあるとすぐのみ開始され、出力バッファ200はマイクロプロセッサが1Xモードであろうと.5Xモードであろうとにかかわらず同じ態様で動作し、外部メモリへの同期アクセスを実行する。結果として、いつ出力が駆動されるべきかに関する決定プロセスは出力バッファ200に見えるようにされる。
ここで図5を参照して、図5はマイクロプロセッサ16のバスインタフェース装置52の制御装置部分280を例示する。制御装置は論理手段282、チャネルラッチ284、チャネル状態マシーン286、チャネル駆動288およびチャネル動作可能290を含む。以下でわかるように、論理手段282は第2の制御信号(ENAINPUT)に応答してマイクロプロセッサ入力を条件づけて外部メモリからアクセス制御信号を受信し、チャネルラッチ284、チャネル状態マシーン286、チャネル駆動288およびチャネル動作可能290は一緒に動作してマイクロプロセッサアクセスが始まるときおよびマイクロプロセッサアクセスが終結されるべきときを制御する。さらに、チャネルラッチ284、チャネル状態マシーン286、チャネル駆動288およびチャネル動作可能290はマイクロプロセッサが1Xモードであろうと.5Xモードであろうとにかかわらず同じ態様で動作して外部メモリに同期にアクセスする。
論理手段282のような論理手段はマイクロプロセッサの各入力でこの発明のこの好ましい実施例に従って利用されることが可能であり、各入力は外部メモリからアクセス制御信号を受信することが可能である。論理手段282は外部メモリから外部制御ラインに結合され、かつ例示されるように制御ライン44に結合されて外部メモリから動作可能信号(*RDY)を受信する入力292を含む。論理手段282はさらにインバータ294、インバータ296、nチャネル電界効果トランジスタ298、インバータ300、nチャネル電界効果トランジスタ302およびラッチ304を含む。論理手段はさらに非反転バッファ306、NANDゲート308およびインバータ310を含む。論理手段282はさらに第2の制御信号(ENAINPUT)を受信するための制御入力312を含み、第2の制御信号の発生は図3に関連して説明された。
以前に説明されたように、外部アクセスが完成した場合に、外部メモリは外部制御ライン44を介してロー論理レベルの形態で動作可能信号を与える。動作可能信号はインバータ294および296によってバッファされ、トランジスタ298が導通することを引起こすメモリクロックパルスの第2の位相部分(低い位相)とトランジスタ302が導通することを引起こす第2のプロセッサクロックパルスの第1の位相(高い位相)との一致があるとすぐラッチ304に伝えられる。動作可能信号はそれからラッチ304でラッチされて非反転バッファ306を介してNANDゲート308の1つの入力に伝えられる。動作可能信号はラッチ304によってNANDゲート308の入力で保持される。入力302での第2の制御信号(ENAINPUT)がアサートする場合には、動作可能信号はインバータ310の出力314で内部動作可能信号(INTRDY)を与えるインバータ310を介して送られる。結果として、外部メモリからの動作可能信号は第2の制御信号(ENAINPUT)がアサートされるまでマイクロプロセッサによって検出されない。すなわち、もし動作可能信号が外部メモリから受信されるが、第2の制御信号がローレベルであれば、バスインタフェース装置制御装置の残りの部分はあたかも動作可能信号がまだ受信されていないかのように作動するであろう。内部動作可能信号は入力312で可能化入力制御信号によって条件づけられるので、バスインタフェース装置の残りの部分はマイクロプロセッサが1Xモードであろうと.5Xモードであろうと同じ態様で機能して外部メモリに同期にアクセスすることを許容される。
チャネルラッチ284は内部制御ライン66を介して中央処理装置50(図2)からアクセス要求を検出するために使用される。ライン66上で要求信号を検出するとすぐ、チャネルラッチは内部制御ライン320上に未決定の要求制御信号(PENDREQ)を発生し、この信号はチャネル状態マシーン286、チャネル駆動288およびチャネル動作可能290に伝えられる。
チャネル駆動288は図2に関連して以前に述べられた以下の制御信号、つまりLATCHIA,INCAOL,HIZAB,AOLTOA,*REQおよびHIZDBを発生する。チャネル駆動288が制御信号AOLTOAをアサートして中央処理装置によって与えられた外部メモリアドレスがアドレス出力ラッチからアドレスバスへ転送されることを引起こし、かつ要求信号(*REQ)をアサートする場合に、チャネルラッチ284はチャネル状態マシーン286によって発生されたクリア要求信号(CLRREQ)に応答してライン320から未決定要求信号を取除くであろう。チャネルラッチ284は未決定の要求制御信号をラッチしてライン322を介してクリア要求制御信号を見るまでアクセス要求を覚えているであろう。
チャネル動作可能290は内部制御ライン324を介して論理手段292から内部動作可能制御信号を受信するように配列される。後で説明されるように、チャネル状態マシーン286は2つの動作状態、つまり遊休状態と単一状態とを規定する。遊休状態の間、マイクロプロセッサは外部アクセスに関する何の処理も行なわない。単一状態において、マイクロプロセッサは外部アクセスが完成されるまで外部アクセスに関する処理を行なう。内部動作可能制御信号に応答するチャネル動作可能290は、もしチャネル状態マシーンが単一状態であれば、内部制御ライン326上に修飾された動作可能制御信号(QRDY)を発生する。また内部動作可能制御信号に応答して、かつチャネル状態マシーン286が単一状態である場合に、チャネル駆動290は内部制御ライン64および62を介して命令動作可能またはデータ動作可能制御信号をそれぞれ与え、内部制御ライン328を介してラッチデータ制御信号を与えてデータバスインタフェースが外部メモリから受信されたデータをラッチすることを引起こす。
以前に述べられたように、チャネル状態マシーン286は2つの異なった状態、つまり遊休状態と単一状態とを規定する。単一状態は外部アクセスを開始して完成まで継続させ、かつ遊休状態は完成されたアクセスを終結させてマイクロプロセッサを新しい外部アクセスが開始されるまで遊休状態に維持する。以下の表はチャネル状態マシーン286の状態移行をまとめたものである。
Figure 0004008948
上の表からわかるように、未決定の要求信号が検出された場合、状態マシーンは現在の状態を見る。もし現在の状態が遊休であれば、第2の制御信号(ENAINPUT)が存在(メモリクロックの正しいエッジを示して)すればそれは単一状態に移行する。もしチャネル状態マシーンが単一状態で、かつ未決定の要求を検出すれば、もし動作可能信号が現在のアクセスのための外部メモリから受信されたことを示す有効な修飾された動作可能があれば、状態マシーン286は単一状態のままであり、かつクリア要求制御信号を発生して外部メモリの次のアクセスを始める。したがって、次の状態へのすべての移行は修飾された動作可能制御信号の存在かまたは次の状態への移行への第2の制御信号(ENAINPUT)のアサーションに依存することは注目されるであろう。さもなければ、次の状態は現在の状態と同じままである。結果として、状態移行はどちらも適切なメモリクロックエッジに基づく第2の制御信号(ENAINPUT)かまたは修飾された動作可能(QRDY)に応答するので、状態マシーンはマイクロプロセッサが1Xモードであろうと.5Xモードであろうとメモリクロックから独立している。
前述から、状態マシーンが次のサイクルの間遊休状態に移行することによって完成された外部アクセスを終結させるための単一状態にあるときに、マイクロプロセッサは修飾された動作可能信号を発生するために使用される内部動作可能信号に応答することが理解される。チャネル状態マシーンはトランスファ装置330に結合されているので、チャネル状態マシーンが状態を変えるとき、第2のプロセッサクロックパルスPH2の次の第1の位相(高い位相)があるとすぐそうすることも注目されるであろう。したがって、チャネル状態マシーンが遊休状態にあり、未決定の要求と第2の制御信号(ENAINPUT)を見るとき、それはPH2の次の高い位相があるとすぐ単一状態に続いて外部アクセスを開始するであろう。また、状態マシーン286は修飾された動作可能信号、未決定の要求信号がないこと、かつ単一状態にあることに応答して、PH2の次の高い位相があるとすぐ遊休状態に続いて完成された外部アクセスを終結させる。以前に述べられたように、第2の制御信号(ENAINPUT)と修飾された動作可能制御信号(QRDY)との発生はメモリクロックの適切な立上がり縁に基づいているので、状態マシーンはマイクロプロセッサが1Xモードであるか.5Xモードであるかということから独立しており、ゆえに、メモリクロック出力の立上がり縁が駆動されるべきか入力が可能化されるべきかどちらであるかについての判断決定プロセスから独立している。
ここで図6を参照して、図6は外部メモリがプロセッサ動作周波数と同一の周波数で動作している場合、およびマイクロプロセッサがメモリクロックパルスを発生している場合に外部メモリに同期にアクセスする場合のこの発明のマイクロプロセッサの動作を表わす一連の波形を例示する。結果として、速度制御信号(*DIV2)は1に等しくかつPWRCLK制御信号もまた1に等しい。
このモード(1Xモード)において、外部クロック(INCLK)の周波数およびメモリクロックパルスの周波数は同一であることは注目されるであろう。また第1のプロセッサクロックパルス(PH1)は外部クロックパルスに本質的に対応し、かつ第2のプロセッサクロックパルス(PH2)は第1のプロセッサクロックパルスと同一の周波数でありかつ逆の位相関係にあることも思い出されるであろう。
メモリクロックの第1のサイクルの間、マイクロプロセッサは要求制御信号を発生する。要求制御信号に応答して、チャネルラッチ284は未決定の要求制御信号を発生する。この時点で間に合ってチャネル状態マシーンは遊休状態である。このモードにおいては可能化入力(ENAINPUT)制御信号はメモリクロックがその低い位相にあるときはいつでも発生されるので、第2のメモリクロックサイクルが始まるとすぐ、かつ未決定要求のアサーションがありかつチャネル状態マシーンが遊休状態であれば、チャネル状態マシーンは単一状態に移行して外部メモリアドレスが外部アドレスバス上に駆動されることを引起こし、ローになることによってかつ要求信号(*REQ)がアサートすることを引起こすであろう。メモリサイクルNo.3の終わりに、外部メモリはデータを与え、かつ動作可能信号をローに強制することによってアサートした。チャネル状態マシーンは単一状態であったので、かつ修飾された動作可能信号の発生があり、第4のメモリサイクルが始まるとすぐ、チャネル状態マシーンは遊休状態に戻って外部アクセスを完成する。
ここで図7を参照して、図7はマイクロプロセッサが.5Xモードで動作している場合に、かつゆえにマイクロプロセッサ動作周波数の2分の1である周波数で動作している外部メモリにアクセスしている場合のこの発明に従うマイクロプロセッサの動作を示す一連の波形を例示する。ここで外部クロックパルス(INCLK)はメモリクロックパルスの周波数の2倍の周波数でありかつゆえにマイクロプロセッサはメモリクロックパルスの2倍の周波数であることが注目されるであろう。メモリクロックの前第1サイクルの間、チャネル状態マシーンは遊休状態である。第2のメモリクロックサイクルが始まると、マイクロプロセッサ内の未決定の要求を鑑みてかつ可能化入力がアサートされた状態で、チャネル状態マシーンは単一状態に移行して外部メモリアドレスが外部アドレスバス上に駆動されることを引起こし、かつ要求信号がアサートされることを引起こす。第2のメモリクロックサイクルの後半において、チャネル状態マシーンは単一状態のままである、なぜなら修飾された動作可能信号はバスインタフェース装置制御装置のチャネル駆動290によってまだ発生されていないからである。チャネル状態マシーンは第3のメモリクロックサイクルの終わりまで単一状態のままであり、この第3のメモリクロックサイクルにおいては外部メモリがデータを与えかつ動作可能信号をアサートしたことが見られる。動作可能信号と可能化入力制御信号とのアサーションはチャネル状態マシーンが第4のメモリクロックサイクルの始まりで単一状態から遊休状態に移行して外部アクセスを完成することを引起こす。
図6および図7の波形図からわかるように、この発明は外部メモリがマイクロプロセッサと同一の周波数で動作していようと、外部メモリがマイクロプロセッサ動作周波数の2分の1の周波数で動作していようと外部メモリに同期にアクセスすることが可能なマイクロプロセッサを提供する。さらに、どのメモリクロック端縁から出力を駆動するかまたはどのメモリクロック端縁から入力の受信を可能にするかについての判断決定プロセスは、マイクロプロセッサバスインタフェース装置制御装置状態マシーンおよび出力バッファから独立して行なわれるので、その結果かかる判断決定プロセスはマイクロプロセッサの外部メモリおよび主要論理部分に見える態様で行なわれる。
この発明の特定の実施例が示されかつ説明されてきたが、修正が可能であり、かつゆえに前掲の特許請求の範囲においてこの発明の真の精神および範囲内にあるすべてのかかる変更および修正を網羅することが意図される。
この発明を具体化する処理システムのブロック図である。 図1の処理システムのマイクロプロセッサのブロック図である。 図2で例示されたマイクロプロセッサのバスインタフェース装置の一部を例示する部分ブロック図の形態で示された概略の回路図である。 この発明を具体化しかつ図2で示されたマイクロプロセッサからのバスおよび制御ラインを駆動するために役に立つように利用され得る出力バッファの概略の回路図である。 図2で例示されたマイクロプロセッサのバスインタフェース装置の別の部分のブロック図である。 この発明に従うマイクロプロセッサの動作周波数と同一の周波数で動作する外部メモリへの同期化された外部アクセスを行なう際の図2のマイクロプロセッサの動作を例示する一連の波形図である。 この発明に従うマイクロプロセッサの動作周波数の2分の1の周波数で動作する外部メモリへの同期化された外部アクセスを行なう際の図2のマイクロプロセッサの動作を例示する一連の波形図である。
符号の説明
10 処理システム
12 メモリクロック
14 外部クロック
16 マイクロプロセッサ
18 外部メモリ
20 メモリ制御装置
22 主要メモリ
24 水晶発振器
26 水晶
28 バッファ

Claims (2)

  1. メモリバスを介して互いに結合されたマイクロプロセッサおよび外部メモリを有するコンピュータシステムにおいて用いられる方法であって、前記外部メモリは周期的なメモリクロック信号を受信して、それに同期して動作する、前記方法は、
    プロセッサクロック周波数を持つ周期的なプロセッサクロック信号を、前記マイクロプロセッサの第1入力に供給するステップと、
    速度制御信号に応答して、第1または第2の動作モードのうちのいずれか一方を選択するステップと、
    前記マイクロプロセッサの第2入力にメモリクロック周波数を持つ周期的なメモリクロック信号を供給するステップであって、前記第1の動作モードにおいては前記プロセッサクロック周波数は前記メモリクロック周波数よりも高く、前記第2の動作モードにおいては前記プロセッサクロック周波数は前記メモリクロック周波数に等しいステップと、
    制御信号をアクティブにすることにより、前記周期的なプロセッサクロック信号に同期して前記マイクロプロセッサからメモリアクセスを要求するステップと、
    前記周期的なメモリクロック信号と前記周期的なプロセッサクロック信号とが互いに所定の位相関係にあるときに、前記メモリバスにメモリアドレスを出力するステップと、
    前記マイクロプロセッサを前記プロセッサクロック周波数で継続動作させつつ、前記メモリアクセスの要求に応答して前記周期的なメモリクロック信号に同期させて前記マイクロプロセッサによって前記メモリバスにおけるメモリアクセスを実行するステップとを含む方法。
  2. メモリバスを介して互いに結合されたマイクロプロセッサおよび外部メモリを有するコンピュータシステムにおいて用いられる方法であって、前記マイクロプロセッサは中央処理装置とメモリアクセス回路とを有し、前記外部メモリは周期的なメモリクロック信号を受信して、それに同期して動作する、前記方法は、
    プロセッサクロック周波数を持つ周期的なプロセッサクロック信号を前記中央処理装置に供給するステップと、
    メモリクロック周波数を持つ周期的なメモリクロック信号を前記メモリアクセス回路に供給するステップと、
    速度制御信号に応答して第1または第2の動作モードのうちのいずれか一方を選択するステップであって、前記速度制御信号が前記第1の動作モードを選択させるときは前記プロセッサクロック周波数は前記メモリクロック周波数よりも高く、前記速度制御信号が前記第2の動作モードを選択させるときは前記プロセッサクロック周波数は前記メモリクロック周波数に等しいステップと、
    前記周期的なプロセッサクロック信号に同期してアクセス要求を前記中央処理装置によって発生させるステップと、
    前記アクセス要求を前記メモリアクセス回路に供給するステップと、
    前記周期的なメモリクロック信号と前記周期的なプロセッサクロック信号とが互いに所定の位相関係にあるときに、前記メモリバスにメモリアドレスを出力するステップと、
    前記中央処理装置を前記プロセッサクロック周波数で継続動作させつつ、制御信号をアクティブにすることにより、前記アクセス要求に応答して、前記周期的なメモリクロック信号に同期させて、前記メモリアクセス回路によって前記メモリバスにおけるメモリアクセスを実行するステップとを含む方法。
JP2006071095A 1991-03-01 2006-03-15 マイクロプロセッサおよび出力バッファ Expired - Lifetime JP4008948B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US66331491A 1991-03-01 1991-03-01

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP4031655A Division JPH04319753A (ja) 1991-03-01 1992-02-19 マイクロプロセッサおよび出力バッファ

Publications (2)

Publication Number Publication Date
JP2006228239A JP2006228239A (ja) 2006-08-31
JP4008948B2 true JP4008948B2 (ja) 2007-11-14

Family

ID=24661291

Family Applications (3)

Application Number Title Priority Date Filing Date
JP4031655A Withdrawn JPH04319753A (ja) 1991-03-01 1992-02-19 マイクロプロセッサおよび出力バッファ
JP2004041598A Expired - Lifetime JP3811764B2 (ja) 1991-03-01 2004-02-18 マイクロプロセッサおよび出力バッファ
JP2006071095A Expired - Lifetime JP4008948B2 (ja) 1991-03-01 2006-03-15 マイクロプロセッサおよび出力バッファ

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP4031655A Withdrawn JPH04319753A (ja) 1991-03-01 1992-02-19 マイクロプロセッサおよび出力バッファ
JP2004041598A Expired - Lifetime JP3811764B2 (ja) 1991-03-01 2004-02-18 マイクロプロセッサおよび出力バッファ

Country Status (5)

Country Link
US (2) US5805912A (ja)
EP (2) EP0913777B1 (ja)
JP (3) JPH04319753A (ja)
AT (2) ATE179810T1 (ja)
DE (2) DE69233510T2 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537555A (en) * 1993-03-22 1996-07-16 Compaq Computer Corporation Fully pipelined and highly concurrent memory controller
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
JP3579461B2 (ja) * 1993-10-15 2004-10-20 株式会社ルネサステクノロジ データ処理システム及びデータ処理装置
JPH07210445A (ja) * 1994-01-20 1995-08-11 Mitsubishi Electric Corp 半導体記憶装置およびコンピュータ
JP3490131B2 (ja) 1994-01-21 2004-01-26 株式会社ルネサステクノロジ データ転送制御方法、データプロセッサ及びデータ処理システム
US5953241A (en) * 1995-08-16 1999-09-14 Microunity Engeering Systems, Inc. Multiplier array processing system with enhanced utilization at lower precision for group multiply and sum instruction
US6295599B1 (en) * 1995-08-16 2001-09-25 Microunity Systems Engineering System and method for providing a wide operand architecture
US5742840A (en) 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
JP3643425B2 (ja) * 1996-02-29 2005-04-27 富士通株式会社 データ処理方法、データ処理装置及びインターフェイスコントローラ
TW347501B (en) * 1996-10-29 1998-12-11 Hitachi Ltd Memory and microcomputer
US6209072B1 (en) * 1997-05-06 2001-03-27 Intel Corporation Source synchronous interface between master and slave using a deskew latch
US6289502B1 (en) * 1997-09-26 2001-09-11 Massachusetts Institute Of Technology Model-based software design and validation
US6550013B1 (en) * 1999-09-02 2003-04-15 International Business Machines Corporation Memory clock generator and method therefor
US6704820B1 (en) * 2000-02-18 2004-03-09 Hewlett-Packard Development Company, L.P. Unified cache port consolidation
JP2002318647A (ja) * 2001-04-19 2002-10-31 Mitsubishi Electric Corp 検出装置及びその検出方法
US6909659B2 (en) * 2001-08-30 2005-06-21 Micron Technology, Inc. Zero power chip standby mode
US7171499B2 (en) * 2003-10-10 2007-01-30 Advanced Micro Devices, Inc. Processor surrogate for use in multiprocessor systems and multiprocessor system using same
US7676839B2 (en) 2004-03-15 2010-03-09 Xceedid Systems and methods for access control
US7900253B2 (en) * 2005-03-08 2011-03-01 Xceedid Corporation Systems and methods for authorization credential emulation
JP4692231B2 (ja) * 2005-11-04 2011-06-01 株式会社デンソー 車両用の電子制御装置
US7636803B2 (en) * 2006-09-28 2009-12-22 Advanced Micro Devices, Inc. Device and method for transferring data between devices
US8014485B2 (en) * 2007-05-17 2011-09-06 Advanced Micro Devices, Inc. Techniques for integrated circuit clock management using multiple clock generators
US7737752B2 (en) * 2007-05-17 2010-06-15 Globalfoundries Inc Techniques for integrated circuit clock management
US7681099B2 (en) * 2007-05-17 2010-03-16 Advanced Micro Devices, Inc. Techniques for integrated circuit clock signal manipulation to facilitate functional and speed test
US7921318B2 (en) * 2007-05-17 2011-04-05 Globalfoundries Inc. Techniques for integrated circuit clock management using pulse skipping
US8015428B2 (en) * 2007-06-12 2011-09-06 Renesas Electronics Corporation Processing device and clock control method
US8575972B2 (en) * 2009-03-23 2013-11-05 Advanced Micro Devices, Inc. Digital frequency synthesizer device and method thereof
US9240229B1 (en) 2012-03-15 2016-01-19 Gsi Technology, Inc. Systems and methods involving control-I/O buffer enable circuits and/or features of saving power in standby mode
US10854284B1 (en) 2016-12-06 2020-12-01 Gsi Technology, Inc. Computational memory cell and processing array device with ratioless write port
US10860320B1 (en) 2016-12-06 2020-12-08 Gsi Technology, Inc. Orthogonal data transposition system and method during data transfers to/from a processing array
US11227653B1 (en) 2016-12-06 2022-01-18 Gsi Technology, Inc. Storage array circuits and methods for computational memory cells
US10777262B1 (en) 2016-12-06 2020-09-15 Gsi Technology, Inc. Read data processing circuits and methods associated memory cells
US10943648B1 (en) 2016-12-06 2021-03-09 Gsi Technology, Inc. Ultra low VDD memory cell with ratioless write port
US10521229B2 (en) 2016-12-06 2019-12-31 Gsi Technology, Inc. Computational memory cell and processing array device using memory cells
US10847213B1 (en) 2016-12-06 2020-11-24 Gsi Technology, Inc. Write data processing circuits and methods associated with computational memory cells
US10249362B2 (en) 2016-12-06 2019-04-02 Gsi Technology, Inc. Computational memory cell and processing array device using the memory cells for XOR and XNOR computations
US10847212B1 (en) 2016-12-06 2020-11-24 Gsi Technology, Inc. Read and write data processing circuits and methods associated with computational memory cells using two read multiplexers
US10891076B1 (en) 2016-12-06 2021-01-12 Gsi Technology, Inc. Results processing circuits and methods associated with computational memory cells
US10770133B1 (en) 2016-12-06 2020-09-08 Gsi Technology, Inc. Read and write data processing circuits and methods associated with computational memory cells that provides write inhibits and read bit line pre-charge inhibits
US10877731B1 (en) 2019-06-18 2020-12-29 Gsi Technology, Inc. Processing array device that performs one cycle full adder operation and bit line read/write logic features
US10930341B1 (en) 2019-06-18 2021-02-23 Gsi Technology, Inc. Processing array device that performs one cycle full adder operation and bit line read/write logic features
US10958272B2 (en) 2019-06-18 2021-03-23 Gsi Technology, Inc. Computational memory cell and processing array device using complementary exclusive or memory cells

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4056845A (en) * 1975-04-25 1977-11-01 Data General Corporation Memory access technique
US4016545A (en) * 1975-07-31 1977-04-05 Harris Corporation Plural memory controller apparatus
JPS5266346A (en) * 1975-11-29 1977-06-01 Tokyo Electric Co Ltd Synch. clock control of microcomputer system
GB1561961A (en) * 1977-04-20 1980-03-05 Int Computers Ltd Data processing units
US4293909A (en) * 1979-06-27 1981-10-06 Burroughs Corporation Digital system for data transfer using universal input-output microprocessor
WO1984003156A1 (en) * 1983-02-07 1984-08-16 Motorola Inc Test module for asynchronous bus
US4615017A (en) * 1983-09-19 1986-09-30 International Business Machines Corporation Memory controller with synchronous or asynchronous interface
US4876639A (en) * 1983-09-20 1989-10-24 Mensch Jr William D Method and circuitry for causing sixteen bit microprocessor to execute eight bit op codes to produce either internal sixteen bit operation or internal eight bit operation in accordance with an emulation bit
DE3501569C2 (de) * 1984-01-20 1996-07-18 Canon Kk Datenverarbeitungseinrichtung
US4725945A (en) * 1984-09-18 1988-02-16 International Business Machines Corp. Distributed cache in dynamic rams
US4933835A (en) * 1985-02-22 1990-06-12 Intergraph Corporation Apparatus for maintaining consistency of a cache memory with a primary memory
US4794523A (en) * 1985-09-30 1988-12-27 Manolito Adan Cache memory architecture for microcomputer speed-up board
US4951193A (en) * 1986-09-05 1990-08-21 Hitachi, Ltd. Parallel computer with distributed shared memories and distributed task activating circuits
JPS63133251A (ja) * 1986-11-26 1988-06-06 Mitsubishi Electric Corp マイクロプロセツサの周辺回路
JPH0740244B2 (ja) * 1987-08-05 1995-05-01 三菱電機株式会社 マイクロプロセツサ
US5151986A (en) * 1987-08-27 1992-09-29 Motorola, Inc. Microcomputer with on-board chip selects and programmable bus stretching
US5305452A (en) * 1987-10-23 1994-04-19 Chips And Technologies, Inc. Bus controller with different microprocessor and bus clocks and emulation of different microprocessor command sequences
US4847758A (en) * 1987-10-30 1989-07-11 Zenith Electronics Corporation Main memory access in a microprocessor system with a cache memory
US5179667A (en) * 1988-09-14 1993-01-12 Silicon Graphics, Inc. Synchronized DRAM control apparatus using two different clock rates
US4939692A (en) * 1988-09-15 1990-07-03 Intel Corporation Read-only memory for microprocessor systems having shared address/data lines
US5307469A (en) * 1989-05-05 1994-04-26 Wang Laboratories, Inc. Multiple mode memory module
US5119485A (en) * 1989-05-15 1992-06-02 Motorola, Inc. Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation
US5191657A (en) * 1989-11-09 1993-03-02 Ast Research, Inc. Microcomputer architecture utilizing an asynchronous bus between microprocessor and industry standard synchronous bus
JPH03167649A (ja) * 1989-11-28 1991-07-19 Nec Corp ウエイト・サイクル制御装置
JPH03248243A (ja) * 1990-02-26 1991-11-06 Nec Corp 情報処理装置
US5036230A (en) * 1990-03-01 1991-07-30 Intel Corporation CMOS clock-phase synthesizer
US5442769A (en) * 1990-03-13 1995-08-15 At&T Corp. Processor having general registers with subdivisions addressable in instructions by register number and subdivision type
US5263172A (en) * 1990-04-16 1993-11-16 International Business Machines Corporation Multiple speed synchronous bus having single clock path for providing first or second clock speed based upon speed indication signals
US5059818A (en) * 1990-06-01 1991-10-22 Advanced Micro Devices, Inc. Self-regulating clock generator
US5155843A (en) * 1990-06-29 1992-10-13 Digital Equipment Corporation Error transition mode for multi-processor system
ATE159107T1 (de) * 1990-08-20 1997-10-15 Advanced Micro Devices Inc Speicherzugriffssteuerung
US5142487A (en) * 1991-01-29 1992-08-25 Graham Iii Hatch Numerically controlled oscillator

Also Published As

Publication number Publication date
JP3811764B2 (ja) 2006-08-23
ATE295571T1 (de) 2005-05-15
US5805912A (en) 1998-09-08
JP2005216268A (ja) 2005-08-11
JPH04319753A (ja) 1992-11-10
DE69229081T2 (de) 2000-01-05
EP0913777A2 (en) 1999-05-06
EP0507427A1 (en) 1992-10-07
EP0507427B1 (en) 1999-05-06
ATE179810T1 (de) 1999-05-15
EP0913777B1 (en) 2005-05-11
EP0913777A3 (en) 2003-11-19
JP2006228239A (ja) 2006-08-31
DE69229081D1 (de) 1999-06-10
DE69233510T2 (de) 2006-02-02
DE69233510D1 (de) 2005-06-16
US5828869A (en) 1998-10-27

Similar Documents

Publication Publication Date Title
JP4008948B2 (ja) マイクロプロセッサおよび出力バッファ
US5491814A (en) Apparatus using a state machine for generating selectable clock frequencies and a fixed frequency for operating a computer bus
US4615017A (en) Memory controller with synchronous or asynchronous interface
US5263172A (en) Multiple speed synchronous bus having single clock path for providing first or second clock speed based upon speed indication signals
US5339395A (en) Interface circuit for interfacing a peripheral device with a microprocessor operating in either a synchronous or an asynchronous mode
KR910007649B1 (ko) 핀수가 적은 고속 버스 인터페이스
EP0432575B1 (en) Data processor having wait state control unit
GB2143060A (en) Data processing system
JPH11502959A (ja) クロック制御システム及び方法
US20140333234A1 (en) Motor control circuit
JPH05204634A (ja) マイクロプロセツサ回路
US4870299A (en) Dynamic switching circuit for multiple asynchronous clock sources
EP0497441B1 (en) Improved microprocessor synchronous timing system
JPS63204942A (ja) インタフェース
US5740199A (en) High speed wire-or communication system and method therefor
EP0510833A2 (en) Data processing apparatus having address decoder
US6021264A (en) Data processing system capable of avoiding collision between read data and write data
US6504854B1 (en) Multiple frequency communications
US5544092A (en) Method and apparatus for configuring an integrated circuit
JP2684806B2 (ja) 集積回路
JPS6290742A (ja) 中央処理装置の性能を向上させる方法および装置
US6618790B1 (en) Burst suspend and resume with computer memory
JPH08106338A (ja) マイクロコントローラ
JPH07182267A (ja) 出力制御回路
JP2526047Y2 (ja) バス・スレーブ装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060926

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061218

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070724

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070814

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070830

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

Free format text: PAYMENT UNTIL: 20100907

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100907

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110907

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110907

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120907

Year of fee payment: 5

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120907

Year of fee payment: 5