JPH06314239A - Processor system - Google Patents

Processor system

Info

Publication number
JPH06314239A
JPH06314239A JP5102197A JP10219793A JPH06314239A JP H06314239 A JPH06314239 A JP H06314239A JP 5102197 A JP5102197 A JP 5102197A JP 10219793 A JP10219793 A JP 10219793A JP H06314239 A JPH06314239 A JP H06314239A
Authority
JP
Japan
Prior art keywords
address
information
node
storage device
cell
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
JP5102197A
Other languages
Japanese (ja)
Inventor
Haruyuki Nakayama
晴之 中山
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP5102197A priority Critical patent/JPH06314239A/en
Publication of JPH06314239A publication Critical patent/JPH06314239A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To provide a system whose performance does not depend upon the number of processors or memory capacity. CONSTITUTION:In the system provided with the processors 11/12 provided with a cache memory 14, two or more storage devices 16 to 19, and nodes 1 to 9, the nodes 2/3 send a read-out instruction to a transmission line at the time of reading out information, and each corresponding node 4 to 7 sends the information stored in the storage device to the transmission line when it receives the read-out instruction, and each node 2/3 stores the read out information in a cache memory, and when another node sends the read-out instruction to a corresponding address, it sends the information stored in the cache memory corresponding to the address to the node having issued the read-out instruction.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、プロセッサと、メモリ
および該メモリを制御するメモリコントローラと、I/
O装置および該I/O装置を制御するI/Oコントロー
ラなどからなるプロセッサシステムに係り、そのシステ
ム内の情報の授受や更新の方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a processor, a memory, a memory controller for controlling the memory, and an I / O.
The present invention relates to a processor system including an O device and an I / O controller that controls the I / O device, and relates to a method of transmitting and receiving information in the system and a method of updating the information.

【0002】[0002]

【従来の技術】現在、プロセッサシステムには、高速
化、アドレス空間やメモリ容量の大容量化、あるいは高
信頼化(多重化)等の様々な要望がある。従来の代表的
なプロセッサシステムとしては、Todd Lynch:"The SPAR
Csystem-600 Series Multiprocessors",1992 IEEE COMP
CONに記載されている技術がある。該従来技術では、複
数のプロセッサとメモリコントローラとI/Oバスコン
トローラとをマルチプロセッサバスに接続している。メ
モリコントローラは、磁気ディスク装置などのメモリを
接続して各プロセッサなどからのメモリへのアクセスを
制御し、I/Oバスコントローラは、I/Oバスを接続
し、I/Oバスに接続するI/O装置へのアクセスを制
御する。各プロセッサは、キャッシュメモリをそれぞれ
備えてることができ、メモリからアドレスを指示して読
みだしたデータをキャッシュメモリに格納し、以後、該
アドレスのデータは、キャッシュメモリに対して読み書
きすることにより高速に処理を行っている。このキャッ
シュメモリに格納しているアドレスについて、他のプロ
セッサやコントローラからメモリにアクセスがあると、
キャッシュメモリに格納している該アドレスのデータ
と、メモリに格納している該アドレスのデータとが、一
致していない場合があるので、一致していることを保証
するために、各プロセッサは、マルチプロセッサバス上
を転送されるデータを監視する(以下、この監視動作を
スヌープという)。このスヌープにより、他のプロセッ
サやコントローラからメモリの当該アドレスにアクセス
があると、各プロセッサは、キャッシュメモリに格納し
ている当該アドレスのデータを他のプロセッサ等に転送
するか、もしくは、他のプロセッサ等のメモリへのアク
セス前に、キャッシュメモリに格納している当該アドレ
スのデータをメモリに転送して格納する。プロセッサ
は、キャッシュメモリに格納している当該アドレスのデ
ータの転送後に、キャッシュメモリからの当該アドレス
のデータを消去する。これによりキャッシュメモリの管
理を行うものである。
2. Description of the Related Art At present, there are various demands for a processor system such as high speed, large address space and memory capacity, or high reliability (multiplexing). A typical conventional processor system is Todd Lynch: "The SPAR
Csystem-600 Series Multiprocessors ", 1992 IEEE COMP
There are technologies described in CON. In the prior art, a plurality of processors, a memory controller and an I / O bus controller are connected to a multiprocessor bus. The memory controller connects a memory such as a magnetic disk device and controls access to the memory from each processor, and the I / O bus controller connects the I / O bus and the I / O bus. Control access to I / O devices. Each processor can be provided with a cache memory, and the data read out by designating an address from the memory is stored in the cache memory. Thereafter, the data at the address is read and written to the cache memory for high speed. Is being processed. Regarding the address stored in this cache memory, if another processor or controller accesses the memory,
The data at the address stored in the cache memory and the data at the address stored in the memory may not match. Therefore, in order to guarantee that they match, each processor The data transferred on the multiprocessor bus is monitored (hereinafter, this monitoring operation is called snoop). By this snoop, when another processor or controller accesses the address of the memory, each processor transfers the data of the address stored in the cache memory to the other processor, or the other processor. Before accessing the memory such as the above, the data of the address stored in the cache memory is transferred to and stored in the memory. The processor erases the data of the address from the cache memory after transferring the data of the address stored in the cache memory. This manages the cache memory.

【0003】しかし、該従来技術のバス結合のシステム
では、一つのバス上に収容されるプロセッサやメモリコ
ントローラ、I/Oコントローラの数が制限される。こ
れは、バスの伝搬遅延による影響があるためにバスの長
さが制限され、結果としてプロセッサ等の数が制限され
る。このため、バスの伝送速度を高速化すると、プロセ
ッサ等の数はさらに制限されることになり、バスの伝送
速度を高速化することができない。そのために、大容量
のメモリを収容しようとすると、メモリコントローラを
数多く設けることができないのでメモリの集積度を向上
しなければならない。また、I/Oコントローラが制御
するI/O装置の収容数を多くしようとすると、I/O
バスを多階層にする必要があり、これはI/O装置への
アクセス速度を著しく落とすことになる。さらに、メモ
リ、I/O装置まで含めた完全な多重化システムを構築
する場合、データ伝送速度やメモリ容量、I/O装置の
収容数を犠牲にしなければならないことが多い。
However, in the conventional bus-coupled system, the number of processors, memory controllers, and I / O controllers accommodated on one bus is limited. Since this is affected by the propagation delay of the bus, the length of the bus is limited, and as a result, the number of processors and the like is limited. Therefore, if the bus transmission speed is increased, the number of processors and the like is further limited, and the bus transmission speed cannot be increased. Therefore, if a large-capacity memory is to be accommodated, a large number of memory controllers cannot be provided, so the degree of memory integration must be improved. Also, if an attempt is made to increase the number of I / O devices controlled by the I / O controller, I / O
The buses need to be multi-tiered, which significantly slows down access speed to I / O devices. Furthermore, when constructing a complete multiplexing system including memory and I / O devices, it is often necessary to sacrifice data transmission speed, memory capacity, and the number of I / O devices accommodated.

【0004】また、他の問題点は、一つのメモリコント
ローラに収容されているメモリへのアクセスは、一つの
プロセッサしかアクセスアクセスできないので、同時に
複数の装置からアクセスすることができず、アドレスが
重複していなくてもアクセス競合が発生してしまう。さ
らに、バス結合のシステムでは、スケーラブルなシステ
ムが構築しにくい。
Another problem is that since the memory accommodated in one memory controller can be accessed only by one processor, it cannot be accessed by a plurality of devices at the same time, and the addresses are duplicated. Access conflict will occur even if it is not done. Furthermore, it is difficult to build a scalable system with a bus-coupled system.

【0005】上記問題を解決するために、リング状のプ
ロセッサシステムを構成することができる。リング状の
プロセッサシステムとしては、David B. Gustavson:"Th
e Scalable Coherent Interface and Related Standard
s Projects",1992 IEEE Microに記載されている技術が
ある。該従来技術では、複数のプロセッサとメモリコン
トローラとI/Oコントローラとを単方向伝送のリング
に接続し、ディレクトリを用いてキャッシュメモリの管
理を行うものである。ディレクトリを用いたキャッシュ
メモリの管理とは、複数のキャッシュメモリに同一アド
レスのデータを格納することを許容するかわりに、同一
アドレスのデータを備えるキャッシュメモリやメモリの
識別番号をディレクトリとして備えておく。各プロセッ
サでは、各データの一致性を保証するためにキャッシュ
メモリのデータの更新の度に、当該データのアドレスを
持つキャッシュメモリおよびメモリに対して更新を行
う。
To solve the above problem, a ring-shaped processor system can be constructed. For a ring-shaped processor system, see David B. Gustavson: "Th
e Scalable Coherent Interface and Related Standard
s Projects ", 1992 IEEE Micro. In the prior art, a plurality of processors, a memory controller, and an I / O controller are connected to a ring for unidirectional transmission, and a directory is used to store the cache memory. The management of the cache memory using the directory is the identification number of the cache memory or the memory having the data of the same address, instead of allowing the data of the same address to be stored in a plurality of cache memories. Each processor updates the cache memory having the address of the data and the memory each time the data in the cache memory is updated in order to guarantee the consistency of each data.

【0006】[0006]

【発明が解決しようとする課題】しかし、上記リング状
に接続したプロセッサシステムでは、キャッシュメモリ
のデータの更新の度に、当該データのアドレスを持つキ
ャッシュメモリおよびメモリに対して更新を行うので、
キャッシュ管理のための通信がリングの実効的な伝送性
能を低下させてしまう。
However, in the processor system connected in the ring shape, each time the data in the cache memory is updated, the cache memory having the address of the data and the memory are updated.
The communication for cache management deteriorates the effective transmission performance of the ring.

【0007】また、従来のバス結合のシステムにおける
スヌープの機能をリング状に接続したプロセッサシステ
ムに適用させる場合には、伝送路を監視する際に、バス
上を転送するデータの監視のように、全ての転送データ
を監視することができないのでその処理は複雑となる。
例えば、リング状に接続したプロセッサシステムでは、
あるプロセッサからつぎに接続されるメモリコントロー
ラへのアクセスは、他のプロセッサでは監視することが
できない場合があるので、当該他のプロセッサの備える
キャッシュメモリに格納されているデータへのアクセス
のときに、一致性が保証できなくなる恐れがある。
Further, when the snoop function in the conventional bus-coupled system is applied to a processor system connected in a ring shape, when monitoring a transmission line, as in monitoring data transferred on the bus, The processing is complicated because it is not possible to monitor all transfer data.
For example, in a processor system connected in a ring,
The access from one processor to the memory controller to be connected next may not be monitored by another processor. Therefore, when accessing the data stored in the cache memory of the other processor, Consistency may not be guaranteed.

【0008】本発明の目的は、プロセッサ等の装置数に
制限がない、キャッシュメモリのデータの一致性を保証
したプロセッサシステムを提供することにある。
An object of the present invention is to provide a processor system which guarantees the consistency of data in the cache memory without any limitation on the number of devices such as processors.

【0009】[0009]

【課題を解決するための手段】本発明は、上記課題を解
決するために、情報を記憶するキャッシュメモリを各々
備える複数のプロセッサと、該複数のプロセッサの各々
が読み書きできるアドレス空間を割り当てた1または2
以上の記憶装置と、前記複数のプロセッサと前記記憶装
置とのそれぞれに対応して設けられるノードとを有する
プロセッサシステムにおいて、該各々のノードは、伝送
路により他のノードとリング状に接続され、前記記憶装
置に対応する各々のノードは、情報に付加されたアドレ
スを監視し、該アドレスが記憶装置に割り当てられたア
ドレスと一致するときに該情報を受信情報とする受信手
段と、該受信手段で受信した受信情報に基づき、該受信
情報が読み出し指示の場合には、該読み出し指示を発行
したノード宛に該アドレスに対応する当該記憶装置に記
憶している情報を送出し、該受信情報が書き込み指示の
場合には、該アドレスに対応する当該記憶装置に該受信
情報を書き込む処理を行う転送処理手段とを備え、前記
複数のプロセッサに対応する各々のノードは、前記プロ
セッサが前記アドレスを指示して当該アドレスに対応す
る情報の読み出し指示により読みだした際に、読みだし
た情報を該プロセッサに備えるキャッシュメモリに格納
し、該キャッシュメモリに格納する情報のアドレスを管
理する管理手段と、前記記憶装置のアドレスおよび当該
アドレスへの読み出し指示/書き込み指示を含む情報を
送出する送出手段と、情報に付加されたアドレスを監視
し、該アドレスが前記管理手段により管理するアドレス
と一致するときに該情報を受信情報とする受信手段と、
該受信手段で受信した受信情報に基づき、該受信情報が
読み出し指示の場合には、前記記憶装置に対応するノー
ドからの当該アドレスの読み出し情報の代わりに、該ア
ドレスに対応する当該キャッシュメモリに記憶している
情報を前記読み出し指示を発行したノード宛に送出し、
該受信情報が書き込み指示の場合には、該アドレスに対
応する当該キャッシュメモリに該受信情報を書き込む処
理を行う転送処理手段とを備える。
In order to solve the above problems, the present invention allocates a plurality of processors each provided with a cache memory for storing information and an address space in which each of the plurality of processors can read and write. Or 2
In a processor system having the above storage device and a node provided corresponding to each of the plurality of processors and the storage device, each node is connected to another node in a ring shape by a transmission line, Each node corresponding to the storage device monitors an address added to the information, and when the address matches the address assigned to the storage device, the reception means that receives the information and the reception means. If the received information is a read instruction based on the received information received in step 1, the information stored in the storage device corresponding to the address is sent to the node that issued the read instruction, and the received information is In the case of a write instruction, a transfer processing unit that writes the received information in the storage device corresponding to the address is provided, and the plurality of processors Each corresponding node stores the read information in the cache memory provided in the processor when the processor instructs the address and reads the information corresponding to the address by the read instruction, and the cache memory stores the read information. Management means for managing the address of the information to be stored in the storage device, sending means for sending the information including the address of the storage device and the read / write instruction to the address, and the address added to the information to monitor the address. Receiving means that uses the information as received information when the address matches the address managed by the managing means,
If the received information is a read instruction based on the received information received by the receiving means, instead of the read information of the address from the node corresponding to the storage device, the information is stored in the cache memory corresponding to the address. Sending information to the node that issued the read instruction,
When the received information is a write instruction, there is provided a transfer processing unit that performs a process of writing the received information in the cache memory corresponding to the address.

【0010】前記複数のプロセッサに対応する各々のノ
ードの転送処理手段は、前記記憶装置に対応するノード
からの当該アドレスの読み出し情報の代わりに、該アド
レスに対応する当該キャッシュメモリに記憶している情
報を前記読み出し指示を発行したノード宛に送出する際
に、前記記憶装置に対応するノードが前記読み出し指示
を受信する前に、該読み出し指示を受信した場合には、
該アドレスに対応する当該キャッシュメモリに記憶して
いる情報を送出し、前記記憶装置に対応するノードにお
いて前記読み出し指示を受信しないように受信フラグを
当該情報にセットし、前記記憶装置に対応するノードに
おいて前記読み出し指示を受信した後に、該アドレスに
対応する前記記憶装置に記憶している情報を、前記読み
出し指示を発行したノードが受信しないように受信フラ
グを情報にセットし、該アドレスに対応する当該キャッ
シュメモリに記憶している当該情報を送出し、前記複数
のプロセッサおよび記憶装置に対応する各々のノードの
受信手段は、前記受信情報に前記受信フラグがセットさ
れていることを検出した場合には、当該受信情報を受信
情報としないことができる。
The transfer processing means of each node corresponding to the plurality of processors stores in the cache memory corresponding to the address instead of the read information of the address from the node corresponding to the storage device. When sending information to the node that issued the read instruction, if the read instruction is received before the node corresponding to the storage device receives the read instruction,
The information stored in the cache memory corresponding to the address is transmitted, a reception flag is set in the information so that the node corresponding to the storage device does not receive the read instruction, and the node corresponding to the storage device is set. In step 1, after receiving the read instruction, the reception flag is set in the information so that the node that issued the read instruction does not receive the information stored in the storage device corresponding to the address, and the information corresponding to the address is set. When the reception means of each node corresponding to the plurality of processors and the storage device sends out the information stored in the cache memory and detects that the reception flag is set in the reception information, May not use the received information as the received information.

