JPS6347835A - パイプライン計算機 - Google Patents

パイプライン計算機

Info

Publication number
JPS6347835A
JPS6347835A JP61191587A JP19158786A JPS6347835A JP S6347835 A JPS6347835 A JP S6347835A JP 61191587 A JP61191587 A JP 61191587A JP 19158786 A JP19158786 A JP 19158786A JP S6347835 A JPS6347835 A JP S6347835A
Authority
JP
Japan
Prior art keywords
shared memory
computer
arithmetic processing
stage
memory space
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
JP61191587A
Other languages
English (en)
Inventor
Shigeki Shibayama
柴山 茂樹
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.)
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Agency of Industrial Science and Technology
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 Agency of Industrial Science and Technology filed Critical Agency of Industrial Science and Technology
Priority to JP61191587A priority Critical patent/JPS6347835A/ja
Publication of JPS6347835A publication Critical patent/JPS6347835A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的コ (産業上の利用分野) 本発明は種々の演算処理を柔軟性良く実行することので
きるパイプライン計算機に関する。
(従来の技術) 上でのボトルネックとなっている。そこでこのボトルネ
ックを解消するべく、古くから並列計算機が多く提案さ
れている。
しかして成る演算処理を並列計算機で実行する場合、そ
の演算処理を並列的なハードウェア構成にマツピングす
ることが必要となる。そして一般的には、そのアルゴリ
ズムの分割の仕方によしよるが、分割(マツピング)さ
れた複数の部分間での密接な通信が必要となる。例えば
シストリック・アレイによる高並列な並列計算機にあっ
ては、各計算機ユニットを相互に同期させてて密接に結
合することが必要である。
このように成る演算処理を並列的に実行する並列計算機
では、複数の計算機ユニット間で/%−ドウエア的な通
信を行う為の結合ネットワークが必要となり、そのハー
ドウェア構成が相当複雑化すると云う問題がある。
これに対して成る演算処理を複数の計算機ユニットにて
縦続的に実行するパイプライン計算機がある。このパイ
プライン計算機は、上述したホト点がある。
然し乍ら、専用のアルゴリズムをハードウェア化したパ
イプライン計算機にあってはそのコスト・パフォーマン
スが高いが、種々の演算処理に対処するべくその汎用化
を図ると、高度にパイプライン化されたハードウェアが
必要となる。しかもこの高度にパイプライン化されたハ
ードウェアを用いて汎用アルゴリズムによる演算処理を
実行するには、例えば複雑なベクトル化コンパイラ等の
高度なソフトウェアが必要となる。
即ち、従来のパイプライン計算機における細分化された
処理ユニットは、それぞれ専用の71−ドウエアをその
バイブライン拳ステージに持っている。そして各ステー
ジでは、人力データに対してどのような演算処理を施し
、その処理結果をどのようにして次のステージに出力す
るかが厳密に規定される。そこで各々のステージを汎用
の計算機ユニットで実現すれば、各ステージが柔軟性に
富むことから全体としても柔軟性に富む演算処理をそこ
でこのユニット間の通信をI10命令にて実行すること
が考えられるが、その高速化の点で問題が残り、パイプ
ライン計算機の存在理由を考慮すると不適当であると云
わざるを得ない。
またこの通信をハードウェアでサポートしようとすると
、専用のプロセッサ通信モジュールが必要となる。しか
し専用のプロセッサ通信モジュールはハードウェアとし
て非常に高1jであり、全てのステージ間に設けること
は不可能に近い。しかもこのプロセッサ通信モジュール
を意識したプログラムを用いてその演算処理を実行させ
る必要があり、その柔軟性が損われる等の問題が残され
る。
このように従来のパイプライン計算機にあっては、種々
の演算処理を柔軟に行うには、ステージ間の通信の点で
問題があった。
(発明が解決しようとする問題点) 本発明は、汎用性の高いパイプライン計算機を構成する
には高度にパイプライン化されたハードウェアと複雑な
ベクトル化コンパイラ等の高度なソフトウェアを用いる
ことが必要となること、また各ステージの汎用化をそれ
ぞれ図った場合には、それらのステージ間の通信が問題
となること等を考慮してなされたもので、その目的とす
ると[発明の構成] (問題点を解決する為の手段) 本発明は、演算処理内容がそれぞれ独立に設定される複
数の計算機ユニットを縦続に接続して構成されるパイプ
ライン計算機における上記各計算機ユニットのメモリ空
間の一部を、隣接する計算機ユニット間の共有メモリ空
間とし、例えば該計算機ユニット間に接続された制御線
を介して上記共有メモリ空間がアクセス可能であるかを
調べてその共有メモリ空間を隣接計算機ユニット間で共
通にアクセス可能としたことを特徴とするものである。
(作用) 本発明によれば、演算処理内容がそれぞれ独立に設定さ
れ、縦続に結合される複数の計算機ユニットの、互いに
隣接する計算機ユニットが、相互にメモリ空間の一部を
共有メモリ空間として共用し、その共有メモリ空間をそ
れぞれアクセスできるので、上記共有メモリ空間を介し
て隣接計算機ユニット間の通信を効率良く行うことがで
きる。
臘することなしに通常のメモリアクセスによって、ハト
算機ユニット間の通信を行い、その割当てられた演算処
理をそれぞれ実行すれば良くなる。従って、種々の演算
処理内容に柔軟に対処することが可能となる。
(実施例) 以下、図面を参照して本発明の一実施例につき説明する
第1図は実施例に係るパイプライン計算機の概念(概略
構成)を示す図で、la、 lb、 lc、 〜1nは
演算処理内容がそれぞれ独立に設定される汎用形の計算
機ユニットである。これらの計算機ユニット1a、 l
b、 lc、〜1nは、縦続に結合されてパイプライン
計算機を構成する。
しかして各計算機ユニットla、 lb、 Ic、〜1
nにそれぞれ設けられるメモリ2a、 2b、 2c、
〜2nは、そのアドレス空間を第1図に模式的に示すよ
うにローカルメモリ部3a、 3b、 3c、 〜3n
と、共有メモリ部4a、 4b、 4c、 〜4n−1
とに分けている。即ち、前記各メモリ2a、 2b、 
2c、〜2nは、そのメモリ空間の一部を隣接する計算
機ユニットla、 lb、 lc。
〜In間で、それらの隣接計算機ユニット間に共通な共
有メモリ部4a、 4b、 4c、〜4n−1としてい
る。
−通にアクセス可能なメモリ空間としている。また2段
目と3段目の計算機ユニットlb、 lcは、そのメモ
リ2b、 2cの一部をそれぞれ共有メモリ部4bとし
、上記各計算機ユニットlb、 lcにて共通にアクセ
ス可能なメモリ空間としている。
そして1段目の計算機ユニット1aは、入力データに対
する演算処理を、そのステージに対して設定された演算
処理内容に従って前記ローカルメモリ部3aを用いて実
行し、その演算処理結果(出力データ)を2段目の計算
機ユニット1bとの間で共通に設定された共有メモリ部
4aに書込むものとなっている。
そして2段目の計算機ユニットlbは、上記共有メモリ
部4aに書込まれたデータを入力データとし、この共有
メモリ部4aをアクセスして該データを読出し、そのス
テージに対して設定された演算処理をローカルメモリ部
3bを用いて実行している。そしてその演算結果を3段
目の計算機ユニット1cとの間で共通に設定された共有
メモリ部4bに書込むものとなっている。
処理による演算結果が求められる。
尚、全てのステージを用いた演算処理が不要な場合には
、従来のパイプライン計算機と同様に、演算処理が不要
なステージでは入力データをそのまま次段のステージに
転送する処理だけを行うようにすれば良い。或いは、そ
の途中のステージから直接的に演算処理結果を出力する
ようにしても良い。
ここで隣接する2つの計算機ユニット間の構成について
更に詳しく説明する。
第2図は1段目のステージと2段目のステージとの間の
関係を詳細に示すものである。各ステージにおける計算
機ユニットla、 lbは、それぞれ処理プロセッサ8
a、 6bとメモリ2a、 2bに対するメモリ制御部
7a、 7bとを備えている。
尚、メモリ2aは計算機ユニット1aの本体である処理
プロセッサ6aに対するローカルメモリ部3aと、次段
の計算機ユニットtbとの間で共通に設定されたアドレ
ス空間からなる共有メモリ部4aとにより構成される。
そして処理プロセッサ6aの制御の下でメモリ制御部7
aにてアクセスされるようになっている。
またメモリ2bは計算機ユニット1bの本体である処理
プロセッサ6bに対するローカルメモリ部3bと、5段
の計算機ユニットlaとの間で共通に設定されヘアドレ
ス空間からなる共有メモリ部4a、および灰段の計算機
ユニットlcとの間で共通に設定された。アドレス空間
からなる共有メモリ部4bとにより構成される。そして
処理プロセッサ6bの制御の下でメモリ制御部7bにて
アクセスされるようになっている。
従ってこれらのステージ間で共通にアドレス空間が設定
された上記共存メモリ部4aに対しては、各ステージの
メモリ制御部7a、 7bはそれぞれ共通にアクセスで
きるようになっている。
ここで2つのメモリ制御部?a、 7bは制御線8にて
接続され、上記共有メモリ部4aに対するアクセスの状
況が上記制御線8を介して相互に通知されるようになっ
ている。メモリ制御部7a、 7bはこの制御線8を介
して通知される他方のメモリ制御部7a、 7bによる
共有メモリ部4aのアクセス状況から、該共有メモリ部
4aに対するアクセスが競合した場合、そのアクセスを
一時保留する制御を行っている。この制御によって上記
共有メモリ部4aに対する隣接計算機ユニット間でのア
クセスの競合が回避される。
このような共有メモリ部4aのアクセス競合回避制御の
下で、前記各処理プロセッサ6a、 6bは他方)処理
プロセッサが共有メモリ4aをアクセスしている期間に
は、そのローカルメモリ部3a、 3bを用いそ与えら
れた演算処理を実行する。そして共有メモリ部4aに対
するアクセスの空きを確認して、該共存メモリ部4aを
アクセスするものとなっている。
尚、上記アクセスの競合の回避は、通常のマルチプロセ
ッサによるメモリアクセスにおけるアクセス制御法を適
宜採用することができる。
ところでこの共有メモリ部4aを用いた計算機ユニット
la、 lb間でのデータの受渡しく通信)は、例えば
次のようにして行われる。第3図はこのデータ通信を行
う為の共有メモリ部4aの構成を示すもので、理論的に
はこのメモリ内にキューを作ることによりデータの受渡
しが行われる。
即ち、例えば共有メモリ空間の100番地から199番
地をデータの受渡しに用いるデータ・エリア(キュー)
とし、200番地をキュー・トップのポインタ、201
番地をキュー・ボトムのポインタとする。
そして前段側の計算機ユニットでは200番地に格納さ
れるキュー・トップのポインタ値を書替えながら、デー
タ・エリアの該当するアドレスにデータを書込む。具体
的にはキュー・トップの値がキュー・ボトムの値と同じ
でないかを調べ、等しくない場合にそのキュー・トップ
の値で示されるアドレスにデータを書込む。またその値
がキュー・ボトムの値と等しい場合には、キュー・トッ
プの値をインクリメントし、その値で示される新しいア
ドレスにデータを書込む。
ここでキュー・トップの値がキュー中ボトムの値と等し
いか否かを調べるのは、キューの実現の為に1次元メモ
リを巡回的に用いることと、後段の計算機ユニットが使
用していないデータを崩さない為である。
一方、後段側の計算機ユニットは、201番地に格納さ
れたキュー・ボトム値で示されるアドレスのデータを読
出し、そのデータの読出しが終了した時点でキュー・ボ
トムの値をインクリメントしている。この際、キュー・
ボトムの値が前記キュー・トップの値と等しくないかを
調べ、その値が等しい場合には、データの読出しを行わ
ないようにしている。つまり、前段の計算機ユニットが
新しく書込んでいないデータを、後段の計算機ユニット
に誤って読出すことがないようになっている。
このようにしてキューφトップとキュー・ホト必ず読出
しと書込みとの間で生じ、同時書込みによる競合は生じ
ることがない。
また共有メモリ部のアドレスは、両方の計算機ユニット
間で必ずしも共通である必要はなく、両方の計算機ユニ
ットにおける論理アドレス内の共有メモリ部分が物理的
に同じアドレスにマツピングされるものであれば良い。
つまり各計算機ユニットにおける論理アドレス内の共有
メモリ部分が、相互に対応したアドレスにマツピングさ
れれば良いものである。
ところでメモリ2a、 2b、〜2nの一部にそれぞれ
設定される共存メモリ部4a、 4b、〜4n−1は、
隣接計算機ユニット間の取決めによって任意に設定可能
なものである。
従って具体的には各ステージ間のメモリに対する制御部
を、例えば第4図に示すように構成すれば良い。
即ち、第4図に示すように各ステージのメモリ2a、 
2b、〜2nのどのアドレス領域を共有メモリ部4a、
 4b、 〜4n−1とするかを、各メモリ2a、 2
