JPH10269190A - 論理回路接続装置 - Google Patents

論理回路接続装置

Info

Publication number
JPH10269190A
JPH10269190A JP9073072A JP7307297A JPH10269190A JP H10269190 A JPH10269190 A JP H10269190A JP 9073072 A JP9073072 A JP 9073072A JP 7307297 A JP7307297 A JP 7307297A JP H10269190 A JPH10269190 A JP H10269190A
Authority
JP
Japan
Prior art keywords
instruction
logic circuit
transfer
instructions
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9073072A
Other languages
English (en)
Other versions
JP3713876B2 (ja
Inventor
Hideya Akashi
英也 明石
Toru Shonai
亨 庄内
Toshio Okochi
俊夫 大河内
Toshiaki Tarui
俊明 垂井
Yasuyuki Okada
康行 岡田
Koichi Okazawa
宏一 岡澤
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 JP07307297A priority Critical patent/JP3713876B2/ja
Publication of JPH10269190A publication Critical patent/JPH10269190A/ja
Application granted granted Critical
Publication of JP3713876B2 publication Critical patent/JP3713876B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 命令(トランザクション)を出力側論理回路
から入力側論理回路へ伝達する論理回路接続装置におい
て、命令の種類により生じる命令データ転送時の空きビ
ットを利用し、複数の命令を同時に伝達し、論理回路接
続装置の転送性能を向上する。 【解決手段】 出力側論理回路と入力側論理回路の中間
に、出力側論理回路からの出力である複数の命令の中か
ら、同時に入力側論理回路に送出する命令の組を選択す
る調停回路と、選択した命令の組を一つの転送命令に変
換し送出するエンコーダと、エンコーダから転送命令を
受けて出力側論理回路が発行した命令の組を復元し、入
力側論理回路へ復元した命令の組を出力するデコーダを
備えた論理回路接続装置を設ける。 【効果】 複数の命令が1つの転送命令になるので、複
数命令を同一サイクルで入力側論理回路に送出できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、論理回路間の命令
の転送性能を向上する論理回路接続方法及びそれを用い
た論理回路接続装置に係り、特に複数のプロセッサを結
合した並列計算機のプロセッサ間の接続に用いるのに好
適な論理回路接続方法及び論理回路接続装置に関する。
【0002】
【従来の技術】計算機等の大規模なシステムは、全体を
適当な論理単位(モジュール単位)に分割され、モジュ
ール単位で個別に設計される。従来、モジュールはシス
テムを構成する集積回路単位としていた。近年では、特
に、集積回路の大規模化が進んでおり、集積回路内を更
に複数のモジュールに分割して、分割された個々のモジ
ュール単位で設計することが一般的となっている。
【0003】システム及び集積回路内の各モジュール間
のデータ信号や制御信号の授受の方法は、送信側及び受
信側のモジュール間のインターフェイスとして規定され
る。そして、信号の送信側及び受信側の双方のモジュー
ルは、このインターフェイスに従って動作する様に設計
される。
【0004】上記のモジュール間のインターフェイス
は、使用する信号線数が少ないことが要求される。これ
は、集積回路間のインターフェイスでは、集積回路の入
出力ピン数に制限があること、集積回路内のインターフ
ェイスでは、モジュール間の信号線はモジュール内の信
号線と比較して長くなりやすく、集積回路の配線領域を
多くとること、の理由による。
【0005】通常、モジュール間でやり取りする命令は
複数種類存在する。これらの命令毎にモジュール間の信
号線を設け、個別に転送する構造を採用した場合、信号
線数が多くなり、上記要求を満たせない。このため、通
常は、命令の種類を伝える制御信号線と付随するデータ
を伝えるデータ信号線を設け、複数の命令で信号線を共
用するインターフェイスを採用する。この方式では、送
信側モジュールに、モジュールの論理回路内の種々の命
令の転送要求を受付け受信側に送信する送信回路と、送
信回路から送信された命令を受信側へ伝える信号線であ
る命令の信号線と、受信側モジュールに命令の信号線を
介して送信回路から受けた命令を受信側モジュール内の
論理回路に発行する受信回路を設ける。なお、送信回
路、命令の信号線、受信回路からなる部分を論理回路接
続装置と呼ぶ。
【0006】この従来の論理回路接続装置では、同時に
転送可能な命令数は固定であった。例えば、「MIPS R10
000 Microprocessor User's Manual Version 2.0(MIPS
Technologies Inc.発行)」の第6章によると(従来技術
1)、R10000はスプリットトランザクション方式のバス
を採用し、アドレス及びデータの転送を64ビットのバ
ス(multiplex address/data bus)で転送する。バスを
アドレス転送及びデータ転送のいずれに使用するかは、
命令毎に指定される。例えば、プロセッサがメモリ読出
しを発行する"Processor Block Read Request"、外部か
らプロセッサのキャッシュを無効化する"External Inva
lidate Request"はアドレス転送であり40ビットを用
いていた。また、外部からプロセッサにメモリデータを
返送する"External Block Data Response"はデータ転送
であり、64ビットを用いていた。このように一度に転
送される命令が使用するバス幅は固定されていた。
【0007】また、特開平8−16510号公報(従来
技術2)には、システムバスを介して複数の入出力装置
とプロセッサ間でデータ転送を行う場合に、データバス
を複数の入出力装置が使用するフィールドに分割して転
送を行うことが記載されている。この例では、複数の入
出力装置はプロセッサから同一のアドレスに配置され、
入出力装置とプロセッサ間のデータ幅は固定となってい
た。
【0008】また、特開昭62−134745号公報
(従来技術3)には、中央処理装置及び主記憶装置と複
数の入出力装置間でデータ転送を行う場合に、共通バス
を2分割し、上位を入出力装置1、下位を入出力装置2
で使用することが記載されている。この従来技術では、
処理モジュール(中央処理装置、入出力装置等)の種類
に応じて共通バスの上位/下位を独立に使用するか、ま
たは同時に使用するかが決められていた。
【0009】
【発明が解決しようとする課題】上記従来技術1で述べ
た論理回路接続装置では、命令の種類により転送するデ
ータ長が異なる場合、データ長の短い命令は信号線の一
部のみを使用して転送される。このため、データ長の短
い命令の伝達時に信号線に空きができる。アドレスは4
0ビットであるため、バスをアドレス転送に使用する場
合には、その他制御信号を付加しても17ビットの未使
用部分が生じる。今後、バス幅が128ビット等に拡大
されると、アドレス転送時の未使用部分が増加する。
【0010】また、従来技術2で述べた論理回路接続装
置では、対象とする転送区間がプロセッサと入出力装置
間に限定されており、また、入出力装置とプロセッサ間
のデータ幅は固定であり、定められたデータ幅より小さ
いデータ幅を持つ命令のデータ転送の場合にはシステム
バスに未使用部分が生じ無駄を生じていた。
【0011】また、従来技術3で述べたものに関して
は、処理モジュールの種類に応じて共通バスの上位/下
位を独立に使用するか、または同時に使用するかが決め
られていたが、処理モジュール間で転送される個々の命
令の転送単位では、バスの使用ビット数を設定すること
ができず、即ち、バス上位や下位等で定められたデータ
幅より小さいデータ幅を持つ命令のデータ転送の場合に
はシステムバスに未使用部分が生じ無駄を生じていた。
【0012】本発明の目的は、命令単位で、転送するデ
ータ長が短い命令の転送時に、命令データ信号線の空き
ビットを利用して複数の命令を伝達し、転送性能を向上
することにある。
【0013】
【課題を解決するための手段】上記課題を解決するため
に、送信側論理回路が転送を要求する複数の命令の中か
ら、同時に受信側論理回路に転送可能な命令の組を選択
する調停回路と、選択した命令の組を転送命令に変換
し、受信側論理回路に向けて送出するエンコーダと、エ
ンコーダからの転送命令を受けて送信側論理回路が発行
した命令の組を復元するデコーダを備え、送信側論理回
路側は、調停回路、エンコーダ、デコーダからなる論理
回路接続装置を介して、各命令の種類により異なる個数
の命令を同一サイクルで受信側論理回路に送出可能とす
る。
【0014】
【発明の実施の形態】
(実施例1)以下に、本発明の第1の実施例を図1〜3
を用いて説明する。
【0015】図1は、本発明に係る論理回路接続装置を
示す。図1の論理回路接続装置は、調停回路100、エ
ンコーダ102、デコーダ104、および信号線から構
成される。送信側論理回路から送出される命令(命令コ
ード部と命令データ部から構成される)は、ポートA〜
ポートDから論理回路接続装置に与えられ、論理回路接
続装置を通って受信側論理回路のポートE及びポートF
に転送される。
【0016】送信側論理回路から受信側論理回路へ出力
される命令は、命令の種類によって、命令データ部の転
送に必要とする信号線のビット幅が異なる。そこで、命
令データ部の転送に必要な信号線のビット数が送信側論
理回路から受信側論理回路へ向けて設けられている信号
線のビット数より小さい場合は、複数の命令を纏めて転
送することにより、つまり、1つの命令のデータ部の転
送では使用していなかった信号線の部分に、他の命令の
データ部を合わせて転送することにより、信号線の未使
用部分をなくすことができ、結果として信号線を有効に
利用することができる。
【0017】本願発明では、送信側論理回路と受信側論
理回路との間に論理回路接続装置を設け、送信側論理回
路側にある論理回路接続装置(調停回路100及びデコ
ーダ102)によって、送信側論理回路が送信した命令
を少なくとも1つ以上纏めて一つの新たな命令(転送命
令)として合成し、合成した転送命令を受信側論理回路
側にある論理回路接続装置(デコーダ104)へ、エン
コーダとデコーダ間の信号線(転送ライン)を用いて転
送し、転送命令を受信したデコーダは、送信側論理回路
が出力した元の複数の命令に戻して受信側論理回路へ出
力する。これにより、エンコーダとデコーダ間の信号線
を有効利用でき、複数の命令を同時に送信側論理回路か
ら受信側論理回路へ転送することが可能となる。
【0018】従って、一つの転送命令で2つ以上の命令
を転送できるようになる。例えば、従来1サイクルで命
令を転送できていたとすれば、この転送命令を用いるこ
とで、1サイクルで2つの命令を転送できるようにな
り、効率よく命令を転送できるようになる。言い換えれ
ば、本実施例は、送信側論理回路から受信側論理回路に
対して同一サイクルに伝送する命令数を、命令データの
長さに応じて変えることができる点に特長がある。
【0019】また、送信側論理回路側のエンコーダと受
信側論理回路側のデコーダ間の転送ラインは、送信側論
理回路からエンコーダまでの距離やデコーダから受信側
論理回路までの距離と比べて一般に長く、この部分の領
域は、複数の論理回路およびモジュール間転送路から構
成されるシステムの全体を考える場合、送信側論理回路
からエンコーダまでの距離やデコーダから受信側論理回
路までの転送路の領域より大きいといえる。従って、こ
の転送ラインを、命令に応じて使い分けることは重要で
ある。
【0020】以下、図1を詳しく説明する。
【0021】送信側論理回路のポート数は、送信側論理
回路が同時に発行しうる命令の数により決定される。受
信側論理回路のポート数は、1つの転送命令で転送可能
な命令の最大数により決定される。本実施例では、送信
側論理回路のポート数を4、受信側論理回路のポート数
を2としているが、これらの値は送信側論理回路の構成
及び1つの転送命令で転送可能な命令数によって変わり
うる。
【0022】調停回路100は、出力側論理回路がポー
トA〜ポートDを通して出力する最大4つの命令の中か
ら受信側論理回路へ出力する命令を最大2つ選択し、選
択命令ライン1(130a、140a)及び選択命令ラ
イン2(130b、140b)を通してエンコーダ10
2に出力する。エンコーダ102は、調停回路100で
選択された命令を転送命令に変換し、転送ライン(15
0、160)を通してデコーダ104に出力する。デコ
ーダ104は、エンコーダ102から受けた転送命令を
調停回路100が選択した命令に戻し、ポートE及びポ
ートFを通して受信側論理回路に出力する。
【0023】送信側論理回路のポートA〜ポートDから
調停回路へ信号線を介して命令が転送される。それぞれ
のポートから接続される信号線は、命令コード部を転送
する信号線110a〜110d、命令データ部を転送す
る信号線120a〜120d、および、調停回路が送信
側論理回路へ命令を受理したことを知らせるためのアク
ノリッジ信号線から構成される。命令コード部を転送す
る信号線は、命令の種類を転送するのに用いる。図1で
は、それぞれのポートに対して、命令コード部を転送す
る信号線として2ビット、命令データ部を転送する信号
線として64ビット、アクノリッジ信号線として1ビッ
トが割り付けられている。
【0024】次に、送信側論理回路から調停回路へ転送
される命令について説明する。命令は、命令の種類を示
す2ビットの命令コード部と、命令により伝送する命令
データ部分からなる。ここで、命令の種類というのは、
命令が、命令データ部を転送する信号線の内、実際に使
用する信号線の部分を示すものである。例えば、命令デ
ータを転送する信号線が64ビットとした場合、64ビ
ットの内の64ビットを全て使用するとか、上位32ビ
ットを使用するとか、上位16ビットを使用するとかの
違いによる種類である。従って、図1においては、命令
コード部が上位32ビットの使用すると示す場合、命令
コード部を転送する64ビットの信号線の内の上位32
ビットの信号線を用いて命令データ部が伝送されること
になる。
【0025】調停回路100は、出力側論理回路がポー
トA〜ポートDを通して出力した命令の中から受信側論
理回路へ出力する命令を複数選んで送出する。基本的な
選び方は次のようになる。選択は、選択した一つ以上の
命令の命令データ部のビット数の合計が、エンコーダか
らデコーダへの転送ラインの信号線のビット数より大き
くならない様に、一つ以上の命令が選択される。選択さ
れた一つ以上の命令は、調停回路100からエンコーダ
102へ選択命令ライン1および選択命令ライン2を介
して送られる。選択命令ライン1及び2の構造は、ポー
トA〜Dの信号線の構造からアクノリッジ信号線を削除
した構造と同じである。図1においては、出力側論理回
路がポートA〜ポートDを通して出力する最大4つの命
令の中から受信側論理回路へ出力する命令を最大2つ選
択し、選択命令ライン1(130a、140a)及び選
択命令ライン2(130b、140b)を通してエンコ
ーダ102に出力する。なお、調停回路100について
は後で更に詳細に説明する。
【0026】エンコーダ102(後で詳細に述べる)
は、調停回路100で選択された1つ以上の命令を選択
命令ライン1及び2から受信すると、これら1つ以上の
命令を一つの転送命令(後述する)に変換し、転送ライ
ン(転送コード部用信号線150、転送データ部用信号
線160)を通してデコーダ104に出力する。転送命
令は、転送命令の種類を示す2ビットの転送コード部
と、転送命令により伝送するデータ部分である64ビッ
トの転送データ部からなる。転送コード部は、調停回路
からきた命令がどのような種類であり、また、これをど
のように組み合わせたかを示す情報をであり、転送ライ
ンの転送コード部用信号線を介して転送される。転送デ
ータ部は、調停回路より受信した命令のデータを送る部
分であり、例えば、全ビットが1つの命令のデータであ
ったり、転送データ部の上位と下位とで互いに異なる命
令のそれぞれのデータ部であったりし、これらは、転送
データ部用信号線を介して転送される。
【0027】デコーダ104は、エンコーダ102から
転送ラインを介して受けた転送命令の転送コード部によ
り、受信した転送データ部がどのような種類の命令の組
み合わせであるかを判定し、判定結果に従って、転送デ
ータ部をそのまま、または必要に応じて分割して命令デ
ータ部を得て、判定結果である命令コード部と命令デー
タ部を組み合わせて一つの命令とし、これを命令とし
て、デコーダから受信側論理回路へ出力する。即ち、転
送ラインから受信した転送命令を調停回路100が選択
した1つ以上の命令に戻し、ポートE及びポートFを通
して受信側論理回路に出力する。デコーダ104からポ
ートEおよびポートFへの命令信号線のそれぞれの構造
は、ポートA信号線の構造からアクノリッジ信号線を削
除した構造と同様の構造であり、170a、170bが
命令コード部であり、180a、180bが命令データ
部を伝送する信号線である。なお、デコーダ104につ
いては後で更に説明する。
【0028】なお、本実施例では、命令コード部と転送
コード部を2ビット、命令データ部と転送データ部を6
4ビットとしているが、本発明は任意の命令および転送
命令の構成について有効である。
【0029】図2は、図1の論理回路接続装置で使用す
る命令を示す。命令は、命令コード部と命令データ部か
ら構成される。命令コード部が"00"の場合、命令を発行
しないことを示す。命令I0は、32ビットのデータを
伝送する命令であり、命令コード部は"10"、命令データ
部は、命令データ部を転送する信号線64ビットの内上
位32ビットを用いて転送される。命令I1は、64ビ
ットのデータを伝送する命令であり、命令コード部は"1
1"であり、命令データ部は、命令データ部を転送する信
号線64ビットの全部を用いて転送される。この命令
は、送信側論理回路から調停回路への命令、調停回路か
らエンコーダへの命令、および、デコーダから受信側論
理回路への命令として使用される。
【0030】図3は、図1の論理回路接続装置で使用す
る転送命令を示す。転送命令は、転送コード部と転送デ
ータ部から構成される。転送コード部が"00"の場合、転
送命令を発行しないことを示す。転送命令T0は、図2
で説明した命令I0を1つ伝送する転送命令である。転
送コード部は"01"であり、転送データ部は、64ビット
の内上位32ビットを用いて命令I0の命令データが転
送される。転送ラインの内、転送する部分である信号線
160の上位32ビットが当該転送命令の転送データを
転送するのに使用される。転送命令T1は、命令I0を
同時に2つ伝送する転送命令である。転送コード部は"1
0"であり、転送データ部は信号線160の64ビットの
内上位32ビットが1つ目の命令I0の命令データ部、
下位32ビットが2つ目の命令I0の命令データ部を転
送するのに使用される。転送命令T2は、命令データ部
が64ビットである命令I1を1つ伝送する転送命令で
あり、転送コード部は"11"、転送データ部は命令I1の
命令データ部とする。
【0031】本実施例は、送信側論理回路から受信側論
理回路に対して同一サイクルに伝送する命令数を、命令
データの長さに応じて変えることができる点に特長があ
る。
【0032】本実施例の論理回路接続装置の動作を具体
的に以下に示す。
【0033】送信側論理回路は、ポートA〜ポートDを
用いて0から4個の命令の転送を要求する。
【0034】<調停回路の動作>調停回路100は、同
時に転送可能な命令の組をポートA〜ポートDから選択
し、エンコーダ102に出力する。以下、調停回路10
0の構成及び同時に転送可能な命令の組の選択方法を説
明する。
【0035】図27は、調停回路100の構成を示す図
である。信号線110a〜110d、120a〜120
d、115a〜115d、130a〜130b、140
a〜140bは図1の対応する信号線である。調停回路
100は、命令順序決定回路100a、命令順序キュー
100b、命令選択回路100c、第1命令セレクタ1
00d、第2命令セレクタ100eにより構成される。
【0036】命令順序決定回路100aは、ポートA〜
ポートDの全ての命令コード部を受けて順序を決定し、
ポート番号及び命令コードの列を命令順序キュー100
bに送出する。ここでは、命令順序キュー100bの命
令順序決定をラウンドロビンで行なうこととする。ラウ
ンドロビン制御は、前回送出したポート番号列の最後の
ポート番号+1のポートの命令を最優先として送出す
る。ただし、前回送出したポート番号及び命令コードの
列の最後のポート番号がポートDを示す場合、最優先の
ポートはAとする。例えば、サイクルNでポートB、ポ
ートC、ポートDが命令の送信を要求しており、ポート
Cが最優先である場合、ポートC、ポートD、ポートB
のポート番号及び命令コードの列を命令順序キュー10
0bに送出し、サイクルN+1ではポートCが最優先と
なる。従って、サイクルN+1でポートA、ポートDが
命令の送信を要求すると、ポートD、ポートAのポート
番号及び命令コードの列が命令順序キュー100bに送
出される。
【0037】命令順序キュー100bは、命令順序決定
回路100aから送出されるポート番号及び命令コード
の列を順に格納し、命令選択回路100cにポート番号
及び命令コードを最大2つ送出する。命令選択回路10
0cの指示により命令がエンコーダに送出されると、命
令順序キュー100bから当該エントリを削除する。こ
の制御により、命令順序キュー100b内には送信側論
理回路の各ポートから出力中の命令の内、エンコーダ側
に出力されなかった命令が発行される順序で格納され
る。また、ポート番号及び命令コードの格納時に、命令
順序キュー100b内に存在するポート番号に対応する
ものを除外して格納することで、すでにエンコーダへの
送出を待っている命令の2重格納を防ぐ。命令順序キュ
ー100bから命令選択回路100cに送出するポート
番号及び命令コードが不足する場合、命令順序決定回路
100aの送出するポート番号及び命令コードを直接命
令選択回路100cに送出する。これにより、命令順序
キュー100bが空の場合に送信側論理回路の送出する
命令を遅滞なくエンコーダに送出できる。
【0038】命令選択回路100cは、命令順序キュー
100bから送出されるポート番号及び命令コードを最
大2つ受け、これらの命令が同時に送出可能かどうかを
判断し、判断結果に基づいて第1命令セレクタ100
d、第2命令セレクタ100eを制御する。本実施例に
おいては、命令順序キュー100bが命令I0を2つ送
出した場合のみ、これらの命令を同時に送出可能であ
る。従って、以下のアルゴリズムにより、第1命令セレ
クタ100d及び第2命令セレクタ100eを制御し、
命令をエンコーダに発行する。
【0039】(1)命令順序キュー100bから命令I
0を2つ受け取った場合、第1の命令のポート番号を第
1命令セレクタ100dに送出してセレクタを制御し、
信号線130a、140aを介して対応する命令をエン
コーダに送出する。同時に、第2の命令のポート番号を
第2命令セレクタ100eに送出してセレクタを制御
し、信号線130b、140bを介して対応する命令を
エンコーダに送出する。この時、第1及び第2命令に対
応するエントリを命令順序キュー100bから削除する
と共に、アクノリッジ信号線115a〜115dの当該
ポートに対応する信号線を”1”として、命令の発行を
完了する。
【0040】(2)(1)の場合以外で、命令順序キュ
ー100bから第1の命令I0を受け取った場合、第1
の命令のポート番号を第1命令セレクタ100dに送出
してセレクタを制御し、信号線130a、140aを介
して対応する命令をエンコーダに送出する。同時に、第
2の命令を発行しないことを第2命令セレクタ100e
に送出してセレクタを制御し、信号線130bを"00"と
して、信号線130b、140bからは命令を送出しな
い。この時、第1命令に対応するエントリを命令順序キ
ュー100bから削除すると共に、アクノリッジ信号線
115a〜115dの当該ポートに対応する信号線を”
1”として、命令の発行を完了する。
【0041】(3)命令順序キュー100bから第1の
命令I1を受け取った場合、第1の命令のポート番号を
第1命令セレクタ100dに送出してセレクタを制御
し、信号線130a、140aを介して対応する命令を
エンコーダに送出する。同時に、第2の命令を発行しな
いことを第2命令セレクタ100eに送出してセレクタ
を制御し、信号線130bを"00"として、信号線130
b、140bからは命令を送出しない。この時、第1命
令に対応するエントリを命令順序キュー100bから削
除すると共に、アクノリッジ信号線115a〜115d
の当該ポートに対応する信号線を”1”として、命令の
発行を完了する。
【0042】(4)第1及び第2の命令を発行しないこ
とを第1命令セレクタ100d及び第2命令セレクタ1
00eに送出してセレクタを制御し、信号線130a及
び130bを"00"として、信号線130b、140bか
ら命令を送出しない。この時、命令順序キュー100b
からのエントリの削除を行なわず、アクノリッジ信号線
115a〜115dは全て”0”とする。
【0043】調停回路100を以上の様に構成すること
で、ポートA〜ポートDから送出される命令を、異なる
タイミングで到達するものに対しては前後の順序を維持
し、同一のタイミングで到達するものに対してはラウン
ドロビンで順序を決定して命令を受信側論理回路側に送
出することができる。受信側論理回路が、送信側論理回
路の発行する命令の順序に関係なく命令を受け付ける場
合の構成としては、例えば命令選択回路100cが命令
順序キュー100bから任意の1〜2命令を抽出し、発
行する方式が考えられる。
【0044】<エンコーダの動作>エンコーダ102
は、調停回路100から選択命令ライン1及び選択命令
ライン2を通して命令の組を受けると、受け取った命令
の種類と数に応じて転送命令(図3に示す)を生成し、
デコーダ104に対して発行する。
【0045】図29にエンコーダ102の構成を示す。
エンコーダ102は、選択命令ライン1及び選択命令ラ
イン2の命令コードを受けて転送コードを生成する転送
命令生成回路102a、転送命令の種類によって転送デ
ータ部下位32ビットに選択命令ライン1の命令データ
部下位32ビット叉は選択命令ライン2の命令データ部
のいずれかを送出するセレクタ102bからなる。以下
に、エンコーダ102の動作を示す。
【0046】(1)調停回路100から命令I0を2つ
受けた場合 転送命令生成回路102aは、転送コード信号線150
に"10"を出力する。また、転送命令生成回路102a
は、命令データ選択線を用いてセレクタ102bを"1"
側に選択し、転送データ信号線160の下位32ビット
を命令データ信号線140bの値とする。転送データ信
号線160の上位32ビットは命令データ信号線140
aの値とする。これにより、命令I0を2つ転送する転
送命令T1を生成し、デコーダに対して発行できる。
【0047】(2)(1)以外の場合で、調停回路10
0から命令コード130aを通して命令I0を受けた場
合 転送命令生成回路102aは、転送コード信号線150
に"01"を出力する。また、転送命令生成回路102a
は、命令データ選択線を用いてセレクタ102bを"0"
側に選択し、転送データ信号線160の下位32ビット
を命令データ信号線140a下位32ビットの値とす
る。転送データ信号線160の上位32ビットは命令デ
ータ信号線140aの値とする。これにより、命令I0
を1つ転送する転送命令T0を生成し、デコーダに対し
て発行できる。
【0048】(3)調停回路100から命令コード13
0aを通して命令I1を受けた場合 転送命令生成回路102aは、転送コード信号線150
に"11"を出力する。また、転送命令生成回路102a
は、命令データ選択線を用いてセレクタ102bを"0"
側に選択し、転送データ信号線160の下位32ビット
を命令データ信号線140a下位32ビットの値とす
る。転送データ信号線160の上位32ビットは命令デ
ータ信号線140aの値とする。これにより、命令I0
を1つ転送する転送命令T2を生成し、デコーダに対し
て発行できる。
【0049】(4)上記(1)〜(3)の場合 転送コード信号線150に"00"を出力し、転送命令を発
行しない。
【0050】<デコーダの動作>デコーダ104は、エ
ンコーダ102から転送ラインを通して転送命令を受信
すると、転送命令の転送コード部を解析し、解析結果に
従って命令コードを復元するとともに、転送データ部か
ら命令コード部を引き出す。そして、復元した命令コー
ドと引き出した命令データ部を合わせて命令を復元し、
エンコーダ部から受信側論理回路へ復元した命令を送出
する。
【0051】図30にデコーダ104の構成を示す。命
令復元回路104aは、転送命令の転送コード部150
を受け、送出された命令1〜2個に復元し、第1の命令
の命令コード部を信号線170a、第2の命令の命令コ
ード部を170bに送出する。第1の命令の命令データ
部は、32ビットを転送する命令I0の場合、転送デー
タ部上位32ビットを用いて転送される。64ビットを
転送する命令I1の場合、転送データ部64ビットの全
てを用いて転送される。よって、転送データ信号線16
0は、ポートEの命令データ信号線180aに直結す
る。第2の命令の命令データ部は、転送命令T1の場合
にのみ転送データ部下位32ビットを用いて転送され
る。よって、転送データ信号線160の下位32ビット
はポートFの命令データ部32ビット(180b)とし
て使用される。
【0052】転送命令の転送コード部と復元する命令の
関係は次のようになる。 (1)エンコーダ102から転送命令T2を受けた場合 命令コード信号線170aを"11"、命令データ信号線1
80aを転送データ信号線160の値とし、入力側論理
回路に対して命令I1を発行する。命令コード信号線1
70bは"00"とし、ポートFからは命令を発行しない。
【0053】(2)エンコーダ102から転送命令T1
を受けた場合 命令コード信号線170a及び命令コード信号線170
bを"10"、命令データ信号線180aを転送データ信号
線160の上位32ビット、命令データ信号線180b
を転送データ信号線160の下位32ビットとし、入力
側論理回路に対して命令I0を2つ発行する。入力側論
理回路はポートE上の命令を1つ目の命令、ポートF上
の命令を2つ目の命令として処理する。
【0054】(3)エンコーダ102から転送命令T0
を受けた場合 命令コード信号線170aを"10"、命令データ信号線1
80aを転送データ信号線160の上位32ビットの値
とし、入力側論理回路に対して命令I0を発行する。命
令コード信号線170bは"00"とし、ポートFからは命
令を発行しない。
【0055】図31に本実施例の論理回路接続装置の動
作を示す。図31では、サイクルt0でポートAが最優
先であり、サイクルt0でポートAが命令I0(I0−
01)、ポートCが命令I1(I1−02)、サイクル
t1でポートD、ポートBが命令I0(それぞれI0−
03、I0−04)、サイクルt2でポートAが命令I
1(I1−05)、サイクルt3でポートC及びポート
Dが命令I0(I0−6、I0−7)を発行している。
【0056】各サイクルの論理回路接続装置の動作は以
下の通りである。
【0057】(1)サイクルt0 命令I0−01がポートAから、命令I1−02がポー
トCから入力される。調停回路100内で、命令順序決
定回路100aが命令I0−01、命令I1−02の順
に命令を順序付け、命令順序キュー100bに送出す
る。命令選択回路100cは命令順序キュー100bが
空のため、命令順序決定回路100aの命令I0−0
1、I1−02を受け、命令I0−01の発行を決定す
る。この結果、命令I0−01は受信側論理回路に送出
され、ポートAはアクノリッジ信号線115aにより命
令の受理を通知される。この時、命令順序キュー100
bは命令I0−01が削除されるため、命令I1−02
のみを格納する。命令列の最後のポートはCのため、次
サイクルの最優先ポートはDとなる。
【0058】(2)サイクルt1 命令I0−03及び命令I0−04がポートDから入力
される。調停回路内で命令順序決定回路100aが命令
I0−03、命令I0−04の順に命令を順序付け、命
令順序キュー100bに送出する。命令選択回路100
cは、命令順序キュー100bに命令I1−02が格納
されているため、命令I1−02の発行を決定する。こ
の結果、命令I1−02は受信側論理回路に送出され、
ポートCはアクノリッジ信号線115cにより命令の受
理を通知される。この時、命令順序キュー100bは命
令I1−02が削除され、命令I0−03、命令I0−
04を格納する。命令列の最後のポートはBのため、次
サイクルの最優先ポートはCとなる。
【0059】(3)サイクルt2 命令I1−05がポートAから入力される。命令順序決
定回路100aは命令I1−05を、命令順序キュー1
00bに送出する。命令選択回路100cは、命令順序
キュー100bに命令I0−03、命令I0−04が格
納されており、これらは同時に転送可能であるため、命
令I0−03と命令I0−04の発行を決定する。この
結果、命令I0−03及び命令I0−04は受信側論理
回路に送出され、ポートB及びポートDはアクノリッジ
信号線115b、115dにより命令の受理を通知され
る。この時、命令順序キュー100bは命令I0−0
3、命令I0−04が削除され、命令I1−05を格納
する。命令列の最後のポートはAのため、次サイクルの
最優先ポートはBとなる。
【0060】(4)サイクルt3 命令I0−06がポートCから入力される。命令順序決
定回路100aは命令I0−06を、命令順序キュー1
00bに送出する。命令選択回路100cは、命令順序
キュー100bに命令I1−05が格納されているた
め、命令I1−05の発行を決定する。この結果、命令
I1−05は受信側論理回路に送出され、ポートAはア
クノリッジ信号線115aにより命令の受理を通知され
る。この時、命令順序キュー100bは命令I1−05
が削除され、命令I0−06を格納する。
【0061】(5)サイクルt4 命令I0−07がポートDから入力される。命令順序決
定回路100aは命令I0−07を、命令順序キュー1
00bに送出する。命令選択回路100cは、命令順序
キュー100bに命令I0−06が格納されており、命
令I0−07と同時に転送化のであるため、命令I0−
06及び命令I0−07の発行を決定する。この結果、
命令I0−06及び命令I0−07は受信側論理回路に
送出され、ポートAはアクノリッジ信号線115c及び
115dにより命令の受理を通知される。この時、命令
順序キュー100bは命令I0−06及び命令I0−0
7が削除される。
【0062】以上に示すように、送信側論理回路のポー
トA〜ポートDの複数のポートからデータ量が小さい命
令I0が同時に出力された場合、1サイクルに2つの命
令I0を受信側論理回路に送出できる。また、複数のポ
ートから異なるサイクルに命令I0が出力された場合で
あっても、転送ラインを他の命令の転送に使用した結果
として第1の命令I0が命令順序キュー100bで待た
され、次のサイクルでさらに命令I0が到着した場合に
おいても、これら2つの命令I0を1サイクルで受信側
論理回路に送出できる。よって、従来、命令I0は1サ
イクルに1命令のみしか転送できなかったが、本発明を
適用することにより命令I0を1サイクルに最大2命令
転送可能となる。これにより、図31の例では従来転送
に7サイクル必要であった命令列を、5サイクルで転送
することができる。
【0063】以上が本発明の実施例1である。
【0064】本実施例では、送信側論理回路から受信側
論理回路に送出する命令の種類によって生じる転送デー
タ部の空きを利用して複数の命令を1転送命令にまとめ
て転送し、転送データを伝送する信号線を効率良く利用
することができる。
【0065】(実施例1a)以下に本発明の実施例1a
を図28を用いて説明する。本実施例は実施例1の変形
であるため、相違点についてのみ説明する。本実施例
は、実施例1の調停回路100内において命令コード及
び命令データをバッファリングする点のみが実施例1と
異なる。
【0066】図28に調停回路内に命令をバッファリン
グする調停回路の構成を示す。
【0067】本実施例では、実施例1の送信側論理回路
のポートA〜ポートDから送出される命令は、それぞれ
一旦命令バッファ100f〜100iに格納される。命
令の格納時に各命令バッファは対応するアクノリッジ信
号線を”1”とし、命令を受理したことを送信側論理回
路に伝える。ただし、命令バッファの空きが無い場合、
命令を格納することができないため、命令を受理しな
い。
【0068】図28の命令順序決定回路100a、命令
順序キュー100b、命令選択回路100c、第1命令
セレクタ100d、第2命令セレクタ100eの構成は
実施例1と同じである。命令選択回路100cの出力す
るアクノリッジ信号線115a’〜115d’は実施例
1と異なり、それぞれ命令バッファ100f〜100i
内に保持された命令の発行完了を示し、命令バッファ内
のエントリの削除に使用される。
【0069】調停回路内に命令をバッファリングする構
成としたことで、命令をバッファリングしない構成と比
較し受信側論理回路に命令が到達するまでにかかるサイ
クル数が増加する。しかし、命令をバッファリングしな
い構成では、出力側論理回路が命令を発行してから命令
の受理を行なうまでの処理を1サイクルに納めなければ
ならないが、本構成では調停回路内の命令バッファから
命令を発行し、アクノリッジ信号線115a’〜115
d’を用いて命令バッファ内のエントリを削除するまで
を1サイクルに納めればよい。このため、実施例1と比
較してサイクル時間を短縮することができる。
【0070】(実施例2)以下に、本発明の第2の実施
例を図4〜図5を用いて説明する。本実施例は実施例1
の変形であるため、相違点についてのみ説明する。本実
施例は、調停回路100及びエンコーダ102の代わり
に命令コードの調停回路・エンコーダ200、命令デー
タ上位32ビットの調停回路202、命令データ下位3
2ビットの調停回路203を設けた点、及び、デコーダ
104の代わりに転送コードのデコーダ204を設け、
転送データは調停回路202及び調停回路203の出力
をそのまま命令データとして使用する点が異なる。
【0071】図4は本発明に係る論理回路接続装置を示
す。本実施例の論理回路接続装置では、送信側論理回路
のポートA〜ポートDから送信される命令の命令コード
部を調停回路・エンコーダ200、調停回路202及び
調停回路203に、命令データ部の上位32ビットを調
停回路202、命令データ部の下位32ビットを調停回
路203に入力する。
【0072】図5に送信側論理回路のポートA〜ポート
Dから出力される命令を示す。本実施例では、32ビッ
トのデータ転送を行なう命令I0において、送信側論理
回路が転送データを命令データ部の上位32ビット及び
下位32ビットの双方に出力する点が実施例1と異な
る。これにより、調停回路202は全ての命令I0の命
令データ部32ビット及び全ての命令I1の命令データ
部上位32ビットを受け取る。また、調停回路202は
全ての命令I0の命令データ部32ビット及び全ての命
令I1の命令データ部下位32ビットを受け取る。
【0073】調停回路・エンコーダ200は、ポートA
〜ポートDの命令の命令コード部を受けて、入力側論理
回路に送出する命令の組を選択し、図3に示す命令の組
に対応する転送コードを生成してデコーダ204に送出
する。この時、選択した命令に対応するポートの命令ア
クノリッジ信号線215a〜215dを"1"とし、出力
側論理回路に命令を出力したことを伝える。
【0074】調停回路202は、ポートA〜ポートDの
命令の命令コード部及び命令データ部の上位32ビット
を受けて、命令コード部から入力側論理回路に送出する
命令の組を選択し、図3に示す命令データ部を選択し
て、転送データ線上位260に送出する。命令I0を2
つ送出する場合、調停回路202は1つ目の命令I0の
命令データ部を送出し、2つ目の命令I0の命令データ
部は破棄する。
【0075】調停回路203は、ポートA〜ポートDの
命令の命令コード部及び命令データ部の下位32ビット
を受けて、命令コード部から入力側論理回路に送出する
命令の組を選択し、図3に示す命令データ部を選択し
て、転送データ線下位261に送出する。命令I0を2
つ送出する場合、調停回路202は2つ目の命令I0の
命令データ部を送出し、1つ目の命令I0の命令データ
部は破棄する。
【0076】本実施例は、これらの調停回路・エンコー
ダ200、調停回路202及び調停回路203が、ポー
トA〜ポートDの命令の命令コード部の中から同一の方
法で入力側論理回路に送出する命令の組を選択すること
で、それぞれが独立に動作して正しく命令を転送でき
る。なお、動作タイミングは同一のクロック等の入力に
より一致させる。
【0077】デコーダ204は、調停回路・エンコーダ
200から転送コード線を通して転送命令を受け、以下
に示すように命令の組を復元し、入力側論理回路に対し
て発行する。
【0078】(1)調停回路・エンコーダ200から転
送命令T2を受けた場合 命令コード信号線270aを"11"とし、入力側論理回路
に対して命令I1を発行する。ポートFからは命令を発
行しない。
【0079】(2)調停回路・エンコーダ200から転
送命令T1を受けた場合 命令コード信号線270a及び命令コード信号線270
bを"10"とし、入力側論理回路に対して命令I0を2つ
発行する。
【0080】(3)調停回路・エンコーダ200から転
送命令T0を受けた場合 命令コード信号線270aを"10"とし、入力側論理回路
に対して命令I0を1つ発行する。ポートFからは命令
を発行しない。
【0081】入力側論理回路は、命令コードE及び命令
コードFが命令I0を示す場合はそれぞれ転送データ上
位32ビット及び転送データ下位32ビットを命令デー
タ部として使用する。命令コードEが命令I1を示す場
合は、転送データ上位32ビットを命令データ上位32
ビット、転送データ下位32ビットを命令データ下位3
2ビットとして使用する。
【0082】以上が本発明の実施例2である。本実施例
により、例えば出力側論理回路を命令コード部及び複数
の命令データ部を処理する複数のLSIに分割した場合
において、転送するデータ量が小さい命令は、同時に複
数転送することができ、論理回路接続装置の転送性能を
従来と比較し高めることができる。
【0083】(実施例3)以下に本発明の第3の実施例
を図6を用いて説明する。本実施例は実施例1の変形で
あるため、相違点についてのみ説明する。本実施例は、
論理回路接続装置で接続する論理回路が、命令の入力及
び出力の双方を行なう点、及び、論理回路間の接続にバ
スを使用する点が実施例1と異なる。
【0084】図6は本実施例に係る論理回路接続装置を
ユニット間の接続に適用したものを示す。
【0085】本実施例では、転送命令の送信及び受信を
行なうユニット300aと300bが、転送コードバス
350と転送データバス360からなるバスに結合され
る。ユニット300a及び300bは、論理回路310
a及び310b、調停回路・エンコーダ320a及び3
20b、バス調停回路340a及び340b、デコーダ
330a及び330bからなる。論理回路接続装置は、
調停回路・エンコーダ320a及び320b、バス調停
回路340a及び340b、デコーダ330a及び33
0b、転送コードバス350、転送データバス360か
らなる。
【0086】論理回路310a及び310bは、論理回
路接続装置を介して相互に命令の入出力を行なう。論理
回路310aから論理回路310bに命令を転送する場
合、論理回路310aの発行する命令は、調停回路・エ
ンコーダ320a、バス調停回路340a、転送コード
バス350及び転送データバス360、バス調停回路3
40b、デコーダ330bを経由して論理回路310b
に到達する。
【0087】調停回路・エンコーダ320a及び320
bは、論理回路310a及び310bが出力ポートA〜
ポートBに出力する命令からバスに出力する命令の組を
選択し、転送命令に変換する。生成した転送命令は自ユ
ニット内のバス調停回路340a叉は340bに伝送さ
れる。論理回路310a及び310bで使用する命令の
形式は、実施例1の図2の通りである。また、論理回路
接続装置内で使用する転送命令の形式は、実施例1の図
3の通りである。命令の組から転送命令を生成する方法
は、実施例1の通りである。
【0088】バス調停回路340a及び340bは、送
信する転送命令を受けるとバス権の獲得を要求する。こ
の時、他ユニットのバス調停回路340a叉は340b
との間でバス権を調停し、バス権を獲得したバス調停回
路が受信側のバス調停回路に対して転送命令を送信す
る。バス権の調停には従来からラウンドロビン等の方法
が提案されているが、本発明は、バス権の調停方法に係
わらず有効である。
【0089】デコーダ330a及び330bは、バス調
停回路340a叉は340bが受信した転送命令を命令
に復元し、論理回路310a叉は310bに出力する。
転送命令から命令を復元する方法は、実施例1の通りで
ある。
【0090】本実施例においては、調停回路・エンコー
ダ320a及び320b内のバッファの有無、バス調停
回路340a及び340bのバッファの有無の種々の実
現方法が考えられる。経路上にバッファを設けてステー
ジ数を増やすと命令伝達のレイテンシが増加する。一
方、ステージ数を減らすとバッファ間の論理ディレイが
長くなり、動作サイクルが長くなる。実施例1aに示し
た方法と同様の方法を用いて調停回路320a及び32
0b内にポートA及びポートBに対応する命令バッファ
を設けた場合、転送命令は命令バッファ内の命令を組み
合わせて生成可能である。このため、転送命令はポート
A及びポートBから異なるサイクルで出力された任意の
命令の中から組み合わせることができる。バス調停回路
340a及び340b内に転送命令バッファを設けれ
ば、バス権を獲得できない場合においても転送命令バッ
ファに空きがある限り、調停回路・エンコーダ320a
叉は320bの転送命令生成を継続することができる。
調停回路・エンコーダ320a及び320b、バス調停
回路340a及び340b内のバッファの有無により論
理回路接続装置の複数命令を転送できる可能性及びステ
ージ数は異なるが、本実施例は各部のバッファの有無に
係わらず有効である。
【0091】以上が本発明の実施例3である。本実施例
により、バスにより結合されたユニット間で、転送する
データ量が小さい命令I0は1サイクルに2つ転送する
ことができ、論理回路接続装置の転送性能を従来と比較
し高めることができる。
【0092】(実施例4)以下に、本発明の第4の実施
例を図7〜13を用いて説明する。図7は本発明に係る
論理回路接続装置を用いた並列計算機を示す。図7の並
列計算機は、プロセッサノード1000a及び1000
b、メモリノード1080が転送コードバス1050及
び転送データバス1060からなる転送バスに接続され
た構成をとる。本実施例の変形として、プロセッサノー
ド内にメモリを分散配置することも可能であるが、本発
明は、いずれの構成においても有効である。
【0093】プロセッサノード1000a及び1000
b内では、それぞれプロセッサ1010a及び1010
bがプロセッサバスを介して論理回路接続装置の調停回
路・エンコーダ1020a及び1020b、デコーダ1
030a及び1030bと接続される。調停回路・エン
コーダ1020a及び1020b、デコーダ1030a
及び1030bはバス調停回路1040a及び1040
bと接続される。また、プロセッサ1010a及び10
10bは、キャッシュメモリ1015a及び1015b
とキャッシュ専用バスで接続される。
【0094】メモリノード1080内では、メモリ10
70が調停回路・エンコーダ1020c及びデコーダ1
030cと接続される。調停回路・エンコーダ1020
c及びデコーダ1030cは、バス調停回路1040c
と接続される。
【0095】図8に、本実施例の並列計算機における各
プロセッサノード1000a及び1000b上のキャッ
シュ1015a及び1015bのキャッシュエントリの
状態の種類を示す。
【0096】INVALID状態(I状態)は、当該キャッシュ
エントリに有効なデータを保持していないことを示す。
【0097】CLEAN状態(C状態)は、当該キャッシュエ
ントリにメモリ1070と同じデータを保持しているこ
とを示す。複数のプロセッサノードが同一のラインをC
状態でキャッシングできる。
【0098】MODIFIED状態(M状態)は、当該キャッシ
ュエントリに最新のデータを保持していることを示す。
この時、メモリ1070上の当該ラインは古いデータを
保持している。同一のラインは、並列計算機内の1つの
プロセッサノードのみがM状態で保持することができ、
他のプロセッサノードは当該ラインをキャッシュ上に保
持できない。
【0099】あるプロセッサ(1010aとする)がメ
モリを読み出すと、当該メモリラインがキャッシュエン
トリにキャッシングされ、このキャッシュエントリはC
状態となる。この時、異なるプロセッサ(1010bと
する)が同一メモリラインを読み出すと、当該メモリラ
インはプロセッサ1010bの対応するキャッシュエン
トリにキャッシングされ、キャッシュエントリはC状態
となる。これにより、複数のプロセッサが読み出したデ
ータをキャッシングすることができる。
【0100】ここで、あるプロセッサAが当該メモリラ
インに書込みを行なうと、バスを介して他のプロセッサ
の対応するキャッシュラインを無効化し、I状態とす
る。そして、メモリラインを読み出しキャッシュエント
リにキャッシングして、データを書き込む。この時、当
該キャッシュエントリをM状態とする。他のプロセッサ
がM状態のキャッシュエントリに対応するメモリライン
をアクセスすると、当該キャッシュエントリがメモリに
書き戻されると共にメモリデータとして使用される。こ
の動作により、全てのプロセッサのキャッシュの一貫性
を保つことができる。
【0101】図9に、本実施例の並列計算機のプロセッ
サ1010a及び1010b、または、メモリ1070
が発行する命令の種類を示す。LD要求は、プロセッサが
メモリ読み出しを行なうときに、転送バスにメモリ読み
出し要求を発行する命令である。RDI要求は、プロセッ
サがメモリ書込みを行なうために、他のプロセッサノー
ドの当該キャッシュラインを無効化すると共に当該キャ
ッシュラインのデータを読み出す命令である。ライン読
み出しデータは、LD要求及びRDI要求を受けて、メモリ
が要求を発行したプロセッサにメモリの内容を転送する
命令である。WB要求は、プロセッサノードが外部からの
LD要求又はRDI要求に対応するキャッシュラインをM状態
で保持している時、または、自プロセッサのLD要求又は
RDI要求発行時にキャッシュエントリに空きがなく、M状
態のキャッシュラインを置き換える時に、プロセッサノ
ードが当該キャッシュラインの内容をメモリに書き戻す
命令である。
【0102】本実施例では、ライン読み出しデータ及び
LD要求叉はRDI要求に伴うWB要求の順序は、LD要求及びR
DI要求の順序と一致する。バス調停回路1040a〜1
040cは、バス上に出力された全てのLD要求及びRDI
要求の発行順を記録しておき、他のバス調停回路からラ
イン読み出しデータや対応するWB要求が発行された時に
記録を消去する。当該バス調停回路がライン読み出しデ
ータや対応するWB要求によってデータを返送する順番が
来ると、バス権を獲得し、データを返送する。バス権の
調停には種々の方法が存在するが、本発明は、バス権の
調停方法に係わらず有効である。LD要求叉はRDI要求の
順序を保証しない場合、命令の順序保証の制約によって
生じる待ち時間を削減できる代わりに、各命令の対応を
示すための識別子を命令に付加する必要が生じる。本発
明は、命令に識別子を付加するかどうかに係わらず有効
である。
【0103】図10に、本実施例の並列計算機のプロセ
ッサ1010aがメモリ読み出し命令(LD命令)を実行
する場合の動作を示す。
【0104】プロセッサ1010aは、LD命令実行時に
キャッシュ1015aに読み出し対象データが保持され
ているか検査する(L1)。キャッシュ1015a内に
対象データが保持されている場合、プロセッサ1010
aはキャッシュ1015aから対象データを読み出し使
用する(L2)。キャッシュ1015a内に対象データ
が保持されていない場合かつ、キャッシュ1015a内
に空エントリがない場合、置き換えるキャッシュライン
を決定する。置き換えるキャッシュラインがM状態の場
合、WB要求を発行し、置き換えるキャッシュラインの内
容をメモリに書き込む(以上L0)。キャッシュ101
5a内に対象データが保持されていない場合かつキャッ
シュ1015a内に空エントリがある場合、または、L
0の動作を行なった場合、プロセッサ1010aは転送
バスに対してLD要求を発行する(L3)。
【0105】転送バスに接続された全てのプロセッサノ
ード1000a〜1000bとメモリ1080は、プロ
セッサ1010aのLD要求を受ける。全プロセッサノー
ド上のプロセッサは、自プロセッサのキャッシュ内に対
象データを含むキャッシュラインをM状態で保持してい
るか検査する(L4)。
【0106】対象データがM状態で保持されている場
合、M状態のキャッシュラインを保持するプロセッサはW
B要求を転送バスに発行すると共に、当該キャッシュラ
インの状態をCLEANとする(L5)。メモリノード10
80は転送バス上のWB要求を受け、WB要求対象のライン
をメモリ1070に書き込む(L6)。プロセッサノー
ド1000aは、転送バス上のWB要求を受け、WB要求対
象のラインをキャッシュ1015aに書込み当該キャッ
シュラインの状態をCLEANにすると共に、ライン内の対
象データをLD要求に対する読み出しデータとして使用す
る(L6)。
【0107】L4において、全てのプロセッサノード上
のキャッシュに対象データを含むM状態のキャッシュラ
インが存在しない場合、メモリノード1080はLD要求
を受けて対象ラインを読み出し、転送バスを介してプロ
セッサノード1000aにライン読み出しデータを転送
する(L7)。プロセッサ1010aは、ライン読み出
しデータをキャッシュ1015aに書込み当該キャッシ
ュラインの状態をCLEANにすると共に、ライン内の対象
データをLD要求に対する読み出しデータとして使用する
(L8)。
【0108】図11に、本実施例の並列計算機のプロセ
ッサ1010aがメモリ書き込み命令(ST命令)を実行
する場合の動作を示す。
【0109】プロセッサ1010aは、ST命令実行時に
キャッシュ1015aに書込み対象データが保持されて
いるか検査する(S1)。キャッシュ1015a内に対
象データが保持されており、当該ラインがM状態の場
合、プロセッサ1010aはキャッシュ1015aの当
該ラインに対象データを書き込む(S2)。キャッシュ
1015a内に対象データが保持されていない場合か
つ、キャッシュ1015a内に空エントリがない場合、
置き換えるキャッシュラインを決定する。置き換えるキ
ャッシュラインがM状態の場合、WB要求を発行し、置き
換えるキャッシュラインの内容をメモリに書き込む(以
上S0)。キャッシュ1015a内に対象データが保持
されていない場合かつキャッシュ1015a内に空エン
トリがある場合、または、S0の動作を行なった場合、
プロセッサ1010aは転送バスに対してRDI要求を発
行し、対象データを含むキャッシュラインを読み出すと
共に他プロセッサノード上の当該キャッシュラインを無
効化する(S3)。
【0110】転送バスに接続された1000aを除く全
てのプロセッサノードとメモリ1080は、プロセッサ
1010aのRDI要求を受ける。全プロセッサノード上
のプロセッサは、自プロセッサのキャッシュ内に対象デ
ータを含むキャッシュラインをM状態で保持しているか
検査する(S4)。
【0111】対象データをM状態で保持しているプロセ
ッサはWB要求を転送バスに発行すると共に、当該キャッ
シュラインの状態をI状態とする(S5)。プロセッサ
1010aは、転送バス上のWB要求を受けてST命令の書
込みデータ部を更新し、キャッシュ1015aに書き込
む。この時、キャッシュ1015aの当該キャッシュラ
インをM状態とする(S6)。
【0112】S4の動作時に対象データを含むキャッシ
ュラインをM状態で保持しているプロセッサが存在しな
い場合、当該キャッシュラインを保持する全プロセッサ
はキャッシュラインの状態をI状態に変更する(S
7)。また、メモリ1070は、S3の動作時に発行さ
れたRDI要求を受け、対象ラインを読み出す(S8)。S
T命令を発行したプロセッサは、ライン読み出しデータ
を受けてST命令の書込みデータ部を更新し、キャッシュ
1015aに書き込む。この時、キャッシュ1015a
の当該キャッシュラインをM状態とする(S9)。
【0113】図12に本実施例の並列計算機で使用する
転送命令の一覧を示す。本実施例の並列計算機では、図
9に示した命令のうち命令データとしてアドレス32bit
のみを転送するLD要求とRDI要求を同時に転送可能とす
る。このため、LD要求とRDI要求の全ての組み合わせに
対応する転送命令T1〜T6を用意する。WB要求は、1
サイクル目にアドレス32bitを転送し、2サイクル目か
ら5サイクル目にデータ256bitを転送する。1サイクル
目の転送データ部に32bitの空きができるが、本実施例
の並列計算機ではWB要求は他の命令と同時に転送しない
こととし、WB要求とLD要求、RDI要求等を同時に転送す
る転送命令は用意しない。
【0114】プロセッサノード2つで構成した本実施例
の並列計算機において、プロセッサノード0がアドレス
A0及びA1、プロセッサノード1がアドレスA2及び
A3にLD要求を発行した場合の動作を図13に示す。
【0115】時刻t0で、プロセッサノード0がアドレ
スA0及びA1へのLD要求を発行する。2つのLD要求
は、プロセッサノード内の調停回路・エンコーダ320
aで転送命令T2に変換され、1サイクルでプロセッサ
ノード0及びメモリノードに伝送される。
【0116】時刻t1で、プロセッサノード1がアドレ
スA2及びA3へのLD要求を発行する。2つのLD要求
は、プロセッサノード内の調停回路・エンコーダ320
bで転送命令T2に変換され、1サイクルでプロセッサ
ノード1及びメモリノードに伝送される。
【0117】ここでは、プロセッサノード1のキャッシ
ュ内にアドレスA0及びA1のデータが保持されていな
く、また、プロセッサノード0のキャッシュ内にアドレ
スA2及びA3のデータが保持されていない場合を示
す。従って、プロセッサノード0及び1はキャッシュラ
インの書き戻しを行なわず、全LD要求に対する返答はメ
モリノードが行なう。
【0118】時刻t2〜t5では、プロセッサノード0
が転送バスを通してアドレスA0のLD要求に対するライ
ン読み出しデータを受ける。
【0119】時刻t6〜t9では、プロセッサノード0
が転送バスを通してアドレスA1のLD要求に対するライ
ン読み出しデータを受ける。
【0120】時刻t10〜t13では、プロセッサノー
ド1が転送バスを通してアドレスA2のLD要求に対する
ライン読み出しデータを受ける。
【0121】時刻t14〜t17では、プロセッサノー
ド0が転送バスを通してアドレスA3のLD要求に対する
ライン読み出しデータを受ける。
【0122】以上が、第4の実施例である。本実施例に
より、バスにより結合された並列計算機において、各プ
ロセッサノードは転送するデータ量が小さいLD要求命令
およびRDI要求命令を同時に複数転送することができ、
転送バスの転送性能を従来と比較し高めることができ
る。
【0123】(実施例5)以下に、本発明の第5の実施
例を図14〜16を用いて説明する。本実施例は実施例
4の変形であるため、相違点についてのみ説明する。本
実施例は、並列計算機の各ノードを転送バスで結合する
代わりにネットワークで結合することとした点、及び、
命令及び転送命令に識別子を付加し、命令及び転送命令
を順不同に処理できる点が実施例4と異なる。
【0124】図14は、本発明に係る並列計算機を示
す。
【0125】プロセッサノード400a及び400b内
では、それぞれプロセッサ410a及び410bがプロ
セッサバスを介して論理回路接続装置の調停回路・エン
コーダ420a及び420b、デコーダ430a及び4
30bと接続される。調停回路・エンコーダ420a及
び420b、デコーダ430a及び430bはネットワ
ーク450と接続される。また、プロセッサ410a及
び410bは、キャッシュメモリ415a及び415b
とキャッシュ専用バスで接続される。
【0126】メモリノード480c及び480d内で
は、それぞれメモリ470c及び470dが調停回路・
エンコーダ420c及び420d、デコーダ430c及
び430dと接続される。調停回路・エンコーダ420
c及び420d、デコーダ430c及び430dは、ネ
ットワーク450と接続される。
【0127】本実施例では、プロセッサノード及びメモ
リノードの数をそれぞれ4とするが、本発明はプロセッ
サノード及びメモリノードの数に依存せず有効である。
また、本実施例の変形として、プロセッサノード内にメ
モリを分散配置することも可能であるが、本発明は、い
ずれの構成においても有効である。
【0128】並列計算機で使用する命令、転送命令、キ
ャッシュの状態及び命令発行時の動作は、命令及び転送
命令に識別子(ID)が付加される点を除いて実施例4
と同じである。本実施例では命令の識別子として、LD要
求叉はRDI要求叉は置き換えに伴うWB要求を発行したプ
ロセッサノードの番号2ビットと、プロセッサノード内
で一意に定めた発行中の要求の番号2ビットの計4ビッ
トからなる識別子を使用する。また、転送命令の識別子
は8ビットとし、上位4ビットが1つめの命令の識別
子、下位4ビットが2つめの命令の識別子とする。本発
明は、識別子の値の設定方法に係わらず有効である。
【0129】図15に、ネットワーク450の内部の構
造を示す。セレクタ500a〜500bは、全てのプロ
セッサノード及びメモリノードから転送命令を受け、こ
れらを調停して1つの転送命令を生成し、担当するノー
ドへ転送命令を出力する。これらのセレクタをノード毎
に対応して用意することで、任意のノード間で転送命令
を授受できる。
【0130】プロセッサ410a〜410b、メモリ4
70c及び470dは、図9に示した命令を調停回路・
エンコーダ420a〜420dに発行する。調停回路・
エンコーダ420a〜420dは、プロセッサ及びメモ
リの発行する命令を図12に示した転送命令に変換し、
ネットワーク450に発行する。ネットワーク内のセレ
クタ500a〜500bは、全てのノードからの転送命
令を受けて、それぞれ対応するノードに出力する転送命
令を生成する。
【0131】ここでは、セレクタ500aの構造を例と
して説明する。各ノードから受信した転送命令は、セレ
クタ500a内のデコーダ520a〜520cによって
命令に変換される。変換後以下に示す方法でノードに出
力する命令を選択し、対応する命令バッファ525a〜
525cに書き込む。
【0132】<命令がLD要求叉はRDI要求の場合>図9
に示したように、命令の対象ノードは全てのプロセッサ
ノード及びアクセス対象のメモリである。よって、全て
のプロセッサノードに対応するセレクタ内のデコーダ、
及び、命令の対象アドレスを保持するメモリノードに対
応するセレクタ内のデコーダは、各々に対応する命令バ
ッファに当該命令を書き込む。上記以外のデコーダは、
当該命令を破棄する。
【0133】<命令がライン読み出しデータ叉はRDI要
求に対応するWB要求の場合>図9に示したように、命令
の対象ノードはアクセスを発行したプロセッサノード及
びメモリである。よって、全デコーダは、命令の識別子
から要求の送信元を得て、アクセスを発行したプロセッ
サノードに対応するセレクタを特定する。当該セレクタ
内のデコーダは、対応する命令バッファに当該命令を書
き込む。また、命令の対象アドレスを保持するメモリノ
ードに対応するセレクタ内のデコーダは、各々に対応す
る命令バッファに当該命令を書き込む。上記以外のデコ
ーダは、当該命令を破棄する。
【0134】<命令が置き換えによるWB要求の場合>図
9に示したように、命令の対象ノードはメモリである。
よって、命令の対象アドレスを保持するメモリノードに
対応するセレクタ内のデコーダは、各々に対応する命令
バッファに当該命令を書き込む。上記以外のデコーダ
は、当該命令を破棄する。
【0135】WB要求が置き換えによる場合、WB要求の識
別子中のプロセッサノード番号がWB要求の発行元とな
る。この基準により、WB要求が置き換えによるものであ
ることを判断する。
【0136】上記に示した手順により、プロセッサノー
ド0に送出される命令が命令バッファ525a〜525
cに格納される。調停回路・エンコーダ530aは、セ
レクタ500a内の全命令バッファ525a〜525c
からプロセッサノード0に送出する命令の組を選択し、
転送命令に変換してプロセッサノード0に送出する。
【0137】ネットワーク内で各ノードが出力した転送
命令を一旦命令に復元し、命令バッファに格納すること
で、調停回路・エンコーダ530aは複数の命令の選択
時に、異なる命令バッファから選択可能となる。これに
より、異なるノードを対象とする、命令が同一転送命令
として到着した場合においても、各命令を対象ノードに
送出できる。
【0138】対応するノードに送出する命令を調停回路
・エンコーダ530aで選択する構成も考えられる。こ
の構成ではデコーダ520a〜520c毎に命令の送出
判定を行なう回路を設けなくてもよいが、対応するノー
ド送出しない命令についても命令バッファ525a〜5
25cに格納するため命令バッファ利用の効率が低下す
る。
【0139】本実施例では各セレクタはデコーダを保持
する構造としているが、デコーダを全てのセレクタで共
通とし、ネットワーク単位で保持して、セレクタ内には
デコーダを設けない方法も可能である。
【0140】プロセッサノード及びメモリノードをそれ
ぞれ4つで構成した本実施例の並列計算機において、プ
ロセッサノード0がアドレスA0及びA1、プロセッサ
ノード1がアドレスA2及びA3、プロセッサノード2
がアドレスA4及びA5、プロセッサノード3がアドレ
スA6及びA7にLD要求を発行した場合の動作を図16
に示す。
【0141】時刻t0で、プロセッサノード0がアドレ
スA0及びA1、プロセッサノード1がアドレスA2及
びA3、プロセッサノード2がアドレスA4及びA5、
プロセッサノード3がアドレスA6及びA7へのLD要求
をそれぞれ発行する。各プロセッサノードの発行するそ
れぞれ2つのLD要求は、プロセッサノード内の調停回路
・エンコーダ420a〜420bで転送命令T2に変換
され、ネットワーク450に伝送される。ネットワーク
450内の各セレクタ500a〜500b内では、各プ
ロセッサノードから受けた転送命令T2をデコーダ52
0a〜520bでそれぞれ2つのLD要求に戻し、命令バ
ッファ525a〜525bに格納する。
【0142】時刻t1〜t4で、各セレクタ内の調停回
路・エンコーダ530aは、セレクタ内の命令バッファ
から命令の組を選択し、各プロセッサノード及びメモリ
ノードへ出力する。図16では、各セレクタは時刻t1
でアドレスA0及びA2へのLD命令、時刻t2でアドレ
スA4及びA6へのLD命令、時刻t3でアドレスA1及
びA3へのLD命令、時刻t4でアドレスA5及びA7へ
のLD命令を選択し、各プロセッサノード及びメモリノー
ドへ送出している。
【0143】ここでは、プロセッサノード1のキャッシ
ュ内にアドレスA0、A1のデータが保持されていな
く、また、プロセッサノード0のキャッシュ内にアドレ
スA2、A3のデータが保持されていない場合を示す。
従って、プロセッサノード0及び1はキャッシュライン
の書き戻しを行なわず、全LD要求に対する返答はメモリ
ノードが行なう。
【0144】また、アドレスA0及びA2及びA4及び
A6、アドレスA1及びA3及びA5及びA7の各組は
異なるメモリノード上のアドレスであり、各メモリノー
ドが同時にネットワークに対して対応するライン読みだ
しデータ発行できる場合を示す。
【0145】時刻t5〜t8では、プロセッサノード0
がアドレスA0のLD要求に対するライン読み出しデータ
を受け、プロセッサノード1がアドレスA2のLD要求に
対するライン読み出しデータを受け、プロセッサノード
2がアドレスA4のLD要求に対するライン読み出しデー
タを受け、プロセッサノード3がアドレスA6のLD要求
に対するライン読み出しデータを受ける。
【0146】時刻t9〜t12では、プロセッサノード
0がアドレスA1のLD要求に対するライン読み出しデー
タを受け、プロセッサノード1がアドレスA3のLD要求
に対するライン読み出しデータを受け、プロセッサノー
ド2がアドレスA5のLD要求に対するライン読み出しデ
ータを受け、プロセッサノード3がアドレスA7のLD要
求に対するライン読み出しデータを受ける。
【0147】以上が本発明の第5の実施例である。図1
6の動作例では、2つのLD要求を1サイクルで転送する
ことにより、時刻t0〜t4の間の動作で動作サイクル
数が5サイクル削減できる。本実施例により、ネットワ
ークにより結合された並列計算機において、各ノード及
びネットワークは転送するデータ量が小さいLD要求命令
およびRDI要求命令を1サイクルに最大2つ転送するこ
とができる。これにより、ネットワークの処理性能を従
来と比較し高めることができる。
【0148】<実施例6>以下に、本発明の第6の実施
例を図17〜19を用いて説明する。本実施例は実施例
5の変形であるため、相違点についてのみ説明する。本
実施例は、並列計算機の各ノードからネットワークに送
出する信号線を命令コード及び命令データに変更した
点、及び、ネットワークを命令コード部及び命令データ
部上位32ビットを処理するネットワーク上位部分、及
び、命令データ部下位32ビットを処理するネットワー
ク下位部分に分割した点が実施例5と異なる。
【0149】図17は、本発明に係る並列計算機を示
す。図17は実施例5における図14の変形であり、変
更点のみを説明する。実施例5では、プロセッサ及びメ
モリの発行する命令は、調停回路・エンコーダ420a
〜420dで転送コード及び転送データに変更され、ネ
ットワーク450に送出される。これに対し、本実施例
では、プロセッサ及びメモリの発行する命令は、ネット
ワークインターフェイス720a〜720dを介して命
令コード及び命令データとしてネットワーク750に送
出される。
【0150】図18は、本発明に係る並列計算機のネッ
トワークの構造を示す。ネットワーク750は、ネット
ワーク上位部分602aとネットワーク下位部分602
bからなる。ネットワーク上位部分602aは、各ノー
ドの出力する命令コード、命令データ上位32ビット及
び命令IDを受け、転送コード、転送データ上位32ビ
ット及び転送ID上位4ビットを各ノードに送出する。
ネットワーク下位部分602bは、各ノードの出力する
命令データ下位32ビット及び命令IDを受け、転送デ
ータ下位32ビット及び転送ID下位4ビットを各ノー
ドに送出する。
【0151】セレクタ600a〜600dは、全てのプ
ロセッサノード及びメモリノードから命令を受け、これ
らを調停して1つの転送命令を生成し、転送コード及び
転送データ上位32ビット、または、転送データ下位3
2ビットのいずれか担当部分を対応するノードへ出力す
る。
【0152】各ノードからネットワークに送出する命令
の種類は図9の通りである。ただし、LD要求及びRDI要
求の発行時には、ネットワークインターフェイス720
a〜720dは命令データの上位32ビットと下位32
ビットに同一アドレスを出力する点が異なる。
【0153】並列計算機で使用する転送命令、キャッシ
ュの状態及び命令発行時の動作は実施例5と同じであ
る。
【0154】ネットワーク上位部分602aのセレクタ
600a〜600bの構造を、セレクタ600aを用い
て説明する。各ノードからセレクタ600aに発行され
た命令コード及び命令データ上位32ビットは、命令バ
ッファ625a〜625bに格納される。調停回路・エ
ンコーダ630aは、セレクタ600a内の全命令バッ
ファ625a〜625bからプロセッサノード0に送出
する命令の組を選択し、転送命令に変換して転送コード
及び転送データ上位32ビットをプロセッサノード0に
送出する。複数の命令を選択する場合、異なる命令バッ
ファから選択することができる。調停回路・エンコーダ
630aにおける送出命令の選択方法は、実施例5のデ
コーダの動作と同様である。
【0155】ネットワーク下位部分602bのセレクタ
600c〜600dの構造を、セレクタ600cを用い
て説明する。各ノードからセレクタ600cに発行され
た命令コード及び命令データ下位32ビットは、命令バ
ッファ625c〜625dに格納される。調停回路63
0bは、セレクタ600b内の全命令バッファ625c
〜625dからプロセッサノード0に送出する命令の組
を選択し、転送命令に変換して転送データ下位32ビッ
トをプロセッサノード0に送出する。複数の命令を選択
する場合、異なる命令バッファから選択することができ
る。調停回路・エンコーダ630bにおける送出命令の
選択方法は、実施例5のデコーダの動作と同様である。
【0156】調停回路・エンコーダ600a〜600b
における命令の組の選択は、ネットワーク上位側及びネ
ットワーク下位側で同一のアルゴリズムで行なう。命令
の組の選択アルゴリズムは任意の方法が使用可能であ
り、本実施例では説明しない。
【0157】図19は、プロセッサノードAから受けた
アドレスA0のLD要求と、プロセッサノードBから受け
たアドレスB0のLD要求の2命令を選択し、転送命令に
変換してプロセッサノード0に送出する動作を示す。
【0158】プロセッサノードAは、命令コードにLD要
求を示す"100"、命令データ上位32ビット及び命令デ
ータ下位32ビットの双方にアドレスA0、命令IDを
出力する。プロセッサノードBは、命令コードにLD要求
を示す"100"、命令データ上位32ビット及び命令デー
タ下位32ビットの双方にアドレスB0、命令IDを出
力する。図19は、プロセッサノードA及びBのLD要求
が命令バッファ625a−1〜625d−1に格納され
た状態を示す。ネットワーク上位のセレクタ600a−
1内の調停回路・エンコーダ630a−1は、プロセッ
サノード0に送出する命令の組をアドレスA0及びアド
レスB0へのLD要求と決定し、転送コードにT2、転送
データ上位32ビットに1番目の命令の命令データであ
るアドレスA0、転送ID上位4ビットに1番目の命令
の命令IDを出力する。出力後、命令バッファ625a
−1及び命令バッファ625b−1からアドレスA0及
びB0へのLD要求を取り除く。一方、ネットワーク下位
のセレクタ600c−1内の調停回路630b−1は、
プロセッサノード0に送出する命令の組を、調停回路・
エンコーダ630a−1と同一の方法を用いてアドレス
A0及びアドレスB0へのLD要求と決定し、転送データ
下位32ビットに2番目の命令の命令データであるアド
レスB0、転送ID下位4ビットに2番目の命令の命令
IDを出力する。出力後、命令バッファ625c−1及
び命令バッファ625d−1からアドレスA0及びB0
へのLD要求を取り除く。
【0159】本実施例の動作は、実施例5と比較し、各
ノードからネットワークには同一サイクルで複数の命令
を転送できない点が異なる。プロセッサノード及びメモ
リノードをそれぞれ4つで構成した本実施例の並列計算
機において、プロセッサノード0がアドレスA0及びA
1、プロセッサノード1がアドレスA2及びA3、プロ
セッサノード2がアドレスA4及びA5、プロセッサノ
ード3がアドレスA6及びA7にLD要求を発行した場
合、図16の時刻t0における2つのLD要求の同時転送
が実行できない。従って、実施例5と比較し動作サイク
ルが1サイクル長くなる。
【0160】以上が本発明の第6の実施例である。本実
施例により、ネットワークにより結合された並列計算機
において、ネットワークは転送するデータ量が小さいLD
要求命令およびRDI要求命令を1サイクルに最大2つ転
送することができる。これにより、ネットワークの処理
性能を従来と比較し高めることができる。また、データ
幅を分割した複数のユニットでネットワークを構成する
ことで、ネットワークを構成するLSIのピン数を削減
できる。
【0161】(実施例7)以下に、本発明の第7の実施
例を図20〜図22を用いて説明する。本実施例は実施
例1の変形であるため、相違点についてのみ説明する。
本実施例は、調停回路及びデコーダにそれぞれ直前上位
データレジスタを設け、命令データ部上位が直前に転送
した命令データ部上位と等しい命令を複数同時に入力側
論理回路に転送できる点が実施例1と異なる。
【0162】図20は、本実施例に係る論理回路接続装
置を示す。図20は実施例1における図1の変形であ
り、変更点のみを説明する。
【0163】本実施例では、調停回路800及びデコー
ダ804のそれぞれに直前上位データレジスタ806及
び808を付加する。本実施例では全ての命令が64ビ
ットであり、命令データ部の上位32ビットが直前に転
送した命令の命令データ部上位32ビットと等しい場合
に命令データ部の上位32ビットを省略し、命令データ
部の下位32ビットのみを転送する。直前上位データレ
ジスタ806は、調停回路800側で直前に転送した命
令の命令データ部上位32ビットを保持する。調停回路
800は、転送する命令の選択時に各命令データ部の上
位32ビットと直前上位データレジスタ806の一致確
認を行なう。直前上位データレジスタ808は、デコー
ダ804側で直前に受信した命令の命令データ部上位3
2ビットを保持する。デコーダ804は、命令データ部
上位32ビットを省略した命令を受信した時に、直前上
位データレジスタ808の値を命令データ部上位32ビ
ットとして用いる。直前上位データレジスタの初期値は
双方とも同じ値とし、誤動作を防ぐ。
【0164】図21に図20の論理回路接続装置で使用
する命令を示す。
【0165】命令コード部が"00"の場合、命令を発行し
ないことを示す。命令I0は、64ビットのデータを伝
送する命令であり、命令コード部は"10"である。この命
令は、命令データ部の上位32ビットが以前の命令と同
一である可能性が高い命令である。例えば、計算機にお
けるアドレスを指定する信号線は、参照の局所性がある
ためアドレス上位が同一である可能性が高い。命令I1
は、64ビットのデータを伝送する命令であり、命令コ
ード部は"11"である。
【0166】図22に図20の論理回路接続装置で使用
する転送命令を示す。
【0167】転送コード部が"00"の場合、転送命令を発
行しないことを示す。転送命令T0は、命令I0を1つ
伝送する転送命令であり、転送コード部は"01"、転送デ
ータ部は命令I0の命令データ部とする。転送命令T1
は、命令I0を2つ伝送する転送命令であり、転送コー
ド部は"10"、転送データ部は64ビットの内上位32ビ
ットが1つ目の命令I0の命令データ部下位32ビッ
ト、転送データ部下位32ビットは2つ目の命令I0の
命令データ部下位32ビットとする。この転送命令は、
転送する2つの命令I0の命令データ部上位32ビット
が直前アドレスレジスタ806と等しい場合にのみ使用
される。転送命令T2は、命令I1を1つ伝送する転送
命令であり、転送コード部は"11"、転送データ部は命令
I1の命令データ部とする。
【0168】本実施例は、出力側論理回路から入力側論
理回路に対して同一サイクルに伝送する命令数を、命令
データ部の一部が直前に転送した命令と等しい場合に増
やすことができる点に特長がある。
【0169】本実施例の論理回路接続装置の動作の、実
施例1に対する変更点を以下に示す。
【0170】<調停回路の動作>調停回路800は、以
下のいずれかに該当する命令の組をポートA〜ポートD
から選択し、エンコーダ802に出力する。
【0171】(1)命令I1を1つ選択 選択した命令を、選択命令ライン1を用いてエンコーダ
802に出力する。
【0172】選択命令ライン2の命令コード信号線83
0bは"00"として、選択命令ライン2には命令を出力し
ない。
【0173】(2)命令I0を2つ選択 2つの命令I0の命令データ部上位32ビットが、直前
上位データレジスタ806とそれぞれ等しい場合にのみ
選択可能である。選択した命令を、選択命令ライン1及
び選択命令ライン2を用いてエンコーダ802に出力す
る。
【0174】(3)命令I0を1つ選択 選択した命令を、選択命令ライン1を用いてエンコーダ
802に出力する。
【0175】選択命令ライン2の命令コード信号線83
0bは"00"として、選択命令ライン2には命令を出力し
ない。
【0176】(4)命令を選択しない 命令コード信号線830a、830bとも"00"として、
選択命令ライン1及び選択命令ライン2には命令を出力
しない。
【0177】(1)から(3)の場合、選択した命令に
対応するポートの命令アクノリッジ信号線を"1"とし、
出力側論理回路に当該ポートの命令を出力したことを伝
える。また、命令I0を選択した場合、直前上位アドレ
スレジスタ806に命令I0の命令データ部上位32ビ
ットの値を書き込む。
【0178】<エンコーダの動作>エンコーダ802
は、調停回路800から選択命令ライン1及び選択命令
ライン2を通して命令の組を受け、以下に示すように転
送命令を生成し、デコーダ804に対して発行する。
【0179】(1)調停回路800から命令I1を1つ
受けた場合 転送コード信号線850を"11"、転送データ信号線16
0を命令データ信号線840aの値とし、転送命令T2
をデコーダに対して発行する。
【0180】(2)調停回路800から命令I0を2つ
受けた場合 転送コード信号線850を"10"、転送データ信号線86
0の上位32ビットを信号線840a上の命令データ下
位32ビットの値、転送データ信号線860の下位32
ビットを信号線840b上の命令データ下位32ビット
の値とし、転送命令T1をデコーダに対して発行する。
【0181】(3)調停回路800から命令I0を1つ
受けた場合 転送コード信号線850を"01"、転送データ信号線86
0を命令データ信号線840aの値とし、転送命令T0
をデコーダに対して発行する。
【0182】(4)調停回路800から命令を受けなか
った場合 転送コード信号線850を"00"とし、転送命令を発行し
ない。
【0183】<デコーダの動作>デコーダ804は、エ
ンコーダ802から転送ラインを通して転送命令を受
け、以下に示すように命令の組を復元し、入力側論理回
路に対して発行する。
【0184】(1)エンコーダ802から転送命令T2
を受けた場合 命令コード信号線870aを"11"、命令データ信号線8
80aを転送データ信号線860の値とし、入力側論理
回路に対して命令I1を発行する。命令コード信号線8
70bは"00"とし、ポートFからは命令を発行しない。
【0185】(2)エンコーダ802から転送命令T1
を受けた場合 命令コード信号線870a及び命令コード信号線870
bを"10"、直前上位データレジスタ808の値を命令デ
ータ信号線880a及び880bの上位32ビット、命
令データ信号線880aの下位32ビットを信号線86
0の上位32ビット、命令データ信号線880bの下位
32ビットを信号線860の下位32ビットとし、入力
側論理回路に対して命令I0を2つ発行する。
【0186】(3)エンコーダ802から転送命令T0
を受けた場合 命令コード信号線870aを"10"、命令データ信号線8
80aを転送データ信号線860の値とし、入力側論理
回路に対して命令I0を発行する。命令コード信号線8
70bは"00"とし、ポートFからは命令を発行しない。
この時、命令データ部上位32ビットの値を直前上位デ
ータレジスタ808に書き込む。
【0187】以上が本発明の実施例7である。
【0188】本実施例により、データ部上位32ビット
が直前の命令I0と同一である可能性の高い命令を同時
に複数転送することが可能となり、論理回路接続装置の
転送性能を従来と比較し高めることができる。
【0189】(実施例8)以下に本発明の第8の実施例
を図23〜26を用いて説明する。図23は本発明にか
かる論理回路接続装置を用いた計算機を示す。図23の
計算機は、バスアービタ970によりバス権の調停を受
けるノード900a〜900dが、転送コードバス95
0及び転送データバス960a〜960dに接続された
構成をとる。本実施例の変形として、プロセッサとメモ
リを異なるノードに配置する構成も可能であるが、本発
明はいずれの構成においても有効である。
【0190】ノード900a〜900dの構成を、ノー
ド900aを例に説明する。ノード900a内では、プ
ロセッサ910a及びメモリ918aがプロセッサバス
を介して論理回路接続装置の調停回路・エンコーダ92
0a、デコーダ930aと接続される。調停回路・エン
コーダ920a及びデコーダ930aは、バスインター
フェイス940aを介して2ビットの転送コードバス9
50及び128ビットの転送データバス960a〜96
0dと接続される。プロセッサ910aは、キャッシュ
メモリ915aとキャッシュ専用バスで接続される。こ
こでは、ノード内のプロセッサ数及びメモリ数は1とし
たが、本発明はノード内のプロセッサ数及びメモリ数に
係わりなく有効である。
【0191】図24は、本実施例の計算機で使用する命
令を示す。図24の命令の種類は、実施例4における図
9と同一である。本実施例では、計算機で使用するアド
レスを30ビットとする。アドレスとデータ双方の転送
を伴うライン読出データ及びWB要求では、いずれか1ノ
ードが転送バスを占有し、転送を行なう。アドレスのみ
の転送であるLD要求及びRDI要求では、ノード0(90
0a)は転送データバス0、ノード1(900b)は転
送データバス1、ノード2(900c)は転送データバ
ス2、ノード3(900d)は転送データバス3をそれ
ぞれ使用し、全てのノードが同時にアドレスの転送を行
なう。この時、転送データ部の上位2ビットで各ノード
が発行する命令の種類を伝送する。
【0192】バスアービタ970の機能を図25及び図
26を用いて説明する。各ノード900a〜900d
は、命令発行を行なう前にバスアービタ970にバス要
求を発行し、バス使用の許可を得る。図25は、各ノー
ドがバスアービタ970に発行するバス要求の種類を示
す。バス要求は、ライン読出データ叉はWB要求を発行す
る為のバス要求"10"と、LD要求叉はRDI要求を発行する
為のバス要求"11"の2種類が存在する。バスアービタ9
70は、各ノードからのバス要求を受けてバス権の調停
を行い、図26に示す3ビットのバス許可信号を全ノー
ド900a〜900dに発行する。バス許可信号の最上
位ビットが"0"の場合、いずれか1ノードのライン読出
データ叉はWB要求の発行が許可される。この時、バス許
可信号の下位2ビットはバス使用が許可されたノードの
番号を示す。バス許可信号の最上位ビットが"1"の場
合、全ノードに対してLD要求叉はRDI要求の発行が許可
される。この時、全てのノード900a〜900dは、
自ノードに対応する転送データバスのフィールドを使用
してLD要求叉はRDI要求を発行してよい。バス許可信号
の下位2ビットは、各ノード900a〜900dの発行
する命令を処理する順序を示す。例えば、バス許可信号
が"100"の場合、全ノード900a〜900dは、ノー
ド0の命令-ノード1の命令-ノード2の命令-ノード3
の命令の順序で命令を処理する。バスアービタは、ライ
ン読出データ及びWB要求に対して"000"〜"011"のバス許
可信号を、LD要求及びRDI要求に対して"100"〜"111"を
均等に使用し、バス権の偏りを防ぐ。
【0193】バス許可"000"〜"011"を受けてライン読出
データ叉はWB要求を発行するノードは、転送コードバス
950と転送データバス960a〜960dの全てに命
令コード及び命令データを送出する。この時、他のノー
ドは転送コードバス及び転送データバスに信号を送出し
ない。バス許可"100"〜"111"を受けた時、全てのノード
は転送データバスの対応するフィールドに命令データを
送出する。この時、バスアービタが転送コードバスに命
令を送出し、全てのノードは転送コードバスに信号を送
出しない。
【0194】計算機の命令の転送以外の部分に関する動
作は実施例4と同様である。
【0195】以上が、本発明の第8の実施例である。本
実施例により、バスにより結合された計算機において、
転送するデータ量が小さいLD要求及びRDI命令を全ノー
ドが同時に転送バスに発行することができ、転送バスの
転送性能を従来と比較し高めることができる。
【0196】
【発明の効果】本発明によれば、出力側論理回路から入
力側論理回路にトランザクション(命令)を伝送する論
理回路接続装置において、トランザクションの種類によ
り生じる命令データ転送時の空きビットを利用して複数
のトランザクションを伝達し、論理回路接続装置の転送
性能を向上することができる。
【図面の簡単な説明】
【図1】本発明の実施例1に係る論理回路接続装置の図
である。
【図2】本発明の実施例1に係る論理回路接続装置で伝
送する命令を示す図である。
【図3】本発明の実施例1に係る論理回路接続装置で使
用する転送命令を示す図である。
【図4】本発明の実施例2に係る論理回路接続装置の図
である。
【図5】本発明の実施例2に係る論理回路接続装置で伝
送する命令を示す図である。
【図6】本発明の実施例3に係る論理回路接続装置の図
である。
【図7】本発明の実施例4に係る計算機の図である。
【図8】本発明の実施例4に係る計算機で使用するキャ
ッシュ状態を示す図である。
【図9】本発明の実施例4に係る計算機で使用する命令
を示す図である。
【図10】本発明の実施例4に係る計算機において、プ
ロセッサがメモリ読み出しを行なう動作の流れを示す図
である。
【図11】本発明の実施例4に係る計算機において、プ
ロセッサがメモリ書込みを行なう動作の流れを示す図で
ある。
【図12】本発明の実施例4に係る計算機で使用する転
送命令を示す図である。
【図13】本発明の実施例4に係る計算機の動作タイミ
ングを示す図である。
【図14】本発明の実施例5に係る計算機の図である。
【図15】本発明の実施例5に係るネットワークの構造
を示す図である。
【図16】本発明の実施例5に係る計算機の動作タイミ
ングを示す図である。
【図17】本発明の実施例6に係る計算機の図である。
【図18】本発明の実施例6に係るネットワークの構造
を示す図である。
【図19】本発明の実施例6に係るネットワークの動作
を示す図である。
【図20】本発明の実施例7に係る論理回路接続装置の
図である。
【図21】本発明の実施例7に係る論理回路接続装置で
使用する命令を示す図である。
【図22】本発明の実施例7に係る論理回路接続装置で
使用する転送命令を示す図である。
【図23】本発明の実施例8に係る計算機の図である。
【図24】本発明の実施例8に係る計算機で使用する命
令を示す図である。
【図25】本発明の実施例8に係る計算機で使用するバ
ス要求信号の種類を示す図である。
【図26】本発明の実施例8に係る計算機で使用するバ
ス使用許可信号の種類を示す図である。
【図27】図1の調停回路の構成を示す図である。
【図28】図1の調停回路の他の構成を示す図である。
【図29】図1のエンコーダの構成を示す図である。
【図30】図1のデコーダの構成を示す図である。
【図31】図1の論理接続回路の動作を示す図である。
【符号の説明】 100、202、203、310a〜310b、630
b、800…調停回路、200、320a〜320b、
1020a〜1020c、1030a〜1030c、1
040a〜1040c、420a〜420d、530
a、630a、630a−1〜630b−1、920a
…調停回路・エンコーダ、 102、802…エンコー
ダ、 104、204、330a〜330b、430a
〜430d、520a〜520c、730a〜730
d、930a…デコーダ、 300a〜300b、90
0a〜900d…ノード、 340a〜340b、10
40a〜1040c…バス調停回路、 350、105
0、950…転送コードバス、360、1060…転送
データバス、 960a…転送データバス0、 960
b…転送データバス1、 960c…転送データバス
2、 960d…転送データバス3、 970…バスア
ービタ、 1000a〜1000b、400a〜400
b、700a〜700b…プロセッサノード、 108
0、480c〜480d、780c〜780d…メモリ
ノード、 1010a〜1010b、410a〜410
b、710a〜710b、910a…プロセッサ、 1
015a〜1015b、415a〜415b、715a
〜715b、915a…キャッシュ、 1070、47
0c〜470d、770c〜770d、918a…メモ
リ、450、750…ネットワーク、 500a〜50
0b、600a〜600d、600a−1、600c−
1…セレクタ、 525a〜525c、625a〜62
5d、625a−1〜625d−1…命令バッファ、
720a〜720d…ネットワークインターフェイス、
602a…ネットワーク上位部、 602b…ネット
ワーク下位部、 806、808…直前上位データレジ
スタ、 940a…バスインターフェイス、 110a
〜110d、130a〜130b、170a〜170
b、210a〜210d、270a〜270b、810
a〜810d、830a〜830b、870a〜870
b…命令コード信号線、 120a〜120d、140
a〜140b、180a〜180b、820a〜820
d、840a〜840b、880a〜880b…命令デ
ータ信号線、 220a〜220d…命令データ上位信
号線、 221a〜221d…命令データ下位信号線、
115a〜115d、215a〜215d、815a
〜815d…命令アクノリッジ信号線、 150、25
0、850…転送コード信号線、 160、860…転
送データ信号線、 260…転送データ上位信号線、
261…転送データ下位信号線。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 垂井 俊明 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 岡田 康行 神奈川県海老名市下今泉810番地 株式会 社日立製作所オフィスシステム事業部内 (72)発明者 岡澤 宏一 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所情報・通信開発本部内

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】出力側論理回路が発行する命令を入力側論
    理回路に複数の信号線を介して転送する論理回路接続装
    置において、 前記出力側論理回路が発行する複数の命令の中から、前
    記信号線を介して同時に入力側論理回路に転送できる2
    つ以上の命令の組を選択する調停回路と、 前記調停回路で選択した命令の組を転送命令に変換し、
    前記信号線に送出するエンコーダと、 前記エンコーダからの転送命令を受け、前記選択された
    命令の組を復元し、前記入力側論理回路へ出力するデコ
    ーダとを有する論理回路接続装置。
  2. 【請求項2】前記出力側論理回路が発行する命令は、命
    令の種類を示す命令コード部と命令に伴うデータを示す
    命令データ部からなる請求項1記載の論理回路接続装
    置。
  3. 【請求項3】前記エンコーダが前記デコーダに対して送
    出する前記転送命令は、前記選択した命令の組合わせを
    示す転送コード部と前記選択された命令が有するデータ
    を含む転送データ部から構成される請求項1又は請求項
    2に記載の論理回路接続装置。
  4. 【請求項4】1以上の出力側論理回路が発行する異なる
    データ長を持つ2種類以上の命令を、1以上の入力側論
    理回路に送出する論理回路接続装置において、 命令は、命令の種類を示す命令コード部と、命令に伴う
    データを示す命令データ部からなり、 出力側論理回路から入力側論理回路に送出する時に使用
    する転送命令は、転送命令の種類を示す転送コード部
    と、転送命令に伴うデータを示す転送データ部からな
    り、 前記論理回路接続装置は、各出力側論理回路が発行する
    1以上の命令の命令データ部の一部分及び命令コード部
    を受けて、入力側論理回路に送出する転送データ部の一
    部分を選択する複数の調停回路と、 各出力側論理回路が発行する1以上の命令の命令コード
    部を受けて、入力側論理回路に送出する命令を選択し、
    転送コード部を生成する調停回路・エンコーダと、 調停回路・エンコーダから転送命令を受けて出力側論理
    回路が発行した命令の組を復元する1以上のデコーダを
    備えることを特徴とする論理回路接続装置。
  5. 【請求項5】出力側論理回路は、n個を同時に転送可能
    な命令の発行時に、出力側論理回路から論理回路接続装
    置への命令発行ポートに、命令データ部をn個に分割し
    た複数のフィールドに発行する命令のデータを出力して
    調停回路・エンコーダまたは調停回路に伝送し、 調停回路・エンコーダは、各命令発行ポートからの命令
    の中から入力側論理回路に出力する1以上の命令の組を
    選択し、これに対応する転送コードを入力側論理回路に
    向けて出力し、 調停回路は、各命令発行ポートからの命令の中から入力
    側論理回路に出力する1以上の命令の組を選択し、これ
    らに対応する転送データ部から自調停回路の担当する部
    分を入力側論理回路へと出力し、 デコーダは、調停回路・エンコーダから受けた転送コー
    ドを受けて出力側論理回路が発行した命令の組を復元し
    てこれらの命令コードを入力側論理回路へと出力するこ
    とで、 前記出力回路側は、前記論理回路接続装置を介して、命
    令の種類により異なる個数の命令を同一サイクルで前記
    入力側論理回路に送出可能であることを特徴とする請求
    項4に記載の論理回路接続装置。
  6. 【請求項6】前記調停回路及びデコーダに直前に転送し
    た命令の一部のフィールドを記憶するレジスタを設け、 前記調停回路は後続命令の選択時に前記レジスタと命令
    の当該フィールドを比較して、同一のフィールドを持つ
    命令の転送時に当該フィールドを省略した転送命令を利
    用することで転送ビット数を削減して同時に転送可能な
    命令数を増やし、 前記デコーダは、命令のフィールドを省略した転送命令
    の受信時に、デコーダ側の前記レジスタの値をフィール
    ド値として使用することで転送された命令の組を復元す
    ることを特徴とする請求項1から請求項5に記載の論理
    回路接続装置。
  7. 【請求項7】前記転送命令をバスを介して伝送する請求
    項1から請求項6のいずれかに記載の論理回路接続装
    置。
  8. 【請求項8】前記出力側論理回路は、前記論理回路接続
    装置に出力する命令を格納するバッファを備えることを
    特徴とする請求項1から請求項7のいずれかに記載の論
    理回路接続装置。
  9. 【請求項9】前記命令の種類は、命令のデータ長の違い
    であることを特徴とする請求項2から請求項8のいずれ
    かに記載の論理回路接続装置。
  10. 【請求項10】1以上のプロセッサを持つプロセッサノ
    ードと、1以上のメモリを持つメモリノードをバスによ
    り結合し、プロセッサ及びメモリが発行するトランザク
    ションを前記バスを介してノード間で授受する計算機に
    おいて、 請求項1から請求項6のいずれかの方法でプロセッサ及
    びメモリの発行するトランザクションを、トランザクシ
    ョンの種類により異なる個数をまとめて転送命令とし、
    同時にバスに発行する調停回路・エンコーダと、 バス上の転送命令を受けて、バスに発行された1以上の
    トランザクションに復元するデコーダを備え、 バスを介してトランザクションの種類により異なる個数
    のトランザクションを同一サイクルで伝送可能であるこ
    とを特徴とする計算機。
  11. 【請求項11】各ノードからバスに発行する命令は、ノ
    ード内部のトランザクションと1対1に対応する点が異
    なる請求項10に記載の計算機。
  12. 【請求項12】各ノードをネットワークにより結合する
    点が異なる請求項10叉は請求項11に記載の計算機。
  13. 【請求項13】各ノードから出力される転送命令を、ノ
    ードの発行した1以上のトランザクションに復元してネ
    ットワーク内に設けた命令バッファに格納し、 ネットワークは各ノードへの出力ポート毎に、命令バッ
    ファ内の1以上のトランザクションから同時にノードへ
    出力するトランザクションの組を選択し、これらのトラ
    ンザクションをまとめて転送命令に変換してノードへと
    出力することを特徴とする請求項12に記載の計算機。
  14. 【請求項14】1以上のプロセッサを持つプロセッサノ
    ードと、1以上のメモリを持つメモリノードをバスによ
    り結合し、プロセッサ及びメモリが発行するトランザク
    ションを前記バスを介してノード間で授受する計算機に
    おいて、 複数のノードが同時にバス信号線の異なる部分を使用し
    てトランザクションを伝送可能であることを特徴とする
    計算機。
  15. 【請求項15】1以上のプロセッサと1以上のメモリを
    持つノードを使用する点が異なる請求項10から請求項
    14のいずれかに記載の計算機。
  16. 【請求項16】調停回路・エンコーダ部は、各出力側論
    理回路が発行する1以上の命令の命令データ部の一部分
    及び命令コード部を受けて、入力側論理回路に送出する
    転送コード部及び転送データ部の一部分を生成すること
    を特徴とする請求項4叉は請求項5に記載の論理回路接
    続装置。
  17. 【請求項17】調停回路または調停回路・エンコーダ部
    またはエンコーダは、生成する転送命令の種類及び命令
    の組の順序に対応して命令データ部を伝送する転送デー
    タ部のフィールド位置を決定し、 デコーダおよび入力側論理回路は、受信した転送命令の
    種類及び転送命令のフィールド位置から元の命令の組の
    順序を再現することで、 転送された命令の組の順序を伝達することを特徴とする
    請求項1から請求項16のいずれかに記載の論理回路接
    続装置または計算機。
  18. 【請求項18】調停回路または調停回路・エンコーダ部
    またはエンコーダは、命令の組の順序に対応して命令デ
    ータ部を伝送する転送データ部のフィールド位置を決定
    し、 デコーダおよび入力側論理回路は、転送命令のフィール
    ド位置から元の命令の組の順序を再現し、 転送された命令の組の順序を伝達することを特徴とする
    請求項1から請求項16のいずれかに記載の論理回路接
    続装置または計算機。
  19. 【請求項19】調停回路・エンコーダ部またはエンコー
    ダは、命令の組の順序に対応して異なる転送命令を生成
    し、 デコーダおよび入力側論理回路は、転送命令の種類に応
    じて元の命令の組とその順序を再現し、 転送された命令の組の順序を伝達することを特徴とする
    請求項1から請求項16のいずれかに記載の論理回路接
    続装置または計算機。
  20. 【請求項20】転送する命令の組または生成する命令の
    組に応じて、請求項17から請求項19または他の命令
    の順序を伝達する手段のいずれか1つを選択して使用す
    ることを特徴とする請求項1から請求項16のいずれか
    に記載の論理回路接続装置または計算機。