【0011】また、前記ノードのうちの一つは、前記伝
送路上を伝送する情報を管理するマスタノードであり、
該マスタノードは、該情報を受信時に、該情報をマスタ
ノードで受信したことを示すマスタノード受信情報を付
加し、該マスタノード受信情報が付加されている場合に
は、該情報を廃棄する。
Further, one of the nodes is a master node that manages information transmitted on the transmission line,
When the master node receives the information, the master node adds the master node reception information indicating that the master node has received the information, and when the master node reception information is added, discards the information.

【0012】前記マスタノードは、あらかじめ定めた固
定長のセルを生成して前記伝送路に送出し、前記送信手
段は、前記伝送路上の前記セルを検出し、前記情報を送
出する場合には、該セルが使用されていないときに、該
セルのあらかじめ定められた位置に、前記読み書きする
前記記憶装置のアドレス、該セルが使用中であることを
示す情報および送信情報を付加して送出することができ
る。または、前記マスタノードは、あらかじめ定めた情
報送出を許可するためのトークンを生成して前記伝送路
に送出し、前記送信手段は、前記情報を送出する場合に
は、前記伝送路上の前記トークンを検出して獲得し、送
出する情報の容量を示す情報と、読み書きする前記記憶
装置のアドレスおよび送信情報を付加して送出する。
The master node generates a cell having a predetermined fixed length and sends it to the transmission line, and the transmitting means detects the cell on the transmission line and sends the information. When the cell is not in use, the address of the storage device for reading and writing, information indicating that the cell is in use, and transmission information are added to a predetermined position of the cell and transmitted. You can Alternatively, the master node generates a token for permitting transmission of a predetermined information and transmits it to the transmission path, and the transmission means, when transmitting the information, transmits the token on the transmission path. Information indicating the capacity of the information to be detected, acquired, and transmitted, the address of the storage device for reading and writing, and the transmission information are added and transmitted.

【0013】さらに、前記複数のプロセッサは、あらか
じめ優先順位が割り振られ、前記複数のプロセッサに対
応する各々のノードにおいて、前記管理手段は、当該優
先順位を保持し、前記送信手段は、前記記憶装置のアド
レスを付加して書き込み要求を送出し、前記転送処理手
段は、当該送信手段が書き込み要求送出時から、該書き
込み要求に受信したことを示す情報が付加されている受
信情報を受信するまでに、他のノードから前記アドレス
に書き込み要求が送出された場合には、前記管理手段の
優先順位を参照し、自ノードが他のノードより優先順位
が高い場合には、他のノードから要求を再送するように
指示し、前記優先順位が低い場合には、他のノードから
前記アドレスに書き込み要求を受信情報として書き込み
処理を行うことができる。
Furthermore, priorities are assigned to the plurality of processors in advance, and in each node corresponding to the plurality of processors, the management means holds the priorities, and the transmission means includes the storage device. The write request is sent with the address of the write request added, and the transfer processing means receives the received information to which the information indicating that the write request has been received is received from the time when the write request is sent by the transmission means. , If a write request is sent to the address from another node, the priority of the management means is referred to, and if the own node has a higher priority than the other node, the request is retransmitted from the other node. If the priority is low, a write request from another node to the address as a received information may be performed as write information. Kill.

【0014】また、前記複数のプロセッサは、あらかじ
め優先順位が割り振られ、前記複数のプロセッサに対応
する各々のノードにおいて、前記管理手段は、当該優先
順位を保持し、前記送信手段は、前記記憶装置のアドレ
スを付加して書き込み許可要求を送出し、前記転送処理
手段は、当該送信手段が書き込み許可要求送出時から、
該書き込み許可要求に受信したことを示す情報が付加さ
れている受信情報を受信するまでに、他のノードから前
記アドレスに書き込み許可要求が送出された場合には、
前記管理手段の優先順位を参照し、自ノードが他のノー
ドより優先順位が高い場合には、他のノードから書き込
み許可要求を許可しないとして指示し、前記優先順位が
低い場合には、他のノードから前記アドレスに書き込み
許可要求を受信情報として書き込みを許可し、前記送信
手段は、書き込みを許可された場合に、前記記憶装置の
アドレスを付加して書き込み要求を送出ようにしてもよ
い。
Further, the plurality of processors are assigned priorities in advance, and in each node corresponding to the plurality of processors, the management means holds the priorities, and the transmission means holds the storage device. The address is added to send the write permission request, and the transfer processing means, when the sending means sends the write permission request,
If the write permission request is sent to the address from another node by the time the reception information added with the information indicating that the write permission request is received is received,
Referring to the priority of the management means, if the own node has a higher priority than other nodes, it is instructed that the write permission request is not permitted from the other node, and if the priority is low, another Writing may be permitted from the node to the address using the write permission request as reception information, and the transmission unit may add the address of the storage device and send the write request when the writing is permitted.

【0015】前記管理手段は、自己の転送処理手段によ
り前記アドレスに対応する当該キャッシュメモリに記憶
している情報を送出した場合に、自己の管理している当
該アドレスを消去する。これにより、記憶装置のアドレ
スに対応する情報は、プロセッサシステム内の一つのキ
ャッシュメモリにのみ許可することができる。
When the transfer processing means sends out the information stored in the cache memory corresponding to the address, the managing means erases the address managed by itself. As a result, the information corresponding to the address of the storage device can be granted to only one cache memory in the processor system.

【0016】[0016]

【作用】各々のノードは、伝送路により他のノードと接
続されてリング状に構成されるので、収容するプロセッ
サやメモリコントローラ、I/Oコントローラの数に制
限がない。管理手段は、前記プロセッサが前記記憶装置
にアドレスを指示して当該アドレスの情報を読みだした
際に、読みだした情報を該プロセッサに備えるキャッシ
ュメモリに格納し、該キャッシュメモリに格納する情報
のアドレスを管理する。
Since each node is connected to another node by a transmission line and configured in a ring shape, there is no limit to the number of processors, memory controllers, and I / O controllers to be accommodated. When the processor instructs an address to the storage device and reads the information of the address, the management unit stores the read information in a cache memory provided in the processor, and stores the information to be stored in the cache memory. Manage addresses.

【0017】前記複数のプロセッサに対応する各々のノ
ードは、記憶装置の情報を読み書きする場合には、送出
手段が前記記憶装置のアドレスおよび当該アドレスへの
読み出し指示/書き込み指示を含む情報を送出する。送
出された情報は、他のノードの受信手段において受信さ
れる。受信手段は、情報に付加されたアドレスを監視
し、該アドレスが前記管理手段により管理するアドレス
と一致するときに該情報を受信情報とする。転送処理手
段は、受信情報が読み出し指示の場合には、前記記憶装
置に対応するノードからの当該アドレスの読み出し情報
の代わりに、該アドレスに対応する当該キャッシュメモ
リに記憶している情報を前記読み出し指示を発行したノ
ード宛に送出し、該受信情報が書き込み指示の場合に
は、該アドレスに対応する当該キャッシュメモリに該受
信情報を書き込む処理を行う。
In each of the nodes corresponding to the plurality of processors, when the information in the storage device is read and written, the sending means sends the information including the address of the storage device and the read / write instruction to the address. . The transmitted information is received by the receiving means of another node. The receiving means monitors the address added to the information, and when the address matches the address managed by the managing means, the information is used as the received information. When the received information is a read instruction, the transfer processing means reads the information stored in the cache memory corresponding to the address instead of the read information of the address from the node corresponding to the storage device. When the instruction is sent to the node that issued the instruction, and the received information is a write instruction, a process of writing the received information in the cache memory corresponding to the address is performed.

【0018】すなわち、管理手段により、キャッシュメ
モリに格納するアドレスを管理し、受信手段で、当該管
理手段で管理するアドレスと同一のアドレスに対する読
み書きがあった場合には、当該キャッシュメモリに格納
する情報を出力する。また、記憶装置に接続するノード
から当該アドレスに対応する読み出し情報が送出された
場合に、当該管理手段で管理するアドレスと同一のアド
レスであるときには、この情報を受信情報として処理
し、当該キャッシュメモリに格納する情報を出力する。
That is, the management means manages the address stored in the cache memory, and when the reception means reads / writes the same address as the address managed by the management means, the information stored in the cache memory. Is output. When the read information corresponding to the address is sent from the node connected to the storage device and the address is the same as the address managed by the managing means, this information is processed as the received information and the cache memory Output the information to be stored in.

【0019】このように処理することにより、伝送路に
収容する装置の数の増減に応じて、伝送路上を周回させ
るパケットの数および伝送路の伝送速度を増減させれ
ば、プロセッサ,メモリ,およびI/O装置のI/Oス
ループットは、それほど変化しない。リング型のシステ
ムは、バス型のシステムよりも伝送路の伝送速度を増加
させ易いので、I/Oスループットが、プロセッサ台
数、メモリ容量、I/O装置数に依存しないシステムを
容易に構築できる。
By performing the processing as described above, if the number of packets circulating on the transmission line and the transmission speed of the transmission line are increased or decreased in accordance with the increase or decrease in the number of devices accommodated in the transmission line, the processor, memory, and The I / O throughput of the I / O device does not change much. Since the ring type system is easier to increase the transmission speed of the transmission line than the bus type system, it is possible to easily construct a system in which the I / O throughput does not depend on the number of processors, the memory capacity, and the number of I / O devices.

【0020】また、ブロードキャスト伝送や他の装置間
の伝送を常に監視するので、メモリやI/O装置まで含
めた多重化システムを容易に構築できる。
Further, since the broadcast transmission and the transmission between other devices are constantly monitored, it is possible to easily construct a multiplexing system including a memory and an I / O device.

【0021】更に、リング上の伝送路に収容するメモリ
コントローラやI/Oコントローラの数に制限がないの
で、アドレス範囲の異なるメモリコントローラやI/O
コントローラを多数接続することにより、異なるアドレ
スへのアクセスの独立性の高いシステムを構築できる。
更に、システムの物理的な規模にも制限が無いので、ス
ケーラブルなシステムを提供することができる。更に、
ディレクトリをもたないので、ディレクトリ検索のため
の通信が発生しない。
Furthermore, since there is no limit to the number of memory controllers and I / O controllers that can be accommodated in the transmission path on the ring, memory controllers and I / Os with different address ranges can be used.
By connecting multiple controllers, it is possible to build a system with highly independent access to different addresses.
Further, since the physical scale of the system is not limited, it is possible to provide a scalable system. Furthermore,
Since it does not have a directory, communication for directory search does not occur.

【0022】[0022]

【実施例】以下、本発明の実施例を詳細に説明する。EXAMPLES Examples of the present invention will be described in detail below.

【0023】図1は、本発明を適用したマルチプロセッ
サシステムである。図1において、本実施例のマルチプ
ロセッサシステムは、情報を記憶するキャッシュメモリ
を備える複数のプロセッサ11・12と、該複数のプロ
セッサの各々が読み書きできるアドレス空間を割り当て
た1または2以上の記憶装置16・17・18・19
と、前記複数のプロセッサと前記記憶装置とのそれぞれ
に対応して設けられ、他の装置との通信制御をするノー
ド1〜9とを有する。各々のノードは、短方向の伝送路
10により他のノードと接続されてリング状に構成され
る。ノード1および2は、キャッシュ制御機能を持ち、
ノード1はプロセッサ11およびキャッシュ13に接続
され、ノード2はプロセッサ12およびキャッシュ14
にそれぞれ接続されている。前記記憶装置に対応する各
々のノードは、情報に付加されたアドレスを監視し、該
アドレスが記憶装置に割り当てられたアドレスと一致す
るときに該情報を受信情報とする受信手段と、該受信手
段で受信した受信情報に基づき、該受信情報が読み出し
指示の場合には、該読み出し指示を発行したノード宛に
該アドレスに対応する当該記憶装置に記憶している情報
を送出し、該受信情報が書き込み指示の場合には、該ア
ドレスに対応する当該記憶装置に該受信情報を書き込む
処理を行う転送処理手段とを備え、前記複数のプロセッ
サに対応する各々のノードは、前記記憶装置のアドレス
および当該アドレスへの読み出し指示/書き込み指示を
含む情報を送出する送出手段と、前記プロセッサが前記
アドレスを指示して当該アドレスに対応する情報の読み
出し指示により読みだした際に、読みだした情報を該プ
ロセッサに備えるキャッシュメモリに格納し、該キャッ
シュメモリに格納する情報のアドレスを管理する管理手
段と、情報に付加されたアドレスを監視し、該アドレス
が前記管理手段により管理するアドレスと一致するとき
に該情報を受信情報とする受信手段と、該受信手段で受
信した受信情報に基づき、該受信情報が読み出し指示の
場合には、前記記憶装置に対応するノードからの当該ア
ドレスの読み出し情報の代わりに、該アドレスに対応す
る当該キャッシュメモリに記憶している情報を前記読み
出し指示を発行したノード宛に送出し、該受信情報が書
き込み指示の場合には、該アドレスに対応する当該キャ
ッシュメモリに該受信情報を書き込む処理を行う転送処
理手段とを備える。ノード3は、システム全体を制御す
る機能を持ち、監視装置15と接続されている。このノ
ード3を、以下マスタノードと呼ぶ。ノードのうちの一
つは、前記伝送路上を伝送する情報を管理するマスタノ
ードとする。マスタノードは、情報を受信時に、該情報
をマスタノードで受信したことを示すマスタノード受信
情報を付加し、該マスタノード受信情報が付加されてい
る場合には、該情報を廃棄する機能を備える。また、ノ
ード4〜7は、記憶装置を制御するメモリ制御機能を持
ち、メモリ16〜19にそれぞれ接続されている。ノー
ド8および9は、入出力装置(以下、I/Oという)を
制御するI/O制御機能を持ち、ノード8はLANコン
トローラ20を介してLAN21と、ノード9はI/O
バス22を介してディスク23および24とそれぞれ接
続されている。
FIG. 1 shows a multiprocessor system to which the present invention is applied. In FIG. 1, the multiprocessor system according to the present embodiment includes a plurality of processors 11 and 12 each having a cache memory for storing information, and one or more storage devices to which an address space readable and writable by each of the plurality of processors is assigned. 16, 17, 18, 19
And nodes 1 to 9 provided corresponding to each of the plurality of processors and the storage device and controlling communication with other devices. Each node is connected to another node by a transmission line 10 in the short direction to form a ring. Nodes 1 and 2 have a cache control function,
The node 1 is connected to the processor 11 and the cache 13, and the node 2 is connected to the processor 12 and the cache 14.
Respectively connected to. Each node corresponding to the storage device monitors an address added to the information, and when the address matches the address assigned to the storage device, the reception means that receives the information and the reception means. If the received information is a read instruction based on the received information received in step 1, the information stored in the storage device corresponding to the address is sent to the node that issued the read instruction, and the received information is In the case of a write instruction, a transfer processing unit that writes the received information in the storage device corresponding to the address is provided, and each node corresponding to the plurality of processors has an address of the storage device and Sending means for sending information including a read instruction / write instruction to an address, and the processor instructing the address to send information corresponding to the address. When read by the read instruction of, the read information is stored in the cache memory provided in the processor, and the management means for managing the address of the information stored in the cache memory and the address added to the information are monitored. If the received information is a read instruction based on the receiving means that receives the information when the address matches the address managed by the managing means, and the receiving information received by the receiving means, Instead of the read information of the address from the node corresponding to the storage device, the information stored in the cache memory corresponding to the address is sent to the node that issued the read instruction, and the received information is the write instruction. In the case of, a transfer processing means for writing the received information in the cache memory corresponding to the address Provided. The node 3 has a function of controlling the entire system, and is connected to the monitoring device 15. Hereinafter, this node 3 will be referred to as a master node. One of the nodes is a master node that manages information transmitted on the transmission path. The master node has a function of adding, when receiving the information, master node reception information indicating that the information has been received by the master node, and discarding the information when the master node reception information is added. . Further, the nodes 4 to 7 have a memory control function of controlling the storage device and are connected to the memories 16 to 19, respectively. The nodes 8 and 9 have an I / O control function of controlling an input / output device (hereinafter, referred to as I / O). The node 8 is a LAN 21 via a LAN controller 20, and the node 9 is an I / O.
The disks 23 and 24 are connected via a bus 22, respectively.

