(57)【要約】マイクロコントローラは、プログラム可能なタイムベース（１００）を有し、タイムベースは、タイムベースのタイマまたはカウンタ（１１０）を始動させるためのトリガ入力を有し、タイムベースは、トリガ信号を受信する際、第１のモードでは、制御レジスタ内のリセットビットが設定されるまで、複数のタイマ／カウンタイベント信号（１９０）を発生させ、第２のモードでは、単一タイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、タイムベースは、第３のモードでは、所定の数のタイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、所定の数は、レジスタ（１８０）の複数のビットによって定義される。
2015507288.tif 000002
【特許請求の範囲】
【請求項１】
プログラム可能なタイムベースを備えるマイクロコントローラであって、前記タイムベースは、前記タイムベースのタイマまたはカウンタを始動させるためのトリガ入力を備え、前記タイムベースは、トリガ信号を受信する際、第１のモードにおいて制御レジスタ内のリセットビットが設定されるまでに複数のタイマ／カウンタイベント信号を発生させ、第２のモードにおいて単一タイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、前記タイムベースは、第３のモードにおいて所定の数のタイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、前記所定の数は、レジスタの複数のビットによって定義される、マイクロコントローラ。
【請求項２】
前記複数のビットは、前記制御レジスタのビットである、請求項１に記載のマイクロコントローラ。
【請求項３】
前記制御レジスタは、第１の制御レジスタであり、前記複数のビットは、前記タイムベースと関連付けられた第２の制御レジスタのビットである、請求項１に記載のマイクロコントローラ。
【請求項４】
前記第１のモードは、第１のモードビットを設定することによって設定され、前記第２のモードは、第２のモードビットを設定することによって設定される、請求項１に記載のマイクロコントローラ。
【請求項５】
前記第１および第２のビットは、前記タイムベースと関連付けられた第３の制御レジスタのビットである、請求項４に記載のマイクロコントローラ。
【請求項６】
前記第３のモードは、前記第２のモードビットを設定し、前記複数のビットを値＞０に設定することによって設定される、請求項５に記載のマイクロコントローラ。
【請求項７】
捕捉比較パルス幅変調（ＣＣＰ）ユニットまたは多重出力ＣＣＰ（ＭＣＣＰ）ユニットをさらに備える、請求項１に記載のマイクロコントローラ。
【請求項８】
前記タイムベースは、タイムベースカウンタおよび周期レジスタと結合されたコンパレータを備える、請求項１に記載のマイクロコントローラ。
【請求項９】
前記タイムベースはさらに、前記タイムベースを制御し、トリガ信号の受信の際、単一イベント信号を発生させるように動作可能なワンショット論理ユニットを備え、前記イベント信号は、前記周期レジスタ内に格納された所定の値だけ、前記トリガ信号に対して遅延される、請求項８に記載のマイクロコントローラ。
【請求項１０】
前記タイムベースはさらに、前記タイムベースを制御し、トリガ信号の受信の際、所定の数のイベント信号を発生させるように動作可能なカウンタを備え、イベント間の時間周期はそれぞれ、前記周期レジスタ内に格納された値および前記カウンタによって定義されたイベント信号の数によって定義される、請求項８に記載のマイクロコントローラ。
【請求項１１】
各イベントに対して複数の所定の制御信号を発生させるための論理をさらに備える、請求項８に記載のマイクロコントローラ。
【請求項１２】
３つのモードのうちの少なくとも１つで動作することができるマイクロコントローラ内のタイムベースによって、イベント信号を発生させるための方法であって、
前記方法は、
第１のモードで動作するとき、トリガ入力を受信する際、前記タイムベースのタイマまたはカウンタを始動させ、制御レジスタ内のリセットビットが設定されるまで、複数のタイマ／カウンタイベント信号を発生させることと、
第２のモードで動作するとき、トリガ入力を受信する際、単一タイマ／カウンタイベント信号を発生させることと、
第３のモードで動作するとき、トリガ入力を受信する際、所定の数のタイマ／カウンタイベント信号を発生させることであって、前記所定の数は、レジスタの複数のビットによって定義される、ことと
を含む、方法。
【請求項１３】
前記第１のモードは、第１のモードビットを設定することによって設定され、前記第２のモードは、第２のモードビットを設定することによって設定される、請求項１２に記載の方法。
【請求項１４】
前記第３のモードは、前記第２のモードビットを設定し、前記複数のビットを値＞０に設定することによって設定される、請求項１３に記載の方法。
【請求項１５】
前記イベント信号は、タイムベースカウンタの値をレジスタ内に格納された周期値と比較することによって発生される、請求項１２に記載の方法。
【請求項１６】
前記第２のモードにおける前記単一イベント信号は、前記タイムベースを制御し、トリガ信号の受信の際、単一イベント信号を発生させるように動作可能なワンショット論理ユニットによって制御され、前記イベント信号は、前記周期レジスタ内に格納された所定の値だけ、前記トリガ信号に対して遅延される、請求項１５に記載の方法。
【請求項１７】
カウンタは、イベント信号の数をカウントし、イベント信号の発生を制限する、請求項１５に記載の方法。
【請求項１８】
各イベントに対して複数の所定の制御信号を発生させることをさらに含む、請求項１５に記載の方法。
【請求項１９】
前記第３のモードで動作するとき、捕捉比較ユニットを制御し、複数の捕捉値を格納する、請求項１２に記載の方法。
【請求項２０】
前記第３のモードで動作するとき、容量時間測定ユニットを制御し、複数の時間測定を捕捉する、請求項１２に記載の方法。
【請求項２１】
前記第３のモードで動作するとき、アナログ／デジタルコンバータを制御し、複数の変換された値を格納する、請求項１２に記載の方法。
【請求項２２】
前記第３のモードで動作するとき、直接メモリアクセスコントローラを制御し、複数のデータ転送を行なう、請求項１２に記載の方法。
【請求項２３】
前記マイクロコントローラのＣＰＵは、前記タイムベースがイベント信号を発生させるとき、低電力スリープモードにある、請求項１２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願への相互参照）
本出願は、２０１２年２月１日に出願された米国仮出願第６１／５９３，４３５号の利益を主張する。上記文献は、その全体として本明細書において援用される。
【０００２】
（技術分野）
本開示は、タイムベース周辺機器ユニットに関し、特に、改良されたトリガモードを伴う、タイムベース周辺機器に関する。
【背景技術】
【０００３】
（背景）
マイクロコントローラ（ＭＣＵ）は、マイクロプロセッサと、メモリと、複数の周辺機器とを備え、いくつかの周辺機器は、ＭＣＵから独立して動作するように構成されてもよい。典型的ＭＣＵは、概して、そのような周辺機器のうちの１つとして、タイマの形態でプログラム可能なタイムベースを備える。そのようなタイマは、システム機能のためのトリガ信号を提供するようにプログラムされることができる。典型的ＭＣＵタイムベース周辺機器は、継続起動タイマとして動作するように設計される。本特徴は、概して、タイムベース周辺機器が、他のシステム機能のために、複雑なトリガを提供し得るように実装される。多くの場合、その機能性は、目的の機能内に置かれる。従来の１６ビットタイムベースは、例えば、図２に示されるように、ワンショット能力を伴う、トリガモードを有し得る。トリガモードは、外部信号を使用して、タイムベースが始動すべきときを知らせる。タイムベースは、トリガされるまで、リセットに保持される。図１は、トリガ信号がタイマを始動させる、従来のタイムベースの第１のモードを示す。タイマは、次いで、無限に起動し、ユーザが、タイマを停止させるビットＣＣＰｘＳＴＡＴ．ＴＲＩＧをクリアするまで、イベント信号を発生させる。図２は、異なるように動作する、ワンショットモードを示す。本モードでは、タイムベースは、イベントの発生後、停止するであろう。
【発明の概要】
【課題を解決するための手段】
【０００４】
（要約）
改良されたタイムベースのための方法およびシステムの必要性が、存在する。
【０００５】
ある実施形態によると、マイクロコントローラは、プログラム可能なタイムベースを備えてもよく、タイムベースは、タイムベースのタイマまたはカウンタを始動させるためのトリガ入力を備え、トリガ信号を受信する際、第１のモードでは、制御レジスタ内のリセットビットが設定されるまで、複数のタイマ／カウンタイベント信号を発生させ、第２のモードでは、単一タイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、タイムベースは、第３のモードでは、所定の数のタイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、所定の数は、レジスタの複数のビットによって定義される。
【０００６】
さらなる実施形態によると、複数のビットは、制御レジスタのビットであることができる。さらなる実施形態によると、制御レジスタは、第１の制御レジスタであることができ、複数のビットは、タイムベースと関連付けられた第２の制御レジスタのビットであることができる。さらなる実施形態によると、第１のモードは、第１のモードビットを設定することによって設定されることができ、第２のモードは、第２のモードビットを設定することによって設定されることができる。さらなる実施形態によると、第１および第２のビットは、タイムベースと関連付けられた第３の制御レジスタのビットであることができる。さらなる実施形態によると、第３のモードは、該第２のモードビットを設定し、複数のビットを値＞０に設定することによって設定されることができる。さらなる実施形態によると、タイムベースは、捕捉比較パルス幅変調（ＣＣＰ）ユニットまたは多重出力ＣＣＰ（ＭＣＣＰ）ユニットであることができる。
【０００７】
例示的実施形態によると、マイクロコントローラは、プログラム可能なタイムベースを備えてもよく、タイムベースは、タイムベースのタイマまたはカウンタを始動させるためのトリガ入力を備え、タイムベースは、トリガ信号を受信する際、第１のモードでは、制御レジスタ内のリセットビットが設定されるまで、複数のタイマ／カウンタイベント信号を発生させ、第２のモードでは、単一タイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、タイムベースは、第３のモードでは、所定の数のタイマ／カウンタイベント信号を発生させるよう動作するように構成されることができ、所定の数は、レジスタの複数のビットによって定義される。
【０００８】
さらなる実施形態によると、複数のビットは、制御レジスタのビットであることができる。さらなる実施形態によると、制御レジスタは、第１の制御レジスタであることができ、複数のビットは、タイムベースと関連付けられた第２の制御レジスタのビットである。さらなる実施形態によると、第１のモードは、第１のモードビットを設定することによって設定されることができ、第２のモードは、第２のモードビットを設定することによって設定されることができる。さらなる実施形態によると、第１および第２のビットは、タイムベースと関連付けられた第３の制御レジスタのビットであってもよい。さらなる実施形態によると、第３のモードは、第２のモードビットを設定し、複数のビットを値＞０に設定することによって設定されることができる。さらなる実施形態によると、マイクロコントローラはさらに、捕捉比較パルス幅変調（ＣＣＰ）ユニットまたは多重出力ＣＣＰ（ＭＣＣＰ）ユニットを備えてもよい。さらなる実施形態によると、タイムベースは、タイムベースカウンタおよび周期レジスタと結合されたコンパレータを備える。さらなる実施形態によると、タイムベースはさらに、タイムベースを制御し、トリガ信号の受信の際、単一イベント信号を発生させるように動作可能なワンショット論理ユニットを備えてもよく、イベント信号は、周期レジスタ内に格納される所定の値だけ、トリガ信号に対して遅延される。さらなる実施形態によると、タイムベースはさらに、タイムベースを制御し、トリガ信号の受信の際、所定の数のイベント信号を発生させるように動作可能なカウンタを備えてもよく、イベント間の時間周期はそれぞれ、周期レジスタ内に格納された値および該カウンタによって定義されたイベント信号の数によって定義される。さらなる実施形態によると、マイクロコントローラはさらに、各イベントに対して複数の所定の制御信号を発生させるための論理を備えてもよい。
【０００９】
別の実施形態によると、３つのモードのうちの少なくとも１つで動作することができる、マイクロコントローラ内のタイムベースによって、イベント信号を発生させるための方法は、第１のモードで動作するとき、トリガ入力を受信する際、タイムベースのタイマまたはカウンタを始動させ、制御レジスタ内のリセットビットが設定されるまで、複数のタイマ／カウンタイベント信号を発生させることと、第２のモードで動作するとき、トリガ入力を受信する際、単一タイマ／カウンタイベント信号を発生させることと、第３のモードで動作するとき、トリガ入力を受信する際、所定の数のタイマ／カウンタイベント信号を発生させることであって、所定の数は、レジスタの複数のビットによって定義される、こととを含んでもよい。
【００１０】
本方法のさらなる実施形態によると、第１のモードは、第１のモードビットを設定することによって設定されることができ、第２のモードは、第２のモードビットを設定することによって設定されることができる。本方法のさらなる実施形態によると、第３のモードは、該第２のモードビットを設定し、複数のビットを値＞０に設定することによって設定されることができる。本方法のさらなる実施形態によると、イベント信号は、タイムベースカウンタの値をレジスタ内に格納される周期値と比較することによって発生されることができる。本方法のさらなる実施形態によると、第２のモードにおける単一イベント信号は、タイムベースを制御し、トリガ信号の受信の際、単一イベント信号を発生させるように動作可能なワンショット論理ユニットによって制御されることができ、イベント信号は、周期レジスタ内に格納される所定の値だけ、トリガ信号に対して遅延される。本方法のさらなる実施形態によると、カウンタは、イベント信号の数をカウントし、イベント信号の発生を制限してもよい。本方法のさらなる実施形態によると、本方法はさらに、各イベントに対して複数の所定の制御信号を発生させることを含んでもよい。本方法のさらなる実施形態によると、第３のモードで動作するとき、捕捉比較ユニットは、複数の捕捉値を格納するように制御されることができる。本方法のさらなる実施形態によると、第３のモードで動作するとき、容量時間測定ユニットは、複数の時間測定を捕捉するように制御されることができる。本方法のさらなる実施形態によると、第３のモードで動作するとき、アナログ／デジタルコンバータは、複数の変換された値を格納するように制御されることができる。本方法のさらなる実施形態によると、第３のモードで動作するとき、直接メモリアクセスコントローラは、複数のデータ転送を行なうように制御されることができる。本方法のさらなる実施形態によると、マイクロコントローラのＣＰＵは、タイムベースがイベント信号を発生させるとき、低電力スリープモードにあることができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、種々の実施形態による、第１のモードで動作するタイムベース周辺デバイスのタイミング図を示す。
【図２】図２は、種々の実施形態による、第２のモードで動作するタイムベース周辺デバイスのタイミング図を示す。
【図３】図３は、種々の実施形態による、第３のモードで動作するタイムベース周辺デバイスのタイミング図を示す。
【図４】図４は、種々の実施形態による、タイムベースのブロック図を示す。
【図５】図５は、異なる比較モードのためのモジュールブロック図を示す。
【図６】図６は、ある実施形態による、マイクロコントローラ内のある要素の別のブロック図を示す。
【図７】図７は、別の実施形態による、さらに別のブロック図を示す。
【発明を実施するための形態】
【００１２】
（詳細な説明）
ワンショットモードは、１サイクルのみ可能にする。しかしながら、いくつかのアプリは、複数のサイクルを所望し得る。例えば、トリガ入力が受信されるとき、例えば、１００μｓｅｃ間隔において、いくつかのＡＤＣ変換、例えば、８回変換を行なう。別の実施例では、トリガ入力が受信されると、例えば、３つのピンが、連続でトリガされてもよい。さらに別の実施例では、シリアルポートへの４つのＤＭＡ書込が、トリガが受信されると、予定されてもよい。
【００１３】
そのような柔軟なマルチイベント機能を行なうことを可能にするために、種々の実施形態によると、カウンタがタイムベースに追加され、図４に示されるように、Ｎサイクルの間、ワンショットモードを拡張させる。図４に示される例示的タイムベース周辺機器１００は、同期およびトリガ制御ユニット１３０によって制御される、１６または３２ビットタイムベースカウンタ１１０を備える。同期およびトリガ制御ユニット１３０は、内部または外部ソースに由来し得る、複数の同期信号１７０を受信してもよい。コンパレータ１４０は、タイムベースカウンタ１１０および周期レジスタ１５０と結合され、イベント信号１９０を発生させる。イベント信号１９０はまた、マルチプレクサ１２０、例えば、リセットカウンタ１１０にフィードバックされてもよい。さらに、ワンショットユニット１７０が、直接、タイムベースカウンタ１１０を制御するか、または図４に示されるように、同期およびトリガ制御ユニット１３０と結合されるかのいずれかであり得るように提供される。付加的カウンタ１８０は、イベント信号１９０を受信し、さらに、制御信号を同期およびトリガ制御ユニット１３０に提供する。再び、カウンタ１８０はまた、直接、タイムベースカウンタ１１０を制御してもよい。また、他の実施形態によると、ワンショットユニット１７０および／またはカウンタ１８０によって提供される制御信号は、マルチプレクサ１２０にフィードされてもよい。図４に示されるように、モード制御ユニット１６０は、必要に応じて、個別の制御信号を発生させ、マルチプレクサ１２０およびタイムベース１００の全ての他のユニットを制御するために提供される。より明確な概略のために、これらの接続は、図２には描写されない。
【００１４】
図４の例示的実施形態に示されるようなタイムベース１００は、図１−３に示されるように、３つの異なるモードで動作してもよい。第１のモードでは、タイムベースカウンタ１１０が始動されると、未定義数の順次イベント信号１９０が、発生されるであろう。これらの順次イベント信号を停止させるための唯一の方法は、ソフトウェアによって、または手動で、タイムベース１００をリセットすることである。第２のモードでは、図２に示されるように、トリガは、単一ショットイベントを発生させる。言い換えると、カウンタ１１０がトリガされると、単一イベント信号１９０が発生され、その後、ワンショットユニット１７０は、タイムベースをリセットし、別のトリガを待機する。第３のモードでは、付加的カウンタ１８０が、所定の値にプリセットされる。この目的を達成するために、プリセットレジスタが、カウンタユニット１８０内に提供または統合されてもよい。トリガが、マルチプレクサ１２０を通して受信された後、タイムベースカウンタ１１０は、図３に示されるように、複数の順次イベント信号を発生させる。イベント信号が発生される度に、カウンタ１８０は、デクリメントされる。カウンタ１８０が、オーバーフローを発生させると、システム１００は、リセットされ、再び、別のトリガを待機するであろう。前述のようなダウンカウンタ１８０の機能はまた、コンパレータおよび関連付けられたレジスタと組み合わせて、アップカウンタによって発生されることができる。
【００１５】
種々の実施形態によると、出力比較周辺機器は、ＭＣＵが電力を節約するためにスリープモードのままであり得るように、自動的に、所定の回数、例えば、３回、外部測定をトリガさせてもよい。種々の実施形態によると、測定は、出力比較周辺機器を用いて、３つのデバイス出力ピンにパルスを発し、次いで、第４の入力ピンにおける時間遅延を測定することによって実施されることができる。本特徴を伴わない場合、ＭＣＵは、各測定間においてウェークアップし、コードを起動させる必要があり、付加的電力消費を生じさせるであろう。
【００１６】
タイムベース周辺機器内にワンショットおよびイベントカウント機能を提供することによって、任意の他の周辺機器または外部システムのための汎用かつ柔軟なトリガソースとして作用することができる。イベントカウンタ１８０は、タイムベース周辺機器が、単一ハードウェアイベント１７０から複数の周期的イベント１９０を発生させることを可能にし、ＣＰＵオーバーヘッドおよび電力消費の両方を節約する。種々の実施形態は、ＡＤＣ変換および誘導位置感知等の周期的イベントを自動化する、または周辺デバイス１９５によって示されるような容量時間測定ユニットをトリガするために使用されることができる。他のトリガの目的も使用され得、トリガイベント１９０は、必要に応じて、マルチプレクサまたはドライバを介して、デバイス内に分散されることができる。複数のイベントは、ＣＰＵがスリープモードにある間に生じ、電力消費を節約することができる。
【００１７】
前述のように、種々の実施形態によると、タイムベース周辺機器１００は、イベントカウンタ１８０を備える。イベント信号は、単一イベント信号であることができ、またはあるアクションを行なうための複数の後続従属イベント信号を発生させるようにさらに処理されてもよい。トリガ信号が受信されると、タイムベース周辺機器１００は、規定の回数の間、そのようなアクションを繰り返すであろう。したがって、種々の実施形態は、デバイス（マイクロコントローラ）の他の構成要素が、より長い時間の間、スリープモードのままであり、電力を節約することができるように、感知用途を自動化するのに役立ち得る。これは、計測、物理フィットネスデバイス等のバッテリ動力用途に非常に重要となり得る。
【００１８】
図４に示されるように、付加的カウンタＯＳＣＮＴ１８０が、提供され、一実施形態によると、ＯＳＣＮＴ１８０が３ビットを提供し得る。しかしながら、他の構成が使用されてもよい。タイムベース１００は、外部信号１７０がタイムベースカウンタ１１０を始動させることを可能にする、トリガ機能を有する。タイムベースは、トリガパルスＴｒｉｇ＿ｉｎが受信されるまで、リセットに保持されるであろう。通常動作下では、タイムベースは、カウントを始動させ、トリガが、前述および図１に示されるように、ソフトウェア内でキャンセルされるまで、カウントし続けるであろう。トリガは、関連付けられた特別機能レジスタ内のＴＲＩＧステータスビットをクリアすることによってキャンセルされる。
【００１９】
図２に示されるようなワンショットモードでは、タイムベースは、１カウント周期を通してカウントし、次いで、リセットおよび停止するであろう。ワンショットモードは、ユーザが、ハードウェア信号イベントに基づいて、単一遅延またはパルスを生成することを可能にする。
【００２０】
図３に示されるモードによると、ＯＳＣＮＴ［２：０］ビット（ワンショットカウント）はさらに、ワンショットモードの能力を拡張させる。３ビットが、付加的カウンタを定義する場合、最大８つのイベントが、生成されることができる。したがって、ＯＳＣＮＴビットが、非ゼロ値に設定されると、タイマは、複数の周期の間、カウントし、次いで、停止するであろう。ＯＳＣＮＴ値は、ワンショットイベントを拡張させるためのカウント周期の数を規定する。ＯＳＣＮＴ＝０１１ｂである場合、タイムベースは、４周期の間、カウントし、次いで、リセットおよび停止するであろう。これは、図３のタイミング図に示される。
【００２１】
種々の実施形態は、そうでなければ必要とされるであろう、高速‘バースト’タスクのソフトウェアオーバーヘッドを低減させ、スリープ状態にある周辺機器を自動化し、電力消費を低減ことが可能であるという利点を有する。
【００２２】
図５は、種々の実施形態による、例えば、３２ビットマイクロコントローラ内のタイムベースの種々の機能を制御するために使用され得る、制御レジスタを示す。故に、各レジスタは、３２ビットレジスタとして構成される。他の実施形態は、より多いまたはより少ないレジスタを使用してもよく、全機能が、前述のような動作を可能にするために提供される必要はない。
【００２３】
以下の機能説明から分かるように、タイムベースの制御レジスタは、複数の機能を提供するように設計されることができる。ＣＣＰｘ制御レジスタ１−３の以下のビットは、以下の機能性を提供する。
ビット３１ＯＰＳＳＲＣ：出力ポストスケーラソース選択ビット
１＝出力ポストスケーラが、モジュールトリガ出力イベントをスケーリングする
０＝出力ポストスケーラが、タイムベース割り込みイベントをスケーリングする
本制御ビットは、入力捕捉モードにおいて機能することはない。
ビット３０−２８非実装：‘０として読み取られる
ビット２７−２４ＯＰＳ［３：０］：捕捉／比較／ＰＷＭ割り込み出力ポストスケール選択ビット
１１１１＝１６番目のタイムベース周期一致毎にＣＰＵを中断する
１１１０＝１５番目のタイムベース周期一致毎にＣＰＵを中断する
…
０１００＝５番目のタイムベース周期一致毎にＣＰＵを中断する
００１１＝４番目のタイムベース周期一致毎または４入力捕捉イベント後、ＣＰＵを中断する
００１０＝３番目のタイムベース周期一致毎または３入力捕捉イベント後、ＣＰＵを中断する
０００１＝２番目のタイムベース周期一致毎または２入力捕捉イベント後、ＣＰＵを中断する
００００＝各タイムベース周期一致または各入力捕捉イベント後、ＣＰＵを中断する
ビット２３ＴＲＩＧＥＮ：ＣＣＰｘトリガイネーブルビット
１＝タイムベースのトリガ動作が、イネーブルされる
０＝タイムベースのトリガ動作が、ディスエーブルされる
ビット２２ＯＮＥＳＨＯＴ：ワンショットモードイネーブルビット
１＝ワンショットトリガモードイネーブル；ＣＣＰｘＣＯＮ３．ＯＳＣＮＴ［２：０］によって設定されたトリガ持続時間
０＝ワンショットトリガモードディスエーブル
ビット２１ＳＹＮＣＯＳＥＬ：同期出力選択ビット
１＝交番信号が、モジュール同期出力信号として使用される（表２−１参照）
０＝モジュール同期出力信号は、タイムベースリセット／ロールオーバイベントである
ビット２０−１６ＳＹＮＣ［４：０］：捕捉／比較／ＰＷＭ同期源選択ビット
１１１１１＝タイムベースは、自走モードであり、ＦＦＦＦにおいてロールオーバする
１１１１０＝タイムベースは、ソース＃３０に同期される
…
００００１＝タイムベースは、ソース＃１に同期される
０００００＝タイムベースは、自己同期され、ＦＦＦＦにおいてロールオーバする、または周期レジスタと一致する
ビット１５ＯＮ：モジュールイネーブルビット
１＝モジュールは、ＭＯＤ［３：０］制御ビットによって規定された動作モードを用いてイネーブルされる
０＝モジュールは、ディスエーブルされる
ビット１４ＦＲＺ：デバッグモード時フリーズビット
１＝エミュレータがデバッグモードにあるとき、モジュールは、動作をフリーズさせる
０＝エミュレータがデバッグモードにあるとき、モジュールは、動作を継続させる
注記：ＦＲＺは、動作モードでは、‘Ｕ−０’であり、デバッグモードでは、‘Ｒ／Ｗ−０’である。
ビット１３ＳＩＤＬ：アイドルモード時停止ビット
１＝デバイスがアイドルモードになると、モジュール動作を中止する
０＝アイドルモード時、モジュール動作を継続する
ビット１２ＳＬＰＥＮ：スリープモードイネーブルビット
１＝モジュールは、スリープモードでは、動作を継続する
０＝モジュールは、スリープモードでは、動作しない
ビット１１ＴＳＹＮＣ：タイムベースクロック同期ビット
１＝モジュールタイムベースクロックは、内部システムクロックに同期される；タイミング制限が適用される
０＝モジュールタイムベースクロックは、内部システムクロックに同期されない
注記：本制御ビットは、ＣＳ［２：０］によって選択されたクロックソースが、システムクロックソースから導出され、それと同期されるとき、機能しない。
ビット１０−８ＣＳ［２：０］：捕捉／比較／ＰＷＭｘクロック選択ビット
１１１＝ｃｌｋ＿ｉｎ［７］
１１０＝ｃｌｋ＿ｉｎ［６］
１０１＝ｃｌｋ＿ｉｎ［５］
１００＝ｃｌｋ＿ｉｎ［４］
０１１＝ｃｌｋ＿ｉｎ［３］
０１０＝ｃｌｋ＿ｉｎ［２］
００１＝ｃｌｋ＿ｉｎ［１］
０００＝タイムベースクロックは、ＴＣＹである
ビット７−６ＴＰＳ［１：０］：捕捉／比較／ＰＷＭｘタイムベースプリスケール選択ビット
１１＝１：６４プリスケーラ
１０＝１：１６プリスケーラ
０１＝１：４プリスケーラ
００＝１：１プリスケーラ
ビット５Ｔ３２：３２ビットタイムベース選択ビット
１＝選択されたタイマ、単一エッジ出力比較、または入力捕捉機能のために、３２ビットタイムベースを使用する
０＝選択されたタイマ、単一エッジ出力比較、または入力捕捉機能のために、１６ビットタイムベースを使用する
注記：３２ビット動作は、二重エッジ出力比較モードでは、利用可能ではない。
ビット４ＣＣＭ：捕捉／比較モード選択ビット
１＝モジュールは、入力捕捉周辺機器として動作する
０＝モジュールは、出力比較周辺機器として動作する
ビット３−０ＭＯＤ［３：０］：ＣＣＰモード選択ビット
ＣＣＭ＝１（入力捕捉モード）
１ｘｘｘ＝予備
０１１１＝予備
０１１０＝予備
０１０１＝１６番目の立ち上がりエッジ毎に捕捉
０１００＝４番目の立ち上がりエッジ毎に捕捉
００１１＝立ち上がりおよび立ち下がりエッジ毎に捕捉
００１０＝立ち下がりエッジ毎に捕捉
０００１＝立ち上がりエッジ毎に捕捉
００００＝立ち上がりおよび立ち下がりエッジ毎に捕捉（エッジ検出モード）
ＣＣＭ＝０（出力比較モード）
１１１１＝外部入力モード；パルス発生器ディスエーブル。ソースは、ＩＣＳ［２：０］ビットによって選択される。
１１１０＝予備
１１０１＝予備
１１００＝予備
１０１１＝予備
１０１０＝予備
１００１＝予備
１０００＝予備
０１１１＝可変周波数パルスモード
０１１０＝中心整合パルス比較モード−バッファ
０１０１＝二重エッジ比較モード−バッファ
０１００＝二重エッジ比較モード
００１１＝１６ビット／３２ビット単一エッジモード−比較一致時、出力をトグルする
００１０＝１６ビット／３２ビット単一エッジモード−比較一致時、出力を低に駆動する
０００１＝１６ビット／３２ビット単一エッジモード−比較一致時、出力を高に駆動する
００００＝１６ビット／３２ビットタイマモード−出力機能ディスエーブル
【００２４】
ＣＣＰｘ制御レジスタ２の以下のビットは、以下の機能性を提供し得る。
ビット３１ＯＥＮＳＹＮＣ：出力イネーブル同期ビット
１＝出力イネーブルビットによる更新は、次のタイムベースリセットまたはロールオーバ時に生じる
０＝出力イネーブルビットによる更新は、即時に生じる
ビット３０非実装：‘０として読み取られる
ビット２９−２４ＯＣｘＥＮ：出力イネーブル／ステアリング制御ビット
１＝ＯＣｘピンは、ＣＣＰモジュールによって制御され、出力比較またはＰＷＭ信号を生成する
０＝ＯＣｘピンは、ＣＣＰモジュールによって制御されない；ピンは、ピン上に多重化されたポート論理または別の周辺機器に利用可能である
タイムベースおよび入力捕捉モードは、任意の外部出力ピン機能を有していなくてもよい；したがって、ＯＣｘＥＮビットは、これらのモードにおいていかなる影響を及ぼすことはない（ｍｃｃｐ＿ｉｏ＿ｐＸ＿ｐｏｒｔ＿ｅｎ＝０）。ＯＣｘＡ−ＯＣｘＦピンは、ポート論理または別の周辺機器に利用可能である。
ビット２３−２２ＩＣＧＳＭ［１：０］：入力捕捉ゲーティングソースモード制御ビット
１１＝予備
１０＝ワンショットモード；ゲーティングソースからのイベントは、将来的捕捉イベントをディスエーブルするであろう（ＩＣＤＩＳ＝１）
０１＝ワンショットモード；ゲーティングソースからのイベントは、将来的捕捉イベントをイネーブルするであろう（ＩＣＤＩＳ＝０）
００＝レベルセンシティブモード；ゲーティングソースからの高レベルは、将来的捕捉イベントをイネーブルするであろう；低レベルは、将来的捕捉イベントをディスエーブルするであろう
本ビットは、タイマモード、出力比較モード、またはＰＷＭモードに影響を及ぼすことはない。
ビット２１非実装：‘０として読み取られる’
ビット２０−１９ＡＯＵＴＳＥＬ［１：０］：補助出力信号選択ビット
１１＝信号出力は、モジュール動作モードに依存する
１０＝信号出力は、モジュール動作モードに依存する
０１＝信号出力は、モジュール動作モードに依存する
００＝ｍｃｃｐ＿ａｕｘ＿ｏｕｔにおける信号出力はない
ビット１８−１６ＩＣＳ［２：０］：入力捕捉ソース選択ビット
１１１＝捕捉ソース＃８
１１０＝捕捉ソース＃７
１０１＝捕捉ソース＃６
１００＝捕捉ソース＃５
０１１＝捕捉ソース＃４
０１０＝捕捉ソース＃３
００１＝捕捉ソース＃２
０００＝捕捉ソース＃１
ビット１５ＲＳＥＮ：ＣＣＰｘＰＷＭ再始動イネーブルビット
１＝ＣＣＰｘＳＴＡＴ．ＡＳＥビットは、シャットダウン入力が終了後、次のＰＷＭ周期の開始時、自動的にクリアされる
０＝ＣＣＰｘＳＴＡＴ．ＡＳＥは、出力ピンにおいてＰＷＭアクティビティを再開するために、ソフトウェア内でクリアされなければならない
ビット１４ＡＳＤＧＭ：ＣＣＰｘ自動シャットダウンゲートモードイネーブルビット
１＝シャットダウンのための次のタイムベースリセットまたはロールオーバが生じるまで待機する
０＝シャットダウンイベントが、即時に生じる
ビット１３非実装：‘０として読み取られる
ビット１２ＳＳＤＧ：ＣＣＰｘソフトウェアシャットダウン／ゲート制御ビット
１＝自動シャットダウン、タイマクロックゲート、または入力捕捉信号ゲートイベントを手動で強制する（ＡＳＤＧＭビットの設定が、依然として、適用される）
０＝通常モジュール動作
ビット１１−８非実装：‘０として読み取られる
ビット７：０  ＡＳＤＧ［７：０］：ＣＣＰｘ自動シャットダウン／ゲーティングソースイネーブルビット
１＝ＡＳＤＧソースｎは、イネーブルされる
０＝ＡＳＤＧソースｎは、ディスエーブルされる
【００２５】
ＣＣＰｘ制御レジスタ３の以下のビットは、以下の機能性を提供し得る。
ビット３１ＯＥＴＲＩＧ：トリガ制御時の出力イネーブルビット
１＝トリガモード（ＴＲＩＧＥＮ＝１）の場合、モジュールは、トリガされるまで、イネーブルにされた出力ピンを駆動させない
０＝通常出力ピン動作
ビット２６−２４ＯＳＣＮＴ［２：０］：ワンショットカウントビット（２）
１１１＝ワンショットトリガイベントを７タイムベースカウントサイクル拡張する（合計８タイムベース周期）
１１０＝ワンショットトリガイベントを６タイムベースカウントサイクル拡張する（合計７タイムベース周期）
１０１＝ワンショットトリガイベントを５タイムベースカウントサイクル拡張する（合計６タイムベース周期）
１００＝ワンショットトリガイベントを４タイムベースカウントサイクル拡張する（合計５タイムベース周期）
０１１＝ワンショットトリガイベントを３タイムベースカウントサイクル拡張する（合計４タイムベース周期）
０１０＝ワンショットトリガイベントを２タイムベースカウントサイクル拡張する（合計３タイムベース周期）
００１＝ワンショットトリガイベントを１タイムベースカウントサイクル拡張する（合計２タイムベース周期）
０００＝ワンショットトリガイベントを拡張しない。
ビット２７非実装：‘０として読み取られる
ビット２６−２４ＯＵＴＭ［２：０］：出力モード制御ビット
１１１＝予備
１１０＝出力走査モード
１０１＝ブラシＤＣ出力モード、順方向
１００＝ブラシＤＣ出力モード、逆方向
０１１＝予備
０１０＝ハーフブリッジ出力モード
００１＝プッシュ−プル出力モード
０００＝ステアラブル単一出力モード
ビット２３−２２非実装：‘０として読み取られる
ビット２１ＰＯＬＡＣＥ：ＣＣＰ出力ピンＯＣｘＡ、ＯＣｘＣ、およびＯＣｘＥ極性制御ビット
１＝出力ピン極性は、負論理（ＡＣＴＩＶＥ  ＬＯＷ）である
０＝出力ピン極性は、正論理（ＡＣＴＩＶＥ  ＨＩＧＨ）である
ビット２０ＰＯＬＢＤＦ：ＣＣＰ出力ピンＯＣｘＢ、ＯＣｘＤ、およびＯＣｘＦ極性制御ビット
１＝出力ピン極性は、負論理である
０＝出力ピン極性は、正論理である
ビット１９−１８ＰＳＳＡＣＥ［１：０］：ＰＷＭ出力ピンＯＣｘＡ、ＯＣｘＣ、およびＯＣｘＥシャットダウン状態制御ビット
１１＝ピンは、シャットダウンイベントが生じると、アクティブに駆動される
１０＝ピンは、シャットダウンイベントが生じると、非アクティブに駆動される
０ｘ＝ピンは、シャットダウンイベントが生じると、トライステート状態にされる
ビット１７−１６ＰＳＳＢＤＦ［１：０］：ＰＷＭ出力ピンＯＣｘＢ、ＯＣｘＤ、およびＯＣｘＦシャットダウン状態制御ビット
１１＝ピンは、シャットダウンイベントが生じると、アクティブに駆動される
１０＝ピンは、シャットダウンイベントが生じると、非アクティブに駆動される
０ｘ＝ピンは、シャットダウンイベントが生じると、トライステート状態にされる
ビット１５−６非実装：‘０として読み取られる
ビット５−０ＤＴ［５：０］：捕捉／比較／ＰＷＭ不動作時間選択ビット
１１１１１１＝相補出力信号間に６３不動作時間遅延周期を挿入する
…
００００１０＝相補出力信号間に２不動作時間遅延周期を挿入する
０００００１＝相補出力信号間に１不動作時間遅延周期を挿入する
００００００＝不動作時間論理ディスエーブル
【００２６】
図６は、マイクロコントローラのブロック図を示し、必須機能のみが描写される。中央処理ユニット（ＣＰＵ）２６０は、構成のために、プログラム可能なタイムベース２５０と結合されることができる。タイムベース２５０は、図４に示されるように、具現化されることができる。しかしながら、タイムベースは、周辺デバイスによって要求され得るより複雑な信号を発生させるための付加的論理を有してもよい。プログラム可能なタイムベース２５０は、選択のための複数のクロック信号ならびに複数のトリガ入力および／または同期信号を受信してもよい。前述のように、プログラム可能なタイムベース２５０は、その動作モードに従って、種々のイベント信号を発生させてもよい。これらの信号は、専用バスを介して、または個々の制御ラインによって、個別の周辺デバイス２１０−２４０に提供されることができる。機能性に応じて、周辺機器ユニットあたり１つ以上の制御ラインが、提供されてもよい。図６に示される実施例では、トリガ信号を受信する際、関連付けられたＦＩＦＯメモリ内に１つ以上のタイマ値を格納することができる、捕捉比較ユニット２１０が、提供される。この目的を達成するために、トリガ信号のシーケンスが、捕捉比較ユニット２１０に供給されることができる。代替として、または組み合わせて、複数のトリガラインが、捕捉比較ユニットに接続し得、プログラム可能なタイムベース２５０が、異なる制御ライン上に順次信号を発生させる。したがって、例えば、３つの異なるタイマ値は、３つの別個の制御信号を使用して捕捉され得る。
【００２７】
図６はまた、イベント信号によってトリガされ得る、アナログ／デジタルコンバータ（ＡＤＣ）ユニット２２０を示す。ここでは、例えば、オリジナルトリガ信号は、変換を始動させるために使用されてもよく、プログラム可能なタイムベースによって発生されたイベント信号は、変換された値をＦＩＦＯまたはレジスタ内に読み取るために使用されることができる。
【００２８】
別の実施例として、図６は、メモリから周辺デバイスまたはその逆に任意のタイプのデータ転送を行なうようにトリガされ得る、直接メモリアクセス（ＤＭＡ）コントローラ２３０を示す。
【００２９】
図６に示されるさらに別の実施例は、プログラム可能なタイムベース２５０によって発生される１つ以上のイベント信号によってトリガされ得る、パルス幅変調（ＰＷＭ）ユニット２４０である。
【００３０】
モジュールは、図６に示されるように、以下の目標を念頭において設計され得る。
−タイムベース、入力捕捉、比較、およびＰＷＭ機能を単一周辺機器内に組み合わせ、デバイスレベルで信号ルーティングを簡略化する。
−本出願人によって製造された８ビット製品上に見出される、ＣＣＰおよびＥＣＣＰモジュールのルック・アンド・フィールを取り込むが、１６ビットおよび３２ビット汎用ＭＣＵ製品空間に適切な周辺機器を生成する。
−既存のマイクロコントローラデバイスに見出される既存の出力比較および入力捕捉周辺機器と同様の機能性を提供する
−ＰＷＭモードにおいて、２０ｎｓ以上のエッジ分解能を提供する
−選択された範囲のモータ制御、電力供給源、および照明用途をサポートするために、ＰＷＭモードにおいて要求される機能性を提供する。
−全タイプのマイクロコントローラに適用され得る、汎用モジュールを生成する。
【００３１】
種々の実施形態によると、以下の機能が、提供され得る。
−内部タイムベースおよび周期レジスタ
−タイムベースのための入力クロックプリスケーラ
−ＡＤＣ変換のための出力トリガ
−モジュール割り込みイベントまたはトリガのための出力ポストスケーラ
−選択された動作モードのための３２ビットタイムベース
−タイムベースモード
−捕捉モード：
−ｉｃａｐ＿ｖ４モジュールに類似する特徴セット
−外部イベント時のタイムベースの１６ビット捕捉
−４−ディープ捕捉バッファ
−捕捉ソース入力マルチプレクサ
−出力比較モード：
−ｏｃｍｐ＿ｖ４モジュールに類似する特徴セット
−単一エッジ比較モード
−二重エッジ比較モード
−中心整合比較モード
−可変周波数パルスモード
−外部入力モード
−出力比較のための出力制御機能：
−単一出力ステアラブルモード
−ブラシＤＣ順方向および逆方向モード
−不動作時間遅延を伴う、ハーフブリッジ
−プッシュ−プルＰＷＭモード
−プログラム可能なソースおよびシャットダウン状態を伴う、自動シャットダウン
−プログラム可能な出力極性
【００３２】
タイムベースモジュールの複数の事例が、ある実施形態に従って、捕捉、比較、またはＰＷＭ機能性の多くのチャネルを提供するために、デバイス上に実装されることができる。別の実施形態によると、複数のデバイス出力ピンにおけるＰＷＭ出力は、サポートされ得る。故に、以下の機能が、実現され得る。
−不動作時間制御論理
−ハーフブリッジ、プッシュ−プル、およびブラシＤＣ動作モード
−ＰＷＭ出力ステアリング
【００３３】
高度ＰＷＭ特徴セットが、２つ、４つ、または６つの出力ピンとともに、デバイス上に実装され、Ｉ／Ｏピン多重化要件を簡略化してもよい。
【００３４】
トリガとして動作する間、タイマは、ワンショットモードで動作することができる。ワンショットモードは、ＣＣＰｘＣＯＮ１．ＯＮＥＳＨＯＴビットを設定することによってイネーブルされる。ワンショットモードでは、タイマは、トリガイベントが生じるまで、リセットのままである。本イベントは、ＴＲＩＧビットを設定し、タイマは、カウントを開始する。タイマが、００００ｈまでロールオーバすると、ＴＲＩＧビットは、ハードウェアによってクリアされるであろう。これは、次のトリガイベントまで、タイマをリセットに保持し、ワンショットタイマを生成する。
【００３５】
ＣＣＰｘＣＯＮ３．ＯＳＣＮＴ［２：０］制御ビットは、ワンショットトリガイベントが、２つ以上のタイムベースカウントサイクルの間、拡張されることを可能にする。本特徴は、例えば、モジュールが、トリガイベント時、２つ以上のパルスを生成する必要があるとき、有用である。
【００３６】
図７は、トリガ用途におけるモジュールタイマの典型的用途を示す。図７では、トリガイベントは、別のＯＣモジュール、タイマモジュール、ＩＣモジュール、アナログコンパレータ、または上位レベルで接続された任意の他の機能によって発生されることができる。
【００３７】
以下の動作構成は、タイムベースをトリガするために可能性として考えられる。
１．トリガ信号が、外部ソースから受信され、タイムベースクロックソースｔｍｒ＿ｃｌｋが、アクティブとなる。これは、モジュールの通常動作構成である。２．トリガ信号が、外部ソースから受信され、タイムベースクロックソースｔｍｒ＿ｃｌｋが、非アクティブとなる。モジュールは、トリガ動作が開始し得る前に、タイムベースクロックソースを要求しなければならない。第２の構成は、デバイスが低電力状態にあるときに使用されてもよい。トリガが、外部ソースから受信されると、モジュールは、タイムベースのための選択されたクロックソースをイネーブルするであろう。クロックソースが、利用可能であるとき、モジュールは、トリガ動作を開始するであろう。モジュールが、ワンショットトリガモードにある場合、タイムベースクロックソースは、ＴＲＩＧステータスビットが、ハードウェア内でクリアされると、ディスエーブルされるであろう。タイムベースは、新しいトリガ信号が受信されるまで、ディスエーブルにされたままとなるであろう。本動作は、要求されるまで、モジュールを低電力状態のままにする。トリガ信号は、外部ソース、または低周波数／低電力クロックから動作する内部ソースによって発生される。ＳＬＰＥＮ＝１である場合、モジュールは、デバイスがスリープモードになると、タイムベースクロックソースを要求し続けるであろう。
【図１】
2015507288.tif 000003
【図２】
2015507288.tif 000004
【図３】
2015507288.tif 000005
【図４】
2015507288.tif 000006
【図５】
2015507288.tif 000007
【図６】
2015507288.tif 000008
【図７】
2015507288.tif 000009
【国際調査報告】
2015507288.tif 000010
2015507288.tif 000011