JPH08255124A - データ処理システムおよび方法 - Google Patents

データ処理システムおよび方法

Info

Publication number
JPH08255124A
JPH08255124A JP7347694A JP34769495A JPH08255124A JP H08255124 A JPH08255124 A JP H08255124A JP 7347694 A JP7347694 A JP 7347694A JP 34769495 A JP34769495 A JP 34769495A JP H08255124 A JPH08255124 A JP H08255124A
Authority
JP
Japan
Prior art keywords
bus
slave
processing
data
pipe
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.)
Granted
Application number
JP7347694A
Other languages
English (en)
Other versions
JP4040704B2 (ja
Inventor
Adi Sapir
アディ・サピア
James B Eifert
ジェイムズ・ビー・エイファート
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.)
Motorola Solutions Inc
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Publication of JPH08255124A publication Critical patent/JPH08255124A/ja
Application granted granted Critical
Publication of JP4040704B2 publication Critical patent/JP4040704B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38—Information transfer, e.g. on bus
    • G06F13/40—Bus structure
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14—Handling requests for interconnection or transfer
    • G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system

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)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【課題】 順序通りのデータバス終了を有するパイプラ
イン化および/またはスプリット処理バス18,48の
ためのバスプロトコルを提供する。 【解決手段】 マスタ−スレイブ通信のために使用され
るバス18,48がスプリット処理バスおよび/または
パイプライン化バスである場合にバスマスタ12,1
3,42による初期アドレス要求をバススレイブ14,
15,44からの対応するデータ応答と整合する問題を
解決する。各バスマスタ12,13,42および各バス
スレイブ14,15,44は中央パイプカウンタ16,
72からの現在のパイプ深さ値21,51の格納のため
のカウンタ30〜33,75〜76を有する。処理スタ
ート信号20,50および処理終了信号22,52が選
択的にカウンタ30〜33,75〜76を増分しかつ減
分するために使用される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般的にはデータ処
理システムに関し、かつより特定的には順序通りの終了
(in−order termination)を有す
るバスプロトコルを実施するための方法および装置に関
する。
【0002】
【従来の技術】数多くのデータ処理システムは、処理ユ
ニットのような1つまたはそれ以上のマスタ装置、およ
びメモリ装置のようなマスタ装置がバスを介してアクセ
スして命令および/またはデータを読み出す必要がある
1つまたはそれ以上のスレイブ装置から構成される。命
令またはデータ(以後、データと称する)を読み出すた
めには、マスタ装置は一般にスレイブ装置に対し該装置
のどこにデータが見い出されるべきかを示す要求を送信
し、かつスレイブ装置は該要求をアクノレッジし次に要
求されたデータの送信へと進行する。そのような処理は
特にスレイブ装置がたまたま低速の応答装置であった場
合に完了するのに比較的長い時間を必要とする場合があ
る。
【0003】処理時間を早めるために、マスタ装置(単
数または複数)が応答を待つことなくスレイブ装置(単
数または複数)に要求を送信するシステムが知られてお
り、その場合は未決着のかつ処理を完了させるためにそ
れらの対応する応答が受信されるのを待機している1つ
またはそれ以上のマスタ装置からの数多くの要求が存在
し得る。これらの場合、スレイブ装置(単数または複
数)からバス上に受信した応答を対応する要求と整合す
るマスタ装置(単数または複数)に関して、前記応答が
要求と同じ順序にないかもしれないという、問題が生じ
る。スレイブからの対応する応答または返答に対するマ
スタによる初期要求のこの整合は特にマスタ−スレイブ
通信のために使用されるバスが分割またはスプリット処
理(split−transaction)バスおよび
/またはパイプライン化バス(pipelined b
us)である場合に問題となる。
【0004】
【発明が解決しようとする課題】スプリット処理バスは
同時に異なるバスマスタがアドレスバスおよびデータバ
スの所有権を持つことができるバスである。一例とし
て、スプリット処理バスが使用される場合、マイクロプ
ロセッサ#1はマイクロプロセッサ#2がデータバスを
使用するのと同時にアドレスバスを使用することができ
る。非スプリット処理バスでは、同じプロセッサがアド
レスバスおよびデータバスの双方のバスマスタである。
従って、非スプリット処理バスが使用される場合、アド
レスバスおよびデータバスの所有権は分割することがで
きない。スプリット処理バスはしばしばバスの帯域幅を
増大するためにマルチプロセッサシステムにおいて使用
される。
【0005】パイプライン化バスは1つの処理のアドレ
スフェーズが他の処理のデータフェーズとオーバラップ
できるようにするバスである。数多くのマルチプロセッ
サバスはスプリット処理およびパイプライン化を組み合
わせてアドレスバスおよびデータバスの双方による情報
転送を最大にする。
【0006】本発明はマスタ−スレイブ通信のために使
用されるバスがスプリット処理バスおよび/またはパイ
プライン化バスである場合にスレイブからの対応するデ
ータ応答に対しマスタによって初期要求を整合する問題
に向けられている。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、本発明に係わるデータ処理システム(10)におい
ては、以下の導体、すなわち、バス処理スタート信号を
転送するためのバス処理スタート用導体(20)、バス
処理終了信号を転送するためのバス処理終了用導体(2
2)、そしてパイプ深さ値を転送するための少なくとも
1つのパイプ深さ用導体(21)、を備えたバス、前記
バスに結合され、バス処理スタート信号を前記バスに提
供するバスマスタ(12)、前記バスに結合され、バス
処理終了信号を前記バスに提供するバススレイブ(1
4)、そして前記バスに結合され第1のカウント値を格
納する第1のカウンタ(16)であって、前記第1のカ
ウント値は前記バス処理スタート信号および前記バス処
理終了信号の双方に基づき調整され、前記第1のカウン
タは前記第1のカウント値を前記少なくとも1つのパイ
プ深さ用導体にパイプ深さ値として提供するもの、が設
けられる。
【0008】また、本発明によれば、データ処理システ
ム(10,40)において順序通りの終了を有するバス
プロトコルを実施する方法が提供され、前記データ処理
システムはバス(18)によってバススレイブ(14)
に結合されたバスマスタ(12)を有するものであり、
前記方法は、第1のバス処理を開始するために処理スタ
ート信号(20)を肯定する段階、前記第1のバス処理
の間に前記バス(18)によって前記バススレイブ(1
4)にパイプ深さ値を提供する段階、前記パイプ深さ値
を第1の処理のパイプ深さ値として前記バススレイブ
(14)内に格納する段階、もし前記第1の処理のパイ
プ深さ値が所定の値であれば、バス(18)の所有権を
前記バススレイブ(14)に承認しかつ前記バススレイ
ブ(18)からの第1のデータ値を前記バス(18)に
提供する段階、もし前記第1の処理のパイプ深さ値が前
記所定の値でなければ、前記バス(18)の所有権の前
記バススレイブ(14)への承認を抑制する段階、第2
のバス処理を開始するために前記処理スタート信号を肯
定する段階、第2のバス処理を開始するために前記処理
スタート信号を肯定する段階に応じて、前記バススレイ
ブ(14)に格納された前記第1の処理のパイプ深さ値
に関して増分動作または減分動作の内の1つを行ない調
整された第1の処理のパイプ深さ値を生成する段階、も
し前記調整された第1の処理のパイプ深さ値が所定の値
であれば、バス(18)の所有権を前記バススレイブ
(14)に承認しかつ前記バススレイブ(14)から前
記第1のデータ値を前記バス(18)に提供する段階、
そしてもし前記調整された第1の処理のパイプ深さ値が
前記所定の値でなければ、前記バス(18)の所有権を
前記バススレイブ(14)に承認するのを抑制する段
階、を具備することを特徴とする。
【0009】さらに本発明の他の態様に係わるデータ処
理システム(40)においては、バス(48)であっ
て、バス処理スタート信号を転送するためのバス処理ス
タート用導体(50)、バス処理終了信号を転送するた
めのバス処理終了用導体(52)、パイプ深さ値を転送
するための少なくとも1つのパイプ深さ用導体(5
1)、アドレスバス(58)、そしてデータバス(5
9)、を備えたもの、前記バスに結合され、前記バス処
理スタート信号を前記バスに提供するバスマスタ(4
2)、前記バスに結合され、前記バス処理終了信号を前
記バスに提供する第1のバススレイブ(46)、そして
前記バスに結合され、前記バス処理終了信号を前記バス
に提供する第2のバススレイブ(44)、を具備し、前
記第1のバススレイブ(46)は、前記パイプ深さ値を
決定するための第1のカウンタ(77)であって、前記
パイプ深さ値は前記バス処理スタート信号の肯定に応じ
て増分され、前記パイプ深さ値は前記バス処理終了信号
の肯定に応じて減分されるもの、を具備し、そして前記
第2のバススレイブ(44)は、前記第1のカウンタか
ら前記パイプ深さ値を受信しかつ前記第2のバススレイ
ブ(44)がいつ前記データバス(59)の所有権を持
つかを計算する第2のカウンタ(76)、を具備するこ
とを特徴とする。
【0010】
【発明の実施の形態】1つの実施形態では、本発明は順
序通りのデータバス終了を有するバスプロトコルを実施
するための方法および装置を提供する。本発明はマスタ
−スレイブ通信のために使用されるバスがスプリット処
理バスおよび/またはパイプライン化バスである場合に
バスマスタによって初期アドレス要求をスレイブからの
対応するデータ応答と整合する上での問題を解決する。
【0011】用語「バス」は、データ、アドレス、制
御、またはステータスのような、1つまたはそれ以上の
種々のタイプの情報を転送するために使用できる複数の
信号または導体に言及するために使用される。用語「肯
定する(assert)」および「否定する(nega
te)」は信号、ステータスビット、または同様の装置
を、それぞれ、その論理的に真のまたは論理的に偽の状
態にする場合に使用される。もし論理的に真の状態が論
理レベル“1”であれば、論理的に偽の状態は論理レベ
ル“0”である。また、もし論理的に真の状態が論理レ
ベル“0”であれば、論理的に偽の状態は論理レベル
“1”である。
【0012】図1は、バス18によって双方向的に結合
された1つまたはそれ以上のバスマスタ装置12〜13
および1つまたはそれ以上のバススレイブ装置14〜1
5を含むデータ処理システム10を示している。中央パ
イプカウンタ16もまたバス18に結合されている。
【0013】バス18はバスマスタ12〜13によって
導体20を介してバススレイブ14〜15および中央パ
イプカウンタ16に供給される処理スタート信号を含
む。バス18はまたバススレイブ14〜15の内の1つ
によってバスマスタ12〜13に、中央パイプカウンタ
16に、そしてバススレイブ14〜15の内の他のもの
に導体22を介して供給される処理終了信号を含む。ま
た、バス18は中央パイプカウンタ16によって導体2
1を介してバスマスタ装置12〜13およびバススレイ
ブ装置14〜15に供給される1つまたはそれ以上の現
在の(current)パイプ深さ信号21を含む。ま
た、例えば、アドレス信号、データ信号、および種々の
制御信号のような、バス18に含まれる他の信号(図示
せず)がある。
【0014】バスマスタ12はパイプ深さ(pipe
depth)を追跡するためにパイプカウンタ30を含
み、かつ同様に、バスマスタ13はパイプ深さを追跡す
るためにパイプカウンタ31を含む。バススレイブ14
はパイプ深さを追跡するためにパイプカウンタ32を含
み、かつ同様にバススレイブ15はパイプ深さを追跡す
るためにパイプカウンタ33を含む。本発明の1つの実
施形態では、データ処理システム10のすべては同じ集
積回路上に集積される。本発明の別の実施形態では、デ
ータ処理システム10の種々の部分は異なる集積回路上
に集積される。
【0015】図2は、タイミング図形式で、本発明の一
実施形態に係わる図1のデータ処理システム10の動作
を示す。本発明の一実施形態においては、クロック信号
34はバスマスタ12によってのみ使用される内部クロ
ックである。本発明の別の実施形態では、クロック信号
34はバス18に含まれかつすべてのバスマスタ12〜
13およびすべてのバススレイブ14〜15、ならびに
中央パイプカウンタ16に提供される。
【0016】図3は、バス48を介して双方向的に結合
された1つまたはそれ以上のバスマスタ装置42および
1つまたはそれ以上のバススレイブ装置44を含むデー
タ処理システム40を示す。本発明の一実施形態では、
バスマスタ42は中央処理ユニット(CPU)であり、
バススレイブ44はスレイブモジュールであり、かつ中
央パイプカウンタ46はシステム統合ユニット(SI
U)である。情報は外部バス80を介してデータ処理シ
ステム40へかつデータ処理システム40から通信され
る。本発明の一実施形態では、データ処理システム40
のすべては同じ集積回路上に集積され、かつSIU46
は外部バス80を介して集積回路の外部に通信するため
に使用される。本発明の別の実施形態では、データ処理
システム40の種々の部分は異なる集積回路上に集積さ
れる。
【0017】バス48は導体50を介してCPU42に
よってスレイブ44およびSIU46に供給される転送
スタート信号、導体51を介してSIU46によりCP
U42およびスレイブ44に供給される1つまたはそれ
以上の現在のパイプ深さ信号51、導体52を介してス
レイブ44またはSIU46によりCPU42へかつス
レイブ44およびSIU46の内の他方のものに供給さ
れる転送アクノレッジ信号、導体53を介してスレイブ
44またはSIU46により供給されかつバス48上の
他の装置によって受信されるバスエラー信号、導体54
を介してスレイブ44またはSIU46によりCPU4
2およびSIU46に供給されるアドレス認識信号、そ
して導体55を介してスレイブ44またはSIU46に
よりCPU42およびSIU46に供給されるアドレス
アクノレッジ信号を含む。
【0018】バス48はまた導体56を介してCPU4
2によりスレイブ44およびSIU46に供給される中
止信号(abort signal)、導体57を介し
てCPU42によりスレイブ44およびSIU46に供
給される読み出し/書き込み信号、導体58を介してC
PU42によりスレイブ44およびSIU46に供給さ
れる複数のアドレス信号、導体58を介してスレイブ4
4またはSIU46からCPU42へと供給されるかあ
るいは導体58を介してCPU42からスレイブ44ま
たはSIU46へと供給される複数のデータ信号、そし
て最後に、導体60を介して転送されバス18に含まれ
るその他の信号(例えば、種々の制御信号)が含まれ
る。
【0019】CPU42はカウンタ75に双方向的に結
合された制御回路70を含む。スレイブ44はカウンタ
76に双方向的に結合された制御回路71を含む。SI
U46はカウンタ77に双方向的に結合された制御回路
72を含む。
【0020】図4は、図表形式で、本発明の一実施形態
に係わる図2のデータ処理システム40の動作を示す。
【0021】図5は、流れ図形式で、本発明の一実施形
態に係わる図2のデータ処理システム40の動作を示
す。長円形90〜91はスレイブ44におけるアドレス
への処理の開始を示す(図3を参照)。四角形92〜9
4はバススレイブ44がデータバス59の所有権を有す
るか否かを示す。
【0022】図6は、タイミング図形式で、本発明の一
実施形態に係わる図2のデータ処理システム40の動作
を示す。
【0023】次に本発明の動作を説明する。本発明はマ
スタ−スレイブ通信のために使用されるバスがスプリッ
ト(分割)処理バスおよび/またはパイプライン化バス
である場合にバスマスタによる初期アドレス要求をスレ
イブからの対応するデータ応答と整合する問題を解決す
る。本発明はデータバスにおける順序通りの終了(in
−order termination)を有するバス
プロトコルを実施するための方法および装置を提供す
る。
【0024】図1を参照すると、本発明の一実施形態で
は中央パイプカウンタ16が現在のパイプ深さ(すなわ
ち、係属中の処理の数)を追跡するために使用される。
中央パイプカウンタ16は新しい処理が開始されるたび
ごとに(すなわち、処理スタート信号20が肯定される
たびごとに)増分され、かつ処理が完了しまたは終了す
るたびごとに(すなわち、処理終了信号22が肯定され
るたびごとに)減分される。おのおののバスマスタ12
〜13は現在のパイプ深さが所定の最大パイプ深さより
小さい場合にのみ新しい処理を開始することができる。
図2に示された本発明の実施形態に対しては、最大パイ
プ深さは2である。
【0025】バスマスタ(例えば、12)によって新し
い処理が開始されたとき、該処理が向けられるバススレ
イブ(例えば、14)は現在のパイプ深さ信号21から
現在のパイプ深さ値を受信しかつパイプカウンタ32へ
と格納する。このバススレイブ14は次に1つの処理が
完了しまたは終了するたびごとに(すなわち、処理終了
信号22が肯定されるたびごとに)パイプカウンタ32
を減分する。バススレイブのパイプカウンタ32が
“0”に減分されたとき、バススレイブ14はそれが次
の利用可能なデータフェーズの間にデータバスの所有権
を持つことを知る。
【0026】バスマスタ(例えば、12)が処理を開始
するたびごとに、バスマスタ12は受け取り側のバスス
レイブ(例えば、14)と同様に該バススレイブのデー
タがデータバス上に得られることを知るためにパイプ深
さを追跡しなければならない。従って、バスマスタ12
は、バススレイブ14のように、現在のパイプ深さ信号
21から現在のパイプ深さ値をそのパイプカウンタ30
に格納しなければならない。バスマスタ12は次に処理
が完了しまたは終了するたびごとに(すなわち、処理終
了信号22が肯定されるたびごとに)パイプカウンタ3
0を減分する。バスマスタのパイプカウンタ30が
“0”まで減分されたとき、バスマスタ12は次の利用
可能なデータフェーズの間にバススレイブ14からデー
タバス上にデータを受信していることを知る。
【0027】バスマスタ12〜13はまた現在のパイプ
深さが所定の最大のパイプ深さより小さいか否かを判定
するため現在のパイプ深さ信号21を監視しなければな
らない。バスマスタ12〜13は現在のパイプ深さが前
記最大のパイプ深さであれば(すなわち、パイプが満杯
であれば)新しい処理を開始することはできない。本発
明のいくつかの実施形態においては、1つまたはそれ以
上のバスマスタ12〜13はまたそれらのパイプカウン
タ30〜31内にバスマスタ12〜13がパイプ深さが
その最大パイプ深さにいつ到達するかおよび到達すると
ことを予期できるようにする回路を持つことができる。
この方法の利点はバスマスタ12〜13がパイプがまだ
満杯ではなく従って現在のパイプ深さ信号によって中央
パイプカウンタ16から現在のパイプ深さが得られる前
でも新しい処理を開始できるようにすることである。本
発明は何らのデータバス調停または承認ラインも必要と
しないことに注意を要する。
【0028】さらに図1を参照すると、データ処理シス
テム10はすべてバス18に結合された中央パイプカウ
ンタ16、1つまたはそれ以上のバスマスタ12〜1
3、および1つまたはそれ以上のバススレイブ14〜1
5を有する。図1は、本発明を実施するためにバス18
に含めることができる一組の基本的な制御信号を示して
いる。別の実施形態では、本発明を実施するためにより
多くの、より少ない、または異なる信号を使用すること
ができる。バス18はまたアドレスバス(別個には示さ
れていない)およびデータバス(別個には示されていな
い)を含む。
【0029】図1に示された本発明の実施形態では、バ
スマスタ12〜13は処理スタート信号20を肯定する
ことによって新しいバスサイクルを開始し、かつバスス
レイブ14〜15は処理終了信号22を肯定することに
よってそのバスサイクルを完了または終了させる。おの
おののバスサイクルは対応するアドレスフェーズおよび
対応するデータフェーズを有する。図1に示された本発
明の実施形態では、おのおのの読み出しバスサイクルは
バスマスタ12〜13がアドレス値をバス18に提供す
るアドレスフェーズとこれに続くバススレイブ14〜1
5が対応するデータ値をバス18に提供するデータフェ
ーズを有する。
【0030】中央パイプカウンタ16は係属しているア
クセスの数を追跡しかつデータ処理システム10におけ
るバスマスタ12〜13およびバススレイブ14〜15
に対し現在のパイプ深さ信号21を提供する。図1に示
された本発明の実施形態では、中央パイプカウンタ16
は処理の開始が生じるたびごとに(すなわち、処理スタ
ート信号20が肯定されるたびごとに)増分され、かつ
処理終了が生じるたびごとに(すなわち、処理終了信号
22が肯定されるたびごとに)減分される。
【0031】さらに図1を参照すると、おのおののバス
スレイブ14〜15は処理スタート信号20およびアド
レス値をバスマスタ12〜13から受信する。おのおの
のバススレイブ14〜15は受信したアドレス値をこの
読み出しバスサイクルがそれ自身をアクセスしようとし
ているかあるいは他のバススレイブをアクセスしようと
しているかを判定するために使用する。もしバススレイ
ブ14〜15がその読み出しサイクルが自分に向けられ
ていないものと判定すれば、その読み出しバスサイクル
には応答しない。もしバススレイブ14〜15がその読
み出しバスサイクルが自分に向けられているものと判定
すれば、バススレイブ14〜15はこの特定の読み出し
バスサイクルに対応するデータフェーズの間にバス18
のデータバス部分をドライブすることによって応答しな
ければならない。バス18はまたバススレイブ14〜1
5に対して現在のバスサイクルが読み出しアクセスであ
ることを示すためにバスマスタ12〜13によって提供
される読み出し/書き込み信号(別個には示されていな
い)を含むことに注意を要する。
【0032】重要な問題はある特定のバススレイブ14
〜15がどのようにしてどのデータフェーズ“N”がそ
の特定のスレイブにアクセスしたアドレスフェーズ
“N”に対応するかを決定できるかである。すなわち、
バスサイクルNの間に、もしバススレイブ14がバス1
8のアドレス部分によってそれ自身のアドレス値の1つ
を受信すれば、バススレイブ14はバス18のデータ部
分のどのタイムスロットがそのバスサイクルNに対応す
るかを決定しなければならない。次にバススレイブ14
はバスサイクルNに対応するバス18のデータ部分にお
けるタイムスロットの間にバス18のデータ部分に対し
そのデータ値を提供しなければならない。
【0033】さらに、バスサイクルNを開始したバスマ
スタ12はまたバス18のデータ部分上のどのタイムス
ロットがバスサイクルNに対応するかを決定しバスマス
タ12がバススレイブ14によって提供される戻りのデ
ータをラッチできるようにしなければならない。本発明
の一実施形態では、バスマスタ12はそれが開始したそ
れぞれの完了していない処理に対し別個のパイプ深さ値
を記憶する。この記憶されたパイプ深さ値は前記処理終
了信号22が肯定されるたびごとに減分される。従っ
て、同じパイプ深さ値が現在のパイプ深さ信号21から
捕捉されかつマスタのパイプカウンタ30およびスレイ
ブのパイプカウンタ32の双方に格納される。両方のパ
イプカウンタ30および32は処理終了信号22が肯定
されるたびごとに減分される。2のパイプ深さに対し、
バスマスタ12は1つのパイプ深さ値を記憶する必要が
あるのみであることに注意を要する。1つまたはそれ以
上の格納されるパイプ深さ値はパイプカウンタ30のラ
ッチ(図示せず)内に格納される。バスサイクルNを完
了させるため、バススレイブ14は処理終了信号22を
肯定しなければならない。
【0034】特定のバススレイブ14〜15がどのよう
にしてどのデータフェーズ“N”がその特定のバススレ
イブ14〜15に属するかを決定できるかに関する主要
な問題は以下のようにして解決される。処理N+1の、
新しい処理が発行されたとき、該処理が発行されたバス
スレイブ14は信号21からパイプカウンタ32へと現
在のパイプ深さ値をラッチしかつ格納する。パイプカウ
ンタ32はそれが所定の整合値に到達するかあるいはロ
ールオーバするまで増分されるアップカウンタとするこ
とができる。パイプカウンタ32は現在のパイプ深さ値
がロードされるダウンカウンタとするとことができ、か
つ所定の整合値またはゼロまで減分される。あるいは、
パイプカウンタ32は状態マシン(state mac
hine)とすることができる。同じことは他のパイプ
カウンタ30,31および33の構成についてもあては
まる。
【0035】本発明の一実施形態においては、パイプカ
ウンタ32はバススレイブ14へのアクセスが受信され
たときに信号21からの現在のパイプ深さ値によってロ
ードされるダウンカウンタである。バススレイブ14は
次にパイプカウンタ32の該カウンタ値を処理が完了す
るたびごとに(すなわち、処理終了信号22が肯定され
るたびごとに)減分する。従って、パイプカウンタ32
のカウンタ値がゼロに到達したとき、バススレイブ14
は次の利用可能なデータフェーズは処理N+1に対する
ものであることを判定する。従って、次の利用可能なデ
ータフェーズの間に、バススレイブ14はそのデータ値
をバス18のデータバス部分上にドライブする。
【0036】本発明はデータバスに対して何らの調停
(arbitration)も必要としないことに注意
を要する。その結果、データバス調停または承認信号は
必要とされない。その代わりに、おのおののバスマスタ
12〜13およびおのおののバススレイブ14〜15は
それがいつデータバスの所有権を持つかを判定するため
パイプカウンタ30〜33を有し、一方中央パイプカウ
ンタ16が現在のパイプ深さを追跡するために使用され
る。
【0037】図2は図1におけるバス18上の2つのパ
イプライン化された処理を示す。「マスタA」(図2を
参照)がバスマスタ12(図1を参照)であり、「スレ
イブA」がバススレイブ14であり、「マスタB」はバ
スマスタ13であり、そして「スレイブB」がバススレ
イブ15であると仮定する。バスマスタ12からの最初
の処理はバススレイブ14(マスタAからスレイブA)
であり、かつ第2の処理はバスマスタ13からバススレ
イブ15(マスタBからスレイブB)である。クロック
34がタイミング関係を指示するために使用されかつバ
スマスタ12〜13、バススレイブ14〜15、および
中央パイプカウンタ16によって使用される。理解を容
易にするため、おのおののクロック34の期間または周
期が引き続きT1,T2,T3およびT4と名付けられ
る4つの等しい時間分割部またはチック(ticks)
に分割される。本発明の別の実施形態ではバス18上の
種々の信号の間の異なるタイミング関係を使用すること
ができる。
【0038】バスマスタ12は最初のT3において処理
スタート信号20を肯定しかつバス18のアドレスバス
部分をバススレイブ14のためのアドレス値によってド
ライブすることにより最初の処理を開始する。前に未完
了の処理がないため、中央パイプカウンタ16によって
信号21に供給される現在のパイプ深さ値はゼロであ
る。おのおののバススレイブ14〜15は前記処理スタ
ート信号20の肯定に対しアドレス値をラッチしかつ該
アドレス値がそれ自身のものの1つであるかを判定する
ことによって応答する。前記アドレス値はバススレイブ
14のためのものであるから、バススレイブ14は信号
21から現在のパイプ深さ値(この場合“0”)をラッ
チしかつこの値をパイプカウンタ32に格納する。バス
マスタ12はまた信号21から現在のパイプ深さ値(こ
の場合は“0”)をラッチしかつこの値をパイプカウン
タ30に格納する。図2に示された「スレイブAパイプ
カウント」値はパイプカウンタ32に格納された値を表
す。
【0039】前記アドレス値はバススレイブ15のため
のものでないから、バススレイブ15は信号21から現
在のパイプ深さ値をラッチせずかつパイプカウンタ33
には何らの値も格納されない。図2に示された「スレイ
ブBパイプカウント」値はパイプカウンタ33に格納さ
れた値を表す。処理スタート信号20の肯定に応じて、
中央パイプカウンタ16はそのカウンタを増分しかつ現
在のパイプ深さ信号21を新しい現在のパイプ深さ値
(すなわち、“1”)によってドライブする。
【0040】パイプカウンタ32に格納されたカウンタ
値は“0”であるから、バススレイブ14は次のデータ
フェーズがバススレイブ14に属することを判定する。
従って、バススレイブ14はデータバスの次に利用可能
なタイムスロットの間に該データバスをその応答データ
値によってドライブする。パイプカウンタ30に格納さ
れたカウンタ値が“0”であるから、バスマスタ12は
バススレイブ14がデータバスの次に利用可能なタイム
スロットの間にそのデータ値によって応答していること
を判定する。
【0041】バスマスタ13は第2のT3において処理
スタート信号20を肯定しかつバス18のアドレスバス
部分をバススレイブ15のためのアドレス値によってド
ライブすることによって第2の処理を開始する。1つの
前の未完了の処理があるため、中央パイプカウンタ16
によって信号21に提供される現在のパイプ深さ値は
“1”である。
【0042】おのおののバススレイブ14〜15は前記
処理スタート信号20の肯定に対しアドレス値をラッチ
しかつ該アドレス値がそれ自身ものの1つであるか否か
を判定することによって応答する。前記アドレス値はバ
ススレイブ15のためのものであるから、バススレイブ
15は信号21からの現在のパイプ深さ値(この場合
“1”)をラッチしかつこの値をパイプカウンタ33に
格納する。同様に、バスマスタ13は信号21から現在
のパイプ深さ値(この場合“1”)をラッチしこの値を
パイプカウンタ31に格納する。前記アドレス値はバス
スレイブ14のためのものでないから、バススレイブ1
4は信号21からの現在のパイプ深さ値をラッチせずか
つパイプカウンタ32には何らの新しい値も格納され
ず、パイプカウンタ32は依然として“0”を含んでい
る。処理スタート信号20の第2の肯定に応答して、中
央パイプカウンタ16はそのカウンタを増分しかつ現在
のパイプ深さ信号21を新しい現在のパイプ深さ値(す
なわち、“2”)でドライブする。
【0043】パイプカウンタ33に格納されたカウンタ
値は“1”であるから、バススレイブ15は次のデータ
フェーズはバススレイブ15に属さないことを判定す
る。従って、バススレイブ15は待機しかつデータバス
をその応答データ値によってドライブしない。パイプカ
ウンタ31に格納されたカウンタ値は“1”であるか
ら、バスマスタ13はバススレイブ15がデータバスの
次に利用可能なタイムスロットの間にそのデータ値によ
って応答していないことを判定する。
【0044】バススレイブ14が最初の処理に対するデ
ータフェーズを完了したとき、バススレイブ14は処理
終了信号22を肯定する。バススレイブ15およびバス
マスタ13は処理終了信号22の肯定に対してそれらの
それぞれのパイプカウンタ31および33に格納された
値を減分することによって応答する。同様に、中央パイ
プカウンタ16はそのカウンタを減分しかつ現在のパイ
プ深さ信号21を新しい現在のパイプ深さ値(すなわ
ち、“1”)によってドライブすることにより前記処理
終了信号22の肯定に応答する。
【0045】パイプカウンタ33に格納されたカウンタ
値は今や“0”に減分されたから、バススレイブ15は
次のデータフェーズがバススレイブ15に属することを
判定する。従って、バススレイブ15はデータバスの次
に利用可能なタイムスロットの間にその応答データ値に
よってデータバスをドライブする。パイプカウンタ31
に格納されたカウンタ値が“0”であるから、バスマス
タ13はデータバスの次に利用可能なタイムスロットの
間にバススレイブ15がそのデータ値によって応答して
いることを判定する。
【0046】バススレイブ15が第2の処理に対するデ
ータフェーズを完了したとき、バススレイブ15は処理
終了信号22を肯定する。中央パイプカウンタ16は処
理終了信号22の肯定に対してそのカウンタを減分しか
つ現在のパイプ深さ信号21を新しい現在のパイプ深さ
値(すなわち、“0”)によってドライブすることによ
り応答する。
【0047】図1および図2は2のパイプ深さを示して
いるが、本発明の別の実施形態では任意のパイプ深さを
使用することができる。現在のパイプ深さ信号21の
数、パイプカウンタ30〜33のビットおよびラッチの
数、そして中央パイプカウンタ16のビットの数は任意
のパイプ深さに適応させるために合わせて変更すること
ができる。
【0048】バスマスタ12〜13は最大のパイプ深さ
に到達したか否か、かつ従って新しい処理が開始できる
か否かを判定するために現在のパイプ深さ信号21を使
用できることに注目すべきである。もし最大パイプ深さ
に到達していれば、バスマスタ12〜13は新しい処理
を開始するのを控える。もしバスマスタ12〜13が現
在のパイプ深さ信号21から最大パイプ深さに到達して
いることを判定すれば、バスマスタ12〜13は中央パ
イプカウンタ16がバススレイブ14〜15の1つから
の肯定された処理終了信号22を受信したことに応じて
現在のパイプ深さ値を減分するまで現在のパイプ深さ信
号21を監視し続ける。いったん現在のパイプ深さ信号
21がパイプ深さがもはやその最大値にないことを示せ
ば、バスマスタ12〜13はバス18によって新しい処
理を開始することができる。
【0049】図3は、本発明の別の実施形態を示す。図
3に示された転送スタート信号50は図1に示された処
理スタート信号と同じ一般的な目的に使用され、双方の
信号は新しい処理のアドレスフェーズを開始するために
バスマスタによって肯定される。図3に示された転送ア
クノレッジ信号52は図1に示された処理終了信号と同
じ一般的な目的に使用され、両方の信号は処理のデータ
フェーズの完了を示すためにバススレイブによって肯定
される。また、図3に示された現在のパイプ深さ信号5
1は図1に示された現在のパイプ深さ信号と同じ一般的
な目的に使用され、双方は現在のパイプ深さをバスマス
タおよびバススレイブに対し送信する(broadca
st)。
【0050】本発明の一実施形態においては、SIU4
6は中央パイプカウンタおよびバススレイブの双方とし
て機能する。別の実施形態ではすべてのバススレイブか
ら分離した中央パイプカウンタ46を持つことができ
る。また、本発明の別の実施形態では、1つの中央パイ
プカウンタ46を持つ代わりに、おのおののバスマスタ
(例えば、42)が現在のパイプ深さを追跡しかつその
バスマスタが開始するおのおのの処理に対し現在のパイ
プ深さ信号51を提供することができる。
【0051】図3に示された本発明の実施形態において
は、バススレイブ44は処理がエラーなしに完了した場
合には転送アクノレッジ信号52を肯定することによっ
て、あるいは処理がバスエラーとともに完了した場合に
はバスエラー信号53を肯定することによって、処理の
データフェーズの完了を指示することができる。従っ
て、バスマスタ42、バススレイブ44、および中央パ
イプカウンタ46はそれらのそれぞれのカウンタ75〜
77を適切に減分するために転送アクノレッジ信号52
およびバスエラー信号53の双方を監視しなければなら
ない。本発明の別の実施形態では、カウンタ75〜76
が処理のデータフェーズが完了したことを示す1つまた
はそれ以上の信号にもとづき選択的に調整(すなわち、
増分または減分)できる限り、処理のデータフェーズの
完了を示すために1つまたはそれ以上の信号の任意の組
み合わせを使用することができる。カウント75〜76
はまた状態マシンとして実施できることに注意を要す
る。
【0052】図3に示された本発明の実施形態では、ア
ドレス認識信号54およびアドレスアクノレッジ信号5
5が処理のアドレスフェーズの完了を指示するためにバ
ススレイブ14によって提供される。また、処理のアド
レスフェーズを中止するためにバスマスタ42によって
中止信号(abort signal)56が提供され
る。従って、バスマスタ42、バススレイブ44、およ
び中央パイプカウンタ46はそれらのそれぞれのカウン
タ75〜77を適切に増分するために前記転送スタート
信号50および前記中止信号56の双方を監視しなけれ
ばならない。本発明の別の実施形態ではある処理が開始
されておりかつ対応するデータフェーズが完了する前に
中止されないことを示すために1つまたはそれ以上の信
号の任意の組み合わせを使用することができる。
【0053】図3に示された本発明の実施形態において
は、アドレスバス58、データバス59、および読み出
し/書き込み信号57は明白に示されている。アドレス
バス58およびデータバス59はパイプライン化された
スプリット(分割)処理バスであることに注目すべきで
ある。バス48はまた、例えば、アドレス属性情報(例
えば、スーパバイザ/ユーザ )のような、情報を転送
するためまたは制御のために使用できるその他の信号6
0を含む。
【0054】図4は、本発明の一実施形態においてカウ
ンタ77におけるパイプ深さ値がどのように増分されか
つ減分されるかを示す。「前のパイプ深さ」と題する欄
はカウンタ77(図3を参照)に格納された現在値を示
す。「次のパイプ深さ」と題する欄はバス48上の種々
の信号によって決定される、カウンタ77に格納される
べき次の値を示す。図4に示された本発明の実施形態に
おいては、次のパイプ深さは前記転送スタート信号5
0、アドレスアクノレッジ信号55、中止信号56、お
よび転送アクノレッジ信号52の関数である。
【0055】本発明のいくつかの実施形態においては、
次のパイプ深さはまた処理のデータフェーズの完了を示
すために転送アクノレッジ信号52と同様にして使用す
ることができるバスエラー信号の関数である。本発明の
別の実施形態ではバスエラー信号53を使わなくてもよ
く、あるいはこのような方法でバスエラー信号53を使
わなくてもよい。
【0056】「T3で新しいサイクルを開始?」と題す
る欄は最大のパイプ深さに到達したか否か、したがって
バスマスタ42がバス48上に新しい処理またはバスサ
イクルを開始できるか否かを示す。図3に示されたデー
タ処理システム40のための最大パイプ深さは2である
から、バスマスタ42は次のパイプ深さの値が“2”に
なる場合は新しい処理を開始しない。
【0057】本発明のいくつかの実施形態においては、
バスマスタ42における制御回路70は中央パイプカウ
ンタ46における制御回路72の大部分またはすべてを
複製し、それによってバスマスタ42が効率的にいつ最
大パイプ深さに到達するかを予想できるようにする。し
たがって、もしバス48のタイミングが、バスマスタ4
2が信号51によって次のパイプ深さの値が受信される
前に新しい処理を開始するか否かを判定することを必要
とする場合、バスマスタ42は中央パイプカウンタ46
と同様にして次のパイプ値を計算することによりいつ最
大パイプ深さに到達するかを効率的に予想することがで
きる。
【0058】本発明の別の実施形態では、バスマスタ4
2はより簡単なカウンタ75を有しかつ現在のパイプ深
さ信号51によって中央パイプカウンタ46から次のパ
イプ深さの値が供給されるを待たなければならないよう
にすることができる。
【0059】図5は、バススレイブ44が処理に応答す
るために利用できかつ処理が中止されていないと仮定し
て、バススレイブ44の動作を流れ図で示す。長円形9
0を参照すると、もし転送スタート信号50が肯定され
かつ現在のパイプ深さ信号51が2進“x1”であれ
ば、バススレイブ44は応答する前にデータバス59が
承認されるのを待機する(四角形92を参照)。カウン
タ76は現在のパイプ深さ信号51の最下位ビットを格
納することに注意を要する。したがって、カウンタ76
は“1”を格納する。もし転送アクノレッジ信号52が
肯定されれば、カウンタ76は減分され、したがってそ
れは今や“0”を含み、したがってデータバス59が承
認されかつバススレイブ44はデータバス59を適切な
データ値でドライブすることにより応答する(四角形9
3を参照)。転送アクノレッジ信号52が次にバススレ
イブ44によって肯定され、カウンタ76は影響されず
(それは“0”を格納し続ける)、かつデータバス59
は今や他の処理が継続していないためアイドルである
(四角形94を参照)。
【0060】長円形91を参照すると、もし転送スター
ト信号50が肯定されかつ現在のパイプ深さ信号51が
2進“x0”であれば、バススレイブ44はデータバス
59が承認されたものと判定し、かつバススレイブ44
はデータバス59を適切なデータ値によってドライブす
ることにより応答する(四角形93を参照)。次に転送
アクノレッジ信号52がバススレイブ44によって肯定
され、カウンタ76は影響されず(それは“0”を格納
し続ける)、そしてデータバス59は他の処理が継続し
ていないためアイドルになる(四角形94を参照)。
【0061】図6はバス48(図3を参照)上の3つの
パイプライン化処理を示す。第1の処理は第1のバスス
レイブ(例えば、バススレイブ14)への読出しアクセ
スであり、第2の処理は第2のバススレイブへの書込み
アクセスであり、そして第3の処理は第3のバススレイ
ブへの読出しアクセスである。クロック64はタイミン
グ関係を示すために使用されかつバスマスタ12、バス
スレイブ14、および中央パイプカウンタ46によって
使用される。理解を容易にするため、クロック34のそ
れぞれの周期全体は順次T1,T2,T3およびT4と
名付けられた4つの等しい時間分割部またはチックに分
割されている。本発明の別の実施形態ではバス48上の
種々の信号の間で異なるタイミング関係を使用すること
ができる。アドレス信号58の所有権のための任意の形
式のアドレスバス調停を使用できることに注意を要す
る。
【0062】図6を参照すると、書込みアクセスに対し
ては、バスマスタ42はT4の間にデータ値によってデ
ータバス59をドライブし、かつ読出しアクセスに対し
ては、バススレイブ44はT2の間にデータバス59を
データ値によってドライブする。しかしながら、データ
バス59は順序通り終了する(in−order te
rmination)バスであるから、各々のバススレ
イブはそれがデータバス59の所有権を有するかを追跡
し、それによって適切な時間に転送アクノレッジ信号5
2を肯定することによって処理のデータフェーズを適切
に終了できるようにしなければならない。したがって、
第2のスレイブが書込みアクセスに対してアクセスされ
かつT4の間にデータバス59からのデータ値をラッチ
しても、第2のスレイブはいつそれが転送アクノレッジ
信号52を肯定すべきかを決定するために信号51から
の現在のパイプ深さの値をラッチしなければならない。
【0063】もし第2のスレイブが転送アクノレッジ信
号52を肯定することにより第2の処理のデータフェー
ズを適切に終了しなければ、転送スタート信号50のそ
れぞれの肯定に対して転送アクノレッジ信号52の対応
する肯定はない。また、その結果、データバス59上の
データフェーズの終了はもはや順序通りではなくかつバ
スマスタ42および他のバススレイブ44はどの装置が
現在データバス59の所有権を有するかについての追跡
を失なうことになる。
【0064】本発明の別の実施形態においては、カウン
タ75〜77の増分および減分は読出し/書込み信号に
よって資格を与えられそれによってカウンタ75〜77
がすべての書込みアクセスを無視し、かつ読出しアクセ
スの間のデータバスの所有権はすべての書込みアクセス
と独立に決定されるよう構成することができる。書込み
アクセスの間のデータバスの所有権は最も最近に処理を
開始したバスマスタに与えられ、かつデータバス上の書
込みアクセスはデータバス上の読出しアクセスと競合し
ないタイムスロットを使用する(例えば、書込みアクセ
スはデータバスのタイムスロットT3およびT4を使用
し、一方読出しアクセスはデータバスのタイムスロット
T1およびT2を使用する)。
【0065】図3〜図6は2のパイプ深さを示している
が、本発明の別の実施形態では任意のパイプ深さを使用
することができる。現在のパイプ深さ信号51の数およ
びカウンタ75〜77のビットおよびラッチの数は任意
のパイプ深さに適応するために調整することができる。
本発明のいくつかの実施形態のみが詳細に説明された
が、当業者により本発明の範囲から離れることなく種々
の修正および改善を成すことができる。したがって、こ
の発明は示された特定の形式に限定されるのではなくか
つ添付の特許請求の範囲はこの発明の精神および範囲か
ら離れることのないすべての修正をカバーすることが理
解されるべきである。
【0066】
【発明の効果】したがって、本発明によれば、順序通り
の終了を有するバスプロトコルを実施するための方法お
よび装置において、従来技術の問題を解決し、マスタ−
スレイブ通信のために使用されるバスがスプリット処理
バスおよび/またはパイプライン化バスである場合にお
ける、マスタによる初期要求をスレイブからの対応する
データ応答に整合する上での問題を的確に解決すること
ができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係わるデータ処理システ
ム10を示すブロック図である。
【図2】本発明の一実施形態に係わる図1のデータ処理
システム10の動作を説明するためのタイミング図であ
る。
【図3】本発明の別の実施形態に係わるデータ処理シス
テム40を示すブロック図である。
【図4】本発明の一実施形態に係わる図3のデータ処理
システム40の動作を図表形式で示す説明図である。
【図5】本発明の一実施形態に係わる図3のデータ処理
システム40の動作を説明するための流れ図である。
【図6】本発明の一実施形態に係わる図3のデータ処理
システム40の動作を説明するためのタイミング図であ
る。
【符号の説明】
10 データ処理システム 12,13 バスマスタ 14,15 バススレイブ 16 中央パイプカウンタ 18 バス 20,21,22 導体 30,31,32,33 パイプカウンタ 40 データ処理システム 42 中央処理ユニットバス 44 モジュール 46 システム統合ユニット 48 バス 50,51,52,…,60 導体 70,71,72 制御回路 75,76,77 カウンタ 80 外部バス

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 データ処理システム(10)であって、 以下の導体、すなわち、 バス処理スタート信号を転送するためのバス処理スター
    ト用導体(20)、 バス処理終了信号を転送するためのバス処理終了用導体
    (22)、そしてパイプ深さ値を転送するための少なく
    とも1つのパイプ深さ用導体(21)、 を備えたバス、 前記バスに結合され、バス処理スタート信号を前記バス
    に提供するバスマスタ(12)、 前記バスに結合され、バス処理終了信号を前記バスに提
    供するバススレイブ(14)、そして前記バスに結合さ
    れ第1のカウント値を格納する第1のカウンタ(16)
    であって、前記第1のカウント値は前記バス処理スター
    ト信号および前記バス処理終了信号の双方に基づき調整
    され、前記第1のカウンタは前記第1のカウント値を前
    記少なくとも1つのパイプ深さ用導体にパイプ深さ値と
    して提供するもの、 を具備することを特徴とするデータ処理システム(1
    0)。
  2. 【請求項2】 データ処理システム(10,40)にお
    いて順序通りの終了を有するバスプロトコルを実施する
    方法であって、前記データ処理システムはバス(18)
    によってバススレイブ(14)に結合されたバスマスタ
    (12)を有し、前記方法は、 第1のバス処理を開始するために処理スタート信号(2
    0)を肯定する段階、 前記第1のバス処理の間に前記バス(18)によって前
    記バススレイブ(14)にパイプ深さ値を提供する段
    階、 前記パイプ深さ値を第1の処理のパイプ深さ値として前
    記バススレイブ(14)内に格納する段階、 もし前記第1の処理のパイプ深さ値が所定の値であれ
    ば、バス(18)の所有権を前記バススレイブ(14)
    に承認しかつ前記バススレイブ(18)からの第1のデ
    ータ値を前記バス(18)に提供する段階、 もし前記第1の処理のパイプ深さ値が前記所定の値でな
    ければ、前記バス(18)の所有権の前記バススレイブ
    (14)への承認を抑制する段階、 第2のバス処理を開始するために前記処理スタート信号
    を肯定する段階、 第2のバス処理を開始するために前記処理スタート信号
    を肯定する段階に応じて、前記バススレイブ(14)に
    格納された前記第1の処理のパイプ深さ値に関して増分
    動作または減分動作の内の1つを行ない調整された第1
    の処理のパイプ深さ値を生成する段階、 もし前記調整された第1の処理のパイプ深さ値が所定の
    値であれば、バス(18)の所有権を前記バススレイブ
    (14)に承認しかつ前記バススレイブ(14)から前
    記第1のデータ値を前記バス(18)に提供する段階、
    そしてもし前記調整された第1の処理のパイプ深さ値が
    前記所定の値でなければ、前記バス(18)の所有権を
    前記バススレイブ(14)に承認するのを抑制する段
    階、 を具備することを特徴とするデータ処理システム(1
    0,40)において順序通りの終了を有するバスプロト
    コルを実施する方法。
  3. 【請求項3】 データ処理システム(40)であって、 バス(48)であって、 バス処理スタート信号を転送するためのバス処理スター
    ト用導体(50)、 バス処理終了信号を転送するためのバス処理終了用導体
    (52)、 パイプ深さ値を転送するための少なくとも1つのパイプ
    深さ用導体(51)、 アドレスバス(58)、そしてデータバス(59)、 を備えた前記バス(48)、 前記バスに結合され、前記バス処理スタート信号を前記
    バスに提供するバスマスタ(42)、 前記バスに結合され、前記バス処理終了信号を前記バス
    に提供する第1のバススレイブ(46)、そして前記バ
    スに結合され、前記バス処理終了信号を前記バスに提供
    する第2のバススレイブ(44)、 を具備し、前記第1のバススレイブ(46)は、 前記パイプ深さ値を決定するための第1のカウンタ(7
    7)であって、前記パイプ深さ値は前記バス処理スター
    ト信号の肯定に応じて増分され、前記パイプ深さ値は前
    記バス処理終了信号の肯定に応じて減分されるもの、 を具備し、そして前記第2のバススレイブ(44)は、 前記第1のカウンタから前記パイプ深さ値を受信しかつ
    前記第2のバススレイブ(44)がいつ前記データバス
    (59)の所有権を持つかを計算する第2のカウンタ
    (76)、 を具備することを特徴とするデータ処理システム(4
    0)。