【0024】各ノードには、ノードを識別するためのノ
ードIDを割り当てる。この割り当ては予め固定してお
いても良いし、また適宜マスタノード3が指示しても良
い。表1に、ノードIDの割当ての一例を示す。
A node ID for identifying the node is assigned to each node. This allocation may be fixed in advance, or may be appropriately instructed by the master node 3. Table 1 shows an example of node ID allocation.

【0025】[0025]

【表1】 [Table 1]

【0026】表1に示すように、本実施例においては、
ノード1〜9の順に、10H,11H,01H,20
H,21H,22H,23H,31Hおよび30Hを割
り当てる。伝送路の伝送方向とは無関係に、また非連続
的に割り当てることができる。また、表1では示してい
ないが、一つのノードに複数のIDを割り当てても良
い。
As shown in Table 1, in this embodiment,
Nodes 1 to 9 in order of 10H, 11H, 01H, 20
Assign H, 21H, 22H, 23H, 31H and 30H. It can be assigned regardless of the transmission direction of the transmission path and also discontinuously. Although not shown in Table 1, multiple IDs may be assigned to one node.

【0027】また、メモリ制御機能を持つノード4〜7
とI/O制御機能を持つノード8および9とが制御する
記憶装置には、あらかじめアドレス範囲を割り当てる。
(本実施例のシステムは、メモリマップドI/Oのシス
テムである。)この割り当ても予め固定しておいても良
いし、また適宜マスタノード3が行っても良い。表1に
一例を示す。表1に示すように、ノード4〜9の順に、
00000000H〜00FFFFFFH,01000
000H〜01FFFFFFH,02000000H〜
027FFFFFH,02800000H〜02FFF
FFFH,F0000000H〜F0000FFFHと
FE000000H〜FE007FFFH、および、F
0001000H〜F0001FFFHとFE0000
00H〜FE007FFFHを割り当てる。このアドレ
ス範囲の割当ては、物理的なメモリ容量とは無関係に論
理的に、また、非連続的に割り当てることができる。ま
た、ノード8および9に示したように重複したアドレス
範囲を割り当てても良い。これにより、複数のアドレス
に対して情報を同時転送するブロードキャスト転送を可
能にする。
Nodes 4 to 7 having a memory control function
Address ranges are assigned in advance to the storage devices controlled by the nodes 8 and 9 having the I / O control function.
(The system of this embodiment is a memory-mapped I / O system.) This allocation may be fixed in advance, or may be appropriately performed by the master node 3. Table 1 shows an example. As shown in Table 1, in the order of nodes 4 to 9,
00000000H to 00FFFFFFH, 01000
000H ~ 01FFFFFFH, 02000000H ~
027FFFFFH, 02800000H to 02FFF
FFFH, F0000000H to F0000FFFH and FE000000H to FE007FFFH, and F
0001000H ~ F0001FFFH and FE0000
00H to FE007FFFH are assigned. This address range can be assigned logically and discontinuously regardless of the physical memory capacity. Also, overlapping address ranges may be assigned as shown in nodes 8 and 9. This enables broadcast transfer to transfer information simultaneously to a plurality of addresses.

【0028】キャッシュ制御機能を持つノード1および
2には、キャッシャブルなアドレス範囲を設定する。こ
の設定も予め固定しておいても良いし、また適宜マスタ
ノード3やプロセッサ11または12が行っても良い。
表1に一例を示す。ノード1および2共に、00000
000H〜EFFFFFFFHを設定した。キャッシュ
がダイレクトマッピングの場合、キャッシャブルなアド
レス空間の各ノードへの割り当ては、キャッシュサイズ
を考慮して割り当てるとシステムを効率良く運用するこ
とができる。表2そのに一例を示す。
A cacheable address range is set for the nodes 1 and 2 having the cache control function. This setting may be fixed in advance, or may be appropriately set by the master node 3 or the processor 11 or 12.
Table 1 shows an example. 00000 for both nodes 1 and 2
000H to EFFFFFFFH was set. When the cache is a direct mapping, the cacheable address space is allocated to each node in consideration of the cache size, so that the system can be operated efficiently. Table 2 shows an example.

【0029】[0029]

【表2】 [Table 2]

【0030】表2において、キャッシュサイズが100
0Hバイトである場合、00000000Hと0000
1000Hとはキャッシュのエントリ上重複するが、こ
の二つのアドレスを別々のノードに割り当てることによ
りキャッシュのリプレースを効率良く行うことができ
る。(表2のように、キャッシュの1ラインが10Hバ
イトである場合、2の12乗ビットと、2の4,5乗ビ
ットとの排他的論理和を取れば良い。例えばノード4
は、アドレスの2の12乗ビットと4,5乗ビットとの
排他的論理和が00Bのアドレスを割り当てる。)ノー
ド間のデータの授受には、あらかじめ定めたフレームを
用いる。フレームは、マスタノードが最初に生成し、各
ノード(マスタノードを含む)がそれを中継してシステ
ム内を周回させる。従って、伝送路を有効活用するため
には、システムを一周する伝送距離はフレーム長かその
整数倍であることが望ましく、マスタノードがそれを保
証する。図2はフレームの一例を示す。図2に示すよう
に、フレームは、あらかじめ定めたフレーム同期パタン
と一つ以上のセルとからなる。フレーム同期パタンは、
各ノードがフレームの先頭を認識するためのパタンであ
る。本実施例においては、CCITTのSDHの規格に
合わせてF6F62828Hとする。セルは、情報を乗
せて運ぶ固定長の入れ物である。図3にその構成を示
す。図3において、一セルは、24バイトで形成され、
ビジーフラグ、タイプ、受信フラグ、リトライフラグ、
モニタフラグ、送信ID、受信ID、補助情報、アドレ
スおよびデータからなる。各領域の意味を表3に示す。
In Table 2, the cache size is 100
If 0H bytes, 00000000H and 0000
Although 1000H is duplicated in the entry of the cache, the cache can be efficiently replaced by allocating these two addresses to different nodes. (As shown in Table 2, when one line of the cache is 10 H bytes, an exclusive OR of 2 12 bits and 2 4 5 bits may be calculated. For example, node 4
Assigns the address of which the exclusive OR of the 2 12th bit of the address and the 4th and 5th bits is 00B. ) A predetermined frame is used for exchanging data between nodes. The frame is first generated by the master node, and each node (including the master node) relays it to circulate in the system. Therefore, in order to effectively utilize the transmission path, it is desirable that the transmission distance around the system is the frame length or an integral multiple thereof, and the master node guarantees it. FIG. 2 shows an example of a frame. As shown in FIG. 2, the frame is composed of a predetermined frame synchronization pattern and one or more cells. The frame sync pattern is
This is a pattern for each node to recognize the beginning of the frame. In this embodiment, it is set to F6F62828H in accordance with the CCITT SDH standard. A cell is a fixed-length container that carries information. The structure is shown in FIG. In FIG. 3, one cell is made up of 24 bytes,
Busy flag, type, receive flag, retry flag,
It consists of a monitor flag, a transmission ID, a reception ID, auxiliary information, an address and data. Table 3 shows the meaning of each area.

【0031】[0031]

【表3】 [Table 3]

【0032】本実施例の場合、各ノードは、機能的に、
マスタノード3と、キャッシュを接続しておりアドレス
空間が割り当てられていないノード1および2と、キャ
ッシュを接続しておらずキャッシャブルなアドレス空間
が割り当てられているノード4〜7と、キャッシュと接
続されておらずアンキャッシャブルなアドレス空間が割
り当てられているノード8および9とに分類できる。ま
た、ノードにおける処理の概念図を図27に示す。図2
7に示すように、それぞれのノードは、送信時に、宛先
情報および読み書きする前記記憶装置のアドレスを付加
して情報を送出する送出手段と、受信時に、当該宛先情
報が自宛の場合に当該情報を受信情報とする受信手段
と、該受信情報に受信したことを示す情報を付加して該
受信情報を送出し、該受信情報に基づいて対応する転送
処理を行う転送処理手段とを備える。プロセッサに対応
する各々のノード2または3は、前記プロセッサが前記
記憶装置にアドレスを指示して当該アドレスの情報を読
みだした際に、読みだした情報を該プロセッサに備える
キャッシュメモリに格納し、該キャッシュメモリに格納
する情報のアドレスを管理する管理手段を備える。この
管理手段は、転送処理手段に備えてもよい。前記プロセ
ッサに対応する各々のノードの受信手段は、前記送出さ
れた情報に受信したことを示す情報が付加されていない
場合に、前記送出された情報に付加されたアドレスを監
視し、該アドレスが前記管理手段により管理するアドレ
スと一致する場合には、当該情報を受信情報とし、前記
複数のプロセッサに対応する各々のノード2または3の
前記転送処理手段は、前記受信手段で前記アドレスが一
致した場合に、該受信情報に受信したことを示す情報を
付加して該受信情報を送出し、転送処理として、該受信
情報が読み出しの場合には、該アドレスに対応する当該
キャッシュメモリに記憶している情報を送出し、該受信
情報が書き込みの場合には、当該キャッシュメモリに該
受信情報を書き込む。各ノードの転送処理手段は、当該
ノードに接続されるプロセッサ、I/Oまたはメモリな
どにより処理が異なる。メモリが接続するノード4、
5、6および7の転送処理としては、メモリ制御機能を
備えて、アドレス空間に対応してメモリのアクセスを制
御する。また、入出力装置接続するノード8および9
は、I/O制御機能を備えて、入出力装置の入出力を制
御する。
In the case of this embodiment, each node is functionally
Master node 3, nodes 1 and 2 that are connected to the cache and are not assigned an address space, nodes 4 to 7 that are not connected to the cache and are assigned a cacheable address space, and are connected to the cache It can be classified into nodes 8 and 9 to which uncacheable address space is allocated. Further, FIG. 27 shows a conceptual diagram of processing in the node. Figure 2
As shown in FIG. 7, each node, at the time of transmission, sends the information by adding the destination information and the address of the storage device to read and write, and at the time of reception, when the destination information is addressed to itself, the information concerned. And a transfer processing unit that adds information indicating that the received information has been received, sends the received information, and performs a corresponding transfer process based on the received information. Each node 2 or 3 corresponding to the processor stores the read information in the cache memory provided in the processor when the processor instructs the memory device to read the information at the address. Management means for managing the address of the information stored in the cache memory is provided. This management means may be provided in the transfer processing means. Receiving means of each node corresponding to the processor monitors the address added to the transmitted information when the information indicating reception is not added to the transmitted information, and the address is When the address matches the address managed by the managing means, the information is used as received information, and the transfer processing means of each node 2 or 3 corresponding to the plurality of processors has the same address at the receiving means. In this case, the received information is added with information indicating that it has been received, and the received information is sent out. When the received information is read out, it is stored in the cache memory corresponding to the address as a transfer process. If the received information is written, the received information is written in the cache memory. The transfer processing means of each node differs in processing depending on the processor, I / O, memory, or the like connected to the node. Node 4 to which the memory connects,
As the transfer processing of 5, 6, and 7, a memory control function is provided to control the access to the memory corresponding to the address space. Also, nodes 8 and 9 connected to the input / output device
Has an I / O control function to control the input / output of the input / output device.

【0033】つぎに、各ノードの詳細なブロック図を図
4、図5、図6および図7に示す。マスタノード3のブ
ロック図を図4に、ノード1および2のブロック図を図
5に、ノード4〜7のブロック図を図6に、ノード8お
よび9のブロック図を図7にそれぞれ示す。ノード4〜
7は、能動的にリード/ライトしない。なお、本実施例
は、ノード1および2にアドレス空間を割り当てたり、
ノード4〜9にキャッシュを接続したり、ノード4〜7
が能動的にリード/ライトしたりすることを妨げない。
Next, detailed block diagrams of each node are shown in FIGS. 4, 5, 6 and 7. FIG. 4 shows a block diagram of the master node 3, FIG. 5 shows a block diagram of the nodes 1 and 2, FIG. 6 shows a block diagram of the nodes 4 to 7, and FIG. 7 shows a block diagram of the nodes 8 and 9. Node 4-
7 does not actively read / write. In this embodiment, the address space is assigned to the nodes 1 and 2,
Connect a cache to nodes 4-9 or nodes 4-7
Does not prevent active read / write.