b、 〜限アドレスとする。そしてこれらの共有メモリ
部を指定するアドレスデータを隣接する計算機ユニット
にそれぞれ与えるようにすれば、これらの隣接計算機ユ
ニット間で共通な共有メモリのアドレス空間を設定する
ことができる。
またこのように構成すれば、レジスタ11.12にそれ
ぞれセットするデータによって、共存メモリ部のアドレ
ス空間の大きさを任意に設定することが可能となる。尚
、レジスタ11.12へのデータのセットは、パイプラ
イン計算機に対する初期設定時に行うようにすれば十分
である。
尚、本発明は上述した実施例に限定されるものではない
。例えば共をメモリ間に対する同期に関しては、マルチ
・プロセッサ装置における種々の手法を用いることが可
能である。また共々メモリ部をレジスタのペアによって
指定することなく、各計算機ユニット毎にそれぞれ固定
的に定めるようにしても良い。その他、本発明はその要
旨を逸脱しない範囲で種々変形して実施することができ
る。
[発明の効果] 以上説明したように本発明によれば、バイブライン計算
機における各処理ステージの処理を種々の演算処理内容
にプログラム可能とすることができる。また共有メモリ
部とその共有メモリ部に対するアクセスを制御すること
で複数の計算機ユニット間のデータ通信のオーバーヘッ
ドを軽減し、効率良く行うことを可能とする。故に種々
のパイプライン演算処理を高速に、且つ柔軟に行うこと
が可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例に係るバイブライン計算機の
概要を示す図、第2図はステージ間のメモリ制御部の構
成例を示す図、第3図は共有メモリ部におけるデータの
受渡しを示す図、第4図は共有メモリ部の設定の例を示
す図である。 la、 lb、 〜1r+・=計算機ユニット、2a、
 2b、 〜2n・・・メモリ、3a、 3b、 〜3
