JPH08179954A - 半導体集積回路 - Google Patents

半導体集積回路

Info

Publication number
JPH08179954A
JPH08179954A JP33484794A JP33484794A JPH08179954A JP H08179954 A JPH08179954 A JP H08179954A JP 33484794 A JP33484794 A JP 33484794A JP 33484794 A JP33484794 A JP 33484794A JP H08179954 A JPH08179954 A JP H08179954A
Authority
JP
Japan
Prior art keywords
address
vector
unit
counter
latch
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
JP33484794A
Other languages
English (en)
Inventor
Tetsuharu Tokunaga
徹治 徳永
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.)
Hitachi Microcomputer System Ltd
Original Assignee
Hitachi Microcomputer System 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 Hitachi Microcomputer System Ltd filed Critical Hitachi Microcomputer System Ltd
Priority to JP33484794A priority Critical patent/JPH08179954A/ja
Publication of JPH08179954A publication Critical patent/JPH08179954A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 ハードウエアを用いてベクタ番号を形成し、
割込み処理を高速化する技術を提供する。 【構成】 活性化された割り込み信号を計数してベクタ
番号を形成するするカウンタ101と、形成されたベク
タ番号を保持するバッファ102と、割り込み信号を入
力とする割込み端子W0〜Wnと割込み端子W0〜Wn
に対応する割込みアクノリッジ信号を出力する端子WA
0〜WAnを備えたベクタ番号処理機能を有するCPU
120と、供給される活性化された割り込み信号と上記
割込みアクノリッジ信号に応じて上記バッファ102の
出力を制御するバッファ制御部103とを備える半導体
集積回路100は、割り込み処理におけるソフトウエア
処理を削減する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、半導体集積回路に関
し、詳しくは割り込み処理にハードウエア制御を用いる
半導体集積回路に関する。
【0002】
【従来の技術】一般に、ソフトウエアの処理を簡略化す
る方法として、ソフトウエアの動作状態に状態変数を設
けて、この状態変数をソフトウエアで管理して動作状態
の移行を行う手法が挙げられる。上記ソフトウエアの管
理の多くは、ソフトウエアによるカウンタを設けて割り
込み信号が活性化される毎に当該カウンタを計数させた
り、当該事象の割り込みに応じた状態変数を指定したり
する操作を行っていた。このようなソフトウエアの管理
については、マイクロコンピュータシリーズ15、80
86マイクロコンピュータ(昭和61年12月25日、
丸善株式会社発行)の第207頁から第209頁に記載
されている。
【0003】
【発明が解決しようとする課題】従来技術における割り
込み処理動作のソフトウエア管理では、次のような問題
が生じている。第1に、ソフトウエアで状態変数を指定
する場合には、各々の状態変数をソフトウエア作成時に
考案しなければならない。これでは、ソフトウエア作成
の工数を低減させるのに支障を来す。第2に、状態変数
の管理は、ソフトウエアで行われるからバグの発生から
逃れることはできない。例えば、ソフトウエアを構成す
るサブルーチンがスタック領域を越えてデータの上書き
を行った場合、その上書き領域が状態変数を管理するカ
ウンタだとすると、ソフトウエア全体の状態遷移制御が
異常となる。第3に、状態変数の管理のためのソフトウ
エア処理時間が必要となり、割り込み処理動作の高速化
を妨げる。第4に、状態変数を所定のプログラムアドレ
スを指定するアドレスに変換するソフトウエア処理も必
要とされ、割り込み処理動作の高速化を妨げる。そこ
で、本発明者はこのような問題を解決すべき手段を見い
出すべき努力を重ねた。
【0004】本発明の目的は、割り込み要求に応答する
ためにCPU(中央処理装置)に供給すべきベクタ番号
をハードウエアで設定することにより、ソフトウエアの
工数を削減して割り込み処理動作を高速化し、且つCP
Uに供給される状態変数であるベクタ番号の信頼性を高
める技術を提供することである。また、他の目的は、割
り込み処理のための所定の命令アドレスをハードウエア
で設定することにより、上記と同様の効果を得る技術を
提供することである。
【0005】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び添付図面から明らかになるで
あろう。
【0006】
【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば下記
の通りである。
【0007】すなわち、CPUへの割り込み信号が活性
化される毎に計数動作を行い、その計数値をベクタ番号
として出力するベクタカウンタ部(101)と、上記ベ
クタカウンタ部から出力されるベクタ番号を保持する第
1のベクタバッファ部(102)と、当該第1のベクタ
バッファ部に保持されたベクタ番号を上記所定の活性化
された割り込み信号の供給に応じて上記CPUへ出力可
能にするバッファ制御部(103)と、を備えて半導体
集積回路を構成する。上記半導体集積回路の上記ベクタ
カウンタ部をプリセット可能とし、更に上記CPUから
供給されるベクタ番号を保持する第2のベクタバッファ
部(302)と、上記第2のベクタバッファ部の保持デ
ータを上記CPUの指示により上記ベクタカウンタ部に
ラッチさせる第1のデコーダ部(303)と、を備える
ことができる。また、上記ベクタカウンタ部をプリセッ
ト可能とし、更に上記CPUから供給されるベクタ番号
を保持する第3のベクタバッファ部(302)と、上記
CPUから上記第3のベクタバッファに供給される第1
のベクタ番号がラッチされる第1のラッチ部(403)
と、上記CPUから上記第3のベクタバッファに供給さ
れる第2のベクタ番号がラッチされる第2のラッチ部
(404)と、上記CPUの指示により上記第1のベク
タ番号を第1のラッチ部にラッチさせ、上記第2のベク
タ番号を上記第2のラッチ部にラッチさせる第2のデコ
ード部(303)と、上記第1のラッチ部の保持する第
1のベクタ番号と上記ベクタカウンタ部から出力される
ベクタ番号とを2入力として比較し、当該2入力が同値
のとき、上記第2のラッチ部に保持される第2のベクタ
番号を上記ベクタカウンタ部にラッチさせる比較部(4
02)と、を備えることができる。
【0008】一方、所定の割り込み信号が活性化される
毎に計数動作を行い、その計数値を命令アドレスの上位
アドレスとして出力する第1のカウンタ部(201)
と、割り込み信号の発生毎にリセットされ、プリフェッ
チ動作に同期して計数動作を行い、その計数値を上記命
令アドレスの下位アドレスとして出力する第2のカウン
タ部(202)と、上記第1のカウンタ部と第2のカウ
ンタ部で形成された命令アドレスを入力とし命令実行を
行う演算部(220)と、を備えて他の半導体集積回路
を構成する。上記第1のカウンタ部をプリセット可能と
し、更に上記演算部から供給される上記上位アドレスを
保持する第1のアドレスバッファ部(302)と、上記
第1のアドレスバッファ部の保持データを上記演算部の
指示により上記第1のカウンタ部にラッチさせる第1の
アドレスデコーダ部(303)と、を備えることができ
る。また、上記第1のカウンタ部をプリセット可能と
し、更に上記演算部から供給される上記上位アドレスを
保持する第2のアドレスバッファ部(302)と、上記
演算部から上記第2のアドレスバッファに供給される第
1の命令アドレスの上位アドレスがラッチされる第1の
アドレスラッチ部(403)と、上記演算部から上記第
2のアドレスバッファに供給される第2の命令アドレス
の上位アドレスがラッチされる第2のアドレスラッチ部
(404)と、上記演算部から供給される上記第1の命
令アドレスの上位アドレスを上記第1のアドレスラッチ
部にラッチさせ、上記第2の命令アドレスの上位アドレ
スを上記第2のアドレスラッチ部にラッチさせる第2の
アドレスデコード部(303)と、上記第1のアドレス
ラッチ部の保持する第1の命令アドレスの上位アドレス
と上記第1のカウンタ部から出力される上位アドレスと
を2入力として比較し、当該2入力が同値のとき、上記
第2のアドレスラッチ部に保持される第2の命令アドレ
スの上位アドレスを上記第1のカウンタ部にラッチさせ
る比較部(402)と、を備えることができる。
【0009】
【作用】上記したベクタ番号を形成する手段によれば、
ソフトウエアによりベクタ番号を形成することなく、割
り込み信号の活性化を上記ベクタカウンタ部に認識させ
ることにより、容易にベクタ番号をハードウエアで形成
することができる。形成されたベクタ番号は、CPUに
供給されそこで割り込み処理プログラムのアドレスに変
換される。上記ベクタカウンタ部は、所定の割り込み信
号の活性化に応じて計数され、複数のベクタ番号を形成
する。上記ベクタカウンタ部はプリセット可能であり、
上記第2のベクタバッファ部にCPUが所望のベクタ番
号をデータバスを介して供給し、CPUが第1のデコー
ダに所定の指示を与えれば、上記所望のベクタ番号を上
記ベクタカウンタ部にラッチさせることができる。上記
ラッチされたベクタ番号は、活性化された割り込み信号
が供給されることよって計数されてCPUに供給され
る。また、上記CPUはデータバスを介して供給される
所望のベクタ番号を上記第3のベクタバッファ部及び第
2のデコーダを用いて、第1のラッチ部に第1のベクタ
番号と、第2のラッチ部に第2のベクタ番号とをラッチ
させることができる。上記比較部は、上記第1のベクタ
番号と上記ベクタカウンタ部から出力されるベクタ番号
とを2入力として比較し、当該2入力が同値のとき、上
記第2のベクタ番号を上記カウンタ部にラッチさせる。
上記ラッチされた第2のベクタ番号は、活性化された割
り込み信号が供給されることによって計数されてCPU
に供給される。
【0010】また、上記した命令アドレスを形成する手
段によれば、ソフトウエアにより命令アドレスを形成す
ることなく、割り込み信号の活性化を上記第1のカウン
タ部及び第2のカウンタ部に認識させることにより、容
易に命令アドレスをハードウエアで形成することができ
る。形成された命令アドレスにより、演算部を構成する
命令レジスタ、プログラムメモリ、命令デコーダ、命令
実行部などを介して所定の割り込み処理が実行される。
上記第1のカウンタ部は、所定の割り込み信号の活性化
に応じて計数され、複数の命令アドレスの上位アドレス
を形成する。また、上位ベクタ番号を形成する手段にお
いて所望のベクタ番号がベクタカウンタ部にラッチ可能
なように、命令アドレスを形成する手段でも、同様の回
路構成を用いアドレスバスを介して演算部から供給され
る上位アドレスを上記第1のカウンタ部にラッチするこ
とができる。また、前記ベクタ番号を形成する手段で第
1のベクタ番号と第2のベクタ番号とを所定のラッチ部
に設定して割り込み処理の流れを変えたように、同様の
回路構成を用いてアドレスバスを介して演算部から供給
される所望の2つの上位アドレスを所定のラッチ部にラ
ッチして前記と同様の比較処理を行い、割り込み処理の
流れを変えることができる。
【0011】
【実施例】図1には、本発明の半導体集積回路100の
一例ブロック図が示される。同図に示される半導体集積
回路100は、特に制限されないが、公知の半導体製造
技術により単結晶シリコンなどの一つの半導体基板に形
成される。上記半導体集積回路100は、ベクタ割り込
み機能を有するCPU120と、割り込み信号の活性化
をハードウエアにて認識しベクタ番号を形成するベクタ
番号発生回路130を備える。上記ベクタ番号とは、C
PU120に供給されることにより所定のオフセット値
などが付加されて所定の割り込み処理プログラムのアド
レスに変換される情報である。ベクタ番号発生回路13
0は、特に制限されないが、所定の割り込み信号単位、
例えば上記CPU120の割り込み端子W0〜Wn毎に
設けられている。また、特に限定されないが、割り込み
端子W0〜Wn毎に一連の割り込み処理を行うための処
理プログラムが図示しない記憶領域に格納されている。
例えば、同一割り込み端子W0に割り込みが生じる毎
に、複数の割り込み処理S1、S2、S3、S4が所定
の順番で繰返して行われる。上記ベクタ番号発生回路1
30は、上記割り込み端子W0〜Wn毎に所定の割り込
み信号の活性化を計数して上記CPU120に供給され
るベクタ番号を形成するカウンタ101と、カウンタ1
01の出力を保持するバッファ102と、バッファ制御
回路103とを備える。上記バッファ制御回路103
は、上記バッファ102に保持されたベクタ番号を割り
込み信号の活性化によりイネーブル状態としてデータバ
スDBを介してCPU120へ供給可能とし、活性化さ
れた割り込み信号を受け入れたCPU120が割り込み
端子W0〜Wnに対応する割り込み受付端子WA0〜W
Anから割り込み応答信号を受け、バッファ102の出
力をディスイネーブル状態にする。上記カウンタ101
は、割り込み信号を受ける端子Cを備え、それに対する
信号が活性化される毎に計数動作を行う例えばリングカ
ウンタから成る。例えば、割り込み端子W0に対応され
る割り込み信号にて指示される割り込み処理が、上記複
数の割り込み処理S1、S2、S3、S4をサイクリッ
クにその順に繰り返すものであるとすると、最初の割り
込み信号の発生によって、上記カウンタ101の値はS
1の割り込み処理を示すベクタ番号とされ、次に同一割
り込み端子W0に供給される割り込み信号が活性化した
場合には、カウント値はS2の割り込み処理を示す次の
ベクタ番号に更新されていく。なお、このカウンタ10
1は、CPU120の制御により何時でも初期値(例え
ばS1の割り込み処理を示すベクタ番号)にリセット可
能にされる。上記バッファ制御回路103は、例えばR
S型フリップフロップ回路からなり、セット端子Sに活
性化された割り込み信号が供給されると出力端子Qの出
力をハイレベルとし、リセット端子Rにハイレベル(イ
ネーブルレベル)の割り込み応答信号が供給されると出
力端子Qの出力はローレベルとする。上記バッファ制御
回路103の出力がハイレベルとされる期間にバッファ
102は出力動作可能にされる。
【0012】上記ベクタ番号発生回路130に活性化さ
れた割り込み信号が供給された場合、以下のように一連
の動作が行われる。例えば所定の割り込み端子W0に供
給される割り込み信号が活性化(ハイレベルへ変化)す
ることによって、所定の割り込み端子W0、割り込み端
子W0に対応するベクタ番号発生回路130のバッファ
制御回路103のセット端子S、及びカウンタ101の
クロック端子Cにハイレベルが供給される。上記端子C
にハイレベルが供給されたカウンタ101は例えばイン
クリメントされ、その計数値がバッファ102へ出力さ
れる。上記バッファ制御回路103は、セット端子Sに
ハイレベルが供給されることにより出力端子Qからハイ
レベルをバッファ102のイネーブル端子Eに供給す
る。イネーブル端子Eにハイレベルが供給されたバッフ
ァ102は、カウンタ101から供給されたベクタ番号
をデータバスDBに出力する。割り込み端子W0にハイ
レベルが供給されたCPU120は、当該割り込みの割
り込み優先度を考慮し、割り込み端子W0に対応する当
該割り込みの優先度が現在行っている処理よりも低い場
合は、当該処理が終わるまで割り込み受付端子WA0か
らのハイレベル出力をウエイトさせ、割り込み処理を待
機させる。当該割り込みの優先度が現在行っている処理
よりも高い場合、CPU120は現在の処理を速やかに
終了し、当該割り込みにて供給されたベクタ番号を受け
付け、供給されるベクタ番号で示された所望の割り込み
処理を行う。割り込みを受け付けたCPU120は、割
り込み受付端子WA0からハイレベルを上記バッファ制
御回路103のリセット端子Rに供給する。リセット端
子Rにハイレベルが供給されたバッファ制御回路103
は、出力端子Qの出力をローレベルとし、バッファ10
2の出力動作を停止する。再度、同一割り込み端子W0
に活性化された割り込み信号が供給された場合は、カウ
ンタ101の値はインクリメントされ、上記と同様に処
理が行われる。このように、ベクタ番号は上記ベクタ発
生回路130を用いてハードウエアによって容易に形成
され、所望の割り込み処理を実行させることができる。
他の割り込み端子W1〜Wnに対する割り込み要求に対
しても同様の処理が行われる。
【0013】図2の(A)には、同一割り込み端子、例
えば割り込み端子W0に活性化された割り込み信号が順
次供給されたとき、上記CPU120で割り込み処理動
作するソフトウエアの一例状態遷移図が示される。同図
には、ソフトウエアのメインルーチンは記載されておら
ず、割り込みによって移行するサブルーチンの上記状態
変数S1〜S4が示されている。本実施例において、メ
インルーチンは割り込み待ち状態のループと理解された
い。現在、カウンタ101の値には、状態変数S1を示
すベクタ番号が設定されており、割り込み動作は解除さ
れているものとする。ここで、割り込み端子W0に活性
化された割り込み信号が供給されると、カウンタ101
の値は状態変数S1を示すベクタ番号から、次に処理す
べき状態変数S2を示すベクタ番号に更新され、CPU
120へ供給可能とされる。図2の(A)には、この処
理がS1〜S4の順に行われることが示される。図2の
(B)には、図2の(A)の処理を簡単に示したフロー
チャートが示される。同図にはメインルーチンのフロー
チャートが示され、そのWAIT部で状態変数S1〜S
4の処理が行われていることが示される。
【0014】図3には、本発明の他のベクタ番号発生回
路300の一例ブロック図が示される。同図によれば、
ベクタ番号発生回路300は、前記ベクタ番号発生回路
100と同様に端子W0〜Wn毎に設けられ、上記バッ
ファ制御回路103と上記バッファ102を備え、新た
に設けられたラッチ動作(プリセット)可能なカウンタ
301とCPU120から供給されるベクタ番号を格納
するバッファ302と、当該バッファ302のデータを
上記カウンタ301にラッチさせるアドレスデコーダ3
03とを備える。上記カウンタ301は、上記データバ
スDBを介してCPU120が、同一割り込み端子W0
〜Wnに活性化された割り込み信号が供給されたとき所
定の割り込み処理が行えるようにそれに対応される状態
変数を示すベクタ番号が出力可能であり、上記カウンタ
101の機能に加えて外部から供給されるベクタ番号を
ラッチする機能も有する。ベクタ番号発生回路300に
活性化された割り込み信号が供給されたときは、前記ベ
クタ番号発生回路100と同様にカウンタ301で形成
された所定のベクタ番号がバッファ102を介してCP
U120へ供給される。ここで、割り込み信号が活性化
される前にCPU120が遷移したい状態変数を示すベ
クタ番号から1引いた値を上記バッファ302へ供給
し、CPU120からアドレスデコーダ303へ、バッ
ファ302を選択状態にする所定のアドレスはアドレス
バスABを介して、ライト信号は制御線CSを介して供
給される。CPU120がアドレスデコーダ303を介
してバッファ302にベクタ番号を書き込むと、そのベ
クタ番号はカウンタ301に供給される。これと同時
に、アドレスデコーダ303からラッチ指示がカウンタ
301の端子Lに供給されることにより、バッファ30
2が出力するベクタ番号がカウンタ301にラッチされ
る。こうして、上記遷移したいベクタ番号から1引いた
ベクタ番号をカウンタ301にラッチすることができ、
同一割り込み端子に活性化された割り込み信号が供給さ
れたとき、カウンタ301の値は遷移したいベクタ番号
に計数され、CPU120へ供給される。こうして、C
PU120は、所望とするベクタ番号をベクタ番号発生
回路300へ供給することで、目的とする割り込み処理
を実行することができる。
【0015】図4の(A)には、例えば割り込み端子W
0に活性化された割り込み信号が順次供給されたとき、
上記ベクタ番号発生回路300を用いたCPU120で
割り込み処理動作するソフトウエアの一例状態遷移図が
示される。同図には、ソフトウエアのメインルーチンは
記載されておらず、割り込みによって移行するサブルー
チンの上記状態変数S1〜S4が示されている。本実施
例において、メインルーチンは割り込み待ち状態のルー
プと理解されたい。現在、カウンタ301の値には、状
態変数S1を示すベクタ番号が設定されており、割り込
み動作は解除されているものとする。ここで、活性化さ
れた割り込み信号が供給されると、状態変数S1を示す
ベクタ番号は、状態変数S2を示すベクタ番号に更新さ
れ、半導体集積回路120へ供給可能とされる。上記ベ
クタ番号発生回路300を用いることにより、所望とす
る状態変数S1〜S4へ状態遷移することが可能とな
る。図4の(A)には、例えば状態変数S3から状態変
数S1へ状態遷移可能であることが示されている。図4
の(B)には、図4の(A)の処理を簡単に示したフロ
ーチャートが示される。同図にはメインルーチンのフロ
ーチャートが示され、そのWAIT部で状態変数S1〜
S4の処理が行われていることが示される。
【0016】図5には、本発明の他のベクタ番号発生回
路400の一例ブロック図が示される。同図によれば、
ベクタ番号発生回路400は、前記ベクタ番号発生回路
300と同様割り込み端子W0〜Wn毎に設けられ、ベ
クタ番号発生回路300の構成に、更に所望とするベク
タ番号をラッチさせるラッチ回路403、404と、ラ
ッチ回路403にラッチされたベクタ番号とカウンタ3
01から出力されるベクタ番号とを比較し、同値の場合
にラッチ回路404にラッチされたベクタ番号をカウン
タ301にラッチさせる比較回路402と、を備える。
同一割り込み端子W0〜Wnに活性化された割り込み信
号が供給されたときの割り込み処理は前記と同様S1か
らS4の処理とされる。ベクタ番号発生回路300に活
性化された割り込み信号が供給された場合は、前記ベク
タ番号発生回路300と同様に所定のベクタ番号がCP
U120へ供給される。ここで、割り込み信号が活性化
される前にCPU120は上記バッファ302へ遷移元
及び遷移先としたいベクタ番号を供給することができ
る。これはCPU120からアドレスデコーダ303へ
所定のアドレス及びライト信号をアドレスバスAB、制
御線CSを介して供給することにより実行可能となる。
CPU120がアドレスデコーダ303を介してバッフ
ァ302に遷移元としたいベクタ番号を書き込むと、同
時にアドレスデコーダ303からラッチ指示がラッチ回
路403の端子Lに供給されバッファ302が出力する
ベクタ番号がラッチ回路403にラッチされる。同様に
して遷移先としたいベクタ番号から1引いた値は、ラッ
チ回路404にラッチされる。上記遷移元及び遷移先の
ベクタ番号がラッチされたベクタ番号発生回路400に
活性化された割り込み信号が供給されることによって、
ベクタ番号がカウンタ301から出力されると、その出
力は比較回路402にも供給される。比較回路402
は、ラッチ回路403とカウンタ301の出力を比較
し、同一であればカウンタ301に対してラッチ回路4
04のベクタ番号をラッチ(プリセット)させる。すな
わち、カウンタ301には遷移先のベクタ番号から1引
いた値がラッチされ、次の活性化された割り込み信号が
供給されることによってカウンタの値は遷移先のベクタ
番号に計数される。このように、遷移先のベクタ番号か
ら1引いた値と遷移元のベクタ番号を指定することによ
り、S1〜S4のループに対し、所望とする遷移元から
遷移先へ移行するループを形成することができる。ルー
プが形成されるとラッチ回路の設定を変更しない限り、
常に形成されたループの割り込み処理動作が繰返し実行
される。
【0017】図6には、本発明の半導体集積回路200
の一例ブロック図が示される。同図に示される半導体集
積回路200は、特に制限されないが、公知の半導体製
造技術により単結晶シリコンなどの一つの半導体基板に
形成される。上記半導体集積回路200は、活性化され
た割り込み信号が供給されることによって命令アドレス
を形成する命令アドレス形成部210と、形成された命
令アドレスを解読し命令を実行する演算部220と、を
備えてなる。上記命令アドレス形成部210は、一連の
割り込み処理を指示する割り込み信号の種別毎に設けら
れ、同一半導体集積回路200で形成される命令アドレ
スによる割り込み処理は、前記図2の状態遷移の場合の
ように所定の順序で繰り返して処理される。上記演算部
220は、供給される割り込み信号による割り込み要求
を割り込み優先度等に従って調停する割り込みコントロ
ーラ203と、供給される命令アドレスを上記コントロ
ーラ203の制御により格納する命令レジスタ204
と、命令アドレスのプログラムメモリ207と、プログ
ラムメモリ207のプログラムを解読する命令デコーダ
205と、命令デコーダ205から供給される制御信号
により命令の実行を行う命令制御部206と、を備えて
なる。上記命令アドレス形成部210は、供給される活
性化された割り込み信号が端子Cに供給される毎に計数
して割り込み処理を指示する命令アドレスの上位アドレ
スを形成する上位アドレスカウンタ201と、上記活性
化された割り込み信号がリセット端子Rに供給されるこ
とによってリセット状態にされる、上記命令アドレスの
下位アドレスを形成する下位アドレスカウンタ202と
を備える。上記下位アドレスカウンタ202は、例えば
命令フェッチ動作に応じて命令デコーダ205から出力
される命令フェッチ指示信号が下位アドレスカウンタ2
02のクロック端子Cに供給され、その命令フェッチの
指示毎に計数動作を行う。
【0018】例えば、上記命令アドレスが6ビットで構
成される場合は、命令アドレスの上位3ビットが上位ア
ドレスカウンタ201で設定され、下位3ビットが下位
アドレスで設定される。上位アドレスカウンタ201
は、リセット値が”000”とされ、例えば活性化され
た割り込み信号が供給されることによってインクリメン
トされる。また、下位アドレスカウンタ202は、活性
化された割り込み信号が供給されることによってリセッ
トされ”000”とされる。すなわち、最初の活性化さ
れた割り込み信号が上位アドレスカウンタ201及び下
位アドレスカウンタ202に供給されることによって、
命令アドレス”001000”が形成される。形成され
た命令アドレス”001000”は、上記の如く命令デ
コーダ205にて解読され、所定の制御信号が形成され
る。命令デコーダ205から出力される上記命令フェッ
チの指示信号は上記下位アドレスカウンタ202に供給
され、命令がフェッチされる毎に下位アドレスカウンタ
202の値をインクリメントし、次に実行される命令ア
ドレスを形成する。つまり、デコード信号が出力される
毎に、上記命令アドレス”001000”は”0010
01”、”001010”、”001011”の様に命
令アドレスの下位3ビットがインクリメントされ、所定
の割り込み処理が実行される。この状態からさらに割り
込み信号が活性化すると、上位アドレスカウンタ201
はインクリメントされて”002”となり、下位カウン
タ202はリセットされて”000”となるため、新た
な命令アドレス”002000”が形成され、所定の割
り込み処理が実行される。
【0019】図7には、前記図4で説明したCPU12
0が所望のベクタ番号を設定する手段を、上記図6の半
導体集積回路200に応用した命令アドレス形成部50
0が示される。上記命令アドレス形成部500は、上記
図6の構成に前記図4におけるバッファ302とアドレ
スデコーダ303を備えることで、命令制御部206か
ら供給される上位アドレスが上記上位アドレスカウンタ
201にラッチ可能にされる。ラッチ動作は、上記CP
U120に代えて命令制御部206が所定の上位アドレ
スをバッファ302に供給し、命令制御部206からア
ドレスデコーダ303へ、バッファ302を選択状態に
する所定のアドレス及びライト信号が供給される。命令
制御部206がアドレスデコーダ303を介してバッフ
ァ302に上位アドレスを書き込むと、その上位アドレ
スは上位アドレスカウンタ201に供給される。これと
同時に、アドレスデコーダ303からラッチ指示が上位
アドレスカウンタ201の端子Lに供給されることによ
り、バッファ302が出力する上位アドレスが上位アド
レスカウンタ201にラッチされる。こうして、上記遷
移したい上位アドレスから1引いたベクタ番号を上位ア
ドレスカウンタ201にラッチすることができ、同一割
り込み端子に活性化された割り込み信号が供給されたと
き、上位アドレスカウンタ201の値は遷移したい上位
アドレスに計数され、命令レジスタ204へ供給され
る。上記上位アドレスカウンタ201に供給される上位
アドレスは、例えば割り込み処理中にエラーを生じたと
きに現在実行中の処理の上位アドレスを再度供給してエ
ラーに係る処理を再実行する場合や、タイマー管理によ
り所定の命令アドレスを所定の時間に供給する処理の際
に、上記命令制御部206から供給される。こうして、
所定のプログラム処理にて供給される上位アドレスから
1引いた値がバッファ302に供給されることによっ
て、次の活性化された割り込み信号が同じ命令アドレス
形成部500に供給されると、所望とする命令アドレス
が命令レジスタ204に供給される。
【0020】図8には、前記図5で説明したCPU12
0が所望とする状態変数のループを設定する手段を、上
記図6の半導体集積回路200に取り入れた命令アドレ
ス形成部600が示される。上記命令アドレス形成部6
00は、上記図6の構成に前記図5におけるバッファ3
02、アドレスデコーダ303、ラッチ回路403、4
04、及び比較回路402を備えることで、上記命令制
御部206から供給される遷移元と遷移先の上位アドレ
スが上記ラッチ回路403、404にラッチ可能にされ
る。ラッチ動作は、割り込み信号が活性化される前に命
令制御部206から上記バッファ302へ遷移元及び遷
移先としたい上位アドレスを出力することができる。命
令制御部206からアドレスデコーダ303へ所定のア
ドレス及びライト信号を供給する。命令制御部206が
アドレスデコーダ303を介してバッファ302に遷移
元としたい上位アドレスを書き込むと、同時にアドレス
デコーダ303からラッチ指示がラッチ回路403の端
子Lに供給されバッファ302が出力する上位アドレス
がラッチ回路403にラッチされる。同様にして遷移先
としたい上位アドレスから1引いた値は、ラッチ回路4
04にラッチされる。上記遷移元及び遷移先の上位アド
レスがラッチされた命令アドレス形成部600に活性化
された割り込み信号が供給されることによって、上位ア
ドレスがカウンタ301から出力されると、その出力は
比較回路402にも供給される。比較回路402は、ラ
ッチ回路403とカウンタ301の出力を比較し、同一
であればカウンタ301に対してラッチ回路404の上
位アドレスをラッチ(プリセット)させる。すなわち、
上位アドレスカウンタ301には遷移先の上位アドレス
から1引いた値がラッチされ、次の活性化された割り込
み信号が供給されることによってカウンタの値は遷移先
の上位アドレスに計数される。このように、遷移先の上
位アドレスから1引いた値と遷移元の上位アドレスを指
定することにより、S1〜S4のループに対し、所望と
する遷移元から遷移先へ移行するループを形成すること
ができる。ループが形成されるとラッチ回路の設定を変
更しない限り、常に形成されたループの割り込み処理動
作が繰返し実行される。
【0021】上記実施例によれば、以下の作用効果を得
ることができる。 (1)割り込み処理の状態変数を示す上記ベクタ番号発
生回路130を用いて容易にベクタ番号を形成すること
ができ、割り込み処理におけるソフトウエアの処理過程
を少なくすることができる。すなわち、割り込み処理を
高速化することができる。 (2)状態変数の管理は、単純な回路構成からなるベク
タ番号発生回路130で行うことから、従来のようなソ
フトウエアのバグ等による異常が生じることはない。す
なわち、CPU120に供給されるベクタ番号の信頼性
が著しく増大される。また、状態変数の管理のためのソ
フトウエア処理時間が不要となり、割り込み処理を高速
化する。 (3)CPU120が所望とする割り込み処理の状態変
数を示すベクタ番号をベクタ番号発生回路130に設定
することができる。これは、所定の割り込み処理が複数
の状態変数で表される処理により順序化されている場合
に、所望の状態変数で表される処理動作を優先して実行
させる。 (4)所定のベクタ番号で示される状態変数の割り込み
処理の後に、CPU120が所望とする割り込み処理の
状態変数を示すベクタ番号をベクタ番号発生回路130
に設定することができる。これは、CPU120が所定
の割り込み処理の後に、所定の割り込み信号が発生した
ときに処理すべき割り込み処理を予め指定することがで
きることを意味する。すなわち、所定の割り込み信号で
処理される複数の割り込み処理において、自由に処理の
順番を変えることができる。 (5)割り込み処理の命令アドレスを半導体集積回路2
00で容易に形成することができ、ソフトウエアによる
アドレス変換処理を受けることなく直接形成された命令
アドレスで命令フェッチ処理を実行することができる。
すなわち、上記ベクタ番号発生回路130を用いて割り
込み処理を行う場合よりも割り込み処理動作を高速化す
ることができる。 (6)命令制御部206から供給される上位アドレスを
上記上位アドレスカウンタ201に設定することができ
る。これは、所定の割り込み処理が複数の割り込み処理
により順序化されている場合に、所望の命令アドレスで
指定される割り込み処理動作を優先して実行させる。 (7)所定の命令アドレスで示される割り込み処理の後
に、命令制御部206から供給される上位アドレスを上
記上位アドレスカウンタ201に設定することができ
る。これは、所定の割り込み処理の後に、所定の割り込
み信号が発生したときに処理すべき割り込み処理を指定
することができることを意味する。すなわち、所定の割
り込み信号で処理される複数の割り込み処理において、
自由に処理の順番を変えることができる。
【0022】以上本発明者によってなされた発明を実施
例に基づいて具体的に説明したが、本発明はそれに限定
されるものではなく、その要旨を逸脱しない範囲におい
て種々変更可能であることは言うまでもない。
【0023】例えば、上記実施例ではベクタ番号が1つ
のベクタカウンタによって形成されていたが、複数のカ
ウンタを用いてベクタ番号を形成することができる。同
様に、命令アドレスの上位アドレスも1つのカウンタに
よって形成されていたが、複数のカウンタを用いて命令
アドレスを形成できる。
【0024】以上の説明では主として本発明者によって
なされた発明をその背景となった利用分野である1チッ
プマイコンに適用した場合について述べたが、それに限
定されることはなく、ベクタ番号又は命令アドレスを形
成するボード上の回路又は専用LSIに適用することが
できる。上記ベクタ番号発生回路130、300、40
0や命令アドレス形成部210、500、600は単体
のLSIとすることが可能である。
【0025】本発明は、少なくともベクタ番号又は命令
アドレスを形成するソフトウエアの代替ハードウエアに
適用することができる。
【0026】
【発明の効果】本願において開示される発明のうち代表
的なものによって得られる効果を簡単に説明すれば下記
の通りである。
【0027】すなわち、本発明の半導体集積回路は、活
性化された割り込み信号に応じてハードウエアで割り込
み処理の状態変数を示すベクタ番号を形成する。よっ
て、ソフトウエアでベクタ番号を形成するためのソフト
ウエア工数を不要とし、また、ソフトウエアによるベク
タ番号管理も必要がない。すなわち、本発明のベクタ番
号を用いた割り込み処理は、信頼性が高く、ソフトウエ
アが関与しない分だけ割り込み処理を高速化できる。ま
た、本発明の他の半導体集積回路は、所定の割り込み信
号が供給されることによって割り込み処理の命令アドレ
スを形成することにより、直接命令フェッチ動作を実行
させることができる。すなわち、上記ベクタ番号を形成
して割り込み処理を行う場合よりも更に割り込み処理を
高速化することができる。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の一例ブロック図であ
る。
【図2】本実施例の割り込み処理の一例状態遷移図であ
る。
【図3】本発明の他のベクタ番号発生回路の一例ブロッ
ク図である。
【図4】本実施例の割り込み処理の他の一例状態遷移図
である。
【図5】本発明のその他のベクタ番号発生回路の一例ブ
ロック図である。
【図6】本発明の他の半導体集積回路の一例ブロック図
である。
【図7】本発明の他の半導体集積回路の他の一例ブロッ
ク図である。
【図8】本発明の他の半導体集積回路のその他の一例ブ
ロック図である。
【符号の説明】
100 半導体集積回路 101 カウンタ 102 バッファ 103 バッファ制御回路 130 ベクタ番号発生回路 120 CPU W0 割り込み入力端子 WA0 割り込み受付端子

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 CPUへの割り込み信号が活性化される
    毎に計数動作を行い、その計数値をベクタ番号として出
    力するベクタカウンタ部と、 上記ベクタカウンタ部から出力されるベクタ番号を保持
    する第1のベクタバッファ部と、 当該第1のベクタバッファ部に保持されたベクタ番号を
    上記所定の割り込み信号の活性化に応じて上記CPUへ
    出力可能にするバッファ制御部と、を備えることを特徴
    とする半導体集積回路。
  2. 【請求項2】 上記ベクタカウンタ部はプリセット可能
    であり、 更に上記CPUから供給されるベクタ番号を保持する第
    2のベクタバッファ部と、 上記第2のベクタバッファ部の保持データを上記CPU
    の指示により上記ベクタカウンタ部にラッチさせる第1
    のデコーダ部と、を備えた請求項1記載の半導体集積回
    路。
  3. 【請求項3】 上記ベクタカウンタ部はプリセット可能
    であり、 更に上記CPUから供給されるベクタ番号を保持する第
    3のベクタバッファ部と、 上記CPUから上記第3のベクタバッファに供給される
    第1のベクタ番号がラッチされる第1のラッチ部と、 上記CPUから上記第3のベクタバッファに供給される
    第2のベクタ番号がラッチされる第2のラッチ部と、 上記CPUの指示により上記第1のベクタ番号を上記第
    1のラッチ部にラッチさせ、上記第2のベクタ番号を上
    記第2のラッチ部にラッチさせる第2のデコード部と、 上記第1のラッチ部の保持する第1のベクタ番号と上記
    ベクタカウンタ部から出力されるベクタ番号とを2入力
    として比較し、当該2入力が同値のとき、上記第2のラ
    ッチ部に保持される第2のベクタ番号を上記ベクタカウ
    ンタ部にラッチさせる比較部と、を備えた請求項1記載
    の半導体集積回路。
  4. 【請求項4】 所定の割り込み信号が活性化される毎に
    計数動作を行い、その計数値を命令アドレスの上位アド
    レスとして出力する第1のカウンタ部と、 割り込み信号の発生毎にリセットされ、プリフェッチ動
    作に同期して計数動作を行い、その計数値を上記命令ア
    ドレスの下位アドレスとして出力する第2のカウンタ部
    と、 上記第1のカウンタ部と第2のカウンタ部で形成された
    命令アドレスを入力とし命令実行を行う演算部と、を備
    えることを特徴とする半導体集積回路。
  5. 【請求項5】 上記第1のカウンタ部はプリセット可能
    であり、 更に上記演算部から供給される上記上位アドレスを保持
    する第1のアドレスバッファ部と、 上記第1のアドレスバッファ部の保持データを上記演算
    部の指示により上記第1のカウンタ部にラッチさせる第
    1のアドレスデコーダ部と、を備えた請求項4記載の半
    導体集積回路。
  6. 【請求項6】 上記第1のカウンタ部はプリセット可能
    であり、 更に上記演算部から供給される上記上位アドレスを保持
    する第2のアドレスバッファ部と、 上記演算回路から上記第2のアドレスバッファに供給さ
    れる第1の命令アドレスの上位アドレスがラッチされる
    第1のアドレスラッチ部と、 上記演算回路から上記第2のアドレスバッファに供給さ
    れる第2の命令アドレスの上位アドレスがラッチされる
    第2のアドレスラッチ部と、 上記演算部の指示により、上記第1の命令アドレスの上
    位アドレスを上記第1のアドレスラッチ部にラッチさ
    せ、上記第2の命令アドレスの上位アドレスを上記第2
    のアドレスラッチ部にラッチさせる第2のアドレスデコ
    ード部と、 上記第1のアドレスラッチ部の保持する第1の命令アド
    レスの上位アドレスと上記第1のカウンタ部から出力さ
    れる上位アドレスとを2入力として比較し、当該2入力
    が同値のとき、上記第2のアドレスラッチ部に保持され
    る第2の命令アドレスの上位アドレスを上記第1のカウ
    ンタ部にラッチさせる比較部と、を備えた請求項4記載
    の半導体集積回路。
