(57)【要約】【課題】タイミング設計の容易化を実現でき、また、高分解能なＰＷＭ信号を生成可能なＰＷＭ信号生成装置を提供する。【解決手段】例えば、同じパルス幅と、第１周期のＮ（例えばＮ＝８）倍の第２周期と、第１周期を単位として順に異なる位相とを持つＮ個のパルス信号Ｓ［ｎ］（ｎ＝０，１，…，（Ｎ−１））を、パルス選択回路部ＰＳＥＬ１によって選択的に出力し、それをオア演算回路ＯＲ１で演算することでＰＷＭ信号ＰＷＭＯＵＴを生成する。この際には、ＰＳＥＬ１によってＳ［ｎ］を選択する際のパターンデータＰ［ｎ］の位相を位相調整回路ＰＨＣＴＬによって調整する。【選択図】図５
2014075720.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ、同じパルス幅と、第１周期のＮ（Ｎは２以上の整数）倍の第２周期と、前記第１周期を単位として順に異なる位相とを持つＮ個の第１パルス信号［ｎ］（ｎ＝１，２，…，Ｎ）を生成する信号生成回路と、
前記第２周期毎に更新されるＮビットのパラレルデータであり、前記第２周期内のＮ区間におけるＰＷＭ信号の論理レベルをそれぞれ設定する第１パターンデータと、
前記第１パターンデータを受け、各ビットの位相を調整したのちＮビットの第２パターンデータを出力する位相調整回路と、
前記第２パターンデータと前記Ｎ個の第１パルス信号［ｎ］が入力されるＮ個のアンド演算回路を含み、前記Ｎ個の第１パルス信号［ｎ］のそれぞれを前記第２パターンデータに基づいて選択的に出力する第１アンド演算回路部と、
前記第１アンド演算回路部からの出力を入力としてオア演算を行い、前記第１パターンデータに応じた前記ＰＷＭ信号を出力するオア演算回路とを備え、
前記位相調整回路は、前記第２パターンデータの一部のビットを第１位相で出力し、前記第２パターンデータの他の一部のビットを、前記第１位相を基準として前記第１周期のＭ（Ｍは１〜（Ｎ−１）の整数）倍の位相差を持つ第２位相で出力するＰＷＭ信号生成装置。
【請求項２】
請求項１記載のＰＷＭ信号生成装置において、
前記Ｎ個の第１パルス信号［ｎ］は、前記第１周期のパルス幅を持ち、
前記ＰＷＭ信号生成装置は、第２アンド演算回路部をさらに備え、
前記オア演算回路は、前記第１アンド演算回路部の出力に加えて、さらに、前記第２アンド演算回路部の出力を入力としてオア演算を行い、
前記信号生成回路は、さらに、前記第１周期の２倍のパルス幅と、前記第２周期と、それぞれ、前記Ｎ個の第１パルス信号［ｎ］と同じ位相とを持つＮ個の第２パルス信号［ｎ］を生成し、
前記第２アンド演算回路部は、前記Ｎ個の第２パルス信号［ｎ］が入力されるＮ個のアンド演算回路を含み、前記第１アンド演算回路部が第１パルス信号［ｋ］（ｋは１〜Ｎの整数）と第１パルス信号［ｋ＋１］を順次出力する際に第２パルス信号［ｋ］を出力するＰＷＭ信号生成装置。
【請求項３】
請求項２記載のＰＷＭ信号生成装置において、
前記第１パターンデータにおける隣接する２ビットが共に第１論理レベルである場合を検出し、当該検出結果に基づきＮビットの第３パターンデータを生成する第１パターンデータ生成回路をさらに備え、
前記位相調整回路は、さらに、前記第３パターンデータを受け、各ビットの位相を調整したのちＮビットの第４パターンデータを出力し、
前記第４パターンデータは、前記第２アンド演算回路部内の前記Ｎ個のアンド演算回路に入力されるＰＷＭ信号生成装置。
【請求項４】
請求項３記載のＰＷＭ信号生成装置において、
前記第２位相と前記第１位相は、前記第２周期の半周期分の位相差を持ち、
前記位相調整回路は、前記第２パターンデータの一部のビットに前記第１位相を持たせ、当該一部のビットを除く残りのビット全てに前記第２位相を持たせるＰＷＭ信号生成装置。
【請求項５】
請求項１記載のＰＷＭ信号生成装置において、
前記Ｎ個の第１パルス信号［ｎ］は、前記第１周期の２倍のパルス幅を持つＰＷＭ信号生成装置。
【請求項６】
請求項５記載のＰＷＭ信号生成装置において、
第３アンド演算回路部をさらに備え、
前記オア演算回路は、前記第１アンド演算回路部の出力に加えて、さらに、前記第３アンド演算回路部の出力を入力としてオア演算を行い、
前記信号生成回路は、さらに、前記第１周期のパルス幅と、前記第２周期と、それぞれ、前記Ｎ個の第１パルス信号［ｎ］と同じ位相とを持つＮ個の第３パルス信号［ｎ］を生成し、
前記第１アンド演算回路部は、前記オア演算回路に前記第１周期の２倍以上のパルス幅を持つ前記ＰＷＭ信号を出力させる場合に前記Ｎ個の第１パルス信号［ｎ］の中の所定の前記第１パルス信号［ｎ］を出力し、
前記第３アンド演算回路部は、前記Ｎ個の第３パルス信号［ｎ］が入力されるＮ個のアンド演算回路を含み、前記オア演算回路に前記第１周期のパルス幅を持つ前記ＰＷＭ信号を出力させる場合に前記Ｎ個の第３パルス信号［ｎ］の中の所定の１個を出力するＰＷＭ信号生成装置。
【請求項７】
請求項６記載のＰＷＭ信号生成装置において、
前記第１パターンデータにおける隣接する３ビットが順に、第１論理レベル、第２論理レベル、前記第１論理レベルである場合を検出し、当該検出結果に基づきＮビットの第５パターンデータを生成する第２パターンデータ生成回路をさらに備え、
前記位相調整回路は、さらに、前記第５パターンデータを受け、各ビットの位相を調整したのちＮビットの第６パターンデータを出力し、
前記第６パターンデータは、前記第３アンド演算回路部内の前記Ｎ個のアンド演算回路に入力されるＰＷＭ信号生成装置。
【請求項８】
請求項５記載のＰＷＭ信号生成装置において、さらに、
第４アンド演算回路部と、
前記第１アンド演算回路部と前記オア演算回路の間に挿入され、前記第１アンド演算回路部から選択的に出力される前記第１パルス信号［ｎ］の中の第１パルス信号［ｋ］（ｋは１〜Ｎの整数）を対象としてパルス幅を削減し、前記第１パルス信号［ｋ］を除く前記第１パルス信号［ｎ］と、前記パルス幅を削減した前記第１パルス信号［ｋ］とを前記オア演算回路に出力するパルス幅変更回路とを備え、
前記第４アンド演算回路部は、前記Ｎ個の第１パルス信号［ｎ］が入力されるＮ個のアンド演算回路を含み、前記パルス幅変更回路に前記第１パルス信号［ｋ］のパルス幅を削減させる場合に第１パルス信号［ｋ＋１］を出力し、
前記パルス幅変更回路は、前記第１アンド演算回路部からの前記第１パルス信号［ｋ］と前記第４アンド演算回路部からの前記第１パルス信号［ｋ＋１］との論理演算を行うことで前記第１パルス信号［ｋ］のパルス幅を削減するＰＷＭ信号生成装置。
【請求項９】
請求項８記載のＰＷＭ信号生成装置において、
前記第１パターンデータにおける隣接する２ビットが順に、第１論理レベル、第２論理レベルである場合を検出し、当該検出結果に基づきＮビットの第７パターンデータを生成する第３パターンデータ生成回路をさらに備え、
前記位相調整回路は、さらに、前記第７パターンデータを受け、各ビットの位相を調整したのちＮビットの第８パターンデータを出力し、
前記第８パターンデータは、前記第４アンド演算回路部内の前記Ｎ個のアンド演算回路に入力されるＰＷＭ信号生成装置。
【請求項１０】
それぞれ、第１周期のＮ（Ｎは２以上の整数）倍の第２周期と、前記第１周期の２倍のパルス幅と、前記第１周期を単位として順に異なる位相とを持つＮ個の第１パルス信号［ｎ］（ｎ＝１，２，…，Ｎ）を生成する信号生成回路と、
前記第２周期毎に更新されるＮビットのパラレルデータであり、前記第２周期内のＮ区間におけるＰＷＭ信号の論理レベルをそれぞれ設定する第１パターンデータと、
前記Ｎ個の第１パルス信号［ｎ］のそれぞれを前記第１パターンデータに基づいて選択的に出力する第１選択回路部と、
前記第１選択回路部から選択的に出力される前記第１パルス信号［ｎ］を受け、前記第１パルス信号［ｎ］の中の第１パルス信号［ｋ］（ｋは１〜Ｎの整数）を対象に第１パルス信号［ｋ＋１］を用いた論理演算を行うことで、前記第１パルス信号［ｋ］のパルス幅を前記第１周期の２倍から前記第１周期に削減し、前記第１パルス信号［ｋ］を除く前記第１パルス信号［ｎ］と、前記パルス幅を削減した前記第１パルス信号［ｋ］とを出力するパルス幅変更回路と、
前記パルス幅変更回路からの出力を入力としてオア演算を行い、第１パターンデータに応じた前記ＰＷＭ信号を出力するオア演算回路とを備えるＰＷＭ信号生成装置。
【請求項１１】
請求項１０記載のＰＷＭ信号生成装置において、
前記第１パターンデータを受け、各ビットの位相を調整したのちＮビットの第２パターンデータを前記第１選択回路部に向けて出力する位相調整回路をさらに備え、
前記位相調整回路は、前記第２パターンデータの一部のビットを第１位相で出力し、前記第２パターンデータの他の一部のビットを、前記第１位相を基準として前記第１周期のＭ（Ｍは１〜（Ｎ−１）の整数）倍の位相差を持つ第２位相で出力するＰＷＭ信号生成装置。
【請求項１２】
請求項１１記載のＰＷＭ信号生成装置において、さらに、
前記第１パターンデータにおける隣接する２ビットが順に、第１論理レベル、第２論理レベルである場合を検出し、当該検出結果に基づきＮビットの第３パターンデータを生成するパターンデータ生成回路と、
第２選択回路部とを備え、
前記位相調整回路は、さらに、前記第３パターンデータを受け、各ビットの位相を調整したのちＮビットの第４パターンデータを出力し、
前記第２選択回路部は、前記Ｎ個の第１パルス信号［ｎ］のそれぞれを前記第４パターンデータに基づいて選択することで、前記第１パルス信号［ｋ＋１］を前記パルス幅変更回路に向けて出力するＰＷＭ信号生成装置。
【請求項１３】
それぞれ、第１周期のパルス幅と、前記第１周期のＮ（Ｎは２以上の整数）倍の第２周期と、前記第１周期を単位として順に異なる位相とを持つＮ個の第１パルス信号［ｎ］（ｎ＝１，２，…，Ｎ）と、それぞれ、前記第１周期の２倍のパルス幅と、前記第２周期と、前記Ｎ個の第１パルス信号［ｎ］と同じ位相とを持つＮ個の第２パルス信号［ｎ］とを生成する信号生成回路と、
前記第２周期毎に更新されるＮビットのパラレルデータであり、前記第２周期内のＮ区間におけるＰＷＭ信号の論理レベルをそれぞれ設定する第１パターンデータと、
前記Ｎ個の第１パルス信号［ｎ］のそれぞれを前記第１パターンデータに基づいて選択的に出力する第１選択回路部と、
前記第１選択回路部が第１パルス信号［ｋ］（ｋは１〜Ｎの整数）と第１パルス信号［ｋ＋１］を順次出力する際に第２パルス信号［ｋ］を出力する第２選択回路部と、
前記第１および第２選択回路部からの出力を入力としてオア演算を行い、前記第１パターンデータに応じた前記ＰＷＭ信号を出力するオア演算回路とを備えるＰＷＭ信号生成装置。
【請求項１４】
請求項１３記載のＰＷＭ信号生成装置において、さらに、
前記第１パターンデータにおける隣接する２ビットが共に第１論理レベルである場合を検出し、当該検出結果に基づきＮビットの第２パターンデータを生成するパターンデータ生成回路と、
前記第１パターンデータを受け、各ビットの位相を調整したのちＮビットの第３パターンデータを前記第１選択回路部に向けて出力し、前記第２パターンデータを受け、各ビットの位相を調整したのちＮビットの第４パターンデータを前記第２選択回路部に向けて出力する位相調整回路とを備え、
前記位相調整回路は、前記第３パターンデータの一部のビットを第１位相で出力し、前記第３パターンデータの他の一部のビットを、前記第１位相を基準として前記第１周期のＭ（Ｍは１〜（Ｎ−１）の整数）倍の位相差を持つ第２位相で出力し、前記第４パターンデータの一部のビットを前記第１位相で出力し、前記第４パターンデータの他の一部のビットを前記第２位相で出力するＰＷＭ信号生成装置。
【請求項１５】
請求項１４記載のＰＷＭ信号生成装置において、
前記第２位相と前記第１位相は、前記第２周期の半周期分の位相差を持ち、
前記位相調整回路は、前記第３パターンデータの一部のビットに前記第１位相を持たせ、当該一部のビットを除く残りのビット全てに前記第２位相を持たせ、前記第４パターンデータの一部のビットに前記第１位相を持たせ、当該一部のビットを除く残りのビット全てに前記第２位相を持たせるＰＷＭ信号生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＷＭ信号生成装置に関し、例えば、ディジタル方式でＰＷＭ信号を生成するＰＷＭ信号生成装置に適用して有効な技術に関する。
【背景技術】
【０００２】
例えば、特許文献１には、遅延ロック・ループ（ＤＬＬ）を用いたＰＷＭ発生器が示されている。また、特許文献２には、ディジタル方式のＰＷＭ信号生成回路が示されている。具体的には、リングカウンタによって生成された位相が異なるパルス信号の出力有無をレジスタ値とアンド演算回路によって選択し、この選択されたパルス信号のオア演算を行うことでレジスタ値に応じたＰＷＭ信号を生成する。この際に、オア演算は、フリップフロップで適宜分割された複数のオア演算回路によって実現される。特許文献３には、特許文献２と同様のＰＷＭ信号生成回路が示されている。ただし、特許文献３では、リングカウンタは、クロック信号の両エッジで動作し、位相が当該クロック信号の半周期分異なるパルス信号を生成している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００６−５２７５６９号公報
【特許文献２】特開２００４−３４５２８０号公報
【特許文献３】特開２００５−５７７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、三角波や鋸波等を用いてＰＷＭ（Pulse Width Modulation）信号を生成するアナログ方式のＰＷＭ信号生成装置に代わって、ディジタル方式のＰＷＭ信号生成装置が注目されている。図１６は、本発明の前提として検討したＰＷＭ信号生成装置において、その概略構成例を示すブロック図である。図１６に示すＰＷＭ信号生成装置は、ディジタル方式となっており、カウンタ部ＣＵＮＴｃ、複数のレジスタ部ＲＥＧ、比較回路部ＣＭＰｃ、ＰＷＭ出力生成部ＰＷＭＧｃを備える。
【０００５】
比較回路部ＣＭＰｃは、カウンタ部ＣＵＮＴｃからのカウンタの値と複数のレジスタ部ＲＥＧによるカウンタの設定値とを比較し、一致した場合にコンペアマッチ信号を出力する。ＰＷＭ出力生成部ＰＷＭＧｃは、コンペアマッチ信号が出力された際に、対応する出力レベル設定信号（‘Ｈ’→‘Ｌ’レベル、‘Ｌ’→‘Ｈ’レベル等）に従ってＰＷＭ信号ＰＷＭＯＵＴを生成する。このようなＰＷＭ信号生成装置を用いる場合、ＣＵＮＴｃやＰＷＭＧｃは、最小分解能に相当する周期（周波数）を持つマスタクロック信号ＣＬＫｍで動作する必要がある。例えば、最小分解能が１．０ｎｓの場合、１ＧＨｚのＣＬＫｍで動作する必要がある。
【０００６】
しかしながら、半導体製造プロセスによっては、例えば１ＧＨｚのクロック信号で動作するＰＷＭ信号生成装置を実現することはタイミング制約上困難な場合がある。例えば、カウンタ部等は、通常、複数のフリップフロップと、複数のフリップフロップ間に設けられた組合せ論理回路によって構成されるが、このような組合せ論理回路を介したフリップフロップ間のデータ転送を１ＧＨｚの周波数で行うことが困難となる場合がある。また、仮に実現可能であっても、高速なクロック信号で動作させるために最先端の製造プロセスが必要とされるため、コストの増大を招き、また、消費電力の増大も招く。そこで、このようなタイミング制約を満たしつつ、高分解なＰＷＭ信号を生成する技術として、特許文献１〜特許文献３に示されるような技術を用いることが考えられる。
【０００７】
しかしながら、例えば、特許文献１のＰＷＭ発生器を用いた場合、遅延ロック・ループ（ＤＬＬ）を搭載する必要があるため、回路規模が増加する恐れがある。また、ＤＬＬは半導体製造プロセスを変更する場合に再設計が必要なため、設計コストの増加が懸念される。さらに、ＤＬＬを使用する場合は、最低動作クロック周波数、設定手順などの制約が多いことも懸念される。
【０００８】
また、特許文献２のＰＷＭ信号生成回路を用いた場合、出力部におけるアンド−オア演算回路によってＰＷＭ信号に微小時間のグリッジが生じてしまう恐れがある。なお、オア演算をフリップフロップで適宜分割された複数のオア演算回路によって実現すれば、このようなグリッジを防止できる場合がある。ただし、この場合、オア演算回路を挟んだフリップフロップ間のデータ転送を高速なクロック信号（例えば１ＧＨｚ）で行う必要があり、前述したタイミング制約を満たせない恐れがある。
【０００９】
一方、特許文献３のＰＷＭ信号生成回路は、クロック信号の２倍の分解能を得るため、リングカウンタをクロック信号の両エッジで動作させている。これにより、例えば、１ＧＨｚのクロック信号を用いた場合、１．０ｎｓのパルス幅を最小として、以降０．５ｎｓ刻みでパルス幅を設定でき、また、５００ＭＨｚのクロック信号を用いた場合、２．０ｎｓのパルス幅を最小として、以降１．０ｎｓ刻みでパルス幅を設定できる。ただし、このように、１．０ｎｓの最小分解能を実現する際に最小のパルス幅が２．０ｎｓとなるため、適用範囲が限定される場合がある。さらに、特許文献２および特許文献３に共通して、ＰＷＭ信号のパターンを設定するディジタルデータとアンド−オア演算回路との間のタイミング関係に起因して、ＰＷＭ信号のパルス幅を設定する際の高精度化（高分解能化）が図れない恐れがある。
【００１０】
本発明は、このようなことを鑑みてなされたものであり、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本願において開示される課題を解決するための手段のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１２】
本願において開示される発明のうち、代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。
【００１３】
本実施の形態によるＰＷＭ信号生成装置は、信号生成回路と、第１パターンデータと、位相調整回路と、第１アンド演算回路部と、オア演算回路とを備える。信号生成回路は、それぞれ、同じパルス幅と、第１周期のＮ（Ｎは２以上の整数）倍の第２周期と、第１周期を単位として順に異なる位相とを持つＮ個の第１パルス信号［ｎ］（ｎ＝１，２，…，Ｎ）を生成する。第１パターンデータは、第２周期毎に更新されるＮビットのパラレルデータであり、第２周期内のＮ区間におけるＰＷＭ信号の論理レベルをそれぞれ設定するものである。位相調整回路は、第１パターンデータを受け、各ビットの位相を調整したのちＮビットの第２パターンデータを出力する。第１アンド演算回路部は、第２パターンデータとＮ個の第１パルス信号［ｎ］が入力されるＮ個のアンド演算回路を含み、Ｎ個の第１パルス信号［ｎ］のそれぞれを第２パターンデータに基づいて選択的に出力する。オア演算回路は、第１アンド演算回路部からの出力を入力としてオア演算を行い、第１パターンデータに応じたＰＷＭ信号を出力する。ここで、位相調整回路は、詳細には、第２パターンデータの一部のビットを第１位相で出力し、第２パターンデータの他の一部のビットを、第１位相を基準として第１周期のＭ（Ｍは１〜（Ｎ−１）の整数）倍の位相差を持つ第２位相で出力する。
【発明の効果】
【００１４】
本願において開示される発明のうち、代表的な実施の形態によって得られる効果を簡単に説明すると、ＰＷＭ信号生成装置において、タイミング設計の容易化が実現でき、また、高分解能なＰＷＭ信号が生成可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態１によるＰＷＭ信号生成装置において、それを備えた半導体装置の概略構成例を示すブロック図である。
【図２】図１の半導体装置におけるＰＷＭ信号生成ユニットの概略構成例を示すブロック図である。
【図３】図２におけるクロック・パルス信号生成部の詳細な構成例を示す回路図である。
【図４】図３のクロック・パルス信号生成部によって生成される信号の一例を示す波形図である。
【図５】図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。
【図６】図５のＰＷＭ出力生成部の動作例を示す波形図である。
【図７】（ａ）は、図５における補間用のパルス選択回路部（アンド演算回路部）の効果の一例を示す図であり、（ｂ）は、（ａ）の比較例として補間用のパルス選択回路部（アンド演算回路部）が無い場合の問題点の一例を示す図である。
【図８】（ａ）、（ｂ）および（ｃ）は、図５における各パルス選択回路部（アンド演算回路部）およびオア演算回路の模式的な動作例を示す図である。
【図９】図２におけるＰＷＭ出力パターン生成部の詳細な構成例を示す回路ブロック図である。
【図１０】本発明の実施の形態２によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図である。
【図１１】本発明の実施の形態３によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図である。
【図１２】（ａ）は、本発明の実施の形態４によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図であり、（ｂ）は、（ａ）の一部の動作例を示す波形図である。
【図１３】本発明の実施の形態５によるＰＷＭ信号生成装置において、図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。
【図１４】本発明の実施の形態６によるＰＷＭ信号生成装置において、図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。
【図１５】図１４のＰＷＭ出力生成部の一部における主要な動作例を示す波形図である。
【図１６】本発明の前提として検討したＰＷＭ信号生成装置において、その概略構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１７】
さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１８】
また、実施の形態の各機能ブロックを構成する回路素子は、特に制限されないが、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような半導体基板上に形成される。以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１９】
（実施の形態１）
《半導体装置の全体構成》
図１は、本発明の実施の形態１によるＰＷＭ信号生成装置において、それを備えた半導体装置の概略構成例を示すブロック図である。図１に示す半導体装置ＭＣＵは、例えば、一つの半導体チップで実現され、ディジタル方式で電源制御を行うためのマイクロコントローラとなっている。図１の半導体装置（マイクロコントローラ）ＭＣＵは、アナログバスＡＢＵＳと、ディジタルバスＤＢＵＳと、これらのバスに適宜結合された複数の機能ユニットと、外部との間の通信を担うインタフェースユニットＧＰＩＯを備える。
【００２０】
アナログバスＡＢＵＳには、オペアンプユニットＯＰＡＭＰ、アナログ・ディジタル変換ユニットＡＤＣ、ディジタル・アナログ変換ユニットＤＡＣ、アナログ電圧比較ユニットＡＣＭＰ、基準電圧生成ユニットＶＲＥＦ、および温度センサユニットＴＪＳＥＮが結合される。ディジタルバスＤＢＵＳには、ＡＤＣおよびＤＡＣに加えて、中央演算処理ユニットＣＰＵ、ディジタルシグナルプロセッサユニットＤＳＰ、デバッグユニットＤＢＧ、ＰＷＭ信号生成ユニット（ＰＷＭ信号生成装置）ＰＷＭＵ、ダイレクトメモリアクセス制御ユニットＤＭＡＣ、およびタイマユニットＴＭＲが接続される。更に、ＤＢＵＳには、メモリユニットＭＥＭＵ、シリアル通信ユニットＳＣＵ、システム制御ユニットＳＹＳＣ、チップ制御ユニットＣＰＣが接続される。
【００２１】
メモリユニットＭＥＭＵは、フラッシュメモリＦＬＡＳＨ、ＲＡＭ（Random Access Memory）等を含む。シリアル通信ユニットＳＣＵは、ＳＰＩ（Serial Peripheral Interface）、ＵＡＲＴ（Universal Asynchronous Receiver Transmitter）、Ｉ２Ｃ（Inter-Integrated Circuit）等を含む。システム制御ユニットＳＹＳＣは、割り込み制御回路ＩＮＴＣ、ウォッチドッグタイマＷＤＴ等を含む。チップ制御ユニットＣＰＣは、パワーオンリセット回路ＰＯＲ、電圧低下検出回路ＬＶＤ、発振回路ＯＳＣ、ＰＬＬ（Phase Locked Loop）回路等を含む。
【００２２】
このような半導体装置（マイクロコントローラ）ＭＣＵを用いた電源制御は、代表的には例えば次のように行われる。まず、アナログ・ディジタル変換ユニットＡＤＣは、外部のスイッチング電源回路（スイッチングトランジスタ、インダクタ、容量等）内の電圧または電流を測定する。次いで、ディジタルシグナルプロセッサユニットＤＳＰは、当該測定結果のフィルタ処理等を行う。続いて、中央演算処理ユニットＣＰＵは、当該フィルタ処理後のディジタルデータと所定の期待値との比較を行い、その比較結果に基づいてＰＷＭ信号のデューティを定め、当該デューティに対応するカウンタの設定値を定める。ＰＷＭ信号生成ユニット（ＰＷＭ信号生成装置）ＰＷＭＵは、当該カウンタの設定値をレジスタに記憶し、これに基づいて、スイッチングトランジスタのオン・オフを制御するためのＰＷＭ信号を生成する。
【００２３】
この際に、スイッチング電源回路によって生成される出力電源電圧を高精度に制御するためには、ＰＷＭ信号のデューティ（パルス幅）の設定分解能として例えば１．０ｎｓ等が必要とされる場合がある。一方、半導体装置（マイクロコントローラ）ＭＣＵの半導体製造プロセスによっては、前述したように、組合せ論理回路を介したフリップフロップ間のデータ転送を例えば１ＧＨｚの周波数で行うことが、タイミング制約上困難となる場合がある。そこで、後述する本実施の形態によるＰＷＭ信号生成装置を用いることが有益となる。
【００２４】
《ＰＷＭ信号生成装置の全体構成》
図２は、図１の半導体装置におけるＰＷＭ信号生成ユニットの概略構成例を示すブロック図である。図２に示すＰＷＭ信号生成ユニット（ＰＷＭ信号生成装置）ＰＷＭＵは、クロック・パルス信号生成部ＣＰＧと、カウンタ部ＣＵＮＴ、複数（ここでは２個）のレジスタ部ＲＥＧ１，ＲＥＧ２と、比較回路部ＣＭＰと、ＰＷＭ出力パターン生成部ＰＷＭＰＴＧと、ＰＷＭ出力生成部ＰＷＭＧを備える。ＣＰＧは、分周回路ＮＤＩＶと、パルス信号生成回路ＰＧＥＮを備える。ＮＤＩＶは、例えば図１のＰＬＬ回路によって生成された１ＧＨｚのマスタクロック信号ＣＬＫｍを受け、それをＮ分周（例えば８分周）する。ＮＤＩＶは、特に、組合せ論理回路を含まないため、ＣＬＫｍで動作することが可能である。ＰＧＥＮは、このＮ分周（例えば８分周）されたクロック信号を用いて複数のパルス信号を生成する。
【００２５】
カウンタ部ＣＵＮＴは、分周回路ＮＤＩＶからのＮ分周（例えば８分周）されたクロック信号に同期してカウント動作を行い、そのカウンタの値ＣＴを出力する。ＣＵＮＴは、例えば、フリップフロップと組合せ論理回路（ワンインクリメント回路）を用いて構成されるが、ここではＮ分周されたクロック信号で動作している。これにより、タイミング制約を緩和（タイミング設計を容易化）することが可能となる。レジスタ部ＲＥＧ１，ＲＥＧ２には、それぞれ、イベントを発生させたいタイミングを指定するカウンタの設定値ＣＴＨ１，ＣＴＨ２や、その際のイベントの種類（例えば‘Ｈ’→‘Ｌ’レベルに遷移、その逆方向の遷移等）を指定するイベント設定値ＥＶＮＴ１，ＥＶＮＴ２が保持される。当該ＲＥＧ１，ＲＥＧ２の設定値は、前述した図１の例では、中央演算処理ユニットＣＰＵによって適宜更新される。
【００２６】
比較回路部ＣＭＰは、カウンタの値ＣＴとカウンタの設定値ＣＴＨ１，ＣＴＨ２とを比較し、ＣＴとＣＴＨ１が一致した際にマッチ信号ＭＴ１を出力し、ＣＴとＣＴＨ２が一致した際にマッチ信号ＭＴ２を出力する。この際に、カウンタ部ＣＵＮＴは、マスタクロック信号ＣＬＫｍのＮ（例えばＮ＝８）倍の周期を単位としてカウント動作を行っているのに対して、ＣＴＨ１，ＣＴＨ２は、ＣＬＫｍの１倍の周期を単位として設定可能となっている。そこで、ＣＭＰは、例えば、ＣＴからＣＴＨ１（又はＣＴ２）を引き算し、その結果の下位３ビット以外がゼロになった際に、当該下位３ビットの情報を含んだＭＴ１（又はＭＴ２）を出力する。当該下位３ビットの情報は、ＣＬＫｍのＮ（例えばＮ＝８）倍の周期をＮ分割した際のＮ個のタイミングの内、どのタイミングであるかを表すことになる。
【００２７】
ＰＷＭ出力パターン生成部ＰＷＭＰＴＧは、マッチ信号ＭＴ１，ＭＴ２とイベント設定値ＥＶＮＴ１，ＥＶＮＴ２に基づいて、（ｎ＋１）ビット（例えば（ｎ＋１）＝８）のパラレルデータとなるＰＷＭパターンデータｎｘｐａｔ［ｎ：０］を生成する。ＰＷＭ出力パターン生成部ＰＷＭＰＴＧは、分周回路ＮＤＩＶからのＮ分周されたクロック信号と、パルス信号生成回路ＰＧＥＮからの複数のパルス信号を用いて、ｎｘｐａｔ［ｎ：０］に応じたＰＷＭ信号ＰＷＭＯＵＴを生成する。概略的には、ｎｘｐａｔ［ｎ：０］をマスタクロック信号ＣＬＫｍの周期（例えば１．０ｎｓ）でパラレル・シリアル変換したようなＰＷＭＯＵＴを生成する。
【００２８】
このように、図２のＰＷＭ信号生成ユニット（ＰＷＭ信号生成装置）ＰＷＭＵは、概略的には、例えば１ＧＨｚのマスタクロック信号ＣＬＫｍの１／Ｎ（例えばＮ＝８）のクロックサイクルで１．０ｎｓのＮサイクル分のＰＷＭパターンデータを纏めて生成し、１．０ｎｓの分解能でこのパターンデータをシリアルに出力する方式を用いている。これにより、１．０ＧＨｚのＣＬＫｍに同期して動作する部分が分周回路ＮＤＩＶのみとなるため、タイミング制約を緩和（タイミング設計を容易化）することが可能になる。
【００２９】
《クロック・パルス信号生成部の詳細》
図３は、図２におけるクロック・パルス信号生成部の詳細な構成例を示す回路図である。図４は、図３のクロック・パルス信号生成部によって生成される信号の一例を示す波形図である。図３のクロック・パルス信号生成部ＣＰＧ１において、分周回路ＮＤＩＶ１は、リング状に縦続接続された８段のフリップフロップ回路ＦＦ１を備え、各ＦＦ１は、マスタクロック信号ＣＬＫｍの一方のエッジ（ここでは立ち上がりエッジ）に同期して動作する。すなわち、ＮＤＩＶ１は８ビットの巡回型のシフトレジスタとなっている。この例では、初期値として、８段のＦＦ１の内の前半の４段に‘Ｈ’レベル（‘１’レベル）か‘Ｌ’レベル（‘０’レベル）の一方を設定し、その他方を後半の４段に設定している。
【００３０】
これにより、図４に示されるように、それぞれ、５０％のデューティを持ち、マスタクロック信号ＣＬＫｍを８分周した（ＣＬＫｍの周期（第１周期）の８倍となる周期（第２周期）を持つ）クロック信号Ｃ［０］〜Ｃ［７］が生成される。また、Ｃ［０］，Ｃ［１］，…，Ｃ［７］は、それぞれ、縦続接続された８段のＦＦ１の内の１段目、２段目、…、８段目の出力信号に対応し、ＣＬＫｍの周期（第１周期）を単位として順に異なる位相を持つ。
【００３１】
図３のクロック・パルス信号生成部ＣＰＧ１において、パルス信号生成回路ＰＧＥＮ１は、８個のアンド演算回路ＡＤ１［ｎ］（ｎは０〜７の整数）と８個のアンド演算回路ＡＤ２［ｎ］を備える。８個のＡＤ１［ｎ］は、共に２入力を持ち、クロック信号Ｃ［ｎ］と、Ｃ［ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）の反転信号とのアンド演算を行うことで、パルス信号Ｓ［ｎ］（Ｓ［０］〜Ｓ［７］）を生成する。例えば、ＡＤ１［０］はＣ［０］とＣ［１］の反転信号とのアンド演算を行うことでＳ［０］を生成する。これにより、Ｓ［ｎ］（Ｓ［０］〜Ｓ［７］）は、図４に示されるように、それぞれ、マスタクロック信号ＣＬＫｍの周期（第１周期）と同じパルス幅と、ＣＬＫｍの８倍の周期（第２周期）と、ＣＬＫｍの周期（第１周期）を単位として順に異なる位相とを持つ。
【００３２】
８個のアンド演算回路ＡＤ２［ｎ］は、共に２入力を持ち、クロック信号Ｃ［ｎ］と、Ｃ［ｎ＋２］（（ｎ＋２）≧８の場合に（ｎ＋２）は８の剰余）の反転信号とのアンド演算を行うことで、パルス信号Ｓ［ｎ，ｎ＋１］（Ｓ［０，１］，Ｓ［１，２］，…，Ｓ［７，０］）を生成する。例えば、ＡＤ２［０］はＣ［０］とＣ［２］の反転信号とのアンド演算を行うことでＳ［０，１］を生成する。これにより、Ｓ［ｎ，ｎ＋１］（Ｓ［０，１］，Ｓ［１，２］，…，Ｓ［７，０］）は、図４に示されるように、それぞれ、マスタクロック信号ＣＬＫｍの周期（第１周期）の２倍のパルス幅と、ＣＬＫｍの８倍の周期（第２周期）と、パルス信号Ｓ［ｎ］と同じ位相とを持つ。
【００３３】
ここで、例えば、特許文献２等に示されるように、図３の分周回路ＮＤＩＶ１と同様の回路を用いて、１．０ｎｓのパルスを巡回させることでパルス信号Ｓ［０］〜Ｓ［７］を生成することも可能である。ただし、１．０ｎｓのパルスを巡回させることが半導体製造プロセスの関係上困難な場合もある。このような場合に、図３に示されるようなアンド演算回路ＡＤ１［ｎ］を用いてＳ［０］〜Ｓ［７］を生成することが有益となる。
【００３４】
《ＰＷＭ出力生成部の詳細》
図５は、図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。図５に示すＰＷＭ出力生成部ＰＷＭＧ１は、２個のパターンデータ生成回路ＰＤＧ１，ＰＤＧ２と、位相調整回路ＰＨＣＴＬと、２個のパルス選択回路部（アンド演算回路部）ＰＳＥＬ１，ＰＳＥＬ２と、オア演算回路ＯＲ１を備える。ＰＤＧ１は、８個のフリップフロップ回路ＦＦ２を備える。８個のＦＦ２は、それぞれ、図１のＰＷＭ出力パターン生成部ＰＷＭＰＴＧからのＰＷＭパターンデータｎｘｐａｔ［７：０］（ｎｘｐａｔ［０］〜ｎｘｐａｔ［７］）を図４に示したクロック信号Ｃ［４］でラッチし、パターンデータｐａｔ［０］〜ｐａｔ［７］を出力する。
【００３５】
パターンデータ生成回路ＰＤＧ２は、８個のアンド演算回路ＡＤ３［ｎ］（ｎは０〜７の整数）と７個のフリップフロップ回路ＦＦ３を備える。ＡＤ３［ｘ］（ｘは０〜６の整数）は、ＰＷＭパターンデータｎｘｐａｔ［ｘ］とｎｘｐａｔ［ｘ＋１］とのアンド演算を行う。例えば、ＡＤ３［０］はｎｘｐａｔ［０］とｎｘｐａｔ［１］とのアンド演算を行う。７個のＦＦ３は、それぞれ、ＡＤ３［０］〜ＡＤ３［６］の出力を図４に示したクロック信号Ｃ［４］でラッチし、補間用のパターンデータｈｐａｔ［０］〜ｈｐａｔ［６］を出力する。また、ＡＤ３［７］は、パターンデータｐａｔ［７］（すなわち１サイクル前のｎｘｐａｔ［７］）とｎｘｐａｔ［０］とのアンド演算を行い、補間用のパターンデータｈｐａｔ［７］を出力する。
【００３６】
このパターンデータ生成回路ＰＤＧ２内の７個のフリップフロップ回路ＦＦ３によって、アンド演算回路ＡＤ３［０］〜ＡＤ３［６］の出力に生じ得るグリッジを防止できる。また、ＡＤ３［７］の出力に生じ得るグリッジは、後述する位相調整回路ＰＨＣＴＬ内のフリップフロップ回路ＦＦ５［７］によって防止できる。なお、このように、ＰＤＧ２内にＦＦ３が備わっていることから、クロックサイクルを整合させるためパターンデータ生成回路ＰＤＧ１内にもフリップフロップ回路ＦＦ２が備わっている。
【００３７】
位相調整回路ＰＨＣＴＬは、ここでは、５個のフリップフロップＦＦ４［ｉ］（ｉは３〜７の整数）と、６個のフリップフロップＦＦ５［ｊ］（ｊは２〜７の整数）を備える。ＰＨＣＴＬは、ＦＦ４［ｉ］を用いてパターンデータｐａｔ［ｎ］（ｎは０〜７の整数）の各位相を調整したのちパターンデータＰ［ｎ］を出力し、ＦＦ５［ｊ］を用いて補間用のパターンデータｈｐａｔ［ｎ］の各位相を調整したのち補間用のパターンデータＰＨ［ｎ，ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）を出力する。
【００３８】
ここでは、フリップフロップＦＦ４（［３］，［４］，［５］）は、それぞれ、パターンデータｐａｔ（［３］，［４］，［５］）を図４に示したクロック信号Ｃ［０］の立ち上がりエッジでラッチ（リタイミング）し、パターンデータＰ（［３］，［４］，［５］）を出力する。ＦＦ４（［６］，［７］）は、ｐａｔ（［６］，［７］）を図４に示したクロック信号Ｃ［４］の立ち上がりエッジでラッチ（リタイミング）し、Ｐ（［６］，［７］）を出力する。一方、フリップフロップＦＦ５（［２］，［３］，［４］，［５］）は、それぞれ、補間用のパターンデータｈｐａｔ（［２］，［３］，［４］，［５］）をＣ［０］の立ち上がりエッジでラッチ（リタイミング）し、補間用のパターンデータＰＨ（［２，３］，［３，４］，［４，５］，［５，６］）を出力する。ＦＦ５（［６］，［７］）は、それぞれ、ｈｐａｔ（［６］，［７］）をＣ［４］の立ち上がりエッジでラッチ（リタイミング）し、ＰＨ（［６，７］，［７，０］）を出力する。なお、位相調整回路ＰＨＣＴＬは、ｐａｔ（［０］，［１］，［２］）をそのままＰ（［０］，［１］，［２］）として出力し、ｈｐａｔ（［０］，［１］）をそのままＰＨ（［０，１］，［１，２］）として出力する。
【００３９】
パルス選択回路部（アンド演算回路部）ＰＳＥＬ１は、８個のアンド演算回路ＡＤ４［ｎ］（ｎは０〜７の整数）を備える。ＡＤ４［ｎ］は、パターンデータＰ［ｎ］と図４に示したパルス信号Ｓ［ｎ］とのアンド演算を行い、出力パルス信号Ｓｐ［ｎ］を出力する。例えば、ＡＤ４［０］は、Ｐ［０］とＳ［０］とのアンド演算を行い、Ｓｐ［０］を出力する。パルス選択回路部（アンド演算回路部）ＰＳＥＬ２は、８個のアンド演算回路ＡＤ５［ｎ］（ｎは０〜７の整数）を備える。ＡＤ５［ｎ］は、補間用のパターンデータＰＨ［ｎ，ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）と図４に示したパルス信号Ｓ［ｎ，ｎ＋１］とのアンド演算を行い、出力パルス信号Ｓｃ［ｎ］を出力する。例えば、ＡＤ５［０］は、ＰＨ［０，１］とＳ［０，１］とのアンド演算を行い、Ｓｃ［０］を出力する。
【００４０】
これにより、パルス選択回路部（アンド演算回路部）ＰＳＥＬ１は、パルス信号Ｓ［ｎ］をパターンデータＰ［ｎ］に基づいて選択的に出力する機能を持ち、パルス選択回路部（アンド演算回路部）ＰＳＥＬ２は、パルス信号Ｓ［ｎ，ｎ＋１］を補間用のパターンデータＰＨ［ｎ，ｎ＋１］に基づいて選択的に出力する機能を持つ。オア演算回路ＯＲ１は、ＰＳＥＬ１から選択的に出力された出力パルス信号Ｓｐ［０］〜Ｓｐ［７］と、ＰＳＥＬ２から選択的に出力された出力パルス信号Ｓｃ［０］〜Ｓｃ［７］とのオア演算を行い、ＰＷＭ信号ＰＷＭＯＵＴを生成する。
【００４１】
図６は、図５のＰＷＭ出力生成部の動作例を示す波形図である。図６の例では、８分周されたクロック信号（Ｃ［４］）に伴うクロックサイクルＴ＝Ｔ０〜Ｔ３の動作が示されている。ここでは、Ｔ＝Ｔ０において、パラレルデータとなるＰＷＭパターンデータｎｘｐａｔ（［０］［１］…［７］）として「０００１１１１１」が入力され、Ｔ＝Ｔ１では、「１１１１１０００」が入力されている。このＴ＝Ｔ０におけるｎｘｐａｔ（［０］［１］…［７］）はＴ＝Ｔ１におけるパターンデータｐａｔ（［０］［１］…［７］）となり、このＴ＝Ｔ１におけるｎｘｐａｔ（［０］［１］…［７］）はＴ＝Ｔ２におけるｐａｔ（［０］［１］…［７］）となる。
【００４２】
一方、例えば、クロックサイクルＴ＝Ｔ１における補間用のパターンデータｈｐａｔ（［０］［１］…［６］）は、クロックサイクルＴ＝Ｔ０におけるＰＷＭパターンデータｎｘｐａｔ（［０］［１］…［７］）内の連続する２ビットのアンド演算結果によって定められる。Ｔ＝Ｔ０におけるｎｘｐａｔ（［０］［１］…［７］）は、「０００１１１１１」であるため、この左から１番目の値（‘０’）と２番目の値（‘０’）のアンド演算結果によってＴ＝Ｔ１におけるｈｐａｔ［０］（‘０’）が定められる。同様に、左から２番目の値（‘０’）と３番目の値（‘０’）のアンド演算結果によってｈｐａｔ［１］（‘０’）が定められ、以降同様にして、左から７番目の値（‘１’）と８番目の値（‘１’）のアンド演算結果によってｈｐａｔ［６］（‘１’）が定められる。また、Ｔ＝Ｔ１におけるｈｐａｔ［７］の値（‘１’）は、Ｔ＝Ｔ１におけるｎｘｐａｔ［０］（‘１’）とＴ＝Ｔ０におけるｎｘｐａｔ［７］（Ｔ＝Ｔ１におけるｐａｔ［７］）（‘１’）のアンド演算結果によって定められる。このように、図５のパターンデータ生成回路ＰＤＧ２は、ｎｘｐａｔ内の連続する２ビット（ｎｘｐａｔ［ｎ］，ｎｘｐａｔ［ｎ＋１］）が共に‘１’レベル（‘Ｈ’レベル）である場合に、ｈｐａｔ［ｎ］として‘１’レベル（‘Ｈ’レベル）を出力する。
【００４３】
ここで、図６に示すように、図５の位相調整回路ＰＨＣＴＬによって、例えば、クロックサイクルＴ＝Ｔ１におけるパターンデータｐａｔ（［０］［１］［２］）は、同じくＴ＝Ｔ１におけるクロック信号Ｃ［４］の立ち上がりエッジのタイミングでパターンデータＰ（［０］［１］［２］）として出力される。また、Ｔ＝Ｔ１におけるｐａｔ（［３］［４］［５］）は、このＰ（［０］［１］［２］）の出力タイミングから半周期後となるクロック信号Ｃ［０］の立ち上がりエッジのタイミングでパターンデータＰ（［３］［４］［５］）として出力される。さらに、Ｔ＝Ｔ１におけるｐａｔ（［６］［７］）は、このＰ（［０］［１］［２］）の出力タイミングから１周期後となるＣ［４］の立ち上がりエッジのタイミングでパターンデータＰ（［６］［７］）として出力される。
【００４４】
図６におけるパターンデータＰ（［０］〜［７］）内には、併せて、図５のパルス選択回路部（アンド演算回路部）ＰＳＥＬ１からの出力パルス信号Ｓｐ（［０］〜［７］）の出力タイミングが示されている。例えば、Ｓｐ［０］は、アンド演算回路ＡＤ４［０］を用いてパルス信号Ｓ［０］の出力有無をＰ［０］に基づいて選択した結果であるため、Ｓ［０］のタイミングで出力される。例えば、クロックサイクルＴ＝Ｔ１では、Ｐ［０］は‘０’であるため、Ｓｐ［０］にＳ［０］は出力されず、Ｓｐ［０］は‘０’レベル（‘Ｌ’レベル）となる。図６から判るように、図５の位相調整回路ＰＨＣＴＬを用いることで、アンド演算回路ＡＤ４［ｎ］（ｎは０〜７の整数）によってＳ［ｎ］とＰ［ｎ］とのアンド演算を行う際のセットアップマージン／ホールドマージンを十分に確保することが可能になる。例えば、図６におけるＳｐ［２］の場合でも、Ｓ［ｎ］のパルス幅（すなわちマスタクロック信号ＣＬＫｍの１周期分（例えば１．０ｎｓ））のホールドマージンが確保される。
【００４５】
これにより、出力パルス信号Ｓｐ［ｎ］（ｎは０〜７の整数）のタイミング設計を容易化することができ、Ｓｐ［ｎ］を高精度（高分解能）で生成することが可能になる。比較例として、例えば、特許文献２や特許文献３の構成は、パルス信号Ｓ［０］の出力タイミングとパターンデータＰ（［０］〜［７］）の出力タイミングが同一となっている。この場合、例えば、Ｐ（［０］〜［７］）の出力タイミングが早すぎると、本来、クロックサイクルＴにおけるＳ（［０］〜［７］）の出力有無を定めるためのＰ（［０］〜［７］）によって、その前クロックサイクル（Ｔ−１）におけるＳ［７］の出力有無を一部定めてしまうという不具合が生じ得る。逆に、Ｐ（［０］〜［７］）の出力タイミングが遅すぎると、本来、クロックサイクルＴにおけるＳ（［０］〜［７］）の出力有無を定めるためのＰ（［０］〜［７］）によって、その後のクロックサイクル（Ｔ＋１）におけるＳ［０］の出力有無を一部定めてしまうという不具合が生じ得る。
【００４６】
一方、図５の位相調整回路ＰＨＣＴＬを用いることで、出力パルス信号Ｓｐ［ｎ］（ｎは０〜７の整数）の出力タイミングに対して十分なセットアップ時間を確保した状態でパターンデータＰ［ｎ］が出力され、また十分なホールド時間を確保した状態でＰ［ｎ］の出力が閉じる。したがって、結果的にＳｐ［ｎ］のタイミング設計を容易化することができ、Ｓｐ［ｎ］を高精度（高分解能）で生成することが可能になる。
【００４７】
図６における補間用のパターンデータＰＨ（［０，１］，［１，２］，…，［７，０］に関しても、パターンデータＰ（［０］〜［７］）の場合と同様に、併せて、図５のパルス選択回路部（アンド演算回路部）ＰＳＥＬ２からの出力パルス信号Ｓｃ（［０］〜［７］）の出力タイミングが示されている。この場合も、位相調整回路ＰＨＣＴＬを用いることで、アンド演算回路ＡＤ５［ｎ］（ｎは０〜７の整数）によってパルス信号Ｓ［ｎ，ｎ＋１］とＰＨ［ｎ，ｎ＋１］とのアンド演算を行う際のセットアップマージン／ホールドマージンを十分に確保することが可能になる。その結果、Ｓｃ［ｎ］（ｎは０〜７の整数）のタイミング設計を容易化することができ、Ｓｃ［ｎ］を高精度（高分解能）で生成することが可能になる。
【００４８】
なお、位相調整回路ＰＨＣＴＬは、このように、入力されたパターンデータの一部のビットに第１位相を持たせ、他の一部のビットに第１位相を基準としてマスタクロック信号ＣＬＫｍの周期（第１周期）の整数倍の位相差を持つ第２位相を持たせることでセットアップマージン／ホールドマージンを確保するためのものである。したがって、必ずしも図５の構成例に限定されるものではない。すなわち、ＰＨＣＴＬは、フリップフロップと図４に示したクロック信号Ｃ［０］〜Ｃ［７］の組み合わせによって、少なくともマスタクロック信号ＣＬＫｍの１周期以上のセットアップマージン／ホールドマージンが確保されるような構成であればよい。
【００４９】
例えば、パターンデータＰ（［０］，［１］）をそのまま（Ｃ［４］に相当）とし、パターンデータＰ（［２］，［３］）をクロック信号Ｃ［６］で、Ｐ（［４］，［５］）をＣ［０］で、Ｐ（［６］，［７］）をＣ［２］でそれぞれリタイミングするように構成することも可能である。ただし、使用するクロック信号の数が多いと、制御の複雑化を招き、また、例えばパターンデータｐａｔ［ｎ］をラッチしてＰ［ｎ］を出力する際のセットアップマージン／ホールドマージンも問題となる恐れがある。この観点で、図５のＰＨＣＴＬに示したように、２種類のクロック信号（Ｃ［０］，Ｃ［４］）を用いる構成とすることが有益となる。
【００５０】
また、図６において、図５のオア演算回路ＯＲ１から出力されるＰＷＭ信号ＰＷＭＯＵＴは、パルス選択回路部（アンド演算回路部）ＰＳＥＬ１によって、クロックサイクルＴ＝Ｔ１における出力パルス信号Ｓｐ［３］（‘１’）の出力タイミングで‘Ｈ’レベルに遷移する。その後、クロックサイクルＴ＝Ｔ３におけるＳｐ［５］（‘０’）の出力タイミングで‘Ｌ’レベルに遷移する。このＰＷＭＯＵＴの‘Ｈ’レベルの期間では、例えば、Ｓｐ［３］およびＳｐ［４］が共に‘１’レベルの場合、パルス選択回路部（アンド演算回路部）ＰＳＥＬ２によって、出力パルス信号Ｓｃ［３］も‘１’レベルとなる。これにより、以下に説明するように、ＰＳＥＬ１の構成に起因してＰＷＭＯＵＴに生じ得る微小時間のグリッジを防止することが可能になる。
【００５１】
《補間用のパルス選択回路部（アンド演算回路部）の詳細》
図７（ａ）は、図５における補間用のパルス選択回路部（アンド演算回路部）の効果の一例を示す図であり、図７（ｂ）は、図７（ａ）の比較例として補間用のパルス選択回路部（アンド演算回路部）が無い場合の問題点の一例を示す図である。まず、図７（ｂ）に示すように、図５における補間用のパルス選択回路部（アンド演算回路部）ＰＳＥＬ２が無い場合で、パルス選択回路部（アンド演算回路部）ＰＳＥＬ１に入力される、連続するパターンデータＰ［ｎ］，Ｐ［ｎ＋１］（ｎは０〜７の整数、（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）が共に‘Ｈ’レベルであった場合を想定する。
【００５２】
この場合、パルス選択回路部（アンド演算回路部）ＰＳＥＬ１によってパルス信号Ｓ［ｎ］，Ｓ［ｎ＋１］が順に出力され、オア演算回路ＯＲ１による当該Ｓ［ｎ］，Ｓ［ｎ＋１］のオア演算によってＰＷＭ信号ＰＷＭＯＵＴが生成される。しかしながら、この場合、例えば、Ｓ［ｎ］の立ち下りタイミングがＳ［ｎ＋１］の立ち上がりタイミングよりも早くなった場合、ＰＳＥＬ１は、Ｓ［ｎ］とＳ［ｎ＋１］の間の未選択期間で‘Ｌ’レベルを出力してしまう。これにより、ＰＷＭＯＵＴでは、当該未選択期間においても‘Ｈ’レベルの出力を期待するところ、‘Ｌ’レベルのグリッジが生じてしまう。
【００５３】
一方、補間用のパルス選択回路部（アンド演算回路部）ＰＳＥＬ２を備える場合、図７（ａ）に示すように、パターンデータＰ［ｎ］，Ｐ［ｎ＋１］の‘Ｈ’レベルに伴い、ＰＳＥＬ２に入力される、補間用のパターンデータＰＨ［ｎ，ｎ＋１］は‘Ｈ’レベルとなる。この場合、ＰＳＥＬ２は、パルス選択回路部（アンド演算回路部）ＰＳＥＬ１によってパルス信号Ｓ［ｎ］，Ｓ［ｎ＋１］が順に出力されている期間に渡って補間用のパルス信号Ｓ［ｎ，ｎ＋１］を出力する。その結果、図７（ｂ）で述べたように、Ｓ［ｎ］とＳ［ｎ＋１］の間に未選択期間が存在する場合でも、当該未選択期間を補間するための補間用のパルス信号Ｓ［ｎ，ｎ＋１］がオア演算回路ＯＲ１に入力されるため、ＰＷＭ信号ＰＷＭＯＵＴにおけるグリッジの発生を防止することが可能になる。また、これにより、Ｓ［ｎ］とＳ［ｎ＋１］の間の未選択期間の影響が低減され、タイミング設計を容易化することが可能になる。
【００５４】
図８（ａ）、図８（ｂ）および図８（ｃ）は、図５における各パルス選択回路部（アンド演算回路部）およびオア演算回路の模式的な動作例を示す図である。図８（ａ）にはＰＷＭ信号ＰＷＭＯＵＴが‘Ｌ’レベルとなる場合が示され、図８（ｂ）にはＰＷＭＯＵＴが‘Ｌ’レベルから‘Ｈ’レベルに遷移する場合が示され、図８（ｃ）にはＰＷＭＯＵＴが‘Ｈ’レベルから‘Ｌ’レベルに遷移する場合が示される。
【００５５】
図８（ａ）では、連続するパターンデータＰ［ｎ］，Ｐ［ｎ＋１］（ｎは０〜７の整数、（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）が共に‘Ｌ’レベルであるため、補間用のパターンデータＰ［ｎ，ｎ＋１］は‘Ｌ’レベルとなる。これにより、オア演算回路ＯＲ１には、パルス信号Ｓ［ｎ］，Ｓ［ｎ＋１］および補間用のパルス信号Ｓ［ｎ，ｎ＋１］共に入力されず、ＰＷＭ信号ＰＷＭＯＵＴは‘Ｌ’レベルとなる。図８（ｂ）では、Ｐ［ｎ］が‘Ｌ’レベル、Ｐ［ｎ＋１］が‘Ｈ’レベルであるため、Ｐ［ｎ，ｎ＋１］は‘Ｌ’レベルとなる。これにより、ＯＲ１には、Ｓ［ｎ＋１］のみが入力され、ＰＷＭＯＵＴはこのＳ［ｎ＋１］の立ち上がりのタイミングで‘Ｌ’レベルから‘Ｈ’レベルに遷移する。
【００５６】
図８（ｃ）では、パターンデータＰ［ｎ］が‘Ｈ’レベル、パターンデータＰ［ｎ＋１］が‘Ｌ’レベルであるため、補間用のパターンデータＰ［ｎ，ｎ＋１］は‘Ｌ’レベルとなる。これにより、オア演算回路ＯＲ１には、パルス信号Ｓ［ｎ］のみが入力され、ＰＷＭ信号ＰＷＭＯＵＴは、このＳ［ｎ］の立ち下がりのタイミングで‘Ｈ’レベルから‘Ｌ’レベルに遷移する。なお、図７（ａ）に示したように、連続するＰ［ｎ］，Ｐ［ｎ＋１］が共に‘Ｈ’レベルの場合には、Ｐ［ｎ，ｎ＋１］は‘Ｈ’レベルとなり、ＰＷＭＯＵＴも‘Ｈ’レベルとなる。
【００５７】
《ＰＷＭ出力パターン生成部の詳細》
図９は、図２におけるＰＷＭ出力パターン生成部の詳細な構成例を示す回路ブロック図である。図９に示すＰＷＭ出力パターン生成部ＰＷＭＰＴＧは、デコーダ回路ＤＥＣと、フリップフロップ回路ＦＦａと、選択回路ＳＥＬ［０］〜ＳＥＬ［７］を備える。ＳＥＬ［ｎ］（ｎは０〜７の整数）は、２ビットの選択信号ＳＥ［ｎ］に基づいて４入力の中から１出力を選択し、それをＰＷＭパターンデータｎｘｐａｔ［ｎ］として出力する。ＳＥＬ［０］の出力（ｎｘｐａｔ［０］）は、ＳＥＬ［１］における４入力中の２入力となり、その一方はＳＥＬ［０］の出力の非反転データ、他方はＳＥＬ［０］の出力の反転データとなる。同様に、ＳＥＬ［１］（ｎｘｐａｔ［１］）の出力は、ＳＥＬ［２］における４入力中の２入力となり、以降も同様にして、図示しないＳＥＬ［６］の出力（ｎｘｐａｔ［６］）はＳＥＬ［７］における４入力中の２入力となる。
【００５８】
一方、選択回路ＳＥＬ［７］の出力（ｎｘｐａｔ［７］）は、フリップフロップ回路ＦＦａを介して選択回路ＳＥＬ［０］における４入力中の２入力となる。このように、選択回路ＳＥＬ［０］〜ＳＥＬ［７］は、縦続接続された構成となっており、その最終段（ＳＥＬ［７］）の出力がＦＦａを介して初段（ＳＥＬ［０］）に帰還される構成となっている。各ＳＥＬ［ｎ］（ｎは０〜７の整数）において、４入力中の２入力には前述したように前段のＳＥＬ［ｎ−１］からの出力が接続され、残りの２入力には、‘０’レベル（‘Ｌ’レベル）と‘１’レベル（‘Ｈ’レベル）が入力される。
【００５９】
デコーダ回路ＤＥＣは、図２に示したように、マッチ信号ＭＴ１，ＭＴ２と２ビットのイベント設定値ＥＶＮＴ１，ＥＶＮＴ２を受けてデコードを行い、それぞれ２ビットの選択信号ＳＥ［０］〜ＳＥ［７］を出力する。ＭＴ１には、フラグ信号ＦＬＧ１とカウンタの設定値ＣＴＨ１’とが含まれる。ここで、図２に示した比較回路部ＣＭＰは、例えば、カウンタの値ＣＴからカウンタの設定値ＣＴＨ１を引き算し、その結果の下位３ビット以外がゼロになればＦＬＧ１を出力し、当該下位３ビットの値をＣＴＨ１’として出力する。同様に、ＣＭＰを介して、ＭＴ２にも、ＣＴとカウンタの設定値ＣＴＨ２との引き算結果に基づくフラグ信号ＦＬＧ２と、この際の下位３ビットの値となるカウンタの設定値ＣＴＨ２’とが含まれる。
【００６０】
デコーダ回路ＤＥＣは、フラグ信号ＦＬＧ１（又はＦＬＧ２）が入力された際に、カウンタの設定値ＣＴＨ１’（又はＣＴＨ２’）に基づいてイベントを発生させる選択信号ＳＥ［０］〜ＳＥ［７］の位置を定める。例えば、ＣＴＨ１’＝“０００”の場合ＳＥ［０］を対象とし、ＣＴＨ１’＝“００１”の場合ＳＥ［１］を対象とし、以降同様に、ＣＴＨ１’＝“１１１”の場合ＳＥ［７］を対象とする。そして、ＤＥＣは、当該対象におけるイベントの種類をイベント設定値ＥＶＮＴ１（又はＥＶＮＴ２）に基づいて定める。
【００６１】
イベント設定値ＥＶＮＴ１（又はＥＶＮＴ２）では、選択回路ＳＥＬ［ｎ］の４入力から判るように、ＰＷＭパターンデータｎｘｐａｔ［ｎ］の論理レベルとして、１つ前となるｎｘｐａｔ［ｎ−１］の論理レベルを継続させるか（ＳＥ［ｎ］＝“００”）、ｎｘｐａｔ［ｎ−１］の論理レベルを反転させるか（ＳＥ［ｎ］＝“１１”）が設定可能である。更に、ＥＶＮＴ１（又はＥＶＮＴ２）では、ｎｘｐａｔ［ｎ］の論理レベルを、強制的に‘Ｈ’レベルにするか（ＳＥ［ｎ］＝“１０”）、強制的に‘Ｌ’レベルにするか（ＳＥ［ｎ］＝“０１”）が設定可能である。
【００６２】
このようなＰＷＭ出力パターン生成部ＰＷＭＰＴＧを用いることで、ＰＷＭパターンデータｎｘｐａｔ［０］〜ｎｘｐａｔ［７］を柔軟に設定することが可能になる。例えば、ＰＷＭ信号ＰＷＭＯＵＴのデフォルト値が‘Ｌ’レベルであるものとして、図２におけるカウンタの設定値ＣＴＨ１、ＣＴＨ２をそれぞれ「ｘ…ｘ００１」、「ｘ…ｘ１１１」（「ｘ…ｘ」は同一値）とし、イベント設定値ＥＶＮＴ１，ＥＶＮＴ２を共に「論理レベルの反転（トグル）」に設定する。この場合、図９のデコーダ回路ＤＥＣを介して、選択信号ＳＥ［１］，ＳＥ［７］が“１１”に設定され、残りの選択信号ＳＥ（［０］，［２］〜［６］）が“００”に設定される。その結果、ｎｘｐａｔ（［０］［１］［２］…［６］［７］）として「０１１…１０」が生成され、例えば６．０ｎｓの‘Ｈ’パルス幅を持つＰＷＭＯＵＴが生成される。なお、例えばＣＴＨ２を「ｘ…ｘ０１０」とすれば、最小分解能（例えば１．０ｎｓ）の‘Ｈ’パルス幅を持つＰＷＭＯＵＴを生成することもできる。また、ＳＥ［ｎ］＝“０１”や“１０”は、例えば、ＰＷＭＯＵＴのデフォルト値の論理レベルをユーザの都合で設定したいような場合に使用することができる。
【００６３】
以上、本実施の形態１により、例えば最小分解能が１．０ｎｓの場合、最小のパルス幅を１．０ｎｓとして、当該パルス幅を１．０ｎｓ刻みで設定可能とする高分解能（高精度）なＰＷＭ信号生成装置を実現でき、また、この際のタイミング設計を容易化することが可能になる。この効果は、例えば、最小分解能の周期で組合せ論理回路を介したフリップフロップ間のデータ転送が行われないような回路構成を用いたことや、位相調整回路ＰＨＣＴＬを設けたことや、補間用のパルス選択回路部（アンド演算回路部）ＰＳＥＬ２を設けたこと等によって得られる。
【００６４】
また、このようなＰＷＭ信号生成装置を用いることで、最先端の半導体製造プロセスを用いずとも高分解能なＰＷＭ信号の生成が可能になるため、コストの低減等が実現可能になる。さらに、図２において、分周回路ＮＤＩＶ以外は、実質的に低速（１／Ｎ）のクロック信号で動作することになるため、消費電力の低減も図れる。なお、図３では、クロック・パルス信号生成部ＣＰＧの構成例を示したが、勿論、当該構成例に限定されるものではなく、図４に示したパルス信号Ｓ［ｋ］や補間用のパルス信号Ｓ［ｎ，ｎ＋１］は様々な回路方式を用いて生成することが可能である。
【００６５】
（実施の形態２）
《クロック・パルス信号生成部の詳細（変形例［１］）》
図１０は、本発明の実施の形態２によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図である。図１０のクロック・パルス信号生成部ＣＰＧ２において、分周回路ＮＤＩＶ２は、図３に示した分周回路ＮＤＩＶ１と同様の回路構成を備えている。ただし、ＮＤＩＶ２は、８段のフリップフロップ回路ＦＦ１の初期値がＮＤＩＶ１とは異なっており、１段目〜６段目に‘Ｌ’レベル（‘０’レベル）が設定され、７段目および８段目に‘Ｈ’レベル（‘１’レベル）が設定される。
【００６６】
これにより、図４にも示したように、同じパルス幅（マスタクロック信号ＣＬＫｍの周期（第１周期）の２倍のパルス幅）と、同じ周期（ＣＬＫｍの８倍の周期（第２周期））を持ち、第１周期を単位として順に異なる位相を持つパルス信号Ｓ［ｎ，ｎ＋１］（ｎは０〜７の整数、（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）が生成される。すなわち、２５％のデューティを持ち、順に位相が異なるＳ［ｎ，ｎ＋１］が生成される。Ｓ［０，１］，Ｓ［１，２］，…，Ｓ［７，０］は、それぞれ、縦続接続された８段のＦＦ１の内の１段目、２段目、…、８段目の出力信号に対応する。
【００６７】
図１０のクロック・パルス信号生成部ＣＰＧ２において、パルス信号生成回路ＰＧＥＮ２は、８個のアンド演算回路ＡＤ６［ｎ］（ｎは０〜７の整数）を備える。８個のＡＤ６［ｎ］は、共に２入力を持ち、パルス信号Ｓ［ｎ，ｎ＋１］と、Ｓ［ｎ＋１，ｎ＋２］（（ｎ＋１）および（ｎ＋２）が８以上の場合に（ｎ＋１）および（ｎ＋２）は８の剰余）の反転信号とのアンド演算を行うことで、パルス信号Ｓ［ｎ］（Ｓ［０］〜Ｓ［７］）を生成する。例えば、ＡＤ６［０］はＳ［０，１］とＳ［１，２］の反転信号とのアンド演算を行うことでＳ［０］を生成する。
【００６８】
図１０のようなクロック・パルス信号生成部ＣＰＧ２を用いると、図３のクロック・パルス信号生成部ＣＰＧ１を用いる場合と比較して、アンド演算回路が８個減るため、回路規模が低減できる。また、これに伴い、図３におけるＣ［ｎ］（図１０におけるＳ［ｎ，ｎ＋１］）のノードに接続される負荷が減るため、パルス信号Ｓ［０］〜Ｓ［７］の波形品質を確保し易くなる。ただし、図１０の構成例では、補間用のパルス信号Ｓ［ｎ，ｎ＋１］とパルス信号Ｓ［ｎ］との間に、アンド演算回路ＡＤ６［ｎ］の遅延分だけスキューが生じる可能性がある。このスキューを低減する観点では、図３のような構成例が望ましい。なお、図１０の構成例では、図３の場合と異なり、クロック信号Ｃ［ｎ］が生成されないが、Ｃ［ｎ］は、例えばＳ［ｎ，ｎ＋１］で代用することが可能である。
【００６９】
（実施の形態３）
《クロック・パルス信号生成部の詳細（変形例［２］）》
図１１は、本発明の実施の形態３によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図である。図１１のクロック・パルス信号生成部ＣＰＧ３は、図１０のクロック・パルス信号生成部ＣＰＧ２と比較して、パルス信号生成回路ＰＧＥＮ３内に８個のフリップフロップ回路ＦＦ６が加わった構成となっている。８個のＦＦ６は、それぞれ、アンド演算回路ＡＤ６［０］〜ＡＤ６［７］の出力信号をマスタクロック信号ＣＬＫｍの立ち上がりエッジでラッチすることでパルス信号Ｓ［０］〜Ｓ［７］を出力する。
【００７０】
図１１の構成例は、図１０の構成例と比較して、フリップフリップ回路ＦＦ６を介することで、パルス信号Ｓ［０］〜Ｓ［７］の波形品質を更に確保し易くなり、また、Ｓ［０］〜Ｓ［７］間のスキューも低減し易くなる。ただし、図１１の構成例は、小規模の組合せ論理回路（ここではアンド演算回路）を介したフリップフロップ回路間のデータ転送を高速に（例えば１ＧＨｚで）行えることが前提となっており、これが困難な場合には、図１０または図３のような構成例の方が望ましい。
【００７１】
（実施の形態４）
《クロック・パルス信号生成部の詳細（変形例［３］）》
図１２（ａ）は、本発明の実施の形態４によるＰＷＭ信号生成装置において、図２のクロック・パルス信号生成部の詳細な構成例を示す回路図であり、図１２（ｂ）は、図１２（ａ）の一部の動作例を示す波形図である。図１２（ａ）に示すクロック・パルス信号生成部ＣＰＧ４は、２個の分周回路ＮＤＩＶ４ａ，ＮＤＩＶ４ｂと、パルス信号生成回路ＰＧＥＮ４を備える。
【００７２】
分周回路ＮＤＩＶ４ａは、リング状に縦続接続された４段のフリップフロップ回路ＦＦ７を備え、各ＦＦ７は、マスタクロック信号ＣＬＫｍ２の立ち下がりエッジ（ＣＬＫｍ２の反転信号（／ＣＬＫｍ２）の立ち上がりエッジ）に同期して動作する。一方、分周回路ＮＤＩＶ４ｂも、リング状に縦続接続された４段のフリップフロップ回路ＦＦ８を備え、各ＦＦ８は、ＦＦ７と異なりＣＬＫｍ２の立ち上がりエッジに同期して動作する。また、ＦＦ７の初期値として、４段のＦＦ７の内の１段目〜３段目には‘Ｌ’レベル（‘０’レベル）が設定され、４段目には‘Ｈ’レベル（‘１’レベル）が設定される。同様に、ＦＦ８の初期値として、４段のＦＦ８の内の１段目〜３段目には‘Ｌ’レベル（‘０’レベル）が設定され、４段目には‘Ｈ’レベル（‘１’レベル）が設定される。
【００７３】
ここで、マスタクロック信号ＣＬＫｍ２は、例えば、これまでの各実施の形態で述べたマスタクロック信号ＣＬＫｍの半分の周波数を備える。例えばＣＬＫｍが１ＧＨｚの場合、ＣＬＫｍ２は５００ＭＨｚの周波数を備える。これにより、分周回路ＮＤＩＶ４ａにおけるフリップフロップ回路ＦＦ７の１段目、２段目、３段目、４段目から、それぞれ、図４に示した補間用のパルス信号Ｓ［１，２］，Ｓ［３，４］，Ｓ［５，６］，Ｓ［７，０］を生成することができる。また、分周回路ＮＤＩＶ４ｂにおけるフリップフロップ回路ＦＦ８の１段目、２段目、３段目、４段目から、それぞれ、図４に示した補間用のパルス信号Ｓ［０，１］，Ｓ［２，３］，Ｓ［４，５］，Ｓ［６，７］を生成することができる。
【００７４】
パルス信号生成回路ＰＧＥＮ４は、８個のアンド演算回路ＡＤ７［０］〜ＡＤ７［７］を備える。ＡＤ７［ｋ］（ｋ＝１，３，５，７）は、それぞれ、マスタクロック信号ＣＬＫｍ２の反転信号（／ＣＬＫｍ２）と補間用のパルス信号Ｓ［ｋ，ｋ＋１］（（ｋ＋１）≧８の場合に（ｋ＋１）は８の剰余）とのアンド演算を行うことで、パルス信号Ｓ［ｋ］を生成する。例えば、ＡＤ７［１］は、図１２（ｂ）に示すように、／ＣＬＫｍ２とＳ［１，２］とのアンド演算を行うことでＳ［１］を生成する。一方、ＡＤ７［ｍ］（ｍ＝０，２，４，６）は、それぞれ、ＣＬＫｍ２と補間用のパルス信号Ｓ［ｍ，ｍ＋１］とのアンド演算を行うことで、パルス信号Ｓ［ｍ］を生成する。例えば、ＡＤ７［０］は、図１２（ｂ）に示すように、ＣＬＫｍ２とＳ［０，１］とのアンド演算を行うことでＳ［０］を生成する。
【００７５】
図１２（ａ）の構成例は、図３、図１０および図１１に示したような構成例と比較して、その半分の周波数（例えば５００ＭＨｚ）を用いてパルス信号Ｓ［ｎ］および補間用のパルス信号Ｓ［ｎ，ｎ＋１］を生成できるため、タイミング設計の容易化や消費電力の低減等が図れる。ただし、図１２（ａ）の構成例は、マスタクロック信号ＣＬＫｍ２のデューティが５０％であることが前提となっており、そうでない場合には、図３、図１０また図１１に示したような構成例の方が望ましい。
【００７６】
（実施の形態５）
《ＰＷＭ出力生成部の詳細（変形例［１］）》
図１３は、本発明の実施の形態５によるＰＷＭ信号生成装置において、図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。図１３に示すＰＷＭ出力生成部ＰＷＭＧ２は、２個のパターンデータ生成回路ＰＤＧ３，ＰＤＧ４と、位相調整回路ＰＨＣＴＬと、２個のパルス選択回路部（アンド演算回路部）ＰＳＥＬ１，ＰＳＥＬ２と、オア演算回路ＯＲ１を備える。この内、ＰＨＣＴＬと、ＰＳＥＬ１，ＰＳＥＬ２と、ＯＲ１の構成に関しては、図５のＰＷＭ出力生成部ＰＷＭＧ１と同様である。
【００７７】
パターンデータ生成回路ＰＤＧ３は、８個のアンド演算回路ＡＤ８［ｎ］（ｎは０〜７の整数）と、７個のフリップフロップ回路ＦＦ９と、２個のフリップフロップ回路ＦＦ２［６］，ＦＦ２［７］を備える。ＦＦ２［６］，ＦＦ２［７］は、それぞれ、ＰＷＭパターンデータｎｘｐａｔ［６］，ｎｘｐａｔ［７］をクロック信号Ｃ［４］の立ち上がりエッジでラッチし、パターンデータｐａｔ［６］，ｐａｔ［７］を出力する。ＡＤ８［０］は、ｐａｔ［７］の反転データと、ｎｘｐａｔ［０］と、ｎｘｐａｔ［１］の反転データとのアンド演算を行う。ＡＤ８［ｐ］（ｐは１〜６の整数）は、ｎｘｐａｔ［ｐ−１］の反転データと、ｎｘｐａｔ［ｐ］と、ｎｘｐａｔ［ｐ＋１］の反転データとのアンド演算を行う。例えば、ＡＤ８［１］は、ｎｘｐａｔ［０］の反転データと、ｎｘｐａｔ［１］と、ｎｘｐａｔ［２］の反転データとのアンド演算を行う。ＡＤ８［７］は、ｐａｔ［６］の反転データと、ｐａｔ［７］と、ｎｘｐａｔ［０］の反転データとのアンド演算を行い、パターンデータｐａｔＡ［７］を生成する。７個のＦＦ９は、それぞれ、ＡＤ８［０］〜ＡＤ８［６］の出力をＣ［４］の立ち上がりエッジでラッチし、パターンデータｐａｔＡ［０］〜ｐａｔＡ［６］を生成する。
【００７８】
パターンデータ生成回路ＰＤＧ４は、８個のアンド演算回路ＡＤ９［ｎ］（ｎは０〜７の整数）と、６個のフリップフロップ回路ＦＦ３を備える。ＡＤ９［ｑ］（ｑは０〜５の整数）は、ＰＷＭパターンデータｎｘｐａｔ［ｑ］とｎｘｐａｔ［ｑ＋１］とのアンド演算を行う。例えば、ＡＤ９［０］は、ｎｘｐａｔ［０］とｎｘｐａｔ［１］とのアンド演算を行う。６個のＦＦ３は、それぞれ、ＡＤ９［０］〜ＡＤ９［５］の出力をクロック信号Ｃ［４］の立ち上がりエッジでラッチし、補間用のパターンデータｈｐａｔ［０］〜ｈｐａｔ［５］を生成する。ＡＤ９［６］は、パターンデータｐａｔ［６］とｐａｔ［７］とのアンド演算を行い、ｈｐａｔ［６］を生成する。ＡＤ９［７］は、ｐａｔ［７］とｎｘｐａｔ［０］とのアンド演算を行い、ｈｐａｔ［７］を生成する。位相調整回路ＰＨＣＴＬは、パターンデータ生成回路ＰＤＧ３からのパターンデータｐａｔＡ［０］〜ｐａｔＡ［７］とＰＤＧ４からの補間用のパターンデータｈｐａｔ［０］〜ｈｐａｔ［７］を受けて、図５の場合と同様に動作する。
【００７９】
このように、パターンデータ生成回路ＰＤＧ３は、着目するＰＷＭパターンデータ（例えばｎｘｐａｔ［１］）が‘１’レベルで、その前後のＰＷＭパターンデータ（ｎｘｐａｔ［０］，ｎｘｐａｔ［２］）が共に‘０’レベルである場合に、当該着目するＰＷＭパターンデータに対応するパターンデータ（ｐａｔＡ［１］）を‘１’レベルに駆動する。すなわち、ＰＤＧ３は、ＰＷＭパターンデータにおける隣接する３ビットの“０１０”を受けて、最小分解能（例えば１．０ｎｓ）のパルス幅を持つＰＷＭ信号ＰＷＭＯＵＴを出力する場合に、その出力するタイミングに対応するパターンデータｐａｔＡ［ｎ］を‘１’レベルに駆動する。
【００８０】
一方、パターンデータ生成回路ＰＤＧ４は、図５のＰＤＧ２と同様に、着目するＰＷＭパターンデータ（例えばｎｘｐａｔ［０］）が‘１’レベルで、その後のＰＷＭパターンデータ（ｎｘｐａｔ［１］）も‘１’レベルである場合に、当該着目するＰＷＭパターンデータに対応するパターンデータ（ｈｐａｔ［０］）を‘１’レベルに駆動する。すなわち、ＰＤＧ４は、ＰＷＭパターンデータにおける隣接する２ビットの“１１”を受けて、最小分解能の２倍以上のパルス幅（例えば２．０ｎｓ以上）を持つＰＷＭ信号ＰＷＭＯＵＴを出力する場合に、その出力するタイミングに対応する補間用のパターンデータｈｐａｔ［ｎ］を‘１’レベルに駆動する。なお、当該ＰＤＧ４は、ＰＤＧ２と異なり、アンド演算回路ＡＤ９［６］の出力からｈｐａｔ［６］を直接生成しているが、アンド演算後にラッチするかラッチ後にアンド演算を行うかの違いであり、実質的な動作は同一である。
【００８１】
このようなＰＷＭ出力生成部ＰＷＭＧ２を用いることで、図５のＰＷＭ出力生成部ＰＷＭＧ１の場合と同様に、最小分解能のパルス幅を持つＰＷＭ信号ＰＷＭＯＵＴを生成できると共に、当該パルス幅を最小分解能の刻みで設定することが可能になる。そして、この際には、図５の場合と同様に例えば最先端の半導体製造プロセスを用いずとも高分解能化（例えば１．０ｎｓ）が図れ、更に、図５の場合と比較してタイミング設計の更なる容易化を図れる場合がある。
【００８２】
すなわち、図５の構成例では、パルス信号Ｓ［ｎ］と補間用のパルス信号Ｓ［ｎ，ｎ＋１］との間のスキューを考慮する必要がある。具体的には、図５において、例えば２．０ｎｓ以上のパルス幅を持つＰＷＭ信号ＰＷＭＯＵＴを生成する場合、Ｓ［０］，Ｓ［１］に対してＳ［０，１］を用いて補間を行っているため、Ｓ［０］，Ｓ［１］に対してＳ［０，１］のスキューを例えば最小分解能の半分（例えば０．５ｎｓ）以内に抑える必要がある。一方、図１３の構成例では、例えば２．０ｎｓ以上のパルス幅を持つＰＷＭＯＵＴを生成する場合、元々半周期が重複している（既に補間の関係となっている）Ｓ［ｎ，ｎ＋１］のみを用いてＰＷＭＯＵＴを生成している。このため、補間の観点で見た場合には、Ｓ［ｎ］とＳ［ｎ，ｎ＋１］との間のスキューは特に影響しなくなり、隣接するＳ［ｎ，ｎ＋１］同士が重複さえすればよく、Ｓ［ｎ，ｎ＋１］同士では例えば１．０ｎｓまでのスキューを許容できる。なお、位相調整回路ＰＨＣＴＬを設けることによる効果や、パルス信号の補間を行うことによる効果は、図５の場合と同様である。
【００８３】
（実施の形態６）
《ＰＷＭ出力生成部の詳細（変形例［２］）》
図１４は、本発明の実施の形態６によるＰＷＭ信号生成装置において、図１におけるＰＷＭ出力生成部の詳細な構成例を示す回路図である。図１４に示すＰＷＭ出力生成部ＰＷＭＧ３は、２個のパターンデータ生成回路ＰＤＧ１，ＰＤＧ５と、位相調整回路ＰＨＣＴＬ’と、２個のパルス選択回路部（アンド演算回路部）ＰＳＥＬ３，ＰＳＥＬ４と、パルス幅変更回路ＰＣＬと、オア演算回路ＯＲ２を備える。この内、ＰＤＧ１の構成に関しては、図５の場合と同様である。
【００８４】
パターンデータ生成回路ＰＤＧ５は、８個のアンド演算回路ＡＤ１０［ｎ］（ｎは０〜７の整数）と、７個のフリップフロップ回路ＦＦ１０を備える。ＡＤ１０［ｘ］（ｘは０〜６の整数）は、ＰＷＭパターンデータｎｘｐａｔ［ｘ］と、ｎｘｐａｔ［ｘ＋１］の反転データとのアンド演算を行う。例えば、ＡＤ１０［０］は、ｎｘｐａｔ［０］と、ｎｘｐａｔ［１］の反転データとのアンド演算を行う。７個のＦＦ１０は、それぞれ、ＡＤ１０［０］〜ＡＤ１０［６］の出力を図４に示したクロック信号Ｃ［４］でラッチし、変更用のパターンデータｃｐａｔ［０］〜ｃｐａｔ［６］を出力する。また、ＡＤ１０［７］は、パターンデータ生成回路ＰＤＧ１からのパターンデータｐａｔ［７］（すなわち１サイクル前のｎｘｐａｔ［７］）と、ｎｘｐａｔ［０］の反転データとのアンド演算を行い、変更用のパターンデータｃｐａｔ［７］を出力する。
【００８５】
位相調整回路ＰＨＣＴＬ’は、６個のフリップフロップＦＦ４［ｉ］（ｉは２〜７の整数）と、７個のフリップフロップＦＦ５［ｊ］（ｊは１〜７の整数）を備える。ＰＨＣＴＬ’は、ＦＦ４［ｉ］を用いてパターンデータ生成回路ＰＤＧ１からのパターンデータｐａｔ［ｎ］（ｎは０〜７の整数）の各位相を調整したのちパターンデータＰ［ｎ］を出力する。また、ＰＨＣＴＬ’は、ＦＦ５［ｊ］を用いて変更用のパターンデータｃｐａｔ［ｎ］の各位相を調整したのち変更用のパターンデータＰＣ［ｎ，ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）を出力する。
【００８６】
フリップフロップＦＦ４（［２］，［３］，［４］，［５］）は、それぞれ、パターンデータｐａｔ（［２］，［３］，［４］，［５］）を図４に示したクロック信号Ｃ［０］の立ち上がりエッジでラッチ（リタイミング）し、パターンデータＰ（［２］，［３］，［４］，［５］）を出力する。ＦＦ４（［６］，［７］）は、ｐａｔ（［６］，［７］）を図４に示したクロック信号Ｃ［４］の立ち上がりエッジでラッチ（リタイミング）し、Ｐ（［６］，［７］）を出力する。一方、フリップフロップＦＦ５（［１］，［２］，［３］，［４］）は、それぞれ、変更用のパターンデータｃｐａｔ（［１］，［２］，［３］，［４］）をＣ［０］の立ち上がりエッジでラッチ（リタイミング）し、変更用のパターンデータＰＣ（［１，２］，［２，３］，［３，４］，［４，５］）を出力する。ＦＦ５（［５］，［６］，［７］）は、それぞれ、ｃｐａｔ（［５］，［６］，［７］）をＣ［４］の立ち上がりエッジでラッチ（リタイミング）し、ＰＣ（［５，６］，［６，７］，［７，０］）を出力する。なお、位相調整回路ＰＨＣＴＬ’は、ｐａｔ（［０］，［１］）をそのままＰ（［０］，［１］）として出力し、ｃｐａｔ［０］をそのままＰＣ［０，１］として出力する。
【００８７】
位相調整回路ＰＨＣＴＬ’は、その機能に関しては、図５等の位相調整回路ＰＨＣＴＬと同様である。ただし、図５のＰＨＣＴＬが、最小分解能のパルス幅を持つパルス信号Ｓ［ｎ］と、その２倍のパルス幅を持つパルス信号Ｓ［ｎ，ｎ＋１］を対象として、各パルス信号毎にセットアップマージン／ホールドマージンを定めていたのに対して、ＰＨＣＴＬ’は、詳細は後述するが、Ｓ［ｎ，ｎ＋１］のみを対象としている。更に、例えばパターンデータｐａｔ［０］に対応するパルス信号がＳ［０，１］であるのに対して、変更用のパターンデータｃｐａｔ［０］に対応するパルス信号がＳ［１，２］といったように、パターンデータとパルス信号の対応関係（位相関係）も異なっている。
【００８８】
そこで、位相調整回路ＰＨＣＴＬ’では、図５等の位相調整回路ＰＨＣＴＬと比較して、使用するクロック信号の数（Ｃ［０］，Ｃ［４］の２個）は同じであるが、フリップフリップ回路の追加や、フリップフロップ回路に割り当てるクロック信号の一部変更等が行われている。これによって、セットアップマージン／ホールドマージンとして、共に最小分解能（例えば１．０ｎｓ）以上が確保されている。このように、位相調整回路は、対象とするパルス信号の位相やパルス幅等に応じて、構成を適宜変更することが可能である。
【００８９】
パルス選択回路部（アンド演算回路部）ＰＳＥＬ３は、８個のアンド演算回路ＡＤ１１［ｎ］（ｎは０〜７の整数）を備える。ＡＤ１１［ｎ］は、パターンデータＰ［ｎ］とパルス信号Ｓ［ｎ，ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）とのアンド演算を行う。言い換えれば、ＰＳＥＬ３は、Ｓ［ｎ，ｎ＋１］をＰ［ｎ］に基づいて選択的に出力する。例えば、ＡＤ１１［０］は、Ｐ［０］とＳ［０，１］とのアンド演算を行うことで、Ｓ［０，１］をＰ［０］に基づいて選択的に出力する。
【００９０】
パルス選択回路部（アンド演算回路部）ＰＳＥＬ４は、８個のアンド演算回路ＡＤ１２［ｎ］（ｎは０〜７の整数）を備える。ＡＤ１２［ｎ］は、変更用のパターンデータＰＣ［ｎ，ｎ＋１］（（ｎ＋１）≧８の場合に（ｎ＋１）は８の剰余）とパルス信号Ｓ［ｎ＋１，ｎ＋２］（（ｎ＋２）≧８の場合に（ｎ＋２）は８の剰余）とのアンド演算を行う。言い換えれば、ＰＳＥＬ４は、Ｓ［ｎ＋１，ｎ＋２］をＰＣ［ｎ，ｎ＋１］に基づいて選択的に出力する。例えば、ＡＤ１２［０］は、ＰＣ［０，１］とＳ［１，２］とのアンド演算を行うことで、Ｓ［１，２］をＰＣ［０，１］に基づいて選択的に出力する。
【００９１】
パルス幅変更回路ＰＣＬは、８個のアンド演算回路ＡＤ１３［ｎ］（ｎは０〜７の整数）を備える。ＡＤ１３［ｎ］は、アンド演算回路ＡＤ１１［ｎ］の出力信号と、アンド演算回路ＡＤ１２［ｎ］の反転出力信号とのアンド演算を行い、出力パルス信号Ｓｏ［ｎ］を出力する。例えば、ＡＤ１３［０］は、ＡＤ１１［０］の出力信号と、ＡＤ１２［０］の反転出力信号とのアンド演算を行い、Ｓｏ［０］を出力する。オア演算回路ＯＲ２は、Ｓｏ［０］〜Ｓｏ［７］のオア演算を行うことで、ＰＷＭ信号ＰＷＭＯＵＴを生成する。
【００９２】
このような構成例において、パルス選択回路部（アンド演算回路部）ＰＳＥＬ３は、パターンデータＰ［ｎ］に基づいて、例えば図５のＰＳＥＬ１と異なり、最小分解能の２倍（例えば２．０ｎｓ）のパルス幅を持つパルス信号Ｓ［ｎ，ｎ＋１］を選択的に出力する。ここで、実施の形態５の場合と同様に、Ｓ［ｎ，ｎ＋１］は、元々半周期が重複している（既に補間の関係となっている）ため、図５の場合のように補間を行う回路を別途設ける必要は無い。更に、隣接するＳ［ｎ，ｎ＋１］同士は最小分解能の大きさの位相差を持つため、Ｐ［ｎ］（ＰＷＭパターンデータｎｘｐａｔ［ｎ］）に基づいてＰＷＭ信号ＰＷＭＯＵＴのパルス幅を最小分解能で変動させることは可能である。しかしながら、この際には、パルス幅が常に１．０ｎｓだけ余分に拡大され、また、設定可能なパルス幅の最小値も、最小分解能の２倍（例えば２．０ｎｓ）になってしまう。
【００９３】
そこで、パルス選択回路部（アンド演算回路部）ＰＳＥＬ４とパルス幅変更回路ＰＣＬを設けることで、このパルス幅の余分な拡大分（例えば１．０ｎｓ）を削り、また、パルス幅の最小値が最小分解能（例えば１．０ｎｓ）に設定できるようにする。図１５は、図１４のＰＷＭ出力生成部の一部における主要な動作例を示す波形図である。図１５の例では、クロックサイクルＴ＝Ｔ０において、ＰＷＭパターンデータｎｘｐａｔ（［０］［１］［２］…）として「１１０…」が入力され、クロックサイクルＴ＝Ｔ１において、パターンデータｐａｔ（［０］［１］［２］…）が「１１０…」となっている。このｐａｔ（［０］［１］［２］…）の「１１０…」に応じて、パルス選択回路部（アンド演算回路部）ＰＳＥＬ３内のアンド演算回路ＡＤ１１［０］，ＡＤ１１［１］は、それぞれパルス信号Ｓ［０，１］，Ｓ［１，２］を出力する。
【００９４】
一方、クロックサイクルＴ＝Ｔ０におけるＰＷＭパターンデータｎｘｐａｔ（［０］［１］［２］…）の「１１０…」に応じて、クロックサイクルＴ＝Ｔ１では、変更用のパターンデータｃｐａｔ（［０］［１］［２］…）として「０１０…」が出力される。これに応じて、パルス選択回路部（アンド演算回路部）ＰＳＥＬ４内のアンド演算回路ＡＤ１２［０］は‘０’レベルを出力し、ＡＤ１２［１］はパルス信号Ｓ［２，３］を出力する。その結果、パルス幅変更回路ＰＣＬ内のアンド演算回路ＡＤ１３［０］は、出力パルス信号Ｓｏ［０］としてパルス信号Ｓ［０，１］を出力する。一方、ＰＣＬ内のＡＤ１３［１］は、Ｓ［１，２］と、Ｓ［２，３］の反転信号とのアンド演算を行うため、図１５に示すように、Ｓ［１，２］における後半（例えば１．０ｎｓ分）のパルスを削った上で最小分解能（例えば１．０ｎｓ）のパルス幅を持つ出力パルス信号Ｓｏ［１］を生成する。
【００９５】
このように、パルス幅変更回路ＰＣＬは、パルス選択回路部（アンド演算回路部）ＰＳＥＬ３から選択的に出力されるパルス信号Ｓ［ｎ，ｎ＋１］を受け、その中の所定のＳ［ｕ，ｕ＋１］を対象に、位相が当該パルス幅の半分だけ異なるＳ［ｕ＋１，ｕ＋２］による論理演算を行うことでＳ［ｕ，ｕ＋１］のパルス幅を半分に削減する機能を持つ。そして、ＰＳＥＬ３から選択的に出力されるパルス信号Ｓ［ｎ，ｎ＋１］の中から対象としたＳ［ｕ，ｕ＋１］を除くパルス信号と、パルス幅が削減されたＳ［ｕ，ｕ＋１］とをオア演算回路ＯＲ２に向けて出力する。
【００９６】
これにより、ＰＷＭパターンデータｎｘｐａｔ［ｎ］に応じてＰＷＭ信号ＰＷＭＯＵＴが立ち下がる際（すなわちｎｘｐａｔ［ｎ］における隣接する２ビットの値が“１０”となる際）に、図１５に示したように、パルス幅の余分な拡大分（例えば１．０ｎｓ）を削ることが可能になる。また、図１５から判るように、仮に、ＰＷＭパターンデータｎｘｐａｔ（［０］［１］［２］…）として「０１０…」が入力されれば、ＰＷＭＯＵＴとして出力パルス信号Ｓｏ［１］のみが出力されるため、パルス幅の最小値を最小分解能（例えば１．０ｎｓ）に設定することが可能になる。
【００９７】
このようなＰＷＭ出力生成部ＰＷＭＧ３を用いることで、図５等のＰＷＭ出力生成部ＰＷＭＧ１の場合と同様に、最小分解能のパルス幅を持つＰＷＭ信号ＰＷＭＯＵＴを生成できると共に、当該パルス幅を最小分解能の刻みで設定することが可能になる。そして、この際には、図５等の場合と同様に、例えば最先端の半導体製造プロセスを用いずとも高分解能化（例えば１．０ｎｓ）が図れ、また、位相調整回路ＰＨＣＴＬ’や補間の仕組みによってタイミング設計の容易化等が図れる。
【００９８】
さらに、図１４の構成例では、図５や図１３の構成例と比較して、最小分解能（例えば１．０ｎｓ）のパルス幅を持つパルス信号（すなわちパルス信号Ｓ［ｎ］）を用いずに、最小分解能の２倍（例えば２．０ｎｓ）のパルス幅を持つパルス信号（すなわちパルス信号Ｓ［ｎ，ｎ＋１］）のみを用いて当該最小分解能による設定を実現することが可能になる。これにより、使用するパルス信号の数が少なくなり、当該パルス信号のパルス幅も広くなるため、更なるタイミング設計の容易化等が図れる。また、Ｓ［ｎ］が不要となる分、ＰＷＭ信号生成装置において回路面積の低減が図れる場合がある。
【００９９】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１００】
例えば、図１では、本実施の形態によるＰＷＭ信号生成装置をスイッチング電源装置の制御用として適用する例を示したが、その他にも、例えばモータ装置の制御用や、ＬＥＤ装置の調光制御用など、ＰＷＭ信号を使用する製品全般に対して広く適用可能である。また、ＰＷＭ信号への適用に限らず、場合によっては、パラレル・シリアル変換を高精度に行う技術として応用することも可能である。
【０１０１】
また、ここでは、‘Ｈ’パルスのＰＷＭ信号を生成する例を示したが、勿論、‘Ｌ’パルスのＰＷＭ信号を生成する場合にも同様に適用可能である。この場合、例えば、各実施の形態で示した論理演算回路（アンド演算回路やオア演算回路）の種類や極性を適宜変更すればよい。さらに、ここでは、ＰＷＭパターンデータｎｘｐａｔ［ｎ：０］のビット数や分周回路ＮＤＩＶの分周数「Ｎ」として８の例を示した。ただし、勿論、この値に限定されるものではなく、原理的には２以上の値であればよく、代表的には、２，４，８，１６，…といった２のべき乗の値となる。
【符号の説明】
【０１０２】
ＡＢＵＳ  アナログバス
ＡＣＭＰ  アナログ電圧比較ユニット
ＡＤ  アンド演算回路
ＡＤＣ  アナログ・ディジタル変換ユニット
Ｃ  クロック信号
ＣＬＫｍ  マスタクロック信号
ＣＭＰ  比較回路部
ＣＰＣ  チップ制御ユニット
ＣＰＧ  クロック・パルス信号生成部
ＣＰＵ  中央演算処理ユニット
ＣＴ  カウンタの値
ＣＴＨ，ＣＴＨ’  カウンタの設定値
ＣＵＮＴ  カウンタ部
ＤＡＣ  ディジタル・アナログ変換ユニット
ＤＢＧ  デバッグユニット
ＤＢＵＳ  ディジタルバス
ＤＥＣ  デコーダ回路
ＤＭＡＣ  ダイレクトメモリアクセス制御ユニット
ＤＳＰ  ディジタルシグナルプロセッサユニット
ＥＶＮＴ  イベント設定値
ＦＦ  フリップフロップ回路
ＧＰＩＯ  インタフェースユニット
ＩＮＴＣ  割り込み制御回路
ＬＶＤ  電圧低下検出回路
ＭＣＵ  半導体装置（マイクロコントローラ）
ＭＥＭＵ  メモリユニット
ＭＴ  マッチ信号
ＮＤＩＶ  分周回路
ＯＰＡＭＰ  オペアンプユニット
ＯＲ  オア演算回路
ＯＳＣ  発振回路
ＰＣＬ  パルス幅変更回路
ＰＤＧ  パターンデータ生成回路
ＰＧＥＮ  パルス信号生成回路
ＰＨＣＴＬ，ＰＨＣＴＬ’  位相調整回路
ＰＯＲ  パワーオンリセット回路
ＰＳＥＬ  パルス選択回路部（アンド演算回路部）
ＰＷＭＧ  ＰＷＭ出力生成部
ＰＷＭＯＵＴ  ＰＷＭ信号
ＰＷＭＰＴＧ  ＰＷＭ出力パターン生成部
ＰＷＭＵ  ＰＷＭ信号生成ユニット（ＰＷＭ信号生成装置）
ＲＥＧ  レジスタ部
Ｓ  パルス信号
ＳＣＵ  シリアル通信ユニット
ＳＥＬ  選択回路
ＳＥ  選択信号
ＳＹＳＣ  システム制御ユニット
ＴＪＳＥＮ  温度センサユニット
ＴＭＲ  タイマユニット
ＶＲＥＦ  基準電圧生成ユニット
ＷＤＴ  ウォッチドッグタイマ
ｃｐａｔ，ｐａｔ，ｐａｔＡ，ｈｐａｔ，Ｐ，ＰＨ，ＰＣ  パターンデータ
ｎｘｐａｔ  ＰＷＭパターンデータ
【図１】
2014075720.tif 000003
【図２】
2014075720.tif 000004
【図３】
2014075720.tif 000005
【図４】
2014075720.tif 000006
【図５】
2014075720.tif 000007
【図６】
2014075720.tif 000008
【図７】
2014075720.tif 000009
【図８】
2014075720.tif 000010
【図９】
2014075720.tif 000011
【図１０】
2014075720.tif 000012
【図１１】
2014075720.tif 000013
【図１２】
2014075720.tif 000014
【図１３】
2014075720.tif 000015
【図１４】
2014075720.tif 000016
【図１５】
2014075720.tif 000017
【図１６】
2014075720.tif 000018