JP2013105388A - 割り込み回路及び割り込み方法 - Google Patents
割り込み回路及び割り込み方法 Download PDFInfo
- Publication number
- JP2013105388A JP2013105388A JP2011249842A JP2011249842A JP2013105388A JP 2013105388 A JP2013105388 A JP 2013105388A JP 2011249842 A JP2011249842 A JP 2011249842A JP 2011249842 A JP2011249842 A JP 2011249842A JP 2013105388 A JP2013105388 A JP 2013105388A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- circuit
- timer
- processing
- interruption
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】マイクロコンピュータのチップに内蔵した割り込み回路における割り込み処理の遷移を、インサーキットエミュレータを使用せずに時間計測する。
【解決手段】割り込み監視回路11が、割り込み要求、CPU(中央演算処理装置)からの割り込み許可信号、割り込み処理の本体の開始信号、割り込み処理の本体の終了信号、割り込み前のプログラムへの復帰信号の少なくとも1つをトリガとしてタイマ回路12にトリガ信号S1を供給することにより、タイマのカウント値をキャプチャレジスタに取り込んだ直後に、取り込んだタイマのカウント値と割り込み種類情報を、内部バス33に接続された内部メモリ32に転送する。割り込み処理の実行後に、各々の割り込み種類ごとに、割り込み待ち時間、割り込み前処理の時間、割り込み処理本体の時間、割り込み後処理の時間、割り込み処理全体の時間の少なくとも1つを計算する。
【選択図】図1
【解決手段】割り込み監視回路11が、割り込み要求、CPU(中央演算処理装置)からの割り込み許可信号、割り込み処理の本体の開始信号、割り込み処理の本体の終了信号、割り込み前のプログラムへの復帰信号の少なくとも1つをトリガとしてタイマ回路12にトリガ信号S1を供給することにより、タイマのカウント値をキャプチャレジスタに取り込んだ直後に、取り込んだタイマのカウント値と割り込み種類情報を、内部バス33に接続された内部メモリ32に転送する。割り込み処理の実行後に、各々の割り込み種類ごとに、割り込み待ち時間、割り込み前処理の時間、割り込み処理本体の時間、割り込み後処理の時間、割り込み処理全体の時間の少なくとも1つを計算する。
【選択図】図1
Description
本発明は、割り込み回路及び割り込み方法に関する。特に、本発明は、割り込みをデバッグする際に、割り込み処理の遷移を時間計測する回路及び方法に関する。
近年、マイクロコンピュータを用いたシステムの性能及び機能の向上はめざましく、それに伴い割り込み要因の増加、多様化が進んでいる。特に、インバータ制御に用いるマイクロコンピュータにおいては、ns(ナノ秒)オーダでの処理や多重割り込みが多く使用され、動作精度はnsオーダを求められる。
従来、マイクロコンピュータのデバッグには、インサーキットエミュレータが用いられるが、従来のインサーキットエミュレータは、インバータ制御等で要求されるnsオーダの精度の割り込みのデバッグに使用するには、性能及び機能が不十分であるのが実情である。また、マイクロコンピュータによってはインサーキットエミュレータが用意されていないものもあり、割り込みを含めたデバッグの開発環境の整備が求められている。このような状況に対して、インサーキットエミュレータの性能及び機能を改善するのではなく、インサーキットエミュレータを用いずに、マイクロコンピュータのチップ自体にデバッグ機能を入れる方法が検討されている。
例えば、特許文献1には、マイクロコンピュータシステムに内蔵されている割り込み回路に割り込み診断回路を付加することにより、割り込み処理の各種実行時間の測定及びステータス情報の選択と格納を、専用のインサーキットエミュレータを使用することなく、実行する方法が開示されている。
図11は、特許文献1に記載された従来技術の割り込み回路を示すブロック図である。従来技術の割り込み回路は、外部又は内蔵入出力(内蔵I/O)からの割り込み要求を受け付ける割り込み入力回路30、割り込み入力回路30からの出力を選択する割り込み選択回路1、割り込み選択回路1からの出力で割り込み処理の開始及び終了の制御を行う割り込み制御回路2、割り込み制御回路2からの出力でCPUに対する割り込み要求の調停を行う割り込み要求回路4、割り込み制御回路2からの出力からハンドラアドレスを生成し、CPUへ通知するハンドラアドレス生成回路6、時間計測を行うタイマ回路9、割り込み診断回路8、タイマ回路9および拡張レジスタ7の内容を格納する格納レジスタ10、割り込み発生の有無/条件などの設定を行うマスクレジスタ3、割り込み処理の動作条件(優先順位、割り込み入力のサンプリング条件など)の設定や割り込み処理に関する各種ステータス情報を格納する制御レジスタ5、割り込み診断回路8、タイマ回路9および格納レジスタ10の動作条件の設定および割り込み処理に関する各種ステータス情報を格納する拡張レジスタ7から構成されている。ここで、割り込み診断回路8は、割り込み入力回路30、割り込み制御回路2、割り込み要求回路4、拡張レジスタ7の出力、CPUからのステータス情報(CPUST信号)に基づいてタイマ回路9を制御する。
また、図12は、図11のタイマ回路9の詳細を示すブロック図である。タイマ回路9は、クロック信号(図12のCLK)を基準に動作するタイマ20とキャプチャレジスタ(21a〜21e)から構成される。
従来技術の割り込み回路では、まず、図11の制御レジスタ5及び拡張レジスタ7で割り込み処理の動作条件と割り込み処理の実行時間測定条件、ステータス情報の選択/格納条件を設定する。そして、割り込み要求(図1のINT0、INT1等)が入力されると、割り込み診断回路8は、拡張レジスタ7で設定された条件で割り込み処理の時間計測を行う。具体的には、タイマ20のカウント値は、割り込み診断回路8から出力される信号(図12のINT0、INTAK、INTSRT、INTEND、PRGSRT)をトリガとして、夫々キャプチャレジスタ(21a〜21e)に取り込まれる。
そして、キャプチャレジスタ(図12の21a〜21e)に取り込まれたカウント値に基づいて、当該割り込み処理の割り込み待ち時間、割り込み前処理の時間、割り込み処理本体の時間、割り込み後処理の時間を算出する。
前述のように、特許文献1に記載された従来技術の割り込み回路及び割り込み方法によれば、専用のインサーキットエミュレータを使用することなく、割り込み処理の遷移を時間計測することが可能である。
しかしながら、特許文献1に記載された従来技術は、割り込みが発生するごとにタイマ20をリセットしているため、複数の割り込みに対して、相互のタイミング関係を含めた測定ができないという問題がある。具体的には、2つの割り込みである「割り込み1」、「割り込み2」が発生した場合、「割り込み1」と「割り込み2」がプログラム実行中にどのような時間間隔で発生し、処理されるかを測定することができない。
また、多重割り込みが発生すると、多重割り込み発生前に処理して、キャプチャレジスタに取り込んだカウント値は、後で発生した優先度の高い割り込みにより上書きされてしまう。そのため、多重割り込みに対応した割り込みの遷移を時間計測することができない。
さらに、従来技術の割り込み回路は、割り込み処理ステータス(前述のINT0、INTAK、INTST、INTEND、PRGSRT等)ごとに、キャプチャレジスタが必要となり、チップ面積が増大し、チップコストが高くなる。また、割り込み種類(INT0、INT1等)に対応するには、割り込み種類ごとにキャプチャレジスタを持つことが必要となり、さらにチップ面積が増大し、チップコストが高くなる。
以上説明したように、従来技術による割り込み回路には、解決すべき課題が存在する。
本発明の第1の視点による割り込み回路は、外部又は内蔵入出力からの割り込み要求を受け付けて、前記割り込み要求に対応した割り込み処理を実行すると共に、前記割り込み処理の遷移を時間計測する割り込み回路であって、時間計測を行うタイマ回路と、前記タイマ回路を制御する割り込み監視回路と、を備え、前記タイマ回路は、クロック信号で動作するタイマと、前記タイマのカウント値を取り込むキャプチャレジスタとを有し、前記割り込み監視回路は、前記タイマ回路に対して、前記タイマのカウント値を取り込むトリガ信号を供給し、前記タイマ回路は前記トリガ信号のタイミングで、前記タイマのカウント値を前記キャプチャレジスタに取り込み、前記キャプチャレジスタに取り込まれた前記タイマのカウント値と当該割り込み要求の割り込み種類情報を、内部バスに接続された内部メモリに転送する。
本発明の第2の視点による割り込み方法は、外部又は内蔵入出力からの割り込み要求を受け付けて、前記割り込み要求に対応した割り込み処理を実行すると共に、前記割り込み処理の遷移を時間計測する割り込み方法であって、前記割り込み処理の遷移を時間計測するタイミングを与える割り込み処理ステータス情報を予め設定するステップと、前記時間計測を行うタイマを動作させるステップと、前記割り込み処理ステータス情報がアクティブになるタイミングで、前記タイマのカウント値を取り込み、取り込んだ前記タイマのカウント値と当該割り込み要求の割り込み種類情報を内部メモリに転送するステップと、を含む。
本発明の第1の視点によれば、複数の割り込みや多重割り込みに対しても、相互のタイミング関係を含めて割り込みの遷移を時間計測することが可能な割り込み回路を提供することができる。
本発明の第2の視点によれば、複数の割り込みや多重割り込みに対しても、相互のタイミング関係を含めて割り込みの遷移を時間計測することが可能な割り込み方法を提供することができる。
本発明の実施形態の概要について、必要に応じて図面を参照して説明する。なお、この概要に付記した図面参照符号は専ら理解を助けるための例示であり、図示の態様に限定することを意図するものではない。
本発明による一実施形態の割り込み回路は、図1、2、4に示すように、外部又は内蔵入出力からの割り込み要求(図1のINT0、INT1等)を受け付けて、その割り込み要求に対応した割り込み処理を実行すると共に、割り込み処理の遷移を時間計測する割り込み回路であって、時間計測を行うタイマ回路(図1、2の12)と、そのタイマ回路を制御する割り込み監視回路(図1の11)と、を備え、タイマ回路(図1、2の12)は、クロック信号(図2のCLK)で動作するタイマ(図2の90)と、そのタイマのカウント値を取り込むキャプチャレジスタ(図2の91)とを有し、割り込み監視回路(図1の11)は、タイマ回路(図1、2の12)に対して、タイマ(図2の90)のカウント値を取り込むトリガ信号(図1、図2のS1)を供給し、タイマ回路(図1、2の12)はトリガ信号(図1、図2のS1)のタイミングで、タイマ(図2の90)のカウント値をキャプチャレジスタ(図2の91)に取り込み、キャプチャレジスタ(図2の91)に取り込まれたタイマ(図2の90)のカウント値と当該割り込み要求の割り込み種類情報(図4の34)を、内部バス(図1の33)に接続された内部メモリ(図1の32)に転送する。
本発明による一実施形態の割り込み方法は、図13に示すように、外部又は内蔵入出力からの割り込み要求(図1のINT0、INT1等)を受け付けて、割り込み要求に対応した割り込み処理を実行すると共に、割り込み処理の遷移を時間計測する割り込み方法であって、割り込み処理の遷移を時間計測するタイミングを与える割り込み処理ステータス情報(図1のINT0/INT1、INTAK、INTSRT、INTEND、PRGSRT等)を予め設定するステップ(図13のS10)と、時間計測を行うタイマ(図2の90)を動作させるステップ(図13のS11)と、割り込み処理ステータス情報がアクティブになるタイミングで、タイマ(図2の90)のカウント値を取り込み(図13のS12、S13)、取り込んだタイマのカウント値と当該割り込み要求の割り込み種類情報(図4の34)を内部メモリ(図1の32)に転送するステップ(図13のS14)と、を含む。
以下に具体的な実施の形態について、図面を参照して説明する。
[第1の実施形態]
(第1の実施形態の構成)
まず、第1の実施形態の構成について説明する。図1は、第1の実施形態に係る割り込み回路を示すブロック図である。図1に示すように、第1の実施形態の割り込み回路は、外部又は内蔵入出力(内蔵I/O)からの割り込み要求を受け付ける割り込み入力回路30、割り込み入力回路30からの出力を選択する割り込み選択回路1、割り込み選択回路1からの出力で割り込み処理の開始及び終了の制御を行う割り込み制御回路2、割り込み制御回路2からの出力でCPUに対する割り込み要求の調停を行う割り込み要求回路4、割り込み制御回路2からの出力からハンドラアドレスを生成し、CPUへ通知するハンドラアドレス生成回路6、実行時間の計測を行うタイマ回路12を有する。さらに、第1の実施形態の割り込み回路は、従来技術の割り込み回路(図11)に対して新たに追加された割り込み監視回路11を有する。ここで、従来技術の割り込み診断回路8(図11)の機能は、割り込み監視回路11で対応できるため、割り込み診断回路8は不要になる。
(第1の実施形態の構成)
まず、第1の実施形態の構成について説明する。図1は、第1の実施形態に係る割り込み回路を示すブロック図である。図1に示すように、第1の実施形態の割り込み回路は、外部又は内蔵入出力(内蔵I/O)からの割り込み要求を受け付ける割り込み入力回路30、割り込み入力回路30からの出力を選択する割り込み選択回路1、割り込み選択回路1からの出力で割り込み処理の開始及び終了の制御を行う割り込み制御回路2、割り込み制御回路2からの出力でCPUに対する割り込み要求の調停を行う割り込み要求回路4、割り込み制御回路2からの出力からハンドラアドレスを生成し、CPUへ通知するハンドラアドレス生成回路6、実行時間の計測を行うタイマ回路12を有する。さらに、第1の実施形態の割り込み回路は、従来技術の割り込み回路(図11)に対して新たに追加された割り込み監視回路11を有する。ここで、従来技術の割り込み診断回路8(図11)の機能は、割り込み監視回路11で対応できるため、割り込み診断回路8は不要になる。
割り込み監視回路11は、割り込み入力回路30からの出力と、割り込み制御回路2からの出力と、割り込み要求回路4からの出力と、拡張レジスタ7の出力と、CPUが出力する割り込み許可信号INTAK、CPUからの割り込みステータスであるCPUST信号(INTSRT、INTEND、PRGSRTを含む)とに基づいてタイマ回路12を制御し、且つ割り込み種類を判別する情報(割り込み種類情報34)を生成する機能を有する。
また、第1の実施形態の割り込み回路は、割り込み発生の有無又は条件などの設定を行うマスクレジスタ3、割り込み処理の優先順位、割り込み入力のサンプリング条件など動作条件に関する設定や割り込み処理に関する各種ステータス情報を格納する制御レジスタ5、割り込み監視回路11、タイマ回路12の動作条件の設定及び割り込み処理に関する各種ステータス情報(割り込み処理ステータス情報を含む)を格納する拡張レジスタ7を備えている。
ここで、拡張レジスタ7に設定する割り込み処理ステータス情報について、以下に説明する。割り込み処理ステータス情報は、割り込み処理の遷移に関連した情報を表す信号で、外部又は内蔵入出力からの割り込み要求(図1のINT0、INT1等)、CPUが出力する割り込み許可信号(図1のINTAK)、CPUからの割り込みステータス情報(図1のCPUST)等が含まれる。ここで、上記のCPUSTには、割り込み処理本体の開始信号(図1のINTSRT)、割り込み処理本体の終了信号(図1のINTEND)、割り込み前のプログラムへの復帰信号(図1のPRGSRT)等が含まれる。但し、これらの信号は、割り込み処理ステータス情報の一例であり、割り込み処理の遷移に関連した信号であれば、他の信号を設定するようにしてもよい。
また、第1の実施形態の割り込み回路では、内部バス33に接続された内部メモリ32を、割り込み処理ステータス情報が、夫々アクティブになるタイミングのタイマ90のカウント値の格納先として使用する。従来技術の割り込み回路では、タイマ20のカウント値の格納先として、格納レジスタ10が必要であったが、第1の実施形態の割り込み回路では、上述のように、内部メモリ32をタイマ90のカウント値の格納先として使用するように構成したので、格納レジスタ10は不要となる。
次に、図2は、図1のタイマ回路12の詳細ブロック図である。第1の実施形態のタイマ回路12は、CLK信号を基準に動作するタイマ90と、キャプチャレジスタ91を備えている。第1の実施形態のタイマ回路12を、従来技術のタイマ回路9(図12)と比較すると分かるように、第1の実施形態のタイマ回路12は、単一のキャプチャレジスタ91で構成されている。図2に示すように、タイマ90のカウント値は、割り込み監視回路11から供給されるトリガ信号S1のタイミングで、キャプチャレジスタ91に取り込まれる。そして、キャプチャレジスタ91に取り込まれたタイマ90のカウント値は、取り込まれた直後に、内部バス33を介して、内部メモリ32に転送される。
(第1の実施形態の動作)
次に、第1の実施形態の割り込み回路の動作について、詳細に説明する。図1の制御レジスタ5及び拡張レジスタ7で、割り込み処理の動作条件と割り込み処理の時間計測の設定、ステータス情報の選択/格納条件を設定する。上記の割り込み処理の時間計測の設定は、具体的には、拡張レジスタ7に割り込み処理ステータス情報を設定することにより行う。そして、割り込み要求が入力されると、割り込み監視回路11は、拡張レジスタ7に設定された割り込み処理ステータス情報に基づいて、トリガ信号S1を、タイマ回路12に供給する。すなわち、割り込み処理ステータス情報として設定されたINT0/INT1信号、INTAK信号、INTSRT信号、INTEND信号、PRGSRT信号等がアクティブになるタイミングで、トリガ信号S1がタイマ回路12に供給されることになる。
次に、第1の実施形態の割り込み回路の動作について、詳細に説明する。図1の制御レジスタ5及び拡張レジスタ7で、割り込み処理の動作条件と割り込み処理の時間計測の設定、ステータス情報の選択/格納条件を設定する。上記の割り込み処理の時間計測の設定は、具体的には、拡張レジスタ7に割り込み処理ステータス情報を設定することにより行う。そして、割り込み要求が入力されると、割り込み監視回路11は、拡張レジスタ7に設定された割り込み処理ステータス情報に基づいて、トリガ信号S1を、タイマ回路12に供給する。すなわち、割り込み処理ステータス情報として設定されたINT0/INT1信号、INTAK信号、INTSRT信号、INTEND信号、PRGSRT信号等がアクティブになるタイミングで、トリガ信号S1がタイマ回路12に供給されることになる。
そして、トリガ信号S1のタイミングで、タイマ90のカウント値がキャプチャレジスタ91に取り込まれると、その直後に、図4に示すように、キャプチャレジスタ91の内容は、割り込みの種類を判別する情報(割り込み種類情報34)と共に内部メモリ32へ、随時、転送され、格納される。
図6は、割り込みによるプログラムの状態遷移図を示す。以下、図6を参照して、外部より割り込み要求INT0を受け付けた場合を想定し、割り込み処理の実行及び割り込み処理の遷移の時間計測について説明する。
図6において、まず、メインプログラムの冒頭で割り込み回路の初期化作業を行う。具体的には、上述した制御レジスタ5、拡張レジスタ7の設定等を行う。そして、初期化作業の後、タイマ回路12のタイマ90をリセットし、クロック信号CLKを基準とするカウント動作を開始させる。
また、図6におけるハンドラテーブルは、予め、図10に示す割り込みハンドラに対応して、設定がなされる。図10の割り込みハンドラの第1列は、割り込み要因(割り込み種類情報)を示し、第2列は、割り込み要因が外部、内蔵入出力(内蔵I/O)、命令のいずれによるものかを示し、第3列は、ハンドラアドレスを示している。
図7は、第1の実施形態の割り込み回路による割り込み処理のフローチャートである。図7に示すように、INT0の割り込み処理全体は、INT0入力からINT0受付までの区間である割り込み待ち時間T80、割り込み前処理の時間T81、割り込み処理本体の時間T82、割り込み後処理開始からINT0終了までの区間である割り込み後処理の時間T83に分割することができる。実際の割り込み処理を行いながら、これらの各区間の時間(T80、T81、T82、T83)の算出に必要な時間計測を、以下のように実施する。
図7において、INT0信号が入力される(図7の時刻(l))と、割り込み入力回路30は、INT0信号を割り込み要求として受け付け、割り込み選択回路1及び割り込み監視回路11に出力する。割り込み選択回路1は、INT0信号が入力されると、INT0レベルの割り込み要求として割り込み制御回路2に出力する。ここで、割り込み処理ステータス情報であるINT0信号がアクティブになった時点で、トリガ信号S1がタイマ回路12に供給され、タイマ90のカウント値がキャプチャレジスタ91に取り込まれる。その直後に、キャプチャレジスタ91の内容と、割り込み種類情報(INT0)は内部バス33を介して内部メモリ32に転送され、格納される。
さらに、割り込み制御回路2は、他の割り込み入力やマスクレジスタ3の状態から有効な割り込み入力の選択を行う。割り込み制御回路2がINT0レベルの割り込みを受け付けると、有効な割り込み入力があることを割り込み要求回路4に通知する。割り込み要求回路4は入力がアクティブになると、CPUに対する割り込み要求信号INTRQ信号を出力する。割り込み要求回路4は、CPUからの割り込み許可信号INTAK信号がアクティブになると、INT0レベルに対する割り込みが許可されたことを割り込み制御回路2に通知する。具体的には、割り込み制御回路2がハンドラアドレス生成回路6に、INT0レベルの割り込みが選択されたことを通知してハンドラアドレスを生成させる。そして、ハンドラアドレス生成回路6は、生成したハンドラアドレスをCPUに出力する。
CPUは、INT0のハンドラアドレス10000Hが入力されると、メインプログラムの処理を中断して、ハンドラアドレスからの命令の実行を開始し、割り込み前処理が開始される(図7の時刻(m))。ここでは、割り込み処理ステータス情報であるINTAK信号がアクティブになった時点で、トリガ信号S1がタイマ回路12に供給され、タイマ90のカウント値がキャプチャレジスタ91に取り込まれる。その直後に、キャプチャレジスタ91の内容と、割り込み種類情報(INT0)は内部バス33を介して内部メモリ32に転送され、格納される。
次に、割り込み前処理が終了し、割り込み処理本体が開始される(図7の時刻(n))。ここでは、割り込み処理ステータス情報である割り込み処理本体の開始を示すINTSRT信号がアクティブになった時点で、トリガ信号S1がタイマ回路12に供給され、タイマ90のカウント値がキャプチャレジスタ91に取り込まれる。その直後に、キャプチャレジスタ91の内容と、割り込み種類情報(INT0)は内部バス33を介して内部メモリ32に転送され、格納される。
次に、割り込み処理本体が終了し、割り込み後処理が開始される(図7の時刻(o))。ここでは、割り込み処理ステータス情報である割り込み処理本体の終了を示すINTEND信号がアクティブになった時点で、トリガ信号S1がタイマ回路12に供給され、タイマ90のカウント値がキャプチャレジスタ91に取り込まれる。その直後に、キャプチャレジスタ91の内容と、割り込み種類情報(INT0)は内部バス33を介して内部メモリ32に転送され、格納される。
次に、割り込み後処理が終了し、割り込み処理前のプログラム(この場合は、メインプログラム)へ復帰する(図7の時刻(p))。ここでは、割り込み処理ステータス情報である割り込み前のプログラムへの復帰を示すPRGSRT信号がアクティブになった時点で、トリガ信号S1がタイマ回路12に供給され、タイマ90のカウント値がキャプチャレジスタ91に取り込まれる。その直後に、キャプチャレジスタ91の内容と、割り込み種類情報(INT0)は内部バス33を介して内部メモリ32に転送され、格納される。
このようにして、内部メモリ32に、割り込み処理ステータス情報が夫々アクティブになるタイミングに時間計測したタイマ90のカウント値と、割り込み種類情報が格納される。
次に、図8は、割り込み待ち及び割り込み前処理を示すフローチャートである。図8を参照して、INT0入力後から割り込み処理本体の開始までの動作について説明する。まず、割り込み入力回路30が割り込み要求INT0を受け付ける(S600)。次に、S601〜S603のステップで、夫々判定を行い、いずれかが、noと判定された場合は、割り込み要求を保留する(S605)。
次に、S601〜S603でいずれもyesと判定された場合は、割り込み要求回路4はCPUに対して、割り込み要求信号INTRQを出力し、CPUは割り込み要求を受け付けると、割り込み要求回路4に対し、割り込み許可信号INTAKを返す(S604)。このINTAKが出力されたタイミングから、割り込み前処理の区間が開始される。また、割り込み待ちの区間は、このタイミングで終了する。
次に、S604で、CPUは、INTAK信号を出力した後、MNI処理或いはINT処理が実行中であるか否かを判別し、実行中であれば、割り込み要求を保留する(S606、S607、S609)。一方、実行中でなければ、復帰PC(プログラムカウンタ)の退避、PSW(プログラムステータスワード)の退避、割り込みマスクの処理、及びPCをハンドラアドレスとする処理を行う(S608)。次に、割り込み処理本体が開始される(S610)。ここでは、この割り込み処理本体開始のタイミングで、CPUは、割り込み処理本体の開始信号INTSRTを出力する。そして、割り込み前処理の区間は、INTSRTを出力されたタイミングで終了する。以上のように、CPUは割り込み待ち及び割り込み前処理の区間において、割り込み処理を実行しながら、割り込みの遷移の時間計測に必要な割り込み処理ステータス情報に関する信号(ここでは、INT0、INTAK、INTSRT)を処理していることが分かる。
次に、図9は、割り込み後処理を示すフローチャートである。図9を参照して、割り込み後処理の区間の動作について説明する。割り込み処理本体のプログラムの最後には、図6の右図に示すように、RETI命令(Retrun from Interrupt)が書き込まれている。この命令が実行されると、CPUは割り込み処理本体の終了信号INTENDを出力する(S700)。そして、INTENDが出力されたタイミングから、割り込み後処理の区間が開始される。
次に、CPUはPCの復帰及びPSWの復帰を行う(S701)。次に、割り込み診断を行っているか否かを判別し(S702)、S702でyesと判別された場合には、必要に応じ、各種ステータス情報の読み出し/格納を行う(S704)。一方、S702でnoと判別された場合は、S704のステータス情報の読み出し/格納は行われない。
次に、CPUは、割り込み前のプログラムへの復帰信号PRGSRTを出力し、元の処理(割り込み処理前のプログラム)に復帰する(S703)。具体的には、割り込み処理が、メインプログラム動作中に発生した単一の割り込みである場合には、メインプログラムに復帰する。そして、割り込み後処理の区間は、PRGSRTが出力されたタイミングで終了する。以上のように、CPUは割り込み後処理の区間において、割り込み処理を実行しながら、割り込みの遷移の時間計測に必要な割り込み処理ステータス情報に関する信号(ここでは、INTEND、PRGSRT)を処理していることが分かる。
実際の各区間の実行時間T80、T81、T82、T83は、式(1)〜(4)により算出される。これらの式におけるCLK周期は、図2のタイマ回路12に供給されるCLKの周期である。また、COUNT_0、COUNT_1、COUNT_2、COUNT_3、COUNT_4は、上述した説明において、夫々、INT0、INTAK、INTSRT、INTEND、PRGSRTがアクティブになった時点で発生されたトリガ信号S1により取り込まれたタイマ90のカウント値である。
T80=(COUNT_1−COUNT_0)*CLK周期 式(1)
T81=(COUNT_2−COUNT_1)*CLK周期 式(2)
T82=(COUNT_3−COUNT_2)*CLK周期 式(3)
T83=(COUNT_4−COUNT_3)*CLK周期 式(4)
T81=(COUNT_2−COUNT_1)*CLK周期 式(2)
T82=(COUNT_3−COUNT_2)*CLK周期 式(3)
T83=(COUNT_4−COUNT_3)*CLK周期 式(4)
以上により、単一の割り込みに対し、割り込み処理の実行と同時に、割り込み処理ステータス情報の夫々がアクティブになるタイミングでの時間計測が行われ、その後、割り込み処理の各区間の実行時間を算出することができる。
次に、第1の実施形態の割り込み回路によれば、図7のような単一の割り込みだけでなく、多重割り込みにも対応でき、その動作について以下に説明する。図3は、第1の実施形態に係る割り込み回路による多重割り込み処理の一例のフローチャートである。図3は、多重割り込みとして、外部割り込みINT0の処理中に、INT0よりも優先度の高い外部割込みINT1の割り込み要求があった場合を想定している。以下に、図3を参照しながら、多重割り込みの割り込み処理を行いながら同時に、割り込み処理の遷移の時間計測を行う動作について、説明する。
まず、メインプログラムの冒頭で割り込み回路の初期化動作を行う。具体的には、制御レジスタ5及び拡張レジスタ7で割り込み処理の動作条件と割り込み処理の実行時間測定条件を設定する。具体的には、図3に示す時刻(a)〜(j)のタイミングに関連した割り込み処理ステータス情報を拡張レジスタ7に設定する。
具体的には、時刻(a)はINT0入力がアクティブとなるタイミング、時刻(b)は割り込みINT0のINTAKがアクティブとなるタイミング、時刻(c)は割り込みINT0のINTSRTがアクティブとなるタイミング、時刻(d)は割り込みINT0のINTENDがアクティブとなるタイミング、時刻(e)は割り込みINT0のPRGSRTがアクティブとなるタイミングである。
また、時刻(f)はINT1入力がアクティブとなるタイミング、時刻(g)は割り込みINT1のINTAKがアクティブとなるタイミング、時刻(h)は割り込みINT1のINTSRTがアクティブとなるタイミング、時刻(i)は割り込みINT1のINTENDがアクティブとなるタイミング、時刻(j)は割り込みINT1のPRGSRTがアクティブとなるタイミングである。
また、図3におけるT100は割り込みINT0の割り込み待ち時間、T101は割り込みINT0の割り込み前処理の時間、T102は割り込みINT0の割り込み処理本体の時間、T103は割り込みINT0の割り込み後処理の時間である。また、T104は割り込みINT1の割り込み待ち時間、T105は割り込みINT1の割り込み前処理の時間、T106は割り込みINT1の割り込み処理本体の時間、T107は割り込みのINT1割り込み後処理の時間である。
初期化が終了した後、外部からの割り込み要求INT0信号が入力されると、割り込み入力回路30は、INT0信号を割り込み要求として受け付け、割り込み選択回路1及び割り込み監視回路11に出力する。そして、割り込み選択回路1は、INT0レベルの割り込み要求として、割り込み制御回路2に出力する。また、割り込み監視回路11は、割り込み入力回路30からの出力がアクティブになると、時刻(a)にトリガ信号S1(図1、2)をタイマ回路12に出力し、タイマ90のカウント値COUNT_Aをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、内部メモリ32に格納された時間計測の結果の一例を示す。時刻(a)のタイミングで取り込まれたタイマのカウント値COUNT_Aが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から1、2行目)。
ここで、割り込み種類情報の内容は、最低限、受け付けた割り込み要求の種類に関する情報(INT0、INT1等)を含んでいることが必要である。また、各々のカウント値が、割り込み処理ステータス情報のいずれに対応しているかは、同じ割り込み種類情報のカウント値が、INT0/INT1→INTAK→INTSRT→INTEND→PRGSRTの順に格納されるので、同じ割り込み種類情報のカウント値を順番に、上記の順に割り当てることにより、知ることができる。また、割り込み種類情報と共に、割り込み処理ステータス情報の内容を併せて格納するようにしてもよく、その場合は、上記した割り当てによる推定は不要である。
次に、図1において、割り込み制御回路2は、他の割り込み入力やマスクレジスタ3の状態から有効な割り込み入力の選択を行う。割り込み制御回路2がINT0レベルの割り込みを受け付けると、有効な割り込み入力があることを割り込み要求回路4に通知する。割り込み要求回路4は、入力がアクティブになると、CPUに対する割り込み要求信号INTRQ信号を出力する。割り込み要求回路4は、CPUからの割り込み許可信号INTAK信号がアクティブになると、INT0レベルに対する割り込みが許可されたことを割り込み制御回路2に通知して、実際の割り込み処理を開始させる。具体的には、割り込み制御回路2がハンドラアドレス生成回路6に、INT0レベルの割り込みが選択されたことを通知して、ハンドラアドレスを生成させ、CPUに出力させる。
次に、CPUにハンドラアドレス10000Hが入力されると、CPUはメインプログラムの処理を中断して、ハンドラアドレスからの命令の実行を開始する。これにより、割り込みINT0の割り込み前処理が開始される。割り込み監視回路11は、INTAKがアクティブになった時点で、時刻(b)にトリガ信号S1をタイマ回路12に出力し、タイマ90のカウント値COUNT_Bをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(b)で取り込まれたタイマのカウント値COUNT_Bが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から3、4行目)。
割り込みINT0の割り込み前処理が終了すると、割り込みINT0の割り込み処理本体が開始される。ここでは、割り込み監視回路11は、INTSRTがアクティブになった時点で、時刻(c)にトリガ信号S1をタイマ回路12に出力し、タイマ90のカウント値COUNT_Cをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(c)で取り込まれたタイマのカウント値COUNT_Cが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から5、6行目)。
割り込みINT0の割り込み処理本体の処理中に、割り込みINT0よりも優先度の高い割り込み要求INT1を外部から受けると、割り込み入力回路30は、INT1信号を割り込み要求として受け付け、割り込み選択回路1及び割り込み監視回路11に出力する。そして、割り込み選択回路1は、INT1信号が入力されると、INT1レベルの割り込み要求として、割り込み制御回路2に出力する。ここでは、割り込み監視回路11は、割り込み入力回路30からの出力がアクティブになった時点で、時刻(f)にトリガ信号S1をタイマ回路12に出力し、タイマ90のカウント値COUNT_Fをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(f)で取り込まれたタイマのカウント値COUNT_Fが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から7、8行目)。但し、この時点では、未だCPUは割り込みINT1の許可を出しておらず、CPUは割り込みINT0の割り込み処理本体の処理を続けている。
次に、割り込み制御回路2は、他の割り込み入力やマスクレジスタ3の状態から有効な割り込み入力の選択を行う。割り込み制御回路2がINT1レベルの割り込みを受け付けると、有効な割り込み入力があることを割り込み要求回路4に通知する。割り込み要求回路4は、入力がアクティブになると、CPUに対する割り込み要求信号INTRQ信号を出力する。CPUは、割り込み要求回路4に割り込みINT1の割り込みを許可する割り込み許可信号INTAK信号を返す。ここでは、割り込み監視回路11は、CPUからの割り込み許可信号INTAK信号がアクティブになった時点で、時刻(g)にトリガ信号S1をタイマ回路12に出力し、タイマ90のカウント値COUNT_Gをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(g)で取り込まれたタイマのカウント値COUNT_Gが、割り込み種類情報INT1と共に、格納されているのが分かる(図5の下から9、10行目)。
また、INT1レベルに対する割り込みが許可されたことが割り込み制御回路2に通知され、実際の割り込み処理が開始させる。具体的には、割り込み制御回路2がハンドラアドレス生成回路6に、INT1レベルの割り込みが選択されたことを通知してハンドラアドレス10100H(図10)を生成させ、CPUに出力させる。そして、CPUはハンドラアドレス10100Hからの実行を開始し、割り込みINT1の割り込み前処理が行われる。
割り込みINT1の割り込み前処理が終了すると、続いて割り込みINT1の割り込み処理本体の処理が開始される。ここでは、割り込み監視回路11は、CPUからのINTSRTがアクティブになった時点で、時刻(h)にトリガ信号S1をタイマ回路12に出力し、タイマ回路90のカウント値COUNT_Hをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(h)で取り込まれたタイマのカウント値COUNT_Hが、割り込み種類情報INT1と共に、格納されているのが分かる(図5の下から11、12行目)。
割り込みINT1の割り込み処理本体が終了すると、続いて割り込みINT1の割り込み後処理が開始される。ここでは、割り込み監視回路11は、CPUからのINTENDがアクティブになった時点で、時刻(i)にトリガ信号S1をタイマ回路12に出力し、タイマ回路90のカウント値COUNT_Iをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(i)で取り込まれたタイマのカウント値COUNT_Iが、割り込み種類情報INT1と共に、格納されているのが分かる(図5の下から13、14行目)。
割り込みINT1の割り込み後処理が終了するとRETI命令の実行により、割り込みINT1の処理前のプログラムに復帰する。具体的には、割り込みINT0の割り込み処理本体に復帰する。ここでは、割り込み監視回路11は、CPUからのPRGSRTがアクティブになった時点で、時刻(j)にトリガ信号S1をタイマ回路12に出力し、タイマ回路90のカウント値COUNT_Jをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(j)で取り込まれたタイマのカウント値COUNT_Jが、割り込み種類情報INT1と共に、格納されているのが分かる(図5の下から15、16行目)。
次に、割り込みINT0の割り込み処理本体の処理へ復帰後、割り込みINT0の割り込み処理本体の処理が再開された後、処理が終了すると、続いて割り込みINT0の割り込み後処理が開始される。ここでは、割り込み監視回路11は、CPUからのINTENDがアクティブになった時点で、時刻(d)にトリガ信号S1をタイマ回路12に出力し、タイマ回路90のカウント値COUNT_Dをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(d)で取り込まれたタイマのカウント値COUNT_Dが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から17、18行目)。
次に、割り込みINT0の割り込み後処理が終了するとRETI命令の実行により、割り込みINT0前のプログラムに復帰する。具体的には、メインプログラムの処理に復帰する。ここでは、割り込み監視回路11は、CPUからのPRGSRTがアクティブになった時点で、時刻(e)にトリガ信号S1をタイマ回路12に出力し、タイマ90のカウント値COUNT_Eをキャプチャレジスタ91に取り込み、その直後に割り込み種類情報34と共に内部メモリ32へ転送する。図5に、時刻(e)で取り込まれたタイマのカウント値COUNT_Eが、割り込み種類情報INT0と共に、格納されているのが分かる(図5の下から19、20行目)。以上のようにして、割り込み処理の実行と同時に、割り込み種類ごとに、割り込み処理ステータス情報で設定したタイミングごとのタイマ90のカウント値が内部メモリ32に取り込まれる。
割り込み種類ごとの各区間の実行時間は、割り込みのデバッガにより算出される。ここで、割り込みのデバッガは、内部メモリ32のデータを読み込んで、割り込み種類ごとの各区間の実行時間を算出する機能を有するプログラムである。また、割り込みのデバッガは、割り込み処理ステータス情報を拡張レジスタ7に設定する機能を有するようにしてもよい。例えば、割り込みデバッガにより、割り込み処理ステータス情報としてINT入力、INTAK、INTSRT、INTEND、PRGSRTを拡張レジスタ7に設定すると、図5に示すように内部メモリへのデータの格納が行われる。また、例えば、割り込み処理本体の実行時間のみを算出したい場合には、INTSRT、INTENDのみを拡張レジスタ7に設定すればよく、その場合、INTSRT、INTENDがアクティブになるタイミングのタイマ90のカウント値のみが取り込まれる。
次に、割り込みのデバッガで、図3の各区間の実行時間を算出する方法について説明する。まず、図5の割り込み種類情報を参照することにより、割り込みINT0の時刻(c)〜(d)の処理中に、割り込みINT1を受け付けて、割り込みINT1を優先して処理したことがわかる。
まず、優先的に処理された割り込みINT1に関する実行時間を算出する。割り込みINT1の各区間の実行時間は、割り込み種類情報がINT1であるタイマのカウント値から、式(5)〜(8)により、算出される。また、割り込みINT1の割り込み処理全体の時間TINT1は、式(9)または(10)で算出される。
T104=(COUNT_G−COUNT_F)*CLK周期 式(5)
T105=(COUNT_H−COUNT_G)*CLK周期 式(6)
T106=(COUNT_I−COUNT_H)*CLK周期 式(7)
T107=(COUNT_J−COUNT_I)*CLK周期 式(8)
TINT1=(COUNT_J−COUNT_F)*CLK周期 式(9)
または、
TINT1=T104+T105+T106+T107 式(10)
T105=(COUNT_H−COUNT_G)*CLK周期 式(6)
T106=(COUNT_I−COUNT_H)*CLK周期 式(7)
T107=(COUNT_J−COUNT_I)*CLK周期 式(8)
TINT1=(COUNT_J−COUNT_F)*CLK周期 式(9)
または、
TINT1=T104+T105+T106+T107 式(10)
次に、割り込みINT0に関する実行時間を算出する。多重割り込みが生じていない区間(時刻(a)〜(b)、時刻(b)〜(c)、時刻(d)〜(e))の実行時間は、割り込み種類情報がINT0のタイマのカウント値のみから、式(11)〜(13)により、算出される。一方、多重割り込みが発生している区間(時刻(c)〜(d))の実行時間は、式(14)に示すように、割り込みINT1が許可されて割り込みINT1の割り込み後処理が完了するまでの期間(時刻(g)〜(j))の実行時間を差し引くことにより、算出することができる。また、割り込みINT0の割り込み処理全体の時間TINT0も、同様に、同じ時間を差し引くことにより、式(15)または(16)で算出される。ここで、式(5)〜(16)の算出は、上述した割り込みのデバッガにより行われる。
T100=(COUNT_B−COUNT_A)*CLK周期 式(11)
T101=(COUNT_C−COUNT_B)*CLK周期 式(12)
T103=(COUNT_E−COUNT_D)*CLK周期 式(13)
T102=((COUNT_D−COUNT_C)
−(COUNT_J−COUNT_G))*CLK周期 式(14)
TINT0=((COUNT_E−COUNT_A)
−(COUNT_J−COUNT_G))*CLK周期 式(15)
または、
TINT0=T100+T101+T102+T103
−(T105+T106+T107) 式(16)
T101=(COUNT_C−COUNT_B)*CLK周期 式(12)
T103=(COUNT_E−COUNT_D)*CLK周期 式(13)
T102=((COUNT_D−COUNT_C)
−(COUNT_J−COUNT_G))*CLK周期 式(14)
TINT0=((COUNT_E−COUNT_A)
−(COUNT_J−COUNT_G))*CLK周期 式(15)
または、
TINT0=T100+T101+T102+T103
−(T105+T106+T107) 式(16)
図3では、割り込みINT0の処理中に、優先度の高い割り込みINT1を受け付けた場合について例示したが、それに限定されない。まず、第1の実施形態による割り込み回路は、複数の割り込みの発生に対しても、相互のタイミング関係も含めて測定することが可能である。例えば、「割り込み1」の後に「割り込み2」が発生した場合、割り込み1と割り込み2の相互のタイミング関係も含めて測定することが可能である。また、多重割り込みについても、図3のような場合に限定されず、任意パターンの多重割り込みに対して、割り込み種類ごとに各区間の実行時間を算出することができる。このように、第1の実施形態による割り込み回路によれば、複数の割り込みや多重割り込みを含んだ任意の割り込みに対して、割り込みの遷移の時間計測を行い、割り込みごとに、各区間の実行時間を算出することが可能である。
以上説明したように、第1の実施形態の割り込み回路によれば、タイマ90のリセットは、ブレーク時のみ(例えば、図6の初期化後のみ)に行い、タイマ90のカウント値を割り込み種類情報と併せて内部メモリ32に、随時、転送して格納するようにしたから、複数の割り込みの相互のタイミング関係を含めた時間計測を行うことが可能になるという効果が得られる。
また、第1の実施形態の割り込み回路によれば、多重割り込みが発生した場合でも、割り込み種類ごとに、割り込み処理の遷移の時間計測を行うことができるという効果が得られる。
また、第1の実施形態の割り込み回路では、図2に示すように、単一のキャプチャレジスタのみで構成することが可能である。また、従来技術の格納レジスタ10も不要になり、小チップ化、低チップコストが実現可能であるという効果が得られる。
また、第1の実施形態の割り込み回路における割り込み処理方法によれば、複数の割り込みや多重割り込みに対しても、相互のタイミング関係を含めて割り込みの遷移の時間計測を行うことができるという効果が得られる。また、それにより、割り込みごとに各区間の割り込み処理の実行時間を算出することができるという効果が得られる。
本発明の割り込み回路によれば、インサーキットエミュレータを使用せずに、マイクロコンピュータに内蔵した割り込みデバッグ機能により、割り込み処理のプログラムデバッグを行うことが可能である。特に、インバータ制御などにおいて、ns(ナノ秒)オーダでの処理や多重割り込みを多く使用するプログラムをデバッグする場合に有効である。
なお、本発明の全開示(請求の範囲及び図面を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態の各要素、各図面の各要素等を含む)の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲及び図面を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
1:割り込み選択回路
2:割り込み制御回路
3:マスクレジスタ
4:割り込み要求回路
5:制御レジスタ
6:ハンドラアドレス生成回路
7:拡張レジスタ
8:割り込み診断回路
9、12:タイマ回路
10:格納レジスタ
11:割り込み監視回路
20、90:タイマ
21、21a、21b、21c、21d、21e、91:キャプチャレジスタ
30:割り込み入力回路
32:内部メモリ
33:内部バス
34:割り込み種類情報
2:割り込み制御回路
3:マスクレジスタ
4:割り込み要求回路
5:制御レジスタ
6:ハンドラアドレス生成回路
7:拡張レジスタ
8:割り込み診断回路
9、12:タイマ回路
10:格納レジスタ
11:割り込み監視回路
20、90:タイマ
21、21a、21b、21c、21d、21e、91:キャプチャレジスタ
30:割り込み入力回路
32:内部メモリ
33:内部バス
34:割り込み種類情報
Claims (5)
- 外部又は内蔵入出力からの割り込み要求を受け付けて、前記割り込み要求に対応した割り込み処理を実行すると共に、前記割り込み処理の遷移を時間計測する割り込み回路であって、
時間計測を行うタイマ回路と、前記タイマ回路を制御する割り込み監視回路と、を備え、
前記タイマ回路は、クロック信号で動作するタイマと、前記タイマのカウント値を取り込むキャプチャレジスタとを有し、
前記割り込み監視回路は、前記タイマ回路に対して、前記タイマのカウント値を取り込むトリガ信号を供給し、
前記タイマ回路は前記トリガ信号のタイミングで、前記タイマのカウント値を前記キャプチャレジスタに取り込み、
前記キャプチャレジスタに取り込まれた前記タイマのカウント値と当該割り込み要求の割り込み種類情報を、内部バスに接続された内部メモリに転送することを特徴とする割り込み回路。 - 拡張レジスタをさらに備え、
前記拡張レジスタに前記割り込み処理の遷移を時間計測するタイミングを与える割り込み処理ステータス情報を予め設定しておき、
前記割り込み監視回路は、前記割り込み処理ステータス情報に基づいて前記トリガ信号を生成し、前記タイマ回路に供給することを特徴とする請求項1に記載の割り込み回路。 - 前記割り込み処理ステータス情報は、前記割り込み要求、CPU(中央演算処理装置)からの割り込み許可信号、割り込み処理本体の開始信号、割り込み処理本体の終了信号、割り込み前のプログラムへの復帰信号の少なくとも1つを含むことを特徴とする請求項2に記載の割り込み回路。
- 外部又は内蔵入出力からの割り込み要求を受け付けて、前記割り込み要求に対応した割り込み処理を実行すると共に、前記割り込み処理の遷移を時間計測する割り込み方法であって、
前記割り込み処理の遷移を時間計測するタイミングを与える割り込み処理ステータス情報を予め設定するステップと、
前記時間計測を行うタイマを動作させるステップと、
前記割り込み処理ステータス情報がアクティブになるタイミングで、前記タイマのカウント値を取り込み、取り込んだ前記タイマのカウント値と当該割り込み要求の割り込み種類情報を内部メモリに転送するステップと、
を含むことを特徴とする割り込み方法。 - 前記割り込み処理ステータス情報は、前記割り込み要求、CPU(中央演算処理装置)からの割り込み許可信号、割り込み処理本体の開始信号、割り込み処理本体の終了信号、割り込み前のプログラムへの復帰信号の少なくとも1つを含むことを特徴とする請求項4に記載の割り込み方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011249842A JP2013105388A (ja) | 2011-11-15 | 2011-11-15 | 割り込み回路及び割り込み方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011249842A JP2013105388A (ja) | 2011-11-15 | 2011-11-15 | 割り込み回路及び割り込み方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013105388A true JP2013105388A (ja) | 2013-05-30 |
Family
ID=48624861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011249842A Pending JP2013105388A (ja) | 2011-11-15 | 2011-11-15 | 割り込み回路及び割り込み方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013105388A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101587636B1 (ko) * | 2015-07-07 | 2016-01-25 | 주식회사 삼보컴퓨터 | 제품 일자 저장 장치 및 방법 |
-
2011
- 2011-11-15 JP JP2011249842A patent/JP2013105388A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101587636B1 (ko) * | 2015-07-07 | 2016-01-25 | 주식회사 삼보컴퓨터 | 제품 일자 저장 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108255774B (zh) | 应用处理器、包括该处理器的计算系统及其操作方法 | |
JP4847734B2 (ja) | 半導体集積回路装置、それのデバッグシステム及びデバッグ方法。 | |
US8495344B2 (en) | Simultaneous execution resumption of multiple processor cores after core state information dump to facilitate debugging via multi-core processor simulator using the state information | |
EP2790106A2 (en) | Performance measurement unit, processor core including the same and process profiling method | |
JP2012038305A (ja) | 周辺装置の設定情報のエラー検出を有するデータ処理システム | |
CN107423206B (zh) | 一种衡量系统管理中断时间的方法及装置 | |
JP2010117813A (ja) | デバッグシステム、デバッグ方法、デバッグ制御方法及びデバッグ制御プログラム | |
JP5054558B2 (ja) | マルチコアlsi | |
JP2013105388A (ja) | 割り込み回路及び割り込み方法 | |
US20110107072A1 (en) | Method for self-diagnosing system management interrupt handler | |
JP5982845B2 (ja) | トレース制御装置及びトレース制御方法 | |
JP2011028308A (ja) | 半導体装置及びソフトウェア開発支援装置 | |
EP2645258B1 (en) | Multiprocessor system, apparatus and methods | |
JP2012155519A (ja) | シミュレーション装置、シミュレーション方法およびそのコンピュータ・プログラム | |
CN115687159B (zh) | 调试方法、装置及计算机可读存储介质 | |
JP6142182B2 (ja) | 集積回路装置 | |
JP2019087118A (ja) | 車載制御装置 | |
JP2006185365A (ja) | 半導体装置およびデバッグ方法 | |
JP3133730B2 (ja) | 割り込み方法及び回路 | |
JP2017199180A (ja) | 画像処理装置 | |
CN111143141B (zh) | 一种状态机设置方法及系统 | |
JP2007034864A (ja) | 入出力装置の診断方法 | |
US9342359B2 (en) | Information processing system and information processing method | |
JP2001084161A (ja) | データ処理装置 | |
EP1531395A1 (en) | Method of determining information about the processes which run in a program-controlled unit during the execution of a program |