【0034】上記ブロック図を参照して動作を説明す
る。マスタノードは、あらかじめ定めた固定長のセルを
生成して前記伝送路に送出し、前記送信手段は、前記伝
送路上の前記セルを検出し、前記情報を送出する場合に
は、該セルが使用されていないときに、該セルのあらか
じめ定められた位置に、前記宛先情報、前記読み書きす
る前記記憶装置のアドレス、該セルが使用中であること
を示す情報および送信情報を付加して送出する。図4に
おいて、まず、マスタノード3が初期フレームを自ノー
ドクロックの送信クロックで生成する。また、予め決め
られた間隔でフレーム同期パタンを生成する。残りのセ
ルの部分は全て0にしておく。フレーム同期パタンの間
隔をフレーム長と呼ぶ。それはフレーム同期パタン長
(4バイト)+{1セル長(24バイト)の整数倍}に
あらかじめ固定しておく。そしてその初期フレームをセ
ルの部分にスクランブル44をかけて次ノード4に送信
する。スクランブルには二つの効果がある。次ノードが
伝送路上の信号からクロック成分を抽出するのを容易に
する効果と、伝送路上のデータの0と1との比率をほぼ
同じにして、データの変化に伴う電圧の変動や伝送路の
クロストークを軽減する効果とである。特に、後者は、
低電圧電源の装置において効果的である。スクランブル
回路の構成を図5に示す。CCITTのSDHの規格に
準拠することができる。図8に示すように、スクランブ
ル回路は、n段の線形帰還シフトレジスタ(図8におい
ては7段)で最大長周期系列のランダムパターン発生回
路と、該ランダムパターンとデータとの排他的論理和を
取りスクランブルデータを出力する出力手段とを備え
る。スクランブル回路は、フレームの先頭で初期化さ
れ、フレーム同期パタンの後の先頭のセルからスクラン
ブルを開始する。また、デスクランブル回路も同様に構
成する。図6に示すノード4では、伝送路上の信号から
クロック成分を抽出し、それをPLLでてい倍して動作
クロックを得る。これを受信クロックと呼ぶ。マスタノ
ード以外のノードは、受信クロックをノードクロックと
する。次にフレーム同期を確立する。フレーム同期確立
の状態遷移を図9に示す。初期状態から最初に検出した
フレーム同期パタンを第一フレーム同期パタン、次に検
出したフレーム同期パタンを第二フレーム同期パタンと
し、第一フレーム同期パタンと第二フレーム同期パタン
との間をフレーム長とする。第二フレーム同期パタンか
らフレーム長毎にフレーム同期パタンが検出されるかど
うかを監視する。5回連続してフレーム同期パタンが検
出された場合にフレーム同期確立とする。そうでない場
合には初期状態に戻る。フレーム同期確立後もフレーム
長毎にフレーム同期パタンが検出されるかどうかを監視
する。5回連続してフレーム同期パタンが検出されない
場合、フレーム同期外れとして初期状態に戻る。フレー
ム同期確立中は、フレーム同期パタンを検出する/しな
いにかかわらず、フレーム長の周期毎にフレームを受信
するものとして処理を行う。次にデスクランブルを行
い、マスタノード3がスクランブルする前のデータに戻
す。そして再びスクランブルして、次ノード5に送信す
る。フレーム同期パタンを送信するタイミングでは、パ
タンを生成し上書きする。フレームが周回するまでは、
セルの処理は行えない。他のノード6〜9、1および2
も同様にしてフレームを中継することができる。図4に
おいて、再びマスタノード3に戻ってきたフレームは、
同様にクロック抽出、フレーム同期確立およびデスクラ
ンブルが行われ、周回遅延保証バッファに入れられる。
周回遅延保証バッファには二つの機能がある。システム
を一周する伝送距離をフレーム長の整数倍に保持する機
能と、マスタノードが伝送路上の信号から抽出した受信
クロックからノードクロックへのデータの乗せ変えを行
う機能とがある。図10に示す周回遅延保証バッファ
は、フレーム長の2倍の容量をもつFIFO(First in
First out)である。マスタノードで最初にフレーム同
期が確立したフレームを先頭アドレスから書き初め、書
き込みポインタが読み出し開始可能範囲にあるときにフ
レームの生成のタイミングに合わせて先頭から読み出し
を開始する。読み出し開始可能範囲は、FIFOの中心
を中心とした一フレーム長強の範囲である。以下フレー
ム同期が外れるまで、書き込みおよび読み出しを連続的
に継続する。以上のようにして、フレームがシステム内
を周回することになる。フレームが周回して初めて、各
ノードはセルを使用して、情報の授受を行うことができ
る。各ノードのセル処理では、前述のように、送信手段
と受信手段とそれぞれのノードごとに定められた転送処
理をする転送処理手段とを備える。詳細については、後
述する。
The operation will be described with reference to the above block diagram. The master node generates a cell having a predetermined fixed length and sends it to the transmission line, and the transmitting means detects the cell on the transmission line, and when the information is sent, the cell is used by the cell. If not, the destination information, the address of the storage device for reading and writing, the information indicating that the cell is in use, and the transmission information are added to a predetermined position of the cell and transmitted. In FIG. 4, first, the master node 3 generates an initial frame with a transmission clock of its own node clock. In addition, frame synchronization patterns are generated at predetermined intervals. All the remaining cells are set to 0. The interval of the frame synchronization pattern is called the frame length. It is fixed in advance to the frame synchronization pattern length (4 bytes) + {integer multiple of 1 cell length (24 bytes)}. Then, the initial frame is scrambled 44 in the cell portion and transmitted to the next node 4. Scramble has two effects. The effect of facilitating the extraction of the clock component from the signal on the transmission line by the next node and the ratio of 0 and 1 of the data on the transmission line are made almost the same, and the fluctuation of the voltage due to the change of the data and the transmission line The effect is to reduce crosstalk. In particular, the latter
It is effective in a device with a low voltage power supply. The structure of the scramble circuit is shown in FIG. It can comply with the SDIT standard of CCITT. As shown in FIG. 8, the scramble circuit includes an n-stage linear feedback shift register (7 stages in FIG. 8) for a random pattern generation circuit of a maximum long-period sequence and an exclusive OR of the random pattern and data. And output means for outputting the scrambled scrambled data. The scramble circuit is initialized at the beginning of the frame and starts scrambling from the beginning cell after the frame synchronization pattern. The descrambling circuit is also constructed in the same manner. At the node 4 shown in FIG. 6, a clock component is extracted from the signal on the transmission path and multiplied by a PLL to obtain an operation clock. This is called a reception clock. Nodes other than the master node use the reception clock as the node clock. Next, frame synchronization is established. The state transition of frame synchronization establishment is shown in FIG. The first frame synchronization pattern detected from the initial state is the first frame synchronization pattern, the next detected frame synchronization pattern is the second frame synchronization pattern, and the length between the first frame synchronization pattern and the second frame synchronization pattern is the frame length. To do. Whether or not the frame synchronization pattern is detected for each frame length from the second frame synchronization pattern is monitored. Frame synchronization is established when the frame synchronization pattern is detected five times in a row. If not, it returns to the initial state. After frame synchronization is established, it is monitored for each frame length whether or not a frame synchronization pattern is detected. If the frame synchronization pattern is not detected five times in a row, the frame is out of synchronization and the initial state is restored. During frame synchronization establishment, processing is performed assuming that a frame is received at each frame length cycle regardless of whether or not a frame synchronization pattern is detected. Next, descrambling is performed to restore the data before the scramble by the master node 3. Then, it is scrambled again and transmitted to the next node 5. At the timing of transmitting the frame synchronization pattern, the pattern is generated and overwritten. Until the frame goes around
The cell cannot be processed. Other nodes 6-9, 1 and 2
Can similarly relay the frame. In FIG. 4, the frame returned to the master node 3 is
Similarly, clock extraction, frame synchronization establishment and descrambling are performed, and the results are stored in the round delay guarantee buffer.
The loop delay guarantee buffer has two functions. There is a function of holding the transmission distance that goes around the system at an integral multiple of the frame length, and a function of transferring data from the reception clock extracted from the signal on the transmission path to the node clock by the master node. The cyclic delay guarantee buffer shown in FIG. 10 has a FIFO (First in
First out). The master node starts writing the frame in which the frame synchronization is first established from the head address, and when the write pointer is within the read startable range, the read is started from the head in accordance with the timing of frame generation. The read startable range is a range of a little over one frame centered on the center of the FIFO. Thereafter, writing and reading are continuously continued until the frame synchronization is lost. As described above, the frame circulates in the system. Only when the frame goes around, each node can use the cell to exchange information. As described above, the cell processing of each node is provided with the transmitting means, the receiving means, and the transfer processing means for performing the transfer processing determined for each node. Details will be described later.

【0035】また、クロックを別線でノード間伝送した
り、各ノードに分配しても良い。この場合、スクランブ
ル、デスクランブルは必須ではなくなり、1LSI内に
デジタル回路とアナログ回路とを混在させる必要はなく
なり、論理は簡単になる。また、フレームやセルの区切
りを示す信号を別線でノード間でやり取りしても良い。
フレーム同期パタンやフレーム同期の確立手順は不要に
なり、論理は簡単になる。 次に、マスタノードの機能
を説明する。マスタノードは、第一に、上述したように
各ノードにノードIDやアドレス範囲を割り当てる。第
二に、システム全体のクロックを生成する。但し、これ
はフレームを伝送する部分のクロックのみを対象とす
る。例えば、プロセッサ11および12は別のクロック
で動作して良い。この場合、送信リクエストバッファ、
受信リクエストバッファ、およびレスポンスバッファが
クロックの乗せ変えの機能をも有することになる。第三
に、予め決められたフレーム長に従ってフレームを生成
する。このフレームの形式により、システムの性能を容
易に調整することができる。一般に、一フレーム内のセ
ルの個数が少ない場合、レイテンシは良いがスループッ
トが犠牲となる。逆に、セルの個数が多い場合、スルー
プットは良いがレイテンシが犠牲となる。また、ノード
毎に専用セルを固定的に割り当てても良い。これは例え
ば、送信ID部や受信ID部を固定したり、フレームの
先頭からの位置によって割り当てたりすれば良い。
Further, the clock may be transmitted between the nodes by another line or may be distributed to each node. In this case, scrambling and descrambling are not essential, there is no need to mix digital circuits and analog circuits in one LSI, and the logic becomes simple. Further, a signal indicating a frame or a cell delimiter may be exchanged between the nodes on another line.
The frame synchronization pattern and the procedure for establishing frame synchronization are not necessary, and the logic is simple. Next, the function of the master node will be described. The master node firstly assigns a node ID or address range to each node as described above. Second, it generates the clock for the entire system. However, this applies only to the clock of the part that transmits the frame. For example, processors 11 and 12 may operate on different clocks. In this case, the send request buffer,
The reception request buffer and the response buffer also have the function of changing the clock. Thirdly, a frame is generated according to a predetermined frame length. The format of this frame allows the performance of the system to be easily adjusted. Generally, when the number of cells in one frame is small, the latency is good but the throughput is sacrificed. Conversely, when the number of cells is large, the throughput is good but the latency is sacrificed. Alternatively, a dedicated cell may be fixedly assigned to each node. For this, for example, the transmission ID part and the reception ID part may be fixed or may be assigned according to the position from the beginning of the frame.

【0036】また、LANのトークンパッシング方式の
ようなフレーム形式を選択しても良い。もちろんセルを
固定的に割り当てたり、トークンパッシング方式のよう
なフレーム形式を選択したりする場合には、図23〜図
26、図28〜図30に示すアルゴリズムをそのプロト
コルにあわせて変更する必要がある。何れにせよ、本実
施例を適用したシステムは、その構成に応じてフレーム
形式を変化させることにより、様々な特徴をもたせるこ
とができる。第四に、フレームの周回遅延を保証する。
第五に、セルを監視する。まず、マストノードを通過す
る全てのビジーフラグ=1のセル(以下、ビジーセルと
呼ぶ)のモニタフラグを1にする。通常、ビジーセル
は、システムを一周するとそれをビジーセルにしたノー
ドにおいて空セルに戻される。従って、マスタノードに
おいて、モニタフラグ=1のビジーセルが受信された場
合、それは異常に周回しているセルであることがわか
る。また、実際に割り当てが行われていないアドレス範
囲へのアクセスを監視する。更にまた、各バイトにパリ
ティを付加したり、セルやフレームにチェックシーケン
スを付加したりして、それを監視しても良い。第六に、
その他エラー情報の収集およびログや、メモリ実装状態
の確認、性能評価等の機能がある。
A frame format such as the token passing system of LAN may be selected. Of course, when cells are fixedly assigned or a frame format such as the token passing method is selected, it is necessary to change the algorithms shown in FIGS. 23 to 26 and 28 to 30 according to the protocol. is there. In any case, the system to which this embodiment is applied can have various characteristics by changing the frame format according to its configuration. Fourth, it guarantees the round-trip delay of the frame.
Fifth, monitor the cell. First, the monitor flags of all cells that pass the mast node and have a busy flag = 1 (hereinafter referred to as busy cells) are set to 1. Normally, a busy cell is returned to an empty cell at the node that made it a busy cell after going around the system. Therefore, when the master node receives a busy cell with the monitor flag = 1, it can be seen that it is an abnormally circling cell. It also monitors access to address ranges that are not actually allocated. Furthermore, parity may be added to each byte, or a check sequence may be added to a cell or frame to monitor it. Sixth,
Other functions include collecting and logging error information, checking memory mounting status, and performance evaluation.

【0037】つぎに、セル処理について具体例を用いて
説明する。ノード1および2のセル処理の動作アルゴリ
ズムを図23および図24に、ノード4〜7のセル処理
の動作アルゴリズムを図25および図26に、ノード8
および9のセル処理の動作アルゴリズムを図28および
図29にそれぞれフローチャートで示す。但し、エラー
処理は省略している。
Next, cell processing will be described using a specific example. 23 and 24 show the operation algorithms of the cell processing of the nodes 1 and 2, FIGS. 25 and 26 show the operation algorithms of the cell processing of the nodes 4 to 7, and FIG.
The operation algorithms of the cell processing of Nos. 9 and 9 are shown in the flow charts of FIGS. However, error processing is omitted.

【0038】はじめに、表1に示すようなノードIDと
アドレスの範囲とを割り当てた状態において、キャッシ
ュ13および14には何もエントリされていないとき
に、プロセッサ11がノード1において、メモリ16の
アドレス「00000000H」にアクセスする場合に
ノード4に対して読み出し要求を送出し、ノード4にお
いてレスポンスを送出する場合の処理を、図11、図1
2、図13および図14を参照して説明する。この場
合、ノード1は、メモリ16のアドレス「000000
00H」からの16バイトを読み出し、プロセッサ11
に返送するとともにキャッシュ13にエントリする。ま
ず、図4に示す、ノード1の送信リクエストバッファに
「アドレス『00000000H』からの16バイトの
データの読み出しを要求する」ということを示すリード
送信リクエストが格納される。図23および図24に示
すアルゴリズムに従って、ノード1の送信手段は、ビジ
ーフラグが0か1かを判断し(S231)、ビジーフラ
グ=0のセル(以下、空セルと呼ぶ)を受信すると、レ
スポンス要求があるかいなかを判断し(S232)、リ
ード要求があるかないかを判断し(S234)、リード
送信リクエストが格納されている場合には要求ありとし
て送信処理を行い(S235〜237)、ビジーフラグ
=1かつタイプ=00のセル(以下、リードセルと呼
ぶ)に変え、送信元IDを自ノードIDの10Hにし、
読み出すメモリアドレスを設定して送信する。その場合
のセルのビットパターンを図11に示す。このセルは、
ノード2および3を通過してノード4に到着する。ノー
ド2では、該セルのビジーフラグが1である場合に(S
231)、セルタイプを判断し(S240)、送信ID
が自ノードIDか否かを判断し(S241)、目的のメ
モリアドレスがノードに接続されるキャッシュメモリの
エントリされているかを判断する(S246)。この場
合、送信IDが自ノードIDではなく、キャッシュメモ
リにエントリされていないので、そのままセルを通過さ
せる(S282)。ノード3では、該セルのビジーフラ
グが1である場合にモニタフラグをセットして、セルを
送出する。ノード4では、図24および図25に示すア
ルゴリズムに従い、受信手段が、該セルのビジーフラグ
が1である場合に(S290)、セルタイプを判断し
(S293)、目的のメモリアドレスが割当てアドレス
か否かを判断する(S294)。目的のメモリアドレス
が割当てアドレスである場合には、当該セルを受信情報
として、そのセルの要求が自ノード宛であることを認識
し、受信リクエストバッファにリード受信リクエストを
格納する(S302)とともに、転送処理を行う(S2
95〜S303)。これにより、図12に示すように、
受信フラグ=1としてセルを送出する。そしてこのセル
は、ノード5〜9を同様に通過してノード1に到着す
る。
First, in the state where the node ID and the range of addresses as shown in Table 1 are allocated, when nothing is entered in the caches 13 and 14, the processor 11 in the node 1 addresses the memory 16. 1 and FIG. 1 for the processing when a read request is sent to the node 4 when accessing “00000000H” and a response is sent at the node 4.
2, with reference to FIGS. 13 and 14. In this case, the node 1 has the address “000000” in the memory 16.
16 bytes from "00H" are read, and the processor 11
To the cache 13 and return it to the cache 13. First, in the transmission request buffer of the node 1 shown in FIG. 4, a read transmission request indicating that “a request to read 16-byte data from the address“ 00000000H ”is requested” is stored. According to the algorithms shown in FIG. 23 and FIG. 24, the transmission means of the node 1 determines whether the busy flag is 0 or 1 (S231), and when the busy flag = 0 cell (hereinafter referred to as an empty cell) is received, the response request is issued. It is determined whether or not there is a read request (S232), and it is determined whether or not there is a read request (S234). If a read transmission request is stored, transmission processing is performed with a request (S235 to 237), and busy flag = 1. In addition, the cell type is changed to 00 (hereinafter referred to as a read cell), the transmission source ID is set to 10H of its own node ID,
Set the memory address to read and send. The bit pattern of the cell in that case is shown in FIG. This cell is
It arrives at node 4 through nodes 2 and 3. In the node 2, if the busy flag of the cell is 1 (S
231), the cell type is determined (S240), and the transmission ID
Is the self node ID (S241), and it is determined whether the target memory address is entered in the cache memory connected to the node (S246). In this case, since the transmission ID is not the node ID of itself and is not entered in the cache memory, the cell is passed as it is (S282). In the node 3, when the busy flag of the cell is 1, the monitor flag is set and the cell is transmitted. In the node 4, when the busy flag of the cell is 1 (S290), the receiving unit determines the cell type (S293) according to the algorithm shown in FIGS. 24 and 25, and determines whether the target memory address is the assigned address. It is determined whether or not (S294). When the target memory address is the allocated address, the cell is used as reception information, the cell request is recognized to be addressed to the own node, and the read reception request is stored in the reception request buffer (S302). Transfer processing is performed (S2
95-S303). As a result, as shown in FIG.
The cell is transmitted with the reception flag = 1. This cell then passes through nodes 5 to 9 and arrives at node 1.

