JPS63253459A - 高性能インターフェイスおよびその達成方法 - Google Patents

高性能インターフェイスおよびその達成方法

Info

Publication number
JPS63253459A
JPS63253459A JP63026405A JP2640588A JPS63253459A JP S63253459 A JPS63253459 A JP S63253459A JP 63026405 A JP63026405 A JP 63026405A JP 2640588 A JP2640588 A JP 2640588A JP S63253459 A JPS63253459 A JP S63253459A
Authority
JP
Japan
Prior art keywords
processor
bus
instruction
access
data
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
JP63026405A
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 JPS63253459A publication Critical patent/JPS63253459A/ja
Pending legal-status Critical Current

Links

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/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
    • 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/7828Architectures of general purpose stored program computers comprising a single central processing unit without memory
    • G06F15/7835Architectures of general purpose stored program computers comprising a single central processing unit without memory on more than one IC chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)
  • Executing Machine-Instructions (AREA)
  • Selective Calling Equipment (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Memory System (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 発明の背景 発明の分野 この発明は一般に、コンピュータシステムのプロセッサ
とメモリ手段を含む1組の装置とを相互接続するための
方法および装置に関するものである。この発明は特に、
縮小命令セットコンピュータ(RI S C)プロセッ
サを上記の装置と相互接続するようにRISCシステム
内で用いられるとき、低価格高性能インターフェイスを
達成するのに用いられてもよい、新規なバスアーキテク
チャおよび関連の制御技術に関するものである。
コンピュータシステムのバスアーキテクチャは、システ
ムのプロセッサをメモリユニット、コプロセッサ、外部
装置などのような多数の装置とインターフェイスするた
めに用いられる。インターフェイスは典型的には、アド
レス、データおよび命令信号ならびに種々の制御および
ステータス信号を搬送する。
現代のコンピュータシステム、特にRISCシステムで
高いデータおよび命令処理速度を支持するために、イン
ターフェイスの設計が複雑でなく、かつ迅速にかつコン
ピュータシステムの構成要素間で遅延することなく情報
を移動し得ることが非常に重要である。換言すれば、イ
ンターフェイスは最小のコンテンション、タイミング制
約、緩衝の必要条件などで動作することが可能でなけれ
ばならない。さらに、インターフェイスは実現化の観点
から、現代の計算システムの総体的なより低い価格を補
うように価格面で効果的であることが重要である。
プロセッサが集積回路パッケージとして製作される既知
のシステムにおいては、インターフェイスは、インター
フェイスを作り上げかつ性能を最大にするのに必要なバ
スの数を最少にするために、様々な、多重化されかつ多
重分離されたバス技術を用いる。これは、順に、プロセ
ッサチップおよびシステム設計の両方の価格を下げるの
を助ける、プロセッサインターフェイス相互接続ピンの
数を最少にするという効果をもたらす。
既知の多重化バス機構においては、インターフェイスは
典型的には別々の命令およびデータバスからなる。たと
えば、32ビット幅の命令およびデータに対して、64
ビンプロセツサ相互接続を必要とする2個のバスが典型
的には用いられる。
バスの一方は、データアドレスおよびデータを表わす多
重化信号を搬送する。他方のバスは、命令アドレスおよ
び命令を表わす多重化信号を搬送する。多重化バス機構
の不利な点は、性能に悪影響を与える、情報をクロック
する際の難しさ、価格および性能に影響を与える、ハー
ドウェアを多重化する必要性、ならびに情報の多重化に
関連のタイミング制約とコンピュータのメモリおよび他
のサブシステムのタイミング制約との間の不整合の可能
性である。
(再度64ピンの例に対して)多重分離されたバスの対
を用いるシステムは、命令およびデータコンテンション
の問題を経験しがちである。これらのシステムは通常、
命令およびデータアドレス信号が1個の共用バス上に搬
送され、かつ命令およびデータ信号自体のための命令/
データバスを共用する。
上記のデータコンテンションの問題は特に、プロセッサ
がパイプラインおよびバーストモードプロトコルを実行
し得るRISCコンピュータ環境において深刻である。
以下で詳細に述べられるように、これらのプロトコルの
実行は、シーケンシャルなデータおよび/または命令転
送の可能性が多くのサイクルにまたがる、2個または3
個以上の処理サイクルを必要とする。これらの場合、共
用された命令/データバスを用いることにより、処理時
間が劇的に遅くなり、上記のコンテンションの問題を悪
化させる。
上記の問題に対する、明らかであるが費用のかかる解決
は、1個が各々、データ、命令、データアドレスおよび
命令アドレス信号のためのものである4個のバスを有す
ることである。全く別のかつ独立したバスは、多重化お
よびコンテンションの問題をなくする。しかしながら、
システムの設計価格は上がり、かつ32ビットワードの
例に対して、プロセッサインターフェイスは128個の
バスピンを必要とする。
低価格であり、コンテンションの問題、タイミング制約
などを最小にする高性能システムインク−フエイスを与
えることにより、RISCプロセッサを利用し、かつそ
の高いデータおよび命令処理速度の特性を支持すること
ができることが望ましい。特に、所望の高性能目的を実
現するために、単一サイクル実行時間、ロード、記憶お
よび分岐命令に対する明示のメモリ基準、パイプライン
およびバーストモード動作能力などのような通常のRI
SCプロセッサの特性を利用するインターフェイスを利
用することが望ましい。
さらに、(32ビット幅の命令およびデータを有するシ
ステムのための)バスビンのカウントを64個のビンか
ら96個のピンまで増加させることを名目的に犠牲にし
て、上記の2バス64ビンインターフエイスの問題を避
けながら、4バス128ビンインターフエイスを用いる
ことによってのみ可能であるとこれまで考えられていた
能力に近似するインターフェイス能力を達成し得ること
が望ましい。
発明の概要 縮小命令セットコンピュータ(RI S C)システム
の一部を構成するプロセッサとメモリ手段を含む1組の
装置との間に高性能インターフェイスを実現するための
方法および装置が、開示されている。
この発明によれば、インターフェイスは3個の独立した
バス、すなわち共用プロセッサアドレスバス、プロセッ
サ入力命令バス、および両方向データバスを含む。
共用プロセッサ出力アドレスバスは、プロセッサとコン
ピュータのメモリを結合する。このバスは、プロセッサ
によりメモリに送られる命令およびデータアクセス信号
の両方を搬送する。
プロセッサ入力命令バスもまたプロセッサとコンピュー
タのメモリ手段を結合するが、メモリからプロセッサに
送られる命令信号を搬送する。
両方向データバスは、メモリによりプロセッサに送られ
るデータ信号を搬送するための、かつまた同様に逆の信
号経路を設ける。
新規なインターフェイスは、合理的な価格で、極めて高
い転送速度を与えるように、より簡単なタイミングのた
めの多重分離されたバスを用い、かつ別々のデータおよ
び命令バスを用いる。共用アドレスバスは、バイブライ
ンおよびバーストモードプロセッサプロトコルを収容し
、バーストモードプロトコルが並行なデータおよび命令
転送を可能にする。
バスを制御しかつバスステータスなどを報告するための
方法および装置もまた、インターフェイスの一部であり
、かつ特徴、バス仲裁などを報告することを実現するの
を容易にする。
この発明の目的は、RISCシステム内に、プロセッサ
、およびメモリを含む1組の装置のための低価格で簡単
な設計の高性能インターフェイスを提供することである
この発明のさらなる目的は、コンテンションの問題、バ
スアーキテクチャに課せられたタイミング制約などを最
小にすることにより可能な高い処理速度を補うことによ
り、RISC環境を最大限に利用するバスアーキテクチ
ャを与えることにより、RISCシステムを用いて可能
な高いデータおよび命令速度を支持することである。
この発明のさらに他の目的は、その好ましい実施例とし
て、(バス自体のための)96ピンインターフエイスの
みを用いて、(32ビット幅のデータおよび命令のため
の)128ビンプロセツサインターフエイスに関連の容
量および処理能力を効果的に実現することである。この
目的の実現は、チップ製作およびシステム設計の価格を
下げることに直接的な強い効果を与える。
新規なインターフェイスは、同期の独立した信号経路を
有するバスアーキテクチャを特徴とする。
新規なインターフェイスはまた、RISC環境内の単純
なバイブラインおよびバーストモードのメモリアクセス
プロトコルを支持し、アドレスバス上にパイプライン命
令およびデータアクセスを、かつ独立したデータおよび
命令バス上にデータおよび命令の同時転送を可能にする
能力を特徴とする。
この発明のこれらのならびに他の目的および特徴は、以
下の詳細な説明および添付の図面を考察して当業者に明
らかになり、図面を通じて同じ参照符号が同じ特徴を表
わす。
詳細な説明 第1図は、新規なインターフェイスに含まれた共有アド
レスバスと独立データおよび命令バスとを示す。インタ
ーフェイスのための設定は、縮小命令セットコンピュー
タシステムである。
第1図において101の符号を付けられたブロックは、
RISCプロセッサを表わす。第1図のブロック102
はプログラム記憶装置を表わし、かつ第1図のブロック
103はデータ記憶装置を表わす。
RISCプロセッサ101は、バス111の符号を付け
られた共有アドレスバスを介してプログラム記憶装置1
02に相互接続されて示される。
バス111もまた、プロセッサ101およびデータ記憶
装置103を相互接続して示される。
プログラム記憶装置102によりプロセッサ101に送
られる命令信号を搬送するための別々のかつ独立した命
令バスが、バス115として第1図に示される。
データ記憶装置103によりプロセッサ101に送られ
るデータ信号を搬送するための別々のかつ独立したデー
タバスは、バス120として第1図に示される。
コプロセッサ、バスコンバータ、コンピュータシステム
自体に結合されているがその外側に置かれた装置(外部
装置)などは、第1図には示されていないが、おそらく
、プロセッサ101ヘバスアーキテクチヤによりインタ
ーフェイスされる装置の組には含まれ、そのすべては当
業者に周知である。
プロセッサ101が(各々が以下で詳細に述べられるべ
き)様々なアクセスモードで動作しているとき、インタ
ーフェイスがいかにして制御されかつプロセッサ101
とプログラム記憶装置102とデータ記憶装置103と
の間の通信を支持するように利用されるかについての説
明は、インターフェイスの操作性および有用性を証明す
る。当業者は、装置101と102と103との間のイ
ンターフェイスをいかにして利用しかつ制御するかとい
う同じ教示が、人がプロセッサ101とインターフェイ
スすることを望む前記組の装置のうちの他の装置による
インターフェイスの利用および制御を支持するように拡
張され得ることを容易に認識するであろう。
インターフェイスがいかにして利用され得るかという説
明を始める前に、1組のプロセッサの入力および出力信
号が、この発明の好ましい実施例に従って、プロセッサ
101とインターフェイスでそれに接続された装置との
間の実在のかつ制御の両方の情報の通信を容易にするよ
うに規定されている。これらの信号は、第2図に示され
たピンアウトブロックに示されるピンと1対1の対応を
する。
例示のみのために、RISCシステムのための32ビッ
ト命令およびデータワードアーキテクチャが仮定される
。当業者は、例示の実施例が、異なるワード長を有する
コンピュータシステムに関するこの発明の実現化例また
は範囲を決して制限しないことを認識するであろう。
さて第2図が参照されるべきであり、それは、この発明
の好ましい実施例のRISCプロセッサへの、およびそ
のRISCプロセッサからの入力および出力の各々をピ
ンアウトブロックの形態で示す。
まず第1に、第1図に示された3個のバスが、3組の各
々32個のピンからなる96ピンバス相互接続を介して
第2図のブロック200に相互接続されて示される。第
1の組の32個のピンは第1図の共用バス111を構成
し、かつ第2図でADDRBUS (AO−A31)″
の名称が付けられる。第2の組の32個のピンは、別々
のかつ独立した命令バス、すなわち第1図のバス115
に対するものであり、第2図で“lN5TBUS (1
0−131)”の名称が付けられる。
最後に、両方向データバス、第1図のバス120は、第
2図で“DATA  BUS (DO−D31)°の名
称が付けられた32ビン相互接続によりブロック200
に相互接続されて見られる。
32ビット幅のアドレスバス111は、以下で詳細に述
べられるべき態様で生じるバーストモードアクセスを除
いて、プロセッサ101によるすべてのアクセスのため
のバイトアドレスを、プログラム記憶装置102または
データ記憶装置103のいずれかに転送する。32ビッ
ト幅の命令バス115は、プログラム記憶装置102に
より送られる命令をプロセッサ101に転送する。32
ビット幅のデータバス120は、ロードおよび記憶動作
のために、プロセッサ101とデータ記憶装置103と
の間でいずれかの方向にデータを転送するのに用いられ
るだろう。
第2図に示された残余のピンアウトを介してブロック2
00に相互接続された信号経路は、第1図には示されて
いないが、新規なインターフェイスには含まれる。この
発明の好ましい実施例の文脈における各相互接続の目的
は、以下のとおりである。
第2図のバスリクエスト、”BREQは、外部装置が、
(集合的に以下で時々プロセッサチャネルと呼ばれる)
バスの制御のために仲裁するのを可能にする入力である
。この入力は、データまたは命令トランザクションを行
なうのを必要とするとき、外部装置によりアサート(a
ssert)される。プロセッサ101はいかなる未済
のトランザクションも完了しくいかなるバーストトラン
ザクションも停止し)、その点で、バス111.115
および120が許可される。プロセッサ101は、バス
111およびその関連の制御信号をハイのインピーダン
スの状態に駆動し、1個のサイクルに対して(以下で述
べられるべき)バス無効信号、”BINVをアサートし
、かつ(同様に以下で述べられる)バス許可信号、*B
GRTをアサートする。データバス120、ならびにデ
ータバス120および命令バス115に関連の制御もま
た、ハイのインピーダンスの状態に駆動される。寧BR
EQ入力がアサートされる間、プロセッサ101は”B
GRTをアサートし続ける。*BREQのデアサー) 
(deassert)された後のサイクルで”BINV
がサイクルに対してアサートされ、かつ”BGRTがデ
アサートされる。以下のサイクルでは、プロセッサがバ
スのマスタシップを有し、かつそれらを利用してもよい
バス許可、*BCRT出力は、外部バスマスクへのバス
および関連の制御信号を許可するのに用いられる。これ
は、プロセッサ101がバス111.115,120お
よび関連の制御を解放することが可能な時にアサートさ
れる。再び、車BREQのデアサート1こ続くサイクル
で率BCRTがデアサートされる。
バス無効、”BINV出力は、プロセッサ1゜1がアド
レスバス111を解放しているが、他の装置がまだ制御
していないであろうことを信号で知らせるのに用いられ
る。それは、アドレスバス111を無効にする、チャネ
ルのための遊びサイクルを規定する。
読出/書込、R/*W信号は、トランザクションの方向
を示す。ハイであるとき、プロセッサはメモリまたは装
置からデータをリクエストしており、ローであるとき、
それはメモリまたは装置ヘデータを送っている。それは
、アドレス111が有効であるとき有効な信号である。
スーパーバイザ/ユーザモード、SUP/*US出力は
、アクセスのためのプログラムモードを示す。
ロック、*LOCK出力は、種々のチャネルおよび装置
のインターロックの実現を可能にする。
それは、アクセスの接続期間のみで活性状態であるか、
または延長された時間期間、活性状態であってもよい。
プロセッサは、*LOCKが活性状態であるときは、(
*BREQに応答して)チャネルを放棄しない。
MMUプログラム可能MPGM (0−1)出力は、ア
クセスに関連の変換ルックアサイド(l。
ok−aside)バッフy(TLB)エントリにおけ
る2個のビットの値を反映する。もしアドレス変換が行
なわれないならば、これらの信号は0である。
パイプライン可能化、”PEN信号は、パイプラインア
クセスを支持し得る(すなわち、アドレスおよび所要の
制御のための入力ラッチを有する)装置が、第1のアク
セスが完了し、第2のアクセスが始まるであろうことを
プロセッサに信号で知らせるのを可能にする。上で示さ
れた、パイプラインアクセスモードは以下で詳細に述べ
られる。
命令リクエスト、*IREQ信号は、命令アクセスのた
めのプロセッサリクエストである。それが活性状態であ
るとき、アクセスのためのアドレスがアドレスバス11
1上に現われる。
命令リクエスト形式、IREQT信号は、*工REQが
活性状態であるとき、命令リクエストのアドレス空間を
特定する。この発明の好ましい実施例によれば、命令は
、(メモリ103の一部およびプログラム記憶装置10
2の部分を含んでもよい)命令メモリか、またはプログ
ラム記憶装置102に組入れられる別のリードオンリメ
モリ(ROM)空間にストアされてもよい。さらに、好
ましい実施例によれば、IREQTがローであるとき、
アクセスは命令メモリアクセスであり、IREQTがハ
イであるとき、命令リードオンリメモリアクセスの信号
が送られる。
パイプライン命令アクセス、”PIA信号は、命令アク
セスが、他の進行中の命令アクセスとバイブラインされ
ることを示すプロセッサ出力信号である。バイブライン
命令アクセスは、最初のアクセスが完了されるまで完了
することができない。
最初のアクセスの完了は、プロセッサにょる*■REQ
のアサートにより信号を送られる。
命令バーストリクエスト、*IBREQ信号は、バース
トモード命令アクセスを確立し、かつバーストモード命
令アクセスの間、命令転送をリクエストするようにプロ
セッサにより用いられる。車IBREQは、たとえバス
111がデータアクセスのために用いられていても活性
状態であるがもじれない。この信号は、*IREQに関
してプロセッササイクルで後に有効になる。
命令レディ、”IRDYは、有効命令が命令バス115
上にあることを示すプロセッサ入力信号である。プロセ
ッサ101は、もし未済の命令アクセスが存在しないな
らば、この信号を無視する。
命令エラー、* I ERRは、現在の命令アクセスの
間にエラーが生じたことを示すプロセッサ入力信号であ
る。もしこの信号が認められると、プロセッサは命令バ
ス115の内容を無視し、かつ命令アクセス例外トラッ
プが生じる。プロセッサは、もし未済の命令アクセスが
存在しないならば、この信号を無視する。
命令バースト肯定応答(acknowledge) 、
” I BACKは、バーストモード命令アクセスが確
立されたときは必ず活性状態のプロセッサ入力になる。
それは、たとえ命令が現在アクセスされていないとして
も活性状態であるだろう。
データリクエスト、率DREQ信号は、データアクセス
をリクエストするようにプロセッサにより用いられる。
それが活性状態であるとき、アクセスのためのアドレス
はアドレスバス111上に現われる。
データリクエスト形式(DREQTO−DREQTI)
信号は、以下のようにデータアクセスのアドレス空間を
特定する。
DRIjQTjj  jDfi13QT’o   fl
go   0   データメモリアクセス0  1  
 人力/出力アクセス 1   x   コプロセッサ転送 割込/トラップベクトルリクエストは、データメモリ読
出として示される。もし必要ならば、システムは、以下
で述べられる5TATO−STAT2出力によりベクト
ルフェッチを識別し得る。
オプション制御(OPTO−OPT2)は、この発明の
好ましい実施例によれば、アクセスを開始するロードま
たは記憶容置のビット18−16の値を反映するプロセ
ッサ出力信号である。これらの信号は、システムに依存
して外部ハードウェアを制御するのに用いられてもよい
。これらの信号のいかなる翻訳も可能である。しかしな
がら、もし互換性の発行が重要であるならば、(DRE
QTに基づく)以下の翻訳が用いられてもよい(値′X
”は無視される)。
凹靭旦皿旦虹0.四工2Ωp工↓p封l意然Ox   
0  00   ワード長アクセス Ox   0  01   バイトアクセスOx   
0  10   半ワードアクセス 0x01124ビット アクセス 0  0  1  00   (データとしての)命令
ROM アクセス 一他の全てのもの−予約された パイプラインデータアクセス、*PDA出力信号は、デ
ータアクセスが他の進行中のデータアクセスとバイブラ
インされることを示す。パイプラインデータアクセスは
、最初の(主)アクセスが完了するまで完了することが
できない。*DREQのアサートにより、最初のアクセ
スの完了の信号が送られる。
データバーストリクエスト、”DBREQは、バースト
モードデータアクセスを確立しかつバーストモードデー
タアクセスの間データ転送をリクエストするのに用いら
れてもよい信号である。*DBREQは、たとえアドレ
スバス111が命令アクセスのために用いられていても
活性状態であるだろう。この信号は、*DREQに関し
てサイクルで後に有効になる。
データレディ、*DRDYは、ロードに対して、有効デ
ータがデータバス120上にあることを示すプロセッサ
入力信号である。記憶に対して、それは、アクセスが完
了し、かつデータがもはやデータバス120上で駆動さ
れる必要がないことを示す。プロセッサ101は、もし
未済のデータアクセスが存在しないならば、この信号を
無視する。
データエラー、*DERRは、現在のデータアクセスの
間にエラーが生じたことを示すプロセッサ入力信号であ
る。ロードに対して、プロセッサはデータバス120の
内容を無視する。記憶に対して、アクセスが終了される
。いずれの場合にも、データアクセス例外トラップが生
じる。プロセッサ101は、もし未済のデータアクセス
が存在しないならば、この信号を無視する。
データバースト肯定応答*DBACKは、バーストモー
ドデータアクセスが確立されたときは必ず活性状態の入
力信号になる。それは、たとえデータが現在アクセスさ
れていないとしても活性状態になるだろう。
コプロセッサ使用中、”CBUSYは、コプロセッサが
動作を行なっていて、かつオペランドおよび命令コード
を受は入れることができないことを示す入力信号である
。オペランドまたは動作コードがコプロセッサに送られ
るとき、プロセッサは車DRDY信号を期待せず、”C
BUSY上の不活性レベルが、コプロセッサがオペラン
ドまたは動作コードを受は入れたことをプロセッサに知
らせる。
警告、*WARNはマスク不可能警告トラップが、この
入力信号がハイからローへ遷移するとき必ず生じること
を引き起こすプロセッサ入力である。警告トラップは通
常のベクトルフェッチシーケンスをバイパスし、かつベ
クトルフェッチが働かないかもしれない状態で(たとえ
ばデータメモリが故障しているとき)有用である。
割込リクエスト(”lNTR0ないし*lNTR3)入
力信号は、優先される割込リクエストを発生する。この
発明の好ましい実施例によれば、” lNTR0により
生じる割込が最高の優先順位を有し、かつ* I NT
R3により生じる割込は最低の優先順位を有する。
トラップリクエスト(*TRAPOないし*TRAP1
)入力信号は、優先されるトラップリクエストを発生す
る。寧TRAPOにより生じるトラップは、最高の優先
順位を有する。
ここで引用により援用される、1986年12月16日
出願の同時係属中の米国特許出願連続番号第942.4
72号は、RISCプロセッサのためのテストインター
フェイスを規定する。このインターフェイスは、ここで
述べられるインターフェイス全体のサブセットである。
CPUステータス(STATOないし5TAT2)ピン
、cpU制御(cNTLOないしCNTLl)ピン、リ
セット(”RESET) 、テストモード(”TEST
)、およびマスタ/スレーブエラー(*MSERR)ピ
ンの利用はすべて、上記の出願で詳細に述べられている
システムクロック、5YSCLKは、(以下で述べられ
るべき)INCLKの半分の周波数のクロック出力か、
またはプロセッサの動作周波数の、外部クロック発生器
からの入力のいずれかである。
最後に、入力クロック、INCLK信号およびピンに関
して、プロセッサ101がシステムのためのクロックを
発生するとき、INCLKはプロセッサの動作周波数の
2倍の周波数の、プロセッサへの発振器入力である。ク
ロックがプロセッサにより発生されないシステムにおい
て、INCLK信号は、一定レベルにされる。
この発明の好ましい実施例によれば、(”MSERRを
除いた)すべての出力はTESTモードによりハイのイ
ンピーダンス状態に置かれてもよいことが注目されるべ
きである。これもまた、インターフェイスのテスト部分
に関する、援用された特許出願において、より詳細に述
べられる。
新規なインターフェイス上で通信され、かつそれを制御
するのに用いられるプロセッサの入力および出力信号の
組が詳細に述べられたが、論理的グループ化によるこれ
らの信号の機能の簡単なりキャップが、インターフェイ
スがいかにして様々なプロセッサアクセスモードを支持
するかという説明とともに今から述べられる。この説明
は、この発明の動作および有用性の両方を示すであろう
もう1度、インターフェイス(またはチャネル)が、3
個の32ビット同期バスから構成される。
さらに、インターフェイスは、3個のバスに関連の制御
およびステータス信号を搬送するための手段を含む。第
2図は、上記の信号のすべてを搬送するのに十分な数の
ピンを有する集積回路チップパッケージを示す。上で規
定された信号の組は、特に、チャネルの制御が外部マス
クにゆだねられるのを可能にする。
以下のように、5つの別個の機能を行なう(あるオーバ
ラップを有する)信号の5個の論理グループが存在する
1、 命令アドレス転送および命令アクセスリクエスト
(AOないしA31、SUP/”USSMPGMOない
しMPC;Ml、*PEN、”IREQSIREQT、
および”PIA上の信号)、2、 命令転送(10ない
しI31、*IBREQ、* IRDY、 *IERR
,および”IBACK上の信号)、 3、 データアドレス転送およびデータアクセスリクエ
スト(AOないしA31、R/*W、SUP/*US、
 *LOCK、MPGMOないしMPGMI、”PEN
、*DREQ、DREQTOなしDREQTl、0PT
Oないし0PT2、および*PDA上の信号)、 4、 データ転送(DoないしD31、”DREQ、”
DRDY、寧DERR,および*DBACK上の信号)
および、 5、 仲裁(”BREQ、 *BGRT、および*BI
NV上の信号)。
この発明の好ましい実施例によれば、2つの形式のユー
ザ規定の出力が、システムに依存した態様で直接に装置
およびメモリを制御するためにチャネル上で利用可能で
ある。これらの出力の各々は、アクセスのためのアドレ
スと同時に、かつそれと同じ接続期間、有効である。
ユーザ規定の信号の第1の組、MPGMOないしMPG
Mlは、上記のように、アクセスのためのアドレスを変
換する際に用いられる変換ルックアサイドバッファにお
けるビットにより決定される。もしアドレス変換が行な
われないならば、これらのビットはこの発明の好ましい
実施例において値OOを有する。
第2の組の信号、0PTOないし0PT2は、この発明
の好ましい実施例によれば、アクセスを開始するロード
または記憶命令のビット18−16により決定される。
これらの信号はデータアクセスに対してのみ有効であり
、かつコプロセッサデータ転送のための予め規定された
翻訳を有する。
0PTOないし0PT2信号が命令により決定されるの
で、それらは、ある場合に応用ソフトウェア互換性に衝
撃を与えるかもしれない。もし異なるシステム間の応用
ソフトウェアの互換性が関心事であるならば、0FTO
ないし0PT2の勧告された翻訳はシステムハードウェ
アの設計において用いられるべきである。いずれにして
も、これらの信号上の000の値は、アクセスに特別な
影響を及ぼさないように規定されるべきである。
チャネルを利用する命令アクセスおよびデータアクセス
が、今から述べられる。
この発明の好ましい実施例によれば、命令アクセスは2
個のアドレス空間、すなわち命令メモリ空間および命令
リードオンリメモリ(ROM)空間のうちの1個に生じ
る。これらの2個のアドレス空間の間の区別は、IRE
QT信号によりなされ、それは現在のプロセッサステー
タスレジスタにおけるROM可能化ビットから順に得ら
れる。
命令メモリおよび命令ROMアドレス空間は別個のアド
レス空間であり、各空間は特定のシステムの必要性に基
づき独立して稠密に(populated)されてもよ
い。明らかに、所与のコンピュータシステムのための命
令空間はシステムの必要性により変化されてもよく、か
つ開示された命令空間(およびデータアドレス空間もま
た)例示のみのために提示され、ここに述べられたこの
発明の範囲を制限することを決して意味していない。
命令メモリ空間がデータメモリアドレス空間から独立す
る必要がないこともまた注目されるべきである。チャネ
ルは別々の命令メモリおよびデータメモリアドレス空間
を支持するが、メモリ管理ユニットはそれらを支持しな
いだろう。成るシステムにおいては、たとえ命令が、物
理的に別々のメモリに含まれたとしても、ロードおよび
記憶を介して命令をアクセスすることが必要になるかも
しれない。たとえば、命令区地点を設定する必要性のた
めに、この必要条件が課せられるかもしれない。OPT
信号が、ロードおよび記憶を用いて命令ROM空間にお
いて命令のアクセスを与えるのに用いられてもよいこと
もまた注目されたい。
すべてのプロセッサ命令フェッチは読出アクセスであり
、そのためR/*W信号の値は命令フェッチに対して無
関係である。
この発明の好ましい実施例もまた、3個のアドレス空間
、すなわちデータメモリ空間、入力/出力(I 10)
空間およびコプロセッサ空間のうちの1個にデータアク
セスが生じることを要求する。
これらの空間の間の区別はDREQTOないしDREQ
Tl信号によりなされ、それは、データアクセスを開始
するロードまたは記憶命令により順に決定される。これ
らのアドレス空間の各々は他のものとは異なるが、上記
のようにデータメモリ空間は命令メモリ空間に共通であ
ってもよい。
データアクセスは、(ロードのために)スレーブ装置も
しくはメモリからプロセッサに、または(記憶のために
)プロセッサからスレーブ装置もしくはメモリに生じて
もよい。転送の方向は、R/*W信号により決定される
。ロードの場合、プロセッサは、データバス120上の
データが、サイクルの終了前にわずかな時間期間だけ有
効に維持されることを必要とする。記憶の場合、プロセ
ッサはそれが利用可能になるとすぐにバス120を駆動
し、かつアクセスが完了したことをスレーブ装置または
メモリが信号で知らせるまでデータを有効に維持する。
命令アクセスの成功した完了はゞIRDY入力上の活性
レベルで示され、かつデータアクセスの成功した完了は
”DRDY入力上の活性レベルで示される。もし命令ま
たはデータアクセスがうまく完了することができない例
外の状態が存在するならば、不成功の完了は、適宜、”
IERRまたは”DERR入力上の活性レベルで示され
る。
この発明の好ましい実施例によれば、もしプロセッサが
命令またはデータアクセスに応答して*IERRまたは
”DERRを受取るならば、命令またはデータバスの内
容−および*IRDYまたは”DRDYの値−が無視さ
れる。* I ERRの応答は、もしそれが、(非シー
ケンシャル命令フェッチのために)プロセッサが最終的
に実行しない命令に関連しないならば、命令アクセス例
外トラップを引き起こす。”DERRの応答は常に、デ
ータアクセス例外トラップを引き起こす。この発明の好
ましい実施例によれば、命令アクセス例外およびデータ
アクセス例外トラップがマスキングされ得ず、そのため
それらは、無視され得ないハードウェアエラーを報告す
るのに用いられてもよい。
新規なチャネルは、アクセスのための3個のプロトコル
、すなわち単純、バイブライン、およびバーストモード
を支持する。
種々のプロトコルは、最小待ち時間のアクセスおよび最
大転送速度のアクセスを収容するように規定される。ア
クセスプロトコルは任意の数のサイクルを必要とするア
クセスを支持するが、アクセスは単一サイクルで完了し
てもよい。アクセスのためのアドレス転送は、命令また
はデータ転送から独立してもよい。
アクセスプロトコルの各々は、第3図ないし第6図を参
照して以下で詳細に述べられる。
第3図は、プロセッサおよびスレーブ装置がいかにして
、この発明の好ましい実施例により企図されているプロ
トコルを利用して命令およびデータアクセスを行なうよ
うに協働するかを示すチャネルアクセスフローチャート
である。
第3図のフローチャートは、3個の垂直セグメント(ノ
ーアクセス、主アクセスおよびパイプラインアクセス)
ならびに左と右のセグメント(それぞれプロセッサ動作
およびスレーブ装置動作)を有することがわかる。第3
図は、プログラムおよびデータアクセスに独立して適用
されることが注目されるべきである。
第3図のフローチャートは、データまたは命令アクセス
が必要であるかどうかを確かめるためにプロセッサが繰
返しチェックすることを示す(判断ブロック301)。
これは、フローチャートの“ノーアクセス”部分に示さ
れる。
アクセスのための必要径が認識されると、制御フローチ
ャートの“主アクセス”部分に入る。アクセスは、プロ
セッサにより開始される(ブロック302)。スレーブ
装置がそれから、バイブラインまたはバースト支持(こ
れらのモードは以下で詳細に述べられる)が必要である
かどうかを判断する(ブロック303)。もし必要でな
いならば、単純アクセスが完了され、その結果と寧IR
DYまたは*DRDYがスレーブ装置によりインターフ
ェイス上で駆動される(ブロック304)。
プロセッサはその結果をラッチしくブロック305)、
かつ単純アクセスが完了する。
単純アクセスのために、プロセッサがアクセス全体を通
じてアドレスを有効に維持することが注目されるべきで
ある。このプロトコルは、単一サイクルアクセスのため
に、かつ単純装置およびメモリに対するアクセスのため
に用いられる。アクセスを完了する前のいずれかのサイ
クルで、単純アクセスが(”PENのアサートにより)
バイブラインアクセスに、またiヨ(もしプロセッサが
*I BREQまたは*DBREQをアサートしている
ならば、” I BACKまたは”DBACKのアサー
トにより)バーストモードアクセスに変換されてもよい
。このように、単純アクセスのためのプロトコルもまた
、バイブラインおよび/またはバーストモードアクセス
の最初のサイクルの間、用いられてもよい。これは、た
とえばスレーブ装置またはメモリがバイブラインまたは
バーストモードアクセスの始めに多数のサイクルに対し
てアドレスが維持されるのを必要とするか、または1個
のサイクル内でバイブラインまたはバーストモードリク
エストに応答することができないかのいずれかの場合に
有利である。
単純アクセス命令読出のための種々の信号および情報の
流れを例示するタイミング図は、以下で述べられるべき
第4図に示されている。
第3図のフローチャートに戻ると、バイブラインまたは
バースト支持が示される場合(ブロック303のテスト
)、プロセッサアドレスがラッチされ(ブロック306
)、かつバーストリクエストのためのさらなるテストが
行なわれる(ブロック307)。
インターフェイスがバイブラインおよびバーストモード
アクセスをいかにして支持するかが、今から述べられる
パイプラインアクセスは、より早い進行中のアクセスが
完了する前に始まるものである。進行中のアクセスは主
アクセスと呼ばれ、かつ第2のアクセスはバイブライン
アクセスと呼ばれる。関連の主およびパイプラインアク
セスは、第3図の制御フローチャートにおいて示される
主およびバイブラインアクセスセグメントに対応する。
パイプラインアクセスは、主アクセスと同じ形式のもの
である。たとえば、データアクセスの完了の前に始まる
命令アクセスはパイプラインアクセスであるとは考えら
れないが、第2のデータアクセスはパイプラインアクセ
スであると考えられる。新規なインターフェイスは、い
かなる所与の時間にも一つのパイプラインアクセスのみ
を収容する。
2個以上のサイクルが完了するのを必要とするアクセス
に対して、パイプラインアクセスは、それらが2個の異
なるアクセスの部分のオーバラップを与えるので、単純
アクセスよりも優れた性能を有する。しかしながら、パ
イプラインアクセスを支持する装置およびメモリは、ア
クセスについてのアドレスおよび他の情報を記憶するた
めのいくつかの手段を含まなければならず、かつ単純動
作のみを支持する装置およびメモリよりも幾分複雑にな
る。バイブライン動作のための支持は、主アクセスとパ
イプラインアクセスの両方に必要である。バイブライン
動作を支持するのに装置およびメモリは必要ない。
プロセッサは、あらゆるアクセスをパイプラインアクセ
スとして完了しようとし、入力率PEN(第3図のブロ
ック308)は、バイブラインが所与のアクセスに対し
て支持されるかどうかを示す。*PEN人力は個々の装
置により駆動され得るか、またはシステム幅のパイプラ
インアクセスを可能化するか、もしくは不能化するよう
に活性状態もしくは不活性状態にされ得る。プロセッサ
は、もしそれがアクセスを行なっていないならば車PE
Nの値を無視する。
プロセッサは、主アクセスの間、あらゆるサイクルで”
PENをサンプリングする。もし*PENがいずれかの
サイクルで活性状態であるならば、プロセッサは、次の
サイクルで主アクセスのためのアドレスおよび関連の制
御を駆動するのをやめる。もし、主アクセスが完了する
前に、プロセッサが他のアクセスを必要とするならば(
第3図のブロック310および311参照)、それは第
2のアクセスのためのアドレスおよび制御を駆動し、第
3図のブロック312で示されるように”PIAまたは
”PDA出力をアサートし、第2のアクセスがパイプラ
インアクセスであることを示す。
出力”IREQまたは*DREQは適宜、パイプライン
アクセスのためにはアサートされない。パイプラインア
クセスを支持し得ない装置およびメモリはそれゆえに、
”PIAおよび/または*PDAを無視することが可能
であり、かつその動作を*IREQおよび/または”D
REQに基づかせることが可能である。
パイプラインアクセスのためのリクエストを受取る装置
またはメモリは、1つの例外を除いて、他のいかなるア
クセスとしてそれを処理してもよい、すなわちパイプラ
インアクセスはデータバス120または命令バス115
を用いることが不可能である。データ読出または命令ア
クセスの場合、アクセスの結果は適当なバス上で駆動さ
れることができず、データ書込の場合、データはデータ
バス上に現われない。アドレスデコーディングのような
、アクセスのための他のいかなる動作も(ブロック31
3)、他のいかなるアクセスに関して生じ得る。
(寧IRDYまたは’DRDYのアサート1こより第3
図のブロック30っで示されるように)主アクセスが完
了すると、パイプラインアクセスは主アクセスになる(
ブロック314)。プロセッサは、アクセスの形式に依
存して”IREQまたは”DREQをアサートすること
により、これを示す。パイプラインアクセスを行なう装
置またはメモリは、*IREQまたは*DREQ (ブ
ロック314参照)が(おそらく同じサイクルで)アサ
ートされるとすぐに、アクセスを完了するだろう。アク
セスが主アクセスになると、それは他のすべての主アク
セスと同様にチャネルを制御する。
たとえば、それは他のバイブラインアクセスが行なわれ
得るかどうかを決定するかもしれない。
パイプラインアクセスが主アクセスになると、出力*P
IAまたは”PDAは1個のサイクルに対してアサート
されたままである。”IREQまたは*DREQがアサ
ートされた後のサイクルでは、*PIAまたは*PDA
がデアサートされる。
これは、スレーブ装置またはメモリ内の制御の連続性を
保証する。
もし、パイプラインアクセスが主アクセスになる前に、
プロセッサが割込またはトラップをとる(ブロック31
5)ならば、パイプラインアクセスに対するリクエスト
がチャネルから除去される(ブロック316)。これは
、たとえば主アクセスに対して*IERRまたは”DE
RRの信号が送、られるとき生じるかもしれない。もし
パイプラインアクセスがチャネルから除去されるならば
、スレーブ装置またはメモリがパイプラインアクセスに
対する’ IREQまたは寧DREQを受取らない。そ
れゆえに、パイプラインアクセスは主アクセスにならず
、そのためそれは完了することができない(ブロック3
17参照)。このため、パイプラインアクセスが主アク
セスになるまで、パイプラインアクセスはスレーブ装置
またはメモリの状態を変えるべきではない。
内部データフロー制約のために、プロセッサは、ロード
が進行中である間、バイブライン記憶動作を行なわない
。しかしながら、チャネルのプロトコルはいかなる動作
も互いにバイブラインされることを可能にする。このよ
うに、他のチャネルマスクはロードの間パイプライン記
憶を行なってもよい。
バイブライン命令読出のための種々の信号および情報の
流れを例示するタイミング図は、以下で述べられるべき
第5図に示される。
最後に、第3図に関して、もしバーストモード処理が(
ブロック307で)示されるならば、スレーブ装置は適
当な”IBACKまたは”DBACKをアサートしくブ
ロック318)、かつバーストモードアクセスが開始さ
れる(ブロック319)。
バーストモードアクセスは、シーケンシャルなアドレス
における多数の命令またはデータワードが単一アメレス
転送でアクセスされるのを可能にする。行なわれるアク
セスの数およびシーケンス内の各アクセスのタイミング
が、バーストモードプロトコルによりダイナミックに制
御される。バーストモードアクセスは、シーケンシャル
なアドレスパターンを利用し、かつ単純およびパイプラ
インアクセスに関していくつかの利点を与える。
すなわち、 1、 同時命令およびデータアクセス。バーストモード
アクセスは、アドレスバスの利用を減じる。
これは、通常シーケンシャルな命令アクセスに対して特
に重要である。バーストモード命令アクセスは、命令の
ための大部分のアドレス転送をなくし、アドレスバス1
11が同時のデータアクセスに対して用いられるのを可
能にする。
2、  より速いアクセス時間。アドレス転送サイクル
をなくすることにより、バーストモードアクセスは、ア
ドレスが、アクセス時間を改良する態様で発生されるの
を可能にする。
3、  より速いメモリアクセスモード。多くのメモリ
は、特別な高帯域幅アクセスモードを有する(たとえば
、スタティックコラムページモードおよびニブルモード
)。これらのモードは一般に、たとえアドレスがすべて
のアクセスのためのメモリに明示的に提示されないとし
ても、シーケンシャルなアドレスパターンを必要とする
。バーストモードアクセスは、ハードウェアが、シーケ
ンシャルなアドレスパターンを検出することなく、これ
らのアクセスモードを利用するのを可能にする。
新規なインターフェイスにより支持されるバーストモー
ドアクセスは、ここで述べられるべき例示の例によれば
、いずれかの所与の時間の、以下の動作状態のうちの1
つにある。
1、  確立。プロセッサおよびスレーブ装置−は、バ
ーストモードアクセスをうまく開始している。
確立されたバーストモードアクセスは、活性状態である
かまたは中断されるかのいずれかである。
確立されたバーストモードアクセスは、先取りされるか
、終了されるか、または取消されてもよい。
2、 活性状態。命令またはデータアクセスおよび転送
が、バーストモードアクセスの結果として行なわれてい
る。活性状態のバーストモードアクセスは、中断されて
もよい。
3、 中断。バーストモードアクセスの結果として、ア
クセスおよび転送が行なわれていないが、バーストモー
ドアクセスは確立されたままである。
付加的アクセスおよび転送は、アクセスのためのアドレ
スの再伝送なしに、後に生じるかもしれない(すなわち
、バーストモードアクセスが活性状態になるかもしれな
い)。
4、 先取り。バーストモードアクセスは、成る状態の
ために、もはや続行することができないが、バーストモ
ードアクセスは、わずかな時間内で再度確立され得る。
5、終了。すべての所要のアクセスが行なわれた。
6、 取消し。バーストモードアクセスは、成る例外の
状態のために、もはや続行することができない。アクセ
スは、もし可能ならば、例外の状態が訂正された後にの
み再確立されるだろう。
終了された状態を除いた上記の状態の各々は、プロセッ
サおよびスレーブ装置またはメモリの両方の制御のもと
にある。終了された状態は、プロセッサにより決定され
る、なぜならプロセッサのみが、すべての所要のアクセ
スが行なわれたことを決定し得るからである。バースト
モードプロトコルに関する上記の状態の各々の説明は、
以下で直ちに述べられる。
まず最初に、バーストモードアクセスの確立に関して、
プロセッサは、バーストモードアクセスとして、すべて
の命令ブリフェッチを行なおうとする。データアクセス
に対して、プロセッサはバーストモードアクセスを用い
てロード多重および記憶多重動作を行なおうとする。入
力*I BACKおよび*DBACKは、リクエストさ
れたバーストモードアクセスが支持されることを示す。
プロセッサは、それが命令アクセスを行なっていないな
らば、” I BACKの値を無視し、かつそれがロー
ド多重または記憶多重を行なっていないならば、*DB
ACKの値を無視する。
プロセッサは、アクセスのためのアドレスがアドレスバ
ス111に置かれるサイクルの間、*IBREQまたは
”DREQをアサートすることにより、それがバースト
モードアクセスを所望することを示す。しかしながら、
これらの信号がサイクル内でアドレスよりも遅く有効に
なることが注目されるべきである。プロセッサは、アド
レスがアドレスバス上で有効になるあらゆるサイクルで
、率I BREQまたは*DBREQを駆動し続ける。
このとき、アクセス内に含まれる装置またはメモリは、
それがバーストモードアクセスを行なうことが可能であ
ることを示すように、*I BACKまたは”DBAC
Kをアサートしてもよい。もしく適当な)*IBACK
または”DBACKが、最初のアドレスがアドレスバス
上に現われる間アサートされるならば、バーストモード
アクセスが確立される。
もしバーストモードアクセスが最初のアクセスで確立さ
れていないならば、プロセッサは、さらに行なわれるべ
き、より多くのアクセスがある限り、各々の後続のアド
レス転送に関してバーストモードアクセスを確立しよう
とする。いずれかの後続のアクセスの間、アドレスされ
た装置またはメモリは、* I BACKまたは*DB
ACKをアサートすることによりバーストモードアクセ
スを確立してもよい。もしバーストモードアクセスが決
して確立されないならば、デフオールドの作用とは、プ
ロセッサがあらゆるアクセスのためのアドレスを伝送す
ることである。
バーストモードアクセスが確立された後、*IBREQ
および” ・D B RE Qの翻訳が変えられる。
これらの信号は、後続のアクセスの間、プロセッサが少
なくとももう1つのアクセスを必要とすることを示すの
に用いられる。もし、アクセスがうまく完了するサイク
ルの最後で(すなわち、*■RDYまたは”DRDYが
活性状態であるとき)” I BREQまたは*DBR
EQが活性状態であるならば、プロセッサは他のアクセ
スを必要とする。もしスレーブ装置またはメモリがバー
ストモードアクセスを前もって先取りせず、かつアクセ
スが完了するサイクルで(*IERRまたは*DERR
をアサートすることにより)バーストモードアクセスを
先取りせずかつ取消さないならば、付加的アクセスが行
なわれなければならない。
命令の即時実行が保証され得ず、そのため、成る状態で
はバーストモード命令アクセスが中断されなければなら
ない。もし命令アクセスが完了するサイクルの間車IB
REQが不活性状態であるならば、バーストモードアク
セスは(もしそれが先取りされずかつ取消されないなら
ば)中断される。バーストモードアクセスは、プロセッ
サが新たな命令アクセスを要求しないならば(その場合
”IREQがアサートされる)、または命令メモリがバ
ーストモードアクセスを先取りしないならば、中断され
たままである。
中断されたバーストモード命令アクセスは、プロセッサ
がより多くの命令を受は入れることが可能であるときは
必ず活性状態になる。プロセッサは、” I BREQ
をアサートすることによりバーストモードアクセスを活
性化し、もしこのサイクルの間、命令メモリがバースト
モードアクセスを先取りしないならば、命令アクセスが
行なわれなければならない。
中断されたバーストモード命令アクセスが活性化される
と、その結果生じる命令アクセスは、′I BREQが
アサートされるサイクルで完了することを許可されない
が、次のサイクルで完了してもよい。この制限の理由は
、バーストモードプロトコルは、* I BREQおよ
び* I RDY上の活性レベルの組合わせが(上記の
ように)命令アクセスを引き起こすように規定されるか
らである。
もし命令アクセスが、中断されたバーストモードアクセ
スが活性化されるサイクルですぐに完了するならば、プ
ロトコルに多義性が存在し、2個の命令に対するリクエ
ストとして*IBREQの単一サイクルのアサートを解
釈することが可能になる。この多義性は、命令アクセス
を1サイクル遅延させることにより解決される。この制
限は、プロセッサの命令ブリフェッチバッファが満たさ
れていて、かつ命令メモリが非常に速くアクセスできる
ときにのみ適用されるので、遅延された命令応答は、こ
の発明が用いられる、好ましいシステム文脈において性
能に衝撃を与えない。
システムは、データ転送が、常に利用可能である汎用レ
ジスタへ、かつ汎用レジスタから生じるためにバースト
モードデータアクセスを中断しない。しかしながら、他
のチャネルマスクは、(たとえば直接メモリアクセスの
間)バーストモードデータアクセスを中断するかもしれ
ない。バーストモードアクセスを中断するための原理は
、上記の命令アクセスのための原理と同じである。
プロセッサは、*IBREQまたは*DBREQをデア
サートし、かつ後に*IREQまたは*DREQをアサ
ートすることにより、バーストモードアクセスを先取り
するか、終了するか、または取消してもよい。通常、プ
ロセッサは”DBREQの” I BREQがデアサー
トされた後、もう1個の命令またはデータワードを受取
る。しかしながら、このアクセスが、”IBREQまた
は*DBREQがデアサートされたものと同じサイクル
で完了するであろうことに注目されたい。*よりREQ
または*DBREQがデアサートされた後、かつ*IR
EQまたは”DREQがアサートされる前の期間、バー
ストモードアクセスは中断された状態である。スレーブ
装置またはメモリは、先取りされ、終了されかつ取消さ
れたバーストモードアクセスが、プロセッサにより引き
起こされるとき、それらを識別することができず、かつ
その必要がない。
プロセッサは、外部チャネルマスクがチャネルに対して
仲裁するとき、かつバーストモードフェッチが、潜在す
る仮想ページ境界を横切るとき、バーストモードアクセ
スを先取りする。この発明が述べられている好ましいシ
ステムによれば、最小のページサイズは1キロバイトで
ある。その結果、バーストモード命令およびデータアク
セスは、アドレスシーケンスが1キロバイトのアドレス
境界を横切るときは必ず先取りされる。明らかに、これ
は、新規なインターフェイスが用いられているシステム
のページサイズに依存して変化するであろう。バースト
は、(もし必要ならば)新たなアドレス変換が行なわれ
るとすぐに再確立される。
新たな物理的アドレスは、バーストモードアクセスが再
確立されるとき送られる。この先取りは、カウンタがバ
ーストモードアドレスシーケンスに続くのを必要とする
装置またはメモリにとって有利であることに注目された
い。すべてのバーストモードアクセスが全ワードアクセ
スであり、かつプロセッサが1キロバイトのアドレス境
界ごとにアドレスを再伝送するので、スレーブ装置また
はメモリ内の8ビットカウンタは、バーストモードアド
レスシーケンスに従うのに十分である。付加的アドレス
ビットが、単純にラッチされる。
この発明が用いられる好ましいシステム文脈によれば、
プロセッサは、すべての所要の命令またはデータがアク
セスされると必ずバーストモードアクセスを終了する。
さらに、プロセッサは、割込またはトラップが取られる
と、バーストモードアクセスを取消す。
バーストモードアクセスに含まれるスレーブ装置または
メモリは、ゞI BACKまたは*DBACKをデアサ
ートすることによりアクセスを先取りしてもよい。プロ
セッサは、”IRDYおよび*DRDYが活性状態であ
るとき、*I BACKおよび”DBACKをサンプリ
ングし、そのため” I BACKおよび”DBACK
は、最後に支持されたアクセスが完了されるとデアサー
トされてもよい。しかしながら、*IBACKおよび*
DBACKもまた、アクセスが完了する前に、いずれの
サイクルでデアサートされてもよい。もし*I BAC
Kまたは”DBACKが、プロセッサが、アクセスを予
期する状態であるときにデアサートされるならば、アク
セスは完了されなければならない。
一般に、スレーブ装置またはメモリは、それがバースト
モードシーケンスでいかなるさらなるアクセスも支持し
得ないときは必ずバーストモードアクセスを先取りする
。これは通常、実現化依存アドレス境界(たとえばキャ
ッシュブロック境界)に出会うと必ず生じるが、いかな
る理由でも生じるかもしれない。バーストモードアクセ
スを先取りすることにより、スレーブは、次の命令また
はデータワードのアドレスがプロセッサにより必要とさ
れる、新たなリクエストを受取る。
スレーブ装置またはメモリは、リクエストされたアクセ
スに応答して、車IERRまたは*DERRをアサート
することによりバーストモードアクセスを取消してもよ
い。信号” I BACKまたは”DBACKは、この
ときデアサートされる必要がないが、次のサイクルでデ
アサートされるべきである。* I ERRが、プロセ
ッサが実行しない命令に対してアサートされる場合を除
いて、*I ERRおよび*DERR信号がマスク不可
能トラップを引き起こすことに注目されたい。
上で詳細に述べられた事柄は、新規なインターフェイス
が、前述のプロトコルを支持するようにいかにして用い
られ得るかということである。
アクセスプロトコルおよびインターフェイスを支持する
のに用いられるそれらの信号動作の説明を要約するため
に、第4図ないし第6図が提示される。これらの図面は
、単純、パイプラインおよびバーストモード命令読出を
例示するタイミング図をそれぞれ示す。当業者は、他の
タイミング図が、上で参照されたモードの各々における
データ転送などのような種々の他の動作に対して開発さ
れ得て、前記動作のすべては、インターフェイスおよび
ここで規定された信号の組により支持されることを容易
に認識するであろう。
第4図ないし第6図の各々において、クロックサイクル
は、クロックパルスの立上がり縁で始まるように規定さ
れる。
第4図は、その上で単純アクセス命令読出が行なわれる
2個のクロックサイクルを示す。
所望の命令のアドレスは、サイクル1の間アドレスバス
111(第2図のピンAO−A31)上に置かれる。ゞ
IREQがプロセッサによりアサートされて示され、−
万事PIAはアサートされておらず、パイプライン支持
が必要でないことを示す。
アドレスnに置かれた命令は、クロックサイクル1の終
わりまでにはインターフェイス(ピンIOないし■31
)上でプロセッサに送られるものとして理解され得る。
命令レディ(”IRDY)信号は、有効命令がフェッチ
されかつ命令バス上に置かれていることをプロセッサに
示すものとしてアサートされて示される。
第5図は、その上でパイプライン命令読出が行なわれる
4個のクロックサイクルを示す。
クロツウサイクル1の間、アドレスnは、アドレスバス
111、ピンAOないしA31上に置かれる。主アクセ
スは、クロックサイクル1の間プロセッサによりアサー
トされる寧IREQにより開始される。パイプライン支
持が企図されているので、*PENもまた、クロックサ
イクル1の終わりに向けてアサートされて示される。こ
れは、第3図のブロック308と調和する。クロックサ
イクル2の間、パイプラインアクセスは、*IREQが
デアサートされかつ”PIAがアサートされるので、第
5図を参照して観察され得る。パイプラインアドレスm
は、同様にサイクル2の間バス111上に示される。
サイクル2の終わりまでには、アドレスnに置かれた命
令が検索され、命令バス115、ピン■0ないしI31
上に示される。同時に*IRDYがアサートされ、主ア
クセスが完了していることを示す。この点で、サイクル
2のパイプラインアクセスは、サイクル3の(第3図を
参照して上で述べられた)主アクセスになる。スレーブ
は、*IREQがもう1度プロセッサによりアサートさ
れた後(サイクル3参照)、アクセスを完了し得る。
アドレスmに置かれた命令がサイクル3の終わりで命令
バス115上に現われることが、第5図を参照してわか
る。”IRDYがもう1度アサートされ、有効命令信号
がサイクル3の間インターフェイス上に送られたことを
示す。
最後に、第6図は、その上でバーストモードアクセスが
命令読出のために確立される4個のクロックサイクルを
示す。
クロックサイクル1の間、命令をフェッチするための開
始アドレス、アドレスnがアドレスバス111(ピンA
OないしA31)上に示され、*IREQがプロセッサ
によりアサートされ、かつ*IBREQ(命令バースト
リクエスト)信号もまたインターフェイス上に送られる
。プロセッサとスレーブ装置との間のハンドシエイキン
グは、各サイクルがバーストモードを活性状態に維持す
る車I BREQS* I BACKハンドシェイクと
ともに観察されるべきである。アドレスnSn十1 、
n + 2などに置かれたシーケンシャルな命令は、連
続するクロックサイクルの間、命令バス115上に置か
れて示される。最後に、”IRDYは、サイクル毎にス
レーブ装置によりアサートされ、新たな有効命令がイン
ターフェイス上に送られたことを信号で知らせる。
第3図ないし第6図を参照して述べられた事柄は、前述
のRISCシステム動作プロトコルに関連の信号動作、
ステータス報告、などを支持し得るインターフェイスで
ある。再びインターフェイスは、これら3個のすべての
プロトコルを支持するのに、上で述べられた3個のバス
を必要とするのみであって、チップ製作およびシステム
設計の価格のかなりの節約を達成する。
完全にするために、バス仲裁、バス共用に関連の電気的
考慮、ならびに割込およびトラップのためのチャネル作
用もまた、ここで述べられる。
仲裁に関する限り、外部マスクは、”BREQ入力をア
サートすることにより、アドレス、データ、および命令
バスへのアクセスを得ることができる。プロセッサはい
かなる未済のアクセスも完了し、いかなるバーストモー
ドアクセスも先取りし、かつ寧BCRT出力をアサート
する。このとき、プロセッサは、アドレス、データ、お
よび命令バスに関連のすべてのチャネル出力をハイのイ
ンピーダンスの状態に置く。”BREQがアサートされ
る最初のサイクルに対して、出力*BINVもまたアサ
ートされる。もし外部マスタが、*BGRTがアサート
されるサイクルでアドレスバスおよび関連の制御を制御
し得ないならば、*BINV上の活性レベルは、チャネ
ルに対する遊びサイクルを規定するのに用いられてもよ
い(すなわち、いかなる見せかけのアクセスリクエスト
も無視される)。”BINV信号は単一サイクルの前に
のみアサートされ、そのため外部マスタは、*BGRT
がアサートされた後のサイクルでチャネルを制御しなけ
ればならない。
*BREQ人力がアサートされたままである間、プロセ
ッサは*BGRTをアサートし続ける。外部マスクは、
この間、すべてのチャネル信号上の制御を有する。
プロセッサへのチャネルを解決するために、外部マスク
は”BREQをデアサートするが、*BREQがデアサ
ートされる最初のサイクルの間はチャネルを制御し続け
なければならない。*BREQがデアサートされた後の
サイクルでは、プロセッサが*BINVをアサートし、
かつ”BGRTをデアサートし、外部マスクが、このと
きチャネルの制御を解放するべきである。次のサイクル
では、プロセッサは”BINVをデアサートし、かつチ
ャネルを用いることが可能である。プロセッサは、仲裁
により先取りされた、いかなるバーストモードアクセス
も再確立する。
プロセッサは、”LOCK信号が活性状態であるとき、
チャネルを放棄しない。これは、外部マスクが、チャネ
ル上の他のすべてのアクセスを除外しなければならない
動作を干渉するのを防止する。
バス共用の電気的考慮に関する限り、バスが多数のマス
クおよびスレーブ間で共用されるとき、多数のマスクま
たはスレーブが同時にバスを駆動している状態を避ける
ことが重要である。これは、バス仲裁が不完全に、また
は不正確に行なわれるために2個以上のマスクまたはス
レーブが同じサイクルでバス駆動されるとき生じるかも
しれない。
しかしながら、それはマスクまたはスレーブが、他のマ
スクまたはスレーブが制御を得るのと同じサイクルでバ
スを解放し、かつ第1のマスクまたはスレーブが、第2
のマスクまたはスレーブがバスを駆動し始める点と比較
すると、そのバスドライバを不能化するのが遅いときも
また生じる。後者の状態は、以下の説明においてバス衝
突と呼ばれる。
多数の装置が同時にバスを駆動するとき生じ得る論理エ
ラーに加えて、このような状態は、バスドライバが多量
の電流を搬送するのを引き起こすかもしれない、これは
、ドライバの信頼性および電力消散にかなりの衝撃を与
え得る。バス衝突は通常、わずかな時間のみ生じるので
、それらはあまり関心がないが、システム内の高周波電
磁放出の一因となるかもしれない。新規なチャネルが用
いられるシステムは、多数のドライバがバスを同時に駆
動している状態をすべて妨げるように規定される。しか
しながら、バス衝突は、システム設計に依存して生じて
もよい。
新規なチャネルの場合、チャネルのための仲裁は、プロ
セッサが、他のチャネルマスクと同時にアドレスおよび
データバスを駆動するのを妨げる。
もし2個以上の外部マスクが存在するならば、システム
設計は、唯一の外部マスクがチャネルの制御を得て、か
つ外部マスクがプロセッサと同時にはチャネルの制御を
得ないことを保証するためのいくつかの手段を含まなけ
ればならない。
プロセッサがチャネルの制御を外部マスクへゆだねると
き、”BINVが活性状態である間、外部マスクがいか
なるバスも駆動し得ないようにすることにより、バス衝
突が防止されるだろう。これは、外部マスクがチャネル
を制御するときまでには、すべてのプロセッサ出力が不
能化されることを保証する。しかしながら、*BGRT
がアサートされるとすぐに、外部マスクが制御するのを
妨げるものはチャネルプロトコル内にない。
主アクセスを行なう装置またはメモリのみが、適当なバ
スを駆動するのを可能にすることにより、スレーブ装置
およびメモリが命令バスまたはデータバスを同時に駆動
するのを妨げられる。パイブラインアクセスが主アクセ
スになると、それは命令またはデータバスを即座に駆動
するかもしれず、そのためもしパイプラインアクセスが
、もとの主アクセスを行なうスレーブ以外のスレーブに
より行なわれるならば、潜在的バス衝突が存在する。
このバス衝突は、すべてのスレーブを、(たとえば5Y
SCLKを用いて)第2の半サイクルで命令およびデー
タバスを駆動することに制限することにより、防止され
るかもしれない。プロセッサがサイクルの終わりでのみ
データをサンプリングするので、この制限は性能に影響
を与えない。
プロセッサがロードに続いてすぐに記憶を行なうとき、
それは、ロードのためのデータがデータバス上に現われ
るサイクルに続く第2のサイクルで記憶するためにデー
タバスを駆動する。これは、ロード内に含まれるスレー
ブがそのデータドライバを不能化するための完全なサイ
クルを与える。
もし記憶がパイプラインアクセスであるならば、それは
、アクセスのためのデータがデータバス上に現われるま
で、主アクセスにはならない。プロセッサが、記憶に応
答して*DRDYまたは*DERRを受取るまで、デー
タバスを駆動し続け、それは、その応答に続くサイクル
でデータバスを駆動するのをやめる。
最後に、もし割込またはトラップがとられるならば、こ
の発明の好ましい実施例によれば、いかなるバーストモ
ードアクセスも取消される。もしパイプラインアクセス
のためのリクエストがアドレスバス上にあるならば、こ
のリクエストは除去され、かつベクトルフェッチリクエ
ストまたは命令フェッチリクエストがパイプラインアク
セスリクエストと置換する。いかなる他のアクセスも完
了され、かつ割込またはトラップに所要のもの以外の新
たなアクセスは開始されない。
割込またはトラップ処理が完了すると、いかなる取消さ
れたバーストトランザクションも、割込またはトラップ
がとられたとき次に行なわれるべきであったアクセスの
アドレスを用いて再確立される。完了されていないパイ
プラインアクセスは、命令アクセスの場合、割込復帰シ
ーケンスにより、またはデータアクセスの場合、開始命
令を再開することにより、再開される。
ここで述べられた事柄は、縮小命令セットコンピュータ
(RI S C)システムの一部を構成するプロセッサ
と、メモリ手段を含む1組の装置との間の高性能インタ
ーフェイスを達成するための方法および装置である。こ
れらの方法および装置は、上記の目的を満たす。
新規な方法および装置の好ましい実施例および例示の例
の上の説明は、例示と説明のためにのみ提示された。こ
れは余すところないものではなく、かつ開示された正確
な形式にこの発明を制限することもまた意図されず、か
つ明らかに、多くの修正および変更が上の教示から可能
である。
ここで述べられた実施例および例は、この発明の原理お
よびその実際の応用を最良に説明し、それによって当業
者が、企図されている特定の用途に適する種々の実施例
においてかつ種々の修正を用いてこの発明を最良に利用
することが可能になるように提示された。
この発明の範囲は前掲の特許請求の範囲により規定され
ることが意図されている。
【図面の簡単な説明】
第1図は、主コンピユータシステム構成要素を相互接続
して示された、新規なインターフェイスの一部であるア
ドレス、命令およびデータバスのための形状を示す。 第2図は、新規なインターフェイスを収容する集積回路
パッケージのためのピンアウト図を示す。 第3図は、プロセッサおよびスレーブ装置が、この発明
の好ましい実施例により企図されているプロトコルを利
用して命令およびデータアクセスを行なうためにいかに
して協働するかを示すチャネルアクセスフローチャート
である。 第4図は、第1図に示されたインターフェイスが単純ア
クセス命令読出を行なうのに用いられるとき、時間に関
する種々のバスおよび制御信号の状態を示すタイミング
図である。 第5図は、第1図に示されたインターフェイスがパイプ
ラインアクセス命令読出を行なうのに用いられるとき、
時間に関する種々のバスおよび制御信号の状態を示すタ
イミング図である。 第6図は、第1図に示されたインターフェイスがバース
トモードアクセス命令読出を行なうのに用いられるとき
、時間に関する種々のバスおよび制御信号の状態を示す
タイミング図である。 図において、101はRISCプロセッサ、102はプ
ログラム記憶装置、103はデータ記憶装置、111は
アドレスバス、115は命令バス、120はデータバス
である。 特許出願人 アドバンスト・マイクロ・ディバイシズ・
インコーポレーテッド

Claims (36)

    【特許請求の範囲】
  1. (1)縮小命令セットコンピュータ(RISC)システ
    ムの一部を構成するプロセッサとメモリ手段を含む1組
    の装置との間の高性能インターフェイスであって、 (a)前記プロセッサおよび前記メモリ手段を結合し、
    前記プロセッサにより前記メモリ手段に送られる命令お
    よびデータアクセス信号の両方を搬送するための共用プ
    ロセッサ出力アドレスバスと、 (b)前記プロセッサおよび前記メモリ手段を結合し、
    前記メモリ手段により前記プロセッサに送られる命令信
    号を搬送するためのプロセッサ入力命令バスと、 (c)前記プロセッサおよび前記メモリ手段を結合し、
    前記メモリ手段により前記プロセッサに送られるデータ
    信号を搬送し、かつ前記プロセッサにより前記メモリ手
    段に送られるデータ信号を搬送するための両方向データ
    バスとを含む、高性能インターフェイス。
  2. (2)前記バスを制御するのに用いられる、1組のプロ
    セッサおよび装置発生の信号に属する信号を搬送するた
    めに用いられる複数個の信号経路をさらに含む、特許請
    求の範囲第1項に記載のインターフェイス。
  3. (3)前記バスが同期の独立した信号経路である、特許
    請求の範囲第2項に記載のインターフェイス。
  4. (4)前記バス、前記信号経路および前記組の信号が、
    前記プロセッサによる単純メモリアクセスプロトコルの
    性能を支持する、特許請求の範囲第2項に記載のインタ
    ーフェイス。
  5. (5)前記バス、前記信号経路および前記組の信号が、
    前記プロセッサによるパイプラインメモリアクセスプロ
    トコルの性能を支持する、特許請求の範囲第2項に記載
    のインターフェイス。
  6. (6)パイプライン命令アクセスおよびパイプラインデ
    ータアクセスの両方が、前記アドレスバス上で前記プロ
    セッサにより行なわれてもよい、特許請求の範囲第5項
    に記載のインターフェイス。
  7. (7)前記バス、前記信号経路および前記組の信号が、
    前記プロセッサによるバーストモードアクセスプロトコ
    ルの性能を支持する、特許請求の範囲第2項に記載のイ
    ンターフェイス。
  8. (8)前記バス、前記信号経路および前記組の信号が、
    前記プロセッサによる、単純メモリアクセス、パイプラ
    インメモリアクセスおよびバーストモードメモリアクセ
    スプロトコルの性能を支持する、特許請求の範囲第2項
    に記載のインターフェイス。
  9. (9)データおよび命令転送が、前記命令バスおよび前
    記データバス上でそれぞれ同時に行なわれてもよい、特
    許請求の範囲第2項に記載のインターフェイス。
  10. (10)データアクセスおよびデータ転送が、命令アク
    セスおよび命令転送と同じクロックサイクルの間行なわ
    れてもよい、特許請求の範囲第2項に記載のインターフ
    ェイス。
  11. (11)前記アドレスバス、前記命令バスおよび前記デ
    ータバスが各々32ビットの幅である、特許請求の範囲
    第2項に記載のインターフェイス。
  12. (12)前記バスの各々が、前記プロセッサを含む集積
    回路パッケージの一部を形成する32ピン信号インター
    フェイスを介して前記プロセッサに相互接続される、特
    許請求の範囲第11項に記載のインターフェイス。
  13. (13)前記複数個の信号経路が各々、前記プロセッサ
    を含む集積回路パッケージの一部を形成する別のピン信
    号インターフェイスを介して前記プロセッサに相互接続
    される、特許請求の範囲第9項に記載のインターフェイ
    ス。
  14. (14)前記バスが多重分離される、特許請求の範囲第
    2項に記載のインターフェイス。
  15. (15)前記プロセッサによる命令アクセスが命令メモ
    リ空間および命令リードオンリメモリ空間に選択的にな
    されてもよく、前記空間の両方が前記メモリ手段に含ま
    れる、特許請求の範囲第2項に記載のインターフェイス
  16. (16)前記プロセッサによる前記メモリ空間選択が、
    前記組のプロセッサ発生信号に含まれる命令リクエスト
    信号の状態を介して前記複数個の信号経路のうちの1個
    上で前記メモリ手段に信号で送られる、特許請求の範囲
    第15項に記載のインターフェイス。
  17. (17)前記プロセッサによるデータアクセスがデータ
    メモリ空間、入力/出力空間およびコプロセッサ空間に
    選択的になされてもよく、前記空間のすべてが前記メモ
    リ手段に含まれる、特許請求の範囲第2項に記載のイン
    ターフェイス。
  18. (18)前記プロセッサにより選択される前記メモリ空
    間が、2ビットデータリクエスト信号の状態を介して前
    記複数個の信号経路のうちの2個上で前記メモリ手段に
    信号で送られる、特許請求の範囲第17項に記載のイン
    ターフェイス。
  19. (19)縮小命令セットコンピュータ(RISC)シス
    テムの一部を構成するプロセッサとメモリ手段を含む1
    組の装置との間の高性能インターフェイスであって、 (a)前記プロセッサおよび前記メモリ手段を結合し、
    前記プロセッサにより前記メモリ手段に送られる命令お
    よびデータアクセス信号の両方を搬送するための共用プ
    ロセッサ出力アドレスバスと、 (b)前記プロセッサおよび前記メモリ手段を結合し、
    前記メモリ手段により前記プロセッサに送られる命令信
    号を搬送するためのプロセッサ入力命令バスと、 (c)前記プロセッサおよび前記メモリ手段を結合し、
    前記メモリ手段により前記プロセッサに送られるデータ
    信号を搬送し、かつ前記プロセッサにより前記メモリ手
    段に送られるデータ信号を搬送するための両方向データ
    バスと、 (d)前記バスを制御するのに用いられる1組の、プロ
    セッサおよび装置発生の信号に属する信号を搬送するた
    めに用いられる複数個の信号経路とを含む、高性能イン
    ターフェイス。
  20. (20)前記組の信号が命令アドレス転送および命令ア
    ドレスリクエスト信号を含む、特許請求の範囲第19項
    に記載のインターフェイス。
  21. (21)前記組の信号が命令転送信号を含む、特許請求
    の範囲第19項に記載のインターフェイス。
  22. (22)前記組の信号がデータアドレス転送およびデー
    タアドレスリクエスト信号を含む、特許請求の範囲第1
    9項に記載のインターフェイス。
  23. (23)前記組の信号がデータ転送信号を含む、特許請
    求の範囲第19項に記載のインターフェイス。
  24. (24)前記組の信号がバス仲裁(arbitrati
    on)信号を含む、特許請求の範囲第19項に記載のイ
    ンターフェイス。
  25. (25)前記組の信号がバスステータスおよびテスト信
    号を含む、特許請求の範囲第19項に記載のインターフ
    ェイス。
  26. (26)縮小命令セットコンピュータ(RISC)シス
    テムの一部を構成するプロセッサとメモリ手段を含む1
    組の装置との間で高性能インターフェイスを達成する方
    法であって、 (a)共用アドレスバスを利用して、前記プロセッサか
    ら前記メモリ手段に命令およびデータアクセス信号を送
    る段階と、 (b)前記共用アドレスバスから独立した命令バスを介
    して、前記メモリ手段から前記プロセッサに命令を送る
    段階と、 (c)前記命令バスおよび前記アドレスバスの両方から
    独立したデータバスを介して、前記プロセッサと前記メ
    モリ手段との間でデータを送る段階とを含む、方法。
  27. (27)前記データバスおよび前記命令バス上で同時に
    信号を送る段階をさらに含む、特許請求の範囲第26項
    に記載の方法。
  28. (28)前記バスを制御するのに用いられる1組の、プ
    ロセッサおよび装置発生の信号に属する信号を複数個の
    信号経路上に送る段階をさらに含む、特許請求の範囲第
    26項に記載の方法。
  29. (29)前記伝送段階がすべて同期して行なわれる、特
    許請求の範囲第26項に記載の方法。
  30. (30)前記プロセッサ、前記メモリ手段、前記バス、
    前記組の信号および前記信号経路の組合わせを利用して
    、単純メモリアクセスプロトコルを行なう段階をさらに
    含む、特許請求の範囲第28項に記載の方法。
  31. (31)前記プロセッサ、前記メモリ手段、前記バス、
    前記組の信号および前記信号経路の組合わせを利用して
    、パイプラインメモリアクセスプロトコルを行なう段階
    をさらに含む、特許請求の範囲第28項に記載の方法。
  32. (32)パイプラインメモリアクセスプロトコルを行な
    う前記段階が、前記共用アドレスバス上のパイプライン
    命令アクセスおよびパイプラインデータアクセスの性能
    を含む、特許請求の範囲第31項に記載の方法。
  33. (33)前記プロセッサ、前記メモリ手段、前記バス、
    前記組の信号および前記信号経路の組合わせを利用して
    、バーストモードアクセスプロトコルを行なう段階をさ
    らに含む、特許請求の範囲第28項に記載の方法。
  34. (34)前記データアクセス信号および前記データを送
    る段階が、前記命令アクセス信号および前記命令の伝送
    段階と同じクロックサイクルの間行なわれてもよい、特
    許請求の範囲第26項に記載の方法。
  35. (35)命令アクセスおよびデータアクセス信号を送る
    前記段階が、その複数個の命令空間が前記プロセッサに
    よりアクセスされていることを信号で知らせる段階をさ
    らに含む、特許請求の範囲第26項に記載の方法。
  36. (36)命令およびデータアクセス信号を送る前記段階
    が、その複数個のデータ空間が前記プロセッサによりア
    クセスされていることを信号で知らせる段階をさらに含
    む、特許請求の範囲第26項に記載の方法。
JP63026405A 1987-02-09 1988-02-05 高性能インターフェイスおよびその達成方法 Pending JPS63253459A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US012226 1987-02-09
US07/012,226 US4851990A (en) 1987-02-09 1987-02-09 High performance processor interface between a single chip processor and off chip memory means having a dedicated and shared bus structure

Publications (1)

Publication Number Publication Date
JPS63253459A true JPS63253459A (ja) 1988-10-20

Family

ID=21753956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63026405A Pending JPS63253459A (ja) 1987-02-09 1988-02-05 高性能インターフェイスおよびその達成方法

Country Status (5)

Country Link
US (1) US4851990A (ja)
EP (1) EP0283115B1 (ja)
JP (1) JPS63253459A (ja)
AT (1) ATE105430T1 (ja)
DE (1) DE3889366T2 (ja)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5142672A (en) * 1987-12-15 1992-08-25 Advanced Micro Devices, Inc. Data transfer controller incorporating direct memory access channels and address mapped input/output windows
ATE109910T1 (de) * 1988-01-20 1994-08-15 Advanced Micro Devices Inc Organisation eines integrierten cachespeichers zur flexiblen anwendung zur unterstützung von multiprozessor-operationen.
US5029124A (en) * 1988-05-17 1991-07-02 Digital Equipment Corporation Method and apparatus for providing high speed parallel transfer of bursts of data
ATE188788T1 (de) * 1988-10-05 2000-01-15 Advanced Micro Devices Inc Eingabe-ausgabe-steuerung, die eingabe/ausgabe- fenster mit adressbereichen aufweist und die fähigkeit zum vorherigen lesen und späteren schreiben besitzt
EP0375794A1 (en) * 1988-12-24 1990-07-04 International Business Machines Corporation Method of synchronizing signals which are generated on different chips having on-chip clocking systems with different speed
US5109490A (en) * 1989-01-13 1992-04-28 International Business Machines Corporation Data transfer using bus address lines
US5088028A (en) * 1989-04-07 1992-02-11 Tektronix, Inc. Lock converting bus-to-bus interface system
US5146582A (en) * 1989-06-19 1992-09-08 International Business Machines Corp. Data processing system with means to convert burst operations into memory pipelined operations
JPH0338725A (ja) * 1989-07-05 1991-02-19 Mitsubishi Electric Corp データ処理装置及びマイクロプロセッサ
KR920704219A (ko) * 1989-09-08 1992-12-19 원본미기재 의사동기 핸드세이킹 및 블록모드 데이타 전송을 활용하는 향상된 vme 버스 프로토콜
WO1991011765A1 (en) * 1990-01-29 1991-08-08 Teraplex, Inc. Architecture for minimal instruction set computing system
WO1991014225A1 (en) * 1990-03-15 1991-09-19 Sun Microsystems, Inc. Apparatus and method for providing a stall cache
IL96808A (en) 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US6324120B2 (en) 1990-04-18 2001-11-27 Rambus Inc. Memory device having a variable data output length
US6751696B2 (en) 1990-04-18 2004-06-15 Rambus Inc. Memory device having a programmable register
US6006302A (en) * 1990-06-04 1999-12-21 Hitachi, Ltd. Multiple bus system using a data transfer unit
JP2910303B2 (ja) * 1990-06-04 1999-06-23 株式会社日立製作所 情報処理装置
JP3215105B2 (ja) * 1990-08-24 2001-10-02 富士通株式会社 メモリアクセス装置
GB9019023D0 (en) * 1990-08-31 1990-10-17 Ncr Co Work station having multiplexing and burst mode capabilities
US5247644A (en) * 1991-02-06 1993-09-21 Advanced Micro Devices, Inc. Processing system with improved sequential memory accessing
JP2693651B2 (ja) * 1991-04-30 1997-12-24 株式会社東芝 並列プロセッサー
JPH07122865B2 (ja) * 1992-01-02 1995-12-25 インターナショナル・ビジネス・マシーンズ・コーポレイション バス動作の動作速度を制御するようにしたバス・インターフェースを有するコンピュータ・システム
EP0575651A1 (en) * 1992-06-24 1993-12-29 International Business Machines Corporation Multiprocessor system
US5596749A (en) * 1992-09-21 1997-01-21 Texas Instruments Incorporated Arbitration request sequencer
US6098113A (en) * 1992-10-22 2000-08-01 Ncr Corporation Apparatus and method for address translation and allocation for a plurality of input/output (I/O) buses to a system bus
US5469544A (en) * 1992-11-09 1995-11-21 Intel Corporation Central processing unit address pipelining
US5499384A (en) * 1992-12-31 1996-03-12 Seiko Epson Corporation Input output control unit having dedicated paths for controlling the input and output of data between host processor and external device
JP3261665B2 (ja) * 1993-01-29 2002-03-04 インターナショナル・ビジネス・マシーンズ・コーポレーション データ転送方法及びデータ処理システム
JP2502932B2 (ja) * 1993-01-29 1996-05-29 インターナショナル・ビジネス・マシーンズ・コーポレイション デ―タ転送方法及びデ―タ処理システム
US5631935A (en) * 1993-05-06 1997-05-20 Run-Rad Unlimited Networking, Ltd. Method and apparatus for governing information transfer using an efficient transport protocol
US6289402B1 (en) * 1993-07-23 2001-09-11 Amiga Development Llc Bidirectional data transfer protocol primarily controlled by a peripheral device
GB2281137B (en) * 1993-08-20 1997-10-08 Advanced Risc Mach Ltd Data bus
AT400786B (de) * 1993-09-15 1996-03-25 Fendt Johann Mag Vorrichtung zur datenübertragung zwischen einem faxgerät und einer gegenstation
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
DE69513113T2 (de) * 1994-08-31 2000-06-21 Motorola Inc Verfahren zum synchronen Speicherzugriff
US5727005A (en) * 1994-08-31 1998-03-10 Le; Chinh H. Integrated circuit microprocessor with programmable memory access interface types
EP0700002B1 (en) * 1994-08-31 1999-05-19 Motorola, Inc. Modular chip select control circuit
JP3153078B2 (ja) * 1994-09-09 2001-04-03 日本電気株式会社 データ処理装置
JP2630271B2 (ja) * 1994-09-14 1997-07-16 日本電気株式会社 情報処理装置
US5717931A (en) * 1994-12-20 1998-02-10 Motorola, Inc. Method and apparatus for communicating between master and slave electronic devices where the slave device may be hazardous
US5610864A (en) 1994-12-23 1997-03-11 Micron Technology, Inc. Burst EDO memory device with maximized write cycle timing
US5526320A (en) 1994-12-23 1996-06-11 Micron Technology Inc. Burst EDO memory device
US6804760B2 (en) * 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
US6525971B2 (en) 1995-06-30 2003-02-25 Micron Technology, Inc. Distributed write data drivers for burst access memories
JPH0969047A (ja) * 1995-09-01 1997-03-11 Sony Corp Risc型マイクロプロセッサおよび情報処理装置
US5815648A (en) * 1995-11-14 1998-09-29 Eccs, Inc. Apparatus and method for changing the cache mode dynamically in a storage array system
US7681005B1 (en) * 1996-01-11 2010-03-16 Micron Technology, Inc. Asynchronously-accessible memory device with mode selection circuitry for burst or pipelined operation
US6317803B1 (en) * 1996-03-29 2001-11-13 Intel Corporation High-throughput interconnect having pipelined and non-pipelined bus transaction modes
US5911051A (en) * 1996-03-29 1999-06-08 Intel Corporation High-throughput interconnect allowing bus transactions based on partial access requests
US6981126B1 (en) * 1996-07-03 2005-12-27 Micron Technology, Inc. Continuous interleave burst access
US6401186B1 (en) 1996-07-03 2002-06-04 Micron Technology, Inc. Continuous burst memory which anticipates a next requested start address
JPH1097496A (ja) * 1996-09-20 1998-04-14 Sanyo Electric Co Ltd バス制御方法およびその方法を用いた装置
US6041379A (en) * 1996-10-04 2000-03-21 Northrop Grumman Corporation Processor interface for a distributed memory addressing system
US5887160A (en) * 1996-12-10 1999-03-23 Fujitsu Limited Method and apparatus for communicating integer and floating point data over a shared data path in a single instruction pipeline processor
US6662216B1 (en) * 1997-04-14 2003-12-09 International Business Machines Corporation Fixed bus tags for SMP buses
US5893157A (en) * 1997-05-28 1999-04-06 International Business Machines Corporation Blocking symbol control in a computer system to serialize accessing a data resource by simultaneous processor requests
US5895492A (en) * 1997-05-28 1999-04-20 International Business Machines Corporation Processor associated blocking symbol controls for serializing the accessing of data resources in a computer system
US5895494A (en) * 1997-09-05 1999-04-20 International Business Machines Corporation Method of executing perform locked operation instructions for supporting recovery of data consistency if lost due to processor failure, and a method of recovering the data consistency after processor failure
US7103742B1 (en) 1997-12-03 2006-09-05 Micron Technology, Inc. Burst/pipelined edo memory device
US6009261A (en) * 1997-12-16 1999-12-28 International Business Machines Corporation Preprocessing of stored target routines for emulating incompatible instructions on a target processor
US6477143B1 (en) 1998-01-25 2002-11-05 Dror Ginossar Method and apparatus for packet network congestion avoidance and control
US6311245B1 (en) * 1998-06-05 2001-10-30 Micron Technology, Inc. Method for time multiplexing a low-speed and a high-speed bus over shared signal lines of a physical bus
US6425041B1 (en) 1998-06-05 2002-07-23 Micron Technology, Inc. Time-multiplexed multi-speed bus
US7509484B1 (en) 2004-06-30 2009-03-24 Sun Microsystems, Inc. Handling cache misses by selectively flushing the pipeline
US7366829B1 (en) 2004-06-30 2008-04-29 Sun Microsystems, Inc. TLB tag parity checking without CAM read
US8290924B2 (en) * 2008-08-29 2012-10-16 Empire Technology Development Llc Providing answer to keyword based query from natural owner of information
US8627471B2 (en) * 2008-10-28 2014-01-07 Freescale Semiconductor, Inc. Permissions checking for data processing instructions
US9213665B2 (en) 2008-10-28 2015-12-15 Freescale Semiconductor, Inc. Data processor for processing a decorated storage notify
EP2798467A4 (en) * 2011-12-30 2016-04-27 Intel Corp CONFIGURABLE CORE WITH RESTRICTED COMMAND SET

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5126424A (ja) * 1974-08-29 1976-03-04 Tokyo Shibaura Electric Co Kiokuseigyosochi
JPS55160382A (en) * 1979-05-31 1980-12-13 Toshiba Corp Memory unit
JPS5786959A (en) * 1980-11-19 1982-05-31 Matsushita Electric Ind Co Ltd Data transfer control system
JPS6033634A (ja) * 1983-08-04 1985-02-21 Nec Corp デ−タ処理装置
JPS61237289A (ja) * 1985-04-15 1986-10-22 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション パイプライン方式メモリ・システム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3813651A (en) * 1971-12-29 1974-05-28 Tokyo Shibaura Electric Co Data processing system
US3938098A (en) * 1973-12-26 1976-02-10 Xerox Corporation Input/output connection arrangement for microprogrammable computer
US4263649A (en) * 1979-01-05 1981-04-21 Mohawk Data Sciences Corp. Computer system with two busses
US4360891A (en) * 1980-04-14 1982-11-23 Sperry Corporation Address and data interface unit
US4507732A (en) * 1981-10-05 1985-03-26 Burroughs Corporation I/O subsystem using slow devices
US4528625A (en) * 1982-02-11 1985-07-09 Texas Instruments Incorporated Input/output instruction execution in microcomputer
DE3323824A1 (de) * 1983-07-01 1985-01-03 Siemens AG, 1000 Berlin und 8000 München Speicherprogrammierbare steuerung
US4617662A (en) * 1983-12-12 1986-10-14 General Signal Corporation Vital message system with unique function identification
US4757439A (en) * 1984-11-02 1988-07-12 Measurex Corporation Memory bus architecture
US4727477A (en) * 1985-03-22 1988-02-23 International Business Machines Corp. Logically transportable microprocessor interface control unit permitting bus transfers with different but compatible other microprocessors

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5126424A (ja) * 1974-08-29 1976-03-04 Tokyo Shibaura Electric Co Kiokuseigyosochi
JPS55160382A (en) * 1979-05-31 1980-12-13 Toshiba Corp Memory unit
JPS5786959A (en) * 1980-11-19 1982-05-31 Matsushita Electric Ind Co Ltd Data transfer control system
JPS6033634A (ja) * 1983-08-04 1985-02-21 Nec Corp デ−タ処理装置
JPS61237289A (ja) * 1985-04-15 1986-10-22 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション パイプライン方式メモリ・システム

Also Published As

Publication number Publication date
EP0283115B1 (en) 1994-05-04
DE3889366T2 (de) 1994-10-20
EP0283115A2 (en) 1988-09-21
ATE105430T1 (de) 1994-05-15
DE3889366D1 (de) 1994-06-09
US4851990A (en) 1989-07-25
EP0283115A3 (en) 1989-08-30

Similar Documents

Publication Publication Date Title
US4851990A (en) High performance processor interface between a single chip processor and off chip memory means having a dedicated and shared bus structure
US5685005A (en) Digital signal processor configured for multiprocessing
US5619720A (en) Digital signal processor having link ports for point-to-point communication
EP0321156B1 (en) Data transfer controller between two busses
US4947366A (en) Input/output controller incorporating address mapped input/output windows and read ahead/write behind capabilities
US4878166A (en) Direct memory access apparatus and methods for transferring data between buses having different performance characteristics
US5619726A (en) Apparatus and method for performing arbitration and data transfer over multiple buses
US5109521A (en) System for relocating dynamic memory address space having received microprocessor program steps from non-volatile memory to address space of non-volatile memory
US5317715A (en) Reduced instruction set computer system including apparatus and method for coupling a high performance RISC interface to a peripheral bus having different performance characteristics
US5125088A (en) Computer system speed control at continuous processor speed
US5826068A (en) Integrated circuit with a serial port having only one pin
US4787032A (en) Priority arbitration circuit for processor access
US5740466A (en) Flexible processor-driven SCSI controller with buffer memory and local processor memory coupled via separate buses
US6493803B1 (en) Direct memory access controller with channel width configurability support
US5634076A (en) DMA controller responsive to transition of a request signal between first state and second state and maintaining of second state for controlling data transfer
US5611075A (en) Bus architecture for digital signal processor allowing time multiplexed access to memory banks
US20040022107A1 (en) Unidirectional bus architecture for SoC applications
US6415348B1 (en) Flexible microcontroller architecture
US5041962A (en) Computer system with means for regulating effective processing rates
JP4274582B2 (ja) バス・インタフェース制御回路
EP0508634B1 (en) Memory access for data transfer within an I/O device
JPH0954746A (ja) コンピュータシステム
JPH08263430A (ja) バス・ターンアラウンド・サイクルを省略する方法及びコンピュータ・システム
US5717875A (en) Computing device having semi-dedicated high speed bus
US6490638B1 (en) General purpose bus with programmable timing