JPS63226733A - スタツクメモリ制御回路 - Google Patents

スタツクメモリ制御回路

Info

Publication number
JPS63226733A
JPS63226733A JP6079087A JP6079087A JPS63226733A JP S63226733 A JPS63226733 A JP S63226733A JP 6079087 A JP6079087 A JP 6079087A JP 6079087 A JP6079087 A JP 6079087A JP S63226733 A JPS63226733 A JP S63226733A
Authority
JP
Japan
Prior art keywords
signal
instruction
stack memory
memory
circuit
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
JP6079087A
Other languages
English (en)
Inventor
Satoru Nakanishi
哲 中西
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP6079087A priority Critical patent/JPS63226733A/ja
Publication of JPS63226733A publication Critical patent/JPS63226733A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、コンピュータにおけるスタックメモリの制御
回路に関するものである。
(従来の技術) コンピュータにおいて、割込処理やサブルーチン処理を
実行する場合は、メインルーチンへの戻り先番地やメイ
ンルーチン実行時のシステム情報等を一旦スタックメモ
リに退避させ、割込処理やサブルーチン処理を終了後、
スタックメモリ退避しておいた内容を呼び出して、メイ
ンルーチンへ戻る。このスタックメモリへの退避及び呼
び出しの実施により、メインルーチンによるプログラム
の実行を続行することが可能となっている。このスタッ
クメモリは一般的に書込み・読出し可能なメモリであり
、プログラムメモリと同一のアドレス空間上に割付けら
れている。
スタックメモリをどのアドレス空間上に割付けるかは、
一般的にプログラムにて設定可能であり、スタックポイ
ンタと呼ばれるレジスタにアドレスデータが格納される
第2図は従来のスタックメモリ制御回路の図である。
1は上記のアドレスデータを格納しておく為のスタック
ポインタ、Aはスタックポインタ1のアドレスを指定す
るアドレスデータである。2は書込み・読出しが可能な
メモリで、プログラムメモリ21とスタックメモリ22
が割付けられる。3はメモリ2の書込み・読出しを制御
する書込み・読出し制御部で、書込み・読出し制御線E
によってメモリ2を制御する。
スタックポインタ1は、スタックメモリ22が使用され
る前にスタックメモリ22のアドレスを設定して、メモ
リ2に対して、メモリアドレスDを送出する。メインル
ーチンから割込処理やサブルーチン処理へ移行する際は
、メインルーチンへの戻り先番地やメインルーチン実行
時のシステム情報は、退避命令によってスタックメモリ
22に格納され、同時にスタックポインタカウントダウ
ン信号Cをカウントダウン端子DOWNに受けて、スタ
ックポインタ1内のアドレスデータは減算され、常に新
たなアドレスデータを格納可能なデータとなる。また割
込処理やサブルーチン処理からメインルーチンへ戻る場
合は、メインルーチンへの戻り先番地やメインルーチン
実行時のシステム情報を呼出し命令によってスタックメ
モリ22から呼出し、同時にスタックポインタカウント
アツプ信号Bをカウントアツプ端子UPに受けて、スタ
ックポインタ1内のアドレスデータは加算され、割込処
理やサブルーチン処理へ移行するIn前の状態に戻る。
(発明が解決しようとする問題点) しかしながら、上記のスタックメモリはプログラムメモ
リと同一のアドレス空間上にあって、スタックメモリの
アドレス位置を示すスタックポインタ内のアドレスデー
タはプログラムの実行によって減算及び加算される為に
、プログラム制御の誤りによって、本来スタックメモリ
内に退避すべきメインルーチンへの戻り先番地やシステ
ム情報が、プログラム又はプログラムに必要なデータを
格納するプログラムメモリに格納されてしまう事があっ
た。その結果プログラムやプログラムに必要なデータが
破壊されてプログラムが誤動作し、暴走してしまう事が
あった。
本発明はスタックメモリ制御の誤りによってプログラム
の各データが破壊されるという問題点を除去し、信頼性
の高い装置を提供することを目的とする。
(問題点を解決するための手段) 本発明は、前記問題点を解決するために、メインルーチ
ンから割込み処理あるいはサブルーチン処理へ移行する
際にメインルーチンへの戻り番地あるいはメインルーチ
ン実行時のシステム情報を退避させておくためのスタッ
クメモリを有するコンピュータにおいて、スタックメモ
リに順次書込みさせる退避命令とスタックメモリから順
次読出しさせる呼出し命令とを各命令コードの中から選
択する命令選択回路と、前記書込みあるいは読み出しに
よるスタックメモリ内のアドレスデータ格納量を設定し
該規定量を越えて前記退避命令あるいは呼出し命令があ
ったことを検知して上位の演算処理回路に通知する格納
量管理回路とによって構成した。
(作 用) 本発明によれば、退避命令あるいは呼出し命令によって
スタックメモリに書込みあるいは読出しされると、格納
量管理回路よってその格納量が管理され、そして該格納
量の規定値を越えて更に退避命令あるいは呼出命令によ
り書込みあるいは読出しを行おうとすると、規定の格納
量を越えて該各命令があったことが上位の演算処理回路
に通知される。
(実施例) 第1図は本発明の一実施例を示すスタックメモリ制御回
路である。
同図において、2は第2図におけると同一のメモリで、
プログラム又はプログラムに必要なデータが格納される
プログラムメモリ21と、メインルーチンから割込処理
やサブルーチン処理へ移行する際に、メインルーチンへ
の戻り先番地や、メインルーチン実行時のシステム情報
を退避させておくスタックメモリ22からなる。Dは第
2図におけると同一のメモリアドレスである。3は第2
図におけると同一の書込み・読出し制御部である。
メモリ2は、メモリアドレス信号線りによってアドレス
が設定され、書込み・読出し制御部3から送出されるメ
モリ書込み・読出し制御線Eによって、書込み・読出し
制御される。
4は命令選択回路としての命令デコードで回路で、命令
コードFを受けてスタックメモリに対する退避命令又は
呼出し命令をデコードし、退避命令が入力された時には
退避信号Gを出力し、呼出し命令が入力された時には呼
出し信号Hを出力する。
5は格納量管理回路としてのアップ・ダウンカウンタで
、スタックメモリ22に対する規定のデータ格納量がデ
ータバスIから入力され、命令デコード部4からの退避
信号Gをカウントダウン端子DOWNに受ける毎に前記
データ格納量を減算し、あるいは呼出し信号Hをカウン
トアツプ端子upに受ける毎に加算する。そして前記減
算の結果、0となったときに更に退避信号Gを受けると
、借り(Borrow)信号Jを出力し、前記加算の結
果、前記規定のデータ格納量となったときに更に呼出信
号Hを受けると、桁上げ(Carry )信号Kを出力
する。6はオアゲート、7はフリップフロップで、フリ
ップフロップ7はBorrow信号JまたはCarry
信号Kが出力されるとセットされて、割込信号を上位の
演算処理装置((CPU)図示せず)に出力する。
つぎに第1図の回路の動作を説明する。
第3図は第1図の回路の動作を示すフローチャートであ
る。
アップ・ダウンカウンタ5には、データバスIにより、
スタックメモリ22に対する規定のデータ格納量が設定
される(ステップSL)。命令コードFが退避命令であ
ると(S2 ) 、命令デコード部4は退避信号Gを出
力し、アップ・ダウンカウンタ5は減算され(S3 )
 、これが0となり、更に退避信号Gを受けるとBor
