JPS6221131B2 - - Google Patents

Info

Publication number
JPS6221131B2
JPS6221131B2 JP14666179A JP14666179A JPS6221131B2 JP S6221131 B2 JPS6221131 B2 JP S6221131B2 JP 14666179 A JP14666179 A JP 14666179A JP 14666179 A JP14666179 A JP 14666179A JP S6221131 B2 JPS6221131 B2 JP S6221131B2
Authority
JP
Japan
Prior art keywords
control device
execution control
microprogram
signal
register
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
Application number
JP14666179A
Other languages
English (en)
Other versions
JPS5671139A (en
Inventor
Yoshinari Nakasaki
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP14666179A priority Critical patent/JPS5671139A/ja
Publication of JPS5671139A publication Critical patent/JPS5671139A/ja
Publication of JPS6221131B2 publication Critical patent/JPS6221131B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 本発明は従属の関係にあつて並列処理を行うこ
とができる制御装置で同一のハードウエアを共用
することができるマイクロプログラム制御の計算
機に関する。
従来、マイクロプログラム制御の装置において
は、各種レジスタ、フラグが制御されるのは一つ
のマイクロプログラム制御部のみによつてであ
り、あるマイクロプログラム制御部が他のマイク
ロプログラム制御部を制御して互いに並列に動作
することはなかつた。
たとえばマイクロプログラムで作成されたメイ
ンルーチンからマイクロプログラムで作成された
サブルーチンを利用する場合にはサブルーチンを
呼び出した後、サブルーチンに制御が渡され、サ
ブルーチンを呼び出したマイクロプログラム列は
サブルーチンから制御が戻されるまで制御対象と
はならない。しかし、ハードウエアを有効に利用
し処理効率を向上させるために、このサブルーチ
ンにおいて使用されるハードウエアをサブルーチ
ンがメインルーチンに戻つた以後のメインルーチ
ンでの処理で利用しなければサブルーチンとメイ
ンルーチンの処理を並行して進めることができ
る。
本発明の目的は、あるマイクロプログラム制御
部のマイクロプログラムで他のマイクロプログラ
ム制御部を制御することができる装置を提供する
ことにある。
さらに本発明の目的は前記装置において制御さ
れるマイクロプログラム制御部と制御するマイク
ロプログラム制御部が並行して動作可能にするこ
とにより処理効率を向上させることにある。
即ち、本発明は、マイクロプログラムで制御さ
れる第1実行制御装置と、該第1実行制御装置か
らの開始信号により起動するマイクロプログラム
制御の第2実行制御装置と、該第2実行制御装置
が処理中に参照及び格納されるレジスタ、状態表
示フラグなどの各種記憶装置を表示する利用状態
レジスタと、第2実行制御装置によつて利用され
ている記憶装置を該第1実行制御装置で利用する
要求が生じたときに前記利用状態レジスタの表示
を参照して第2実行制御装置により利用されてい
ることを検出する並列検出器と、前記第1実行制
御装置から前記第2実行制御装置を起動する手段
とを備え、前記第1実行制御装置から前記第2実
行制御装置を起動するマイクロプログラムにより
前記利用状態レジスタに第2実行制御装置で利用
する記憶装置を登録した後前記第1実行制御装置
と、前記第2実行制御装置とが並行して処理を行
い、前記並列検出器で第1実行制御装置が第2実
行制御装置で利用している記憶装置を利用する要
求が生ずるまで第1実行制御装置が処理を続行す
る計算機である。
次に本発明の実施例について図面を参照して説
明する。
第1図は本発明を用いたマイクロプログラム制
御計算機の一実施例を示すブロツク図である。機
械語命令列とデータを格納する外部記憶装置
PMEM1は処理対象となる機械語命令アドレス
を指示する命令アドレスレジスタIAR2と処理対
象データを指示するデータアドレスレジスタ
DAR3によつてアドレス指定される。外部記憶
装置PMEM1から命令が読み出されると命令レ
ジスタOPR4に格納される。データアドレス情
報を保持するオペランドシラブルはオペランドシ
ラブルレジスタOPS5に格納される。さらに外部
記憶装置PMEM1から読み出されたデータはメ
モリレジスタMR6に格納される。またPMEM1
にデータを格納する場合にもメモリレジスタMR
6を介してデータが転送される。オペランドシラ
ブルのアドレス情報はベースレジスタBSR7でベ
ース修飾され、アドレス演算器ADALU8で処理
対象データのPMEM1のアドレスを計算する。
演算結果はデータアドレスレジスタDAR3に格
納される。
PMEM1から読み出されたデータはMR6を介
してデータレジスタAR9,BR10に格納され、
命令で指示される処理が施される。演算処理を行
う場合には演算器ALU11が用いられる。状態
を制御するためにカウンタレジスタCR12が利
用され、+1及び−1できる。データの一時的な
退避レジスタとして汎用レジスタGR13が用い
られる。
第1のマイクロプログラム制御部SEQA20と
第2のマイクロプログラム制御部SEQB21は、
前述のレジスタの一部を共用する。共用されたレ
ジスタはSEQA20とSEQB21のいずれからで
も制御される可能性がある。さらにSEQAは
SEQB21を起動させることができる。起動させ
るマイクロプログラム制御部SEQA20は命令処
理を行うために主要なマイクロプログラムの流れ
を制御する。起動されるマイクロプログラム制御
部SEQB21はSEQA20と同時に動作しSEQA
20に対し従属の関係となる。
利用状態レジスタ23はSEQB21で読み出し
あるいは書き込みを行うレジスタ、フラグ、外部
メモリを登録しておくレジスタである。状態テー
ブル22は利用状態レジスタ23に書き込む複数
エントリを保持して、MPRAアドレス線39によ
り1つのエントリが選択される。MPRAアドレス
線39はSEQA20のマイクロ命令アドレス部に
よりアドレスが出力される。状態テーブル22の
1つのエントリがMPRAアドレス線39により選
択され、利用状態レジスタ23に書き込むタイミ
ングはSEQA20から出力されるSEQB起動コマ
ンドが出力されたときである。並列検出器24で
はSEQA20で実行対象になつているマイクロ命
令で使用するレジスタ、フラグ情報と利用状態レ
ジスタ23の比較を行う。SEQB21で使用する
レジスタ、フラグ、外部メモリとSEQA20で使
用するレジスタ、フラグ、外部メモリとが重なつ
ていなければAG0信号38を出力し、SEQA20
で指示された処理を行う。並列検出器24で1ケ
以上のレジスタ、フラグ、外部メモリが重複して
処理対象になつていると、後述のAG0信号38に
よりSEQA20のマイクロ命令の実行が待たされ
る。状態テーブル22は、市販のリードオンリメ
モリ(ROM)あるいはプログラマブルロジツク
アレイ(PLA)で構成される。
第2図に第1図で示した利用状態レジスタ23
と並列検出器24のさらに詳細な構成図を示す。
利用状態レジスタ23は、この処理装置内のIAR
2,DAR3などのレジスタに対応してSEQB21
で利用されるか否かにより利用状態を示すフラグ
で構成される。各フラグは、SEQB21で利用さ
れるレジスタであるときには“1”、利用されな
い場合には“0”にセツトされる。並列検出器2
4には利用状態レジスタ23とSEQA20のマイ
クロ命令をデコードしたMPRAデコード信号が入
力される。MPRAデコード信号はSEQA20から
出力されるレジスタ制御信号であり第1図で示し
た各レジスタに関して読み出す信号と、書き込む
信号を出力する。SEQA20のマイクロ命令によ
つて命令アドレスレジスタIAR2を参照する場合
にはSEQA20から出力されるMPRAデコード信
号の1つであるIARr信号30がアクテイブにさ
れる。IAR2に書き込む場合には、同じくSEQA
20から出力されるIARs信号31がアクテイブ
にされる。IARr信号30とIARs信号31はORゲ
ート32で論理和を求め、信号線33に出力され
る。利用状態レジスタ23のIARフラグは信号線
34に出力され、ANDゲート35で論理積が求
められ、信号線36を介してNORゲート37に
よつて論理和が求められる。他のレジスタに関す
る情報もIAR2と同様にMPRAデコード信号の読
み出しと書き込み信号の論理和を求め利用状態レ
ジスタ23中の対応するフラグと論理積を求め
NORゲート37に出力する。NORゲート37の
AG0信号38は利用状態レジスタ23で登録され
ているレジスタとMPRAデコード信号により1ケ
以上のレジスタがSEQA20とSEQB21で重複
して利用要求がでていることを検出すると“0”
になりる。利用要求が重複していない場合には
“1”を出力する。AG0信号38はSEQA20か
ら各レジスタに出力される制御信号が有効である
か否かを決定するために用いられ、“1”のとき
に制御信号が有効となる。
第3図に示す有効フラグ49は利用状態レジス
タ23の各フラグと同様、利用状態を示すフラグ
であり、有効フラグ49の出力信号53とMPRA
42でのSEQB起動コマンドをデコードした結果
を出力する信号線54との論理積を求めNORゲ
ート37に入力される。これにより有効フラグ4
9が“1”のときにSEQB起動コマンドの処理が
要求されるとAQ0信号38は“0”となり、
SEQB21での処理が終了し有効フラグ49が
“0”になるまでSEQA20の処理が待たされ
る。
SEQA20とSEQB21の構成図を第3図に示
す。SEQA20のマイクロプログラムはマイクロ
プログラムメモリMPMA41に格納されてい
る。MPMA41のマイクロプログラムはアドレ
ス線50を介して、アドレス決定回路A40で決
定されたマイクロプログラムアドレスで読み出さ
れる。MPMA41の出力はマイクロプログラム
レジスタMPRA42に格納される。MPRA42の
内容は、デコーダ44によつてデコードされ、各
レジスタの制御を行う。またこのデコーダ44の
出力はMPRAデコード信号として第1図、第2図
に示した並列検出器24への入力となる。MPRA
42のアドレス部からはSEQB21起動時に利用
状態レジスタ23に格納する状態テーブル22の
エントリを決定するためにMPRAアドレス39が
出力される。アドレス線50のアドレス内容は、
マイクロプログラムポインタMPPA43に格納さ
れ、次に処理すべきマイクロプログラムのアドレ
スを決定するための情報としてアドレス決定回路
A40で利用される。アドレス決定回路A40の
入力として、この他に本装置内の各種条件信号及
びMPRA42に格納されたアドレス情報がある。
これらのマイクロプログラム制御部の構成は、一
般のマイクロプログラム制御部と同じである。
SEQB21のアドレス決定回路B45とマイクロ
プログラムメモリMPMB46とマイクロプログ
ラムレジスタMPRB47の機能は、SEQA20の
対応するブロツクの機能と同様である。SEQA2
0からSEQB21に起動をかけるときには、
SEQB21が以前にSEQA20によつて指示され
た処理を行つている途中では、新たに起動をかけ
ることができないので、SEQB21の動作状態を
調べなければならない。この検査は第2図に示し
た並列検出器24で行われ、MPRA42の起動コ
マンドをデコードした信号線54と有効フラグ4
9の論理積を求め、SEQA21が動作可能である
か否かを示すAG0信号38によつて示される。
SEQA20のMPRA42にSEQB21を起動する
コマンドが格納されるとデコーダ44でSEQB起
動コマンドがデコードされ、信号線54がアクテ
イブとなる。この信号線54とAG0信号38の論
理積がANDゲート55によつて求められ、SEQB
が動作中ではなく、起動可能である場合にはゲー
ト55の出力がアクテイブとなる。ゲート55の
出力は信号線51を介してアドレス決定回路B4
5に出力される。この信号により信号線52を介
して送られるMPRA42のアドレス情報をもとに
してアドレス決定回路B45でSEQB21のマイ
クロプログラム開始アドレスを決定し、SEQB2
1での処理を開始する。このとき信号線51の信
号により有効フラグ49がセツトされ、信号線5
3によりデコーダ48の出力が有効にされる。
SEQB21の処理を終了させるマイクロコマンド
がMPRB47に格納され、処理終了コマンドの実
行を終了すると、有効フラグ49はクリアされ
る。以後のSEQB21における処理はデコーダ4
8の出力が無効にされるので行われない。さらに
このSEQB21から出力される終了コマンドをデ
コードしたSEQB終了信号56により利用状態レ
ジスタ23がクリアされる。
第4図はSEQA20とSEQB21とで共用され
るレジスタを制御する場合の制御例を第1図で示
したカウンタレジスタCR12を例として示すブ
ロツク図である。
第4図のCRrB70,MRrB71,CRr72,
MRr73,CRsB74,CRs75においては、添
字rによつて有効なデータを送つてくる送り側レ
ジスタを示す信号であることを表示し、添字sに
よつてデータを格納するレジスタを示す信号であ
ることを示す。また添字rあるいはsの次にBが
あるとSEQB21でデコードされた信号であるこ
とを示し、Bが記述されていない場合にはSEQA
20でデコードされた信号であることを示す。
CR12への入力はMR6とCR12から可能であ
りCRSEL60によつて2つの中の1つが入力先
として選択される。SEQB21からのデコード信
号MRrB71によりMR6を選択した場合とCRrB
70によりGR13を選択した場合においては、
それぞれORゲート62,63でアクテイブにさ
れ、MR6,CR12がCRSEL60出力として選
択される。SEaA20からCR12を制御する場合
にはSEQA20の制御の有効/無効を指示する
AG0信号38によつて制御が可能な場合と、不能
な場合がある。SEQA20のデコーダ44によつ
てデコードされたデコード信号MRr73により
MR6を選択した場合と、同じくSEQA20から
のデコード信号CRr72〜でCR12を選択した
場合を示す。第2図に示したAG0信号38が
“1”のときには各々のデコード信号がANDゲー
ト64,65により有効にされ、ORゲート6
2,63を介してCRSEL60の出力としてMR
6,CR12を選択する。AG0信号38が“0”
のときにはゲート64,65により、SEQA20
のデコード信号が無効にされ、CRSEL60の制
御を行うことができない。CRSEL60出力をCR
12にセツトするタイミング信号76はSEQB2
1のデコード信号CRsB74をORゲート66を介
して出力される。SEQA20でのCR12セツト
信号CRs75はANDゲート67によりAG0信号3
8と論理積を求められ、AG0信号38が“1”の
ときにはセツト信号は有効になるが、“0”のと
きにはセツト信号は無効にされる。
本実施例を用いて機械語命令を処理するときの
処理例を以下に示す。
第5図は処理説明に必要な機械語命令の形式を
示す。第5図aは、OPコードでレジスタ間の処
理を指定する場合で、アドレス可能なGR13レ
ジスタ2ケの間の処理を指定する。第5図bは
OPコードでレジスタと外部メモリ間での処理を
指定する場合で、アドレス可能なGR13レジス
タとオペランドシラブルでアドレスされる外部メ
モリ間での処理を指定する。
第6図はマイクロプログラムの形式を示す。
SOURCEフイールドではデータを送る際の送り
側レジスタ、外部メモリを指定し、RECEIVEフ
イールドではデータを受ける際の受け側レジス
タ、外部メモリを指定する。LOCALフイールド
ではSEQB21のスタート制御及びSEQB21の
処理終了制御、その他を行うコマンドが指定され
る。ADDRESSフイールドは、SEQB起動を行う
ときに、状態テーブルADDRESSとSEQB・
ADDRESSフイールドに分けられる。
第7図に本実施例で処理を行う機械語命令とフ
アームウエアフローを示す。本実施例を説明する
ために用いる2つの連続する機械語命令を第7図
aに示す“ADC GR0,GR1”の命令では、GR
13の0番地の内容をCR12で示された回数だ
けGR13の1番地の内容に加える処理を行う。
“MV M、CR”の命令では外部メモリPMEM1
のMで示されるアドレスの内容をCR12に格納
する。
第7図bにはSEQB21を用いず、SEQA20
のみで処理した場合のマイクロプログラムを示
す。順を追つて処理の説明を行う。“ADC GR
0,GR1”命令の処理開始時t1のタイミング
で、GR13の0番地の内容をAR9に格納する。
次にt2でGR13の1番地の内容をBR10に格納
する。次にt3,t4のタイミングでCR12で示され
る回数だけAR9の内容をBR10に加える処理を
行う。CR12の初期値が“1”であつた場合に
は、2回のAR9内容をBR10に加え、次の処理
t7のタイミングに移る。t7ではBR10の内容を
GR13の1番地に格納して“ADC GR0,GR
1”命令を終了する。t8では外部メモリPMEM1
から新たな機械語命令“MV、M、CR”を読み
出しORR4,OPS5に格納する。t9においてIAR
2の内容にこの命令が占めるバイト長Lを加えて
命令アドレスレジスタIAR2の内容を更新する。
これと同時にOPR4の内容により分岐を行い、
各OPコード毎の処理を開始する。ここではt10
タイミングで、ベースレジスタBSR7の内容にオ
ペランドシラブルOPS5のアドレス内容を加えて
外部メモリPMEM1のアドレスを求めDAR3に
格納する。t11のタイミングでは、DAR3で指定
されたPMEM1のデータを読み出MR6に格納す
る。次に、t12においてMR6からCR12にデー
タを移送して“MV M、CR”命令を終了する。
上記の処理をSEQA20,SEQB21を用いた
本実施例で行つた場合のマイクロプログラム処理
フローを第7図cに示す。t1のタイミングでは、
SEQA20のMPRA42には、GR13の0番地
の内容をAR9に格納することを指定するコマン
ドが、SOURCEフイールドとRECEIVEフイール
ドに指定され、LOCALフイールドにはSEQB起
動を指示するコマンドが格納されている。テーブ
ルADDRESSフイールドには状態テーブルのエン
トリを示すアドレスが格納され、SEQB・
ADDRESSフイールドにはSEQB21の開始アド
レスが格納されている。MPRA42に格納されて
いるこのマイクロプログラムステツプを実行する
と、デコーダ44によりGR13の0番地の内容
をAR9に格納することが指定される。このとき
の利用状態レジスタ23の内容はSEQB21の処
理が無効であることからクリアされており、
SEQB21ではどのレジスタをも使用していない
ことを示している。このことから、第2図に示し
た全ANDゲート35の出力は“0”となりNOR
ゲート37の出力AG0信号38は“1”となり、
SEQA20で指定される処理が有効になる。つま
り、第4図のGRr72の信号とAG0信号38がア
クテイブとなることによりORゲート63がアク
テイブとなりARSEL60の出力としてGR13が
選択される。また、ARs75とAG0信号38がア
クテイブとなることによりANDゲート67によ
りARのセツト信号が出力され、AR9にはGR1
3の内容が格納される。SEQB起動コマンドがデ
コーダ44でデコードされゲート55でSEQB2
1への起動が認められると第3図の信号線51に
より有効フラグ49がセツトされ以後のタイミン
グでデコーダ48の出力が有効になる。また
MPRA42のSEQB・ADDRESSフイールドと共
にSEQB21のアドレス決定回路B45の入力と
なり、SEQB21での開始マイクロプログラムア
ドレスが決定される。さらにMPRA42の状態テ
ーブルADDRESSフイールドにより状態テーブル
22の1ケのエントリを参照し、信号線51で
SEQB起動コマンドが有効にされたときに利用状
態レジスタ23に前記エントリが格納される。こ
れにより以後のSEQB21で利用するレジスタが
利用状態レジスタ23に登録される。第7図cに
おいてはGR13,BR10,CR12,AR9が
SEQB21で利用されるので、これらのレジスタ
に対応する利用状態レジスタ23のフラグが
“1”にされる。タイミングt2以後においてSEQB
21ではt7までにCR12がゼロになるまでの間
AR9の内容をBR10に加える処理を行う。CR
12の初期値が1であることから、加算を2回行
い、t7のタイミングでBR10の内容をGR13の
1番地に格納する。このt7で実行するマイクロコ
マンドとして利用状態レジスタクリアがSEQB2
1のMPRB47に格納され、デコーダ48でデコ
ードしたSEQB終了信号が信号線56に出力され
る。この信号により、有効フラグ49がクリアさ
れ、以後SEQB21のデコード出力は無効にされ
る。また、この信号により利用状態レジスタがク
リアされ、SEQB21ではどのレジスタも利用し
ていないことが表示される。
他方、t1タイミンの後、SEQA20は、t1で処
理されたマイクロプログラムに続くマイクロプロ
グラムの処理がt2以後、続行される。t5までの間
に、次の命令“MV M、CR”の処理が行われ、
Mに対応するデータがMR6に外部メモリPMEM
1から読み出される。t2からt5までの間にSEQA
20で利用するレジスタが、利用状態レジスタ2
3に登録されていたときの処理を第4図を利用し
てCR12の場合について示す。このとき第2図
に示す利用状態レジスタ23のCRフラグは1に
なつている。CR12への入力は、CR12を歩進
させた結果と、MR6である。SEQA20の
MPRAデコード信号としてCRを利用する場合に
は第2図のCRrあるいはCRsがアクテイブとなり
対応するORゲートがアクテイブとなり、CRに対
応するANDゲートがアクテイブとなる。このこ
とからNORゲート37の出力AG0信号38は
“0”となる。このAG0信号38を第4図のAND
ゲート64,65の入力とすることによりSEQA
20のデコード信号CRr72,MRr73を無効に
し、CRSEL60の制御をSEQB21のデコード
信号CRrB70,MRrB71に任せる。さらにCR
12のセツト信号も、ANDゲート67により
SEQA20のデコード信号を無効にし、SEQB2
1のデコード信号CRsB74に従わせる。
第7図cにおいて、上記のように、SEQA20
とSEQB21で利用するレジスタが重なる場合
は、CR12をSEQA20で利用するときに生ず
る。つまりt6のタイミングでt5での処理に続き、
MR6からCR12にデータを移送しようとした
ときに生ずる。このときには、AG0信号38は
“0”になりSEQA20の実行が待たされる。t7
においてSEQB21の処理が終了し、利用状態レ
ジスタクリアコマンドをデコードした結果生ずる
SEQB終了信号56により利用状態レジスタが
a110にクリアされる。これによりAG0信号38は
“1”になりSEQA20のマイクロプログラムが
実行されt8においてMR6の内容がCR12に送ら
れる。
第7図bとcを比較することにより、1ケのマ
イクロプログラム制御部だけではbに示すように
t12まで必要であつた処理ステツプが、本実施例
によればcに示すようにt8で処理することが可能
となり、処理効率を向上させることができる。
本実施例では、各レジスタ、フラグの参照、格
納を区別せずに両方共にハードウエアを利用して
いるとした。しかし、さらに処理効率を向上させ
るために、SEQA20で参照するハードウエアと
SEQBで参照するハードウエアが重複しても、参
照するだけであればデータの内容が変わらず、
SEQA20,SEQB21の処理に影響しないので
SEQA20での処理を継続させることができる装
置にすることができる。
次に本発明の第2の実施例について図面を参照
して説明する。
第1図のブロツク図においてはマイクロプログ
ラム制御部としてSEQA20とSEQB21を備
え、SEQA20からSEQB21を起動させること
ができる。第2の実施例においては、第8図に示
すように、SEQA20とSEQB21の他にSEQC
26がSEQA20により起動させられるマイクロ
プログラム制御部として加えられる。つまり本実
施例ではSEQA20に従属して起動をかられられ
る従属制御部が2ケになつた場合について示す。
SEQA20のマイクロプログラムはマイクロプ
ログラムメモリMPMA41に格納されている。
MPMA41のマイクロプログラムはアドレス線
50を介して、アドレス決定回路A40で決定さ
れたマイクロプログラムアドレスで読み出され
る。MPMA41の出力はマイクロプログラムレ
ジスタMPRA42に格納される。MPRA42の内
容は、デコーダ44によつてデコードされ、各レ
ジスタの制御を行う。アドレス線50のアドレス
内容は、アドレス決定回路A40の入力として、
又、更にアドレス決定回路Aの入力とにはこの他
に本装置内の各種条件信号及びMPRA42に格納
されたアドレス情報がある。これらのマイクロプ
ログラム制御部の構成は、一般のマイクロプログ
ラム制御部と同じである。SEQB21のアドレス
決定回路B45とマイクロプログラムメモリ
MPMB46とマイクロプログラムレジスタMPRB
47及びSEQC26のアドレス決定回路C100
とマイクロプログラムメモリMPMC101とマ
イクロプログラムレジスタMPRC102の機能
は、SEQA20の対応するブロツクの機能と同様
である。SEQA20のMPRA42にSEQB21を
起動するコマンドが格納されるとデコーダ44で
従属制御部起動コマンドがデコードされた出力と
AG0信号38の論理積がANDゲート110によ
つて求められる。ゲート110の出力は信号線1
11を介して従属制御部デコーダ105の出力を
有効にする。従属制御部デコーダ105は信号線
111により有効にされるとSEQA20のMPRA
42に格納されているマイクロプログラムで起動
をかける従属制御部を指示する情報をデコードす
ることにより、起動をかける従属制御部を指示す
る。この従属制御部デコーダ105によりSEQB
21あるいはSEQC26が起動をかけられる。起
動をかけられた従属制御部ではアドレス線50に
よつてMPRA42から送られる開始アドレスをア
ドレス決定回路の出力として処理を開始する。
第1図に示したAG0信号38を得るための回路
が本実施例においては異る。つまりSEQA20で
ある従属制御部を起動させるときには、この従属
制御部で利用するハードウエアが他の従属制御部
で利用されているか否かを検査し、重複して利用
されていれば、他の従属制御部での利用が終了す
るまでAG0信号38を“0”にして起動させるこ
とを待たなければならない。この回路を第9図に
示す。SEQB21が起動するときに起動された処
理で利用するハードウエアがアドレス線50によ
り状態テーブル122から読み出され利用状態レ
ジスタB120に記憶する。さらにSEQC26で
利用するハードウエアを利用状態レジスタC12
1に記憶する。SEQB21,SEQC26で利用し
ているハードウエアに関する情報は利用状態レジ
スタB120、利用状態レジスタC121の対応
するレジスタ表示ビツトの論理和を求めることに
より得られ、ORゲート群123の出力となる。
ORゲート群123の出力は、第2図における利
用状態レジスタ23と同様に扱われ、SEQA20
でのマイクロ命令で要求されるハードウエア利用
信号とANDゲート群124で論理積が求められ
NORゲート125、ANDゲート126を介して
AG0信号38となる。
SEQA20がSEQB21を起動するときには、
起動をかけられたSEQB21で利用するハードウ
エアと、他の従属制御部で利用しているハードウ
エアとが重複しているか否かを調べる必要があ
る。このためANDゲート群127で、起動をか
けられた処理で利用するハードウエアを指示する
状態テーブル122出力とORゲート群123の
出力の論理積を求める。1つ以上のハードウエア
が重複しているとNORゲート128の出力は
“0”となりANDゲート129の出力が“0”と
なる。ANDゲート129の出力はORゲート13
0の入力となり、このORゲート130のもう一
方の入力はSEQA20で従属制御部を起動する際
には“0”となり、ORゲート130の出力は
“0”になる。この出力がANDゲート126に入
力されることにより、SEQA20で従属制御部を
起動させるときにハードウエア利用が重複してい
ることを検出するとAG0信号38は“0”とな
り、第8図のANDゲート110により従属制御
部に起動をかけることができなくなる。
第10図a,b,cは第2の実施例における状
態テーブル122、利用状態レジスタB120と
利用状態レジスタC121を示す。状態テーブル
122は複数語で構成され、MPRA42のテーブ
ルADDRESSフイールドにより指示される。1語
の中には本装置内の各レジスタ、フラグに対応し
た利用状態表示ビツトを含んでいる。第2の実施
例ではこの状態テーブル122の語にはSEQB2
1とSEQC26の利用状態を表示するビツトがあ
る。SEQA20により起動をかけられた従属制御
部の処理中に利用するハードウエアに対応するフ
ラグは1になつている。SEQB21に対応して
SEQB21での処理で用いているハードウエア利
用状態を示す利用状態レジスタ120には通常の
ハードウエアの他に、SEQB21を利用している
か否かを示すビツトが備えられている。利用状態
レジスタC121にはSEQC26の利用状態を示
すビツトが備えられている。これらのビツトは従
属制御部を起動するときに状態テーブル122の
対応する出力ビツトと使用状態を検査され、動作
中の従属制御部に起動をかけることを防ぐ。利用
状態レジスタB120,C121は対応する
SEQB21、SEQC26の処理が終了したときに
クリアされ、それまで使用中であつたハードウエ
アを他の制御部が利用できるようにする。
【図面の簡単な説明】
第1図は本発明における一実施例を示すブロツ
ク図、第2図は本実施例における利用状態レジス
タと並列検出器の回路図、第3図は、本実施例に
おけるSEQAとSEQBのブロツク図、第4図は本
実施例におけるレジスタCRのブロツク図、第5
図は機械語命令形式の一例を示す図、第6図はマ
イクロプログラム形式を示す図、第7図は、機械
語命令列とそれを実行するためのマイクロプログ
ラム処理フローを示す図、第8図は本発明の第2
の実施例を示す制御部のブロツク図、第9図は第
2の実施例におけるAG0信号検出ブロツク図、第
10図は第2の実施例における状態テーブル及び
利用状態レジスタを示す図である。 図において、20は第1のマイクロプログラム
制御部SEQA、21は第2のマイクロプログラム
制御部SEQB、22は状態テーブル、23は利用
状態レジスタ、24は並列検出器をそれぞれ示
す。

Claims (1)

    【特許請求の範囲】
  1. 1 マイクロプログラムで制御される第1実行制
    御装置と、該第1実行制御装置からの開始信号に
    より起動するマイクロプログラム制御の第2実行
    制御装置と、該第2実行制御装置が処理中に参照
    及び格納されるレジスタ、状態表示フラグなどの
    各種記憶装置を表示する利用状態レジスタと、第
    2実行制御装置によつて利用されている記憶装置
    を該第1実行制御装置で利用する要求が生じたと
    きに前記利用状態レジスタの表示を参照して第2
    実行制御装置により利用されていることを検出す
    る並列検出器と、前記第1実行制御装置から前記
    第2実行制御装置を起動する手段とを備え、前記
    第1実行制御装置から前記第2実行制御装置を起
    動するマイクロプログラムにより前記利用状態レ
    ジスタに第2実行制御装置で利用する記憶装置を
    登録した後前記第1実行制御装置と前記第2実行
    制御装置とが並行して処理を行い、前記並列検出
    器で第1実行制御装置が第2実行制御装置で利用
    している記憶装置を利用する要求が生ずるまで第
    1実行制御装置が処理を続行することを特徴とす
    る計算機。
JP14666179A 1979-11-13 1979-11-13 Microprogram parallel processing computer Granted JPS5671139A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14666179A JPS5671139A (en) 1979-11-13 1979-11-13 Microprogram parallel processing computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14666179A JPS5671139A (en) 1979-11-13 1979-11-13 Microprogram parallel processing computer

Publications (2)

Publication Number Publication Date
JPS5671139A JPS5671139A (en) 1981-06-13
JPS6221131B2 true JPS6221131B2 (ja) 1987-05-11

Family

ID=15412759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14666179A Granted JPS5671139A (en) 1979-11-13 1979-11-13 Microprogram parallel processing computer

Country Status (1)

Country Link
JP (1) JPS5671139A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0121372A3 (en) * 1983-04-05 1988-03-02 Unisys Corporation Hierarchy of control stores for overlapped data transmission
US4586133A (en) * 1983-04-05 1986-04-29 Burroughs Corporation Multilevel controller for a cache memory interface in a multiprocessing system
JPH01316825A (ja) * 1988-06-16 1989-12-21 Nec Corp プログラム処理方式

Also Published As

Publication number Publication date
JPS5671139A (en) 1981-06-13

Similar Documents

Publication Publication Date Title
JPH06236268A (ja) 命令の長さを判定する装置と方法
JPH0128415B2 (ja)
JPH04309131A (ja) 命令群用マイクロコード生成装置及びコンピュータにおける組合せ装置
JP2001525568A (ja) 命令デコーダ
JPS61204758A (ja) コ・プロセツサ制御方式
JPS645330B2 (ja)
JPH03233630A (ja) 情報処理装置
EP0279953B1 (en) Computer system having mixed macrocode and microcode instruction execution
JPS6212529B2 (ja)
JPS6221131B2 (ja)
JPH031231A (ja) マイクロプログラム制御装置
JP2680828B2 (ja) ディジタル装置
JPS6160459B2 (ja)
JPH0574096B2 (ja)
JP2581565B2 (ja) ガード付命令を実行するデータ処理装置
JP2619425B2 (ja) シーケンスコントローラ
JPH0752402B2 (ja) データ処理装置
EP0312183A2 (en) Digital data processing system
JPS5925264B2 (ja) ベクトル命令処理方式
JPS6149692B2 (ja)
JPH0279122A (ja) 浮動小数点演算機構
JP2825315B2 (ja) 情報処理装置
JPS60193046A (ja) 命令例外検出方式
EP0110613A2 (en) Digital data processing system
JPS58195255A (ja) デ−タ処理装置