JP34769495A 1994-12-22 1995-12-15 データ処理システムおよび方法 Expired - Fee Related JP4040704B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/363,435 US5699516A (en) 1994-12-22 1994-12-22 Method and apparatus for implementing a in-order termination bus protocol within a data processing system
US08/363,435 1994-12-22

Publications (2)

Publication Number Publication Date
JPH08255124A true JPH08255124A (ja) 1996-10-01
JP4040704B2 JP4040704B2 (ja) 2008-01-30

Family

ID=23430202

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34769495A Expired - Fee Related JP4040704B2 (ja) 1994-12-22 1995-12-15 データ処理システムおよび方法

Country Status (4)

Country Link
US (1) US5699516A (ja)
EP (1) EP0720099A1 (ja)
JP (1) JP4040704B2 (ja)
KR (1) KR100354934B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100414750B1 (ko) * 1997-06-20 2005-09-28 주식회사 하이닉스반도체 동기식 그래픽 램에서의 파이프 카운터 제어회로

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615343A (en) * 1993-06-30 1997-03-25 Intel Corporation Method and apparatus for performing deferred transactions
US5809258A (en) * 1994-08-23 1998-09-15 Ascom Timeplex Trading Ag Bus with high gross data transfer rate
US6085261A (en) * 1996-07-29 2000-07-04 Motorola, Inc. Method and apparatus for burst protocol in a data processing system
US6003107A (en) * 1996-09-10 1999-12-14 Hewlett-Packard Company Circuitry for providing external access to signals that are internal to an integrated circuit chip package
US5867644A (en) * 1996-09-10 1999-02-02 Hewlett Packard Company System and method for on-chip debug support and performance monitoring in a microprocessor
US5887003A (en) * 1996-09-10 1999-03-23 Hewlett-Packard Company Apparatus and method for comparing a group of binary fields with an expected pattern to generate match results
US5881224A (en) * 1996-09-10 1999-03-09 Hewlett-Packard Company Apparatus and method for tracking events in a microprocessor that can retire more than one instruction during a clock cycle
US5880671A (en) * 1996-10-31 1999-03-09 Hewlett-Packard Company Flexible circuitry and method for detecting signal patterns on a bus
US5956476A (en) * 1996-10-31 1999-09-21 Hewlett Packard Company Circuitry and method for detecting signal patterns on a bus using dynamically changing expected patterns
US5956477A (en) * 1996-11-25 1999-09-21 Hewlett-Packard Company Method for processing information in a microprocessor to facilitate debug and performance monitoring
US5881217A (en) * 1996-11-27 1999-03-09 Hewlett-Packard Company Input comparison circuitry and method for a programmable state machine
US6009539A (en) * 1996-11-27 1999-12-28 Hewlett-Packard Company Cross-triggering CPUs for enhanced test operations in a multi-CPU computer system
US6240479B1 (en) 1998-07-31 2001-05-29 Motorola, Inc. Method and apparatus for transferring data on a split bus in a data processing system
US6374370B1 (en) 1998-10-30 2002-04-16 Hewlett-Packard Company Method and system for flexible control of BIST registers based upon on-chip events
US6813251B1 (en) * 1999-07-27 2004-11-02 Intel Corporation Split Transaction protocol for a bus system
US6772254B2 (en) 2000-06-21 2004-08-03 International Business Machines Corporation Multi-master computer system with overlapped read and write operations and scalable address pipelining
US7174401B2 (en) 2002-02-28 2007-02-06 Lsi Logic Corporation Look ahead split release for a data bus
US6948019B2 (en) * 2002-04-30 2005-09-20 Lsi Logic Corporation Apparatus for arbitrating non-queued split master devices on a data bus
US6970962B2 (en) * 2003-05-19 2005-11-29 International Business Machines Corporation Transfer request pipeline throttling
US7711909B1 (en) * 2004-12-09 2010-05-04 Oracle America, Inc. Read sharing using global conflict indication and semi-transparent reading in a transactional memory space
JP2007122410A (ja) * 2005-10-28 2007-05-17 Nec Electronics Corp バス調停回路及びバス調停方法
US8185680B2 (en) * 2006-02-06 2012-05-22 Standard Microsystems Corporation Method for changing ownership of a bus between master/slave devices
WO2008056205A1 (en) * 2006-11-08 2008-05-15 Freescale Semiconductor, Inc. Device and method for managing access requests
US9213665B2 (en) * 2008-10-28 2015-12-15 Freescale Semiconductor, Inc. Data processor for processing a decorated storage notify

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5050066A (en) * 1988-10-14 1991-09-17 Intel Corporation Apparatus with a single memory and a plurality of queue counters for queuing requests and replies on a pipelined packet bus
US5345578A (en) * 1989-06-30 1994-09-06 Digital Equipment Corporation Competitive snoopy caching for large-scale multiprocessors
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US5191649A (en) * 1990-12-21 1993-03-02 Intel Corporation Multiprocessor computer system with data bus and ordered and out-of-order split data transactions
US5255373A (en) * 1991-08-07 1993-10-19 Hewlett-Packard Company Decreasing average time to access a computer bus by eliminating arbitration delay when the bus is idle
US5345562A (en) * 1992-02-12 1994-09-06 Industrial Technology Research Institute Data bus arbitration for split transaction computer bus
US5588125A (en) * 1993-10-20 1996-12-24 Ast Research, Inc. Method and apparatus for increasing bus bandwidth on a system bus by inhibiting interrupts while posted I/O write operations are pending
US5546546A (en) * 1994-05-20 1996-08-13 Intel Corporation Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100414750B1 (ko) * 1997-06-20 2005-09-28 주식회사 하이닉스반도체 동기식 그래픽 램에서의 파이프 카운터 제어회로