row信号が出力され(S4 ) 、フリップフロップ
7がセットされて、上位の演算処理装置(CPU)に通
知される(S5)。なお、フリップフロップ7は演算処
理装置(CPU)による当該割込処理が終了するとリセ
ットされる。
命令コードFが呼出し命令であると(S6)、命令デコ
ード部4は呼出し命令Hを出力し、アップ・ダウンカウ
ンタ5は加算され(S7 ) 、これが前記規定のデー
タ格納量となり、更に呼出し信号Hを受けるとCarr
y信号が出力され(S8)、フリップフロップがセット
されて演算処理装置(CPU)に通知される(S5)。
このようにして演算処理装置(CPU)は、スタックメ
モリ22に対して規定を越えたデータが書込み又は呼出
しされようとしたことを知ることができる。
なお命令コードFが退避命令及び呼出し命令あるいは他
の命令でないときなどにおいては各命令コードを待ち(
S2.S8.S9)、そして他の命令コードのときは当
該他の命令を実行する(S10)とともに各命令を待つ
(発明の効果) 以上説明したように、本発明によれば、スタックメモリ
内に規定を越えてアドレスデータが書込みあるいは呼び
出しされようとしたときは格納量管理回路によって上位
の演算処理装置に通知されるようにしたので、演算処理
装置がこれに対処することによってプログラムのデータ
の破壊を防止し得る。
【図面の簡単な説明】
第1図は本発明の実施例を示すスタックメモリ制御回路
図、第2図は従来のスタックメモリ制御回路図、第3図
は第1図の回路の動作のフローチャートである。 4・・・命令デコード部 (命令選択回路)5・・・ア
ップ・ダウンカウンタ (格納量管理回路) 22・・・スタックメモリ

