[go: up one dir, main page]

JPH0683652A - マイクロコンピュ−タシステム - Google Patents

マイクロコンピュ−タシステム

Info

Publication number
JPH0683652A
JPH0683652A JP4231651A JP23165192A JPH0683652A JP H0683652 A JPH0683652 A JP H0683652A JP 4231651 A JP4231651 A JP 4231651A JP 23165192 A JP23165192 A JP 23165192A JP H0683652 A JPH0683652 A JP H0683652A
Authority
JP
Japan
Prior art keywords
subroutine
program
main routine
timer
execution
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
JP4231651A
Other languages
English (en)
Inventor
Toshibumi Nakai
俊文 中井
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP4231651A priority Critical patent/JPH0683652A/ja
Priority to US08/098,904 priority patent/US5500809A/en
Publication of JPH0683652A publication Critical patent/JPH0683652A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【目的】 メインル−チンで観測しなければならないイ
ベントの観測忘れを考慮せず、あるいは、サブル−チン
プログラムを短いいくつかのプログラムに分割すること
なく、容易にサブル−チンプログラムを作成する。 【構成】 タイマを制御系にもつマイクロコンピュ−タ
システムにおいて、サブル−チンf→gの実行時間がレ
ジスタAの設定時間を越えた場合、プログラムが自動的
にメインル−チンh→iに戻り、レジスタBの設定時間
だけメインプログラムを実行した後、再び、サブル−チ
ンj点に戻り、以上の動作を繰り返す。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュ−タ
における、プログラム動作順序を制御する機構システム
に関する。
【0002】
【従来の技術】従来のマイクロコンピュ−タのサブル−
チンを使ったプログラムに於いては、サブル−チン命令
や割り込み命令が発生した時にサブル−チン動作が開始
され、リタ−ン命令によりメインル−チンへ復帰する。
【0003】図3が従来のプログラムの実行例であり、
図4が従来技術の構成のブロック図である。このブロッ
ク図において、ALUは算術論理ユニット、ACCはア
キュムレ−タ、PCはプログラムカウンタ、SPはスタ
ックポインタ、STACKはスタック、ROMはプログ
ラムメモリ、FEはフェッチ回路、INTCは割り込み
コントロ−ラである。なお、従来技術の構成例では要部
のみ示してあり、アドレスバス、デ−タバス、レジスタ
ポインタ、各レジスタ、RAM,デ−タバッファ等は省
略している。
【0004】プログラムは、START→a→b→c→
d→ENDの順で実行される。すなわち、STARTか
らメインル−チンを実行し、番地aでサブル−チンコ−
ル命令が発生し、ジャンプ命令先番地bにジャンプし、
bからcまでサブル−チンが実行され、リタ−ン命令の
ある番地cで、メインル−チンの番地dに戻り、END
命令があるまでメインル−チンが実行される。
【0005】すなわち、ブロック図でプログラムカウン
タPCを中心としたデ−タの動きは PC←PC+X(X=1,2,・・・) であり、スタックポインタをSP、スタックをSTAC
K、Jをジャンプ先アドレスとして、サブル−チンコ−
ル命令信号CALL、もしくは割り込み命令信号INT
が発生した時 SP←SP−1 STACK←PC PC←J のように動作し、プログラムカウンタPCにJが入るた
め、次のプログラム実行はJ番地のROMよりアクセス
される。
【0006】また、従来のサブル−チンからの復帰動作
は、サブル−チンよりのリタ−ン命令信号RTNが発生
すると PC←STACK SP←SP+1 のように動作し、プログラムカウンタPCに、STAC
Kに待避していたサブル−チンコ−ル前の番地が戻り、
プログラム実行がメインル−チンに戻る。以上の動作を
繰り返すのが従来の技術であった。
【0007】
【発明が解決しようとする課題】これまで、サブルーチ
ンプログラムがあまり長くなるような場合、メインルー
チンで監視しなければならないイベントの観測忘れをな
くすため、サブル−チンプログラムをいくつかの短いサ
ブル−チンに分割し、ときどきプログラムをメインル−
チンに戻す必要があった。また、この際、監視しなけれ
ばならないイベントの頻度の予測、サブル−チンの種々
の条件での実行時間等を考慮し、プログラムを作成する
必要があった。このように、サブル−チンプログラムを
作成する場合、システムのあらゆる信号の頻度を事前に
予測しなければならなく、予測しがたい、または、不確
定の頻度を持つイベントについては割り込み機能を使用
する以外プログラムが不可能であった。
【0008】本発明はこのような現状に鑑みて成された
ものである。
【0009】
【課題を解決するための手段】本発明のマイクロコンピ
ュ−タシステムは、従来技術のサブル−チン動作に加
え、プログラム制御系システムを切り替えることによ
り、プログラムの実行制御系にタイマを持ち、サブル−
チンの実行時間が一定時間を越えた場合、プログラムが
自動的にメインル−チンに戻り、ある時間だけメインプ
ログラムを実行した後、再び、サブル−チンに飛びプロ
グラム実行を可能とする。すなわち、本発明では、サブ
ル−チン機能を有するマイクロコンピュ−タにおいて、
サブル−チン実行時間を計測するサブル−チン実行時間
計測手段と、該計測手段により計測されるサブル−チン
実行時間が所定時間に達したことを検出して、サブル−
チンの実行を中断させ、メインル−チンの実行に移行さ
せる手段と、メインル−チン実行時間を計測するメイン
ル−チン実行時間計測手段と、該計測手段により計測さ
れるメインル−チン実行時間が所定時間に達したことを
検出して、メインル−チンの実行を中断させ、サブル−
チンの実行に移行させる手段とを設けてなることを特徴
とするマイクロコンピュ−タシステムによるものであ
る。
【0010】
【作用】従って、サブル−チンプログラムが長くなるよ
うな場合でも、メインル−チンで監視しなければならな
いイベントの観測忘れを考慮する必要がなくなる、ある
いは、サブル−チンプログラムを短い、いくつかのプロ
グラムに分割する必要がなくなる。
【0011】
【実施例】本発明の実施例について以下に説明する。
【0012】図1は本発明を実施した場合のプログラム
実行例であり、図2が本発明の構成のブロック図であ
る。このブロック図において、従来技術以外に、TIM
ERは時間計測のためのタイマ、REGAはサブル−チ
ンを実行する時間を設定するAレジスタ、REGBはメ
インル−チンを実行する時間を設定するBレジスタ、C
OAはTIMERとREGAとの一致判定回路とコント
ロ−ラ、COBはTIMERとREGBとの一致判定回
路とコントロ−ラ、STは本発明でのタイマによるジャ
ンプ時の退避に用いるスタックである。なお、本発明の
構成例では要部のみ示してあり、アドレスバス、デ−タ
バス、レジスタポインタ、各レジスタ、RAM,デ−タ
バッファ等は省略している。
【0013】図1では、START→e→f→g→h→
i→j→k→l→m→n→o→p→q→r→s→t→E
NDの順でプログラムが実行される。ここで、本発明の
特徴はタイマがプログラム実行を制御していることであ
り、本実施例においては、タイマ制御の設定にAレジス
タREGA及びBレジスタREGBを利用している。S
TARTからメインル−チンが実行されるが、STAR
T直後に、メインル−チンで、AレジスタREGAにサ
ブル−チンを連続実行する時間を、及び、BレジスタR
EGBにサブル−チン実行の間に一時実行するメインル
−チンの実行時間を設定し、時間のカウントをタイマT
IMERが行う。タイマTIMERの値がAレジスタR
EGAと同じ値になったと一致判定回路、及び、コント
ロ−ラであるCOAにより判断された時に、メインル−
チンへの一時リタ−ン信号TRを出力し、メインル−チ
ンに戻り、タイマTIMERの値がBレジスタREGB
と同じ値になったと一致判定回路、及び、コントロ−ラ
であるCOBにより判断された時に、サブル−チン復帰
信号TCを出力して、サブル−チンへの復帰がされる。
【0014】すなわち、メインル−チンが実行され、番
地eでサブル−チンコ−ル命令があり、ジャンプ命令先
番地fへジャンプする。サブル−チン動作開始と同時に
タイマをリセット、スタ−トさせる。タイマTIMER
の値がAレジスタREGAと同じ値になったとき、すな
わち、番地gで、タイマTIMERをリセットし、メイ
ンル−チンに一時的に戻る。番地hより、タイマTIM
ERをスタ−トさせ、引き続きメインル−チンを実行す
るが、タイマTIMERの値がBレジスタREGBと同
じ値になったとき、すなわち、番地iで、タイマTIM
ERをリセットし、サブル−チンj番地にジャンプす
る。
【0015】本発明での各レジスタのデ−タの動きは、
従来技術に加え、サブル−チン実行中にタイマTIME
R指示による一時リタ−ン信号TRが発生すると、本発
明でのタイマTIMERによるジャンプ時の待避に用い
るスタックをSTとして ST←PC PC←STACK SP←SP+1 のように、プログラムカウンタをSTにいれ、STAC
Kからメインル−チンプログラム番地が戻される。更
に、メインル−チンからの本発明のタイマTIMERに
よるサブル−チン復帰動作は、サブル−チン復帰信号T
Cが発生すると SP←SP−1 STACK←PC PC←ST のようにプログラムカウンタをSTACKに待避させ、
サブル−チン実行途中の番地がプログラムカウンタに戻
される。
【0016】以下、同様にして、j→k→l→m→n→
o→p→q→r→s→t→ENDの順でプログラムは実
行され、最後に番地sでサブル−チンのリタ−ン命令が
あれば、タイマTIMERをストップさせ、メインル−
チン番地tに戻りENDまでメインル−チンを実行す
る。
【0017】また、本発明でのTR信号、TC信号をマ
スキングして従来のサブル−チンシステムとして使用す
ることも可能である。
【0018】なお、本発明は上記実施例に限定されな
い。
【0019】
【発明の効果】以上、詳細に説明した様に、本発明を用
いることにより、サブル−チンプログラムが長くなる場
合でも、メインル−チンで監視しなければならないイベ
ントの観測忘れを考慮せず、あるいは、サブル−チンプ
ログラムを短い、いくつかのプログラムに分割すること
なく、容易にサブル−チンプログラムを作成することが
可能となる。
【図面の簡単な説明】
【図1】本発明を実施した場合のプログラム実行の実施
例を示す図である。
【図2】本発明を実施した場合の構成例を示すブロック
図である。
【図3】従来方法によるプログラム実行の例を示す図で
ある。
【図4】従来方法による構成例のブロック図である。
【符号の説明】
TIMER タイマ REGA Aレジスタ REGB Bレジスタ COA TIMERとREGAとの一致判定回路と
コントロ−ラ COB TIMERとREGAとの一致判定回路と
コントロ−ラ ST タイマによるジャンプ時の退避に用いるス
タック TR メインル−チンへの一時リタ−ン信号 TC サブル−チン復帰信号

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 サブル−チン機能を有するマイクロコン
    ピュ−タにおいて、サブル−チン実行時間を計測するサ
    ブル−チン実行時間計測手段と、該計測手段により計測
    されるサブル−チン実行時間が所定時間に達したことを
    検出して、サブル−チンの実行を中断させ、メインル−
    チンの実行に移行させる手段と、メインル−チン実行時
    間を計測するメインル−チン実行時間計測手段と、該計
    測手段により計測されるメインル−チン実行時間が所定
    時間に達したことを検出して、メインル−チンの実行を
    中断させ、サブル−チンの実行に移行させる手段とを設
    けてなることを特徴とするマイクロコンピュ−タシステ
    ム。