JP07307297A 1997-03-26 1997-03-26 論理回路接続装置 Expired - Fee Related JP3713876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07307297A JP3713876B2 (ja) 1997-03-26 1997-03-26 論理回路接続装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07307297A JP3713876B2 (ja) 1997-03-26 1997-03-26 論理回路接続装置

Publications (2)

Publication Number Publication Date
JPH10269190A true JPH10269190A (ja) 1998-10-09
JP3713876B2 JP3713876B2 (ja) 2005-11-09

Family

ID=13507770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07307297A Expired - Fee Related JP3713876B2 (ja) 1997-03-26 1997-03-26 論理回路接続装置

Country Status (1)

Country Link
JP (1) JP3713876B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009260645A (ja) * 2008-04-16 2009-11-05 Nec Computertechno Ltd パケット制御回路、パケット処理装置、および、パケット処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009260645A (ja) * 2008-04-16 2009-11-05 Nec Computertechno Ltd パケット制御回路、パケット処理装置、および、パケット処理方法
JP4679601B2 (ja) * 2008-04-16 2011-04-27 エヌイーシーコンピュータテクノ株式会社 パケット制御回路、パケット処理装置、および、パケット処理方法

Also Published As

Publication number Publication date
JP3713876B2 (ja) 2005-11-09