n・・・ローカルメモリ部、4a。 4b、〜4n−1・・・共有メモリ部、6a、 fib
・・・処理プロセッサ、7a、 7b・・・メモリ1す
一部、8・・・制御線、21゜22・・・レジスタ。 出願人 工業技術院長 低壕幸三 第1図 第2図

Claims (3)

    【特許請求の範囲】
  1. (1)演算処理内容がそれぞれ独立に設定される複数の
    計算機ユニットを縦続に接続して構成されるパイプライ
    ン計算機において、 各計算機ユニットのメモリ空間の一部を隣接する計算機
    ユニット間の共有メモリ空間とし、その共有メモリ空間
    を隣接計算機ユニット間で共通にアクセス可能としたこ
    とを特徴とするパイプライン計算機。
  2. (2)隣接する計算機ユニットは、該計算機ユニット間
    に接続された制御線を介して共有メモリ空間がアクセス
    可能であるかを調べて上記共有メモリ空間をアクセスす
    るものである特許請求の範囲第1項記載のパイプライン
    計算機。
  3. (3)計算機ユニットは、そのメモリバンクに共有メモ
    リ空間を示すレジスタを持ち、このレジスタに格納され
    るデータを変更して上記共有メモリ空間の大きさを可変
    してなるものである特許請求の範囲第1項記載のパイプ
    ライン計算機。