【0039】ノード1では、図23および図24に示す
アルゴリズムに従って、自分が送信したリードセルが正
常に受け付けられたことを認識すると(S231、S2
40およびS241)、送信リクエストバッファ内のリ
ード送信リクエストを解放し(S242、S243およ
びS244)、ビジーフラグ=0にしてそのセルを空セ
ルに変える(S245)。ノード4において、受信リク
エストバッファに格納されたリード受信リクエストは転
送処理手段において処理され、その結果、ノード4の送
信リクエストバッファ内に「アドレス「0000000
0H」の内容(図13に示すように、00112233
445566778899AABBCCDDEEFFH
とする)をノードID=10Hに返送することを要求す
る」レスポンス送信要求が格納される。ノード4は、図
25および図26に示すアルゴリズムに従って、空セル
を受信すると(S290)、レスポンス要求があるかい
なかを判断し(S291)、送信リクエストが格納され
ている場合には要求ありとして送信処理を行い(S29
2)、ビジーフラグ=1かつタイプ=10のセル(以
下、レスポンスセルと呼ぶ)に変え、送信元IDを自ノ
ードIDの20Hにし、受信IDを10Hにし、読み出
すメモリアドレスとデータとを設定して送信する。その
場合のセルのビットパターンを図13に示す。このセル
は、ノード5〜9を通過してノード1に到着する。ノー
ド5〜9では、前述のノード2における処理と同様な処
理を行った後でセルを送出する。ノード1は、図23お
よび図24に示すアルゴリズムに従い、受信手段におい
て、そのセルが自ノード宛であることを認識し(S23
1、S240、S266およびS274)、転送処理を
行い(S275、S276およびS278)、レスポン
スバッファにレスポンス結果を格納し(S277)、セ
ルを通過させる。この場合、図14に示すように、受信
フラグ=1として送出する。また、キャッシュメモリに
エントリを行い(S279)、そのエントリアドレスを
管理手段に登録する。そしてこの送出セルは、前述と同
様に、ノード2および3を通過してノード4に到着す
る。ノード4は、図25および図26に示すアルゴリズ
ムに従って、送信リクエストバッファ内のレスポンス送
信リクエストを解放し(S290、S293、S31
3、S314、S315およびS316)、そのセルを
空セルに変える(S317)。ノード1のレスポンスバ
ッファに格納されたレスポンス結果は、キャッシャブル
空間であるので、プロセッサ11に返送されるとともに
キャッシュ13にエントリされ、レスポンスバッファか
ら解放される。もし、図11に示すセルがノード4に到
着したときに、受信リクエストバッファに空きが無い場
合(S301)、ノード4では受信フラグ=1とすると
同時にリトライフラグ=1とする(S303)。ノード
1は、図23および図24に示すアルゴリズムに従っ
て、自分が送信したリードセルが正常に受け付けられな
かったことを認識すると(S243)、送信リクエスト
バッファ内のリード送信リクエストは解放せずに(S2
44)、そのセルは空セルに変え(S245)、次ノー
ドに送信し、新たに空きセルを受信するのを待つ。一度
獲得したセルをそのセルが正常に受け付けられるまで連
続して使用する場合には、図23および図24に示す点
線の部分を、図30に示すように処理すれば良い。但
し、これはシステムにより、デッドロックを引き起こす
可能性があるので注意を要する。
When the node 1 recognizes that the read cell transmitted by itself is normally accepted according to the algorithm shown in FIGS. 23 and 24 (S231, S2).
40 and S241), the read transmission request in the transmission request buffer is released (S242, S243 and S244), the busy flag = 0 is set, and the cell is changed to an empty cell (S245). In the node 4, the read reception request stored in the reception request buffer is processed by the transfer processing means, and as a result, “address“ 0000000 ”is stored in the transmission request buffer of the node 4.
0H ”(as shown in FIG. 13, 00122233
44556677788899AABBCCDDEEFH
Response request is stored to the node ID = 10H ”. When the node 4 receives an empty cell (S290) according to the algorithm shown in FIGS. 25 and 26, it determines whether or not there is a response request (S291), and if the transmission request is stored, the request is transmitted. Perform processing (S29
2) Change to a cell with busy flag = 1 and type = 10 (hereinafter referred to as response cell), set the transmission source ID to 20H of its own node ID, set the reception ID to 10H, and set the memory address and data to read. Send. The bit pattern of the cell in that case is shown in FIG. This cell reaches node 1 through nodes 5-9. The nodes 5 to 9 send the cell after performing the same processing as the processing in the node 2 described above. According to the algorithm shown in FIGS. 23 and 24, the node 1 recognizes that the cell is addressed to its own node by the receiving means (S23).
1, S240, S266 and S274), transfer processing is performed (S275, S276 and S278), the response result is stored in the response buffer (S277), and the cell is passed. In this case, as shown in FIG. 14, the reception flag = 1 is transmitted. Further, an entry is made in the cache memory (S279), and the entry address is registered in the management means. Then, this transmission cell passes through the nodes 2 and 3 and arrives at the node 4 as described above. The node 4 releases the response transmission request in the transmission request buffer according to the algorithm shown in FIGS. 25 and 26 (S290, S293, S31).
3, S314, S315 and S316), the cell is changed to an empty cell (S317). Since the response result stored in the response buffer of the node 1 is in the cacheable space, the response result is returned to the processor 11, entered in the cache 13, and released from the response buffer. If the reception request buffer is full when the cell shown in FIG. 11 arrives at the node 4 (S301), the node 4 sets the reception flag = 1 and the retry flag = 1 at the same time (S303). When the node 1 recognizes that the read cell transmitted by itself is not normally accepted according to the algorithms shown in FIGS. 23 and 24 (S243), it does not release the read transmission request in the transmission request buffer (S2
44), the cell is changed to an empty cell (S245), transmitted to the next node, and waits for a new empty cell to be received. When the once-acquired cell is continuously used until the cell is normally accepted, the dotted line portions shown in FIGS. 23 and 24 may be processed as shown in FIG. However, note that this may cause a deadlock depending on the system.

【0040】以上のように処理することにより、プロセ
ッサ11は、アドレスを指示して、メモリ16に格納す
る情報を読み出し、キャッシュメモリに格納する。
By the above processing, the processor 11 designates an address, reads the information stored in the memory 16, and stores it in the cache memory.

【0041】つぎに、プロセッサ12が、同じアドレス
「00000000H」をアクセスする場合を、図15
〜図20を参照して説明する。本実施例のシステムで
は、常にキャッシュメモリに格納するデータを最新に保
ち優先的に扱う。この場合、メモリ16のアドレス00
000000Hに格納されているデータ転送の代わり
に、ノード1が、該アドレスへのアクセスであることを
検出し、キャッシュ13に格納されている000000
00Hからの16バイトを、プロセッサ12に返送する
とともにキャッシュ14にエントリし、キャッシュ13
のエントリから消去する。
Next, the case where the processor 12 accesses the same address "00000000H" is shown in FIG.
~ It demonstrates with reference to FIG. In the system of this embodiment, the data stored in the cache memory is always kept up to date and treated preferentially. In this case, address 00 of memory 16
Instead of the data transfer stored in 000000H, the node 1 detects that the access is to the address and stores 000000 in the cache 13.
The 16 bytes from 00H are returned to the processor 12 and entered in the cache 14, and the cache 13
Erase from the entry.

【0042】まず、ノード2の送信リクエストバッファ
に「アドレス『00000000H』からの16バイト
のデータの読み出しを要求する」リード送信リクエスト
が格納される。図23および図24に示すアルゴリズム
に従って、ノード2は、ビジーフラグが0か1かを判断
し(S231)、空セルを受信すると、レスポンス要求
があるかいなかを判断し(S232)、リード要求があ
るかないかを判断する(S234)。リード送信リクエ
ストが格納されている場合には要求ありとして送信処理
を行い(S235〜S237)、ビジーフラグ=1かつ
タイプ=00のセル(以下、リードセルと呼ぶ)に変
え、送信元IDを自ノードIDの11Hにし、読み出す
メモリアドレスを設定して送信する。その場合のセルの
ビットパターンを図15に示す。このセルは、ノード3
を通過してノード4に到着する。ノード3では、該セル
のビジーフラグが1である場合にモニタフラグをセット
して、セルを送出する。ノード4は、図25および図2
6に示すアルゴリズムに従い、受信手段が、該セルのビ
ジーフラグが1である場合に(S290)、セルタイプ
を判断し(S293)、目的のメモリアドレスが割当て
アドレスか否かを判断する(S294)。目的のメモリ
アドレスが割当てアドレスである場合には、当該セルを
受信情報として、そのセルの要求が自ノード宛であるこ
とを認識し、受信リクエストバッファにリード受信リク
エストを格納する(S302)とともに、転送処理を行
う(S295〜S303)。これにより、図16に示す
ように、受信フラグ=1としてセルを送出する。そして
このセルは、ノード5〜9とノード1とを同様に通過し
てノード2に到着する。ノード2は、図23および図2
4に示すアルゴリズムに従って、自分が送信したリード
セルが正常に受け付けられたことを認識すると(S23
1、S240およびS241)、送信リクエストバッフ
ァ内のリード送信リクエストを解放し(S242、S2
43およびS244)、ビジーフラグ=0にしてそのセ
ルを空セルに変える(S245)。また、ノード4にお
いて、受信リクエストバッファに格納されたリード受信
リクエストは、転送処理手段において処理され、その結
果、ノード4の送信リクエストバッファ内に「アドレス
「00000000H」の内容(図17に示すように、
00112233445566778899AABBC
CDDEEFFHとする)をノードID=11Hに返送
することを要求する」レスポンス送信要求が格納され
る。ノード4は、図25および図26に示すアルゴリズ
ムに従って、空セルを受信すると(S290)、レスポ
ンス要求があるかいなかを判断し(S291)、送信リ
クエストが格納されている場合には要求ありとして送信
処理を行い(S292)、ビジーフラグ=1かつタイプ
=10のレスポンスセルに変え、送信元IDを自ノード
IDの20Hにし、受信IDを11Hにし、読み出すメ
モリアドレスとデータとを設定して送信する。その場合
のセルのビットパターンを図17に示す。このセルは、
ノード5〜9を通過してノード1に到着する。ノード1
は、図23および図24に示すアルゴリズムに従い、受
信手段において、該セルのビジーフラグが1である場合
に(S231)、セルタイプを判断し(S240)、送
信IDが自ノードIDか否かを判断し(S241)、目
的のメモリアドレスがノードに接続されるキャッシュメ
モリのエントリされているかを判断する(S246)。
この場合、送信IDが自ノードIDではないが、目的の
アドレスがキャッシュメモリにエントリされているの
で、該セルを受信情報として転送処理する(S247〜
S252)。これにより図18に示すように、受信フラ
グ=1とする。このセルは、ノード2に到着するが、ノ
ード2では、図23および図24に示すアルゴリズムに
従い、該セルのビジーフラグが1である場合に(S23
1)、セルタイプを判断し(S240)、送信IDが自
ノードIDか否かを判断し(S266)、受信IDが自
ノードであるかにないかを判断する(S274)。この
場合、受信IDが自ノードIDであると判断するが、受
信フラグ=1である(S275)ので、そのセルを通過
させる。そしてこのセルは、ノード3を通過してノード
4に到着する。ノード4は、図25および図26に示す
アルゴリズムに従って、送信リクエストバッファ内のレ
スポンス送信リクエストを解放し(S290、S29
3、S313、S314、S315およびS316)、
そのセルを空セルに変える(S317)。一方、ノード
1において、受信リクエストバッファに格納されたリー
ド受信リクエストは、転送処理され、ノード1の送信リ
クエストバッファ内に「アドレス00000000Hの
内容(0123456789ABCDEF8899AA
BBCCDDEEFFHとする)をノードID=11H
に返送することを要求する」レスポンス送信要求が格納
される。ノード1は、送信手段において、ビジーフラグ
が0か1かを判断し(S231)、ビジーフラグ=0の
セル(以下、空セルと呼ぶ)を受信すると、レスポンス
要求があるかいなかを判断する(S232)。送信リク
エストが格納されている場合には要求ありとして送信処
理を行い(S233)、ビジーフラグ=1かつタイプ=
10のセル(以下、レスポンスセルと呼ぶ)に変え、送
信元IDを自ノードIDの10Hにし、受信IDを11
Hにし、読み出すメモリアドレスとデータとを設定して
送信する。その場合のセルのビットパターンを図19に
示す。このセルは、つぎにノード2に到着する。ノード
2では、図23および図24に示すアルゴリズムに従
い、受信手段において、そのセルが自ノード宛であるこ
とを認識し(S231、S240、S266およびS2
74)、転送処理を行い(S275、S276およびS
278)、レスポンスバッファにレスポンス結果を格納
し(S277)、セルを通過させる。この場合、図20
に示すように、受信フラグ=1として送出する。また、
キャッシュメモリにエントリを行い(S279)、その
エントリアドレスを管理手段に登録する。そしてこの送
出されたセルは、ノード3〜9を通過してノード1に到
着する。ノード1は、図23および図24に示すアルゴ
リズムに従って、送信リクエストバッファ内のレスポン
ス送信リクエストを解放し(S290、S293、S3
13、S314、S315およびS316)、そのセル
を空セルに変える(S317)。更に、ノード1では、
管理手段において、キャッシュのエントリを消去する。
ノード2におけるレスポンスバッファに格納されたレス
ポンス結果は、キャッシャブル空間であるので、プロセ
ッサ12に返送されるとともにキャッシュ14にエント
リされ、レスポンスバッファから解放される。ノード4
よりも先にノード1が返送する場合も図8に従えば処理
できる。
First, a read transmission request "requesting reading of 16-byte data from address" 00000000H "" is stored in the transmission request buffer of node 2. According to the algorithm shown in FIGS. 23 and 24, the node 2 determines whether the busy flag is 0 or 1 (S231), and when an empty cell is received, it determines whether there is a response request (S232) and there is a read request. It is determined whether or not there is (S234). If the read transmission request is stored, the transmission process is performed with a request (S235 to S237), the cell is changed to a cell with busy flag = 1 and type = 00 (hereinafter referred to as a read cell), and the transmission source ID is the own node ID. 11H, set the memory address to be read, and transmit. The bit pattern of the cell in that case is shown in FIG. This cell is node 3
And arrives at node 4. In the node 3, when the busy flag of the cell is 1, the monitor flag is set and the cell is transmitted. Node 4 is shown in FIG. 25 and FIG.
According to the algorithm shown in FIG. 6, when the busy flag of the cell is 1 (S290), the receiving unit determines the cell type (S293) and determines whether the target memory address is the assigned address (S294). When the target memory address is the allocated address, the cell is used as reception information, the cell request is recognized to be addressed to the own node, and the read reception request is stored in the reception request buffer (S302). Transfer processing is performed (S295 to S303). As a result, the cell is transmitted with the reception flag = 1 as shown in FIG. Then, this cell similarly passes through nodes 5 to 9 and node 1 and reaches node 2. The node 2 is shown in FIG. 23 and FIG.
According to the algorithm shown in FIG. 4, when the read cell transmitted by itself is recognized to be normally accepted (S23
1, S240 and S241) and releases the read transmission request in the transmission request buffer (S242, S2).
43 and S244), the busy flag is set to 0 and the cell is changed to an empty cell (S245). Further, in the node 4, the read reception request stored in the reception request buffer is processed by the transfer processing means, and as a result, the contents of the “address“ 00000000H ”(as shown in FIG. 17) are stored in the transmission request buffer of the node 4. ,
001122334445667778899AABCC
CDDEEFFH) is sent to the node ID = 11H ”. When the node 4 receives an empty cell (S290) according to the algorithm shown in FIGS. 25 and 26, it determines whether or not there is a response request (S291), and if the transmission request is stored, the request is transmitted. Processing is performed (S292), the response cell is changed to a busy flag = 1 and type = 10, the transmission source ID is set to 20H of its own node ID, the reception ID is set to 11H, and the memory address and data to be read are set and transmitted. The bit pattern of the cell in that case is shown in FIG. This cell is
It arrives at node 1 through nodes 5-9. Node 1
In the receiving means, when the busy flag of the cell is 1 (S231), the cell type is determined (S240) according to the algorithm shown in FIGS. 23 and 24, and it is determined whether the transmission ID is the own node ID. (S241), it is determined whether the target memory address is entered in the cache memory connected to the node (S246).
In this case, the transmission ID is not the own node ID, but the target address is entered in the cache memory, so the cell is transferred as reception information (S247-).
S252). Thereby, as shown in FIG. 18, the reception flag = 1. This cell arrives at node 2, but at node 2, if the busy flag of the cell is 1 according to the algorithm shown in FIGS. 23 and 24 (S23).
1), the cell type is determined (S240), it is determined whether the transmission ID is the own node ID (S266), and it is determined whether the reception ID is the own node (S274). In this case, it is determined that the reception ID is the own node ID, but since the reception flag is 1 (S275), the cell is passed. This cell then passes through node 3 and arrives at node 4. The node 4 releases the response transmission request in the transmission request buffer according to the algorithm shown in FIGS. 25 and 26 (S290, S29).
3, S313, S314, S315 and S316),
The cell is changed to an empty cell (S317). On the other hand, in the node 1, the read reception request stored in the reception request buffer is transferred and stored in the transmission request buffer of the node 1 “contents of address 00000000H (01234456789ABCDEF8899AA.
BBCCDDEEFH) as the node ID = 11H
A request to send the response is stored. In the transmission means, the node 1 determines whether the busy flag is 0 or 1 (S231), and when a cell with a busy flag = 0 (hereinafter referred to as an empty cell) is received, it is determined whether or not there is a response request (S232). . If the transmission request is stored, the transmission processing is performed as a request (S233), and the busy flag = 1 and the type =
10 cells (hereinafter referred to as response cells), the transmission source ID is set to 10H of the own node ID, and the reception ID is set to 11
It is set to H, and the memory address and data to be read are set and transmitted. The bit pattern of the cell in that case is shown in FIG. This cell then arrives at node 2. In the node 2, according to the algorithm shown in FIGS. 23 and 24, the receiving means recognizes that the cell is addressed to its own node (S231, S240, S266 and S2).
74) and transfer processing is performed (S275, S276 and S
278), the response result is stored in the response buffer (S277), and the cell is passed. In this case, FIG.
As shown in, the transmission is performed with the reception flag = 1. Also,
An entry is made in the cache memory (S279), and the entry address is registered in the management means. Then, the transmitted cell passes through the nodes 3 to 9 and arrives at the node 1. The node 1 releases the response transmission request in the transmission request buffer according to the algorithm shown in FIGS. 23 and 24 (S290, S293, S3).
13, S314, S315 and S316), the cell is changed to an empty cell (S317). Furthermore, in node 1,
The management means deletes the cache entry.
Since the response result stored in the response buffer in the node 2 is in the cacheable space, it is returned to the processor 12 and entered in the cache 14 and released from the response buffer. Node 4
The case where the node 1 returns before that can be processed according to FIG.

