JPH0431410B2 - - Google Patents

Info

Publication number
JPH0431410B2
JPH0431410B2 JP63151163A JP15116388A JPH0431410B2 JP H0431410 B2 JPH0431410 B2 JP H0431410B2 JP 63151163 A JP63151163 A JP 63151163A JP 15116388 A JP15116388 A JP 15116388A JP H0431410 B2 JPH0431410 B2 JP H0431410B2
Authority
JP
Japan
Prior art keywords
data
unit
board
arithmetic
cpu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP63151163A
Other languages
English (en)
Other versions
JPH023821A (ja
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed filed Critical
Priority to JP63151163A priority Critical patent/JPH023821A/ja
Publication of JPH023821A publication Critical patent/JPH023821A/ja
Publication of JPH0431410B2 publication Critical patent/JPH0431410B2/ja
Granted legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】 [目次] 概 要 産業上の利用分野 従来の技術(第15図〜第17図) 発明が解決しようとする課題 課題を解決する手段(第1図〜第3図) 作 用 実施例(第4図、第5図) 変形例(第6図〜第14図) 発明の効果 [概要」 高速演算装置に関し、 小さい単位での演算処理を高速で実行すること
を目的とし、 プロセツサを含む制御部と、各々アドレス付与
された複数の機能ユニツトが演算部バスで相互結
合された演算部とを備え、制御部と演算部とがイ
ンタフエース部で結合され、プロセツサが演算部
の機能ユニツトにアドレス指定して発した第1の
制御命令に対して、アドレス指定された機能ユニ
ツトは自己の処理データを演算部バスに出力し、
アドレス指定されなかつた機能ユニツトは演算部
バス上のデータを、各々の所定機能を実行するた
めに取り込むように構成される。
[産業上の利用分野] 本発明は、小さい単位での演算等の処理を高速
で実行する高速演算装置に関する。
[従来の技術] 演算を実行する演算回路としては、マイクロプ
ロセツサを用いたもの、あるいは専用の演算回路
をハードウエアロジツクで組んだものが知られて
いる。
また、第15図に示されるようなバツクエンド
プロセツサ32を用いたものも知られており、こ
のものはホスト計算機31とバツクエンドプロセ
ツサ32とをケーブル30で接続してなる。
さらに、第16図に示されるような演算ボード
35,36を用いたものも知られており、このも
のはCPUボード33、メモリボード34、演算
ボード35,36等をバスで接続してなる。
またさらに、第17図に示されるようなコプロ
セツサ38を用いたものも知られており、このも
のはCPU37、コプロセツサ38、ローカルメ
モリ39等を内部バス41で接続してなり、外部
バス42とは外部バスインタフエース40を介し
て結合される。
[発明が解決しようとする問題点] マイクロプロセツサを使うと簡単な回路で自由
度の高い演算制御ができるが、マイクロプロセツ
サでは演算速度が遅い。
専用の回路をハードウエアロジツクで組むと規
模が大きくなる。また自由度も低い。
第15図に示されるようなバツクエンドプロセ
ツサ32を用いた装置ではホスト計算機31の外
にケーブル30を伸ばすので、データ転送速度が
遅くなり、命令をホスト計算機31からバツクエ
ンドプロセツサ32に伝えるのに時間がかかる。
またバツクエンドプロセツサ32にやらせる処理
単位が大きくなるので、細かい制御がしにくい。
また、大掛かりな装置になる。
第16図に示されるような演算ボード35,3
6を用いた装置では、演算ボード間のデータ転送
が問題となる。すなわちCPUボード33からの
制御指令の方法にもよるが、一般には、演算ボー
ドの命名レジスタに命令を書いて、次に実行指令
を出し終了ステータスが返るのを待つので、処理
が遅い。また演算ボードの拡張性にも欠ける。
第17図に示されるようなコプロセツサ38を
用いた装置では、コプロセツサ38はCPU37
への命令をCPU37と同時に解釈するようにな
つており、データ転送幅は内部バスで決まり、一
般にCPUのデータビツト数と同じであり、例え
ば、16ビツトとか32ビツトとかになつている。
この装置では、それぞれのアプリケーシヨンに
応じてアプリケーシヨンに合つた特別のコプロセ
ツサをつくるのは実際的には困難である。例えば
ランダム・ロジツクで作ると大きくなりボードに
乗らない。またゲートアレーにするのも手だが、
回路規模に制限がある。例えば3メガバイトの
ROM等は現状では入手が難しい。また拡張性に
制限がある。CPUボードにコプロセツサ用のソ
ケツトを沢山用意しておく必要がある。
以上述べた装置は、まとまつた処理を行うには
いいが、細かい処理を、次々に実行するのにはさ
ほど高速ではない。さらに拡張性に欠ける。
したがつて本発明の目的は、小さい単位での処
理を高速で実行することに適した構成の高速演算
装置を提供することにある。
[課題を解決する手段] 第1図は本発明に係る原理ブロツク図である。
本発明に係る高速演算装置は、1つの形態とし
て、プロセツサCPU26を含む制御部21と、
各々アドレス付与された複数の機能ユニツト28
(1)〜28(n)が演算部バス24で相互結合
された演算部22とを備え、制御部21と演算部
22とがインタフエース部23で結合される。
そしてCPU26が演算部22の機能ユニツト
28(1)〜28(n)にアドレス指定して発し
た第1の制御命令(例えば読出し命令)に対し
て、アドレス指定された機能ユニツトは自己の処
理データを演算部バス24に出力し、アドレス指
定されなかつた機能ユニツトは演算部バス24の
データを、各々の所定機能を実行するために取り
込むように構成される。
本発明においては、他の形態として、一つの機
能ユニツトに複数のアドレスが割り当てられてお
り、この機能ユニツトはアドレス指定されたとき
に指定アドレス毎に異なる機能を実行するように
構成される。
本発明においては、また他の形態として、
CPU26が演算部22の機能ユニツト28(1)
〜28(n)にアドレス指定して発した第2の制
御命令(例えば書込み命令)に対して、アドレス
指定された機能ユニツトのみが所定の機能を実行
するように構成される。
本発明においては、さらに他の形態として、
CPU26が演算部22の機能ユニツトにアドレ
ス指定して発した第2の制御命令に対して、イン
タフエース部23は制御部21からのデータの少
なくとも一部をそのまま演算部22の演算部バス
24に載せるように構成される。
本発明においては、さらに他の形態として、
CPU26から発された第1の制御命令に対して、
インタフエース部23は演算部22の演算部バス
24上のデータの少なくとも一部をそのまま制御
部21に転送するように構成される。
本発明においては、さらに他の形態として、イ
ンタフエース部が入出力兼用の入出力レジスタと
この入出力レジスタへのデータ入力を制御部から
のデータあるいは演算部からのデータの何れかに
切り換えるセレクタとを備え、それによりこの入
出力レジスタ上で演算部のデータの内容の一部修
正を行えるように構成される。
[作用] 演算部22における演算処理は、制御部21の
CPU26が発する第1の制御信号、例えばリー
ド信号を演算指令として用いて行われる。演算部
22おける各機能ユニツト28(1)〜28
(n)にはそれぞれ異なるアドレスが例えば、 0−FFFF メモリ 10000−100FF 周辺機器(端末、FDD、
HDD...) 10100−101FF 演算ボード 256枚 のように割り当てられている。
先ず、制御部21のCPU26が演算部22の
機能ユニツト28(1)〜28(n)の1つをア
ドレス指定してリード信号を発すると、このアド
レス信号及びリード信号はインタフエース部23
を介して演算部22に伝えられる。すると演算部
22においてはアドレス指定された機能ユニツト
がデータを演算部バス24に出力する。
このとき他のアドレス指定されていない機能ユ
ニツトは演算部バス24上のデータを取り込んで
ラツチし、それぞれのユニツトが持つ機能(例え
ば演算、ROM変換等)を実行開始する。この処
理は次のリード信号が発されるまでに終了するよ
うにする。
すなわち、例えば演算部バス24上に第2図の
ように機能ユニツトとして演算ボード281〜2
83が接続されているものとする。230はイン
タフエースボードであり、CPU部分との接続ボ
ードである。
まず、CPU26がボード230のレジスタ
〓に通常の書込み動作によりデータをセツトす
る。
次に、ボード230のアドレスを指定してリー
ド信号を発する。すると、レジスタ〓のデータが
演算部バス24に出力される。他の演算ボード2
81〜283(アドレスで指定されなかつた演算
ボード)は、演算部バス24のデータを入力レジ
スタRに取り込む。次のリード信号がくるまでの
間に、演算ボード281〜283は演算を終了す
る。
次のリード信号時にCPU26がアドレスで演
算ボード281を指定するとすると、演算ボード
281の演算器は既に演算を終了しているので、
すぐにデータを出力することができる。
以下同様にして、演算を繰り返し、最後に
CPU26はインタフエースボード230の入力
レジスタRからデータを読み取ると、演算結果が
得られる。第3図にはこの場合のタイムチヤート
が示される。
以上のようにすると、CPU26が演算部22
の機能ユニツトをアドレス指定してリード指令を
発するごとに演算部22で1演算が実行できるこ
とになり、非常に高速な処理が可能となる。また
CPU26が出力するアドレスの順を変えるだけ
で、違うパターンの演算が可能となり、自由度が
高い。アドレスの順を変えるのは、機械語の順を
変えるだけなので極く容易である。
[実施例] 以下、図面を参照しつつ本発明の実施例を説明
する。第4図は本発明の一実施例としての高速演
算装置を示すブロツク図である。図において、本
実施例装置は、実行制御部とデータ演算部とから
なる。
実行制御部は、各種指令を行うCPUボード1、
メモリボード2、ROMボード3、演算部インタ
フエースボード4、これらのボード1〜4を相互
接続するCPU部バス10を含み構成される。
データ演算部は、データウエイとのデータ転送
を行うデータ入出力インタフエースボード9、演
算処理を実行する演算ボード6、ROM実装して
いる2次元ROMボード8、実行制御部との通信
を担当しているCPUバスインタフエースボード
5、レジスタボード7等を含み構成されており、
前述の実行制御部とはインタフエースボード4,
5間に張られた接続ケーブル12を介して接続さ
れている。このデータ演算部は48ビツトデータバ
スを用いて3組の16ビツトデータを同時に演算可
能な構成となつている。
実行制御部の各ボードの機能は以下の如くであ
る。
CPUボード1はプロセツサ全体の制御と16ビ
ツトのスカラー演算を行う。演算の高速化のため
CPUとしてマイクロプロセツサと演算用コプロ
セツサを搭載しており、データ演算部を制御する
動作シーケンスを発生する。
メモリボード2は8Mバイトの容量のリードラ
イトメモリを搭載したマルチボードである。
CPUボード1とは32ビツトの幅の高速データ転
送バスにより接続され、高速なデータアクセスが
可能である。CPUボード1上のマイクロプロセ
ツサがこのメモリボード2にアクセスを行うこと
ができる。
ROMボード3は1Mバイトの容量のリードオ
ンメモリを搭載したマルチバスボードである。
CPUボード1とは32ビツト幅の高速データ転送
バスにより接続され、高速なデータアクセスが可
能である。このボードには三角関数表等を格納し
ておき、必要に応じてCPUボード1上のマイク
ロプロセツサがアクセスを行う。
演算部インタフエースボード4は、演算部バス
11とデータ転送を行うマルチバスボードであ
る。CPUバス部分とのハンドシエイクと、CPU
バス部分と演算部バス部の接続ケーブル12のド
ライブを行う。なお、CPU部バス10はCPUの
データ幅となつている。
データ演算部の各ボードの機能は以下の如くで
ある。
CPUバスインタフエースボード5は実行制御
部とデータ転送を行う3Wボードである。実行制
御部からの動作制御コマンドをデータ演算部の各
ボードに伝える。また、実行制御部の16ビツト単
位のデータを3ワード受信し、データ演算部の48
ビツトデータに変換する。また、データ演算部の
48ビツトデータを16ビツト単位で読み出し、
CPU部1に転送する。
第5図にはこのCPUバスインタフエースボー
ド5の詳細な構成が示される。図示の如く、実行
制御部からの16ビツトデータをデータ演算部の48
ビツトデータに変換する出力レジスタ51、デー
タ演算部からの48ビツトデータを実行制御部への
16ビツトデータに変換する入力レジスタ52、ア
ドレス信号用のバツフアメモリ53、制御信号用
のバツフアメモリ54、信号の開閉を行うバツフ
アゲート(2)、(4)〜(6)、(8)〜(10)等を含み構成され
る。
2次元ROMボード8は、3Mバイトの容量の
リードオンメモリを搭載した3Wボードである。
データの変換用テーブルを格納しておく。演算ボ
ード6は高速演算を行う3Wボードである。16ビ
ツトごとの演算用に高速演算器を備える。演算器
は16ビツト単位で演算を行い、加減算、ビツト処
理、シフト、あるいは定数のセツト等の処理を実
行することができる。演算回路はハーバード・ア
ーキテクチヤを採用しているため、1サイクル1
実行が可能である。
レジスタボード7はデータの一時記憶を行う
3Wボードである。32Kワードの容量のRAMを備
える。レジスタはランダムアクセスの他、1ワー
ド読み書きするごとにポインタをすすめることに
よりFIFO的な使用も可能である。このため、同
じ命令列を実行させて、多数のデータを順次処理
することが可能である。
データ入出力インタフエースボード9は他の装
置とのデータの転送を行う3Wボードである。こ
のボードはCPUの制御下で1ワードずつの転送
を行う他に、データケーブル上に送られてくる一
連のデータ列を自動的にハンドシエイクしながら
連続して内部バツフアに取り込んだり、内部バツ
フアに格納してある全データを送信するバースト
転送機能を有する。この機能を使用すると、ハー
ドウエアによる処理速度で転送することが可能で
あるとともに、送受信中にマイクロプロセツサは
他の仕事をすることが可能である。
なお、演算部バス11はデータ演算部における
演算に最適なデータ幅となつており、本実施例で
は16ビツトデータ3つを1組として48ビツト幅と
なつている。またデータ演算部における各ボード
5〜9にはそれぞれ異なるアドレスが割り当てら
れているものとする。
この実施例装置の動作が以下に説明される。ま
ず、実行制御部のCPUボード1が、データ演算
部のボードの1つをアドレス指定してリード指令
を発する。このリード指令及びアドレス信号は演
算部インタフエースボード4、接続ケーブル1
2、CPUバスインタフエースボード5を介して
データ演算部に伝えられる。
するとデータ演算部においては、アドレス指定
されたボードから処理済の48ビツトデータが演算
部バス11に送出される。このとき、他のアドレ
ス指定されていないボードはこの演算部バス11
上のデータを取り込み、それぞれのボードの機能
に従つて処理を実行する。
例えば2次元ROMボード8は演算部バス11
上のデータをROMに入力として与えてデータ変
換を行い、その結果をレジスタにラツチする。こ
のための次のサイクル(次のリード指令)では既
にROMの変換結果がレジスタに用意されている
ことになり、リード指令によつて変換結果を即時
に出力することができる。なお、各ボードの行う
処理は次のリード指令が発されるまでに終了する
ようにリード指令のサイクルが決められているも
のとする。
このようにデータ演算部では、実行制御部から
のリード指令により全ボードが一斉に単位処理を
実行することができる。そして実行制御部がアド
レスを変えつつ連続してリード指令を発すること
により、一連の演算を高速で処理することが可能
となる。そしてCPUボード1はCPUバスインタ
フエースボード5の入力レジスタ52からデータ
を読み取つて演算結果を得ることができる。
なお、CPUバスインタフエース部の動作を以
下に簡単に説明する。実行制御部からデータ演算
部にデータを送出するには、CPUボード1はデ
ータを16ビツトずつ3回に分けて出力レジスタ5
1にセツトし、続いてアドレスで対CPUバスイ
ンタフエースボード5を指定してリード指令を発
する。このリード指定で出力レジスタ51の内容
は演算部バス11に送出される。
一方、データ演算部のデータをCPUが読むに
は、データ演算部の対象とする演算ボードをアド
レス指定してリード信号を発する。すると、その
ボードのデータが演算部バス11に送出され、
CPUバスインタフエースボード5の入力レジス
タ52にラツチされる。CPUは、ラツチされた
データを16ビツトずつ3回に分けて読み取る。
本発明の実施にあたつては種々の変形形態が可
能であり、以下にこれらの変形例について説明す
る。
まず最初の変形例は前述の実施例における次の
ような問題点を解消するものである。すなわち前
述の実施例では演算ボード1枚についてアドレス
を1つしか割り当てなかつた。このため、各演算
ボードは単機能のものにならざるを得なかつた。
しかしながら演算プロセツサを搭載するALUボ
ードなどは、加算・減算等いろいろな演算が可能
なので、演算ボードごとに複数の機能を選択可能
なようにすると経済的である。
そこで、この変形例においては、演算ボード1
枚についてアドレスを1つ以上割り当て、アドレ
スの値により、機能の選択をも行わせるものであ
る。例えば、あるROMボードについては、アド
レス101004〜101007の範囲で割り当て、101004で
アクセスされたら正弦関数の値を出力し、101005
でアクセスされたら余弦関数の値を出力する等の
機能選択を行う。
演算ボードの制御方法は第7図に示されるよう
な手順で行う。すなわち、 リード信号は来ているか(ステツプS1)。リ
ード信号がアクテイブならステツプS2へ進み、
さもなかつたらステツプS1へ戻る。
アドレスバスの値は、この演算ボードを指定
しているものか(ステツプS2)。この演算ボー
ドのものなら、ステツプS3に進み、さもなか
つたらステツプS4に進む。
入力レジスタのデータに、アドレス値で指定
された処理を加えて、演算部バスに出力する
(ステツプS3)。
リード信号がアクテイブの間はステツプS4
にとどまり、アクテイブでなくなつたらステツ
プS5に進む。
演算部バスの値を入力レジスタにラツチする
(ステツプS5)。
ステツプS1へ戻る。
具体例をあげて更に詳しく説明する。いま、
データ演算部の各ボードに、例えば次のような複
数のアドレスを割り当てるものとする。
0−FFFF:メモリ 10000−100FF:周辺機器(端末、FDD、
HDD...) 10100−1010F:演算ボード 10110−1011F:レジスタボード 10120−1012F:2次元ROMボード 10130−1013F:データ入出力インタフエースボ
ード 10140−1014F:CPUバスインタフエースボード 演算ボードは、自分がアドレス指定されたかど
うかは、下から5ビツト目以上をデコードすれば
わかる。下4ビツトは機能指定コードとして使用
される。演算ボードにおける機能指定の例を以下
に説明する。
演算ボードは10100としてアドレス指定された
ときは、なにも演算せずに入力レジスタの値をそ
のまま出力する。
10101として指定されたときは、入力レジスタ
の値を演算器の内部レジスタに格納する。出力値
は入力レジスタの値と同じとなる。
10102として指定されたときは、入力レジスタ
の値と演算器の内部レジスタの値を加算し、その
値を出力する。演算器の内部レジスタの値は変わ
らない。
10103として指定されたときは、入力レジスタ
の値と演算器の内部レジスタの値を加算し、その
値を出力する。演算器の内部レジスタの値は、加
算した値となる。
10104として指定されたときは、入力レジスタ
の値から演算器の内部レジスタの値を減算し、そ
の値を出力する。演算器の内部レジスタの値は変
わらない。
10105として指定されたときは、入力レジスタ
の値から演算器の内部レジスタの値を減算し、そ
の値を出力とする。演算器の内部レジスタの値は
減算後の値となる。
第6図はこの変形例におけるレジスタボードの
構成例を示す図であり、図示の如く、このレジス
タボード7はリード信号及びアドレス信号をデコ
ードするデコーダ71、ポインタ72、RAM7
3、ゲート74、入力レジスタ75を含み構成さ
れる。なお、このレジスタボード7においては、
デコーダの出力とアドレス及びリード信号との関
係は以下のようになつている。
ポインタCLR:アドレス=101011且つREAD=
L ポインタINC:アドレス=101012且つREAD=L RAM WR:アドレス=101013且つREAD=L バツフア出力:アドレス=10101X且つREAD=
L 入力レジスタラツチ:アドレス=10101X以外且
つREAD=L レジスタボードは上16ビツトが1011のとき、ボ
ードが指定されたと判断する。
レジスタボードは10110として指定されたとき
は、ポインタの値0にクリアする。
10111として指定されたときはポインタの値を
インクリメントする。
10102として指定されたときはポインタの値を
ポインタの指すRAMのセルに格納する。出力は
入力レジスタの値と同じとなる。
10103として指定されたときは入力レジスタの
値をポインタの指すRAMのセルに格納する。ポ
インタは格納後インクリメントする。出力は、入
力レジスタの値と同じになる。
10104として指定されたときはポインタの指す
RAMの内容を出力する。
10105として指定されたときはポインタの指す
RAMの内容を出力する。ポインタは出力後イン
クリメントする。
以上のようにして、アドレスを変更することに
より、データ演算部の各ボードにおいて実行され
る処理の内容を変更することができるものであ
る。
本発明の他の変形例が第8図を参照しつつ以下
に説明される。前述の各実施例では、演算の制御
は全てリード命令を使用しており、リード命令を
受けたボードは、必ず何らかのデータを出力し、
他の演算ボードはそのデータをラツチするように
なつている。ところが、演算ボードの動作のなか
には、有効な出力がないものもある。例えばレジ
スタボードのRAMへのライト動作では、回路方
式によつては、出力が不定となつてしまうものが
ある。例えば第6図のレジスタボードではRAM
73への書込み時にデータ出力D0は高インピー
ダンスになるので、演算部バス11に出力される
値は不定になつてしまう。この動作をリード指令
で実行させると、他の演算ボードの入力レジスタ
にラツチされる値は不定となつてしまう。この結
果、演算の途中結果をRAM73に格納する必要
がある場合、この方式では、データが不定となつ
てしまうので演算が中断してしまう。
よつて他の演算ボードの入力レジスタの値を壊
さずに、RAMにデータを書き込むことが可能な
構成が必要とされる。第8図の変形例はかかる問
題的を解決するためのものである。この変形例で
はCPUボード1のライト命令に反応して、アド
レス指定されたボードのみがそのボード特有の処
理を行うようにしている。すなわち、第8図に図
示するように、ライト指令を伝えるライト信号線
を演算部バス11に追加する。ライト信号線に
は、アドレスで指定されたボードだけが反応す
る。他のボードはこれを無視する。すなわち、ラ
イト信号線にパルスが載つても、入力レジスタに
データをラツチすることはしない。
こうすると、レジスタボードにデータを書き込
むときにも、ライト信号を使用することにより、
他の演算ボードの入力レジスタの値を破壊するこ
とがなくなり、演算を継続することができる。
第8図のレジスタボードにおいては、デコーダ
71はアドレス信号及びライト信号に対して以下
のような出力を発生する。
ポインタCLR:アドレス=101011 且つ
WRITE=L ポインタINC:アドレス=101012且つWRITE=
L RAM WR:アドレス=101013且つWRITE=L バツフア出力:アドレス=10101X且つREAD=
L 入力レジスタクラツチ:アドレス=10101X以外
且つREAD=L 他の演算ボードも同様に、以下の指針に基づい
て製作される。すなわち、データを出力するの
は、アドレス線で自ボードが指定され、READ
=Lのときとする。入力レジスタにラツチするの
は、アドレスが自ボード以外を指定し、READ
=Lのときとする。この場合、データはリード信
号の立上りでラツチされる。データを出力しない
で、その演算ボード特有の処理をするときにはラ
イト命令を用いる。
第10図は本発明の更に他の変形例を説明する
ための図であり、CPUバスインタフエース5の
変更構成を示したものである。この変形例は以下
のような問題に対処するためのものである。
すなわち、CPUが出力するデータのなかには、
演算対象のデータではなく、演算ボードの設定
用、例えばポインタの値のものもある。このデー
タは、全演算ボードに放送するものではなく、特
定の演算ボードにのみ転送できれば十分である。
リード命令でこのデータを転送しようとすると、
CPUインタフエース5にデータをセツトし、次
にCPUインタフエース5のアドレスを指定して
リード命令を発するという2段階が必要である。
これは時間が無駄である。
また、リード命令で、ある演算ボードの設定用
データを転送する方式では、アドレスで指定され
ない演算ボードもその設定用データを入力レジス
タにラツチしてしまう。すなわち、それまで有効
なデータが入力レジスタに確保してあつたとして
も、そのデータは上書きされて消えてしまう。し
たがつてデータ演算のプロセス中に演算ボードを
設定し直すことができなくなつてしまう。
以上のことを具体例をあげて更に詳しく説明す
る。データ演算部の構成は第9図のようになつて
いるものとする。すなわち、CPUインタフエー
スボード230、演算ボード284〜286を含
んでいる。
第9図の構成の演算部分で、演算対象のデータ
はボード284のRAM内に格納されているもの
とする。処理内容は、演算ボード284に格納さ
れているデータを順次読み出し、演算ボード28
5の演算器で処理し、演算ボード286のRAM
に格納することである。演算ボード285におけ
る演算器の処理内容は、「データが1000以上の時、
データから512を引く。そうでないときには、デ
ータに512を加える。」というものとする。演算器
へのこの命令はROM内にすでに格納されている
ものとする。すなわちROMのアドレス0には
1000とデータを比較したステータスを出力する命
令、ROMのアドレス1にはデータから512を引
き結果を出力する命令、アドレス10にはデータ
に512を加える命令が格納されているものとする。
まずCPUは演算ボード284〜286のポイ
ンタをクリアする。
次に演算ボード284をアドレス指定してリー
ド命令を発する。演算ボード284のRAMに格
納されていたデータは、演算部バス11に出力さ
れ、そのデータはボード285,286の入力レ
ジスタにラツチされる。
次に演算ボード285をアドレス指定してリー
ド命令を発する。アドレスの下4ビツトで指定す
る機能を演算実行及びポインタインクリメントと
すると、演算器はアドレス0の命令を実行し、そ
の後ROMを指すポインタはインクリメントされ
る。アドレス0の命名は、1000とデータを比較
し、ステータスを出力する命令であつた。演算器
はデータと1000とを比較し、大小をステータスと
して、演算部バス11に出力する。CPUは実行
結果のステータスをみてデータが1000より大きか
つたかどうかを判断することができる。
1000より大きかつた場合は、演算ボード285
をアドレス指定してリード命令を発する。アドレ
スの下4ビツトで指令する機能を演算実行及びポ
インタインクリメントとすると。演算器はアドレ
ス1の命令を実行し、その後ROMを指すポイン
タをインクリメントする。アドレス1の命令は、
データから512を引くものであつたので、演算器
はそれを実行し、出力はその結果となる。この結
果は同時にボード286の入力レジスタにラツチ
されるので、ボード286にう入力レジスタの内
容をRAMに書き込むように、アドレスの下4ビ
ツトで機能指定して、リード命令を発する。これ
で1サイクルの命令が終了した。
ここで問題となるのはボード284から読んだ
データが1000より小さい場合である。この場合、
演算ボード285のポインタの値を10の更新し
て、ROMが512を加える命令を出力するように
しなければならない。ポインタを10にするには、
通常はCPUがCPUインタフエースボード230
のレジスタ〓に10をセツトし、データ演算部のバ
スに送り出せばよいが、この場合は、そうすると
ボード285の入力レジスタ〓の内容が10に書き
換えられてしまう欠点がある。ポインタは10に書
き換わつても、肝心のデータが消えてしまうので
ある。よつてデータを書き換えずに、ポインタだ
け書き換える方法が必要となる。
第10図に示されたCPUバスインタフエース
ボードが第5図のものと異なる点は、CPUバス
のデータの下16ビツトがバツフアゲート(3)を介し
て直接に(すなわち出力レジスタ51を通らず
に)、演算部バス11に送出できるようになつて
いることである。この場合、バツフアゲート(2)は
このCPUバスインタフエースボード5をアドレ
ス指定してリード指令が発された時に開く。また
バツフアゲート(3)はライト指令が発された時に開
くようになつている。
かかる構成にすると、CPUがライト命令を発
した時は、CPUが出力するデータはバツフアゲ
ート(3)を通つてそのまま演算部バス11に載る。
そしてライト命令に対してはアドレス指定された
ボードだけが反応するものであるから、当該アド
レス指定されたボードだけがCPUからのデータ
を受け取ることとなり、他のボードは動作しな
い。
これによりCPUバスインタフエースボード5
に設定用データをセツトすることなく直接に、目
的とする演算ボードにデータを転送できるので、
処理の高速化が図れる。またこの特定のボードへ
のデータ設定動作により他のボードの入力レジス
タに保持されていた有効なデータが破壊されるこ
とも防止できる。
第11図は本発明の更に他の変形例を示す図で
ある。前述の各実施例ではCPUがデータ演算部
のボードのデータを読み出す場合、当該ボードの
データをCPUバスインタフエースボード5の入
力レジスタに一旦保持させ、しかる後にCPUバ
スインタフエース5をアドレス指定してデータの
読み出しを行つている。
この方式だと、演算対象外のデータ(例えば、
演算ステータス、オーバーフロー等を示す)を
CPUが読み込む時にも一旦CPUバスインタフエ
ースボード5の入力レジスタ52を経由すること
になり、処理が遅くなる。一方、演算対象データ
以外のデータは、再利用する必要のないデータな
ので、入力レジスタ51にラツチする必要はない
ものである。
本変形例はこの点に鑑み改善を行つたものであ
り、第11図に示す如くCPUバスインタフエー
スボード5を変更している。すなわち、演算部バ
ス11のデータの下16ビツトを入力レジスタ52
を介さず直接にCPU部バス10に導く経路を新
たに設ける。そしてCPUがリード指令を発した
とき(リード信号線がLOWになつたとき)、アド
レス信号でCPUバスインタフエースボード5を
指定していればバツフア(4)〜(6)の何れかが開き、
一方、アドレス信号でCPUバスインタフエース
ボード5以外を指定していればバツフア(7)が開く
ように構成する。
かかる構成にすれば、CPUがリード命令を発
したときは、演算部バス11上のデータはCPU
バスインタフエースボード5の入力レジスタ52
にラツチされるだけでなく、そのデータの一部
(例えば下16ビツト)がCPU部に直接に転送され
ることになる。よつてCPUは演算対象データ以
外のデータを読み出すときは、直接送られてくる
範囲のデータに限つては入力レジスタ52の内容
を再び読む必要がなくなり、この分、高速化が図
られる。
なお、CPUが直接に読むデータ位置は予め定
めておき、ステータス等はその範囲に送出される
ように回路を設計する。このようにすることによ
り演算対象データ以外のデータを読み出すときは
入力レジスタ52を読む必要がなくなり、CPU
がデータ演算部の状態を直接に監視することが可
能となる。
第12図は本発明の更に他の変形例である。前
述の各実施例では、データ演算部のデータの一部
(例えば、上16ビツト)を修正しようとする場合、
CPUバスインタフエースボード5の入力レジス
タ52にラツチされたデータを出力レジスタ51
に複写することによりこれを行うことができる
が、この場合、修正箇所以外の部分のデータも入
力レジスタ52から出力レジスタ51に複写する
必要があり、この修正の必要のない部分の複写時
間分、実行時間が長くなる。
第12図はかかる問題点を解決した変形例の
CPUバスインタフエースボードの構成を示す図
である。この変形例では前述の各実施例における
入力レジスタ52と出力レジスタ51を入出力レ
ジスタ55の1組にまとめ、この入出力レジスタ
55へのデータ入力をセレクタ(MPX)56に
よつてCPU部側またはデータ演算部側の何れ側
からも可能なように切り換えられるよう構成して
あり、これによりデータ演算部の48ビツトデータ
を16ビツト毎の部分修正が可能なようにしてあ
る。
なお、この変形例は前述したバツフア(3)を通る
データ経路およびバツフア(7)を通るデータ経路を
備えており、それぞれ第10図および第11図に
より説明した機能も持つように構成されている。
第12図における各素子の機能は次の如くであ
る。
セレクタ56は、入出力レジスタ55にラツチ
するデータを選択するためのものである。ライト
指令時はA側(CPU部のデータ)、リード指令時
はB側(演算部のデータ)を選択する。
バツフア(2)は3ステートバツフアであり、
CPUインタフエースボード5をアドレスで指定
し、かつリード指令を発せられたときにデータを
出力する。
バツフア(3)は3ステートバツフアであり、ライ
ト信号が発せられたときに、CPUが出力したデ
ータを、演算部バス11の下16ビツトに転送す
る。
バツフア(4)〜(6)は3ステートバツフアであり、
リード信号が発せられ、アドレスでCPUインタ
フエースボード5が指定されたときに、何れかが
開く。どのバツフアが開くかはアドレスの下位ビ
ツトで指定する。
バツフア(7)は3ステートバツフアであり、リー
ド信号が発せられ、アドレスでCPUインタフエ
ースボード5以外が指定されたときに開くもので
ある。
バツフア(8)は電流増強用のバツフアである。
CPU部から転送されたアドレスデータを演算部
に送り出す。またバツフア(9)、(10)も電流増強用の
バツフアであり、CPU部から転送されたリード
信号、ライト信号を演算部に送り出す。
の入出力レジスタ55は、16ビツトラツチで
あり、演算部バスの上16ビツトのデータをラツチ
する。
の入出力レジスタ55は、16ビツトラツチで
あり、演算部バスの中16ビツトのデータをラツチ
する。
の入出力レジスタ55は、16ビツトラツチで
あり、演算部バスの下16ビツトのデータをラツチ
する。
以上の機能をまとめたものが第13図のCPU
インタフエースの真理値テーブルに示され、また
各機能の説明図が第14図に示される。
この第12図の変形例によれば、CPU部イン
タフエースボード5以外を指定してリード指令を
発したときには、入出力レジスタ55にデータを
ラツチする。また、CPU部からデータ演算部に
データを送出するにも、入出力レジスタ55を使
用する。データ演算部のデータを読むと、データ
は入出力レジスタ55にラツチされるので、必要
な部分のみ入出力用レジスタ55を書き換えるこ
とが可能となり、複写の必要はなくなる。
[発明の効果] 本発明によれば、小さい単位での処理を高速で
実行することに適した構成の高速演算装置が実現
される。
【図面の簡単な説明】
第1図は本発明に係る原理ブロツク図、第2図
は本発明に係る原理説明図、第3図は本発明に係
るタイムチヤート、第4図は本発明の一実施例と
しての高速演算装置を示すブロツク図、第5図は
第4図におけるCPUバスインタフエースボード
の構成例を示す図、第6図、第7図は本発明の変
形例を説明する図、第8図はライト命令を用いる
本発明の他の変形例の説明する図、第9図、第1
0図はデータの直接設定を可能にした本発明の更
に他の変形例を説明する図、第11図はデータの
直接読み出しを可能にした本発明の更に他の変形
例を説明する図、第12図〜第14図はデータの
一部修正を迅速に行える本発明の更に他の変形例
を説明する図、第15図〜第17図は従来の演算
回路を示す図である。 1……CPUボード、2……メモリボード、3
……ROMボード、4……演算部インタフエース
ボード、5……CPUバスインタフエースボード、
6……演算ボード、7……レジスタボード、8…
…2次元ROMボード、9……データ入出力イン
タフエースボード、10……CPU部バス、11
……演算部バス、51……出力レジスタ、52…
…入力レジスタ、55……入出力レジスタ、56
……セレクタ。

Claims (1)

  1. 【特許請求の範囲】 1 プロセツサ26を含む制御部21と、 各々アドレス付与された複数の機能ユニツト2
    8(1)〜28(n)が演算部バス24で相互結
    合された演算部22とを備え、 該制御部21と該演算部22とがインタフエー
    ス部23で結合され、 該プロセツサ26が該演算部22の機能ユニツ
    トにアドレス指定して発した第1の制御命令に対
    して、 該アドレス指定された機能ユニツトは自己の処
    理データを該演算部バス24に出力し、 アドレス指定されなかつた機能ユニツトは該演
    算部バス24のデータを、各々の所定機能を実行
    するために取り込むように構成された高速演算装
    置。 2 一つの機能ユニツトに複数のアドレスが割り
    当てられており、この機能ユニツトはアドレス指
    定されたときに指定アドレス毎に異なる機能を実
    行するように構成された請求項1記載の高速演算
    装置。 3 該プロセツサ26が該演算部22の機能ユニ
    ツトにアドレス指定して発した第2の制御命令に
    対して、該アドレス指定された機能ユニツトのみ
    が所定の機能を実行するように構成された請求項
    1または2記載の高速演算装置。 4 該プロセツサ26が該演算部22の機能ユニ
    ツトにアドレス指定して発した第2の制御命令に
    対して、 該インタフエース部23は該制御部21からの
    データの少なくとも一部をそのまま該演算部22
    の演算部バス24に載せるように構成された請求
    項3記載の高速演算装置。 5 該プロセツサ26から発された第1の制御命
    令に対して、該インタフエース部23は該演算部
    の演算部バス24上のデータの少なくとも一部を
    そのまま該制御部21に転送するように構成され
    た請求項1〜4の何れかに記載の高速演算装置。 6 該インタフエース部23は入出力兼用の入出
    力レジスタと該入出力レジスタへのデータ入力を
    該制御部21からのデータあるいは該演算部22
    からのデータの何れかに切り換えるセレクタとを
    備え、それによりこの入出力レジスタ上で、演算
    部のデータ内容の一部修正を行えるように構成さ
    れた請求項1〜5の何れかの項記載の高速演算装
    置。
JP63151163A 1988-06-21 1988-06-21 高速演算装置 Granted JPH023821A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63151163A JPH023821A (ja) 1988-06-21 1988-06-21 高速演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63151163A JPH023821A (ja) 1988-06-21 1988-06-21 高速演算装置

Publications (2)

Publication Number Publication Date
JPH023821A JPH023821A (ja) 1990-01-09
JPH0431410B2 true JPH0431410B2 (ja) 1992-05-26

Family

ID=15512707

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63151163A Granted JPH023821A (ja) 1988-06-21 1988-06-21 高速演算装置

Country Status (1)

Country Link
JP (1) JPH023821A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7585280B2 (en) 2004-12-29 2009-09-08 Codman & Shurtleff, Inc. System and method for measuring the pressure of a fluid system within a patient
US7842004B2 (en) 2007-10-31 2010-11-30 Codman & Shurtleff, Inc. Wireless pressure setting indicator
US8454524B2 (en) 2007-10-31 2013-06-04 DePuy Synthes Products, LLC Wireless flow sensor
US8480612B2 (en) 2007-10-31 2013-07-09 DePuy Synthes Products, LLC Wireless shunts with storage

Also Published As

Publication number Publication date
JPH023821A (ja) 1990-01-09

Similar Documents

Publication Publication Date Title
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
US4250547A (en) Information processing apparatus capable of effecting parallel processings by using a divided common bus
JPH0578863B2 (ja)
JPH0769791B2 (ja) マイクロプロセッサ
JPH0442699B2 (ja)
JPH0431410B2 (ja)
US5742842A (en) Data processing apparatus for executing a vector operation under control of a master processor
GB2366426A (en) Multi-processor system with registers having a common address map
US4747066A (en) Arithmetic unit
JP2741514B2 (ja) マルチcpuシステム
JP2504535B2 (ja) バスユニットの構成方法
JPH0399321A (ja) 命令制御方式
JPS60129856A (ja) メモリ制御回路
KR920006970B1 (ko) 프로그래머블 콘트롤러의 연산처리장치
JP2894854B2 (ja) 中央演算処理装置
Blazek Preliminary design of a parallel SIC architecture
JPS6237413B2 (ja)
JPH03164849A (ja) マイクロプロセッサおよびマイクロプロセッサシステム
JPS6149263A (ja) 情報処理モジユ−ル
JPH0545978B2 (ja)
JPS62251829A (ja) シンボリツク処理システムおよび方法
JPS63308653A (ja) ブロック・イン方式
JPS63231659A (ja) マイクロコンピユ−タ・システム
JPH01134546A (ja) 演算処理装置
JPS61269704A (ja) プログラマブル・コントロ−ラの基本命令処理用マイクロプロセツサ

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term