JP33484794A 1994-12-20 1994-12-20 半導体集積回路 Withdrawn JPH08179954A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33484794A JPH08179954A (ja) 1994-12-20 1994-12-20 半導体集積回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33484794A JPH08179954A (ja) 1994-12-20 1994-12-20 半導体集積回路

Publications (1)

Publication Number Publication Date
JPH08179954A true JPH08179954A (ja) 1996-07-12

Family

ID=18281889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33484794A Withdrawn JPH08179954A (ja) 1994-12-20 1994-12-20 半導体集積回路

Country Status (1)

Country Link
JP (1) JPH08179954A (ja)

Similar Documents

Publication Publication Date Title
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
US5410721A (en) System and method for incrementing a program counter
JPH10207717A (ja) マイクロコンピュータ
JPH05324348A (ja) シングルチップマイクロコンピュータ
US6986028B2 (en) Repeat block with zero cycle overhead nesting
US5606715A (en) Flexible reset configuration of a data processing system and method therefor
US5068821A (en) Bit processor with powers flow register switches control a function block processor for execution of the current command
JPH02123449A (ja) コンピュータ・システム及びコンピュータ・システムを作動させる方法
US5671424A (en) Immediate system management interrupt source with associated reason register
JPH08179954A (ja) 半導体集積回路
JPH03271829A (ja) 情報処理装置
JPH11306044A (ja) データプロセッサ
JP2642566B2 (ja) システムコントローラのクロック再発生回路
JPH07175631A (ja) 演算処理装置
US5768554A (en) Central processing unit
JP2000029508A (ja) プログラマブルコントローラ
JPS6218933B2 (ja)
JPH06259264A (ja) クロック制御回路
JPH036758A (ja) マイクロプロセッサ
JP2002157130A (ja) マイクロコンピュータ
JPH04304581A (ja) 情報処理装置
JPH06342419A (ja) ペトリネットに基づく並列制御システム
JPH03226882A (ja) シングルチップマイクロコンピュータ
JPS6349941A (ja) 演算処理装置
JPH01236327A (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: 20020305