JPS62205433A - マイクロプロセツサの機能拡張方式 - Google Patents

マイクロプロセツサの機能拡張方式

Info

Publication number
JPS62205433A
JPS62205433A JP4898286A JP4898286A JPS62205433A JP S62205433 A JPS62205433 A JP S62205433A JP 4898286 A JP4898286 A JP 4898286A JP 4898286 A JP4898286 A JP 4898286A JP S62205433 A JPS62205433 A JP S62205433A
Authority
JP
Japan
Prior art keywords
instruction
executed
interrupt
program
extended
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
JP4898286A
Other languages
English (en)
Inventor
Osamu Hatakeyama
修 畠山
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4898286A priority Critical patent/JPS62205433A/ja
Publication of JPS62205433A publication Critical patent/JPS62205433A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、密結合プロセッサ(以下、コープロセ、すと
いう)が接続可能ではあるが接続されていないマイクロ
コンピュータシステムにおいて、コ会プロセッサの命令
を拡張命令として処理可能なマイクロプロセッサの機能
拡張方式に関する。
〔従来の技術〕
従来、拡張命令を用いてプログラムを記述し、その拡張
命令を処理するコ・プロセ、すをマイクロプロセッサに
接続して使用することによってマイクロプロセッサの機
能を拡張する方式がある。
−万、コ・プロセ、すが接続されていない場合には、コ
・プロセッサのソフトウェア・ニミーレータを作成し、
マイクロプロセッサが拡張命令を検出した際、作成した
ソフトウェア・エミュレータにその拡張命令の9能を肩
代わりさせる方式がある0 ここで、コ・プロセ、すが接続されていない場合の拡張
命令の検出は、高級なマイクロプロセッサであれば、コ
・プロセ、すが接続されているか否かを判断し、接続さ
れていない場合は、拡張命令の実行時に内部割り込みを
自動的に発生し、その割り込み処理ルーチン内でソフト
ウエアーエミエレータの処理を行なうことができる。さ
らに、本来マイクロプロセッサに与えられている命令セ
ット以外の命令コードをマイクロプロセッサが実行しよ
うとした場合、内部割り込みを自動的に発生し、その割
り込み処理ルーチン内で拡張命令か否かを判定し、拡張
命令であれば前記ソフトウェア・エミュレータの処理を
行なうものもある。
〔発明が解決しようとする問題点〕
しかし、上記のように自動的に内部割り込みを発生させ
る機能を有していないマイクロプロセ。
すでは、拡張命令の前にいちいち内部割り込み命令をセ
ットしておき、拡張命令実行前に内部割り込みを強制的
に発生させ、その内部割り込みルーチン内でン7トウェ
ア□エミュレータの処理を行なうように制御されていた
。この場合、ソースプロクラムがある場合には、ソース
プログニアAを&更して再アセンブルすることでプログ
ラムの変更が可能であるが、オブジェクトコードしか残
っていない場合には、全ての拡張命令を捜し出し、その
命令を書き換えなければならないという煩しさがある。
さらに、内部割り込み命令を挿入することKよって命令
の長さが変化する場合には、変化した命令の長さに適合
す、るようにアドレスを再計算する必要が生じ、修正に
際して非常に手間がか−かるという欠点がある。
〔問題を解決する手段〕
本発明の特徴は、マイクロプロセッサのステップ割り込
み手段を用いて、コ・プロセッサの命令である拡張命令
を用いたプログラムを実行させる場合、そのプログラム
を実行させる前に、ステップ割り込みを発生させ、その
割り込みルーチン内で次に実行すべき命令が拡張命令か
どうかを判断し、拡張命令ならばコ・プロセ、すのソフ
トウェア−エミュレータの処理を行ない、拡張命令でな
ければそのままステップ割り込みを抜けるように制御す
ることによって、プログラムを全く修正することなく拡
張命令の実行を可能としたことである0 〔実施例〕 次に、本発明の一実施例を、図面を用いて説明する。
第1図は、拡張命令を含んだプログラムと、各命令の実
行毎に発生するステップ割り込み処理の動作を示したフ
ロー図である0第2図は、一命令実行毎に発生するステ
ップ割り込みの処理ルーチンの処理内存を示すフロー図
である0 ここでは、第1図のプログラム例に従って、プログラム
を実行する場合、ステップ割り込み処理がどのように働
くかを第2図を用いて説明する0コ・プロセッサが接続
されていないマイクロコンピュータ7ステムにおいて、
第1図に示すような拡張命令を含んだプログラムを実行
させる場合、プログラムを実行する前に割り込み許可フ
ラグをONにしておく。この結果、一命令実行毎にステ
ップ割り込みが発生し、第1図の命令−】の実行後、そ
のステップ割り込み処理ルーチンに制御が移つたところ
で、自動的にステップ割り込みが禁止される(第2図−
A)Oそして、ステップ割り込み発生時に、スタックに
待避したプログラムカウンタの内容から、ステップ割り
込み処理ルーチン終了後実行すべき命令が拡張命令かど
うかを調べる(第2図−B%C)。
仮に、次に実行すべき命令が第】°図の拡張命令−2な
らば、その拡張命令の処理をソフトウェア・エミュレー
タで行ない(第2図−D)、ステップ割り込み発生時に
スタ、りに待避したプログラムカウンタの内容を前述ソ
フトウェア・エミュレータで処理した拡張命令の次の命
令である第1図の命令−3を指すようと変更する(第2
図−E)。
更に、割り込み許可7ラグをONKして(第2図−F)
、ステップ割り込み処理ルーチンから呼び出し元へ復帰
するために、割り込みからのリターン命令(以下RET
I命令という)を実行する(第2図−〇)oよって、ス
テ、ブ割り込みの解除の後すぐにRETI命令を実行す
ることにより再びステップ割り込みが発生し、ステップ
割り込み処理ルーチンに制御が移り(第2図−A)、前
述と同様に次に実行すべき命令(第1図の命令−3)が
拡張命令かどうかを調べる(第2図−B、C)。
以上の結果、第1図でわかるように、第1図の命令−1
を実行後ステップ割り込み処理に移り、エミュレータの
処理を行なった後、拡張命令−2を飛び越してプログラ
ムカウンタが第1図の命令−3を指した所ですぐにステ
ップ割り込みが発生することKなる。
また、第1図の命令−3のように、次に実行すべき命令
が拡張命令でなければ、すなわちマイクロブロセ、すの
本来の命令セット内の命令であれば、本ステップ割り込
み処理ルーチン内では何もしないで、そのままステップ
割り込み処理ルーチンから呼び出し元へ復帰するための
RETI命令を実行する(第2図−G)。よって、RE
TI命令を実行すると同時に、ステ、ブ割り込み発生時
にステ、り内に待避していた割シ込み許可フラグの内容
と、プログラムカウンタの内容とがそれぞれそのままス
テップ割り込み発生前の状態に戻り、再びステップ割り
込みがかかる状態となる。ステップ割り込みからの復帰
後は、マイクロプロセッサの命令セット内の命令である
第1図の命令−3を一命令実行した後、再びステップ割
シ込みが発生する。従って、再びステップ割り込み処理
ルーチンに制御が移り(第2図−人)、前述のように次
に実行すべき命令が拡張命令かどうかが調べられる(第
2図−B、C)。
〔発明の効果〕
以上、本発明によれば、一命令実行毎に発生するステッ
プ割り込み機能を用いて、コ・プロセ。
すが接続されていないマイクロコンピュータシステムに
おいて、拡張命令を含むプログラムに全くイ6正を加え
ることなく実行することを可能とする方式を提供するこ
とができ、マイクロコンピュータの機能を簡単に拡張で
きるという効果がある。
【図面の簡単な説明】
第1図は拡張命令を含んだプログラムと各命令の実行毎
に発生するステップ割り込み処理の9作を示すフロー図
である。第2図は一命令実行毎に発生するステップ割り
込みの処理ルーチンの処理内容を示す70−図である。 ζτ 代理人 弁理士  内 原   晋f  。 橢ミ、l 凹 上張e?令乞SLkフ゛ロク°う4とX
テップ會1す送み(す1のヤガヤv1すLb#5M7t
ヅ°IQNI:j6ステツブ割ゾV、み 次の忰<拡発キedbると判面“し 復°昂 Xテーノフ゛會ツリr21−ト

Claims (1)

    【特許請求の範囲】
  1. 割り込み許可フラグを用いて一命令実行毎にステップ割
    り込みを発生する手段と、前記ステップ割り込み発生時
    に、前記割り込み許可フラグの内容とプログラムカウン
    タの内容とを待避した後割り込み処理を行なう手段と、
    該割り込み処理終了後、割り込み許可フラグとプログラ
    ムカウンタの内容を復帰することによって、一命令実行
    毎にステップ割り込みを実行する手段とを有するマイク
    ロプロセッサの機能拡張方式において、前記マイクロプ
    ロセッサの命令セット以外の拡張命令を含むプログラム
    を実行する際、前記割り込み許可フラグを用いて一命令
    実行毎にステップ割り込みを発生し、このステップ割り
    込み処理ルーチンで、次に実行すべき命令を調べ、それ
    が前記拡張命令であれば当該拡張命令の機能をプログラ
    ムで処理した後前記ステップ割り込み処理ルーチンを抜
    け、一方次に実行すべき命令が前記拡張命令でなければ
    そのまま前記ステップ割り込み処理ルーチンを抜けるよ
    うにしたことを特徴とするマイクロプロセッサの機能拡
    張方式。
JP4898286A 1986-03-05 1986-03-05 マイクロプロセツサの機能拡張方式 Pending JPS62205433A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4898286A JPS62205433A (ja) 1986-03-05 1986-03-05 マイクロプロセツサの機能拡張方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4898286A JPS62205433A (ja) 1986-03-05 1986-03-05 マイクロプロセツサの機能拡張方式

Publications (1)

Publication Number Publication Date
JPS62205433A true JPS62205433A (ja) 1987-09-10

Family

ID=12818447

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4898286A Pending JPS62205433A (ja) 1986-03-05 1986-03-05 マイクロプロセツサの機能拡張方式

Country Status (1)

Country Link
JP (1) JPS62205433A (ja)

Similar Documents

Publication Publication Date Title
JPS62205433A (ja) マイクロプロセツサの機能拡張方式
US5715439A (en) Bi-directional co-processor interface
JPH0451329A (ja) コンテキスト切替装置
JPH02121045A (ja) アクセスプロテクト機能を有するマイクロプロセッサ
JPH03240831A (ja) 割り込み処理方式
JPH06332720A (ja) シグナル制御方法
JPH0242538A (ja) マイクロプロセッサ
JPH03122723A (ja) 割込処理装置
JPS6236576B2 (ja)
JP2792058B2 (ja) 入力座標変換処理方式
JPH04205144A (ja) マイクロプロセッサ
JPS63178343A (ja) 中断点の設定方式
JPH01214934A (ja) プログラムの間接再帰呼出し検出方式
JPH0784786A (ja) プログラム実行制御方法
JPH02103638A (ja) 組込み関数実行時の性能向上方式
JPH03262049A (ja) 割り込みによるデバイスドライバデバッギングシステム
JPH01314333A (ja) 電子計算機
JPS62117044A (ja) プログラム中断方式
JPH04167042A (ja) 非同期入出力方式
JPH03240840A (ja) デバッグ方式
JPH01305438A (ja) ホストコンピュータ
JPH01251142A (ja) プログラムトレース方式
JPH04245337A (ja) マイクロプロセッサ
JPS63247834A (ja) 浮動小数点関数擬似命令処理方法
JPH02267645A (ja) レポートファイルの自動ロールバック方式