(57)【要約】【課題】短い時間間隔を計測する。【解決手段】計時装置は、所定の時間間隔でカウント値を更新するカウンタと、入力信号に応じて、カウンタのカウント値を取りこむキャプチャ回路と、記憶指示信号に応じて、キャプチャ回路に取りこまれたカウント値を記憶する記憶回路と、入力信号に応じて、記憶指示信号を生成する指示信号生成回路と、を備える。【選択図】図１
2008241460.tif 000002
【特許請求の範囲】
【請求項１】
所定の時間間隔でカウント値を更新するカウンタと、
入力信号に応じて、前記カウンタの前記カウント値を取りこむキャプチャ回路と、
記憶指示信号に応じて、前記キャプチャ回路に取りこまれた前記カウント値を記憶する記憶回路と、
前記入力信号に応じて、前記記憶指示信号を生成する指示信号生成回路と、
を備えることを特徴とする計時装置。
【請求項２】
請求項１に記載の計時装置であって、
前記指示信号生成回路は、
前記入力信号に応じて、所定周波数のクロック信号と同期させた取り込み指示信号を生成するとともに、前記取り込み指示信号より後のタイミングで、前記クロック信号と同期させた前記記憶指示信号を生成し、
前記キャプチャ回路は、
前記取り込み指示信号に応じて、前記カウンタの前記カウント値を取りこむこと、
を特徴とする計時装置。
【請求項３】
請求項１又は２に記載の計時装置であって、
前記指示信号生成回路は、
前記入力信号に応じて、前記記憶指示信号を生成するとともに、前記記憶回路における前記カウント値が記憶されるアドレスを更新すること、
を特徴とする計時装置。
【請求項４】
請求項２に記載の計時装置であって、
前記指示信号生成回路は、
前記入力信号が一方の論理レベルから他方の論理レベルに変化した次に、前記クロック信号が一方の論理レベルから他方の論理レベルに変化するタイミングで前記取り込み指示信号を生成し、前記クロック信号が次に一方の論理レベルに変化するタイミングで前記記憶指示信号を生成すること、
を特徴とする計時装置。
【請求項５】
請求項４に記載の計時装置であって、
前記指示信号生成回路は、
前記クロック信号が前記一方の論理レベルに変化する前記タイミングで、前記記憶指示信号を生成し、前記クロック信号が次に前記他方の論理レベルに変化するタイミングで、前記記憶回路における前記カウント値が記憶されるアドレスを更新すること、
を特徴とする計時装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計時装置に関する。
【背景技術】
【０００２】
例えば、ＰＷＭ（Pulse Width Modulation）制御を行う場合、ＰＷＭ信号におけるパルスの発生間隔を計測し、計測された時間に応じて負荷を駆動することがある。このような時間を計測するために、マイコン等に内蔵されたフリーランカウンタを用いることが一般的である（例えば、特許文献１参照）。
【０００３】
図４は、時間の計測機能を有するマイコンの一般的な構成例を示す図である。マイコン１００では、クロック生成回路１１０から出力される所定周波数のクロック信号ＣＬＫに基づいてカウントアップまたはカウントダウンするフリーランカウンタ１１１が動作している。そして、マイコン１００の外部から入力される信号ＩＮＴがＬレベルからＨレベルに変化すると、割り込み制御回路１１２はキャプチャレジスタ１１３にカウンタ値の取り込み指示を出力するとともに、ＣＰＵ１１４に割り込み信号を出力する。キャプチャレジスタ１１３は割込制御回路１１２からの指示に応じてフリーランカウンタ１１１のカウンタ値を取りこむ。また、ＣＰＵ１１４は、割り込み制御回路１１２からの割り込み信号に応じて割り込み処理を実行し、キャプチャレジスタ１１３に取りこまれたカウンタ値をメモリ１１５に格納する。以後同様に、信号ＩＮＴがＬレベルからＨレベルに変化すると、同様にフリーランカウンタ１１１のカウント値がキャプチャレジスタ１１３に取りこまれ、メモリ１１５に格納される。そして、ＣＰＵ１１４は、メモリ１１５に格納された複数のカウント値の差を取ることにより、信号ＩＮＴにおけるパルスの発生間隔を計測することができる。
【特許文献１】特開２００７−３４６７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
このように、キャプチャレジスタ１１３に取りこまれたカウント値は、ＣＰＵ１１４の割り込み処理によってメモリ１１５に格納されることとなる。したがって、キャプチャレジスタ１１３にカウント値が取りこまれてからメモリ１１５に格納されるまでに、プログラムカウンタの値をレジスタに退避する処理や、割り込み先のアドレスをプログラムカウンタにセットする処理、メモリ１１５に書き込みアドレスを出力するとともに書き込み信号を出力する処理等が必要となる。そのため、信号ＩＮＴのパルスの発生間隔がＣＰＵ１１４の割り込み処理に要する時間より短いと、キャプチャレジスタ１１３に取りこまれたカウント値がメモリ１１５に格納される前に、キャプチャレジスタ１１３の値が更新されてしまい、パルスの発生間隔を計測することができないこととなる。
【０００５】
本発明は上記課題を鑑みてなされたものであり、短い時間間隔を計測可能な計時装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の計時装置は、所定の時間間隔でカウント値を更新するカウンタと、入力信号に応じて、前記カウンタの前記カウント値を取りこむキャプチャ回路と、記憶指示信号に応じて、前記キャプチャ回路に取りこまれた前記カウント値を記憶する記憶回路と、前記入力信号に応じて、前記記憶指示信号を生成する指示信号生成回路と、を備えることとする。
【発明の効果】
【０００７】
短い時間間隔を計測可能な計時装置を提供することができる。
【発明を実施するための最良の形態】
【０００８】
＝＝回路構成＝＝
図１は、本発明に係る計時装置の一実施形態であるマイコンの構成を示す図である。マイコン１０は、ＣＰＵ２０、クロック生成回路２１、フリーランカウンタ２２、キャプチャレジスタ２３、メモリ２４、及び制御回路２５を含んで構成されている。
【０００９】
ＣＰＵ２０は、マイコン１０を統括制御するプロセッサであり、メモリ２４に記憶されたプログラムを実行することにより、様々な機能を実現する。クロック生成回路２１は、ＣＰＵ２０の動作クロック等として用いられる所定周波数のクロック信号ＣＬＫを生成する。
【００１０】
フリーランカウンタ２２は、クロック生成回路２１から出力されるクロック信号ＣＬＫに基づいてカウント値をカウントアップまたはカウントダウンし続けるカウンタである。なお、フリーランカウンタ２２は、カウント値がオーバフローまたはアンダフローした場合はカウント値を最小値または最大値にリセットすることにより、カウント値をサイクリックに変化させる。なお、本実施形態では、ＣＰＵ２０の動作クロックであるクロック信号ＣＬＫに基づいてフリーランカウンタ２２のカウント値が更新されることとしたが、ＣＰＵ２０の動作クロックとは異なるクロック信号に基づいてフリーランカウンタ２２のカウント値が更新されることとしてもよい。
【００１１】
キャプチャレジスタ２３（キャプチャ回路）は、制御回路２５からの取り込み指示信号ＣＰＴに応じて、フリーランカウンタ２２のカウント値を取りこんで保持するレジスタである。本実施形態では、取り込み指示信号ＣＰＴがＬレベルからＨレベルに変化すると、フリーランカウンタ２２のカウント値がキャプチャレジスタ２３に取りこまれる。
【００１２】
メモリ２４は、ＲＡＭ（Random Access Memory）やＳＦＲ（Special Function Register）等の書き込み可能な記憶回路であり、制御回路２５から出力されるアドレスＡＤＲ及び記憶指示信号ＷＲＴに応じて、キャプチャレジスタ２３に保持されているカウンタ値をアドレスＡＤＲで指定されたアドレスに格納する。本実施形態では、制御回路２５から出力される記憶指示信号ＷＲＴがＬレベルからＨレベルに変化すると、キャプチャレジスタ２３に保持されているカウント値がメモリ２４に格納される。なお、ＣＰＵ２０は、バス等を介してメモリ２０にアクセス可能である。
【００１３】
制御回路２５（指示信号生成回路）は、マイコン１０の外部から入力される信号ＩＮＴに基づいて、キャプチャレジスタ２３に対する取り込み指示信号ＣＰＴ、メモリ２４に対する記憶指示信号ＷＲＴ及びアドレスＡＤＲを出力する。本実施形態では、信号ＩＮＴがＬレベルからＨレベルに変化すると、制御回路２５は、取り込み指示信号ＣＰＴをＬレベルからＨレベルに変化させ、記憶指示信号ＷＲＴをＬレベルからＨレベルに変化させる。また、制御回路２５は、信号ＩＮＴがＬレベルからＨレベルに変化すると、複数のカウント値が異なる領域に格納されるよう、アドレスＡＤＲを更新する。
【００１４】
例えば、信号ＩＮＴがＰＷＭ（Pulse Width Modulation）信号であるとすると、ＰＷＭ信号におけるパルスの立ち上がりのタイミングごとに、フリーランカウンタ２２のカウント値がキャプチャレジスタ２３に取りこまれ、さらに、メモリ２４に格納される。そして、ＣＰＵ２０は、メモリ２４に格納された複数のカウンタ値に基づいてパルスの発生間隔を計測し、モータ等の負荷をパルスの発生間隔に応じて制御する。
【００１５】
図２は、制御回路２５の構成例を示す図である。制御回路２５は、Ｄ型フリップフロップ（Ｄ−ＦＦ）３０〜３２、ＮＯＴ回路３３、ＡＮＤ回路３４，３５、及びアドレス生成回路３６を含んで構成されている。
【００１６】
Ｄ−ＦＦ３０は、データ入力端子Ｄに信号ＩＮＴが入力され、クロック入力端子Ｃにクロック信号ＣＬＫが入力されている。Ｄ−ＦＦ３１は、データ入力端子ＤにＤ−ＦＦ３０のデータ出力端子Ｑから出力される信号Ａが入力され、クロック入力端子Ｃにクロック信号ＣＬＫをＮＯＴ回路３３で反転した反転クロック信号／ＣＬＫが入力されている。Ｄ−ＦＦ３２は、データ入力端子ＤにＤ−ＦＦ３１のデータ出力端子Ｑから出力される信号Ｂが入力され、クロック入力端子Ｃにクロック信号ＣＬＫが入力されている。ＡＮＤ回路３４は、Ｄ−ＦＦ３０のデータ出力端子Ｑから出力される信号Ａと、Ｄ−ＦＦ３１の反転データ出力端子／Ｑから出力される信号Ｃとの論理積を、取り込み指示信号ＣＰＴとして出力する。ＡＮＤ回路３５は、Ｄ−ＦＦ３１のデータ出力端子Ｑから出力される信号Ｂと、Ｄ−ＦＦ３２の反転データ出力端子／Ｑから出力される信号Ｄとの論理積を、記憶指示信号ＷＲＴとして出力する。アドレス生成回路３６には、ＡＮＤ回路３５から出力される記憶指示信号ＷＲＴが入力されており、記憶指示信号ＷＲＴがＨレベルからＬレベルに変化すると、アドレスＡＤＲが更新される。
【００１７】
＝＝動作＝＝
図３は、制御回路２５の動作の一例を示すタイミングチャートである。まず、時刻Ｔ１に、信号ＩＮＴがＨレベルに変化したとする。時刻Ｔ１の次にクロック信号ＣＬＫがＨレベルに変化する時刻Ｔ２のタイミングで、Ｄ−ＦＦ３０のデータ出力端子Ｑから出力される信号ＡがＨレベルに変化する。また、時刻Ｔ２のタイミングでは、Ｄ−ＦＦ３１のデータ出力端子Ｑから出力される信号ＢがＬレベル、反転データ出力端子／Ｑから出力される信号ＣがＨレベルとなっている。したがって、時刻Ｔ２に信号ＡがＨレベルになると、ＡＮＤ回路３４から出力される取り込み指示信号ＣＰＴがＨレベルに変化する。そして、取り込み指示信号ＣＰＴがＨレベルに変化すると、フリーランカウンタ２２のカウント値がキャプチャレジスタ２３に取りこまれる。
【００１８】
時刻Ｔ２の次にクロック信号ＣＬＫがＬレベルに変化する時刻Ｔ３のタイミングで、反転クロック信号／ＣＬＫがＨレベルに変化する。そして、反転クロック信号／ＣＬＫがＨレベルに変化すると、Ｄ−ＦＦ３１のデータ出力端子Ｑから出力される信号ＢがＨレベルに変化し、反転データ出力端子／Ｑから出力される信号ＣがＬレベルに変化する。さらに、信号ＣがＬレベルに変化すると、ＡＮＤ回路３４から出力される取り込み指示信号ＣＰＴがＬレベルに変化する。また、時刻Ｔ３のタイミングでは、Ｄ−ＦＦ３２の反転データ出力端子／Ｑから出力される信号ＤがＨレベルとなっている。したがって、時刻Ｔ３に信号ＢがＨレベルになると、ＡＮＤ回路３５から出力される記憶指示信号ＷＲＴがＨレベルに変化する。そして、記憶指示信号ＷＲＴがＨレベルに変化すると、キャプチャレジスタ２３に保持されているカウント値が、メモリ２４のアドレスＡＤＲで指定される領域に格納される。
【００１９】
時刻Ｔ３の次にクロック信号ＣＬＫがＨレベルに変化する時刻Ｔ４のタイミングで、Ｄ−ＦＦ３２の反転データ出力端子／Ｑから出力される信号ＤがＬレベルに変化する。そして、信号ＤがＬレベルに変化すると、ＡＮＤ回路３５から出力される記憶指示信号ＷＲＴがＬレベルに変化する。記憶指示信号ＷＲＴがＬレベルに変化すると、アドレス生成回路３６は、メモリ２４に出力するアドレスＡＤＲを、次にカウント値を格納するアドレスに更新する。
【００２０】
このように、マイコン１０では、時刻Ｔ１に信号ＩＮＴがＨレベルに変化すると、次にクロック信号ＣＬＫがＨレベルに変化する時刻Ｔ２に、フリーランカウンタ２２のカウント値がキャプチャレジスタ２３に取りこまれる。そして、次にクロック信号ＣＬＫがＬレベルに変化する時刻Ｔ３に、キャプチャレジスタ２３に保持されているカウント値がメモリ２４に格納される。すなわち、キャプチャレジスタ２３に取りこまれたカウント値は、クロック信号ＣＬＫの半周期の時間後にメモリ２４に格納されることとなり、信号ＩＮＴにおけるパルスの発生間隔が短い場合であっても、キャプチャレジスタ２３に取りこまれたカウント値がメモリ２４に格納される前に更新されてしまうことがない。
【００２１】
以上、本実施形態について説明した。前述したように、マイコン１０では、信号ＩＮＴに応じてフリーランカウンタ２２のカウント値がキャプチャレジスタ２３に取りこまれるとともに、信号ＩＮＴに応じて記憶指示信号ＷＲＴが生成されることにより、キャプチャレジスタ２３に保持されているカウント値がメモリ２４に格納される。つまり、キャプチャレジスタ２３に取りこまれたカウント値が、ＣＰＵ２０の割り込み処理を介することなくメモリ２４に迅速に格納されることとなり、短い時間間隔の計測が可能となる。
【００２２】
そして、マイコン１０では、信号ＩＮＴに応じて、クロック信号ＣＬＫに同期した取り込み指示信号ＣＰＴが出力されるとともに、取り込み指示信号ＣＰＴより後のタイミングで、クロック信号ＣＬＫに同期した記憶指示信号ＷＲＴが出力される。すなわち、フリーランカウンタ２２からキャプチャレジスタ２３へのカウンタ値の取り込みと、キャプチャレジスタ２３に保持されているカウント値のメモリ２４への格納とをクロック信号ＣＬＫに同期させて行うことが可能となる。
【００２３】
さらに、マイコン１０では、信号ＩＮＴに応じて、メモリ２４に対する記憶指示信号ＷＲＴがＨレベルに変化するとともに、アドレス生成回路３６においてアドレスＡＤＲが更新される。したがって、メモリ２４にカウント値が格納される際に、以前にカウント値が格納された領域とは異なる領域にカウント値を格納することができる。
【００２４】
また、マイコン１０では、信号ＩＮＴがＨレベルに変化した次にクロック信号ＣＬＫがＨレベルに変化するタイミング（例えば時刻Ｔ２）で取り込み指示信号ＣＰＴがＨレベルとなり、クロック信号ＣＬＫが次にＬレベルに変化するタイミング（例えば時刻Ｔ３）で記憶指示信号ＷＲＴがＨレベルとなる。これにより、キャプチャレジスタ２３に取りこまれたカウント値はクロック信号ＣＬＫの半周期後にメモリ２４に格納されることとなり、信号ＩＮＴにおけるパルスの発生間隔が短い場合であっても、キャプチャレジスタ２３に取りこまれたカウンタ値をメモリ２４に格納することが可能となり、短い時間間隔を計測することができる。
【００２５】
さらに、マイコン１０では、記憶指示信号ＷＲＴがＨレベルに変化した次にクロック信号ＣＬＫがＬレベルに変化するタイミング（例えば時刻Ｔ４）で記憶指示信号ＷＲＴがＬレベルとなり、記憶指示信号ＷＲＴがＬレベルになることによって、アドレス生成回路３６においてアドレスＡＤＲが更新される。すなわち、カウント値がメモリ２４に格納されてからクロック信号ＣＬＫの半周期後にアドレスＡＤＲが更新されるため、短い時間間隔を計測することが可能となる。
【００２６】
なお、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【図面の簡単な説明】
【００２７】
【図１】本発明に係る計時装置の一実施形態であるマイコンの構成を示す図である。
【図２】制御回路の構成例を示す図である。
【図３】制御回路の動作の一例を示すタイミングチャートである。
【図４】時間の計測機能を有するマイコンの一般的な構成例を示す図である。
【符号の説明】
【００２８】
１０  マイコン
２０  ＣＰＵ
２１  クロック生成回路
２２  フリーランカウンタ
２３  キャプチャレジスタ
２４  メモリ
２５  制御回路
３０〜３２  Ｄ型フリップフロップ
３３  ＮＯＴ回路
３４，３５  ＡＮＤ回路
３６  アドレス生成回路
【図１】
2008241460.tif 000003
【図２】
2008241460.tif 000004
【図３】
2008241460.tif 000005
【図４】
2008241460.tif 000006