【0043】以上のように、キャッシュメモリに格納さ
れているデータのアドレスを検出したノードにおいて、
当該キャッシュメモリのデータを送出することができ
る。また、当該アドレスのデータを格納するメモリから
データが送出された場合には、アドレスを検出して、該
ノードにおいて受信処理し、当該キャッシュメモリのデ
ータを送出することができる。
As described above, in the node where the address of the data stored in the cache memory is detected,
The data in the cache memory can be transmitted. Further, when the data is sent from the memory that stores the data of the address, the address can be detected, the node can perform the receiving process, and the data of the cache memory can be sent.

【0044】また、書き込み要求の場合には、書き込み
要求が発行したプロセッサに接続するノードからアドレ
スを付加して書き込み要求セルを送出し、当該アドレス
を割り当てられているメモリとキャッシュメモリとに接
続されるノードにおいて、それぞれ書き込み処理がされ
る。
In the case of a write request, an address is added from a node connected to the processor which issued the write request, and a write request cell is sent out, and the memory is assigned to the address and the cache memory. Write processing is performed in each node.

【0045】例えば、キャッシュ13にアドレス「00
000000H」のデータが格納されていて、ノード8
が、同じアドレス「00000000H」に書き込みを
行う場合について説明する。
For example, the address "00" is stored in the cache 13.
"000000H" data is stored in the node 8
However, the case where data is written to the same address "00000000H" will be described.

【0046】まず、ノード8の送信リクエストバッファ
に「アドレス『00000000H』からの16バイト
のデータの書き出しを要求する」ライト送信リクエスト
が格納される。図28および図29に示すアルゴリズム
に従って、ノード8は、ビジーフラグが0か1かを判断
し(S330)、空セルを受信すると、レスポンス要求
があるかいなかを判断し(S331)、リード要求があ
るかないかを判断し(S333)、ライト要求があるか
ないかを判断する(S337)。ライト送信リクエスト
が格納されている場合には要求ありとして送信処理を行
い(S338)、ビジーフラグ=1かつタイプ=01の
セル(以下、ライトセルと呼ぶ)に変え、送信元IDを
自ノードIDの31Hにし、書き込みアドレスを設定し
て送信する。このセルは、ノード9を通過してノード1
に到着する。ノード1において、図23および図24に
示すように、目的のメモリアドレスがエントリされてい
る場合には(S231、S240、S254およびS2
60)、受信情報として処理し(S261〜S265お
よびS282)、当該アドレスに対応するデータを更新
する。そしてこのセルは、ノード2および3を通過して
ノード4に到着する。ノード4においては、図25およ
び図26に示すアルゴリズムに従い、受信手段が、該セ
ルのビジーフラグが1である場合に(S290)、セル
タイプを判断し(S293)、目的のメモリアドレスが
割当てアドレスか否かを判断する(S304)。目的の
メモリアドレスが割当てアドレスである場合には、当該
セルを受信情報として、そのセルの要求が自ノード宛で
あることを認識し、受信リクエストバッファにライト受
信リクエストを格納する(S312)とともに、転送処
理を行い(S305〜S311)、次ノードにセルを送
出する(S323)。受信リクエストバッファにライト
受信リクエストを格納後、当該メモリの対応するアドレ
スの内容を更新する。転送処理により、受信フラグ=1
としてセルを送出する。
First, a write transmission request "requesting writing of 16-byte data from address" 00000000H "is stored in the transmission request buffer of the node 8. According to the algorithm shown in FIG. 28 and FIG. 29, the node 8 judges whether the busy flag is 0 or 1 (S330), and when receiving the empty cell, judges whether there is a response request (S331) and makes a read request. Whether or not there is a write request is determined (S333), and whether or not there is a write request is determined (S337). If a write transmission request is stored, transmission processing is performed with a request (S338), the cell is changed to a cell with busy flag = 1 and type = 01 (hereinafter referred to as write cell), and the transmission source ID is set to the node ID It is set to 31H, the write address is set, and the data is transmitted. This cell passes through node 9 and node 1
Arrive at. In node 1, as shown in FIGS. 23 and 24, when the target memory address is entered (S231, S240, S254 and S2).
60), process the received information (S261 to S265 and S282), and update the data corresponding to the address. This cell then passes through nodes 2 and 3 and arrives at node 4. In the node 4, when the busy flag of the cell is 1 (S290), the receiving unit determines the cell type (S293) according to the algorithm shown in FIGS. 25 and 26, and if the target memory address is the assigned address. It is determined whether or not (S304). When the target memory address is the assigned address, the cell is used as the reception information, and it is recognized that the request for the cell is addressed to the own node, and the write reception request is stored in the reception request buffer (S312). Transfer processing is performed (S305 to S311), and the cell is transmitted to the next node (S323). After storing the write reception request in the reception request buffer, the content of the corresponding address in the memory is updated. Receive flag = 1 due to transfer processing
To send the cell as.

【0047】以上のように処理することにより、書き込
み処理をすることができる。また、1のプロセッサがあ
るメモリのアドレスに書き込みを行う場合において、当
該アドレスに対応するデータを格納するキャッシュメモ
リを備える他のプロセッサがキャッシュメモリの内容を
更新する場合には、他のプロセッサと前記1のプロセッ
サとの間で、処理の調整を行うようにしてもよい。これ
は、各プロセッサ間で同期を取り、処理の順序を決定す
ることにより対応できる。
The write processing can be performed by the above processing. Further, when one processor writes to an address of a memory, if another processor having a cache memory that stores data corresponding to the address updates the contents of the cache memory, the other processor and The processing may be coordinated with one processor. This can be dealt with by synchronizing the processors and determining the processing order.

【0048】次に、プロセッサ11が、アドレス「FE
000000H」にデータ「000011112222
33334444555566667777H」を書き
込む場合を図21および図22を参照して説明する。ア
ドレス「FE000000H」は、キャッシュメモリを
備えていないノード8および9において割り当てられて
いるアドレスであり、この場合は同報通信となる。
Next, the processor 11 sends the address "FE
The data "0000111112222" in "000000H"
The case of writing "333344445555566666777H" will be described with reference to FIGS. The address "FE000000H" is an address assigned in the nodes 8 and 9 that do not have a cache memory, and in this case, it is a broadcast communication.

【0049】まず、ノード1において、送信リクエスト
バッファに「アドレス『FE000000H』から16
バイトのデータ『00001111222233334
444555566667777H』の書き込みを要求
する」ライト送信リクエストが格納される。図23およ
び図24に示すアルゴリズムに従って、ノード1の送信
手段は、ビジーフラグが0か1かを判断し(S23
1)、ビジーフラグ=0の空セルを受信すると、レスポ
ンス要求があるかいなかを判断し(S232)、リード
要求があるかないかを判断し(S234)、ライト要求
があるかないかを判断し(S238)、ライト送信リク
エストが格納されている場合にはライト要求ありとして
送信処理を行う(S239)。ビジーフラグ=1かつタ
イプ=01のセル(以下、ライトセルと呼ぶ)に変え、
送信元IDを自ノードIDの10Hにし、書き込むメモ
リアドレスを設定して送信する。その場合のセルのビッ
トパターンを図21に示す。このセルは、ノード2〜7
を通過してノード8に到着する。ノード8は、図28お
よび図29に示すアルゴリズムに従い、受信手段が、該
セルのビジーフラグが1である場合に(S330)、セ
ルタイプを判断する(S339)。セルタイプがライト
要求の場合には、送信IDが自ノードであるかないかを
判断し、自ノードでない場合には、目的のメモリアドレ
スが割当てアドレスか否かを判断する(S356)。目
的のメモリアドレスが割当てアドレスである場合には、
当該セルを受信情報として、そのセルの要求が自ノード
宛であることを認識し、受信リクエストバッファにライ
ト受信リクエストを格納する(S359)。それととも
に、転送処理を行う(S357、S358、S36
0)。これにより、図22に示すように、受信フラグ=
1としてノード9にセルを送信する。ノード9において
も、図28および図29に示すアルゴリズムに従い、そ
のセルの要求が自ノードに割り当てられているアドレス
であることを検出し、受信リクエストバッファにリード
受信リクエストを格納するとともに、受信フラグ=1と
上書きしてノード1に送信する。ノード1は、図23お
よび図24に示すアルゴリズムに従って、自分が送信し
たライトセルが正常に受け付けられたことを認識すると
(S231、S240、S254、S255、S25
6)、送信リクエストバッファ内のライト送信リクエス
トを解放し(S257)、そのセルを空セルに変える
(S258)。
First, in the node 1, in the transmission request buffer, "from address" FE000000H "to 16
Byte data “000011112222233334
"44545556666667777H" request for writing "write transmission request" is stored. According to the algorithms shown in FIGS. 23 and 24, the transmission means of the node 1 determines whether the busy flag is 0 or 1 (S23
1) When receiving an empty cell with a busy flag = 0, it is determined whether there is a response request (S232), whether there is a read request (S234), and whether there is a write request (S238). ), If a write transmission request is stored, it is determined that there is a write request and transmission processing is performed (S239). Change to a cell with busy flag = 1 and type = 01 (hereinafter called a write cell),
The transmission source ID is set to 10H of its own node ID, the memory address to be written is set, and transmission is performed. The bit pattern of the cell in that case is shown in FIG. This cell is node 2-7
And arrives at node 8. According to the algorithm shown in FIGS. 28 and 29, the node 8 determines the cell type when the receiving means has the busy flag of the cell being 1 (S330) (S339). When the cell type is a write request, it is determined whether or not the transmission ID is the own node, and when it is not the own node, it is determined whether the target memory address is the assigned address (S356). If the desired memory address is an assigned address,
Using the cell as the reception information, it recognizes that the request of the cell is addressed to its own node, and stores the write reception request in the reception request buffer (S359). At the same time, transfer processing is performed (S357, S358, S36).
0). As a result, as shown in FIG. 22, the reception flag =
The cell is transmitted to the node 9 as 1. According to the algorithm shown in FIGS. 28 and 29, the node 9 also detects that the request of the cell is the address assigned to its own node, stores the read reception request in the reception request buffer, and the reception flag = 1 is overwritten and sent to node 1. When the node 1 recognizes that the light cell transmitted by itself is normally accepted according to the algorithm shown in FIGS. 23 and 24 (S231, S240, S254, S255, S25).
6) The write transmission request in the transmission request buffer is released (S257), and the cell is changed to an empty cell (S258).

【0050】一方、ノード8および9においては、受信
リクエストバッファに格納されたライト受信リクエスト
は処理され、その結果、それぞれのノード内のアドレス
「FE000000H」に相当する部分に16バイトの
データ「000011112222333344445
55566667777H」が書き込まれる。
On the other hand, in the nodes 8 and 9, the write reception request stored in the reception request buffer is processed, and as a result, 16-byte data "000011111222223333434445" is stored in the portion corresponding to the address "FE000000H" in each node.
55556666777H "is written.

【0051】このように、本実施例を適用したシステム
は、キャッシュメモリを備えていないノードにおいてブ
ロードキャスト転送ができる。また、他のプロセッサや
I/Oコントローラ等の情報のやり取りを覗き見ること
も容易である。これは、多重化(デュアル、デュプレッ
クス)された高信頼性のシステム構築が容易であること
を示している。
As described above, the system to which this embodiment is applied can perform broadcast transfer in a node that does not have a cache memory. In addition, it is easy to peep at the exchange of information between other processors and I / O controllers. This indicates that it is easy to build a highly reliable system that is multiplexed (dual, duplex).

【0052】以上の実施例においては、キャッシュメモ
リのアドレスに対応するデータ(以下、キャッシュライ
ンという)は、システム内の一つのキャッシュメモリに
のみ許可する場合について示した。つぎに、第2の実施
例として、システム内の複数のキャッシュメモリに同一
アドレスのデータを保持することを許可する場合につい
て説明する。この場合、全てのキャッシュメモリに保持
する同一アドレスのデータは内容が一致するように保証
する必要がある。この一致保証について、不一致期間を
ある程度許容する「ゆるい一致保証」と、不一致期間を
まったく保証しない「厳しい一致保証」との2種類につ
いて以下に説明する。この場合、同じアドレスに対する
書き込みに対して、プロセッサやI/Oコントローラ等
に重複しない優先順位をあらかじめ割り振っておき、各
ノードに優先順位を保持させておく。
In the above embodiments, the data corresponding to the address of the cache memory (hereinafter referred to as the cache line) is permitted only to one cache memory in the system. Next, as a second embodiment, a case will be described in which a plurality of cache memories in the system are allowed to hold data of the same address. In this case, it is necessary to guarantee that the data of the same address held in all the cache memories have the same content. Two types of this match guarantee will be described below: a "soft match guarantee" that allows a mismatch period to some extent and a "strict match guarantee" that does not guarantee a mismatch period at all. In this case, with respect to writing to the same address, non-overlapping priorities are assigned to the processor, the I / O controller, etc. in advance, and each node holds the priorities.