Claims (1)

  1. 【特許請求の範囲】 メインルーチンから割込み処理あるいはサブルーチン処
    理へ移行する際にメインルーチンへの戻り番地あるいは
    メインルーチン実行時のシステム情報を退避させておく
    ためのスタックメモリを有するコンピュータにおいて、 スタックメモリに順次書込みさせる退避命令とスタック
    メモリから順次読出しさせる呼出し命令とを各命令コー
    ドの中から選択する命令選択回路と、 前記書込みあるいは読み出しによるスタックメモリ内の
    アドレスデータ格納量を規定し該規の格納定量を越えて
    前記退避命令あるいは呼出し命令があったことを検知し
    て上位の演算処理回路に通知する格納量管理回路とを設
    けてなる スタックメモリの制御回路。
JP6079087A 1987-03-16 1987-03-16 スタツクメモリ制御回路 Pending JPS63226733A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6079087A JPS63226733A (ja) 1987-03-16 1987-03-16 スタツクメモリ制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6079087A JPS63226733A (ja) 1987-03-16 1987-03-16 スタツクメモリ制御回路

Publications (1)

Publication Number Publication Date
JPS63226733A true JPS63226733A (ja) 1988-09-21

Family

ID=13152448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6079087A Pending JPS63226733A (ja) 1987-03-16 1987-03-16 スタツクメモリ制御回路

Country Status (1)

Country Link
JP (1) JPS63226733A (ja)

Similar Documents

Publication Publication Date Title
US5557766A (en) High-speed processor for handling multiple interrupts utilizing an exclusive-use bus and current and previous bank pointers to specify a return bank
US4410939A (en) System for program interrupt processing with quasi-stack of register-sets
US4961161A (en) Arithmetic processor performing mask and trap operations for exceptions
JPH0193837A (ja) デバッグ用マイクロプロセッサ
JPH01124031A (ja) マイクロ・コンピュータ
US4816992A (en) Method of operating a data processing system in response to an interrupt
JPS63226733A (ja) スタツクメモリ制御回路
JPS6319058A (ja) メモリ装置
JP3539984B2 (ja) プロセッサ
JPH04241032A (ja) システムコール実行装置
JPS5826043B2 (ja) プロセツサのリセツト方式
JPS59218569A (ja) マイクロ・コンピユ−タ
JPH0258648B2 (ja)
JPH044630B2 (ja)
JPS62151936A (ja) マイクロプロセツサに内蔵されるキヤツシユ回路
KR100895686B1 (ko) 마이크로 컨트롤러의 데이터 로드 타이밍을 감소시키는 방법
JPS6225333A (ja) マイクロコンピユ−タ
EP0369407A2 (en) Central processing unit for data processor having emulation function
JPS62151942A (ja) タスク切換え方式
JPS5914061A (ja) メモリバンク切換回路
JP3058524B2 (ja) プログラム制御装置
JPH05334074A (ja) マイクロプロセッサ
JPH04128961A (ja) マルチプロセッサ制御方式
JPH05324871A (ja) マイクロコンピュータ
JPH08305564A (ja) マイクロコンピュータ