JPS6182272A - ベクトル処理装置 - Google Patents
ベクトル処理装置Info
- Publication number
- JPS6182272A JPS6182272A JP59205040A JP20504084A JPS6182272A JP S6182272 A JPS6182272 A JP S6182272A JP 59205040 A JP59205040 A JP 59205040A JP 20504084 A JP20504084 A JP 20504084A JP S6182272 A JPS6182272 A JP S6182272A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- processor
- data
- storage device
- processing
- 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
Links
Landscapes
- Complex Calculations (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
〔発明の利用分野〕
本発明はベタ1〜ル処理装置に係り、特に大規模利学技
術剖算に好適な拡張記憶装置を具備したマル千−fr+
セッサ構成のべ々1ヘル処理装置に関する。 「発明の背景1 今日、科学技術計算の分野では、演算の高速要求に伴な
い大きなメモリプ9間(数百MB)が要求さねている。 二のような大規模なメモリ空間を複数1−ぜに割当て、
かつ、そ才1を主記憶装置のみで実現することけ費用の
点から不可能である。特じべ′71.ル処理装置は汎用
機よりも高速性を要求されるため、高速のメモリ素子を
使用することに711、=+ストを下げろことが困難で
ある。 ユーザの大規模メモリ空間内空間る要求とコスト面の要
求を満足させるため、主記憶装置の外に大容量の拡張記
憶装置を実装したスーパコンピュータが公表さおでいる
(小高他、[日経ニレノア 1゜[1ニクスJ N、q
314、P、+59〜184、日経マグロウヒル I
!183)。この拡張記憶装置は1−記憶装置どけ異1
1、ワード慴位のアクセスではなく、ページ(4KB)
中位の連続アクセスによって、flRNOOOMバーr
ト)7秒7)’−タノデータ転送速度を達成している。 このデータ転送速度は汎用計算機の主記憶装置上のデー
タ転送処理速度よ11も大きいが、成る大きなデータブ
ロックの連続的なアクセスでのみ実現されるデータ転送
速度なので、ベクトルプロセッサに拡張記憶装置を直結
し、ユーザのベクトル処理で数百MBに及ぶ大メモリ空
間を実現することはできない。 〔発明の目的〕 本発明の目的は、拡張記憶をベースとし・た記憶管理回
路をベクトル処理装置に具備し、該記憶管理回路によ−
)でユーザに大規模なメモリ空間を割当てるτとを可能
にし・、大メモリ空間を使用するフ、−規摸利学技術H
4算を実行できるベグ1ヘル処理装置をt7Ff rl
Eすることにある。 「発明の概要] 本発明はベグ1ヘル処理装置を、複数の主記憶装置 鉱
Qfi記憶装置、ページングプロセッサ、ベクトル処理 17、各プ「1セツサのデータ処理の並列実行を実現
術剖算に好適な拡張記憶装置を具備したマル千−fr+
セッサ構成のべ々1ヘル処理装置に関する。 「発明の背景1 今日、科学技術計算の分野では、演算の高速要求に伴な
い大きなメモリプ9間(数百MB)が要求さねている。 二のような大規模なメモリ空間を複数1−ぜに割当て、
かつ、そ才1を主記憶装置のみで実現することけ費用の
点から不可能である。特じべ′71.ル処理装置は汎用
機よりも高速性を要求されるため、高速のメモリ素子を
使用することに711、=+ストを下げろことが困難で
ある。 ユーザの大規模メモリ空間内空間る要求とコスト面の要
求を満足させるため、主記憶装置の外に大容量の拡張記
憶装置を実装したスーパコンピュータが公表さおでいる
(小高他、[日経ニレノア 1゜[1ニクスJ N、q
314、P、+59〜184、日経マグロウヒル I
!183)。この拡張記憶装置は1−記憶装置どけ異1
1、ワード慴位のアクセスではなく、ページ(4KB)
中位の連続アクセスによって、flRNOOOMバーr
ト)7秒7)’−タノデータ転送速度を達成している。 このデータ転送速度は汎用計算機の主記憶装置上のデー
タ転送処理速度よ11も大きいが、成る大きなデータブ
ロックの連続的なアクセスでのみ実現されるデータ転送
速度なので、ベクトルプロセッサに拡張記憶装置を直結
し、ユーザのベクトル処理で数百MBに及ぶ大メモリ空
間を実現することはできない。 〔発明の目的〕 本発明の目的は、拡張記憶をベースとし・た記憶管理回
路をベクトル処理装置に具備し、該記憶管理回路によ−
)でユーザに大規模なメモリ空間を割当てるτとを可能
にし・、大メモリ空間を使用するフ、−規摸利学技術H
4算を実行できるベグ1ヘル処理装置をt7Ff rl
Eすることにある。 「発明の概要] 本発明はベグ1ヘル処理装置を、複数の主記憶装置 鉱
Qfi記憶装置、ページングプロセッサ、ベクトル処理 17、各プ「1セツサのデータ処理の並列実行を実現
【
7で、拡張記憶装置にに存在する大規模なプログラムの
実行を拡張記憶装置よりも小さな容量の複数の主記憶装
置上で実施するようにしたことである。 〔発明の実施例〕 以下、本発明の一実施例を図面を用いて詳細に説明する
。 第1図は本発明に係るベクトル処理装置の基本1i1’
f IRで、−1ントロールプロセツサ101、ベクト
ルプロセッサ102、ページングプロセッサ107、を
記憶装置10/I、105,109.拡張記憶装置10
8、スイッチング回路103,106に上って構成され
る。 ベクトル処理を規定するプログラムを次のような構成の
オブジェタトコードで記述する。プログラムを構成して
いるベクトルおよびスカシ命令群の成る集合が、他の集
合とは異なるメモリ空間内のデータに対しての処理動作
を規定している場合、二の命令集合をセグメントと云い
、該命令集合のポイントするデータ空間を局所メモリ空
間という。 このように定義されたセグメントと局所メモリ空間は科
学技術計算プログラム中に数多く見出すことができる。 たとえば次のようなりoループでは、D○ 100 1
=1.N +00 A(T)=B(T)十C(T)r′)Oルー
プを構成するスカシ、ベクトル命令列がセグメントであ
り、配列A、B、Cとr)0制御変数T、Nが占有して
いるメモリ空間が局所メモリ空間である。従って、プロ
グラムはセグメントと局所メモリ空間によって定義する
ことができる。 この定義によりげ、プログラム実行に必要十分な処理と
け、 (I″ll現在セグ、メントを実行し、でいるのかを示
す指標。 Igl 局所メモリ空間を生成格納する指示、である
、このことを第2図のプログラムPL、についていうと
、a −Cけセグメントを示し、T−aはセグメントが
ボーrントする局所メモリ空間を主記憶装置上に生成指
示する命令、STaけ該メモリ空間を拡張記憶装置上に
格納する命令を示す。a。 bのセグメントについても同様である。 プログラムはデータ処理を規定するセグメントと局所、
メモリ空間と該空間を管理する命令とによ一〕で構成す
ることができるが、プログラム自体もまたセグメントと
局所メモリ空間によって定義される。このことを第2図
のPIlについて説明する。 成る命令ここでけSTbにおいて、データ処理がSTh
以前と以後に分割できるとする。この仮定はプログラム
が各構成セグメントを順序だって実行するものという仮
定の下に論理的に構成されていわば妥当である。STb
点におけるプログラム分割を行−〕だ場合、■、a命令
からSTb命令に到ろ命令群を主記憶装置上にロープイ
ンクする命令と該命令群を拡張記憶′JA置にストアす
る命令とプロゲラ11の実行を指示する命令を定義する
ことによ1)、プロクラ11をプログラム自体のローデ
ィング、実行、ス1〜7の3種類の動作定義に縮約可詣
である。この縮約を第2図のプログラムPIに示す。二
のように縮約されたプログラムは、比較的小さなメモ+
1空間上にプロクラムの実行が終るまで保持することか
できる。科学技術計算の場合は。 プログラムが自分自身を処理することけないが、今後よ
り複雑なデータ処理を行う場合、プログラムが自分自分
を変形することが起り得る。このような場合、プロクラ
ムを主記憶装置にローディングする命令の次にプログラ
ム自身を変形処理する命令を置くことにより、目的の処
理を行うことができる。第2図のP2は、このプログラ
ム自身を変形するプログラムの構造を示したものである
。 P2において、α部がプロクラ12α部(これはセグメ
ントa、bから構成されている)を変形するセグメント
である。 JTi、 tb 、第2図に示り、たように、プロクラ
ムを、プ「1ごノ→ム白I・を主記憶装置上ロート、編
集、スト・アする部分を[プロ/7ラムカーネル」、プ
ロゲラ11カーネルによって引用対象になる部分を「プ
ログラムボテ、イ」と呼ぶ。 第1図のベクトル処理装置において、第2図F) に上
って表示さ才lたプログラムは次のように処理される。 プ「1ダラムは初め拡張記憶装置108上に置か狛でい
る。ベクトル処理装置が起動されると、コン1−「1−
ルプロセノサ101はページングプロセリ什107を起
ff1l+ L7、第2図のP7のプログラムカーネル
部を主記憶装置109にロードする。ぺ一=ジ〉・グプ
ロセッ升107のロープインク完了報告をT1ンI・ロ
ールプロセラ廿lotが受取った後、該プ「1セツサ1
01けプログラムカーネル部の先頭の命令より実行を開
始する。プログラムカーネル部の先頭命令はプロゲラ1
1ボデ7fαを主記憶装置へ「1−トする命令であるの
で、二の命令の指示により、プ[1ηう11が拡張記憶
装置108から主記憶装置109にロードされる。次に
コントロールプロセッサ101けセク、メントαの指示
により、主記憶装置109にロードしたプログラムボデ
イヲ修飾し71次のセグメントE X、 E Cでコン
トロールプロセッサ101の命令処理位置を示している
ポ・インク(以後cr’swという)を書替え、制御を
プロゲラ13ボディ部に移す。この動作は汎用計算機の
無条件ブランチと同様である。 プログラムボティ部の先頭命令はaセグメントの局所メ
モIJ空間を主記憶装置104又け105ヘロートする
命令L aであるので、コントロールプロセッサ101
けページプロセッサ107.スイッチング回路106に
指示をケ、え、拡張記憶装置+08上のaセグメントの
局所メモリ空間を主記憶装置104又は105ヘローデ
イングする。 こ二では仮に局所メモリ空間が主記憶装置104ヘロー
トされたとする。コントロールプロセッサ101は続い
て、cpswの制御に従ってセグメントa内の命令を実
行する。仮にセグメントa内にベグ1ヘル命令が出現し
たとする。この時、コン1へ「1−ルプロセソ什101
けベクトルプロセッサI n 2 、スイッチング回路
103に起動および指示を行い、ベクトル処理を主記憶
装置104に対1−4て行う二とが出来るようにパスの
接続を指示する。ベグ1ヘル命令はコンl−「+−ルプ
ロセッサ101によ、)で主記憶装置109から読出さ
れ、ベクトルプロセッサ102に送られ、すてにローデ
ィングさ才1ている主記憶装置10 ’I 」;の局所
メモリ空間を対象にベクトル処理が行われる。ベクトル
プ「1セツ什102でベクトルクル環が行われている間
、−1ントロールプロセッ廿101はベグ1ヘル命令の
直後にベタ1ヘル処理の終了を待つ命令がなけ才棗ば、
次の命令を実行する。次命令が仮にセグメン1〜aの次
のセグメンl−hの局所メモリ空間の主記憶装置へのロ
ープ、インク指示とする。このとき〜にノ1〜ロールプ
「1セツサ101けスイッチング回7fj I n 6
、ページングプロセッサ107に指示をりえ 拡張記
憶装置1081−のセグメントbの局所メモリ空間を主
記憶装置105ヘロートする。 ごのr+ −=−1:動作はベクトル処理狸と同時に行
うことができる。 この局所゛メモリ空間の主記憶装置へのロー1−動作の
べ/7トル処理との同時実行機能を有効に使用するため
、オブジェクトコードのプログラムボデーイ部を最適化
する必要がある。拡張記憶装置上のプ「1ノノラ11ボ
ディ部は、最初、第3図aのよう内・構)告をとってい
る。第3図aのプログラムにおいて、各セグメントはそ
のセグメンi・を実行するのに必要な局所メモリ空間を
主記憶装置ヘロートする命令と、セグメントの規定する
処理の結果を拡張記憶装着へストアする命令を前後に有
する。この形式のオブジェク1ヘコートは、本発明のベ
クi・生処理装置では局所メモリ空間の主記憶装置への
ロード、データ処理、処理結果の拡張記憶装置へのスト
アの順序だった処理を指示するので、性能向上が期待で
きない。コントロールプロセッサ101どページングプ
ロセッサ102間の並列動作を可能とするため、命令列
を次の4種類に分割する。 ■ コントロールプロセッサにおいて、データ処理を行
う命令(以下C命令という) (?)ベージンクプ「1セツサでページング動作を規定
する命令(以下P命令という) (j)コントロールプロセッサでページングプロセッサ
の状態を調べる命令(以下CW命令という)の1 ペー
ジングプロセッサでコン1〜[1−ルプロセノサの状態
を調べる命令(以下PW命令という)プ「lグラ!いけ
第1図の主記憶装置109にロードされ、コン1〜ロー
ルプロセツサ101によって解読されるが、P命令が出
現し、た時は、ページングプ[Iセッサの状態によって
該命令の指示がコントロールプ「1セツサ内に保持され
るかページングプロセッサ用に送ら汎るかが決定される
。P命令がコントロールプロセッサ側に保持される場合
、たとえば、ページングプロセッサがビジー状態でP命
令を受付られない場合、このときコントロールプロセッ
サかページプロセッサの終了を待つように処理を行うと
、コントロールプロセッサの命令デコート処理にシリア
ルな状態を発生させることになる。このような場合、目
的とし、ているP命令がページングプロセッサがビジー
であって実行できなくとも、P命令の次の命令が論理的
に実行可能ならば、この次命令を実行し、かつ、ページ
ングプロセッサのビジー状態が解除された場合、直ちに
実行留保状態のP命令を実行する必要がある。このよう
な一種の命令追越し、動作を行うため、命令デコード処
理を、C9P命令の両系統に分割する。し・かり、コン
トロールプロセッサの命令実行は、第3図aのコートの
ように概念的に実行されわずなら、ないので、C,P両
系統のテコート処理をタイムスライスし1、時分割で交
互に命令を実行するように制御する。この制御により、
C命令を実行し2なから、P命令をある一定のタイミン
グで起動し、ページングプロセッサのビジー状態が解除
された場合、直ちにページングのための情報をページン
グプロセッサに送るような処理が可能になる。しかL・
、この時分割デコード処理は両系統の命令の処理に何ら
の同期処理も含まない。このため、第3図aのようなペ
ージングに対して、シリアルな処理を規定しているプロ
グラムの動作と一12= 一’PI 1−fJ−い場合が発生する。たとえば第3
図aにおいて、P命令の■、aが行われたとき、時分割
ダニ1−1−処理を行うと、L a命令の処理が行われ
ない時でもセ・グメン[−aのデータ処理が開始されて
し、まう。このような不都合を解消するため、CW。 PW系列の命令が必要になる。この系列の命令を追加【
7、新たにオブジェクトコードを生成したもの右第3図
1)に示す3.第3図すのオブジェクトコードは次の処
理を仮定している。 (1) ページングプロセッサは局所メモリ字間をロ
ードすべき主記憶装置を区別する手段をもち。 か−) 局所空間のローディングが完了した際、どの主
記憶装置へのデータ転送が完了したかを示す情報をコン
トロールプロセッサへ報告する。 す) 局所メモリ空間が「l−]〜さオlる主記憶装置
を1.2と命令し、二の順序に従って使用する。 を蓬1 第3図りの71列はページングプロセッサ用
の命令列で5 ν列は一1ントロールプロセッサ用の命
令である。ただし、ページングプロセッサ用の命令も、
テコ1−ド処理はコントロールプロセッサで行われる。 第3図すの構造のオブジェクトコードは次のように実行
される。 まずμ列のL a命令がデコートされ、ページングプロ
セッサにセグメントaに必要な局所メモリ空間の転送の
開始指示が行われる。次のタイミングではν列のTJn
Ljll命令がデコートされるが、この命令は主記憶装
置(1)へのデータ転送の完了を待つ命令であるので、
ν列の次のセグメントaは実行されない。あるタイミン
グ後、μ列のr−b命令がデコードされる。この時ペー
ジングプロセッサがビジー状態であると、このL b命
令は実行されず、命令スタック上に保持される。次のタ
イミングでは再び制御はν列の命令に移行する。この時
、再びTJntill命令が実行され、コントロールプ
ロセッサはページングプロセッサの終了を待つことにな
る。ページングプロセッサがセグメントaのための局所
メモリ空間の転送を完了すると、コントロールプロセッ
サの制御がμ列の命令上にあるときは、命令スタック上
の命令即ちLllが直ちに実t−tされる。該−1ン1
〜ロールプロセツサの制御が1・列の命令卜にある時は
TJltjllが実行され、二(h小部は直に完了L7
次のタイミングからセクノントaが実行さhろ、こ
の状態で、ある時間ではμ列の命令が、その池の時間で
はν列の命令が実行さ11ろ。 71列の命令がW命令(第3図i)参照)に至ると、μ
列の命令のデコート処理がν列の命令列でRel命令を
検出するまで停止1.する。工のW命令によって、1゛
ノド「1−ルプ[1セラ升かセフメンl−aのデータ処
理を完了1−2た後に、対象となった局所メモリ空間を
拡張記憶ヤ装置へ転送する順序性が保証できる。 −
jr、 ν列の命令は、Rel命令後はTJnti、]
2命令であるかI)、 主記憶装置(2)への局所メモ
リ空間の転送が完了し、ていれば直ちに次のセグメント
bの実行に移行する。第:3図すにおいて、ν列にIT
n白1系の命令の連続かE出されるが、こればp列でS
Ta、f−、c命令のように同一の主記憶装置に−)い
ての局所メモ11空間の転送指示が行わわろため、ペー
ジングプロセッサからの完了報告=15− が2同乗ることに対応し・ている。 第3図すの構造のオブジェクトコ−1くを本発明のペク
ト・生処理装置で実行し、た場合のコン1へロールプロ
セッサとページングプロセッサのビジー状況を第4図に
示す。第4図において1点線の部分がプ「1セラ升・ウ
ェイi・時間である。第4図がl)明らかなように、因
果関係を満す範囲内で両プロセッ廿は自動的に最大のデ
ータ処理が行ゎ狛るように制御される。 以上示L7たコン[・ロールプロセッサとページングプ
ロセラ升間の制御法が、コントロールプロセッサから起
動されるベクトルプロセッサとコントロールプロセッサ
の間にも成立する。ただし、ベクトルプロセッサはデー
タ処理の性質−1=、プロセッサウェイトが困難である
。このベクトルプ[1セノ廿の制御をとり入れた場合の
オブジェクトコードの構造に1いて以下にのべる。 ベクトルプロセッサの起動は、1セグメン1〜内でのみ
行わわ、複数のセグメントにまたがって行われない。最
も甲純に考えると、第5図aのような構造になる。第5
図aに、おいて、ν1列の命令けベタ1ヘル命令を示し
、ν1列の命令はベクトル命令IJJ、 、+lの命令
を示す。Xりトル命令以外の命令のてどを以下スカラ命
令という。コン1−ロールプ「1セノ什から起illさ
れるベタ1〜ルプロセツサを制御する命令とし、て最小
限1次の命令系列が必要である。 中 ベタ1−ルプ[1セツサを正規に動作させろための
準備を行うセットアツプ命令、 t2> 7りトルブ「1セツサを起動するための命令
(J゛〕、下EX入7pという)。 (■ べ!11ヘル処理の完了をチェックするため命令
(〕−゛J、下TVPという)。 二の3種類の命令系によ−〕で、 =+ン1−ロールプ
「1セノ什の命令デ:1−ドタイミング論理を変更する
−とかくベクトルプロセッサの制御が可能になる。し、
かり、第5図aに示さhている命令によって記1its
さf[ろプロセッサの動作を考慮すtt、 lず明らが
なように、:1ン1−[1−ルプ[1セツサの制御がT
■P命令に至ると、その時点で=1ン1〜[1−ルプロ
セッサのデータ処理けりエイ1〜し、、TVPJ′、J
、降のスカラ処理a−命令列を実行することができない
。 二わけベク[・ルプ「1センサをコン1−ロールプロセ
ッサに付加させたために生じた無効時間である。 二の無効時間をt側車化し、上り高速のベクトル処理装
置を実現するため、セグメントaをさらにそのデータ処
理の型に従って次のように細分する。 中 べ))[・ル9!!!埋以前に開始し、なければな
らない処理(以下a1処理という) q・ ベクトル処理と同時に実行できる処理(以下a7
処理という) (AI ベクトル処理以後に行わなければならない処
理(以下a、、処理という) r7j) ベタ1〜ル処理の完了のチェックを開始す
る命令(以下5TVPという) 弔) a、処理どa4処理の境界を示す命令(以下Bn
rTNr1という) 上記の分類に上−〕で示された命令によってセグメント
−aを再構成すると第5図すをtl)る−第5図りの構
j告のプロゲラ!いについてコン1〜ローJレプロセノ
什とベクトルプロセッサの制御は次のように八・、乙、
:fll系列の命令け=1ンi・[]−ルプロセッサτ
実行さ1171.EXVP命令は=1ント「1−ルプロ
セノ升τ子−1−ドさ41.ベクトル処理−動オろ、ベ
グトI+、/命餐列は起動さ1またベタ1〜ルプ[1セ
ノ什て一1ンl−「1− ルブロセノサを介して主記憶
°(重囲109(第1図参照)から読出され、ベク1、
ルプr1セッ什てデー1−1.さi+実行さ]する。a
。 系列の命令はコントロールプロセッサセッせプr1ヤソ
甘の動作どけ非同期にテコ1−ドされ実行さt+ろ−S
T■P命令によって、:Iントロールプ[1セノ升の子
:」−ドサrクルけ2−]のフェイズに分割前11ろ
第1のフエ、rスではベクトルプロセリ什でのデータ処
理が終了し、たか否かがチェック主II、第2σi ”
7 工、(ズでけa2系列の命令が実行さ11イ、 該
2フエ(ブけあr)、かし、め定義されたりrミン′ノ
間陪で相互に定着さおだ時間を占める。 ハ゛シ1.ルプ「1セツサのチー タ処理が完了し、た
場合第1のフェイスけtl’l ihtする。a7命令
の処理において、BnuNn命令を検出し7た場合は第
2のフエイズは消滅する −の2様のデ:1−トフエイ
スの導入により、ベクトル処理の完了を調へながら、同
時にスカラ命令の一部の処理を実行することがτきろ。 二の機能により、コン1へ[1−ループ[1セツサにベ
クトルプロセッサを付加したために生じた「無効時間]
を極小化できる。 1!L I:、ベタ1ヘル処理の終結についての無効時
間の極小化について述べたが、ベクトルプロセッサ起動
についても全く同様の議論が可能である。 次にプログラムのロケーションについて考察する。いま
まで述べて東だようにプロゲラ11とデータは拡張記憶
装置l−の実アドレスによって、そのロケーション位置
が定義されている。当然プログラムのデータ処理手続も
当該ロケーションによって記述されている。一方、局所
メモIl空間を主記憶装置ヘロードし、このロードされ
た新たな空間に対し2データ処理を行う場合、以前のロ
ケーションによって行う二とが不可能になるにの場合、
局所メモリ空間を主記憶装置のどの番地に1−+ −I
し、たのかを示す情報をコントロールプロセッサが、−
20= 局所・メモ11空間をrl −1ニオる命令をデニ1−
ドする際抽出(、ての情報を基に″1ント「J−ルプ「
1セツ什(ハフ力う処理、ベクトルプロセッサのベクト
ル処理1−F−1て発生するメモリアクセスのアト1ノ
スリロケーシヨンを行う。二のりロケーションされたア
ト1ノスは主記憶装置の実アドレスを示している、従っ
て=1ントロールプロセッサ、ベクトルプ「1セツサに
7ドIノスリ「1ケ一シヨン機構を具備するニどに上り
局所メモリ空間におけるプログラム実行か可能になる4 次にページングプ「1セソ叶の機能について考慮する。 前述の議論はページングプr:1セッサの局所メモ11
空間管理についてのみ行わ打ており、局所メモリ空間そ
のものの構造についてけ行わわていない−ベク[・ル処
理けある特定のデータ群に対し一様のデータ処理を行う
ことであるので、スカラ処理のように[処理の順序性」
について、上記のデ〜 タ群内の要素について必ずしも
保証する必要は八・い−次のような110ループを考え
ると、nO1001=1.]OOO A (I)二B (■) 十C(■) 100 C0NT T へI TJ EΔへ91〜ル
要素けI+ 2+ 3+・・・のようか順序でR]算
する必要けろ・く、1 +’ 3+ 2+ 4 + 5
+ ・・の順序でもよい。m=でに記のDO小ループ
同じセグメントに次のよう7j、y r) Qループが
存在し、たどする。 nn 2nOT=1,999,2 n (T’) =l”3 (T)*C(T’)2 o
n CoNTT NTJE 後者のDO小ループ前者のループとけ異なり、B。 Cベタ1ヘルへのアクセスは連続でなく非連続である。 ベグ1ヘル処理はテーク処理を間断なくパイプライン演
算器に行わせ、処理速度を向上させる処理であるため、
被演算テークは非連続よりも連続番地に置く方が効率が
良くなる。Bベタ1〜ル要素がI 12131 のよ
うにロケーションされている場合、二の[Iケーション
は前者のD○のベタ1〜ル処理にけ適しているが、後者
のD○の処理には前者程適し、ではいない。し、かし、
Bベタ1−ルのロケーパ、・コンを、I、3,2.4,
5.7.6+ 8+a)よ−)にすると、後者のI]
○クル理(二於いても連続7′ノセスとな:1、テーク
処理効率か向1−する。 すた^1T昔σ)no処理において、ベク]・ル処理で
けテークの順序性は保証し、なくて白いので、アクセフ
、 ty+沖1青性は変I′″lオ、データ処理効率は
低下し、ない 射にnlどびのア′ノセスヒnとびの
アクセスか連続7 ))セスどlIH存する場合、配列
をm*nのfI1余に1〕てm*n個の部分集合に分離
することにtll、mどびの7グセスがポイントする部
分沖合!−11とびの7!ノセスかポインダする部分集
合とじ分けろ二とができるm−のよう内・操作を行って
も’;jlt I#lニア’、)セスにけ影響をりえ^
・い。二の分離操作しL;1部分に5合内でけそ旧ぞわ
のアクセスは連i、プ1:17. fI:乙−従一、て
、拡張記憶装置−に1′Zある局所メモリ空間を主記憶
(−1i IFiへ「1−ドする際、−1−記の配列の
部分集合再配置化をイイら二とに上って局所メモリ空間
のtiVt造の最適化を行い、ベク[・ル処理の高原f
ヒ右図る二kかできろ。てのようf′8′、処理分散を
ページソタプ「1セソ甘どベクトルプ「1セソ甘間で行
い、ペクト・ル処理装置の高速性をより向上させうる。 1−記の局所メモjl空間の部分集合再配置による最適
化どけ、セグメントのアクセスが行わ第1ない部分集合
を主記憶装置へローディングL、ないことではない。ア
クセスの行わわない部分集合を主記憶装置ヘロードし、
なければ主記憶8袖は小さくなるが、局所メモリ空間を
拡張記憶装置へ書き込む際、アクセスの行われなかった
主記憶装置−ににローディングさねている・い部分沖合
を書込力に先立って拡張記憶装置から読み出し1部分集
合再配圃のjψ操作を行い、その結果を拡張記憶装置に
書込まなければならない。 拡張記憶装置へのアクセスは主記憶装置のアクセスとは
異なり、一種類のアクセスが連続し、た時にのみ高速と
なるので、上記の、ように拡張記憶装置への続出書込が
交互に発生し、た場合、著し、いテーク転送速度の低下
を来す。このため、セグメントがアクセスし、ない局所
メモリ空間の部分集合をも主記憶装置へロードし、でお
き1局所メモリ空間a: lij’、 l’jf3記憶
装置に書込む際には、主記憶装置への舌1.4!l1f
i:アクセスを行い、部分1ニ合再配置のjゲ!操作を
行−1て11):りに記憶ヤ装置ヘス1へ7するように
する。 J″l、1 プ「1グラ11のセグメント処理ヒを行い
、主記憶装置rtの情+lIを局所メモ11窄間に限定
し、か−)局所メモ+1空間の部分集合の再配置による
メモリ空間のセグメント処理に対する最適化を行うこと
にトリ 拡弓14記憶装置1−に定義されだ大規模内・
プログラムどぞのプログラム実行に必要な大メモリ空間
右十記憶装置トし存在させた場合と同様のベタ1〜ル処
pl+を、上り小さい主記憶装置上で行うことが丁きろ
1 第6U21は本発明のベダトル処理装置にfjけるコン
ト[1−ルー/’r+セッ什の命令デコーダの前処理部
分の概略ブ[1ツ!7図である。 第6図にtjいて、命令は主記憶装置109(第1図参
照)よ11パス650を介し7てフリップフロ・・ノブ
(以下FFど呻す)600に入ろ−FF6001−の命
令は命令管理回路601によって、ペーシングプ「Jセ
ッサ、T1ント「1−ルプロセソ什、又けへ91−ルプ
「lセラ什用の命令に分類さ1シ、タイミン′ノ合せの
ためのFF602を介し7てス、rソチング回路603
に送[″J第1る。ス、rツチンク回路603により命
令の型に従−]で、ペーシンノノ゛プロセソ什川の命令
は命令スタック604に、 mlントロールプロセノサ
用の命令はスタック605に、ベタ1ヘルプ[1セツサ
用の命令はスタツノノ606に入る。608は命令)、
タライノ60/l内の命令移行を管理する回路であ暴)
、該回路はフエイスジエネ1ノータロ07によって定義
される特定フェイズたけ動作する。以下二のフェイズタ
・rミンクをAフェイスどよぶ、スタック「304に入
った命令は1.ヘフエ・rス毎にス9ッグを移行し1.
命令lノシスタ609に入る。該命令1ノジスタ609
上の命令はテコーダ610によって子コードされ1局所
−メモリ空間をロート又はストアする命令とウェイト命
令とその池の命令とに分類される。ロート・ス1−ア系
命令の場合、セ1ツクタロ12けパス51を、ウェイト
命令時はパス652を、その他の命令の時はパス653
を選択する。 −Jj ページングプロセッサ107 (第1図参照
)ノ状態(1パスn 5 ・I l ’+ff4 L
テF F 61 ] 11: (呆EIF主11τいイ
)6′″二で ページングプ「1セツサか1′シーのI
I ’pをF F t; 11力状態が″ビ′とし1.
そうτへ゛い場合も−” n ”とする。またスタック
管理回路(’in8にけパス6 !”i 5右)介[、
τ向合移行押出情報か1″!、+’、 41ろものどオ
ろ−「l −l:・ス1〜7系命令の場合、セレクタ6
12(」パフ、[)51ど〔355の接続右行うので、
ページソリ゛プ「1セ・・)什107がビジーのtlj
l 111 、 o−ド又はストゴ′命令は命令1ノシ
スタ609Fに留る。ペーシソゲプ「Iセソ什107か
ビジー状態でろ・くな−I九用今、パブ651むよび6
55を介して命令移行許可がスタック管理回路608に
対し、て行わ11、局所メモリ空間σ)rl−ド又はス
トア命令がパス65 (i %通し、てページングプロ
セッサ+07にi’j; r’Ii1:g。 一′でページン))ブ「1セソ廿ウエイ1へ命令動作は
一1ント「1−ルプ「1セツサ101のREl、(リリ
ース)命令に関連するので コントロールプロセツ什系
列の命令の処理について説明する。 コントロールプ「1セラ什系列の命令はスタック605
に入った後、スタック管理回路614によ−2て命令移
行が管理さ狛る。スタック管理回路614けフエイズシ
ェネ1ノータロ07がAフエ、(ズ以外の7エイズを生
成【−1たどき(J!J、下このフェイズをBフェイス
という)に作動する。また該管理回路614け2種類の
命令移行押出指示をパス657.658を通して受けと
る。こわらの抑11−指示かない時、命令けBフェイズ
が生成される毎にスタック605を移行し、命令レジス
タ613に入る。命令レジスタ613上の命令はデコー
ダ615によって解読され、R,E L命令以外の場合
。 FF616に′1″がセット・される。このFF616
け一1ントロールプロセッサ101が成るプログラムの
セグメントを実行中であることを示す。テ:】−タ゛6
15がRET、命令を解読すると、FF615けII
n Dにリセットされる。第1図の主記憶装置f’ff
1ll’)4,105の状態は次の状態を考える。 (1)主記憶装置に局所メモリ空間が[1−ドご11゜
一1ソl−rl−ルプ[1セツ什およびベクトルプロセ
ノ什かl’、 %、川用ヒt(Iニー:)た状態(]゛
ノ、下lノティ状態1・い5) tW’ :’E記憶(=!21F’fにページング−1
ロ七ソ什かアクセス[τいろ状態C以下ジェネレ−ト状
態という)+2J、、l−の上記憶装圃の状態はページ
ングプロセッサ107が1i′!−理し、その報告がコ
ントロールプロセノ仕101にろ・される。第6図では
パス660゜6(51を介しτそl+ぞ]l主記憶!X
Ji 1面10/l、105の状態の報告がかさJ’t
、 F F 620 、621に1い[寺さ才する
一FF6.l!n、62]の1直はページン′ノ゛ずロ
ヤッ廿107がジェネレート状態ならば゛ビ′、1ノテ
イ状態な1″1げIf n 14とする。 テニ1−夕615でTJ n t、 i +命令が解読
されると、そのフ、1象とする主記憶ヤ装置104ある
いけ105の状態を調へろために、セレクタ622に指
示が行わり、FFI’i2Q又け621の状態をパス6
62vけ663を介し7てセ1ツクタロ23へ送る。セ
1ノリタロ2 、i ′r−けTTntjl系命令の時
はパス〔;6411111を、1丁r+Iil系1゛J
、外の命令の時にはパス665側を1itRする。仮に
LTntillなる命令がデコーダ615で解読されて
、”]’″が主記憶装置104側たったとすると、パス
662.66/l、657の1妾続が行われ、FF62
0の状態がスタック管理回路6]4に送られる。このと
きFF620の内容が゛1″であると、スタック管理回
路614の命令移行処理は押出さ1(、命令レジスタ6
13」−にTJnt、jllの命令は保持される。この
命令滞留処理はページングプロセッサ107がレデーイ
状態となるまで行われる。ページングプロセッサ107
がレデーイ状態になると、命令移行が行わト、パス66
7を介し7てコントロールプロセッサ101の次段命令
解読部に命令が送られる。Until系以外の曲以外は
、セレクタ623はパス665側を選lRするので、ス
タック管理回路614に命令移行押出指示は行われず、
ページングプロセッサ107の状態とは関係なく命令は
パス667 、t:に送り出される。 再びページングプロセッサ107の命令テコード処理の
説明にもどる。 命令トジスダに09に11工r1・命令か東だ場合、7
−1−タ〔;10の指示によりセ1)))タロ12けパ
スri !”i :!Δ選IR第2) 従って一1ン1
へ[1−ルブロセ・・)甘101のための命令てRE■
、を発行L @、い限す バージングプ「1セツ廿10
7け命令待ちの状態てつ1r1・する〜該RE■、命令
はセグメント処哩の終了時点で発行され1局所lモリ空
間内の処理がj疼−2!−fす、該空間が拡張記憶装置
108に1ト込オII t+:け、11けなr:、、
t))いという因東関係か保証さ11ろ、 べ戸1トル命令はス(ソチン1)回路603を経て。 スタッグ60Gに入る 二のスタックを管理する回Vf
I M 63 n ′7:$+ Z+ 、該スタック管
理回路3’fl 63 Qけパス670を介l−てべ)
7 l・ルプロセy廿102(第11″ス1参照)から
のべ))1−ル命令読出要求信号I−、、lニー、、て
動作り、、 フ、9 ニア −’) 6 n 6ト(7
)へ47 ’(Jl/命告ヘーパフ9711−に送信オ
ろ5 各プクソ′)管理回路r;Q8,614.6’30てけ
命令かスタ・・ツクに入+7.ろ゛くなろど、そわぞオ
ーパスに8n、681,682を介し、て、命令管理回
v各601に命令送出抑11−を要求する。命令管理回
路601では、FF B D O内の命令と該送出押出
指示との間の関係を調へ、命令続出処理を要求し・てい
るスタックとFF60 Q内の命令タイプが一致し、て
いる場合は、主起憶装@109の命令続出処理を中断す
るようにディセーブル信号をパス683を介し7て、]
]ン1−ロールプロセッサ10の命令読出回路に送る。 第7図はコン1へロールプロセッサの命令デフ1−ダの
後処理部分の概酩ブロック図である。 コントロールプロセッサ101のための命令はパス66
7を介してスタック701にスタックされる。:のスタ
ック701はスタック管理回路702によってスタック
内の命令移行が管理されている。該命令移行動作は第6
図のフェイスジェネレータ607のBフェイズ出力信号
によって行わわる。該フェイズ信号はパス750を介し
、第7図の回路ブロックに送ら才lるものとする。セl
ツクタフ03は初期状態ではパス751を選択し、でい
るどする。従って、スタック70 ] :J−,の命令
けBフ工rブ11″f号に同期してスタック1−を移行
し、命令1ノジフタ704に格納さ41る。 命1= 1.′シフ97 CI 、4十の命令はテコ−
タフ05によ−、て解読さJI、ベクトル−1「1セツ
サ起動命令(FXVPi ベクトルプロセッサ状態チェ
ック開始命令(STVP)、オン、トびヘノノトル命令
と並t11τ実行τきる命令ど出来ない命令のIff界
を示す命令(11nT■Nn)どに分類さ才]る。 F X N、7 r’又はS T V rが解読さ11
だ場合、デコーダ7(15はスイソチンク回路706に
よって命令1ノジスタ704十の命令か第2命令Iノジ
スタ707t\移行するようにテータパスの接続を行う
よう制御する9第2命令1ノシスタ7071−の命令は
第2す1−タ゛708によ−〕てデコー1;され、べ′
ノドルーツ°「1セツサ102の起動又はチェック情報
が牛1+Qさ狛 パス75”4(Tlマ〕ノド信号どオ
ーダ又1」子−9信6を識別するため2重線で記述さ才
[ている)4介l、てベタトルーfr+セッサ102に
必要*、、!W示がろ゛さオ;ろ。二の1¥、テコ1−
夕705によ一、 −r Frr 7 n qが” l
”に七ノドされ、二の↑前傾かパス755を介し、て
セレクタ703に送られる。 一方、パス750を介し、て送られて来たB7エ、rズ
信号は第2フエ・rスジエネレータ710に入力さお、
Bフェイズをさらに分割したC、Dフエ、rスを生成す
る。C,D両フェイスは同時には生成さおない。ここで
1すCフェイズをスタック701」二の命令デコードに
使用し、Dフェイスを第2命令レジスタ707上のE
X V P又は5TVP命令のデコート処理に用いるも
のとする。今仮に第2命令レジスタ707にE X V
P命令が(8納されているとする。このときすでにF
F709け1′ビ′にセットさ汎て才jす、該FF70
9の出力はパス755を介し、てセレクタ703を動作
せしめ、パス752上のCフェイズ信号を選択し1てい
る。 一方、ベタ1〜ルプロセノサ+02に送られた起動又は
チェック情報は該ベクトルプロセッサ102に作用し5
.そのレスポンスがパス756を介してFF71]に送
ら第1る。ここではFF7]]のf直がLL D II
の場合、ベクトルプロセッサ指示が成功した二どを示し
,、1″″の場合失敗したてどを示すビする。FF7
1 1の値は比較回路71;)にトー1τ′″0″どJ
上申ンさ才する。 ーで′7′ー次の仮定を画く。セレ9タフ14け初期:
Ikfl?τ目パス753を;巽tRするどする,パス
75゛3にけI)7エ、、(ス信号か送I)、土lて来
るものとする。 !ヒdi’/回vII7 1 2 力出力はパス757
を介し、で。 n ”1 x 4ズ信号とA N D回部713で論理
積がどらt+.FF711の内容が0′″となー〕だ場
合でか−)n77、( スのとき、即ちE X V P
又けS T V P命令が実1:?さ4劃たタイミニ
ノブでFF709を″0′″にjl+・ノトオる一F
F 7 0 9が11 0 11にリセッ1へさ、lま
た場合、セ1ツクタフ03けパス751を再び選↑Hし
、、初期状態のようにB7エ、rズで命令のデコー1り
が行わオ(る− ニオ1に反し、AND回路713τ論
理積をどった結果,FF709か11セツトさi’L
l’i”、い40合 セ1〕))り703けパス75
2を選択[−、セ1ノテノタ714(土パス75コをI
I択する。即ち,C′7エイスでは命令スタック7 0
] −1−の命令移行か行わす」、111反のDフェ
イズでは第2命令レジスク7 07.1−(7]EXV
P又けS T V P命令処理か行わ才する。 Cフェイズ時、命令スタック701の命令けEXVP又
けS T V P命令を含まない。こわけベー′ノF・
ルプ「1セツサ102の起動を行った後に再び起動を行
ったり、直後にベクトルプロセッサ102の状態をチェ
ックする二とけ論理的に意味がないからである.もしE
X V Pによってベクトルプロセνす102の起動
を行い,数タイミング後に該ベクトルプロセッサ102
の状態を調べるような場合けS T V P命令の直前
にT3 0 U N r1命令を必要とする。この条件
の下に以下の説明が成立する二とになるー Cフェイズ時、デコーダ705け命令Iノジスタ7 0
4 11の命令を解読し、スイッチング回路706に
よって、パス758と759を接続する。従−〕で、C
フェイズでは命令は命令1ノジスタ704から第3命令
1ノジスタ715に移される。第3命令レジスタ715
j−の命令は上記の条件よりEXVPとST V P命
令は含まれない。第31ノジスタ7 1 5)1の命令
はデコーダ716によって解析さ− :1G− il.p,nTTNn命令の時に限りFF7 1 7が
′1″′じヤ・ソトさ:lする。FF7 1 7が′1
″′にセラ1へされる長二,パス760を介してセレク
タ7141オパス751”lど757を接続する。同時
にスタック管理回路702に命令の移行押上を指示する
。この処T!H ニより.T’lnTITrl命令が出
現し,た後,C, D7、x(スけ/111滅し,、B
7エイズで第2命令レジスタ707ヒのEXVP.ST
VP命令の実行が行わトろ。またFF7 1 7かパ1
”となった時点又はスタック管理回路702で命令スタ
ック701に新たへ・命令をスタックできなくなった時
点の画集(!Iの論理和がOR回路718でとI″Jわ
5命令送出抑+l−1’N示が一1ント・ロールプL1
セッ廿101の前段テ゛ー1ード回VfI(第6図)に
パス658を介して送1゛+ itろ,FF717のリ
セット−はベクトルプロセッサ102の1ノスポンプが
II n 11となるまで行われ内゛い、、該7+トソ
プフ「1ツブ717のリセットはAN D回路7]3の
出力にYリパス761を通して行わ4Iる。 一If、第;3命令1ノシスタ715J−の命令がB0
TJ N D命令以外の場合、FF717は゛′ビ′に
セットされず、当該Iノシスタ7151−の命令けCフ
ェイズタイミングでパス762上に送り出される。 パス762は汎用計算機と同様の命令デコード処理を行
うコントロールプロセッサ 回路に接続されている。 次に第8図乃至第10図を用いて,ページングプロセッ
サによる拡張記憶→主記憶データ転送動作についてη(
a明する。ページングプロセッサ107においては、局
所メモリ空間の部分集合の生成と再配置をローカルメモ
リとマーク1ノジスタを用いて行う。ローカルメモリと
は拡張記憶装置上のデータをロードする際、データを一
時的に保持するメモリのことであし)、二のローカルメ
モリー1−でセグメントのアクセスが局所的に連続にな
るようt二要素のならべ替えを行う作業領域の:とをい
う。 マークレジスタとはレジスタのビットが拡張記憶装置か
らロードしたデータの論理的な区切(たとえば語境界)
に対応し・、該区分がセグメントによってアクセス対象
となっている場合にマークレジスタの対応ビットが1″
′であり、アクセス対象でろ・い場合に” o ”とな
るデータ(以下このデータをマークという)を保持する
レジスタをいう。 第8図はページングプロセッサ107の拡張記憶装置へ
の11ク工スト生成部と読出されたデータをバッファリ
ングし,、マーク1ノジスタによる局所空間の再配置を
行う論理回路の概略ブロック図である。 第8図の論理回路が起動されると,パス850を介し7
てFF800に拡張記憶装置からロードすべきデータの
個数がセットさ1する。同時にパス851を介してカウ
ンタ801.802がリセットされ、カウンタ802に
は拡張記憶装置からロードする局所メモ+1空間の先頭
番地がセットされる。 カウンタ802け該先頭番地とFF803上の増分値を
毎クロツク加算し、、1ノジスタ823,パス853を
介し,て拡張記憶装置804ヘアドレスとして送る。第
8図には図面の簡約化のため、拡張記憶′JAW804
へ送る起動及び動作指示信号パスとそれに関する論理は
省かれている。 −39= カウンタ801はカウンタ802と同期し,て動作1,
、増分値けFF821によりII I IIにとら第1
ている。該カウンタ801の出力はレジスタ822を介
し7比較回路805によって毎夕,rユング後比較され
、FF800のロードすべきデータ数との一致がとられ
ると、カウンタ801.802のカウントアツプ抑止が
レジスタ824、パス852を介し、で行われる,この
抑止はパス851からリセット指示が来るまで解除され
ない。 拡張記憶装置804にパス853を介してリクエストと
アドレスが送られた後,拡張記憶装置804から数十タ
イミング後アドバンス信号がパス854を介し・て送ら
れ、続いて読出されたデータがパス855を介り,で送
られる。ここでは説明を簡約fヒし,ページングプロセ
ッサの動作の基本的部分を明確にするため次の仮定を置
くことにする。 1℃ 拡張記憶装置のタイミングはページングプロセ
ッサの4倍の周期である。 (2) 拡張記憶装置へのIJグエストに対するレス
ポンスデータ111けページングプロセッサの処理テ一
タ巾の4倍である。 (′11 第8図は拡張記憶装着のタイミングで動作
し。 でいるが、点線で囲まれた部分はページングプロセッサ
のタイミングで動作する。 論理回路810はページングプロセッサのタイミングで
作動するサイクルカウンタで,値を0。 1、2,3,O・・・・・・のように周期的にとり,こ
の値をパス8 5 6」二に送る。セレクタ811けパ
スR56 1−の信号l二よって制御され、拡張記憶装
置804からD−ドされて+?FB + 2〜815上
に保持されているデータを逐次i!!!tR L−、結
果をパス857」二に送る。 一方マークテータはパス860を介して送られ、FF8
] 6にいったんラッチされた後、スタック817に
送られる。スタック817では拡張記憶”Ji 置8
0 4からのデータアドバンスが来るまでマークデータ
が保持される。第8図では図面の簡慴化のため,スタッ
ク817け2段しか示されていない。パス851にアド
バンスか来た後、スタック817中のクークデータけF
F8 1 1’lに移されるaFF818上のマークデ
ータも又FFl’l I 2へ・8151のデータと同
様セレクタ819に十−]τ升4 ’7 II ソり
l:i!ltl’i!が行わわ、パス8611m送られ
る。このマークデータは論理回路1’120の入力とな
り、マークか1″′ならば′パス857−t:の信号を
加工せずにパス862−):に送る。もしマークかtr
(I IIならけ入力テータに関係なくパス862上
のデータを” 0”とする ここまでの処理によって、局所メモi1空間の部分集合
の再配置に関する準備が行われた二どになる。 第9図は第8図のパス862上のデータを、主記憶装置
に書込むため、mとびのアクセスを部分的に連続とする
ように一部のデータの順序を入替る処理を行い、かつ主
記憶装置の書込先のアト1ノスを生成する論理回路の概
略ブロック図である。 パス862上のデータは一度FF900にラッチされる
。次のタイミングでFF900のデータがパ0″″であ
るか否かのチェックが比較回路901でなされる。FF
900上のデータが170 IIでない時 パフ、!1
”、s 0.1−にバ11ノド信号か送り出され。 子−9が” n ”ろ・らげパス!180−ににバリッ
ドがjス出七11z、 論理回路902け、RAM書
込ポインタ!I n ’l、RAIV(読出ボ・rシタ
904、主記憶書i3ポrンタ905の作動と停車を制
御する管理回路τある8仮に管理回路1〕02のパス9
52 hの信号を・1ト込ポインタ個1作可どする。(
パス951(1パス!152,953,954の東線で
ある。)二の時、パス950トのバリフ1;信壮どパス
95′:!1・の許可信号けA N D回路906で論
理積がとt′I才j 井込ポインタ903のカラン1ヘ
アンプバリリドと九゛ろ 該カウントアツプバリッドか
生成さ11t−とき、書込ポ(ンタn03は、FF91
7の更新値によるカウントアツプを行い、RAM910
゜911の書込ア1〜lノスを牛T友する。RAM91
0 。 qll(士[1−カルメモリであり、次のように用い1
゛、狛ろ。 ・1−1 け
7で、拡張記憶装置にに存在する大規模なプログラムの
実行を拡張記憶装置よりも小さな容量の複数の主記憶装
置上で実施するようにしたことである。 〔発明の実施例〕 以下、本発明の一実施例を図面を用いて詳細に説明する
。 第1図は本発明に係るベクトル処理装置の基本1i1’
f IRで、−1ントロールプロセツサ101、ベクト
ルプロセッサ102、ページングプロセッサ107、を
記憶装置10/I、105,109.拡張記憶装置10
8、スイッチング回路103,106に上って構成され
る。 ベクトル処理を規定するプログラムを次のような構成の
オブジェタトコードで記述する。プログラムを構成して
いるベクトルおよびスカシ命令群の成る集合が、他の集
合とは異なるメモリ空間内のデータに対しての処理動作
を規定している場合、二の命令集合をセグメントと云い
、該命令集合のポイントするデータ空間を局所メモリ空
間という。 このように定義されたセグメントと局所メモリ空間は科
学技術計算プログラム中に数多く見出すことができる。 たとえば次のようなりoループでは、D○ 100 1
=1.N +00 A(T)=B(T)十C(T)r′)Oルー
プを構成するスカシ、ベクトル命令列がセグメントであ
り、配列A、B、Cとr)0制御変数T、Nが占有して
いるメモリ空間が局所メモリ空間である。従って、プロ
グラムはセグメントと局所メモリ空間によって定義する
ことができる。 この定義によりげ、プログラム実行に必要十分な処理と
け、 (I″ll現在セグ、メントを実行し、でいるのかを示
す指標。 Igl 局所メモリ空間を生成格納する指示、である
、このことを第2図のプログラムPL、についていうと
、a −Cけセグメントを示し、T−aはセグメントが
ボーrントする局所メモリ空間を主記憶装置上に生成指
示する命令、STaけ該メモリ空間を拡張記憶装置上に
格納する命令を示す。a。 bのセグメントについても同様である。 プログラムはデータ処理を規定するセグメントと局所、
メモリ空間と該空間を管理する命令とによ一〕で構成す
ることができるが、プログラム自体もまたセグメントと
局所メモリ空間によって定義される。このことを第2図
のPIlについて説明する。 成る命令ここでけSTbにおいて、データ処理がSTh
以前と以後に分割できるとする。この仮定はプログラム
が各構成セグメントを順序だって実行するものという仮
定の下に論理的に構成されていわば妥当である。STb
点におけるプログラム分割を行−〕だ場合、■、a命令
からSTb命令に到ろ命令群を主記憶装置上にロープイ
ンクする命令と該命令群を拡張記憶′JA置にストアす
る命令とプロゲラ11の実行を指示する命令を定義する
ことによ1)、プロクラ11をプログラム自体のローデ
ィング、実行、ス1〜7の3種類の動作定義に縮約可詣
である。この縮約を第2図のプログラムPIに示す。二
のように縮約されたプログラムは、比較的小さなメモ+
1空間上にプロクラムの実行が終るまで保持することか
できる。科学技術計算の場合は。 プログラムが自分自身を処理することけないが、今後よ
り複雑なデータ処理を行う場合、プログラムが自分自分
を変形することが起り得る。このような場合、プロクラ
ムを主記憶装置にローディングする命令の次にプログラ
ム自身を変形処理する命令を置くことにより、目的の処
理を行うことができる。第2図のP2は、このプログラ
ム自身を変形するプログラムの構造を示したものである
。 P2において、α部がプロクラ12α部(これはセグメ
ントa、bから構成されている)を変形するセグメント
である。 JTi、 tb 、第2図に示り、たように、プロクラ
ムを、プ「1ごノ→ム白I・を主記憶装置上ロート、編
集、スト・アする部分を[プロ/7ラムカーネル」、プ
ロゲラ11カーネルによって引用対象になる部分を「プ
ログラムボテ、イ」と呼ぶ。 第1図のベクトル処理装置において、第2図F) に上
って表示さ才lたプログラムは次のように処理される。 プ「1ダラムは初め拡張記憶装置108上に置か狛でい
る。ベクトル処理装置が起動されると、コン1−「1−
ルプロセノサ101はページングプロセリ什107を起
ff1l+ L7、第2図のP7のプログラムカーネル
部を主記憶装置109にロードする。ぺ一=ジ〉・グプ
ロセッ升107のロープインク完了報告をT1ンI・ロ
ールプロセラ廿lotが受取った後、該プ「1セツサ1
01けプログラムカーネル部の先頭の命令より実行を開
始する。プログラムカーネル部の先頭命令はプロゲラ1
1ボデ7fαを主記憶装置へ「1−トする命令であるの
で、二の命令の指示により、プ[1ηう11が拡張記憶
装置108から主記憶装置109にロードされる。次に
コントロールプロセッサ101けセク、メントαの指示
により、主記憶装置109にロードしたプログラムボデ
イヲ修飾し71次のセグメントE X、 E Cでコン
トロールプロセッサ101の命令処理位置を示している
ポ・インク(以後cr’swという)を書替え、制御を
プロゲラ13ボディ部に移す。この動作は汎用計算機の
無条件ブランチと同様である。 プログラムボティ部の先頭命令はaセグメントの局所メ
モIJ空間を主記憶装置104又け105ヘロートする
命令L aであるので、コントロールプロセッサ101
けページプロセッサ107.スイッチング回路106に
指示をケ、え、拡張記憶装置+08上のaセグメントの
局所メモリ空間を主記憶装置104又は105ヘローデ
イングする。 こ二では仮に局所メモリ空間が主記憶装置104ヘロー
トされたとする。コントロールプロセッサ101は続い
て、cpswの制御に従ってセグメントa内の命令を実
行する。仮にセグメントa内にベグ1ヘル命令が出現し
たとする。この時、コン1へ「1−ルプロセソ什101
けベクトルプロセッサI n 2 、スイッチング回路
103に起動および指示を行い、ベクトル処理を主記憶
装置104に対1−4て行う二とが出来るようにパスの
接続を指示する。ベグ1ヘル命令はコンl−「+−ルプ
ロセッサ101によ、)で主記憶装置109から読出さ
れ、ベクトルプロセッサ102に送られ、すてにローデ
ィングさ才1ている主記憶装置10 ’I 」;の局所
メモリ空間を対象にベクトル処理が行われる。ベクトル
プ「1セツ什102でベクトルクル環が行われている間
、−1ントロールプロセッ廿101はベグ1ヘル命令の
直後にベタ1ヘル処理の終了を待つ命令がなけ才棗ば、
次の命令を実行する。次命令が仮にセグメン1〜aの次
のセグメンl−hの局所メモリ空間の主記憶装置へのロ
ープ、インク指示とする。このとき〜にノ1〜ロールプ
「1セツサ101けスイッチング回7fj I n 6
、ページングプロセッサ107に指示をりえ 拡張記
憶装置1081−のセグメントbの局所メモリ空間を主
記憶装置105ヘロートする。 ごのr+ −=−1:動作はベクトル処理狸と同時に行
うことができる。 この局所゛メモリ空間の主記憶装置へのロー1−動作の
べ/7トル処理との同時実行機能を有効に使用するため
、オブジェクトコードのプログラムボデーイ部を最適化
する必要がある。拡張記憶装置上のプ「1ノノラ11ボ
ディ部は、最初、第3図aのよう内・構)告をとってい
る。第3図aのプログラムにおいて、各セグメントはそ
のセグメンi・を実行するのに必要な局所メモリ空間を
主記憶装置ヘロートする命令と、セグメントの規定する
処理の結果を拡張記憶装着へストアする命令を前後に有
する。この形式のオブジェク1ヘコートは、本発明のベ
クi・生処理装置では局所メモリ空間の主記憶装置への
ロード、データ処理、処理結果の拡張記憶装置へのスト
アの順序だった処理を指示するので、性能向上が期待で
きない。コントロールプロセッサ101どページングプ
ロセッサ102間の並列動作を可能とするため、命令列
を次の4種類に分割する。 ■ コントロールプロセッサにおいて、データ処理を行
う命令(以下C命令という) (?)ベージンクプ「1セツサでページング動作を規定
する命令(以下P命令という) (j)コントロールプロセッサでページングプロセッサ
の状態を調べる命令(以下CW命令という)の1 ペー
ジングプロセッサでコン1〜[1−ルプロセノサの状態
を調べる命令(以下PW命令という)プ「lグラ!いけ
第1図の主記憶装置109にロードされ、コン1〜ロー
ルプロセツサ101によって解読されるが、P命令が出
現し、た時は、ページングプ[Iセッサの状態によって
該命令の指示がコントロールプ「1セツサ内に保持され
るかページングプロセッサ用に送ら汎るかが決定される
。P命令がコントロールプロセッサ側に保持される場合
、たとえば、ページングプロセッサがビジー状態でP命
令を受付られない場合、このときコントロールプロセッ
サかページプロセッサの終了を待つように処理を行うと
、コントロールプロセッサの命令デコート処理にシリア
ルな状態を発生させることになる。このような場合、目
的とし、ているP命令がページングプロセッサがビジー
であって実行できなくとも、P命令の次の命令が論理的
に実行可能ならば、この次命令を実行し、かつ、ページ
ングプロセッサのビジー状態が解除された場合、直ちに
実行留保状態のP命令を実行する必要がある。このよう
な一種の命令追越し、動作を行うため、命令デコード処
理を、C9P命令の両系統に分割する。し・かり、コン
トロールプロセッサの命令実行は、第3図aのコートの
ように概念的に実行されわずなら、ないので、C,P両
系統のテコート処理をタイムスライスし1、時分割で交
互に命令を実行するように制御する。この制御により、
C命令を実行し2なから、P命令をある一定のタイミン
グで起動し、ページングプロセッサのビジー状態が解除
された場合、直ちにページングのための情報をページン
グプロセッサに送るような処理が可能になる。しかL・
、この時分割デコード処理は両系統の命令の処理に何ら
の同期処理も含まない。このため、第3図aのようなペ
ージングに対して、シリアルな処理を規定しているプロ
グラムの動作と一12= 一’PI 1−fJ−い場合が発生する。たとえば第3
図aにおいて、P命令の■、aが行われたとき、時分割
ダニ1−1−処理を行うと、L a命令の処理が行われ
ない時でもセ・グメン[−aのデータ処理が開始されて
し、まう。このような不都合を解消するため、CW。 PW系列の命令が必要になる。この系列の命令を追加【
7、新たにオブジェクトコードを生成したもの右第3図
1)に示す3.第3図すのオブジェクトコードは次の処
理を仮定している。 (1) ページングプロセッサは局所メモリ字間をロ
ードすべき主記憶装置を区別する手段をもち。 か−) 局所空間のローディングが完了した際、どの主
記憶装置へのデータ転送が完了したかを示す情報をコン
トロールプロセッサへ報告する。 す) 局所メモリ空間が「l−]〜さオlる主記憶装置
を1.2と命令し、二の順序に従って使用する。 を蓬1 第3図りの71列はページングプロセッサ用
の命令列で5 ν列は一1ントロールプロセッサ用の命
令である。ただし、ページングプロセッサ用の命令も、
テコ1−ド処理はコントロールプロセッサで行われる。 第3図すの構造のオブジェクトコードは次のように実行
される。 まずμ列のL a命令がデコートされ、ページングプロ
セッサにセグメントaに必要な局所メモリ空間の転送の
開始指示が行われる。次のタイミングではν列のTJn
Ljll命令がデコートされるが、この命令は主記憶装
置(1)へのデータ転送の完了を待つ命令であるので、
ν列の次のセグメントaは実行されない。あるタイミン
グ後、μ列のr−b命令がデコードされる。この時ペー
ジングプロセッサがビジー状態であると、このL b命
令は実行されず、命令スタック上に保持される。次のタ
イミングでは再び制御はν列の命令に移行する。この時
、再びTJntill命令が実行され、コントロールプ
ロセッサはページングプロセッサの終了を待つことにな
る。ページングプロセッサがセグメントaのための局所
メモリ空間の転送を完了すると、コントロールプロセッ
サの制御がμ列の命令上にあるときは、命令スタック上
の命令即ちLllが直ちに実t−tされる。該−1ン1
〜ロールプロセツサの制御が1・列の命令卜にある時は
TJltjllが実行され、二(h小部は直に完了L7
次のタイミングからセクノントaが実行さhろ、こ
の状態で、ある時間ではμ列の命令が、その池の時間で
はν列の命令が実行さ11ろ。 71列の命令がW命令(第3図i)参照)に至ると、μ
列の命令のデコート処理がν列の命令列でRel命令を
検出するまで停止1.する。工のW命令によって、1゛
ノド「1−ルプ[1セラ升かセフメンl−aのデータ処
理を完了1−2た後に、対象となった局所メモリ空間を
拡張記憶ヤ装置へ転送する順序性が保証できる。 −
jr、 ν列の命令は、Rel命令後はTJnti、]
2命令であるかI)、 主記憶装置(2)への局所メモ
リ空間の転送が完了し、ていれば直ちに次のセグメント
bの実行に移行する。第:3図すにおいて、ν列にIT
n白1系の命令の連続かE出されるが、こればp列でS
Ta、f−、c命令のように同一の主記憶装置に−)い
ての局所メモ11空間の転送指示が行わわろため、ペー
ジングプロセッサからの完了報告=15− が2同乗ることに対応し・ている。 第3図すの構造のオブジェクトコ−1くを本発明のペク
ト・生処理装置で実行し、た場合のコン1へロールプロ
セッサとページングプロセッサのビジー状況を第4図に
示す。第4図において1点線の部分がプ「1セラ升・ウ
ェイi・時間である。第4図がl)明らかなように、因
果関係を満す範囲内で両プロセッ廿は自動的に最大のデ
ータ処理が行ゎ狛るように制御される。 以上示L7たコン[・ロールプロセッサとページングプ
ロセラ升間の制御法が、コントロールプロセッサから起
動されるベクトルプロセッサとコントロールプロセッサ
の間にも成立する。ただし、ベクトルプロセッサはデー
タ処理の性質−1=、プロセッサウェイトが困難である
。このベクトルプ[1セノ廿の制御をとり入れた場合の
オブジェクトコードの構造に1いて以下にのべる。 ベクトルプロセッサの起動は、1セグメン1〜内でのみ
行わわ、複数のセグメントにまたがって行われない。最
も甲純に考えると、第5図aのような構造になる。第5
図aに、おいて、ν1列の命令けベタ1ヘル命令を示し
、ν1列の命令はベクトル命令IJJ、 、+lの命令
を示す。Xりトル命令以外の命令のてどを以下スカラ命
令という。コン1−ロールプ「1セノ什から起illさ
れるベタ1〜ルプロセツサを制御する命令とし、て最小
限1次の命令系列が必要である。 中 ベタ1−ルプ[1セツサを正規に動作させろための
準備を行うセットアツプ命令、 t2> 7りトルブ「1セツサを起動するための命令
(J゛〕、下EX入7pという)。 (■ べ!11ヘル処理の完了をチェックするため命令
(〕−゛J、下TVPという)。 二の3種類の命令系によ−〕で、 =+ン1−ロールプ
「1セノ什の命令デ:1−ドタイミング論理を変更する
−とかくベクトルプロセッサの制御が可能になる。し、
かり、第5図aに示さhている命令によって記1its
さf[ろプロセッサの動作を考慮すtt、 lず明らが
なように、:1ン1−[1−ルプ[1セツサの制御がT
■P命令に至ると、その時点で=1ン1〜[1−ルプロ
セッサのデータ処理けりエイ1〜し、、TVPJ′、J
、降のスカラ処理a−命令列を実行することができない
。 二わけベク[・ルプ「1センサをコン1−ロールプロセ
ッサに付加させたために生じた無効時間である。 二の無効時間をt側車化し、上り高速のベクトル処理装
置を実現するため、セグメントaをさらにそのデータ処
理の型に従って次のように細分する。 中 べ))[・ル9!!!埋以前に開始し、なければな
らない処理(以下a1処理という) q・ ベクトル処理と同時に実行できる処理(以下a7
処理という) (AI ベクトル処理以後に行わなければならない処
理(以下a、、処理という) r7j) ベタ1〜ル処理の完了のチェックを開始す
る命令(以下5TVPという) 弔) a、処理どa4処理の境界を示す命令(以下Bn
rTNr1という) 上記の分類に上−〕で示された命令によってセグメント
−aを再構成すると第5図すをtl)る−第5図りの構
j告のプロゲラ!いについてコン1〜ローJレプロセノ
什とベクトルプロセッサの制御は次のように八・、乙、
:fll系列の命令け=1ンi・[]−ルプロセッサτ
実行さ1171.EXVP命令は=1ント「1−ルプロ
セノ升τ子−1−ドさ41.ベクトル処理−動オろ、ベ
グトI+、/命餐列は起動さ1またベタ1〜ルプ[1セ
ノ什て一1ンl−「1− ルブロセノサを介して主記憶
°(重囲109(第1図参照)から読出され、ベク1、
ルプr1セッ什てデー1−1.さi+実行さ]する。a
。 系列の命令はコントロールプロセッサセッせプr1ヤソ
甘の動作どけ非同期にテコ1−ドされ実行さt+ろ−S
T■P命令によって、:Iントロールプ[1セノ升の子
:」−ドサrクルけ2−]のフェイズに分割前11ろ
第1のフエ、rスではベクトルプロセリ什でのデータ処
理が終了し、たか否かがチェック主II、第2σi ”
7 工、(ズでけa2系列の命令が実行さ11イ、 該
2フエ(ブけあr)、かし、め定義されたりrミン′ノ
間陪で相互に定着さおだ時間を占める。 ハ゛シ1.ルプ「1セツサのチー タ処理が完了し、た
場合第1のフェイスけtl’l ihtする。a7命令
の処理において、BnuNn命令を検出し7た場合は第
2のフエイズは消滅する −の2様のデ:1−トフエイ
スの導入により、ベクトル処理の完了を調へながら、同
時にスカラ命令の一部の処理を実行することがτきろ。 二の機能により、コン1へ[1−ループ[1セツサにベ
クトルプロセッサを付加したために生じた「無効時間]
を極小化できる。 1!L I:、ベタ1ヘル処理の終結についての無効時
間の極小化について述べたが、ベクトルプロセッサ起動
についても全く同様の議論が可能である。 次にプログラムのロケーションについて考察する。いま
まで述べて東だようにプロゲラ11とデータは拡張記憶
装置l−の実アドレスによって、そのロケーション位置
が定義されている。当然プログラムのデータ処理手続も
当該ロケーションによって記述されている。一方、局所
メモIl空間を主記憶装置ヘロードし、このロードされ
た新たな空間に対し2データ処理を行う場合、以前のロ
ケーションによって行う二とが不可能になるにの場合、
局所メモリ空間を主記憶装置のどの番地に1−+ −I
し、たのかを示す情報をコントロールプロセッサが、−
20= 局所・メモ11空間をrl −1ニオる命令をデニ1−
ドする際抽出(、ての情報を基に″1ント「J−ルプ「
1セツ什(ハフ力う処理、ベクトルプロセッサのベクト
ル処理1−F−1て発生するメモリアクセスのアト1ノ
スリロケーシヨンを行う。二のりロケーションされたア
ト1ノスは主記憶装置の実アドレスを示している、従っ
て=1ントロールプロセッサ、ベクトルプ「1セツサに
7ドIノスリ「1ケ一シヨン機構を具備するニどに上り
局所メモリ空間におけるプログラム実行か可能になる4 次にページングプ「1セソ叶の機能について考慮する。 前述の議論はページングプr:1セッサの局所メモ11
空間管理についてのみ行わ打ており、局所メモリ空間そ
のものの構造についてけ行わわていない−ベク[・ル処
理けある特定のデータ群に対し一様のデータ処理を行う
ことであるので、スカラ処理のように[処理の順序性」
について、上記のデ〜 タ群内の要素について必ずしも
保証する必要は八・い−次のような110ループを考え
ると、nO1001=1.]OOO A (I)二B (■) 十C(■) 100 C0NT T へI TJ EΔへ91〜ル
要素けI+ 2+ 3+・・・のようか順序でR]算
する必要けろ・く、1 +’ 3+ 2+ 4 + 5
+ ・・の順序でもよい。m=でに記のDO小ループ
同じセグメントに次のよう7j、y r) Qループが
存在し、たどする。 nn 2nOT=1,999,2 n (T’) =l”3 (T)*C(T’)2 o
n CoNTT NTJE 後者のDO小ループ前者のループとけ異なり、B。 Cベタ1ヘルへのアクセスは連続でなく非連続である。 ベグ1ヘル処理はテーク処理を間断なくパイプライン演
算器に行わせ、処理速度を向上させる処理であるため、
被演算テークは非連続よりも連続番地に置く方が効率が
良くなる。Bベタ1〜ル要素がI 12131 のよ
うにロケーションされている場合、二の[Iケーション
は前者のD○のベタ1〜ル処理にけ適しているが、後者
のD○の処理には前者程適し、ではいない。し、かし、
Bベタ1−ルのロケーパ、・コンを、I、3,2.4,
5.7.6+ 8+a)よ−)にすると、後者のI]
○クル理(二於いても連続7′ノセスとな:1、テーク
処理効率か向1−する。 すた^1T昔σ)no処理において、ベク]・ル処理で
けテークの順序性は保証し、なくて白いので、アクセフ
、 ty+沖1青性は変I′″lオ、データ処理効率は
低下し、ない 射にnlどびのア′ノセスヒnとびの
アクセスか連続7 ))セスどlIH存する場合、配列
をm*nのfI1余に1〕てm*n個の部分集合に分離
することにtll、mどびの7グセスがポイントする部
分沖合!−11とびの7!ノセスかポインダする部分集
合とじ分けろ二とができるm−のよう内・操作を行って
も’;jlt I#lニア’、)セスにけ影響をりえ^
・い。二の分離操作しL;1部分に5合内でけそ旧ぞわ
のアクセスは連i、プ1:17. fI:乙−従一、て
、拡張記憶装置−に1′Zある局所メモリ空間を主記憶
(−1i IFiへ「1−ドする際、−1−記の配列の
部分集合再配置化をイイら二とに上って局所メモリ空間
のtiVt造の最適化を行い、ベク[・ル処理の高原f
ヒ右図る二kかできろ。てのようf′8′、処理分散を
ページソタプ「1セソ甘どベクトルプ「1セソ甘間で行
い、ペクト・ル処理装置の高速性をより向上させうる。 1−記の局所メモjl空間の部分集合再配置による最適
化どけ、セグメントのアクセスが行わ第1ない部分集合
を主記憶装置へローディングL、ないことではない。ア
クセスの行わわない部分集合を主記憶装置ヘロードし、
なければ主記憶8袖は小さくなるが、局所メモリ空間を
拡張記憶装置へ書き込む際、アクセスの行われなかった
主記憶装置−ににローディングさねている・い部分沖合
を書込力に先立って拡張記憶装置から読み出し1部分集
合再配圃のjψ操作を行い、その結果を拡張記憶装置に
書込まなければならない。 拡張記憶装置へのアクセスは主記憶装置のアクセスとは
異なり、一種類のアクセスが連続し、た時にのみ高速と
なるので、上記の、ように拡張記憶装置への続出書込が
交互に発生し、た場合、著し、いテーク転送速度の低下
を来す。このため、セグメントがアクセスし、ない局所
メモリ空間の部分集合をも主記憶装置へロードし、でお
き1局所メモリ空間a: lij’、 l’jf3記憶
装置に書込む際には、主記憶装置への舌1.4!l1f
i:アクセスを行い、部分1ニ合再配置のjゲ!操作を
行−1て11):りに記憶ヤ装置ヘス1へ7するように
する。 J″l、1 プ「1グラ11のセグメント処理ヒを行い
、主記憶装置rtの情+lIを局所メモ11窄間に限定
し、か−)局所メモ+1空間の部分集合の再配置による
メモリ空間のセグメント処理に対する最適化を行うこと
にトリ 拡弓14記憶装置1−に定義されだ大規模内・
プログラムどぞのプログラム実行に必要な大メモリ空間
右十記憶装置トし存在させた場合と同様のベタ1〜ル処
pl+を、上り小さい主記憶装置上で行うことが丁きろ
1 第6U21は本発明のベダトル処理装置にfjけるコン
ト[1−ルー/’r+セッ什の命令デコーダの前処理部
分の概略ブ[1ツ!7図である。 第6図にtjいて、命令は主記憶装置109(第1図参
照)よ11パス650を介し7てフリップフロ・・ノブ
(以下FFど呻す)600に入ろ−FF6001−の命
令は命令管理回路601によって、ペーシングプ「Jセ
ッサ、T1ント「1−ルプロセソ什、又けへ91−ルプ
「lセラ什用の命令に分類さ1シ、タイミン′ノ合せの
ためのFF602を介し7てス、rソチング回路603
に送[″J第1る。ス、rツチンク回路603により命
令の型に従−]で、ペーシンノノ゛プロセソ什川の命令
は命令スタック604に、 mlントロールプロセノサ
用の命令はスタック605に、ベタ1ヘルプ[1セツサ
用の命令はスタツノノ606に入る。608は命令)、
タライノ60/l内の命令移行を管理する回路であ暴)
、該回路はフエイスジエネ1ノータロ07によって定義
される特定フェイズたけ動作する。以下二のフェイズタ
・rミンクをAフェイスどよぶ、スタック「304に入
った命令は1.ヘフエ・rス毎にス9ッグを移行し1.
命令lノシスタ609に入る。該命令1ノジスタ609
上の命令はテコーダ610によって子コードされ1局所
−メモリ空間をロート又はストアする命令とウェイト命
令とその池の命令とに分類される。ロート・ス1−ア系
命令の場合、セ1ツクタロ12けパス51を、ウェイト
命令時はパス652を、その他の命令の時はパス653
を選択する。 −Jj ページングプロセッサ107 (第1図参照
)ノ状態(1パスn 5 ・I l ’+ff4 L
テF F 61 ] 11: (呆EIF主11τいイ
)6′″二で ページングプ「1セツサか1′シーのI
I ’pをF F t; 11力状態が″ビ′とし1.
そうτへ゛い場合も−” n ”とする。またスタック
管理回路(’in8にけパス6 !”i 5右)介[、
τ向合移行押出情報か1″!、+’、 41ろものどオ
ろ−「l −l:・ス1〜7系命令の場合、セレクタ6
12(」パフ、[)51ど〔355の接続右行うので、
ページソリ゛プ「1セ・・)什107がビジーのtlj
l 111 、 o−ド又はストゴ′命令は命令1ノシ
スタ609Fに留る。ペーシソゲプ「Iセソ什107か
ビジー状態でろ・くな−I九用今、パブ651むよび6
55を介して命令移行許可がスタック管理回路608に
対し、て行わ11、局所メモリ空間σ)rl−ド又はス
トア命令がパス65 (i %通し、てページングプロ
セッサ+07にi’j; r’Ii1:g。 一′でページン))ブ「1セソ廿ウエイ1へ命令動作は
一1ント「1−ルプ「1セツサ101のREl、(リリ
ース)命令に関連するので コントロールプロセツ什系
列の命令の処理について説明する。 コントロールプ「1セラ什系列の命令はスタック605
に入った後、スタック管理回路614によ−2て命令移
行が管理さ狛る。スタック管理回路614けフエイズシ
ェネ1ノータロ07がAフエ、(ズ以外の7エイズを生
成【−1たどき(J!J、下このフェイズをBフェイス
という)に作動する。また該管理回路614け2種類の
命令移行押出指示をパス657.658を通して受けと
る。こわらの抑11−指示かない時、命令けBフェイズ
が生成される毎にスタック605を移行し、命令レジス
タ613に入る。命令レジスタ613上の命令はデコー
ダ615によって解読され、R,E L命令以外の場合
。 FF616に′1″がセット・される。このFF616
け一1ントロールプロセッサ101が成るプログラムの
セグメントを実行中であることを示す。テ:】−タ゛6
15がRET、命令を解読すると、FF615けII
n Dにリセットされる。第1図の主記憶装置f’ff
1ll’)4,105の状態は次の状態を考える。 (1)主記憶装置に局所メモリ空間が[1−ドご11゜
一1ソl−rl−ルプ[1セツ什およびベクトルプロセ
ノ什かl’、 %、川用ヒt(Iニー:)た状態(]゛
ノ、下lノティ状態1・い5) tW’ :’E記憶(=!21F’fにページング−1
ロ七ソ什かアクセス[τいろ状態C以下ジェネレ−ト状
態という)+2J、、l−の上記憶装圃の状態はページ
ングプロセッサ107が1i′!−理し、その報告がコ
ントロールプロセノ仕101にろ・される。第6図では
パス660゜6(51を介しτそl+ぞ]l主記憶!X
Ji 1面10/l、105の状態の報告がかさJ’t
、 F F 620 、621に1い[寺さ才する
一FF6.l!n、62]の1直はページン′ノ゛ずロ
ヤッ廿107がジェネレート状態ならば゛ビ′、1ノテ
イ状態な1″1げIf n 14とする。 テニ1−夕615でTJ n t、 i +命令が解読
されると、そのフ、1象とする主記憶ヤ装置104ある
いけ105の状態を調へろために、セレクタ622に指
示が行わり、FFI’i2Q又け621の状態をパス6
62vけ663を介し7てセ1ツクタロ23へ送る。セ
1ノリタロ2 、i ′r−けTTntjl系命令の時
はパス〔;6411111を、1丁r+Iil系1゛J
、外の命令の時にはパス665側を1itRする。仮に
LTntillなる命令がデコーダ615で解読されて
、”]’″が主記憶装置104側たったとすると、パス
662.66/l、657の1妾続が行われ、FF62
0の状態がスタック管理回路6]4に送られる。このと
きFF620の内容が゛1″であると、スタック管理回
路614の命令移行処理は押出さ1(、命令レジスタ6
13」−にTJnt、jllの命令は保持される。この
命令滞留処理はページングプロセッサ107がレデーイ
状態となるまで行われる。ページングプロセッサ107
がレデーイ状態になると、命令移行が行わト、パス66
7を介し7てコントロールプロセッサ101の次段命令
解読部に命令が送られる。Until系以外の曲以外は
、セレクタ623はパス665側を選lRするので、ス
タック管理回路614に命令移行押出指示は行われず、
ページングプロセッサ107の状態とは関係なく命令は
パス667 、t:に送り出される。 再びページングプロセッサ107の命令テコード処理の
説明にもどる。 命令トジスダに09に11工r1・命令か東だ場合、7
−1−タ〔;10の指示によりセ1)))タロ12けパ
スri !”i :!Δ選IR第2) 従って一1ン1
へ[1−ルブロセ・・)甘101のための命令てRE■
、を発行L @、い限す バージングプ「1セツ廿10
7け命令待ちの状態てつ1r1・する〜該RE■、命令
はセグメント処哩の終了時点で発行され1局所lモリ空
間内の処理がj疼−2!−fす、該空間が拡張記憶装置
108に1ト込オII t+:け、11けなr:、、
t))いという因東関係か保証さ11ろ、 べ戸1トル命令はス(ソチン1)回路603を経て。 スタッグ60Gに入る 二のスタックを管理する回Vf
I M 63 n ′7:$+ Z+ 、該スタック管
理回路3’fl 63 Qけパス670を介l−てべ)
7 l・ルプロセy廿102(第11″ス1参照)から
のべ))1−ル命令読出要求信号I−、、lニー、、て
動作り、、 フ、9 ニア −’) 6 n 6ト(7
)へ47 ’(Jl/命告ヘーパフ9711−に送信オ
ろ5 各プクソ′)管理回路r;Q8,614.6’30てけ
命令かスタ・・ツクに入+7.ろ゛くなろど、そわぞオ
ーパスに8n、681,682を介し、て、命令管理回
v各601に命令送出抑11−を要求する。命令管理回
路601では、FF B D O内の命令と該送出押出
指示との間の関係を調へ、命令続出処理を要求し・てい
るスタックとFF60 Q内の命令タイプが一致し、て
いる場合は、主起憶装@109の命令続出処理を中断す
るようにディセーブル信号をパス683を介し7て、]
]ン1−ロールプロセッサ10の命令読出回路に送る。 第7図はコン1へロールプロセッサの命令デフ1−ダの
後処理部分の概酩ブロック図である。 コントロールプロセッサ101のための命令はパス66
7を介してスタック701にスタックされる。:のスタ
ック701はスタック管理回路702によってスタック
内の命令移行が管理されている。該命令移行動作は第6
図のフェイスジェネレータ607のBフェイズ出力信号
によって行わわる。該フェイズ信号はパス750を介し
、第7図の回路ブロックに送ら才lるものとする。セl
ツクタフ03は初期状態ではパス751を選択し、でい
るどする。従って、スタック70 ] :J−,の命令
けBフ工rブ11″f号に同期してスタック1−を移行
し、命令1ノジフタ704に格納さ41る。 命1= 1.′シフ97 CI 、4十の命令はテコ−
タフ05によ−、て解読さJI、ベクトル−1「1セツ
サ起動命令(FXVPi ベクトルプロセッサ状態チェ
ック開始命令(STVP)、オン、トびヘノノトル命令
と並t11τ実行τきる命令ど出来ない命令のIff界
を示す命令(11nT■Nn)どに分類さ才]る。 F X N、7 r’又はS T V rが解読さ11
だ場合、デコーダ7(15はスイソチンク回路706に
よって命令1ノジスタ704十の命令か第2命令Iノジ
スタ707t\移行するようにテータパスの接続を行う
よう制御する9第2命令1ノシスタ7071−の命令は
第2す1−タ゛708によ−〕てデコー1;され、べ′
ノドルーツ°「1セツサ102の起動又はチェック情報
が牛1+Qさ狛 パス75”4(Tlマ〕ノド信号どオ
ーダ又1」子−9信6を識別するため2重線で記述さ才
[ている)4介l、てベタトルーfr+セッサ102に
必要*、、!W示がろ゛さオ;ろ。二の1¥、テコ1−
夕705によ一、 −r Frr 7 n qが” l
”に七ノドされ、二の↑前傾かパス755を介し、て
セレクタ703に送られる。 一方、パス750を介し、て送られて来たB7エ、rズ
信号は第2フエ・rスジエネレータ710に入力さお、
Bフェイズをさらに分割したC、Dフエ、rスを生成す
る。C,D両フェイスは同時には生成さおない。ここで
1すCフェイズをスタック701」二の命令デコードに
使用し、Dフェイスを第2命令レジスタ707上のE
X V P又は5TVP命令のデコート処理に用いるも
のとする。今仮に第2命令レジスタ707にE X V
P命令が(8納されているとする。このときすでにF
F709け1′ビ′にセットさ汎て才jす、該FF70
9の出力はパス755を介し、てセレクタ703を動作
せしめ、パス752上のCフェイズ信号を選択し1てい
る。 一方、ベタ1〜ルプロセノサ+02に送られた起動又は
チェック情報は該ベクトルプロセッサ102に作用し5
.そのレスポンスがパス756を介してFF71]に送
ら第1る。ここではFF7]]のf直がLL D II
の場合、ベクトルプロセッサ指示が成功した二どを示し
,、1″″の場合失敗したてどを示すビする。FF7
1 1の値は比較回路71;)にトー1τ′″0″どJ
上申ンさ才する。 ーで′7′ー次の仮定を画く。セレ9タフ14け初期:
Ikfl?τ目パス753を;巽tRするどする,パス
75゛3にけI)7エ、、(ス信号か送I)、土lて来
るものとする。 !ヒdi’/回vII7 1 2 力出力はパス757
を介し、で。 n ”1 x 4ズ信号とA N D回部713で論理
積がどらt+.FF711の内容が0′″となー〕だ場
合でか−)n77、( スのとき、即ちE X V P
又けS T V P命令が実1:?さ4劃たタイミニ
ノブでFF709を″0′″にjl+・ノトオる一F
F 7 0 9が11 0 11にリセッ1へさ、lま
た場合、セ1ツクタフ03けパス751を再び選↑Hし
、、初期状態のようにB7エ、rズで命令のデコー1り
が行わオ(る− ニオ1に反し、AND回路713τ論
理積をどった結果,FF709か11セツトさi’L
l’i”、い40合 セ1〕))り703けパス75
2を選択[−、セ1ノテノタ714(土パス75コをI
I択する。即ち,C′7エイスでは命令スタック7 0
] −1−の命令移行か行わす」、111反のDフェ
イズでは第2命令レジスク7 07.1−(7]EXV
P又けS T V P命令処理か行わ才する。 Cフェイズ時、命令スタック701の命令けEXVP又
けS T V P命令を含まない。こわけベー′ノF・
ルプ「1セツサ102の起動を行った後に再び起動を行
ったり、直後にベクトルプロセッサ102の状態をチェ
ックする二とけ論理的に意味がないからである.もしE
X V Pによってベクトルプロセνす102の起動
を行い,数タイミング後に該ベクトルプロセッサ102
の状態を調べるような場合けS T V P命令の直前
にT3 0 U N r1命令を必要とする。この条件
の下に以下の説明が成立する二とになるー Cフェイズ時、デコーダ705け命令Iノジスタ7 0
4 11の命令を解読し、スイッチング回路706に
よって、パス758と759を接続する。従−〕で、C
フェイズでは命令は命令1ノジスタ704から第3命令
1ノジスタ715に移される。第3命令レジスタ715
j−の命令は上記の条件よりEXVPとST V P命
令は含まれない。第31ノジスタ7 1 5)1の命令
はデコーダ716によって解析さ− :1G− il.p,nTTNn命令の時に限りFF7 1 7が
′1″′じヤ・ソトさ:lする。FF7 1 7が′1
″′にセラ1へされる長二,パス760を介してセレク
タ7141オパス751”lど757を接続する。同時
にスタック管理回路702に命令の移行押上を指示する
。この処T!H ニより.T’lnTITrl命令が出
現し,た後,C, D7、x(スけ/111滅し,、B
7エイズで第2命令レジスタ707ヒのEXVP.ST
VP命令の実行が行わトろ。またFF7 1 7かパ1
”となった時点又はスタック管理回路702で命令スタ
ック701に新たへ・命令をスタックできなくなった時
点の画集(!Iの論理和がOR回路718でとI″Jわ
5命令送出抑+l−1’N示が一1ント・ロールプL1
セッ廿101の前段テ゛ー1ード回VfI(第6図)に
パス658を介して送1゛+ itろ,FF717のリ
セット−はベクトルプロセッサ102の1ノスポンプが
II n 11となるまで行われ内゛い、、該7+トソ
プフ「1ツブ717のリセットはAN D回路7]3の
出力にYリパス761を通して行わ4Iる。 一If、第;3命令1ノシスタ715J−の命令がB0
TJ N D命令以外の場合、FF717は゛′ビ′に
セットされず、当該Iノシスタ7151−の命令けCフ
ェイズタイミングでパス762上に送り出される。 パス762は汎用計算機と同様の命令デコード処理を行
うコントロールプロセッサ 回路に接続されている。 次に第8図乃至第10図を用いて,ページングプロセッ
サによる拡張記憶→主記憶データ転送動作についてη(
a明する。ページングプロセッサ107においては、局
所メモリ空間の部分集合の生成と再配置をローカルメモ
リとマーク1ノジスタを用いて行う。ローカルメモリと
は拡張記憶装置上のデータをロードする際、データを一
時的に保持するメモリのことであし)、二のローカルメ
モリー1−でセグメントのアクセスが局所的に連続にな
るようt二要素のならべ替えを行う作業領域の:とをい
う。 マークレジスタとはレジスタのビットが拡張記憶装置か
らロードしたデータの論理的な区切(たとえば語境界)
に対応し・、該区分がセグメントによってアクセス対象
となっている場合にマークレジスタの対応ビットが1″
′であり、アクセス対象でろ・い場合に” o ”とな
るデータ(以下このデータをマークという)を保持する
レジスタをいう。 第8図はページングプロセッサ107の拡張記憶装置へ
の11ク工スト生成部と読出されたデータをバッファリ
ングし,、マーク1ノジスタによる局所空間の再配置を
行う論理回路の概略ブロック図である。 第8図の論理回路が起動されると,パス850を介し7
てFF800に拡張記憶装置からロードすべきデータの
個数がセットさ1する。同時にパス851を介してカウ
ンタ801.802がリセットされ、カウンタ802に
は拡張記憶装置からロードする局所メモ+1空間の先頭
番地がセットされる。 カウンタ802け該先頭番地とFF803上の増分値を
毎クロツク加算し、、1ノジスタ823,パス853を
介し,て拡張記憶装置804ヘアドレスとして送る。第
8図には図面の簡約化のため、拡張記憶′JAW804
へ送る起動及び動作指示信号パスとそれに関する論理は
省かれている。 −39= カウンタ801はカウンタ802と同期し,て動作1,
、増分値けFF821によりII I IIにとら第1
ている。該カウンタ801の出力はレジスタ822を介
し7比較回路805によって毎夕,rユング後比較され
、FF800のロードすべきデータ数との一致がとられ
ると、カウンタ801.802のカウントアツプ抑止が
レジスタ824、パス852を介し、で行われる,この
抑止はパス851からリセット指示が来るまで解除され
ない。 拡張記憶装置804にパス853を介してリクエストと
アドレスが送られた後,拡張記憶装置804から数十タ
イミング後アドバンス信号がパス854を介し・て送ら
れ、続いて読出されたデータがパス855を介り,で送
られる。ここでは説明を簡約fヒし,ページングプロセ
ッサの動作の基本的部分を明確にするため次の仮定を置
くことにする。 1℃ 拡張記憶装置のタイミングはページングプロセ
ッサの4倍の周期である。 (2) 拡張記憶装置へのIJグエストに対するレス
ポンスデータ111けページングプロセッサの処理テ一
タ巾の4倍である。 (′11 第8図は拡張記憶装着のタイミングで動作
し。 でいるが、点線で囲まれた部分はページングプロセッサ
のタイミングで動作する。 論理回路810はページングプロセッサのタイミングで
作動するサイクルカウンタで,値を0。 1、2,3,O・・・・・・のように周期的にとり,こ
の値をパス8 5 6」二に送る。セレクタ811けパ
スR56 1−の信号l二よって制御され、拡張記憶装
置804からD−ドされて+?FB + 2〜815上
に保持されているデータを逐次i!!!tR L−、結
果をパス857」二に送る。 一方マークテータはパス860を介して送られ、FF8
] 6にいったんラッチされた後、スタック817に
送られる。スタック817では拡張記憶”Ji 置8
0 4からのデータアドバンスが来るまでマークデータ
が保持される。第8図では図面の簡慴化のため,スタッ
ク817け2段しか示されていない。パス851にアド
バンスか来た後、スタック817中のクークデータけF
F8 1 1’lに移されるaFF818上のマークデ
ータも又FFl’l I 2へ・8151のデータと同
様セレクタ819に十−]τ升4 ’7 II ソり
l:i!ltl’i!が行わわ、パス8611m送られ
る。このマークデータは論理回路1’120の入力とな
り、マークか1″′ならば′パス857−t:の信号を
加工せずにパス862−):に送る。もしマークかtr
(I IIならけ入力テータに関係なくパス862上
のデータを” 0”とする ここまでの処理によって、局所メモi1空間の部分集合
の再配置に関する準備が行われた二どになる。 第9図は第8図のパス862上のデータを、主記憶装置
に書込むため、mとびのアクセスを部分的に連続とする
ように一部のデータの順序を入替る処理を行い、かつ主
記憶装置の書込先のアト1ノスを生成する論理回路の概
略ブロック図である。 パス862上のデータは一度FF900にラッチされる
。次のタイミングでFF900のデータがパ0″″であ
るか否かのチェックが比較回路901でなされる。FF
900上のデータが170 IIでない時 パフ、!1
”、s 0.1−にバ11ノド信号か送り出され。 子−9が” n ”ろ・らげパス!180−ににバリッ
ドがjス出七11z、 論理回路902け、RAM書
込ポインタ!I n ’l、RAIV(読出ボ・rシタ
904、主記憶書i3ポrンタ905の作動と停車を制
御する管理回路τある8仮に管理回路1〕02のパス9
52 hの信号を・1ト込ポインタ個1作可どする。(
パス951(1パス!152,953,954の東線で
ある。)二の時、パス950トのバリフ1;信壮どパス
95′:!1・の許可信号けA N D回路906で論
理積がとt′I才j 井込ポインタ903のカラン1ヘ
アンプバリリドと九゛ろ 該カウントアツプバリッドか
生成さ11t−とき、書込ポ(ンタn03は、FF91
7の更新値によるカウントアツプを行い、RAM910
゜911の書込ア1〜lノスを牛T友する。RAM91
0 。 qll(士[1−カルメモリであり、次のように用い1
゛、狛ろ。 ・1−1 け
【゛めR/1.19]nか書込対象どな
る。 (2) 当該RAMに書込めなくなると、管理回路9
02けRAへ4911を書込に使用するようにスイツチ
ング回路912に作用し、データパスの接続を行う。 tl)J−記■によって書込先のスイッチングが行われ
た時、すでにデータの書込まれたRAM9]0け読出対
象のRA、 Mとなり5続出が可能になるようなテ゛−
タパスの接続がスイッチング回路912で行われる。 ■ 書込対象のR,AM911が書込めなくなると、項
番Q)と同様のRAMの切替が起る。 1)〜■のくりかえし・に於いて、第8図のFF818
のマークデータに゛0″が存在すると、書込ポインタ9
03の値の更新は、読出ポインタ904の値の更新より
も遅くなるが、書込読出RAMのバンクが異っているの
で両ポインタ間の比較は不要で、ある。RAM書込時、
書込バリッドが生成されるまで、書込対象データはFF
913に保持される。 ・ RAM910,911の読出は次のように行われる。管
理回路902によってパス952を介して読出ポインタ
904が起動されると、ページン=44− グー/’rlセソ什のタイミング毎に該ポインタはFF
918の値で更新される。このポインタ904の出力値
は直接RAM’910.911を読出すためには用いr
゛+ itず、RAM9 ] O,!111を読出すア
ト1ノスを生成するための表が格納されているRA M
914を引用するためのアト1ノスとし、て用いられる
。二二で1才RAM914をアクセフ、するための各信
号の1ノベル変換回路は全て省略されている、二のRA
M914の弓I用に、上るR、AM910ヌ目91]目
間1]イントによって、]、2,3゜4.5・・・ 順
のように第8図の拡張記憶装置804力臼)、読出され
たデータを、1.3’、2./l、5・・・・のように
順序を一部変更し、て請出すことができる。この操作に
よa)拡張記憶装置−1−の実メモリ空間の構造と局所
メモリ空間の構造を一致させないで、局所メモリ空間を
サグメン1〜対応に最適なFT市に変換する二とが可能
になる。RAM9141−の変換テーブルの値は第矩図
の論理回路が起動さオ鵞ろ前にパス゛955を通し、で
イニシャライズしてオンく必要がある。このようにして
読出されたデ−タは2書込先の主記憶装置を管理し、て
いる論理回路915によって、スイッチング回路916
に指示が句、えられ、適切なパス960又け961が選
択される。ここでパス960,961は主記憶装置10
4,105 (第1図参照)へのデータバスである。R
AM続出ポインタ904で値がRAM914のメモリ範
囲を越えた場合、その報告がパス968を介して管理回
路902に行われる。 主記憶装置のアドレスは次のようにして生成される。主
記憶書込ポインタ905は、第9図の論理回路が起動さ
れた時、主記憶書込開始アドレスデータ96Gを介して
、イニシャルセットされる。 RAM続出ポインタ904が管理回路902によって起
動されるタイミンクと同期して、主記憶書込ポインタ9
05はFF9 + 9の値に従ってカウントアツプされ
る。生成された書込アドレスは。 レジスタ922.パス967を介し、てスイッチング回
路916に送られ、それぞれ対応する主記憶装置104
あるいは105ヘパス962.963を介して送られる
。ポインタ904と905け管理回路!″lO2を介り
、で同期し、て作動し、ている。 第10図はセグメントがアクセスし、f8−いメモリ空
間を主記憶装置10・1.105に格納するための論理
に関オろ概呻ブロック図である。 第8図のパス8571−のデータは第10図のFFIn
n11にラッチされる。第10図にオンいて、論理回路
1002は’R,A N、y書込ポインタ+003゜R
AM読読出ポインツタ1004主記憶書込ポインタ10
05の起動停止を制御する管理回路である。 初期状態では各ポインタは全てカウントアツプ可能ろ・
状態どする。FF100Oにデータがセラ1〜さ才1ろ
時、書込ポイ〕ツタカウントアツプのためのバリッド信
号かパス9804こに送出されている。 該z<リッド信号とパスI O521=のカウントアツ
プ可信吐けAND回路1008で論理積がとらh 、書
込カウンタ1003に入力される。同時に管理回路10
02けRAM I OI O又は1011に対15てデ
ータ書込可能なようにスイッチング回路100Gに作用
し、データパス1055と書込対象のRA Mどの接続
を行う。FFl0f’)1は」ニー・17− 記の処理のためのデータの保持に置かれている。 2つのRAMl0IO,If)11の使用法は前述のセ
グメントアクセスの行われる局所メモリ空間の場合と同
様である。 RAM読出ポインタ1004の起動は管理回路1002
からパス】051を介して行われ、すでに書込まれてい
るRAMの続出アドレスを生成する。該続出アドレスは
レジスタ1056を経てスイッチング回路1006を介
し、てRAM1.0IOあるいは+011をアへセスす
る。RAMl0IOあるいは1011から読出されたデ
ータはスイッチ:ノブ回路1007によって、データを
書込むべき主記憶装置+04あるいは105ヘパス10
60又は1061を介して送られる。データを書込む主
記憶アドレスは書込ポインタ1005によって生成され
る。該ポインタは管理回路1002によって起動される
が、カウントアツプを開始する以前にパス1057を介
し・て、データを格納すべき主記憶装置上の領域の先頭
番地をセットしておく必要がある。主記憶装置書込ポイ
ンタ1005けRA M if?、出ポ、インタ100
4ど同期し、て作動
る。 (2) 当該RAMに書込めなくなると、管理回路9
02けRAへ4911を書込に使用するようにスイツチ
ング回路912に作用し、データパスの接続を行う。 tl)J−記■によって書込先のスイッチングが行われ
た時、すでにデータの書込まれたRAM9]0け読出対
象のRA、 Mとなり5続出が可能になるようなテ゛−
タパスの接続がスイッチング回路912で行われる。 ■ 書込対象のR,AM911が書込めなくなると、項
番Q)と同様のRAMの切替が起る。 1)〜■のくりかえし・に於いて、第8図のFF818
のマークデータに゛0″が存在すると、書込ポインタ9
03の値の更新は、読出ポインタ904の値の更新より
も遅くなるが、書込読出RAMのバンクが異っているの
で両ポインタ間の比較は不要で、ある。RAM書込時、
書込バリッドが生成されるまで、書込対象データはFF
913に保持される。 ・ RAM910,911の読出は次のように行われる。管
理回路902によってパス952を介して読出ポインタ
904が起動されると、ページン=44− グー/’rlセソ什のタイミング毎に該ポインタはFF
918の値で更新される。このポインタ904の出力値
は直接RAM’910.911を読出すためには用いr
゛+ itず、RAM9 ] O,!111を読出すア
ト1ノスを生成するための表が格納されているRA M
914を引用するためのアト1ノスとし、て用いられる
。二二で1才RAM914をアクセフ、するための各信
号の1ノベル変換回路は全て省略されている、二のRA
M914の弓I用に、上るR、AM910ヌ目91]目
間1]イントによって、]、2,3゜4.5・・・ 順
のように第8図の拡張記憶装置804力臼)、読出され
たデータを、1.3’、2./l、5・・・・のように
順序を一部変更し、て請出すことができる。この操作に
よa)拡張記憶装置−1−の実メモリ空間の構造と局所
メモリ空間の構造を一致させないで、局所メモリ空間を
サグメン1〜対応に最適なFT市に変換する二とが可能
になる。RAM9141−の変換テーブルの値は第矩図
の論理回路が起動さオ鵞ろ前にパス゛955を通し、で
イニシャライズしてオンく必要がある。このようにして
読出されたデ−タは2書込先の主記憶装置を管理し、て
いる論理回路915によって、スイッチング回路916
に指示が句、えられ、適切なパス960又け961が選
択される。ここでパス960,961は主記憶装置10
4,105 (第1図参照)へのデータバスである。R
AM続出ポインタ904で値がRAM914のメモリ範
囲を越えた場合、その報告がパス968を介して管理回
路902に行われる。 主記憶装置のアドレスは次のようにして生成される。主
記憶書込ポインタ905は、第9図の論理回路が起動さ
れた時、主記憶書込開始アドレスデータ96Gを介して
、イニシャルセットされる。 RAM続出ポインタ904が管理回路902によって起
動されるタイミンクと同期して、主記憶書込ポインタ9
05はFF9 + 9の値に従ってカウントアツプされ
る。生成された書込アドレスは。 レジスタ922.パス967を介し、てスイッチング回
路916に送られ、それぞれ対応する主記憶装置104
あるいは105ヘパス962.963を介して送られる
。ポインタ904と905け管理回路!″lO2を介り
、で同期し、て作動し、ている。 第10図はセグメントがアクセスし、f8−いメモリ空
間を主記憶装置10・1.105に格納するための論理
に関オろ概呻ブロック図である。 第8図のパス8571−のデータは第10図のFFIn
n11にラッチされる。第10図にオンいて、論理回路
1002は’R,A N、y書込ポインタ+003゜R
AM読読出ポインツタ1004主記憶書込ポインタ10
05の起動停止を制御する管理回路である。 初期状態では各ポインタは全てカウントアツプ可能ろ・
状態どする。FF100Oにデータがセラ1〜さ才1ろ
時、書込ポイ〕ツタカウントアツプのためのバリッド信
号かパス9804こに送出されている。 該z<リッド信号とパスI O521=のカウントアツ
プ可信吐けAND回路1008で論理積がとらh 、書
込カウンタ1003に入力される。同時に管理回路10
02けRAM I OI O又は1011に対15てデ
ータ書込可能なようにスイッチング回路100Gに作用
し、データパス1055と書込対象のRA Mどの接続
を行う。FFl0f’)1は」ニー・17− 記の処理のためのデータの保持に置かれている。 2つのRAMl0IO,If)11の使用法は前述のセ
グメントアクセスの行われる局所メモリ空間の場合と同
様である。 RAM読出ポインタ1004の起動は管理回路1002
からパス】051を介して行われ、すでに書込まれてい
るRAMの続出アドレスを生成する。該続出アドレスは
レジスタ1056を経てスイッチング回路1006を介
し、てRAM1.0IOあるいは+011をアへセスす
る。RAMl0IOあるいは1011から読出されたデ
ータはスイッチ:ノブ回路1007によって、データを
書込むべき主記憶装置+04あるいは105ヘパス10
60又は1061を介して送られる。データを書込む主
記憶アドレスは書込ポインタ1005によって生成され
る。該ポインタは管理回路1002によって起動される
が、カウントアツプを開始する以前にパス1057を介
し・て、データを格納すべき主記憶装置上の領域の先頭
番地をセットしておく必要がある。主記憶装置書込ポイ
ンタ1005けRA M if?、出ポ、インタ100
4ど同期し、て作動
【−・ている、生成された主記憶書
込アト1ノスはレジスタI n + 7.パス1058
を通ってス・(ツチング回路1007に送l二、オl、
十記憶装置10/l、105の書込読11−を管理し、
でいる管理回路915(第9図)に上って、書込先の主
記憶装置が選択され、パス1062又け1063上にア
ドレスデータどり、で送り出さ才する。 次にページジングプロセッサの主起憶装り上の局所ス干
II空間の拡張記憶装置へのストア動作に−)いて、第
11図、第12図を用いてi+h明する。 第11図は局所メモリ空間内のセグメン1へで参照さ才
jろ部分集合内のデータのならべ替えを行う部分の[略
ブ[lツク図である。第11図において、主記憶装置1
04あるいけ+05から読出されたデータは、該データ
の有効性を示すバリッド信号とともにそi+ぞわパス1
152.1150又は1153.1151を経由し、て
スイッチング回路1102又け1101の入力となる。 −jf、ページングブロセノサが現在アクセスを行って
いる主記憶装置の番号を管理する論理回路1100があ
る。 該管理回路1100の内容はパス1154を介してスイ
ッチング回路1101.1102に作用し5、ページン
グプロセッサのアクセスし7ている側の主記憶装置との
データバスの結合を行う。この結合によって5バリッド
信号はパス]]55.J−に、データはパス1159ト
に送出される。論理回vfS]104.1105はそt
ぞtl、 RA M書込ポインタ、読出ポインタである
。こわらのポインタは管理回路1106によってパス1
156.1157を介し・で制御される。初期状態では
ポインタ1104はカウントアツプ可能状態即ち、パス
+157−1の信号値が″ビ′とする。:のときパスl
l 554二のバリッド信号け、へNn回路1103
で論理積がと#)れ、RAM書込ポインタ1104をF
FIIIGの値に従ってカウント・アップする、この動
作によ11、主記憶装置からのデータの到着と同期し7
てR’A M書込アトIノスが生成される。 第11図において、1110と1111はRAMを示す
。この2つの’RAMの使用法は第9図におけるRAM
n 10と911と同様であって、管理回FIR+ 1
06によるスイッチング回路1112゜1113へのパ
ス結合指示によって、R,AM+110.1111のど
ちらか一方が書込に用いられ。 他方か読出に用いられる。該当RAM への書込が終了
すると、管理回路1106け読出ポインタ1105を起
動する。該ポインタ+105はFF1117の値に従っ
て毎クロックカウントアツプされるか、このポインタの
出力はレジスタ1120を介り、、RAM]]14を引
用するためのアドレスと6・ろ。RAM +、 ] ]
/lを引用し、た結果は、読出対象どなっているR
A F14即ち1110又は1111のア1くレスとな
る。二の間接的なアドレス生成により、局所空間内での
データのならべ替えをRAMの記憶容量の範囲で行うこ
とができる。このようにし、てデータのならべ替えを行
った結果はパス116(ml−に送出さ才lろ。一方読
出ポインタ1105の内容のカウントアツプ毎にバリッ
ド信号がパス+1611−に送出される。該読出バリッ
ドけFF]I5で必要な遅延処理が行われた後パス11
621上に送出される。 以上の処理は、局所、メモリ空間内のセグメント・がア
クセスを行う部分集合について成立する。セグメントの
アクセスが行われない部分集合については、読出ポイン
タ1105の値が直接RAM1110.1111の読出
アドレスとなるような論理回路によって主記憶装置の読
出が行われる。この部分はRAMl11/1部分を除い
て第11図と同じ、なので省略されている。 このようにして、主記憶装置から請出したデータとバリ
ッドは、次の論理回路においてセグメントアクセスを行
う部分集合と行わない集合との併合処理が行われる。こ
の時、2つの部分集合を主記憶装置から読出す際、同し
ピッチで読出すと、セグメントアクセスがどちらか一方
の部分集合に片よっている場合、遅いピッチの読出デー
タが次段の論理回路内でぶつかりを生ずる。このため主
記憶装置からの局所メモリ空間の続出を次段の論理回路
の正常動作のために制御する必要がある。 このために設けられているのがパス1170である。二
のパスI+70..I−に有意な指示即ち主記憶装置か
らの続出を一時中断するような要求が来た場合、二の指
示は主記憶装置の読出論理回路の動作を中断させるとと
もに、ポインタ管理回路1106に作用し1、パス11
58.] 157.1156を介17て書込、続出ポイ
ンタの動作を中断させる。 第12図は第11図によって生成された読出バ11ツド
とデータ信号を貯え、ページングプロセッサと拡張記憶
装置とのタイミングの相異の一致をとるとどもに、マー
ク1ノジスタを使用してセグメ:ノl−7クセスの有無
によって局所メモリ空間の部分集合の再配置を行った操
作の逆操作を行う論理回路の慨酩ブロック図である。 第12図によ1いて、パス] 162上のバリッド信呼
はスタック管理回路1200に入力される。 該スタック管理回路1200は、データスタック120
2内のデータ移行をバリッド信号の到着によって管理し
、でいる。ここではスタック管理回路1200とスタッ
ク1202を局所メモリ空間の部分集合のうち、セグメ
ン1へアクセスか行われる部分の読出に関するものとす
る。同様にスタック管理回路1201とスタック120
3をセグメントアクセスの行われない部分の読出に関す
るものとする。 第12図において、マークデータはパス1250を介し
てスタック1204にいったんラッチされ、後にマーク
レジスタ1205に格納される。 サイクリックカウンタ1206はこのマークレジスタ1
205を順次引用し、1202又は1203のどちらの
スタックからのデータを引用すべきかを決定する。この
引用情報はパス1251を経由して、スタック管理回路
1200,1201、スイッチング回路1207に伝え
られる。スタック1202.1203に入るデータのピ
ッチと。 その引用ピッチは同期していないので、スタックが一杯
になることが起りうる。この時、管理回路+200.1
.201はパス1170又は1252を介してデータを
送出している論理回路に送出の中断を指示する。 スイッチング回路1207によって選択されたデータは
スタック1209に格納される。該スタック1209内
のデータの移行を管理する回路が第2スタック管理回路
1208である。この管理回路1208は、スイッチン
タ゛回路1207から送出されるパス+ 253、−.
1−のバリッド信号によってスタツイノ+ 209−ヒ
のデータの移行を管理するとIt、に、バリッドが4個
分受信し、で、スタック1209が・杯にろ・ろと、ノ
、タック内の全データを同時に1ノジスタ1210へ移
行させる。このバリッドを4す−)管理するのけ、ベー
シングプロセッサのタイミングが拡張記憶装置のそれの
1/4同期であることから来ている。 −・方スイッチン9回路1207からパス12531−
に出力さ才lているバリン1へ信号は、サイクル力1ノ
ンタ1211によって1/4のバリッドに減しIE、れ
パス+ 254、.11に送出されろ。このパスI25
/1.1−のバリン1−けレジスタ1210にデータ
がセソ1〜されろ夕・rミンクに同期し2ている。それ
故、拡張記憶装置に1ノジスタ1210の出力をそのま
まデータとして送出することができる。 次に前述のページングプロセッサの説明で用いられてい
る局所メモリ空間における部分集合再配置とセグメント
アクセスの有無の関係、論理回路にデータとして与えら
れるマークデータ、データの順序入替のためのRAM
(たとえば第9図のRAM914)の初期情報l二つい
て説明する。これらの情報は本発明のベクトル処理装置
上で動作させられるソフトウェアに関するものであるが
、第8図乃至第12図の論理回路動作に密接に関連して
いるのでここで説明する。 プログラムはセグメント化された直後、局所メモリ空間
は第13図aのような構成になっている。 第13図aにおいて、各部分集合A、B、Cはそれぞれ
連続アクセスを行うステーメントのデータ、2とびの非
連続アクセスを行うステートメントのデータ、連続と2
とびの両方のアクセスを行うステーメントの部分集合と
する。この局所メモリ空間を最適に構成するために次の
ような操作を行う。 ■ 部分集合は拡張記憶装置からそのまま主記憶装置へ
子′−タ転送を行う。 QI 量分焦合Bは、セグメントでデータ処理を行う
ために必要な部分とそうでない部分とが交互に存在[て
いる。従って、1,0,1.O・・・・又けO,I、n
、] ・・・・のよう内・パターンのマークデータを
用意すオ+lf、Re台をセグメントアクセス、の行わ
れるB1集合と、7クセスの行わt’L Pa:いB7
集合とに分離する二とができる。 項番中どの相異は、このマークデータのみで他のデータ
たとえば拡張記憶装置又は主記憶装置上の読出又は書込
の先頭番地の管理については同様の処理でよい。この時
、B、集合はB、沖合の直後に置く。この部分集合の再
配置によって、2どびの非連続アクセスが連続アクセス
に変る。てtlけブ[1グラム自身の修正を意味する。 このような場合も、先に説明したように、プロツノラム
自身を修正し7てベクトル処理を行う:ことが1本発明
のベクトル処理装置では可能である。 tg+ 部分集合Cはベタ1〜ル処理の特徴である、
演算順序を入替えても結果が変わらないことを利用して
、2の剰余かOであるデータと1であろ子−夕を対にI
−てfJ′らへろような主記憶構成どする。二の上うな
集合をC′で表示する。例を、+7】げろど I、3,
2,4.5,7,6,8゜のような番地づけの主記憶装
置1−の部分集合かぞJlに11する。この、ような番
地−5げにより2どびの非連続7′ノセスは常に非連続
なのではなく部分的に連続とね・る。ての構成の主記憶
装置に対し、ては非連続7リセスのプログラム部を項番
l四重と同K(n正する必要がある。ただし連続ア′ノ
セスめプ「1ゲ→ム部分については修正の必要か7’、
、い。 1・記のクロき番地っけを行った局所メモリ空間を生成
するには5たどえげ第9図のRA M 911にl、3
,2,4.・・・のようなデータ(アドレス)をセット
−すればよい。 以トのようにし、て再構成された局所メモリ空間の概要
を第13図すに示す。マークデー勺お上びデータ順序入
替データは、それらをセノ1へするようろ・命令をコン
1へロールプロセッサに設置−1乙、Lつな1段で実現
する二とかできろ。 次に−lント「1−ルブロセソサ士jよびベタ1−ル−
j11セツサの主記憶装置に対するり[1ケーシヨ゛)
に−)いr説明オろ9局所゛メモリ空間の再構成tN行
h f+’lけ41;↑ リ[1ケーシヨンは各セグメ
ンI・(rn、 111甲(、”fに ・笛的に定−冷
さ才1、各プロセッサか’:+ (hlj p)ニスド
ア1・1ノフ、に定数を加算すれは、目的どする1f記
憶装百1−のアト1ノスを求めるこ1・かできる−局所
′メモリ空間の再構成を行った!4合て11.第13図
1)の上うに部分集合の境界4変え/I・い範囲てあl
′L、 tl、局所メモリ空間の再1清1ノ(をtrわ
ろ・い場合ど同様ち・リロケーション処理々を斤うてと
かできる。 r発明の効qシ〕 本発明にkttば、拡張記憶装置の容量ど同1ご寸−タ
のメモ11空間を必要とする大規模なプロ′ノ→ノ、の
べ′ノ1〜ル処理が可能となる。拡張記憶゛(に開目)
τ記憶ヤi[ご上りも遅いサイクルタ(ムのメモ1j素
了てtlW 1+9可能であ−って、大容鼠の上記憶装
間を・\コ、7トルクル理装置に実装するよりも経済的
に有利になる。拡張記憶装置のサイクルタイムの遅いメ
モリ素子採用によるデータ転送速度の低下は、ページン
グプロセッサの処理に上り拡張記憶装置へのアクセスを
連続アクセスとする二と1士ンよびデータ転送11を大
きくとりインタリーブ数を多くとることにより、該デー
タ転送速度の低下を補うことができる。 複数の主記憶装置を具備することによる経済的不利は、
現在の科学技術計算の実務から予測する限り無視できる
。すなわち、2次元又は3次元測微分方程式を解く場合
、有限要素法などで離散化する際、104オーダの節点
をとる二とが多い。このときデータlJを4〜8Bとす
ると、作業配列を使用し7たとし、ても、160Kr3
オーダのメモリで1つのDo処理を行うことができる。 1セグメントを数個のDO処理とし。 各配列間で共通に使用する配列がない場合を仮定しても
1つの主記憶装置は2MB以下で十分である。こトに対
し1、拡張記憶装置は数百MBのオーダであるから、容
量的には主記憶装置け拡張記憶装置の10−2のオーダ
である。従って複数の主記憶装置をベクトル処理装置に
実装する経済的損失は無視し、うる。 本発明のベタ1ヘル処理装置では、コン1−ロールプ[
1セソ什、ベタ1−ルプロセッ什、ページン9′プロセ
ッサを並行し、て動作させるための種々の命令か定着で
き、かつ、その命令の制御をハードウェアで行うので、
3種部のプロセッサをMi列作動させるためのロスタイ
ムは罹小化される。
込アト1ノスはレジスタI n + 7.パス1058
を通ってス・(ツチング回路1007に送l二、オl、
十記憶装置10/l、105の書込読11−を管理し、
でいる管理回路915(第9図)に上って、書込先の主
記憶装置が選択され、パス1062又け1063上にア
ドレスデータどり、で送り出さ才する。 次にページジングプロセッサの主起憶装り上の局所ス干
II空間の拡張記憶装置へのストア動作に−)いて、第
11図、第12図を用いてi+h明する。 第11図は局所メモリ空間内のセグメン1へで参照さ才
jろ部分集合内のデータのならべ替えを行う部分の[略
ブ[lツク図である。第11図において、主記憶装置1
04あるいけ+05から読出されたデータは、該データ
の有効性を示すバリッド信号とともにそi+ぞわパス1
152.1150又は1153.1151を経由し、て
スイッチング回路1102又け1101の入力となる。 −jf、ページングブロセノサが現在アクセスを行って
いる主記憶装置の番号を管理する論理回路1100があ
る。 該管理回路1100の内容はパス1154を介してスイ
ッチング回路1101.1102に作用し5、ページン
グプロセッサのアクセスし7ている側の主記憶装置との
データバスの結合を行う。この結合によって5バリッド
信号はパス]]55.J−に、データはパス1159ト
に送出される。論理回vfS]104.1105はそt
ぞtl、 RA M書込ポインタ、読出ポインタである
。こわらのポインタは管理回路1106によってパス1
156.1157を介し・で制御される。初期状態では
ポインタ1104はカウントアツプ可能状態即ち、パス
+157−1の信号値が″ビ′とする。:のときパスl
l 554二のバリッド信号け、へNn回路1103
で論理積がと#)れ、RAM書込ポインタ1104をF
FIIIGの値に従ってカウント・アップする、この動
作によ11、主記憶装置からのデータの到着と同期し7
てR’A M書込アトIノスが生成される。 第11図において、1110と1111はRAMを示す
。この2つの’RAMの使用法は第9図におけるRAM
n 10と911と同様であって、管理回FIR+ 1
06によるスイッチング回路1112゜1113へのパ
ス結合指示によって、R,AM+110.1111のど
ちらか一方が書込に用いられ。 他方か読出に用いられる。該当RAM への書込が終了
すると、管理回路1106け読出ポインタ1105を起
動する。該ポインタ+105はFF1117の値に従っ
て毎クロックカウントアツプされるか、このポインタの
出力はレジスタ1120を介り、、RAM]]14を引
用するためのアドレスと6・ろ。RAM +、 ] ]
/lを引用し、た結果は、読出対象どなっているR
A F14即ち1110又は1111のア1くレスとな
る。二の間接的なアドレス生成により、局所空間内での
データのならべ替えをRAMの記憶容量の範囲で行うこ
とができる。このようにし、てデータのならべ替えを行
った結果はパス116(ml−に送出さ才lろ。一方読
出ポインタ1105の内容のカウントアツプ毎にバリッ
ド信号がパス+1611−に送出される。該読出バリッ
ドけFF]I5で必要な遅延処理が行われた後パス11
621上に送出される。 以上の処理は、局所、メモリ空間内のセグメント・がア
クセスを行う部分集合について成立する。セグメントの
アクセスが行われない部分集合については、読出ポイン
タ1105の値が直接RAM1110.1111の読出
アドレスとなるような論理回路によって主記憶装置の読
出が行われる。この部分はRAMl11/1部分を除い
て第11図と同じ、なので省略されている。 このようにして、主記憶装置から請出したデータとバリ
ッドは、次の論理回路においてセグメントアクセスを行
う部分集合と行わない集合との併合処理が行われる。こ
の時、2つの部分集合を主記憶装置から読出す際、同し
ピッチで読出すと、セグメントアクセスがどちらか一方
の部分集合に片よっている場合、遅いピッチの読出デー
タが次段の論理回路内でぶつかりを生ずる。このため主
記憶装置からの局所メモリ空間の続出を次段の論理回路
の正常動作のために制御する必要がある。 このために設けられているのがパス1170である。二
のパスI+70..I−に有意な指示即ち主記憶装置か
らの続出を一時中断するような要求が来た場合、二の指
示は主記憶装置の読出論理回路の動作を中断させるとと
もに、ポインタ管理回路1106に作用し1、パス11
58.] 157.1156を介17て書込、続出ポイ
ンタの動作を中断させる。 第12図は第11図によって生成された読出バ11ツド
とデータ信号を貯え、ページングプロセッサと拡張記憶
装置とのタイミングの相異の一致をとるとどもに、マー
ク1ノジスタを使用してセグメ:ノl−7クセスの有無
によって局所メモリ空間の部分集合の再配置を行った操
作の逆操作を行う論理回路の慨酩ブロック図である。 第12図によ1いて、パス] 162上のバリッド信呼
はスタック管理回路1200に入力される。 該スタック管理回路1200は、データスタック120
2内のデータ移行をバリッド信号の到着によって管理し
、でいる。ここではスタック管理回路1200とスタッ
ク1202を局所メモリ空間の部分集合のうち、セグメ
ン1へアクセスか行われる部分の読出に関するものとす
る。同様にスタック管理回路1201とスタック120
3をセグメントアクセスの行われない部分の読出に関す
るものとする。 第12図において、マークデータはパス1250を介し
てスタック1204にいったんラッチされ、後にマーク
レジスタ1205に格納される。 サイクリックカウンタ1206はこのマークレジスタ1
205を順次引用し、1202又は1203のどちらの
スタックからのデータを引用すべきかを決定する。この
引用情報はパス1251を経由して、スタック管理回路
1200,1201、スイッチング回路1207に伝え
られる。スタック1202.1203に入るデータのピ
ッチと。 その引用ピッチは同期していないので、スタックが一杯
になることが起りうる。この時、管理回路+200.1
.201はパス1170又は1252を介してデータを
送出している論理回路に送出の中断を指示する。 スイッチング回路1207によって選択されたデータは
スタック1209に格納される。該スタック1209内
のデータの移行を管理する回路が第2スタック管理回路
1208である。この管理回路1208は、スイッチン
タ゛回路1207から送出されるパス+ 253、−.
1−のバリッド信号によってスタツイノ+ 209−ヒ
のデータの移行を管理するとIt、に、バリッドが4個
分受信し、で、スタック1209が・杯にろ・ろと、ノ
、タック内の全データを同時に1ノジスタ1210へ移
行させる。このバリッドを4す−)管理するのけ、ベー
シングプロセッサのタイミングが拡張記憶装置のそれの
1/4同期であることから来ている。 −・方スイッチン9回路1207からパス12531−
に出力さ才lているバリン1へ信号は、サイクル力1ノ
ンタ1211によって1/4のバリッドに減しIE、れ
パス+ 254、.11に送出されろ。このパスI25
/1.1−のバリン1−けレジスタ1210にデータ
がセソ1〜されろ夕・rミンクに同期し2ている。それ
故、拡張記憶装置に1ノジスタ1210の出力をそのま
まデータとして送出することができる。 次に前述のページングプロセッサの説明で用いられてい
る局所メモリ空間における部分集合再配置とセグメント
アクセスの有無の関係、論理回路にデータとして与えら
れるマークデータ、データの順序入替のためのRAM
(たとえば第9図のRAM914)の初期情報l二つい
て説明する。これらの情報は本発明のベクトル処理装置
上で動作させられるソフトウェアに関するものであるが
、第8図乃至第12図の論理回路動作に密接に関連して
いるのでここで説明する。 プログラムはセグメント化された直後、局所メモリ空間
は第13図aのような構成になっている。 第13図aにおいて、各部分集合A、B、Cはそれぞれ
連続アクセスを行うステーメントのデータ、2とびの非
連続アクセスを行うステートメントのデータ、連続と2
とびの両方のアクセスを行うステーメントの部分集合と
する。この局所メモリ空間を最適に構成するために次の
ような操作を行う。 ■ 部分集合は拡張記憶装置からそのまま主記憶装置へ
子′−タ転送を行う。 QI 量分焦合Bは、セグメントでデータ処理を行う
ために必要な部分とそうでない部分とが交互に存在[て
いる。従って、1,0,1.O・・・・又けO,I、n
、] ・・・・のよう内・パターンのマークデータを
用意すオ+lf、Re台をセグメントアクセス、の行わ
れるB1集合と、7クセスの行わt’L Pa:いB7
集合とに分離する二とができる。 項番中どの相異は、このマークデータのみで他のデータ
たとえば拡張記憶装置又は主記憶装置上の読出又は書込
の先頭番地の管理については同様の処理でよい。この時
、B、集合はB、沖合の直後に置く。この部分集合の再
配置によって、2どびの非連続アクセスが連続アクセス
に変る。てtlけブ[1グラム自身の修正を意味する。 このような場合も、先に説明したように、プロツノラム
自身を修正し7てベクトル処理を行う:ことが1本発明
のベクトル処理装置では可能である。 tg+ 部分集合Cはベタ1〜ル処理の特徴である、
演算順序を入替えても結果が変わらないことを利用して
、2の剰余かOであるデータと1であろ子−夕を対にI
−てfJ′らへろような主記憶構成どする。二の上うな
集合をC′で表示する。例を、+7】げろど I、3,
2,4.5,7,6,8゜のような番地づけの主記憶装
置1−の部分集合かぞJlに11する。この、ような番
地−5げにより2どびの非連続7′ノセスは常に非連続
なのではなく部分的に連続とね・る。ての構成の主記憶
装置に対し、ては非連続7リセスのプログラム部を項番
l四重と同K(n正する必要がある。ただし連続ア′ノ
セスめプ「1ゲ→ム部分については修正の必要か7’、
、い。 1・記のクロき番地っけを行った局所メモリ空間を生成
するには5たどえげ第9図のRA M 911にl、3
,2,4.・・・のようなデータ(アドレス)をセット
−すればよい。 以トのようにし、て再構成された局所メモリ空間の概要
を第13図すに示す。マークデー勺お上びデータ順序入
替データは、それらをセノ1へするようろ・命令をコン
1へロールプロセッサに設置−1乙、Lつな1段で実現
する二とかできろ。 次に−lント「1−ルブロセソサ士jよびベタ1−ル−
j11セツサの主記憶装置に対するり[1ケーシヨ゛)
に−)いr説明オろ9局所゛メモリ空間の再構成tN行
h f+’lけ41;↑ リ[1ケーシヨンは各セグメ
ンI・(rn、 111甲(、”fに ・笛的に定−冷
さ才1、各プロセッサか’:+ (hlj p)ニスド
ア1・1ノフ、に定数を加算すれは、目的どする1f記
憶装百1−のアト1ノスを求めるこ1・かできる−局所
′メモリ空間の再構成を行った!4合て11.第13図
1)の上うに部分集合の境界4変え/I・い範囲てあl
′L、 tl、局所メモリ空間の再1清1ノ(をtrわ
ろ・い場合ど同様ち・リロケーション処理々を斤うてと
かできる。 r発明の効qシ〕 本発明にkttば、拡張記憶装置の容量ど同1ご寸−タ
のメモ11空間を必要とする大規模なプロ′ノ→ノ、の
べ′ノ1〜ル処理が可能となる。拡張記憶゛(に開目)
τ記憶ヤi[ご上りも遅いサイクルタ(ムのメモ1j素
了てtlW 1+9可能であ−って、大容鼠の上記憶装
間を・\コ、7トルクル理装置に実装するよりも経済的
に有利になる。拡張記憶装置のサイクルタイムの遅いメ
モリ素子採用によるデータ転送速度の低下は、ページン
グプロセッサの処理に上り拡張記憶装置へのアクセスを
連続アクセスとする二と1士ンよびデータ転送11を大
きくとりインタリーブ数を多くとることにより、該デー
タ転送速度の低下を補うことができる。 複数の主記憶装置を具備することによる経済的不利は、
現在の科学技術計算の実務から予測する限り無視できる
。すなわち、2次元又は3次元測微分方程式を解く場合
、有限要素法などで離散化する際、104オーダの節点
をとる二とが多い。このときデータlJを4〜8Bとす
ると、作業配列を使用し7たとし、ても、160Kr3
オーダのメモリで1つのDo処理を行うことができる。 1セグメントを数個のDO処理とし。 各配列間で共通に使用する配列がない場合を仮定しても
1つの主記憶装置は2MB以下で十分である。こトに対
し1、拡張記憶装置は数百MBのオーダであるから、容
量的には主記憶装置け拡張記憶装置の10−2のオーダ
である。従って複数の主記憶装置をベクトル処理装置に
実装する経済的損失は無視し、うる。 本発明のベタ1ヘル処理装置では、コン1−ロールプ[
1セソ什、ベタ1−ルプロセッ什、ページン9′プロセ
ッサを並行し、て動作させるための種々の命令か定着で
き、かつ、その命令の制御をハードウェアで行うので、
3種部のプロセッサをMi列作動させるためのロスタイ
ムは罹小化される。
第1図は本発明に係るベクトル処理装置の概略ブ「1ツ
ク図、第2図はブロクラムの概略構成図。 第3図はペッツトル処理プログラムの概略構成図、第4
図はベーシング、コントロール両プロセッサの小娘動作
図、第5図はベクトル処理プログラムの最適11″、概
念図、第6図はコン1〜〇−ルプ「1セツ廿の第1段目
のテコ1−1回路のブロック図、第7図はコントロール
プロセッサの第2段目のテコ=1・回路のブロック図、
第8図はページンクプロセノせのrl−1・(1(能〕
r1ツク図、第9図、第10図はページ゛ツターj′ロ
セッ什の局所メモリ空間に対する編集機能ブ「1ノ))
図、第11図はペーシングブ「1セノ什のストア動作の
第1段論理のブロック図、第)2図11同フ、1〜7重
)】作の第2段論理のブ「1ノ9図、第13図は局所メ
モリ空間概念図′r−ある、I n I−XIント[1
−ルプ「Iセラ什、 102ベグj・ルプ「1セツサ
、 +03.106 スrノチング回路、 +
04,105 主記憶装置。 107 ベージソ′Jプロセッサ、 108・1広張
記憶装置 109 主記憶装置。 ゛・′1図 21) I 嘱4図 一ノ 第 5 久 第12図 第 13j”1 久 t
ク図、第2図はブロクラムの概略構成図。 第3図はペッツトル処理プログラムの概略構成図、第4
図はベーシング、コントロール両プロセッサの小娘動作
図、第5図はベクトル処理プログラムの最適11″、概
念図、第6図はコン1〜〇−ルプ「1セツ廿の第1段目
のテコ1−1回路のブロック図、第7図はコントロール
プロセッサの第2段目のテコ=1・回路のブロック図、
第8図はページンクプロセノせのrl−1・(1(能〕
r1ツク図、第9図、第10図はページ゛ツターj′ロ
セッ什の局所メモリ空間に対する編集機能ブ「1ノ))
図、第11図はペーシングブ「1セノ什のストア動作の
第1段論理のブロック図、第)2図11同フ、1〜7重
)】作の第2段論理のブ「1ノ9図、第13図は局所メ
モリ空間概念図′r−ある、I n I−XIント[1
−ルプ「Iセラ什、 102ベグj・ルプ「1セツサ
、 +03.106 スrノチング回路、 +
04,105 主記憶装置。 107 ベージソ′Jプロセッサ、 108・1広張
記憶装置 109 主記憶装置。 ゛・′1図 21) I 嘱4図 一ノ 第 5 久 第12図 第 13j”1 久 t
Claims (2)
- (1)複数の主記憶装置、該主記憶装置の拡張記憶装置
、及び、ページングプロセッサとベクトルプロセッサと
コントロールプロセッサの3種類のプロセッサを具備し
、前記コントロールプロセッサに、前記3種類のプロセ
ッサのデータ処理を並列に実行するため、前記3種類の
プロセッサのための命令を区別して保持する命令スタッ
クと、該命令スタック上の命令の複数のデコード処理を
時分割に行うデコード処理管理機構を設け、前記ページ
ングプロセッサに、前記拡張記憶装置上に存在するプロ
グラムの実行を前記複数の主記憶装置上で実施するため
、プログラムの部分集合で使用される拡張記憶装置上の
領域を指定された主記憶装置へロード・ストアする論理
機構と指定領域でのデータの並びを編集する論理機構を
設け、前記ベクトルプロセッサは前記コントロールプロ
セッサの制御下で主記憶装置上のベクトル命令を処理す
ることを特徴とするベクトル処理装置。 - (2)前記拡張記憶装置は前記複数の主記憶装置に対し
て大容量かつ低速であり、大規模なプログラムを格納す
るために用いられることを特徴とする特許請求の範囲第
1項記載のベクトル処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59205040A JPS6182272A (ja) | 1984-09-29 | 1984-09-29 | ベクトル処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59205040A JPS6182272A (ja) | 1984-09-29 | 1984-09-29 | ベクトル処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6182272A true JPS6182272A (ja) | 1986-04-25 |
Family
ID=16500448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59205040A Pending JPS6182272A (ja) | 1984-09-29 | 1984-09-29 | ベクトル処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6182272A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5269009A (en) * | 1990-09-04 | 1993-12-07 | International Business Machines Corporation | Processor system with improved memory transfer means |
US8545760B2 (en) | 2005-03-29 | 2013-10-01 | Sysmex Corporation | Specimen analyzing method and specimen analyzing apparatus |
-
1984
- 1984-09-29 JP JP59205040A patent/JPS6182272A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5269009A (en) * | 1990-09-04 | 1993-12-07 | International Business Machines Corporation | Processor system with improved memory transfer means |
US8545760B2 (en) | 2005-03-29 | 2013-10-01 | Sysmex Corporation | Specimen analyzing method and specimen analyzing apparatus |
US9028756B2 (en) | 2005-03-29 | 2015-05-12 | Sysmex Corporation | Specimen analyzing method and specimen analyzing apparatus |
US9316583B2 (en) | 2005-03-29 | 2016-04-19 | Sysmex Corporation | Specimen analyzing method and specimen analyzing apparatus |
US10261016B2 (en) | 2005-03-29 | 2019-04-16 | Sysmex Corporation | Specimen analyzing method and specimen analyzing apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0240032B1 (en) | Vector processor with vector data compression/expansion capability | |
US4641275A (en) | Vector processor having pair process mode and single process mode | |
EP0165822A2 (en) | Memory access control system | |
JP2577865B2 (ja) | ベクトル処理装置及びその制御方法 | |
AU1185288A (en) | RISC computer with unaligned reference handling | |
GB2122781A (en) | Multimicroprocessor systems | |
WO1994003860A1 (en) | Massively parallel computer including auxiliary vector processor | |
JPS62114058A (ja) | ベクトル処理装置 | |
US3351909A (en) | Information storage and transfer system for digital computers | |
JPH05508495A (ja) | 多重プロセッサ用大域レジスタ | |
JPS6039259A (ja) | 階層構造制御装置 | |
EP0032515A1 (en) | A method of pipeline control for a computer | |
US5991866A (en) | Method and system for generating a program to facilitate rearrangement of address bits among addresses in a massively parallel processor system | |
JPS6182272A (ja) | ベクトル処理装置 | |
JPS6042516B2 (ja) | デ−タ処理装置 | |
JPS58149556A (ja) | 並列処理装置 | |
US5506980A (en) | Method and apparatus for parallel processing of a large data array utilizing a shared auxiliary memory | |
JPS59106075A (ja) | デ−タ処理システム | |
EP0686922B1 (en) | Vector processing unit with reconfigurable data buffer | |
JPS60151776A (ja) | 複合コンピユ−タシステム | |
JPS60205647A (ja) | デ−タ処理装置 | |
JPS6074038A (ja) | 情報処理装置 | |
JPS59123974A (ja) | ベクトルデ−タ記憶制御方式 | |
JPS58146952A (ja) | 並列計算機方式 | |
JPS62186328A (ja) | ソ−ト処理方式 |