【0053】まず、「ゆるい一致保証」のアルゴリズム
の例について説明する。
First, an example of the "loose match guarantee" algorithm will be described.

【0054】(1)各プロセッサは、自プロセッサに接
続するキャッシュメモリ内のキャッシュラインを変更す
る場合には、そのキャッシュラインに相当するアドレス
に対応する書き込み要求を発行する。該プロセッサに接
続するノードは、該書き込み要求に対して書き込み要求
セルを送出する。
(1) When changing the cache line in the cache memory connected to its own processor, each processor issues a write request corresponding to the address corresponding to the cache line. The node connected to the processor sends a write request cell in response to the write request.

【0055】(2)その後、上記送出セルが伝送路およ
び各ノードを通過して自ノードに戻ってくる前に、同じ
アドレスに対する書き込み要求を他のノードから受信し
た場合には、そのリクエストもとの優先順位と自ノード
の優先順位とを比較する。
(2) After that, if a write request for the same address is received from another node before the transmission cell passes through the transmission line and each node and returns to its own node, the request source And the priority of the self node are compared.

【0056】自ノードの優先順位が高い場合には、他
のノードからの同じアドレスに対する書き込み要求のセ
ルに書き込み要求のリトライフラグをセットする。
When the own node has a high priority, the retry flag of the write request is set in the cell of the write request to the same address from another node.

【0057】自ノードの優先順位が低い場合には、他
のノードからの同じアドレスに対する書き込み要求のセ
ルを受信情報としてその書き込み要求に従い、書き込み
処理をする。
When the priority of the own node is low, the write process is performed according to the write request with the cell of the write request from the other node for the same address as the reception information.

【0058】(3)上記(1)において送出したセルが
伝送路および各ノードを通過して自ノードに戻ってきた
場合に、 リトライフラグが立っていない場合には、当該ノード
に接続するキャッシュメモリ内の目的のキャッシュライ
ンを変更する。
(3) If the retry flag is not set when the cell transmitted in (1) above passes through the transmission line and each node and returns to the own node, the cache memory connected to the node. Change the desired cache line in.

【0059】リトライフラグが立っている場合には、
同じアドレスに関して上記(1)から繰返し処理をす
る。
When the retry flag is set,
The above process (1) is repeated for the same address.

【0060】(4)書き込み要求を発行していない他の
ノードにおいては、受信した書き込み要求のリトライフ
ラグをチェックする。
(4) Other nodes that have not issued the write request check the retry flag of the received write request.

【0061】リトライフラグが立っていない場合に
は、当該書き込み要求に従って処理を行う。
If the retry flag is not set, the process is performed according to the write request.

【0062】リトライフラグが立っている場合には、
当該書き込み要求に従わない。
When the retry flag is set,
Do not follow the write request.

【0063】このようにして書き込み要求を送出するこ
とにより、同一アドレスのデータを保持する記憶装置に
接続するノードは受信して書き込み処理をする。この場
合、書き込み要求が重なったときには、優先順位にした
がって、処理を行う。
By thus sending the write request, the node connected to the storage device holding the data of the same address receives and performs the write processing. In this case, when the write requests overlap, the processing is performed according to the priority order.

【0064】つぎに、「厳しい一致保証」のアルゴリズ
ムの例を以下に示す。
Next, an example of the algorithm of "strict match guarantee" is shown below.

【0065】(1)各プロセッサは、自プロセッサに接
続するキャッシュメモリ内のキャッシュラインを変更す
る場合には、「そのキャッシュラインに相当するアドレ
スに書き込みを行いた異ので許可して欲しい」」いうこ
とを示す許可要求を発行する。該プロセッサに接続する
ノードは、該許可要求に対して許可要求セルを送出す
る。
(1) When changing the cache line in the cache memory connected to its own processor, each processor says, "It is different because the address corresponding to the cache line has been written, so please allow it." A permission request indicating that is issued. The node connected to the processor sends a permission request cell in response to the permission request.

【0066】(2)その後、上記許可要求セルが伝送路
および各ノードを通過して自ノードに戻ってくる前に、
同じアドレスに対する書き込み許可要求を他のノードか
ら受信した場合には、そのリクエストもとの優先順位と
自ノードの優先順位とを比較する。
(2) After that, before the permission request cell passes through the transmission line and each node and returns to the own node,
When a write permission request for the same address is received from another node, the priority order of the request is compared with the own node priority order.

【0067】自ノードの優先順位が高い場合には、他
のノードからの同じアドレスに対する書き込み許可要求
のセルに、「許可しない」ことを示す情報を書き込む。
When the own node has a high priority, the information indicating "not permitted" is written in the cell of the write permission request for the same address from another node.

【0068】自ノードの優先順位が低い場合には、他
のノードからの同じアドレスに対する書き込み許可要求
のセルをそのまま中継する。
When the priority of the own node is low, the cell of the write permission request for the same address from another node is relayed as it is.

【0069】(3)上記(1)において送出した許可要
求セルが伝送路および各ノードを通過して自ノードに戻
ってきた場合に、 「許可しない」ことを示す情報が書き込まれていない
場合には、当該アドレスに対する書き込み要求を発行す
る。書き込み要求が、他のノードにおいて受信されて、
リトライフラグが立たないで(正常に書き込み処理され
て)、戻ってくるまで書き込み要求を発行しつづける。
(3) When the permission request cell transmitted in (1) above passes through the transmission line and each node and returns to the own node, when the information indicating “not permitted” is not written Issues a write request to the address. A write request is received at another node,
The retry flag is not set (write processing is performed normally), and the write request is continuously issued until it returns.

【0070】許可要求セルを受信後、当該書き込み要求
が一周して自ノードに戻ってくるまでに、同じアドレス
に対する許可要求セルを受信した場合には、優先順とは
無関係にその許可要求に対して「許可しない」ことを示
す情報を書き込む。
When the permission request cell for the same address is received by the time the write request goes around and returns to the own node after the permission request cell is received, the permission request cell is received regardless of the priority order. And write information indicating "not allowed".

【0071】「許可しない」ことを示す情報が書き込
まれている場合には、同じアドレスに対する書き込み要
求を受信後に、上記(1)から繰返し処理をする。(た
だし、この書き込み要求の観測は、書き込み許可要求を
発行した時点から開始する。) (4)他のノードにおいても、上記(1)から(3)に
示す処理を行う。
If the information indicating "not permitted" is written, after the write request for the same address is received, the process is repeated from (1). (However, the observation of the write request is started from the time when the write permission request is issued.) (4) The other nodes also perform the processes shown in (1) to (3) above.

【0072】このようにして許可要求を送出して許可さ
れたときに、書き込み要求を送出することで、同一アド
レスのデータを保持する記憶装置に接続するノードは受
信して書き込み処理をする。この場合、書き込み許可要
求が重なったときには、優先順位にしたがって処理を行
う。
In this way, when the permission request is transmitted and when the permission is permitted, by transmitting the write request, the node connected to the storage device holding the data of the same address receives and performs the write processing. In this case, when the write permission requests overlap, processing is performed according to the priority order.

【0073】以上のように処理することにより、システ
ム内の複数のキャッシュメモリに同一アドレスのデータ
を保持することを許可することができ、全てのキャッシ
ュメモリに保持する同一アドレスのデータは内容が一致
するように保証することができる。
By processing as described above, it is possible to permit the data of the same address to be held in a plurality of cache memories in the system, and the contents of the data of the same address held in all the cache memories match. Can be guaranteed to.

【0074】以上、図1に示す構成をもとに説明してき
たが、その物理的な構成は、本実施例にとって本質的な
項目ではない。例えば、全てのノードを1パッケージ上
に配置したり、1LSIで実現したりしても良い。この
場合、クロックの生成、分配やフレームの区切りの伝達
等の方式に関しては、より柔軟な選択ができる。また、
伝送路も、その材質や帯域、多重度等は任意である。
Although the above description has been given based on the configuration shown in FIG. 1, the physical configuration is not an essential item for this embodiment. For example, all the nodes may be arranged on one package or realized by one LSI. In this case, it is possible to more flexibly select a method such as clock generation, distribution, and transmission of frame delimiters. Also,
The transmission line may be made of any material, band, multiplicity, etc.

【0075】以上に述べたように、リング上の伝送路に
収容するプロセッサやメモリコントローラ、I/Oコン
トローラの数に制限がないので、異なるアドレスへのア
クセスの独立性は高い。また、伝送路上を周回させるパ
ケットの数やその予約の方式によって、システムの性能
を容易に調整することができる。また、他の装置間の伝
送の監視やブロードキャスト伝送が容易なので、多重化
システムの構築が容易である。更に、システムの物理的
な規模にも制限が無いので、伝送距離や、収容する装置
の大きさに依存しないスケーラブルなシステムを構築す
ることが可能である。また、ディレクトリを用いていな
いのでリングの伝送能力を有効に使用することができ
る。
As described above, since the number of processors, memory controllers and I / O controllers accommodated in the transmission path on the ring is not limited, access to different addresses is highly independent. Further, the performance of the system can be easily adjusted depending on the number of packets circulating on the transmission path and the reservation method thereof. Further, since it is easy to monitor the transmission between other devices and to perform the broadcast transmission, it is easy to construct the multiplexing system. Furthermore, since the physical scale of the system is not limited, it is possible to construct a scalable system that does not depend on the transmission distance or the size of the device to be housed. In addition, since the directory is not used, the ring transmission capacity can be effectively used.

【0076】[0076]

【発明の効果】本発明によれば、プロセッサシステムに
おいて、プロセッサ等の装置数に制限がなく、キャッシ
ュメモリのデータの一致性を保証できる。
According to the present invention, in the processor system, the number of devices such as processors is not limited, and the consistency of data in the cache memory can be guaranteed.

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

【図1】本発明によるリングLANシステムの一実施例
の構成図である。
FIG. 1 is a configuration diagram of an embodiment of a ring LAN system according to the present invention.

【図2】図1に示すシステムにおけるフレームフォーマ
ットである。
FIG. 2 is a frame format in the system shown in FIG.

【図3】図1に示すシステムにおけるセルフォーマット
である。
FIG. 3 is a cell format in the system shown in FIG.

【図4】図1に示すシステムのノード3のブロック図で
ある。
4 is a block diagram of a node 3 of the system shown in FIG.

【図5】図1に示すシステムのノード1,2のブロック
図である。
5 is a block diagram of nodes 1 and 2 of the system shown in FIG. 1. FIG.

【図6】図1に示すシステムのノード4〜7のブロック
図である。
6 is a block diagram of nodes 4-7 of the system shown in FIG. 1. FIG.

【図7】図1に示すシステムのノード8,9のブロック
図である。
7 is a block diagram of nodes 8 and 9 of the system shown in FIG.

【図8】図1に示すシステムにおけるスクランブル回路
の構成図である。
FIG. 8 is a configuration diagram of a scramble circuit in the system shown in FIG.

【図9】図1に示すシステムにおけるフレーム同期の状
態遷移図である。
9 is a state transition diagram of frame synchronization in the system shown in FIG.

【図10】図1に示すシステムにおける周回遅延保証バ
ッファの説明図である。
10 is an explanatory diagram of a loop delay guarantee buffer in the system shown in FIG.

【図11】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
11 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図12】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
FIG. 12 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1.

【図13】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
FIG. 13 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1.

【図14】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
14 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図15】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
15 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図16】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
16 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図17】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
17 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図18】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
FIG. 18 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1.

【図19】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
19 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図20】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
20 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図21】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
21 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図22】図1に示すシステムにおけるセルデータの一
例を示す説明図である。
22 is an explanatory diagram showing an example of cell data in the system shown in FIG. 1. FIG.

【図23】図1に示すシステムのノード1,2における
セル処理のフローチャート(1)である。
23 is a flowchart (1) of cell processing in nodes 1 and 2 of the system shown in FIG.

【図24】図1に示すシステムのノード1,2における
セル処理のフローチャート(2)である。
24 is a flowchart (2) of cell processing in the nodes 1 and 2 of the system shown in FIG.

【図25】図1に示すシステムのノード4〜7における
セル処理のフローチャート(1)である。
25 is a flowchart (1) of cell processing in nodes 4 to 7 of the system shown in FIG.

【図26】図1に示すシステムのノード4〜7における
セル処理のフローチャート(2)である。
FIG. 26 is a flowchart (2) of cell processing in nodes 4 to 7 of the system shown in FIG.

【図27】各ノードの構成図である。FIG. 27 is a configuration diagram of each node.

【図28】図1に示すシステムのノード8,9における
セル処理のフローチャート(1)である。
28 is a flowchart (1) of cell processing in the nodes 8 and 9 of the system shown in FIG.

【図29】図1に示すシステムのノード8,9における
セル処理のフローチャート(2)である。
29 is a flowchart (2) of the cell processing in the nodes 8 and 9 of the system shown in FIG.

【図30】図1に示すシステムにおいてセルを連続しよ
うする場合の変更例を示すフローチャートである。
FIG. 30 is a flow chart showing a modification example in the case of attempting to make cells continuous in the system shown in FIG. 1.

