JPH05216661A - マイクロコンピュータ - Google Patents

マイクロコンピュータ

Info

Publication number
JPH05216661A
JPH05216661A JP3312368A JP31236891A JPH05216661A JP H05216661 A JPH05216661 A JP H05216661A JP 3312368 A JP3312368 A JP 3312368A JP 31236891 A JP31236891 A JP 31236891A JP H05216661 A JPH05216661 A JP H05216661A
Authority
JP
Japan
Prior art keywords
stack
register
contents
stack pointer
address
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.)
Withdrawn
Application number
JP3312368A
Other languages
English (en)
Inventor
Shiro Oba
史朗 大庭
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 Ltd
Fujitsu Electronics Inc
Original Assignee
Fujitsu Ltd
Fujitsu Electronics Inc
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 Ltd, Fujitsu Electronics Inc filed Critical Fujitsu Ltd
Priority to JP3312368A priority Critical patent/JPH05216661A/ja
Publication of JPH05216661A publication Critical patent/JPH05216661A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】本発明は、CPUに備えられるスタック管理回
路に関し、スループット時間を短縮することを目的とす
る。 【構成】アウトプットイネーブル入力端子*OEに命令
実行サイクルパルス*CPが供給される毎に、コンパレ
ータ31は(スタックポインタ1の内容SP)>(上限
レジスタ21の内容AH)であるか否かを判定し、コン
パレータ32は(スタックポインタ1の内容SP)<
(下限レジスタ22の内容AL)であるか否かを判定
し、これらの判定結果に基づいて内部割込みを掛ける。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロコンピュータ
に関する。
【0002】
【従来の技術】マイクロコンピュータでは、CPU内に
スタックポインタを備え、RAMの一部をスタック領域
として使用する。特に高級言語では、計算処理、関数や
サブルーチンの呼出しの際の戻り先アドレス退避、パラ
メータの受渡し、レジスタの内容の退避等にスタックを
利用している。
【0003】図4に示すようなスタックエリアの範囲を
越えてプッシュダウンすると、プログラムエリア又はデ
ータエリアが壊されて、マイクロコンピュータが暴走す
る原因となる。例えば、プログラムミスでスタックポイ
ンタに大きな定数を加算し又はスタックポインタから大
きな定数を減算した後に、プッシュダウンすると、プロ
グラムエリアが壊されて、マイクロコンピュータが暴走
することがある。
【0004】そこで、従来では、高級言語で関数やサブ
ルーチンを呼び出すと、機械語レベルにおいて、スタッ
クポインタの内容がスタックエリア内のアドレスを指し
ているかどうかをチェックしていた。
【0005】
【発明が解決しようとする課題】このため、スタックポ
インタの内容の範囲チェックが必要以上に頻繁に行わ
れ、オーバーヘッドが大きくなってスループット時間が
長くなり、リアルタイム処理を行うことができなくなる
場合があった。
【0006】本発明の目的は、このような問題点に鑑
み、スループット時間を短縮することができるマイクロ
コンピュータを提供することにある。
【0007】
【課題を解決するための手段及びその作用】図1は、本
発明に係るマイクロコンピュータの原理構成を示す。
【0008】このマイクロコンピュータは、スタックポ
インタ1と、スタックエリアAL〜AHが設定されるス
タックエリアレジスタと、イネーブル信号に応答してス
タックポインタ1の内容がスタックエリアAL〜AH内
であるか否かを判定し、否定判定された場合には内部割
り込み要求信号を出力する比較手段3とを有している。
【0009】このイネーブル信号は、例えば、命令デコ
ーダに同期信号として供給される命令実行サイクルパル
ス、又は、命令デコーダがサブルーチンコール命令等の
分岐命令をデコードしたときに生成されるパルス等であ
る。
【0010】本発明によれば、プログラムとは無関係に
スタックポインタ1の内容が設定範囲内であるか否かが
自動的にチェックされるので、オーバーヘッドが低減
し、スループット時間を短縮することができる。
【0011】本発明の第1態様では、スタックエリアレ
ジスタ2は、例えば図2に示す如く、スタックエリアA
L〜AHの上限アドレスAHが設定される上限レジスタ
21と、スタックエリアAL〜AHの下限アドレスAL
が設定される下限レジスタ22とからなり、比較手段
3、例えばコンパレータ31、32及びナンドーゲート
33は、スタックポインタ1の内容が上限レジスタ21
の内容よりも大きいとき、又は、スタックポインタ1の
内容が下限レジスタ22の内容よりも小さいときに、内
部割り込み要求信号を出力する。
【0012】この構成の場合、スタックエリアの上限ア
ドレスAHと下限アドレスALを任意に設定することが
できる。
【0013】本発明の第2態様では、例えば図3に示す
如く、スタックエリアレジスタとしての上位アドレス2
3には上位アドレスAhが設定され、比較手段は、スタ
ックポインタ1の内容の上位SPhが上位アドレスAh
に一致しないときに内部割り込み要求信号を出力するコ
ンパレータ34で構成されている。
【0014】この場合、構成が極めて簡単になる。
【0015】
【実施例】以下、図面に基づいて本発明の実施例を説明
する。
【0016】[第1実施例]図2は、第1実施例のマイ
クロコンピュータの要部回路を示す。
【0017】このマイクロコンピュータは、例えばワン
チップである。コンパレータ31は、その一方のデータ
入力端にスタックポインタ1の内容SPが供給され、他
方のデータ入力端に上限レジスタ21の内容AHが供給
され、アウトプットイネーブル入力端子*OEに命令実
行サイクルパルス*CPが供給される。*は、負論理を
表す。命令実行サイクルパルス*CPは、命令デコーダ
4に対する同期信号であり、周期的に生成される。コン
パレータ31は、命令実行サイクルパルス*CPが低レ
ベルになる毎に、SP>AHであれば低レベルを出力
し、SP≦AHであれば高レベルを出力する。
【0018】同様に、コンパレータ32は、その一方の
データ入力端にスタックポインタ1の内容SPが供給さ
れ、他方のデータ入力端に下限レジスタ22の内容AL
が供給され、アウトプットイネーブル入力端子*OEに
命令実行サイクルパルス*CPが供給される。コンパレ
ータ32は、命令実行サイクルパルス*CPが低レベル
になると、SP<ALであれば低レベルを出力し、SP
≧ALであれば高レベルを出力する。
【0019】上限レジスタ21及び下限レジスタ22に
は、プログラムでそれぞれAH及びALが設定される。
【0020】コンパレータ31及び42の出力は、ナン
ドゲート33を介して内部割り込み要求端に供給され
る。ナンドゲート33の出力は、AL≦SP≦AHのと
き低レベルとなり、SP<AL又はSP>AHのとき高
レベルとなる。ナンドゲート33の出力の立ち上がりで
内部割り込み要求が行われ、この要求が受け付けられて
非常割込み処理が行われ、例えば、このマイクロコンピ
ュータを用いたロボット等の装置の電源がオフにされ
る。これにより、プログラムの暴走による被害が防止さ
れる。
【0021】本第1実施例によれば、命令の実行と並行
して、プログラムとは無関係にスタックポインタ1の内
容SPが設定範囲内であるか否かが自動的にチェックさ
れるので、オーバーヘッドが低減し、マイクロコンピュ
ータのスループット時間を短縮することができる。ま
た、スタックエリアの上限アドレスAHと下限アドレス
ALを任意に設定することができる。
【0022】[第2実施例]図2は、第2実施例のマイ
クロコンピュータの要部回路を示す。
【0023】コンパレータ34は、その一方のデータ入
力端にスタックポインタ1の内容SPの上位SPhが供
給され、他方のデータ入力端に上位レジスタ23の内容
Ahが供給され、アウトプットイネーブル入力端子*O
Eに分岐命令検出パルス*JPが供給される。上位レジ
スタ23の内容Ahは、プログラムで設定される。
【0024】例えば、アドレスが32ビット、SPh及
びAhが共に20ビットの場合、スタックエリアのアド
レス範囲は、16進数で表すと、Ah×103 〜(Ah
+1)×103 −1となる。
【0025】分岐命令判別回路5は、命令デコーダ4が
デコードした命令がサブルーチンコール命令等の分岐命
令であると判定すると、分岐命令検出パルス*JPを生
成する。コンパレータ34は、分岐命令検出パルス*J
Pが低レベルになる毎に、SPh=Ahであれば低レベ
ルを出力し、SPh≠Ahであれば高レベルを出力す
る。コンパレータ34の出力の立ち上がりで上記第1実
施例と同様に内部割り込みが掛かる。
【0026】本第2実施例によれば、分岐命令が実行さ
れる毎に、プログラムとは無関係にスタックポインタ1
の内容SPが設定範囲内であるか否かが自動的にチェッ
クされるので、オーバーヘッドが低減し、マイクロコン
ピュータのスループット時間を短縮することができる。
また、本第2実施例は構成が極めて簡単である。
【0027】
【発明の効果】以上説明した如く、本発明に係るマイク
ロコンピュータによれば、プログラムとは無関係にスタ
ックポインタの内容が設定範囲内であるか否かが自動的
にチェックされるので、オーバーヘッドが低減し、簡単
な構成でスループット時間を短縮することができるとい
う優れた効果を奏する。
【0028】本発明の上記第1態様によれば、スタック
エリアの上限アドレスと下限アドレスを任意に設定する
ことができるという効果を奏する。
【0029】本発明の上記第2態様によれば、構成が極
めて簡単になるという効果を奏する。
【図面の簡単な説明】
【図1】本発明に係るマイクロコンピュータの原理構成
を示すブロック図である。
【図2】本発明の第1実施例のマイクロコンピュータの
要部回路図である。
【図3】本発明の第2実施例のマイクロコンピュータの
要部回路図である。
【図4】メモリマップである。
【符号の説明】
1 スタックポインタ 21 上限レジスタ 22 下限レジスタ 23 上位レジスタ 31、32、34 コンパレータ 33 ナンドゲート 4 命令デコーダ 5 分岐命令判別回路

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 スタックポインタ(1)と、 スタックエリア(AL〜AH)が設定されるスタックエ
    リアレジスタ(2)と、 イネーブル信号に応答して、該スタックポインタの内容
    が該スタックエリア内であるか否かを判定し、否定判定
    された場合には内部割り込み要求信号を出力する比較手
    段(3)と、 を有することを特徴とするマイクロコンピュータ。
  2. 【請求項2】 前記スタックエリアレジスタ(2)は、
    前記スタックエリアの上限アドレス(AH)が設定され
    る上限レジスタ(21)と、該スタックエリアの下限ア
    ドレス(AL)が設定される下限レジスタ(22)とか
    らなり、 前記比較手段(3)は、前記スタックポインタ(1)の
    内容が該上限レジスタの内容よりも大きいとき、又は、
    前記スタックポインタの内容が該下限レジスタの内容よ
    りも小さいときに、内部割り込み要求信号を出力するこ
    とを特徴とする請求項1記載のマイクロコンピュータ。
  3. 【請求項3】 前記スタックエリアレジスタ(23)に
    は上位アドレス(Ah)が設定され、 前記比較手段は、前記スタックポインタ(1)の内容の
    上位(SPh)が該上位アドレスに一致しないときに内
    部割り込み要求信号を出力するコンパレータ(34)で
    あることを特徴とする請求項1記載のマイクロコンピュ
    ータ。