Similar Documents

Publication Publication Date Title
JP2547424B2 (ja) デジタルデータ処理システム
US6557069B1 (en) Processor-memory bus architecture for supporting multiple processors
US6526469B1 (en) Bus architecture employing varying width uni-directional command bus
EP0608663B1 (en) A multi-processor system with shared memory
US6895482B1 (en) Reordering and flushing commands in a computer memory subsystem
JP2512651B2 (ja) メモリ共有マルチプロセッサ
US5611058A (en) System and method for transferring information between multiple buses
US5878235A (en) Method and system for concurrent computer transaction processing
US5682551A (en) System for checking the acceptance of I/O request to an interface using software visible instruction which provides a status signal and performs operations in response thereto
US6012118A (en) Method and apparatus for performing bus operations in a computer system using deferred replies returned without using the address bus
US5919254A (en) Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
EP0450233A2 (en) Bus access for digital computer system
US20040225823A1 (en) Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect
CA2068580A1 (en) Scientific visualization system
JP2539021B2 (ja) 保留バスに割り込み要求を送る割り込み要求発生ノ―ド
JPH0642236B2 (ja) コマンダノードからのインターロック読み取りコマンドメッセージをレスポンダノードで実行する装置
JPH05197674A (ja) マルチプロセッサシステム用アービトレーション装置および同方法
JP2004185639A (ja) マルチ幅のメモリ・サブシステムをサポートするための方法
JPH0810446B2 (ja) バスの競合を解決するための裁定手段
JPH0642225B2 (ja) Dma機能を有する計算機システム
KR980010805A (ko) 범용 컴퓨터 구조용 프로세서 서브시스템
JPS62189549A (ja) 多重階層レベルマルチプロセツサ装置
JPH0775016B2 (ja) データ処理システム及びデータ通信バス・システム
KR980010806A (ko) 각종 프로세서와 버스 프로토콜에 적응 가능한 범용 구조를 제공하는 컴퓨터 시스템
JP2001092772A (ja) 同期固定レイテンシループを使用するデータバス

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040322

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040322

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050308

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050509

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050802

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050815

LAPS Cancellation because of no payment of annual fees