JP61191587A 1986-08-18 1986-08-18 パイプライン計算機 Pending JPS6347835A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61191587A JPS6347835A (ja) 1986-08-18 1986-08-18 パイプライン計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61191587A JPS6347835A (ja) 1986-08-18 1986-08-18 パイプライン計算機

Publications (1)

Publication Number Publication Date
JPS6347835A true JPS6347835A (ja) 1988-02-29

Family

ID=16277123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61191587A Pending JPS6347835A (ja) 1986-08-18 1986-08-18 パイプライン計算機

Country Status (1)

Country Link
JP (1) JPS6347835A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166249A (ja) * 1987-12-23 1989-06-30 Matsushita Electric Ind Co Ltd パイプライン処理装置
JPH06266284A (ja) * 1993-03-11 1994-09-22 Nec Corp 暗号化装置
US6219777B1 (en) 1997-07-11 2001-04-17 Nec Corporation Register file having shared and local data word parts
JP2002530737A (ja) * 1998-11-16 2002-09-17 テレフオンアクチーボラゲツト エル エム エリクソン(パブル) イベントベースシステムの同時処理
JP2006338504A (ja) * 2005-06-03 2006-12-14 Fuji Xerox Co Ltd 画像処理装置、方法及びプログラム
JP2008077151A (ja) * 2006-09-19 2008-04-03 Sony Corp 共有メモリ装置
JP2011141791A (ja) * 2010-01-08 2011-07-21 Mitsubishi Electric Corp 並列信号処理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5461851A (en) * 1977-10-27 1979-05-18 Fujitsu Ltd Data processing system
JPS54120551A (en) * 1978-03-10 1979-09-19 Komatsu Mfg Co Ltd Sequence controller
JPS57166662A (en) * 1981-04-08 1982-10-14 Agency Of Ind Science & Technol Parallel processing computer
JPS588306A (ja) * 1981-07-07 1983-01-18 Omron Tateisi Electronics Co プログラム分散・並列実行式プログラマブル・ロジツク・コントロ−ラシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5461851A (en) * 1977-10-27 1979-05-18 Fujitsu Ltd Data processing system
JPS54120551A (en) * 1978-03-10 1979-09-19 Komatsu Mfg Co Ltd Sequence controller
JPS57166662A (en) * 1981-04-08 1982-10-14 Agency Of Ind Science & Technol Parallel processing computer
JPS588306A (ja) * 1981-07-07 1983-01-18 Omron Tateisi Electronics Co プログラム分散・並列実行式プログラマブル・ロジツク・コントロ−ラシステム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01166249A (ja) * 1987-12-23 1989-06-30 Matsushita Electric Ind Co Ltd パイプライン処理装置
JPH06266284A (ja) * 1993-03-11 1994-09-22 Nec Corp 暗号化装置
US6219777B1 (en) 1997-07-11 2001-04-17 Nec Corporation Register file having shared and local data word parts
JP2002530737A (ja) * 1998-11-16 2002-09-17 テレフオンアクチーボラゲツト エル エム エリクソン(パブル) イベントベースシステムの同時処理
JP2006338504A (ja) * 2005-06-03 2006-12-14 Fuji Xerox Co Ltd 画像処理装置、方法及びプログラム
JP2008077151A (ja) * 2006-09-19 2008-04-03 Sony Corp 共有メモリ装置
JP2011141791A (ja) * 2010-01-08 2011-07-21 Mitsubishi Electric Corp 並列信号処理装置

