(57)【特許請求の範囲】
【請求項１】
プロセッサと接続される拡張カウンタ回路を備え、
前記プロセッサのタイマユニットのコンペアマッチによる割り込み要求が発生すると前記拡張カウンタ回路のカウント値がインクリメントされること
を特徴とするカウンタユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はディジタル形保護継電器の電源遮断割り込み処理等のプログラム処理に適用されるタイムカウント技術に関する。
【背景技術】
【０００２】
プログラムの処理時間はプロセッサに内蔵されたＭＴＵ（マルチ・ファインインクション・タイマ・パルス・ユニット）、ＴＰＵ（タイマ・パルス・ユニット）等のタイマユニットの割り込みを用いて計測される（特許文献１，２等）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特公平７−１１８２９８号公報
【特許文献２】特開２００８−１８０６１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
タイマユニットによってプログラムの処理時間を計測する場合、測定範囲が当該ユニットのカウンタ範囲内に限定される。例えば、タイマカウンタが１６ビット、タイマ１カウントが１μｓである場合、カウンタ０〜ｆｆｆｆ ｈｅｘであるため、６５５３６（１００００ｈｅｘ）μｓまで処理時間の測定が可能であるが、この処理時間を越えての測定が行えない。また、被測定プログラムの割り込みとタイマユニットの割り込みの優先順位の考慮が不足していると、タイムカウントの測定結果が正しくならないことがある。
【０００５】
本発明は、上記の事情に鑑みなされたもので、プロセッサのタイマユニットのタイムカウント範囲を超えたプログラムの処理時間の計測を課題とする。
【課題を解決するための手段】
【０００６】
そこで、本発明のカウンタユニットは、プロセッサと接続される揮発性メモリを備え、このメモリは拡張カウンタを実装し、前記プロセッサのタイマユニットのコンペアマッチによる割り込み要求が発生すると前記拡張カウンタのカウント値がインクリメントされる。
【０００７】
また、本発明の他のカウンタユニットの態様としては、プロセッサと接続される拡張カウンタ回路を備え、前記プロセッサのタイマユニットのコンペアマッチによる割り込み要求が発生すると前記拡張カウンタ回路のカウント値がインクリメントされる。
【発明の効果】
【０００８】
以上の発明によればプロセッサのタイマユニットのタイムカウント範囲を超えたプログラムの処理時間の計測を行える。
【図面の簡単な説明】
【０００９】
【図１】本発明の第一実施形態におけるカウンタユニットのハードウェア構成図。
【図２】本発明の第二実施形態におけるカウンタユニットのハードウェア構成図。
【図３】第一，第二実施形態の処理フローチャート。
【図４】第一，第二実施形態の処理時間測定スタートプログラムの概要。
【図５】第一，第二実施形態の処理時間測定エンドプログラムの概要。
【発明を実施するための形態】
【００１０】
以下に図面を参照しながら本発明の実施形態について説明する。
【００１１】
［第一実施形態］
図１に示した本実施形態のカウンタユニット１はプロセッサ１０とシステムバス１１を介してカスケード接続される揮発性メモリとしてＲＡＭ１２を備える。
【００１２】
プロセッサ１０はＣＰＵコア１３と内部バス１４を介して接続されるＭＴＵ，ＴＰＵに例示されるタイマユニット１５を備える。タイマユニット１５は所定ビット長例えば１６ビット長（０〜０×ｆｆｆｆ）のカウンタを備える。
【００１３】
ＲＡＭ１２はタイマユニット１５のコンペアマッチによる割り込み要求が発生するとタイマユニット１５のカウントのインクリメントを行う拡張カウンタのプログラムを格納している。このプログラムとプロセッサ１０との協働によりカウンタユニット１において前記拡張カウンタが実装された態様となっている。尚、本実施形態のＲＡＭ１２は例えば１６ビット長（０〜０×ｆｆｆｆ）のカウンタが実装されるようにプログラムされている。
【００１４】
図３〜図５を参照しながらカウンタユニット１による処理時間の測定手順Ｓ１〜Ｓ１０について説明する。
【００１５】
Ｓ１：タイマユニット１５が初期化される。具体的には、例えば、タイマユニット１５のカウント＝０×００００、１カウントの重み＝１μｓ、割り込み発生コンペア・マッチカウント値＝０×ｆｆｆｆに初期化される。
【００１６】
Ｓ２：プロセッサ１０の割り込み優先順位が設定される。例えば、タイマユニット１５の割り込み処理＝ｍ、被測定プログラムの割り込み処理＝ｎとした場合、ｍ＞ｎに設定される。
【００１７】
Ｓ３：ＲＡＭ１２の拡張カウンタの値が０×００００に初期化される。
【００１８】
Ｓ４：プロセッサ１０の割り込み処理が開始されるとステップＳ２で設定された優先順位に基づきタイマユニット１５の割り込み処理（Ｓ５〜Ｓ７）が開始される。
【００１９】
Ｓ５：タイマユニット１５のカウンタのインクリメントが開始する。
【００２０】
Ｓ６：前記カウンタの値が割り込み発生のコンペア・マッチカウント値（０×ｆｆｆｆ）に達した場合にはステップＳ７に移行し、達しない場合にはステップＳ５のインクリメントが継続される。
【００２１】
Ｓ７：タイマユニット１５の割り込みが発生し、ＲＡＭ１２の拡張カウンタの値が０×００００からインクリメントされる。当該拡張カウンタの値が０×ｆｆｆｆに達すると、本ステップの割り込み処理が完了し、拡張カウンタ並びにタイマユニット１５のカウント値がゼロクリア（０×００００）され、ステップＳ５に戻る。
【００２２】
Ｓ８：処理時間測定スタートプログラムが実行される。ＩＲＱ（Interrupt Request）等の割り込み処理が実行されている。当該プログラムが起動すると、タイマユニット１５のカウント値（下位１６ビット長）と前記拡張カウンタのカウント値（上位１６ビット長）とを合わせた３２ビット長のカウント値が読み込まれる。この読み込む間の割り込み優先順位はｍ以上であり、前記３２ビット長のカウント値が読み込まれる間、プロセッサ１０への割り込み要求の優先順位がｍ未満の割り込み要求は禁止される。
【００２３】
Ｓ９：被測定プログラムが実行される。
【００２４】
Ｓ１０：処理時間測定エンドプログラムが実行される。当該プログラムが起動すると、タイマユニット１５のカウント値と前記拡張カウンタのカウント値とを合わせた３２ビット長のカウント値が読み込まれる。この読み込む間の割り込み優先順位はｍ以上であり、Ｓ８のステップと同様に、前記３２ビット長のカウント値が読み込まれる間、プロセッサ１０への割り込み要求の優先順位がｍ未満の割り込み要求が禁止される。そして、Ｓ１０の処理時間とＳ８の処理時間との差分を計算することにより被測定プログラムの開始時点から終了時点までのプログラム処理時間を測定する。
【００２５】
以上のように本実施形態のカウンタユニット１によればプロセッサ１０のタイマユニット１５からの割込みによりプログラムの処理時間を測定する場合、タイマユニット１５のカウント範囲を超えたプログラムの処理時間の測定が可能となる。
【００２６】
例えば、タイマユニット１５，拡張カウンタの１カウントの重みを１μｓとすると、タイマユニット１５は１６ビット長のカウンタであるので、０×１０，０００×１μｓ＝６５，５３６μｓとなる。本時実施形態ではタイマユニット１５と前記拡張カウンタ（１６ビット長）とのカスケード接続により３２ビット長のカウンタの構成となり、０×１００，０００，０００×１μｓ＝４，２９４，９６７，２９６μｓとなる。つまり、２16倍処理時間の測定範囲が拡張される。
【００２７】
［第二実施形態］
図２に示した本実施形態のカウンタユニット２はプロセッサ１０とカスケード接続される拡張カウンタ回路２１を備える。
【００２８】
拡張カウンタ回路２１はプロセッサ１０のタイマユニット１５のコンペアマッチによる割り込み要求が発生するとタイマユニット１５のカウント値の入力を受けてこのカウントのインクリメントを行う。拡張カウンタ回路２１は前記カウント値が入力されるクロック入力端子を備えた所定のビット長（例えば１６ビット長）のカウンタを備えている。
【００２９】
本実施形態でのカウンタユニット２による処理時間の測定動作は、以下に説明するステップＳ７以外は前述の図３のＳ１〜Ｓ１０のステップと同じ手順の動作となる。
【００３０】
すなわち、ステップＳ６にてタイマユニット１５のカウント値が割り込み発生のコンペア・マッチカウント値（０×ｆｆｆｆ）に達すると、ステップＳ７にて当該カウント値が拡張カウンタ回路２１のカウンタに入力される。前記カウンタはこの入力されたカウント値に対してインクメントを行う。拡張カウンタ回路２１でインクリメントされたカウント値は逐次に出力バッファ２２に出力される。
【００３１】
以上のように本実施形態のカウンタユニット２によっても、プロセッサ１０のタイマユニット１５のカウント範囲を超えたプログラムの処理時間の測定が可能となる。特に、割り込みの優先順位に因ることなく拡張カウンタ回路２１のカウント値を更新できる。
【００３２】
尚、本発明は以上説明した実施の態様に何ら限定することなく、当業者によって適宜変更して実施が可能であり、この変更された態様も発明の技術範囲に属する。
【符号の説明】
【００３３】
１，２…カウンタユニット
１０…プロセッサ
１２…ＲＡＭ（揮発性メモリ）
１５…タイマユニット
２１…拡張カウンタ回路
【図１】
0006582394.tif 000002
【図２】
0006582394.tif 000003
【図３】
0006582394.tif 000004
【図４】
0006582394.tif 000005
【図５】
0006582394.tif 000006