JPS60243744A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS60243744A
JPS60243744A JP10086785A JP10086785A JPS60243744A JP S60243744 A JPS60243744 A JP S60243744A JP 10086785 A JP10086785 A JP 10086785A JP 10086785 A JP10086785 A JP 10086785A JP S60243744 A JPS60243744 A JP S60243744A
Authority
JP
Japan
Prior art keywords
program
processing
software
subroutine
instruction
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
Application number
JP10086785A
Other languages
English (en)
Inventor
Kazumitsu Kondo
近藤 和充
Shigeo Tsujioka
辻岡 重夫
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10086785A priority Critical patent/JPS60243744A/ja
Publication of JPS60243744A publication Critical patent/JPS60243744A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の利用分野] 本発明は、情報処理装置に関し、特にソフトウェア・プ
ログラムとファームウェア・プログラムの途中からソフ
トウェア・サブルーチン・プログラムをコールして共用
することができる情報処理装置に関するものである。
〔発明の背景〕
サブルーチン・プログラムは、従来より、ソフトウェア
・プログラムの処理の共通化、およびこれに伴うプログ
ラム容量の削減等を目的として利用されている。
第3図は、従来の情報処理装置におけるサブルーチン制
御システムのブロック図である。
この制御システムは、ハードウェアとソフトウェアから
構成されている。
いま、ソフトウェア・プログラム1と2がソフトウェア
・サブルーチン・プログラム3を共用する場合、ソフト
ウェア・プログラム1あるいは2の処理進行の途中にお
いてサブルーチン・プログラム3への処理移行命令4あ
るいは5を発行する。
それぞれ経路6によって、処理移行命令(分岐命令)4
あるいは5は、中央演算処理装置7の命令解読回路(デ
コーダ)8で解読され、各種の命令を処理実行する複数
の命令処理回路9のうちの処理移行命令の処理回路10
に経路11で制御が渡される。なお、複数の命令処理回
路9をソフトウェアで実現すれば、オペレーティング・
システム・プログラムがこの機能を遂行する。
処理移行プログラム10は、移行命令を発行したソフト
ウェア・プログラム1あるいは2の戻りアドレス、つま
り発行された処理移行命令4あるいは5の次の命令アド
レス12あるいは13、およびソフトウェア・ブロクラ
ム1あるいは2で使用する特定情報(例えば、情報処理
装置で使用するレジスタ類、および主記憶装置上、ある
いはローカル・ストレージ上のエリア情報等)を主記憶
装置上あるいは中央演算処理装置7内に設置されたスタ
ック・エリア14内に経路15で格納する。
処理移行ブロクラム10は、このよ5うな処理を行った
後、処理移行命令4あるいは5で示されたソフトウェア
・サブルーチン・ブロクラム3のリンク・アドレス(先
頭アドレス)を次の命令実行アドレスとして命令解読回
路8に通知し、処理を終了する。
すなわち、分岐先のアドレスからサブルーチン・プログ
ラム3の先頭命令が読み出されて、命令解読回路8に入
力する。このようにして、命令解読回路8が次の命令を
解読することにより、経路16でソフトウェア・サブル
ーチン・プログラム3に処理が移行される。
次に、ソフトウェア・サブルーチン・ブロクラム3の処
理が終了し、ソフトウェア・プログラムlあるいは2に
処理を戻す場合には、処理復帰命令17を発行し、経路
18で命令解読回路8に入力して、ここで解読すること
により経路11で処理復帰プログラム19に渡し、復帰
処理の依頼を行う。処理復帰ブロクラム19は、処理移
行時に処理移行プログラム10がスタック・エリア14
に格納した戻りアドレス12あるいは13等の情報を、
経路20で取り出し、命令解読口N8に渡す。
命令解読回路8が次の命令を解読することにより、ソフ
トウェア・プログラムlあるいは2の次の命令実行アド
レス12あるいは13に、経路21あるいは22で復帰
されたことになる。
第3図においては、ソフトウェア・サブルーチン・プロ
グラムは、ソフトウェア・プログラムからの利用のみを
対象に作成されているため、これをファームウェア・プ
ログラム(マイクロ・プログラム)の途中から直接コー
ルすることは不可能であり、またそのための制御回路も
設けられてはいない。
そこで、従来、第4図に示すように、終了処理制御シス
テム27、連絡情報エリア26等のサブシステムを追加
して、ファームウェア・ブロクラム23からソフトウェ
ア・サブルーチン・プログラム3を利用できるようにし
た情報処理装置が提案されている。
すなわち、従来、ソフトウェア・サブルーチン・ブロク
ラム3で処理していた機能に加えて、中央演算処理装置
7で動作するファームウェア・プログラム23からソフ
トウェア・サブルーチン・プログラム3に処理移行する
命令(分岐命令)24を処理する際に、ファームウェア
・プログラム23からのリンク標示フラグおよびファー
ムウェア・プログラムの戻りアドレス25をソフトウェ
ア・サブルーチン・プログラム3に連絡するための連絡
情報エリア26を設けるとともに、ソフトウェア・サブ
ルーチン・プログラム3の処理終了時に、連絡情報エリ
ア26のファームウェア・プログラム・リンク標示フラ
グを識別分離する命令28等を有する終了処理制御シス
テム27を設ける。
この終了処理制御システム27を設けることにより、サ
ブルーチン・プログラム3の処理が終了すると、命令2
8でソフトウェア・プログラムあるいはファームウェア
・プログラムのいずれからの分岐であるかを識別分離し
、ソフトウェア・プログラムからの処理移行であれば、
従来と同じように処理復帰命令17を発行して、経路1
8で命令解読回路8に送出し、命令解読回路8から経路
11を介して処理復帰プログラム19へ処理を渡す。ま
た、ファームウェア・プログラムからの処理移行であれ
ば、ファームウェア・プログラム処理復帰命令29を発
行して経路31で命令解読回路8に送出し、経路11を
介して新しく追加されたファームウェア復帰処理回路3
0へ処理を渡す。
その際に、連絡情報エリア26に格納されているファー
ムウェア・プログラム戻りアドレス25を。
連絡情報として、経路31を介し命令解読回路8に引き
渡す。ファームウェア復帰処理回路30は、連絡情報と
して受け取ったファームウェア・プログラム戻りアドレ
ス25を、経路32でファームウェア制御部に渡す。こ
れにより、ファームウェア・プログラム23は、サブル
ーチン・プログラム3に移行した次の命令から処理が再
開される。
このように、第4図においては、ソフトウェア・サブル
ーチン・プログラム3をファームウェア。
プログラム23からも共用することができるが、これを
制御するための処理システム27をソフトウェア・サブ
ルーチン・プログラム3に付加しなければならないため
、ソフトウェア・サブルーチン・プログラム自体の処理
性能が低下するとともに、処理システム27のステップ
数が増加するためメモリ容量が増大し、情報処理装置に
悪影響を及ぼす。
〔発明の目的〕
本発明の目的は、このような欠点を除去するため、サブ
ルーチン・プログラム自体の処理に負担をかけることな
く、ファームウェア・プログラムからソフトウェア・サ
ブルーチン・プログラムを共用でき、かつ高速処理が可
能な情報処理装置を提供することにある。
〔発明の概要〕
本発明の情報処理装置は、ファームウェア制御の情報処
理装置において、ソフトウェア・サブルーチン・プログ
ラムの行き先および戻り先を制御するサブルーチン・プ
ログラム・リンク制御手段、およびリンク識別標示フラ
グと戻りアドレスを格納するスタック・エリア制御手段
を設け、ソフトウェア・プログラムで使用するサブルー
チン・プログラムをファームウェア・プログラムも共用
できるように、サブルーチン・プログラムへのリンク処
理時にソフトウェア・プログラムあるいはファームウェ
ア・プログラムからのリンク識別標示フラグおよびソフ
トウェア・プログラムあるいはファームウェア・プログ
ラムの戻りアドレスをスタック・エリア制御手段に格納
し、ソフトウェア・サブルーチン・プログラムの処理終
了命令を処理するときに、スタック・エリア制御手段に
格納されている識別標示フラグおよび戻りアドレスを回
復し、識別標示フラグで示されるソフトウェア・プログ
ラムあるいはファームウェア・プログラムの戻りアドレ
スに制御を渡すことを特徴としている。
〔発明の実施例〕
以下、本発明の実施例を図面により説明する。
第1図は、本発明の実施例を示す情報処理装置のプログ
ラム・リンク制御システムのブロック図である。
ソフトウェア・サブルーチン・プログラム33をソフト
ウェア・プログラム34が使用するようかソフトウェア
・プログラム間のリンク処理の場合1;は、ソフトウェ
ア・プログラム34は中央演算処理装置35に対してソ
フトウェア・サブルーチン・プログラム33への処理移
行命令36を発行し、経路37で命令解読回路46に送
出する。
ここで、実行中のソフトウェア・プログラムあるいはフ
ァームウェア・プログラムの状態は、中央演算処理装置
35内のプログラム・スティタス表示エリア38内に表
示されるようになっており、初期状態の設定は命令処理
回路群39内のプログラム起動処理プログラム40によ
って設定される。
前述したように、命令処理回路群39をソフトウェアで
実現したときには、オペレーティング・システム・プロ
グラムがこれを遂行する。
プログラム・スティタス表示エリア38には、ソフトウ
ェアあるいはファームウェアのいずれかのプログラムの
処理中であることを示すSF表示フラグ41と、実行中
プログラムの種別を示すPN表示フラグ42と、現在処
理中の次の命令の実行アドレスを示すAD表示フラグ4
3が設けられる。
いま、ソフトウェア・プログラム34が実行中であるた
め、SF表示フラグ41にはソフトウェア・プログラム
処理中が、PN表示フラグ42に4よ実行中のプログラ
ム識別番号が、AD表示フラグ43には処理移行命令3
6の次のアドレス44が、それぞれ表示される。プログ
ラム・スティタス表示エリア38内のこれらの情報は、
命令処理回路群39内の各種命令処理回路、およびファ
ームウェア処理命令群45内の命令処理回路等により適
宜更新される。
経路37で中央演算処理装置35に送出された処理移行
命令(分岐命令)36は、命令解読回路46によって解
読され、経路48で命令処理回路群39内の処理移行プ
ログラム47に処理が渡される。
処理移行プログラム47は、プログラム・スティタス表
示エリア38内の情報を、主記憶装置上、ローカル・ス
トレージ上あるいは中央演算処理装置1!35内の特定
エリア上に、それぞれ設けらけたスタック・エリア49
に、経路5oで格納するとともに、処理移行命令36の
発行時に受け取ったソフトウェア・サブルーチン・プロ
グラム33の実行アドレスを、次に処理すべき命令のア
ドレスとして、AD表示フラグ43を更新し、すべての
処理を終了する。
次に、中央演算処理装置35では、プログラム・スティ
タス表示エリア38のAD表示フラグ43に示されたア
ドレスをもとにして、次の命令を取り込み、命令解読回
路46が解読する。この時点で、経路51を介してソフ
トウェア・プログラム34からソフトウェア・サブルー
チン・プログラム33に処理が移行され、ソフトウェア
・サブルーチン・プログラム33の先頭命令が実行され
ることになる。
ファームウェア・プログラムとソフトウェア・サブルー
チン・プログラム間のリンク処理の場合について述べる
先ず、中央演算処理装置35の制御のためにファームウ
ェア・プログラム52が命令処理回路群39内の起動処
理プログラム40によって起動され、同時に、プログラ
ム・スティタス表示エリア38のSF表示フラグ41が
ファームウェア・プログラム実行中に、PN表示フラグ
42がファームウェア・プログラム52のプログラム識
別番号に、AD表示フラグ43がファームウェア・プロ
グラム52の命令実行アドレスに、それぞれ設定更新さ
れる。
ファームウェア・プログラム52の処理の途中でソフト
ウェア・サブルーチン・プログラム33の処理が必要に
なったとき、ソフトウェア・サブルーチン・リンク処理
要求命令(サブルーチン・コール命令)54を発行する
。そして、経路55でファームウェア処理命令群45内
のソフトウェア・サブルーチン・リンク処理プログラム
53に処理を渡す。ここで、ファームウェア処理命令群
45は、実際には、複数のファームウェア・プログラム
に共通のファームウェア・サブルーチンであり、また、
ソフトウェア・サブルーチン・リンク処理プログラム5
3は共通サブルーチンのうちのファームウェア・プログ
ラムからソフトウェア・プログラムにリンクする制御プ
ログラムである。
リンク処理プログラム53は、処理要求に対し、ファー
ムウェア・プログラム52のプログラム・スティタス情
報41,42.43をプログラム・スティタス表示エリ
ア38から読み出し、これらをスタック・エリア49に
経路57で格納するとともに、プログラム・スティタス
表示エリア38のSF表示フラグ41をソフトウェア・
プログラム処理中に、またAD表示フラグ43をソフト
ウェア・サブルーチン・プログラム33の命令実行アド
レスに、それぞれ更新して、処理を終了する。
なお、この場合、PN表示フラグ42は、親プログラム
、つまりファームウェア・プログラム52のため、更新
されない。
これにより、中央演算処理装置35では、プログラム・
スティタス表示エリア38のAD表示フラグ43に示さ
れるアドレスの命令を取り込み、命令解読回路46がこ
の命令を解読する。この時点で、処理は経路51を通っ
てソフトウェア・サブルーチン・プログラム33に移行
することになる。
ソフトウェア・サブルーチン・プログラム33の処理が
すべて終了すると、処理要求のあったソフトウェア・プ
ログラム34あるいはファームウェア・プログラム5,
2へ処理を戻さなければならないが、第1図に示すよう
に、いずれのプログラムに処理を戻す場合でもソフトウ
ェア・サブルーチン処理終了命令58を発行することに
より行われる。
経路59を介してサブルーチン処理終了命令58が中央
演算処理装置35に送られると、命令解読回路46がこ
れを取り込み解読した後、経路61を介してサブルーチ
ン処理終了プログラム60に処理を渡す。
サブルーチン処理終了プログラム60は、直ちにプログ
ラム・スティタス表示情報をスタック・エリア49から
経路62で取り出し、プログラム・スティタス表示エリ
ア38に回復設定した後、SF表示フラグ41の内容を
参照し、ソフトウェア・プログラムあるいはファームウ
ェア・プログラムのいずれから処理要求が出されていた
かを判別分離し、それぞれの戻りアドレス44あるいは
56をAD表示フラグ43より設定して処理を終了する
。そし、て、中央演算処理装置35の命令実行処理によ
り、ソフトウェア・プログラム34あるいはファームウ
ェア・プログラム52のそれぞれに経路63あるいは6
4で処理が戻され、次の処理が実行される。
第1図により明らかなように、ソフトウェア・サブルー
チン・プログラムの処理終了後、さらにファームウェア
・プログラム・リンク標示フラグを識別して分離したり
、ソフトウェアとファームウェアのプログラムごとに別
個にプログラム処理復帰命令を発行したりすることがな
いので、ステップ数が減少し、メモリ容量の節約、処理
動作の高速化が可能になる。
第2図は、本発明のリンク処理手順を示す説明偲である
第2図により、ファームウェア・プログラム52とソフ
トウェア・プログラム34からソフトウェア°サブルー
チン33にリンクする際、およびソフトウェア・サブル
ーチン33から両プログラム52.34にリターンする
際の各動作の違いを整理して作用効果を明確にする。
本発明において、先ず、ファームウェア・プログラム5
2およびソフトウェア・プログラム34から、ソフトウ
ェア・サブルーチン・プログラム33にリンクする場合
(サブルーチンへの移行命令発行(SUB))、どちら
も同一処理を行うため、サブルーチン・リンク処理モジ
ュール(ファームウェア)53.47をコールする。こ
のコールと同時に、プログラム・スティタス表示エリア
38のSF表示(ファームウェアからのコール時には”
1”)とPN表示(現在処理中のプログラム番号)とA
D表示(ファームウェアまたはソフトウェアの戻りアド
レス)を設定し、これをスタックしてサブルーチン・プ
ログラム33にリンクする。
次に、サブルーチン・プログラム33からファームウェ
ア・プログラム52およびソフトウェア・プログラム3
4にリターンする場合(リターン命令の発行(RTN)
)、どちらも同一処理を行い。
サブルーチン処理終了命令機構60によってスタック・
エリア(STACK)からプログラム・スティタス(S
F、PN、AD)を回復した後、SF表示によりファー
ムウェアかソフトウェアをチェックし、SF=”1”の
ときファームウェア・プログラム52の戻りアドレスを
、またSF=”0″′のとき、ソフトウェア・プログラ
ム34の戻りアドレスをそれぞれ指定しているので、こ
れをリターン・アドレスとして設定し、各プログラムに
リターンする。
第2図より明らかなように、ソフトウェア・プログラム
とファームウェア・プログラムとがソフトウェア・サブ
ルーチン・プログラムを共用する場合、どちらからサブ
ルーチンにリンクする際にも、同一処理を行い、またサ
ブルーチンからどちらへリターンする際↓;も同一処理
を行うので、処理が単純になる。
なお、実施例では、スタック・エリア49に格納する情
報をプログラム・スティタス・エリア38の情報として
いるが、各種プログラムで使用するレジスタ類やワーク
情報を格納しても何ら差し支えはない。また、各種命令
処理回路39.45等の処理を、ファームウェア・プロ
グラムあるいはハードウェア・ロジックのいずれで実行
しても何ら支障はなく、ハードウェア・ロジック構成の
方が動作速度の面で情報処理装置の性能を向上させるこ
とができる。
〔発明の効果〕
以上説明したように1本発明によれば、ソフトウェア・
サブルーチン・プログラムをソフトウェア・プログラム
とファームウェア・プログラムの両方で共用する場合、
どちらも単一処理でサブルーチン°プログラムにリンク
できるとともに、単一処理でリターンでき、かつサブル
ーチン・プログラム自体の処理に負担をかけないので、
処理が単純化されて高速処理が可能となり、しかもメモ
リ容量は低減される。
【図面の簡単な説明】
第1図は本発明の一実施例を示す情報処理装置のプログ
ラムリンク制御システムのブロック図。 第2図は第1図のリンク処理手順を示す説明図、第3図
は従来の情報処理装置におけるサブルーチン制御システ
ムのブロック図、第4図は従来の情報処理装置における
改良型サブルーチン制御システムのブロック図である。 7.35:中央演算処理装置、8.46:命令解読回路
、39:命令処理回路群、9.40ニブログラム起動処
理プログラム、23,52:ファームウェア・プログラ
ム、1,2,34:ソフトウェア・プログラム、38ニ
ブログラム・スティタス表示エリア、14,49ニスタ
ツク・エリア、47:処理移行プログラム、60:サブ
ルーチン処理終了プログラム、45:ファームウェア処
理命令群、53:リンク処理プログラム、44.56=
戻りアドレス。 特許出願人 株式会社日立製作所 第1図 第3図 第 4 図

