JP2003150540A - バス・システム及び信号伝送方法 - Google Patents

バス・システム及び信号伝送方法

Info

Publication number
JP2003150540A
JP2003150540A JP2001348268A JP2001348268A JP2003150540A JP 2003150540 A JP2003150540 A JP 2003150540A JP 2001348268 A JP2001348268 A JP 2001348268A JP 2001348268 A JP2001348268 A JP 2001348268A JP 2003150540 A JP2003150540 A JP 2003150540A
Authority
JP
Japan
Prior art keywords
bus
component
master
slave
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001348268A
Other languages
English (en)
Other versions
JP3659345B2 (ja
Inventor
Nobuyuki Harada
信之 原田
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2001348268A priority Critical patent/JP3659345B2/ja
Publication of JP2003150540A publication Critical patent/JP2003150540A/ja
Application granted granted Critical
Publication of JP3659345B2 publication Critical patent/JP3659345B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Small-Scale Networks (AREA)

Abstract

(57)【要約】 【課題】 動作周波数を増大できるバス・システムを提
供する。 【解決手段】 バス・システム19において、適宜個数
のパイプライン素子23、アービタ24、及びデコーダ
25がラッチ手段としてバス・マスタ21−バス・スレ
ーブ22間に介在する。信号は、これらラッチ手段にラ
ッチされつつ、バス・マスタ21−バス・スレーブ22
間を伝送される。これにより、該バス・システム19に
おける1クロック・サイクル当たりの信号伝送距離は、
バス・マスタ21−バス・スレーブ22間を1クロック
・サイクルで伝送させるときのものに比し、短縮される
ので、バス・システムの動作周波数を増大できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、バス・マスタ及び
バス・スレーブを含むバス・システム及びその信号伝送
方法に関し、詳しくはバス・マスタ及びバス・スレーブ
の配置の自由度を高めたバス・システム及びその信号伝
送方法に関するものである。
【0002】
【従来の技術】図1は従来の典型的なバス・システムの
概念構成図である。該バス・システムは1個のチップ上
に製作されている。複数個のバス・マスタ11及び複数
個のバス・スレーブ12は共通のバス・システム10へ
接続されている。図1において各バス・マスタ11−バ
ス・システム10間、及び各バス・スレーブ12−バス
・システム10間の数値は、各バス・マスタ11−各バ
ス・スレーブ12間の距離を計算するために、各バス・
マスタ11及び各バス・スレーブ12から基準点までの
距離を単位mmで示したものである。バス・システム1
0におけるバス・マスタ11−バス・スレーブ12間の
信号伝送時間は、両者の間の信号伝送距離が長いほど、
増大する。図1の例では、バス・マスタ11−基準点間
の最大距離は2.0mmであり、また、バス・スレーブ
12−基準点間の最大距離は7.3mmである。したが
って、図1のバス・システムにおけるバス・マスタ11
−バス・スレーブ12間の最大距離は9.3(=2.0
+7.3)mmとなる。バス・システムのクロックの周
期は、バス・システムにおけるバス・マスタとバス・ス
レーブとの間の信号伝送時間より短くできないので、図
1のバス・システムでは、その動作周波数は、9.3m
mにより決定される。このようなバス・システムにおい
て、一定の動作周波数を確保するためには、距離の最大
となるバス・マスタ11−バス・スレーブ12間の距離
を詰める必要があるが、このような場合、バス・マスタ
11及びバス・スレーブ12が中心部に集中することに
なり、特に、バス・システムを1個のIC上に製作する
場合には、中心部の密度に限界がある。周辺のスペース
にバス・マスタ11及びバス・スレーブ12を配置して
も、バス・システムについて一定の動作周波数が確保で
きるのが好ましい。
【0003】特開平8−335204号公報は、例えば
2個のバス・マスタと1個のバス・スレーブとの間のデ
ータ転送のために、並列な2個のバスが用意される。並
列伝送の個数だけバスが用意されなければならないの
で、並列転送の個数だけ、バス数が増大する。
【0004】特開平5−181817号公報は、複数個
のコンポーネントがマトリックス配置され、同一行のコ
ンポーネント同士、及び同一列のコンポーネント(バス
へ接続されている素子)同士が、リング・バスを構成す
るバス・システムを開示する。各コンポーネントは、行
方向のリング・バスと列方向のリング・バスとの2個の
リング・バスに属することになり、各コンポーネント
は、2個のリング・バスに対して入力及び出力を処理す
る必要があり、制御が複雑化する。
【0005】特開平5−28104号公報では、バス・
マスタ及びバス・スレーブは共通のリング・バスに接続
され、リング・バスには、ラッチが、バス・マスタ及び
バス・スレーブの1:1に対応して近接して配備される
のみで、該1:1の対応関係とは別個にラッチが設けら
れることはない。このバス・システムでは、リング・バ
スへ隣接的に接続されるバス・マスタ又はバス・スレー
ブの間隔が開けば、バス上で隣接隣同士のラッチの間隔
も開き、動作周波数は、バス・マスタ及びバス・スレー
ブの間隔が開けば、それに伴い、低下することになる。
【0006】
【発明が解決しようとする課題】本発明の目的は、一定
の動作周波数を確保するために、バス・マスタとバス・
スレーブとの間の距離を詰める必要を排除したバス・シ
ステム及びその信号伝送方法を提供することである。本
発明の目的は、バス・システム及びその信号伝送方法に
おいてバス・マスタとバス・スレーブとの間の距離に対
して実現可能な動作周波数を増大することである。本発
明の目的は、全体におけるデータ転送を効率化するバス
・システム及びその信号伝送方法を提供することであ
る。本発明の目的は、バス・システム及びその信号伝送
方法において並列的なデータ転送を可能にすることであ
る。本発明の目的は、キャッシュ付きバス・マスタを装
備するバス・システム及びその信号伝送方法においてデ
ータ・コヒーレンシィを確保することである。
【0007】
【課題を解決するための手段】本発明のバス・システム
は、バスに接続されている少なくとも1個のバス・マス
タ、バス・マスタの個数と合わせた総数が3個以上とな
る個数で存在してバスに接続されている少なくとも1個
のバス・スレーブ、及びバス・マスタとバス・スレーブ
との間のバス経路に介在して該バス経路を複数の区画に
分割しクロックに同期して伝送信号のラッチ及び出力を
行うラッチ手段、を有している。そして、クロックの周
期は、バス上の隣接する任意の第1及び第2の区画に対
して、第1の区画における信号伝送時間より長くかつ第
1及び第2の区画の合計の信号伝送時間より短く設定さ
れている。
【0008】バス・システムには、例えばツリー型、リ
ング型、及びスター型のバス・システムが含まれる。バ
ス・マスタ及びバス・スレーブは共に少なくとも1個は
存在し、かつバス・マスタ及びバス・スレーブの個数の
合計の最小値は3である。バス・システムにおけるバス
・マスタ及びバス・スレーブの総個数の最小構成では、
バス・マスタ及びバス・スレーブが、それぞれ1個及び
2個である場合と、それぞれ2個及び1個である場合と
がある。
【0009】説明の便宜上、バス・マスタ、バス・スレ
ーブ、及びラッチ手段をコンポーネントと総称すること
にする。バス上の隣接コンポーネント間の距離は、バス
・システムにおいて均一化されていることが好ましい
が、必ずしも均一でなくてもよい。ラッチ手段によりバ
ス上の隣接コンポーネント間の最大距離が、バス・シス
テムの動作周波数増大のために十分に詰まっていればよ
い。バス・システムにおけるバス・マスタ及びバス・ス
レーブは、十分に近接して配置できない事情がある。バ
ス・マスタとバス・スレーブとの間をデータを1クロッ
ク・サイクルで伝送しなければならないバス・システム
では、バス・マスタ及びバス・スレーブを多数装備する
バス・システムほど、バス・マスタとバス・スレーブと
の間の距離の最大値が増大し、バス・システムに適用で
きる動作周波数は低下してしまう。本発明では、ラッチ
手段がバス・マスタとバス・スレーブとの間に適宜、介
在することにより、バス・マスタとバス・スレーブとの
間の最大距離の増大にもかかわらず、1クロック・サイ
クル当たりのデータ転送距離の増大は回避される。した
がって、バス・システムの一定の動作周波数を確保する
ために、バス・マスタ及びバス・スレーブをICチップ
等のバス・システム装備装置の中心部に集中配置する設
計上の制約を排除できる。あるいは、バス・システムに
おけるバス・マスタとバス・スレーブとの間の距離の最
大値に対するバス・システムの動作周波数を高めること
ができる。
【0010】本発明のバス・システムには、以下に記載
する具体的態様を任意の組み合わせで適宜、付加可能と
なっている。 ・バス上の各区画の長さがほぼ均等に設定されている。
バスの動作周波数は最大長さの区画により決まるので、
バス上の各区画の長さを均等化することにより、ラッチ
手段の分布が改善され、所定動作周波数を得るためのラ
ッチ手段の個数を低減できる。 ・バスは、各バス・マスタ及び各バス・スレーブから見
てツリー構造となっている。好ましくは、データの読出
し及び書込みの高速性の要求度の高い特定のバス・マス
タとバス・スレーブとの間のバス経路長は、要求度の低
い他のバス・マスタとバス・スレーブとの間のバス経路
長未満に設定されるとともに、該特定のバス・マスタと
バス・スレーブとの間におけるラッチ手段の介在個数
は、該他のバス・マスタとバス・スレーブとの間の介在
個数未満に設定されている。バス・マスタとバス・スレ
ーブとの間の信号伝送に要するクロック・サイクル数
は、バス・マスタとバス・スレーブとの間のラッチ手段
の介在個数の増大に伴い、増大する。速やかな伝送の必
要とされるバス・マスタ及びバス・スレーブについて、
それらの間におけるラッチ手段の介在個数を少なくする
ことにより、その信号伝送に要するクロック・サイクル
数が低減し、有利である。
【0011】・バス・システムは少なくとも2個のバス
・マスタを有し、少なくとも1個のラッチ手段は、バス
・マスタからバス・スレーブへの信号伝送に対するアー
ビタである。又は、バス・システムは少なくとも2個の
バス・スレーブを有し、少なくとも1個のラッチ手段
は、バス・マスタからバス・スレーブへの信号伝送に対
するデコーダである。前述したように、バス・システム
は、バス・マスタからバス・スレーブへの信号伝送は必
須であるが、リードを必要としないバス・システムで
は、バス・スレーブからバス・マスタへの信号伝送は不
要となることがある。バス・スレーブからバス・マスタ
への信号伝送を行うバス・システムでは、バス・マスタ
からバス・スレーブへの信号伝送用のアービタ及びデコ
ーダとしてのラッチ手段は、それぞれバス・スレーブか
らバス・マスタへの信号伝送に対するデコーダ及びアー
ビタとなる。バス・マスタは第1のバス・マスタとキャ
ッシュを装備する第2のバス・マスタとを含み、アービ
タは、バス・スレーブの特定のアドレス範囲に対するリ
ード・リクエストを第1のバス・マスタから受け付けた
とき、第2のバス・マスタへ、該第2のバス・マスタが
自分のキャッシュにバス・スレーブの特定のアドレス範
囲に係るデータを保持しているか否かを問い合わせ、第
2のバス・マスタがデータを保持している場合は、第2
のバス・マスタに、データをバス・スレーブの該当アド
レス範囲に書込ませる。
【0012】・バス・マスタとバス・スレーブとの間の
データ転送はパケット方式である。1個のパケットのサ
イズは、1クロック・サイクルで伝送可能なサイズより
大きくてもよい。1個のパケットのサイズが、1クロッ
ク・サイクルで伝送可能なサイズより大きいときは、1
個のパケットは、複数個のブロックに分割されて、伝送
される。パケットのヘッダ情報部分は、好ましくは、1
クロック・サイクルで伝送されるが、これに限定され
ず、複数個のクロック・サイクルで伝送されたり、パケ
ットのデータ範囲の先頭部分と一緒に1クロック・サイ
クルで伝送されたりしてもよい。本バス・システムで
は、複数個のパケットが、バスの区画を重複しないこと
を条件に、同時に存在可能となる。また、送信元の異な
る複数個のパケット、送信先の異なる複数個のパケット
が、バス・システム上に存在可能になる。典型的には、
パケット方式のデータ転送はコネクションレスである。
【0013】・バス・マスタ、バス・スレーブ、及びラ
ッチ手段をコンポーネントと総称することにし、各ラッ
チ手段に対してパケット転送方向へ上流側及び下流側に
隣接するコンポーネントをそれぞれ第1及び第2のコン
ポーネントと呼び、かつ連続する3個のクロック・サイ
クルを前から順番に、第1、第2、及び第3のクロック
・サイクルと呼ぶことにすると、各ラッチ手段は、第2
のクロック・サイクルにおいて第1のコンポーネントか
らパケットを受けるために、第1のクロック・サイクル
において第1のコンポーネントへアクノリッジ信号を出
力する。ラッチ手段は、第1及び第2のラッチを有し、
第1のクロック・サイクルにおいて第1のコンポーネン
トへはアクノリッジ信号を出力しかつ第2のコンポーネ
ントからはアクノリッジ信号を入力しなかったとき、第
1のクロック・サイクルにおいて第2のコンポーネント
へのパケットを第1のラッチにホールドし、第2のクロ
ック・サイクルでは、第2のコンポーネントへ第1のラ
ッチのパケットを再送するとともに、第1のコンポーネ
ントからのパケットを第2のラッチにラッチする。ラッ
チ手段は、第2のクロック・サイクルでは、第1のコン
ポーネントへのアクノリッジ信号の出力を中止し、もし
第2のクロック・サイクルにおいて第2のコンポーネン
トからアクノリッジ信号を入力したならば、第3のクロ
ック・サイクルでは、第1のラッチのパケットを第2の
コンポーネントへ送出しつつ、第2のラッチのパケット
を第1のラッチへラッチし、かつ第1のコンポーネント
へアクノリッジ信号を出力する。アービタは、複数個の
第1のコンポーネントの内の一つを優先コンポーネント
と定め、いずれの第1のコンポーネントからもリクエス
ト信号を受付けていないクロック・サイクルでは、優先
コンポーネントへアクノリッジ信号を発行するパーキン
グ状態とされ、また、アービタ以外のラッチ手段も唯一
の第1のコンポーネントについてのパーキング状態にさ
れている。
【0014】本発明のバス・システム用信号伝送方法の
適用されるバス・システムでは、バスを介して接続され
るバス・マスタ及びバス・スレーブをそれぞれ少なくと
も1個、かつ両者の総数が18以上となっている。該バ
ス・システム用信号伝送方法において、少なくとも1個
のラッチ手段をバス・マスタとバス・スレーブとの間の
バス経路に介在させて、該バス経路を複数の区画に分割
し、クロックに同期して伝送信号をラッチ手段において
ラッチ及び出力させ、クロックの周期を、バス上の隣接
する任意の第1及び第2の区画に対して、第1の区画に
おける信号伝送時間より長くかつ第1及び第2の区画の
合計の信号伝送時間より短く設定する。
【0015】本発明のバス・システム用信号伝送方法は
以下の種々の具体的態様を任意の組み合わせで適宜、付
加することができる。バス上の各区画の長さをほぼ均等
に設定する。バスを、各バス・マスタ及び各バス・スレ
ーブから見てツリー構造とする。バス・マスタの個数を
少なくとも2個とし、少なくとも1個のラッチ手段を、
バス・マスタからバス・スレーブへの信号伝送に対する
アービタとする。バス・スレーブの個数を少なくとも2
個とし、少なくとも1個のラッチ手段を、バス・マスタ
からバス・スレーブへの信号伝送に対するデコーダとす
る。アービタ及びデコーダとしてのラッチ手段を、それ
ぞれバス・スレーブからバス・マスタへの信号伝送に対
するデコーダ及びアービタとする。
【0016】ツリー型のバス・システムの信号伝送方法
では、データの読出し及び書込みの高速性の要求度の高
い特定のバス・マスタとバス・スレーブとの間のバス経
路長を、要求度の低い他のバス・マスタとバス・スレー
ブとの間のバス経路長未満に設定するとともに、該特定
のバス・マスタとバス・スレーブとの間におけるラッチ
手段の介在個数を、該他のバス・マスタとバス・スレー
ブとの間の介在個数未満に設定する。
【0017】
【発明の実施の形態】以下、発明の実施の形態について
図面を参照して説明する。図2は本発明を具現化したバ
ス・システム19の概念構成図である。バス・システム
19は、1個のICチップ上に製作され、例えばプリン
タ・コントーラに組み込まれて膨大なイメージデータを
処理する。バス・システム19は、複数個のバス・マス
タ21、及び複数個のバス・スレーブ22を有してい
る。バス・マスタ21は例えばCPUやDMA(Dir
ect Memory Access)であり、バス・
スレーブ22は例えばメモリである。バス・マスタ21
−バス・スレーブ22間は、パイプライン素子23、ア
ービタ24、及びデコーダ25を介して相互に接続され
ている。説明の便宜上、バス・マスタ21からバス・ス
レーブ22の方への信号伝送方向を上り方向、その逆を
下り方向と適宜、呼ぶことにする。また、パイプライン
素子23、アービタ24、及びデコーダ25を適宜、ラ
ッチ手段と総称することにし、ラッチ手段、バス・マス
タ21、及びバス・スレーブ22を適宜、コンポーネン
トと総称することにする。ラッチ手段は、上り方向及び
下り方向用にそれぞれ少なくとも1個のラッチを備えて
いる。バスは複数個のバス部分20から成り、各バス部
分20は信号伝送方向へ隣接関係のコンポーネント同士
を相互に接続している。このバスはパイプライン方式で
あり、各コンポーネントはそれぞれ1又は複数の信号ポ
ートを備え、或るコンポーネントに他のコンポーネント
が接続されるとき、両コンポーネントは、信号ポート同
士を1:1に接続される。図2では、バス上の隣接コン
ポーネント間の矢印の向きは上り方向で示されており、
各バス・マスタ21から各バス・スレーブ22への信号
は、パイプライン素子23、アービタ24、及び/又は
デコーダ25を経由する。バス・マスタ21は例えばC
PUやDMA(ダイレクト・メモリ・アクセス)制御器
であり、バス・スレーブ22は例えばビデオ・コントロ
ーラ等の各種インターフェースである。バスは複数個の
バス部分20から構成され、各バス部分20は、バス上
で隣接同士のコンポーネントを相互に接続する。このバ
スは、ツリー型、パイプライン型、パケット転送型、コ
ネクションレス型、及びパイプライン型の特徴を持つ。
バス・マスタ21及びバス・スレーブ22はバスの端末
に接続され、各バス・マスタ21及び各バス・スレーブ
22からバスの方を見ると、バスはツリー状に広がって
いる。
【0018】データはパケット化されて伝送され、1個
のパケットは1又は複数個のクロック・サイクルにわた
って各コンポーネントから送出される。1クロック・サ
イクルに対応する長さのパケット・ブロックが各ラッチ
手段のラッチにラッチされる。アービタ24は、パケッ
ト転送方向に関して調停機能を備え、前段に接続された
複数個のコンポーネントの中から1個を選択して、次段
のコンポーネントに接続し、パケット転送方向へパケッ
トを転送する。デコーダ25は、パケット転送方向へ分
岐機能を備え、前段の1個のコンポーネントを次段の複
数個のコンポーネントの中から選択した1個のコンポー
ネントへ接続し、パケット転送方向へパケットを転送す
る。パイプライン素子23は、或るクロック・サイクル
で入力した信号をラッチし、次のクロック・サイクル以
降において、パケット転送方向の次段のコンポーネント
へ送る役目を持つ。パス上の隣接コンポーネントを結ぶ
バス部分20について示されている数値”0.9”は、
バス部分20により相互に結ばれるコンポーネント間の
距離を単位mmで示したものである。バス・システム1
9において隣接関係にあるコンポーネント間の距離d
は、すべて等しい値、例えば0.9mmとなるように、
設計されている。パイプライン素子23、アービタ2
4、及びデコーダ25がラッチを装備しかつ隣接関係の
コンポーネント同士がパイプラインにより相互に接続さ
れている結果、信号は、1クロック・サイクル当たりに
隣接コンポーネント間を伝送すれば足りることになる。
そして、バス・システム19では、隣接関係のコンポー
ネント間の距離は、十分に短縮されているので、バス・
システム19の動作周波数を大幅に増大できる。ICチ
ップ上のスペースに余裕のある限り、パイプライン素子
23の介在個数を増大して、バス・システム19の動作
周波数の一層の上昇を図ることもできる。
【0019】このバス・システム19では、バス・マス
タ21−バス・スレーブ22間の距離が長くても、その
バス・マスタ21−バス・スレーブ22間のパイプライ
ン素子23の介在数個数を増大すれば、バス・スレーブ
22の動作周波数の減少の必要性を排除できる。これに
より、一定の動作周波数の確保のために、バス・マスタ
21及びバス・スレーブ22を相互の距離を詰めて、I
Cチップの中心部に集中配置する制約を排除して、それ
らをスペースの十分に余裕のある周辺部に配置すること
が可能となる。
【0020】図2は、バス・システム19について上り
方向のパケットの流れでアービタ24及びデコーダ25
を示しているが、下り方向ではアービタ24及びデコー
ダ25の機能が逆転する。すなわち、下り方向では、ア
ービタ24はデコーダとなり、デコーダ25はアービタ
となる。例えば、バス・システム19がバス・マスタか
らバス・スレーブへのアクノリッジ信号不要のライト命
令だけから成るバス・システムである場合には、該バス
・システムにおけるパケットの流れ方向は、バス・マス
タからバス・スレーブへの一方向のみとなるので、アー
ビタ24及びデコーダ25はそれぞれ下り方向のパケッ
トに対するデコーダ及びアービタの機能は不要となる。
典型的なバス・システムではバス・マスタがリード・リ
クエストを発行し、読み出しデータが下り方向のパケッ
トとして伝送されるので、各アービタ24及び各デコー
ダ25は下り方向のパケット転送に対処するためデコー
ダ及びアービタの機能も装備する。
【0021】図3及び図4は本発明を具現化したバス・
システムにおける信号の並列伝送及び一時停止を示して
いる。バス・マスタ21a,21bは、アービタ24a
及びデコーダ25aを介してバス・スレーブ22aへ接
続されている。バス・マスタ21a,21bは、また、
アービタ24a、デコーダ25a、アービタ24b、及
びデコーダ25bを介してバス・スレーブ22b,22
cへ接続されている。バス・マスタ21cは、アービタ
24b及びデコーダ25bを介してバス・スレーブ22
b,22cへ接続されている。バス部分20は、全体で
バスを構成するとともに、バス上で隣接同士のコンポー
ネントを相互に接続する。図3における各バス部分20
の向きは、図2の場合と同様に、上り方向で示されてい
る。図3のアービタ及びデコーダも、図2のアービタ及
びデコーダと同様に、下り方向のパケット転送に対処す
るために、それぞれデコーダ及びアービタの機能を装備
している。
【0022】図3において、f1はバス・マスタ21b
からバス・スレーブ22aへの信号の流れを、また、f
2はバス・マスタ21cからバス・スレーブ22cへの
信号の流れを示している。本発明のバス・システムで
は、経路が重複しない限り、バス・マスタとバス・スレ
ーブとの間の複数の通信が確立できる。なお、図3の例
では、f1,f2の向きは、共に、バス・マスタからバ
ス・スレーブの向きとなっているが、一方又は両方がバ
ス・スレーブからバス・マスタの向きであってもよい。
【0023】図4の示す状態では、アービタ24bがバ
ス・マスタ21cからバス・スレーブ22cへ向かう信
号流れを優先し、バス・マスタ21bからバス・スレー
ブ22b又は22cへ向かう信号流れはアービタ24b
の前段のデコーダ25aにおいて進行を一時停止されて
いる。信号は、クロック・サイクルに同期して、1クロ
ック・サイクルごとに1個のバス部分20ずつ進行する
ようになっている。また、バス・システムにおける信号
送受はコネクションレス型であるので、バス・マスタと
バス・スレーブとの間に通信が確立されていなくても、
信号の進行が可能になっている。f3の先端は、進行が
可能なアービタの手前まで進行し、すなわち送信先に十
分に接近した位置で一時停止することができるので、送
信元への到達時間が短縮される。
【0024】図5は全体的な伝送効率を考慮してバス・
マスタとバス・スレーブとの間の距離を設定したバス・
システムにおける構成図である。図5においてバス・マ
スタとバス・スレーブとの間の図面上の距離は、ICチ
ップ等の実際の製品におけるバス・マスタとバス・スレ
ーブとの間の距離を反映したものである。○はバス・マ
スタ、□はバス・スレーブ、△は上り方向用のアービ
タ、▼は上り方向用のデコーダをそれぞれ表している。
P1,P2はそれぞれリクエスト・パケット及びアクノ
リッジ・パケットの方向を示している。バス・マスタ
は、高速バス・マスタ26a,26bと、低速バス・マ
スタ27a〜27dとに分類される。バス・スレーブ
は、高速バス・スレーブ30a,30bと低速バス・ス
レーブ31とに分類される。高速バス・マスタ26a,
26bは低速バス・マスタ27a〜27dよりも高速な
通信を要求されるバス・マスタである。また、高速バス
・スレーブ30a,30bは低速バス・スレーブ31よ
りも高速な通信を要求されるバス・スレーブである。各
バス・マスタは、通信相手のバス・スレーブが決まって
おり、アービタ32a〜32f及びデコーダ33a,3
3bは、通信可能性のある全部のバス・マスタとバス・
スレーブとの間の通信が保証されるように、バス・マス
タとバス・スレーブとの間を接続している。例えば、高
速バス・マスタ26bは全部のバス・スレーブ30a,
30b,31と通信可能性があるのに対し、高速バス・
マスタ26aは高速バス・スレーブ30aとのみ通信す
るだけであり、低速バス・マスタ27e,27fは低速
バス・スレーブ31とのみ通信可能性がある。図5で
は、デコーダ33a−アービタ32f間の距離が、他の
コンポーネント間の距離より比較的長くなっているの
で、デコーダ33a−アービタ32f間に所定個数のパ
イプラインを適宜、介在させ、バス上の隣接コンポーネ
ント同士の距離を均一化するのが好ましい。このバス・
システムにおいて、高速バス・マスタ26a−高速バス
・スレーブ30a間の通信は、低速バス・マスタ27b
〜d−低速バス・スレーブ31間の通信よりも高速性が
要求されるので、チップ上における高速バス・マスタ2
6aと高速バス・スレーブ30aとの相互距離は、低速
バス・マスタ27b〜dと低速バス・スレーブ31との
相互距離よりも短くされるとともに、高速バス・マスタ
26a−高速バス・スレーブ30a間のラッチ手段の介
在個数は低速バス・マスタ27b〜d−低速バス・スレ
ーブ31間のラッチ手段の介在個数より小さくされてい
る。また、アービタ32a〜32fは、バス・マスタと
バス・スレーブとの間の通信の高速性が要求される通信
を優先する調停を行うようになっている。
【0025】図6は各パイプライン素子が発行するパケ
ットの種類及びその内容を示している。 (a)Write Request Packet D
ata(WRPD):バス・マスタがバス・スレーブに
データの書込みを要求するパケット。 (b)Read Request Packet Da
ta(RRPD):バス・マスタがバス・スレーブにデ
ータのリードを要求するパケット。 (c)Write Ack Packet Data
(WAPD):バス・スレーブがWRPDに対してバス
・マスタへ発行するアクノリッジ・パケット。 (d)Read Ack Packet Data(R
APD);バス・スレーブがRRPDに対してバス・マ
スタへ発行するアクノリッジ・パケット。 (e)Coherency Request Pack
et(CRP):アービタがキャッシャ付きバス・マス
タへデータのコヒーレンシィを問い合わせるパケット。 (f)Coherency Ack Packet(C
AP):キャッシュ付きバス・マスタがCRPに対して
アービタへ発行するアクノリッジ・パケット。
【0026】WRPDの持つ情報は次のとおりである。 Master ID:該WRPDを発行したバス・マス
タのID。 Address:該WRPDの送り先のバス・スレーブ
におけるライトアドレス範囲の先頭アドレス。 Size:ライトアドレス範囲のサイズ。 Data(Size):データ・ブロック(パケット中
の該データ・ブロックの番号)。
【0027】RRPDの持つ情報は次のとおりである。 Master ID:該RRPDを発行したバス・マス
タのID。 Address:該RRPDの送り先のバス・スレーブ
におけるリード・アドレス範囲の先頭アドレス。 Size:リード・アドレス範囲のサイズ。 Type:タイプ(詳細は後述する。)。
【0028】WAPDは次の情報を含む。 Master ID:ライト・リクエストに対するアク
ノリッジの宛て先のバス・マスタのID。 Address:バス・スレーブにおけるライトアドレ
ス範囲の先頭アドレス。 Status:ライト・リクエストに対するエラーとか
ビジー等のバス・スレーブの状態。
【0029】RAPDは次の情報を含む。 Master ID:リード・リクエストに対するアク
ノリッジの宛て先のバス・マスタのID。 Address:バス・スレーブにおけるリード・アド
レス範囲の先頭アドレス。 Size:リード・アドレス範囲のサイズ。 Data(Size):データ・ブロック(パケット中
の該データ・ブロックの番号)。 Status:リード・リクエストに対するエラーとか
ビジー等のバス・スレーブの状態。
【0030】CRPは次の情報を含む。 Address:コヒーレンシィについての対象アドレ
ス範囲の先頭アドレス。 Size:コヒーレンシィについての対象アドレス範囲
のサイズ。
【0031】CAPは次の情報を含む。 Address:コヒーレンシィについての対象アドレ
ス範囲の先頭アドレス。 Status:コヒーレンシィリクエストに対するエラ
ーとかビジー等のバス・マスタの状態。
【0032】前述のタイプ(Type)には次のものが
ある。なお、w/oは無し(without)、w/は
有り(with)を意味する。 Write w/o Ack:アクノリッジ無しの書込
み。 Write w/ Ack:アクノリッジ有りの書込
み。 Read w/o Ack:アクノリッジ無しの書込
み。 Read w/ Ack:アクノリッジ有りの書込み。 Coherency Req w/o Ack:アクノ
リッジ無しのコヒーレンシィリクエスト。 Coherency Req w/ Ack;アクノリ
ッジ有りのコヒーレンシィリクエスト。
【0033】図7はパケットとは別に各ラッチ手段の発
行する信号を示している。なお、説明の便宜上、ラッチ
手段がパケット転送方向の発行元側及び発行先側にそれ
ぞれ隣接するコンポーネントをそれぞれシンボルCu,
Cdで表すものとする。また、すでに定義しているよう
に、コンポーネントとは、ラッチ手段だけでなく、バス
・マスタ及びバス・スレーブを含む概念として使用して
いる。マスタ信号(Master Signals)と
は、各ラッチ手段がそのコンポーネントCdと送受する
信号の総称である。スレーブ信号(Slave Sig
nals)とは、各ラッチ手段がそのコンポーネントC
uと送受する信号の総称である。アービタ信号(Arb
iter Signals)とは、ラッチ手段の内のア
ービタのみがコンポーネントCu,Cdと送受する信号
である。デコーダ信号(Decoder Signal
s)は、ラッチ手段の内のデコーダのみがコンポーネン
トCu,Cdと送受する信号である。図7において、信
号名の先頭のMst,Slvはそれぞれデータ・パケッ
ト転送方向及びその逆方向へ流れる信号を意味する。信
号名の中間のReq,Ack,ID,AD,Size,
Type,MIDはそれぞれリクエスト、アクノリッ
ジ、マスタID、アドレス&データ・バスサイズ、タイ
プ、及びマスタIDを意味する。なお、ID及びMID
共に、マスタIDを意味することになっているが、Ms
t_IDの意味するマスタIDとは、データ転送方向へ
隣接する上流側及び下流側のコンポーネント間におい
て、上流側コンポーネントが自分のIDとして出力する
IDであるのに対し、Slv_IDの意味するマスタI
Dとは、データ転送方向へ隣接する上流側及び下流側の
コンポーネント間において、下流側コンポーネントがパ
ケットの転送先のバス・マスタのIDを指し示すもので
ある。信号名における(O),(I)の付記は、その信
号がそれぞれラッチ手段の出力及び入力に係る信号であ
ることを表す。マスタ信号(Master Signa
ls)には、Mst_Req(O),Slv_Ack
(I),Mst_ID(O),Mst_AD(O),Ms
t_Size(O),Mst_Type(O)Slv_R
eq(I),Mst_Ack(O),Slv_Size
(I),Slv_AD(I),Slv_Status
(I),Slv_ID(I)がある。スレーブ信号(Sl
ave Signals)には、Mst_Req
(I),Slv_Ack(O),Mst_ID(I),M
st_AD(I),Mst_Size(I),Mst_T
ype(I)Slv_Req(O),Mst_Ack
(I),Slv_Size(O),Slv_AD(O),
Slv_Status(O),Slv_ID(O)があ
る。
【0034】ここで、Nをアービタにおけるコンポーネ
ントCuの総数(Master Connectio
n)、又はデコーダにおけるコンポーネントCdの総数
(Slave Connection)とする。各アー
ビタでは、1個のコンポーネントCu当たりラッチ手段
のスレーブ信号(Slave Signals)の個数
だけ送受が必要となるとともに、1個のコンポーネント
Cd当たりラッチ手段のマスタ信号(Master S
ignals)の個数だけ送受が必要となる。したがっ
て、各アービタでは、上流側の信号ポートの個数はスレ
ーブ信号(Slave Signals)の総数xNと
なり、下流側の信号ポートの個数はマスタ信号(Mas
ter Signals)の総数xNとなる。各デコー
ダでは、1個のコンポーネントCu当たりラッチ手段の
マスタ信号(Master Signalsの個数だけ
送受が必要となるとともに、1個のコンポーネントCd
当たりラッチ手段のスレーブ信号(Slave Sig
nals)の個数だけ送受が必要となる。したがって、
各デコーダでは、上流側の信号ポートの個数はマスタ信
号(Master Signals)の総数xNとな
り、下流側の信号ポートの個数はスレーブ信号(Sla
ve Signals)の総数xNとなる。
【0035】図8及び図9はバス・システムにおけるパ
ケットの流れを順番に示す説明図である。パケットの流
れの過程は、図8の(a)→(b)→(c)→図9の
(a)→(b)→(c)となる。バス・システムについ
ての図8及び図9の例では、バス・マスタ34a,34
bは、アービタ36a,36b、及びデコーダ37を経
てバス・スレーブ35a,35bへ接続されている。バ
ス部分40は、その全体でバスを構成するとともに、バ
ス上で隣接関係のコンポーネント同士を相互に接続して
いる。各ステップを順番に説明する。なお、図8及び図
9において説明する通信要求は一例である。
【0036】図8(a):バス・マスタ34a,34b
が同時にアービタ36aへライト・リクエストR0及び
リードR1を出す。この例では、R0,R1は、リクエ
ストてあるとともに、パケット・ヘッダともなってい
る。 図8(b):アービタ36aはR0をR1よりも優先
し、また、アービタ36bはアービタ36a以外からの
リクエストは受け付けていない。これにより、バス・マ
スタ34からの計4個のパケット・ブロックR0,D0
−1,D0−2,D0−3がアービタ36a,36b、
及びデコーダ37を経てクロック・サイクルに同期して
バス・スレーブ35aへ発送される。先頭のパケット・
ブロックR0がバス・スレーブ35aに到着した状態で
は、各R0,D0−1,D0−2,D0−3はそれぞれ
バス・スレーブ35a−デコーダ37間、デコーダ37
−アービタ36b間、アービタ36b−アービタ36a
間、アービタ36a−バス・マスタ34a間に存在す
る。 図8(c):アービタ36aは、バス・マスタ34aか
らの最後尾のパケット・ブロックD0−3をアービタ3
6bへ送信しだい、バス・マスタ34bからのリード・
リクエストR1をバス・スレーブ35aの方へ発送す
る。これにより、パケット・ブロックR1は、D0−3
の後に続いて、バス・スレーブ35cへ進む。
【0037】図9(a):この例のライト・リクエスト
はアクノリッジ不要のものであるので、バス・スレーブ
35aは、D3を受け付けると、アクノリッジ信号をバ
ス・マスタ34aへ向かって発行することなく、バス・
マスタ34bからのリクエストR1を受け付ける。 図9(b),(c):バス・スレーブ35aは、バス・
マスタ34bからのリード・リクエストのパケットR1
に対するアクノリッジ・パケットの各パケット・ブロッ
クR,D1−1,D1−2,D1−3,D1−4をクロ
ック・サイクルごとに順番に発行する。なお、この例で
は、Rは、アクノリッジ信号であるとともに、パケット
・ヘッダである。アクノリッジ・パケットは、リクエス
ト・パケットとは経路を逆方向へバス・マスタ34bへ
向かう。アクノリッジ・パケットに対しては、デコーダ
37bはアービタ、アービタ36bはデコーダ、アービ
タ36aはデコーダの機能をそれぞれ果たす。
【0038】本発明の適用されるバス・システムはデー
タのコヒーレンシィが配慮される。すなわち、バス・マ
スタの中にはキャッシュを装備するものがあり、或るバ
ス・マスタが、それの装備するキャッシュの内容を変更
しているにもかかわらず、対応のバス・スレーブにおけ
るデータの更新が済まされていないときがある。これに
対処するために、各アービタは、それへデータのリード
及びライトをリクエストして来るバス・マスタの中でキ
ャッシャ装備のバス・マスタを全部、把握する。そし
て、或るバス・マスタMaから所定のバス・スレーブS
aにおける所定アドレス範囲AW1のデータのリードを
リクエストしてきたときは、他のキャッシャ装備のバス
・マスタへそのキャッシュにおいて該アドレス範囲AW
1と重複アドレス範囲のデータを書き換えていないかを
問い合わせる。問い合わせ先のバス・マスタは、問い合
わせ元のアービタへ回答し、回答がNoであれば、アー
ビタは、データのリードをリクエストして来たバス・マ
スタからのリード・リクエストを、待機させることな
く、速やかにバス・スレーブ側のコンポーネントへ送
る。回答がYes、すなわち該アドレス範囲AW1と重
複アドレス範囲の書き換えがあれば、問い合わせ先のバ
ス・マスタは、そのキャッシュにおける更新データに基
づいてバス・スレーブSaの更新必要アドレス範囲を更
新するために、ライト・リクエストを発行する。バス・
マスタは、キャッシャ内容更新に基づくライト・リクエ
ストによる書込みパケットを送出し終わってから、バス
・マスタMaからの待機中のリード・リクエストをバス
・スレーブSaの方へ送出する。
【0039】図10及び図11は図8及び図9のパケッ
ト転送モデルにおいて各ラッチ手段がラッチを上り方向
及び下り方向共に1個しか装備していないときの各信号
についてのそれぞれ上り方向及び下り方向タイミングチ
ャートである。ラッチ手段は、上り方向及び下り方向に
専用にそれぞれ1個のラッチを装備する。図11は下り
方向のタイミングチャートであるが、上り方向のタイミ
ングとの関係を明確にするために、図11の上段には、
デコーダ37からバス・スレーブ35aへの上り方向の
タイミングチャートも示されている。このバス・システ
ムでは、各コンポーネントの発行するアクノリッジは、
パケットの受け入れ可を意味する。図7の説明のときと
同様に、各ラッチ手段に対して、それがパケット転送方
向上流側及び下流側にそれぞれ隣接するコンポーネント
をそれぞれシンボルCu,Cdで表すものとする。ラッ
チ手段(前述したように、ラッチ手段とは、パイプライ
ン素子、アービタ、及びデコーダの総称である。)は、
1個のラッチしか持たないので、或るクロック・サイク
ルにおいて、コンポーネントCdからアクノリッジ信号
を受け取らないと、次のクロック・サイクルでは、ラッ
チのデータをコンポーネントCdへ引き渡すことができ
ず、したがって、ラッチ・データを次のクロック・サイ
クルのためにホールドする必要上、次のクロック・サイ
クルでは、コンポーネントCuからのデータをラッチに
ラッチすることができない。したがって、各ラッチ手段
は、コンポーネントCuからパケットを自分のラッチに
ホールドするために、コンポーネントCdからアクノリ
ッジ信号を受け取った後、コンポーネントCuへアクノ
リッジ信号を発行しなければならない。図10及び図1
1において同一列は同一クロック・サイクルを示してい
る。
【0040】説明の便宜上、図10において、バス・マ
スタ34aがリクエストR0をアービタ36aへ初めて
出力するクロック・サイクルをT1で表し、以下、各ク
ロック・サイクルをT1から順番にT2,T3,・・・
と表すことにする。図10において、バス・マスタ34
a,34bは、クロック・サイクルT1において最初の
リクエスト信号としてのリクエストR0,R1をアービ
タ36aへ出力する。バス・マスタ34aは、リクエス
ト信号R0と共に、書込み先のバス・スレーブにおける
先頭アドレスを指示するパケット・ブロックa0、ライ
ト(write)対象のアドレス範囲を所定単位に換算
したサイズ(Size)の信号3、ライト・リクエスト
がアクノリッジ不要であることを意味するタイプWn、
及び自分のIDを示す信号M0を、アービタ36aへ出
力している。同様に、バス・マスタ34bは、リクエス
ト信号R1と共に、読出し先のバス・スレーブにおける
先頭アドレスを指示するパケット・ブロックa0、リー
ド対象のアドレス範囲を所定単位に換算したサイズ4、
リード・リクエストがアクノリッジを必要とすることを
意味するタイプRa、及び自分のIDを示すM1を、ア
ービタ36aへ出力している。
【0041】アービタ36aは、バス・マスタ34aの
ライト・リクエストをバス・マスタ34bのリード・リ
クエストよりも優先し、クロック・サイクルT2におい
て、バス・マスタ34aへアクノリッジ信号Aを発行す
る。これに対して、バス・マスタ34aは、クロック・
サイクルT3では、先頭アドレス情報a0に代えて、デ
ータのパケット・ブロックd0をアービタ36aへ送
る。図10では、データの全部のパケット・ブロックは
同一のシンボルd0で表示されているが、計6個のd0
の内、1番目及び2番目のd0はデータ・パケット・ブ
ロック(1)、3番目及び4番目のd0はデータ・パケ
ット・ブロック(2)、5番目及び6番目のd0はデー
タ・パケット・ブロック(3)となっている。各ラッチ
手段は、上り方向及び下り方向共にラッチを1個しか装
備しないので、コンポーネントCdからアクノリッジ信
号を受けたクロック・サイクルに対して、該クロック・
サイクルでは、コンポーネントCuへアクノリッジ信号
を発行できず、コンポーネントCuへアクノリッジ信号
を発行できるのは次のクロック・サイクルとなる。こう
して、エラー等の支障のない限り、アクノリッジが1ク
ロック・サイクル置きに発生するバス・マスタ34a−
アービタ36b間の送受信号パターンが、1クロック・
サイクルずつ遅れながら、下流段のコンポーネントへ伝
播していく。
【0042】アービタ36aは、クロック・サイクルT
9においてアービタ36bからアクノリッジ信号を受け
取ると、クロック・サイクル10では、バス・マスタ3
4bへアクノリッジ信号へ発行する。バス・マスタ34
bは、クロック・サイクルT10におけるアービタ36
aからのアクノリッジ信号により、クロック・サイクル
T9におけるアービタ36aへの伝送信号がアービタ3
6aに受け入れられたことを検知する。エラー等の支障
のない限り、バス・マスタ34b−アービタ36a間の
送受信号パターンが、1クロック・サイクルずつ遅れな
がら、下流段のコンポーネント間へ伝播していく。バス
・スレーブ35aがR1に対してデコーダ37へアクノ
リッジを発行するのはクロック・サイクルT12とな
る。
【0043】図11において、バス・スレーブ35a
は、デコーダ37からリード・リクエストR1を受け取
ると、関連のメモリへの所定のアクセスタイムを経てデ
コーダ37へリクエスト(Slv_Req)Rを送る。説
明の便宜上、図11において、バス・スレーブ35aが
初めてデコーダ37へRを発行したクロック・サイクル
をT1とし、以下、T1以降の各クロック・サイクルに
ついて順番にT2,T3,・・・と表すことにする。バ
ス・スレーブ35aは、クロック・サイクルT1におい
て、Rと共に、リード・アドレス範囲の先頭アドレスを
表すa1、リード対象のアドレス範囲を所定単位に換算
したサイズの信号4、タイプがリード・リクエストに対
するリクエスト・パケットであることを表すaR、どの
バス・マスタに対するアクノリッジ・パケットであるか
を表すM1を出力する。下り方向では、デコーダ37は
アービタとして機能し、アービタ36b,aはデコーダ
として機能する。各ラッチ手段は、上り方向のときの信
号伝送の場合と同様に、アクノリッジを受けたコンポー
ネントCd(注:上り方向のときのコンポーネントC
d,Cuは下り方向ではそれぞれコンポーネントCu,
Cdとなる。)に対して、そのアクノリッジを受けたク
ロック・サイクルの次のクロック・サイクルでは、ラッ
チのデータを出力するとともに、コンポーネントCuへ
はアクノリッジ信号を発行する。こうして、エラー等の
支障のない限り、バス・スレーブ35a−デコーダ37
間の送受信号パターンが、1クロック・サイクルずつ遅
れながら、下流段のコンポーネント間へ伝播していく。
なお、図11では、デコーダ37−アービタ36b間、
及びアービタ36b−アービタ36a間において、Sl
v_AD、Slv_Size、Slv_Typeの記載
は図示の簡便化のために省略している。バス・マスタ3
4bが最後のパケット・ブロックの入力に対するアクノ
リッジをアービタ36aへ出力するのはクロック・サイ
クルT12となる。
【0044】図12及び図13は各ラッチ手段がラッチ
を上り方向及び下り方向共に2個ずつ装備しているとき
の各信号についてのそれぞれ上り方向及び下り方向タイ
ミングチャートである。ラッチ手段は、上り方向及び下
り方向に専用にそれぞれ2個のラッチを装備する。図1
3は下り方向のタイミングチャートであるが、上り方向
のタイミングとの関係を明確にするために、図12の上
段には、デコーダ37からバス・スレーブ35aへの上
り方向のタイミングチャートも示されている。図10及
び図11との相違点についてのみ説明する。なお、説明
の便宜上、図12では、図10の説明のときと同様に、
バス・マスタ34aがリクエストR0をアービタ36a
へ初めて出力するクロック・サイクルをT1で表し、以
下、各クロック・サイクルをT1から順番にT2,T
3,・・・と表すことにし、また、図13では、図11
の説明のときと同様に、バス・スレーブ35aが初めて
デコーダ37へRを発行したクロック・サイクルをT1
とし、以下、T1以降の各クロック・サイクルについて
順番にT2,T3,・・・と表すことにする。ラッチ手
段がラッチを2個装備する場合には、各ラッチ手段は、
コンポーネントCuへアクノリッジ信号を発行したにも
かかわらず、コンポーネントCdからアクノリッジ信号
を入力しないクロック・サイクルがあり、次のクロック
・サイクルでは、ラッチのデータをコンポーネントCd
へ再度、送出しなければならないときも、該次のクロッ
ク・サイクルにおいてコンポーネントCuからのデータ
を別のラッチにラッチすることができる。したがって、
各ラッチ手段は同一のクロック・サイクルにおいてコン
ポーネントCuからアクノリッジ信号を受けつつ、コン
ポーネントCdへアクノリッジ信号を発行することがで
きる。各ラッチ手段Loは、コンポーネントCuからの
最初のクロック・サイクルに対しては、その入力のあっ
たクロック・サイクルT1の次のクロック・サイクルT
2でアクノリッジをコンポーネントCuへ発行する。ま
た、コンポーネントCuへアクノリッジを発行したラッ
チ手段Loは、クロック・サイクルT2でコンポーネン
トCdへリクエストを発行するものの、コンポーネント
Cdがアービタ36bのようなアービタである場合は、
ラッチ手段Loからのリクエストを他のコンポーネント
に優先して受け付けてくれる保証もないので、コンポー
ネントCdから最初のアクノリッジを入力するまで、2
番目のアクノリッジをコンポーネントCuへ発行するこ
とができない。したがって、各ラッチ手段Loがコンポ
ーネントCuへ2番目のアクノリッジを発行できるの
は、コンポーネントCdからアクノリッジを受け取った
クロック・サイクルの次のクロック・サイクルであり、
最も早くてクロック・サイクルT4となる。したがっ
て、各クロック・サイクルLoは、コンポーネントCu
へ連続してアクノリッジを発行できるのはクロック・サ
イクルT4以降となる。後述のパーキング方式ではこれ
を改善できる。こうして、図12及び図13のバス・シ
ステムでは、バス・スレーブ35aがデコーダ37へR
1に対するアクノリッジを発行するのはクロック・サイ
クルT10となる。また、バス・マスタ34bが最後の
パケット・ブロックの入力に対するアクノリッジをアー
ビタ36aへ出力するのはクロック・サイクルT9とな
る。
【0045】図12において、アービタ36aは、クロ
ック・サイクルT7においてバス・マスタ34bへアク
ノリッジ信号を発行しているので、クロック・サイクル
T6におけるバス・マスタ34aへのアクノリッジ信号
に連続してアクノリッジ信号を発行していることになる
が、デコーダ37bはクロック・サイクルT8において
アービタ36aへのアクノリッジ信号の発行を保留して
いる。これは、アービタ36bは、クロック・サイクル
T8においてバス・マスタ34bがリード・リクエスト
を発行しているのを初めて知り、他のバス・マスタから
のアクノリッジとの調停の必要上、直ちにアクノリッジ
信号をアービタ36aへ発行することができないからで
ある。後述のパーキング方式では、このようなアクノリ
ッジ信号の保留を省略して、伝送効率を高めることがで
きる。
【0046】図14及び図15は図12及び図13に係
るバス・システムにパーキング技術を適用した改良バス
・システムにおける各信号についてのそれぞれ上り方向
及び下り方向タイミングチャートである。図12及び図
13のタイミングチャートとの相違点を説明する。な
お、説明の便宜上、図14では、図11の説明のときと
同様に、バス・マスタ34aがリクエストR0をアービ
タ36aへ初めて出力するクロック・サイクルをT1で
表し、以下、各クロック・サイクルをT1から順番にT
2,T3,・・・と表すことにし、また、図15では、
図12の説明のときと同様に、バス・スレーブ35aが
初めてデコーダ37へRを発行したクロック・サイクル
をT1とし、以下、T1以降の各クロック・サイクルに
ついて順番にT2,T3,・・・と表すことにする。パ
イプライン素子及びデコーダは、唯一のコンポーネント
Cuへアクノリッジ信号を常時、発行し続けるパーキン
グ状態になっている。また、アービタは、どこからもリ
クエスト信号を入力していないときは、所定の1個のコ
ンポーネントCuへアクノリッジ信号を発行し続けるパ
ーキング状態になっている。したがって、アービタから
優先的にアクノリッジ信号を発行されるアービタ36a
からのパケットは、その1番目のパケット・ブロックか
ら、エラー等の支障のない限り、アービタを含む全クロ
ック・サイクルにおいてアクノリッジを待つことなく、
進行することができる。こうして、バス・スレーブ35
aがデコーダ37へR1に対するアクノリッジを発行す
るのはクロック・サイクルT7となる。また、バス・マ
スタ34bが最後のパケット・ブロックの入力に対する
アクノリッジをアービタ36aへ出力するのもクロック
・サイクルT7となる。
【0047】図16はパイプライン素子の動作に関わっ
ている複数個の信号についてのタイミングチャートの例
示である。各信号の意味は次のとおりである。なお、図
16〜図22を参照して説明するバス・システムは、図
6〜図15において説明したバス・システムとは、同一
のパイプライン方式ながら、装備するインターフェース
が異なっているので、一部の信号が相違している。図6
〜図15のものでは、SIZEによりパケット・サイズ
を定義していたのに対し、図16以降のものは、パケッ
ト・サイズの代わりに、CMD及びNXTと言う信号に
よりをパケットの開始と終了を定義している。 CLK:該CLKの0から1の変化点で各信号がバス上
の隣接コンポーネント間で転送される。 RST:各コンポーネントがコンポーネントCdへ出力
する信号。1のときバスがリセット状態であることを示
す。 REQ:各コンポーネントがコンポーネントCdへ出力
する信号。1のとき転送パケットとしての後述のADが
在ることを示す。 CMD:各コンポーネントがコンポーネントCdへ出力
する信号。1のとき転送パケットとしてのADがコマン
ドであることを示す。 NXT:各コンポーネントがコンポーネントCdへ出力
する信号。1のとき転送パケットが続くことを示す。 AD:各コンポーネントがコンポーネントCdへ出力す
る信号。CMDが1のときはADの内容はコマンドであ
り、0のときはADの内容はデータである。 ACK:各コンポーネントがコンポーネントCuへ出力
する信号。1のとき現在の転送情報を受け取ったことを
示す。
【0048】図16において、ADのパケットには、コ
マンド・パケットのみのばあいと、コマンド・パケット
の後に1個以上のデータ・パケットが続く場合とがあ
る。なお、前述の図10〜図15で説明した各コンポー
ネントは、コンポーネントCdからアクノリッジ信号を
受けるアクノリッジ信号までリクエスト信号をコンポー
ネントCdに対して出力することになっているが、この
図16のコンポーネントは、AD信号をコンポーネント
Cdへ出力する全アクノリッジ信号において、リクエス
ト信号をコンポーネントCdへ出力することになってい
る。
【0049】図17は上り方向のパケット転送の場合の
バス・システムの各コンポーネントにおける信号入出力
を示している。バス・マスタ43a,43bからの上り
方向パケットは、アービタ46、パイプライン素子4
7、及びデコーダ48を経てバス・スレーブ44a又は
44bへ送られる。図16に示したように、各コンポー
ネントは、コンポーネントCuへはRST、REQ,C
MD,NXT,ADの信号を出力し、コンポーネントC
dへはACKを送る。各コンポーネントは、また、共通
のCLKの供給を受ける。バス・マスタ43a,43b
及びバス・スレーブ44a,44bのロジックはユーザ
に委託される(User Logic)。
【0050】なお、図17では、バス・マスタからバス
・スレーブへのパケット転送に関連して回路を説明して
いるが、バス・スレーブからバス・マスタへのパケット
転送に対処するために、図17の回路とは信号方向が逆
向きの回路が別途、装備されている。すなわち、下り方
向のパケット転送用の回路では、図17の上り方向のパ
ケット転送用回路のアービタ46及びデコーダ48はそ
れぞれバス・スレーブ及びバス・マスタに置き換わると
ともに、各ラッチ手段に対するコンポーネントCu及び
コンポーネントCdの関係が図17のものとは逆とな
り、それに伴い、RST、REQ,CMD,NXT,A
D,ACKも各コンポーネント間において図17とは逆
向きとされる。
【0051】図18はパイプライン素子47のブロック
図である。図18において、MSTが信号名の語頭に付
いている信号は、パケット転送方向上流側に隣接するコ
ンポーネントCuからパイプライン素子47へ入力され
る信号を意味し、SLVが信号名の語頭に付いている信
号はパケット転送方向下流側に隣接するコンポーネント
Cdから入力される信号を意味し、PIPが語頭に付い
ているものは、パイプライン素子47がコンポーネント
Cu及びコンポーネントCdへ出力する信号であること
を意味する。パイプライン素子47はラッチA50及び
ラッチB51を有している。コンポーネントCu側から
のAD,CD,NXTはラッチB51のD及び選択器5
3のAへ入力される。制御器52はコンポーネントCu
側に対しては、REQを入力され、ACKを出力し、ま
た、コンポーネントCd側に対しては、REQを出力
し、ACKを入力される。制御器52は、ラッチA50
のENB端子、ラッチB51のENB端子、及び選択器
53のSEL端子のへ制御信号を送る。
【0052】図19は図18のパイプライン素子47の
真理値表である。各信号の現在の値(Current
Value)と次の値(Next Value)との関
係が示されており、同一列において、各信号の現在の値
に対して各信号の次の値がどうなるかが示されている。
なお、Xは”1”,”0”のどちらでもかまわないこと
を意味し、Hはラッチが値をホールドすること、すなわ
ち前のクロック・サイクルにおける値を維持すること、
Aは選択器53のA端子のデータがラッチA50にラッ
チされること、Bは選択器53のB端子のデータがラッ
チA50にラッチされること、DはラッチB51のD端
子のデータがラッチB51にラッチされることを、それ
ぞれ意味する。図19の真理値表は12行×9列の行列
となっている。図20は図19の真理値表に基づくパイ
プライン素子47の状態遷移図である。4個の囲み内の
4桁の数値は左から順番に、PIP_ACK、PIP_
REQ、Latch−A_Full、及びLatch−
B_Fullの真理値であり、図19の1〜4行の真理
値に対応している。
【0053】図19及び図20を参照しつつ、パイプラ
イン素子47の状態遷移を説明する。エラー等が発生し
ないで、各パケットが1クロック・サイクルごとに次段
のコンポーネントへ転送されているときは、図19の真
理値表では、6列目の真理値(上から順番に1,1,
1,0|1,1|1,1,1,0|H,D)の状態に対
応し、図20の状態遷移図ではS3に対応する。すなわ
ち、コンポーネントは、各クロック・サイクルにおい
て、コンポーネントCu及びコンポーネントCdへアク
ノリッジ信号(PIP_ACK)及びリクエスト信号
(PIP_REQ)を出力し、また、ラッチA50のパ
ケットをコンポーネントCdへ転送しつつ、コンポーネ
ントCuからのパケットをラッチA50にラッチする処
理を続けている。S3の状態は、パイプライン素子47
が、クロック・サイクルにおいてコンポーネントCu及
びコンポーネントCdからそれぞれリクエスト信号及び
アクノリッジ信号を入力される場合だけでなく、クロッ
ク・サイクルにおいてコンポーネントCu及びコンポー
ネントCdからそれぞれリクエスト信号及びアクノリッ
ジ信号を入力されない場合も、継続する。S3の状態に
おいて、コンポーネントCdからのアクノリッジ信号が
途絶えると、パイプライン素子47はS4の状態へ移行
する。S4の状態では、コンポーネントは、各クロック
・サイクルにおいて、コンポーネントCuへはアクノリ
ッジ信号(PIP_ACK)を出力せず、コンポーネン
トCdへはリクエスト信号(PIP_REQ)を出力す
る。S4では、ラッチA50及びラッチB51は共にフ
ル(Full)の状態にあり、パケットをラッチA50
及びラッチB51にホールドしている。なお、S4にお
いて、ラッチA50はS3の最後のクロック・サイクル
においてラッチしていたパケットをホールドしており、
また、ラッチB51は、S4の最初のクロック・サイク
ルにおいてコンポーネントCuから入力してラッチした
パケットをホールドしている。S4の状態は、コンポー
ネントCdからアクノリッジ信号を入力しない限り(S
_ACK=0)、コンポーネントCuからのリクエスト
信号の有無に関係なく(M_REQ=X)、維持され
る。そして、パイプライン素子47は、アクノリッジ信
号がコンポーネントCdから入力されしだい、ラッチB
51のパケットをラッチA50にラッチして、S4から
S3へ戻る。
【0054】図21はアービタ46のブロック図であ
る。アービタ46はパイプライン・ロジック55を含
み、パイプライン・ロジック55の構成は図18のパイ
プライン素子47の構成と同一である。各コンポーネン
トCu(図17の例では、バス・マスタ43a及びバス
・マスタ43b)からの信号は選択器56のA,Bへそ
れぞれ入力される。パイプライン・ロジック55が各コ
ンポーネントCuへ出力する信号はデコーダ57のそれ
ぞれOUT0,OUT1から出力される。各コンポーネ
ントCuからのREQ及びNXT信号は、選択器56だ
けでなく、制御器58へも入力される。コンポーネント
Cdからのアクノリッジ信号(SLV_ACK)は、パ
イプライン・ロジック55を経て、ARB_ACKとし
てデコーダ57のIN端子及び制御器58へ入力され
る。制御器58は、REQ(リクエスト信号)及びNE
XT(継続信号)に基づいて選択器56におけるA,B
の切替を制御し、また、REQ(リクエスト信号)、N
EXT(継続信号)、及びに基づいてデコーダ57にお
けるOUT0,OUT1の切替を制御する。選択器56
は、複数個のコンポーネントCuからリクエスト信号
(MST_REQ0,MST_REQ1)を同時に入力
した場合、あらかじめ定めてある調停律に従って1個の
コンポーネントCuを選択器56に選択させ、該選択し
たコンポーネントCuからのNEXT信号が途絶えるま
で、その選択を選択器56に維持させる。こうして、ア
ービタ46において選択されたコンポーネントCuから
の連続パケットは、その連続が途絶えるまで次段のコン
ポーネントCd(図17の例ではパイプライン素子4
7)へ送り続けられる。
【0055】図22はデコーダ48のブロック図であ
る。アービタ46はパイプライン・ロジック61を含
み、パイプライン・ロジック61の構成は図18のパイ
プライン素子47の構成と同一である。コンポーネント
Cuからの信号MST_REQ,MST_CMD,MS
T_NXT,MST_ADはパイプライン・ロジック6
1を経てデコーダ63のINへ信号DEC_REQ,D
EC_CMD,DEC_NXT,DEC_ADとして入
力される。DEC_CMD,DEC_ADはまた制御器
64へも入力される。制御器64は、入力信号DEC_
CMD,DEC_ADに基づいて選択器62におけるI
N0,IN1を切替えるとともに、デコーダ63のOU
T0,OUT1を切替える。こうして、コンポーネント
Cu側からのパケットは、そのあて先のバス・スレーブ
に対応するOUT0又はOUT1からコンポーネントC
d側へ送り出され、また、選択器62において選択され
た1個のコンポーネントCd側からのアクノリッジ信号
(SLV_ACK0,SLV_ACK1)がSLV_A
CKとしてパイプライン・ロジック61へ入力され、さ
らに、パイプライン・ロジック61からDEC_ACK
としてコンポーネントCu側のコンポーネントへ出力さ
れる。
【0056】まとめとして本発明の構成に関して以下の
事項を開示する。 (1)バスに接続されている少なくとも1個のバス・マス
タ、バス・マスタの個数と合わせた総数が3個以上とな
る個数で存在してバスに接続されている少なくとも1個
のバス・スレーブ、及びバス・マスタとバス・スレーブ
との間のバス経路に介在して該バス経路を複数の区画に
分割しクロックに同期して伝送信号のラッチ及び出力を
行うラッチ手段、を有し、クロックの周期は、バス上の
隣接する任意の第1及び第2の区画に対して、第1の区
画における信号伝送時間より長くかつ第1及び第2の区
画の合計の信号伝送時間より短く設定されている、バス
・システム。 (2)バス上の各区画の長さがほぼ均等に設定されている
(1)記載のバス・システム。 (3)バスは、各バス・マスタ及び各バス・スレーブから
見てツリー構造となっている(1)記載のバス・システ
ム。 (4)少なくとも2個のバス・マスタを有し、少なくとも
1個のラッチ手段は、バス・マスタからバス・スレーブ
への信号伝送に対するアービタである(1)記載のバス・
システム。 (5)少なくとも2個のバス・スレーブを有し、少なくと
も1個のラッチ手段は、バス・マスタからバス・スレー
ブへの信号伝送に対するデコーダである(1)記載のバス
・システム。
【0057】(6)アービタ及びデコーダとしてのラッチ
手段は、それぞれバス・スレーブからバス・マスタへの
信号伝送に対するデコーダ及びアービタとなっている
(4)又は(5)記載のバス・システム。 (7)データの読出し及び書込みの高速性の要求度の高い
特定のバス・マスタとバス・スレーブとの間のバス経路
長は、要求度の低い他のバス・マスタとバス・スレーブ
との間のバス経路長未満に設定されるとともに、該特定
のバス・マスタとバス・スレーブとの間におけるラッチ
手段の介在個数は、該他のバス・マスタとバス・スレー
ブとの間の介在個数未満に設定されている(3)記載のバ
ス・システム。 (8)バス・マスタとバス・スレーブとの間のデータ転送
はパケット方式である(1)記載のバス・システム。 (9)パケット方式のデータ転送はコネクションレスであ
る(8)記載のバス・システム。 (10)バス・マスタは第1のバス・マスタとキャッシュ
を装備する第2のバス・マスタとを含み、アービタは、
バス・スレーブの特定のアドレス範囲に対するリード・
リクエストを第1のバス・マスタから受け付けたとき、
第2のバス・マスタへ、該第2のバス・マスタが自分の
キャッシュにバス・スレーブの特定のアドレス範囲に係
るデータを保持しているか否かを問い合わせ、第2のバ
ス・マスタがデータを保持している場合は、第2のバス
・マスタに、データをバス・スレーブの該当アドレス範
囲に書込ませる(4)記載のバス・システム。
【0058】(11)バス・マスタ、バス・スレーブ、及
びラッチ手段をコンポーネントと総称することにし、各
ラッチ手段に対してパケット転送方向へ上流側及び下流
側に隣接するコンポーネントをそれぞれ第1及び第2の
コンポーネントと呼び、かつ連続する3個のクロック・
サイクルを前から順番に、第1、第2、及び第3のクロ
ック・サイクルと呼ぶことにすると、各ラッチ手段は、
第2のクロック・サイクルにおいて第1のコンポーネン
トからパケットを受けるために、第1のクロック・サイ
クルにおいて第1のコンポーネントへアクノリッジ信号
を出力する(1)記載のバス・システム。 (12)ラッチ手段は、第1及び第2のラッチを有し、第
1のクロック・サイクルにおいて第1のコンポーネント
へはアクノリッジ信号を出力しかつ第2のコンポーネン
トからはアクノリッジ信号を入力しなかったとき、第1
のクロック・サイクルにおいて第2のコンポーネントへ
のパケットを第1のラッチにホールドし、第2のクロッ
ク・サイクルでは、第2のコンポーネントへ第1のラッ
チのパケットを再送するとともに、第1のコンポーネン
トからのパケットを第2のラッチにラッチする(11)記
載のバス・システム。 (13)ラッチ手段は、第2のクロック・サイクルでは、
第1のコンポーネントへのアクノリッジ信号の出力を中
止し、もし第2のクロック・サイクルにおいて第2のコ
ンポーネントからアクノリッジ信号を入力したならば、
第3のクロック・サイクルでは、第1のラッチのパケッ
トを第2のコンポーネントへ送出しつつ、第2のラッチ
のパケットを第1のラッチへラッチし、かつ第1のコン
ポーネントへアクノリッジ信号を出力する(12)記載の
バス・システム。 (14)アービタは、複数個の第1のコンポーネントの内
の一つを優先コンポーネントと定め、いずれの第1のコ
ンポーネントからもリクエスト信号を受付けていないク
ロック・サイクルでは、優先コンポーネントへアクノリ
ッジ信号を発行するパーキング状態にされ、また、アー
ビタ以外のラッチ手段も唯一の第1のコンポーネントに
ついてのパーキング状態にされている(12)記載のバス
・システム。 (15)バス・マスタ、バス・スレーブ、及びラッチ手段
が1チップ内に製作されている(1)記載のバス・システ
ム。
【0059】(16)バスを介して接続されるバス・マス
タ及びバス・スレーブをそれぞれ少なくとも1個、かつ
両者の総数が18以上となっているバス・システムの信
号伝送方法において、少なくとも1個のラッチ手段をバ
ス・マスタとバス・スレーブとの間のバス経路に介在さ
せて、該バス経路を複数の区画に分割し、クロックに同
期して伝送信号をラッチ手段においてラッチ及び出力さ
せ、クロックの周期を、バス上の隣接する任意の第1及
び第2の区画に対して、第1の区画における信号伝送時
間より長くかつ第1及び第2の区画の合計の信号伝送時
間より短く設定する、バス・システム用信号伝送方法。 (17)バス上の各区画の長さをほぼ均等に設定する(1
6)記載のバス・システム用信号伝送方法。 (18)バスを、各バス・マスタ及び各バス・スレーブか
ら見てツリー構造とする(16)記載のバス・システム用
信号伝送方法。 (19)バス・マスタの個数を少なくとも2個とし、少な
くとも1個のラッチ手段を、バス・マスタからバス・ス
レーブへの信号伝送に対するアービタとする(16)記載
のバス・システム用信号伝送方法。 (20)バス・スレーブの個数を少なくとも2個とし、少
なくとも1個のラッチ手段を、バス・マスタからバス・
スレーブへの信号伝送に対するデコーダとする(16)記
載のバス・システム用信号伝送方法。
【0060】(21)アービタ及びデコーダとしてのラッ
チ手段を、それぞれバス・スレーブからバス・マスタへ
の信号伝送に対するデコーダ及びアービタとする(19)
又は(20)記載のバス・システム用信号伝送方法。 (22)データの読出し及び書込みの高速性の要求度の高
い特定のバス・マスタとバス・スレーブとの間のバス経
路長を、要求度の低い他のバス・マスタとバス・スレー
ブとの間のバス経路長未満に設定するとともに、該特定
のバス・マスタとバス・スレーブとの間におけるラッチ
手段の介在個数を、該他のバス・マスタとバス・スレー
ブとの間の介在個数未満に設定する(18)記載のバス・
システム用信号伝送方法。 (23)バス・マスタとバス・スレーブとの間のデータ転
送をパケット方式とする(16)記載のバス・システム用
信号伝送方法。 (24)パケット方式のデータ転送をコネクションレスと
する(23)記載のバス・システム用信号伝送方法。 (25)バス・マスタには、第1のバス・マスタとキャッ
シュを装備する第2のバス・マスタとを含ませ、アービ
タの作動として、アービタは、バス・スレーブの特定の
アドレス範囲に対するリード・リクエストを第1のバス
・マスタから受け付けたとき、第2のバス・マスタへ、
該第2のバス・マスタが自分のキャッシュにバス・スレ
ーブの特定のアドレス範囲に係るデータを保持している
か否かを問い合わせ、第2のバス・マスタがデータを保
持している場合は、第2のバス・マスタに、データをバ
ス・スレーブの該当アドレス範囲に書込ませる作動を、
設定する(19)記載のバス・システム用信号伝送方法。
【0061】(26)バス・マスタ、バス・スレーブ、及
びラッチ手段をコンポーネントと総称することにし、各
ラッチ手段に対してパケット転送方向へ上流側及び下流
側に隣接するコンポーネントをそれぞれ第1及び第2の
コンポーネントと呼び、かつ連続する18個のクロック
・サイクルを前から順番に、第1、第2、及び第3のク
ロック・サイクルと呼ぶことにすると、各ラッチ手段の
作動として、各ラッチ手段は、第2のクロック・サイク
ルにおいて第1のコンポーネントからパケットを受ける
ために、第1のクロック・サイクルにおいて第1のコン
ポーネントへアクノリッジ信号を出力させる作動を、設
定する(16)記載のバス・システム用信号伝送方法。 (27)ラッチ手段には、第1及び第2のラッチを装備さ
せ、ラッチ手段の作動として、ラッチ手段は、第1のク
ロック・サイクルにおいて第1のコンポーネントへはア
クノリッジ信号を出力しかつ第2のコンポーネントから
はアクノリッジ信号を入力しなかったとき、第1のクロ
ック・サイクルにおいて第2のコンポーネントへのパケ
ットを第1のラッチにホールドし、第2のクロック・サ
イクルでは、第2のコンポーネントへ第1のラッチのパ
ケットを再送するとともに、第1のコンポーネントから
のパケットを第2のラッチにラッチする作動を設定する
(26)記載のバス・システム用信号伝送方法。 (28)ラッチ手段の作動として、ラッチ手段は、第2の
クロック・サイクルでは、第1のコンポーネントへのア
クノリッジ信号の出力を中止し、もし第2のクロック・
サイクルにおいて第2のコンポーネントからアクノリッ
ジ信号を入力したならば、第3のクロック・サイクルで
は、第1のラッチのパケットを第2のコンポーネントへ
送出しつつ、第2のラッチのパケットを第1のラッチへ
ラッチし、かつ第1のコンポーネントへアクノリッジ信
号を出力する作動を、設定する(27)記載のバス・シス
テム用信号伝送方法。 (29)アービタの作動として、アービタは、複数個の第
1のコンポーネントの内の一つを優先コンポーネントと
定め、いずれの第1のコンポーネントからもリクエスト
信号を受付けていないクロック・サイクルでは、優先コ
ンポーネントへアクノリッジ信号を発行するパーキング
状態にされ、また、アービタ以外のラッチ手段も唯一の
第1のコンポーネントについてのパーキング状態にされ
る作動を、設定する(27)記載のバス・システム用信号
伝送方法。
【0062】
【発明の効果】本発明によれば、バス・マスタとバス・
スレーブとの間の距離が増大しても、バス・システムの
動作周波数の減少を回避できるので、所定の動作周波数
を確保しつつ、ICチップ等のバス・システム装備体に
バス・マスタ及びバス・スレーブを広く分布させて、配
置させることができる。
【図面の簡単な説明】
【図1】従来の典型的なバス・システムの概念構成図で
ある。
【図2】本発明を具現化したバス・システムの概念構成
図である。
【図3】本発明を具現化したバス・システムにおける信
号の並列伝送を示す図である。
【図4】本発明を具現化したバス・システムにおける信
号の一時停止を示す図である。
【図5】全体的な伝送効率を考慮してバス・マスタとバ
ス・スレーブとの間の距離を設定したバス・システムに
おける構成図である。
【図6】各パイプライン素子が発行するパケットの種類
及びその内容を示す図である。
【図7】別に各ラッチ手段の発行する信号を示す図であ
る。
【図8】バス・システムにおけるパケットの流れを順番
に示す説明図である。
【図9】バス・システムにおけるパケットの流れを図8
に続けて順番に示す説明図である。
【図10】図8及び図9のパケット転送モデルにおいて
各ラッチ手段がラッチを上り方向及び下り方向共に1個
しか装備していないときの各信号についての上り方向タ
イミングチャートである。
【図11】図8及び図9のパケット転送モデルにおいて
各ラッチ手段がラッチを上り方向及び下り方向共に1個
しか装備していないときの各信号についての下り方向タ
イミングチャートである。
【図12】各ラッチ手段がラッチを上り方向及び下り方
向共に2個ずつ装備しているときの各信号についての上
り方向タイミングチャートである。
【図13】各ラッチ手段がラッチを上り方向及び下り方
向共に2個ずつ装備しているときの各信号についての下
り方向タイミングチャートである。
【図14】図12及び図13に係るバス・システムにパ
ーキング技術を適用した改良バス・システムにおける各
信号についての上り方向タイミングチャートである。
【図15】図12及び図13に係るバス・システムにパ
ーキング技術を適用した改良バス・システムにおける各
信号についての下り方向タイミングチャートである。
【図16】パイプライン素子の動作に関わっている複数
個の信号についてのタイミングチャートの例示である。
【図17】上り方向のパケット転送の場合のバス・シス
テムの各コンポーネントにおける信号入出力を示す図で
ある。
【図18】パイプライン素子のブロック図である。
【図19】図18のパイプライン素子の真理値表であ
る。
【図20】図19の真理値表に基づくパイプライン素子
の状態遷移図である。
【図21】アービタのブロック図である。
【図22】デコーダのブロック図である。
【符号の説明】
19 バス・システム 21a〜c バス・マスタ(コンポーネント) 22a〜c バス・スレーブ(コンポーネント) 23 パイプライン素子(ラッチ手段) 24a,b アービタ(ラッチ手段、コンポーネン
ト) 25a,b デコーダ(ラッチ手段、コンポーネン
ト) 26a,b 高速バス・マスタ(コンポーネント) 27a〜f 低速バス・マスタ(コンポーネント) 30a,b 高速バス・スレーブ(コンポーネント) 31 低速バス・スレーブ(コンポーネント) 32a〜f アービタ(ラッチ手段、コンポーネン
ト) 33a,b デコーダ(ラッチ手段、コンポーネン
ト) 34a,b バス・マスタ(コンポーネント) 35a,b バス・スレーブ(コンポーネント) 36a,b アービタ(ラッチ手段、コンポーネン
ト) 37 デコーダ(ラッチ手段、コンポーネント) 43a,43b バス・マスタ(コンポーネント) 44a,44b バス・スレーブ(コンポーネント) 46 アービタ(ラッチ手段、コンポーネント) 47 パイプライン素子(ラッチ手段) 48 デコーダ(ラッチ手段、コンポーネント)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 原田 信之 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 Fターム(参考) 5B005 JJ12 KK15 MM01 5B061 BB21 FF12 PP00 5B077 GG04 GG16 MM01 MM02 5K032 AA09 DA01 DA07 EC02

Claims (29)

    【特許請求の範囲】
  1. 【請求項1】 バスに接続されている少なくとも1個の
    バス・マスタ、 前記バス・マスタの個数と合わせた総数が3個以上とな
    る個数で存在して前記バスに接続されている少なくとも
    1個のバス・スレーブ、及び前記バス・マスタと前記バ
    ス・スレーブとの間のバス経路に介在して該バス経路を
    複数の区画に分割しクロックに同期して伝送信号のラッ
    チ及び出力を行うラッチ手段、を有し、 クロックの周期は、前記バス上の隣接する任意の第1及
    び第2の区画に対して、第1の区画における信号伝送時
    間より長くかつ第1及び第2の区画の合計の信号伝送時
    間より短く設定されている、ことを特徴とするバス・シ
    ステム。
  2. 【請求項2】 前記バス上の各区画の長さがほぼ均等に
    設定されていることを特徴とする請求項1記載のバス・
    システム。
  3. 【請求項3】 前記バスは、各バス・マスタ及び各バス
    ・スレーブから見てツリー構造となっていることを特徴
    とする請求項1記載のバス・システム。
  4. 【請求項4】 少なくとも2個のバス・マスタを有し、 少なくとも1個のラッチ手段は、バス・マスタからバス
    ・スレーブへの信号伝送に対するアービタであることを
    特徴とする請求項1記載のバス・システム。
  5. 【請求項5】 少なくとも2個のバス・スレーブを有
    し、 少なくとも1個のラッチ手段は、バス・マスタからバス
    ・スレーブへの信号伝送に対するデコーダであることを
    特徴とする請求項1記載のバス・システム。
  6. 【請求項6】 前記アービタ及び前記デコーダとしての
    ラッチ手段は、それぞれバス・スレーブからバス・マス
    タへの信号伝送に対するデコーダ及びアービタとなって
    いることを特徴とする請求項4又は5記載のバス・シス
    テム。
  7. 【請求項7】 データの読出し及び書込みの高速性の要
    求度の高い特定のバス・マスタとバス・スレーブとの間
    のバス経路長は、要求度の低い他のバス・マスタとバス
    ・スレーブとの間のバス経路長未満に設定されるととも
    に、該特定のバス・マスタとバス・スレーブとの間にお
    けるラッチ手段の介在個数は、該他のバス・マスタとバ
    ス・スレーブとの間の介在個数未満に設定されているこ
    とを特徴とする請求項3記載のバス・システム。
  8. 【請求項8】 バス・マスタとバス・スレーブとの間の
    データ転送はパケット方式であることを特徴とする請求
    項1記載のバス・システム。
  9. 【請求項9】 前記パケット方式のデータ転送はコネク
    ションレスであることを特徴とする請求項8記載のバス
    ・システム。
  10. 【請求項10】 前記バス・マスタは第1のバス・マス
    タとキャッシュを装備する第2のバス・マスタとを含
    み、 前記アービタは、前記バス・スレーブの特定のアドレス
    範囲に対するリード・リクエストを第1のバス・マスタ
    から受け付けたとき、第2のバス・マスタへ、該第2の
    バス・マスタが自分のキャッシュに前記バス・スレーブ
    の特定のアドレス範囲に係るデータを保持しているか否
    かを問い合わせ、前記第2のバス・マスタが前記データ
    を保持している場合は、前記第2のバス・マスタに、前
    記データを前記バス・スレーブの該当アドレス範囲に書
    込ませることを特徴とする請求項4記載のバス・システ
    ム。
  11. 【請求項11】 バス・マスタ、バス・スレーブ、及び
    ラッチ手段をコンポーネントと総称することにし、各ラ
    ッチ手段に対してパケット転送方向へ上流側及び下流側
    に隣接するコンポーネントをそれぞれ第1及び第2のコ
    ンポーネントと呼び、かつ連続する3個のクロック・サ
    イクルを前から順番に、第1、第2、及び第3のクロッ
    ク・サイクルと呼ぶことにすると、 各ラッチ手段は、第2のクロック・サイクルにおいて第
    1のコンポーネントからパケットを受けるために、第1
    のクロック・サイクルにおいて第1のコンポーネントへ
    アクノリッジ信号を出力することを特徴とする請求項1
    記載のバス・システム。
  12. 【請求項12】 前記ラッチ手段は、第1及び第2のラ
    ッチを有し、第1のクロック・サイクルにおいて第1の
    コンポーネントへはアクノリッジ信号を出力しかつ第2
    のコンポーネントからはアクノリッジ信号を入力しなか
    ったとき、第1のクロック・サイクルにおいて第2のコ
    ンポーネントへのパケットを第1のラッチにホールド
    し、第2のクロック・サイクルでは、第2のコンポーネ
    ントへ第1のラッチのパケットを再送するとともに、第
    1のコンポーネントからのパケットを第2のラッチにラ
    ッチすることを特徴とする請求項11記載のバス・シス
    テム。
  13. 【請求項13】 前記ラッチ手段は、第2のクロック・
    サイクルでは、第1のコンポーネントへのアクノリッジ
    信号の出力を中止し、もし第2のクロック・サイクルに
    おいて第2のコンポーネントからアクノリッジ信号を入
    力したならば、第3のクロック・サイクルでは、第1の
    ラッチのパケットを第2のコンポーネントへ送出しつ
    つ、第2のラッチのパケットを第1のラッチへラッチ
    し、かつ第1のコンポーネントへアクノリッジ信号を出
    力することを特徴とする請求項12記載のバス・システ
    ム。
  14. 【請求項14】 前記アービタは、複数個の第1のコン
    ポーネントの内の一つを優先コンポーネントと定め、い
    ずれの第1のコンポーネントからもリクエスト信号を受
    付けていないクロック・サイクルでは、優先コンポーネ
    ントへアクノリッジ信号を発行するパーキング状態にさ
    れ、また、アービタ以外のラッチ手段も唯一の第1のコ
    ンポーネントについてのパーキング状態にされているこ
    とを特徴とする請求項12記載のバス・システム。
  15. 【請求項15】 前記バス・マスタ、前記バス・スレー
    ブ、及び前記ラッチ手段が1チップ内に製作されている
    ことを特徴とする請求項1記載のバス・システム。
  16. 【請求項16】 バスを介して接続されるバス・マスタ
    及びバス・スレーブをそれぞれ少なくとも1個、かつ両
    者の総数が18以上となっているバス・システムの信号
    伝送方法において、 少なくとも1個のラッチ手段を前記バス・マスタと前記
    バス・スレーブとの間のバス経路に介在させて、該バス
    経路を複数の区画に分割し、 クロックに同期して伝送信号をラッチ手段においてラッ
    チ及び出力させ、 クロックの周期を、前記バス上の隣接する任意の第1及
    び第2の区画に対して、第1の区画における信号伝送時
    間より長くかつ第1及び第2の区画の合計の信号伝送時
    間より短く設定する、ことを特徴とするバス・システム
    用信号伝送方法。
  17. 【請求項17】 前記バス上の各区画の長さをほぼ均等
    に設定することを特徴とする請求項16記載のバス・シ
    ステム用信号伝送方法。
  18. 【請求項18】 前記バスを、各バス・マスタ及び各バ
    ス・スレーブから見てツリー構造とすることを特徴とす
    る請求項16記載のバス・システム用信号伝送方法。
  19. 【請求項19】 バス・マスタの個数を少なくとも2個
    とし、 少なくとも1個のラッチ手段を、バス・マスタからバス
    ・スレーブへの信号伝送に対するアービタとすることを
    特徴とする請求項16記載のバス・システム用信号伝送
    方法。
  20. 【請求項20】 バス・スレーブの個数を少なくとも2
    個とし、 少なくとも1個のラッチ手段を、バス・マスタからバス
    ・スレーブへの信号伝送に対するデコーダとすることを
    特徴とする請求項16記載のバス・システム用信号伝送
    方法。
  21. 【請求項21】 前記アービタ及び前記デコーダとして
    のラッチ手段を、それぞれバス・スレーブからバス・マ
    スタへの信号伝送に対するデコーダ及びアービタとする
    ことを特徴とする請求項19又は20記載のバス・シス
    テム用信号伝送方法。
  22. 【請求項22】 データの読出し及び書込みの高速性の
    要求度の高い特定のバス・マスタとバス・スレーブとの
    間のバス経路長を、要求度の低い他のバス・マスタとバ
    ス・スレーブとの間のバス経路長未満に設定するととも
    に、該特定のバス・マスタとバス・スレーブとの間にお
    けるラッチ手段の介在個数を、該他のバス・マスタとバ
    ス・スレーブとの間の介在個数未満に設定することを特
    徴とする請求項18記載のバス・システム用信号伝送方
    法。
  23. 【請求項23】 バス・マスタとバス・スレーブとの間
    のデータ転送をパケット方式とすることを特徴とする請
    求項16記載のバス・システム用信号伝送方法。
  24. 【請求項24】 前記パケット方式のデータ転送をコネ
    クションレスとすることを特徴とする請求項23記載の
    バス・システム用信号伝送方法。
  25. 【請求項25】 前記バス・マスタには、第1のバス・
    マスタとキャッシュを装備する第2のバス・マスタとを
    含ませ、 前記アービタの作動として、前記アービタは、前記バス
    ・スレーブの特定のアドレス範囲に対するリード・リク
    エストを第1のバス・マスタから受け付けたとき、第2
    のバス・マスタへ、該第2のバス・マスタが自分のキャ
    ッシュに前記バス・スレーブの特定のアドレス範囲に係
    るデータを保持しているか否かを問い合わせ、前記第2
    のバス・マスタが前記データを保持している場合は、前
    記第2のバス・マスタに、前記データを前記バス・スレ
    ーブの該当アドレス範囲に書込ませる作動を、設定する
    ことを特徴とする請求項19記載のバス・システム用信
    号伝送方法。
  26. 【請求項26】 バス・マスタ、バス・スレーブ、及び
    ラッチ手段をコンポーネントと総称することにし、各ラ
    ッチ手段に対してパケット転送方向へ上流側及び下流側
    に隣接するコンポーネントをそれぞれ第1及び第2のコ
    ンポーネントと呼び、かつ連続する18個のクロック・
    サイクルを前から順番に、第1、第2、及び第3のクロ
    ック・サイクルと呼ぶことにすると、 各ラッチ手段の作動として、各ラッチ手段は、第2のク
    ロック・サイクルにおいて第1のコンポーネントからパ
    ケットを受けるために、第1のクロック・サイクルにお
    いて第1のコンポーネントへアクノリッジ信号を出力さ
    せる作動を、設定することを特徴とする請求項16記載
    のバス・システム用信号伝送方法。
  27. 【請求項27】 前記ラッチ手段には、第1及び第2の
    ラッチを装備させ、 前記ラッチ手段の作動として、前記ラッチ手段は、第1
    のクロック・サイクルにおいて第1のコンポーネントへ
    はアクノリッジ信号を出力しかつ第2のコンポーネント
    からはアクノリッジ信号を入力しなかったとき、第1の
    クロック・サイクルにおいて第2のコンポーネントへの
    パケットを第1のラッチにホールドし、第2のクロック
    ・サイクルでは、第2のコンポーネントへ第1のラッチ
    のパケットを再送するとともに、第1のコンポーネント
    からのパケットを第2のラッチにラッチする作動を設定
    することを特徴とする請求項26記載のバス・システム
    用信号伝送方法。
  28. 【請求項28】 前記ラッチ手段の作動として、前記ラ
    ッチ手段は、第2のクロック・サイクルでは、第1のコ
    ンポーネントへのアクノリッジ信号の出力を中止し、も
    し第2のクロック・サイクルにおいて第2のコンポーネ
    ントからアクノリッジ信号を入力したならば、第3のク
    ロック・サイクルでは、第1のラッチのパケットを第2
    のコンポーネントへ送出しつつ、第2のラッチのパケッ
    トを第1のラッチへラッチし、かつ第1のコンポーネン
    トへアクノリッジ信号を出力する作動を、設定すること
    を特徴とする請求項27記載のバス・システム用信号伝
    送方法。
  29. 【請求項29】 前記アービタの作動として、前記アー
    ビタは、複数個の第1のコンポーネントの内の一つを優
    先コンポーネントと定め、いずれの第1のコンポーネン
    トからもリクエスト信号を受付けていないクロック・サ
    イクルでは、優先コンポーネントへアクノリッジ信号を
    発行するパーキング状態にされ、また、アービタ以外の
    ラッチ手段も唯一の第1のコンポーネントについてのパ
    ーキング状態にされる作動を、設定することを特徴とす
    る請求項27記載のバス・システム用信号伝送方法。
JP2001348268A 2001-11-14 2001-11-14 バス・システム及び信号伝送方法 Expired - Fee Related JP3659345B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001348268A JP3659345B2 (ja) 2001-11-14 2001-11-14 バス・システム及び信号伝送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001348268A JP3659345B2 (ja) 2001-11-14 2001-11-14 バス・システム及び信号伝送方法

Publications (2)

Publication Number Publication Date
JP2003150540A true JP2003150540A (ja) 2003-05-23
JP3659345B2 JP3659345B2 (ja) 2005-06-15

Family

ID=19161121

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001348268A Expired - Fee Related JP3659345B2 (ja) 2001-11-14 2001-11-14 バス・システム及び信号伝送方法

Country Status (1)

Country Link
JP (1) JP3659345B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100461145C (zh) * 2006-05-08 2009-02-11 中兴通讯股份有限公司 一种异步ahb互连矩阵接口装置
JP2009037526A (ja) * 2007-08-03 2009-02-19 Mimaki Engineering Co Ltd データ転送装置、リクエスト発生装置、及びリクエスト発生方法
CN111435340A (zh) * 2020-01-14 2020-07-21 珠海市杰理科技股份有限公司 互联网总线单元及数据传输方法、wishbone互联网模块、芯片

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100461145C (zh) * 2006-05-08 2009-02-11 中兴通讯股份有限公司 一种异步ahb互连矩阵接口装置
JP2009037526A (ja) * 2007-08-03 2009-02-19 Mimaki Engineering Co Ltd データ転送装置、リクエスト発生装置、及びリクエスト発生方法
CN111435340A (zh) * 2020-01-14 2020-07-21 珠海市杰理科技股份有限公司 互联网总线单元及数据传输方法、wishbone互联网模块、芯片

Also Published As

Publication number Publication date
JP3659345B2 (ja) 2005-06-15

Similar Documents

Publication Publication Date Title
JP4808513B2 (ja) システムオンチップの大域的非同期通信アーキテクチャ
US7508824B2 (en) Method and system for transmitting data via switchable data networks
JP4621604B2 (ja) バス装置、バスシステムおよび情報転送方法
US20080005402A1 (en) Gals-based network-on-chip and data transfer method thereof
KR20060103098A (ko) PCI-Express 통신 시스템
JPH08235141A (ja) 情報処理システム
US8667195B2 (en) Bus-system including an interconnector, a master device, a slave device, and an operating method thereof
JPH11212939A (ja) 共通バスによって相互接続されたプロセッサを有するデータプロセッサユニット間でデータを交換するためのシステム
JP2003150540A (ja) バス・システム及び信号伝送方法
EP1588276B1 (en) Processor array
JP2002123371A (ja) ディスクアレイ制御装置及びディスクアレイ制御方法
US6701407B1 (en) Multiprocessor system with system modules each having processors, and a data transfer method therefor
RU175049U9 (ru) УСТРОЙСТВО КОММУНИКАЦИОННЫХ ИНТЕРФЕЙСОВ SpaceWire
JP2006109258A (ja) 通信方法及び通信装置
JP2589821B2 (ja) 情報処理システムの中央処理ユニット
JP2022011810A (ja) 拡張モジュール、cpuモジュール、システム、及び通信方法
US7519848B2 (en) Data transfer apparatus
JP3481445B2 (ja) 競合調停方法
JP2002141922A (ja) ループ型バスシステム
JP2001175618A (ja) 並列計算機システム
JP3651672B2 (ja) 演算処理システム、特に通信装置のための演算処理システム
JP2007531064A (ja) 集積回路チップ(パイプライン式の挿入のための回路および方法)
JP2005276136A (ja) バス装置
JPH10173618A (ja) バススイッチ装置およびその転送順序変換方法
JP2003044424A (ja) データバス転送システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050117

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20050302

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050308

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100325

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110325

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees