(57)【要約】パルス幅変調技術は、デューティサイクルを規定する値と該値の補数との間で交互するカウンタロード値を用いる。或る実施例においては、パルス幅変調信号は、カウンタがオーバフローしきい値に達するのに応じて該カウンタをリロードするために用いられる制御信号の関数として作成される。このアプローチは、前記カウンタロード値を記憶するステップと、該ロード値又は該ロード値の補数のいずれかに対応する論理回路出力値に対してカウントするステップとを含む。前記カウントするステップは、前記カウンタがオーバフローしきい値に達するのに応じて前記論理回路出力を用いて再開される。上記のタイプのＰＷＭアプローチの特定の例のアプリケーションは、８０Ｃ５１タイプのマイクロコントローラ中にあるような従来のアップ／ダウンデジタルカウンタの他の方法での実施に関する。
2004524761.tif 000002
【特許請求の範囲】
【請求項１】
カウンタロード値及びクロック信号に応じてパルス幅変調出力信号を生成するパルス幅変調回路であって、
−  前記カウンタロード値を記憶するよう適合される入力レジスタ、並びに記憶された前記ロード値及び制御信号に応答する第１論理回路を含み、前記第１論理回路が、前記ロード値又は該ロード値の補数のいずれかである論理回路出力を供給するよう適合されているカウンタ装置であって、前記クロック信号に基づいて前記論理回路出力に対してカウントし、前記制御信号に応じて前記論理回路出力に対してカウントを再開するよう適合されるカウンタ回路を更に含む当該カウンタ装置と、
−  前記カウンタがオーバフローしきい値に達するのに応じて前記制御信号を作成するよう適合される第２論理回路とを有するパルス幅変調回路。
【請求項２】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件であることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項３】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件と異なる或るカウントに対応することを特徴とする請求項１に記載のパルス幅変調回路。
【請求項４】
前記第１論理回路が、ビットごとに前記記憶されたロード値及び前記制御信号に応答するＥＸＯＲ関数を含むことを特徴とする請求項１に記載のパルス幅変調回路。
【請求項５】
前記第１論理回路が、ビットごとに前記記憶されたロード値及び前記制御信号に応答するＥＸＯＲ関数を含み、前記ロード値の前記補数は１の補数値であることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項６】
前記ロード値の前記補数は１の補数値であることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項７】
前記ロード値の前記補数は２の補数値であることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項８】
前記第２論理回路が、前記カウンタがオーバフロー条件に達することを予測するよう更に適合されることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項９】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件であることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項１０】
前記ロード値又は該ロード値の補数のいずれかの選択された一方である前記論理回路出力からカウントする場合に、前記カウンタがオーバフローしきい値に達することを前記第２論理回路が予測するのに応じて、前記制御信号が作成されることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項１１】
前記カウンタロード値の関数として前記パルス幅変調出力信号のデューティサイクルを規定するよう適合されるマイクロプロセッサ回路を更に含むことを特徴とする請求項１に記載のパルス幅変調回路。
【請求項１２】
前記パルス幅変調出力信号が、前記制御信号の関数に対応するデューティサイクルを持ち、前記カウンタロード値を制御することによって前記デューティサイクルを変えるよう適合されるマイクロプロセッサ回路を更に含むことを特徴とする請求項１に記載のパルス幅変調回路。
【請求項１３】
カウンタに対応する最小カウント及び最大カウントにおいて適切な出力状態を強制するよう適合される論理回路を更に有し、前記論理回路は、最小のカウントにおいて前記ＰＷＭ出力をハイにさせ、最大のカウントにおいて該ＰＷＭ出力をローにさせるよう適合されていることを特徴とする請求項１に記載のパルス幅変調回路。
【請求項１４】
前記論理回路が、当該回路中のトグルフリップフロップへの選択された入力を駆動して、前記ＰＷＭ出力を強制するよう適合される少なくとも１つのゲートを含むことを特徴とする請求項１３に記載のパルス幅変調回路。
【請求項１５】
前記論理回路が、直接的にポートピンロジックを駆動して、前記ＰＷＭ出力を強制するよう適合されることを特徴とする請求項１３に記載のパルス幅変調回路。
【請求項１６】
クロック信号を持つデジタル回路において使用するために、カウンタロード値に応じてパルス幅変調信号を生成する方法であって、
−  前記カウンタロード値を記憶するステップと、
−  記憶された前記ロード値及び制御信号に応答し、該ロード値又は該ロード値の補数のいずれかである論理回路出力を作成するステップと、
−  前記論理回路出力に応じて、デジタルカウンタを用いて、前記クロック信号に基づいて該論理回路出力に対してカウントをし、前記制御信号に応じて該論理回路出力に対して前記カウントを再開するステップと、
−  前記カウントがオーバフローしきい値に達するのに応じて前記制御信号を作成するステップとを有する方法。
【請求項１７】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件であることを特徴とする請求項１６に記載の方法。
【請求項１８】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件と異なる或るカウントに対応することを特徴とする請求項１６に記載の方法。
【請求項１９】
前記ロード値の補数である論理回路出力を作成するステップが、ビットごとに前記記憶されたロード値及び前記制御信号に応答するＥＸＯＲ関数を行なうステップを含むことを特徴とする請求項１６に記載の方法。
【請求項２０】
前記ロード値の補数である論理回路出力を作成するステップが、ビットごとに前記記憶されたロード値及び前記制御信号に応答するＥＸＯＲ関数を行なうステップを含み、前記ロード値の前記補数は１の補数値であることを特徴とする請求項１６に記載の方法。
【請求項２１】
前記ロード値の前記補数が１の補数値であることを特徴とする請求項１６に記載の方法。
【請求項２２】
前記ロード値の前記補数が２の補数値であることを特徴とする請求項１６に記載の方法。
【請求項２３】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件であることを特徴とする請求項１６に記載の方法。
【請求項２４】
前記オーバフローしきい値が、前記カウンタのオーバフロー条件を予測させるものであることを特徴とする請求項１６に記載の方法。
【請求項２５】
前記ロード値又は該ロード値の補数のいずれかの選択された一方である前記論理回路出力からカウントする場合に、前記カウンタが前記オーバフローしきい値に達することを前記第２論理回路が予測するのに応じて、前記制御信号が作成されることを特徴とする請求項１６に記載の方法。
【請求項２６】
前記カウンタロード値の関数として前記パルス幅変調出力信号のデューティサイクルを規定するステップを更に含むことを特徴とする請求項１６に記載の方法。
【請求項２７】
前記パルス幅変調出力信号が、前記制御信号の関数に対応するデューティサイクルを持ち、前記カウンタロード値を制御することによって前記デューティサイクルを変えるステップを更に含むことを特徴とする請求項１６に記載の方法。
【請求項２８】
カウンタロード値及びクロック信号に応じてパルス幅変調出力信号を生成するパルス幅変調回路であって、
−  前記カウンタロード値を記憶する手段と、
−  記憶された前記ロード値及び制御信号に応答し、該ロード値又は該ロード値の補数のいずれかである論理回路出力を作成する手段と、
−  デジタルカウンタを含み、前記論理回路出力に応答し、前記クロック信号に基づいて該論理回路出力に対してカウントをし、前記制御信号に応じて該論理回路出力に対して前記カウントを再開する手段と、
−  前記カウントがオーバフローしきい値に達するのに応じて前記制御信号を作成する手段とを有するパルス幅変調回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタル信号生成、より特定的にはパルス幅変調システム及び方法に関する。
【０００２】
【従来の技術】
パルス幅変調（ＰＷＭ）は、一般に、多種多様のアプリケーションのためにデジタル信号処理装置において用いられる。幾つかのアプリケーションにおいては、入力刺激（ｉｎｐｕｔ ｓｔｉｍｕｌｕｓ）が、各パルスの幅が入力刺激の値に比例する一定振幅のパルスを持つ信号を生成するために用いられる。入力信号のサンプリングレートは、適用できるサンプリング定理を満たし、それによって十分に正確なＰＷＭ出力信号を供給するのに十分速い。ＰＷＭ回路に対する需要は非常に多いので、（マイクロプロセッサとしても知られている）マイクロコントローラのチップを含む今日のプログラマブルＩＣの多くは、１つ以上の専用の入力／出力チップピンを備える組み込みのＰＷＭ回路を持つ。
【０００３】
より高機能の（例えば、プログラマブルな）ＩＣの一部として、又は別個の論理回路を用いて、ＰＷＭ出力信号は、典型的には、タイマ／カウンタ（「カウンタ」）、比較値保持レジスタ（ｃｏｍｐａｒｅ−ｖａｌｕｅ−ｈｏｌｄｉｎｇ ｒｅｇｉｓｔｅｒ）及び比較器を含む様々なモジュールを用いて生成される。ＰＷＭ出力信号がマイクロプロセッサで用いられる場合には、マイクロプロセッサは、時として、ＰＷＭ出力信号の作成において他のモジュールと直接的にかかわる。しかしながら、プロセッサ命令のために必要とされるサイクルタイムに対して、ＰＷＭ出力信号の生成は長い時間をとり得る。マイクロプロセッサのタスクの１つがＰＷＭ出力信号の生成において手助けするものである場合、マイクロプロセッサ上で走るソフトウェアは、典型的には、カウンタ、比較値保持レジスタ及び比較器の処理と関連する様々な義務を果たすためにリアルタイムに割込みをかけられる。これらの割込みが、頻繁に生じ、典型的にはマイクロプロセッサの処理時間のうちの相対的にかなり多くの時間帯（ｒｅｌａｔｉｖｅｌｙ ｓｉｇｎｉｆｉｃａｎｔ ｗｉｎｄｏｗｓ）を占めることから、チップのマイクロプロセッサのＰＷＭモジュールとのかかわり （ｉｎｖｏｌｖｅｍｅｎｔ）は、マイクロプロセッサの能力において、他の（ＰＷＭ関連ではない）タスクに遅れずについていくのに著しい負担となり得る。
【０００４】
マイクロプロセッサがＰＷＭ関連ではないタスクに遅れずにより良くついていくことが出来るようにマイクロプロセッサをサポートするための努力がなされている。或るアプローチは、専らこれらのＰＷＭ関連のタスクのうちの幾つかを行なう付加的な論理回路をチップの設計に盛り込み、それによって、直接的にこの負担を幾らか相殺するものである。このようなアプリケーションにおいては、カウンタの出力は、時として、ＰＷＭ出力信号によって表わされる入力パルスの所望のパラメータを計算するためにマイクロプロセッサのソフトウェアによって用いられる。別のアプローチは、マイクロプロセッサのクロックスピードは絶えず増大しているので、単に、この増大したクロックスピードを用いて、他のタスクがより素早く完了されるようにし、それによって、マイクロプロセッサが、負担となっているＰＷＭ関連のタスクをサポートするのに利用可能な時間をより多くするものである。残念なことに、多くのチップ及びアプリケーションの場合、チップ面積（ｃｈｉｐ ｒｅａｌ ｅｓｔａｔｅ）及び利用可能な処理時間は、あまり融通の利くものではない。
【０００５】
他のアプリケーションは、典型的には、専用の機能に対して利用可能なチップピンがより少ないチップ内のより汎用性のある機能（又はプログラマブルな柔軟性）、及びより速いデータ処理速度を必要とする。典型的に、専用の機能のために利用可能なチップピンがより少ないコンパクトなチップ設計の場合は、専用回路のために残されているスペースは、たとえあるとしても、ほとんどない。これらの例において、各チップピンに対して多数の機能を供給し、機能が、現場（ｆｉｅｌｄ）でプログラマブルに、又は製造のより遅い段階において規定されることは有利である。
【０００６】
【発明が解決しようとする課題】
本発明は、上記の課題に対処するパルス幅変調（ＰＷＭ）回路、及び必要とされてはいないが、ＰＷＭ機能専用である比較値保持レジスタ及び比較器などの回路なしに実施され得るＰＷＭ技法を目的としている。本発明は、多数の実施例及びアプリケーションにおいて例示され、その幾つかが以下に要約されている。
【０００７】
【課題を解決するための手段】
或る実施例によれば、本発明は、ＰＷＭ信号がカウンタロード値及びクロック信号に応じて生成される技法及び回路装置を目的としている。前記技法は、前記カウンタロード値を記憶する入力レジスタを持つ回路装置の使用を伴う。第１論理回路は、前記ロード値又は該ロード値の補数（ｃｏｍｐｌｅｍｅｎｔ）のいずれかである論理回路出力を供給するために記憶された該ロード値及び制御信号に応答する。更に、ＰＷＭ回路は、前記論理回路出力に対してカウントをし、前記制御信号に応じて前記論理回路出力に対してカウントを再開するカウンタ回路を持つ。第２論理回路は、前記カウンタがオーバフローしきい値に達するのに応じて前記制御信号を作成し、前記ＰＷＭ出力信号は、前記制御信号から又は該制御信号と関連して供給され得る。これらの実施例は、相対的に少量の付加的な回路で既存のタイマ／カウンタにＰＷＭ機能が付加されることを可能にし、上記の背景に記載されている問題を含む問題に対処する。
【０００８】
他の特徴は、上記の制御信号の付加的な使用を目的としている。例えば、或るより特定的な実施例においては、前記制御信号が、ロード値又は該ロード値の補数のいずれかとして論理回路出力を供給するのと関連して第１論理回路にタイミングを供給するのに用いられる。別の特定の実施例においては、前記制御信号は、前記ロード値の補数として前記論理回路出力を供給するのと関連して用いられる１の補数の実施の原因となるために補正がなされるべきか否かを示すために用いられる。
【０００９】
有利なことには、上記の技法（及びその変形例）は、現在多くの市販のチップ中に存在するカウンタによって供給される機能をはずすことなしに実施され得る。少数の付加的な論理ゲートを設けるだけで、現在のカウンタ設計は、該設計の既存の機能又はＰＷＭ機能のいずれかを選択的に（プログラマブルに）供給するよう適合され得る。回路スペース及び／又は利用可能なチップピンに関して関心を持つチップ設計に対して、本発明の実施は極めて有益であり得る。上記の本発明の要約は、本発明の例示される実施例の各々又は全ての実施例を説明することを意図するものではない。以下の図及び詳細な説明は、より特定的にこれらの実施例を例示する。
【００１０】
本発明は、添付図面と関連して後述する本発明の様々な実施例の詳細な説明を考慮してより完全に理解され得る。
【００１１】
本発明は、様々な変形例及び別の形態に適用可能であるが、それらのうちの特定のものを、図面において一例として図示しており、以下に詳細に記載している。しかしながら、本発明を記載されている特定の実施例に限定することを意図したものではないことを理解されたい。逆に、添付されている特許請求の範囲によって規定されているような本発明の趣旨及び範囲内に入る全ての変形例、均等物及び代替例を対象として含めることを意図している。
【００１２】
【発明の実施の形態】
本発明は、パルス幅変調（ＰＷＭ）機能を必要とする又はＰＷＭ機能によって恩恵を受ける様々な異なるタイプのアプリケーションに適用可能であると考えられ、別のカウンタ関連の機能を供給するために容易に再構成され得るＰＷＭ回路アーキテクチャ、又は挑戦的な回路スペースであり、比較値保持レジスタ及び比較器の回路などの従来のＰＷＭ回路を収容することが出来ないＰＷＭ回路アーキテクチャによって恩恵を受けるチップアプリケーションに対してとりわけ有用であることが分かった。必ずしもこのようなアプリケーションに限定されないが、本発明の様々な特徴は、このことに関連する様々な例の記載を介して認識され得る。
【００１３】
或る実施例によれば、本発明は、選択可能な動作モードを持つ再構成可能なＰＷＭ回路アーキテクチャを供給する。このアーキテクチャは、ＰＷＭ出力信号を生成するパルス幅変調回路を含み、このＰＷＭ出力信号は主として自動リロードカウンタのための被制御フィードバック（ｃｏｎｔｒｏｌｌｅｄ ｆｅｅｄｂａｃｋ）を用いて生成される。多くの従来の自動リロードカウンタは、カウンタのオーバフロー条件（ｏｖｅｒｆｌｏｗ ｃｏｎｄｉｔｉｏｎ）の発生を示す出力トグル機能を持つ。或る特定の実施例は、出力トグル機能（即ち「トグル信号」）を用いて、自動リロードタイマ／カウンタ（「カウンタ」）にフィードバックを供給して、タイマカウントを変える。特定的には、タイマカウントは、（例えば、計数機（ｃｏｕｎｔｉｎｇ ｍａｃｈｉｎｅ）をロードするために用いられる）入力保持レジスタと、（例えば、逐次カウントを行なうために計数機によって用いられる）カウントレジスタとの間のリロード・パスにおいて補数にされる。カウンタがオーバフローする場合、入力保持レジスタのコンテンツがカウントレジスタに転送され、カウントはカウントレジスタ中の値から行なわれる。
【００１４】
本発明によれば、ＰＷＭ信号の周期が一定であれば、ＰＷＭ信号は、バイナリ・タイムライン（ｂｉｎａｒｙ ｔｉｍｅｌｉｎｅ）に沿ったハイマーク（ｈｉｇｈ ｍａｒｋ）及びローマークの合計から成っていると見なされ得る。例えば、全周期が２５６タイマカウントである場合には、全周期を規定するタイムラインに沿ったハイの時間（ｈｉｇｈ ｔｉｍｅｓ）及びローの時間（ｌｏｗ ｔｉｍｅｓ）は互いの負の値、即ち、ハイ ＝ −ロー、ロー ＝ −ハイである。これに関連して、ＰＷＭ信号は、トグル信号の一方のフェーズにおいてカウントレジスタに二進数「Ｘ」をロードし、他方のフェーズにおいて二進数「−Ｘ」をロードすることにより達成される。この方法において、一方のフェーズの場合は、計数機は、二進数「Ｘ」から、オーバフロー条件が発生するまでカウントし、オーバフロー条件が発生する時には、トグル信号の他方のフェーズが、カウントのために二進数「−Ｘ」をロードし、それにより、前記一方のフェーズが計数機に再び二進数「Ｘ」からカウントさせるまでカウンタにカウントさせる。
【００１５】
計数機及び該計数機の関連するレジスタの各々が「Ｎ」ビット幅であり、Ｎが３と等しい特定の例を考える。この例は、ＰＷＭ信号を表わすための２Ｎ（又は８）個のバイナリカウント状態（ｂｉｎａｒｙ ｃｏｕｎｔｉｎｇ ｓｔａｔｅｓ）を可能にする。カウンタは、カウントアップ（逆にダウン）をし、入力保持レジスタは、最初に、ＰＷＭサイクルが５−ハイ／３−ローのデューティサイクル比を作成すべきことを示すために二進数「１０１」をロードされると仮定すると、計数機はカウントレジスタから「１０１」を受け取り、カウントはカウントレジスタ中のこのバイナリ値から行なわれる。このカウント中、トグル信号は３サイクルの間同じ状態のままである。カウントがオーバフロー条件に達すると、二進数「−Ｘ」、即ちこの例においては「０１１」をロードするトグル信号の他方のフェーズに遷移する。カウントレジスタに「０１１」をロードすることにより、計数機は、オーバフロー条件への到達に対応する５サイクルの間トグル信号が逆の状態のままであるようにカウントする。計数機が再びオーバフロー条件に達する場合、トグル信号から供給されるフィードバックにより、「１０１」がもう一度カウントレジスタにロードされ、カウントが上記のように行なわれ、それによって、所望の５−ハイ／３−ローのデューティサイクルを確立する。このようなアプローチは、１の補数（ｏｎｅ’ｓ ｃｏｍｐｌｅｍｅｎｔ）が正確には所望のデューティサイクルを作成しない或る状況の場合には近似である。しかしながら、正確なデューティサイクルの達成が重要ではない、及び／又は「Ｎ」が相対的に大きいことが不正確さを相対的に取るに足らなくする多くのアプリケーションとってこれは許容可能であり得る。
【００１６】
本発明の他の実施例は、事実上又は実際に、入力保持レジスタとカウントレジスタとの間のリロード・パスにおいてバイナリ値の（１の補数ではなく）「２の補数」をもたらすロジックを用いて、この近似を克服し、所望のデューティサイクルを正確に供給する。斯くして、二進数「−Ｘ」は、単に二進数「Ｘ」のビットの各々を反転させる代わりに、真の「２の補数」を達成するロジックを用いて作成され、所望のデューティサイクル比は、計数機が入力保持レジスタ中の真の補数にされたバイナリ値（ｔｒｕｅ ｃｏｍｐｌｅｍｅｎｔｅｄ ｂｉｎａｒｙ ｖａｌｕｅ）からサイクルの全数をカウントすることを可能にすることによって達成される。
【００１７】
当業者には、「補数」が、例えば、入力保持レジスタとカウンタレジスタとの間でＮビットの各々に対して２入力ＸＯＲゲート（又は「ＸＮＯＲ」ゲート、ＸＯＲ関数となるいずれか一方）を用いることを含む様々な方法で達成され得ることが分かる。例えば、８０Ｃ５１タイプのマイクロコントローラチップにおいては、８ビットの各々に対してＴＨｘレジスタとＴＬｘレジスタとの間に２入力ＸＯＲゲートが付加される。ＸＯＲへの一方の入力はＴＨｘレジスタの出力であり、他方の入力はトグルピン（ｔｏｇｇｌｅｄｐｉｎ）、Ｔｘである。ＸＯＲゲートの出力は、ＴＬｘレジスタに供給される。斯くして、ＴＬｘレジスタには、トグル出力（ｔｏｇｇｌｅｄ ｏｕｔｐｕｔ） 、Ｔｘの状態に依存して、プログラムされた値「Ｘ」又は「Ｘ」の補数のいずれかがロードされる。
【００１８】
上記に関連して真の「２の補数」を達成するための様々な方法もある。或る方法は、「２の補数」の計算を用いる他のアプリケーションにおいては普通なことであるが、ＸＯＲ関数を供給する回路に加えて又は該回路の代わりにより高度な論理回路を用いるものである。他の例においては、「２の補数」は、入力保持レジスタとカウンタレジスタとの間でＮビットの各々に対して上記のＸＯＲ関数のロジックを使用し、且つカウンタのオーバフロー条件の１サイクル／カウント前にトグル機能をトリガするロジックも使用することにより、達成され得る。これは、例えば、カウンタのパラレル出力の最下位ビット（ＬＳＢ）のパス中にＯＲゲート（又はＮＯＲゲート、各々がＯＲ関数を供給する）を配置して、ＯＲゲートの出力がカウンタのオーバフロー条件（典型的には、Ｎビットの各々が論理の「１」である場合）を検出するために用いられるロジック（即ちＡＮＤゲート）のＬＳＢを駆動する（ｄｒｉｖｅ）ようにすることにより達成され得る。ＯＲゲートは、（典型的にはラッチされる）トグル信号が逆の状態（即ち「−Ｘ」フェーズ）のために作成されている場合にしか用いられない。斯くして、単一のＯＲゲートへの２入力の一方は、カウンタのパラレル出力のＬＳＢであり、他方の入力は、ラッチされたトグル信号であり、ＯＲゲートの出力は、カウンタのオーバフロー条件を検出するのに用いられるＡＮＤゲートのＬＳＢ入力を駆動する。このように、カウンタがオーバフローしきい値に達するのを検出するために単一のＯＲゲートが用いられる。多数の例に照らして、この２の補数のロジックが用いられていない場合、オーバフローしきい値はカウンタのオーバフロー条件と同じであることは分かるであろう。
【００１９】
このようにカウンタのオーバフロー条件を予測することは、少なくとも２つの理由で有利である。第１に、このアプローチは、ほとんど付加的なロジックを必要とせず、例えば、ＯＲゲートがＥＸＯＲロジックに対する著しい付加である。第２に、このアプローチは、Ｎが小さいアプリケーションに対してさえ、極めて正確な２の補数を供給する。
【００２０】
図１は、本発明の上記の特徴のためのアーキテクチャを供給するために用いられ得る様々な例の回路を示している。図１においては、パルス幅変調回路１００は、最初に、入力（リロード）レジスタ１１０に対してロードし、ポート１１２におけるパルス幅変調出力信号のためのデューティサイクルを規定するマイクロプロセッサ（即ち、「ＭＰＵ」で示されているマイクロコントローラ）１０４などのツールを含む。入力レジスタ１１０は、変更されていない形態又は補数にされた形態のいずれかでカウンタ１１６のためにパラレルにロードされた値を記憶し、出力するよう設計される。図１において示されている例においては、トグル・フリップ／フロップロジック１２４が、「−Ｘ」条件／フェーズがあることを示す場合にのみ、ロードされた値は、ロード値の１の補数を作成する補数論理回路（ｃｏｍｐｌｅｍｅｎｔ ｌｏｇｉｃ ｃｉｒｃｕｉｔ）１２０を介して与えられる。上記のように、この１の補数の関数は、ＥＸＯＲゲートを介して達成され得る。「Ｘ」条件／フェーズの間、補数論理回路１２０は、単にロード値をカウンタ１１６へ通過させる。
【００２１】
カウンタ１１６は、クロック信号によって規定される速度で、ロードされた値（即ち論理回路出力）に対して、例えば、該ロードされた値から始めて、カウントし、カウンタがしきいカウントに達すると、このリロードを命じるカウンタのオーバフローロジック１２８に応じて論理回路出力に対してカウントを再開するよう適合されるアップカウンタである。
【００２２】
カウンタのオーバフローロジック１２８は、上記のＯＲゲート機能を用いて、「−Ｘ」条件／フェーズのための真の「２の補数」の達成と関連して上記の補正を供給するよう実施され得る。このように、カウンタのオーバフローロジック１２８は、「Ｘ」条件／フェーズの間に実際のオーバフロー条件がある場合、及び「−Ｘ」条件／フェーズの間に実際のオーバフロー条件が予測（ａｎｔｉｃｉｐａｔｅ）される場合にカウンタ１１６にリロードするよう命じる。
【００２３】
また、本発明によれば、上記の技法の変形例は、ロード機能、補数機能及びカウント機能の各々を実施するのにソフトウェアを用いるマイクロプロセッサにおいて行なわれ得る。或るこのような特定の実施例においては、タイマフラグ割込みが、オーバフロー条件の発生に応じて用いられ、これに応じて、２つのあり得る値（変更されていない値又は補数にされた値）のうちのどちらが次のカウントサイクルに対してロードされる必要があるかを決定するために出力ピンの状態がチェックされる。
【００２４】
本発明のより特定的な実施例においては、カウントが００００ ００００又は１１１１ １１１１のいずれかである場合に適切な出力状態を強制し、事実上、零のカウントに対してはＰＷＭ出力をハイにさせ、最大のカウントに対してはＰＷＭ出力をローにさせる１つ以上の論理回路が付加される。これは、回路（例えばトグルフリップフロップ）へのプリセット入力又はクリア入力のいずれかを駆動する、又は適切な出力をもたらすために直接的にポートピンロジックを駆動するための単純なゲートを用いて実施され得る。これは、一般に、零のカウントにおいてはＰＷＭ出力をハイにさせ、最大のカウントにおいてはＰＷＭ出力をローにさせることにより対処されている、あり得る最小カウント及びあり得る最大カウント（例えば、８ビットカウンタの場合は００００ ００００及び１１１１ １１１１）と関連する問題に対処するのにとりわけ有用である。この点について、図１は１つの実施例を示しており、この実施例においては、最小（例えば全零の）検出器１３０は、ＰＷＭ出力をハイにさせるためにトグル・フリップ／フロップロジック１２４にプリセット信号１３２を送るよう適合され、最大（例えば全１の）検出器１４０は、ＰＷＭ出力をローにさせるためにトグル・フリップ／フロップロジック１２４にクリア信号１４２を送るよう適合される。
【００２５】
上記の様々な実施例は、一例として記載されているに過ぎず、本発明を限定するよう解釈されるべきではない。上記の記載及び図表に基づいて、当業者は、本明細書に図示され、記載されている典型的な実施例及びアプリケーションに厳密には従わない本発明に対する様々な修正及び変形がなされ得ることを容易に認識するであろう。このような修正例及び変形例は、特許請求の範囲に記載の本発明の本当の趣旨及び範囲から外れない。
【図面の簡単な説明】
【図１】本発明の様々な特徴を実施し、実行するのに用いられ得る様々な例示回路を図示するブロック図である。
【図１】
2004524761.tif 000003
【国際公開パンフレット】
2004524761.tif 000004
2004524761.tif 000005
2004524761.tif 000006
2004524761.tif 000007
2004524761.tif 000008
2004524761.tif 000009
2004524761.tif 000010
2004524761.tif 000011
2004524761.tif 000012
2004524761.tif 000013
2004524761.tif 000014
2004524761.tif 000015
2004524761.tif 000016
2004524761.tif 000017
【国際調査報告】
2004524761.tif 000018
2004524761.tif 000019