【符号の説明】 1〜9…ノード。11,12…ノード。13,14…キ
ャッシュ。15…監視装置。16〜19…メモリ。20
…LANコントローラ。21…LAN。22…I/Oバ
ス。23〜24…ディスク。
[Explanation of Codes] 1-9 ... Nodes. 11, 12 ... Nodes. 13, 14 ... Cache. 15 ... Monitoring device. 16 to 19 ... Memory. 20
... LAN controller. 21 ... LAN. 22 ... I / O bus. 23-24 ... Disc.

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】情報を記憶するキャッシュメモリを各々備
える複数のプロセッサと、 該複数のプロセッサの各々が読み書きできるアドレス空
間を割り当てた1または2以上の記憶装置と、 前記複数のプロセッサと前記記憶装置とのそれぞれに対
応して設けられるノードとを有するプロセッサシステム
において、 該各々のノードは、伝送路により他のノードとリング状
に接続され、 前記記憶装置に対応する各々のノードは、情報に付加さ
れたアドレスを監視し、該アドレスが記憶装置に割り当
てられたアドレスと一致するときに該情報を受信情報と
する受信手段と、該受信手段で受信した受信情報に基づ
き、該受信情報が読み出し指示の場合には、該読み出し
指示を発行したノード宛に該アドレスに対応する当該記
憶装置に記憶している情報を送出し、該受信情報が書き
込み指示の場合には、該アドレスに対応する当該記憶装
置に該受信情報を書き込む処理を行う転送処理手段とを
備え、 前記複数のプロセッサに対応する各々のノードは、前記
記憶装置のアドレスおよび当該アドレスへの読み出し指
示/書き込み指示を含む情報を送出する送出手段と、前
記プロセッサが前記アドレスを指示して当該アドレスに
対応する情報の読み出し指示により読みだした際に、読
みだした情報を該プロセッサに備えるキャッシュメモリ
に格納し、該キャッシュメモリに格納する情報のアドレ
スを管理する管理手段と、情報に付加されたアドレスを
監視し、該アドレスが前記管理手段により管理するアド
レスと一致するときに該情報を受信情報とする受信手段
と、該受信手段で受信した受信情報に基づき、該受信情
報が読み出し指示の場合には、前記記憶装置に対応する
ノードからの当該アドレスの読み出し情報の代わりに、
該アドレスに対応する当該キャッシュメモリに記憶して
いる情報を前記読み出し指示を発行したノード宛に送出
し、該受信情報が書き込み指示の場合には、該アドレス
に対応する当該キャッシュメモリに該受信情報を書き込
む処理を行う転送処理手段とを備えることを特徴とする
プロセッサシステム。
1. A plurality of processors each including a cache memory for storing information, one or more storage devices to which an address space readable and writable by each of the plurality of processors is allocated, the plurality of processors and the storage device. And a node provided corresponding to each of the nodes, each node is connected to another node in a ring shape by a transmission line, and each node corresponding to the storage device is added to information. The received information is monitored based on the received information received by the receiving means that monitors the received address and the received information when the address matches the address assigned to the storage device. In the case of, the information stored in the storage device corresponding to the address is addressed to the node that issued the read instruction. And a transfer processing unit that performs a process of writing the received information to the storage device corresponding to the address when the received information is a write instruction, and each node corresponding to the plurality of processors is Sending means for sending information including an address of the storage device and a read instruction / write instruction to the address, and when the processor instructs the address and reads the information corresponding to the address by a read instruction, The read information is stored in the cache memory provided in the processor, the management means for managing the address of the information stored in the cache memory, and the address added to the information are monitored, and the address is managed by the management means. A receiving unit that uses the received information as the received information when it matches the address, and the received information received by the receiving unit. Then, when the received information is a read instruction, instead of the read information of the address from the node corresponding to the storage device,
When the information stored in the cache memory corresponding to the address is sent to the node that issued the read instruction and the received information is a write instruction, the received information is stored in the cache memory corresponding to the address. And a transfer processing unit that performs a writing process.
【請求項2】請求項1において、前記複数のプロセッサ
に対応する各々のノードの転送処理手段は、 前記記憶装置に対応するノードからの当該アドレスの読
み出し情報の代わりに、該アドレスに対応する当該キャ
ッシュメモリに記憶している情報を前記読み出し指示を
発行したノード宛に送出する際に、 前記記憶装置に対応するノードが前記読み出し指示を受
信する前に、該読み出し指示を受信した場合には、該ア
ドレスに対応する当該キャッシュメモリに記憶している
情報を送出し、前記記憶装置に対応するノードにおいて
前記読み出し指示を受信しないように受信フラグを当該
情報にセットし、 前記記憶装置に対応するノードにおいて前記読み出し指
示を受信した後に、該アドレスに対応する前記記憶装置
に記憶している情報を、前記読み出し指示を発行したノ
ードが受信しないように受信フラグを情報にセットし、
該アドレスに対応する当該キャッシュメモリに記憶して
いる当該情報を送出し、 前記複数のプロセッサおよび記憶装置に対応する各々の
ノードの受信手段は、前記受信情報に前記受信フラグが
セットされていることを検出した場合には、当該受信情
報を受信情報としないことを特徴とするプロセッサシス
テム。
2. The transfer processing means of each node corresponding to each of the plurality of processors according to claim 1, wherein the transfer information corresponding to the address is used instead of the read information of the address from the node corresponding to the storage device. When transmitting the information stored in the cache memory to the node that issued the read instruction, when the node corresponding to the storage device receives the read instruction before receiving the read instruction, The information stored in the cache memory corresponding to the address is transmitted, a reception flag is set in the information so that the node corresponding to the storage device does not receive the read instruction, and the node corresponding to the storage device After receiving the read instruction, the information stored in the storage device corresponding to the address is Is set to information reception flag so that the node has issued only issued instruction is not received,
The information stored in the cache memory corresponding to the address is transmitted, and the reception means of each node corresponding to the plurality of processors and the storage device has the reception flag set in the reception information. The processor system characterized in that, when the above is detected, the received information is not regarded as the received information.
【請求項3】請求項1において、前記ノードのうちの一
つは、前記伝送路上を伝送する情報を管理するマスタノ
ードであり、 該マスタノードは、該情報を受信時に、該情報をマスタ
ノードで受信したことを示すマスタノード受信情報を付
加し、該マスタノード受信情報が付加されている場合に
は、該情報を廃棄することを特徴とするプロセッサシス
テム。
3. The information processing system according to claim 1, wherein one of the nodes is a master node that manages information transmitted on the transmission path, and the master node receives the information when it receives the information. A processor system characterized by adding master node reception information indicating that the master node reception information has been received, and discarding the information when the master node reception information is added.
【請求項4】請求項3において、前記マスタノードは、
あらかじめ定めた固定長のセルを生成して前記伝送路に
送出し、 前記送信手段は、前記伝送路上の前記セルを検出し、前
記情報を送出する場合には、該セルが使用されていない
ときに、該セルのあらかじめ定められた位置に、前記読
み書きする前記記憶装置のアドレス、該セルが使用中で
あることを示す情報および送信情報を付加して送出する
ことを特徴とするプロセッサシステム。
4. The master node according to claim 3,
When a cell having a predetermined fixed length is generated and transmitted to the transmission line, the transmitting unit detects the cell on the transmission line and transmits the information, when the cell is not used In addition, the processor system is characterized in that the address of the memory device for reading and writing, information indicating that the cell is in use, and transmission information are added to a predetermined position of the cell and transmitted.
【請求項5】請求項3において、前記マスタノードは、
あらかじめ定めた情報送出を許可するためのトークンを
生成して前記伝送路に送出し、 前記送信手段は、前記情報を送出する場合には、前記伝
送路上の前記トークンを検出して獲得し、送出する情報
の容量を示す情報と、読み書きする前記記憶装置のアド
レスおよび送信情報を付加して送出することを特徴とす
るプロセッサシステム。
5. The master node according to claim 3,
A token for permitting the transmission of a predetermined information is generated and transmitted to the transmission line, and when transmitting the information, the transmitting unit detects and acquires the token on the transmission line and transmits the token. A processor system, wherein information indicating a capacity of information to be stored, an address of the storage device to be read and written, and transmission information are added and transmitted.
【請求項6】請求項1において、前記複数のプロセッサ
は、あらかじめ優先順位が割り振られ、 前記複数のプロセッサに対応する各々のノードにおい
て、 前記管理手段は、当該優先順位を保持し、 前記送信手段は、前記記憶装置のアドレスを付加して書
き込み要求を送出し、前記転送処理手段は、当該送信手
段が書き込み要求送出時から、該書き込み要求に受信し
たことを示す情報が付加されている受信情報を受信する
までに、他のノードから前記アドレスに書き込み要求が
送出された場合には、前記管理手段の優先順位を参照
し、自ノードが他のノードより優先順位が高い場合に
は、他のノードから要求を再送するように指示し、前記
優先順位が低い場合には、他のノードから前記アドレス
に書き込み要求を受信情報として書き込み処理を行うこ
とを特徴とするプロセッサシステム。
6. The priority order is assigned to the plurality of processors in advance, and in each node corresponding to the plurality of processors, the management unit holds the priority order and the transmission unit. Is a write request sent by adding the address of the storage device, and the transfer processing means has received information added with information indicating that the write request has been received since the write request was sent by the sending means. If a write request is sent from the other node to the address before receiving, the priority of the management means is referred to, and if the own node has a higher priority than the other node, another A node instructs to retransmit the request, and if the priority is low, a write request from another node to the address as a received information is written. Processor system, which comprises carrying out.
【請求項7】請求項1において、前記複数のプロセッサ
は、あらかじめ優先順位が割り振られ、 前記複数のプロセッサに対応する各々のノードにおい
て、 前記管理手段は、当該優先順位を保持し、 前記送信手段は、前記記憶装置のアドレスを付加して書
き込み許可要求を送出し、 前記転送処理手段は、当該送信手段が書き込み許可要求
送出時から、該書き込み許可要求に受信したことを示す
情報が付加されている受信情報を受信するまでに、他の
ノードから前記アドレスに書き込み許可要求が送出され
た場合には、前記管理手段の優先順位を参照し、自ノー
ドが他のノードより優先順位が高い場合には、他のノー
ドから書き込み許可要求を許可しないとして指示し、前
記優先順位が低い場合には、他のノードから前記アドレ
スに書き込み許可要求を受信情報として書き込みを許可
し、 前記送信手段は、書き込みを許可された場合に、前記記
憶装置のアドレスを付加して書き込み要求を送出するこ
とを特徴とするプロセッサシステム。
7. The processor according to claim 1, wherein priorities are assigned to the plurality of processors in advance, and in each node corresponding to the plurality of processors, the management unit holds the priorities and the transmission unit. Sends a write permission request by adding the address of the storage device, and the transfer processing unit adds information indicating that the write permission request has been received since the transmission unit sent the write permission request. If a write permission request is sent from the other node to the address before receiving the received information, the priority of the management means is referred to, and if the own node has a higher priority than other nodes, Indicates that the write permission request is not permitted from another node, and when the priority is low, the write permission is permitted from another node to the address. A processor system, wherein a permission request is permitted as a reception information to permit writing, and the transmission unit transmits the writing request by adding the address of the storage device when the writing is permitted.
【請求項8】請求項1において、前記管理手段は、自己
の転送処理手段により前記アドレスに対応する当該キャ
ッシュメモリに記憶している情報を送出した場合に、自
己の管理している当該アドレスを消去することを特徴と
するプロセッサシステム。
8. The management means according to claim 1, wherein when the information stored in the cache memory corresponding to the address is transmitted by the transfer processing means of the management means, the management means determines the address managed by itself. A processor system characterized by erasing.
【請求項9】情報を記憶するキャッシュメモリを各々備
える複数のプロセッサと、 該複数のプロセッサの各々が読み書きできるアドレス空
間を割り当てた1または2以上の記憶装置と、 前記複数のプロセッサと前記記憶装置とのそれぞれに対
応して設けられ、前記プロセッサと前記記憶装置間の通
信を制御するノードとを有するプロセッサシステムにお
いて、 該各々のノードは、伝送路により他のノードとリング状
に接続され、 前記複数のプロセッサに対応する各々のノードは、前記
記憶装置に記憶されている情報を読み出す際には、前記
記憶装置のアドレスおよび当該アドレスへの読み出し指
示を前記伝送路へ送出し、 前記記憶装置に対応する各々のノードは、当該記憶装置
に割り当てられたアドレスへの読み出し指示を受けた場
合には、該アドレスに対応する、当該記憶装置に記憶し
ている情報を前記伝送路へ送出し、 前記複数のプロセッサに対応する各々のノードは、前記
記憶装置から読みだした情報を該プロセッサに備えるキ
ャッシュメモリに格納するとともに、当該情報の前記記
憶装置におけるアドレスを保持し、他のノードが当該ア
ドレスに対する読み出し指示を送出した場合に、前記記
憶装置に対応するノードからの当該アドレスの読み出し
情報の代わりに、該アドレスに対応する当該キャッシュ
メモリに記憶している情報を前記読み出し指示をしたノ
ード宛に送出することを特徴とするプロセッサシステ
ム。
9. A plurality of processors each having a cache memory for storing information, one or more storage devices to which an address space readable and writable by each of the plurality of processors is allocated, and the plurality of processors and the storage device. In a processor system having nodes for controlling communication between the processor and the storage device, each of the nodes being connected to another node in a ring shape by a transmission line, When reading information stored in the storage device, each node corresponding to a plurality of processors sends an address of the storage device and a read instruction to the address to the transmission line, Each corresponding node receives a read instruction to the address assigned to the storage device. , The information stored in the storage device corresponding to the address is transmitted to the transmission path, and each node corresponding to the plurality of processors has a cache in which the information read from the storage device is provided in the processor. In addition to storing the information in the memory and holding the address of the information in the storage device, when another node sends a read instruction for the address, instead of the read information of the address from the node corresponding to the storage device. A processor system, wherein the information stored in the cache memory corresponding to the address is transmitted to the node that has issued the read instruction.
JP5102197A 1993-04-28 1993-04-28 Processor system Pending JPH06314239A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5102197A JPH06314239A (en) 1993-04-28 1993-04-28 Processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5102197A JPH06314239A (en) 1993-04-28 1993-04-28 Processor system

Publications (1)

Publication Number Publication Date
JPH06314239A true JPH06314239A (en) 1994-11-08

Family

ID=14320940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5102197A Pending JPH06314239A (en) 1993-04-28 1993-04-28 Processor system

Country Status (1)

Country Link
JP (1) JPH06314239A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006012133A (en) * 2004-05-28 2006-01-12 Intel Corp Multiprocessor chip having bidirectional ring interconnection
JP2009277052A (en) * 2008-05-15 2009-11-26 Toyota Infotechnology Center Co Ltd Distributed device control system
WO2012077169A1 (en) * 2010-12-06 2012-06-14 富士通株式会社 Information processing system and information transmission method
WO2012077400A1 (en) * 2010-12-09 2012-06-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Multicore system, and core data reading method
WO2012137339A1 (en) * 2011-04-07 2012-10-11 富士通株式会社 Information processing device, parallel computer system, and computation processing device control method
JP2017111569A (en) * 2015-12-15 2017-06-22 富士通株式会社 Information processing device, arithmetic processing unit, and method for controlling information processing device

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006012133A (en) * 2004-05-28 2006-01-12 Intel Corp Multiprocessor chip having bidirectional ring interconnection
JP2009277052A (en) * 2008-05-15 2009-11-26 Toyota Infotechnology Center Co Ltd Distributed device control system
WO2012077169A1 (en) * 2010-12-06 2012-06-14 富士通株式会社 Information processing system and information transmission method
JP5505516B2 (en) * 2010-12-06 2014-05-28 富士通株式会社 Information processing system and information transmission method
WO2012077400A1 (en) * 2010-12-09 2012-06-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Multicore system, and core data reading method
US8918590B2 (en) 2010-12-09 2014-12-23 International Business Machines Corporation Reading core data in a ring bus type multicore system
WO2012137339A1 (en) * 2011-04-07 2012-10-11 富士通株式会社 Information processing device, parallel computer system, and computation processing device control method
JP5621918B2 (en) * 2011-04-07 2014-11-12 富士通株式会社 Information processing apparatus, parallel computer system, and control method for arithmetic processing apparatus
US9164907B2 (en) 2011-04-07 2015-10-20 Fujitsu Limited Information processing apparatus, parallel computer system, and control method for selectively caching data
JP2017111569A (en) * 2015-12-15 2017-06-22 富士通株式会社 Information processing device, arithmetic processing unit, and method for controlling information processing device

Similar Documents

Publication Publication Date Title
USRE43058E1 (en) Switching ethernet controller
JP2983167B2 (en) Network interface device and packet processing method in network interface
US6112281A (en) I/O forwarding in a cache coherent shared disk computer system
US20030210574A1 (en) Scratchpad memory
US20100070718A1 (en) Memory management in a shared memory system
US6009472A (en) Process for transferring data between nodes in a multinodal information system
JPH0962558A (en) Method and system for database management
EP0789305A2 (en) Computer system data I/O by reference among multiple data sources and sinks
JPH06314239A (en) Processor system
US5442631A (en) Communication control device
US6408365B1 (en) Multiprocessor system having means for arbitrating between memory access request and coherency maintenance control
US5931903A (en) Computer system data I/O by reference among multiple CPUS
JP2001282650A (en) Data-buffering device and decentralized control system using the data-buffering device
JPH05216745A (en) Memory managing device
JP2007241922A (en) Arbitration method for use of shared resource, and arbitration device therefor
JP3312361B2 (en) Distributed shared memory system
JP2971119B2 (en) High-speed data transfer method in multiple processor system
JP2000138718A (en) Method for transmitting data through plural arranged interfaces in parallel
JPH0950423A (en) Data transmission method between remote information-processing systems
JP3056348B2 (en) Bridge device and storage means management method
JPH0528079A (en) Memory management device for communication system
JPH03296841A (en) Cache control system
JPH0619855A (en) Method and device for queueing message
JP2001273191A (en) Computer system
JPH0678000A (en) Communication equipment