JP3312368A 1991-11-27 1991-11-27 マイクロコンピュータ Withdrawn JPH05216661A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3312368A JPH05216661A (ja) 1991-11-27 1991-11-27 マイクロコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3312368A JPH05216661A (ja) 1991-11-27 1991-11-27 マイクロコンピュータ

Publications (1)

Publication Number Publication Date
JPH05216661A true JPH05216661A (ja) 1993-08-27

Family

ID=18028420

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3312368A Withdrawn JPH05216661A (ja) 1991-11-27 1991-11-27 マイクロコンピュータ

Country Status (1)

Country Link
JP (1) JPH05216661A (ja)

Similar Documents

Publication Publication Date Title
US5812868A (en) Method and apparatus for selecting a register file in a data processing system
EP0127440A2 (en) Integrated circuit device incorporating a data processing unit and a ROM storing applications program therein
US5717851A (en) Breakpoint detection circuit in a data processor and method therefor
KR930016880A (ko) 전자장치 및 그것의 고정정보 수정방법
JPH11203132A (ja) デジタル信号処理チップにおける反復構文の実行制御回路
KR960018911A (ko) 명령어 캐시안으로 명령어를 로딩하는 방법
JPH05216661A (ja) マイクロコンピュータ
JPH05216721A (ja) 電子計算機
JP2525492B2 (ja) プログラマブルコントロ―ラ
JPH0831033B2 (ja) データ処理装置
JP2557629B2 (ja) 割込方式
JPS5826043B2 (ja) プロセツサのリセツト方式
JPS60254255A (ja) メモリ走査方式
JPS5941068A (ja) 処理装置の性能測定装置
JPH03208132A (ja) シングルチツプマイクロコンピユータ
JPH05108542A (ja) データ処理装置
JPH0236423A (ja) 退避/復帰レジスタアドレス生成回路
JPH03154132A (ja) インサーキットエミュレータ
JPH02188840A (ja) データ処理装置
JPS60235249A (ja) プロセツサ回路
KR970016980A (ko) 난 마스커블 인터럽트 결정 회로
JPH02191046A (ja) プログラムの追跡方式
JPH02278342A (ja) マイクロコンピュータ
JPH076051A (ja) A/dコンバータ内蔵マイクロコンピュータ
JPS63120340A (ja) デ−タ処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990204