JPH0731596B2 - 条件付きサブルーチン呼出し方式 - Google Patents

条件付きサブルーチン呼出し方式

Info

Publication number
JPH0731596B2
JPH0731596B2 JP62255705A JP25570587A JPH0731596B2 JP H0731596 B2 JPH0731596 B2 JP H0731596B2 JP 62255705 A JP62255705 A JP 62255705A JP 25570587 A JP25570587 A JP 25570587A JP H0731596 B2 JPH0731596 B2 JP H0731596B2
Authority
JP
Japan
Prior art keywords
address
instruction
conditional
field
subroutine
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
JP62255705A
Other languages
English (en)
Other versions
JPH0198023A (ja
Inventor
恭司 川岸
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP62255705A priority Critical patent/JPH0731596B2/ja
Publication of JPH0198023A publication Critical patent/JPH0198023A/ja
Publication of JPH0731596B2 publication Critical patent/JPH0731596B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、電子計算機システムなどのデータ処理システ
ム内に設置されるマイクロプログラム制御装置に適用さ
れる条件付きサブルーチン呼出し方式に関するものであ
る。
(従来の技術) 電子計算機システムなどのデータ処理処理システムで
は、メモリアクセス時間の短縮による処理の高速化を図
るため、CPU内の制御メモリにマイクロプログラムを格
納しこのマイクロプログラムを構成するマイクロ命令群
を一つずつ高速で読出しながら実行してゆくマイクロプ
ログラム制御装置が汎用されている。
このようなマイクロプログラム制御装置においてサブル
ーチン呼出し命令を実行させる場合、このサブルーチン
呼出し命令の格納アドレスの次のアドレスを戻りアドレ
スとして保存させつつサブルーチンの先頭アドレスに分
岐させている。
(発明が解決しようとする問題点) 上記従来のサブルーチン呼出し方式では、サブルーチン
の実行終了後はこのサブルーチンを呼出した命令の次の
アドレスに戻るようにしている。従って、演算結果など
を示す状態信号に応じて複数のサブルーチンの一つを選
択的に呼出す場合には、上記アドレスの割付けに関する
条件を満すために、通常のサブルーチン呼出し命令に条
件付き分岐命令や多数のジャンプ命令を組合せることが
必要になり、マイクロプログラムのステップ数が増加す
るという問題がある。
例えば、演算結果を示す状態信号(演算器のキャリー、
ゼロ、オバーフローやレジスタの特定ビットなど)に応
じて4種類のサブルーチンA,B,C,Dの一つを呼出す場合
を想定すると、制御メモリ上へマイクロ命令群の配置は
第3図に示すようになる。すなわち、制御メモリのアド
レス(99)に条件付き分岐命令が格納されると共に、ア
ドレス(103)、(105)、(107)、(109)のそれぞれ
にはサブルーチンD、A、B、Cを呼出すためのサブル
ーチン呼出し命令が格納され、それぞれの戻りアドレス
(104)、(106)、(108)、(110)にはアドレス(11
1)へのジャンプ命令が格納される。また、アドレス(1
00)、(101)、(102)のそれぞれにはサブルーチン呼
出し命令の格納アドレス(105)、(107)、(109)へ
のジャンプ命令が格納される。
このように、演算結果などを示す状態信号に応じて複数
のサブルーチンの一つを選択的に呼出す場合には、複数
のサブルーチン呼出し命令の他に条件付き分岐命令と多
数のジャンプ命令が必要になり、マイクロプログラムの
ステップ数が増加し、性能の低下を招くという問題があ
る。
(問題点を解決するための手段) 本発明に係わる条件付きサブルーチン呼出し方式は、ア
ドレス制御フィールド及び次アドレスフィールドを含む
マイクロ命令で構成される条件付きサブルーチン呼出し
命令と、この条件付きサブルーチン呼出し命令の実行時
にアドレス制御フィールド及び状態信号に基づき次アド
レスフィールドを修飾することにより新たな次アドレス
フィールドを作成しこれを呼出し対象のサブルーチンの
先頭アドレスとしてアドレスレジスタに設定すると共
に、この条件付きサブルーチン呼出し命令の格納アドレ
スを歩進したアドレスを呼出されたサブルーチンからの
戻りアドレスとして保存する制御手段とを備え、マイク
ロプログラムのステップ数を大幅に低減して性能の向上
を実現するように構成されている。
以下、本発明の作用を実施例と共に詳細に説明する。
(実施例) 第1図は、本発明の一実施例に係わる条件付きサブルー
チン呼出し方式を適用するマイクロプログラム制御装置
の構成を示すブロック図であり、1はマイクロプログラ
ムを格納する制御メモリ、2は制御メモリから読出され
たマイクロ命令を保持するマイクロ命令レジスタ、3は
制御メモリ2に供給するアドレスを保持するアドレスレ
ジスタ、4はアドレスレジスタ3に保持させるアドレス
を選択するセレクタ、5はアドレスレジスタ4に保持さ
れたアドレスを歩進するアドレス歩進回路、6はアドレ
ス歩進回路5の出力を戻りアドレスとして選択的に保存
する戻りアドレスレジスタ、7はデコーダ、8はセレク
タである。
制御メモリ1に格納中のマイクロプログラムを構成する
マイクロ命令群は、アドレスレジスタ3の内容で指定さ
れる格納アドレスから一つずつ読出され、マイクロ命令
レジスタ2に保持され実行されてゆく。実行されるマイ
クロ命令が分岐やジャンプやサブルーチン呼出しなどア
ドレスの跳躍を伴わない命令であれば、アドレス歩進回
路5で歩進されたアドレスが次に実行すべき命令の格納
アドレス(「次アドレス」)としてセレクタ4を経てア
ドレスレジスタ3に設定される。一方、実行されるマイ
クロ命令がアドレスの跳躍を伴う命令であれば跳び先の
アドレスが次アドレスフィールドで指定され、この次ア
ドレスフィールドがセレクタ4を経てアドレスレジスタ
3に設定される。
跳び先のアドレスが無条件に定まる命令の場合には、次
アドレスフィールドの一部はセレクタ8を介してそのま
まセレクタ4に供給される。これに対して、条件付き分
岐命令や本発明による条件付きサブルーチン呼出し命令
など跳び先のアドレスが条件付きで定まる命令の場合に
は、マイクロ命令レジスタ2中の次アドレスフィールド
の一部がセレクタ8においてデコーダ7の出力で置き換
えられることにより修飾され、これが次アドレスとして
セレクタ4に供給される。
本発明によるサブルーチン呼出し命令は、第1図のマイ
クロ命令レジスタ2の保持内容で示すように、アドレス
制御フィールドと、選択制御フィールドと、次アドレス
フィールドで構成される。この条件付きサブルーチン呼
出し命令は、演算器のキャリー、ゼロ、オバーフローな
ど演算結果を示す状態信号に応じて4種類のサブルーチ
ンA,B,C,Dの一つを選択的に呼出す命令であるとする。
この条件付きサブルーチン呼出し命令がマイクロ命令レ
ジスタ2に保持され実行されると、この命令中の選択制
御フィールドによってデコーダ7の機能が有効化され
る。デコーダ7は、この条件付きサブルーチン呼出し命
令中のアドレス制御フィールドと、演算器から供給され
るキャリーやオーバーフローなどの状態信号に基づき次
アドレスフィールドの一部と置き換えるための下位2ビ
ットのアドレス信号を作成し、これをセレクタ8に供給
する。セレクタ8は、この条件付きサブルーチン呼出し
命令中の制御フィールドの実行によって制御され、この
命令中に含まれる次アドレスフィールドの下位2ビット
をデコーダ7から供給される2ビットで置き換えてセレ
クタ4に供給する。
さらに、この条件付きサブルーチン呼出し命令の選択制
御フィールドの実行によってこの命令の格納アドレスを
歩進するアドレス歩進回路5の出力が戻りアドレスレジ
スタ6に保存されると共に上記修飾済みの次アドレスが
セレクタ4を経てアドレスレジスタ3に設定される。
従って、第2図にマイクロプログラムの構成で示すよう
に、上述の条件付きサブルーチン呼出し命令が制御メモ
リのアドレス(100)に格納されているとものすれば、
この命令の実行によってアドレス(200)、(201)、
(202)、(203)に格納中のサブルーチンA、B、C、
Dのうち一つが状態信号に応じて呼出される。また、呼
出されたサブルーチンの末尾で実行されるリターン命令
によって戻りアドレスレジスタ6に保存中の戻りアドレ
ス(101)がセレクタ4を経てアドレスレジスタ3に設
定され、メインルーチンへの復帰が行われる。
以上、条件付きサブルーチン呼出し命令中の次アドレス
フィールドの下位2ビットを設定された条件に応じて置
き換える構成を例示したが、この次アドレスフィールド
中の上位ビット群や、中間のビット群など適宜なビット
群を置き換える構成とすることができる。
また、次アドレスフィールドの一部のビット群を条件に
応じて定まるビット群で置き換える構成を例示したが、
次アドレスフィールド中の一部のビット群を論理演算に
よって変更することにより次アドレスを修飾することも
できる。
(発明の効果) 以上詳細に説明したように、本発明の条件付きサブルー
チン呼出し方式は、条件付きサブルーチン呼出し命令
と、その実行時にアドレス制御フィールド及び状態信号
に基づき次アドレスフィールドを修飾して呼出し対象の
サブルーチンの先頭アドレスとしてアドレスレジスタに
設定すると共にこのサブルーチン呼出し命令の格納アド
レスを歩進したアドレスをサブルーチンからの戻りアド
レスとして保存する制御手段とを備える構成であるか
ら、1命令の実行によって設定条件に応じた複数のサブ
ルーチンの一つを選択的に呼出すことが可能となり、従
来の方式に比べてマイクロプログラムのステップ数が大
幅に圧縮され、性能が向上するという効果が奏される。
【図面の簡単な説明】
第1図は本発明の一実施例に係わる条件付きサブルーチ
ン呼出し方式を適用するマイクロプログラム制御装置の
構成を示すブロック、第2図は上記実施例を制御メモリ
上へのマイクロ命令の配置によって説明するための概念
図、第3図は従来の条件付きサブルーチン呼出し方式を
制御メモリ上へのマイクロ命令の配置によって説明する
ための概念図である。 1……制御メモリ、2……マイクロ命令レジスタ、3…
…アドレスレジスタ、4、8……セレクタ、5……アド
レス歩進回路、6……戻りアドレスレジスタ、7……デ
コーダ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】マイクロプログラムを構成するマイクロ命
    令群をアドレスレジスタの内容に従って制御メモリから
    一つずつ読出して実行してゆくマイクロプログラム制御
    装置において、 アドレス制御フィールド及び次に実行すべき命令の格納
    アドレスを指定する次のアドレスフィールドを含むマイ
    クロ命令で構成される条件付きサブルーチン呼出し命令
    と、 この条件付きサブルーチン呼出し命令の実行時に前記ア
    ドレス制御フィールド及び状態信号に基づき前記次アド
    レスフィールドを修飾することにより新たな次アドレス
    フィールドを作成しこれを呼出し対象のサブルーチンの
    先頭アドレスとしてアドレスレジスタに設定すると共
    に、この条件付きサブルーチン呼出し命令の格納アドレ
    スを歩進したアドレスを呼出されたサブルーチンからの
    戻りアドレスとして保存する制御手段とを備えたこと特
    徴とする条件付きサブルーチン呼出し方式。
JP62255705A 1987-10-09 1987-10-09 条件付きサブルーチン呼出し方式 Expired - Lifetime JPH0731596B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62255705A JPH0731596B2 (ja) 1987-10-09 1987-10-09 条件付きサブルーチン呼出し方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62255705A JPH0731596B2 (ja) 1987-10-09 1987-10-09 条件付きサブルーチン呼出し方式

Publications (2)

Publication Number Publication Date
JPH0198023A JPH0198023A (ja) 1989-04-17
JPH0731596B2 true JPH0731596B2 (ja) 1995-04-10

Family

ID=17282489

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62255705A Expired - Lifetime JPH0731596B2 (ja) 1987-10-09 1987-10-09 条件付きサブルーチン呼出し方式

Country Status (1)

Country Link
JP (1) JPH0731596B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2549248Y2 (ja) * 1991-08-30 1997-09-30 富士重工業株式会社 車両用燃料供給装置の安全回路

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58213351A (ja) * 1982-06-07 1983-12-12 Nec Corp マイクロプログラム制御装置
JPS62111372A (ja) * 1985-11-11 1987-05-22 Minolta Camera Co Ltd メモリシ−トの保管システム

Also Published As

Publication number Publication date
JPH0198023A (ja) 1989-04-17

Similar Documents

Publication Publication Date Title
US3983539A (en) Polymorphic programmable units employing plural levels of sub-instruction sets
US3983541A (en) Polymorphic programmable units employing plural levels of phased sub-instruction sets
US4558411A (en) Polymorphic programmable units employing plural levels of sub-instruction sets
KR0138468B1 (ko) 마이크로 컴퓨터
US4179731A (en) Microprogrammed control system
JPH0374434B2 (ja)
JPH02130634A (ja) プロセッサシステム、コンピュータシステム及び命令処理方法
US5504869A (en) High speed processing system capable of executing strings of instructions in order without waiting completion of previous memory access instruction
US4514804A (en) Information handling apparatus having a high speed instruction-executing function
US4550369A (en) Apparatus and method for processing macroinstructions and microinstructions
US4674063A (en) Information processing apparatus having a sequence control function
EP0079370B1 (en) Digital computer for executing instructions in three time-multiplexed portions
US5124910A (en) Microprogram control apparatus for generating a branch condition signal to be designated by a micro-branch instruction
EP0164418B1 (en) Microprogram control system
US5586337A (en) Programmable controller with timing control
JPH0461390B2 (ja)
JPH0731596B2 (ja) 条件付きサブルーチン呼出し方式
JPH0512751B2 (ja)
EP0079995B1 (en) Information handling apparatus having an instruction-executing function at a high speed
US4285036A (en) Data processing device using a subroutine call instruction
US20020129229A1 (en) Microinstruction sequencer stack
EP0359823A1 (en) Method and apparatus for controlling the execution of microprogram
JPS63141131A (ja) パイプライン制御方式
JPS6115453B2 (ja)
JPH08137690A (ja) プログラム実行制御方法