JPH0128972B2 - - Google Patents
Info
- Publication number
- JPH0128972B2 JPH0128972B2 JP58226710A JP22671083A JPH0128972B2 JP H0128972 B2 JPH0128972 B2 JP H0128972B2 JP 58226710 A JP58226710 A JP 58226710A JP 22671083 A JP22671083 A JP 22671083A JP H0128972 B2 JPH0128972 B2 JP H0128972B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- processor
- register
- words
- 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.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 154
- 238000012546 transfer Methods 0.000 claims description 56
- 239000000872 buffer Substances 0.000 claims description 16
- 238000013500 data storage Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1663—Access to shared memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
Description
【発明の詳細な説明】
<発明の分野>
この発明は、共通にアクセス可能なメモリを有
する複数のプロセツサを備えたデータ方式に、特
に少なくとも2個のプロセツサとメモリとの間に
おいて所望の同時伝達が行なわれるような方式に
関する。
する複数のプロセツサを備えたデータ方式に、特
に少なくとも2個のプロセツサとメモリとの間に
おいて所望の同時伝達が行なわれるような方式に
関する。
<発明の背景>
現在の多数のデータ方式は、2個以上のデー
タ・プロセツサと共通のメモリとを備えている。
2個あるいはそれ以上のプロセツサからメモリに
対して同時にアクセスすることができることが望
ましいけれども、このような同時アクセスはその
メモリが複数のアクセス・ポートを持たなければ
不可能である。メモリが単一のアクセス・ポート
を有する場合には、そのメモリに対して同じ所定
の時間にアクセスを要求する複数のプロセツサ
は、メモリの争奪状態に在ると言われる。それ
故、複数のプロセツサは単一のポートを経てメモ
リをアクセスする順番を持たなければならない。
より早く作動したプロセツサが大量のデータの出
入れを必要とするならば、その次に作動するプロ
セツサの待ち時間は非常に長くなる。
タ・プロセツサと共通のメモリとを備えている。
2個あるいはそれ以上のプロセツサからメモリに
対して同時にアクセスすることができることが望
ましいけれども、このような同時アクセスはその
メモリが複数のアクセス・ポートを持たなければ
不可能である。メモリが単一のアクセス・ポート
を有する場合には、そのメモリに対して同じ所定
の時間にアクセスを要求する複数のプロセツサ
は、メモリの争奪状態に在ると言われる。それ
故、複数のプロセツサは単一のポートを経てメモ
リをアクセスする順番を持たなければならない。
より早く作動したプロセツサが大量のデータの出
入れを必要とするならば、その次に作動するプロ
セツサの待ち時間は非常に長くなる。
この発明の目的は、各プロセツサが何時でもメ
モリに対してアクセスすることができるように、
メモリに対して争奪のないアクセスを可能にする
ことにある。
モリに対してアクセスすることができるように、
メモリに対して争奪のないアクセスを可能にする
ことにある。
争奪のない方式(以下に詳述する)に関する従
来の方式には、データ転送回路網中の複数のデー
タ・バスと、これと同数の複数のプロセツサであ
つて各々がそれぞれのデータ・バスに結合された
ものと、各々がすべてのデータ・バスに対して切
換え接続できるようにされた複数のメモリと、を
備えたものがある。このような従来の方式では、
各プロセツサは複数のメモリのうちの1つのもの
に対して所定の時間の間接続される。この時間の
間、他のプロセツサはその1つのメモリをアクセ
スすることはできない。更に、プロセツサとメモ
リとデータ・バスとの数が増加すれば、それに応
じて回路網中の切換えユニツトの数と費用も増加
する。このような従来の方式では、争奪のないメ
モリ・アクセスの目的は達成できない。
来の方式には、データ転送回路網中の複数のデー
タ・バスと、これと同数の複数のプロセツサであ
つて各々がそれぞれのデータ・バスに結合された
ものと、各々がすべてのデータ・バスに対して切
換え接続できるようにされた複数のメモリと、を
備えたものがある。このような従来の方式では、
各プロセツサは複数のメモリのうちの1つのもの
に対して所定の時間の間接続される。この時間の
間、他のプロセツサはその1つのメモリをアクセ
スすることはできない。更に、プロセツサとメモ
リとデータ・バスとの数が増加すれば、それに応
じて回路網中の切換えユニツトの数と費用も増加
する。このような従来の方式では、争奪のないメ
モリ・アクセスの目的は達成できない。
また、争奪のない方式に関する他の方法とし
て、ビツトに分割されたメモリ配列を使用するも
のがある。このメモリ配列には、1ワード中のビ
ツト数と同数のメモリが存在する。従つて、1ワ
ードに32ビツトを有する方式では、各プロセツサ
に結合される各メモリは32個存在する。また、こ
の方式では、種々のプロセツサと種々のメモリと
の間でアドレスを転送し且つ信号を制御するため
に別個の制御バスが必要である。このビツトに分
割されたメモリ配列の方式は他の前述の従来方式
よりも複雑ではないが、一時に唯一つのプロセツ
サをメモリに接続することができるだけであると
いう点で、上記2種の方式のうちで満足できるも
のでない。
て、ビツトに分割されたメモリ配列を使用するも
のがある。このメモリ配列には、1ワード中のビ
ツト数と同数のメモリが存在する。従つて、1ワ
ードに32ビツトを有する方式では、各プロセツサ
に結合される各メモリは32個存在する。また、こ
の方式では、種々のプロセツサと種々のメモリと
の間でアドレスを転送し且つ信号を制御するため
に別個の制御バスが必要である。このビツトに分
割されたメモリ配列の方式は他の前述の従来方式
よりも複雑ではないが、一時に唯一つのプロセツ
サをメモリに接続することができるだけであると
いう点で、上記2種の方式のうちで満足できるも
のでない。
<発明の概要>
この発明は、データ蓄積メモリと複数N個のデ
ータ・プロセツサとの間で転送回路網を経てデー
タのワードを同時に転送する方式であつて転送制
御手段をも含む方式において実施される。
ータ・プロセツサとの間で転送回路網を経てデー
タのワードを同時に転送する方式であつて転送制
御手段をも含む方式において実施される。
この発明によれば、転送制御手段はN個のバツ
フア手段を有し、各バツフア手段はプロセツサの
それぞれのものとM個のワードを一時的に蓄積す
るためのメモリとの間に結合されている。ここ
で、MはNに比例している。各バツフア手段は上
記制御手段からの信号に応答して、それ自体と
各々のプロセツサとの間で、一時的に蓄積された
ワードを転送速度Xで直列的に転送し、かつ、そ
れ自体とメモリとの間で一時にM個のワードを並
列的に転送し、N個のバツフア手段とメモリとの
間の転送は、各バツフアとそのプロセツサとの間
のワードの転送が中断されることなく連続して行
なうことができるような速度で連続的に行なわれ
る。
フア手段を有し、各バツフア手段はプロセツサの
それぞれのものとM個のワードを一時的に蓄積す
るためのメモリとの間に結合されている。ここ
で、MはNに比例している。各バツフア手段は上
記制御手段からの信号に応答して、それ自体と
各々のプロセツサとの間で、一時的に蓄積された
ワードを転送速度Xで直列的に転送し、かつ、そ
れ自体とメモリとの間で一時にM個のワードを並
列的に転送し、N個のバツフア手段とメモリとの
間の転送は、各バツフアとそのプロセツサとの間
のワードの転送が中断されることなく連続して行
なうことができるような速度で連続的に行なわれ
る。
<従来方式の例>
第1図の従来方式は、1例として、4個のプロ
セツサ10,12,14,16と、4個の32ビツ
トメモリ20,22,24,26と、データ転送
回路網28とを有する。このデータ転送回路網2
8は、各々が関連するプロセツサ10,12,1
4,16にそれぞれ接続された4個のバス・セツ
ト11,13,15,17を有している。各バ
ス・セツトは各メモリに切換え可能に接続されて
いる。スイツチは〇印30で模型的に示されてお
り、このスイツチ30のようなスイツチが16個あ
る。代表的なデータ・ワード当り32ビツト(32ビ
ツト/データ・ワード)方式に対する各バス・セ
ツトは実際には32本のワイヤを含み、スイツチ3
0とその他の同様なスイツチは実際には32極単投
スイツチである。スイツチ制御手段は図示されて
いないが、種々のプロセツサで制御される普通に
設計されたものである。第1図及び後述の第2図
における種々の点における斜線に付された数字
は、その斜線が横切る線の信号ワイヤの数を示
す。第1図では、種々の斜線の付いた線はすべて
32本のデータ・ワイヤを表わす。また、その他の
接地ワイヤや制御ワイヤ等はその32本のワイヤに
付加される。
セツサ10,12,14,16と、4個の32ビツ
トメモリ20,22,24,26と、データ転送
回路網28とを有する。このデータ転送回路網2
8は、各々が関連するプロセツサ10,12,1
4,16にそれぞれ接続された4個のバス・セツ
ト11,13,15,17を有している。各バ
ス・セツトは各メモリに切換え可能に接続されて
いる。スイツチは〇印30で模型的に示されてお
り、このスイツチ30のようなスイツチが16個あ
る。代表的なデータ・ワード当り32ビツト(32ビ
ツト/データ・ワード)方式に対する各バス・セ
ツトは実際には32本のワイヤを含み、スイツチ3
0とその他の同様なスイツチは実際には32極単投
スイツチである。スイツチ制御手段は図示されて
いないが、種々のプロセツサで制御される普通に
設計されたものである。第1図及び後述の第2図
における種々の点における斜線に付された数字
は、その斜線が横切る線の信号ワイヤの数を示
す。第1図では、種々の斜線の付いた線はすべて
32本のデータ・ワイヤを表わす。また、その他の
接地ワイヤや制御ワイヤ等はその32本のワイヤに
付加される。
動作中、各プロセツサはデータ転送回路網28
中の適切なスイツチの設定によつて選択された1
つのメモリに結合される。転送は、30のような
スイツチで接続されるプロセツサとメモリとの間
でいずれの方向にも行なわれる。転送はビツトを
並列的に、ワードを直列的にして行なわれる。す
なわち、32ビツトの第1のワードがメモリからプ
ロセツサへ、あるいはその逆方向に転送され、次
に、第2の32ビツトのワードがそれに続く、とい
つたように転送が行なわれる。2つのプロセツサ
が同時に同じメモリと通信を望まない限り、各プ
ロセツサはその最大の速度で動作することができ
る。2つのプロセツサが同じメモリと通信を望む
時は、一方のプロセツサは所望のメモリと他方の
プロセツサとの間のデータ転送が完了するまで待
機しなければならない。データのブロツクが大き
い場合は、その待機は長くなり、ある場合には、
許容限界を越える。
中の適切なスイツチの設定によつて選択された1
つのメモリに結合される。転送は、30のような
スイツチで接続されるプロセツサとメモリとの間
でいずれの方向にも行なわれる。転送はビツトを
並列的に、ワードを直列的にして行なわれる。す
なわち、32ビツトの第1のワードがメモリからプ
ロセツサへ、あるいはその逆方向に転送され、次
に、第2の32ビツトのワードがそれに続く、とい
つたように転送が行なわれる。2つのプロセツサ
が同時に同じメモリと通信を望まない限り、各プ
ロセツサはその最大の速度で動作することができ
る。2つのプロセツサが同じメモリと通信を望む
時は、一方のプロセツサは所望のメモリと他方の
プロセツサとの間のデータ転送が完了するまで待
機しなければならない。データのブロツクが大き
い場合は、その待機は長くなり、ある場合には、
許容限界を越える。
<この発明の実施例>
この発明の好ましい実施例による第2図の装置
は全く争奪の無いものではないが、以下に述べる
ように第1図の回路よりもはるかに争奪の少ない
ものである。第2図では、第1図の従来技術のプ
ロセツサと同様な4個のプロセツサ10,12,
14,16が、点線の枠41内のデータ転送回路
網40を経て大域(グローバル)メモリ38−
1,38−2,38−32(図にはこのようなメ
モリが3個だけ示されている)に結合されてい
る。第1図の場合と同様に、プロセツサの数(4)、
ワード当りのビツト数(32)、32個の1ビツト多
数ワード・メモリに細分されたメモリ数(1)等は単
なる例である。特に、8個のプロセツサは実際の
装置のより代表的なものであるが、4個はこの発
明の原理を説明するのにかなつたものである。プ
ロセツサ10のような各プロセツサは、フエアチ
ヤイルド(Fairchild)社製のモデル1750、デイ
ジタル イクイツプメント(Digital
Equipment)社製のモデルPDP−11/23、ある
いはモトローラ(Motorola)社製のモデル68000
として市販されている標準のマイクロプロセツサ
からなるものでよい。別の例では、1あるいはそ
れ以上のプロセツサは、大域(グローバル)メモ
リからのデータを使用し、また/あるいは大域メ
モリ用に割当てられるデータを発生する特別な目
的の装置でもよい。
は全く争奪の無いものではないが、以下に述べる
ように第1図の回路よりもはるかに争奪の少ない
ものである。第2図では、第1図の従来技術のプ
ロセツサと同様な4個のプロセツサ10,12,
14,16が、点線の枠41内のデータ転送回路
網40を経て大域(グローバル)メモリ38−
1,38−2,38−32(図にはこのようなメ
モリが3個だけ示されている)に結合されてい
る。第1図の場合と同様に、プロセツサの数(4)、
ワード当りのビツト数(32)、32個の1ビツト多
数ワード・メモリに細分されたメモリ数(1)等は単
なる例である。特に、8個のプロセツサは実際の
装置のより代表的なものであるが、4個はこの発
明の原理を説明するのにかなつたものである。プ
ロセツサ10のような各プロセツサは、フエアチ
ヤイルド(Fairchild)社製のモデル1750、デイ
ジタル イクイツプメント(Digital
Equipment)社製のモデルPDP−11/23、ある
いはモトローラ(Motorola)社製のモデル68000
として市販されている標準のマイクロプロセツサ
からなるものでよい。別の例では、1あるいはそ
れ以上のプロセツサは、大域(グローバル)メモ
リからのデータを使用し、また/あるいは大域メ
モリ用に割当てられるデータを発生する特別な目
的の装置でもよい。
一例として、各プロセツサは32ビツト・ワー
ド、すなわち各ワードが32ビツトからなるものを
使用している。第2図に示すように、各プロセツ
サはまた通常は約64000(64キロ)の32ビツト・ワ
ードを蓄積するメモリからなるが、64キロより少
数あるいはより多数のワードを蓄積することので
きるメモリで構成することも可能である。大域メ
モリ38は、インテル社から市販されているよう
な32個の1ビツト多数ワード固体メモリからなつ
ている。メモリ38−1,38−2,…等の大域
メモリ38の各々の部分は各多数ワードの1ビツ
トのみを記憶する。32ビツト装置では、32個のこ
のようなメモリを必要とし、各メモリは、例えば
少なくともN×64キロ・ワードの各々の1ビツト
を記憶する。こゝで、Nはプロセツサの数に等し
い。データは42−1,42−2…42−32の
ようなデータ・バスによつてメモリ38へ、およ
びメモリ38から転送され、一方、制御(読出
し/書入れ)およびアドレス情報はバス44およ
び44−1,44−2,44−32のような分岐
バスを経てメモリ38に送られる。
ド、すなわち各ワードが32ビツトからなるものを
使用している。第2図に示すように、各プロセツ
サはまた通常は約64000(64キロ)の32ビツト・ワ
ードを蓄積するメモリからなるが、64キロより少
数あるいはより多数のワードを蓄積することので
きるメモリで構成することも可能である。大域メ
モリ38は、インテル社から市販されているよう
な32個の1ビツト多数ワード固体メモリからなつ
ている。メモリ38−1,38−2,…等の大域
メモリ38の各々の部分は各多数ワードの1ビツ
トのみを記憶する。32ビツト装置では、32個のこ
のようなメモリを必要とし、各メモリは、例えば
少なくともN×64キロ・ワードの各々の1ビツト
を記憶する。こゝで、Nはプロセツサの数に等し
い。データは42−1,42−2…42−32の
ようなデータ・バスによつてメモリ38へ、およ
びメモリ38から転送され、一方、制御(読出
し/書入れ)およびアドレス情報はバス44およ
び44−1,44−2,44−32のような分岐
バスを経てメモリ38に送られる。
データ転送回路網40は、各プロセツサの各ビ
ツトに関連するN個のビツト・データ・レジスタ
すなわちデータ・バツフアを具備している。こゝ
でNは一般には装置のプロセツサの数に等しいか
その倍数となつている。従つて、プロセツサ10
(プロセツサ1とも示されている)は、32個の4
ビツト・レジスタに接続されたメモリを有してい
る。こゝでは3個の4ビツト・レジスタ、すなわ
ちレジスタ1−1、レジスタ1−2、レジスタ1
−32が示されている。各大域メモリのデータ・
バスは4個のデータ・レジスタに接続されてい
る。例えば、大域メモリ38−2はデータ・バス
42−2を経てレジスタ1−2、レジスタ2−
2、レジスタ3−2、レジスタ4−2に接続され
ている。各レジスタはレジスタX−Yの形で示さ
れており、Xはそのレジスタが接続されるプロセ
ツサの番号を示し、Yはそのレジスタが接続され
る大域メモリのビツト位置の番号を表わす。例え
ば、レジスタ3−2はプロセツサ3(プロセツサ
14と図示されている)に接続されており、また
大域メモリ38−2に接続されている。データの
ビツトが各レジスタとそれに関連するプロセツサ
との間で直列的に転送され、またレジスタと大域
メモリとの間でビツトが並列的に転送されるよう
にレジスタが配列されている。
ツトに関連するN個のビツト・データ・レジスタ
すなわちデータ・バツフアを具備している。こゝ
でNは一般には装置のプロセツサの数に等しいか
その倍数となつている。従つて、プロセツサ10
(プロセツサ1とも示されている)は、32個の4
ビツト・レジスタに接続されたメモリを有してい
る。こゝでは3個の4ビツト・レジスタ、すなわ
ちレジスタ1−1、レジスタ1−2、レジスタ1
−32が示されている。各大域メモリのデータ・
バスは4個のデータ・レジスタに接続されてい
る。例えば、大域メモリ38−2はデータ・バス
42−2を経てレジスタ1−2、レジスタ2−
2、レジスタ3−2、レジスタ4−2に接続され
ている。各レジスタはレジスタX−Yの形で示さ
れており、Xはそのレジスタが接続されるプロセ
ツサの番号を示し、Yはそのレジスタが接続され
る大域メモリのビツト位置の番号を表わす。例え
ば、レジスタ3−2はプロセツサ3(プロセツサ
14と図示されている)に接続されており、また
大域メモリ38−2に接続されている。データの
ビツトが各レジスタとそれに関連するプロセツサ
との間で直列的に転送され、またレジスタと大域
メモリとの間でビツトが並列的に転送されるよう
にレジスタが配列されている。
各データ・バス42−X(X=1、2、3、4
…32)は複数のレジスタに接続されているので、
各レジスタはそのデータ・バスに接続された45
で示すような横に細長い箱型に示されたゲート手
段を含んでいる。このゲート手段の目的は、後程
さらに詳細に説明するように、一度にメモリと1
個のプロセツサにのみ関連するレジスタとの間で
データの転送が行なわれるようにするためであ
る。
…32)は複数のレジスタに接続されているので、
各レジスタはそのデータ・バスに接続された45
で示すような横に細長い箱型に示されたゲート手
段を含んでいる。このゲート手段の目的は、後程
さらに詳細に説明するように、一度にメモリと1
個のプロセツサにのみ関連するレジスタとの間で
データの転送が行なわれるようにするためであ
る。
データ転送回路網40はまた4個のアドレス・
レジスタ(A/R)46−1,46−2,46−
3,46−4を含み、各プロセツサに対して1個
のアドレス・レジスタが存在する。すなわちA/
Rレジスタ46−1はプロセツサ1に関連し、
A/Rレジスタ46−2はプロセツサ2に関連
し、以下同様な関係にある。各アドレス・レジス
タは一般には30ビツトのメモリ・アドレスおよび
制御情報をもつている。全プロセツサ10,1
2,14,16と全アドレス・レジスタ46−1
乃至46−4との間にはアドレス/命令バス48
が接続されている。各A/Rレジスタにはデー
タ・レジスタ45等に含まれているゲート手段と
同様な横に細長い箱型に示されたゲート手段を含
んでいる。プロセツサ10,12,14,16は
バス48を経て、プロセツサとメモリ38との間
で転送されるべきデータのメモリ38中における
開始および終了アドレス、およびメモリ38へあ
るいはプロセツサへの転送の方向に関連する情報
を関連するアドレス・レジスタに転送する。
レジスタ(A/R)46−1,46−2,46−
3,46−4を含み、各プロセツサに対して1個
のアドレス・レジスタが存在する。すなわちA/
Rレジスタ46−1はプロセツサ1に関連し、
A/Rレジスタ46−2はプロセツサ2に関連
し、以下同様な関係にある。各アドレス・レジス
タは一般には30ビツトのメモリ・アドレスおよび
制御情報をもつている。全プロセツサ10,1
2,14,16と全アドレス・レジスタ46−1
乃至46−4との間にはアドレス/命令バス48
が接続されている。各A/Rレジスタにはデー
タ・レジスタ45等に含まれているゲート手段と
同様な横に細長い箱型に示されたゲート手段を含
んでいる。プロセツサ10,12,14,16は
バス48を経て、プロセツサとメモリ38との間
で転送されるべきデータのメモリ38中における
開始および終了アドレス、およびメモリ38へあ
るいはプロセツサへの転送の方向に関連する情報
を関連するアドレス・レジスタに転送する。
各A/Rレジスタはそれが作用するプロセツサ
に関連するデータ・レジスタに結合されている。
すなわちA/Rレジスタ1はプロセツサ1に関連
するレジスタ1−1,1−2,…1−32に結合
されている。他のアドレス・レジスタは同様にそ
れに関連するレジスタに接続されているが、図面
を見易くするために図示されていない。A/Rレ
ジスタとデータ・レジスタとを接続する目的は、
データ・レジスタを制御してデータ転送の方向、
すなわちプロセツサへあるいはプロセツサからの
いずれかの方向を決定するためである。各A/R
レジスタはカウンタあるいはそれと等価な構成を
有しており、以下に述べるように、A/Rレジス
タがアクセスされる毎に、その中に蓄積されたア
ドレスが最終アドレスに達するまで蓄積されたメ
モリのアドレスを増加する。
に関連するデータ・レジスタに結合されている。
すなわちA/Rレジスタ1はプロセツサ1に関連
するレジスタ1−1,1−2,…1−32に結合
されている。他のアドレス・レジスタは同様にそ
れに関連するレジスタに接続されているが、図面
を見易くするために図示されていない。A/Rレ
ジスタとデータ・レジスタとを接続する目的は、
データ・レジスタを制御してデータ転送の方向、
すなわちプロセツサへあるいはプロセツサからの
いずれかの方向を決定するためである。各A/R
レジスタはカウンタあるいはそれと等価な構成を
有しており、以下に述べるように、A/Rレジス
タがアクセスされる毎に、その中に蓄積されたア
ドレスが最終アドレスに達するまで蓄積されたメ
モリのアドレスを増加する。
制御手段50は第2図中のプロセツサ10乃至
16、メモリ38、A/Rレジスタ46−1乃至
46−4、レジスタ1−1,1−2,…4−32
の各々に結合されており、それらに制御およびタ
イミング情報を供給する。制御手段50と他の素
子との間の相互接続は図面を簡単にするために第
2図には示されていない。特に制御手段50は、
各種のレジスタが付勢されてデータを受け入れた
り、データを転送するための持続時間および速さ
を制御するための信号を発生する。
16、メモリ38、A/Rレジスタ46−1乃至
46−4、レジスタ1−1,1−2,…4−32
の各々に結合されており、それらに制御およびタ
イミング情報を供給する。制御手段50と他の素
子との間の相互接続は図面を簡単にするために第
2図には示されていない。特に制御手段50は、
各種のレジスタが付勢されてデータを受け入れた
り、データを転送するための持続時間および速さ
を制御するための信号を発生する。
タイミング図表52に示すように、レジスタは
直列的に付勢され、第1番目にレジスタ1群、す
なわちレジスタ1−1乃至1−32、アドレス・
レジスタ1が付勢され、次にレジスタ2群、すな
わちレジスタ2−1乃至2−32およびアドレ
ス・レジスタ2が付勢され、以下同様に順次付勢
される。代表的な速さ(1÷時間スロツト間の間
隔)は10メガヘルツ(MHz)である。特定の組の
データ・レジスタが付勢される同じ時間スロツト
の期間中に、関連するアドレス・レジスタは付勢
されて、もし存在すればそれに関連するプロセツ
サからの新しいアドレスを受取るか、あるいはカ
ウンタによつて決定されたアドレスにあるメモリ
をアドレスし、そのアドレス・レジスタをアドレ
スされた位置に書込むかあるいはそれから読出す
ようにセツトする。各時間スロツトの終りに各レ
ジスタ(関連するプロセツサによるデータ転送が
望まれるレジスタ)は付勢され、それ自身とそれ
に関連するプロセツサとの間で1ビツト・データ
を転送する。
直列的に付勢され、第1番目にレジスタ1群、す
なわちレジスタ1−1乃至1−32、アドレス・
レジスタ1が付勢され、次にレジスタ2群、すな
わちレジスタ2−1乃至2−32およびアドレ
ス・レジスタ2が付勢され、以下同様に順次付勢
される。代表的な速さ(1÷時間スロツト間の間
隔)は10メガヘルツ(MHz)である。特定の組の
データ・レジスタが付勢される同じ時間スロツト
の期間中に、関連するアドレス・レジスタは付勢
されて、もし存在すればそれに関連するプロセツ
サからの新しいアドレスを受取るか、あるいはカ
ウンタによつて決定されたアドレスにあるメモリ
をアドレスし、そのアドレス・レジスタをアドレ
スされた位置に書込むかあるいはそれから読出す
ようにセツトする。各時間スロツトの終りに各レ
ジスタ(関連するプロセツサによるデータ転送が
望まれるレジスタ)は付勢され、それ自身とそれ
に関連するプロセツサとの間で1ビツト・データ
を転送する。
第2図の装置の動作は、ハードウエアと準タイ
ミング図表との組合わせを示す第3図を参照する
ことによつて一層明確に理解することができる。
第2図の詳細な動作を説明する前に、その装置の
動作理論を説明する。装置の目的は、多数のプロ
セツサ1,2,3,4,10,12,14,16
の各々が外観上、プロセツサからメモリへあるい
はメモリからプロセツサへデータを転送するため
に装置の大域メモリ38を排他的に使用すること
にある。
ミング図表との組合わせを示す第3図を参照する
ことによつて一層明確に理解することができる。
第2図の詳細な動作を説明する前に、その装置の
動作理論を説明する。装置の目的は、多数のプロ
セツサ1,2,3,4,10,12,14,16
の各々が外観上、プロセツサからメモリへあるい
はメモリからプロセツサへデータを転送するため
に装置の大域メモリ38を排他的に使用すること
にある。
その実際上の動作のためには、装置は、大きな
データのブロツクが転送されることを必要とす
る。これは、プロセツサがそれに関連するアドレ
ス・レジスタ46に、転送されることが望まれる
データの大域メモリ中の開始および終了アドレス
および転送の方向を転送するために要する時間に
よる。一旦“ハウスキーピング”が準備され、す
べてのプロセツサが同時動作を望む最悪状態を仮
定すると、実際のデータ転送がはじまる。
データのブロツクが転送されることを必要とす
る。これは、プロセツサがそれに関連するアドレ
ス・レジスタ46に、転送されることが望まれる
データの大域メモリ中の開始および終了アドレス
および転送の方向を転送するために要する時間に
よる。一旦“ハウスキーピング”が準備され、す
べてのプロセツサが同時動作を望む最悪状態を仮
定すると、実際のデータ転送がはじまる。
以下の説明では、転送は大域メモリ38から各
種のプロセツサ1乃至4に向けて行なわれると仮
定されているが、データの転送はプロセツサから
大域メモリへ、あるいはその組合わせ、すなわち
大域メモリからあるプロセツサへ、および他のプ
ロセツサから大域メモリへも行なわれることを念
頭に置いておく必要がある。
種のプロセツサ1乃至4に向けて行なわれると仮
定されているが、データの転送はプロセツサから
大域メモリへ、あるいはその組合わせ、すなわち
大域メモリからあるプロセツサへ、および他のプ
ロセツサから大域メモリへも行なわれることを念
頭に置いておく必要がある。
制御手段50のタイミング制御のもとで、第1
の時間スロツト期間中、4個のワードの群(ブロ
ツク)はA/Rレジスタ1のカウンタ中に蓄積さ
れたアドレスによつて決定される大域メモリ38
中のアドレスからレジスタ1(レジスタ1−1、
レジスタ1−2,…レジスタ1−32)に並列的
に転送され、A/Rレジスタ1のカウンタは次の
4個のワードの群のアドレスに増加される。並列
的に転送されるワードの数は装置中のプロセツサ
の数に等しいか、その倍数になつている。もし大
域メモリがプロセツサと同じデータ転送率、例え
ばXで動作できるとすれば、プロセツサの数に等
しいワード数が並列に転送される。もし大域メモ
リがプロセツサの動作率÷Yで動作すれば、プロ
セツサの数のY倍のワードが並列に転送される。
以下では大域メモリ38のデータ転送率およびプ
ロセツサのデータ転送率は共にXであると仮定す
る。例えば転送率Xは1MHzとすることができる。
の時間スロツト期間中、4個のワードの群(ブロ
ツク)はA/Rレジスタ1のカウンタ中に蓄積さ
れたアドレスによつて決定される大域メモリ38
中のアドレスからレジスタ1(レジスタ1−1、
レジスタ1−2,…レジスタ1−32)に並列的
に転送され、A/Rレジスタ1のカウンタは次の
4個のワードの群のアドレスに増加される。並列
的に転送されるワードの数は装置中のプロセツサ
の数に等しいか、その倍数になつている。もし大
域メモリがプロセツサと同じデータ転送率、例え
ばXで動作できるとすれば、プロセツサの数に等
しいワード数が並列に転送される。もし大域メモ
リがプロセツサの動作率÷Yで動作すれば、プロ
セツサの数のY倍のワードが並列に転送される。
以下では大域メモリ38のデータ転送率およびプ
ロセツサのデータ転送率は共にXであると仮定す
る。例えば転送率Xは1MHzとすることができる。
続く第2の時間スロツト期間中、プロセツサ2
用として予定された4個のワードの第2の群は
A/Rレジスタ2によつてアドレスされる位置に
ある大域メモリ38からレジスタ2(レジスタ2
−1、レジスタ2−2、…レジスタ2−32)に
転送される。同じ時間スロツト期間中、レジスタ
1からの第1のワードはプロセツサ1のメモリへ
転送される。
用として予定された4個のワードの第2の群は
A/Rレジスタ2によつてアドレスされる位置に
ある大域メモリ38からレジスタ2(レジスタ2
−1、レジスタ2−2、…レジスタ2−32)に
転送される。同じ時間スロツト期間中、レジスタ
1からの第1のワードはプロセツサ1のメモリへ
転送される。
続く第3の時間スロツト期間中、データはA/
Rレジスタ3によつてアドレスされた位置にある
大域メモリ38からレジスタ3(レジスタ3−
1、レジスタ3−2、…レジスタ3−32)に転
送される。その時間スロツト期間中、レジスタ1
中の4個のワードの第2の群はプロセツサ1のメ
モリに転送され、レジスタ2中の4個のワードの
第1の群はプロセツサ2のメモリに転送される。
Rレジスタ3によつてアドレスされた位置にある
大域メモリ38からレジスタ3(レジスタ3−
1、レジスタ3−2、…レジスタ3−32)に転
送される。その時間スロツト期間中、レジスタ1
中の4個のワードの第2の群はプロセツサ1のメ
モリに転送され、レジスタ2中の4個のワードの
第1の群はプロセツサ2のメモリに転送される。
続く第4の時間スロツト期間中、4個のワード
の群はA/Rレジスタ4によつてアドレスされる
位置にある大域メモリ38からレジスタ4(レジ
スタ4−1、レジスタ4−2、…レジスタ4−3
2)に転送され、レジスタ1中の4個のワードの
第3の群はプロセツサ1のメモリに転送され、レ
ジスタ2の4個のワードの第2の群はプロセツサ
2のメモリに転送され、レジスタ3中の4個のワ
ードの第1の群はプロセツサ3のメモリに転送さ
れる。
の群はA/Rレジスタ4によつてアドレスされる
位置にある大域メモリ38からレジスタ4(レジ
スタ4−1、レジスタ4−2、…レジスタ4−3
2)に転送され、レジスタ1中の4個のワードの
第3の群はプロセツサ1のメモリに転送され、レ
ジスタ2の4個のワードの第2の群はプロセツサ
2のメモリに転送され、レジスタ3中の4個のワ
ードの第1の群はプロセツサ3のメモリに転送さ
れる。
続く第5の時間スロツト期間中、大域メモリ3
8からの4個のワードの第2の群は、レジスタ1
に転送された4個のワードからなる第1の群のう
ちのレジスタ1中にある4番目のワードがプロセ
ツサ1のメモリに転送されたとき、上記レジスタ
1に転送される。他のレジスタの各々のワードの
それに関連するプロセツサのメモリへの転送はそ
の第5の時間スロツト期間中に行なわれる。
8からの4個のワードの第2の群は、レジスタ1
に転送された4個のワードからなる第1の群のう
ちのレジスタ1中にある4番目のワードがプロセ
ツサ1のメモリに転送されたとき、上記レジスタ
1に転送される。他のレジスタの各々のワードの
それに関連するプロセツサのメモリへの転送はそ
の第5の時間スロツト期間中に行なわれる。
上記と同様な動作が、各種のプロセツサのデー
タ転送の要求が満たされるまで、後続する時間ス
ロツト内で行なわれる。重要な点は、一旦データ
の転送が開始されると、各プロセツサはその回路
が可能な速さでデータを受入れるという点であ
る。従つて、各プロセツサは見掛上大域メモリの
専属のようになり、そのためたとえ大域メモリ3
8が1つの時間スロツト中に4個のワードを含ぬ
1個のメモリ・アドレスから読出すことができる
か、あるいは書込むことが出来ても、すべてのプ
ロセツサは実効的には同時に動作させられるよう
になる。
タ転送の要求が満たされるまで、後続する時間ス
ロツト内で行なわれる。重要な点は、一旦データ
の転送が開始されると、各プロセツサはその回路
が可能な速さでデータを受入れるという点であ
る。従つて、各プロセツサは見掛上大域メモリの
専属のようになり、そのためたとえ大域メモリ3
8が1つの時間スロツト中に4個のワードを含ぬ
1個のメモリ・アドレスから読出すことができる
か、あるいは書込むことが出来ても、すべてのプ
ロセツサは実効的には同時に動作させられるよう
になる。
動作をさらに詳細に説明するために、第3図は
第2図に関して(32の)ビツト1のデータを含む
大域メモリ1を拡大してさらに詳細に示してい
る。他の31個の大域メモリは同一である。メモリ
にはそれぞれ多数のワードを蓄積する4個の領域
60,62,64,66があり、各領域はそれぞ
れプロセツサ1が要求するαデータ、プロセツサ
2が要求するβデータ、プロセツサ3が要求する
γデータ、プロセツサ4が要求するδデータを蓄
積している。2あるいはそれ以上のプロセツサが
同じメモリ位置からのデータを必要とすることも
ある。従つて、例えばメモリ領域60および62
が同じあるいは少なくとも重畳することもある。
大域メモリ1はデータ・レジスタX−1の各々に
並列的に結合される。こゝで1は大域メモリ1に
対応し、Xの値はデータ・レジスタが接続される
特定のプロセツサ1,2,3あるいは4に対応す
る。
第2図に関して(32の)ビツト1のデータを含む
大域メモリ1を拡大してさらに詳細に示してい
る。他の31個の大域メモリは同一である。メモリ
にはそれぞれ多数のワードを蓄積する4個の領域
60,62,64,66があり、各領域はそれぞ
れプロセツサ1が要求するαデータ、プロセツサ
2が要求するβデータ、プロセツサ3が要求する
γデータ、プロセツサ4が要求するδデータを蓄
積している。2あるいはそれ以上のプロセツサが
同じメモリ位置からのデータを必要とすることも
ある。従つて、例えばメモリ領域60および62
が同じあるいは少なくとも重畳することもある。
大域メモリ1はデータ・レジスタX−1の各々に
並列的に結合される。こゝで1は大域メモリ1に
対応し、Xの値はデータ・レジスタが接続される
特定のプロセツサ1,2,3あるいは4に対応す
る。
各レジスタにおけるレジスタ・ゲート、制御手
段50(第2図)とデータ・レジスタとの間の接
続、アドレス・レジスタ(第2図)とデータ装置
との間の相互接続関係は示されていないが、これ
らは通常の設計のものであり、また大域メモリと
一時に1個のプロセツサに関連するレジスタのみ
との間でデータを転送できるものである。
段50(第2図)とデータ・レジスタとの間の接
続、アドレス・レジスタ(第2図)とデータ装置
との間の相互接続関係は示されていないが、これ
らは通常の設計のものであり、また大域メモリと
一時に1個のプロセツサに関連するレジスタのみ
との間でデータを転送できるものである。
大域メモリは、4個の連続するワードの群が1
つの単位として一諸に機能的に転送されるように
配列されている。第3図において、プロセツサ1
のメモリ10aは第2図に示したものに比して拡
大して詳細に示されている。他のプロセツサのメ
モリはプロセツサ1のメモリと同様である。各プ
ロセツサのメモリはA、B、C…I…と示された
32ビツトのワード用の蓄積位置からなつている。
図には示されていないが、メモリ10aのビツト
2はレジスタ1−2からのデータを受信するよう
に接続されており、ビツト3はレジスタ1−3か
らのデータを受信するように接続されており、以
下同様に接続されている。
つの単位として一諸に機能的に転送されるように
配列されている。第3図において、プロセツサ1
のメモリ10aは第2図に示したものに比して拡
大して詳細に示されている。他のプロセツサのメ
モリはプロセツサ1のメモリと同様である。各プ
ロセツサのメモリはA、B、C…I…と示された
32ビツトのワード用の蓄積位置からなつている。
図には示されていないが、メモリ10aのビツト
2はレジスタ1−2からのデータを受信するよう
に接続されており、ビツト3はレジスタ1−3か
らのデータを受信するように接続されており、以
下同様に接続されている。
第3図の右上部の図表の左側にはメモリ38か
ら回路網40中のレジスタに転送されるワードが
示されており、その右側には回路網40中のレジ
スタから連続する時間スロツト期間中に各プロセ
ツサに転送されるワードが示されている。従つ
て、時間スロツト1では、大域メモリ38はA/
Rレジスタ1(第2図)によつてアドレスされ
て、大域メモリ領域60および他の31個の大域メモ
リ(図示せず)の同等領域からのαワード1、
2、3、4をレジスタ1−1および31個の他のレ
ジスタ1−X(図示せず)に転送する。A/Rレ
ジスタによる適当なレジスタへのデータのゲート
および大域メモリのアドレスは制御手段50(第
2図)からのタイミング信号の制御のもとで行な
われる。
ら回路網40中のレジスタに転送されるワードが
示されており、その右側には回路網40中のレジ
スタから連続する時間スロツト期間中に各プロセ
ツサに転送されるワードが示されている。従つ
て、時間スロツト1では、大域メモリ38はA/
Rレジスタ1(第2図)によつてアドレスされ
て、大域メモリ領域60および他の31個の大域メモ
リ(図示せず)の同等領域からのαワード1、
2、3、4をレジスタ1−1および31個の他のレ
ジスタ1−X(図示せず)に転送する。A/Rレ
ジスタによる適当なレジスタへのデータのゲート
および大域メモリのアドレスは制御手段50(第
2図)からのタイミング信号の制御のもとで行な
われる。
続く時間スロツト2,3,4等の間では、連続
するワードは図表に示すように転送される。第3
図の図表の矢印70によつて示すように時間スロ
ツト6の終了時の状態を示している。すなわち、
βワード5、6、7、8はレジスタ2−1へ転送
され、ワードα5はレジスタ1−1からメモリ1
0aの位置Eに転送され、ワードβ4はレジスタ
2−1からプロセツサ2のメモリ12aの位置D
に転送される。図示されていないが、ワードγ3
はレジスタ3−1からプロセツサ3用のメモリに
転送され、ワードδ2はレジスタ4−1からプロセ
ツサ4用のメモリに転送される。
するワードは図表に示すように転送される。第3
図の図表の矢印70によつて示すように時間スロ
ツト6の終了時の状態を示している。すなわち、
βワード5、6、7、8はレジスタ2−1へ転送
され、ワードα5はレジスタ1−1からメモリ1
0aの位置Eに転送され、ワードβ4はレジスタ
2−1からプロセツサ2のメモリ12aの位置D
に転送される。図示されていないが、ワードγ3
はレジスタ3−1からプロセツサ3用のメモリに
転送され、ワードδ2はレジスタ4−1からプロセ
ツサ4用のメモリに転送される。
一旦ワードが大域メモリの位置から移される
と、これらの位置は第3図に空白として示されて
いるようになる。実際にはデータが読出されてプ
ロセツサへ送られてもメモリはなおデータを含ん
でいる。
と、これらの位置は第3図に空白として示されて
いるようになる。実際にはデータが読出されてプ
ロセツサへ送られてもメモリはなおデータを含ん
でいる。
これの動作を詳細に述べる前に一般的に示した
ように、すべてのレジスタが一旦満たされた後、
各プロセツサのメモリはその回路の許容速さと同
じ速さでデータを受入れ、従つて各プロセツサの
メモリは見掛上大域メモリ38の専属のようにな
る。
ように、すべてのレジスタが一旦満たされた後、
各プロセツサのメモリはその回路の許容速さと同
じ速さでデータを受入れ、従つて各プロセツサの
メモリは見掛上大域メモリ38の専属のようにな
る。
上に述べた大域メモリからプロセツサへのデー
タ転送動作とは反対に、プロセツサから大域メモ
リへのデータ転送では、データはプロセツサ(例
えばプロセツサ1)からそれに関連するレジスタ
(例えばレジスタ1−X)へ、そのレジスタがい
つぱいになるまで時間スロツト当り1ワードの割
合で転送される。次いで適当なA/Rレジスタ
(例えばA/R1)からのアドレス信号によつて
決定される4個の大域メモリの位置へレジスタが
並列的に移されると、そのプロセスがくり返され
る。
タ転送動作とは反対に、プロセツサから大域メモ
リへのデータ転送では、データはプロセツサ(例
えばプロセツサ1)からそれに関連するレジスタ
(例えばレジスタ1−X)へ、そのレジスタがい
つぱいになるまで時間スロツト当り1ワードの割
合で転送される。次いで適当なA/Rレジスタ
(例えばA/R1)からのアドレス信号によつて
決定される4個の大域メモリの位置へレジスタが
並列的に移されると、そのプロセスがくり返され
る。
ワード当りのビツト数、プロセツサの数につい
てそれぞれ与えられた数値、すべてのプロセツサ
が同時に取扱われることを望むという事実、すべ
てのプロセツサが、データをメモリに書込むこと
に対立するものとしてメモリからデータを読出す
という事実、プロセツサのメモリの速さと大域メ
モリの速さが同じであるという事実、はすべて一
例として示されたものである。
てそれぞれ与えられた数値、すべてのプロセツサ
が同時に取扱われることを望むという事実、すべ
てのプロセツサが、データをメモリに書込むこと
に対立するものとしてメモリからデータを読出す
という事実、プロセツサのメモリの速さと大域メ
モリの速さが同じであるという事実、はすべて一
例として示されたものである。
従つて、ワード当りのビツト数は32よりも多く
も少なくもすることができ、プロセツサの数は4
よりも少なくもすることができ、8個が代表的な
数値である。大域メモリと全プロセツサよりも少
数のプロセツサとの間でデータを同時に転送する
ことができ、またすべてのプロセツサあるいは幾
つかのプロセツサが大域メモリからデータを受信
している間は、プロセツサは大域メモリへデータ
を転送しないかあるいは幾つかのプロセツサが大
域メモリへデータを転送し、プロセツサが大域メ
モリからデータを受信していないときは、すべて
のプロセツサが大域メモリへデータを転送するこ
とができる。さらに、大域メモリはプロセツサの
メモリよりも低速で動作することができる。大域
メモリはより高速で動作することもできるが、良
好にマツチした装置ではない。
も少なくもすることができ、プロセツサの数は4
よりも少なくもすることができ、8個が代表的な
数値である。大域メモリと全プロセツサよりも少
数のプロセツサとの間でデータを同時に転送する
ことができ、またすべてのプロセツサあるいは幾
つかのプロセツサが大域メモリからデータを受信
している間は、プロセツサは大域メモリへデータ
を転送しないかあるいは幾つかのプロセツサが大
域メモリへデータを転送し、プロセツサが大域メ
モリからデータを受信していないときは、すべて
のプロセツサが大域メモリへデータを転送するこ
とができる。さらに、大域メモリはプロセツサの
メモリよりも低速で動作することができる。大域
メモリはより高速で動作することもできるが、良
好にマツチした装置ではない。
一例として、プロセツサが1MHzのデータ転送
率で動作し、大域メモリが0.5MHzの転送率で動
作すると、各レジスタ1−1,1−2,…2−
1,2−2,…4−32は8ワードを保持し、8
ワードが大域メモリと各レジスタとの間で同時に
一度に転送される。この場合、大域メモリは8ワ
ード・バツフア(図示せず)を持ち、0.5MHzの
動作率で並列的にデータを受信し、1.0MHzの動
作率で並列的に適当なレジスタにデータを転送
し、またこれと反対に0.5MHzの動作率でデータ
を転送し、1.0MHzでデータを受信するようにす
ることもできる。
率で動作し、大域メモリが0.5MHzの転送率で動
作すると、各レジスタ1−1,1−2,…2−
1,2−2,…4−32は8ワードを保持し、8
ワードが大域メモリと各レジスタとの間で同時に
一度に転送される。この場合、大域メモリは8ワ
ード・バツフア(図示せず)を持ち、0.5MHzの
動作率で並列的にデータを受信し、1.0MHzの動
作率で並列的に適当なレジスタにデータを転送
し、またこれと反対に0.5MHzの動作率でデータ
を転送し、1.0MHzでデータを受信するようにす
ることもできる。
この装置はまたプロセツサからプロセツサへの
直接転送単独で、あるいはプロセツサから大域メ
モリへおよび大域メモリからプロセツサへの同時
転送も可能である。従つて、例えばプロセツサ1
は命令信号をA/Rレジスタ1に送り、転送され
るべきデータを他のプロセツサ(例えばプロセツ
サ2)からそのレジスタを経てレジスタ1−Xに
直接転送することもできる。この場合、データを
送るプロセツサは4個のワードをそれに関連する
レジスタ、例えばレジスタ2−Xへ4個の連続す
る時間スロツト中に直列的に転送する。次いでレ
ジスタ1−X用の適当な時間スロツト中に、デー
タはレジスタ2−Xからレジスタ1−Xへ並列的
に転送され、その後レジスタ1−Xはプロセツサ
1用のメモリへ時間スロツト当り1ワードを移
し、一方レジスタ2−Xにはプロセツサ2から時
間スロツト当り1ワード供給される。
直接転送単独で、あるいはプロセツサから大域メ
モリへおよび大域メモリからプロセツサへの同時
転送も可能である。従つて、例えばプロセツサ1
は命令信号をA/Rレジスタ1に送り、転送され
るべきデータを他のプロセツサ(例えばプロセツ
サ2)からそのレジスタを経てレジスタ1−Xに
直接転送することもできる。この場合、データを
送るプロセツサは4個のワードをそれに関連する
レジスタ、例えばレジスタ2−Xへ4個の連続す
る時間スロツト中に直列的に転送する。次いでレ
ジスタ1−X用の適当な時間スロツト中に、デー
タはレジスタ2−Xからレジスタ1−Xへ並列的
に転送され、その後レジスタ1−Xはプロセツサ
1用のメモリへ時間スロツト当り1ワードを移
し、一方レジスタ2−Xにはプロセツサ2から時
間スロツト当り1ワード供給される。
プロセツサから大域メモリへの転送あるいは大
域メモリからプロセツサへの転送と同様に、一旦
初期体制が完成すると、各プロセツサはその設計
された速度でデータを転送する。
域メモリからプロセツサへの転送と同様に、一旦
初期体制が完成すると、各プロセツサはその設計
された速度でデータを転送する。
第1図は従来技術による多数メモリ(マルチメ
モリ)、多数プロセツサ(マルチプロセツサ)装
置をブロツク図の形で示した図、第2図はこの発
明による多数メモリ、多数プロセツサ装置をブロ
ツク図の形で示した図、第3図は典型的なプロセ
ツサ・メモリと典型的な大域メモリの内容を第2
図よりも詳細に示した第2図の装置の一部分を示
した図である。 10,12,14,16……データ・プロセツ
サ、38……データ蓄積メモリ、40……転送回
路網、50……制御手段、1−1〜1−32,2
−1〜2−32等……バツフア手段(レジスタ)。
モリ)、多数プロセツサ(マルチプロセツサ)装
置をブロツク図の形で示した図、第2図はこの発
明による多数メモリ、多数プロセツサ装置をブロ
ツク図の形で示した図、第3図は典型的なプロセ
ツサ・メモリと典型的な大域メモリの内容を第2
図よりも詳細に示した第2図の装置の一部分を示
した図である。 10,12,14,16……データ・プロセツ
サ、38……データ蓄積メモリ、40……転送回
路網、50……制御手段、1−1〜1−32,2
−1〜2−32等……バツフア手段(レジスタ)。
Claims (1)
- 【特許請求の範囲】 1 アドレス可能なメモリからなるデータ蓄積メ
モリと複数N個のデータ・プロセツサとの間で、
制御手段によつて発生される制御信号の制御のも
とで転送回路網を経てデータのワードを転送する
ための装置であつて、 上記回路網は上記データ・プロセツサのそれぞ
れのものと上記データ蓄積メモリとの間に結合さ
れたN個のバツフア手段と、上記データ・プロセ
ツサの各別のものと上記データ蓄積メモリとの間
に結合されたN個のアドレス蓄積メモリとからな
り、 上記アドレス蓄積メモリは上記制御信号に応答
してその関連するデータ・プロセツサからワード
が配置されたデータ蓄積メモリ中のアドレス用の
アドレス情報を受信し、また上記制御信号に応答
して、その後、上記バツフア手段とデータ蓄積メ
モリとの間の上記ワードの転送を制御するために
蓄積されたアドレス情報を使用して上記データ蓄
積メモリをアドレスし、 上記バツフア手段の少なくとも1つは上記デー
タ蓄積メモリからのワードを受入れ、また上記デ
ータ・プロセツサの関連するものに上記ワードを
転送する手段を有し、 また、上記バツフア手段の少なくとも1つは上
記データ・プロセツサの関連するものからワード
を受入れ、そのワードを上記データ蓄積メモリに
転送する手段を有し、 さらに、上記バツフア手段は上記制御手段から
の制御信号に応答してM個(MはNに比例する)
のワードを一時的に記憶し、一時的に記憶された
ワードをそのバツフア自身と上記データ・プロセ
ツサのそれぞれのものとの間で転送率Xで直列的
に転送し、また上記一時的に記憶されたM個のワ
ードをそのバツフア自身と上記データ蓄積メモリ
との間で一度に並列的に転送し、上記N個のバツ
フア手段と上記データ蓄積メモリとの間の転送は
連続して行なわれ、 上記転送率Xは、上記データ・プロセツサの
各々と上記バツフア手段のそれぞれのものとの間
でワードが中断することなく転送されるように定
められている、データ転送装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/445,522 US4491915A (en) | 1982-11-30 | 1982-11-30 | Multiprocessor-memory data transfer network |
US445522 | 1989-12-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS59109965A JPS59109965A (ja) | 1984-06-25 |
JPH0128972B2 true JPH0128972B2 (ja) | 1989-06-07 |
Family
ID=23769239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58226710A Granted JPS59109965A (ja) | 1982-11-30 | 1983-11-29 | デ−タ転送装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US4491915A (ja) |
JP (1) | JPS59109965A (ja) |
DE (1) | DE3343348A1 (ja) |
FR (1) | FR2536884B1 (ja) |
GB (1) | GB2132798B (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0136218A3 (en) * | 1983-08-29 | 1988-04-20 | FAIRCHILD CAMERA & INSTRUMENT CORPORATION | Multiple port pipelined processor |
US5584032A (en) * | 1984-10-17 | 1996-12-10 | Hyatt; Gilbert P. | Kernel processor system |
US4718003A (en) * | 1985-02-15 | 1988-01-05 | General Electric Co. | Method and apparatus for exchanging data between data processing units |
JPH0740252B2 (ja) * | 1986-03-08 | 1995-05-01 | 株式会社日立製作所 | マルチプロセツサシステム |
US4773071A (en) * | 1986-10-02 | 1988-09-20 | Grumman Aerospace Corporation | Memory for storing response patterns in an automatic testing instrument |
FR2606186B1 (fr) * | 1986-10-31 | 1991-11-29 | Thomson Csf | Processeur de calcul comportant une pluralite d'etages relies en serie, calculateur et procede de calcul mettant en oeuvre ledit procede |
US4855905A (en) * | 1987-04-29 | 1989-08-08 | International Business Machines Corporation | Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses |
US5301278A (en) * | 1988-04-29 | 1994-04-05 | International Business Machines Corporation | Flexible dynamic memory controller |
FR2632093B1 (fr) * | 1988-05-25 | 1990-08-10 | Bull Sa | Memoire modulaire |
FR2635390B1 (fr) * | 1988-08-12 | 1990-10-12 | Bull Sa | Unite centrale pour systeme de traitement de l'information |
US5136582A (en) * | 1990-05-29 | 1992-08-04 | Advanced Micro Devices, Inc. | Memory management system and method for network controller |
US5802565A (en) * | 1996-08-29 | 1998-09-01 | Hewlett-Packard Company | Speed optimal bit ordering in a cache memory |
US6167486A (en) * | 1996-11-18 | 2000-12-26 | Nec Electronics, Inc. | Parallel access virtual channel memory system with cacheable channels |
US6708254B2 (en) * | 1999-11-10 | 2004-03-16 | Nec Electronics America, Inc. | Parallel access virtual channel memory system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL95615C (ja) * | 1954-05-25 | |||
DE1218761B (de) * | 1963-07-19 | 1966-06-08 | International Business Machines Corporation, Armonk, N. Y. (V. St. A.) | Datenspeidbereinrichtung |
US3411139A (en) * | 1965-11-26 | 1968-11-12 | Burroughs Corp | Modular multi-computing data processing system |
US3771137A (en) * | 1971-09-10 | 1973-11-06 | Ibm | Memory control in a multipurpose system utilizing a broadcast |
JPS5812611B2 (ja) * | 1975-10-15 | 1983-03-09 | 株式会社東芝 | デ−タテンソウセイギヨホウシキ |
US4171536A (en) * | 1976-05-03 | 1979-10-16 | International Business Machines Corporation | Microprocessor system |
JPS547252A (en) * | 1977-06-20 | 1979-01-19 | Hitachi Ltd | Program control system |
US4209840A (en) * | 1978-06-28 | 1980-06-24 | Honeywell Inc. | Data processing protocol system |
US4347567A (en) * | 1980-02-06 | 1982-08-31 | Rockwell International Corporation | Computer system apparatus for improving access to memory by deferring write operations |
-
1982
- 1982-11-30 US US06/445,522 patent/US4491915A/en not_active Expired - Lifetime
-
1983
- 1983-11-29 JP JP58226710A patent/JPS59109965A/ja active Granted
- 1983-11-29 GB GB08331845A patent/GB2132798B/en not_active Expired
- 1983-11-30 DE DE19833343348 patent/DE3343348A1/de not_active Withdrawn
- 1983-11-30 FR FR8319147A patent/FR2536884B1/fr not_active Expired
Also Published As
Publication number | Publication date |
---|---|
GB8331845D0 (en) | 1984-01-04 |
FR2536884B1 (fr) | 1987-01-30 |
JPS59109965A (ja) | 1984-06-25 |
DE3343348A1 (de) | 1984-05-30 |
US4491915A (en) | 1985-01-01 |
GB2132798B (en) | 1986-05-14 |
FR2536884A1 (fr) | 1984-06-01 |
GB2132798A (en) | 1984-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4796232A (en) | Dual port memory controller | |
US4558429A (en) | Pause apparatus for a memory controller with interleaved queuing apparatus | |
JP2571067B2 (ja) | バスマスタ | |
US4313161A (en) | Shared storage for multiple processor systems | |
JPH0128972B2 (ja) | ||
US4366539A (en) | Memory controller with burst mode capability | |
JPS6259820B2 (ja) | ||
GB2193017A (en) | Improved memory access system | |
US5115411A (en) | Dual port memory system | |
EP0307945B1 (en) | Memory control apparatus for use in a data processing system | |
US4432055A (en) | Sequential word aligned addressing apparatus | |
EP0051426A1 (en) | Request queueing in memory controller | |
US5530955A (en) | Page memory device capable of short cycle access of different pages by a plurality of data processors | |
JP4531223B2 (ja) | 集合的メモリを共有する複数のプロセッサを備えたデータ処理装置 | |
EP0212152B1 (en) | Microprocessor assisted memory to memory move apparatus | |
GB1264167A (ja) | ||
US6374244B1 (en) | Data transfer device | |
US5278800A (en) | Memory system and unique memory chip allowing island interlace | |
JPH0341856B2 (ja) | ||
US5483645A (en) | Cache access system for multiple requestors providing independent access to the cache arrays | |
GB1144784A (en) | Sequential access memory systems | |
JPS6363940B2 (ja) | ||
JPS6125178B2 (ja) | ||
JPS58103063A (ja) | マトリクス記憶装置 | |
JPS6135581B2 (ja) |