JP4231651A 1992-08-31 1992-08-31 マイクロコンピュ−タシステム Pending JPH0683652A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4231651A JPH0683652A (ja) 1992-08-31 1992-08-31 マイクロコンピュ−タシステム
US08/098,904 US5500809A (en) 1992-08-31 1993-07-29 Microcomputer system provided with mechanism for controlling operation of program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4231651A JPH0683652A (ja) 1992-08-31 1992-08-31 マイクロコンピュ−タシステム

Publications (1)

Publication Number Publication Date
JPH0683652A true JPH0683652A (ja) 1994-03-25

Family

ID=16926838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4231651A Pending JPH0683652A (ja) 1992-08-31 1992-08-31 マイクロコンピュ−タシステム

Country Status (2)

Country Link
US (1) US5500809A (ja)
JP (1) JPH0683652A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6385637B1 (en) * 1997-08-21 2002-05-07 Rockwell Science Center, Inc. Periodic process timer
US6453430B1 (en) 1999-05-06 2002-09-17 Cisco Technology, Inc. Apparatus and methods for controlling restart conditions of a faulted process
CN103455310B (zh) * 2012-05-29 2017-02-08 中兴通讯股份有限公司 信号量等待接口定时方法及装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909795A (en) * 1973-08-31 1975-09-30 Gte Automatic Electric Lab Inc Program timing circuitry for central data processor of digital communications system
US3908099A (en) * 1974-09-27 1975-09-23 Gte Automatic Electric Lab Inc Fault detection system for a telephone exchange
JPS5592947A (en) * 1978-12-29 1980-07-14 Fujitsu Ltd Interruption control system for microprogram
JPS6032217B2 (ja) * 1979-04-02 1985-07-26 日産自動車株式会社 制御用コンピュ−タのフェィルセ−フ装置
JPS58161046A (ja) * 1982-03-19 1983-09-24 Hitachi Ltd 割込み制御回路
US4511961A (en) * 1982-04-16 1985-04-16 Ncr Corporation Apparatus for measuring program execution
JPS603763A (ja) * 1983-06-22 1985-01-10 Hitachi Ltd 電子計算機の処理装置
JPS60263235A (ja) * 1984-06-12 1985-12-26 Omron Tateisi Electronics Co マイクロコンピユ−タシステム
US4635258A (en) * 1984-10-22 1987-01-06 Westinghouse Electric Corp. System for detecting a program execution fault
GB2177241B (en) * 1985-07-05 1989-07-19 Motorola Inc Watchdog timer
US4727549A (en) * 1985-09-13 1988-02-23 United Technologies Corporation Watchdog activity monitor (WAM) for use wth high coverage processor self-test
GB2197507A (en) * 1986-11-03 1988-05-18 Philips Electronic Associated Data processing system
US4954948A (en) * 1986-12-29 1990-09-04 Motorola, Inc. Microprocessor operating system for sequentially executing subtasks
JPS63221437A (ja) * 1987-03-11 1988-09-14 Alps Electric Co Ltd Cpuの暴走検出方式
US4914657A (en) * 1987-04-15 1990-04-03 Allied-Signal Inc. Operations controller for a fault tolerant multiple node processing system
US4811200A (en) * 1987-05-12 1989-03-07 Motorola, Inc. Multiple microprocessor watchdog system
US5001666A (en) * 1987-10-19 1991-03-19 Motorola, Inc. Multiple interrupt tri-level microprocessor operating system
US4982404A (en) * 1988-10-12 1991-01-01 American Standard Inc. Method and apparatus for insuring operation of a multiple part system controller
US5012435A (en) * 1988-11-17 1991-04-30 International Business Machines Corporation Multiple event timer circuit
US5278976A (en) * 1990-04-16 1994-01-11 Rolm Company Method for detecting infinite loops by setting a flag indicating execution of an idle task having lower priority than executing application tasks
US5339425A (en) * 1990-12-11 1994-08-16 Fisher Controls International, Inc. Operating system for a process controller
JPH04241642A (ja) * 1991-01-16 1992-08-28 Nec Corp マイクロコンピュータの暴走検出方式
US5317745A (en) * 1992-01-10 1994-05-31 Zilog, Inc. Minimal interrupt latency scheme using multiple program counters
US5388254A (en) * 1992-03-27 1995-02-07 International Business Machines Corporation Method and means for limiting duration of input/output (I/O) requests