Also Published As

Publication number Publication date
KR960025090A (ko) 1996-07-20
JP4040704B2 (ja) 2008-01-30
US5699516A (en) 1997-12-16
KR100354934B1 (ko) 2003-01-29
EP0720099A1 (en) 1996-07-03

Similar Documents

Publication Publication Date Title
JP4040704B2 (ja) データ処理システムおよび方法
US5535341A (en) Apparatus and method for determining the status of data buffers in a bridge between two buses during a flush operation
US5253348A (en) Method of arbitration for buses operating at different speeds
CA2050129C (en) Dynamic bus arbitration with grant sharing each cycle
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US5901295A (en) Address and data bus arbiter for pipelined transactions on a split bus
US5345562A (en) Data bus arbitration for split transaction computer bus
US5313591A (en) Computer bus arbitration for N processors requiring only N unidirectional signal leads
EP0492817A2 (en) Data processing system and memory controller for lock semaphore operations
JP2501737B2 (ja) デ―タ転送方法及び装置
US5255373A (en) Decreasing average time to access a computer bus by eliminating arbitration delay when the bus is idle
US6085261A (en) Method and apparatus for burst protocol in a data processing system
US6115767A (en) Apparatus and method of partially transferring data through bus and bus master control device
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
US6247089B1 (en) Efficient data loading scheme to minimize PCI bus arbitrations delays and wait states
US5717931A (en) Method and apparatus for communicating between master and slave electronic devices where the slave device may be hazardous
US6216193B1 (en) Apparatus and method in a network interface for recovering from complex PCI bus termination conditions
US5708783A (en) Data bus arbiter for pipelined transactions on a split bus
JPH04134551A (ja) 複数のデータ処理エージェントの間でデータを転送するバスにおいて、第1のエージェントがサービスの必要を第2のエージェントへ知らせる方法
US5815676A (en) Address bus arbiter for pipelined transactions on a split bus
KR100243868B1 (ko) 주 전산기에서의 중재로직 방법
JPS61248153A (ja) マルチプロセツサシステムにおけるメモリアクセス制御方式
JPH08180027A (ja) 調停回路
JPS5975354A (ja) プロセッサ装置
JPH04225458A (ja) コンピュータ

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041217

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050216

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060117

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060417

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061205

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061211

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070221

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070615

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070720

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071108

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

Free format text: PAYMENT UNTIL: 20101116

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111116

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121116

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131116

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees