(57)【特許請求の範囲】
【請求項１】
波形データを格納する第１のレジスタを有し、該第１のレジスタの該波形データに基づいてパルス波形信号を生成するパルス波形信号生成ユニットと、
波形データを格納する第２のレジスタを有し、バスに接続されバスからの制御信号によって制御される制御ユニットと、
前記パルス波形を変更するタイミングを指示し、該制御ユニットに信号線で接続されるタイマーと
を含み、
該制御ユニットはバスからの該制御信号を受け取ると、該バスから更新データを受け取り、該第２のレジスタに書込み、
また、該制御ユニットは該信号線を介して該タイマーから供給される信号を受け取ると、該第２のレジスタの内容を該第１のレジスタに書き込み、
該第２のレジスタは、該第１のレジスタに対する複数回の波形データ更新に対応して複数個の波形データを格納するレジスタキューからなることを特徴とするパルス信号生成装置。
【請求項２】
該レジスタキューは各々アドレスが割り当てられた複数のレジスタを含むレジスタ群であることを特徴とする請求項１記載のパルス信号生成装置。
【請求項３】
該第１のレジスタは該バスに接続され該バスから直接供給された波形データを格納可能であることを特徴とする請求項１記載のパルス信号生成装置。
【請求項４】
該第１のレジスタはパルス波形の周期及びデューティに関するデータを格納することを特徴とする請求項１記載のパルス信号生成装置。
【請求項５】
ＣＰＵと、
バスと、
波形データを格納する第１のレジスタを有し、該第１のレジスタの該波形データに基づいてパルス波形信号を生成するパルス波形信号生成ユニットと、
波形データを格納する第２のレジスタを有し、該バスに接続され該ＣＰＵからの制御信号によって制御される制御ユニットと、
前記パルス波形を変更するタイミングを指示し、該制御ユニットに信号線で接続されるタイマーと
を含み、
該制御ユニットは該バスを介して該ＣＰＵからの該制御信号を受け取ると、該バスから更新データを受け取り、該第２のレジスタに書込み、
また、該制御ユニットは該信号線を介して該タイマーから供給される信号を受け取ると、該第２のレジスタの内容を該第１のレジスタに書き込み、
該信号線は該ＣＰＵに割り込み信号線として接続され、該割り込み信号線からの割り込み信号に応じて該ＣＰＵは該制御ユニットを制御して該第２のレジスタに波形データを格納させることを特徴とするパルス信号生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般にＰＷＭ（Pulse Width Modulation）動作によりパルス信号を出力するＰＷＭ装置に関し、詳しくは、所定のタイミングでパルス波形を変更するＰＷＭ装置に関する。
【従来の技術】
ＰＷＭ（Pulse Width Modulation）装置は、設定された周期及びデューティ比に従ってパルス信号を出力する装置である。ＰＷＭ装置から出力されるパルス信号は、例えば、撮像機器のオートフォーカス制御のためのモータ回転制御等に用いられたりする。通常、ＣＰＵ（Central Processing Unit）からＰＷＭ装置にアクセスして、周期及びデューティ比を書き換えることで、出力するパルス信号の波形を制御することが出来る。
【０００２】
【発明が解決しようとする課題】
タイマ等の外部要因に基づいてパルス信号波形を変更したい場合には、まずタイマ等からＣＰＵに割り込みを発生させる。これに応じて、ＣＰＵは割り込みルーチンを実行し、バスを介してＰＷＭ装置のＰＷＭ波形データを書き換える。このようにしてバスを介してＰＷＭ波形データが書き換えられると、ＰＷＭ装置の発生するパルス信号の波形が変化する。
【０００３】
しかしながら、ＣＰＵが優先順位の高い他の処理や他の割り込み処理を実行している場合には、タイマ等からの割り込みに対する処理が遅れ、ＰＷＭ波形データ書き換え時間にばらつきが生じてしまう。この結果、所望のタイミングでＰＷＭ波形を変化させることが出来なくなってしまう。
【０００４】
以上を鑑みて、本発明は、所望のタイミングでＰＷＭ波形を変化させることが可能なＰＷＭ装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明のパルス信号生成装置は、波形データを格納する第１のレジスタを有し、該第１のレジスタの該波形データに基づいてパルス波形信号を生成するパルス波形信号生成ユニットと、波形データを格納する第２のレジスタを有し、バスに接続されバスからの制御信号によって制御される制御ユニットと、前記パルス波形を変更するタイミングを指示し、該制御ユニットに信号線で接続されるタイマーとを含み、該制御ユニットはバスからの該制御信号を受け取ると、該バスから更新データを受け取り、該第２のレジスタに書込み、また、該制御ユニットは該信号線を介して該タイマーから供給される信号を受け取ると、該第２のレジスタの内容を該第１のレジスタに書き込み、該第２のレジスタは、該第１のレジスタに対する複数回の波形データ更新に対応して複数個の波形データを格納するレジスタキューからなることを特徴とする。
【０００６】
上記パルス信号生成装置においては、外部要因によってパルス信号波形を変更したい場合、バスとは独立に制御ユニットに直接に接続される信号線を介して外部からの信号を供給し、これに応じて制御ユニットは、レジスタに格納されたデューティ及び周期等の波形データを書き換えることで、出力パルス信号のＰＷＭ波形を変化させる。これによって、外部要因が指定する所望のタイミングで、ＰＷＭ波形を変化させることが可能になる。
【０００８】
上記パルス信号生成装置においては、バスを介しての制御、例えばＣＰＵによる制御に基づいて、第２のレジスタに波形データを書き込むことが出来る。従って、波形データ更新毎或いは波形データ更新後に新規データを第２のレジスタに格納することで、次の波形更新に備えることが出来る。
【００１０】
上記パルス信号生成装置においては、第２のレジスタをレジスタキューとすることで、バスからの制御により第２のレジスタに格納する波形データは、必ずしも次回の更新用のデータではなく、例えば次回の更に次である２回後の更新、或いは３回後の更新等に対するデータとすることが出来る。従って、将来に渡って必要となるデータを予め計算可能である場合などには、例えば１０回分の更新に対する波形データを予め計算し、レジスタキューに１０回分の更新に対するデータを纏めて格納するようにしても良い。
【００１１】
また上記発明においては、該レジスタキューは各々アドレスが割り当てられた複数のレジスタを含むレジスタ群であることを特徴とする。
【００１２】
上記パルス信号生成装置においては、例えばアドレス指定して特定のレジスタに対するデータ書き込みが可能であるので、例えば１０回分のデータを書き込んだ後に、状況の変化によりデータ変更が必要になった場合でも、例えば６回後から１０回後までのデータをアドレス指定して書き換えることなどが可能となる。
【００１３】
また上記発明においては、該第１のレジスタは該バスに接続され該バスから直接供給された波形データを格納可能であることを特徴とする。
【００１４】
上記パルス信号生成装置においては、第１のレジスタにバスからデータを書き込み可能とすることで、従来のＰＷＭ装置と同様な制御の下で同様に動作させることも可能である。
【００１５】
また本発明のパルス信号生成装置は、ＣＰＵと、バスと、波形データを格納する第１のレジスタを有し、該第１のレジスタの該波形データに基づいてパルス波形信号を生成するパルス波形信号生成ユニットと、波形データを格納する第２のレジスタを有し、該バスに接続され該ＣＰＵからの制御信号によって制御される制御ユニットと、前記パルス波形を変更するタイミングを指示し、該制御ユニットに信号線で接続されるタイマーとを含み、該制御ユニットは該バスを介して該ＣＰＵからの該制御信号を受け取ると、該バスから更新データを受け取り、該第２のレジスタに書込み、また、該制御ユニットは該信号線を介して該タイマーから供給される信号を受け取ると、該第２のレジスタの内容を該第１のレジスタに書き込み、該信号線は該ＣＰＵに割り込み信号線として接続され、該割り込み信号線からの割り込み信号に応じて該ＣＰＵは該制御ユニットを制御して該第２のレジスタに波形データを格納させることを特徴とする。
【００１６】
上記パルス信号生成装置においては、ＣＰＵ以外の外部要因によってパルス信号波形を変更したい場合、バスとは独立に制御ユニットに直接に接続される信号線を介して外部からの信号を供給し、これに応じて制御ユニットは、レジスタに格納されたデューティ及び周期等の波形データを書き換えることで、出力パルス信号のＰＷＭ波形を変化させる。これによって、外部要因が指定する所望のタイミングで、ＰＷＭ波形を変化させることが可能になる。
【００１７】
【発明の実施の形態】
以下に、本発明の実施例を、添付の図面を用いて詳細に説明する。
【００１８】
図１は、本発明によるＰＷＭシステムの概略構成を示す構成図である。
【００１９】
図１のシステムは、本発明によるＰＷＭ装置１０、ＣＰＵ１１、タイマ１２、命令用メモリ１３、及びＣＰＵバス１４を含む。ＰＷＭ装置１０、ＣＰＵ１１、タイマ１２、及び命令用メモリ１３は、ＣＰＵバス１４によって互いに接続されている。
【００２０】
ＣＰＵ１１は、命令用メモリ１３に格納されている命令列であるプログラムに基づいて動作する。タイマ１２は、ＣＰＵバス１４を介して例えばＣＰＵ１１によって制御され、クロックをカウントする等の動作により時間を計時する。所定サイクルの終了時のように所定の時間の到来を検出すると、タイマ１２は、割り込み信号を生成する。この割り込み信号は、割り込み信号線ｉｎｔ１を介して、ＣＰＵ１１に供給されると共に、割り込み信号線ｉｎｔ２を介して、ＰＷＭ装置１０に供給される。
【００２１】
ＰＷＭ装置１０は、ＣＰＵバス１４に接続されて例えばＣＰＵ１１によって制御されると共に、割り込み信号線ｉｎｔ２を介してタイマ１２からの割り込み信号を受け取る。ＰＷＭ装置１０は、従来のＰＷＭ装置と殆ど同様の構成であるＰＷＭユニット２２と、レジスタ２３及び２４等からなる制御ユニット２１とを含む。制御ユニット２１は、割り込み信号線ｉｎｔ２を介してタイマ１２からの割り込み信号を受け取ると、レジスタ２３及び２４に格納されたデューティ設定値及び周期設定値をＰＷＭユニット２２に供給する。ＰＷＭユニット２２は、供給されたデューティ設定値及び周期設定値を内部レジスタに格納し、新たにな設定値に基づいてパルス信号を出力することで、それまでのＰＷＭ波形から新たなＰＷＭ波形に出力パルス信号を変更する。
【００２２】
割り込み信号線ｉｎｔ１を介してタイマ１２からの割り込み信号を受け取ると、ＣＰＵ１１は、計算に基づいて或いはメモリ等から読み出すなどして、例えば次のＰＷＭ波形に対応するデューティ及び周期を得る。ＣＰＵ１１は、このデューティ及び周期を、ＣＰＵバス１４を介してＰＷＭ装置１０に送付する。送付されたデューティ及び周期は、制御ユニット２１内のレジスタ２３及び２４に、例えば次のＰＷＭ波形に対応するデューティ及び周期として格納される。このタイマ１２からＣＰＵ１１への割り込みに応答したレジスタ２３及び２４に対するデューティ及び周期の書き込みは、例えば次の割り込みに備えたデータ書き込みである。即ち、タイマ１２からＰＷＭ装置１０への今回の割り込みに応じて、レジスタ２３及び２４からＰＷＭユニット２２にデューティ設定値及び周期設定値を供給した後に、タイマ１２からＣＰＵ１１への割り込みに応じて、次回のタイマ割り込み時に使用するデータをレジスタ２３及び２４に格納する。
【００２３】
なおレジスタ２３及び２４の各々を、ＦＩＦＯ或いはレジスタ群として構成してもよい。この場合、割り込み信号線ｉｎｔ１を介したタイマ１２からの割り込み信号に応じて、ＣＰＵ１１が供給するデューティ及び周期は、必ずしも次回の割り込み用のデータではなく、例えば次回の更に次である２回後の割り込み、或いは３回後の割り込み等に対するデータであっても構わない。即ち、レジスタ２３及び２４は各々、単一の値を格納するレジスタではなく、次回のデータ、２回後のデータ、３回後のデータ等のデータ列を格納するレジスタキューとして機能することになる。
【００２４】
またＣＰＵ１１側で、次回の割り込みが発生する前に確実に次回用のデータを生成してＰＷＭ装置１０にデータ供給することが可能であるならば、必ずしも、割り込み信号線ｉｎｔ１を介したタイマ１２からの割り込み信号に応じてデータ書き込みを実行する必要はない。またレジスタキューを使用する場合に、ＣＰＵ１１が将来に渡って必要となるデータを予め計算可能である場合などには、例えば１０回分の割り込みに対するデータを予め計算し、これらのデータをＣＰＵバス１４を介してＰＷＭ装置１０に供給することで、レジスタキューに１０回分の割り込みに対するデータを纏めて格納するようにしても良い。
【００２５】
本発明においては、上述のように、タイマ１２等の外部要因によってパルス信号波形を変更したい場合、タイマ１２からの割り込み信号を、ＰＷＭ装置１０に直接に供給する。これに応じてＰＷＭ装置１０は、レジスタに格納されたデューティ及び周期等の設定値を、実際にパルス信号を発生するＰＷＭユニット２２に供給することで、出力パルス信号のＰＷＭ波形を変化させる。これによって、タイマ１２等の外部要因が指定する所望のタイミングで、ＰＷＭ波形を変化させることが可能になる。またＰＷＭ装置１０内のレジスタに格納されるデューティ及び周期等の設定は、例えばタイマ１２からの割り込み信号に応じて、ＣＰＵ１１がＣＰＵバス１４を介してＰＷＭ装置１０にデータを供給することで行われる。データ設定は次回の割り込みに対して順次行うように構成してよく、或いは、複数回分のデータを予め設定するように構成しても良い。
【００２６】
図２は、本発明によるＰＷＭ装置１０の第１の実施例を示す構成図である。図２において、図１と同一の構成要素は同一の記号で参照され、その説明は省略される。
【００２７】
図２に示されるように制御ユニット２１は、デューティ設定レジスタ２３及び周期設定レジスタ２４を含む。また更に制御ユニット２１は、セレクタ＆コントローラ３１を含む。デューティ設定レジスタ２３及び周期設定レジスタ２４は、ＣＰＵバス１４に直接接続されており、ＣＰＵバス１４を介してＣＰＵ１１（図１）からデューティ及び周期の各データが供給され格納される。なおＣＰＵバス１４は、アドレスバス、データバス、及びチップセレクトやリードライト信号等を供給する制御信号バスを含む。
【００２８】
セレクタ＆コントローラ３１は、制御信号バスから制御信号を受け取り、受け取った制御信号に従って、デューティ設定レジスタ２３及び周期設定レジスタ２４に対するデータ書込み・データ読み出しを制御する。またセレクタ＆コントローラ３１には、タイマ１２からの割り込み入力が供給され、これに従って、デューティ設定レジスタ２３及び周期設定レジスタ２４からＰＷＭユニット２２へのデータ転送を制御する。
【００２９】
ＰＷＭユニット２２は、デューティ設定レジスタ３２、周期設定レジスタ３３、及びＰＷＭ制御＆カウンタ３４を含む。デューティ設定レジスタ３２及び周期設定レジスタ３３は、ＣＰＵバス１４に直接接続される。ＰＷＭ制御＆カウンタ３４は、パルス波形信号生成ユニットとして動作して、デューティ設定レジスタ３２及び周期設定レジスタ３３に格納されたデータに従ってパルス信号を生成し、装置外部に出力信号として供給する。ＰＷＭユニット２２は、従来から使用されているＰＷＭ装置と殆ど同様の構成であり、ＣＰＵ１１からＣＰＵバス１４を介して、デューティ設定レジスタ３２及び周期設定レジスタ３３にデータを設定することで、従来同様にＣＰＵからの制御によってパルス信号出力のＰＷＭ波形を変化させることが可能となっている。但し本発明においては、セレクタ＆コントローラ３１からデューティ設定レジスタ３２に対して、データ書き込みが可能な構成とされている。
【００３０】
図３は、セレクタ＆コントローラ３１の構成の一例を示す構成図である。
【００３１】
セレクタ＆コントローラ３１は、アドレスデコーダ４１、リード信号生成回路４２、リードライトタイミング生成回路４３、ライト信号生成回路４４、書き込み信号セレクタ４５、立ち上がりエッジ検出回路４６、書き込みステート作成回路４７、及びデータセレクタ４８を含む。
【００３２】
図４は、デューティ設定レジスタ２３及び周期設定レジスタ２４に対してデータ読み書きする場合に図３のセレクタ＆コントローラ３１が実行する動作を説明するためのタイミングチャートである。図２、図３、及び図４を参照して、レジスタキューに対するデータ読み書き動作を説明する。
【００３３】
ＣＰＵ１１からＣＰＵバス１４を介して、各種制御信号が制御ユニット２１のセレクタ＆コントローラ３１に供給される。これらの制御信号は、チップセレクト信号ＣＳ、読み出し信号ＲＤＸ、書き込み信号ＷＲＸ、リセット信号ＲＳＴ、及びクロック信号ＣＬＫを含む。チップセレクト信号ＣＳはアドレスデコーダ４１に供給され、読み出し信号ＲＤＸ、書き込み信号ＷＲＸ、リセット信号ＲＳＴ、及びクロック信号ＣＬＫは、リードライトタイミング生成回路４３に供給される。またチップセレクト信号ＣＳと同期して、ＣＰＵバス１４のアドレスバスにアドレス信号を送出し、このアドレス信号がアドレスデコーダ４１に供給される。これらの信号のタイミング関係を、図４（ａ）乃至（ｆ）に示す。
【００３４】
アドレスデコーダ４１は、チップセレクト信号ＣＳと共にアドレス信号を受け取り、入力アドレスをデコードする。アドレスデコーダ４１は、チップセレクト信号ＣＳによって当該チップ選択が示されると共に、入力アドレスが当該ＰＷＭ装置１０のレジスタのアドレスにマッチする場合に、図４（ｆ）に示されるアドレスマッチ信号を生成する。このアドレスマッチ信号は、リード信号生成回路４２及びライト信号生成回路４４に供給される。
【００３５】
リードライトタイミング生成回路４３は、クロック信号ＣＬＫに基づいて、リード動作のタイミングを指定するリードタイミング信号を生成すると共に、ライト動作のタイミングを指定するライトタイミング信号を生成する。リードタイミング信号はリード信号生成回路４２に供給され、ライトタイミング信号はライト信号生成回路４４に供給される。
【００３６】
リード信号生成回路４２は、読み出し信号ＲＤＸが読み出しを指定すると共にアドレスマッチ信号が活性化されている場合に、リードタイミング信号が指定するタイミングで読み出し信号ＲＤ（図４（ｉ））を生成する。またライト信号生成回路４４は、書き込み信号ＷＲＸが書き込みを指定すると共にアドレスマッチ信号が活性化されている場合に、ライトタイミング信号が示すタイミングで書き込み信号ＷＲ（図４（ｊ））を生成する。これらの読み出し信号ＲＤ及び書き込み信号ＷＲが、デューティ設定レジスタ２３及び周期設定レジスタ２４に供給されて、レジスタに対する読み出し及び書き込み動作を指示する。読み出し信号ＲＤによって読み出しが指示されると、指定されたアドレスのレジスタからデータが読み出され、ＣＰＵバス１４のデータバスにデータが出力される。また書き込み信号ＷＲによって書き込みが指示されると、ＣＰＵバス１４のデータバスに供給されたデータが、レジスタキューの指定されたアドレスに書き込まれる。データバスのデータ信号を図４（ｇ）に示す。
【００３７】
上記の動作によって、ＣＰＵ１１は、制御ユニット２１のデューティ設定レジスタ２３及び周期設定レジスタ２４に対するデータ書き込み動作及びデータ読み出し動作を実行することができる。また同様にして、ＰＷＭユニット２２のデューティ設定レジスタ３２及び周期設定レジスタ３３に対して、ＣＰＵ１１からデータ読み書き動作を実行することが出来る。
【００３８】
図５は、タイマ１２が割り込み信号を生成した場合にセレクタ＆コントローラ３１が実行する動作を説明するためのタイミングチャートである。図２、図３、及び図５を参照して、パルス信号の波形を変更する動作について説明する。
【００３９】
タイマ１２からの割り込み信号が、制御ユニット２１のセレクタ＆コントローラ３１に到来する。セレクタ＆コントローラ３１に供給された割り込み信号は、立ち上がりエッジ検出回路４６に入力される。立ち上がりエッジ検出回路４６は、割り込み信号の立ち上がりエッジを検出して、立ち上がりエッジパルスＥＧＰを生成する。立ち上がりエッジパルスＥＧＰは、書き込み信号セレクタ４５及び書き込みステート作成回路４７に供給される。書き込み信号セレクタ４５は、立ち上がりエッジパルスＥＧＰに応答して、周期設定用及びデューティ設定用それぞれに対して書き込み信号ＰＷＭＷＲを生成し、ＰＷＭユニット２２に供給する。また書き込みステート作成回路４７は、立ち上がりエッジパルスＥＧＰに応答して内部ステートが変化し、これに対応してセレクト信号ＳＬＴを生成する。セレクト信号ＳＬＴは、データセレクタ４８に供給される。以上説明した割り込み信号、立ち上がりエッジパルスＥＧＰ、書き込みステート作成回路４７の内部ステート、周期設定用とデューティ設定用それぞれに対する書き込み信号ＰＷＭＷＲ、及びセレクト信号ＳＬＴを、図５（ａ）乃至（ｆ）に示す。
【００４０】
データセレクタ４８は、セレクト信号ＳＬＴが示すレジスタからのデータを選択する。例えば、セレクト信号ＳＬＴがＨＩＧＨの時には周期設定レジスタ２４からのデータを選択し、セレクト信号ＳＬＴがＬＯＷの時にはデューティ設定レジスタ２３からのデータを選択する。セレクト信号ＳＬＴは図５（ｆ）に示されており、周期設定レジスタ２４からのデータを選択する場合はＨＩＧＨであり、デューティ設定レジスタ２３からのデータを選択する場合はＬＯＷである。データセレクタ４８が周期設定レジスタ２４からのデータを選択すると、図５（ｉ）に示されるＰＷＭユニット２２へ供給される書き込みデータＷＲＤＡＴＡは、周期設定レジスタ２４の第１番目のデータ（周期＃００）となる。またデータセレクタ４８がデューティ設定レジスタ２３からのデータを選択すると、図５（ｉ）に示されるＰＷＭユニット２２へ供給される書き込みデータＷＲＤＡＴＡは、デューティ設定レジスタ２３の第１番目のデータ（ＤＵＴＹ＃００）となる。
【００４１】
周期設定レジスタ２４の第１番目のデータ（周期＃００）である書き込みデータＷＲＤＡＴＡは、周期設定用の書き込み信号ＰＷＭＷＲ（図５（ｄ））によって周期設定レジスタ３３に格納される。またデューティ設定レジスタ２３の第１番目のデータ（ＤＵＴＹ＃００）である書き込みデータＷＲＤＡＴＡは、デューティ設定用の書き込み信号ＰＷＭＷＲ（図５（ｅ））によってデューティ設定レジスタ３２に格納される。なお図２の構成では、周期に関する書き込みデータを一度デューティ設定レジスタ３２に格納して、その後このデータをデューティ設定レジスタ３２から周期設定レジスタ３３に転送する構成となっている。
【００４２】
図５（ｇ）に示されるように、周期設定レジスタ２４のデータは、第１番目のデータ（＃００）が読み出された後は、第２番目のデータ（＃０１）に書き換えられる。この周期設定レジスタキュー２４に対するデータ書き込みは、図４を参照して説明した書き込み動作に従って実行される。また同様に、図５（ｈ）に示されるように、デューティ設定レジスタ２３のデータは、第１番目のデータ（＃００）が読み出された後は、第２番目のデータ（＃０１）に書き換えられる。このデューティ設定レジスタキュー２３に対するデータ書き込みは、図４を参照して説明した書き込み動作に従って実行される。
【００４３】
このようにして、次回の割り込み信号に対する準備が整えられる。即ち、次回の割り込み信号が供給されると、周期設定レジスタ２４及びデューティ設定レジスタ２３それぞれの第２番目のデータ（＃０１）が、ＰＷＭユニット２２へ供給されることになる。
【００４４】
以上のように、外部要因によってパルス信号波形を変更したい場合、タイマ１２からの割り込み信号をＰＷＭ装置１０に直接に供給し、これに応じてＰＷＭ装置１０は、レジスタに格納されたデューティ及び周期等の設定値を、実際にパルス信号を発生するＰＷＭユニット２２に供給することで、出力パルス信号のＰＷＭ波形を変化させる。これによって、タイマ１２等の外部要因が指定する所望のタイミングで、ＰＷＭ波形を変化させることが可能になる。またＰＷＭ装置１０内のレジスタに格納されるデューティ及び周期等の設定は、例えばタイマ１２からの割り込み信号に応じて、ＣＰＵ１１がＣＰＵバス１４を介してＰＷＭ装置１０にデータを供給することで行われる。上記第１の実施例では、データ設定は次回の割り込みに対して順次行うように構成される。
【００４５】
図６は、本発明によるＰＷＭ装置１０の第２の実施例を示す構成図である。図６において、図２と同一の構成要素は同一の記号で参照され、その説明は省略される。
【００４６】
第１の実施例では、ＣＰＵからのデータ設定は、次回の割り込みに対するデータを設定する処理であったが、第２の実施例では、複数回分のデータを予め設定するように構成される。このために、図６に示される第２の実施例の構成においては、デューティ設定レジスタ２３及び周期設定レジスタ２４が各々デューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａで置き換えられている。
【００４７】
デューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａは、例えばＦＩＦＯ（First In First Out）のように先に入力したデータが、入力順に順次読み出されるレジスタであってよい。この場合、例えばＣＰＵ１１に他の処理のロードが無い場合などに、次回の割り込み用のデータだけではなく、例えば次回の更に次である２回後の割り込み、或いは３回後の割り込み等に対するデータを計算して、順次纏めてデューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａに書き込んでおくことが出来る。
【００４８】
また或いはデューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａは、それぞれのレジスタにアドレスが割り振られたレジスタ群から構成されて良い。この場合もＦＩＦＯの構成の場合と同様に、ＣＰＵ１１に他の処理のロードが無いときなどに、次回の割り込み用のデータだけではなく、例えば次回の更に次である２回後の割り込み、或いは３回後の割り込み等に対するデータを計算して、順次纏めてデューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａに書き込んでおくことが出来る。またＦＩＦＯの構成の場合とは異なり、アドレス指定してのデータ書き込みが可能であるので、例えば１０回分のデータを書き込んだ後に、状況の変化によりデータ変更が必要になった場合でも、例えば６回後から１０回後までのデータをアドレス指定して書き換えることなどが可能である。
【００４９】
なおこの場合、セレクタ＆コントローラ３１がデューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４ＡからＰＷＭユニット２２に供給するデータは、ＦＩＦＯ構成の場合にはＦＩＦＯから順次出力されるデータでよい。レジスタ群構成の場合には、カウンタ等によって次回のデータを格納したアドレスを指示する手段を設けて、このアドレス指示手段が指定するレジスタのデータを、順次デューティ設定レジスタキュー２３Ａ及び周期設定レジスタキュー２４Ａに供給するようにすればよい。
【００５０】
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
【００５１】
例えば、パルス信号波形を変更する契機となる外部要因としてタイマを用いた構成を説明したが、この外部要因はタイマに限られず、例えば入出力インターフェースから供給される割り込み信号や特定の状態を検出したときにシステム外部から入力される信号等でよく、また周期的でなく任意のタイミングで発生する契機であって構わない。
【発明の効果】
本発明においては、タイマ等の外部要因によってパルス信号波形を変更したい場合、タイマ等からの割り込み信号を、ＰＷＭ装置に直接に供給する。これに応じてＰＷＭ装置は、レジスタに格納されたデューティ及び周期等の設定値を、実際にパルス信号を発生するＰＷＭユニットに供給することで、出力パルス信号のＰＷＭ波形を変化させる。これによって、タイマ等の外部要因が指定する所望のタイミングで、ＰＷＭ波形を変化させることが可能になる。
【００５２】
またＰＷＭ装置内のレジスタには次回の割り込みに対するデータを割り込み毎に順次設定してもよく、或いは複数回分のデータを予め設定するように構成しても良い。将来に渡って必要となるデータを予め計算可能である場合には、複数回の割り込みに対する波形データを予め計算し、レジスタキューに波形データを纏めて格納することが出来る。この場合には、ＣＰＵの計算資源を効率的に使用することが可能になる。
【図面の簡単な説明】
【図１】本発明によるＰＷＭシステムの概略構成を示す構成図である。
【図２】本発明によるＰＷＭ装置の第１の実施例を示す構成図である。
【図３】セレクタ＆コントローラの構成の一例を示す構成図である。
【図４】デューティ設定レジスタ及び周期設定レジスタに対してデータ読み書きする場合にセレクタ＆コントローラが実行する動作を説明するためのタイミングチャートである。
【図５】タイマが割り込み信号を生成した場合にセレクタ＆コントローラが実行する動作を説明するためのタイミングチャートである。
【図６】本発明によるＰＷＭ装置の第２の実施例を示す構成図である。
【符号の説明】
１０  ＰＷＭ装置
１１  ＣＰＵ
１２  タイマ
１３  命令用メモリ
１４  ＣＰＵバス
２１  制御ユニット
２２  ＰＷＭユニット
２３  デューティ設定レジスタ
２４  周期設定レジスタ
３１  セレクタ＆コントローラ
３２  デューティ設定レジスタ
３３  周期設定レジスタ
３４  ＰＷＭ制御＆カウンタ
【図１】
0003987277.tif 000002
【図２】
0003987277.tif 000003
【図３】
0003987277.tif 000004
【図４】
0003987277.tif 000005
【図５】
0003987277.tif 000006
【図６】
0003987277.tif 000007