JPH04367941A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH04367941A JPH04367941A JP14437891A JP14437891A JPH04367941A JP H04367941 A JPH04367941 A JP H04367941A JP 14437891 A JP14437891 A JP 14437891A JP 14437891 A JP14437891 A JP 14437891A JP H04367941 A JPH04367941 A JP H04367941A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- interrupt
- buffer
- instructions
- 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.)
- Granted
Links
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明はマイクロプロセッサに関
し、特に外部割込み処理の機能を有するマイクロプロセ
ッサに関する。
し、特に外部割込み処理の機能を有するマイクロプロセ
ッサに関する。
【0002】
【従来の技術】命令待ち行列(キュー)を有するマイク
ロプロセッサ、たとえば、米国インテル社の8086等
では、外部割込み処理のような分岐動作を行なう場合に
は、一度命令キューの内容を退避させ、再度割込み先の
命令をフエッチしなければならない。
ロプロセッサ、たとえば、米国インテル社の8086等
では、外部割込み処理のような分岐動作を行なう場合に
は、一度命令キューの内容を退避させ、再度割込み先の
命令をフエッチしなければならない。
【0003】従来のこの種のマイクロプロセッサは、図
5に示すように、命令キュー1と、命令キュー1から出
力される命令デコーダ2と、外部からの割込み入力に対
応して割込み処理の制御を行なう割込み制御部4と、ア
ドレス生成部6とを備えて構成されていた。
5に示すように、命令キュー1と、命令キュー1から出
力される命令デコーダ2と、外部からの割込み入力に対
応して割込み処理の制御を行なう割込み制御部4と、ア
ドレス生成部6とを備えて構成されていた。
【0004】次に、従来のマイクロプロセッサの動作に
ついて説明する。
ついて説明する。
【0005】図6は従来のマイクロプロセッサの割込み
処理を示すフローチャートである。
処理を示すフローチャートである。
【0006】外部から割込み入力があると割込み入力端
子TIがアクティブになり、割込み制御部4はマイクロ
プロセッサ内部の処理実行の状態に合わせ、タイミング
をみてこの割込みを受け付ける。割込みを受け付けると
、命令キュー1の既にフエッチされていた命令コードを
退避レジスタ等に退避する。同時に割込み処理サブルー
チンへ分岐するため、アドレス生成部6によりアドレス
計算を行なう。
子TIがアクティブになり、割込み制御部4はマイクロ
プロセッサ内部の処理実行の状態に合わせ、タイミング
をみてこの割込みを受け付ける。割込みを受け付けると
、命令キュー1の既にフエッチされていた命令コードを
退避レジスタ等に退避する。同時に割込み処理サブルー
チンへ分岐するため、アドレス生成部6によりアドレス
計算を行なう。
【0007】ここで、図6のタイムチャートに示すよう
に、割込み先の命令の再フエッチを開始してから、命令
キュー1への取込み、命令デコーダ2での命令デコード
を経て割込み処理の実行に入るまでに3クロックを要す
る。この場合は、命令コードが1ワードであり、したが
って、1回のフエッチで取込みを完了できる例を示して
いる。しかし、命令コードが長くなると、フエッチから
割込み処理の実行に入るまでの所要クロック数はさらに
多くなるというものであった。
に、割込み先の命令の再フエッチを開始してから、命令
キュー1への取込み、命令デコーダ2での命令デコード
を経て割込み処理の実行に入るまでに3クロックを要す
る。この場合は、命令コードが1ワードであり、したが
って、1回のフエッチで取込みを完了できる例を示して
いる。しかし、命令コードが長くなると、フエッチから
割込み処理の実行に入るまでの所要クロック数はさらに
多くなるというものであった。
【0008】
【発明が解決しようとする課題】上述した従来のマイク
ロプロセッサは、割込み発生時にアドレス計算を行なっ
てから実際に処理の実行を開始するまでに数クロック分
から十数クロック分の時間が必要であるので割込み応答
が遅くなるという欠点を有していた。
ロプロセッサは、割込み発生時にアドレス計算を行なっ
てから実際に処理の実行を開始するまでに数クロック分
から十数クロック分の時間が必要であるので割込み応答
が遅くなるという欠点を有していた。
【0009】
【課題を解決するための手段】本発明のマイクロプロセ
ッサは、外部割込み処理の機能を有するマイクロプロセ
ッサにおいて、前記外部割込み処理のサブルーチンの先
頭を構成する予め定めた数の命令を格納しておく命令バ
ッファを備えて構成されている。
ッサは、外部割込み処理の機能を有するマイクロプロセ
ッサにおいて、前記外部割込み処理のサブルーチンの先
頭を構成する予め定めた数の命令を格納しておく命令バ
ッファを備えて構成されている。
【0010】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0011】図1は本発明のマイクロプロセッサの第一
の実施例を示すブロック図である。
の実施例を示すブロック図である。
【0012】本実施例のマイクロプロセッサは、図1に
示すように、従来と同様の命令キュー1と、命令キュー
1から出力される命令デコーダ2と、外部からの割込み
入力に対応して割込み処理の制御を行なう割込み制御部
4と、アドレス生成部6とに加えて、割込み処理サブル
ーチンの先頭を構成する命令のうち本実施例では1ワー
ドの命令語長で3命令分を格納できるバッファ31,3
2,33からなる命令バッファ3と、アドレス生成部6
で生成したアドレスに命令バッファ3に格納した命令の
数すなわち3を加算するアドレス補正部5と、ゲート7
とを備えて構成されている。
示すように、従来と同様の命令キュー1と、命令キュー
1から出力される命令デコーダ2と、外部からの割込み
入力に対応して割込み処理の制御を行なう割込み制御部
4と、アドレス生成部6とに加えて、割込み処理サブル
ーチンの先頭を構成する命令のうち本実施例では1ワー
ドの命令語長で3命令分を格納できるバッファ31,3
2,33からなる命令バッファ3と、アドレス生成部6
で生成したアドレスに命令バッファ3に格納した命令の
数すなわち3を加算するアドレス補正部5と、ゲート7
とを備えて構成されている。
【0013】次に、本実施例の動作について説明する。
【0014】図2は本実施例のマイクロプロセッサの割
込み処理を示すフローチャートである。
込み処理を示すフローチャートである。
【0015】外部から割込み入力があると割込み入力端
子TIがアクティブになり、割込み制御部4はマイクロ
プロセッサ内部の処理実行の状態に合わせ、タイミング
をみてこの割込みを受け付ける。割込みを受け付けると
、命令キュー1の既にフエッチされていた命令コードを
退避レジスタ等に退避する。同時に割込み処理サブルー
チンへ分岐するため、アドレス生成部6によりアドレス
計算を行なう。
子TIがアクティブになり、割込み制御部4はマイクロ
プロセッサ内部の処理実行の状態に合わせ、タイミング
をみてこの割込みを受け付ける。割込みを受け付けると
、命令キュー1の既にフエッチされていた命令コードを
退避レジスタ等に退避する。同時に割込み処理サブルー
チンへ分岐するため、アドレス生成部6によりアドレス
計算を行なう。
【0016】一方、割込み制御部4が割込みを受け付け
ると、ゲート7をオンとし、予め命令バッフア3に格納
されている割込み処理サブルーチンの先頭を構成する3
つの命令を命令デコーダ2に出力する。同時にアドレス
補正部5はアドレス生成部6で生成されたアドレスに命
令バッファ3から出力した命令の数である3を加算して
アドレス端子TAに出力し、フエッチを開始する。
ると、ゲート7をオンとし、予め命令バッフア3に格納
されている割込み処理サブルーチンの先頭を構成する3
つの命令を命令デコーダ2に出力する。同時にアドレス
補正部5はアドレス生成部6で生成されたアドレスに命
令バッファ3から出力した命令の数である3を加算して
アドレス端子TAに出力し、フエッチを開始する。
【0017】図2のタイムチャートに示すように、命令
キュー1の内容を退避すると、直ちに命令バッファ3の
バッファ31,32,33にそれぞれ格納されている命
令を順次取だし、命令デコーダ2でデコードを行なう。 さらにバッファ33以降の命令は、フエッチ、命令キュ
ー1への格納を経て、バッファ33からの出力命令の次
にデコードステージに入る。
キュー1の内容を退避すると、直ちに命令バッファ3の
バッファ31,32,33にそれぞれ格納されている命
令を順次取だし、命令デコーダ2でデコードを行なう。 さらにバッファ33以降の命令は、フエッチ、命令キュ
ー1への格納を経て、バッファ33からの出力命令の次
にデコードステージに入る。
【0018】以上述べたように、命令バッフア3に予め
割込み処理サブルーチンの先頭を構成する命令のいくつ
かを格納しておくことにより、命令フエッチから割込み
処理実行までのアイドルサイクルを埋めることが可能と
なり、応答性を向上することができる。
割込み処理サブルーチンの先頭を構成する命令のいくつ
かを格納しておくことにより、命令フエッチから割込み
処理実行までのアイドルサイクルを埋めることが可能と
なり、応答性を向上することができる。
【0019】次に、本発明の第二の実施例について説明
する。
する。
【0020】大部分のマイクロプロセッサは複数の割込
み入力端子を備えている。しかし、割込みの種類には種
々あり、高速応答を必要とするものから、必ずしも高速
性を必要としないものもある。本実施例では、3入力の
割込み入力のうちの一つが高速応答を必要とする場合の
例を示す。
み入力端子を備えている。しかし、割込みの種類には種
々あり、高速応答を必要とするものから、必ずしも高速
性を必要としないものもある。本実施例では、3入力の
割込み入力のうちの一つが高速応答を必要とする場合の
例を示す。
【0021】図3は本発明のマイクロプロセッサの第二
の実施例を示すブロック図である。
の実施例を示すブロック図である。
【0022】本実施例の前述の第一の実施例に対する相
違点は、割込み入力が3入力となることに対応して割込
み制御部8の入力端子TIがTI1〜TI3となり、こ
のうち、高速応答を要する割込み入力を検出するための
高速割込み検出部9を備えたことである。
違点は、割込み入力が3入力となることに対応して割込
み制御部8の入力端子TIがTI1〜TI3となり、こ
のうち、高速応答を要する割込み入力を検出するための
高速割込み検出部9を備えたことである。
【0023】高速割込み検出部9は、3入力の割込み入
力端子TI1〜TI3のうちの一つを高速割込み入力と
してプログラマブルに設定し、その設定した端子からの
割込み入力を検出するためのものである。高速割込み検
出部9の構成の一例を図4に示す。高速割込み検出部9
は、図4に示すように、割込み入力端子数3と同一ビッ
ト長のレジスタ91と、レジスタ91の各ビットの出力
と端子TI1〜TI3のそれぞれの入力との論理積を取
るANDゲートA91〜A93と、ANDゲートA91
〜A93の出力の論理和を取るORゲートO91とを備
えて構成されている。
力端子TI1〜TI3のうちの一つを高速割込み入力と
してプログラマブルに設定し、その設定した端子からの
割込み入力を検出するためのものである。高速割込み検
出部9の構成の一例を図4に示す。高速割込み検出部9
は、図4に示すように、割込み入力端子数3と同一ビッ
ト長のレジスタ91と、レジスタ91の各ビットの出力
と端子TI1〜TI3のそれぞれの入力との論理積を取
るANDゲートA91〜A93と、ANDゲートA91
〜A93の出力の論理和を取るORゲートO91とを備
えて構成されている。
【0024】次に、本実施例の動作について説明する。
【0025】まず、高速割込み検出部9のレジスタ91
に予め高速割込み入力として割込み入力端子TI1を指
定するように’100’を設定しておく。いま、3入力
の割込み入力端子TI1〜TI3のうち、割込み入力端
子TI1がアクティブとなったとすると、割込み制御部
4はマイクロプロセッサ内部の処理実行の状態に合わせ
、タイミングをみてこの割込みを受け付ける。割込みを
受け付けると、命令キュー1の既にフエッチされていた
命令コードを退避レジスタ等に退避する。同時に割込み
処理サブルーチンへ分岐するため、アドレス生成部6に
よりアドレス計算を行なう。
に予め高速割込み入力として割込み入力端子TI1を指
定するように’100’を設定しておく。いま、3入力
の割込み入力端子TI1〜TI3のうち、割込み入力端
子TI1がアクティブとなったとすると、割込み制御部
4はマイクロプロセッサ内部の処理実行の状態に合わせ
、タイミングをみてこの割込みを受け付ける。割込みを
受け付けると、命令キュー1の既にフエッチされていた
命令コードを退避レジスタ等に退避する。同時に割込み
処理サブルーチンへ分岐するため、アドレス生成部6に
よりアドレス計算を行なう。
【0026】割込制御部4は割込みを受け付けると、3
入力の割込み入力端子TI1〜TI3の状態を高速割込
み検出部9に出力する。前述のように、高速割込み検出
部9のレジスタ91には、予め’100’が設定されて
いるので、割込み入力端子TI1に割込み入力がある場
合には、ANDゲートA91が1となり、入力された割
込みが高速割込み入力として検出される。この結果、こ
の検出出力は、ゲート7をオンとし、前述の第一の実施
例と同様に、予め命令バッフア3に格納されている割込
み処理サブルーチンの先頭を構成する3つの命令を命令
デコーダ2に出力する。同時にアドレス補正部5はアド
レス生成部6で生成されたアドレスに命令バッファ3か
ら出力した命令の数である3を加算してアドレス端子T
Aに出力し、フエッチを開始する。
入力の割込み入力端子TI1〜TI3の状態を高速割込
み検出部9に出力する。前述のように、高速割込み検出
部9のレジスタ91には、予め’100’が設定されて
いるので、割込み入力端子TI1に割込み入力がある場
合には、ANDゲートA91が1となり、入力された割
込みが高速割込み入力として検出される。この結果、こ
の検出出力は、ゲート7をオンとし、前述の第一の実施
例と同様に、予め命令バッフア3に格納されている割込
み処理サブルーチンの先頭を構成する3つの命令を命令
デコーダ2に出力する。同時にアドレス補正部5はアド
レス生成部6で生成されたアドレスに命令バッファ3か
ら出力した命令の数である3を加算してアドレス端子T
Aに出力し、フエッチを開始する。
【0027】以上述べたように本実施例では、最も緊急
性および高速応答性を要求する割込み入力に対して、選
択的に命令を命令バッファに格納して高速応答すること
が可能となり、少ないハードウェアで効果的に性能向上
をすることが期待できる。
性および高速応答性を要求する割込み入力に対して、選
択的に命令を命令バッファに格納して高速応答すること
が可能となり、少ないハードウェアで効果的に性能向上
をすることが期待できる。
【0028】
【発明の効果】以上説明したように、本発明のマイクロ
プロセッサは、割込み処理のサブルーチンの先頭を構成
する予め定めた数の命令を格納しておく命令バッファを
備えることにより、割込み処理の受付け直後に処理の実
行が可能となるので割込み応答性を向上することができ
るという効果がある。
プロセッサは、割込み処理のサブルーチンの先頭を構成
する予め定めた数の命令を格納しておく命令バッファを
備えることにより、割込み処理の受付け直後に処理の実
行が可能となるので割込み応答性を向上することができ
るという効果がある。
【図1】本発明のマイクロプロセッサの第一の実施例を
示すブロック図である。
示すブロック図である。
【図2】本実施例のマイクロプロセッサにおける動作の
一例を示すフローチャートである。
一例を示すフローチャートである。
【図3】本発明のマイクロプロセッサの第二の実施例を
示すブロック図である。
示すブロック図である。
【図4】本実施例の高速割込み検出部の構成の一例を示
す図である。
す図である。
【図5】従来のマイクロプロセッサの一例を示すブロッ
ク図である。
ク図である。
【図6】従来のマイクロプロセッサにおける動作の一例
を示すフローチャートである。
を示すフローチャートである。
1 命令キュー
2 命令デコーダ
3 命令バッファ
4,8 割込み制御部
5 アドレス補正部
6 アドレス生成部
7 ゲート
9 高速割込み検出部
31〜33 バッファ
91 レジスタ
A1〜A3 ANDゲート
O1 ORゲート
Claims (2)
- 【請求項1】 外部割込み処理の機能を有するマイク
ロプロセッサにおいて、前記外部割込み処理のサブルー
チンの先頭を構成する予め定めた数の命令を格納してお
く命令バッファを備えることを特徴とするマイクロプロ
セッサ。 - 【請求項2】 前記外部割込み処理を要求するn個の
外部割込み入力のそれぞれに対応するビットを有するn
ビット長のレジスタを備え、このレジスタに高速応答を
要求する第一の外部割込み入力に対応する前記ビットを
予め設定することにより前記第一の外部割込み入力を検
出する高速割込み検出部を備えることを特徴とする請求
項1記載のマイクロプロセッサ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03144378A JP3074790B2 (ja) | 1991-06-17 | 1991-06-17 | マイクロプロセッサ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP03144378A JP3074790B2 (ja) | 1991-06-17 | 1991-06-17 | マイクロプロセッサ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH04367941A true JPH04367941A (ja) | 1992-12-21 |
| JP3074790B2 JP3074790B2 (ja) | 2000-08-07 |
Family
ID=15360736
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP03144378A Expired - Lifetime JP3074790B2 (ja) | 1991-06-17 | 1991-06-17 | マイクロプロセッサ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3074790B2 (ja) |
-
1991
- 1991-06-17 JP JP03144378A patent/JP3074790B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP3074790B2 (ja) | 2000-08-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| FI90804C (fi) | Dataprosessorin ohjausyksikkö, jolla on käskyn esihaun uudelleensuuntausta käyttävä keskeytyspalvelu | |
| JP3105738B2 (ja) | 情報処理装置 | |
| KR100188374B1 (ko) | 연산처리장치 | |
| JP3074790B2 (ja) | マイクロプロセッサ | |
| JP2694948B2 (ja) | マイクロプログラム処理装置 | |
| EP0573071A2 (en) | A microprocessor | |
| JPH0520010A (ja) | レジスタフアイル | |
| JP2002297378A (ja) | 信号処理装置 | |
| JP2721610B2 (ja) | プログラマブルコントローラ | |
| JPS6242301B2 (ja) | ||
| JPH0573296A (ja) | マイクロコンピユータ | |
| JPH0793151A (ja) | 命令供給装置 | |
| JP2689894B2 (ja) | マイクロプログラム制御型情報処理装置 | |
| JP2833259B2 (ja) | プログラムリピート制御方法及びプログラムリピート制御装置 | |
| JP2636192B2 (ja) | 情報処理装置 | |
| JPH04370832A (ja) | プロセッサ回路 | |
| JPS62156738A (ja) | プログラム制御装置 | |
| JP2597744B2 (ja) | 分岐制御方法 | |
| JPH0353322A (ja) | 情報処理装置 | |
| JP2926975B2 (ja) | プログラム制御装置 | |
| JPH0855033A (ja) | 情報処理装置 | |
| JPH06149570A (ja) | 命令制御装置 | |
| JPH06149564A (ja) | 命令制御装置 | |
| JPH03232019A (ja) | 情報処理装置 | |
| JPH0619705A (ja) | パイプライン制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000509 |