Also Published As

Publication number Publication date
US5500809A (en) 1996-03-19

Similar Documents

Publication Publication Date Title
JPH0454255B2 (ja)
JPH0683652A (ja) マイクロコンピュ−タシステム
JPH0573296A (ja) マイクロコンピユータ
JP3775868B2 (ja) エンジン制御ソフトのタイミング管理装置
JPS5916054A (ja) マイクロ・プロセツサ
JPH074669Y2 (ja) 割込要求処理回路
JPH02264340A (ja) マイクロプロセッサ
JPS6128144A (ja) トレ−ス動作実行装置
JPH02137054A (ja) 情報処理装置
JPH02191041A (ja) データ処理装置
JPS61241843A (ja) 情報処理装置
JPS62113238A (ja) 電子計算機システムにおけるプログラム修正装置
JPS6120139A (ja) 割込み制御方式
JPH0462093B2 (ja)
JPH01124037A (ja) メモリダンプ方式
JPH05233851A (ja) マイクロプロセッサ
JPS62293436A (ja) タスク管理装置
JPH11119801A (ja) プロセス制御装置
JPH02304634A (ja) プロセッサシステム
JPH03119429A (ja) データ処理装置の割込制御方式
JPH01191938A (ja) 情報処理装置
JPS6261127A (ja) プログラムの暴走回避方法
JPS638841A (ja) 割込み受取り装置
JPH06149592A (ja) マイクロコンピュータの割り込み処理方式
JP2000066926A (ja) Osを使用したプログラミング時の暴走検出方法