Similar Documents

Publication Publication Date Title
US5056000A (en) Synchronized parallel processing with shared memory
US6219775B1 (en) Massively parallel computer including auxiliary vector processor
JPS62208158A (ja) マルチプロセツサシステム
JPH0546593B2 (ja)
JPS5841538B2 (ja) マルチプロセツサシステム ノ ユウセンセイギヨホウシキ
JPH07253954A (ja) 並列コンピュータ
KR20010031192A (ko) 기계시각시스템에서의 영상데이터와 같은 논리적으로인접한 데이터샘플들을 위한 데이터처리시스템
US7581080B2 (en) Method for manipulating data in a group of processing elements according to locally maintained counts
US5530889A (en) Hierarchical structure processor having at least one sub-sequencer for executing basic instructions of a macro instruction
WO1995028676A1 (en) Local semiautonomous dedicated-storage access for parallel processors
JPS6347835A (ja) パイプライン計算機
JPH07271744A (ja) 並列計算機
US8856493B2 (en) System of rotating data in a plurality of processing elements
JP2006515446A (ja) 関連アプリケーションを相互参照するカルテシアンコントローラを有するデータ処理システム
JPS63204322A (ja) 情報処理装置
JPH0646413B2 (ja) デ−タ処理プロセッサ
JPS6049464A (ja) マルチプロセッサ計算機におけるプロセッサ間通信方式
JPS6341970A (ja) マイクロコンピユ−タシステム
Hayat et al. An efficient multidimensional/multidirectional parallel pipelined architecture for image processing
JPH01263858A (ja) マルチプロセッサシステム
JPH027129A (ja) 演算処理装置
JPH0375959A (ja) マルチプロセッサのデータ転送装置
JPS62262155A (ja) マルチポ−ト記憶装置のアクセス方式
JPS5899869A (ja) 並列処理方式
JPH038044A (ja) マルチプロセッサ・システムにおける時計制御方式