JPH02216581A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH02216581A JPH02216581A JP32293089A JP32293089A JPH02216581A JP H02216581 A JPH02216581 A JP H02216581A JP 32293089 A JP32293089 A JP 32293089A JP 32293089 A JP32293089 A JP 32293089A JP H02216581 A JPH02216581 A JP H02216581A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- data
- register
- access
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Executing Machine-Instructions (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
発明の技術分野
本発明は情報処理装置に関し、プログラムの先頭ないし
途中に付加した制御命令によってハードウェアないしフ
ァームウェアの構造を変更するようにしたものである。
途中に付加した制御命令によってハードウェアないしフ
ァームウェアの構造を変更するようにしたものである。
従来技術と問題点
従来、計算機の設計は、機能拡張等は別として、定めら
れたハードウェアの構成ないし論理に従って設計されて
いる。従って、各種のプログラムを流した場合、そのプ
ログラムの内容により計算機の性能が太き(変わる0例
えば、外部メモリのアクセス頻度が高い事務処理プログ
ラムと、内部レジスタを多(使用する科学技術用プログ
ラムとでは、使用する計算機の構造例えばデータレジス
タ、命令レジスタのどちらが多く確保されているか等に
より性能の差が太き(でる。
れたハードウェアの構成ないし論理に従って設計されて
いる。従って、各種のプログラムを流した場合、そのプ
ログラムの内容により計算機の性能が太き(変わる0例
えば、外部メモリのアクセス頻度が高い事務処理プログ
ラムと、内部レジスタを多(使用する科学技術用プログ
ラムとでは、使用する計算機の構造例えばデータレジス
タ、命令レジスタのどちらが多く確保されているか等に
より性能の差が太き(でる。
このため汎用計算機においてどのようなプログラムに対
しても性能が上がるように設計しようとしても、上述し
た理由からこれは極めて難しい。
しても性能が上がるように設計しようとしても、上述し
た理由からこれは極めて難しい。
そこで従来は、(1)構成制御によるシステムの設定、
(2)OPSR(Operation 5tatus
Register)によるハードウェア内部の論理変更
等の対策が考えられているが、前者はシステム設置時に
決定されてしまい、後者は主にオペレータが0PSRを
変更するものであるためオペレータの負担を重(する、
また両者ともプログラムが変わった時(TSS等で)に
対する柔軟性は全くない。
(2)OPSR(Operation 5tatus
Register)によるハードウェア内部の論理変更
等の対策が考えられているが、前者はシステム設置時に
決定されてしまい、後者は主にオペレータが0PSRを
変更するものであるためオペレータの負担を重(する、
また両者ともプログラムが変わった時(TSS等で)に
対する柔軟性は全くない。
発明の目的
本発明は、上述の如き問題点を解決するために、計算機
自身がソフトウェアつまり各種の命令の集合体に適する
ように自動的にハードウェアないしファームウェアの構
造(構成ないし論理)を変更できるようにするものであ
る。
自身がソフトウェアつまり各種の命令の集合体に適する
ように自動的にハードウェアないしファームウェアの構
造(構成ないし論理)を変更できるようにするものであ
る。
発明の構成
本発明は、複数のアクセスパイプと、複数バンクからな
るメモリと、前記複数バンクに対し、複数のアクセスパ
イプ毎に複数のアクセスタイミングを決められている複
数のバンクからなるメモリと、前記複数のアクセスパイ
プはそれぞれ前記複数バンクを重複しない様に前記タイ
ミングに従ってアクセスするモードと、前記複数のアク
セスパイプのうち一つのアクセスパイプが、前記複数の
アクセスタイミングのタイミング全ての点又は何れかの
タイミングに於いて、前記複数バンク全てにアクセスす
るモードとを切り替える為の変更機能とを有し、前記変
更機能は制御命令によって起動するようにしてなること
を特徴とするが、以下図面を参照しながらこれを詳細に
説明する。
るメモリと、前記複数バンクに対し、複数のアクセスパ
イプ毎に複数のアクセスタイミングを決められている複
数のバンクからなるメモリと、前記複数のアクセスパイ
プはそれぞれ前記複数バンクを重複しない様に前記タイ
ミングに従ってアクセスするモードと、前記複数のアク
セスパイプのうち一つのアクセスパイプが、前記複数の
アクセスタイミングのタイミング全ての点又は何れかの
タイミングに於いて、前記複数バンク全てにアクセスす
るモードとを切り替える為の変更機能とを有し、前記変
更機能は制御命令によって起動するようにしてなること
を特徴とするが、以下図面を参照しながらこれを詳細に
説明する。
発明の実施例
ベクトルプロセッサのように高速化を図る計算機では、
複数の命令及びその命令で処理する複数の外部データを
バッファリングしておき、演算機等の状態によってプロ
グラム上後続する命令を先行する命令より先に実行する
ことがある(命令の追い越し)、そのために、複数の命
令及び外部データをそれぞれ命令保持部(iR)とデー
タ保持部(DR)に取り込んで命令の発信順序及びタイ
ミングを制御する。
複数の命令及びその命令で処理する複数の外部データを
バッファリングしておき、演算機等の状態によってプロ
グラム上後続する命令を先行する命令より先に実行する
ことがある(命令の追い越し)、そのために、複数の命
令及び外部データをそれぞれ命令保持部(iR)とデー
タ保持部(DR)に取り込んで命令の発信順序及びタイ
ミングを制御する。
この−例として従来のベクトル命令制御装置(Vlu)
を第1図に示す。この命令制御装置は命令取込み回路l
と命令発信回路2からなり、1つの命令(対しデータが
2つずつ(ファーストとセカンド)入力されるものとす
る。3は外部メモリ、補助プロセッサ等の外部装置で命
令及びデータを送出する。命令取込み回路1内の4はバ
ッファで、外部装置3からの命令及びデータをバッファ
する。5はフラグ制御回路でデータの管理を行なう、i
R,〜、はインストラクションレジスタ、A Ro〜3
はデータアドレスレジスタ、DRFはファーストデータ
レジスタ、D Rsはセカンドデータレジスタ、CLは
クロックである。またSELはセレクタ回路、101は
命令及びデータを伝えるバス線、110はLR,の命令
で処理するデータを示すアドレス線、ll’lはデータ
レジスタDRのリード(READ)アドレス線、112
は発信された命令で処理するデータの記憶場所を示すア
ドレス線である。
を第1図に示す。この命令制御装置は命令取込み回路l
と命令発信回路2からなり、1つの命令(対しデータが
2つずつ(ファーストとセカンド)入力されるものとす
る。3は外部メモリ、補助プロセッサ等の外部装置で命
令及びデータを送出する。命令取込み回路1内の4はバ
ッファで、外部装置3からの命令及びデータをバッファ
する。5はフラグ制御回路でデータの管理を行なう、i
R,〜、はインストラクションレジスタ、A Ro〜3
はデータアドレスレジスタ、DRFはファーストデータ
レジスタ、D Rsはセカンドデータレジスタ、CLは
クロックである。またSELはセレクタ回路、101は
命令及びデータを伝えるバス線、110はLR,の命令
で処理するデータを示すアドレス線、ll’lはデータ
レジスタDRのリード(READ)アドレス線、112
は発信された命令で処理するデータの記憶場所を示すア
ドレス線である。
外部装置!3からは命令、ファーストデータ、セカンド
データ(この繰り返し)の順に情報が送られ、バッファ
4に保持される。バッファ4からは同様の順に情報が取
り出され、クロックCLゆ。
データ(この繰り返し)の順に情報が送られ、バッファ
4に保持される。バッファ4からは同様の順に情報が取
り出され、クロックCLゆ。
CLDF、CLosが順にオンになると命令はインスト
ラクションレジスタiR0へ、また2つのデータはそれ
ぞれデータレジスタDR,,DRSにセットされる。ま
たクロックCL、がオンになるとき、フラグ制御回路5
ではデータレジスタDRのアドレス(図示の例ではθ〜
3)のうち、フラグ(後述する)がオフになっているも
ののうちの1つを信号線110を通してアドレスレジス
タAR0にセットする。アドレスレジスタAR0の内容
はその後クロックCL IIF、、 D L asがオ
ンになる時に、それぞれデータレジスタDRF、DRs
のライト(WRiTE)アドレスとなる(信号線113
)。命令発信回路2では、インストラクションレジスタ
iR1〜iR3のどれかが空(と、クロックCL。
ラクションレジスタiR0へ、また2つのデータはそれ
ぞれデータレジスタDR,,DRSにセットされる。ま
たクロックCL、がオンになるとき、フラグ制御回路5
ではデータレジスタDRのアドレス(図示の例ではθ〜
3)のうち、フラグ(後述する)がオフになっているも
ののうちの1つを信号線110を通してアドレスレジス
タAR0にセットする。アドレスレジスタAR0の内容
はその後クロックCL IIF、、 D L asがオ
ンになる時に、それぞれデータレジスタDRF、DRs
のライト(WRiTE)アドレスとなる(信号線113
)。命令発信回路2では、インストラクションレジスタ
iR1〜iR3のどれかが空(と、クロックCL。
〜CL3のうちの1つがオンになり、対応するインスト
ラクションレジスタとアドレスレジスタにそれぞれレジ
スタiR,,AR@の内容を取り込む。また、演算袋W
(後述する)は命令の前後関係などから発信すべき命令
を決定し、セット信号selにより、レジスタiR,〜
iRsの1つをセレクトし、演算装置に命令を発信する
。同時に対応するアドレスレジスタARI〜A Rsの
1つを信号線112を通してフラグ制御回路5に送る。
ラクションレジスタとアドレスレジスタにそれぞれレジ
スタiR,,AR@の内容を取り込む。また、演算袋W
(後述する)は命令の前後関係などから発信すべき命令
を決定し、セット信号selにより、レジスタiR,〜
iRsの1つをセレクトし、演算装置に命令を発信する
。同時に対応するアドレスレジスタARI〜A Rsの
1つを信号線112を通してフラグ制御回路5に送る。
フラグ制御回路5では、送られてきたアドレスを信号線
111を通してデータレジスタDRに伝え、2つのデー
タ1st、2ndを演算装置へ送る。
111を通してデータレジスタDRに伝え、2つのデー
タ1st、2ndを演算装置へ送る。
演算装置では、発信された命令及び2つのデータを受け
とって処理を行なう。
とって処理を行なう。
第2図はフラグ制御回路5の詳細図で、210〜212
は第1図の信号線110/112に相当する。230〜
233が第1図のデータレジスタDRの各アドレスθ〜
3にあるデータの有効、無効を示すフラグであり、セッ
ト(S)/リセット(R)型のラッチを用いである。
SET FLAGは第1図のクロックCtOがオンにな
るとき同時にオンになる信号で、フラグ230〜233
のセットタイミングを決定する。 5TART 1Ns
TRUcTioNは命令発信時に第1図の命令発信回路
2から送らてくる信号で、フラグ230〜233のリセ
ットタイミングを決定する。222は信号線212上の
アドレスをデコードしてどのアドレスのフラグかを示す
デコーダ、221はフラグの状態によって空いているア
ドレスを示すセレクト回路、220はセレクトされたア
ドレスをエンコードするエンコーダである。尚、セレク
ト回路221の出力ALL BUSYは、全てのアドレ
スのデータが有効でそれ以上データを取り込めないこと
を示す信号である。またRARは信号線212(第1図
の112)上の信号をラッチして信号線211(第1図
の111)の信号とし、これを第1図のデータレジスタ
DRに送るレジスタである。
は第1図の信号線110/112に相当する。230〜
233が第1図のデータレジスタDRの各アドレスθ〜
3にあるデータの有効、無効を示すフラグであり、セッ
ト(S)/リセット(R)型のラッチを用いである。
SET FLAGは第1図のクロックCtOがオンにな
るとき同時にオンになる信号で、フラグ230〜233
のセットタイミングを決定する。 5TART 1Ns
TRUcTioNは命令発信時に第1図の命令発信回路
2から送らてくる信号で、フラグ230〜233のリセ
ットタイミングを決定する。222は信号線212上の
アドレスをデコードしてどのアドレスのフラグかを示す
デコーダ、221はフラグの状態によって空いているア
ドレスを示すセレクト回路、220はセレクトされたア
ドレスをエンコードするエンコーダである。尚、セレク
ト回路221の出力ALL BUSYは、全てのアドレ
スのデータが有効でそれ以上データを取り込めないこと
を示す信号である。またRARは信号線212(第1図
の112)上の信号をラッチして信号線211(第1図
の111)の信号とし、これを第1図のデータレジスタ
DRに送るレジスタである。
動作を説明する。セレクト回路221により有効でない
データ(すでに演算装置に送出されたデータ)のアドレ
ス(フラグはリセット状態)をセレクトしく値の小さい
ものを優先)、それをエンコーダ220でコード化した
後信号線210(第1図の110)の信号として第1図
のアドレスレジスタAR,に伝える。データレジスタD
Rの各アドレス及び該各アドレスに対応するフラグ23
0〜233は本例では4個であるから2値2ビ・ントで
表わされ、230は00.231は01,232は10
.233は11が割当てられている。
データ(すでに演算装置に送出されたデータ)のアドレ
ス(フラグはリセット状態)をセレクトしく値の小さい
ものを優先)、それをエンコーダ220でコード化した
後信号線210(第1図の110)の信号として第1図
のアドレスレジスタAR,に伝える。データレジスタD
Rの各アドレス及び該各アドレスに対応するフラグ23
0〜233は本例では4個であるから2値2ビ・ントで
表わされ、230は00.231は01,232は10
.233は11が割当てられている。
これらのフラグのリセット及びこれらのフラグによるデ
ータレジスタDRの空きアドレスの指定もこの2値2ビ
ツトで行なわれる。例えばフラグ230のみリセットの
場合は信号線は210はOOの状態になり、また信号線
212がOOの状態になってフラグ230のリセットが
行なわれる。信号lA210の信号がクロックCLoオ
ンでレジスタA Roにセットされたら、同時に対応す
るアドレスのフラグ(230〜233のいずれか)をセ
ットする。また命令発信回路2で命令が発信されると、
5TART 1NsTRucTioNと共に信号線21
2のアドレスが送られ、対応するフラグをリセットする
。またアドレスはレジスタRARにラッチされ、信号線
211のリード(READ)アドレスとして第1図のデ
ータレジスタDRに送られ、発信された命令で処理すべ
きデータが読み出され演算装置に送られる。また以上と
は別に、すべてのフラグ230〜233がセット状態に
なると、ALL B[lSY信号がオンになる。この信
号は命令取込み回路l全体を制御する制御部に送られ、
それ以上命令がレジスタiRsに取り込まれるのを防止
する。
ータレジスタDRの空きアドレスの指定もこの2値2ビ
ツトで行なわれる。例えばフラグ230のみリセットの
場合は信号線は210はOOの状態になり、また信号線
212がOOの状態になってフラグ230のリセットが
行なわれる。信号lA210の信号がクロックCLoオ
ンでレジスタA Roにセットされたら、同時に対応す
るアドレスのフラグ(230〜233のいずれか)をセ
ットする。また命令発信回路2で命令が発信されると、
5TART 1NsTRucTioNと共に信号線21
2のアドレスが送られ、対応するフラグをリセットする
。またアドレスはレジスタRARにラッチされ、信号線
211のリード(READ)アドレスとして第1図のデ
ータレジスタDRに送られ、発信された命令で処理すべ
きデータが読み出され演算装置に送られる。また以上と
は別に、すべてのフラグ230〜233がセット状態に
なると、ALL B[lSY信号がオンになる。この信
号は命令取込み回路l全体を制御する制御部に送られ、
それ以上命令がレジスタiRsに取り込まれるのを防止
する。
従来の計算機ではレジスタiRはインストラフシラン用
、レジスタDRはデータ用に固定され、相互に融通し合
うようなことはない。しかし科学計算機ではデータレジ
スタが多量に必要であり、事務用計算機ではインストラ
クションレジスタが多量に必要であり、一方に好適に設
計すれば他方には不十分となる。そこで本発明は制御命
令によりハードウェアを変更する。
、レジスタDRはデータ用に固定され、相互に融通し合
うようなことはない。しかし科学計算機ではデータレジ
スタが多量に必要であり、事務用計算機ではインストラ
クションレジスタが多量に必要であり、一方に好適に設
計すれば他方には不十分となる。そこで本発明は制御命
令によりハードウェアを変更する。
第3図は構造変更機能を有する情報処理装置の部分構成
例として、上述したようにインストラクションレジスタ
iRやデータレジスタDRのような情報保持部を複数持
つ装置において、それらの容量のバランスを変更可能と
したものを示す。第1図の例ではインストラクションレ
ジスタiR。
例として、上述したようにインストラクションレジスタ
iRやデータレジスタDRのような情報保持部を複数持
つ装置において、それらの容量のバランスを変更可能と
したものを示す。第1図の例ではインストラクションレ
ジスタiR。
〜iR3の数とデータレジスタDR,またはD RsO
数は共に4個(固定)であるが、実際の命令では外部デ
ータを使わないものも多く(例えば内部レジスタのみを
オペランドとする命令)、従ってソフトウェアによって
データレジスタDRの使用率が異なる。そこで本例では
補助情報保持部SRを設け、これをiRとしてもDRと
しても使用できるようにする。全図を通してそうである
が、第3図でも他の図と同じ部分には同じ符号が付して
あり、そして301〜313はそれぞれ第1図の信号線
101−113に対応する。データレジスタDR,,D
Rsは共に1段減らして3段としてあり、信号線313
をデコーダ324でデコードした出力327(DRのO
〜2のアドレスを指定)によりバス線301上の入力デ
ータをセットするデータレジスタDRが選択される。3
00は構造変更信号で、レジスタSR,,SR′、をそ
れぞれインストラクションおよびアドレスレジスタiR
,’。
数は共に4個(固定)であるが、実際の命令では外部デ
ータを使わないものも多く(例えば内部レジスタのみを
オペランドとする命令)、従ってソフトウェアによって
データレジスタDRの使用率が異なる。そこで本例では
補助情報保持部SRを設け、これをiRとしてもDRと
しても使用できるようにする。全図を通してそうである
が、第3図でも他の図と同じ部分には同じ符号が付して
あり、そして301〜313はそれぞれ第1図の信号線
101−113に対応する。データレジスタDR,,D
Rsは共に1段減らして3段としてあり、信号線313
をデコーダ324でデコードした出力327(DRのO
〜2のアドレスを指定)によりバス線301上の入力デ
ータをセットするデータレジスタDRが選択される。3
00は構造変更信号で、レジスタSR,,SR′、をそ
れぞれインストラクションおよびアドレスレジスタiR
,’。
AR,’ として使う(第4図)か、4段目のデータレ
ジスタDRyx、DRssとして使う(第5図)かを選
択する。つまり、信号300が1のときは、第4図のよ
うな構成になる。これは、第3図においてセレクタ32
0〜323が信号300で切り替えられることによって
自動的に実現される。逆に信号300がOのときは第5
図5のような構成になる。これ↓よセレクタ320〜3
23の状態が第4図と逆になることによって実現される
。328はデコーダ324の出力で、データレジスタD
Rの3、つまりDR□、DRssを選択することを示す
信号である。なお331,332はクロックCL。、C
L□、CLa5の切換えゲートである。
ジスタDRyx、DRssとして使う(第5図)かを選
択する。つまり、信号300が1のときは、第4図のよ
うな構成になる。これは、第3図においてセレクタ32
0〜323が信号300で切り替えられることによって
自動的に実現される。逆に信号300がOのときは第5
図5のような構成になる。これ↓よセレクタ320〜3
23の状態が第4図と逆になることによって実現される
。328はデコーダ324の出力で、データレジスタD
Rの3、つまりDR□、DRssを選択することを示す
信号である。なお331,332はクロックCL。、C
L□、CLa5の切換えゲートである。
以上の例では第1図の命令取込み回路lのレジスタiR
,,AR,に対し同種のレジスタiR,’。
,,AR,に対し同種のレジスタiR,’。
A Ro ’を追加したが、命令発信回路2内のレジス
タをiR,〜i R4,ARI−AR4のように4段構
成としてもよい、いずれの場合もデータ用に使用できる
レジスタsR,,SRsを用いるので、第4図に斜線で
示すようにアドレスレジスタARでは一部未使用の部分
が生ずる。
タをiR,〜i R4,ARI−AR4のように4段構
成としてもよい、いずれの場合もデータ用に使用できる
レジスタsR,,SRsを用いるので、第4図に斜線で
示すようにアドレスレジスタARでは一部未使用の部分
が生ずる。
第4図の構成にした時には、第2図のフラグ制御回路5
も変更しなければならない(データレジスタDRO数が
3個に減るので)。このための変更機能部分を第6図に
示す、同図において、621.633はそれぞれ第2図
の221,233に対応する。640が追加となるオア
ゲートである。
も変更しなければならない(データレジスタDRO数が
3個に減るので)。このための変更機能部分を第6図に
示す、同図において、621.633はそれぞれ第2図
の221,233に対応する。640が追加となるオア
ゲートである。
600は第3図の300と同じ構造変更信号で、これが
1のときは、オアゲート640の出力が常に1となり、
第2図においてフラグ230〜233が全てセットされ
た状態、すなわちデータレジスタDR(3個)が全てデ
ータで満たされた状態と等価になり、十ALL BUS
Y信号が1となる。
1のときは、オアゲート640の出力が常に1となり、
第2図においてフラグ230〜233が全てセットされ
た状態、すなわちデータレジスタDR(3個)が全てデ
ータで満たされた状態と等価になり、十ALL BUS
Y信号が1となる。
以上の実施例はハードウェアのうちのレジスタ構成を自
動的に変更する(ソフトウェアの性質によるところは後
述する)例を示したが、変更対象とするハードウェアは
これに限定されない。第7図以下はベクトルアクセス制
御装置の制御変更に適用した例である。
動的に変更する(ソフトウェアの性質によるところは後
述する)例を示したが、変更対象とするハードウェアは
これに限定されない。第7図以下はベクトルアクセス制
御装置の制御変更に適用した例である。
複数のデータ(ベクトルデータ)を高速に処理する計算
機においては、演算命令等を実行するにあたりなるべく
メインメモリ(MEM)を使わず、内部レジスタ(VR
)だけで処理することが望まれる。ベクトルレジスタと
も呼ばれるこの内部レジスタVRは1つ又は複数個のエ
レメントよりなり、各エレメントに1つずつデータが保
持される。
機においては、演算命令等を実行するにあたりなるべく
メインメモリ(MEM)を使わず、内部レジスタ(VR
)だけで処理することが望まれる。ベクトルレジスタと
も呼ばれるこの内部レジスタVRは1つ又は複数個のエ
レメントよりなり、各エレメントに1つずつデータが保
持される。
そして、一般にはエレメントOから順番に処理され、そ
の結果が他のVRに書き込まれる。このためにはVRG
数が多い程よい。複数のVRの集合はベクトルレジスタ
群(VRG)と呼ばれるが、このしかし、VRGの容量
の制限あるいはソフトウェアの性質等によりMEMとV
RGとの間にはある頻度で必ずデータ転送が必要となる
。メモリアクセス制御装置(VSu)は例えばアクセス
制御部(以後アクセスパイプあるいは単にパイプと記す
)を複数設けて上記のデータ転送を効率よく制御するよ
うにされる。
の結果が他のVRに書き込まれる。このためにはVRG
数が多い程よい。複数のVRの集合はベクトルレジスタ
群(VRG)と呼ばれるが、このしかし、VRGの容量
の制限あるいはソフトウェアの性質等によりMEMとV
RGとの間にはある頻度で必ずデータ転送が必要となる
。メモリアクセス制御装置(VSu)は例えばアクセス
制御部(以後アクセスパイプあるいは単にパイプと記す
)を複数設けて上記のデータ転送を効率よく制御するよ
うにされる。
第7図はベクトルデータを高速処理する機能を備えた情
報処理装置全体のブロック図で、11はメインメモリ(
MEM)、12はメモリ制御装置(MCu)、13はエ
レメントが1つのスカラデータを処理するスカラデータ
処理装置、14はチャネル装置(CHP)、15は外部
の入出力装置(Ilo)である。破線枠16内がベクト
ルデータ処理装置(Vu:ベクトルユニット)で、ここ
にはベクトルレジスタ群(VRG)17、メモリアクセ
ス制御装置(VSU)18、先の例で示した命令制御装
置(Vlu)19および演算装置(VEu)20が含ま
れる。VRGl7は前述のように複数のベクトルレジス
タVRから構成されるが、演算装置20はVRをオペラ
ンドとして各種演算命令等を実行する。この演算装置2
0には加算用のADD加算機20A、乗算用のMuLT
i演算機20B、除算用のDiViDE演算機20Cが
ある。
報処理装置全体のブロック図で、11はメインメモリ(
MEM)、12はメモリ制御装置(MCu)、13はエ
レメントが1つのスカラデータを処理するスカラデータ
処理装置、14はチャネル装置(CHP)、15は外部
の入出力装置(Ilo)である。破線枠16内がベクト
ルデータ処理装置(Vu:ベクトルユニット)で、ここ
にはベクトルレジスタ群(VRG)17、メモリアクセ
ス制御装置(VSU)18、先の例で示した命令制御装
置(Vlu)19および演算装置(VEu)20が含ま
れる。VRGl7は前述のように複数のベクトルレジス
タVRから構成されるが、演算装置20はVRをオペラ
ンドとして各種演算命令等を実行する。この演算装置2
0には加算用のADD加算機20A、乗算用のMuLT
i演算機20B、除算用のDiViDE演算機20Cが
ある。
前述した命令制御装置9はこのメモリアクセス制御装置
18と演算装置20への命令発信を制御する0図中、I
Tは命令発信、Dはデータ、Iは命令の流れを示す。
18と演算装置20への命令発信を制御する0図中、I
Tは命令発信、Dはデータ、Iは命令の流れを示す。
第8図はVRGl7の構成例である。このVRGl7に
は例えばアクセスタイムが1τ(Vuのクロックサイク
ル)以下のRAMを使用し、インタリーブ構成としであ
る。速ちVRGを構成する各レジスタV Ro〜VRz
ssの同じ番号のエレメントを1群としてバンクとし、
そしてこのバンクが8個で1つのVRGが構成されるも
のとし、VSU内の複数のアクセス制御部からのアクセ
スタイミングをこのバンク単位で異な′らせる(ずらす
)ようにする。このようにインタリーブ構成とすると、
複数のパイプ(アクセス制御部)で同時に同じVRGを
かち合うことなくアクセスすることができる。第9図は
この説明図である(後述する)。
は例えばアクセスタイムが1τ(Vuのクロックサイク
ル)以下のRAMを使用し、インタリーブ構成としであ
る。速ちVRGを構成する各レジスタV Ro〜VRz
ssの同じ番号のエレメントを1群としてバンクとし、
そしてこのバンクが8個で1つのVRGが構成されるも
のとし、VSU内の複数のアクセス制御部からのアクセ
スタイミングをこのバンク単位で異な′らせる(ずらす
)ようにする。このようにインタリーブ構成とすると、
複数のパイプ(アクセス制御部)で同時に同じVRGを
かち合うことなくアクセスすることができる。第9図は
この説明図である(後述する)。
各ベクトルレジスタVR0,VR,・・・・・・のエレ
メント数は可変でもよいが、簡単のため8を基本とする
。実際に有効なエレメントの数はベクトルレングスVL
によって与えられる。1つのVRGを構成するVRの数
は256とし、8ビツトのアドレスで指定される。エレ
メントの割り付けは、VRGが1つの場合バンクnに対
してエレメントnを対応させる。第8図でEはエレメン
トで、その中の数字はエレメント番号である。
メント数は可変でもよいが、簡単のため8を基本とする
。実際に有効なエレメントの数はベクトルレングスVL
によって与えられる。1つのVRGを構成するVRの数
は256とし、8ビツトのアドレスで指定される。エレ
メントの割り付けは、VRGが1つの場合バンクnに対
してエレメントnを対応させる。第8図でEはエレメン
トで、その中の数字はエレメント番号である。
第7図の命令制御装置19にはベクトルレングスレジス
タVLRがあり、そこには制御命令によってVLの値が
セットされる。このVLは有効なエレメントの数を示す
、メモリアクセス制御装置(VSu)18ではVLで示
される数のデータをMEMIIとVRGl 7の間で転
送する。また演算装置20ではVLで示される数のデー
タを同一命令で処理する。
タVLRがあり、そこには制御命令によってVLの値が
セットされる。このVLは有効なエレメントの数を示す
、メモリアクセス制御装置(VSu)18ではVLで示
される数のデータをMEMIIとVRGl 7の間で転
送する。また演算装置20ではVLで示される数のデー
タを同一命令で処理する。
第9図はベクトルレジスタVRの最初のエレメント(エ
レメント番号0)をアクセスするタイミングを、各アク
セス源(パイプ、演算器)ごとに規定するバンクタイミ
ングのタイムチャートで、K、 E+、 Et、 Es
、 L、 Ft、 Fz、 R3の8つのタイミングが
サイクリックに繰り返される。このうちに、Lはパイプ
用、E、ないしFt、ExないしFt、EsないしF、
は演算器用で、それぞれ命令語のR1,R2,R3部で
指定されるVRをアクセスする。l命令語は1バイト(
8ビツト)のオペレーシッンコード部(OP)とそれに
続く3つのベクトルオペレーション部R1,R2゜R3
(各1バイト)からなり、一般にR2,R3で示される
VRのベクトルデータに対し、各同一番号のエレメント
ごとにOPで示される演算を実行し、その結果をR1で
示されるVRの同一番号のエレメントに書き込む。
レメント番号0)をアクセスするタイミングを、各アク
セス源(パイプ、演算器)ごとに規定するバンクタイミ
ングのタイムチャートで、K、 E+、 Et、 Es
、 L、 Ft、 Fz、 R3の8つのタイミングが
サイクリックに繰り返される。このうちに、Lはパイプ
用、E、ないしFt、ExないしFt、EsないしF、
は演算器用で、それぞれ命令語のR1,R2,R3部で
指定されるVRをアクセスする。l命令語は1バイト(
8ビツト)のオペレーシッンコード部(OP)とそれに
続く3つのベクトルオペレーション部R1,R2゜R3
(各1バイト)からなり、一般にR2,R3で示される
VRのベクトルデータに対し、各同一番号のエレメント
ごとにOPで示される演算を実行し、その結果をR1で
示されるVRの同一番号のエレメントに書き込む。
第10図は構造変更機能を有する情報処理装置の他の部
分構成例として、2パイプ型のメモリアクセス制御装置
によって1つのVRGを扱う場合の制御変更機能を示し
である。同図において破線枠の100DA、100OB
(以下A、Bは略す)は2台のパイプ(アクセス制御部
)で、これに制御回路等を付加すると第7図のメモリア
クセス制御装置(VSu)8となる。1010 (簡単
化のため添字A、Bは適宜省略する、他のものも同様)
は双方向バスで、ゲートの切換えによってメモリ制御装
置F: (MCU)i 2へ入出力する双方向データを
転送する。1001はMCU12からのフェッチデータ
を保持するフエyチデータレジスタ(FDP)、100
2は逆にMCU2へのストアデータを保持するストアデ
ータレジスタ(SDR)1003はデータ列を再配列す
るアライン回路(ALiGN)、1004はアラインレ
ジスタスタック(ARS)、1020はベクトルレジス
タ群である。
分構成例として、2パイプ型のメモリアクセス制御装置
によって1つのVRGを扱う場合の制御変更機能を示し
である。同図において破線枠の100DA、100OB
(以下A、Bは略す)は2台のパイプ(アクセス制御部
)で、これに制御回路等を付加すると第7図のメモリア
クセス制御装置(VSu)8となる。1010 (簡単
化のため添字A、Bは適宜省略する、他のものも同様)
は双方向バスで、ゲートの切換えによってメモリ制御装
置F: (MCU)i 2へ入出力する双方向データを
転送する。1001はMCU12からのフェッチデータ
を保持するフエyチデータレジスタ(FDP)、100
2は逆にMCU2へのストアデータを保持するストアデ
ータレジスタ(SDR)1003はデータ列を再配列す
るアライン回路(ALiGN)、1004はアラインレ
ジスタスタック(ARS)、1020はベクトルレジス
タ群である。
ここまでの構成は既提案のものと同様である。
先ずその動作を説明するに、(1)データフェッチ命令
の場合には双方向バス、1010を通してMCU12か
ら送られた各4工レメント分のデータはレジスタ100
1に入り、アライン回路1003を通して正しいエレメ
ント類に並べ変えられた後スタック1004に保持され
る。スタック1004に保持されたデータはPico
(ファーストイン、ファーストアウト)式に取り出され
、バンクタイムが取れた時に1エレメントごとにVRG
1020の該当するVRに書き込まれる。(2)デー
タストア命令の場合にはバンクタイムが取れた時に1エ
レメントごとにVRからデータが読み出されスタック1
004に保持される。そして、スタック1004に保持
されたデータはPico式に取り出され、アライン回路
1003を通してメモリ11(第7図)のアドレス順に
並べ変えられた後レジスタ1002に入り、双方向バス
1010を通してMCU12に送られる。
の場合には双方向バス、1010を通してMCU12か
ら送られた各4工レメント分のデータはレジスタ100
1に入り、アライン回路1003を通して正しいエレメ
ント類に並べ変えられた後スタック1004に保持され
る。スタック1004に保持されたデータはPico
(ファーストイン、ファーストアウト)式に取り出され
、バンクタイムが取れた時に1エレメントごとにVRG
1020の該当するVRに書き込まれる。(2)デー
タストア命令の場合にはバンクタイムが取れた時に1エ
レメントごとにVRからデータが読み出されスタック1
004に保持される。そして、スタック1004に保持
されたデータはPico式に取り出され、アライン回路
1003を通してメモリ11(第7図)のアドレス順に
並べ変えられた後レジスタ1002に入り、双方向バス
1010を通してMCU12に送られる。
本例では各パイプ100OA、100OBにゲートロジ
ック(GL)lo05A、1005Bを追加してこれを
構造変更信号1030で制御する。
ック(GL)lo05A、1005Bを追加してこれを
構造変更信号1030で制御する。
ゲートロジック1005は入力データを出力側に伝える
か否かを制御するゲート群より成り、構造変更信号10
30がOのときはゲートが閉じ、lのときはゲートが開
く。以下では該信号1030がOのときを1バイブモー
ド、1のときを2バイブモードと呼び、各モードの動作
を説明する。
か否かを制御するゲート群より成り、構造変更信号10
30がOのときはゲートが閉じ、lのときはゲートが開
く。以下では該信号1030がOのときを1バイブモー
ド、1のときを2バイブモードと呼び、各モードの動作
を説明する。
lパイプモード:このときはゲートロジック1005A
、1005Bが閉じているので、スタックl OO4A
(ARS A)はvRG1020のバンク0〜3のみ
と接続され、またスタック1o04B(ARS B)は
VRG1020のバンク4〜7のみと接続される。この
場合にはパイプ1000A、1000Bは同一命令を同
時に実行できる。つまり第9図において、パイプ100
OA、100OB共にKまたはLのいずれか(一方が実
線、他方が破線)のタイミングで同時にVRのアクセス
を開始する。このアクセスのタイミングが2つになった
ことで、命令のタイミング待ちの時間が、2パイプモ一
ド時よりも待ち時間がかなりへる。そして、パイプ10
0OAはエレメント0から3を、またパイプ100OB
はエレメント4から7を扱い、そこにデータをライトま
たはリードする。VRのアクセス開始とはその最初のバ
ンクからのアクセス開始を示すので、これが同じである
とかち合う恐れがあるが、VRをO〜3,4〜7の2群
に分ければそのアクセス開始バンクは0と4であり、以
後一方はl、 2. 3. O,1,・・・・・・
、他方は5,6,7,4,5.・・・・・・と進んで行
くので、かち合うことはない。
、1005Bが閉じているので、スタックl OO4A
(ARS A)はvRG1020のバンク0〜3のみ
と接続され、またスタック1o04B(ARS B)は
VRG1020のバンク4〜7のみと接続される。この
場合にはパイプ1000A、1000Bは同一命令を同
時に実行できる。つまり第9図において、パイプ100
OA、100OB共にKまたはLのいずれか(一方が実
線、他方が破線)のタイミングで同時にVRのアクセス
を開始する。このアクセスのタイミングが2つになった
ことで、命令のタイミング待ちの時間が、2パイプモ一
ド時よりも待ち時間がかなりへる。そして、パイプ10
0OAはエレメント0から3を、またパイプ100OB
はエレメント4から7を扱い、そこにデータをライトま
たはリードする。VRのアクセス開始とはその最初のバ
ンクからのアクセス開始を示すので、これが同じである
とかち合う恐れがあるが、VRをO〜3,4〜7の2群
に分ければそのアクセス開始バンクは0と4であり、以
後一方はl、 2. 3. O,1,・・・・・・
、他方は5,6,7,4,5.・・・・・・と進んで行
くので、かち合うことはない。
2バイブモード:このときはゲートロジック1005A
、1005Bが開くので、スタッカ1004A、100
4Bは共にvRGIO20のバンク0〜7と接続される
。この場合は第9図に実線で示すようにパイプ100O
Aとパイプ1000Bでバンクタイムを異ならせ(一方
がKで、他方力L) 、VRG 102−0の同じバン
クに同時にパイプ100OAとパイプ100OBがアク
セス(衝突)することがないようにした上で、両パイプ
を独立に動作可能として同時に2命令を実行させる。
、1005Bが開くので、スタッカ1004A、100
4Bは共にvRGIO20のバンク0〜7と接続される
。この場合は第9図に実線で示すようにパイプ100O
Aとパイプ1000Bでバンクタイムを異ならせ(一方
がKで、他方力L) 、VRG 102−0の同じバン
クに同時にパイプ100OAとパイプ100OBがアク
セス(衝突)することがないようにした上で、両パイプ
を独立に動作可能として同時に2命令を実行させる。
上述した各モードの長所、短所は次の通りである。lパ
イプモードではl命令しか実行できないが、VRをエレ
メントOから7までアクセスするのに4τで済む、これ
に対し2バイブモードでは同時に2命令実行できるが、
VRをエレメントOから7までアクセスするのに8τか
かる。従ってメモリアクセス命令の頻度が多い場合、2
バイブモードの方が同時に2命令実行でき有効であり、
メモリアクセス命令の頻度が少ない場合は、1バイブモ
ードの方がデータ転送量が2倍になるので有利になる。
イプモードではl命令しか実行できないが、VRをエレ
メントOから7までアクセスするのに4τで済む、これ
に対し2バイブモードでは同時に2命令実行できるが、
VRをエレメントOから7までアクセスするのに8τか
かる。従ってメモリアクセス命令の頻度が多い場合、2
バイブモードの方が同時に2命令実行でき有効であり、
メモリアクセス命令の頻度が少ない場合は、1バイブモ
ードの方がデータ転送量が2倍になるので有利になる。
以上、構造変更信号によってハードウェアの構造を変更
する例を2つ説明したが、次にこの構造変更信号を特殊
な制御命令を受けて発生する制御命令実行部について説
明する。第11図はその一例である。本例の制御命令実
行部は第1図の命令制御装置に付加する形で形成される
。つまり、第11図の1100.1101はそれぞれ第
1図の命令取込み回路lと命令発信回路2に相当し、こ
れらで命令制御装置を構成する。従来の命令制御装置で
は命令発信回路1101でセレクトされた通常の命令と
データレジスタDRから出力されるデータは第1図と同
様に演算装置へ送られるが、本例では特殊な制御命令(
後述する)についてはこれを制御命令実行部へ送るよう
にする。
する例を2つ説明したが、次にこの構造変更信号を特殊
な制御命令を受けて発生する制御命令実行部について説
明する。第11図はその一例である。本例の制御命令実
行部は第1図の命令制御装置に付加する形で形成される
。つまり、第11図の1100.1101はそれぞれ第
1図の命令取込み回路lと命令発信回路2に相当し、こ
れらで命令制御装置を構成する。従来の命令制御装置で
は命令発信回路1101でセレクトされた通常の命令と
データレジスタDRから出力されるデータは第1図と同
様に演算装置へ送られるが、本例では特殊な制御命令(
後述する)についてはこれを制御命令実行部へ送るよう
にする。
つまり、1110は、命令取込み回路1100において
バッファからの命令がレジスタiR6にセットされるタ
イミングに、信号線1102を通して送られてくる該命
令が、本発明に係る構造変更用の制御命令であることを
デコードする回路、1120は、命令発信回路1101
から信号線1103を通して送られて(る命令をセット
するレジスタ(iRi)、1130はレジスタiR,に
セットされた命令をデコードし、それぞれの命令に応じ
た信号を出力するデコーダである。1181〜118n
は本発明に係る構造変更用の制御命令によって決定され
る値がセットされるラッチで、その出力(構造変更信号
)1191=119nはそれぞれ定められた構造変更機
能の構造変更信号線、例えば第3図の3001第6図の
600、第1O図の1030等に接続される。
バッファからの命令がレジスタiR6にセットされるタ
イミングに、信号線1102を通して送られてくる該命
令が、本発明に係る構造変更用の制御命令であることを
デコードする回路、1120は、命令発信回路1101
から信号線1103を通して送られて(る命令をセット
するレジスタ(iRi)、1130はレジスタiR,に
セットされた命令をデコードし、それぞれの命令に応じ
た信号を出力するデコーダである。1181〜118n
は本発明に係る構造変更用の制御命令によって決定され
る値がセットされるラッチで、その出力(構造変更信号
)1191=119nはそれぞれ定められた構造変更機
能の構造変更信号線、例えば第3図の3001第6図の
600、第1O図の1030等に接続される。
次に、各種制御命令の動作を例をあげて説明する。第1
2図は本発明に係る3種の制御命令の命令語の例を示す
。同図(a)のCD命令(Change Di−rec
を命令)は8ビツトの命令コードOP (Opera
−tion Code)部のみから構成され、ら)のC
B命令(Change by Register命令)
には更に8ビツトのレジスタ指定部(R部)が、また(
C)のCB命令(Change by Bit命令)に
は多ビット(例えば24ビツト)のビットパターン部(
B部)がそれぞれ付加される。
2図は本発明に係る3種の制御命令の命令語の例を示す
。同図(a)のCD命令(Change Di−rec
を命令)は8ビツトの命令コードOP (Opera
−tion Code)部のみから構成され、ら)のC
B命令(Change by Register命令)
には更に8ビツトのレジスタ指定部(R部)が、また(
C)のCB命令(Change by Bit命令)に
は多ビット(例えば24ビツト)のビットパターン部(
B部)がそれぞれ付加される。
(a)のCD命令はCD0NXまたはCD0FXという
形で与えられ、前者は機能Xのオン(ON)を、また後
者は機能Xのオフ(OF)を指定する。そして、機能X
がX=A、B、・・・・・・とある場合には命令数は各
機能について2つ、全体では機能数の2倍C00NA、
CD叶^、 CD0NB、 CD0FB、・・・・・
・が用意される。
形で与えられ、前者は機能Xのオン(ON)を、また後
者は機能Xのオフ(OF)を指定する。そして、機能X
がX=A、B、・・・・・・とある場合には命令数は各
機能について2つ、全体では機能数の2倍C00NA、
CD叶^、 CD0NB、 CD0FB、・・・・・
・が用意される。
つまり、このCD命令はその名の通り、変更すべき機能
を直接指定する。
を直接指定する。
これに対しくb)のCB命令はあるレジスタのアドレス
をR部で指定し、そのレジスタの内容に従い構造変更さ
せるものである。(C)のCB命令はB部の各ビットが
それぞれ構造変更機能に対応し、そのl、0で構造変更
を指定する。従ってB部が24ビツトであれば最大24
機能の構造変更を同時に指定できる。この他にも同様の
構造変更命令の形態は考えられるが、ここでは省略する
。
をR部で指定し、そのレジスタの内容に従い構造変更さ
せるものである。(C)のCB命令はB部の各ビットが
それぞれ構造変更機能に対応し、そのl、0で構造変更
を指定する。従ってB部が24ビツトであれば最大24
機能の構造変更を同時に指定できる。この他にも同様の
構造変更命令の形態は考えられるが、ここでは省略する
。
第13図は第11図の構造変更命令デコーダ1130の
詳細図で、破線枠1301内が該デコーダ1130に相
当する。1300は第11図のレジスタ(iRi)11
20に相当する。このレジスタにはCD命令の場合には
OF部だけに、またCB命令の場合にはOPとX部に、
さらにCB命令の場合にはOPとx、y、z部に有効な
データがセットされる。デコーダ1301内の信号線1
351〜135nは第11図の信号線群1142を構成
する゛各信号線1181〜118nに対応し、また信号
線1360は信号線1140に、さらに信号線1341
〜134nはそれぞれ信号線1131=113nに対応
する。
詳細図で、破線枠1301内が該デコーダ1130に相
当する。1300は第11図のレジスタ(iRi)11
20に相当する。このレジスタにはCD命令の場合には
OF部だけに、またCB命令の場合にはOPとX部に、
さらにCB命令の場合にはOPとx、y、z部に有効な
データがセットされる。デコーダ1301内の信号線1
351〜135nは第11図の信号線群1142を構成
する゛各信号線1181〜118nに対応し、また信号
線1360は信号線1140に、さらに信号線1341
〜134nはそれぞれ信号線1131=113nに対応
する。
1320は信号線1302によって伝えられる命令゛コ
ードをデコードし、第12図に示される命令のときだけ
対応する出力他号を1にする。即ち、信号線1321N
〜132nNはそれぞれCD0NA 。
ードをデコードし、第12図に示される命令のときだけ
対応する出力他号を1にする。即ち、信号線1321N
〜132nNはそれぞれCD0NA 。
CD0NB、・・・・・・のとき1となり、また信号線
1321F〜132nFはそれぞれC口OFA、 CD
0FB、 ・・・・・・のとき1となる。一方、信号線
1330はCB命令のときlとなり、また信号線133
1はCB命令のときlとなる。信号11310はCB命
令のB部を伝え、各ビット1311〜13 inごとに
ゲートを通して信号線1331が1のときにそれぞれ信
号線1341〜134nに出力される。
1321F〜132nFはそれぞれC口OFA、 CD
0FB、 ・・・・・・のとき1となる。一方、信号線
1330はCB命令のときlとなり、また信号線133
1はCB命令のときlとなる。信号11310はCB命
令のB部を伝え、各ビット1311〜13 inごとに
ゲートを通して信号線1331が1のときにそれぞれ信
号線1341〜134nに出力される。
1351〜135nは第11図のクロックイネーブル信
号1181〜118nに相当し、命令発信制御回路から
送られる5TART 1NsTRUcTioN信号が来
た時CR,CB命令ではすべて1になり、またCD命令
ではその命令によって定められた信号のみ1となる。ま
たCD命令ではCI)ONのときは信号線1341〜1
34nのうち定められた信号だけが1となり、CD0F
のときは該信号が0となる。
号1181〜118nに相当し、命令発信制御回路から
送られる5TART 1NsTRUcTioN信号が来
た時CR,CB命令ではすべて1になり、またCD命令
ではその命令によって定められた信号のみ1となる。ま
たCD命令ではCI)ONのときは信号線1341〜1
34nのうち定められた信号だけが1となり、CD0F
のときは該信号が0となる。
再び第11図に戻ると、CD、CR,CB命令が命令取
込み回路1100内のバッファからレジスタiRoにセ
ットされると同時に、シリアライズ制御回路1113が
起動される。このシリアライズ制御回路1113は第1
図1のインストラクションレジスタ(iR)に保持され
ている全命令が終了するまで後続命令の実行を禁止しく
クロツクし、をオンにしない)、すべてのレジスタiR
が空き状態になると制御を終了する。またこの期間はレ
ジスタiRに保持されている命令はプログラム通りの順
に実行される。以上の動作を命令のシリアライズと呼ぶ
。従ってシリアライズ処理中の一番最後に実行される命
令が本発明の構造変更命令となる。この命令が実行され
る(START 1NST−RllCTioNが来る)
ときはそれ以前の命令はすべて終了しているのでハード
ウェアないしファームウェアの構造変更が可能となる。
込み回路1100内のバッファからレジスタiRoにセ
ットされると同時に、シリアライズ制御回路1113が
起動される。このシリアライズ制御回路1113は第1
図1のインストラクションレジスタ(iR)に保持され
ている全命令が終了するまで後続命令の実行を禁止しく
クロツクし、をオンにしない)、すべてのレジスタiR
が空き状態になると制御を終了する。またこの期間はレ
ジスタiRに保持されている命令はプログラム通りの順
に実行される。以上の動作を命令のシリアライズと呼ぶ
。従ってシリアライズ処理中の一番最後に実行される命
令が本発明の構造変更命令となる。この命令が実行され
る(START 1NST−RllCTioNが来る)
ときはそれ以前の命令はすべて終了しているのでハード
ウェアないしファームウェアの構造変更が可能となる。
CD命令が実行されると、第11図の信号線1131〜
113nのうちその命令によって定められた信号が、C
D0Nのとき1 、 CD0FのときOとなる(例えば
CD0N^では1131が1となり、CD0F Bでは
1132がOになる)。またそれと同時に信号線114
0の値は0信号線1141の値は1となっているので、
信号線1131〜113nの値がそのまま信号線116
1〜116nに伝えられる。また信号線1171〜11
7nのうち命令によって定められた信号のみ1となる(
例えばCD0NA。
113nのうちその命令によって定められた信号が、C
D0Nのとき1 、 CD0FのときOとなる(例えば
CD0N^では1131が1となり、CD0F Bでは
1132がOになる)。またそれと同時に信号線114
0の値は0信号線1141の値は1となっているので、
信号線1131〜113nの値がそのまま信号線116
1〜116nに伝えられる。また信号線1171〜11
7nのうち命令によって定められた信号のみ1となる(
例えばCD0NA。
CD0FAでは1171のみ1)のでラッチ1181〜
118nのうちその命令で変更すべき機能につながれて
いるラッチのみに値がセットされる。
118nのうちその命令で変更すべき機能につながれて
いるラッチのみに値がセットされる。
CB命令が実行されるときは、あがらしめR部によって
指定された外部レジスタ(第1図の外部装置3内にある
)のデータが読み出され、データレジスタDRに書込ま
れている。次に5TART 1NST−RUCTioN
が来ると信号線1140の値が1、信号線1141のO
となっており、かつ信号線1171〜117nの値はす
べて1となる。従ってデータレジスタDRから読出され
たデータ1104の各ピッ)1151〜115nの値が
それぞれラッチ1181〜118nにセットされる。こ
の命令の実行にあたっては、あらかじめ変更すべき機能
に対応するビットの値を定めたデータをR部で指定され
るレジスタに書き込んでおく必要がある。
指定された外部レジスタ(第1図の外部装置3内にある
)のデータが読み出され、データレジスタDRに書込ま
れている。次に5TART 1NST−RUCTioN
が来ると信号線1140の値が1、信号線1141のO
となっており、かつ信号線1171〜117nの値はす
べて1となる。従ってデータレジスタDRから読出され
たデータ1104の各ピッ)1151〜115nの値が
それぞれラッチ1181〜118nにセットされる。こ
の命令の実行にあたっては、あらかじめ変更すべき機能
に対応するビットの値を定めたデータをR部で指定され
るレジスタに書き込んでおく必要がある。
CB命令が実行されると、第11図の信号線1131−
113nにはビットパターン部Bのビットパターンがそ
のまま現われる。このとき信号線1140は01信号線
1141はlとなり、また信号線1171〜117nは
すべて1となるのでラッチ1181〜118nには該B
の値がそのままセットされる。
113nにはビットパターン部Bのビットパターンがそ
のまま現われる。このとき信号線1140は01信号線
1141はlとなり、また信号線1171〜117nは
すべて1となるのでラッチ1181〜118nには該B
の値がそのままセットされる。
なお第11図および第13図に示されるnの値について
は構造変更機能の数だけあればよい。またCD命令にお
いては、1つの命令で1つの構造を変更する場合を述べ
たが、1命令で複数の構造を変更するようにしてもよい
、同様にCR,CB命令においても1つのビットで複数
の構造を変更するようにしてもよい。
は構造変更機能の数だけあればよい。またCD命令にお
いては、1つの命令で1つの構造を変更する場合を述べ
たが、1命令で複数の構造を変更するようにしてもよい
、同様にCR,CB命令においても1つのビットで複数
の構造を変更するようにしてもよい。
発明の効果
以上述べたように本発明によると、プログラマ等がソフ
トウェアを作る際に非常に有利になる。これはソフトウ
ェアの中に本発明による構造変更命令を入れることによ
り、計算機をそのソフトウェアに最も適した構造に変更
できるからである。但し、次の2点には留意する必要が
ある。(i)本発明を有効に利用するためには、プログ
ラマが構造変更の対象となるハードウェアないしファー
ムウェアに対するある程度の知識を持たねばならない。
トウェアを作る際に非常に有利になる。これはソフトウ
ェアの中に本発明による構造変更命令を入れることによ
り、計算機をそのソフトウェアに最も適した構造に変更
できるからである。但し、次の2点には留意する必要が
ある。(i)本発明を有効に利用するためには、プログ
ラマが構造変更の対象となるハードウェアないしファー
ムウェアに対するある程度の知識を持たねばならない。
(ii )本発明による命令が実行される時、それによ
る時間ロスが出る。
る時間ロスが出る。
上記2点に対する対策を以下に述べる。(i)に関して
は、O8(オペレーティングシステム)を作るプログラ
マは本来ある程度ハードウェアの知識を持っているので
、O3においては問題とならない。それ以外の一部ユー
ザ等では、それなりの知識を持ったプログラマが自己の
ソフトウェアをさらに高速にしようとした時に利用すれ
ばよい。
は、O8(オペレーティングシステム)を作るプログラ
マは本来ある程度ハードウェアの知識を持っているので
、O3においては問題とならない。それ以外の一部ユー
ザ等では、それなりの知識を持ったプログラマが自己の
ソフトウェアをさらに高速にしようとした時に利用すれ
ばよい。
(ii )に関しては、本発明による命令を頻繁に使う
と全体として性能ダウンにつながるので、構造変更した
ことによる利点が該命令実行によるロスに比して大きく
なるためには、該命令の頻度を少なくする必要がある。
と全体として性能ダウンにつながるので、構造変更した
ことによる利点が該命令実行によるロスに比して大きく
なるためには、該命令の頻度を少なくする必要がある。
しかし、例えば高速化をねらった科学技術用計算機等で
は、もともと構造変更の頻度は少な(てよいのでロスは
非常に小さ(なる、しかも、多数のデータを1命令で処
理するベクトル命令等に比べると本発明の命令の実行時
間は非常に小さいので(ii)のロスは問題にならない
。また汎用機においても、例えばそれをTSS利用して
いる時などプログラムが変わった時には、もともとその
ための時間ロスがかなり大きいので、その時点で本発明
の命令を実行すれば(ii)のロスは無視できるLヨど
の小さいものとなる。
は、もともと構造変更の頻度は少な(てよいのでロスは
非常に小さ(なる、しかも、多数のデータを1命令で処
理するベクトル命令等に比べると本発明の命令の実行時
間は非常に小さいので(ii)のロスは問題にならない
。また汎用機においても、例えばそれをTSS利用して
いる時などプログラムが変わった時には、もともとその
ための時間ロスがかなり大きいので、その時点で本発明
の命令を実行すれば(ii)のロスは無視できるLヨど
の小さいものとなる。
以上により本発明はその利用を効果的に行なうことによ
り、前述の大きなメリットが得られる。
り、前述の大きなメリットが得られる。
第1図は構造変更機能のない従来の命令制御装置の一例
を示す構成図、第2図はそのフラグ制御回路の詳細図、
第3図は上記の命令制御装置の一部を構造変更可能とし
た構成図、第4図および第5図はその要部の構造変更状
態を示す説明図、第6図は第4図の構造変更に伴うフラ
グ制御回路への追加部分を示す要部構成図、第7図は複
数のデータを高速処理する情報処理装置全体の概略構成
図、第8図はそのベクトルデータ処理装置内に設けられ
るベクトルレジスタ群の説明図、第9図は該レジスタ群
へのアクセスタイミングを示すタイムチャート、第10
図は該ベクトルデータ処理装置内に設けられるメモリア
クセス制御装置の一部を構造変更可能とした構成図、第
11図は構造変更命令をデコードして各種構造変更信号
を発生する制御命令実行部の例を示す構成図、第12図
は本発明の制御命令(構造変更命令)の各側を示す説明
図、第13図は構造変更命令デコーダの詳細図である。 図面でOPは制御命令の命令コード部、Rはレジスタを
指定する部分、Bはビットパターン部である。 第1図
を示す構成図、第2図はそのフラグ制御回路の詳細図、
第3図は上記の命令制御装置の一部を構造変更可能とし
た構成図、第4図および第5図はその要部の構造変更状
態を示す説明図、第6図は第4図の構造変更に伴うフラ
グ制御回路への追加部分を示す要部構成図、第7図は複
数のデータを高速処理する情報処理装置全体の概略構成
図、第8図はそのベクトルデータ処理装置内に設けられ
るベクトルレジスタ群の説明図、第9図は該レジスタ群
へのアクセスタイミングを示すタイムチャート、第10
図は該ベクトルデータ処理装置内に設けられるメモリア
クセス制御装置の一部を構造変更可能とした構成図、第
11図は構造変更命令をデコードして各種構造変更信号
を発生する制御命令実行部の例を示す構成図、第12図
は本発明の制御命令(構造変更命令)の各側を示す説明
図、第13図は構造変更命令デコーダの詳細図である。 図面でOPは制御命令の命令コード部、Rはレジスタを
指定する部分、Bはビットパターン部である。 第1図
Claims (4)
- (1)複数のアクセスパイプと、 複数バンクからなるメモリと、 前記複数バンクに対し、複数のアクセスパイプ毎に複数
のアクセスタイミングを決められている複数のバンクか
らなるメモリと、 前記複数のアクセスパイプはそれぞれ前記複数バンクを
重複しない様に前記タイミングに従ってアクセスするモ
ードと、 前記複数のアクセスパイプのうち一つのアクセスパイプ
が、前記複数のアクセスタイミングのタイミング全ての
点又は何れかのタイミングに於いて、前記複数バンク全
てにアクセスするモードとを切り替える為の変更機能と
を有し、 前記変更機能は制御命令によって起動するようにしてな
ることを特徴とする情報処理装置。 - (2)制御命令がその命令コード部で直接もしくは複数
の構造変更機能を起動するものであることを特徴とする
、特許請求の範囲第1項記載の情報処理装置。 - (3)制御命令がレジスタを指定する部分を有し、該レ
ジスタの内容に従って構造変更機能を起動させるもので
あることを特徴とする、特許請求の範囲該1項及び第2
項記載の情報処理装置。 - (4)制御命令が1もしくは複数の構造変更機能を起動
するビット部を有し、任意のビットで対応する構造変更
機能だけを起動するものであることを特徴とする、特許
請求の範囲第1項ないし第3項記載の情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32293089A JPH02216581A (ja) | 1989-12-13 | 1989-12-13 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32293089A JPH02216581A (ja) | 1989-12-13 | 1989-12-13 | 情報処理装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58091953A Division JPS59216252A (ja) | 1983-05-25 | 1983-05-25 | 情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02216581A true JPH02216581A (ja) | 1990-08-29 |
JPH0465406B2 JPH0465406B2 (ja) | 1992-10-20 |
Family
ID=18149218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP32293089A Granted JPH02216581A (ja) | 1989-12-13 | 1989-12-13 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02216581A (ja) |
-
1989
- 1989-12-13 JP JP32293089A patent/JPH02216581A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPH0465406B2 (ja) | 1992-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5608881A (en) | Microcomputer system for accessing hierarchical buses | |
US4467419A (en) | Data processing system with access to a buffer store during data block transfers | |
US4648034A (en) | Busy signal interface between master and slave processors in a computer system | |
US4733346A (en) | Data processor with multiple register blocks | |
JPS59117666A (ja) | ベクトル処理装置 | |
US5093783A (en) | Microcomputer register bank accessing | |
JPS6044699B2 (ja) | 特殊アドレス発生装置 | |
JPS6297036A (ja) | 計算機システム | |
JP3971535B2 (ja) | Simd型プロセッサ | |
US5696957A (en) | Integrated circuit comprising a central processing unit for executing a plurality of programs | |
US6327648B1 (en) | Multiprocessor system for digital signal processing | |
US5642523A (en) | Microprocessor with variable size register windowing | |
US5276853A (en) | Cache system | |
JPH0232647B2 (ja) | ||
JPH02216581A (ja) | 情報処理装置 | |
JPH0512751B2 (ja) | ||
JPH0232648B2 (ja) | ||
JPS6136845A (ja) | シングルチツプマイクロコンピユ−タ | |
JPH0232649B2 (ja) | ||
JPS6074038A (ja) | 情報処理装置 | |
JPH0412491B2 (ja) | ||
JP2647092B2 (ja) | マルチプロセツサシステム | |
JP2629400B2 (ja) | 自己同期型パイプライン処理装置 | |
JPH0253820B2 (ja) | ||
JPH0319570B2 (ja) |