(57)【特許請求の範囲】
【請求項１】
発振信号を出力する発振器と、
前記発振器を制御するマスターデバイスに接続されており、前記発振器の周波数を制御するＣＰＵと、
前記マスターデバイスに接続されており、前記ＣＰＵが前記発振器の周波数を制御している場合に、前記マスターデバイスと前記発振器との間の第１伝送路を遮断し、前記マスターデバイスが前記発振器の周波数を制御している場合に、前記第１伝送路を通じさせる制御部と、
を有し、
前記ＣＰＵは、前記第１伝送路が遮断されている間、前記第１伝送路と異なる第２伝送路を介して前記発振器の周波数を制御し、前記マスターデバイスが前記発振器の周波数を制御している間、スリープ状態となる、
を有する制御回路。
【請求項２】
前記制御部は、前記発振器の周波数を制御するという通知を前記ＣＰＵから受けたことに応じて前記第１伝送路を遮断する、
請求項１に記載の制御回路。
【請求項３】
前記制御部は、前記ＣＰＵがスリープ状態である間に、前記マスターデバイスと前記発振器との間の前記第１伝送路を通じさせる、
請求項１又は２に記載の制御回路。
【請求項４】
前記制御部は、前記ＣＰＵからスリープ状態に移行する通知を受けた場合に、前記第１伝送路のレベルを、前記マスターデバイスがデータを送信しないレベルに設定する、
請求項１から３のいずれか１項に記載の制御回路。
【請求項５】
前記制御部は、前記ＣＰＵがスリープ状態に移行した後に、前記第１伝送路のレベルをハイインピーダンスに設定する、
請求項４に記載の制御回路。
【請求項６】
前記制御部は、前記マスターデバイスが送信した前記データが前記ＣＰＵに対応するアドレスを示している場合に、スリープ状態の前記ＣＰＵを起動させる、
請求項４又は５に記載の制御回路。
【請求項７】
前記制御部は、前記マスターデバイスが、前記発振器が有する所定のレジスタに所定の値を書き込んだ場合に、スリープ状態の前記ＣＰＵを起動させる、
請求項１から５のいずれか１項に記載の制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発振器を制御する制御回路に関する。
【背景技術】
【０００２】
従来、ＣＰＵ（Central Processing Unit）が、シリアル通信伝送路を介して発振器を制御する技術が知られている。特許文献１には、ＣＰＵが、Ｉ２Ｃバスを介して接続されたＰＬＬＩＣ（Phase Lock Loop Integrated Circuit）を制御する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３０７４５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、発振信号の周波数の安定性を向上させるために、ＯＣＸＯ（Oven Controlled Crystal Oscillator）が使用されるようになってきている。ＯＣＸＯには、シリアル通信伝送路を介して発振器を制御するためのＣＰＵが搭載されている。ところが、ＯＣＸＯの内部は、比較的高温（例えば８５℃）に維持されているので、ＯＣＸＯの内部でＣＰＵが常に動作をしていると、常温下で動作する場合に比べてＣＰＵの寿命が短くなってしまうという問題があった。
【０００５】
そこで、本発明はこれらの点に鑑みてなされたものであり、発振器を制御するＣＰＵの寿命を延ばすことができる制御回路を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様の制御回路は、発振信号を出力する発振器と、前記発振器を制御するマスターデバイスに接続されており、前記発振器の周波数を制御するＣＰＵと、前記マスターデバイスに接続されており、前記ＣＰＵが前記発振器の周波数を制御する場合に、前記マスターデバイスと前記発振器との間の伝送路を遮断する制御部と、を有する。
【０００７】
前記制御部は、例えば、前記発振器の周波数を制御するという通知を前記ＣＰＵから受けたことに応じて前記伝送路を遮断する。
【０００８】
前記制御部は、前記ＣＰＵがスリープ状態である間に、前記マスターデバイスと前記発振器との間の伝送路を通じさせてもよい。
【０００９】
前記制御部は、前記ＣＰＵからスリープ状態に移行する通知を受けた場合に、前記伝送路のレベルを、前記マスターデバイスがデータを送信しないレベルに設定してもよい。前記制御部は、前記ＣＰＵがスリープ状態に移行した後に、前記伝送路のレベルをハイインピーダンスに設定してもよい。
【００１０】
前記制御部は、前記マスターデバイスが送信した前記データが前記ＣＰＵに対応するアドレスを示している場合に、スリープ状態の前記ＣＰＵを起動させてもよい。
【００１１】
前記制御部は、前記マスターデバイスが、前記発振器が有する所定のレジスタに所定の値を書き込んだ場合に、スリープ状態の前記ＣＰＵを起動させてもよい。
【発明の効果】
【００１２】
本発明によれば、発振器を制御するＣＰＵの寿命を延ばすことができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る制御回路の構成を示す図である。
【図２】制御部がマスターデバイスと発振器との間を遮断した状態を示す図である。
【図３】ＣＰＵがスリープ状態の場合の制御回路の状態を示す図である。
【図４】ＣＰＵが発振器に周波数を設定する際のＣＰＵと制御部との間の動作シーケンスを示す図である。
【図５】ＣＰＵがスリープ状態に移行する際のＣＰＵと制御部との間の動作シーケンスを示す図である。
【発明を実施するための形態】
【００１４】
［制御回路１の構成］
図１は、本実施形態に係る制御回路１の構成を示す図である。制御回路１は、発振器１０と、ＣＰＵ２０と、制御部３０と、双方向バッファ４０と、双方向バッファ５０と、抵抗６０と、抵抗７０とを有する。
【００１５】
発振器１０、ＣＰＵ２０及び制御部３０は、第１伝送路１００によりマスターデバイス２と接続されている。第１伝送路１００は、Ｉ２Ｃ（Inter-Integrated Circuit）等のシリアル通信の伝送路であり、本実施形態においてはマスターデバイス２がマスターとして動作する。発振器１０、ＣＰＵ２０及び制御部３０は、同じアドレスを有するスレーブとして動作する。ただし、発振器１０、ＣＰＵ２０及び制御部３０には、それぞれ異なるサブアドレスが割り当てられている。
【００１６】
また、発振器１０、ＣＰＵ２０及び制御部３０は、第２伝送路２００を介して互いに接続されている。第２伝送路２００も、Ｉ２Ｃ等のシリアル通信の伝送路であり、本実施形態においては制御部３０がマスターとして動作する。
【００１７】
双方向バッファ４０及び双方向バッファ５０は、制御部３０の制御に基づいて、それぞれマスターデバイス２と発振器１０との間でクロック信号（ＳＣＬ）及びデータ信号（ＳＤＡ）を伝送できる状態にするか、マスターデバイス２と発振器１０との間を遮断するかを切り替える。
【００１８】
抵抗６０及び抵抗７０は、プルアップ抵抗である。抵抗６０及び抵抗７０は、双方向バッファ４０及び双方向バッファ５０がハイインピーダンス状態である間、発振器１０に接続されたクロック信号線及びデータ信号線をハイレベルに固定する。
【００１９】
発振器１０は、例えばＯＣＸＯである。発振器１０は、内部に各種のレジスタを有しており、マスターデバイス２又はＣＰＵ２０からレジスタにデータが書き込まれることによって動作する。マスターデバイス２又はＣＰＵ２０は、例えば、発振器１０が出力する発振信号の周波数を設定することができる。
【００２０】
ＣＰＵ２０は、発振器１０を制御するマスターデバイス２に接続されており、発振器１０の周波数を制御する。ＣＰＵ２０は、記憶部（不図示）に記憶されたプログラムを実行することにより動作し、発振器１０の周波数を制御する動作を含む所定の動作を実行する間は起動し、その他の間はスリープ状態となる。ＣＰＵ２０は、発振器１０の周波数を制御する動作を実行する際は、第２伝送路２００を介して発振器１０にデータを書き込むために、第２伝送路２００のクロック信号線に対してクロック信号を出力するとともに、第２伝送路２００のデータ信号線にデータ信号を出力する。
【００２１】
制御部３０は、例えばＦＰＧＡ（Field Programmable Gate Array）により構成されたロジック回路を含んでいる。制御部３０は、マスターデバイス２に接続されており、双方向バッファ４０及び双方向バッファ５０を制御することにより、マスターデバイス２と発振器１０との間を接続するか遮断するかを切り替える。制御部３０は、例えば、ＣＰＵ２０が発振器１０の周波数を制御する場合に、マスターデバイス２と発振器１０との間の第１伝送路１００を遮断する。具体的には、制御部３０は、発振器１０の周波数を制御するという通知をＣＰＵ２０から受けたことに応じて、双方向バッファ４０及び双方向バッファ５０の制御端子に入力する論理値を変化させることにより、第１伝送路１００を遮断する。
【００２２】
図２は、制御部３０がマスターデバイス２と発振器１０との間を遮断した状態を示す図である。図２の破線が示すように、双方向バッファ４０と発振器１０及び双方向バッファ５０と発振器１０の間は信号線が非アクティブ状態であり、ＣＰＵ２０が発振器１０に対して信号を出力できる状態になっている。
【００２３】
制御部３０は、ＣＰＵ２０がスリープ状態である間に、双方向バッファ４０及び双方向バッファ５０を制御することにより、マスターデバイス２と発振器１０との間の第１伝送路１００を通じさせる。
図３は、ＣＰＵ２０がスリープ状態の場合の制御回路１の状態を示す図である。図３に破線で示されているように、この状態では第２伝送路２００は用いられておらず、ハイインピーダンス状態になっている。
【００２４】
制御部３０は、図３に示す状態のように、マスターデバイス２と発振器１０との間が通じている間、マスターデバイス２から発振器１０に対して送信されるデータを監視する。そして、制御部３０は、マスターデバイス２から送信されたデータが、発振器１０の所定のレジスタ以外のレジスタにアクセスするデータである場合、双方向バッファ４０及び双方向バッファ５０を制御することにより、マスターデバイス２と発振器１０との間の第１伝送路１００を遮断する。このようにすることで、制御部３０は、書き換えられるべきでない発振器１０のレジスタが書き換えられてしまうことを防止する。
【００２５】
また、制御部３０は、ＣＰＵ２０宛てのデータをマスターデバイス２から受信すると、受信したデータを、内部のメモリに記憶する。制御部３０は、ＣＰＵ２０を起動させた後に、記憶したデータをＣＰＵ２０に通知する。
【００２６】
［制御回路１の動作］
以下、制御回路１の動作について説明する。
図４は、ＣＰＵ２０が発振器１０に周波数を設定する際のＣＰＵ２０と制御部３０との間の動作シーケンスを示す図である。ＣＰＵ２０が発振器１０に周波数を設定する際には、まず、ＣＰＵ２０は、周波数の設定を行うことを制御部３０に対して通知する（Ｓ１１）。
【００２７】
制御部３０は、ＣＰＵ２０から周波数の設定を行うことを示す通知を受信すると、双方向バッファ４０及び双方向バッファ５０を制御して、マスターデバイス２と発振器１０との間の第１伝送路１００を遮断する（Ｓ１２）。そして、制御部３０は、第１伝送路１００の遮断が完了したことをＣＰＵ２０に対して通知する（Ｓ１３）。
【００２８】
ＣＰＵ２０は、第１伝送路１００の遮断が完了したことの通知を受けると、第２伝送路２００を介して、周波数設定値を含むデータを発振器１０に送信する（Ｓ１４）。その後、ＣＰＵ２０は、スリープ状態に移行する（Ｓ１５）。
【００２９】
図５は、ＣＰＵ２０がスリープ状態に移行する際のＣＰＵ２０と制御部３０との間の動作シーケンスを示す図である。
ＣＰＵ２０が、スリープ状態に移行する際には、制御部３０に対して、スリープ状態に移行することを通知する（Ｓ２１）。制御部３０は、スリープ状態に移行することの通知を受けると、双方向バッファ４０及び双方向バッファ５０を制御して、第１伝送路１００のＳＣＬ信号及びＳＤＡ信号をロウレベルに変化させることにより（Ｓ２２）、マスターデバイス２がＣＰＵ２０に対してデータを送信することを防止する。このようにすることで、ＣＰＵ２０がスリープ状態に移行する不安定な状態でＣＰＵ２０に対してデータが送信されることで誤動作が発生することを防止できる。
【００３０】
その後、制御部３０は、ＣＰＵ２０がスリープ状態に移行したかどうかを監視する（Ｓ２３）。制御部３０は、ステップＳ２１においてスリープ状態に移行することの通知を受けてから所定の時間が経過したことにより、スリープ状態に移行したと判定してもよく、ＣＰＵ２０からスリープ状態に移行する直前に再度の通知を受けたことで、スリープ状態に移行したと判定してもよい。
【００３１】
制御部３０は、ＣＰＵ２０がスリープ状態に移行したと判定すると（Ｓ２３においてＹＥＳ）、双方向バッファ４０及び双方向バッファ５０を制御して、第１伝送路１００をハイインピーダンス状態に設定する（Ｓ２４）。このようにすることで、マスターデバイス２が再びデータを送信可能な状態になる。
【００３２】
制御部３０は、ＣＰＵ２０がスリープ状態になっている間に、ＣＰＵ２０の起動が必要かどうかを監視する（Ｓ２５）。制御部３０は、例えば、マスターデバイス２が送信したデータがＣＰＵ２０に対応するアドレスを示している場合に、マスターデバイス２から受信したデータを内部のメモリに蓄積するとともに、双方向バッファ４０及び双方向バッファ５０を制御して、第１伝送路１００のＳＣＬ信号及びＳＤＡ信号をロウレベルに変化させる（Ｓ２６）。その後、制御部３０は、スリープ状態のＣＰＵ２０の割り込み信号をアクティブにすることでＣＰＵ２０を起動させる（Ｓ２７）。
【００３３】
ＣＰＵ２０は、起動すると、起動が完了したことを示す起動完了通知を制御部３０に送信する（Ｓ２８）。制御部３０は、起動完了通知を受信すると、双方向バッファ４０及び双方向バッファ５０を制御して、第１伝送路１００をハイインピーダンス状態に設定する（Ｓ２９）。制御部３０は、ＣＰＵ２０から起動完了通知を受信すると、記憶しておいたＣＰＵ２０宛てのデータをＣＰＵ２０に通知する（Ｓ３０）。
【００３４】
なお、制御部３０は、マスターデバイス２が、発振器１０が有する所定のレジスタに所定の値を書き込んだ場合に、スリープ状態のＣＰＵ２０を起動させてもよい。例えば、制御部３０は、マスターデバイス２が、発振器１０が有するレジスタのうち、周波数を設定する主体を切り替えるためのレジスタが操作された場合に、ＣＰＵ２０を起動させる。
【００３５】
［本実施形態の制御回路１による効果］
以上説明したように、本実施形態に係る制御回路１によれば、ＣＰＵ２０が、発振器１０に対してアクセスする必要がある場合に、マスターデバイス２と発振器１０との間の第１伝送路１００を遮断してＣＰＵ２０に動作させ、ＣＰＵ２０が発振器１０に対してアクセスする必要がない場合に、マスターデバイス２と発振器１０との間の第１伝送路１００を通じさせて、ＣＰＵ２０をスリープ状態にすることができる。このようにすることで、ＣＰＵ２０が動作する時間を短くすることができるので、ＣＰＵ２０が高温環境下で使用される場合の寿命を延ばすことができる。
【００３６】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【００３７】
１  制御回路
２  マスターデバイス
１０  発振器
２０  ＣＰＵ
３０  制御部
４０  双方向バッファ
５０  双方向バッファ
６０  抵抗
７０  抵抗
１００  第１伝送路
２００  第２伝送路
【図１】
0006653209.tif 000002
【図２】
0006653209.tif 000003
【図３】
0006653209.tif 000004
【図４】
0006653209.tif 000005
【図５】
0006653209.tif 000006