JPS61175841A - Fast multi-bus construction and data transfer - Google Patents

Fast multi-bus construction and data transfer

Info

Publication number
JPS61175841A
JPS61175841A JP1272185A JP1272185A JPS61175841A JP S61175841 A JPS61175841 A JP S61175841A JP 1272185 A JP1272185 A JP 1272185A JP 1272185 A JP1272185 A JP 1272185A JP S61175841 A JPS61175841 A JP S61175841A
Authority
JP
Japan
Prior art keywords
bus
processor
request
signal
agent
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
JP1272185A
Other languages
Japanese (ja)
Inventor
ロバート・リーランド・フアーレル
アリレザ・サラビ
レイモンド・スコツト・テトリツク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Priority to JP1272185A priority Critical patent/JPS61175841A/en
Publication of JPS61175841A publication Critical patent/JPS61175841A/en
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 〔利用分野〕 本発明は、ソースと複数の受信データ処理装置の間でデ
ータ會転送する装置および方法に関するものでるり、更
に詳しくいえば、多重バス構造金層いてソースと複数の
データ処理装置および複数の尚送装置の間でバスに沿っ
てデータを転送することに関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Application] The present invention relates to an apparatus and method for transferring data between a source and a plurality of receiving data processing devices; The invention relates to transferring data along a bus between a plurality of data processing devices and a plurality of transmission devices.

〔従来技術〕 ゛ コンピュータの分野においては、たとえばコンピュータ
のような複数のデータ処理装置と、複数のプリンタと、
複数のメモリなどとの間で、システムバスすなわちデー
タバスを介してデータと指令を転送することは、全く一
般的なことでるる。データ処理装置は、メモリのアドレ
スに格納されている命令を寮行するプロセッサを通常含
んでいる。処理されるデータは、データ処理装置を他の
デジタルハードウェアを相互に接続するバスを介して、
入カ装m/出力装置によりシステムとの間で転送される
。バスに結合されているデータ処理装置の間のデータ転
送の速度に対する共通の制約は、データ処理装置の間で
冥際にデータの交換が行われる前の指定さnfc時間内
に、所足の事象系列が起ること全必要とするプロトコル
スナわち1−ハンドシェーキング」制約でろる。
[Prior Art] In the field of computers, for example, there are multiple data processing devices such as computers, multiple printers,
It is quite common to transfer data and instructions to and from multiple memories, etc. via a system or data bus. Data processing devices typically include a processor that executes instructions stored at addresses in memory. The data to be processed is transferred via buses that interconnect data processing equipment with other digital hardware.
Transferred to and from the system by input/output devices. A common constraint on the speed of data transfer between data processing devices coupled to a bus is that a necessary event must occur within a specified NFC time before any data is exchanged between the data processing devices. All protocols that require that the sequence occur are 1-handshaking constraints.

データ処理装置と、たとえは記憶装置と第2のプロセッ
サおよびディスクドライブなどのような周辺装置との間
で、データのやりとり七行うために糧々の方法が考えら
れている。そのうちの1つでは、処理装置の記憶装置と
周辺装置の間で大途の情報を動かせるようにする直接メ
モリ転送を利用する。しかし、従来の直接メモリ転送の
欠点の1つに、直接メモリ転送ごとに何らかのプロセッ
サの活動が必要なことでるる。転送全スタートおよびス
トップさせる各種の命令その他の信号が必要とされ、し
かもそれらの信号の発生には処理装置への割込みを必要
とする。複数のプロセッサを利用するデータ処理装置に
おいては、第1のプロセッサのメモリと第2のプロセッ
サのメモリとの間における直接メモリ転送には、あいま
いさ全避けるために、複雑なシステムプロトコルとアド
レッシングと全必要とする。次とえば、第1のプロセッ
サAのローカルリソースメモリと第2のプロセッサBの
a−カルリンースメモリの間の共通バスに沿うデータの
転送には、第2のメモリアドレスして、バスに沿う第2
のプロセッサの転送を開始させるために、第2のプロセ
ッサの機能への割込みを必要とブるのが普通でるる。ま
た、第4のプロセッサのメモリと第2のプロセッサのメ
モリとの間のメモリアドレスの円らかの重なり合いのた
めに、同じ番号金つけられている鳩所における各メ播り
の内容に何らろいまいさかないようにするには、データ
転送の効率′fti&高にするためには、システムリソ
ースの適切な割当ておよびアクセスが重要であることは
明らかでるる。
Many methods have been devised for communicating data between data processing devices and peripheral devices such as storage devices and second processors and disk drives. One of these utilizes direct memory transfer, which allows large amounts of information to be moved between processing unit storage and peripheral devices. However, one drawback of conventional direct memory transfers is that each direct memory transfer requires some processor activity. Various commands and other signals are required to start and stop the transfer, and generation of these signals requires an interrupt to the processing unit. In data processing systems utilizing multiple processors, direct memory transfers between the memory of a first processor and the memory of a second processor require complex system protocols and addressing and I need. For example, a transfer of data along a common bus between a first processor A's local resource memory and a second processor B's a-local resource memory requires a second memory address along the bus. Second
Typically, an interrupt to the functionality of the second processor is required to initiate the transfer of the second processor. Also, due to the smooth overlapping of memory addresses between the memory of the fourth processor and the memory of the second processor, there is no difference in the contents of each message in the same numbered pigeonhole. It is clear that proper allocation and access of system resources is important for high data transfer efficiency in order to avoid this problem.

〔概 要〕〔overview〕

本発明は、多数のプロセッサの間のデータおよびメツセ
ージの転送を最適にするために、かつ、システムリソー
スを各バスに結合の全ての装置へ秩序正しく割当てるた
めに、多重バス構造を含むデータ処理装置アーキテクチ
ャを提供するものでおる。
The present invention provides a data processing system that includes a multiple bus structure to optimize the transfer of data and messages between multiple processors and to orderly allocate system resources to all devices coupled to each bus. It provides architecture.

本発明のバス構造は、汎用並列バスと、通信プロトコル
およびデータ転送プロトコルを定めるシステムインター
フェイスを介して相互に接続される特殊バスと1−有す
る。
The bus structure of the present invention comprises a general-purpose parallel bus and a specialized bus interconnected via a system interface that defines communication and data transfer protocols.

複数のデータ処理装置の間でデータを転送するための多
重バスシステム・アーキテクチャおよび改嵐したデータ
転送方法が、本発明により開示される。本発明のバス構
造は、冥際のデータ転送に先立って最少の「ハンドシェ
イクJ′に用いてデータおよびメツセージの交換を高速
度で行えるようにするために、データ処理装置と同辺装
置(それら會まとめて「エージェント(agent)J
と呼ぶことにする)を相互に接続する並列バスと直列バ
スを含む。直列バスプo)コルお工び並列バスプロトコ
ルは、各通信エージェントに結合されているメツセージ
制御器により制御される。並列バスを介して行われるデ
ータトラクイックに大きい影響を与えることなしに、ロ
ーカルメモリと第2の処理リソース全アクセスできるよ
うに、ローカルバスかシステム内の処理エージェントに
結合される。るるエージェントのローカルバスに結合す
れているリソースに対する他のバスエージェントからの
直接アクセスも、メツセージ制御器にエフ制御さnる。
A multiple bus system architecture and an improved data transfer method for transferring data between multiple data processing devices are disclosed by the present invention. The bus structure of the present invention is designed to enable high-speed data and message exchange using a minimum number of "handshakes J'" prior to data transfer. Collectively, “Agent J”
including parallel and serial buses that interconnect the The serial bus protocol is controlled by a message controller coupled to each communication agent. The local bus is coupled to processing agents within the system to allow full access to the local memory and second processing resources without significantly impacting data traffic performed over the parallel bus. Direct access from other bus agents to resources coupled to the agent's local bus is also under the control of the message controller.

める要求バスエージェントが並列バスに沿うデータ父換
全開始まることを希望したとすると、そノ要求バスエー
ジェントハ、バス要求(BREQ)信号を表明し、それ
の独特のエージェント仲裁番号に対応するデジタルコー
ドを全てのシステムエージェントに結合されているI 
、D、 (lR別)バスへ送る。バス要求エージェント
の仲裁番号が所定の最高優先度を有するのでめれば、バ
ス要求エージエン)U並列パス全使用できる。それから
要求エージェントはそれ自身のアドレスとともに応答エ
ージェントのアドレスをアドレス/データバス上に表明
すると同時に、応答エージェントへの指令全指令バス上
に表明する。データ交換を継続する用意ができた時に、
要求エージェントは要求エージェントレディ(REQ 
RDY)信号を表明する。
Assuming that a requesting bus agent wishes to begin data exchange along the parallel bus, it asserts a bus request (BREQ) signal and receives a digital signal corresponding to its unique agent arbitration number. The code is coupled to all system agents.
, D, (by lR) Send to bus. Since the bus request agent's arbitration number has a predetermined highest priority, all parallel paths can be used by the bus request agent. The requesting agent then asserts the address of the responding agent along with its own address on the address/data bus, as well as asserting the commands to the responding agent on the full command bus. When you are ready to continue exchanging data,
The request agent is request agent ready (REQ).
RDY) signal.

同様に、応答エージェントがデータ転送を続行する用意
ができた時に、応答エージェントは応答エージェントレ
ディ(REPLY RDY )信号を表明する。両方の
レディ信号が表明された時のみ、アドレス/データバス
上のデータが妥当でるると考えられる。REQ RDY
信号と関連してサイクルの終り(EOC)信号を表明す
る要求エージェントにより、データ転送動作が終らされ
る。
Similarly, when the responsive agent is ready to continue data transfer, it asserts the responsive agent ready (REPLY RDY) signal. Data on the address/data bus is considered valid only when both ready signals are asserted. REQ RDY
A data transfer operation is terminated by the request agent asserting an end of cycle (EOC) signal in conjunction with the signal.

本発明の直列バスを用いて、メツセージを別のエージェ
ントへ送ることを希望しているバスエージェントが、デ
ータメツセージを包み、1列バスが使用されていないこ
とを確認してから、そのデータメツセージを送る。メツ
セージを受は次応答x−ジエントハ、その直列メツセー
ジに続くフレーム間期間中に確g厄答(ACK)信号を
送る。そのバスに沿う要求が衝突することが検出される
と、直列バスエージェントが衝突再送仲裁サイクルを開
始まる。その衝突再送仲裁サイクルにおいて、直列バス
の使用権が適当なやり方で割付けられる。
Using the serial bus of the present invention, a bus agent wishing to send a message to another agent wraps the data message, verifies that the first row bus is not in use, and then sends the data message. send. The message receiver then responds by sending an acknowledgment (ACK) signal during the interframe period following the serial message. When a conflict of requests along the bus is detected, the serial bus agent begins a collision retransmission arbitration cycle. In the collision retransmission arbitration cycle, serial bus usage rights are allocated in an appropriate manner.