Claims (1)

    【特許請求の範囲】
  1. ソフトウェア・サブルーチン・プログラムの行き先およ
    び戻り先を制御するサブルーチン・プログラム・リンク
    制御手段、および該リンク制御手段の処理終了により、
    ソフトウェアあるいはファームウェアの各プログラムか
    らのリンク識別標示フラグと各プログラムの戻りアドレ
    スとを、ソフトウェア・サブルーチン・プログラムへの
    リンク処理時に格納した後、該サブルーチン・プログラ
    ムの処理終了命令処理時に上記フラグとアドレスを回復
    するスタック・エリア制御手段を有し、上記サブルーチ
    ン・プログラムへのリンク処理時と該サブルーチン・プ
    ログラムからのリターン処理時に、ソフトウェアあるい
    はファームウェアの各プログラムに対して上記各手段が
    同一処理を行うことを特徴とする情報処理装置。
JP10086785A 1985-05-13 1985-05-13 情報処理装置 Pending JPS60243744A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10086785A JPS60243744A (ja) 1985-05-13 1985-05-13 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10086785A JPS60243744A (ja) 1985-05-13 1985-05-13 情報処理装置

Publications (1)

Publication Number Publication Date
JPS60243744A true JPS60243744A (ja) 1985-12-03

Family

