JPH0325530A - モジュール間結合実行制御方式 - Google Patents

モジュール間結合実行制御方式

Info

Publication number
JPH0325530A
JPH0325530A JP15942689A JP15942689A JPH0325530A JP H0325530 A JPH0325530 A JP H0325530A JP 15942689 A JP15942689 A JP 15942689A JP 15942689 A JP15942689 A JP 15942689A JP H0325530 A JPH0325530 A JP H0325530A
Authority
JP
Japan
Prior art keywords
stack
stack data
module
contents
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.)
Granted
Application number
JP15942689A
Other languages
English (en)
Other versions
JP2582294B2 (ja
Inventor
Masahiko Yamaguchi
雅彦 山口
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.)
Fujitsu Telecom Networks Ltd
Original Assignee
Fujitsu Telecom Networks 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 Fujitsu Telecom Networks Ltd filed Critical Fujitsu Telecom Networks Ltd
Priority to JP1159426A priority Critical patent/JP2582294B2/ja
Publication of JPH0325530A publication Critical patent/JPH0325530A/ja
Application granted granted Critical
Publication of JP2582294B2 publication Critical patent/JP2582294B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ブロセソサにより複数のモジュールを所定の
順序で実行するモジュール間結合実行制御方式に関する
ものである。
処理機能等に対応してプログラムを分割し、それぞれを
モジュールとして開発することにより、開発期間の短縮
を図ることができる。又修正する場合もモジュール単位
で行うことが可能となるから、修正処理が容易となるも
のである。このようなモジュール構或のプログラムに於
いては、各モジュールを単独のプログラムのイメージで
作或可能とし、且つ各モジュール間で実行権を円滑に移
行して処理を実行できるようにすることが要望されてい
る。
〔従来の技術〕
大型のプログラムは、前述のように、複数のモジュール
により構或する場合が一般的である.又データ通信制御
装置等に於けるモジュール構或のプログラムに於いては
、例えば、第7図に示すように、複数のモジュールA,
B,C,Dを直列的に順次実行する構成が用いられ、全
モジュールAB.C.Dを、例えば100ms以内で実
行することになる。このようなプログラムに於いて、例
えば、モジュールB内でスイッチがオフ(OFF〉から
オン(O N)に変化した場合のみ、次のシーケンスに
進むように構成したい場合、点線で示すフローとする場
合が一般的であるが、スイッチがオフ(OFF)をmv
tする限り、次のシーケンスに移行しないから、モジュ
ールCにも移行するとかできないことになる。
そこで、フラグFを用いてスイッチがオフ(OFF)継
続して状態変化がないことを表示しておいて、次のシー
ケンスに進める方式が知られている。又各モジュールA
.B,C.Dに於ける各種状態毎にその状態を表示する
状態レジスタを設けて、イソディックスジャンプ方式に
よりモジュール内の条件分岐を行う方式も知られている
〔発明が解決しようとする課題〕
各モジュールA,B,C.Dをそれぞれ独立のものとし
て作或できることが望ましいものであるが、前述のよう
に、状態レジスクを設けた場合、その設定が複雑となる
欠点があり、モジュール作戒上の問題点となっている。
又既設計の単独のプログラムを、モジュールとして新た
に組み込むことを考えた場合に、モジュール間の結合が
困難であり、若し、それを実現しようとすると、大幅な
修正を必要とするものであった. 本発明は、比較的簡単な処理を追加するだけで各モジュ
ール間を円滑に結合し、各モジュールを単独イメージで
作或可能とすることを目的とするものである. 〔課題を解決するための手段〕 本発明のモジュール間結合実行制御方式は、スタックデ
ータを保存することにより、複数サブルーチンを含む場
合でも、円滑なモジュール間の結合を行わせることがで
きるものであり、第1図を参照して説明する。
複数のモジュール1 (A. B.  ・・・N)から
なるプログラム2を格納した記憶部3と、スタックポイ
ンタ4と、スタック5と、演算処理部6とを備えたプロ
グラム・システムに於いて、スタック5の内容のスタッ
クデータを保存するスタックデータ保存記憶部7と、ス
タックデータの保存領域を指定するスタックデータ保存
領域指定レジスタ8と、スタックポインタ4の内容を保
存するスタックポインタ保存レジスタ9とを設ける。又
プログラムに、スタックデータの復元処理と退避処理と
を含む結合処理ステップを設ける。
そして、各モジュール1の実行開始に際して、結合処理
ステップの復元処理により、スタックポインタ4の内容
をスタンクポインタ保存レジスタ9に保存し、スタック
データ保存領域指定レジスタ8の内容によって指定され
るスタックデータ保存記憶部7の領域のスタックデータ
をスタック5にプッシュする。又各モジュールlの実行
終了に際して、結合処理ステップの退避処理により、ス
タック5の内容のスタックデータを、スタックデータ保
存領域指定レジスタ8の内容により指定されたスタック
データ保存記憶部7の領域にロードする。
〔作用〕
或るモジュールから次のモジュールに移行する時に、或
るモジュールの実行終了に際して、結合処理ステップの
退避処理により、スタックデータをスタックデータ保存
記憶部7にロードする。その場合の領域指定を、スタッ
クデータ保存領域指定レジスタ8の内容により行うもの
である。
又次のモジュールの実行開始に際しては、前回の実行終
了に於ける退避処理によって、スタックデータ保存記憶
部7に保存したスタックデータを、結合処理ステップの
復元処理によりスタック5にプッシュする。それによっ
て、フラグ等を用いることなく、前回終了したステップ
に対応したステップから実行されることになる。
従って、モジュール対応のスタックデータを退避.復元
することにより、モジュール間の結合を円滑に行わせる
ことが可能となる。
〔実施例〕
以下図面を参照して本発明の実施例について詳細に説明
する。
第1図は本発明の実施例のブロック図であり、前述のよ
うに、複数モジュール1  (A.B.  ・・・N〉
構成のプログラム2を格納したり−ドオンリメモリやラ
ンダムアクセスメモリ等の記憶部3と、スタックポイン
タ4と、このスタックポインタ4により領域が指定され
るスタック5と、プログラムに従った比較処理や加算,
減算等の処理を実行する演算処理部6と、スタック5の
内容のスタックデータを退避させて保存するスタックデ
ータ保存記憶部7と、このスタックデータの保存領域を
指定するスタックデータ保存領域指定レジスタ8と、ス
タックポインタ4の内容を保存するスタックポインタ保
存レジスタ9等により、プロセッサ・システムが構威さ
れている。なお、入出力制御部等は図示を省略している
スタックデータ保存記憶部7は、プロセッサ・システム
の内部メモリや外部メモリ上に形或することが可能であ
り、モジュールl  (A,B,  ・・・N)対応に
スタックデータを保存するものである。又スタックデー
タ保存領域指定レジスタ8は、スタックデータ保存記憶
部7のモジュールl対応のスタックデータの保存領域を
それぞれ指定できるものである。又スタックポインタ保
存レジスタ9は、モジュールl対応のスタックポインタ
を保存できるものである。
又モジュール1間を結合する為の結合処理ステップがプ
ログラム2に設けられている.この結合処理ステップは
、復元処理と退避処理とからなるものである。この退避
処理により、スタック5のスタックデータをスタックデ
ータ保存記憶部7にロードし、その場合の領域はスタッ
クデータ保存領域指定レジスタ8により指定される。又
復元処理により、スタックデータ保存記憶部7に保存さ
れたスタックデータがスタック5にプッシュされる。そ
の場合のスタックデータ保存記憶部7の領域はスタック
データ保存領域指定レジスタ8により指定される。
第2図は本発明の実施例の要部フローチャートであり、
モジュールA,B.  ・・・Nを順次実行するプログ
ラムに於いて、各モジュールA.B.・・・Nは、それ
ぞれ実行開始に際して復元処理PRGIを行い、スタッ
クデータ保存記憶部7に退避保存させたスタックデータ
をスタック5に復元し、それに基づいてモジュールA,
B,  ・・・Nのメイン部が実行される。又実行終了
に際して退避処理PRG2を行い、スタックデータをス
タックデータ保存記憶部マに退避保存させる。
第3図はモジュールAの説明図であり、複数のサブルー
チンLOI.LO2を含む場合を示す。
即ち、モジュールAの実行開始に際して復元処理PRG
1を行い、サブルーチンLOI.LO2を実行した後、
退避処理PRG2を行って次のモジュールBへ移行し、
次にモジュールAに戻った時に、保存されたスタックデ
ータを復元することにより、メインルーチンに戻ること
ができるものである。
第4図は復元処理のフローチャートを示し、スタンクポ
インタSPの内容をスタックポインタ保存レジスタRに
保存し(11、スタックデータ保存領域指定レジスタX
の内容により指定されたスタックデータ保存記憶部7の
領域のスタックデータを、スタック5にプッシュする(
2)。そして、スタックデータ保存領域指定レジスタX
の内容とスタックデータ保存記憶部7の先頭アドレスA
DRとが等しいか否か判定する(3)。等しくない場合
は、スタックデータ保存領域指定レジスタXの内容から
1を減算し(4)、ステップ(2)に移行する。そして
、スタックデータ保存領域指定レジスタXの内容と、ス
タック保存記憶部7の先頭アドレスADRとが等しくな
ると、所定のスタックデータがスタック5にプッシュさ
れたことになる。
又第5図は退避処理のフローチャートを示し、スタック
5からポップした内容を、スタックデータ保存領域指定
レジスタXの内容により指定された領域にロードし(5
)、スタックポインタSPの内容とスタックポインタ保
存レジスタRの内容とが等しいか否か判定し(6)、等
しくない場合は、スタックデータ保存領域指定レジスタ
Xの内容に1を加算し(7)、ステップ(5)に移行す
る。そして、スタックポインタSPの内容とスタックポ
インタ保存レジスタRの内容とが等しくなると、スタッ
ク5からスタックデータ保存記憶部7にスタックデータ
がロードされたことになる。
第6図はスタックデータの説明図であり、スタックポイ
ンタSP1スタックポインタ保存レジスタR、スタンク
5、スタックデータ保存領域指定レジスタX,スタック
データ保存記憶部7、スタソクデータ保存領域先頭アド
レスADR 1をそれぞれ示している。又■,■,■,
■〜■はそれぞれ第3図のステップ■.■,■,■〜■
に対応したものである。
第3図に於いて、モジュールAの実行開始に際して前述
のように復元処理PRCIが実行され、スタックデータ
が復元される。そして、リターン命令が実行されて、サ
ブルーチンとしての退避処理PRG2がコール(CAL
L  PRG2)■されると、スタック5には次のステ
ップ■のアドレス“AO4”がセーブされる。そして、
退避処理PRG2が実行されてスタック5の内容がスタ
ンクデータ保存記憶部7にロードされ、その処理終了■
により次のモジュールBに処理が移行されることになる
モジュールBを含む他のモジュールの処理が終了してモ
ジュールAに戻ると、再び復元処理PRG1が実行され
てスタックデータが復元され、又リターン命令により、
復元されたスタックデータに基づいてステップ■(アド
レス“AO4”)から処理が開始される。その場合に、
例えば、第6図の■に示す状態となる。スタックポイン
タSPは、それまでのネスティングの深さ等に対応して
スタックされたアドレス及びデータの最後のポイントを
示している。
ステップ■からの処理が進行して、サブルーチンコール
(CALL  LOI)■によりサブルーチンLOI■
に処理が移行する。その時、サブルーチンコール■の次
のアドレス″AOI”がスタック5にセーブされ、スタ
ックポインタSPはそのアドレス″AOI”がセーブさ
れた位置を示すものとなる。即ち、第6図の■に示すよ
うに、スタックポインタSPはアドレス“AOI”がセ
ーブされた位置を示している。
又このサブルーチンLOIの中のサブルーチンコール(
CALL  LO2)■によりサブルーチンLO2■に
処理が移行する。その時、サブルーチンコール■の次の
アドレス”A02″がスタック5にセーブされる。即ち
、スタックポインタSPが指示していた領域の次の領域
にセーブされ、スタックポインタSPはその領域を指示
するように更新される。即ち、第6図の■に示す状態と
なる。
又このサブルーチンLO2の中のサブルーチンコールと
しての退避処理PRG2がコール(CALL  PRG
2)■されて、退避処理PRG2■が実行される。その
時、サブルーチンコール■の次のアドレス“A03′″
がスタソク5にセーブされ、スタックポインタSPはそ
の領域を指示するように更新される。即ち、第6図の■
に示す状態となる。
そして、退避処理PRG2の実行によりスタック5の内
容のスタックデータがスタックデータ保存記憶部7に退
避される。その時、スタックポインタSPとスタックポ
インタ保存レジスタRとの内容が等しくなるまで、1ス
タックデータをスタックデータ保存記憶部7にロードす
る毎に、スタックデータ保存領域指定レジスタXの内容
を+lする。従って、この退避処理PRG2により第6
図の■に示す状態となり、そして、モジュールBに移行
する。
再びモジュールAに戻って復元処理PRG1@1を実行
するものであるが、その直前に於いては、第6図の[相
]に示すように、スタック5の内容はそれまで実行して
いたモジュールに対応した内容を示し、例えば、スタッ
クポインタSPは″M3″の位置を示し、又スタックポ
インタ保存レジスタRは“M1”の位置を示し、又スタ
ックデータ保存記憶部7には退避されたスタックデータ
(”A01”〜“AO3”〉が保存され、スタックデー
タ保存領域指定レジスタXにより最後の退避スタックデ
ータの位置が指示されている。
復元処理PRCI[相]によりスタックデータの復元処
理が行われる■と、スタックデータがスタック5にプッ
シュされる。この場合、必要なスタックデータが総てス
タック5にプッシュされるように、1スタックデータを
スタック5にプッシュする毎にスタックデータ保存領域
指定レジスタXの内容を−1し、このスタックデータ保
存領域指定レジスタXの内容と、スタックデータ保存記
憶部7の先頭アドレスADH (モジュール対応の先頭
アドレスで第6図ではモジュールAの先頭アドレスAD
R 1を示す)とが等しくなるまで繰り返すものである
。それにより、第6図の■に示すように、スタックポイ
ンタSPにより“AO3”の位置を示し、スタックポイ
ンタ保存レジスクRは前のモジュールに於けるスタック
ポインタSPの内容([相]に示す″M3”の位置)を
保存することになる。
従って、リターン命令によりスタックポインタSPで指
示されるアドレス“AO3”の処理0に移行し、サブル
ーチンLO2が実行され、第6図の@の状態となる。即
ち、スタックポインタSPによりアドレス“AO2”の
位置が指示されている。
サブルーチンLO2のリターン命令が実行されると、ス
タックポインタSPにより指示されているアドレス“A
O2”のサブルーチンLOIの処理◎に移行する。その
時、第6図の0で示す状態となる。そして、処理が進行
してリターン命令が実行されると、スタックポインタS
Pにより指示されているアドレス“AOI”の処理■に
移行する。その時、第6図の■で示す状態となる。
そして、モジュールA内の処理が実行され、最初のステ
ップ■或いは他のステップに於ける退避処理PRG2コ
ールにより、退避処理PRG2が実行されて、次のモジ
ュールBへ移行することになる。
前述のような復元処理PRCIと退避処理PR02とか
らなる結合処理ステップにより、モジュールA,B, 
 ・・・N間を結合して、順次円滑に実行することがで
きる。又前述の実施例にのみ限定されるものではなく、
例えば、スタックポインタとスタックポインタ保存レジ
スタとの内容の比較、又はスタックデータ保存領域指定
レジスタとスタックデータ保存領域先頭アドレスとの比
較等の手段によって、スタックデータの転送終了を判定
する以外に、他の手段によって所定のスタ・ノクデータ
の転送終了を判定することも可能である。
又本発明は、各モジュールA,B,  ・・・Nが順次
実行される場合のみでなく、条件分岐等により或るモジ
ュールを飛び越して処理が移行する場合も含むものであ
る。
〔発明の効果〕
以上説明したように、本発明は、プロセッサ・システム
に、スタックデータ保存記憶部7と、スタックデータ保
存領域指定レジスタ8と、スタックポインタ保存レジス
タ9とを設けると共に、復元処理と退避処理とを含む結
合処理ステップをプロセッサ2に設けて、各モジュール
lの実行開始に際して、スタックデータ保存記憶部7か
らスタックデータをスタック5にプッシュし、又各モジ
ュール1の実行終了に際して、スタック5からスタック
データ保存記憶部7にスタックデータをロードするもの
であり、フラグ等を用いることなく各モジュール1間を
結合して実行することが可能となる。従って、各モジュ
ール1を独立イメージのプログラムとして作威すること
も可能となり、又他のフZログラムをモジュールとして
組み込むことも容易となる利点がある。
【図面の簡単な説明】
第l図は本発明の実施例のブロック図、第2図は本発明
の実施例の要部フローチャート、第3図は本発明の実施
例のモジュールAの説明図、第4図は本発明の実施例の
復元処理のフローチャート、第5図は本発明の実施例の
退避処理のフローチャート、第6図は本発明の実施例の
スタックデータの説明図、第7図は従来例の説明図であ
る。 1はモジュール(A.B.  ・・N)、2はプログラ
ム、3は記憶部、4はスタックポインタ(SP)、5は
スタック、6は演算処理部、7はスタンクデータ保存記
憶部、8はスタックデータ保存領域指定レジスタ(X)
 、9はスタックポインタ保存レジスタ(R)である。

Claims (1)

  1. 【特許請求の範囲】 複数モジュール(1)構成のプログラム(2)を格納し
    た記憶部(3)と、スタックポインタ(4)と、スタッ
    ク(5)と、演算処理部(6)とを備えたプロセッサ・
    システムに於いて、 前記スタック(5)の内容のスタックデータを保存する
    スタックデータ保存記憶部(7)と、前記スタックデー
    タの保存領域を指定するスタックデータ保存領域指定レ
    ジスタ(8)と、前記スタックポインタ(4)の内容を
    保存するスタックポインタ保存レジスタ(9)とを設け
    ると共に、前記プログラム(2)にスタックデータの復
    元処理及び退避処理を含む結合処理ステップを設け、前
    記各モジュール(1)の実行開始に際して、前記結合処
    理ステップの復元処理により、前記スタックポインタ(
    4)の内容を前記スタックポインタ保存レジスタ(9)
    に保存し、前記スタックデータ保存領域指定レジスタ(
    8)の内容によって指定される前記スタックデータ保存
    記憶部(7)の領域のスタックデータを前記スタック(
    5)にプッシュし、 前記各モジュール(1)の実行終了に際して、前記結合
    処理ステップの退避処理により、前記スタック(5)の
    内容のスタックデータを、前記スタックデータ保存領域
    指定レジスタ(8)の内容により指定された前記スタッ
    クデータ保存記憶部(7)の領域にロードする ことを特徴とするモジュール間結合実行制御方式。
JP1159426A 1989-06-23 1989-06-23 モジュール間結合実行制御方式 Expired - Lifetime JP2582294B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1159426A JP2582294B2 (ja) 1989-06-23 1989-06-23 モジュール間結合実行制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1159426A JP2582294B2 (ja) 1989-06-23 1989-06-23 モジュール間結合実行制御方式

Publications (2)

Publication Number Publication Date
JPH0325530A true JPH0325530A (ja) 1991-02-04
JP2582294B2 JP2582294B2 (ja) 1997-02-19

Family

ID=15693486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1159426A Expired - Lifetime JP2582294B2 (ja) 1989-06-23 1989-06-23 モジュール間結合実行制御方式

Country Status (1)

Country Link
JP (1) JP2582294B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089152B2 (en) 2003-06-19 2006-08-08 Mizuno Corporation System and method for assisting shoe selection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59146387A (ja) * 1983-02-10 1984-08-22 Fujitsu Ltd マルチプロセスにおけるスタツク制御方式
JPS6273335A (ja) * 1985-09-27 1987-04-04 Toshiba Corp スタツク管理方式
JPS62221040A (ja) * 1986-03-20 1987-09-29 Fujitsu Ltd スタツク制御方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59146387A (ja) * 1983-02-10 1984-08-22 Fujitsu Ltd マルチプロセスにおけるスタツク制御方式
JPS6273335A (ja) * 1985-09-27 1987-04-04 Toshiba Corp スタツク管理方式
JPS62221040A (ja) * 1986-03-20 1987-09-29 Fujitsu Ltd スタツク制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089152B2 (en) 2003-06-19 2006-08-08 Mizuno Corporation System and method for assisting shoe selection

Also Published As

Publication number Publication date
JP2582294B2 (ja) 1997-02-19

Similar Documents

Publication Publication Date Title
JP2883784B2 (ja) マイクロコンピュータ
GB2239810A (en) Computer game control apparatus
JP3563768B2 (ja) Romプログラム変更装置
JPS5975347A (ja) 論理回路のシミユレ−シヨン装置
JP2875842B2 (ja) プログラマブルコントローラ
JPH0325530A (ja) モジュール間結合実行制御方式
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPS6339928B2 (ja)
JP2573391B2 (ja) プログラマブルコントローラ
JPS60250438A (ja) 情報処理装置
JPS6398704A (ja) プログラマブルコントロ−ラ
JP2506591B2 (ja) 補助処理装置
JPH04140851A (ja) 情報処理装置の診断方式
JP2000242524A (ja) プロセッサのソフトウエアシミュレータ
JP2751845B2 (ja) Vsat周辺局装置
JPH0353321A (ja) 情報処理装置
JPS62205430A (ja) マイクロ命令制御回路
US20160147537A1 (en) Transitioning the Processor Core from Thread to Lane Mode and Enabling Data Transfer Between the Two Modes
JPS6313217B2 (ja)
JPH0359727A (ja) マイクロプロセッサにおける退避・復元方式
JPS6365978B2 (ja)
JPH03263265A (ja) ベクトル処理装置
JPH036735A (ja) データ処理装置
JPS60120440A (ja) アドレスレジスタ制御方式
JPH03233703A (ja) シーケンス制御装置