本発明のローカルバス上、るるエージェントの第1のプ
ロセッサの次めに、ローカルメモリと処理リソースへの
、高速、広帯域幅の並列バスを与える。データは、第1
の(またに第2の〕プロセッサとローカルメモリリソー
スの間で、a−カルバスプロトコルに従って転送される
。ローカルバス上の全ての事象は、第1のプロセッサの
内部クロックブイタルに合わぜてクロックされる。応答
エージェントが求められているデータ動作(たとえば胱
出し動作または嘗込みl!1作〕をバスクロックにより
定められる速度で実行することができないものとすると
、その応答エージェントa、O−カルバスの状態と情報
内容とt?にのクロックサイクルの間不変のまま保つこ
と全要求する待期信号を表明する。待期信号を使用する
ことにより、待期信号が表明されている間に遅延を導入
することによって、応答エージェントが第1のプロセッ
サよりも遅い速度で動作できるようにする。
Next to the first processor of the Ruru agent on the local bus of the present invention is a high speed, high bandwidth parallel bus to local memory and processing resources. The data is the first
(also a second) processor and local memory resources according to the a-carbus protocol. All events on the local bus are clocked according to the first processor's internal clock signal. Assuming that the responding agent is unable to perform the required data operation (e.g., a bladder expulsion or a gulp) at the speed determined by the bus clock, then the responding agent a, Assert a wait signal that requires state and information content to remain unchanged for a clock cycle of t.Using the wait signal introduces a delay while the wait signal is asserted. allows the response agent to operate at a slower speed than the first processor.

〔冥施例〕[Metal practice]

以下、図面を参照して本発明の詳細な説明する。 Hereinafter, the present invention will be described in detail with reference to the drawings.

全体的なシステム 以下に、複数のデータ処理装置の間でデータを転送する
ための多重バスシステム・アーキテクチャおよび改良し
たデータ転送方法について説明する。以下の説明におい
てに、木兄BAヲ完全に理解できるように、特定の数、
特定のバイト、特定のレジスタ、特定のアドレス、特定
の時間、特定の信号等について述べるが、本発明がそれ
らの特定の具体例に拘束されずに賃施できることは、当
業者には明らかでるろう。また、本発明全不必要に不明
確にしない次めに、周知の回路や装置tはプaツク図で
示すことにする。
Overall System The following describes a multiple bus system architecture and improved data transfer method for transferring data between multiple data processing devices. In the following explanation, we will use specific numbers,
Although specific bytes, specific registers, specific addresses, specific times, specific signals, etc. are described, it will be apparent to those skilled in the art that the present invention may be practiced without being bound to those specific embodiments. . In order not to obscure the present invention unnecessarily, well-known circuits and devices are shown in block diagrams.

まず第1図を参照して、本発明は、複数の処理装置(プ
ロセシングユニット)25.26と、包括的記憶装置3
0(または、たとえばプリンタ、ディスクドライブなど
のような他の[1,)のような同辺tctilとt含む
。ここでの説明のために、本発明のバス構造に結合され
ている全てのデータ処理装置および全ての周辺装置のこ
とを、まとめて「エージェント(agents) Jと
呼ぶことにする。図示のように、処理装f!25 、2
6および包括的記憶装f130fd、データ転送のため
に、並列バス35お工び直列バス37により互いに相互
接続される。各処理装置25.26は、第1のプロセッ
サ40.41t−それぞれ含む。それらの第1のプロセ
ッサは、それぞれのバスインターフェイス装e44f介
して並列バス35と直列バス3Tに結合される。バスイ
ンターフェイス装置44に、後に詳述するようにI10
ロジック46およびメツセージ制御ロジック50を含む
。図示のように、各処理装置1llcは、メモリ54の
ようなローカルテータ処理リソースへローカルバス56
を介して結合され、処理装置25の鳩舎にはローカルバ
ス56を介してメモリ54のほか第2のプロセッサ5T
にも結合される。プロセッサ40,41U、ローカルバ
スインターフェイス回路51介しテメモIJ54のよう
なそれぞれのローカルリソースに結合される。
Referring first to FIG.
0 (or other [1,), such as printers, disk drives, etc., containing the same sides tctil and t. For purposes of this discussion, all data processing devices and all peripheral devices coupled to the bus structure of the present invention will be collectively referred to as "agents". , processing device f!25 ,2
6 and the global storage f130fd are interconnected to each other by a parallel bus 35 and a serial bus 37 for data transfer. Each processing unit 25.26 includes a first processor 40.41t-respectively. The first processors are coupled to parallel bus 35 and serial bus 3T via respective bus interface devices e44f. I10 to bus interface device 44 as described in more detail below.
Logic 46 and message control logic 50 are included. As shown, each processing device 1llc has access to local data processing resources such as memory 54 via a local bus 56.
The pigeonhole of the processing device 25 is connected to a memory 54 as well as a second processor 5T via a local bus 56.
is also combined. The processors 40 and 41U are coupled to their respective local resources such as a telememo IJ 54 via a local bus interface circuit 51.

後で説明するように、本発明のバスアーキテクチャによ
り、メツセージをバスに結合されている全てのエージェ
ントの間で高速直列転送でき、デー1fx−ジエントの
間で高速並列転送することができる。更に、本発明のア
ーキテクチャにより、各処理装置のためのローカルリソ
ース金構成するローカルメモリ54に格納されているデ
ータのアクセスを含めて、バスエージェントの間でデー
タ転送を行う乏めのプロセッサ割込みが最少になる。
As will be explained below, the bus architecture of the present invention allows for high speed serial transfer of messages between all agents coupled to the bus and high speed parallel transfer between data 1fx-agents. Additionally, the architecture of the present invention minimizes the need for scarce processor interrupts to transfer data between bus agents, including accessing data stored in local memory 54, which constitutes local resource resources for each processing unit. become.

ま友、後で説明するように、データ転送を行うためには
最少のハンドシェイク動作だけが要求されるように、並
列バス35と、直列バス3T、およびローカルバス56
に対してのデータ転送プロトコルが定められている。第
1図には、バスに結合されている処理装置が2つだけ示
されているが、本発明の構造により、複数の処理装置と
、メモリ、ディスクドライブ、プリンタなどのような複
数の周辺装fIftを、ここで説明するバス構造の1つ
または全てを用いて、相互に接続できることがわかるで
ろろう。
Mayo, as will be explained later, parallel bus 35, serial bus 3T, and local bus 56 are used so that only minimal handshake operations are required to perform a data transfer.
A data transfer protocol has been defined for Although only two processing devices are shown coupled to the bus in FIG. 1, the structure of the present invention allows for multiple processing devices and multiple peripheral devices such as memory, disk drives, printers, etc. It will be appreciated that fIfts can be interconnected using one or all of the bus structures described herein.

次に第3図を参照する。並列バス35はアドレス/デー
タ線60を含む。このアドレス/データ線60i、ここ
で説明している実施例では、32本のアドレス・データ
線(プラス4本のパリティ線)全有し、それらのアドレ
ス・データ線へはアドレスとデータが交互に多重化され
て与えられる。
Refer now to FIG. Parallel bus 35 includes address/data lines 60. In the embodiment described here, this address/data line 60i has a total of 32 address/data lines (plus 4 parity lines), and addresses and data are sent alternately to these address/data lines. Provided multiplexed.

また、並列バス35に結合されている各エージェントが
バス獲得のために独特のエージェント仲裁11t、アー
ビトレーション県ナンバー)’i伝、tられる工うにす
るエージエント仲裁線621!−含み、高優先展線64
(これについては後で説明する)に全体的な仲裁プロト
コルとは無関係に各エージェントが並列バスの使用権を
獲得できるようにする。バスの使用権は、バスロック線
69にバスロック信号全表明(アサート)することにエ
フ保持でき、それにより他のエージェントtバスの獲得
から効果的に閉め出す。また、エージェントが並列バス
制御全要求できるようにするためにバス要求線(BIQ
)66 が設けられ、処理装置25゜26が他のバスエ
ージェントへ指令(コマンド)を伝えられるようにする
ために指令バス68が設けられる。誤り状態を示すため
に異議線(イクセプション・ライン)70が設けられ、
適切な同期をとり、制御を行えるようにシステム制御線
T2が設けられる。
Additionally, the agent arbitration line 621 allows each agent coupled to the parallel bus 35 to use a unique agent arbitration line 621 to acquire the bus. -Including, high priority extension line 64
(This will be discussed later) allows each agent to obtain the right to use a parallel bus independently of the overall arbitration protocol. The right to use the bus can be maintained by fully asserting the bus lock signal on bus lock line 69, thereby effectively locking out other agents from acquiring the bus. In addition, the bus request line (BIQ) is used to enable the agent to make all parallel bus control requests.
) 66 is provided, and a command bus 68 is provided to enable the processing units 25, 26 to communicate commands to other bus agents. An exception line 70 is provided to indicate an error condition;
A system control line T2 is provided for proper synchronization and control.

並列バス35H1381類のバスサイクルをサポートす
る。それらのサイクルは、たとえば処理装置125のよ
うなめるエージェントの要求で開始される、[仲裁(ア
ービトレーションノ」サイクルト、「転送(トランスフ
ァー)」サイクルと、「異議(イクセプション)」サイ
クルとでるる。ここでの説明のために、仲裁サイクルに
、並列バス35に専用的に制御する試みかめるエージェ
ントにより行われる、並列バスサイクルとして定義され
る。仲裁サイクルにより、1度にただ1つの要求エージ
ェントが並タリバス35にエフデータ転送サイクル′?
!:実行できるようにする。仲裁サイクルが閉じると、
ただ1つのエージェント(たとえば処理装置26)が、
並列バスを利用して他のエージェントとの間でデータを
やりと9できるようになる。データ転送の処理中にシス
テム・エラーが起ることかめる。システム争エラーが起
ると、異議サイクルが開始される。どのエージェントが
次に並列バスの使用権を持てるか全決定する次めに、現
在性われている転送サイクル中に他のエージェントが仲
裁サイクルを行うことができる工うに、全部で3つの並
列バスサイクルが重なり合って一緒yc爽行される。
Supports parallel bus 35H1381 type bus cycles. These cycles include the arbitration cycle, the transfer cycle, and the objection cycle, which are initiated at the request of an agent such as processing unit 125. For purposes of this discussion, an arbitration cycle is defined as a parallel bus cycle in which an agent attempts to exclusively control parallel bus 35. An arbitration cycle allows only one requesting agent to queue at a time. F data transfer cycle to Talybus 35'?
! : Enable execution. When the arbitration cycle closes,
Only one agent (e.g., processing unit 26)
Data can be exchanged with other agents using a parallel bus. Notice that a system error occurs while processing the data transfer. When a system dispute error occurs, a dispute cycle is initiated. A total of three parallel bus cycles are used to determine which agent will have the next right to use the parallel bus.Then, other agents can perform arbitration cycles during the currently active transfer cycle. They overlap and perform yc together.

第2図に示されている工うに、メツセージ制御ロジック
50#−1r、、通常のバスにより、バックアメモリ8
2に結合されるメツセージ制御器80と、バス制御器8
4と、MWメモリアクセス(DMA)インターフェイス
86と、FIFOポインタ88と金含む。メツセージ制
御ロジック5°0は、直列および並列バスプロトコルの
*mと、それぞれのバスへのアクセス全行うことと、並
列(および直列)バスに結合されている他のエージェン
トとメモリ54の間でDMAインターフェイス86とロ
ーカルバス56を介して行うデータ転送と金と9扱う。
In the structure shown in FIG. 2, the message control logic 50#-1r, the backup memory 8
2, a message controller 80 coupled to the bus controller 8
4, a MW memory access (DMA) interface 86, and a FIFO pointer 88. The message control logic 5°0 performs all of the serial and parallel bus protocols and accesses to the respective buses, and the DMA between other agents coupled to the parallel (and serial) buses and the memory 54. 9 handles data transfer and money via interface 86 and local bus 56.

ここで、処理装置25が、包括的記憶装置30に格納さ
れているデータを並列バス35を用いてフェッチするこ
と金、求められていると仮定する。
Assume now that processing unit 25 is required to fetch data stored in global storage 30 using parallel bus 35 .

処理装[25は、それのバス制御器84を介して、仲裁
サイクル金開始まることにより、並列バス35のアクセ
スを最初に行わなければならない。第5a図および第5
b図に示す流れ図に最もよく示されているように、処理
装gL25内のバス制御器84が、バス要求(BREQ
 )線66に現在表明(アサート)がされているか否か
を最初に決定する。処理装置25が高い優先度要求を持
っていないと仮定すると、処理装flc25n、BRE
Q線66線表6がされなくなるまで待ってから、仲裁サ
イクルの解決段階に入らなければならない。BREQ線
66線表6がされていないと仮定すると、処理装置25
が、BIQ線66に表明をして、同時に、それの独特な
エージェント仲裁番号に対応するデジタルコードをエー
ジェント仲裁線62へ与える(第4図および5a図参照
)。並列バス35に結合されている各エージェントのバ
ス制御器84内の適切なロジックが、仲裁サイクルか開
始された後の一定数のクロックサイクル内で、最高の所
定優先度を有する(高優先度線64に表明がされていな
いと仮定して)要求エージェントの仲裁番号全選択する
。他のエージェント、たとえば処理装置26が並列バス
獲得全要求すると同時に別のエージェントかより高い優
先度の仲裁番号tVするものとすると、処理装置IL2
5は、データ変換の終りを示すサイクルの終り(EOC
)信号を、またはバスがアイドル状態になることを待た
なければならない。
The processing unit 25, via its bus controller 84, must first access the parallel bus 35 by initiating an arbitration cycle. Figures 5a and 5
As best shown in the flowchart shown in Figure b, a bus controller 84 within processing unit gL25 issues a bus request (BREQ).
) line 66 is currently asserted. Assuming that processing unit 25 does not have a high priority request, processing unit flc25n, BRE
We must wait until the Q line 66 line table 6 is no longer present before entering the resolution phase of the arbitration cycle. Assuming that BREQ line 66 line table 6 is not done, processing unit 25
makes an assertion on BIQ line 66 and at the same time provides a digital code corresponding to its unique agent arbitration number on agent arbitration line 62 (see Figures 4 and 5a). The appropriate logic within bus controller 84 of each agent coupled to parallel bus 35 has the highest predetermined priority (high priority line) within a certain number of clock cycles after an arbitration cycle is initiated. (assuming that no assertion has been made in 64) Select all arbitration numbers of the requesting agent. Assuming that another agent, for example, the processing device 26, makes a full parallel bus acquisition request, another agent, for example, issues an arbitration number tV with a higher priority, then the processing device IL2
5 is the end of cycle (EOC) indicating the end of data conversion.
) signal or for the bus to become idle.

同様ニ、前のバス使用エージェントカバスロック線69
に表明をしていたとすると、並列バスに結合されている
全てのエージェントハ、アクセスを行う前に並列バスの
表明解除(aツク解除〕を待ち、自己の仲裁番号全エー
ジェント仲裁線62上に表明することにエリ、バス全ア
クセスする試みt繰り返えさなければならない。
Similarly, the previous bus user agent Kabuslok line 69
All agents connected to the parallel bus wait for the assertion of the parallel bus to be released (released) before accessing the parallel bus, and then assert their own arbitration number on the all-agent arbitration line 62. In order to do so, repeated attempts to access the entire bus must be made.

ここで説明している1g!施例においてに、並列ノ(ス
35に結合されているエージェントの間の優先度は、そ
れぞれの仲裁番号により決定される。各エージェントハ
、バス35上の位ti[(rスロット」)に結合され、
各スロット位置に専用のrTIピン線が結合される。を
源が投入されると、バスに結合されている中央サービス
モジュール(C8M)(図示せず)に工9、エージェン
トスロット識別番号と独特の仲裁番号とが与えられる。
1g explained here! In an embodiment, the priority among the agents coupled to the parallel node (slot 35) is determined by their respective arbitration numbers. is,
A dedicated rTI pin line is coupled to each slot location. When powered on, a central service module (C8M) (not shown) coupled to the bus is provided with an agent slot identification number and a unique arbitration number.

中央サービスモジュール(C8M)?−!、エージェン
トスロット識別番号tエージェント仲裁線62へ与え、
そのスロット識別番号全関連させねばならないエージェ
ントに対応するTピン線を低レベルに駆動する。
Central service module (C8M)? -! , give the agent slot identification number t to the agent arbitration line 62,
Drive the T pin line corresponding to the agent whose slot identification number must be fully associated to a low level.

Tビン線を低レベルに駆動することにより、そのエージ
ェント内のレジスタにスロットit別番号が保持される
。同様に、GSMは、独特の仲裁番号をエージェント仲
裁線62へ与え、仲裁番号全関連させるべきエージェン
トに対応するTピン綴金低レベルに駆動する。そのTピ
ン線を高レベルに駆動することにより仲裁番号が保持さ
れる。ここで説明している実権例においては、仲裁線6
201本の状態に、仲裁線の残りの線上に表明されてい
る数が、エージェントスロット番号でめるのか、または
仲裁番号に一致するのか金示す。この動作は、全てのエ
ージェントに、それぞれのスロット識別番号と仲裁番号
とが割付けられるまで、繰り返えされる。処理装置25
.26の1うなエージェントの間で、樵々の優先度階層
を足め得ることが当業者には明らかでめろう。
By driving the T-bin line low, the by-slot it number is held in a register within that agent. Similarly, GSM provides a unique arbitration number to the agent arbitration line 62 and drives the T-pin pin low level corresponding to the arbitration number to which all agents are to be associated. The arbitration number is held by driving its T pin line high. In the actual case explained here, the arbitration line 6
The 201 state indicates whether the numbers asserted on the remaining lines of the arbitration line correspond to agent slot numbers or arbitration numbers. This operation is repeated until all agents are assigned their respective slot identification numbers and arbitration numbers. Processing device 25
.. It will be obvious to those skilled in the art that the priority hierarchy of the woodcutter can be summed up among 26 agents.

処理装置25が(それの仲裁番号にエフ優先権會有する
ことにエフ)バスの使用権を得たとすると、処理装@2
514、バスの使用権エージェントとなって、BREQ
信号が表明解除・(デアサート)のままでめる限りに転
送が終った後でも、バスの使用権全保持する。IOC信
号が検出された時、またにバスが現在アイドル状態でる
る時、応答エージェントのアドレス(宛先(デスティネ
ーション)アドレス)と、データがメツセージを含んで
いるのでめれば更に処理装[25のアドレス(ソースア
ドレス)とに対応するデジタルコードt1処理装置25
はアドレス/データバスへ与、する。
Assuming that processing device 25 obtains the right to use the bus (by having F priority rights to its arbitration number), processing device @2
514, becoming a bus usage rights agent, BREQ
As long as the signal remains deasserted, the full right to use the bus is retained even after the transfer is completed. When the IOC signal is detected and the bus is currently idle, the address of the responding agent (destination address) and possibly further processing equipment [25], since the data contains the message, are Digital code t1 processing device 25 corresponding to the address (source address)
is applied to the address/data bus.

それと同時に、処理装置25は、応答エージェント(こ
こで説明している*施例においては包括的記憶装置30
)により寮行されるべき特定の機能に対応するデジタル
コードを、指令バスへ与える。
At the same time, the processing unit 25 is connected to the response agent (in the embodiment described herein, the global storage 30).
) gives the command bus a digital code corresponding to the specific function to be performed.

第4図に示すように、処理装filt25のような要求
エージェントが種々のアドレスコードと種々の指令コー
ド全並列バス35へ与えると、指令バス線が貢効的に分
割されて、要求エージェントと応答エージェントに工9
攬々の確認応答信号會送ることができるようにする。要
求エージェント(ここで説明している実施例においては
処理装置25)によるアドレスと指令の付与にLり、「
要求段階」と呼ばれるものが終る。ここで説明している
実施例においてに、実際の要求段階はlクロックサイク
ルの間だけ持続する。
As shown in FIG. 4, when a requesting agent, such as the processing unit filt 25, provides various address codes and various command codes to the fully parallel bus 35, the command bus lines are effectively split so that the requesting agent and the response Agent 9
Allows for frequent acknowledgment signals to be sent. Depending on the provision of the address and command by the requesting agent (processing device 25 in the embodiment described here),
The so-called "request stage" ends. In the embodiment described here, the actual request phase lasts only one clock cycle.

要求段階が終ると、指令バス68を構成する線が、第6
図に示すように再割付けされる。とくにエージェントの
間でデータの転送全行う次めに要求されるハンドシェイ
クを完了するために、要求エージェントに5本の指令線
が割当てられ、応答エージェントに5本の指令線が割当
てられる。とくに、要求エージェント(ここで説明して
いる実施例においては処理装置25)は、要求エージェ
ントレディ(REQ RDY)信号を適切な指令線上に
表明することにLF)、要求エージェントがアドレス/
データバス60上のデータ上受ける用意がで、きでいる
ことを、応答エージェントへ指示する。
At the end of the request phase, the lines making up the command bus 68
Reallocated as shown in the figure. In particular, five lines are assigned to the requesting agent and five lines are assigned to the responding agent to complete the next required handshake that completes the transfer of data between the agents. In particular, the request agent (processor 25 in the embodiment described herein) asserts a request agent ready (REQ RDY) signal on the appropriate command lines (LF) when the request agent
Indicates to the responding agent that it is ready and able to receive data on data bus 60.

同様に、応答エージェント(ここで説明しているwtt
m例においてQゴ包括的記憶装置30)が、応答エージ
ェントレディ(REPLY RDY) 信号i−表明(
第7図−照)、アドレスデータバス60上のデータが妥
当でめり、受けることができることを要求エージェント
に指示する。したがって為並列バス35のフC’トコル
に、アドレス/データバス60上のデータ?妥当である
と考えて保持する準に、応答エージェントレディ係号と
要求エージェントレディ信号の表明を必要とする。その
後に行われる応答エージェントレディ信号と要求エージ
ェントレディ信号の表明解除(デアサーション〕と再表
明(リアサーション)により、付加データパケットを並
列バス35を介して要求エージェントと応答エージェン
トの間で送ることができる(第4図)。図示のように、
それ以上のデータ送信が行われないとすると、要求エー
ジェント(ここで説明している実施例においては処理装
置25)が、REQ RDY信号の表明と同時に、サイ
クルの終り(IOC)信号全表明する。EOC信号の発
生と送信によって、現在の転送サイクルの終りが、並列
バス35に結合されでいる他のエージェントへ知らされ
、バスの使用権の移転可能性が知らされる。第5b図に
最もよく示されているように、妥当なデータが標本化さ
れると、応答エージェント(ここで説明しているwm例
においてに包括的記憶装[30)が、応答エージェント
レディ信号にエフ通常示されているそれのノーンドシエ
イクの部分の間中に、データ転送の誤り(rA議」)を
11エージエントへ仰らせることができる。要求エージ
ェント(ここで説明している実施例においては処理装置
25〕によりその期間中に検出され次データ転送サイク
ルの1@りによって、次のクロックサイクルにおけるI
OC信号の表明が行わされることにより、それ以上のデ
ータ転送を中断させ、前記仲裁サイクルをうまく完了し
た任意の待機しているエージェントへバスの使用権を与
える。
Similarly, the response agent (wtt
In the m example, the Qgo global storage 30) sends the response agent ready (REPLY RDY) signal i-assertion (
(see FIG. 7) indicates to the requesting agent that the data on the address data bus 60 is valid and can be accepted. Therefore, the data on the address/data bus 60 is added to the parallel bus 35's functionality. To be considered valid requires assertion of the response agent ready signal and the request agent ready signal. Subsequent deassertion and reassertion of the response agent ready signal and the request agent ready signal allows additional data packets to be sent between the request agent and the response agent via parallel bus 35. (Figure 4).As shown,
Assuming no further data transmission is to occur, the request agent (processor 25 in the embodiment described herein) asserts the end of cycle (IOC) signal simultaneously with the assertion of the REQ RDY signal. The generation and transmission of the EOC signal informs other agents coupled to parallel bus 35 of the end of the current transfer cycle and informs them of the possibility of transfer of ownership of the bus. As best shown in Figure 5b, once valid data has been sampled, the response agent (in the wm example described herein) receives the response agent ready signal. During the non-doshake portion of it, which is normally shown, an error in data transfer (rA conference) can be raised to the 11 agent. Detected during that period by the request agent (in the embodiment described here, processing unit 25) and by one of the next data transfer cycles, the I
Assertion of the OC signal interrupts further data transfers and grants use of the bus to any waiting agent that successfully completes the arbitration cycle.

以上の説明は並列バス35に結合されている応答エージ
ェントから要求エージェントへのデータ転送を示すもの
であるが、要求エージェント(たとえば処理装ff12
6)から応答エージェント(たとえば処理装置25)へ
のデータ転送が、第4図に示されているようなほぼ同一
のプロトコルに従うことがわかるでろろう。というのに
、本発明の並列バスプロトコルが、データの保持全並列
バスから解除する前に、REQ RDY信号とRFJP
LYRDY信号の表明を単に要求するだけだからである
。したがって、本発明により、要求エージェントと応答
エージェントの動作速度を、同じ転送プロトコルを用い
て、異ならせることができる。
Although the above description describes data transfer from a response agent coupled to parallel bus 35 to a request agent, it is important to note that the request agent (e.g., processing unit ff12)
It will be appreciated that the data transfer from 6) to the responding agent (eg, processing unit 25) follows substantially the same protocol as shown in FIG. However, the parallel bus protocol of the present invention uses the REQ RDY signal and the RFJP signal before releasing data from the fully parallel bus.
This is because it simply requests assertion of the LYRDY signal. Therefore, the present invention allows the operating speeds of the requesting agent and the responding agent to be different using the same transport protocol.

本発明のメツセージ制御ロジック50により、並列バス
35(および後で説明するように、直列バス)に結合さ
れているエージェントの間で、処理装置内の第1のプロ
セッサの割込みを最少限に抑えて、数多くのメツセージ
転送とデータ転送を行うことができる。たとえば、第1
のプロセッサ40に割込む必要なしに、データt−40
のメモリへ転送でき、または専用リソースメモリ54と
の間でデータをやりと9できる。後で説明するように、
るる特定のエージェント’t−メツセージ転送動作に含
ませるべきかどうかを決定する次めに、メツセージ制御
ロジック50内のメツセージ制御器80が、データパケ
ット内で並列バス35と直列バス37に沿って送られる
メツセージアドレス會調べる。りる特定のメツセージ制
御器がアドレスされるものとすると、そのメツセージ制
御器は、そのメツセージパケットに含まれている種類(
タイプ)フィールドを調べ、第1のプロセッサに対して
求められる必要な任意の割込み七行う。めるいは、割込
みが求められないとすると、リソースメモリ54を外部
要求エージェントがアクセスできるようにするために、
適切な情報が直接メモリアクセス(DMA)  インタ
ーフェイス86へ転送される。
The message control logic 50 of the present invention allows for minimal interruption of the first processor in the processing unit between agents coupled to the parallel bus 35 (and the serial bus, as will be explained). , can perform numerous message transfers and data transfers. For example, the first
data t-40 without having to interrupt the processor 40 of
data can be transferred to or from the dedicated resource memory 54. As explained later,
Next, a message controller 80 within the message control logic 50 determines whether a particular agent't-message transfer operation should be included in the message transfer operation. Check the message address society. If a particular message controller is to be addressed, that message controller must be of the type (
Type) field and perform any necessary interrupts requested to the first processor. Assuming no interrupts are required, Meri writes the following information in order to make the resource memory 54 accessible to external request agents:
Appropriate information is transferred to a direct memory access (DMA) interface 86.

次に、メツセージ制御ロジック50を用いるメツセージ
転送動作の流れ図を示す第8図全参照する。まず、処理
装置26内の第1のプロセッサ41が、処理装置25に
より直接アクセスできるメモリへデータを転送すること
を希望していると仮定する。要求エージェント(処理装
置26)がそれのメツセージ制御器80へ「バッファ要
求」を発する。そのバッファ要求は、図示のように、宛
先の応答エージェントのアドレスに対応する宛先バイト
と、要求された特定の動作(この場合にはデータ書込み
動作)に対応する指令「種類」バイトと、要求エージェ
ントの独特の識別番号に対応する識別バイトと、要求エ
ージェントによるアクセス対象のデータが格納されてい
るローカルテータアドレスに示すバイトと、オプション
としてのファイル名および長さバイトと、最後に任意の
データ(データを転送するのでめれば)とを含む。それ
らのメツセージバイトは、ローカル内部バス29に沿っ
て要求エージェントのメツセージ制a−シック50へ送
られる。その特定の要求エージェント(この例では処理
装置26)のメツセージ制御器80は、ローカルアドレ
スと長さ情報とをメツセージ制御ロジック50のバッフ
ァメモリ82またはDMAa6に格納する。メツセージ
制御器80は、現在の要求を識別する独特の連絡転送番
号(ID/S)k含むバイトラ、要求パケットへ更に加
える。メツセージ制御器80は、バッファ要求パケット
i、第4図、第5a図、第5b図、第6図およびWc7
図全参照して先に説明ゝし次データ転送プロトコルを用
いて、バス制御器84と並列バスとを介して応答エージ
ェント(この場合にUM理装置25)へ送る。応答エー
ジェントのメツセージ制御ロジック50は、要求を応答
処理装[25の第1のプロセッサ40へそのまま送る。
Reference is now made to FIG. 8, which illustrates a flowchart of message transfer operations using message control logic 50. First, assume that the first processor 41 in the processing unit 26 desires to transfer data to a memory that is directly accessible by the processing unit 25 . A request agent (processor 26) issues a "buffer request" to its message controller 80. That buffer request consists of a destination byte corresponding to the address of the destination responding agent, a command "type" byte corresponding to the specific operation requested (in this case a data write operation), and a requesting agent as shown. an identification byte corresponding to the unique identification number of , so it includes). Those message bytes are sent along local internal bus 29 to the requesting agent's message system a-thick 50. The message controller 80 of that particular requesting agent (processing unit 26 in this example) stores the local address and length information in the buffer memory 82 or DMAa 6 of the message control logic 50. Message controller 80 further adds a byte to the request packet that includes a unique communication forwarding number (ID/S) k that identifies the current request. Message controller 80 receives buffer request packet i, FIGS. 4, 5a, 5b, 6, and Wc7.
The data is sent to the responding agent (in this case the UM management device 25) via the bus controller 84 and the parallel bus using the data transfer protocol described above with reference to all figures. The response agent's message control logic 50 passes the request directly to the first processor 40 of the response processing unit [25].

そのメツセージ金欠けた処理装f125の第1のプロセ
ッサ40に、長さバイト「長さ−1」により定められて
いる十分な長さtVする適切なメモリバッファを割付け
ることができるか否か全決定する。第1のプロセッサ4
0が要求されたメモリスペース金側付けると、バッファ
許可メツセージが発生される。そのバッファ許可メツセ
ージにおいては、種類バイトは、バッファ許可を識別す
る独特のコードに対応する。また、ローカル応答エージ
ェントのアドレス場所は、割付けられたバッファ長(f
長さ−2」)とともに、指足される。そのバッファ長に
、応答エージェントが笑顔に割付けたメモリのサイズを
示す。この割付けられたメモリサイズta、要求エージ
ェントにエフ要求されたメモリサイズとに、異なること
がめる。R後に、連絡転送識別番号(ID/S)i示す
バイトが繰り返えされる。そのバイトはめる特定のバッ
ファ要求全個別に識別する。それから、バッファ許可デ
ータパケットが、ローカル内部バス29に沿って応答エ
ージェントメツセージ制御器8oへ転送される。
Whether or not it is possible to allocate an appropriate memory buffer of sufficient length tV as determined by the length byte "length - 1" to the first processor 40 of the processing unit f125 that is missing the message. decide. first processor 4
If 0 is added to the requested memory space, a buffer grant message is generated. In the buffer grant message, the type byte corresponds to a unique code that identifies the buffer grant. The address location of the local response agent is also the address location of the allocated buffer length (f
length - 2''), and the fingers are added. The buffer length indicates the amount of memory that the responding agent has allocated to the smile. It can be seen that the allocated memory size ta is different from the memory size requested by the requesting agent. After R, the byte indicating the contact transfer identification number (ID/S) i is repeated. Individually identify all specific buffer requests that fill that byte. The buffer grant data packet is then transferred along local internal bus 29 to response agent message controller 8o.

その応答エージェントメツセージ制御器は、バッファの
α−カルアドレスと、連絡転送番号ID/S。
Its response agent message controller is the alpha-cal address of the buffer and the contact forwarding number ID/S.

および長さ一2kDMA8Bに格納し、かつ図示のよう
に、連絡転送要求者番号(ID/R)!、発生されてい
るバッファ要求バグットに加える。バッファ許可メツセ
ージに、要求エージェントのメツセージ制御ロジック5
oへ転送される。メツセージ制御ロジック5oは、それ
からDMAインターフェイス86勿使用することにより
、応答エージェントへ転送すべきデータを7エツチして
、そのデータをバス制御器84へ送り、第4図、第5図
、第6図および7図を参照して先に説明したプロトコル
に従ってそのデータ全応答エージェントへ送ることがで
きる。データ転送に、第8図に示″jように、1つまた
にそれ以上のデータパケットで構成できる。
and the contact transfer requester number (ID/R)! , in addition to the buffer request bagut that is being generated. Request agent's message control logic 5 for buffer permission message.
Transferred to o. The message control logic 5o then etches the data to be transferred to the responding agent by using a DMA interface 86 and sends the data to the bus controller 84, as shown in FIGS. 4, 5, and 6. and 7 can be sent to the full response agent according to the protocol described above with reference to FIG. Data transfer can consist of one or more data packets, as shown in FIG.

希望していたデータ転送が終ると、両方のエージェント
のためのそれぞれのメツセージ制御器80は、全体的な
終了メツセージを発生することに工9、転送が終了した
ことを要求エージェントおよび応答エージェントの第1
のプロセッサに知らせる。したがって、メツセージとデ
ータに、本発明のバス構造に結合されているエージェン
トの間で、第1のプロセッサの動作への割込み全最少限
にして転送でき、メツセージ制御ロジック5oにエフ制
御されるデータ転送のための直接メモリアクセスを含む
ことができる。第8図に示されている以上説明したメツ
セージ転送動作は、直列バス31によっても利用される
ことに注意されたい。
Upon completion of the desired data transfer, the respective message controllers 80 for both agents issue a general completion message 9 to the requesting agent and responding agent's respective messages indicating that the transfer has been completed. 1
processor. Therefore, messages and data can be transferred between agents coupled to the bus structure of the invention with a total minimum of interruption to the operation of the first processor, and the data transfer is controlled by the message control logic 5o. may include direct memory access for It should be noted that the message transfer operations described above and shown in FIG. 8 are also utilized by serial bus 31.

直列バス 第1図全参照して先に説明したように、本発明のバス構
造内の各エージェントは、前記並列バスはもちろん、ま
たは並列バスの代りに、直列バス37により結合できる
。並列バス35の構造と動作は、並列バスに結合されて
いるエージェント間で大量のデータ全高速で転送させる
ために生として構成されるが、本発明の直列バスは、エ
ージェント間の高速かつ高効率のメツセージ転送のため
に王として構成される。ここで説明しているwm例にお
いては、直列バス3Tに、「SDA」およびr SDB
 Jという記号で示されている線t″有する2線直列リ
ンク會備えている。第9図に示すように、各エージェン
トのメツセージ制御ロジック50内のメツセージ制御器
80は、種々のエージェントとの間で直列バス37’t
−介してメツセージのやりと9を行うための直列メツセ
ージ制御器100を含む、直列バス3Tの両方の線は、
バス状態検出器110に結合される。このバス状態検出
器に、3種類の基本的な信号出力を生ずる。直列バス3
7から受けた符号化されたデータに、キャリヤセンス(
検知)信号?示す信号とともに、デコーダ115へ送ら
れる。後で詳しく説明する工うに、パス状態検出器11
0H1直列バス3γを介して送られるメツセージの間で
衝突が起きたか否かの利足も行う。衝突検出線117が
バス状態検出器110から直列メツセージ制御ロジック
124へ結合される。この直列メツセージ制御ロジック
124Ia、、後で説明する工うに、本発明の衝突再送
仲裁サイクルを制御する。メツセージを直列バス37に
より送ることができる工うにするために、直列送信器1
28が、直列メツセージ制御ロジック124と各直列線
SDA 、 SDRに結合される。
Serial Bus As previously explained with full reference to FIG. 1, each agent in the bus structure of the present invention can be coupled by a serial bus 37, as well as, or instead of, the parallel bus described above. While the structure and operation of the parallel bus 35 is inherently configured to provide high speed transfer of large amounts of data between agents coupled to the parallel bus, the serial bus of the present invention provides high speed and high efficiency transfer between agents. constituted as a king for the transmission of messages. In the wm example described here, serial bus 3T has "SDA" and r SDB
A two-wire serial link is provided with a line t'' designated by the symbol J. As shown in FIG. Serial bus 37't
- both lines of the serial bus 3T, including a serial message controller 100 for transmitting messages via
Coupled to bus status detector 110. This bus state detector produces three basic signal outputs. Serial bus 3
Carrier sense (
detection) signal? It is sent to the decoder 115 along with a signal indicating the received data. As will be explained in detail later, the path state detector 11
It is also determined whether a collision has occurred between messages sent via the 0H1 serial bus 3γ. A collision detection line 117 is coupled from bus status detector 110 to serial message control logic 124. This serial message control logic 124Ia, as will be explained later, controls the collision retransmission arbitration cycle of the present invention. In order to enable messages to be sent by serial bus 37, serial transmitter 1
28 is coupled to serial message control logic 124 and each serial line SDA, SDR.

図示のように、直列バス37?介して直列に送るべきメ
ツセージは、第2図に示されているメツセージ制御ロジ
ック50内の他のメツセージ制御器80の回路に直結さ
れている内部メツセージ制御線(図示せず)を介して、
直列メツセージ制御ロジック124へまず与えられる。
As shown, serial bus 37? Messages to be sent serially via internal message control lines (not shown) that are directly connected to the circuitry of other message controllers 80 within message control logic 50 shown in FIG.
Serial message control logic 124 is first provided.

ここで説明している冥施例においては、厘列バス37を
介して送られるデータは、線SDA とSDRにおいて
位相が180度異なるようにドライブされる。吏KXi
列メツセージ制御ロジック124 i、送るべきメツセ
ージ全1ここで説明している実施例においては、周知の
マンチェスタ(Manchester )符号化技術を
用いて符号化する。
In the embodiment described herein, the data sent on line bus 37 is driven 180 degrees out of phase on lines SDA and SDR. Official KXi
Column message control logic 124i encodes all messages to be sent using the well-known Manchester encoding technique in the embodiment described herein.

ここで第10a図七参照して、バス状態検出器110は
、受けた直列メツセージから、符号化されたデータ信号
と、衝突検出信号と、キャリヤセンス信号とを発生する
。希望によっては、バス状態検出器110は、一対のf
’ D J−ラッチ131 (同期の次め)を含むこと
ができる。それらのD−ラッチに、図示の工うに一対の
類似のD−ラッチ132に直列に結合される。第3の一
対のrDJ−ラッチ133が、ラッチ132そnぞれの
出力端子と検出器論理回路136とに結合される。1s
SDAとSDBのためのD−ラッテ132の出力端子が
、検出器論理回路136の入力端子A2.B2に結合さ
れる。同様に、D−ラッチ133の出力端子が、検出器
論理回路136の入力端子AI、Blに結合される。検
出器論理回路136または外部クロックによ!l1発生
されたクロック信号(その周波数は典型的には20MH
z)  により、全てのラッチは同時にクロックされる
。D−ラッチ131,132゜133?I−使用するこ
とにより、線SDAとSDBにおいて同時に受けられる
逐次データビツl−比較できる。
Referring now to FIG. 10a, bus state detector 110 generates an encoded data signal, a collision detection signal, and a carrier sense signal from the received serial messages. Optionally, bus state detector 110 may include a pair of f
'DJ-latch 131 (next to synchronization). To these D-latches, the illustrated device is coupled in series to a pair of similar D-latches 132. A third pair of rDJ-latches 133 are coupled to the respective output terminals of latches 132 and detector logic circuit 136. 1s
The output terminals of D-latte 132 for SDA and SDB are connected to input terminals A2. It is coupled to B2. Similarly, the output terminal of D-latch 133 is coupled to input terminals AI, Bl of detector logic circuit 136. By detector logic circuit 136 or external clock! l1 generated clock signal (its frequency is typically 20MH
z) all latches are clocked simultaneously. D-latch 131, 132°133? I- allows the comparison of sequential data bits received simultaneously on lines SDA and SDB.

本発明のバス状態検出器110により、直列バス3Tに
沿って直列に送られた符号化されたデータをと9出す簡
単な方法と、直列バス37に沿うメツセージの衝突を検
出する簡単な方法が得られる。第10a図および第10
b図に示すように、バス状態検出器110の衝突検出の
(CD)ボートの出力ty4べることにより、直列デー
タバスに沿うメツセージの衝突を容易に検出できる。検
出器論理回路136の全ての入力Al、A2.Bl、B
2が低レベル(論理O)であるとすると、両方の線SD
AとSDB t−を低レベルに引き下げられておplそ
れにより、両方のデータ線がそれぞれのエージェント内
の各直列送信器12Bにより位相が180度異なる工う
に通常ドライブされるから、衝突を指示する。したがっ
て、検出器論理回路136の全ての入力AI、A2.B
l、B2が低レベルでめる唯一の揚台は、バスに沿う衝
突の鳩舎でるる。その理由は、設計にニジ、線SDAに
論理1が存在するにに線SDBに論理0が存在すること
が必要だからでるる。同様に、直列バスのアイドル期N
Jニ、バス状態検出器110のキャリヤセンス(C8)
ボートの出力を調べることにより検出される。図示のよ
うに、バスのアイドル期間は、両方の線SDA、SDR
が高レベル状態であることVC・より示される。バス状
態検出器110のキャリヤセンス(C8)ボートは、論
理O(低)信号金屍生することによりアイドル状M?示
す。特定の論理状態についてのバス状態検出器110の
動作を説明したが、論理状態の他の組合わせも等しく使
用できることがわかるでろろう。
The bus status detector 110 of the present invention provides a simple method for detecting encoded data sent serially along the serial bus 3T and for detecting collisions of messages along the serial bus 37. can get. Figures 10a and 10
As shown in Figure b, message collisions along the serial data bus can be easily detected by looking at the output ty4 of the collision detection (CD) port of the bus state detector 110. All inputs Al, A2 . Bl,B
2 is low level (logic O), both lines SD
A and SDB t- are pulled low to indicate a collision since both data lines are normally driven 180 degrees out of phase by each serial transmitter 12B in their respective agents. . Therefore, all inputs AI, A2 . B
The only landing platform that B2 can get at low level is the pigeon coop that crashes along the bus. The reason for this is that the design requires that there be a logic 0 on the line SDB even though there is a logic 1 on the line SDA. Similarly, the idle period N of the serial bus
JD, carrier sense of bus status detector 110 (C8)
Detected by examining the boat's output. As shown, the bus idle period consists of both lines SDA, SDR
It is indicated by VC. that VC is in a high level state. The carrier sense (C8) port of bus status detector 110 is set to idle by generating a logic O (low) signal. show. Although the operation of bus state detector 110 has been described for particular logic states, it will be appreciated that other combinations of logic states may equally be used.

ここで第11a図を参照する。WL列ババス3フ沿って
送られる全てのメツセージに、マンチェスタ符号化を行
うために必要な同期(rayncJ)  前書き20G
と、それに続くバイト210とを含む。
Reference is now made to Figure 11a. Synchronization (rayncJ) required to perform Manchester encoding on all messages sent along WL column Babasu 3 Preface 20G
and the following byte 210.

バイト2101−!宛先エージェント(たとえば処理装
置26)のアドレス全構成する。また、メツセージ會送
る発信元全識別するソースエージェントアドレス220
が含まれる。「種類タイプ」バイト225 が、エージ
ェントの間で送られるメツセージのキャラクタ七識別す
る。種類指令の例には、バッファ要求と、バッファ許可
などが含まれる。
Part-time job 2101-! Fully configure the address of the destination agent (eg, processing device 26). In addition, a source agent address 220 that identifies all senders of messages is sent.
is included. The "Kind Type" byte 225 identifies the character of the message sent between agents. Examples of type directives include buffer requests, buffer grants, and the like.

種類バッファ225の後には、特定の送信エージェント
の2に%の識別番号に対応する識別(ID)バイト23
0 と、データフィールド235が続く。
Following the type buffer 225 is an identification (ID) byte 23 corresponding to the 2% identification number of the particular sending agent.
0, followed by a data field 235.

ii 列バス3Tに沿って誤りのない送信上行うために
、メツセージは、周知の?I14クチェックCRCC1
6ビツトCCITT)コード240 で終る。エージェ
ントの間で直列バス37に沿って送られる各メツセージ
の後に、「フレーム間スペース(インターフレームスペ
ース)J (IFS)と呼ばれる無メツセージ送信期間
が続く。ここで説明している実施例においては、その無
メツセージ送信期間は、約4バイト時間を構成する。直
列バス37Kaりて送られる全てのメツセージは、受信
エージェントにより、第11b図に示されている確認応
答メツセージ書式(フォーマット)を用いてN認応答さ
れる。図示のように、a認厄答信号に、同期前書き20
0 と、それに続く簡単な確認応答フィールド260と
を含む。その確認応答フィールドは、希望により設けら
れるものであって、メツセージ確認応答信号を表す独特
のデジタルコードを含む。
ii In order to carry out an error-free transmission along the column bus 3T, the message is sent to the well-known ? I14 Kucheck CRCC1
6-bit CCITT) code 240. Each message sent along serial bus 37 between agents is followed by a message-free period called the "interframe space" (IFS). In the embodiment described here: The messageless transmission period constitutes approximately 4 byte hours. All messages sent over the serial bus 37Ka are sent by the receiving agent using the acknowledgment message format shown in Figure 11b. As shown in the figure, the synchronization preface 20 is added to the a acknowledgment signal.
0 followed by a simple acknowledgment field 260. The acknowledgment field is optional and contains a unique digital code representing the message acknowledgment signal.

ここで説明している装置においては、確認応答フィール
ドは使用されず、その代りに同期前書き200と、それ
に読くフレーム間スペース時間内のバスアイドル期間に
より示される。IFS時間内に、同期前書き200 と
アイドル期間の少くとも一方が検出されないとすると、
誤りがめると想定される。
In the system described herein, the acknowledgment field is not used and is instead indicated by a synchronization preamble 200 and a bus idle period within the interframe space time that it reads. Assuming that at least one of the synchronization preface 200 and the idle period is not detected within the IFS time,
It is assumed that mistakes will be made.

次に第12a図全参照して、直列バス3Tに沿ッテメッ
セージを送るために、メツセージ制御ロジック50によ
り実行される一連の論理動作について説明する。まず、
処理装置25が直列バス37を用いてメツセージ全処理
装量26へ送らなければならないと仮定する。処理装置
25は、バス状態検出器110のキャリヤセンス(C8
)出力ヲ調べることにより、直列バス37が現在使用さ
れているか否かをまず判定づ−る。ここで説明している
wm例においてに、直列バス37に沿っ1送られるデー
タが無いと、線SDAとSDRが共に高レベル状態を保
つことになる(第10a図参照〕。
Referring now to FIG. 12a, a series of logical operations performed by message control logic 50 to send a message on serial bus 3T will now be described. first,
Assume that processing unit 25 must send messages to total processing capacity 26 using serial bus 37. The processing device 25 detects the carrier sense (C8) of the bus state detector 110.
) It is first determined whether the serial bus 37 is currently in use by examining the output. In the wm example described herein, the absence of data being sent along serial bus 37 causes both lines SDA and SDR to remain high (see Figure 10a).

#SDA とSDRとについての検出器論理回路136
 によるナンド動作が、直列バス37にキャリヤ信号が
存在しないことを示す低レベル状態を示す。直列バス3
7が使用されていないこと音処理装置125が判定する
と、処理装置25の直列メツセージ制御ロジック124
が第11a図に示すメツセージ書式を用いてメツセージ
を包み(encapsulate )、そのメツセージ
を、直列送信器128へ送って線SDA、SDB上に表
明する。処理装置25がそれのメツセージ?[列バス3
7に沿って送ると、第11b図に示す誉式ケ用いている
メツセージに続くフレーム間スペースの間、処理装置1
26からの確認応答メツセージの受信會処 −埋装fi
125i待つ。そのフレーム間スペース(IFS)内に
確認応答が受けられたと仮定すると、それで直列メツセ
ージサイクルが終つ几ことになる。
#Detector logic circuit 136 for SDA and SDR
The NAND operation indicates a low level condition indicating that no carrier signal is present on the serial bus 37. Serial bus 3
When the sound processor 125 determines that 7 is not in use, the serial message control logic 124 of the processor 25
encapsulates the message using the message format shown in FIG. 11a and sends the message to serial transmitter 128 for assertion on lines SDA, SDB. Is the processing device 25 that message? [Line bus 3
7, during the interframe space following the message using the Homare style shown in FIG. 11b, the processing device 1
26 - Embedded fi
Wait for 125i. Assuming an acknowledgment is received within the interframe space (IFS), this will end the serial message cycle.

処理装置25が確認応答メツセージ全フレーム間スペー
ス中に受けず、かつバス状態検出器110が直列バス3
Tに沿う衝突全検出しないとすると、処理装置25に、
メツセージ種類バイト225 で第2の送信を複製され
たパケットとして識別のためフラッグビットをセットし
た後、データ送git繰9返えす。し〃1し、バス状態
検出器110か衝突を検出したとすると、処理装置25
(および直列バス37に結合されている他のエージェン
ト)が、直列バス再送仲裁サイクルを開始まる(第2b
図、第12c図および第13図)。
If processing unit 25 does not receive an acknowledgment message during the entire interframe space, and bus status detector 110 indicates that serial bus 3
If all collisions along T are not detected, the processing device 25
After setting the flag bit in the message type byte 225 to identify the second transmission as a duplicated packet, the data transmission git repeats. 1, and if the bus status detector 110 detects a collision, the processing device 25
(and other agents coupled to serial bus 37) initiates a serial bus retransmission arbitration cycle (second b).
Figures 12c and 13).

データが直列バスに沿って送られる時の性質、すなわち
、データの位相が線SDAとSDRに沿って逆にされる
次めに、1′)tたけそれ以上の送信ステーションの間
の衝突メツセージの合計が線SDA、SDRe低レベル
にする。衝突の発生を検出すると、直列バス3Tに結合
されている全てのエージェントが「ジャムサイクルJt
開始まる。
The nature of when data is sent along a serial bus, i.e. the phase of the data is reversed along lines SDA and SDR, then 1') collision messages between no more than t transmitting stations. The sum makes lines SDA and SDRe low. When the occurrence of a collision is detected, all agents connected to the serial bus 3T perform a "jam cycle Jt".
Start Maru.

そのジャムサイクルのはじまりは、線SDA とSDR
?低レベルに駆動して、所定のビット時間の間直列バス
を[結らせる(ジャムとする〕」。
The jam cycle begins with the lines SDA and SDR.
? "to jam the serial bus by driving it low for a predetermined bit time."

そうするとエージェントはアイドル状態となって所定時
間バスの状態を調べて衝突を厘丁ことかできるようにし
、妥当なジャムサイクルが起き之こと’tRかめるため
に付加期間(IFSに等しい)を待つ。ジャムサイクル
が終ると、各送信ステーションが、所定の時間スロット
0番からN番の計数金、同時に開始まる(第13図)。
The agent then idles for a predetermined period of time, checking the state of the bus to allow for collisions, and waits for an additional period (equal to IFS) to ensure that a valid jam cycle occurs. At the end of the jam cycle, each transmitting station starts counting predetermined time slots 0 through N at the same time (FIG. 13).

直列バス3Tに結合されている各エージェントには、そ
れのメツセージを再送する期間である独特の時間の1つ
が割付けられる。第13図に示すように、各時間スロッ
トは、複数の副時間スロット(0番からM番)に分割で
きる。谷側時間スロットには、直列バスに結合されてい
る特定のエージェントが関連させられている。その場合
には、それに関連する副時間スロット’t−有する時間
スロットまで計数した時に、全てのステーションはジャ
ムサイクルを再び開始し、第1の時間スロット(第13
図においてに時間スロット211)内の副時間スロット
の計数全開始まる。その結果、本発明の送信仲裁を、直
列バス37に結合されている数多くのエージェントに効
率良く使用できる。第13図は祠時間スロツH−使用す
ることt示しているが、ここで説明している実施例にお
いては、ただ1つのエージェントがめる特足のスロット
に割当てられるようにただ1つのレベルが使用される。
Each agent coupled to the serial bus 3T is allocated a unique time period during which it will retransmit its messages. As shown in FIG. 13, each time slot can be divided into a plurality of sub-time slots (numbered from 0 to M). A valley time slot has associated with it a particular agent that is coupled to a serial bus. In that case, all stations start the jam cycle again when counting up to a time slot with its associated sub-time slot 't-
In the figure, the counting of the sub-time slots within the time slot 211) begins completely. As a result, the transmission arbitration of the present invention can be efficiently used with a large number of agents coupled to serial bus 37. Although Figure 13 shows the use of shrine time slots, in the embodiment described here, only one level is used so that only one agent can be assigned a particular slot. Ru.

ここで、直列バス37に沿ってエージェントAとエージ
ェントBとにより送られたメツセージの間で、衝突が起
きたと仮定する。その衝突全検出した後、直列バス37
に結合されている全てのエージェントはジャムサイクル
1続け、時間スロット(ここで説明している!!織例に
おいては、各時間スロットは約8ビツト時間を有する)
の計数を時間スロット0番から始める。ここで説明して
いる実施例においては、エージェントAに時間スロット
0番が割付けられている。したがって、直列バス3Tに
結合されている全てのエージエン)H、エージェントA
がそれのメツセージ全再送し終わるまで、時間スロット
の計数全停止する。エージェントAが第12図に示され
ているプロトコルを用いてそれのメツセージ全再送し終
ると、全てのエージェントハ、時間スロット1番から時
間スロットの計数を再び継続する。(第13図に示す時
間スロット2番の場合のように副時間スロットが割付け
られている場合には、特足の副時間スロットを割付けら
れているエージェントがそれらのメツ七−ジ紮送ること
ができるようにするために、休止してから、副時間スロ
ットが全てのエージェントにより同様にカウントダウン
される。)したがって、本発明の衝突再送仲裁プロトコ
ルは、1列バス3Tに結合されている各エージェントに
、それがメツセージを送る所定の時間スロット2割付け
ること金1はぼ決定する。この決定の仕方は、たとえば
、1つのエージェントが終局的にバス全アクセスするよ
うに、再送信の前にるるランダムに重みづけられた時間
を、全ての送信エージェントが待つことを単に要求する
r Ethernet Jのような従来のCS MA/
’CD プロトコル(米国特許第4,063,220号
)とは、基本的に異なる。
Assume now that a collision occurs between messages sent by agents A and B along serial bus 37. After all collisions are detected, the serial bus 37
All agents coupled to the jam cycle last one time slot (in the example fabric described here, each time slot has approximately 8 bit times)
Start counting from time slot number 0. In the example described here, agent A is assigned time slot number 0. Therefore, all agents) H, agent A, which are coupled to the serial bus 3T
The count of time slots stops until it has retransmitted all of its messages. Once agent A has retransmitted all of its messages using the protocol shown in FIG. 12, all agents will again continue counting time slots starting with time slot number one. (If a sub-time slot is assigned, as in the case of time slot number 2 shown in Figure 13, agents assigned to special sub-time slots may send their Metsu 7-di ligation. (After the pause, the sub-time slot is counted down similarly by all agents.) Therefore, the collision retransmission arbitration protocol of the present invention provides , it decides to allocate a predetermined time slot in which to send the message. This method of determination simply requires all transmitting agents to wait a randomly weighted amount of time before retransmitting, such that one agent eventually has full bus access. Traditional CS MA/ like J.
'CD protocol (U.S. Pat. No. 4,063,220) is fundamentally different.

本発明のローカルバス56は、第1図に示されている処
理装[25,26の工うな処理装置内の任意のwclの
プロセッサのためのローカルメモリと処理リソースに対
する高速・広偕域の並列バスを与える。ローカルバス5
6で村われる全ての情報転送には、要求エージェントと
応答エージェントが必要でめる。たとえば、典型的な要
求エージェントハ、第1のプロセッサ40、ま7’Cに
データ動作の冥行において第1のプロセッサ40のリソ
ースとして使用するためにローカルバス56に結合され
る第2のプロセッサ57でるる。同様に、ローカルバス
56に沿う典型的々応答エージェントは、メモリリソー
ス54でるる。したがって、ロー男ルバス56により、
第1のプロセッサ40というエージェントと、第2のプ
ロセッサ57(もしローカルバス56にこれが結合され
ていれば)というエージェントとの多重専用データ処理
リソースでめる。ここで説明している!!施例において
は、最大で2個のト要求エージェント」(プロセッサ)
t−1度にローカルバス56に結合できる。
The local bus 56 of the present invention provides high-speed, wide-area parallel access to local memory and processing resources for any WCL processor in the processing unit shown in FIG. Give a bus. local bus 5
All information transfers performed in step 6 require a request agent and a response agent. For example, a typical request agent may have a first processor 40 or a second processor 57 coupled to the local bus 56 for use as a resource of the first processor 40 in performing data operations. Out. Similarly, typically responsive agents along local bus 56 have memory resources 54 available to them. Therefore, by Law Man Lebus 56,
Multiple dedicated data processing resources are provided by an agent, the first processor 40, and the second processor 57 (if it is coupled to the local bus 56). It's explained here! ! In an embodiment, up to two request agents (processors)
It can be coupled to the local bus 56 at t-1 degrees.

第14図に示すように、ローカルバス56に、アドレス
線300 と、指令線310 と、データ線315  
と、ローカルバス56のためのプロトコルに従ってシス
テムの制御孕維持するための複数の制御線32θ とを
含む。第2の要求エージェント57と第1の要求エージ
ェント40(処進装[25の場合)の間に、バス要求線
(BUS REQ)325がローカルバスインターフェ
イス58 (第1図)を介して結合される。同様に、バ
ス確認応答(BUS ACK )線330が、第2の要
求エージェント5Tと第1の要求エージェント40の間
で信号を与えてバス使用権の確認応答を示す。ローカル
バス56tllのプロセッサの内部クロックと同期でき
るように、バスクロック線335が第1の要求エージェ
ントに結合される。したがって、全てのバス事象がバス
クロック周期の整数倍で定められ、各事象の開始と終了
、ま次はそれの妥当性の持続時間に、バスクロックの信
号の縁部に対して定められ次関係yk有する。
As shown in FIG. 14, the local bus 56 includes an address line 300, a command line 310, and a data line 315.
and a plurality of control lines 32θ for maintaining control of the system according to the protocol for local bus 56. A bus request line (BUS REQ) 325 is coupled between the second request agent 57 and the first request agent 40 (in the case of processing unit [25]) via a local bus interface 58 (FIG. 1). . Similarly, a bus acknowledgment (BUS ACK) line 330 provides a signal between the second request agent 5T and the first request agent 40 to indicate acknowledgment of bus rights. A bus clock line 335 is coupled to the first request agent for synchronization with the processor's internal clock on local bus 56tll. Therefore, all bus events are defined in integer multiples of the bus clock period, and the start and end of each event, the next in its validity duration, are defined in relation to the edges of the bus clock signal. I have yk.

全てのバス転送動作ニ、「仲裁(アービトレーショ/)
」サイクル、「転送(トランスファー月サイクル、「異
議(イクセプション)」サイクルと呼ばれる3種類の事
象工9成る。仲裁サイクルに、与えられた任意の時刻に
は、1つの、そしてただ1つの要求エージェント(第1
のプロセッサまたは第2のプロセッサのいずれか)が、
ローカルバス56に沿ってデータ転送の開始を許される
ようにするためのものでるる。ここで説明している冥確
例においては、第2の要求エージエン)57による要求
が無い時は、第1の要求エージェント40がa−カルバ
ス56の制御をまかされる。したがって、第2の要求エ
ージェント57がローカルバスに結合されているものと
し、a−カルパスが第2の要求エージェントの制御の下
に現在使用中でるる場合においてのみ、第1の要求エー
ジェント40は、仲裁サイクルに入ること全必要とする
(第1図に示す処理装fl126は、それのローカルバ
スに第2のプロセッサ金倉まず、それの第1のプロセッ
サがバス使用権のために決して仲裁全行わなくてすむこ
とに注意されたい)。
Arbitration for all bus transfer operations
'' cycle, the ``transfer cycle,'' and the ``objection'' cycle.9 At any given time, an arbitration cycle has one and only one requesting agent. (1st
or a second processor),
It is provided to allow data transfers to be initiated along local bus 56. In the case described here, when there is no request by the second requesting agent 57, the first requesting agent 40 is given control of the a-carbus 56. Therefore, assuming that the second request agent 57 is coupled to the local bus, the first request agent 40 only if the a-calpas is currently in use under the control of the second request agent. (The processing unit fl126 shown in FIG. 1 requires a second processor, Kanakura, on its local bus) to enter into an arbitration cycle (the processing unit shown in FIG. Please note that the

次に本発明のローカルバス仲裁サイクルが示されている
第15図を参照する。第2の要求エージェント57がロ
ーカルバス56のz用’ti求したとすると、それにバ
ス要求(BUS REQ)信号全バス要求線325上に
表明(アサート〕する。第1の要求エージェント40は
、バス確認応答(BUS ACK)信号をバス確認応答
線330上に生ずることによp1第2の要求エージェン
トのバス要求にNg応答する。それにより、バス使用権
が第2の要求エージェント57へ有効に後転される。
Reference is now made to FIG. 15, where the local bus arbitration cycle of the present invention is illustrated. If the second request agent 57 requests a request for z on the local bus 56, it asserts a BUS REQ signal on the full bus request line 325. P1 responds to the bus request of the second requesting agent by generating an acknowledgment (BUS ACK) signal on the bus acknowledge line 330, thereby making the bus right available to the second requesting agent 57. be transferred.

それから、要求されている特定のバス動作全開始させる
ために、第2の要求エージェント57は、適切なアドレ
ス信号と指令信号を、それぞれアドレス線300 と指
令線310 を介して、メモリ54のようなローカルバ
スリソースへ与える。要求エージェント(プロセッサ)
によるアドレスおよび指令情報の表明ニ、「要求段階」
と呼ばれ、ここで説明している笑抱例においては、少く
とも2クロツクサイクル持続する。そt′Lから、応答
エージェント(たとえばメモリリソース54 ) カ、
(r読出し」動作の場合には〕適切なデータ全データ線
315上に表明する。そのデータは、後述するプロトコ
ルを用いて第2の要求エージェント57により受けられ
る。第2の要求エージェント57に、応答エージェント
による要求した動作が終了し九時に、バス要求線325
上の表明解脱デアサート)をすることにエフバス使用権
上第1の要求エージェント40へ騙り渡す。
Second request agent 57 then sends appropriate address and command signals to memory 54, etc., via address lines 300 and command lines 310, respectively, to initiate the particular bus operation being requested. Give to local bus resource. request agent (processor)
Indication of address and command information by the ``request phase''
is called and lasts at least two clock cycles in the example described here. From t'L, the response agent (for example, memory resource 54),
Assert the appropriate data (in the case of an "r read" operation) on all data lines 315. That data is received by the second request agent 57 using the protocol described below. At 9 o'clock after the requested action by the responding agent is completed, the bus request line 325
The above assertion release deassertion) is deceived and passed to the first requesting agent 40 based on the F-BUS usage right.

次に、本発明の待機(WAIT)信号の独特な使用を示
す第16図を参照する。待機(WAIT)信号は、遅延
クロックサイクルを導入することにより応答段階全延長
することを要求するために、ローカルバス56に結合さ
れている全ての「応答」エージェントにエフ使用できる
。パイプライン処理が冥行されると(現在のバス動作の
要求段階に先のバス動作の応答段階に重なり合っている
と)、先のバス動作を行っている応答エージェントによ
る待機信号の表明によって、現在のバス動作の要求段階
を延長させることカニできる。第16図に示すように、
第1のプロセッサ40U、(アドレス線300 と指令
11310t−用いて〕ローカルバス56に結合されて
いる応答エージェントに対する要求を表明している。先
のバス動作にサービスしている応答エージェントが、現
在のバス動作の要求段階の第1のクロックサイクル中に
待機信号を表明している。これは、先のバス動作でサー
ビス中の応答エージェントが、現在のバスクロックサイ
クル中にアドレスおよび指令情@を受けることができな
かったことを第1の要求エージェントに知らせる。要求
され次データ上アクセスして、そのデータt−ローカル
バスに与えるために、アドレスされた応答エージェント
が付加時間を要求するものとすると、その応答エージェ
ントハ、要求段階の最後のクロックサイクルにおいて待
機(WAIT)信号を表明せねばならない。要求エージ
ェントニ、適切な数のアクセス遅延サイクルが導入され
るまで、待機信号の表明?続行せねばならない。ローカ
ルバス56において遅延サイクルを効果的に与えるため
に待機信号を使用することに、第1のプロセッサ40か
、たとえばローカルメモIJ 17ソース54のアクセ
ス時間より速い速度で動作している場合には、一般的な
ものでめる。といウノハ、ローカルバス56がWJlの
プロセッサ補と同じ速度でクロッつてれるρ−らでるる
Reference is now made to FIG. 16, which illustrates the unique use of the WAIT signal of the present invention. A WAIT signal is available to all ``response'' agents coupled to local bus 56 to request that they extend the entire response phase by introducing a delayed clock cycle. When pipeline processing is delayed (if the request phase of the current bus operation overlaps with the response phase of a previous bus operation), the assertion of a wait signal by the response agent performing the previous bus operation causes the current It is possible to extend the request phase of the bus operation. As shown in Figure 16,
First processor 40U asserts a request (using address line 300 and command 11310t) to a response agent coupled to local bus 56. The wait signal is asserted during the first clock cycle of the request phase of a bus operation, indicating that the responding agent in service on a previous bus operation receives address and command information during the current bus clock cycle. Inform the first requesting agent that it was unable to do so.Assume that the addressed responding agent requests additional time to access the requested data and provide that data to the t-local bus. The responding agent must assert the WAIT signal in the last clock cycle of the request phase. The requesting agent must continue asserting the WAIT signal until the appropriate number of access delay cycles have been introduced. The use of a wait signal to effectively provide a delay cycle on the local bus 56 may be useful if the first processor 40 is operating at a faster rate than the access time of the local memory IJ 17 source 54, for example. In general, the local bus 56 clocks at the same speed as the WJl processor.

%16図に示″j−ように、要求段階の第1のクロック
サイクルにおける待機信号の表明に=9、更にけカロさ
れる2つのクロックサイクルの間、第1の要求エージェ
ントの要求段階が継続しUff明される結果となる。し
たかつて、待機信号は、バス線の状態に遅延會冥効的に
さしはさむが、ローカルバスの標準的なプロトコルを変
更することはない。ローカルバス56上におけるろらゆ
る要求は最少限2クロック周期の間表明されるが、応答
エージェントは、要求を受けた後の任意の時刻に、その
要求に応答できる。いいかえると、要求エージェント(
第1のプロセッサまたに第2のプロセッサ)が要求を依
然として表明をしていても、応答エージェントは要求の
表明の後1クロツクサイクルはど遠く応答できる(′4
サイクル遅延)。
%16 As shown in the figure, the request phase of the first request agent continues for two additional clock cycles when the waiting signal is asserted in the first clock cycle of the request phase. The standby signal effectively interjects the state of the bus line, but does not change the standard protocol of the local bus. Every request in is asserted for a minimum of two clock periods, but a responding agent can respond to the request at any time after receiving it.In other words, the requesting agent (
Even if the first processor (or the second processor) is still asserting the request, the responding agent can respond no more than one clock cycle after asserting the request ('4
cycle delay).

要求段階の第1のクロックサイクルの後(すなわち、そ
れの第2のクロックサイクル中)の待機信号の表明は、
その特定の要求段階には何の作用も及ぼさず、遅延の導
入によりその応答段階全延長することにより応答段階に
作用會及ぼすだけでるることに気がつくでめろう。たと
えば、第16図に示すように、!@1の要求エージェン
トの第2のバス動作の要求段階が、前のバス動作の応答
段階を終了させるべきでめったクロックサイクル中に始
まる。待機信号か前のバス動作の応答段階全頁に1サイ
クルま7ICi;zそれ以上のクロックサイクルだけ遅
延させたとすると、第2のバス動作の要求段階がそれに
対厄して延長させられることになる。応答段階の第1の
クロックサイクル(要求段階の最後のクロックサイクル
)中に待機信号が表明されると、待機信号が応答エージ
ェントにより表明解除をされるまで、応答エージェント
の応答が遅延させられる結果となる。ここで説明してい
る実施filにおいてに、現在の応答エージェントが与
えられたバス動作の応答段階中に待機信号を表明する権
利を有する。
Assertion of the wait signal after the first clock cycle of the request phase (i.e. during its second clock cycle)
You will notice that it has no effect on that particular request phase, but only affects the response phase by lengthening its entire response phase by introducing a delay. For example, as shown in Figure 16,! The request phase of the second bus operation of the @1 request agent begins during the rare clock cycle in which the response phase of the previous bus operation should have finished. If the wait signal or the response phase of the previous bus operation were to be delayed by one cycle or more clock cycles, the request phase of the second bus operation would be correspondingly extended. . Asserting the wait signal during the first clock cycle of the response phase (the last clock cycle of the request phase) results in the response agent's response being delayed until the wait signal is deasserted by the response agent. Become. In the implementation described here, the current response agent has the right to assert a wait signal during the response phase of a given bus operation.

第17図は、応答段階中における応答エージェントによ
る待機信号の使用と、本発明の異議サイクルを示すもの
でるる。図示のように、第1の要求エージェントか、ア
ドレス線300 と指令線310において、要求(アド
レスおよび指令情報)全表明し1いる。第1の70セツ
サの要求の第1のクロックサイクル中に待機信号に表明
されていないから、要求段階は最少限の2クロツクサイ
クルの間だけ持続する。応答エージェントは要求に応じ
て応答段階の第1のクロックサイクル(要求段階の最後
のクロックサイクル)の間に待機信号全表明することに
より、要求されたバス動作が待機信号カニ表明解除され
るまで実行されないことと、それに従って他の全ての機
能が遅延させられることとt1全てのバスエージェント
に知らせる。ここで説明している実施例においては、第
1の要求エージェントにより読取られるデータ全得るた
めに応答エージェントハ、ただ1サイクルのアクセス遅
延全要求し、それの応答全データ線315に与えるのと
同時に待機信号の表明解除上する。応答段階中の待機信
号の表明解除により、ローカルバスに読出されたデータ
か妥当でろって標本化できること、まfcri、要求エ
ージェントにエフドライブされる「4I込みデータ」が
標本化されて、応答エージェントにより書込み動作が終
了させられることt1要求エージェントに知らせる。
FIG. 17 illustrates the use of a wait signal by a response agent during the response phase and the objection cycle of the present invention. As shown, a first request agent asserts the entire request (address and command information) on address line 300 and command line 310. Since the wait signal is not asserted during the first clock cycle of the first 70 setter request, the request phase lasts for a minimum of two clock cycles. Upon request, the response agent asserts the wait signal fully during the first clock cycle of the response phase (the last clock cycle of the request phase), thereby performing the requested bus operation until the wait signal is deasserted. t1 informs all bus agents that it will not be performed and that all other functions are delayed accordingly. In the embodiment described herein, in order to obtain all the data read by the first requesting agent, the responding agent delays access by only one cycle while simultaneously providing its response on the full data line 315. The standby signal is deasserted. By deasserting the wait signal during the response phase, the data read to the local bus can be validly sampled. t1 informs the requesting agent that the write operation is terminated by t1.

第17図に示すように、応答段階の第1のデータ転送期
間中に、出された要求段階に関連する任意の誤りま友は
異議上、応答エージェントに要求エージェント(プロセ
ッサ)に知らせなければならない。いいかえると、ここ
で説明しているwm例においては、応答段階の第1のデ
ータ転送期間中には、要求に対するどのような異議(イ
クセプション)も報知される。要求段階の最後のクロッ
クサイクル中に待機信号が表明されない場合には、その
要求段階に対する異議がこの最後のクロツクサイクル中
に報知される。第17図に示すように、データに対する
異議は、データバス315 にデータが710えられた
直後のりロックサイクル中に報知される。
As shown in Figure 17, during the first data transfer period of the response phase, any errors related to the issued request phase must be notified to the requesting agent (processor) by the response agent. . In other words, in the wm example described herein, any objections to the request are signaled during the first data transfer period of the response phase. If the wait signal is not asserted during the last clock cycle of a request phase, then an objection to the request phase is signaled during this last clock cycle. As shown in FIG. 17, objections to data are signaled during the lock cycle immediately after data is added to data bus 315 710 .

第18図および第21図は、不発明による、要求、デー
タに対する異議ならびに「継続」異議プロトコル金示す
ものでるる。第14図に示すように、制御線320がア
ドレス誤り(AERR)mとデータ誤!11(DERR
)線を含んでいる。それらのiI?i!ハローカルパス
56上の全てのエージェントに結合されている。前記し
fc、工うに、たとえば第1のプロセッサという要求エ
ージェント40により表明された要求段階に対する異議
は、応答段階の第1のデータ転送期間中に、要求エージ
ェントへ報知される。同様に、データ線315へ与えら
れるデータに対する異議は、そのデータを与えた直後の
クロックサイクル中に報知される。本発明においてに、
ローカルバスに沿ってバス動作t−冥行している要求エ
ージェントへ、継続異lIハアドレス誤り信号線(AE
RR)’!r介して報知される。
Figures 18 and 21 illustrate requests, data objections and "continue" objection protocols according to the invention. As shown in FIG. 14, the control line 320 indicates an address error (AERR) m and a data error! 11 (DERR
) contains lines. Those iI? i! The halo is coupled to all agents on the local path 56. As previously mentioned, an objection to the request phase expressed by the request agent 40, for example the first processor, is signaled to the request agent during the first data transfer period of the response phase. Similarly, objections to data applied to data line 315 are signaled during the clock cycle immediately following the application of the data. In the present invention,
The continuation error signal line (AE
RR)'! Notification will be made via r.

AERR信号は、データバスに与えられたデータは予測
された応答エージェントにエン駆動されていないこと全
示し、η・つ継続誤r)(すなわち、物理的境界(めふ
れ〕誤り)が起きたことを英際に報知する。継続−9は
、応答エージェントが各動作の後で応答エージェントの
データアドレス上場し、そのデータアドレスが応答エー
ジェントの杵容アドレス範囲を超えるようなブロック転
送の場合に起ることかめる。その場せには、継I&wA
9が生じたことを、要求されたデータが妥当でめるべき
期間中にAERR線に表明をすることにエン、応答エー
ジェントハ要求エージェントに知らせる。したがって、
そうでなければデータが妥当でめる工うなりロックサイ
クルと同時に全ての継続誤りが報知される。継続誤りは
、ブロック転送要求が行われた場合に、ブロック転送全
支持しない応答エージェントにより報知することもでき
る。待機信号が表明されたとすると、この期間はそnに
従って遅延させられる。
The AERR signal indicates that the data presented on the data bus has not been driven to the expected response agent and that a continuation error (i.e., a physical boundary error) has occurred. Continuation-9 occurs in the case of a block transfer where the responding agent lists its data address after each operation and the data address exceeds the responding agent's address range. Kotokameru.On that occasion, Tsui I&wA
9 has occurred, the responding agent informs the requesting agent by asserting on the AERR line during the period that the requested data is valid. therefore,
Otherwise, all continuation errors will be signaled at the same time as the lock cycle if the data is valid. A continuation error may also be signaled by a responding agent that does not fully support block transfers when a block transfer request is made. If the wait signal were asserted, this period would be delayed accordingly.

次に第19図全参照して、与えられた要求エージェント
のバス動作の要求段階と、それに先立つバス動作の応答
段階との重なρ合いを許すことにヨリ、ローカルバス5
6紮「パイプライン」制御できる性能について説明する
。ここで説明している冥施例においては、第1の7″ロ
セツサ40に、それのWIllの要求段階を、アドレス
線と指令線上にドライブする。第1の要求エージェント
(プロセッサ)40に、第1のバス動作がブロック転送
でなければ、現在の要求段階が終了した直後にそれの第
2のバス動作を開始できる。第1のバス動作がブロック
転送でわれは、第1のバス動作の最後のデータ転送期間
と予測されるクロックサイクルまで、第2のバス動作の
要求段階を開始できないことかめる。
Next, with full reference to FIG. 19, the local bus 5
The performance that can be controlled by the 6-string "pipeline" will be explained. In the implementation described here, a first 7'' processor 40 drives its WILL request stage onto the address and command lines. If the first bus operation is not a block transfer, its second bus operation can be started immediately after the current request phase has finished. It is noted that the request phase of the second bus operation cannot begin until the expected clock cycle of the data transfer period.

w、20図に、第1の要求エージェント40がローカル
バス56にアクセスしており、第2の要求エージェント
57がバスアクセスt−要求している場合を示すもので
るる。図示のように、第2のプロセッサ57は、第1の
要求エージェントの要求段階中に、BUS REQ線に
表明をする。第1の要求エージェントは、それの応答段
階の終りに続くクロックサイクルより早く、第2の要求
エージェントにローカルバスの使用権を譲り渡さないこ
とを要求されている。図に示すように、・第2の要求エ
ージエン)57の要求段階は、クロンクサイクルを開始
させ、そのクロックサイクルに続いてBUS ACKが
第1の要求エージェント40により表明される。
Figure 20 shows a case where the first request agent 40 is accessing the local bus 56 and the second request agent 57 is requesting bus access t-. As shown, the second processor 57 asserts on the BUS REQ line during the request phase of the first request agent. The first requesting agent is required not to relinquish use of the local bus to the second requesting agent earlier than the clock cycle following the end of its response phase. As shown, the request phase of second request agent 57 initiates a clock cycle following which a BUS ACK is asserted by first request agent 40 .

第20図に、WJlの要求エージェント57の応答段階
が終了した時に、第2の要求エージェント57がI!r
第1の要求エージェント(プロセッサ)40へ論るため
のタイミングをも示している。図ニ示1゛工うに、@2
の要求エージェントがバスノ使用権全第1の要求エージ
ェントへ譲ることができる最鳴早いクロックサイクルに
、それの応答段階の最後のクロックサイクルに続くクロ
ックサイクルでるる。これは、BUS REQ信号の表
明解除會する第2の要求エージェント57により達成さ
れる。以後のクロックサイクルにおいては、第1の要求
エージェント40は、BUS  ACK信号の表明解除
をしなければならず、かつ新しいバス動作の要求段階を
開始できる。
In FIG. 20, when the response phase of request agent 57 of WJl is completed, second request agent 57 responds to I! r
The timing for addressing the first request agent (processor) 40 is also shown. Figure 1 shows the work, @2
The first requesting agent can yield all bus rights to the first requesting agent on the earliest clock cycle that follows the last clock cycle of its response phase. This is accomplished by the second request agent 57 deasserting the BUS REQ signal. In subsequent clock cycles, the first request agent 40 must deassert the BUS ACK signal and can begin the request phase of a new bus operation.

第20図に示す笑捲例においてに、第2の要求エージェ
ントの応答段階の第1のクロックサイクル中に、応答エ
ージェント40に待機信号全表明することにより、付那
クロックサイクルの間データの表明盆遅延させる。次の
サイクルにおける待機(WA I T )信号の鎖側解
除は、データ線に「読出された」データが妥当であって
、要求エージェントが受けなければならないこと?指示
する。待機信号に、第2の要求エージェントのバス動作
の応答段階にlクロックサイクルを導入するためにも用
いられる。
In the example illustrated in FIG. 20, the wait signal is fully asserted to response agent 40 during the first clock cycle of the response phase of the second request agent, thereby causing the data to be asserted during the second clock cycle. delay. Does the dechaining of the wait (WAIT) signal in the next cycle mean that the data "read" on the data line is valid and must be accepted by the requesting agent? Instruct. The wait signal is also used to introduce l clock cycles into the response phase of the second request agent's bus operation.

待機制御信号に加えて、ローカルバス56は、LOCK
のような他の制御myt含む。それらの制御線に、それ
を介して相互に排他的なバス動作を行わせることができ
る信号機構でるる。LOCK信号げ、要求エージェント
にエンドライブされ、かつローカルバス56に結合され
ている全ての応答エージェントにより受けられ、る。L
OCK信号に、与えられた任意の時刻にバスの使用権を
有する要求エージェントにより、表明されることができ
る。
In addition to the LOCK control signal, local bus 56 provides a LOCK
Other controls like myt include. These control lines are signal mechanisms through which mutually exclusive bus operations can be performed. The LOCK signal is received by all responding agents end-driven to the requesting agent and coupled to local bus 56. L
The OCK signal can be asserted by a requesting agent that has the right to use the bus at any given time.

全ての応答エージエンl−U、LOCK信号を監視しな
ければならず、LOCK信号が表明されているバス動作
に含まれている応答エージェントハ、非ローカルバスポ
ートをロックせねばならず、LOCK信号が表明解除さ
れるまでロックを保持する。第1の要求エージェントと
第2の要求エージェントとに関連する相互に排他的なバ
ス動作が終了され、力1つLOCK信号が表明解除され
るまで、自己のバスの使用権を譲り渡さないことは、第
1および第2の要求エージェントの責任でるる。第22
図に示すように、LOCK信号の作用は、与えられたバ
スエージェントが、他の任意の要求エージェントによる
応答エージェントの当座の間の使用を許すことなしに、
一連のバス動作全応答エージェントに対して実行するこ
とを許す相互に排他的な状態を求めることでるる。更に
詳しくいえば、ローカルバス56が多重ポートをもつ応
答エージェントヲ有するものとすると、相互に排他的な
機能が全ての非ローカルパスポートの閉め出しを要求す
る。
All responding agents that are involved in the bus operation for which the LOCK signal is asserted must lock non-local bus ports and that the LOCK signal is asserted. Holds the lock until it is deasserted. The first requesting agent and the second requesting agent do not relinquish ownership of their bus until mutually exclusive bus operations associated with the agent are terminated and the LOCK signal is deasserted. , the responsibility of the first and second request agents. 22nd
As shown in the figure, the effect of the LOCK signal is to allow a given bus agent to
It is possible to find mutually exclusive states that allow a set of bus operations to be performed for all responsive agents. More specifically, assuming local bus 56 has a response agent with multiple ports, mutually exclusive functions require locking out all non-local passports.

以上、第15〜22図全参照してメモ+71Jンース5
4などからのデータの第1のエージェントまたは第2の
エージェントのデータのアクセスと受信について説明し
たが、要求エージェント(プロセッサ〕がメモリリソー
ス54、プロセッサまたに七の他のデータ処理装置へデ
ータを書込む場合にも同じデータ転送プロトコルを便用
できることがわ〃するであろう。書込み動作の場合には
、応答エージェントは、待機信号を用いることにエン、
バッファを割付けて、データが受けられて誤りを調べら
れるように、バス状態に休止を導入できる。
Above, refer to all Figures 15 to 22 and take notes +71 J Noose 5
Although we have described the access and reception of data by a first agent or a second agent, such as from a memory resource 54, a processor 54, or another data processing device such as a memory resource 54, It will be appreciated that the same data transfer protocol can be conveniently used for write operations.
Buffers can be allocated to introduce pauses on the bus state so that data can be received and checked for errors.

書込み動作中にデータをドライブする要求エージェント
ニ、待機信号がそのクロックサイクルにおいて表明され
るならば、データのドライブを次のクロックサイクルま
で延長せねばならない(第21図)。
A request agent driving data during a write operation must extend driving data until the next clock cycle if the wait signal is asserted in that clock cycle (Figure 21).

以上の説明に従って、本発明は、従来知られていなかっ
た独特なシステムデータバスアーキテクチャとデータ転
送プロトコルを提供するものでるることが当業者には明
らかでろろう。本発明はその並列バス35により、バス
に結合されているエージェントの間で大量のデータを高
速で転送できるようにするものでるる。それには、たと
えば処理装置と、包括的記憶装置、またにその他のデー
タ処理装置との間でのデータ転送を含めることができる
。同様に、本発明にその直列バス37により、バス構造
内のエージェント間でのメツセージを効率良く転送でき
、それにエンメツセージが並列バス35’に通ることを
無くす。更に、ローカルバス56は、ji!lのプロセ
ッサと複数のローカルリソースの間で、他のシステムバ
スの利用できる帯域幅に衝撃を与えることなしにデータ
全転送するための高速かつ広帯域幅の並列バス全構成す
る。
In view of the foregoing description, it will be apparent to those skilled in the art that the present invention provides a unique system data bus architecture and data transfer protocol heretofore unknown. The parallel bus 35 of the present invention allows large amounts of data to be transferred at high speed between agents coupled to the bus. This may include, for example, data transfer between a processing device and a comprehensive storage device or other data processing device. Similarly, the serial bus 37 of the present invention allows for the efficient transfer of messages between agents within the bus structure, while eliminating the need for subsequent messages to pass over the parallel bus 35'. Furthermore, the local bus 56 is ji! A high-speed, wide-bandwidth parallel bus is configured to fully transfer data between one processor and multiple local resources without impacting the available bandwidth of other system buses.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明を実施する九めのデータ処理装置のブロ
ック図、第2図に本発明のメツセージ制御ロジック全構
成する主な部品のブロック図、第3図は本発明の並列パ
ス?構成する各種の副バス構造金示j略図、第4図に連
列バスに結合されているエージェントの間のデータ転送
のための並列システムバスプロトコル上水すタイミング
図、第5a図お工び第5b図に応答エージェントη1ら
バスに沿ってデ〜りを受けるために、並列バスに結合さ
れている要求エージェントによV実行される一連の動f
l:を示す流れ図、第6図に要求段階と応答段階におけ
る制御パス?構成する線葡示す説明図、@7図にデータ
に要求エージェントへ転送スるために、並列バスに結合
され1いる応答エージェントにより実行される一連の論
理動作上水す流れ図、第8図に並列バスに沿う依頼され
次メツセージ転送?示す説明図、wc9図に本発明の直
列バスに沿ってメツセージr送る之めの直列メツセージ
制御器全構成する主な部品のブロック図、第10a図は
直列メツセージ制御器のバス状態検出回路上水す略図、
第10b図に検出器Mr埋回路の動作説明図、第11a
図に本発明のバス構造に結合されているエージェントの
間でメツセージを送るための本発明のデータを包む構造
を示す線図、第11b図は直列バスに沿うメツセージ転
送を確認応答するための直列バスにおいて使用される確
認応答メツセージ構造を示す線図、第12a図は本発明
の直列バスに沿って送信エージェントにエフ興行される
一連の論理動作?示す流れ図、第12b図はメツセージ
衝突上検出する定めに直列バスに沿うエージェントによ
り同時に実行される一連の論理動fl示す流れ図、第1
2c図にメツセージの検出と受信を行う念めに直列バス
に沿うエージェントにより同時に実行される一連の論理
動作上水す流れ図、第13図は本発明の直列バスにエフ
使用される決定論的な衝突再送仲裁のサイクル上水す線
図、第14図に本発明のローカルバスt−構底する各種
の副バス構造七本す略図、第15図は本発明のローカル
バスにアクセスするための仲裁サイクルを示すタイミン
グ図、第16図は待機のローカルバスの使用上水すタイ
ミング図、第17図は待機状態と異議状態でのローカル
バス続出しアクセスを示すタイミング図、第18図はロ
ーカルバスブロック転送および継続v4り報知を示すタ
イミング図、第19図は第1の要求エージェントの制御
の下にローカルバスが機能するバス仲裁、パイプライン
処理2よび待機金示すタイミング図、第20図はローカ
ルバスが最初に第1の要求エージェントの制御の下にる
るローカルバス仲裁と待機を示すタイミング図、第21
図ばa−カルバスブロック転送状態と異議状態を示すタ
イミング図、第22図にLOCK信号の制御の下におけ
るローカルバス相互排他的動作を示すタイミング図でる
る。 25.26−・・・処理装置、30・・・・包括的記憶
am、3s・・・・並列バス、3T・・0.直列バス、
40,41.−−・男lのプロセッサ、44・・・・イ
ンターフェイス装置、46・赤・・110ロジツク、5
0・・・・メツセージ制御ロジック、54・・・・メモ
リ、56eの−・a−カルバス、57・・・・第2のプ
ロセッサ、60・・・・アドレス/データ線、6211
・・・エージェント仲裁線、64・φ・・高優先度線、
66◆・・・バス要求線、68・偽・・指令バス、[i
9**eaバスロック線、70−−−−異一線、72・
・−・システム制御線、80・・・・メツセージ制御器
、82・φamバッファメモIJ、84@・・・バス制
御器、86・・・a直接メモリアクセス(DMAJイン
ターフェイス、88−−−− FIFOポインタ、io
o −−−”直列メツセージ制(fl[,110・・・
・バス状態検出器、115 ・Φ・・デコーダ、11T
 ・・拳・衝突検出線、124・・・・直列メツセージ
制御ロジック、12B−−拳・直列送信器、131 。 132.133  ・11−・D−ラッチ、136 ・
・・争検出器論理回路、300 −φ・・アドレス線、
310・壷・・指令線、315・・・・データ線、32
0・・・・制御線、325・・・・バス要求線、330
・・―・バス確認応答線、335・・・・バスクロック
線。
Fig. 1 is a block diagram of the ninth data processing device implementing the present invention, Fig. 2 is a block diagram of the main components that make up the entire message control logic of the present invention, and Fig. 3 is a block diagram of the main components of the entire message control logic of the present invention. FIG. 4 is a schematic diagram showing the structure of the various sub-buses that make up the system; FIG. 4 is a timing diagram showing the parallel system bus protocol for data transfer between agents coupled to serial buses; FIG. Figure 5b shows a series of actions f performed by request agents coupled to parallel buses in order to receive requests along the bus from response agents η1.
A flowchart showing the control path in the request stage and response stage is shown in Figure 6. Figure 7 is a flowchart showing the sequence of logical operations performed by a response agent coupled to a parallel bus in order to transfer data to a requesting agent; Next message transfer requested along the bus? Figure 10a is a block diagram of the main components of the serial message controller for sending messages along the serial bus of the present invention, and Figure 10a is a block diagram of the bus status detection circuit of the serial message controller. Schematic diagram,
Fig. 10b is an explanatory diagram of the operation of the detector Mr embedded circuit, Fig. 11a
11b is a diagram illustrating the data-wrapping structure of the present invention for sending messages between agents coupled to the bus structure of the present invention; FIG. A diagram illustrating the acknowledgment message structure used in the bus, FIG. 12a, is a series of logical operations performed by a sending agent along the serial bus of the present invention. The flow diagram shown in FIG.
Figure 2c is a flowchart showing the sequence of logical operations performed simultaneously by agents along the serial bus to detect and receive messages; Figure 14 is a diagram showing the cycle of collision retransmission arbitration; Figure 14 is a schematic diagram of seven various sub-bus structures connected to the local bus of the present invention; Figure 15 is a diagram of the arbitration for accessing the local bus of the present invention; Figure 16 is a timing diagram showing the use of a local bus in standby mode, Figure 17 is a timing diagram showing successive local bus accesses in standby state and object state, and Figure 18 is a local bus block diagram. FIG. 19 is a timing diagram showing transfer and continuation v4 notification; FIG. 19 is a timing diagram showing bus arbitration, pipeline processing 2, and standby fees where the local bus functions under the control of the first request agent; FIG. 20 is a timing diagram showing the local bus Timing diagram illustrating local bus arbitration and waiting initially under the control of the first request agent, 21st
FIG. 22 is a timing diagram showing the local bus mutually exclusive operation under the control of the LOCK signal. 25.26--processing unit, 30--comprehensive memory am, 3s--parallel bus, 3T...0. series bus,
40, 41. --- Male processor, 44... Interface device, 46, Red... 110 logic, 5
0...Message control logic, 54...Memory, 56e--a-carbus, 57...Second processor, 60...Address/data line, 6211
...Agent arbitration line, 64.φ...High priority line,
66◆...bus request line, 68.false...command bus, [i
9**ea bus lock line, 70---different line, 72・
--- System control line, 80 --- Message controller, 82, φam buffer memo IJ, 84 @ --- Bus controller, 86 --- a direct memory access (DMAJ interface, 88 --- FIFO pointer, io
o---” serial message system (fl[,110...
・Bus status detector, 115 ・Φ...Decoder, 11T
...Fist/collision detection line, 124...Serial message control logic, 12B--Fist/serial transmitter, 131. 132.133 ・11-・D-Latch, 136 ・
・・Conflict detector logic circuit, 300 −φ・・Address line,
310・Pot・・Command line, 315・・・・Data line, 32
0... Control line, 325... Bus request line, 330
...Bus confirmation response line, 335...Bus clock line.

Claims (1)

【特許請求の範囲】 (1)複数のデータ処理装置(エージェント)の間でデ
ータを転送するための高速多重バス構造にして、前記エ
ージェントの少くとも1つがローカル並列バスに沿つて
少くとも1つの応答エージェントに結合されている第1
のプロセッサを含む複数のデータ処理装置の間でデータ
を転送するための高速多重バス構造において、 アドレス情報を送るために前記第1のプロセッサと前記
応答エージェントとに結合されるアドレス線と、 指令情報を送るために前記第1のプロセッサと前記応答
エージェントとに結合される指令線と、データを送るた
めに前記第1のプロセッサと前記応答エージェントとに
結合されるデータ線と、待機信号の表明解除がされるま
で以後のバス動作が遅延させられるように、前記待機信
号を発生し、その待機信号を前記ローカルバスに結合さ
れているエージェントへ送るために前記応答エージェン
トに結合される待機信号発生器と を備え、前記応答エージェントと前記第1のプロセッサ
との動作速度の差違とは無関係に、データを前記ローカ
ルバスに沿つて転送できることを特徴とする複数のデー
タ処理装置の間でデータを転送するための高速多重バス
構造。 (2)特許請求の範囲第1項記載のバス構造であつて、
前記ローカルバス上における全ての事象が前記第1のプ
ロセッサの動作速度の整数倍でクロックされるように、
前記ローカルバスは前記第1のプロセッサと前記応答エ
ージェントに結合されるクロック線を含むことを特徴と
するバス構造。 (3)特許請求の範囲第2項記載のバス構造において、
前記第1のプロセッサがアドレス情報とデータ情報を与
えること(要求)の第1のクロックサイクルの間におけ
る前記待機信号の表明が、前記待機信号の表明解除まで
前記アドレスおよびデータ情報(前記要求)のドライブ
を続行することを求めることを特徴とする多重バス構造
。 (4)特許請求の範囲第3項記載のバス構造において、
前記第1のプロセッサの要求の前記第1のクロックサイ
クルの後の前記待機信号の表明の結果として、前記第1
のプロセッサの要求の終了を除く以後の全てのバス動作
が遅延させられることを特徴とする多重バス構造。 (5)特許請求の範囲第4項記載のバス構造において、
前記応答エージェントによる前記待機信号の表明解除に
より、前記表明解除のクロックサイクル中に始まる以後
のバス動作を起すことを可能にすることを特徴とする多
重バス構造。 (6)特許請求の範囲第5項記載のバス構造において、
前記第1のプロセッサの要求は、要求の第1のクロック
サイクル中に待機信号の表明が無い最少限2つのクロッ
クサイクルの間、前記それぞれのアドレス線と前記指令
線上でドライブされることを特徴とする多重バス構造。 (7)特許請求の範囲第5項記載のバス構造において、
前記ローカルバスに結合される第2のプロセッサを含み
、 前記第2のプロセッサは、前記第1のプロセッサへのバ
ス要求信号(BUS REQ)を前記第1のプロセッサ
と前記第2のプロセッサに結合されているバス要求線上
に表明するためのバス要求信号発生器を含み、前記BU
S REQ信号の表明は前記ローカルバスをアクセスす
るための前記第2のプロセッサによる要求を示し、 前記第1のプロセッサは、前記第2のプロセッサへのバ
ス確認応答信号(BUS ACK)を前記第1のプロセ
ッサと前記第2のプロセッサに結合されているバス確認
応答線上に表明するためのバス確認応答信号発生器を含
み、前記BUS ACK信号の表明は前記第1のプロセ
ッサによる前記第2のプロセッサへのバスアクセスの許
可を示すことを特徴とする多重バス構造。 (8)特許請求の範囲第7項記載のバス構造において、
前記BUS REQ信号と前記BUS ACK信号の表
明と、待機信号が存在しないこととにより、前記第2の
プロセッサはアドレス情報と指令情報(要求)をそれぞ
れ前記アドレス線上と前記指令線上に表明できるように
することを特徴とする多重バス構造。 (9)特許請求の範囲第8項記載のバス構造において、
前記応答エージェントは要求の第1のクロックサイクル
後にバス動作を終了することを特徴とする多重バス構造
。 (10)特許請求の範囲第9項記載のバス構造において
、前記応答エージェントは前記応答エージェントが前記
要求に応答できる第1のクロックサイクル中に要求に応
じて異議信号を与える異議信号発生器を含むことを特徴
とする多重バス構造。 (11)特許請求の範囲第10項記載のバス構造におい
て、前記応答エージェントは妥当データを前記データ線
へ与えるべきクロックサイクル中にプロセッサによる要
求に応じて継続異議信号を発生する継続異議信号発生器
を含むことを特徴とするバス構造。 (12)特許請求の範囲第11項記載のバス構造におい
て、前記第1のプロセッサと前記第2のプロセッサは少
くとも1つの応答エージェントへLOCK信号を与える
LOCK信号発生器を含み、前記LOCK信号の表明は
、前記LOCK信号が表明解除されるまで、前記要求プ
ロセッサからのみの要求を全ての応答エージェントが受
けることを求めることを特徴とする多重バス構造。 (13)複数のデータ処理装置(エージェント)の間で
バス構造によりデータを転送する方法にして、少くとも
1つの前記エージェントがローカル並列バスに沿つて少
くとも1つの応答エージェントに結合される第1のプロ
セッサを含んでいる、複数のデータ処理装置(エージェ
ント)の間でバス構造によりデータを転送する方法にお
いて、 前記ローカルバスの前記エージェントの間に結合されて
いるアドレス線における前記応答エージェントのアドレ
スを表すデジタルコードを発生して送る過程と、 前記ローカルバスの前記エージェントの間に結合されて
いる指令線における希望の動作を示す前記応答エージェ
ントへの指令を表すデジタルコードを発生して送る過程
と、 待機信号のための前記エージェントの間に結合されてい
る待機線を監視する過程と、 前記ローカルバスの全てのエージェントの間に結合され
ているデータ線上に、前記指令信号により識別された動
作に従つてデータを受ける過程とを備え、前記待機信号
の検出により、前記待機信号が表明解除をされるまで以
後のバス動作を遅延させることを特徴とする複数のデー
タ処理装置(エージェント)の間でのバス構造によるデ
ータ転送方法。 (14)特許請求の範囲第13項記載の方法において、
前記第1のプロセッサの内部クロック動作に同期してク
ロック信号を発生する過程と、全てのローカルバス動作
が前記第1のプロセッサのクロック信号の周期の整数倍
でタイミングをとられるように前記ローカルバス上で各
エージェントに結合されているクロック線に前記クロッ
ク信号を与える過程とを含むことを特徴とする方法。 (15)特許請求の範囲第14項記載の方法において、
前記第1のプロセッサがアドレスおよびデータ情報を与
えること(要求)の第1のクロックサイクル中に前記待
機信号を表明することは、前記待機信号が表明解除をさ
れるまで前記アドレスおよびデータ情報(要求)のドラ
イブを続行することを要求することを特徴とする方法。 (16)特許請求の範囲第15項記載の方法において、
前記第1のプロセッサの要求の前記第1のクロックサイ
クルの後の前記待機信号の表明により、前記第1のプロ
セッサの要求の終了を除く以後の全てのバス動作が遅延
させられることを特徴とする方法。 (17)特許請求の範囲第16項記載の方法において、
前記応答エージェントによる前記待機信号の表明解除に
より、前記表明解除のクロックサイクル中に始まる以後
のバス動作を起すことを可能にすることを特徴とする方
法。 (18)特許請求の範囲第17項記載の方法において、
前記第1のプロセッサの要求は、要求の第1のクロック
サイクル中に待機信号の表明が無い最少限2つのクロッ
クサイクルの間、前記それぞれのアドレス線と前記指令
線上でドライブされることを特徴とする方法。 (20)特許請求の範囲第19項記載の方法において、
前記応答エージェントは、前記応答エージェントが前記
要求に対して応答できる第1のクロックサイクル中にプ
ロセッサによる要求中の誤りを示す異議信号を発生する
ことを特徴とする方法。 (21)特許請求の範囲第20項記載の方法において、
前記ローカルバスに結合される第2のプロセッサを含み
、 前記第2のプロセッサは、前記第1のプロセッサへのバ
ス要求信号(BUS REQ)を前記第1のプロセッサ
と前記第2のプロセッサに結合されているバス要求線上
に表明するためのバス要求信号発生器を含み、前記BU
S REQ信号の表明は前記ローカルバスをアクセスす
るための前記第2のプロセッサによる要求を示し、 前記第1のプロセッサは、前記第2のプロセッサへのバ
ス確認応答信号(BUS ACK)を前記第1のプロセ
ッサと前記第2のプロセッサに結合されているバス確認
応答線上に表明するためのバス確認応答信号発生器を含
み、前記BUS ACK信号の表明は前記第1のプロセ
ッサによる前記第2のプロセッサへのバスアクセスの許
可を示すことを特徴とする方法。 (22)特許請求の範囲第21項記載の方法において、
前記BUS REQ信号と前記BUS ACK信号の表
明と、待機信号が存在しないこととにより、前記第2の
プロセッサはアドレス情報と指令情報(要求)をそれぞ
れ前記アドレス線上と前記指令線上に表明できるように
することを特徴とする方法。 (23)特許請求の範囲第22項記載の方法において、
前記応答エージェントに、妥当データを前記データ線へ
与えるべきクロックサイクル中にプロセッサによる要求
に応じて、アドレスの誤りを示す継続異議信号を発生す
ることを特徴とする方法。 (24)特許請求の範囲第23項記載の方法において、
前記プロセッサはLOCK信号を発生でき、かつそのL
OCK信号を少くとも1つの応答エージェントへ送り、
前記LOCK信号が表明解除されるまで、前記応答エー
ジェントが前記要求プロセッサからのみ要求を受けるこ
とを要求することを特徴とする方法。
[Scope of Claims] (1) A high-speed multiple bus structure for transferring data between a plurality of data processing devices (agents), wherein at least one of said agents has at least one bus along a local parallel bus. the first coupled to the responding agent
in a high-speed multiplex bus structure for transferring data between a plurality of data processing devices including processors, comprising: an address line coupled to the first processor and the response agent for transmitting address information; and command information. a command line coupled to the first processor and the response agent for sending data; a data line coupled to the first processor and the response agent for sending data; and deassertion of a wait signal. a wait signal generator coupled to the responding agent for generating the wait signal and transmitting the wait signal to agents coupled to the local bus so that subsequent bus operations are delayed until the local bus is activated; and transferring data between a plurality of data processing devices, characterized in that the data can be transferred along the local bus regardless of the difference in operating speed between the response agent and the first processor. High-speed multiplexed bus structure for (2) A bus structure according to claim 1, comprising:
such that all events on the local bus are clocked at an integer multiple of the operating speed of the first processor;
A bus structure wherein the local bus includes a clock line coupled to the first processor and the response agent. (3) In the bus structure according to claim 2,
Assertion of the wait signal during a first clock cycle of the first processor providing address and data information (request) causes the address and data information (request) to be asserted until the wait signal is deasserted. A multiple bus structure characterized by a request to continue the drive. (4) In the bus structure according to claim 3,
As a result of assertion of the wait signal after the first clock cycle of the first processor's request, the first
A multiple bus structure characterized in that all subsequent bus operations except for the termination of a processor's request are delayed. (5) In the bus structure according to claim 4,
A multiplexed bus structure, characterized in that deassertion of the wait signal by the response agent allows subsequent bus operations to occur starting during the clock cycle of the deassertion. (6) In the bus structure according to claim 5,
The first processor request is driven on the respective address line and the command line for a minimum of two clock cycles with no assertion of a wait signal during the first clock cycle of the request. multiplexed bus structure. (7) In the bus structure according to claim 5,
a second processor coupled to the local bus, the second processor coupled to the first processor and the second processor; a bus request signal generator for asserting a bus request line on the BU
Assertion of the S_REQ signal indicates a request by the second processor to access the local bus, and the first processor sends a bus acknowledgment signal (BUS ACK) to the second processor to the first processor. and a bus acknowledge signal generator for asserting on a bus acknowledge line coupled to the processor and the second processor, the assertion of the BUS ACK signal by the first processor to the second processor. A multiple bus structure characterized by indicating permission for bus access. (8) In the bus structure according to claim 7,
The assertion of the BUS REQ and BUS ACK signals and the absence of a wait signal enable the second processor to assert address information and command information (requests) on the address lines and the command lines, respectively. A multiple bus structure characterized by: (9) In the bus structure according to claim 8,
A multiple bus structure, characterized in that said response agent terminates bus operations after the first clock cycle of a request. 10. The bus structure of claim 9, wherein the response agent includes a dissent signal generator for providing a dissent signal on request during a first clock cycle during which the response agent is capable of responding to the request. A multiple bus structure characterized by: (11) The bus structure of claim 10, wherein the response agent is a continuation objection signal generator that generates a continuation objection signal in response to a request by a processor during a clock cycle in which valid data is to be applied to the data line. A bus structure comprising: (12) The bus structure according to claim 11, wherein the first processor and the second processor include a LOCK signal generator that provides a LOCK signal to at least one response agent; A multiplexed bus structure wherein assertion requires all responding agents to accept requests only from the requesting processor until the LOCK signal is deasserted. (13) A method for transferring data between a plurality of data processing devices (agents) by a bus structure, wherein at least one said agent is coupled to at least one responding agent along a local parallel bus. A method for transferring data by a bus structure between a plurality of data processing devices (agents) including processors of the local bus, comprising the steps of: generating and sending a digital code representing a command to the responding agent indicating a desired action on a command line coupled between the agents of the local bus; monitoring a standby line coupled between said agents for a standby signal; and placing a signal on a data line coupled between all agents of said local bus in accordance with the operation identified by said command signal. between a plurality of data processing devices (agents), wherein upon detection of the standby signal, subsequent bus operations are delayed until the standby signal is deasserted. Data transfer method using bus structure. (14) In the method according to claim 13,
generating a clock signal in synchronization with an internal clock operation of the first processor; providing the clock signal to a clock line coupled to each agent above. (15) In the method according to claim 14,
Asserting the wait signal during a first clock cycle of the first processor providing (requesting) address and data information may cause the first processor to assert the wait signal during a first clock cycle of providing (requesting) address and data information (requesting) until the wait signal is deasserted. ) requesting that the drive continue. (16) In the method according to claim 15,
Assertion of the wait signal after the first clock cycle of the first processor's request causes all subsequent bus operations except termination of the first processor's request to be delayed. Method. (17) In the method according to claim 16,
The method characterized in that deassertion of the wait signal by the response agent allows subsequent bus operations to occur starting during the clock cycle of the deassertion. (18) In the method according to claim 17,
The first processor request is driven on the respective address line and the command line for a minimum of two clock cycles with no assertion of a wait signal during the first clock cycle of the request. how to. (20) In the method according to claim 19,
The method of claim 1, wherein the response agent generates a dissent signal indicating an error in a request by a processor during a first clock cycle during which the response agent can respond to the request. (21) In the method according to claim 20,
a second processor coupled to the local bus, the second processor coupled to the first processor and the second processor; a bus request signal generator for asserting a bus request line on the BU
Assertion of the S_REQ signal indicates a request by the second processor to access the local bus, and the first processor sends a bus acknowledgment signal (BUS ACK) to the second processor to the first processor. and a bus acknowledge signal generator for asserting on a bus acknowledge line coupled to the processor and the second processor, the assertion of the BUS ACK signal by the first processor to the second processor. A method comprising: indicating permission for bus access. (22) In the method according to claim 21,
The assertion of the BUS REQ and BUS ACK signals and the absence of a wait signal enable the second processor to assert address information and command information (requests) on the address lines and the command lines, respectively. A method characterized by: (23) In the method according to claim 22,
A method comprising: generating a continuation objection signal in response to a request by a processor to the response agent during a clock cycle in which valid data is to be provided on the data line, indicating an error in an address. (24) In the method according to claim 23,
The processor is capable of generating a LOCK signal and its L
sending an OCK signal to at least one responding agent;
The method of claim 1, wherein the response agent only requests requests from the request processor until the LOCK signal is deasserted.
JP1272185A 1985-01-28 1985-01-28 Fast multi-bus construction and data transfer Pending JPS61175841A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1272185A JPS61175841A (en) 1985-01-28 1985-01-28 Fast multi-bus construction and data transfer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1272185A JPS61175841A (en) 1985-01-28 1985-01-28 Fast multi-bus construction and data transfer

Publications (1)

Publication Number Publication Date
JPS61175841A true JPS61175841A (en) 1986-08-07

Family

ID=11813290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1272185A Pending JPS61175841A (en) 1985-01-28 1985-01-28 Fast multi-bus construction and data transfer

Country Status (1)

Country Link
JP (1) JPS61175841A (en)

Similar Documents

Publication Publication Date Title
US4807109A (en) High speed synchronous/asynchronous local bus and data transfer method
US4570220A (en) High speed parallel bus and data transfer method
US5020020A (en) Computer interconnect system with transmit-abort function
JP3604398B2 (en) High-speed parallel packetized module arbitration control and data bus
US5193149A (en) Dual-path computer interconnect system with four-ported packet memory control
JP3340738B2 (en) Method and apparatus for a parallel packet bus
US4785396A (en) Push-pull serial bus coupled to a plurality of devices each having collision detection circuit and arbitration circuit
EP0303751B1 (en) Interface mechanism for controlling the exchange of information between two devices
US4961140A (en) Apparatus and method for extending a parallel synchronous data and message bus
US5634138A (en) Burst broadcasting on a peripheral component interconnect bus
US4780814A (en) Global serial channel for microcontroller
JPH04230557A (en) Direct memory access controller
CA1299764C (en) Efficient interface for the main store of a data processing system
JPH0642236B2 (en) Device that executes interlock read command message from commander node in responder node
JPH0246974B2 (en)
EP0438538A4 (en) Priority apparatus having programmable node dwell time
US4736365A (en) Method and apparatus for controlling access to an asynchronous communication network
JPH0727501B2 (en) Apparatus and method for generating transactions using a queue
JPS61175841A (en) Fast multi-bus construction and data transfer
JPS61177560A (en) Fast parallel bus construction and data transfer
JPS61175842A (en) Fast series bus contruction and data transfer
JP2933039B2 (en) Communication controller
JPH07109599B2 (en) Information transfer device for processing system
JPH0635840A (en) Multiprocessor system
JP2001229143A (en) Multiprocessor system