ID=14285262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10086785A Pending JPS60243744A (ja) 1985-05-13 1985-05-13 情報処理装置

Country Status (1)

Country Link
JP (1) JPS60243744A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03260726A (ja) * 1990-03-09 1991-11-20 Fujitsu Ltd マイクロサブルーチン制御方式

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN=1969 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03260726A (ja) * 1990-03-09 1991-11-20 Fujitsu Ltd マイクロサブルーチン制御方式

Similar Documents

Publication Publication Date Title
JP3549081B2 (ja) 優先度付きタスク実行制御方法及びデータ処理装置
EP0087978B1 (en) Information processing unit
JP2829091B2 (ja) データ処理システム
JPS61107434A (ja) デ−タ処理装置
JP3970609B2 (ja) プロセッサシステム
EP0285634B1 (en) Method to execute two instruction sequences in an order determined in advance
JPS60243744A (ja) 情報処理装置
JP2643931B2 (ja) 情報処理装置
JP2707770B2 (ja) リモートチャネルシステムのデータチェイン制御方法
JP2000163354A (ja) データ処理システム及びディスク制御装置
JPH06243672A (ja) Fifoメモリの書き込み・読み出し構造
JPH03176741A (ja) 演算処理装置
JPH0425581B2 (ja)
JPH06266630A (ja) トレース機能付き入出力制御装置
JPS60181859A (ja) 集合チヤネルの制御方式
JPS6267648A (ja) 排他制御命令処理方式
JPH0424733B2 (ja)
JPS62126441A (ja) マイクロプログラム制御方式
JPS6325732A (ja) マイクロプログラム制御装置
JPS62232066A (ja) マルチプロセツサ・システムの機能切替え方式
JPS63223857A (ja) 並列プロセツサ
JPH0685166B2 (ja) マルチプロセッサシステムの命令制御方式
JPS58133068A (ja) 通信制御装置
JPS61240355A (ja) 入出力デ−タ処理方式
JPH0512221A (ja) マルチcpu間データ交換高速化方式