"スイッチモード電源のためのコントローラであって、前記コントローラは、電源の入力電圧のゼロ交差条件が存在する時間の長さを表すゼロ交差信号を生成するよう結合されたゼロ交差検出器と、フィードバック信号および基準信号を受信するよう結合されたフィードバック基準回路とを含み、前記フィードバック信号は電源の出力を表し、コントローラは、ゼロ交差条件が存在する時間の長さに応じて基準信号を調整するよう適合されており、前記コントローラはさらに、電源の出力を調整するために、フィードバック基準回路の出力に応じて電源に含まれるスイッチの切換を制御するよう結合された駆動信号発生器を含む、コントローラ。ゼロ交差検出器は、入力電圧を表す電圧検知信号とゼロ交差基準との比較に応じて、ゼロ交差信号を生成する、請求項1に記載のコントローラ。ゼロ交差信号は、電源の入力電圧の大きさがゼロ交差電圧しきい値未満である場合にゼロ交差条件が存在することを示す、請求項1に記載のコントローラ。ゼロ交差検出器は、電流検知信号とゼロ交差基準との比較に応じてゼロ交差信号を生成し、電流検知信号はスイッチを通って流れるスイッチ電流を表す、請求項1に記載のコントローラ。入力電圧は調光器出力電圧であり、前記コントローラはさらに、ゼロ交差信号に応じて調光器出力電圧の位相角を表す位相カウントを生成するよう結合されたカウンタと、位相カウントに応じて基準信号を生成するよう結合されたデジタル-アナログコンバータDACとを含む、請求項1に記載のコントローラ。DACは、複数の電流源と、複数のスイッチとを含み、各スイッチは、それぞれの電流源に結合され、位相カウントのそれぞれの2進数に応じて基準電流信号に電流を供給するようそれぞれの電流源を結合するよう構成されており、基準信号は基準電流信号を表す、請求項5に記載のコントローラ。複数の電流源はバイナリ重み付けされた電流源である、請求項6に記載のコントローラ。位相カウントがオフセット量よりも少ない場合に、オフセットブロックの出力が0となるように、非ゼロオフセット量を与えるようDACに結合されたオフセットブロックをさらに含む、請求項5に記載のコントローラ。システムクロックを供給するようカウンタに結合されたライン同期発振器をさらに含み、システムクロックは、入力電圧の周波数とは無関係に入力電圧のハーフラインサイクル毎に一定のサイクルカウントを有する、請求項5に記載のコントローラ。ライン同期発振器は、ゼロ交差信号に応じてクロック信号の周波数を調整する、請求項9に記載のコントローラ。コントローラおよびスイッチが集積回路に含まれる、請求項1に記載のコントローラ。スイッチモード電源であって、スイッチと、スイッチに結合され、調光器出力電圧を受信するよう結合されたエネルギ転送要素と、調光器出力電圧に応じて電源の出力を調整するようスイッチに結合されたコントローラとを含み、前記コントローラは、調光器出力電圧のゼロ交差条件が存在する時間の長さを表すゼロ交差信号を生成するよう結合されたゼロ交差検出器と、フィードバック信号および基準信号を受信するよう結合されたフィードバック基準回路とを含み、フィードバック信号は電源の出力を表し、コントローラは、ゼロ交差条件が存在する時間の長さに応じて基準信号を調整するよう適合され、前記コントローラはさらに、電源の出力を調整するために、フィードバック基準回路の出力に応じてスイッチの切換を制御するよう結合された駆動信号発生器を含む、スイッチモード電源。位相角を有する調光器出力電圧を供給するようエネルギ転送要素に結合された調光器回路をさらに含む、請求項12に記載の電源。調光器回路はトライアック調光器回路である、請求項13に記載の電源。電源の出力は発光ダイオードのアレイを含む負荷に結合されることとなる、請求項12に記載の電源。ゼロ交差検出器は、調光器出力電圧を表す電圧検知信号とゼロ交差基準との比較に応じてゼロ交差信号を生成する、請求項12に記載の電源。ゼロ交差信号は、調光器出力電圧の大きさがゼロ交差電圧しきい値未満である場合、ゼロ交差条件が存在することを示す、請求項12に記載の電源。コントローラはさらに、ゼロ交差信号に応じて調光器出力電圧の位相角を表す位相カウントを生成するよう結合されたカウンタと、位相カウントに応じて基準信号を生成するよう結合されたデジタル-アナログコンバータDACとを含む、請求項12に記載の電源。システムクロックを与えるようカウンタに結合されたライン同期発振器をさらに含み、システムクロックは、入力電圧の周波数とは無関係に入力電圧のハーフラインサイクル毎に一定のサイクルカウントを有する、請求項18に記載の電源。ライン同期発振器はゼロ交差信号に応じてクロック信号の周波数を調整する、請求項19に記載の電源。DACは、複数の電流源と、複数のスイッチとを含み、各スイッチは、それぞれの電流源に結合されており、位相カウントのそれぞれの2進数に応じて基準電流信号に電流を供給するようそれぞれの電流源を結合するよう構成されており、基準信号は基準電流信号を表している、請求項18に記載の電源。複数の電流源は、バイナリ重み付けされた電流源である、請求項21に記載の電源。コントローラはさらに、位相カウントがオフセット量未満である場合に、オフセットブロックの出力が0になるように非ゼロオフセット量を与えるようDACに結合されたオフセットブロックを含む、請求項21に記載の電源。コントローラおよびスイッチが集積回路に含まれる、請求項12に記載の電源。位相角調光は、変更されたac入力電圧を直接受取る白熱ランプで十分に作用するが、典型的には発光ダイオードLEDランプの場合には問題を引き起こす。LEDランプでは、調整された電流および電圧をac電力線から供給するのに調整電源が必要とされる。従来の調整電源コントローラは、典型的には、トライアック調光器回路による一部のac入力電圧の除去に対しては所望のとおりには反応しない。調整電源は、典型的には、ac入力電圧の歪みを無視するよう設計されている。これらの目的は、低入力電圧によってそれら調整電源が完全に遮断されるまで、一定の調整された出力を送達することである。従来の調整電源ではLEDランプが調光されない可能性があった。LEDランプ用の電源が、所望の態様でトライアック調光器回路からの電圧を認識し、これに応答するよう特別に設計されていない限り、トライアック調光器は、LEDランプの点滅、高位相角でのLEDランプの閃光およびLEDランプの色ずれなどの許容できない結果をもたらす可能性がある。このため、電源が備え得る改善された従来の電源コントローラは、要求される調光量を決定するために、調光器回路出力の平均値換言すると、トライアック調光器回路がac入力電圧の一部を除去した後のac入力電圧の平均値を直接検知することにより、トライアック調光器回路に応答するよう設計されている。一般に、調光器回路出力が有するより小さな平均値は、ac入力電圧のうち除去された大部分と、このため、より大きな位相角とに相当することとなる。改善された従来の電源コントローラはこの関係を利用して、間接的に位相角を決定し、電源出力の調整量を変更する。しかしながら、このようにして間接的に位相角を測定することにより、検出された調光量これにより、電源出力の調整量が、ac入力電圧の変動の影響を受ける。換言すると、調光器回路出力の平均値を介して測定された位相角の精度は、ac入力電圧の変動に依存している。本発明のいくつかの実施例の上記および他の局面、特徴および利点が添付の図面と関連して提示される以下のより特定的な説明からより明らかになるであろう。詳細な説明図面のいくつかの図全体を通して、対応の参照番号は対応の構成要素を示す。当業者は、図中の要素が簡潔さおよび明瞭さのために図示されており、必ずしも縮尺通りには描かれていないことを認めるであろう。たとえば、図中の要素のうちいくつかの寸法は、本発明のさまざまな実施例の理解を向上させるのを助けるために他の要素に対して誇張されているかもしれない。また、商業的に見込みのある実施例において有用であるかまたは必要となり、一般的であるが十分に理解される要素は、本発明のこれらのさまざまな実施例の図ができるだけ遮られないようにするために、しばしば示されていない。調光回路の位相角測定のためのコントローラおよび電源についての実施例を本明細書中に記載する。以下の説明では、実施例を完全に理解できるようにするために、数多くの具体的な詳細を述べる。しかしながら、具体的な詳細のうち1つ以上がなくても、または他の方法、構成要素、材料などを用いて、本発明中に記載の技術を実践可能であることが当業者には明らかであろう。他の例では、いくつかの局面を曖昧にすることを回避するため、周知の構造、材料または動作を詳細に示したり説明したりしていない。この明細書を通じて、一実施例、ある実施例、一例、またはある例に対する参照は、実施例または例と関連して説明される特定的な特徴、構造、または特性が本発明の少なくとも一実施例に含まれることを意味する。したがって、一実施例では、ある実施例では、一例、またはある例という、この明細書を通じてさまざまな場所に現われる文言は、必ずしも同じ実施例または例をすべて指しているわけではない。さらに、特定的な特徴、構造、または特性は、1つ以上の実施例または例において任意の好適な組合せおよび/または副次的組合せで組合されてもよい。さらに、ここで与えられる図は当業者への説明を目的としたものであり、図面は必ずしも縮尺通りに描かれているわけではないことが認められる。位相調光に用いられる場合、発光ダイオードLEDの場合も含めて、位相調光器回路は、典型的には、ハーフラインサイクルごとにac入力電圧の一部を除去して、LEDに供給される電圧および電流の量を制限する。上述のように、典型的には、位相角は、各ハーフラインサイクルのうち何度分を調光器回路が除去するかについての基準となる。たとえば、ac入力電圧のハーフラインサイクルは合計180度であってもよい。このため、ハーフラインサイクルのうち調光器回路によって除去される半分のac入力電圧は、90度の位相角に相当する。別の例においては、ハーフラインサイクルのうち除去される4分の1のac入力電圧が、45度の位相角に相当し得る。本発明の実施例については、位相角は、より正確に測定を行なうために、ac入力電圧のゼロ交差によって直接測定される。ゼロ交差は、概して、ac入力電圧がいつゼロ電圧と交差するかを示すものである。換言すると、ゼロ交差は、ac入力電圧の大きさがいつ正から負へ、または負から正に変化するかを示す。しかしながら、ゼロ交差は、概して、信号がいつ実質的にゼロ電圧付近になるかを示すものでもあり得る。調光器回路の出力のゼロ交差の持続時間換言すると、調光器回路がac入力電圧の一部を除去した後のac入力電圧を決定することにより、施される調光の量に加えて、調光器回路が利用中であることが電源コントローラに信号で伝えられるだろう。本発明の実施例においては、出力調光器回路のゼロ交差の持続時間を決定することにより、位相角が直接測定されることとなる。このため、測定された位相角および検出される調光量は、ac入力電圧の変動にさほど影響されないだろう。まず図1を参照すると、例示的なスイッチング電源100の機能的ブロック図が図示される。これは、ac入力電圧VAC102、調光器回路104、調光器出力電圧VDO106、整流器108、整流された電圧VRECT110、1次巻線114および2次巻線116を備えたエネルギ転送要素T1112、スイッチSP118、入力帰線120、クランプ回路122、フィルタコンデンサCF124、整流器D1126、出力コンデンサC1128、出力量UO、出力電圧VO、出力電流IO、フィードバック回路132、フィードバック信号UFB134、コントローラ136、駆動信号138、電流検知入力信号140、電圧検知入力信号142およびスイッチ電流ID144を含む。同様に図1には、スイッチング電源100の出力に結合された負荷130も図示される。図1に図示される例示的なスイッチング電源100は、一般的に、本発明の教示から利するであろうスイッチング電源トポロジの一例であるフライバックレギュレータとして構成される。しかしながら、スイッチング電源レギュレータの他の公知のトポロジおよび構成も本発明の教示から利するであろうことが認められる。スイッチング電源100は未調整入力電圧から負荷130に出力電力を与える。一実施例では、入力電圧はac入力電圧VAC102である。別の実施例では、入力電圧は、整流された電圧VRECT110などの整流されたac入力電圧である。図示のとおり、調光器回路104はac入力電圧VAC102を受け、調光器出力電圧VDO106を生成する。一実施例においては、調光器回路104はトライアック位相調光器などの位相調光回路であってもよい。調光器回路104はさらに整流器108に結合し、整流器108が調光器出力電圧VDO106を受ける。整流器108は整流された電圧VRECT110を出力する。一実施例においては、整流器108はブリッジ整流器であってもよい。整流器108はさらにエネルギ転送要素T1112に結合している。本発明のいくつかの実施例においては、エネルギ転送要素T1112は結合されたインダクタであり得る。他の実施例においては、エネルギ転送要素T1112は変圧器であり得る。図1の例では、エネルギ転送要素T1112は2つの巻線、すなわち1次巻線114と2次巻線116とを含む。しかしながら、エネルギ転送要素T1112は3つ以上の巻線を有してもよいことが認められるべきである。1次巻線114はスイッチSP118にさらに結合され、これがさらに入力帰線120に結合される。一実施例においては、スイッチS1118は、金属酸化物半導体電界効果トランジスタMOSFETなどのトランジスタであり得る。別の例においては、コントローラ136は、モノリシック集積回路として実現されてもよく、または離散的な電気的構成要素もしくは離散的および集積された構成要素の組合せによって実現されてもよい。コントローラ136およびスイッチSP118はハイブリッドまたはモノリシック集積回路のいずれかとして製造される集積回路146の一部を形成し得る。さらに、図1の実施例のクランプ回路122は、エネルギ転送要素T1112の1次巻線114の両端に結合されるように図示される。フィルタコンデンサCF124は1次巻線114およびスイッチSP118の両端に結合し得る。換言すると、フィルタコンデンサCF124は整流器108および入力帰線120に結合し得る。エネルギ転送要素T1112の2次巻線116は整流器D1126に結合される。図1の例では、整流器D1126はダイオードとして例示される。しかしながら、いくつかの実施例では、整流器D1126は、同期整流器として用いられるトランジスタであってもよい。出力コンデンサC1128および負荷130の両者とも図1では整流器D1126に結合されるものとして示される。出力が負荷130に与えられ、調整された出力電圧VO、調整された出力電流IO、またはこの2つの組合せのいずれかとして与えられ得る。一実施例においては、負荷130は発光ダイオードLEDアレイであり得る。スイッチモード電源100はさらに、出力量UOとして例示される出力を調整するための回路を含む。概して、出力量UOは、出力電圧VO、出力電流IO、またはこれら2つの組合せのいずれかである。フィードバック回路132はスイッチモード電源100の出力からの出力量UOを検知するために結合され、フィードバック信号UFB134を生成する。他の実施例においては、フィードバック信号UFBが、出力量UOを表す変圧器の入力側の1つ以上の量を検知することによって得られてもよい。フィードバック回路132は、コントローラ136がフィードバック信号UFB134を受信するように、コントローラ136の端子にさらに結合される。コントローラ136は、電流検知入力信号140を受信するための端子をさらに含む。電流検知入力信号140は、スイッチSP118のスイッチ電流ID144を表わす。さらに、スイッチSP118はコントローラ136から駆動信号138を受信する。加えて、コントローラ136はまた、電圧検知入力信号142を受信するための端子を含み得る。図1の例においては、電圧検知入力信号142は、整流された電圧VRECT110を表している。しかしながら、他の実施例においては、電圧検知信号142が調光器出力電圧VDO106を表す可能性もある。動作時に、図1のスイッチング電源100は、ac入力電圧VAC102などの未調整入力から負荷130に出力電力を与える。調光器回路104は、スイッチング電源100の負荷130がLEDアレイである場合に利用され、電源に送達される電力の量を制限し得る。その結果、LEDアレイの負荷に送達される電流が制限され、LEDアレイが調光する。上述のとおり、調光器回路104はトライアック調光器回路などの位相調光器回路であってもよい。調光器回路104は、ac入力電圧VAC102がゼロ電圧と交差する際に、ac入力電圧VAC102を切り離す。所与の時間量の後、調光器回路104は、電源100にac入力電圧VAC102を再接続する。換言すると、調光器回路104は、ac入力電圧VAC102の位相を中断してもよい。求められる調光の量に応じて、調光器回路104は、ac入力電圧VAC102が電源から切り離される時間の量を制御する。概して、求められる調光がより多いと、調光器回路104がac入力電圧VAC102を切り離す期間がより長くなる。さらに以下に説明するように、位相角は、調光回路104がac入力電圧VAC102を切り離している期間を測定することによって決定されてもよい。調光器回路104は、整流器108が受取った調光器出力電圧VDO106を生成する。整流器108は整流された電圧VRECT110を生成する。フィルタコンデンサCF124はスイッチSP118からの高周波電流をフィルタリングする。他の適用例については、フィルタコンデンサCF124は、実質的にdc電圧がエネルギ転送要素T1112に印加されるように十分に大きいものであってもよい。しかしながら、力率改善PFCを有する電源については、小さなフィルタコンデンサCF124を利用して、エネルギ転送要素T1112に印加される電圧が実質的に整流された電圧VRECT110に従うことを可能にし得る。そのため、フィルタコンデンサCF124の値は、フィルタコンデンサCF124の電圧がac入力電圧VAC102の各ハーフラインサイクルの間に実質的に0に達するように選択され得る。または、換言すると、フィルタコンデンサCF124の電圧は、調光器出力電圧VDO106の正の大きさに実質的に従う。そのため、コントローラ136は、フィルタコンデンサCF124上の電圧換言すると、整流された電圧VRECT110を検知することにより、調光器回路104が電源100からac入力電圧VAC102をいつ切り離すかを検出し得る。別の実施例においては、コントローラ136が、スイッチ電流ID144を検知することにより、調光器回路104が電源100からac入力電圧VAC102をいつ切り離すかを検出し得る。スイッチング電源100はエネルギ転送要素T1112を利用して1次巻線114と2次巻線116との間で電圧を転送する。クランプ回路122は1次巻線114に結合されて、スイッチSP118の最大電圧を制限する。スイッチSP118は駆動信号138に応答して開閉される。閉じられたスイッチは電流を導通し得、オンとみなされる一方で、開いたスイッチは電流を導通することができず、オフとみなされることが一般的に理解される。いくつかの実施例では、スイッチSP118はトランジスタであり得、スイッチSP118およびコントローラ136は集積回路146の一部を形成し得る。動作において、スイッチSP118のスイッチングは、整流器D1126において脈動電流を発生させる。整流器D1126の電流は出力コンデンサC1128によってフィルタリングされ、負荷130において、実質的に一定の出力電圧VO、出力電流IO、またはその2つの組合せを発生させる。フィードバック回路132は、電源100の出力量UOを検知して、コントローラ136にフィードバック信号UFB134を与える。フィードバック信号UFB134は電圧信号または電流信号であってもよく、出力量UOに関する情報をコントローラ136に与える。さらに、コントローラ136は、スイッチSP118におけるスイッチ電流ID144を中継する電流検知入力信号140を受ける。スイッチ電流ID144は、たとえば、離散的な抵抗器の両端の電圧、またはトランジスタが導通しているときのトランジスタの両端の電圧など、さまざまな態様で検知され得る。加えて、コントローラ136は、整流された電圧VRECT110の値を中継する電圧検知入力信号142を受信し得る。整流された電圧VRECT110は、たとえば抵抗分割器などによってさまざまな方法で検知され得る。コントローラ136は、電流検知入力信号140によって与えられるスイッチ電流ID144、または電圧検知入力信号142によって与えられる整流された電圧VRECT110、またはこれら2つの組合せを利用することによって位相角を決定し得る。たとえば、コントローラ136は、調光器回路104が電源100からac入力電圧VAC102を切り離している時間の長さを測定する。換言すると、コントローラ136は、調光器出力電圧VDO106および整流された電圧VRECT110がゼロ電圧に実質的に等しくなっている時間の長さを測定する。位相角を測定するために、コントローラ136は、調光器出力電圧VDO106および整流された電圧VRECT110がゼロ電圧と実質的に等しくなっている時間の長さを、ハーフラインサイクルの時間の長さで割る。さらに以下に説明するように、コントローラ136は、整流された電圧VRECT110がいつしきい電圧VTH未満となるかを決定することにより、調光器出力電圧VDO106および整流された電圧VRECT110がいつ実質的にゼロ電圧に等くなるかを決定する。加えて、コントローラ136は、カウンタを利用して、整流された電圧VRECT110がしきい電圧VTH未満である時間の長さを測定してもよい。コントローラ136は駆動信号140を出力し、さまざまなシステム入力に応答してスイッチSP118を動作させ、出力量UOを所望の値に実質的に調整する。一実施例では、駆動信号138は、論理ハイの区間および論理ローの区間の長さが異なる矩形パルス波形であり得る。論理ハイの値は閉じたスイッチに対応し、論理ローは開いたスイッチに対応する。別の実施例においては、駆動信号が、実質的に固定長の論理ハイまたはONパルスから構成されてもよく、発振器サイクルの数ごとにONパルスの数を変更することによって調整されてもよい。次いで図2Aを参照すると、スイッチング電源100の整流された電圧VRECT110の例示的な波形の図が示されており、これは、ハーフラインサイクルTHL202、しきい電圧VTH204、ピーク電圧VP206および区間210を含む。図2Bは、区間210および対応するゼロ交差信号212を示す。コントローラは、ゼロ交差信号212を利用して、位相角を測定し、その後、電源の出力の調整量を変更する。一般的に、ac入力電圧VAC102は正弦波形であり、ac入力電圧VAC102の周期はフルラインサイクルと称される。数学的には、VAC=VPsin2πfLtである。VP206がac入力電圧VAC102のピーク電圧であり、fLがライン入力電圧の周波数である。または、換言すると、fLはac入力電圧VAC102の周波数である。フルラインサイクルはライン周波数fLの逆数であるか、または数学的にはフルラインサイクル=1/fLであることが認められるべきである。さらに、ハーフラインサイクルTHL202はライン周波数の2倍の逆数であるか、または数学的には、である。整流された電圧VRECT110は、整流器108および調光回路104の合成出力である。図2Aの例については、整流された電圧VRECT110の各ハーフラインサイクルTHL202の始まりは、調光器回路104が電源からac入力電圧VAC102をいつ切り離すかに対応しており、実質的にゼロ電圧に等しくなっている。調光器回路104がac入力電圧VAC102を再度電源に接続すると、整流された電圧VRECT110が実質的にac入力電圧VAC102の正の大きさに従う。または数学的には、VRECT=|VDO|となる。いくつかの実施例については、しきい電圧VTH204は実質的に0に等しくなる。他の実施例については、しきい電圧VTH204は、実質的に、整流された電圧VRECT110のピーク電圧VP206の5分の1となる。一例においては、整流された電圧VRECT110のピーク電圧VP206が実質的に125Vと等しければ、しきい電圧VTH204は実質的に25Vと等しくなる。別の実施例においては、しきい電圧VTH204は、実質的に、整流された電圧VRECT110のピーク電圧VP206の4分の1となる。しきい電圧VTH204の値がゼロ電圧に近ければ近いほど、整流された電圧VRECT110が実質的にゼロに等しいということをゼロ交差信号212がより正確に示すことが認識されるはずである。しかしながら、整流された電圧VRECT110の値がゼロ電圧に近ければ近いほど、コントローラ136の実施例が、整流された電圧VRECT110の値を検知することがより難しくなる可能性がある。特に、コントローラ136は、整流された電圧VRECT110がゼロ電圧であるかまたはゼロ電圧付近である場合に、電流検知信号140によって供給されるスイッチ電流ID144を介して、整流された電圧VRECT110の値を検知するのが幾分困難になる可能性がある。このため、コントローラ136の実施例は、整流された電圧VRECT110の値がゼロ電圧であるかまたはゼロ電圧付近である場合に、ゼロ電圧条件の検知を可能にするよう非ゼロしきい電圧VTH204を有していてもよい。加えて、整流された電圧VRECT110は、1つにはフィルタコンデンサCF124の選択された値のせいで、0に達しないかもしれない。図2Bは、整流された電圧VRECT110および対応するゼロ交差信号212の区間210を示す。本発明の実施例は、ゼロ交差信号212を利用して、電源100についての位相角と、さらには調光量とを決定する。整流された電圧VRECT110がしきい電圧VTH204未満である場合、ゼロ交差信号212は、整流された電圧VRECT110がしきい電圧VTH204未満であることを示す状態にある。ゼロ交差信号212は、論理ハイの区間および論理ローの区間を有する矩形パルス波形をなしている。図2Bに示される例については、整流された電圧VRECT110がしきい電圧VTH204未満である場合、ゼロ交差信号212の値は論理ハイとなる。整流された電圧VRECT110がしきい電圧VTH204よりも大きい場合、ゼロ交差信号212の値は論理ローとなる。上述のとおり、調光器回路104がac入力電圧VAC102を再度電源100に接続すると、整流された電圧VRECT110はac入力電圧VAC102の正の大きさに従う。このため、整流された電圧VRECT110がいつゼロ電圧付近になるかを決定することは、ac入力電圧VAC102がいつ0電圧と交差するかを検出することに相当し、このため、ゼロ交差と称される。しかしながら、調光器回路104がac入力電圧VAC102を電源から切り離すので、整流された電圧VRECT110の後続部分は実質的に0に等しくなる。そのため、ゼロ交差信号212は、整流された電圧VRECT110がしきい電圧VTH204未満であることを示す状態となる。図2Bに示される例については、ゼロ交差信号212は論理ハイ値になるだろう。位相角は、各ハーフラインサイクルTHL202のうちac入力電圧VAC102から何度分を調光器回路が除去するかについての基準となる。したがって、整流された電圧VRECT110がしきい電圧VTH204未満であるすなわち、この例においては論理ハイであることを示す状態にゼロ交差信号212がある時間の長さを測定することによって、コントローラ136は位相角を測定し得る。図2Bについては、ゼロ交差信号が論理ハイ値である時間の長さはTZ218で表され、この明細書中では、ゼロ交差パルス幅TZ218と称される。本発明の実施例に従うと、度で表された位相角は、ゼロ交差パルス幅TZ218をハーフラインサイクルTHL202で割ることによって計算され得る。または、数学的には、となる。上述のとおり、典型的な調光システムは、調光器回路がac入力電圧の一部を除去した後、ac入力電圧の平均値を測定することにより調光量を決定する。調光器回路出力のうちより小さな平均値はより広い位相角に相当するだろう。そのため、典型的なコントローラはこの関係を利用して、位相角を間接的に決定し、かつ電源の出力調整量を変更する。しかしながら、このように間接的に位相角を測定することによって、検出された調光量および、これにより電源の出力調整量は、ac入力電圧の変動に影響されることとなる。換言すると、調光器回路出力の平均値を介して測定された位相角の精度は、ac入力電圧の変動に依存することとなる。ゼロ交差パルス幅TZ218の長さをカウントし、それをハーフラインサイクルTHL202と比較することにより、コントローラ136は、調光器回路104の位相角を計算し、ac入力電圧VAC102の形状やac入力電圧VAC102の変動とは無関係に必要な調光量を決定し得る。このため、コントローラ136は位相角および調光量をより正確に決定することができ、測定された位相角は、ac入力電圧の変動にさほど影響されないだろう。求められる調光量は、調光器回路104が電源からac入力電圧VAC102を切り離している時間の長さに相当する。調光器回路104が、求められる調光量に関する情報を調光器回路104に供給する入力図示せずをも含むことが認識されるべきである。調光器回路104がac入力電圧VAC102を電源から切り離している期間が長ければ長いほど、整流された電圧VRECT110はより長期間にわたって実質的にゼロ電圧と等しくなる。結果として、ゼロ交差パルス幅TZ218の長さは、調光器回路104および対応する位相角によって与えられる調光量に相当する。さらに以下に説明するように、コントローラ136は、カウンタを用いてゼロ交差パルス幅TZ218の長さを決定する。カウンタは、ゼロ交差信号212が図2Bにおいて開始時間tSTART214で示される論理ハイ値にパルスすると、カウントし始める。カウンタは、ゼロ交差信号212が図2Bにおいて停止時間tSTOP216で示される論理ロー値にパルスすると、カウントを停止する。カウンタから出力される停止時間tSTOP216でのカウントは、ゼロ交差パルス幅TZ218の長さの測定の一例である。本発明の一実施例においては、カウンタがハーフラインサイクルTHL202の長さにわたってカウントを続けてもよく、コントローラが位相角を決定してもよい。本発明の別の実施例においては、コントローラ136は、ハーフラインサイクルTHL202についての固定されたカウントを利用する。たとえば、コントローラ136は、ハーフラインサイクルTHL202から320のカウントについての総カウントを固定してもよい。ハーフラインサイクルTHL202についての総カウントが固定されると、起こり得る位相の角度が各々、ゼロ交差パルス幅TZ218の特定のカウントに固定されることとなる。ハーフラインサイクルTHL202当たりの総カウントは、1カウント当たりの百分率誤差が容認できる許容レベルに収まるように選択され得る。ハーフラインサイクルTHL202当たりの総カウントが大きければ大きいほど、1カウント当たりの百分率誤差、または数学的には、がより小さくなる。この場合、Mは、ハーフラインサイクルTHL202についての総カウントである。ハーフラインサイクルTHL202についての総カウントが100に等しければ、1カウント当たりの百分率誤差は1になるだろう。ハーフラインサイクルTHL202についての総カウントが320カウントと等しければ、1カウント当たりの百分率誤差が0.31になるだろう。以下にさらに説明するように、図4および図5は、コントローラ136が如何に位相角を決定し、決定された位相角を用いて調光を容易にするかを示している。次いで図3Aを参照すると、ハーフラインサイクルTHL302、しきい電圧VTH304、ピーク電圧VP306および区間311を含む、整流された電圧VRECT310の別の例示的な波形が示される。図3Bは、整流された電圧VRECT310および対応するゼロ交差信号312の区間311を示す。ハーフラインサイクルTHL302、しきい電圧VTH304およびピーク電圧VP306は、図2Aおよび図2Bにおいて示されるハーフラインサイクルTHL202、しきい電圧VTH204およびピーク電圧VP206のさらなる例であり得る。整流された電圧VRECT310の例示的な波形は、図2Aに示される整流された電圧VRECT110に類似している。図2Aの例においては、整流された電圧VRECT110は、トライアック調光器などの調光器回路104がすべてのハーフラインサイクルTHL202の開始時にac入力電圧VAC102を切り離した結果、得られるものである。しかしながら、図3Aおよび図3Bに示される整流された電圧VRECT310は、調光器回路104がすべてのハーフラインサイクルTHL302の終わりにac入力電圧VAC102を切り離した結果、得られるものである。この結果、整流された電圧VRECT310は、ハーフラインサイクルTHL302の終わりにはゼロ電圧と実質的に等しくなる。ハーフラインサイクルTHL302の開始時に、整流された電圧VRECT310は、調光器回路104が電源100からac入力電圧VAC102を切り離すまで、実質的にac入力電圧VAC102の正の大きさに従う。整流された電圧VRECT310の値は、次いで、次のハーフラインサイクルの開始まで実質的にゼロ電圧にまで低下する。図3Bは、整流された電圧VRECT310および対応するゼロ交差信号312の区間311を示す。本発明の実施例は、ゼロ交差信号312を利用して、電源100についての位相角と、さらには調光量とを決定する。整流された電圧VRECT310がしきい電圧VTH304未満である場合、ゼロ交差信号312はゼロ交差条件が存在することを示している。図3Bの例については、整流された電圧VRECT310がしきい電圧VTH304未満である場合、ゼロ交差信号312の値は論理ハイ値とされる。整流された電圧VRECT310がしきい電圧VTH304よりも大きい場合、ゼロ交差信号312の値は論理ロー値とされる。上述のとおり、ゼロ交差信号312が、ゼロ交差条件が存在することを示している論理ハイ値である時間の長さは、ゼロ交差パルス幅TZ318と称される。ゼロ交差パルス幅TZ318の長さは、調光器回路104によって示される調光量および位相角を測定するのに利用される。本発明の実施例に従うと、位相角は、ゼロ交差パルス幅TZ318をハーフラインサイクルTHL302と比較することによって計算され得る。または数学的には、以下のとおりである。ゼロ交差パルス幅TZ318の長さをカウントし、ゼロ交差パルス幅TZ318をハーフラインサイクルTHL302の長さと比較することにより、コントローラ136は、調光器回路104の位相角を計算し、ac入力電圧VAC102の形状やac入力電圧VAC102の変動とは無関係に、必要とされる調光量を決定し得る。コントローラ136はカウンタを用いて、ゼロ交差パルス幅TZ318の長さを決定し得る。カウンタは、ゼロ交差信号312が図3Bにおいて開始時間tSTART314で示される論理ハイ値にパルスすると、カウントを始める。カウンタは、ゼロ交差信号312が図3Bにおいて停止時間tSTOP316で示される論理ロー値にパルスすると、カウントを停止する。カウンタから出力される停止時間tSTOP316でのカウントは、ゼロ交差パルス幅TZ318の測定の一例である。本発明の一実施例においては、カウンタがハーフラインサイクルTHL302の長さにわたってカウントを続けてもよく、コントローラは、位相角を決定するために、ゼロ交差パルス幅TZ318のカウントをハーフラインサイクルTHL302のカウントと比較してもよい。本発明の別の実施例においては、コントローラ136は、ハーフラインサイクルTHL302について固定されたカウントを利用する。たとえば、コントローラ136は、ハーフラインサイクルTHL302から320のカウントについての総カウントを固定し得る。ハーフラインサイクルTHL302についての総カウントが固定されると、起こり得る位相の角度は各々、ゼロ交差パルス幅TZ318の特定のカウントに固定されることとなる。ハーフラインサイクルTHL302当たりの総カウントは、1カウント当たりの百分率誤差が容認できる許容レベルに収まるように選択され得る。ハーフラインサイクルTHL302当たりの総カウントが大きければ大きいほど、1カウント当たりの百分率誤差、または数学的には、がより小さくなる。この場合、Mは、ハーフラインサイクルTHL302についての総カウントである。ハーフラインサイクルTHL302についての総カウントが100に等しければ、1カウント当たりの百分率誤差は1になるだろう。ハーフラインサイクルTHL302についての総カウントが320カウントと等しければ、1カウント当たりの百分率誤差が0.31になるだろう。以下にさらに説明するように、図4および図5は、コントローラ136が如何に位相角を決定し、決定された位相角を用いて調光を容易にするかを示している。図4をさらに参照すると、コントローラ136の機能ブロック図が示される。ここでは、フィードバック信号UFB134、駆動信号138、電流検知入力信号140、電圧検知入力信号142、ゼロ交差検出器402、発振器404、システムクロック信号405、カウンタ406、オプションのオフセットブロック407、デジタル-アナログコンバータD/Aコンバータ408、増幅器410、ゼロ交差信号412、駆動論理ブロック414すなわち駆動信号発生器、ゼロ交差基準416、および基準電圧418が含まれる。ゼロ交差信号412は、図2Bおよび図3Bに示されるゼロ交差信号の一例である。図4は、如何にコントローラ136が位相角を測定し、この位相角を利用して基準電圧418を変更することにより電源100の出力の調光を容易にするかを例示している。フィードバック信号UFB134、駆動信号138、電流検知入力信号140および電圧検知入力信号142は、上述のとおり結合および機能する。コントローラ136はさらに、電流検知入力信号140およびゼロ交差基準416に結合しこれらを受信するゼロ交差検出器402を含む。ゼロ交差検出器402はまた、電圧検知入力信号142を受信し得る。ゼロ交差基準416はしきい電圧VTH204および304として説明されるしきい電圧VTHを表わし、ゼロ交差検出器402はゼロ交差信号412を出力する。上述のとおり、ゼロ交差信号412は、いつゼロ交差条件が存在するか、または換言すると、整流された電圧VRECT110がいつしきい電圧VTHを下回るかを示す。ゼロ交差信号412は、論理ハイ区間および論理ロー区間の長さが変化する矩形パルス波形である。ゼロ交差信号412の連続した立上がりエッジ間の長さはハーフラインサイクルTHLと実質的に等しい。加えて、論理ハイ区間の時間の長さは、ゼロ交差パルス幅TZと実質的に等しい。一実施例においては、ゼロ交差検出器402が、整流された電圧VRECT110に関する情報を電圧検知信号142から得、ゼロ交差検出器402が、電圧検知信号142およびゼロ交差基準416を利用してゼロ交差信号を生成する。別の実施例においては、ゼロ交差検出器402が、電流検知信号140によって与えられるスイッチ電流ID144から、整流された電圧VRECT110に関する情報を受取る。また、ゼロ交差検出器402は、電流検知信号140およびゼロ交差基準416を利用してゼロ交差信号を生成する。さらなる実施例においては、ゼロ交差検出器402が、整流された電圧VRECT110に関する情報を電圧検知信号142および電流検知信号140の両方から受取って、電流検知信号140、電圧検知信号142およびゼロ交差基準416を利用してゼロ交差信号を生成する。スイッチSP118がONである場合のスイッチSP118の電圧と電流との関係は、と表すこともでき、この場合、LPは、1次巻線114のインダクタンスである。不連続導通モードDCM:discontinuousconductionmodeで動作する電源については、いずれのスイッチングサイクル中のこの関係も、と表すことができ、この場合、IPEAKはスイッチ電流ID144のピーク値であり、tONがスイッチSP118のオン時間となる。しかしながら、一スイッチングサイクルにおいては、オン時間tONがハーフラインサイクルTHLに比べて小さいので、VACの値が定数とみなされる可能性がある。図1に示される例については、であり、こうして、ゼロ交差検出器402は、スイッチ電流ID144から整流された電圧VRECT110の値を決定し得る。コントローラ136は、スイッチSP118がDCMにおいてONである場合にスイッチSP118の電圧と電流との関係を利用して、しきい電圧VTH204および304に対応させるようゼロ交差電流しきい値IZCおよびゼロ交差時間しきい値tZCを固定し得る。または数学的には以下のとおりである。ゼロ交差検出器402は、スイッチ電流ID144のピーク値がいつゼロ交差電流しきい値IZC未満となるかを判定することによって、整流された電圧VRECT110がしきい電圧VTH204および304未満であると判断し得る。一実施例については、ゼロ交差基準416の一例としてゼロ交差電流しきい値IZCが挙げられる。ゼロ交差検出器402はカウンタ406に結合し、カウンタ406はゼロ交差信号412を受信する。加えて、カウンタ406は発振器404に結合し、発振器404からシステムクロック信号405を受信する。一実施例においては、発振器404はライン同期発振器であり、その一例を、図7を参照して以下により詳細に説明する。一実施例においては、システムクロック信号405は、論理ハイ区間および論理ロー区間の長さが異なっている矩形パルス波形である。連続した立上がりエッジ間の時間の長さは、発振器周期TOSCと実質的に等しい。発振器周波数fOSCはハーフライン周波数fHLの倍数となるよう選択され得るか、または数学的には、fOSC=MfHL,M>1となる。この場合、Mは正の整数である。換言すると、ハーフラインサイクルTHLTHL=1/fHLは発振器周期の倍数、TOSCTOSC=1/fOSC、または数学的には、となる。上述のとおり、Mの値はまた、ハーフラインサイクルTHL当たりの総カウントを指している。本発明の一実施例の場合、Mの値は320である。一実施例においては、発振器404はさらに、ゼロ交差検出器402に結合し、ゼロ交差信号412を受信する。さらに以下に説明するように、発振器404はゼロ交差信号412を利用して、ハーフラインサイクルTHL、または換言すると、ハーフライン周波数fHL、を決定し得る。発振器404がライン同期発振器である場合、発振器404はMの値が実質的に一定になるように発振器周波数fOSCを調整し得る。カウンタ406は、発振器404から受信したシステムクロック信号405に応じて増分するバイナリカウンタである。換言すると、カウンタ406は、発振器404のサイクル毎に増分するバイナリカウンタである。カウンタ406は、ゼロ交差信号412図2Bおよび図3Bに関しては、開始時間tSTART214および314として示される立上がりエッジからカウントを始める、カウンタ406は、ゼロ交差パルス幅TZの長さにわたってカウントし続ける。一実施例においては、カウンタ406は、次いで、ゼロ交差信号の図2Bおよび図3Bに関しては、停止時間tSTOP216および316として示される次の立下がりエッジでカウントを停止する。次いで、カウンタ406の内部カウントが、ビットB1からBNとしてオフセットブロック407に出力される。この明細書中では、ビットB1からBNを位相カウントと称する。一例においては、B1は最下位ビットLSB:leastsignificantbitであり、BNは最上位ビットMSB:mostsignificantbitである。一実施例においては、カウンタ406は、ゼロ交差信号412の立下がりエッジで0にリセットされる。別の実施例においては、カウンタ406はゼロ交差信号412の立上がりエッジからカウントを始め、ゼロ交差パルス幅TZの長さにわたってカウントし続ける。次の立下がりエッジにおいて、カウンタ406は、内部カウントを、この明細書中では位相カウントと称されるビットB1からBNとして、オフセットブロック407に転送する。しかしながら、カウンタ406は、ゼロ交差信号412の次の立上がりエッジまでその内部カウントをリセットしない。一実施例においては、カウンタ406は、非同期カウンタまたは同期カウンタを形成するよう配置された複数のフリップフロップである。本発明の実施例に従うと、カウンタ406から出力された位相カウントB1からBNは位相角を表している。具体的には、カウンタ406から出力された位相カウントB1からBNは、ハーフラインサイクルTHL毎の総カウントが固定されている場合の位相角を表している。または、換言すると、カウンタ406から出力された位相カウントB1からBNは、である場合の位相角を表している。ここで、Mは実質的に一定である。一実施例においては、ハーフラインサイクルTHL毎の総カウントが320カウントに設定されている。または、換言すると、Mは320に等しい。一例においては、90度の位相角は、ハーフラインサイクルTHLの半分の間だけac入力電圧VAC102を切り離す調光器回路104に対応するものであるが、160の位相カウントまでカウントするカウンタ406に相当するものとなるだろう。別の例においては、45度の位相角は、ハーフラインサイクルTHLの4分の1の間だけac入力電圧VAC102を切り離す調光器回路104に対応するものであるが、80の位相カウントまでカウントするカウンタ406に相当するものとなるだろう。図6はカウンタ406の例示的なカウントを示す表600である。上述のとおり、カウンタ406は、ゼロ交差信号412が論理ハイ値である場合、システムクロック信号405のサイクル毎に増分する。0の内部カウント値に関して、ビットB1、B2およびB3は論理ロー値となる。1の内部カウント値に関して、ビットB1は論理ハイ値であり、ビットB2およびB3は論理ロー値のままである。値7の内部カウントに関して、ビットB1、B2およびB3は論理ハイ値である。表600は3ビットカウンタを示しているが、如何なるビットの数がカウンタ406に含まれてもよいことが認識されるはずである。再び図4を参照すると、カウンタ406は、オプションのオフセットブロック407に結合し、オフセットブロック407は位相カウントB1からBNを受信する。オフセットブロック407は、位相カウントB1からBNがオフセット量よりも少ない場合にコントローラ136が調光を検出せず、かつ基準電圧VREF418が同じ値のままとなるようにオフセット量を与える。位相カウントB1からBNがオフセット量よりも大きい場合、コントローラは調光を検出せず、基準電圧VREF418が位相カウントB1からBNが増加するのに応じて低減する。オフセットブロック407は位相カウントB1からBNを受信し、オフセット位相カウントBIT1からBITKを出力する。位相カウントB1からBNがオフセット量よりも少ない場合、オフセットブロック407は実質的に0に等しいバイナリ出力を出力する。または、換言すると、オフセット位相カウントBIT1からBITKは、実質的に0に等しい。位相カウントB1からBNがオフセット量よりも大きい場合、オフセットブロック407の出力は、位相カウントB1からBNから引かれたオフセット量のバイナリ値である。換言すると、オフセット位相カウントBIT1からBITKは、位相カウントB1からBNから引かれたオフセット量と実質的に等しい。本発明の一実施例においては、オフセット量は64であってもよい。上述のとおり、一実施例においては、コントローラ136は、ハーフラインサイクルTHLの総カウントを320M=320に等しくなるよう設定する。320を総カウントとして利用し、64のオフセット量を利用すると、コントローラ136は、36度未満の位相角位相角=64/320180度に対する調光を検出しない。64オフセット量プラス256が320に等しくなるので、一実施例においては、カウンタ406がバイナリカウンタである場合、320が総カウントとして選択されてもよい。一実施例においては、カウンタ406は、28=256であるので256および26=64であるので64までカウントし得る8ビットのバイナリカウンタを利用してもよい。オフセット量は、図2Bおよび図3Bにおいてはしきい電圧VTH204および304として示されるしきい電圧VTHが正の非ゼロ値である場合に発生するオフセットに部分的に相互に関連する。換言すると、ゼロ交差パルス幅TZ218はしきい電圧VTHの値のせいで長さが最小となり、このため、コントローラ136は、調光器回路104がゼロ交差パルス幅TZの最小長よりも長い時間の長さにわたってac入力電圧VAC102を切り離すまで、いずれの調光も検出しない。換言すると、オフセットブロック407におけるオフセット量は、部分的にゼロ交差パルス幅TZの最小長に相当する。オフセットが64である例においては、ゼロ交差パルス幅TZの最小長は、64までカウントするカウンタ406に相当する。加えて、オフセット量は、調光の誤検出につながる恐れのあるac入力電圧VAC102の如何なる突然の変動にも対応するよう選択され得る。オフセットブロック407はD/Aコンバータ408に結合し、D/Aコンバータ408はオフセット位相カウントBIT1からBITKを受信する。以下にさらに説明するように、D/Aコンバータ408は受信したオフセット位相カウントBIT1からBITKを基準電圧VREF418に変換する。一実施例においては、オフセット位相カウントBIT1からBITKが高ければ高いほど、基準電圧VREF418が低くなる。コントローラ136がオフセットブロック407を利用しない場合、D/Aコンバータ408は位相カウントB1からBNを基準電圧VREF418に変換する。本発明の一実施例においては、オフセットブロック407がカウンタ406に一体化されてもよい。本発明の別の実施例においては、オフセットブロック407はD/Aコンバータ407に一体化されてもよい。D/Aコンバータ408はさらに、増幅器410が基準電圧VREF418を受信するように、増幅器410とも称されるフィードバック基準回路に結合している。増幅器410はまた、フィードバック信号UFB134を受信する。フィードバック信号UFB134は、電源100の出力量UOに関する情報をコントローラに136を供給する。一実施例においては、基準電圧VREF418が増幅器410の反転入力で受信され、フィードバック信号UFB134が増幅器410の非反転入力で受信される。増幅器410すなわちフィードバック基準回路の出力はさらに、駆動論理ブロック414に結合している。駆動論理ブロックはまた、電流検知入力信号140に結合して、これを受信する。上述のとおり、電流検知入力信号140はスイッチ電流ID144を表している。増幅器410の出力および他のさまざまなパラメータを利用して、駆動論理ブロック414は駆動信号138を出力して、スイッチSP118を作動させて、出力量UOを所望の値になるよう調整する。一実施例においては、出力量UOの所望の値は、基準電圧VREF418によって部分的に決定される。そのため、コントローラ136はゼロ交差信号412を通じて位相角を測定し、その後、LED負荷の調光を容易にするよう基準電圧VREF418を変更する。さらに図5を参照すると、例示的なデジタル-アナログコンバータD/Aコンバータ408の機能ブロック図が示される。ここでは、基準電圧VREF418、電流源504、506、508および510、スイッチS1、S2、S3およびSK、抵抗器R1512、基準接地514、ならびに基準電流IREF516が含まれている。オフセットブロック407も、位相カウントB1からBNおよびオフセット位相カウントBIT1からBITKとともに図5に示される。D/Aコンバータ408はオフセットブロック407からオフセット位相カウントBIT1からBITKを受信する。一実施例においては、オフセットブロック407は、図4を参照して上に説明したとおり、オフセット量を提供する。カウンタ406によって与えられる位相カウントB1からBNが、オフセット量よりも少ない場合、コントローラ136は、調光器回路104が電源100の出力を調光しているとは判断しない。このため、オフセットブロック407の出力は、実質的に0に等しいバイナリ出力となる。または、換言すると、オフセットブロックから出力されたBIT1からBITKはすべて、論理ロー値である。しかしながら、位相カウントB1からBNがオフセットブロック407によって与えられるオフセット量よりも大きければ、コントローラ136は、電源100の出力を調光しなければならないと判断し、D/Aコンバータ408は、より高い位相カウントB1からBNがより小さな基準電圧VREF418に相当するように基準電圧VREF418を変更することとなる。しかしながら、位相カウントB1からBNがオフセットブロック407によって与えられるオフセット量よりも大きい場合、オフセットブロック407によって出力されたオフセット位相カウントBIT1からBITKは、位相カウントB1からBNから引かれたオフセット量のバイナリ値となる。オフセット位相カウントはビットBIT1からBITKとして図5に例示されている。一例においては、BIT1は最下位ビットLSBであり、BITKは最上位ビットMSBである。D/Aコンバータ408はさらに、基準電圧VREF418を供給するためのスイッチS1、S2、S3およびSKによって結合された電流源504、506、508および510を含む。D/Aコンバータ408がK個の電流源およびスイッチKは正の整数であるを含み得ることが認識されるべきである。図5に示される例においては、電流源504、506、508および510によって供給される電流の値は、それが関連付けられるオフセット位相カウントBIT1からBITKのビットに応じて重み付けされる。たとえば、BIT1は、スイッチS1が電流源504からI1Xの電流を供給することを可能にしたり不可能にしたりするよう結合されている。BIT2は、スイッチS2が電流源506からI2Xの電流を供給することを可能にしたり不可能にしたりするよう結合されている。BITKについては、スイッチSKが電流源510からIXの電流Xを供給することを可能にしたり不可能にしたりするよう結合されている。図5に図示のとおり、電流源506からの電流I2Xは、電流源504からの電流I1Xの値の2倍である。図5の例においては、電流源510からの電流IXは、電流源504からの電流I1Xの値よりも2^K倍大きい値である。一例においては、オフセットブロック407から出力されたビットBIT1からBITKのうちのいずれかについての論理ハイ値1は、開いた換言すると、使用不可能なスイッチに対応し、オフセットブロック407から出力されたビットBIT1からBITKのうちのいずれかについての論理ロー値0は、閉じた換言すると、使用可能なスイッチに対応するだろう。図示のとおり、電流源504、506、508および510は、電流が基準接地514に流れるように結合されている。加えて、抵抗R1512は、SKを介するスイッチS1と基準接地514との間で結合されている。電流源504、506、508または510から使用可能ないずれかの電流源によって与えられる電流を合計して、抵抗器R1512を介して基準電流IREF516を供給する。抵抗器R1512にわたる結果として得られる電圧降下は基準電圧VREF418となる。そのため、D/Aコンバータ408内のスイッチS1からSKがすべて使用可能になると、基準電圧VREF418がその最高値となる。または、換言すると、オフセットブロック407のオフセット位相カウントBIT1からBITKのバイナリ値が実質的に0に等しい場合、基準電圧VREF418がその最高値となる。図示されるD/Aコンバータの実施例にはデジタル入力をアナログ電圧出力に変換するためにバイナリ重み付けされた電流源が含まれているが、当業者であれば、開示された発明に従ってフィードバック情報を適切に変更するための基準値として使用するためにアナログ出力が適切な形式で提供された限りにおいては、開示されている特定のDAC構造の代わりに、デジタル入力を変動するアナログ出力に変換するための周知の構造および技術のいずれをも使用できたであろうことを認識するだろう。ここで図7を参照すると、例示的なライン同期発振器700の機能ブロック図が本発明の教示に従って示される。図示のとおり、ライン同期発振器700はクロック周波数発生器702、サイクルカウント計算器704、クロック周波数調整器705、システムクロック信号706、カウント信号710、周波数ハーフラインサイクル信号FHL708および周波数調整信号FADJ712を含む。ライン同期発振器700およびシステムクロック信号706が、それぞれ、図4に関連付けて示された発振器404およびシステムクロック信号405の一例であることが認識されるべきである。以下にさらに説明するように、本発明の実施例については、ライン同期発振器700は、ac入力電圧VAC102の周波数の変動に係らず、サイクルカウントNがac入力電圧VAC102のハーフラインサイクルTHL毎に実質的に一定になるようにシステムクロック信号706の周波数換言すると、周期を調整する。加えて、ライン同期発振器700は、さまざまなacライン周波数を有する領域におけるコントローラ136の使用を容易にする。たとえば、英国におけるac入力電圧VAC102の周波数は50ヘルツHZであり、米国におけるac入力電圧VAC102の周波数は60Hzである。コントローラ136は両方の国で利用可能である。というのも、ライン同期発振器700がac入力電圧VAC102の周波数にかかわらず実質的に一定のサイクルカウントNを与えるからである。動作時に、ライン同期発振器700が、周波数ハーフラインサイクル信号FHL708に応じてシステムクロック信号706を出力する。一実施例においては、ゼロ交差信号412が周波数ハーフラインサイクル信号FHL708として利用されてもよい。周波数ハーフラインサイクル信号FHL708は、ac入力電圧VAC102の周波数に関する情報をライン同期発振器700に与える。または、換言すると、周波数ハーフラインサイクル信号FHL708は、ハーフライン周波数fHLおよびハーフラインサイクルTHLTHL=1/fHLの長さに関する情報をライン同期発振器700に与える。動作時に、システムクロック信号706がac入力電圧VAC102のハーフラインサイクルTHL毎に一定のサイクルカウントNを有するよう同期される。これを実現するために、システムクロック信号706の周波数は、システムクロック信号706のサイクルカウントNがac入力電圧VAC102に同期されたままとなるように調整される。システムクロック信号706の周波数はまた、発振器周波数fOSCとも称され得る。サイクルカウントNが一定でない場合、ハーフライン周波数fHLの変動によってサイクルカウントNが変化することとなる。上述のとおり、発振器周波数fOSCはハーフライン周波数fHLの倍数であるか、または数学的には、fOSC=MfHL,M>1となる。この場合、Mは正の整数である。換言すると、ハーフラインサイクルTHLTHL=1/fHLは発振器周期の倍数、TOSCTOSC=1/fOSC、または数学的には、となる。一実施例においては、Mは実質的に所望のサイクルカウントNDESと等しい。周波数ハーフラインサイクル信号FHL708によって表わされるac入力電圧VAC102の周波数が低下するか、または換言すると、ハーフライン周波数fHLが低下した場合、システムクロック信号206の周波数換言すると発振器周波数fOSCが同じままであれば、サイクルカウントNがハーフラインサイクルTHLを越えて増大する可能性がある。同様に、ハーフライン周波数fHLが増大した場合、システムクロック信号206の周波数換言すると発振器周波数fOSCが同じままであれば、サイクルカウントNはハーフラインサイクルTHLよりも低下する可能性がある。一例においては、ライン同期発振器700の設計中に、所望のサイクルカウントNDESが、ac入力電圧VAC102のハーフラインサイクルTHL毎に200にまでプリセットされる可能性がある。ライン同期発振器700は、この例に従って、ac入力電圧VAC102のハーフラインサイクルTHLについてのサイクルカウントNが200になるように、システムクロック信号706の周波数換言すると発振器周波数fOSCを調整し得る。一実施例においては、所望のサイクルカウントNDESは320であってもよく、ライン同期発振器700は、ハーフラインサイクルTHLについてのサイクルカウントNが実質的に320に等しくなるようにシステムクロック信号706の周波数換言すると発振器周波数fOSCを調整し得る。上述のとおり、所望のサイクルカウントNDESとも称されるハーフラインサイクルTHL202毎の総カウントは、カウント毎の百分率誤差が容認できる許容レベルに収まるように選択され得る。ハーフラインサイクルTHL202毎の総カウントが大きければ大きいほど、カウント毎の百分率誤差が小さくなる。または数学的には、となる。一実施例においては、64オフセット量プラス256が320に等しくなるので、カウンタ406がバイナリカウンタである場合、320が所望のサイクルカウントNDESとして選択されてもよい。一実施例においては、カウンタ406は、28=256であるので256および26=64であるので64までカウントし得る8ビットのバイナリカウンタを利用してもよい。図示のとおり、サイクルカウント計算器704は周波数ハーフラインサイクル信号FHL708を受信し、ac入力電圧VAC102の周波数換言すると、周波数ハーフラインサイクル信号FHL708によって与えられるハーフライン周波数fHLに応じてシステムクロック信号706のサイクルの数を計算する。一例においては、サイクルカウント計算器704において以下の式を用いて、電流ハーフラインサイクル中のサイクルカウントを決定する。ここでは、Nは、ac入力電圧VAC102の現在のハーフライン周波数fHLについての計算されたサイクルカウントであり、Cは定数である。動作時に、カウント計算器704が、電流サイクルカウントNと所望のサイクルカウントNDESとの間の違いを表すカウント信号710をクロック周波数調整器706に出力する。たとえば、サイクルカウントNが240に等しく、所望のサイクルカウントNDESが200に等しい場合、カウント信号710は40の値を表す可能性がある。クロック周波数調整器705はサイクルカウント計算器704に結合し、カウント信号710を受信する。カウント信号710があれば、クロック周波数調整器705は、所望のサイクルカウントNDESを維持するのにシステムクロック702に必要な周波数の変化を決定することができる。動作時に、クロック周波数調整器705は、カウント信号710に応じて周波数調整信号FADJ712を出力する。たとえば、所望のサイクルカウントNDESが200に設定される場合、クロック周波数調整器706は、サイクルカウントNが実質的に所望のサイクルカウントNDESに等しくなるように、システムクロック信号706の周波数を増大または低減させるよう指示する周波数調整信号FADJ712を出力する。一例においては、クロック周波数調整器705が含み得るデジタル-アナログコンバータDACは、カウント信号710をデジタル値として受信し、出力周波数調整信号FADJ712をアナログ値として出力し得る。一例においては、周波数調整信号FADJ712は、カウント信号710に応じて決定された値を有する電流であってもよい。図示のとおり、クロック周波数発生器702はクロック周波数調整器705に結合して、周波数調整信号FADJ712を受信する。一例においては、クロック周波数発生器702は、可変周波数発振器、電流制御発振器、電圧制御発振器、デジタル制御発振器などであってもよい。動作時に、クロック周波数発生器702は、ハーフラインサイクルTHL毎に一定の所望のサイクルカウントNDESを維持するために、周波数の異なるシステムクロック信号706を出力する。このようにして、ライン同期発振器700は、システムクロック信号706が周波数ハーフラインサイクル信号FFL708を表すac入力電圧VAC102と同期することを可能にする。換言すると、ハーフラインサイクルTHL毎のシステムクロック信号706のサイクルカウントNは、上述のとおり、システムクロック信号706の周波数換言すると発振器周波数fOSCを調整することにより、一定の値に維持される。この明細書中に開示される本発明を、具体的な実施例、例およびその応用例を用いて説明してきたが、当業者であれば、特許請求の範囲に規定される本発明の範囲から逸脱することなく、多数の変更および変形を加えることができるだろう。"