(57)【要約】【課題】本発明の目的は、デッドタイム生成に遅延カウンタを採用してデューティ値の変更に遅れることなくＰＷＭ波形信号を発生すること、遅延カウンタを利用したデッドタイム生成方法でもフルデューティのＰＷＭ波形信号を発生する。【解決手段】３つの単方向カウンタ、第１カウンタ（２２）、第２カウンタ（２３）および第３カウンタ（３２）を使用し、第１カウンタ（２２）および第２カウンタ（２３）の計数信号で三角搬送波を発生させ、それらの計数値と目標デューティ値を比較して、ハイサイドＰＷＭ信号ＧＨとローサイドＰＷＭ信号ＧＬを発生または更新するときに、第３カウンタ（３２）を使用してデッドタイムを生成させる構成のパルス幅変調（ＰＷＭ）波形発生装置により、目標デューティ値の変更に即応したデッドタイムを有するフルデューティ出力可能な相補型ＰＷＭ波形信号を発生する。【選択図】図１
2010068415.tif 000002
【特許請求の範囲】
【請求項１】
インクリメント動作を行い、それに対応する計数値を出力する第１カウンタと、デクリメント動作を行い、それに対応する計数値を出力する第２カウンタとを有し、前記第１カウンタの計数値および前記第２カウンタの計数値により三角搬送波を形成する三角搬送波制御部と、インクリメントまたはデクリメント動作を行い、所定のデッドタイムを生成する第３カウンタを有し、外部の制御装置から供給される目標デューティ値と、前記三角波搬送制御部から供給される前記第１カウンタの計数値および前記第２カウンタの計数値とをそれぞれ比較し、それらの比較結果に基づいて、前記第３カウンタによりデッドタイムを生成するとともに、相補型パルス幅変調波形信号を形成するハイサイドＰＷＭ信号およびローサイドＰＷＭ信号を発生し出力するＰＷＭ波形出力制御部とを備えるパルス幅変調波形発生装置において、
前記パルス幅変調波形発生装置は、「前記ハイサイドＰＷＭ信号がオンであり、前記ローサイドＰＷＭ信号がオフである」状態から「前記ハイサイドＰＷＭ信号がオフであり、前記ローサイドＰＷＭ信号がオンである」状態へ変更するときに設ける「前記ハイサイドＰＷＭ信号がオフであり、前記ローサイドＰＷＭ信号がオフである」状態の時間に対応する第１デッドタイム値、「前記ハイサイドＰＷＭ信号がオフであり、前記ローサイドＰＷＭ信号がオンである」状態から「前記ハイサイドＰＷＭ信号がオンであり、前記ローサイドＰＷＭ信号がオフである」状態へ変更するときに設ける「前記ハイサイドＰＷＭ信号がオフであり、前記ローサイドＰＷＭ信号がオフである」状態の時間に対応する第２デッドタイム値、三角搬送波の周期をＴ、前記第１デッドタイム値をｔｄ１、第２デッドタイム値をｔｄ２としたとき、（Ｔ＋ｔｄ１＋ｔｄ２）／２で示される第１設定値、および（Ｔ＋ｔｄ１−ｔｄ２）／２で示される第２設定値および前記目標デューティ値が格納され、格納された前記第１設定値および前記第２設定値、並びに格納された前記第１デッドタイムを第３設定値として前記三角波制御部に供給し、格納された前記第１デッドタイム、前記第２デッドタイム、および前記目標デューティ値を前記ＰＷＭ波形出力制御部に供給する設定値レジスタを備え、
前記パルス幅変調波形発生装置に備えられる前記三角搬送波制御部は、前記第１カウンタおよび前記第２カウンタの動作状態に対応するカウンタモード値を設定して記憶し、前記第２カウンタの計数値と前記第３設定値とを比較し、前記第２カウンタの計数値が前記第３設定値と一致したときに前記第１カウンタを計数値ゼロからインクリメント動作を開始させるとともに前記カウンタモード値を設定し、かつ、前記第１カウンタの計数値と前記第１設定値とを比較し、前記第１カウンタの計数値が前記第１設定値と一致したときに前記第１カウンタのインクリメント動作を停止させるとともに前記カウンタモード値を設定し、並びに前記第１カウンタの計数値と前記第２設定値とを比較し、前記第１カウンタの計数値が前記第２設定値と一致したときに前記第２カウンタを前記第１設定値からデクリメント動作を開始させるとともに前記カウンタモード値を設定し、かつ、前記第２カウンタの計数値を監視し、前記第２カウンタの計数値がゼロになったときに前記第２カウンタのデクリメント動作を停止させるとともに前記カウンタモード値を設定し、前記第１カウンタの計数値、前記第２カウンタの計数値および記憶した前記カウンタモード値を前記ＰＷＭ波形出力制御部に供給し、
前記パルス幅変調波形発生装置に備えられる前記ＰＷＭ波形出力制御部は、出力する相補型パルス幅変調波形信号に対応付けたＰＷＭ出力モード値を設定して記憶し、前記ＰＷＭ出力モード値を変更してデッドタイム動作を開始するときに変更前のＰＷＭ出力モード値を事前出力モード値として記憶し、第１デッドタイム値または第２デッドタイム値のどちらに対応したデッドタイム動作であるかを示すデッドタイムモード値を設定して記憶し、前記カウンタモード値、前記目標デューティ値と第１カウンタの計数値との比較結果、前記目標デューティ値と第２カウンタの計数値との比較結果、前記ＰＷＭ出力モード値、前記事前出力モード値および前記デッドタイムモード値とに基づいて、前記ＰＷＭ出力モード値、前記事前出力モード値Ｐｍおよび前記デッドタイムモード値を更新するとともに、前記ＰＷＭ出力モード値に基づいて前記相補型ＰＷＭ波形信号を出力することを特徴とするパルス幅変調波形発生装置。
【請求項２】
請求項１に記載された前記パルス幅変調波形発生装置は、前記三角搬送波制御部および前記ＰＷＭ波形出力制御部で使用されるＰＷＭクロック信号を発生するＰＷＭクロック生成部を備え、前記ＰＷＭクロック生成部を制御するためのＰＷＭクロックモード指令値を前記設定値レジスタに格納し、前記設定値レジスタから出力されるＰＷＭクロックモード指令値により前記ＰＷＭクロック生成部がＰＷＭクロック信号を発生して前記三角搬送波制御部および前記ＰＷＭ波形出力制御部に供給することを特徴とするパルス幅変調波形発生装置。
【請求項３】
請求項２に記載された前記パルス幅変調波形発生装置は、前記第１設定値および前記第２設定値を算出する演算器を備え、前記演算器から出力される前記第１設定値および前記第２設定値を前記設定値レジスタに格納し、前記設定値レジスタから出力される前記第１設定値および前記第２設定値を前記三角搬送波制御部に供給することを特徴とするパルス幅変調波形発生装置。
【請求項４】
請求項１に記載された前記パルス幅変調波形発生装置は、前記搬送波周期、前記第１デッドタイム値および前記第２デッドタイム値を設定する手段、前記三角搬送波制御部および前記ＰＷＭ波形出力制御部で使用するＰＷＭクロック信号を発生する手段、前記三角搬送波制御部と前記ＰＷＭ波形出力制御部の動作開始または動作停止を指令するＰＷＭスタート信号を設定する手段、第１設定値および前記第２設定値を算出する手段および前記目標デューティ値を設定する手段を備えたことを特徴とするパルス幅変調波形発生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パルス幅変調（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｕｉｎ、以降ＰＷＭと記す）波形発生装置に関するものである。
【背景技術】
【０００２】
図１８に示すように、Ｕ相コイル（５１）、Ｖ相コイル（５２）、Ｗ相コイル（５３）のそれぞれの一端が互いに接続されたいわゆるスター結線のコイル構造を用いた３相モータ（５０）のロータ（図示せず）の励磁電流を制御するために、ＰＷＭインバータ（６０が一般的に利用される。ＰＷＭインバータ（６０）は、６つのパワートランジスタ（６２、６３、６２、６３、６２、６３）からなるパワーモジュール（６１）と、パワーモジュール（６１）の６つのパワートランジスタ（６２、６３、６２、６３、６２、６３）のオンまたはオフを制御するＰＷＭ波形発生装置（９０）から構成される。
【０００３】
パワーモジュール（６１）は、２つのパワートランジスタ（６２、６３）が直列に接続されたアーム部（６４）が３つ並列に配置されており、この３つのアーム部（６４）の中間点ａ、ｂ、ｃに、Ｕ相コイル（５１）、Ｖ相コイル（５２）、Ｗ相コイル（５３）の他端が、それぞれ接続されている。このＵ相コイル（５１）、Ｖ相コイル（５２）、Ｗ相コイル（５３）に接続された６つのパワートランジスタ（６２、６３、６２、６３、６２、６３）のオンまたはオフを制御することにより、Ｕ相コイル（５１）、Ｖ相コイル（５２）、Ｗ相コイル（５３）を流れる電流が制御され、３相モータ（５０）のロータ（図示せず）の回転トルクや回転速度が制御される。
【０００４】
６つのパワートランジスタ（６２、６３、６２、６３、６２、６３）のオンまたはオフを制御するとき、一つのアーム部（６４）のハイサイド・トランジスタ（６２）とローサイド・トランジスタ（６３）が同時にオンされる（アーム短絡と呼ばれる）と、電源７０と接地８０が短絡し、ハイサイド・トランジスタ（６２）とローサイド・トランジスタ（６３）に過電流が流れることとなり、ハイサイド・トランジスタ（６２）とローサイド・トランジスタ（６３）の破損の原因となる。そこで、ハイサイド・トランジスタ（６２）がオフした後にローサイド・トランジスタ（６３）がオンするまでの間に、または、ローサイド・トランジスタ（６３）がオフした後にハイサイド・トランジスタ（６２）がオンするまでの間にアーム短絡を防止するために、ハイサイド・トランジスタ（６２）およびローサイド・トランジスタ（６３）をともにオフにする時間、いわゆるデッドタイムを設ける必要がある。
【０００５】
最も一般的なＰＷＭ波形発生装置（９０）により、デッドタイムを設けた相補型ＰＷＭ信号の発生方法を説明するタイミング・チャートを図１９に示す。図１９に示す方法は、「計数値を順次増加する」（以降、インクリメントと記す）動作または「計数値を順次減少する」（以降、デクリメントと記す）動作を行うことが可能な両方向カウンタを使用して、その計数値で形成される三角搬送波信号とデューティ値を比較して、その比較結果に基づいて、ハイサイド・トランジスタ（６２）をオンまたはオフする信号（以降、ハイサイドＰＷＭ信号ＧＨと記す）およびローサイド・トランジスタ（６３）をオンまたはオフする信号（以降、ローサイドＰＷＭ信号ＧＬと記す）を発生させ、ハイサイド・トランジスタ（６２）のオンからローサイド・トランジスタ（６３）のオンに切り換える際のデッドタイムの生成に遅延回路を用いて、アーム短絡を防止する方法である。図１９では、ＰＷＭ波形発生装置（９０）をデジタル回路で構成した場合を想定しているが、アナログ回路でも同様の機能を実現するＰＷＭ波形発生装置（９０）を構成することができる。
【０００６】
図１９では、クロック信号（図示せず）およびカウント方向信号ＤＩＲにより、両方向カウンタがインクリメント動作とデクリメント動作を交互に繰り返し、両方向カウンタの計数値で三角搬送波を形成し、両方向カウンタの計数値ｕｄ＿ｃｎｔとデューティ値ｄｕｔｙを比較し、それらが一致した（ｄｕｔｙ＝ｕｄ_ｃｎｔ）ときにＣＭＰ信号（ＣＭＰ＝１）が発生されることを示している。この例では、両方向カウンタは、ＤＩＲ＝０でインクリメントし、ＤＩＲ＝１でデクリメントしている。
【０００７】
図１９では、遅延回路として、デクリメント動作のみを行う単方向カウンタ（以降、遅延カウンタと記し、その計数値をＤＴｃｎｔとする）を使用した例を示している。ＣＭＰ信号が発生した時に、初期値として所定のデッドタイムに対応する計数値ｔｄが遅延カウンタに設定されて（ＤＴｃｎｔ＝ｔｄ）、デクリメント動作を開始する。遅延カウンタがカウントアップした（ＤＴｃｎｔ＝０）ときに、ＣＭＰｄｌｙ信号（ＣＭＰｄｌｙ＝１）を発生する。ＤＩＲ信号、ＣＭＰ信号およびＣＭＰｄｌｙ信号に基づき、デッドタイムを設けた相補型ＰＷＭ波形信号（ハイサイドＰＷＭ信号ＧＨ，ローサイドＰＷＭ信号ＧＬ）を発生する。
【０００８】
図１９の時刻ｔ１およびｔ３において、ＤＩＲ＝０のときにＣＭＰ信号が発生したので、ハイサイドＰＷＭ信号ＧＨを「０」にするとともに、遅延カウンタを計数値ＤＴｃｎｔ＝ｔｄからデクリメント動作を開始させる。そして、遅延カウンタがカウントアップしてＣＭＰｄｌｙ信号が発生したときにローサイドＰＷＭ信号ＧＬを「１」にするとともに、遅延カウンタの動作を停止する。すなわち、ハイサイドＰＷＭ信号ＧＨを「０」にしてから、計数値ｔｄに対応する遅延時間が経過したら、ローサイドＰＷＭ信号ＧＬを「１」にするとともに、遅延カウンタの動作を停止する。
【０００９】
また、図１９の時刻ｔ２およびｔ４において、ＤＩＲ＝１のときにＣＭＰ信号が発生したので、ローサイドＰＷＭ信号ＧＬを「０」にするとともに、遅延カウンタをＤＴｃｎｔ＝ｔｄからデクリメント動作を開始させる。そして、遅延カウンタがカウントアップしてＣＭＰｄｌｙ信号が発生したときにローサイドＰＷＭ信号ＧＨを「１」にするとともに、遅延カウンタの動作を停止する。すなわち、ローサイドＰＷＭ信号ＧＬを「０」にしてから、計数値ｔｄに対応する遅延時間が経過したら、ハイサイドＰＷＭ信号ＧＨを「１」にするとともに、遅延カウンタの動作を停止する。
【００１０】
このようにすることで、ハイサイド・トランジスタ（６２）がオフした後にローサイド・トランジスタ（６３）がオンするまでの間、または、ローサイド・トランジスタ（６３）がオフした後にハイサイド・トランジスタ（６２）がオンするまでの間にデッドタイムを設けることができる。
【００１１】
図１９の例では、デューティ値ｄｕｔｙと両方向カウンタの計数値ｕｄ＿ｃｎｔが一致した（ｄｕｔｙ＝ｕｄ_ｃｎｔ）ときに、ＣＭＰ＝１を発生させると同時に遅延カウンタを動作させて、遅延カウンタがカウントアップしたら、ＣＭＰｄｌｙ＝１を発生させているが、それをデューティ値ｄｕｔｙと両方向カウンタの計数値ｕｄ＿ｃｎｔの大小比較を行い、その比較結果が変化したときに、その比較結果に基づいて、ＣＭＰ＝１を発生させ、遅延カウンタを動作させるようにする。そうすることで、デューティ値ｄｕｔｙの変化に即応した相補型ＰＷＭ波形信号を出力することができる。その例を図２０の時刻ｔ１および図２１の時刻ｔ１に示す。
【００１２】
このような遅延回路を使用してデッドタイムを生成する方法では、デューティが０％または１００％においても、デッドタイムが生成されることから、いわゆるフルデューティのＰＷＭ波形信号を発生することができない。
【００１３】
これに対し、デッドタイムを有し、フルデューティ可能なＰＷＭ波形発生装置についての発明がある（特許文献１参照）。この発明は、相補型ＰＷＭ波形信号において、ハイサイドＰＷＭ信号ＧＨとローサイドＰＷＭ信号ＧＬの切り換え時に、必ずデッドタイム（ノーオーバーラップ時間）を有し、かつ、デューティ値が０％から１００％まで（フルデューティ）出力可能な相補型ＰＷＭ波形出力を行うものである。
【００１４】
上記発明のＰＷＭ波形発生装置のＰＷＭ信号を生成する方法を説明するタイミング・チャートを図２２に示す。同時に、インクリメント動作とデクリメント動作を交互に繰り返し、かつ、デッドタイムに相当する時間差を有する２つの両方向カウンタＴＣＮＴ３とＴＣＮＴ４、計数値が高い領域（ＴＣＤＲとＴＧＲ３の間Ｔｂ１）と低い領域（ゼロとＴＤＤＲの間Ｔｂ２）でのみインクリメント動作とデクリメント動作とを行い、それ以外ではカウントを停止する両方向カウンタＴＣＮＴＳを使用し、デューティ値が格納されているＴＧＲ４レジスタの内容と３つの両方向カウンタの計数値とそれぞれ比較して、それらの比較結果に基づいて、ハイサイドＰＷＭ信号に相当する正相出力信号ＧＨと、ローサイドＰＷＭ信号に相当する逆相出力信号ＧＬを発生する。
【００１５】
このようにデッドタイムに相当する時間差を有する２つの両方向カウンタを用いて、デッドタイムを生成する方法は、タイミング・チャートにおいて、２つの両方向カウンタの計数値を表すラインとデューティ値のラインが水平方向で交差する時間、すなわち、デッドタイムの期間は、デューティ値が保持されなければならない。それは、デューティ値が格納されるＴＧＲ４レジスタの内容が変更されると、タイミング・チャートにおいて、見かけ上、ＴＧＲ４の垂直方向のラインが発生し、それが両方向カウンタの計数値のラインと交差する場合、所定のデッドタイムを生成できないからである。
【００１６】
したがって、デューティ値が変更されてもすぐにＴＧＲ４レジスタに設定せずに、一旦、別のレジスタＴｅｍｐ＿Ｒ（図示せず）に格納して、適切なタイミングになったら、Ｔｅｍｐ＿ＲレジスタからＴＧＲ４レジスタに転送するように構成されている。その転送タイミングは、図２２のＴｂ１区間の終わり、またはＴｂ１およびＴｂ２の区間の終わりになっている。それでも、Ｔｂ１およびＴｂ２の区間内でデューティ値が変更された場合、変更されたデューティ値がＴｅｍｐ＿Ｒレジスタに格納され、それがそれらの期間の終わりにＴｅｍｐ＿ＲレジスタからＴＧＲ４レジスタに転送されると、適切なＰＷＭ波形信号が生成できなくなる場合がある。
【００１７】
そのため、それらの期間をＴｅｍｐ＿Ｒ禁止区間とし、更に別のレジスタＢＲ（図示せず）を設け、Ｔｅｍｐ＿Ｒ禁止区間内で変更されたデューティ値を一旦ＢＲレジスタに格納し、そのＴｅｍｐ＿Ｒ禁止区間の終わりに、Ｔｅｍｐ＿Ｒレジスタの内容をＴＧＲ４レジスタに転送するとともに、ＢＲレジスタの内容をＴｅｍｐ＿Ｒレジスタに転送するようにしている。それ以外のｔａ区間では、デューティ値を変更すると、デューティ値はＢＲレジスタに格納されると同時にＴｅｍｐ＿Ｒレジスタに格納される。その結果、デューティ値を格納するレジスタは３層構造になり、デューティ値の変更に対して遅れたＰＷＭ波形信号が生成される。
【特許文献１】特開平８−２６３１０４号公報（ルネサス）
【発明の開示】
【発明が解決しようとする課題】
【００１８】
《一般的なＰＷＭ波形発生装置の課題》
最も一般的なＰＷＭ波形発生装置（９０）で採用されている、遅延カウンタを使用したデッドタイム生成方法では、デューティ値が上限値（デューティ１００％）近傍および下限値（デューティ０％）近傍で、所望のデューティのＰＷＭ波形信号を発生することができないという問題がある。以下に、図２０および図２１にて、それについて説明する。
【００１９】
図２０は、デューティ値ｄｕｔｙが下限値０（ゼロ）に設定された場合のＰＷＭ波形信号の発生方法を説明するためのタイミング・チャートである。ｄｕｔｙ＝０（デューティ０％）に設定された場合は、ローサイドＰＷＭ信号ＧＬを常時「１」にし、ローサイド・トランジスタを連続してオンしたい。すなわち、ローサイドＰＷＭ信号ＧＬが「０」になる時間をなくしたい。
【００２０】
しかしながら、図２０の時刻ｔ２（ｔ３）において、ｄｕｔｙ＝ｕｄ_ｃｎｔ＝０となり、ＣＭＰ＝１が発生されると、ローサイドＰＷＭ信号ＧＬが一旦「０」になり、ローサイド・トランジスタをオフする。同時に、遅延カウンタが計数値ＤＴｃｎｔ＝ｔｄ（デッドタイム値）からデクリメント動作を開始する。そして、遅延カウンタがカウントアップ（ＤＴｃｎｔ＝０）して、ＣＭＰｄｌｙ＝１が発生されると、遅延カウンタの動作を停止するとともに、ローサイドＰＷＭ信号ＧＬを再び「１」にして、ローサイド・トランジスタをオンにする。したがって、ｄｕｔｙ＝０（デューティ０％）のときでも、ローサイドＰＷＭ信号ＧＬは遅延時間（デッドタイム）だけ「０」が出力され、ローサイド・トランジスタをオフする時間が発生する。すなわち、ローサイドＰＷＭ信号ＧＬを常時「１」にし、ローサイド・トランジスタを連続してオンとすることができない。
【００２１】
図２１は、デューティ値ｄｕｔｙが上限値Ｔｐｈ（三角搬送波の半周期に対応する値）に設定された場合に発生されるＰＷＭ波形信号を説明するためのタイミング・チャートである。ｄｕｔｙ＝Ｔｐｈ（デューティ１００％）に設定された場合は、ハイサイドＰＷＭ信号ＧＨを常時「１」とし、ハイサイド・トランジスタを連続してオンしたい。すなわち、ハイサイドＰＷＭ信号ＧＨが「０」になる時間をなくしたい。
【００２２】
しかしながら、図２１の時刻ｔ２（ｔ３）において、ｄｕｔｙ＝ｕｄ_ｃｎｔ＝Ｔｐｈとなり、ＣＭＰ＝１が発生されると、ハイサイドＰＷＭ信号ＧＨが一旦「０」になり、遅延カウンタが計数値ＤＴｃｎｔ＝ｔｄからデクリメント動作を開始する。そして、遅延カウンタがカウントアップ（ＤＴｃｎｔ＝０）して、ＣＭＰｄｌｙ＝１が発生されると、遅延カウンタの動作を停止するとともに、ハイサイドＰＷＭ信号ＧＨを再び「１」になる。そのため、ｄｕｔｙ＝Ｔｐｈ（デューティ１００％）のときでも、ハイサイドＰＷＭ信号ＧＨは遅延時間（デッドタイム値ｔｄ）だけ「０」が出力され、ハイサイド・トランジスタをオフする時間が発生する。すなわち、ハイサイドＰＷＭ信号ＧＨを常時「１」にし、ハイサイド・トランジスタを連続してオンとすることができない。
【００２３】
このように、三角搬送波を形成する両方向カウンタとデッドタイムを生成する遅延カウンタを使用した方法では、デューティ０％からデューティ１００％までに対応するハイサイドＰＷＭ信号ＧＨおよびローサイドＰＷＭ信号ＧＬを発生できないことから、フルデューティのＰＷＭ波形信号を出力できないという課題がある。
【００２４】
特許文献１に記されたＰＷＭ波形発生装置では、デッドタイムを生成するために、３つの両方向カウンタのうちのいずれか２つの両方向カウンタの時間差（デッドタイムに相当）を利用していることから、それらの計数値と比較するデューティ値は適切なタイミングで設定されなければならない。そのために、デューティ値を記憶するレジスタが３層構造になり、デューティ値の変更が実際に出力に反映されるまで、最大でＰＷＭ搬送波の約１周期分またはその約半周期分の遅れが発生するという問題がある。
【００２５】
また、デッドタイムを有し、フルデューティ可能な相補型ＰＷＭ波形信号を生成するために、３つの両方向カウンタを使用している。インクリメントおよびデクリメントの両方向にカウント可能な両方向カウンタは、インクリメントまたはデクリメントのいずれか一方の方向のみにカウントする単方向カウンタと比較すると回路規模が大きい。さらに、デューティ値を記憶するレジスタの３層構造化により、回路構成が複雑化し、回路規模も大きくなる。回路規模が大きくなると、使用するトランジスタの数が多くなってしまうというデメリットがある。
【００２６】
従来の一般的なＰＷＭ波形発生装置（９０）では、所定のデッドタイムを生成する遅延カウンタ（遅延回路）を１つしか備えておらず、「ハイサイド・トランジスタがオン、かつ、ローサイド・トランジスタがオフ」から「ハイサイド・トランジスタがオフ、かつ、ローサイド・トランジスタがオン」へ変更する場合の第１デッドタイムと、「ハイサイド・トランジスタがオフ、かつ、ローサイド・トランジスタがオン」から「ハイサイド・トランジスタがオン、かつ、ローサイド・トランジスタがオフ」へ変更する場合の第２デッドタイムも、同じ時間となる。これは、特許文献１に記されたＰＷＭ波形発生装置も設定できるデッドタイムは１つで、第１デッドタイムと第２デッドタイムは同じ時間となる。
【００２７】
一般的に、トランジスタのスイッチング速度は、使用するパワーデバイスで異なる。また、ハイサイド・トランジスタおよびローサイド・トランジスタに同じトランジスタを使用しも、回路構成の違いで、ハイサイド側とローサイド側のスイッチング速度が異なる場合がある。そのような場合、第１デッドタイムおよび第２デッドタイムは、デッドタイムの長い方に合わせて共通のデッドタイムを設定することになり、「ハイサイド・トランジスタがオン、かつ、ローサイド・トランジスタがオフ」から「ハイサイド・トランジスタがオフ、かつ、ローサイド・トランジスタがオン」にする場合、「ハイサイド・トランジスタがオフ、かつ、ローサイド・トランジスタがオン」から「ハイサイド・トランジスタがオン、かつ、ローサイド・トランジスタがオフ」にする場合、それぞれに最適なスイッチング動作を行えないという課題がある。
【００２８】
そこで、本発明の目的は、デッドタイム生成に遅延カウンタを採用してデューティ値の変更に遅れることなくＰＷＭ波形信号を発生すること、遅延カウンタを利用したデッドタイム生成方法でもフルデューティのＰＷＭ波形信号を発生すること、および、第１デッドタイムおよび第２デッドタイムを個別に設定してパワーモジュールに最適なスイッチング動作を行えるようにすることである。さらに、それらを実現するＰＷＭ波形発生装置において、構成の簡単化と回路の小規模化を実現することである。
【課題を解決するための手段】
【００２９】
従来方式での課題を解決するために、本発明のＰＷＭ波形発生装置（１）において、デューティ値の変更に遅れることなくＰＷＭ波形信号を発生するために遅延カウンタを採用し、フルデューティ可能なＰＷＭ波形信号を発生するためにインクリメント動作を行うカウンタとデクリメント動作を行うカウンタを使用し、それらを計数値の高い領域と低い領域の二箇所でデッドタイム値に対応する期間で交差するように動作させ、それらの計数値で目標デューティ値と比較する三角搬送波を形成する。次に、三角搬送波およびＰＷＭ波形信号の発生方法の概略について説明する。
【００３０】
本発明のＰＷＭ波形発生装置（１）は、インクリメント動作を行うカウンタとデクリメント動作を行うカウンタを制御し、三角搬送波を形成する、それらのカウンタの計数値を出力する三角搬送波制御部（２）と、三角搬送波制御部（２）から供給される計数値と外部の制御装置から供給される目標デューティ値とを比較し、その比較結果に基づいて、デッドタイムを設けた相補型ＰＷＭ波形信号を出力するＰＷＭ波形出力制御部（３）とを備える。
【００３１】
ＰＷＭ波形発生装置（１）を動作させるには、第１設定値Ｌ１、第１設定値Ｌ１よりも小さい第２設定値Ｌ２、第２設定値Ｌ２よりも小さい第３設定値Ｌ３（＝第１デッドタイム値ｔｄ１）、第２デッドタイム値ｔｄ２、ＰＷＭクロックモード指令値ＣＫＭやＰＷＭスタート・フラグなどを含むＰＷＭ制御データｃｍｄおよび目標デューティ値ｄｕｔｙが設定値レジスタ（４）に格納される必要がある。
【００３２】
［Ｌ１、Ｌ２、Ｌ３の定義］
ここで、三角搬送波周期に対応する値をＴ、相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を「（１，０）から（０，１）へ切換える」ときのデッドタイムに対応する第１デッドタイム値をｔｄ１、「（０，１）から（１，０）へ切換える」ときのデッドタイムに対応する第２デッドタイム値をｔｄ２と表すと、第１設定値Ｌ１、第２設定値Ｌ２および第３設定値Ｌ３はそれぞれ、Ｌ１＝（Ｔ＋ｔｄ１＋ｔｄ２）／２、Ｌ２＝（Ｔ＋ｔｄ１−ｔｄ２）／２、Ｌ３＝ｔｄ１と定義する。
【００３３】
三角搬送波制御部（２）は、第１制御部（２１）、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）、第１比較器（２６）および第２比較器（２７）を備え、ＰＷＭ波形出力制御部（３）、設定値レジスタ（４）およびＰＷＭクロック生成部（５）に接続され、設定値レジスタ（４）からＰＷＭスタート信号ＳＴＲ、ＰＷＭクロック信号ＣＫ０、第１設定値Ｌ１、第２設定値Ｌ２および第３設定値Ｌ３が供給される。
【００３４】
第１カウンタ（２２）は、ゼロ値から第１設定値Ｌ１までインクリメント動作をし、第１カウンタ（２２）の計数値ｕｃｎｔを出力する。第２カウンタ（２３）は第１設定値Ｌ１または第３設定値Ｌ３からゼロ値までデクリメント動作をし、第２カウンタ（２３）の計数値ｄｃｎｔを出力するとともに、カウントアップしたときに第２カウンタゼロ信号ＺＣ２を発生して出力する。
【００３５】
第１選択器（２４）は、第１制御部（２１）から供給される第１選択指令信号ＳＬ１に基づき、設定値レジスタ（４）から供給される第１設定値Ｌ１および第２設定値Ｌ２のいずれか一方を選択して出力し、第１比較器（２６）に供給する。第２選択器（２５）は、第１制御部（２）から供給される第２選択指令信号ＳＬ２に基づき、設定値レジスタ（４）から供給される第１設定値Ｌ１および第３設定値Ｌ３のいずれか一方を選択して出力し、第２比較器（２７）に供給する。
【００３６】
第１比較器（２６）は、インクリメント動作中の第１カウンタ（２２）の計数値ｕｃｎｔと第１選択器（２４）から供給される第１設定値Ｌ１または第２設定値Ｌ２とを比較し、それらが一致したときに第１比較信号ＣＭ１を発生して出力し、第１制御部（２１）に供給する。第２比較器（２７）は、デクリメント動作中の第２カウンタ（２３）の計数値ｄｃｎｔと第３設定値Ｌ３を比較し、それらが一致したときに第２比較信号ＣＭ２を発生して出力し、第１制御部（２１）に供給する。
【００３７】
第１制御部（２１）は、ＰＷＭスタート信号ＳＴＲが供給されて第１カウンタ（２２）の動作を開始するとき、または、第２選択指令信号ＳＬ２および第２比較信号ＣＭ２により第２カウンタ（２３）の計数値ｄｃｎｔと第３設定値Ｌ３が一致したと判断したときは、第１カウンタ（２２）に対しゼロ値からのインクリメント動作の開始を指令する第１カウンタ制御信号ＳＣ１および第１カウンタクロック信号ＣＫ１を発生または更新して供給し、第１選択器（２４）に対し第２設定値Ｌ２の選択を指令する第１選択指令信号ＳＬ１を発生または更新して供給する。
【００３８】
第１制御部（２１）は、また、デクリメント動作中の第２カウンタ（２３）から第２カウンタ（２３）がゼロになったことを通知する第２カウンタゼロ信号ＺＣ２が供給されたときは、第２カウンタ（２３）に対しデクリメント動作を停止し、第２選択器（２５）から供給される第１設定値Ｌ１の読み込みを指令する第２カウンタ制御信号ＳＣ２を発生または更新して供給する。
【００３９】
第１制御部（２１）は、また、第２カウンタ（２３）に対し、ＰＷＭスタート信号ＳＴＲが供給されて第２カウンタ（２３）の動作を開始するときは第３設定値Ｌ３からの、または、インクリメント動作中の第１カウンタ（２２）が第２設定値Ｌ２に達したことを通知する第１比較信号ＣＭ１が第１比較器（２６）から供給されたときは第１設定値Ｌ１からの、デクリメント動作の開始を指令する第２カウンタ制御信号ＳＣ２および第２カウンタクロック信号ＣＫ２を発生または更新して供給するとともに、第１選択器（２４）に対し第１設定値Ｌ１の選択を指令する第１選択指令信号ＳＬ１を発生または更新して供給する。
【００４０】
第１制御部（２１）は、また、インクリメント動作中の第１カウンタ（２２）が第１設定値Ｌ１に達したことを通知する第１比較信号ＣＭ１が第１比較器（２６）から供給されたときは、第１カウンタ（２２）に対しインクリメント動作を停止し、計数値をゼロ値にクリアすることを指令する第１カウンタ制御信号ＳＣ１を発生または更新して供給する。
【００４１】
このように、第１制御部（２１）は、第１デッドタイム値ｔｄ１と同じに設定されるゼロ値から第３設定値Ｌ３の間、および、第２デッドタイム値ｔｄ２と同じに設定される第２設定値Ｌ２から第１設定値Ｌ１の間において、第１カウンタ（２２）と第２カウンタ（２３）とを同時に動作させ、第３設定値Ｌ３と第２設定値Ｌ２の間では、第１カウンタ（２２）または第２カウンタ（２３）のいずれか一方を動作させるように第１カウンタ（２２）および第２カウンタ（２３）を制御する。
【００４２】
第１制御部（２１）は、また、第１カウンタ（２２）および第２カウンタ（２３）の動作状態に対応するカウンタモード値Ｓｍを設定し出力する。
【００４３】
三角搬送波制御部（２）は、三角搬送波を形成する第１カウンタ（２２）の計数値ｕｃｎｔ、第２カウンタ（２３）の計数値ｄｃｎｔ、並びに、第１カウンタ（２２）および第２カウンタ（２３）の動作状態を表すカウンタモード値ＳｍをＰＷＭ波形出力制御部（３）に供給される。
【００４４】
ＰＷＭ波形出力制御部（３）は、三角搬送波制御部（２）、設定値レジスタ（４）およびＰＷＭクロック生成部（５）に接続され、三角搬送波制御部（２）から第１カウンタ（２２）の計数値ｕｃｎｔ、第２カウンタ（２３）の計数値ｄｃｎｔおよびカウンタモード値Ｓｍが供給され、設定値レジスタ（４）からは、第１デッドタイム値ｔｄ１、第２デッドタイム値ｔｄ２、目標デューティ値ｄｕｔｙおよびＰＷＭスタート信号ＳＴＲが供給され、ＰＷＭクロック生成部（５）からはＰＷＭクロック信号ＣＫ０が供給される。
【００４５】
ＰＷＭ波形出力制御部（３）は、第２制御部（３１）、第３カウンタ（３２）、第３選択器（３３）、第３比較器（３４）および第４比較器（３５）を備え、相補型ＰＷＭ波形信号を発生または更新して出力する。
【００４６】
第３比較器（３４）は、目標デューティ値ｄｕｔｙと第１カウンタ（２２）の計数値ｕｃｎｔを比較し、その大小比較結果である第３比較信号ＣＭ３を発生して出力し、第４比較器（３５）目標デューティ値ｄｕｔｙと第２カウンタ（２３）の計数値ｄｃｎｔを比較し、その大小比較結果である第４比較信号ＣＭ４を発生して出力する。第３比較信号ＣＭ３および第４比較信号ＣＭ４は第２制御部（３１）に供給される。
【００４７】
第３選択器（３３）は、第２制御部（３１）から供給される第３選択指令信号ＳＬ３により、第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方を選択して出力し、第３カウンタ（３２）に供給する。
【００４８】
第３カウンタ（３２）は、第２制御部（３１）から供給される第３カウンタ制御信号ＳＣ３および第３カウンタクロック信号ＣＫ３により、第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方の計数値からデクリメント動作を開始し、カウントアップしたら第３カウンタゼロ信号ＺＣ３を発生して出力し、第２制御部（３１）に供給する。
【００４９】
［Ｇｍ、Ｐｍ、Ｄｍ］
第２制御部（３１）は、設定し出力する相補型ＰＷＭ波形信号に対応付けたＰＷＭ出力モード値Ｇｍを設定して記憶し出力し、デッドタイム動作に入る直前のＰＷＭ出力モード値Ｇｍを事前出力モード値Ｐｍとして記憶し出力し、第３カウンタが第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のどちらのデッドタイム動作を行っているかを示すデッドタイムモード値Ｄｍを設定して記憶し出力する。
【００５０】
第２制御部（３１）は、ＰＷＭ出力モード値Ｇｍに基づいて、相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を設定し出力する。
【００５１】
第２制御部（３１）は、カウンタモード値Ｓｍ、第３比較信号ＣＭ３、第４比較信号ＣＭ４、第３カウンタゼロ信号ＺＣ３、ＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍに基づいて、ＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍを設定して記憶し、第３カウンタ（３２）を制御する。
【００５２】
ＰＷＭ波形出力制御部（３）における相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）の発生方法は、第２設定値Ｌ２と第３設定値Ｌ３の間で、第１カウンタ（２２）または第２カウンタ（２３）のいずれか一方のみが動作する、Ｓｍ＝１およびＳｍ＝３の区間では、図１９に示す従来の一般的なＰＷＭ波形発生装置と基本的に同じである。
【００５３】
第２カウンタ（２２）のみが動作するＳｍ＝１の区間では、第４比較信号ＣＭ４および第３カウンタゼロ信号ＺＣ３に基づいて、第３カウンタ（３２）および第３選択器（３３）を制御し、ＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍを設定または更新して記憶する。第１カウンタ（２２）のみが動作するＳｍ＝３の区間では、第３比較信号ＣＭ３および第３カウンタゼロ信号ＺＣ３に基づいて、第３カウンタ（３２）および第３選択器（３３）を制御し、ＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍを設定または更新して記憶する。また、更新され記憶されたＰＷＭ出力モード値Ｇｍに基づいて、相補型ＰＷＭは計信号が更新され出力される。
【００５４】
そして、第３カウンタ（３２）がカウントアップしてＺＣ３信号が発生したときに、ＰＷＭ出力モード値Ｇｍおよびデッドタイムモード値Ｄｍに基づいて、ＰＷＭ出力モード値Ｇｍを設定または更新して記憶するとともに、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍをクリアし記憶して、第３カウンタ（３２）の動作を停止する。また、更新され記憶されたＰＷＭ出力モード値Ｇｍに基づいて、相補型ＰＷＭは計信号が更新され出力される。
【００５５】
一方、第１カウンタ（２２）および第２カウンタ（２３）が同時に動作する、Ｓｍ＝０およびＳｍ＝２の区間では、それらの区間で目標デューティ値ｄｕｔｙが変更されなければ、第３比較信号ＣＭ３および第４比較信号ＣＭ４の両方が発生する。それらの区間では、第３比較信号ＣＭ３および第４比較信号ＣＭ４の発生する順番でＰＷＭ出力モード値Ｇｍを設定または更新する方法が異なる。次に、それらの区間で目標デューティ値を変更しない場合について説明する。
【００５６】
Ｓｍ＝０の区間において、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０のときに、先にｄｕｔｙ＝ｕｃｎｔであることを示す第３比較信号ＣＭ３が発生すると、Ｇｍを記憶して（Ｐｍ＝２）、Ｇｍ＝０と更新し、第３カウンタ（３２）を第１デッドタイム値ｔｄ１からデクリメント動作を開始させる（Ｄｍ＝１）。次にｄｕｔｙ＝ｄｃｎｔであることを示す第４比較信号ＣＭ４が発生したら、ＧｍおよびＰｍは変更せずに、第３カウンタ（３２）に第２デッドタイム値ｔｄ２を再設定してデクリメント動作を継続させる（Ｄｍ＝２）。そして、第３カウンタ（３２）がカウントアップしたら、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、第３カウンタ（３２）の動作を停止する。
【００５７】
Ｓｍ＝０の区間において、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０のときに、先にｄｕｔｙ＝ｄｃｎｔであることを示す第４比較信号ＣＭ４が発生すると、ＧｍおよびＰｍは変更せずに、第３カウンタ（３２）を第２デッドタイム値ｔｄ２からデクリメント動作を開始させる（Ｄｍ＝２）。次にｄｕｔｙ＝ｕｃｎｔであることを示す第３比較信号ＣＭ３が発生したら、Ｇｍを記憶して（Ｐｍ＝２）、Ｇｍ＝０とし、第３カウンタ（３２）はそのままデクリメント動作を継続させる。そして、第３カウンタ（３２）がカウントアップしたら、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、第３カウンタ（３２）の動作を停止する。
【００５８】
Ｓｍ＝２の区間において、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０のときに、先にｄｕｔｙ＝ｄｃｎｔであることを示す第４比較信号ＣＭ４が発生すると、Ｇｍを記憶して（Ｐｍ＝１）、Ｇｍ＝０とし、第３カウンタ（３２）を第２デッドタイム値ｔｄ２からデクリメント動作を開始させる（Ｄｍ＝２）。次にｄｕｔｙ＝ｕｃｎｔであることを示す第３比較信号ＣＭ３が発生したら、ＧｍおよびＰｍは変更せずに、第３カウンタ（３２）に第１デッドタイム値ｔｄ１に再設定して、デクリメント動作を継続させる（Ｄｍ＝１）。そして第３カウンタ（３２）がカウントアップしたら、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、第３カウンタ（３２）の動作を停止する。
【００５９】
Ｓｍ＝２の区間において、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０のときに、先にｄｕｔｙ＝ｕｃｎｔであることを示す第３比較信号ＣＭ３が発生すると、ＧｍおよびＰｍは変更せずに、第３カウンタ（３２）を第１デッドタイム値ｔｄ１からデクリメント動作を開始させる（Ｄｍ＝１）。次にｄｕｔｙ＝ｄｃｎｔであることを示す第４比較信号ＣＭ４が発生したら、Ｇｍを記憶して（Ｐｍ＝１）、Ｇｍ＝０とし、第３カウンタ（３２）はそのままデクリメント動作を継続させる。そして、第３カウンタ（３２）がカウントアップしたら、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、第３カウンタ（３２）の動作を停止する。
【発明の効果】
【００６０】
上記のような相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）の発生方法により、本発明は、デューティの変更に即応し、かつ、フルデューティ（０％から１００％まで）可能な相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を発生するＰＷＭ波形発生装置を実現している。
【発明を実施するための最良の形態】
【００６１】
次に、本発明の実施例を図１から図４に基づいて説明する。図１は、本発明の実施例のＰＷＭ波形発生装置（１）の構成を示すシステム・ブロック図である。図２は、三角搬送波制御部（２）に備わる第１制御部（２１）の構成を示すブロック図である。図３は、三角搬送波制御部（２）で形成される三角搬送波を説明するタイム・チャート図である。図４は、ＰＷＭ波形出力制御部（３）に備わる第２制御部（３１）の構成を示すブロック図である。
【００６２】
図１に示すように、本実施例のＰＷＭ波形発生装置（１）は、三角搬送波制御部（２）、ＰＷＭ波形出力制御部（３）、設定値レジスタ（４）、ＰＷＭクロック生成部（５）、演算器（６）、搬送波デッドタイム設定手段（７）およびＰＷＭデューティ設定手段（８）を備える。
【００６３】
ＰＷＭデューティ設定手段（８）は、本実施例のＰＷＭ波形発生装置（１）から出力される相補型ＰＷＭ波形信号の目標デューティ値ｄｕｔｙを指令するものである。目標デューティ値ｄｕｔｙは、本実施例のＰＷＭ波形発生装置（１）が使用される制御装置（図示せず）により設定され、供給される。
【００６４】
搬送波デッドタイム設定手段（７）は、ＰＷＭ動作・クロック設定手段（７ａ）、搬送波周期設定手段（７ｂ）、第１デッドタイム設定手段（７ｃ）および第２デッドタイム設定手段（７ｄ）を備え、ＰＷＭ動作・クロック設定手段（７ａ）はＰＷＭスタート信号ＳＴＲとＰＷＭクロックモード指令値ＣＫＭを、搬送波周期設定手段（７ｂ）は三角搬送波周期値Ｔを、第１デッドタイム設定手段（７ｃ）は第１デッドタイム値ｔｄ１を、第２デッドタイム設定手段（７ｄ）は第２デッドタイム値ｔｄ２を、それぞれ指令するものである。これらの設定値は本実施例のＰＷＭ波形発生装置（１）が使用される制御装置（図示せず）により設定され、供給される。
【００６５】
搬送波デッドタイム設定手段（７）は、設定値レジスタ（４）および演算器（６）に接続され、第３設定値Ｌ３（＝第１デッドタイム値ｔｄ１）、第２デッドタイム値ｔｄ２、ＰＷＭスタート信号ＳＴＲとＰＷＭクロックモード指令値ＣＫＭを含むＰＷＭ制御データｃｍｄを設定値レジスタ（４）に供給し、三角搬送波周期値Ｔ、第１デッドタイム値ｔｄ１および第２デッドタイム値ｔｄ２を演算器（６）に供給する。
【００６６】
演算器（６）は、設定値レジスタ（４）および搬送波デッドタイム設定手段（７）に接続され、搬送波デッドタイム設定手段（７）から三角搬送波周期値Ｔ、第１デッドタイム値ｔｄ1および第２デッドタイム値ｔｄ２が供給され、これらに基づいて、第１設定値Ｌ１および第２設定値Ｌ２を算出して設定値レジスタ（４）に供給する。ここで、搬送波周期値Ｔの半分（Ｔ／２）をＴｈ、第１デッドタイム値ｔｄ１の半分（ｔｄ１／２）をｔｄ１ｈ、第２デッドタイム値ｔｄ２の半分（ｔｄ２／２）をｔｄ２ｈと表すと、本実施例において、Ｌ１＝Ｔｈ＋ｔｄ１ｈ＋ｔｄ２ｆ、Ｌ２＝Ｌ１−ｔｄ２＝Ｔｈ＋ｔｄ１ｈ−ｔｄ２ｆとなる。
【００６７】
設定値レジスタ（４）は、ＰＷＭクロック生成部（５）、演算器（６）、搬送波デッドタイム設定手段（７）およびＰＷＭデューティ設定手段（８）に接続される。そして、演算器（６）から第１設定値Ｌ１および第２設定値Ｌ２が供給され、搬送波デッドタイム設定手段（７）から第３設定値Ｌ３（＝第１デッドタイム値ｔｄ１）、第２デッドタイム値ｔｄ２およびＰＷＭ制御データｃｍｄ（ＰＷＭクロックモード指令値ＣＫＭおよびＰＷＭスタート信号ＳＴＲを含む）が供給され、ＰＷＭデューティ設定手段（８）から目標デューティ値ｄｕｔｙが供給され、それらの設定値を格納し保持する。
【００６８】
ＰＷＭクロック生成部（５）は、三角搬送波制御部（２）、ＰＷＭ波形出力制御部（３）および設定値レジスタ（４）に接続され、設定値レジスタ（４）から供給されるＰＷＭスタート信号ＳＴＲおよびＰＷＭクロックモード指令値ＣＫＭにより、本実施例のＰＷＭ波形発生装置（１）の外部または内部にあるクロック発生回路（図示せず）から供給される基準クロック信号ＣＬＫから、指令されたＰＷＭクロック信号ＣＫ０を発生し、三角搬送波制御部（２）およびＰＷＭ波形出力制御部（３）に供給する。ＰＷＭクロック信号ＣＫ０は、それらの制御部に必要ならば、位相差のある複数のクロック信号で構成されてもよい。
【００６９】
尚、本実施例のＰＷＭ波形発生装置（１）が使用される制御装置（図示せず）において、搬送波デッドタイム設定手段（７）およびＰＷＭデューティ設定手段（８）の各機能を実現し、第１設定値Ｌ１および第２設定値Ｌ２も予め演算し提供する場合は、搬送波デッドタイム設定手段（７）、演算器（６）およびＰＷＭデューティ設定手段（８）をＰＷＭ波形発生装置（１）内に備えないようにしてもよい。
【００７０】
また、本実施例のＰＷＭ波形発生装置（１）の外部または内部にあるクロックパルス発生装置（図示せず）で、適切なＰＷＭクロック信号ＣＫ０を発生し供給する場合は、ＰＷＭクロック生成部（５）およびＰＷＭクロックモード指令値ＣＫＭを省略してもよい。
【００７１】
次に、図１に基づき、三角搬送波制御部（２）の構成について説明する。三角搬送波制御部（２）は、第１制御部（２１）、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）、第１比較器（２６）および第２比較器（２７）を備え、ＰＷＭ波形出力制御部（３）、設定値レジスタ（４）、ＰＷＭクロック生成部（５）に接続され、設定値レジスタ（４）からＰＷＭスタート信号ＳＴＲ、第１設定値Ｌ１、第２設定値Ｌ２および第３設定値Ｌ３が、ＰＷＭクロック生成部（５）からＰＷＭクロック信号ＣＫ０が供給され、三角搬送波を形成する２つのカウンタの計数値とそれらの動作状態を表す搬送波カウンタ状態信号ＳｍをＰＷＭ波形出力制御部（３）に供給する。
【００７２】
第１制御部（２１）は、ＰＷＭクロック生成部（５）、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）、第１比較器（２６）および第２比較器に接続され、ＰＷＭクロック生成部（５）、第２カウンタ（２３）、第１比較器（２６）および第２比較器（２７）のそれぞれから供給される信号に基づいて、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）および第２選択器（２５）に対し、それらを制御する指令信号を発生または更新して供給する。
【００７３】
第１カウンタ（２２）は、第１制御部（２１）、第１比較器（２６）およびＰＷＭ波形出力制御部（３）に接続され、第１制御部（２１）から供給される第１カウンタ制御信号ＳＣ１および第１カウンタクロック信号ＣＫ１により、計数値ゼロから第１設定値Ｌ１までのインクリメント動作を行い、第１カウンタ（２２）の計数値ｕｃｎｔを出力し、第１比較器（２６）およびＰＷＭ波形出力制御部（３）供給する。
【００７４】
第２カウンタ（２３）は、第１制御部（２１）、第２選択器（２５）、第２比較器（２７）およびＰＷＭ波形出力制御部（３）に接続され、第１制御部（２１）から供給される第２カウンタ制御信号ＳＣ２および第２カウンタクロック信号ＣＫ２により、第２選択器（２５）から供給される第１設定値Ｌ１または第３設定値Ｌ３のうちいずれか一方の値（計数値）よりデクリメント動作を行い、第２カウンタ（２３）の計数値ｄｃｎｔを出力し、第２比較器（２７）およびＰＷＭ波形出力制御部（３）に供給する。第２カウンタ（２３）は、また、デクリメント動作によりカウントアップした(ｄｃｎｔ＝０)ときに第２カウンタゼロ信号ＺＣ２を発生して第２カウンタゼロ信号ＺＣ２を第１制御部に供給する。
【００７５】
第１選択器（２４）は、設定値レジスタ（４）、第１制御部（２１）および第１比較器（２６）に接続され、設定レジスタ７から第１設定値Ｌ１および第２設定値Ｌ２が供給さ、第１制御部（２１）から第１設定値Ｌ１または第２設定値Ｌ２のうちいずれか一方の選択を指令する第１選択指令信号ＳＬ１が供給され、第１選択指令信号ＳＬ１に基づいて第１設定値Ｌ１または第２設定値Ｌ２のうちいずれか一方を選択し出力して第１比較器（２６）に供給する。
【００７６】
第２選択器（２５）は、設定値レジスタ（４）、第１制御部（２１）および第２カウンタ（２３）に接続され、設定値レジスタ（４）から第１設定値Ｌ１および第３設定値Ｌ３が供給され、第１制御部（２１）から第１設定値Ｌ１または第３設定値Ｌ３のうちいずれか一方の選択を指令する第２選択指令信号ＳＬ２が供給され、第２選択指令信号ＳＬ２に基づいて第１設定値Ｌ１または第３設定値Ｌ３のうちいずれか一方を選択し出力して第２カウンタ（２３）に供給する。
【００７７】
第１比較器（２６）は、第１制御部（２１）、第１選択器（２４）および第１カウンタ（２２）に接続され、第１カウンタ（２２）からその計数値ｕｃｎｔが供給され、第１選択器（２４）から第１設定値Ｌ１または第２設定値Ｌ２のいずれか一方の値が供給され、第１カウンタ（２２）の計数値ｕｃｎｔと第１選択器（２４）から供給された設定値を比較して両者が一致したときに、第１比較信号ＣＭ１を発生し出力して第１制御部（２１）に供給する。
【００７８】
第２比較器（２７）は、設定値レジスタ（４）、第１制御部（２１）および第２カウンタ（２３）に接続され、設定値レジスタ（４）から第３設定値Ｌ３が供給され、第２カウンタ（２３）からその計数値ｄｃｎｔが供給され、それらを比較して両者が一致したときに、第２比較信号ＣＭ２を発生し出力して第１制御部（２１）に供給する。
【００７９】
次ぎに、図２に基づいて、第１制御部（２１）の構成および機能について説明する。第１制御部（２１）は、三角搬送波生成手段（２１ａ）および第１状態レジスタ（２１ｂ）を備え、設定値レジスタ（４）、ＰＷＭクロック生成部（５）、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）、第１比較器（２６）、第２比較器（２７）およびＰＷＭ波形出力制御部（３）に接続される。
【００８０】
三角搬送波制御部（２）の外部から入力され、第１制御部（２１）に供給される信号には、設定値レジスタ（４）からのＰＷＭスタート信号ＳＴＲと、ＰＷＭクロック生成部（５）からのＰＷＭクロック信号ＣＫ０がある。また、第１制御部（２１）が出力し、三角搬送波制御部（２）の外部へ供給する信号には、ＰＷＭ波形出力制御部（３）へのカウンタモード値Ｓｍがある。
【００８１】
三角搬送波生成手段（２１ａ）は、設定値レジスタ（４）、ＰＷＭクロック生成部（５）、第１状態レジスタ（２１ｂ）、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）、第１比較器（２６）および第２比較器（２７）に接続され、ＰＷＭ波形発生装置（１）の動作の開始を指令するＰＷＭスタート信号ＳＴＲおよびＰＷＭクロック信号ＣＫ０が供給されると、第１カウンタ（２２）および第２カウンタ（２３）の動作を開始し、所定の三角搬送波を形成する計数信号を発生して出力する。
【００８２】
三角搬送波生成手段（２１ａ）は、設定値レジスタ（４）からＰＷＭスタート信号ＳＴＲ、ＰＷＭクロック生成部（５）からＰＷＭクロック信号ＣＫ０、第１比較器（２６）から第１比較信号ＣＭ１、第２比較器（２７）から第２比較信号ＣＭ２、および第２カウンタ（２３）から第２カウンタゼロ信号ＺＣ２がそれぞれ供給され、それらの信号に基づいて、第１カウンタ（２２）、第２カウンタ（２３）、第１選択器（２４）、第２選択器（２５）および第１状態レジスタ（２１ｂ）に対しそれぞれの動作を制御する指令信号を設定または更新して供給する。三角搬送波生成手段（２１ａ）は、また、第１カウンタ（２２）および第２カウンタ（２３）の動作状態を表すカウンタモード値Ｓｍを設定または更新し、第１状態レジスタ（２１ｂ）に格納する。
【００８３】
本実施例において、カウンタモード値Ｓｍは、計数値が第１設定値Ｌ１と第２設定値Ｌ２の間で第１カウンタ（２２）および第２カウンタ（２３）が同時に動作する区間をＳｍ＝０、計数値が第２設定値Ｌ２と第３設定値Ｌ３の間で第２カウンタ（２３）のみが動作する区間をＳｍ＝１、計数値が第３設定値Ｌ３とゼロ値の間で第１カウンタ（２２）および第２カウンタ（２３）が同時に動作する区間をＳｍ＝２、計数値が第２設定値Ｌ２と第３設定値Ｌ３の間で第１カウンタ（２３）のみが動作する区間をＳｍ＝３と定義される。
【００８４】
第１状態レジスタ（２１ｂ）は、三角搬送波生成手段（２１ａ）およびＰＷＭ波形出力制御部（３）に接続され、三角搬送波生成手段（２１ａ）によって設定または更新されたカウンタモード値Ｓｍを出力してＰＷＭ波形出力制御部（３）に供給する。
【００８５】
以下、図１から図４に基づき、三角搬送波制御部（２）の動作を時系列（図３における時刻ｔ０からｔ９）に沿って説明する。なお、図３において横軸は時刻を、縦軸は計数値を示し、同図において、破線は第１カウンタ（２２）の計数値ｕｃｎｔを示し、実線は第２カウンタ（２３）の計数値ｄｃｎｔを示す。
【００８６】
三角搬送波生成手段（２１ａ）は、ＰＷＭ波形発生装置（１）の動作の開始を指令するＰＷＭスタート信号ＳＴＲとＰＷＭクロック信号ＣＫ０が供給されると、第２選択器（２５）に対し第３設定値Ｌ３の選択を指令する第２選択指令信号ＳＬ２を設定し供給する。
【００８７】
第２選択器（２５）は、第３設定値Ｌ３の選択を指令する第２選択指令信号ＳＬ２が供給されると、設定値レジスタ（４）から供給される第１設定値Ｌ１および第３設定値Ｌ３のうち第３設定値Ｌ３を選択して第２カウンタ（２３）に供給する。
【００８８】
そして、図３の時刻ｔ０において、三角搬送波生成手段（２１ａ）は、第１カウンタ（２２）に対し計数値ゼロからインクリメント動作を開始するように第１カウンタ制御信号ＳＣ１および第１カウンタクロック信号ＣＫ１を発生して第１カウンタ（２２）に供給するとともに、第２カウンタ（２３）に対し第２選択器（２５）から供給されている第３設定値Ｌ３を読み込んでデクリメント動作を開始するように第２カウンタ制御信号ＳＣ２および第２カウンタクロック信号ＣＫ２を発生して第２カウンタ（２３）に供給する。
【００８９】
このとき、三角搬送波生成手段（２１ａ）は、カウンタモード値Ｓｍを「２」と設定し、第１状態レジスタ（２１ｂ）に記憶する。
【００９０】
第１カウンタ（２２）は、第１カウンタ制御信号ＳＣ１および第１カウンタクロック信号ＣＫ１が供給されると、計数値をゼロにクリアして（ｕｃｎｔ＝０）インクリメント動作を開始する。第２カウンタ（２３）は、第２カウンタ制御信号ＳＣ２および第２カウンタクロック信号ＣＫ２が供給されると、第２選択器（２５）から供給される第３設定値Ｌ３を読み込んでデクリメント動作を開始する。このようにして、図３の時刻ｔ０から、第１カウンタ（２２）は計数値ゼロからインクリメント動作を開始し、第２カウンタ（２３）は第３設定値Ｌ３の計数値からデクリメント動作を開始する。
【００９１】
三角搬送波生成手段（２１ａ）は、第２カウンタ（２３）が第３設定値Ｌ３からのデクリメント動作を開始したら、第２選択器（２５）に対し第１設定値Ｌ１を選択するように第２選択指令信号ＳＬ２を更新し、第２選択器（２５）に供給する。
【００９２】
第２選択器（２５）は、第１設定値Ｌ１の選択を指令する第２選択指令信号ＳＬ２が供給されると、設定値レジスタ（４）から供給される第１設定値Ｌ１および第３設定値Ｌ３のうち第１設定値Ｌ１を選択して第２カウンタ（２３）に供給する。以降、三角搬送波制御部（２）の動作を停止されるまで、第２選択指令信号ＳＬ２の更新は行われず、第２選択器（２５）は第１設定値Ｌ１を出力し続ける。
【００９３】
次に、図３の時刻ｔ１において、第２カウンタ（２３）は、デクリメント動作により計数値ｄｃｎｔがゼロになると、カウントアップしたことを通知する第２カウンタゼロ信号ＺＣ２を発生して三角搬送波生成手段（２１ａ）に供給する。
【００９４】
三角搬送波生成手段（２１ａ）は、第２カウンタゼロ信号ＺＣ２が供給されると、第２カウンタ（２３）に対しデクリメント動作を停止して第２選択器（２５）から供給されている第２設定値Ｌ２を読み込むように第２カウンタ制御信号ＳＣ２を発生または更新して第２カウンタ（２３）に供給する。このとき、三角搬送波生成手段（２１ａ）は、カウンタモード値Ｓｍを「３」と設定し、第１状態レジスタ（２１ｂ）に記憶する。
【００９５】
第２カウンタ（２３）は、第２カウンタ制御信号ＳＣ２が供給されると、デクリメント動作を停止して第２設定値Ｌ２を読み込む。なお、この時点では、第２カウンタ（２３）のデクリメント動作を停止するだけにし、第２設定値Ｌ２の読み込みは、次のデクリメント動作の開始時に行うようにしてもよい。
【００９６】
次に、図３の時刻ｔ２において、第１比較器（２６）は、インクリメント動作中の第１カウンタ（２２）の計数値ｕｃｎｔと第１選択器（２４）から供給されている第２設定値Ｌ２が一致したことを検出すると、ｕｃｎｔ＝Ｌ２になったことを通知する第１比較信号ＣＭ１を発生して三角搬送波生成手段（２１ａ）に供給する。
【００９７】
三角搬送波生成手段（２１ａ）は、第１比較信号ＣＭ１が供給されると、第１選択器（２４）に供給している第１選択信号ＳＬ１により、ｕｃｎｔ＝Ｌ２であると判断し、第２カウンタ（２３）に対し第１設定値Ｌ１からデクリメント動作を開始するように第２カウンタ制御信号ＳＣ２を発生または更新して第２カウンタ（２３）に供給するとともに、第１選択器（２４）に対し第１設定値Ｌ１を選択するように第１選択指令信号ＳＬ１を設定して第１選択器（２４）に供給する。
【００９８】
このとき、三角搬送波生成手段（２１ａ）は、カウンタモード値Ｓｍを「０」と設定し、第１状態レジスタ（２１ｂ）に記憶する。
【００９９】
第２カウンタ（２３）は、第１設定値Ｌ１からのデクリメント動作の開始を指令する第２カウンタ制御信号ＳＣ２が供給されると、すでに読み込まれている第１設定値Ｌ１からのデクリメント動作を開始する。なお、この時点で、第２カウンタ（２３）は第１設定値Ｌ１を読み込んでから、デクリメント動作を開始するようにしてもよい。
【０１００】
次に、図３の時刻ｔ３において、第１比較器（２６）は、インクリメント動作中の第１カウンタ（２２）の計数値ｕｃｎｔと第１選択器（２４）から供給されている第１設定値Ｌ１が一致したことを検出すると、ｕｃｎｔ＝Ｌ１になったことを通知する第１比較信号ＣＭ１を発生して三角搬送波生成手段（２１ａ）に供給する。
【０１０１】
三角搬送波生成手段（２１ａ）は、第１比較信号ＣＭ１が供給されると、第１選択器（２４）に供給している第１選択信号ＳＬ１により、ｕｃｎｔ＝Ｌ１であると判断し、第１カウンタ（２２）に対しインクリメント動作を停止して、その計数値をクリア（ｕｃｎｔ＝０）するように第１カウンタ制御信号ＳＣ１を発生または更新して供給する。
【０１０２】
このとき、三角搬送波生成手段（２１ａ）は、カウンタモード値Ｓｍを「１」と設定し、第１状態レジスタ（２１ｂ）に記憶する。
【０１０３】
第１カウンタ（２２）は、インクリメント動作の停止と計数値のクリアを指令する第１カウンタ制御信号ＳＣ１が供給されると、第１カウンタ（２２）はカウント動作を停止し、その計数値をクリア（ｕｃｎｔ＝０）する。なお、ここでは、第１カウンタ（２２）のインクリメント動作を停止するだけにし、計数値のクリアは、次のインクリメント動作の開始時に行うようにしてもよい。
【０１０４】
次に、図３の時刻ｔ４において、第２比較器（２７）は、デクリメント動作中の第２カウンタ（２３）の計数値ｄｃｎｔと第３設定値Ｌ３が一致したことを検出したら、ｄｃｎｔ＝Ｌ３であることを通知する第２比較信号ＣＭ２を発生して三角搬送波生成手段（２１ａ）に供給する。
【０１０５】
三角搬送波生成手段（２１ａ）は、第２比較信号ＣＭ２が供給されると、ｄｃｎｔ＝Ｌ３であると判断し、第１カウンタ（２２）に対し計数値ゼロからインクリメント動作を開始するように第１カウンタ制御信号ＳＣ１を発生または更新して第１カウンタ（２２）に供給する。このとき、三角搬送波生成手段（２１ａ）は、カウンタモード値Ｓｍを「２」と設定し、第１状態レジスタ（２１ｂ）に記憶する。
【０１０６】
第１カウンタ（２２）は、計数値ゼロからインクリメント動作開始を指令する第１カウンタ制御信号ＳＣ１が供給されると、すでに計数値をクリアされているのでゼロ値からのインクリメント動作を開始する。なお、この時点で、第２カウンタ（２３）をゼロにクリアしてからインクリメント動作を開始するようにしてもよい。
【０１０７】
以上が、発生する三角搬送波の一周期の動作であり、図３の時刻ｔ５以降は、同図時刻１から時刻４の動作が繰り返される。すなわち、時刻ｔ５は時刻１と、時刻６は時刻２と、時刻７は時刻３と、時刻８は時刻４と、そして時刻９は再び時刻１と、同じ動作が実行される。
【０１０８】
図３に示すように、カウンタモードＳｍ＝０およびＳｍ＝２の区間では、第１カウンタ（２２）および第２カウンタ（２３）の計数値が交差する形の三角搬送波が生成される。もし、第１デッドタイムｔｄ１がゼロ（ｔｄ１＝０）の場合は、Ｓｍ＝２の区間がなくなり、第１カウンタ（２２）と第２カウンタ（２３）は計数値０（ゼロ）で接する形になる。もし、第２デッドタイムｔｄ２がゼロ（ｔｄ２＝０）の場合は、Ｓｍ＝０の区間がなくなり、第１カウンタ（２２）と第２カウンタ（２３）の計数値は第１設定値Ｌ１で接する形になる。
【０１０９】
次に、図１に基づき、ＰＷＭ波形出力制御部（３）の構成について説明する。ＰＷＭ波形出力制御部（３）は、第２制御部（３１）、第３カウンタ（３２）、第３選択器（３３）、第３比較器（３４）および第４比較器（３５）を備え、三角搬送波制御部（２）、設定値レジスタ（４）およびＰＷＭクロック生成部（５）に接続され、相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を出力する。
【０１１０】
第２制御部（３１）は、第３カウンタ（３２）、第３選択器（３３）、第３比較器（３４）、第４比較器（３５）および第１制御部（２１）に接続され、第３カウンタ（３２）から第３カウンタゼロ信号ＺＣ３が、第３比較器（３４）から第３比較信号ＣＭ３が、第４比較器（３５）から第４比較信号ＣＭ４が、および第１制御部（２１）からカウンタモード値Ｓｍがそれぞれ供給され、これらの信号に基づいて、ハイサイドＰＷＭ信号ＧＨおよびローサイドＰＷＭ信号ＧＬを発生または更新し、出力する。
【０１１１】
第３選択器（３３）は、設定値レジスタ（４）、第２制御部（３１）および第３カウンタ（３２）に接続され、設定値レジスタ（４）から第３設定値Ｌ３の第１デッドタイム値ｔｄ１および第２デッドタイム値ｔｄ２が供給され、第２制御部（３１）から第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方の選択を指令する第３選択指令信号ＳＬ３が供給され、第３選択指令信号ＳＬ３により第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方を選択し出力して第３カウンタ（３２）に供給する。
【０１１２】
第３カウンタ（３２）は、第２制御部（３１）および第３選択器（３３）に接続され、第２制御部（３１）から第３カウンタ制御信号ＳＣ３および第３カウンタクロック信号ＣＫ３が供給される。本実施例において、第３カウンタ（３２）は、第３カウンタ制御信号ＳＣ３が供給されると、第３選択器（３３）から供給される第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方を初期値としてデクリメント動作を開始し、カウントアップしたら(計数値がゼロになったら)、第３カウンタゼロ信号ＺＣ３を発生し（ＺＣ３＝１）出力して第２制御部（３１）に供給する。
【０１１３】
本実施例では、第３カウンタ（３２）にデクリメント動作を行うカウンタを使用した例を示しているが、第３カウンタ（３２）にインクリメント動作を行うカウンタを使用することも可能である。その場合には、第３選択器（３３）から供給される第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方のデッドタイム値と第３カウンタ（３２）の計数値を比較する比較器を追加し、それらが一致したときに一致信号を発生し出力して第２制御部（３１）に供給する。この一致信号は、第３カウンタにデクリメント動作を行うカウンタを使用したときの第３カウンタゼロ信号ＺＣ３と同じ役割をもつことになる。
【０１１４】
第３比較器（３４）は、設定値レジスタ（４）、第１カウンタ（２２）および第２制御部（３１）に接続され、設定値レジスタ（４）から目標デューティ値ｄｕｔｙが供給され、と、第１カウンタ（２２）からその計数値ｕｃｎｔが供給され、ｄｕｔｙとｕｃｎｔを比較し、その比較結果の第３比較信号ＣＭ３を発生または更新し出力して第２制御部（３１）へ供給する。
【０１１５】
第３比較器（３４）に入力される目標デューティ値ｄｕｔｙ［比較入力Ａ］と第１カウンタ（２２）の計数値ｕｃｎｔ［比較入力Ｂ］の大小比較関係は、イ）ｄｕｔｙとｕｃｎｔが一致した（Ａ＝Ｂ）場合、ロ）ｄｕｔｙがｕｃｎｔよりも小さい（Ａ＜Ｂ）場合、ハ）ｄｕｔｙがｕｃｎｔよりも大きい（Ａ＞Ｂ）場合の３通りある。第３比較器（３４）はそれら３つの状態に対応した第３比較信号ＣＭ３を発生または更新する。
【０１１６】
例えば、第３比較器（３４）が、Ａ＝ＢならばＣＭ３＝１、また、Ａ＜ＢならばＣＭ３＝２、また、Ａ＞ＢならばＣＭ３＝０を出力するようにした場合、第２制御部（３１）では、ＣＭ３＝１ならばｄｕｔｙ＝ｕｃｎｔ、また、ＣＭ３＝２ならばｄｕｔｙ＜ｕｃｎｔ、また、ＣＭ３＝０ならばｄｕｔｙ＞ｕｃｎｔの状態であると判断する。
【０１１７】
また、これら３つの状態に対応する個別の比較信号を発生または更新し出力するようにしてもよい。例えば、Ａ＝ＢであればＣＭ３１信号を、Ａ＜ＢであればＣＭ３２信号を、Ａ＞ＢであればＣＭ３３信号を発生または更新しし出力する。また、例えば、ＣＭ３３信号を省略して、ＣＭ３１信号およびＣＭ３２信号が出力されていないときはＡ＞Ｂと判断するようにしてもよい。
【０１１８】
第４比較器（３５）は、設定値レジスタ（４）、第２カウンタ（２３）および第２制御部（３１）に接続されており、第４比較器（３５）では設定値レジスタ（４）から供給される目標デューティ値ｄｕｔｙ［比較入力Ａ］と、第２カウンタ２２から供給される第２カウンタ（２３）の計数値ｄｃｎｔ［比較入力Ｂ］とを比較し、その比較結果の第４比較信号ＣＭ４を発生または更新し出力して第２制御部（３１）へ供給する。
【０１１９】
第４比較器（３５）に入力される目標デューティ値ｄｕｔｙ［比較入力Ａ］と第２カウンタ（２３）の計数値ｄｃｎｔ［比較入力Ｂ］の大小比較関係は、イ）ｄｕｔｙとｄｃｎｔが一致した（Ａ＝Ｂ）場合、ロ）ｄｕｔｙがｄｃｎｔよりも小さい（Ａ＜Ｂ）場合、ハ）ｄｕｔｙがｄｃｎｔよりも大きい（Ａ＞Ｂ）場合の３通りある。第４比較器（３５）はそれら３つの状態に対応した第４比較信号ＣＭ４を発生または更新し出力する。
【０１２０】
例えば、Ａ＝ＢならばＣＭ４＝１、また、Ａ＜ＢならばＣＭ４＝２、また、Ａ＞ＢならばＣＭ４＝０を出力するようにした場合、第２制御部（３１）では、ＣＭ４＝１ならばｄｕｔｙ＝ｕｃｎｔ、また、ＣＭ４＝２ならばｄｕｔｙ＜ｕｃｎｔ、また、ＣＭ４＝０ならばｄｕｔｙ＞ｕｃｎｔの状態であると判断する。
【０１２１】
また、これら３つの状態に対応する個別の比較信号を発生または更新し出力するようにしてもよい。例えば、Ａ＝ＢであればＣＭ４１信号を、Ａ＜ＢであればＣＭ４２信号を、Ａ＞ＢであればＣＭ４３信号を発生または更新しし出力する。また、例えば、ＣＭ４３信号を省略して、ＣＭ４１信号およびＣＭ４２信号が発生されていないときはＡ＞Ｂと判断するようにしてもよい。
【０１２２】
次ぎに、図４に基づき、第２制御部（３１）の構成および機能について説明する。第２制御部（３１）は、ＰＷＭ波形生成手段（３１ａ）および第２状態レジスタ（３１ｂ）を備え、三角搬送波制御部（２）、設定値レジスタ（４）、ＰＷＭクロック生成部（５）、第３カウンタ（３２）、第３選択器（３３）、第３比較器（３４）および第４比較器（３５）に接続される。
【０１２３】
ＰＷＭ波形出力制御部（３）の外部から入力され、第２制御部（３１）に供給される信号には、設定値レジスタ（４）からのＰＷＭスタート信号ＳＴＲと、ＰＷＭクロック生成部（５）からのＰＷＭクロック信号ＣＫ０がある。また、第２制御部（３１）で発生され、ＰＷＭ波形出力制御部（３）の外部へ出力する信号には、相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）がある。
【０１２４】
ＰＷＭ波形生成手段（３１ａ）は、ＰＷＭスタート信号ＳＴＲおよびＰＷＭクロック信号ＣＫ０が供給されると、三角搬送波制御部（２）からのカウンタモード値Ｓｍ、第３カウンタ（３２）からの第３カウンタゼロ信号ＺＣ３、第３比較器（３４）からの第３比較信号ＣＭ３、第４比較器（３５）からの第４比較信号ＣＭ４、および第２状態レジスタ（３１ｂ）からのＰＷＭ出力モード値Ｇｍとデッドタイムモード値Ｄｍと事前出力モード値Ｐｍに基づいて、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍを設定または更新し、第２状態レジスタ（３１ｂ）に格納する。
【０１２５】
ＰＷＭ波形生成手段（３１ａ）は、また、ＰＷＭ出力モード値Ｇｍに対応する相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を設定して出力する。相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）は、一般的には出力バッファ回路（図示せず）を介して、ＰＷＭ波形発生装置（１）の外部へ出力される。
【０１２６】
第２状態レジスタ（３１ｂ）は、ＰＷＭ波形生成手段（３１ａ）に接続され、ＰＷＭ波形生成手段（３１ａ）により設定または更新された、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍを出力し、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値ＰｍをＰＷＭ波形生成手段（３１ａ）に供給する。
【０１２７】
本実施例において、ＰＷＭ出力モード値Ｇｍと相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）の関係は、Ｇｍ＝０ならばＰＷＭ波形信号（０，０）を、Ｇｍ＝１ならばＰＷＭ波形信号（０，１）を、Ｇｍ＝２ならばＰＷＭ波形信号（１、０）を出力するように定義されている。そしてＧｍ＝３の設定は禁止され、ＰＷＭ波形信号（１，１）は出力されない。
【０１２８】
事前出力モード値Ｐｍは、ＰＷＭ波形生成手段（３１ａ）が、Ｇｍ＝１またはＧｍ＝２からＧｍ＝０に設定または更新して、デッドタイム状態に入るときに、その更新前のＧｍ＝１またはＧｍ＝２の値である。事前出力モード値Ｐｍは、デッドタイム動作中にＰＷＭデューティ値ｄｕｔｙが変更されて、元のＰＷＭ出力モード値Ｇｍに戻したい場合に、デッドタイム動作なしで復帰させるために設けられたパラメータである。したがって、デッドタイム動作中のＰＷＭデューティ値ｄｕｔｙ変更によりデッドタイムモード値Ｄｍを再設定するようにし、事前出力モード値Ｐｍを省略してもよい。
【０１２９】
デッドタイムモード値Ｄｍは、ＰＷＭ波形生成手段（３１ａ）がデッドタイムを生成するときに、第３カウンタ（３２）の初期値として設定される計数値に対応する。本実施例において、第３カウンタ（３２）が第１デッドタイム値ｔｄ１からデクリメント動作をスタートまたは再スタートした場合はＤｍ＝１、第３カウンタ（３２）が第２デッドタイム値ｔｄ２からデクリメント動作をスタートまたは再スタートした場合はＤｍ＝２、第３カウンタ（３２）が動作していない場合はＤｍ＝０と設定される。
【０１３０】
上記の例は、第３カウンタ（３２）にデクリメント動作を行うカウンタを使用した例を示しているが、第３カウンタ（３２）にインクリメント動作を行うカウンタを使用した場合は、第１デッドタイム値ｔｄ１または第２デッドタイム値ｔｄ２のいずれか一方の選択を指令する第３選択信号ＳＬ３がデッドタイムモード値Ｄｍに対応する。第１デッドタイム値ｔｄ１を選択してデッドタイム動作を行う場合はＤｍ＝１、第２デッドタイム値ｔｄ２の選択を選択してデッドタイム動作を行う場合はＤｍ＝２、デッドタイム動作を行わない場合はＤｍ＝０と設定される。
【０１３１】
次に第２制御部（３１）の動作について説明する。ＰＷＭ波形生成手段（３１ａ）は、ＰＷＭ波形生成手段（３１ａ）に供給される、カウンタモード値Ｓｍ、第３カウンタゼロ信号ＺＣ３、第３比較信号ＣＭ３、第４比較信号ＣＭ４、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍに基づき、第３カウンタ（３２）および第３選択器（３３）を制御し、第２状態レジスタ（３１ｂ）の内容を設定または更新する。
【０１３２】
本実施例では、目標デューティ値ｄｕｔｙと第１カウンタ（２２）の計数値ｕｃｎｔとの比較結果である第１比較信号ＣＭ１および目標デューティ値ｄｕｔｙと第２カウンタ（２３）の計数値ｄｃｎｔとの比較結果である第２比較信号ＣＭ２の少なくとも一方の信号と、カウンタモード値Ｓｍ、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍから、ＰＷＭ波形信号の発生または更新に繋がる事象および状態の発生をイベントとし、それらのイベントに優先順位をつけ、さらにカウンタモード値Ｓｍより分類した一覧表を図５から図９に示す。
【０１３３】
図５から図９の一覧表の左側の欄には、イベントの発生要因となる、カウンタモード値Ｓｍ、目標デューティ値ｄｕｔｙと第１カウンタ（２２）の計数値との比較結果、目標デューティ値ｄｕｔｙと第２カウンタ（２３）の計数値との比較結果、イベント発生時の動作状態を表す更新前の、ＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍの項目がある。それらの一覧表の右側の欄には、イベントにより更新されるＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍの項目がある。
【０１３４】
イベント発生要件（一覧表の左側の欄）は、先ずカウンタモード値Ｓｍをチェックし、次にカウンタモード値Ｓｍごとの一覧表にて、優先順位にしたがって、イベントの発生要因をチェックして、イベントを発生する事象および状態が見つかれば、該当するイベントＮｏの更新内容（一覧表の右側の欄）が実行される。
【０１３５】
また、図５から図９に示したイベント発生時の更新条件に、第１デッドタイム値ｔｄ１および第２デッドタイム値ｔｄ２を含めている。それは、第１デッドタイム値ｔｄ１および第２デッドタイム値ｔｄ２のうち少なくとも一方がゼロの場合にも対応できるようにしたからである。ｔｄ１＝０またはｔｄ２＝０の場合は、該当するデッドタイム動作なしで、Ｇｍのみが更新されて、ＰｍおよびＤｍはともに「０」が設定されることになる。
【０１３６】
一般的なＰＷＭパワーインバータではデッドタイムが不可欠なので、ｔｄ１＝０およびｔｄ２＝０が含まれるイベントは省略してもよい。アーム短絡防止のため、デッドタイムありが基本なので、以降の説明ではデッドタイムがゼロのイベントについては省略する。
【０１３７】
最初に、基本動作の説明のために、第１カウンタ（２２）のみが動作するＳｍ＝１の区間、次に第２カウンタ（２３）のみが動作するＳｍ＝３について説明する。それらの区間では、従来の一般的なＰＷＭ波形発生装置の動作例を示した、図１９の時刻１から時刻４、図２０の時刻１の時刻１および図２０の時刻１における動作と基本的に同じである。
【０１３８】
Ｓｍ＝１の区間での本実施例を図６に示す。Ｓｍ＝１の区間では、目標デューティ値ｄｕｔｙと第２カウンタ（２３）の計数値ｄｃｎｔの比較結果のみを利用し、ｄｕｔｙ＝ｄｃｎｔに伴うイベントが最優先される。この区間の基本的な制御は、ｄｕｔｙ≧ｄｃｎｔと判断されたとき、ローサイドＰＷＭ信号ＧＬをオフして、ハイサイドＰＷＭ信号ＧＨをオンにするように動作し、ｄｕｔｙ＜ｄｃｎｔと判断されたときには、ハイサイドＰＷＭ信号ＧＨをオフして、ローサイドＰＷＭ信号ＧＬをオンにするように動作する。
【０１３９】
Ｓｍ＝１、かつ、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｄｃｎｔとなるとき、ＰＷＭ波形生成手段（３１ａ）は、第３選択器（３３）に対し第２デッドタイム値ｔｄ２の選択を指令する第３選択指令信号ＳＬ３を発生または更新して供給する。第３選択器（３３）は、第２デッドタイム値ｔｄ２の選択を指令する第３選択指令信号ＳＬ３を供給されると、第２デッドタイム値ｔｄ２を選択して第３カウンタ（３２）に供給する。そして、ＰＷＭ波形生成手段（３１ａ）は、第２状態レジスタ（３１ｂ）にＰｍ＝１を記憶して、Ｇｍ＝０およびＤｍ＝２を設定するとともに、第３カウンタ（３２）に対し第３選択器（３３）から出力される計数値、この場合、第２デッドタイム値ｔｄ２を読み込んでデクリメント動作を開始するように第３カウンタ制御信号ＳＣ３と第３カウンタクロック信号ＣＫ３を発生または更新して第３カウンタ（３２）に供給する。第３カウンタ（３２）は、第３カウンタ制御信号ＳＣ３と第３カウンタクロック信号ＣＫ３を供給されると、３選択器（３３）から出力される計数値、この場合、第２デッドタイム値ｔｄ２を読み込んでデクリメント動作を開始する。これは、図６のイベントＮｏ３０に該当する。
【０１４０】
上記のような動作手順の説明を、以降は、「Ｓｍ＝１、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、イベントＮｏ３０に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する」というように簡単化して表現する。
【０１４１】
Ｓｍ＝１、Ｇｍ＝１の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、イベントＮｏ３９に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１４２】
Ｓｍ＝１、Ｇｍ＝０の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、イベントＮｏ３２に該当する。ところで、Ｇｍ＝０であれば、Ｄｍ＝１またはＤｍ＝２のどちらかのデッドタイム動作中であるが、ここではどちらの場合でも、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝２とし、第３カウンタ（３２）に計数値ｔｄ２を再設定してデッドタイム動作を継続する。以降、これを「Ｇｍ、Ｐｍは変更せず、Ｄｍ＝２のデッドタイム動作に切換える」と表現する。
【０１４３】
Ｓｍ＝１、Ｇｍ＝０の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、イベントＮｏ４１に該当する。このときは、Ｄｍ＝１のデッドタイム動作中である場合のみ、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝２のデッドタイム動作に切換える。したがって、Ｄｍ＝２のデッドタイム動作中である場合は、第３カウンタ（３２）に計数値ｔｄ２を再設定せずに、Ｄｍ＝２のデッドタイム動作をそのまま継続する。
【０１４４】
Ｓｍ＝１、Ｇｍ＝０の場合に、ｄｕｔｙ＜ｄｃｎｔとなるときは、Ｄｍ≠１かつＰｍ＝２ならば、図６のイベントＮｏ３５に該当するので、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝１のデッドタイム動作に切換える。このとき、Ｄｍ≠１かつＰｍ≠２ならば、図６のイベントＮｏ３６に該当するので、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０１４５】
Ｓｍ＝１、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、イベントＮｏ２８に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。これは、そのタイミングでｄｕｔｙ＞ｄｃｎｔからｄｕｔｙ＝ｄｃｎｔに変更されたときに発生するイベントである。図６の実施例では、それ以降を、図６のイベントＮｏ３０の、Ｓｍ＝１、Ｇｍ＝１、ｄｕｔｙ＝ｄｃｎｔのときのＰＷＭ波形信号と同じになるようにしている。
【０１４６】
Ｓｍ＝１、Ｇｍ＝２の場合に、ｄｕｔｙ＜ｄｃｎｔとなるときは、イベントＮｏ３４に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１４７】
Ｓｍ＝１、Ｇｍ＝２の場合に、ｄｕｔｙ＞ｄｃｎｔであれば、Ｇｍを変更する必要がないので、基本的にイベントは発生しない（したがって、図６にない）。
【０１４８】
次に、Ｓｍ＝３の区間での本実施例を図８に示す。Ｓｍ＝３の区間では、目標デューティ値ｄｕｔｙと第１カウンタ（２３）の計数値ｕｃｎｔの比較結果のみを利用し、ｄｕｔｙ＝ｕｃｎｔに伴うイベントが最優先される。この区間の基本的な制御は、ｄｕｔｙ≦ｕｃｎｔと判断されたとき、ハイサイドＰＷＭ信号ＧＨをオフして、ローサイドＰＷＭ信号ＧＬをオンにし、ｄｕｔｙ＞ｄｃｎｔと判断されたときには、ローサイドＰＷＭ信号ＧＬをオフして、ハイサイドＰＷＭ信号ＧＨをオンする。
【０１４９】
Ｓｍ＝３、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｕｃｎｔとなるときは、イベントＮｏ７０に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１５０】
Ｓｍ＝３、Ｇｍ＝２の場合に、ｄｕｔｙ＜ｕｃｎｔとなるときは、イベントＮｏ７２に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１５１】
Ｓｍ＝３、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｕｃｎｔとなるときは、のイベントＮｏ７１に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。これは、そのタイミングでｄｕｔｙ＜ｄｃｎｔからｄｕｔｙ＝ｄｃｎｔに変更されたときに発生するイベントで、本実施例では、それ以降を、図８のイベントＮｏ７０の、Ｓｍ＝３およびＧｍ＝２、ｄｕｔｙ＝ｕｃｎｔの場合と同じＰＷＭ波形信号を発生するようにしている。
【０１５２】
Ｓｍ＝３、Ｇｍ＝１の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、イベントＮｏ７５に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。
【０１５３】
Ｓｍ＝３およびＧｍ＝１の場合に、ｄｕｔｙ＜ｕｃｎｔであれば、Ｇｍを変更する必要がないので、基本的にイベントは発生しない。
【０１５４】
Ｓｍ＝３、Ｇｍ＝０の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、イベントＮｏ７３に該当するので、Ｄｍ値に無関係に、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝１のデッドタイム動作に切換える。
【０１５５】
Ｓｍ＝３およびＧｍ＝０の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、Ｄｍ≠２およびＰｍ＝１ならば、イベントＮｏ７６に該当するので、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝２のデッドタイム動作に切換える。このとき、Ｄｍ≠２およびＰｍ≠１ならば、イベントＮｏ７７に該当するので、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０１５６】
Ｓｍ＝３、Ｇｍ＝０の場合に、ｄｕｔｙ＜ｄｃｎｔとなるときは、イベントＮｏ８２に該当するので、Ｄｍ＝２の場合のみ、Ｇｍ、Ｐｍは変更せず、Ｄｍ＝１のデッドタイム動作に切換える。
【０１５７】
Ｓｍ＝３、Ｇｍ＝１の場合に、ｄｕｔｙ＜ｕｃｎｔであれば、Ｇｍを変更する必要がないので、基本的にイベントは発生しない（したがって、図８にない）。
【０１５８】
次に、Ｓｍ＝０の区間での本実施例を図５に示す。この区間では、ＰＷＭデューティ値ｄｕｔｙが変更されなければ、ｄｕｔｙ＝ｄｃｎｔおよびｄｕｔｙ＝ｕｃｎｔの両方のイベントが発生し、それらの発生する順番でＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍの更新方法が異なっている。この区間では、ｄｕｔｙ＝ｄｃｎｔに伴うイベントが最優先される。
【０１５９】
Ｓｍ＝０、Ｇｍ＝２の場合に、先にｄｕｔｙ＝ｄｃｎｔが発生する場合、このとき、ｄｕｔｙ＞ｕｃｎｔであれば、図５のイベントＮｏ２に該当するので、ＧｍおよびＰｍは変更せずに、Ｄｍ＝２のデッドタイム動作を開始する。その後、ｄｕｔｙ＝ｕｃｎｔが発生したとき、ｄｕｔｙ＞ｄｃｎｔであれば、図５のイベントＮｏ８に該当するので、Ｄｍ＝２のデッドタイム動作をそのまま継続するとともに、Ｐｍ＝２を記憶してＧｍ＝０とする。
【０１６０】
Ｓｍ＝０、Ｇｍ＝２の場合に、先にｄｕｔｙ＝ｕｃｎｔが発生したときは、ｄｕｔｙ＜ｄｃｎｔであれば、イベントＮｏ７に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。その後、ｄｕｔｙ＝ｄｃｎｔが発生したとき、ｄｕｔｙ＜ｕｃｎｔであれば、イベントＮｏ５に該当するので、ＧｍおよびＰｍは変更せず、Ｄｍ＝２のデッドタイム動作に切り換える。
【０１６１】
Ｓｍ＝０、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｄｃｎｔおよびｄｕｔｙ＝ｕｃｎｔが同時に発生したときは、イベントＮｏ１に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６２】
Ｓｍ＝０におけるその他のイベントは、基本的に、ｄｕｔｙが変更されたことによって発生する。
【０１６３】
Ｓｍ＝０、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｄｃｎｔが発生したときは、ｄｕｔｙ＜ｕｃｎｔであれば、イベントＮｏ１に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。これは、イベントＮｏ２によって起動されたＤｍ＝２のデッドタイム動作中に、ｄｕｔｙが変更された場合に発生し得るイベントである。
【０１６４】
Ｓｍ＝０、Ｇｍ＝２の場合に、ｄｕｔｙ＜ｕｃｎｔとなるときは、ｄｕｔｙ＜ｄｃｎｔであれば、イベントＮｏ１６に該当するので、Ｐｍ＝２を記憶してＧｍ＝０にし、Ｄｍ＝１のデッドタイム動作を開始する。他方、このとき、ｄｕｔｙ＞ｄｃｎｔであれば、イベントＮｏ１７に該当するので、Ｐｍ＝２を記憶してＧｍ＝０にし、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６５】
Ｓｍ＝０、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、イベントＮｏ３に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６６】
Ｓｍ＝０、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｕｃｎｔとなるときは、ｄｕｔｙ＜ｄｃｎｔであれば、イベントＮｏ１０に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。他方、このとき、ｄｕｔｙ＞ｄｃｎｔであれば、イベントＮｏ１１に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６７】
Ｓｍ＝０、Ｇｍ＝１の場合に、ｄｕｔｙ＞ｕｃｎｔとなるときは、ｄｕｔｙ≠ｄｃｎｔであれば、イベントＮｏ２０に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６８】
Ｓｍ＝０、Ｇｍ＝１の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、ｄｕｔｙ≠ｕｃｎｔであれば、イベントＮｏ２１に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。
【０１６９】
Ｓｍ＝０、Ｇｍ＝０の場合に、ｄｕｔｙ＞ｕｃｎｔとなるときは、Ｐｍ≠１であれば、図５のイベントＮｏ２２に該当するので、Ｇｍ＝２、Ｐｍ＝０とする。更に、このとき、Ｄｍ＝１、かつ、ｄｕｔｙ＞ｄｃｎｔであれば、図５のイベントＮｏ２３に該当するので、Ｄｍ＝２のデッドタイム動作に切り換える。他方、このとき、Ｄｍ＝１、かつ、ｄｕｔｙ＜ｄｃｎｔであれば、図５のイベントＮｏ２４に該当するので、Ｄｍ＝０とし、デッドタイム動作を停止する。ここで、イベントＮｏ２２は、イベントＮｏ２３またはイベントＮｏ２４と同時に実行される場合がある。
【０１７０】
Ｓｍ＝０（図５）のその他のイベントについては、説明を割愛する。
【０１７１】
次に、Ｓｍ＝２の区間での本実施例を図７に示す。この区間では、ＰＷＭデューティ値ｄｕｔｙが変更されなければ、ｄｕｔｙ＝ｄｃｎｔおよびｄｕｔｙ＝ｕｃｎｔの両方のイベントが発生し、それらの発生する順番でＰＷＭ出力モード値Ｇｍ、事前出力モード値Ｐｍおよびデッドタイムモード値Ｄｍの更新方法が異なっている。この区間では、ｄｕｔｙ＝ｄｃｎｔに伴うイベントが最優先される。
【０１７２】
Ｓｍ＝２、Ｇｍ＝１の場合に、先にｄｕｔｙ＝ｕｃｎｔが発生したときは、ｄｕｔｙ＜ｄｃｎｔであれば、イベントＮｏ４４に該当するので、ＧｍおよびＰｍは変更せずに、Ｄｍ＝１のデッドタイム動作を開始する。その後、ｄｕｔｙ＝ｄｃｎｔが発生したとき、ｄｕｔｙ＜ｕｃｎｔであれば、イベントＮｏ５１に該当するので、Ｄｍ＝１のデッドタイム動作はそのまま継続するとともに、Ｐｍ＝１を記憶してＧｍ＝０とする。
【０１７３】
Ｓｍ＝２、Ｇｍ＝１の場合に、先にｄｕｔｙ＝ｄｃｎｔが発生したときは、ｄｕｔｙ＞ｕｃｎｔであれば、イベントＮｏ５０に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝２のデッドタイム動作を開始する。その後、ｄｕｔｙ＝ｕｃｎｔが発生したとき、ｄｕｔｙ＞ｄｃｎｔであれば、イベントＮｏ４６に該当するので、ＧｍおよびＰｍは変更せず、Ｄｍ＝１のデッドタイム動作に切り換える。
【０１７４】
Ｓｍ＝２、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｄｃｎｔおよびｄｕｔｙ＝ｕｃｎｔが同時に発生したときは、イベントＮｏ４３に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１７５】
Ｓｍ＝２におけるその他のイベントは、基本的に、ｄｕｔｙが変更されたことによって発生する。
【０１７６】
Ｓｍ＝２、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｕｃｎｔが発生したときは、ｄｕｔｙ＞ｄｃｎｔであれば、イベントＮｏ４３に該当するので、Ｐｍ＝１を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。これは、イベントＮｏ４４によって起動されたＤｍ＝１のデッドタイム動作中に、ｄｕｔｙが変更された場合に発生し得るイベントである。
【０１７７】
Ｓｍ＝２、Ｇｍ＝１の場合に、ｄｕｔｙ＞ｄｃｎｔとなるときは、ｄｕｔｙ＞ｕｃｎｔであれば、イベントＮｏ５９に該当するので、Ｐｍ＝１を記憶してＧｍ＝０にし、Ｄｍ＝２のデッドタイム動作を開始する。他方、このとき、ｄｕｔｙ＜ｕｃｎｔであれば、イベントＮｏ６０に該当するので、Ｐｍ＝１を記憶してＧｍ＝０にし、Ｄｍ＝１のデッドタイム動作を開始する。
【０１７８】
Ｓｍ＝２、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｕｃｎｔとなるときは、イベントＮｏ４２に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１７９】
Ｓｍ＝２、Ｇｍ＝２の場合に、ｄｕｔｙ＝ｄｃｎｔとなるときは、ｄｕｔｙ＞ｕｃｎｔであれば、イベントＮｏ４７に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。他方、このとき、ｄｕｔｙ＜ｄｃｎｔであれば、イベントＮｏ４８に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０１８０】
Ｓｍ＝２、Ｇｍ＝２の場合に、ｄｕｔｙ＜ｄｃｎｔとなるときは、ｄｕｔｙ≠ｕｃｎｔであれば、イベントＮｏ５６に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１８１】
Ｓｍ＝２、Ｇｍ＝２の場合に、ｄｕｔｙ＜ｕｃｎｔとなるときは、このとき、ｄｕｔｙ≠ｄｃｎｔであれば、イベントＮｏ５７に該当するので、Ｐｍ＝２を記憶してＧｍ＝０とするとともに、Ｄｍ＝１のデッドタイム動作を開始する。
【０１８２】
Ｓｍ＝２、Ｇｍ＝０の場合に、ｄｕｔｙ＜ｄｃｎｔとなるときは、Ｐｍ≠２であれば、イベントＮｏ６３に該当するので、Ｇｍ＝１、Ｐｍ＝０とする。更に、このとき、Ｄｍ＝２、かつ、ｄｕｔｙ＜ｕｃｎｔあれば、イベントＮｏ６４に該当するので、Ｄｍ＝１のデッドタイム動作に切り換える。他方、このとき、Ｄｍ＝２、かつ、ｄｕｔｙ＞ｕｃｎｔであれば、イベントＮｏ６５に該当するので、Ｄｍ＝０とし、デッドタイム動作を停止する。ここで、イベントＮｏ６３と、イベントＮｏ６４またはイベントＮｏ６５は同時に実施される場合がある。
【０１８３】
Ｓｍ＝２（図７）のその他のイベントについては、説明を割愛する。
【０１８４】
図９は、イベントＮｏ１からＮｏ８２に該当するイベントが発生していない場合に、第３カウンタ（３２）がカウントアップして、ＺＣ３＝１が発生したとき、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍおよび事前出力モード値Ｐｍを更新する規則を示す表である。同図に示すように、Ｇｍ＝０、Ｄｍ＝２の場合に、ＺＣ３＝１が発生したときは、イベントＮｏ８３に該当するので、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。また、Ｇｍ＝０、Ｄｍ＝１の場合に、ＺＣ３＝１が発生したときは、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。また、Ｇｍ≠０の場合に、ＺＣ３＝１が発生したときは、イベントＮｏ８５に該当し、ＧｍおよびＰｍは変更せずに、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０１８５】
（動作の説明）次に、本発明の実施例で示したＰＷＭ波形発生装置（１）における、具体的な動作例を図１０から図１５を用いて説明する。図１０から図１５において、最上段には第１カウンタ（２２）の計数値ｕｃｎｔと第２カウンタ（２３）の計数値ｄｃｎｔでそれらの動作を表すタイミング・チャートが示されている。このタイミング・チャートは、横軸に時刻を示し、縦軸に計数値が示されており、第１カウンタ（２２）から出力される計数値ｕｃｎｔを破線で、第２カウンタ（２３）から出力される計数値ｄｃｎｔを実線で示している。その下には、カウンタモード値Ｓｍ、ＰＷＭ出力モード値Ｇｍ、デッドタイムモード値Ｄｍ、および事前出力モード値Ｐｍを表示している。さらにその下に、発生したイベント発生要因を図５から図９におけるイベントＮｏで表示し、その下は、第３カウンタ（３２）の動作を表す計数値ＤＴｃｎｔと、ＰＷＭ出力状態部（３１ｃ）から出力される相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を示すタイミング・チャートを表示している。
【０１８６】
図１０は、目標デューティ値ｄｕｔｙが、第３設定値Ｌ３と第２設定値Ｌ２の間の値に設定され、変化しない場合のＰＷＭ波形発生装置（１）の動作を示すものである。
【０１８７】
図１０の時刻ｔ１（ｔ５）において、Ｓｍ＝３、ｄｕｔｙ＝ｄｃｎｔ、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０であるので、イベントＮｏ７０に該当し、Ｐｍ＝２を記憶してＧｍ＝０にするとともに、Ｄｍ＝１のデッドタイム動作を開始する。同図時刻ｔ２（ｔ６）において、Ｓｍ＝３、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１、ＺＣ３＝１であるので、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０１８８】
図１０の時刻ｔ３（ｔ７）において、Ｓｍ＝１、ｄｕｔｙ＝ｕｃｎｔ、Ｇｍ＝１であるので、イベントＮｏ３０に該当し、Ｇｍ＝０、Ｄｍ＝２、Ｐｍ＝１に更新され、第３カウンタ（３２）は、計数値ｔｄ２からデクリメント動作を開始する。同図時刻ｔ４（ｔ８）において、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２、ＺＣ３＝１であるので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０に更新され、第３カウンタ（３２）はデクリメント動作を停止する。
【０１８９】
図１１は、目標デューティ値ｄｕｔｙが、第３設定値Ｌ３と第２設定値Ｌ２の間の値に設定され、変化する場合のＰＷＭ波形発生装置（１）の動作を示すものである。ここで、同図時刻ｔ５および時刻ｔ７においてｄｕｔｙが変更されて、ｄｕｔｙとｕｃｎｔ、または、ｄｕｔｙとｄｃｎｔとの比較結果が変化している。同図時刻ｔ５および時刻ｔ７におけるイベント発生によるＰＷＭ波形発生装置（１）の動作について以下説明する。
【０１９０】
図１１の時刻ｔ５において、Ｓｍ＝３、ｄｕｔｙ＜ｕｃｎｔ、Ｇｍ＝２であるので、イベントＮｏ８０に該当し、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１に更新され、第３カウンタ（３２）は、計数値ｔｄ１からデクリメント動作を開始する。そして、同図時刻ｔ６において、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１、ＺＣ３＝１で、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０に更新され、第３カウンタ（３２）はデクリメント動作を停止する。
【０１９１】
図１１の時刻ｔ７において、Ｓｍ＝１、ｄｕｔｙ＞ｄｃｎｔ、Ｇｍ＝１で、イベントＮｏ３９に該当する。したがって、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２に更新され、第３カウンタ（３２）は、計数値ｔｄ２からデクリメント動作を開始する。同図時刻ｔ８において、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２、ＺＣ３＝１で、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０に更新され、第３カウンタ（３２）はデクリメント動作を停止する。
【０１９２】
続いて、あるイベントにより、Ｇｍ＝０とし、デッドタイム動作が開始された後に、そのデッドタイム動作中に、次のイベントが発生した場合の動作を、図１２および図１３に基づいて説明する。
【０１９３】
図１２において、時刻ｔ３にて、ｄｃｎｔのラインに対してｄｕｔｙのラインが水平方向で交差し、それによって開始したデッドタイム動作中の同図時刻ｔ４にて、ｄｕｔｙが変化して、ｄｃｎｔのラインに対してｄｕｔｙのラインが垂直方向で再び交差している。また、同図時刻ｔ８にて、ｄｕｔｙが変化して、ｕｃｎｔのラインに対してｄｕｔｙのラインが垂直方向で交差し、それによって開始したデッドタイム時間中の同図時刻ｔ９にて、ｕｃｎｔのラインに対してｄｕｔｙのラインが水平方向で再び交差している。このような場合の動作について、以下に説明する。
【０１９４】
図１２の時刻ｔ３において、Ｓｍ＝１、Ｇｍ＝１の場合に、ｄｕｔｙ＝ｄｃｎｔとなるので、イベントＮｏ３０が該当し、Ｐｍ＝１を記憶しＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。
【０１９５】
その後、同図時刻４において、ｄｕｔｙが小さい値に変更され、ｄｕｔｙ＜ｄｃｎｔとなる。このとき、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２であるので、イベントＮｏ３６に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０１９６】
本実施例では上述のように設定されているが、Ｓｍ＝１、Ｇｍ＝０、Ｐｍ＝１の状態で、Ｄｍ＝２のデクリメント動作中に、ｄｕｔｙ＜ｄｃｎｔと判断されたときには、ＧｍおよびＰｍは変更せずに、Ｄｍ＝１のデッドタイム動作に切り換えるようにしてもよい。
【０１９７】
図１２の時刻ｔ９において、Ｓｍ＝３、Ｇｍ＝１のときに、ｄｕｔｙが大きい値に変更され、ｄｕｔｙ＞ｕｃｎｔとなるので、イベントＮｏ７５に該当し、Ｐｍ＝１を記憶しＧｍとし、Ｄｍ＝２のデッドタイム動作を開始する。
【０１９８】
その後、同図時刻ｔ１０において、Ｓｍ＝３、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２のときに、ｄｕｔｙ＝ｕｃｎｔとなるので、イベントＮｏ７３に該当し、ＧｍおよびＰｍは変更せずに、Ｄｍ＝１のデッドタイム動作に切り換える。これは、以降のＰＷＭ波形信号を、Ｓｍ＝３、Ｇｍ＝２のとき、ｄｕｔｙ＝ｕｃｎｔとなった場合のイベント７０により発生されるＰＷＭ波形信号と同じにしているからである。
【０１９９】
本実施例では上述のように設定されているが、Ｓｍ＝３、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２のときに、ｄｕｔｙ＝ｕｃｎｔと判断された場合は、Ｇｍ＝１に戻し、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止してもよい。
【０２００】
図１３は、図１２と同様に短い時間内に続けてイベントが発生する場合の動作例を示している。図１３は、ｄｕｔｙの変化によるイベントと、ｄｕｔｙ＝ｕｃｎｔまたはｄｕｔｙ＝ｄｃｎｔによるイベントの発生順序が、図１２の場合と逆になっている。
【０２０１】
図１３の時刻ｔ５において、Ｓｍ＝１、Ｇｍ＝２のときに、ｄｕｔｙが小さい値に変更され、ｄｕｔｙ＜ｄｃｎｔとなるので、イベント３４に該当し、Ｐｍ＝２を記憶しＧｍ＝０とし、Ｄｍ＝１のデクリメント動作を開始する。
【０２０２】
同図時刻ｔ６において、Ｓｍ＝１、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１のときに、ｄｕｔｙ＝ｄｃｎｔとなるので、イベントＮｏ３２に該当し、ＧｍおよびＰｍは変更せずに、Ｄｍ＝２のデッドタイム動作に切り換える。これは、以降のＰＷＭ波形信号を、Ｓｍ＝１、Ｇｍ＝１のとき、ｄｕｔｙ＝ｄｃｎｔとなった場合のイベント３０により発生されるＰＷＭ波形信号と同じにしているからである。
【０２０３】
本実施例では、このように設定されているが、Ｓｍ＝１、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１のときに、ｄｕｔｙ＝ｄｃｎｔと判断された場合は、Ｇｍ＝２に戻し、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止してもよい。
【０２０４】
図１３の時刻ｔ８において、Ｓｍ＝３、Ｇｍ＝２のときに、ｄｕｔｙ＝ｕｃｎｔとなるので、イベントＮｏ７０に該当し、Ｐｍ＝２を記憶しＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０２０５】
同図時刻ｔ９において、ｄｕｔｙが大きい値に変更され、ｄｕｔｙ＞ｕｃｎｔとなる。このとき、Ｓｍ＝３、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１であるので、イベントＮｏ７７に該当して、Ｇｍ＝２に戻し、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２０６】
本実施例では、このように設定されているが、Ｓｍ＝３、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１のときに、ｄｕｔｙ＞ｄｃｎｔと判断された場合、Ｇｍ、Ｐｍは変更せずに、Ｄｍ＝２のデッドタイム動作に切り換えてもよい。
【０２０７】
図１４および図１５は、ｄｕｔｙが高い値（第２設定値Ｌ２から第１設定値Ｌ１の間）に設定された場合の動作を示す図である。これは、Ｓｍ＝０の区間でイベントが発生することを意味する。従来のＰＷＭ波形発生装置では、このような高いＰＷＭデューティ値に対応したＰＷＭ波形信号を発生できないという問題点があった。
【０２０８】
Ｓｍ＝０の区間では、第１カウンタ（２２）から出力される計数値ｕｃｎｔのラインと、第２カウンタ（２３）から出力される計数値ｄｃｎｔのラインは、第１設定値Ｌ１から第２デッドタイム値の半分ｔｄ２ｈを差引いた値、すなわち計数値ＬＣＨ（＝Ｔｈ＋ｔｄ１ｈ）にて交差している。
【０２０９】
図１４において、ｄｕｔｙは、最初にＬ２に設定されおり、それが最初のＳｍ＝０の区間を過ぎてから、２番目のＳｍ＝０の区間に入る前に、Ｌ２＜ｄｕｔｙ＜ＬＣＨの値に変更され、さらに、２番目のＳｍ＝０の区間を過ぎてから、３番目のＳｍ＝０の区間に入る前に、ＬＣＨに変更されている。以下、図１４に基づき、本実施例での動作を説明する。
【０２１０】
図１４の時刻ｔ１において、ｕｃｎｔ＝Ｌ２となり、第２カウンタ（２３）が第１設定値Ｌ１からインクリメント動作を開始し、Ｓｍ＝０の区間の始点になっている。同時に、ｄｕｔｙ＝ｕｃｎｔとなっていて、このとき、Ｇｍ＝２、ｄｕｔｙ＜ｄｃｎｔであるので、イベントＮｏ７に該当し、Ｐｍ＝２を記憶しＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０２１１】
同図時刻ｔ２において、ｕｃｎｔ＝Ｌ１となり、第１カウンタ（２２）がインクリメント動作を停止し、Ｓｍ＝１の区間の始点になっている。同時に、ｄｕｔｙ＝ｄｃｎｔとなっていて、このとき、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１であるので、イベントＮｏ３２に該当し、ＧｍおよびＰｍは変更せずに、Ｄｍ＝２のデッドタイム動作に切り換える。
【０２１２】
同図時刻ｔ３において、Ｇｍ＝０、Ｄｍ＝２のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２１３】
図１４の時刻ｔ４において、Ｓｍ＝０、Ｇｍ＝２、ｄｕｔｙ＜ｄｃｎｔのときに、ｄｕｔｙ＝ｕｃｎｔとなっているので、イベントＮｏ７に該当し、Ｐｍ＝２を記憶しＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０２１４】
同図時刻ｔ５において、Ｓｍ＝０、Ｇｍ＝０、Ｐｍ＝２、Ｄｍ＝１、ｄｕｔｙ＞ｕｃｎｔのときに、ｄｕｔｙ＝ｄｃｎｔとなっているので、イベントＮｏ５に該当し、ＧｍおよびＰｍは変更せずに、Ｄｍ＝２のデッドタイム動作に切り換える。
【０２１５】
同図時刻ｔ６において、Ｇｍ＝０、Ｄｍ＝２のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２１６】
図１４の時刻ｔ７において、ｄｕｔｙ＝ｄｃｎｔとなると同時にｄｕｔｙ＝ｕｃｎｔとなっている。このとき、Ｓｍ＝０、Ｇｍ＝２であるので、イベントＮｏ１に該当し、Ｐｍ＝２を記憶しＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。
【０２１７】
同図時刻ｔ８において、Ｇｍ＝０、Ｄｍ＝２のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２１８】
続いて、目標デューティ値ｄｕｔｙを上限値である第１設定値Ｌ１（デューティ１００％）まで変更した場合の動作を図１５に示す。同図において、ｄｕｔｙは、最初、ＬＣＨ＜ｄｕｔｙ＜Ｌ１の値を設定されており、最初のＳｍ＝０の区間を過ぎた後、２番目のＳｍ＝０の区間に入る前に、ｄｕｔｙ=Ｌ１に変更されている。
【０２１９】
図１５の時刻ｔ１において、Ｓｍ＝０、ｄｕｔｙ＞ｕｃｎｔ、Ｇｍ＝２のときに、ｄｕｔｙ＝ｄｃｎｔとなっているので、イベントＮｏ２に該当し、Ｇｍ＝２のまま、Ｄｍ＝２のデッドタイム動作を開始する。
【０２２０】
同図時刻ｔ２において、Ｓｍ＝０、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝２、ｄｕｔｙ＞ｄｃｎｔのとき、ｄｕｔｙ＝ｕｃｎｔとなっているので、イベントＮｏ８に該当し、Ｐｍ＝２を記憶してＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作はそのまま継続する。
【０２２１】
同図時刻ｔ３において、Ｇｍ＝０、Ｄｍ＝２のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２２２】
図１５の時刻ｔ４において、ｄｕｔｙ＝Ｌ１（計数値の上限値で、デューティ１００％に対応）に変更されるが、Ｓｍ＝２、Ｇｍ＝２、ｄｕｔｙ＞ｕｃｎｔ、ｄｕｔｙ＞ｄｃｎｔであるので、イベント発生はない。
【０２２３】
図１５の時刻ｔ５において、ｕｃｎｔ＝Ｌ２となり、第２カウント（２３）が計数値Ｌ１からデクリメント動作を開始し、Ｓｍ＝０の区間の始点となっている。同時に、ｄｕｔｙ＝ｄｃｎｔとなっていて、このとき、ｄｕｔｙ＞ｕｃｎｔ、Ｇｍ＝２であるので、イベントＮｏ２に該当し、Ｇｍ＝２のまま、Ｄｍ＝２のデッドタイム動作を開始する。
【０２２４】
同図時刻ｔ６において、ｄｕｔｙ＝ｕｃｎｔとなり、第１カウンタ（２２）がインクリメント動作を停止し、Ｓｍ＝１の区間の始点となっている。同時に、ＺＣ３＝１が発生している。このとき、Ｇｍ＝２、Ｄｍ＝２であるので、イベントＮｏ８５に該当し、Ｇｍ＝２のまま、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２２５】
図１５の時刻ｔ７は同図時刻５と同じイベントＮｏ２の動作になり、時刻ｔ８は同図時刻６と同じイベントＮｏ８５の動作になる。このようにして、ｄｕｔｙが上限値（デューティ１００％）の場合は、第３カウンタ（３２）が動作するだけで、Ｇｍ＝０とはならない。したがって、「ハイサイドＰＷＭ信号ＧＨがオン（ＧＨ＝１）、かつ、ローサイドＰＷＭ信号ＧＬがオフ（ＧＬ＝０）」の状態が連続して出力される。
【０２２６】
このようにして、本実施例のＰＷＭ波形発生装置（１）は、目標デューティ値ｄｕｔｙが上限値（デューティ１００％）に近づくに従い、ハイサイドＰＷＭ信号ＧＨのオン時間が線形に増加し、ｄｕｔｙ＝Ｌ１（デューティ１００％）で連続的にオンになる一方、ローサイドＰＷＭ信号ＧＬのオン時間は線形に減少し、ｄｕｔｙ≧Ｔｈでは連続的にオフする相補型ＰＷＭ波形信号を発生することができる。
【０２２７】
図１６および図１７は、ｄｕｔｙが低い値（ゼロ値から第３設定値Ｌ３の間）に設定された場合の動作を示す図である。これは、Ｓｍ＝２の区間でイベントが発生することを意味する。従来のＰＷＭ波形発生装置では、このような低いデューティ値に対応したＰＷＭ信号を発生できないという問題点があった。
【０２２８】
Ｓｍ＝２の区間では、第１カウンタ（２２）から出力される計数値ｕｃｎｔのラインと、第２カウンタ（２３）から出力される計数値ｄｃｎｔのラインは、第１デッドタイム値の半分ｔｄ１ｈの値、すなわち計数値ＬＣＬ（＝ｔｄ１ｈ）にて交差している。
【０２２９】
図１６において、ｄｕｔｙは、最初にＬ３に設定されおり、それが最初のＳｍ＝２の区間を過ぎてから、２番目のＳｍ＝２の区間に入る前に、０＜ｄｕｔｙ＜ＬＣＬの値に変更され、さらに、２番目のＳｍ＝２の区間を過ぎてから、３番目のＳｍ＝２の区間に入る前に、ＬＣＬに変更されている。以下、図１６に基づき、本実施例での動作を説明する。
【０２３０】
図１６の時刻ｔ１において、ｄｃｎｔ＝Ｌ３となり、第１カウンタ（２２）が計数値ゼロからインクリメント動作を開始し、Ｓｍ＝２の区間の始点になっている。同時に、ｄｕｔｙ＝ｄｃｎｔとなっていて、このとき、Ｇｍ＝１、ｄｕｔｙ＞ｕｃｎｔであるので、イベントＮｏ５０に該当し、Ｐｍ＝１を記憶しＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。
【０２３１】
同図時刻ｔ２において、Ｓｍ＝２、Ｇｍ＝０、Ｄｍ＝２のときに、ＺＣ３＝１が発生するので、イベントＮｏ８３に該当し、Ｇｍ＝２、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２３２】
同図時刻ｔ３において、ｄｃｎｔ＝０となり、第２カウント（２３）がデクリメント動作を停止する、Ｓｍ＝３の区間の始点になっている。同時に、ｄｕｔｙ＝ｕｃｎｔとなっている。このとき、Ｇｍ＝２であるので、イベントＮｏ７０に該当し、Ｐｍ＝２を記憶してＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０２３３】
同図時刻ｔ４において、Ｓｍ＝３、Ｇｍ＝０、Ｄｍ＝１のときに、ＺＣ３＝１が発生するので、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２３４】
図１６の時刻ｔ５において、Ｓｍ＝２、Ｇｍ＝１、ｄｕｔｙ＞ｕｃｎｔのとき、ｄｕｔｙ＝ｄｃｎｔとなっているので、イベントＮｏ５０に該当し、Ｐｍ＝１を記憶してＧｍ＝０とし、Ｄｍ＝２のデッドタイム動作を開始する。
【０２３５】
同図時刻ｔ６において、ＺＣ３＝１が発生する一方、ｄｕｔｙ＝ｕｃｎｔとなっている。このとき、Ｓｍ＝２、ｄｕｔｙ＞ｄｃｎｔ、Ｇｍ＝０、Ｐｍ＝１、Ｄｍ＝２であるので、イベント４６に該当する。このような場合、ＺＣ３＝１によるイベントは無効とするので、ＧｍおよびＰｍは変更せずに、Ｄｍ＝１のデッドタイム動作に切り換える。
【０２３６】
同図時刻ｔ７において、Ｇｍ＝０、Ｄｍ＝１のときに、ＺＣ３＝１が発生するので、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２３７】
図１６の時刻ｔ８において、ｄｕｔｙ＝ｄｃｎｔになると同時にｄｕｔｙ＝ｕｃｎｔとなっている。このとき、Ｓｍ＝２、Ｇｍ＝１であるので、イベントＮｏ４３に該当し、Ｐｍ＝１を記憶してＧｍ＝０とし、Ｄｍ＝１のデッドタイム動作を開始する。
【０２３８】
同図時刻ｔ９において、Ｇｍ＝０、Ｄｍ＝１のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２３９】
続いて、目標デューティ値ｄｕｔｙを下限値であるゼロ（デューティ０％）まで変更した場合の動作を図１７に示す。同図において、ｄｕｔｙは、最初、０＜ｄｕｔｙ＜ＬＣＬの値を設定されており、最初のＳｍ＝２の区間を過ぎた後、２番目のＳｍ＝２の区間に入る前に、ｄｕｔｙ＝０に変更されている。
【０２４０】
図１７の時刻ｔ１において、Ｓｍ＝２、Ｇｍ＝１、ｄｕｔｙ＜ｄｃｎｔのときに、ｄｕｔｙ＝ｕｃｎｔとなっているので、イベントＮｏ４４に該当し、Ｇｍ＝１のまま、Ｄｍ＝１のデッドタイム動作を開始する。
【０２４１】
同図時刻ｔ２において、Ｓｍ＝２、Ｇｍ＝１、Ｄｍ＝１、ｄｕｔｙ＜ｕｃｎｔのときに、ｄｕｔｙ＝ｄｃｎｔとなっているので、イベントＮｏ５１に該当し、Ｇｍ＝０、Ｐｍ＝１とし、Ｄｍ＝１のデッドタイム動作はそのまま継続する。
【０２４２】
同図１７の時刻ｔ３において、Ｇｍ＝０、Ｄｍ＝１のときに、ＺＣ３＝１が発生しているので、イベントＮｏ８４に該当し、Ｇｍ＝１、Ｐｍ＝０、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２４３】
図１７の時刻ｔ４において、ｄｕｔｙ＝０（計数値の下限値で、デューティ０％に対応）に変更されるが、Ｇｍ＝１、ｄｕｔｙ＜ｕｃｎｔ、ｄｕｔｙ＜ｄｃｎｔであるので、イベント発生はない。
【０２４４】
図１７の時刻ｔ５において、ｄｃｎｔ＝Ｌ３となり、第１カウント（２２）が計数値ゼロからインクリメント動作を開始し、Ｓｍ＝２の区間の始点になっている。同時に、ｄｕｔｙ＝ｕｃｎｔとなっていて、このとき、ｄｕｔｙ＜ｄｃｎｔ、Ｇｍ＝１であるので、イベントＮｏ４４に該当し、Ｇｍ＝１のまま、Ｄｍ＝１のデッドタイム動作を開始する。
【０２４５】
同図時刻ｔ６において、ＺＣ２＝１が発生していて、第２カウンタ（２３）がデクリメント動作を停止し、Ｓｍ＝３の区間の始点になっている。同時に、ＺＣ３＝１が発生している。このとき、Ｇｍ＝１、Ｄｍ＝１であるので、イベントＮｏ８５に該当し、Ｄｍ＝０とし、デッドタイム動作を停止する。
【０２４６】
図１７の時刻ｔ７は同図時刻５と同じイベントＮｏ４４の動作になり、同図時刻ｔ８は同図時刻６と同じイベントＮｏ８５の動作になる。このようにして、ｄｕｔｙが下限値（デューティ０％）の場合は、第３カウンタ（３２）が動作するだけで、Ｇｍ＝０とはならない。したがって、「ハイサイドＰＷＭ信号ＧＨがオフ（ＧＨ＝０）、かつ、ローサイドＰＷＭ信号ＧＬがオン（ＧＬ＝１）の状態が連続して出力される。
【０２４７】
このようにして、本実施例のＰＷＭ波形発生装置（１）は、目標デューティ値ｄｕｔｙが下限値（デューティ０％）に近づくに従い、ハイサイドＰＷＭ信号ＧＨのオン時間が線形に減少し、ｄｕｔｙ≦ｔｄ１ｈ＋ｔｄ２ｈでは連続的にオフする一方、ローサイドＰＷＭ信号ＧＬのオン時間が線形に増加し、ｄｕｔｙ＝０（デューティ０％）で連続的にオンする相補型ＰＷＭ波形信号を発生することが可能になる。
【０２４８】
以上より本発明の実施例のＰＷＭ波形発生装置（１）は、デューティ０％から１００％までに対応した相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を生成し、フルデューティのＰＷＭ波形信号を発生できるＰＷＭ波形発生装置（１）を実現している。
【０２４９】
また、デッドタイムを生成するために、遅延カウンタを使用することで、デューティ値の変更に即応した、相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を発生できるＰＷＭ波形発生装置（１）を実現している。
【０２５０】
また、出力する相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）において、「（ＧＨ，ＧＬ）＝（１，０）から（ＧＨ，ＧＬ）＝（０，１）へ切換える」ときの第１デッドタイム、および、「（ＧＨ，ＧＬ）＝（０，１）から（ＧＨ，ＧＬ）＝（１，０）へ切換える」ときの第２デッドタイムに異なる時間を設定できるようにしたことで、使用するパワーモジュールに最適な相補スイッチング動作を行える相補型ＰＷＭ波形信号（ＧＨ，ＧＬ）を発生できるＰＷＭ波形発生装置（１）を実現している。
【０２５１】
また、第１カウンタ、第２カウンタおよび遅延カウンタに、両方向カウンタに比較して回路規模の小さい単方向カウンタを採用し、さらに、目標デューティ値を格納するレジスタを１つに留めることで、回路構成の簡単化と回路規模の低減を実現している。
【図面の簡単な説明】
【０２５２】
【図１】本発明の実施例のＰＷＭ波形発生装置（１）の構成を示すシステム・ブロック図である。
【図２】三角搬送波制御部に備わる第１制御部の構成を示すブロック図である。
【図３】三角搬送波制御部で形成される三角搬送波を説明するタイムミング・チャート図である。
【図４】ＰＷＭ波形発生装置（１）に備わる第２制御部の構成を示すブロック図である。
【図５】Ｓｍ＝０のときのＧｍ、Ｄｍ、Ｐｍの更新に関する所定の規則を示す表である。
【図６】Ｓｍ＝１のときのＧｍ、Ｄｍ、Ｐｍの更新に関する所定の規則を示す表である。
【図７】Ｓｍ＝２のときのＧｍ、Ｄｍ、Ｐｍの更新に関する所定の規則を示す表である。
【図８】Ｓｍ＝３のときのＧｍ、Ｄｍ、Ｐｍの更新に関する所定の規則を示す表である。
【図９】図５から図８までのイベント発生がないに第３カウンタ（３２）がカウントアップした場合のＧｍ、Ｄｍ、Ｐｍの更新に関する所定の規則を示す表である
【図１０】目標デューティ値ｄｕｔｙが、Ｌ３＜ｄｕｔｙ＜Ｌ２の値に設定され、変化しない場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１１】目標デューティ値ｄｕｔｙが、Ｌ３＜ｄｕｔｙ＜Ｌ２の間の値に設定され、変化する場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１２】目標デューティ値ｄｕｔｙが、Ｌ３＜ｄｕｔｙ＜Ｌ２の値に設定され、変化する場合で、計数信号に対し目標デューティ値ｄｕｔｙがデッドタイム時間内の短い時間に２度交差する場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１３】目標デューティ値ｄｕｔｙが、Ｌ３＜ｄｕｔｙ＜Ｌ２の値に設定され、変化する場合で、計数信号に対し目標デューティ値ｄｕｔｙがデッドタイム時間内の短い時間に２度交差する場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１４】目標デューティ値ｄｕｔｙが、Ｌ２≦ｄｕｔｙ≦Ｌ１の値に設定される場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１５】目標デューティ値ｄｕｔｙが、Ｌ１（デューティ１００％）に設定される場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１６】目標デューティ値ｄｕｔｙが、０＜ｄｕｔｙ＜Ｌ３の値に設定される場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１７】目標デューティ値ｄｕｔｙが、０（デューティ０％）に設定される場合のＰＷＭ波形発生装置（１）の動作を説明する図である。
【図１８】モータとモータに接続されたＰＷＭ波形発生装置を説明する図である。
【図１９】従来例のＰＷＭ波形発生装置によりＰＷＭ信号を生成する方法を説明するタイミング・チャートである。
【図２０】従来例のＰＷＭ波形発生装置により目標デューティ値が下限値（デューティ０％）でのＰＷＭ信号を説明するためのタイミング・チャートである。
【図２１】従来例のＰＷＭ波形発生装置により目標デューティ値が上限値（デューティ１００％）でのＰＷＭ信号を説明するためのタイミング・チャートである。
【図２２】ルネサス社のＰＷＭ波形発生装置の基本的な動作を説明するためのタイム・チャート図
【符号の説明】
【０２５３】
１  パルス幅変調（ＰＷＭ）波形発生装置
２  三角搬送波制御部
３  ＰＷＭ波形出力制御部
４  設定値レジスタ
５  ＰＷＭクロック生成部
６  演算器
７  搬送波デッドタイム設定手段
７ａ  ＰＷＭ動作・クロック設定手段
７ｂ  搬送波周期設定手段
７ｃ  第１デッドタイム設定手段
７ｄ  第２デッドタイム設定手段
８  ＰＷＭデューティ設定手段
２１  第１制御部
２１ａ  三角搬送波生成手段
２１ｂ  第１状態レジスタ
２２  第１カウンタ
２３  第２カウンタ
２４  第１選択器
２５  第２選択器
２６  第１比較器
２７  第２比較器
３１  第２制御部
３１ａ  ＰＷＭ波形生成手段
３１ｂ  第２状態レジスタ
３２  第３カウンタ
３３  第３選択器
３４  第３比較器
３５  第４比較器
５０  ３相モータ
５１  Ｕ相コイル
５２  Ｖ相コイル
５３  Ｗ相コイル
６０  パルス幅変調（ＰＷＭ）インバータ
６１  パワーモジュール
６２  ハイサイド・トランジスタ
６３  ローサイド・トランジスタ
９０  パルス幅変調（ＰＷＭ）波形発生装置
【図１】
2010068415.tif 000003
【図２】
2010068415.tif 000004
【図３】
2010068415.tif 000005
【図４】
2010068415.tif 000006
【図５】
2010068415.tif 000007
【図６】
2010068415.tif 000008
【図７】
2010068415.tif 000009
【図８】
2010068415.tif 000010
【図９】
2010068415.tif 000011
【図１０】
2010068415.tif 000012
【図１１】
2010068415.tif 000013
【図１２】
2010068415.tif 000014
【図１３】
2010068415.tif 000015
【図１４】
2010068415.tif 000016
【図１５】
2010068415.tif 000017
【図１６】
2010068415.tif 000018
【図１７】
2010068415.tif 000019
【図１８】
2010068415.tif 000020
【図１９】
2010068415.tif 000021
【図２０】
2010068415.tif 000022
【図２１】
2010068415.tif 000023
【図２２】
2010068415.tif 000024