(57)【要約】クロック信号（１１８）が論理回路内の入力部、中間ノード、出力部あるいはそれらの組合せなどのステージの所望の変化を生成しない場合に、論理回路へのクロック信号変化の通過を阻止することによってディジタル論理回路の電力消費を低減するための方法および回路（１１０）が説明されている。一例として、クロック信号を受け取っても所与のセットの論理入力が出力の変化状態をもたらさない場合、入ってくるクロックが阻止される。他の例として、入力信号が出力信号と整合しており、クロックの変化を受け取ってもラッチ出力に所望の状態変化が生成されない場合、入ってくるクロックがデータフリップ−フロップ（２２０）内で阻止される。本発明は、ゲート容量の非生産的な充電および放電の対象になることが少ない、より低電力の組合せ論理回路ステージおよび／または順序論理回路ステージの生成に利用することができる。
2006511986.tif 000002
【特許請求の範囲】
【請求項１】
クロックドディジタル論理回路の回路電力消費を低減するための装置であって、
前記クロックドディジタル論理回路へのクロック信号の通過を、前記クロックドディジタル論理回路から受け取るフィードバックの関数として阻止するように構成されたクロック経路制御回路を備えた装置。
【請求項２】
前記クロック経路制御回路は、前記クロック信号が前記クロックドディジタル論理回路の所望の状態変化をもたらす場合にのみ、前記クロックドディジタル論理回路にクロック信号を引き渡すように構成された、請求項１に記載の装置。
【請求項３】
前記クロック経路制御回路が、
前記クロック信号を、前記クロックドディジタル論理回路のクロック入力部が受け取る前に、選択的に阻止するように構成されたスイッチング回路と、
前記クロックドディジタル論理回路内で検出した状態に応答して、前記スイッチング回路の状態を調節するように構成された検出回路とを備えた、請求項１に記載の装置。
【請求項４】
前記検出回路が、前記クロック信号の受信に応答して、前記クロックドディジタル論理回路内に所望の状態変化が生じるか否かに応じて、前記状態を検出するように構成された、請求項３に記載の装置。
【請求項５】
前記クロック信号の阻止に応答して、所定の電圧状態に向けて前記クロック入力部を引っ張るように構成されたスイッチング回路をさらに備えた、請求項３に記載の装置。
【請求項６】
クロックド論理回路と共に使用して、回路電力消費を低減するための装置であって、
第１の論理回路と、
前記第１の論理回路を介してクロック信号を受け取る第２の論理回路と、
前記第２の論理回路への前記第１の論理回路内のクロック信号の通過を、前記第２の論理回路から受け取るフィードバックの関数として阻止するための手段と
を備えた装置。
【請求項７】
前記第１の論理回路を介してクロック信号の通過を阻止するための前記手段が、前記クロック信号を受け取ることによって前記第２の論理回路の所望の状態変化がもたらされるという、前記第２の論理回路内で検出された状態にのみ応答して、前記第１の論理回路を介して前記第２の論理回路に前記クロック信号を引き渡すように構成された、請求項６に記載の装置。
【請求項８】
クロック信号の通過を阻止するための前記手段が、前記第２の論理回路が前記クロック信号を受け取っても、前記第２の論理回路内の所望の状態変化を生成しない状態が前記第２の論理回路内に検出された場合に、前記第２の論理回路のクロック入力部に前記クロック信号を引き渡さないように構成された、請求項６に記載の装置。
【請求項９】
前記第２の論理回路が、組合せ論理回路または順序論理回路からなる、請求項６に記載の装置。
【請求項１０】
前記第２の論理回路が集積回路の回路内に実装された、請求項６に記載の装置。
【請求項１１】
クロック信号の通過を阻止するための前記手段が、
前記第２の論理回路による前記クロック信号の受信を選択的に阻止するように構成されたスイッチング回路と、
前記クロック信号を受け取っても前記第２の論理回路の状態に変化が生じない場合に、前記スイッチング回路を調節して、前記クロック信号を阻止するように構成された検出回路と
を備えた、請求項６に記載の装置。
【請求項１２】
クロックドディジタル論理回路の回路電力消費を低減するための装置であって、前記クロックドディジタル論理回路から受け取るフィードバックの関数としてクロック信号を前記クロックドディジタル論理回路のクロック入力部へ引き渡すように構成されたクロック経路制御回路を備えた装置。
【請求項１３】
前記クロック経路制御回路が、前記クロックドディジタル論理回路が前記クロック信号を受け取ることによって前記クロックドディジタル論理回路の所望の状態変化が生成されることになる場合にのみ、前記クロックドディジタル論理回路にクロック信号を引き渡すように構成された、請求項１２に記載の装置。
【請求項１４】
前記クロック経路制御回路が、
前記クロックドディジタル論理回路の前記クロック入力部に前記クロック信号を選択的に引き渡すように構成された第１のスイッチング回路と、
前記クロックドディジタル論理回路が前記クロック信号を受け取ることによって、前記クロックドディジタル論理回路内に所望の状態変化が生成されるかどうかを決定するための手段と
を備えた、請求項１２に記載の装置。
【請求項１５】
前記第１のスイッチング回路が、少なくとも１つの入力部を有する少なくとも１つの第１のトランジスタを備え、
前記入力部が前記決定手段に結合され、前記スイッチング回路の起動を制御するように構成された、請求項１４に記載の装置。
【請求項１６】
前記第１のスイッチング回路による前記クロック信号の阻止に応答して、前記クロックドディジタル論理回路の前記クロック入力部を所定の電圧状態に向けて引っ張るように構成された第２のスイッチング回路をさらに備えた、請求項１４に記載の装置。
【請求項１７】
前記第２のスイッチング回路が、前記クロックドディジタル論理回路の前記クロック入力部と所定の電圧との間に接続され、前記第１のスイッチング回路による前記クロック信号の阻止に応答して起動される少なくとも１つの第２のトランジスタを備えた、請求項１６に記載の装置。
【請求項１８】
決定するための前記手段が、前記第１のスイッチング回路の制御入力部と前記クロックドディジタル論理回路との間の少なくとも１つの電気接続を備え、
前記クロックドディジタル論理回路内で検出される状態に応答して前記スイッチング回路の起動が調節される、請求項１４に記載の装置。
【請求項１９】
決定するための前記手段が、前記クロックドディジタル論理回路内で検出した状態に応答して、前記スイッチング回路の状態を調節するように構成された検出回路を備えた、請求項１４に記載の装置。
【請求項２０】
前記検出回路が、前記クロックドディジタル論理回路の出力状態を決定するように構成された論理回路を備えた、請求項１４に記載の装置。
【請求項２１】
前記出力状態を前記クロックドディジタル論理回路の１つまたは複数の入力と比較するように構成された追加論理回路を前記検出回路内にさらに備えた、請求項２０に記載の装置。
【請求項２２】
相互接続された、クロック入力部で受け取るクロック信号の変化に応答して論理機能を実行するように構成された複数のスイッチング素子と、
前記クロックの変化によって相互接続された前記スイッチング素子内の状態が変化しないことが検出されたときに、相互接続された前記スイッチング素子を前記クロック信号変化の受信から分離するための手段とを備えたディジタル論理回路。
【請求項２３】
相互接続された前記スイッチング素子を分離するための前記手段が、
前記クロック信号を、相互接続された前記スイッチング素子の前記クロック入力部に選択的に引き渡すように構成されたクロックスイッチング回路と、
前記クロックスイッチング回路に結合された、前記クロックスイッチング回路の状態の選択的な引渡しを制御するための検出器とを備え、
前記検出器が、相互接続された前記スイッチング素子内の、前記クロック信号を受け取っても前記相互接続されたスイッチング素子の所望の状態変化が生じないという検出状態に応答して前記クロックスイッチング回路を高インピーダンスモードにセットするように構成された、請求項２２に記載のディジタル論理回路。
【請求項２４】
前記検出器が、前記ディジタル論理回路の１つまたは複数の中間状態もしくは出力状態を決定するように構成された論理回路を備えた、請求項２３に記載のディジタル論理回路。
【請求項２５】
前記中間状態または出力状態を前記クロックドディジタル論理回路の１つまたは複数の入力と比較するための追加論理回路を前記検出回路内にさらに備え、比較の結果によって前記クロックスイッチング回路の選択が行われる請求項２４に記載のディジタル論理回路。
【請求項２６】
前記検出器が、前記ディジタル論理回路内の所望の中間状態変化または出力状態変化の生成に必要な入力状態および中間状態が満たされると、前記クロック信号を前記相互接続されたスイッチング素子のクロック入力部に引き渡すように前記クロックスイッチング回路を起動するように構成された、請求項２３に記載のディジタル論理回路。
【請求項２７】
前記ディジタル論理回路内の所望の出力状態が生じているところの入力状態が満たされると、前記検出器が、前記クロック信号を前記相互接続されたスイッチング素子のクロック入力部に引き渡すように前記クロックスイッチング回路を起動するように構成された、請求項２３に記載のディジタル論理回路。
【請求項２８】
クロック信号の変化を受け取ることによって状態変化が起動されるディジタル論理回路であって、
相互接続された、クロック信号入力部で受け取るクロックの変化に応答して論理機能を実行するように構成された複数のスイッチング素子と、
相互接続された前記複数のスイッチング素子内で検出される回路状態に応答して、前記相互接続された複数のスイッチング素子による前記クロック信号変化の受信を阻止するように構成されたクロック経路制御回路とを備えたディジタル論理回路。
【請求項２９】
前記クロック経路制御回路が、前記相互接続された複数のスイッチング素子による前記クロック信号のレジストレーションを防止するように、前記クロック経路制御回路内の前記クロック信号と前記相互接続された複数のスイッチング素子の前記クロック信号入力との間に十分な大きさのインピーダンスを課すことによって前記クロックの変化を阻止するように構成された、請求項２８に記載のディジタル論理回路。
【請求項３０】
前記クロック経路制御回路が、前記クロック信号入力部による受信に先立って前記クロック信号が通過しなければならない低インピーダンス状態と、前記クロック信号入力部による前記クロック信号の受信が阻止される高インピーダンス状態とを有する少なくとも１つのスイッチング素子を使用して構成された、請求項２８に記載のディジタル論理回路。
【請求項３１】
相互接続された前記スイッチング素子のクロック信号入力部を、前記クロック信号が相互接続された前記スイッチング素子の前記クロック信号入力部から分離された状態の下で、所定の電圧状態に向けて選択的にバイアスするための手段をさらに備えた、請求項３０に記載のディジタル論理回路。
【請求項３２】
前記クロック信号入力部を選択的にバイアスするための前記手段が、前記クロック信号が相互接続された前記スイッチング素子の前記クロック信号入力部に引き渡されない場合に、前記クロック信号入力部を所定の電圧状態に向けて引っ張るように起動するように構成された少なくとも１つのトランジスタを備えた、請求項３１に記載のディジタル論理回路。
【請求項３３】
前記クロック経路制御回路が、前記相互接続されたスイッチング素子内の入力、出力および中間信号とノード状態との間に存在する関係に応答して回路状態を検出するように構成された、請求項２８に記載のディジタル論理回路。
【請求項３４】
相互接続された前記複数のスイッチング素子が動的論理回路を備え、クロックによって予備充電フェーズおよび評価フェーズが制御され、それにより相互接続された前記複数のスイッチング素子内の状態変化がトリガされる、請求項２８に記載のディジタル論理回路。
【請求項３５】
相互接続された前記複数のスイッチング素子内の前記予備充電フェーズおよび評価フェーズが、前記クロック信号に応答して動作する相補型回路によって制御され、それにより、予備充電の間、第１の回路から回路ノードが充電され、次に、受け取った前記クロック信号に応答して、前記評価フェーズの間、第２の回路を介して電荷が散逸もしくは保持される、請求項３４に記載のディジタル論理回路。
【請求項３６】
前記ディジタル論理回路が組合せ論理回路からなる、請求項２８に記載のディジタル論理回路。
【請求項３７】
前記組合せ論理回路の状態変化が、前記クロック入力部で受け取る前記クロック信号の変化に応答して生じる、請求項３６に記載のディジタル論理回路。
【請求項３８】
前記ディジタル論理回路が順序論理回路からなる、請求項２８に記載のディジタル論理回路。
【請求項３９】
前記順序論理回路が、前記クロック信号を前記順序論理回路の前記クロック入力部で受け取って、前記順序論理回路内の信号状態のラッチングを制御するように構成された、請求項３８に記載のディジタル論理回路。
【請求項４０】
前記順序論理回路が、前記クロック信号の受信に応答して順序ディジタル論理回路の順序論理機能を起動するように構成された、請求項３９に記載のディジタル論理回路。
【請求項４１】
前記相互接続されたスイッチング素子がトランジスタを備えた、請求項２８に記載のディジタル論理回路。
【請求項４２】
前記トランジスタが、集積回路内の１つまたは複数の所定のデバイスプロセスで製造された、請求項４１に記載のディジタル論理回路。
【請求項４３】
前記デバイスプロセスがＣＭＯＳ製造プロセスからなる、請求項４２に記載のディジタル論理回路。
【請求項４４】
クロック信号をクロック信号入力部で受け取って、ディジタル論理回路ステージ内の状態変化をトリガするように構成された前記ディジタル論理回路ステージの電力散逸を低減する方法であって、
（ａ）クロック信号を前記クロック信号入力部で受け取っても、前記ディジタル論理回路ステージ内の所定のセットの状態の下では前記ディジタル論理回路ステージ内の状態に変化が生じないことを決定するステップと、
（ｂ）前記ディジタル論理回路ステージ内の前記状態変化が生じない前記状態の少なくとも一部に応答して、前記クロック信号を前記ディジタル論理回路ステージの前記クロック信号入力部から分離するステップと
を含む方法。
【請求項４５】
前記クロック信号を分離する前記ステップが、
前記ディジタル論理回路ステージによる前記クロック信号入力部での前記クロック信号の受信を回避するように前記クロック信号を阻止するステップと、
信号の浮動を防止するように、前記ディジタル論理回路ステージの前記クロック信号入力部を所定の電圧状態に向けて引っ張るステップとを含む、請求項４４に記載の方法。
【請求項４６】
前記クロック信号を阻止する前記ステップが、前記クロック信号入力部への接続に先立って、前記クロック信号が通過しなければならないパストランジスタをゲートオフするステップを含む、請求項４５に記載の方法。
【請求項４７】
クロック信号入力部で受け取るクロック信号の変化に応答して、その状態変化がトリガされるディジタル論理回路ステージの電力散逸を低減する方法であって、
（ａ）前記ディジタル論理回路ステージ内の、クロックの変化を受け取ることによって回路動作が生じる状態を検出するステップと、
（ｂ）前記状態の検出に応答して、前記ディジタル論理回路ステージへの前記クロック変化の連絡を可能にするステップと
を含み、それにより前記クロックの変化に関連する総合ゲート容量ローディングが低減される方法。
【請求項４８】
クロック信号の変化を受け取ることによって中間状態または出力状態の変化をトリガするように構成された、改良されたディジタル論理回路であって、
クロック経路制御回路が検出した前記ディジタル論理回路内の信号状態が、前記クロック信号の変化を受け取っても前記ディジタル論理回路内に所望の状態変化が生じないことを示している場合、前記ディジタル論理回路によるクロック信号変化の受信を阻止するように構成されたクロック経路制御回路を含むディジタル論理回路。
【請求項４９】
前記クロック経路制御回路が、
クロックスイッチング素子と、
前記ディジタル論理回路が前記クロック信号の変化を受け取った場合に、前記ディジタル論理回路内に前記所望の状態変化が生じるかどうかの決定に応答して前記クロックスイッチング素子の導通状態を調節するための手段とを備えた、請求項４８に記載のディジタル論理回路。
【請求項５０】
前記クロック経路制御回路が集積回路内に実装された、請求項４８に記載のディジタル論理回路。
【請求項５１】
前記クロック経路制御回路が、前記ディジタル論理回路と共に集積回路内に実装された、請求項４８に記載のディジタル論理回路。
【請求項５２】
前記所望の状態変化が、出力状態変化、中間回路状態変化もしくはノード電圧変化からなる、請求項４８に記載のディジタル論理回路。
【請求項５３】
前記中間回路状態変化が、前記ディジタル論理回路の出力または入力に直接反映されない回路に生じる状態変化からなる、請求項５２に記載のディジタル論理回路。
【請求項５４】
前記ノード電圧変化が、前記クロックの変化に応答して予備充電中に生じるノード電圧変化からなる、請求項５２に記載のディジタル論理回路。
【請求項５５】
前記クロック経路制御回路が、クロック信号を受け取ることによって所望の状態変化がもたらされるかどうかを決定するように、前記ディジタル論理回路内の少なくとも１つの入力、中間状態もしくは出力状態を評価することによって信号状態を検出するように構成された、請求項４８に記載のディジタル論理回路。
【請求項５６】
前記クロック経路制御回路が、任意の組合せの出力状態、中間回路状態およびノード電圧状態を比較することによって信号状態を検出して、クロック信号を受け取ることにより所望の状態変化がもたらされるかどうかを決定するように構成された、請求項４８に記載のディジタル論理回路。
【請求項５７】
クロック入力による論理回路内の回路ノードの不要な容量性充電および放電を低減するように構成されたディジタル論理回路であって、
相互接続された、クロック信号の変化に応答して論理機能を実行するように構成された複数のスイッチング素子と、
真論理評価に応答して、相互接続された前記複数のスイッチング素子による前記クロック信号の受信を阻止するための手段とを備えたディジタル論理回路。
【請求項５８】
前記クロック信号を阻止するための手段が、
相互接続された前記スイッチング素子への前記クロック信号の通過を制御するためのクロックスイッチング回路と、
相互接続された前記複数のスイッチング素子内で検出される少なくとも１つの状態に応答して、相互接続された前記複数のスイッチング素子への前記クロック信号の通過を阻止するように前記クロックスイッチング回路の状態を調節するための手段とを備えた、請求項５７に記載のディジタル論理回路。
【請求項５９】
前記クロックスイッチング回路の状態を調節するための前記手段が、前記クロックスイッチング回路と、前記相互接続された複数のスイッチング素子内の選択された入力部、出力部または中間ノードとの間に少なくとも１つの電気接続を備えた、請求項５８に記載のディジタル論理回路。
【請求項６０】
前記クロックスイッチング回路の状態を調節するための前記手段が、相互接続された前記スイッチング素子内で検出される、ある組合せの入力状態、出力状態および中間ノード状態に応答して前記クロックスイッチング回路の状態を調節するように構成された検出器回路を備えた、請求項５８に記載のディジタル論理回路。
【請求項６１】
前記真論理評価が、前記クロック信号を受け取ることによって相互接続された前記複数のスイッチング素子のその時点における入力状態、中間状態および出力状態が、相互接続された前記複数のスイッチング素子の所望の状態変化をもたらすか否かかを決定する論理評価からなる、請求項５７に記載のディジタル論理回路。
【請求項６２】
相互接続された前記複数のスイッチング素子が組合せ論理機能を実施し、前記組合せ論理機能に対するその時点における組合せの入力状態では、前記クロック信号の変化を受け取っても前記組合せ論理機能の出力状態が変化しない場合、前記組合せ論理機能に対する前記クロック信号が阻止される、請求項５７に記載のディジタル論理回路。
【請求項６３】
相互接続された前記複数のスイッチング素子が順序論理機能を実施し、前記クロック信号を受け取っても、前記順序論理機能内のその時点における入力状態および中間状態では、前記順序論理機能の新しい出力状態に向かった前記順序論理機能の所望の状態進行に寄与しない場合、前記順序論理機能に対する前記クロック信号が阻止される、請求項５７に記載のディジタル論理回路。
【請求項６４】
前記順序論理機能がフリップ−フロップ回路からなり、前記フリップ−フロップの入力信号が前記フリップ−フロップの非相補ラッチ出力と異なる場合にのみ前記クロックが転送される、請求項６３に記載のディジタル論理回路。
【請求項６５】
少なくとも１つのデータ入力部からデータ信号を受け取る少なくとも１つのトランジスタと、
前記トランジスタの出力部に結合され、前記データ入力部に基づいてデータ出力部の状態変化をトリガするためのクロック信号をクロック入力部で受け取るように構成されたゲーティング回路と、
前記データ出力部の状態に応答して、前記ゲーティング回路への前記クロック信号の通過を選択的に阻止するように構成されたクロック阻止回路と
を備えた動的論理回路。
【請求項６６】
少なくとも２つのトランジスタが、対応するデータ入力部からデータ信号を受け取るように構成され、
前記ゲーティング回路が、前記クロック信号によってトリガされると、複数の前記データ入力部の多数の前記データ信号に関連する論理機能に従って前記データ出力部の状態を変化させるように構成された、請求項６５に記載の動的論理回路。
【請求項６７】
前記論理機能が、反転バッファ、非反転バッファ、ＡＮＤゲート、ＮＡＮＤゲート、ＯＲゲート、ＮＯＲゲート、ＸＯＲゲート、一致回路およびそれらの組合せからなる組合せ論理機能のグループから選択される、請求項６６に記載の動的論理回路。
【請求項６８】
前記クロック阻止回路が、さらに、前記データ出力部の状態と相俟った前記データ入力部の状態に応答して、前記ゲーティング回路への前記クロック信号の通過を選択的に阻止するように構成された、請求項６５に記載の動的論理回路。
【請求項６９】
前記ゲーティング回路の前段に、前記ゲーティング回路の前記クロック入力部での受信に先立って前記クロック信号の振幅を変更するように構成されたレベルシフタ回路をさらに備えた、請求項６５に記載の動的論理回路。
【請求項７０】
前記レベルシフタ回路が、前記クロック信号が通過する、前記ゲーティング回路が受信する前に前記クロック信号の振幅を小さくするだけの十分なインピーダンスにドライブされるトランジスタを備えた、請求項６９に記載の動的論理回路。
【請求項７１】
それぞれ関連するデータ入力部を介してデータ信号を受け取る、直列に配列されたＡＮＤ構成の複数のトランジスタと、
直列に配列された前記複数のトランジスタの両端に相補型トランジスタを有し、そして、クロック信号の変化を受け取ると、前記複数のトランジスタのＡＮＤ組合せに応答する出力信号を生成するように構成されたゲーティング回路と、
前記出力信号の状態に応答して、前記ゲーティング回路への前記クロック信号の通過を選択的に阻止するように構成されたクロック阻止回路と
を備えた動的組合せ論理回路。
【請求項７２】
前記ゲーティング回路からの前記出力信号に接続された反転バッファまたは非反転バッファをさらに備えた、請求項７１に記載の動的論理回路。
【請求項７３】
クロック入力部のクロック信号の変化によってトリガされると、データ入力部で受け取るデータ信号に応答する少なくとも１つのデータ出力部を有し、その前に受け取ったクロック入力の変化に応答した前記データ入力部の状態に応答してその前にセットされた論理状態を保持し、かつ、生成するように構成された双安定回路と、
前記双安定回路に結合され、そして、前記データ入力部の信号と前記データ出力部の信号との間の関係に応答して前記クロック信号の変化の受信を阻止するように構成されたクロック経路制御回路と
を備えた動的論理回路。
【請求項７４】
前記クロック経路制御回路が、前記データ入力部の信号と前記データ出力部の信号との間の等価関係に応答するように構成された、請求項７３に記載の動的論理回路。
【請求項７５】
前記クロック経路制御回路が、前記双安定回路の前記クロック入力部での前記クロック信号の受信を阻止するだけの十分な大きさのインピーダンスモードに移行するように構成された少なくとも１つの第１のトランジスタを備えた、請求項７３に記載の動的論理回路。
【請求項７６】
前記双安定回路の前記クロック入力部に接続された、前記クロック入力部を所望の論理状態に向けてバイアスするための少なくとも１つの第２のトランジスタをさらに備えた、請求項７５に記載の動的論理回路。
【請求項７７】
前記双安定回路の前記クロック入力部の前記バイアス化が、前記双安定回路によって生成される前記出力信号に応答して実施される、請求項７６に記載の動的論理回路。
【請求項７８】
前記クロック経路制御回路の前段に、前記クロック経路制御回路の前記クロック入力部での受信に先立って前記クロック信号の振幅を変更するためのレベルシフタ回路をさらに備えた、請求項７５に記載の動的論理回路。
【請求項７９】
前記レベルシフタ回路が、前記クロック信号が通過する、前記クロック経路制御回路の前記クロック入力部での受信に先立って前記クロック信号の振幅を小さくするだけの十分なインピーダンスにドライブされるトランジスタを備えた、請求項７８に記載の動的論理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にディジタル論理回路に関し、より詳細には、真論理演算が実施された後の回路内のみをクロック信号が伝搬する事象駆動論理を使用した電力消費の低減に関する。
【背景技術】
【０００２】
（関連出願の相互参照）
本出願は、参照により本明細書に組み込まれている２００２年９月３日出願の米国仮出願第６０／４０８，４０７号の優先権を主張するものである。
【０００３】
（連邦支援研究もしくは開発に関する供述）
適用なし
【０００４】
（コンパクトディスクによって提出されている資料の参照による組み入れ）
適用なし
【０００５】
従来の論理回路には、回路内の様々なレベルのゲーティングが受け取る、その回路内の状態の変化を同期させ、それにより乱調状態および他の同様の問題を除去するためのクロック信号がしばしば利用されている。その結果、個々の論理ブロックもしくはセクション内の多数のゲートにクロック信号が印加されている。クロック動作に続いて充電および放電サイクルが反復される個々のゲートには所定のゲート容量が存在しており、そのために、正味の回路動作をもたらしていない場合であっても、充電および放電の反復によって回路の電力消費が大きくなっている。また、クロック信号のローディングは実質的に増加しており、より電力の大きいクロック源および追加散逸を必要としている。
【０００６】
たとえば図１は、複数のデータ入力１２および１つのデータ出力１４を有するＣＭＯＳ静的論理中に実施された従来の４入力ＡＮＤゲート１０を示したものである。トランジスタ１６ｂ、１８ｂ、２０ｂおよび２２ｂをオフ状態に保持しつつ、トランジスタ１６ａ、１８ａ、２０ａおよび２２ａを介してノードＡの電圧をＶＳＳ（論理状態＝「ロー」）に放電させるためには、４つのすべての入力１２（ＩＮ１〜ＩＮ４）を「ハイ」に保持しなければならない。インバータ２４の入力部のノードＡをローにドライブすることにより、信号出力ＯＵＴ１４がＶＤＤ（論理状態＝「ハイ」）に変化する。ＣＭＯＳ静的論理は、極めて安定した論理と見なされており、従来の回路設計、とりわけ集積回路に広範囲に渡って使用されていることに留意されたい。この静的トポロジーの欠点の１つは、個々の入力信号がＰＭＯＳおよびＮＭＯＳの両方のトランジスタに対してゲートされるため、入力に大きなゲート負荷容量を負わせることになり、関連する充電が遅延することである。
【０００７】
ＣＭＯＳ静的論理の速度を改善するように、様々な種類の動的論理が提案されている。提案されているこれらの設計の目的は、ゲートローディングを最小化し、かつ、クロック信号に応答して回路の動作を制御することである。また、動的論理回路は、ディジタル論理セクションもしくはデバイス内の様々な論理ステージ間の信号状態の変化を同期化させる便利な手段を提供している。
【０００８】
図２は、一般に「ドミノ」論理と呼ばれている動的論理を使用して実施された従来の４入力ＡＮＤゲート３０を示したものである。入力３２（ＩＮ１〜ＩＮ４）は、それぞれトランジスタ３６、３８、４０および４２に接続されている。クロック信号ＣＬＫ４４は、相補型トランジスタ４６および４８に接続されている。出力インバータ５０は、キーパ回路５２と共に出力信号ＯＵＴ３４をドライブしている。ＣＬＫの立下りに応答して、ノードＡおよび出力信号ＯＵＴ３４がＶＤＤ（ハイ）レベルおよびＶＳＳ（ロー）レベルにそれぞれ予備充電される。予備充電の間、トランジスタ４８は非起動状態に保持されるため、ノードＡの予備充電が入力の状態によって影響されることはないことに留意されたい。
【０００９】
クロックがロー状態に保持されている間、図示の回路内で生じる「予備充電フェーズ」と呼ばれるクロックフェーズ中、予備充電が実施される。しかしながら、この予備充電クロックフェーズは、回路の実施態様に応じていずれの極性であっても良く、また、他の条件に依存していることを理解されたい。
【００１０】
回路素子５２は、ノードＡの電圧を維持する「キーパ」回路として実施されている。図に示す「キーパ」は、オン状態の抵抗がノードＡをドライブしている他のトランジスタより大きい小型トランジスタ５２を使用して実施されていることが好ましく、それによりその状態をオーバライドさせることができる。
【００１１】
クロック信号ＣＬＫ４４がハイ状態に変化すると、予備充電フェーズから評価フェーズに移行し、入力の状態が直ちにデータ出力３４に反映される。評価フェーズに移行する際に、すべての入力３２をハイに保持してこのＡＮＤ論理構成を満足する場合を考察すると、ノードＡがトランジスタ３６〜４２および４８を介してローに放電し、それにより出力信号ＯＵＴ３４がハイに切り換わる。評価フェーズに移行する際に、複数の入力３２のうちのいずれかがローに保持されている場合、ノードＡはハイ状態を保持し、出力信号ＯＵＴ３４はロー状態を保持することになる。
【００１２】
入力の各々が単一ＮＭＯＳトランジスタに対してゲートされると、それによってもたらされるゲート負荷容量は、図１に示す従来のＣＭＯＳ静的論理によって提供されるゲート負荷容量より小さい。電子の移動度は、通常、正孔の移動度より２倍以上速いため、通常、ＮＭＯＳトランジスタのサイズも、対応するＰＭＯＳトランジスタのサイズの半分未満である。したがって、動的論理の実効ゲート負荷容量は、静的論理の実効ゲート負荷容量の約１／３である。ゲート負荷容量が小さいため、類似のＣＭＯＳ静的論理より著しく速いクロック速度で動的論理を動作させることができる。典型的な動的回路は、実質的に等価の静的回路より約３０パーセント速く動作するが、動的論理回路は、高いレベルの電力消費を余儀なくされている。
【００１３】
図２に示す動的回路３０の動作を考察する場合、クロック信号ＣＬＫ４４の立下り縁で、クロック信号ＣＬＫ４４によってトランジスタ４６のゲートが放電し、それによりトランジスタ４６が起動してノードＡが予備充電されることに留意されたい。同様に、トランジスタ４８のゲートが放電してトランジスタ４８が非起動状態になり、出力ＯＵＴ３４の状態に無関係に充電電流がノードＡにドライブされる。評価フェーズ（つまりＣＬＫがハイ）の間、入力ＩＮ１、ＩＮ２およびＩＮ３がハイに保持され、かつ、入力ＩＮ４がローに保持されている場合を考察すると、トランジスタ４２がオフ状態を維持し、非満足ＡＮＤ状態が存在するため、ノードＡの電圧は放電せず、予備充電レベルＶＤＤ（ハイ）を維持する。クロック信号ＣＬＫ４４がローに変化すると、トランジスタ４６がスイッチオンし、ＶＤＤに向かってノードＡが充電され、一方、トランジスタ４８のゲート容量が放電する。この回路は、回路が動作しない場合であっても、クロック入力ＣＬＫ４４がローまたはハイのいずれかへ変化すると、トランジスタ４６および４８と結合した容量が充電され、あるいは放電することを示している。
【００１４】
したがって、従来の動的論理回路の場合、上で説明したように、クロック信号（ＣＬＫ）によって、論理回路の状態変化に無関係に多数のゲート容量の充放電が繰り返されることを理解されたい。その結果、アクティブクロックを受け取る動的論理ステージ内では、常に電力が消費されている。また、図２に示す４入力ＡＮＤゲートに関して、出力信号の変化をもたらす回路動作の確率は、１６分の１（入力の確率が等しいと仮定して）であることを理解されたい。その結果、１６の可能入力組合せのうちの１５の組合せに対して回路が何ら動作することなく、クロックによって電力が不必要に消費されている。この「非起動」モード電力消費は、４入力ＡＮＤゲート例における「非起動」モード電力消費より大きいこともあれば、小さいこともあり、回路構成（つまり入力数、ゲーティング数、追加組合せ回路の使用数および順序回路数等）および所与のアプリケーションにおける信号動作によって様々であることを理解されたい。
【００１５】
図３は、順序論理回路７０を例示したものであり、クロック信号に関連する電力損失が、順序論理回路においても共通の問題であることを示している。図に示す従来のフリップ−フロップデバイス７０（Ｄ−ＦＦ）は、データ入力Ｄ７２およびクロック信号入力ＣＬＫ７４を有しており、また、相補出力Ｑ７６およびＱバー７８が提供されている。
【００１６】
フリップ−フロップ動作の間、クロック信号ＣＬＫ７４がローになると、トランジスタ８０を介してノードＸがＶＤＤ（ハイ）に予備充電される。また、クロック信号ＣＬＫ７４から反転クロック信号が生成され、奇数個のインバータ８２、８４および８６を介して伝搬している。ＯＲに形成されたトランジスタ８０、８８および９０のグループは、ノードＸを充電することができ、また、ＡＮＤに形成された直列のトランジスタ９２、９４および９６は、ノードＸの放電を制御するように動作することができる。図には、クロック信号ＣＬＫ７４およびノードＸの充電状態に応答して動作し、インバータ１０６および１０８を有する出力ステージをドライブする、４つのトランジスタ９８、１００、１０２および１０４からなるラッチングセクションが示されている。
【００１７】
クロック信号ＣＬＫ７４がローに変化すると、インバータによる伝搬遅延の後、反転クロック信号ＣＬＫバーがハイに変化し、それによりトランジスタ９６およびトランジスタ１０４がオン状態に切り換わる。トランジスタ９８と「キーパ」として実施されていることが好ましいインバータ１０６および１０８とが相俟って出力データをドライブしている。
【００１８】
最初に、ノードＱ７６にラッチされているデータが、その前のサイクルでセットされたローであり、かつ、入力信号Ｄがハイに保持されている状況について考察すると、トランジスタ９４がオン状態に保持されているため、クロック信号ＣＬＫ７４がハイに変化して評価フェーズに入ると、トランジスタ９２およびトランジスタ１００がスイッチオンし、トランジスタ９２、９４および９６を介してノードＸがＶＳＳ（ロー）に向かって放電する。この放電は、インバータ８２、８４および８６に関連する伝搬遅延に続いてトランジスタ９６がスイッチオフするまで継続する。ノードＸが放電すると、トランジスタ９８がスイッチオンし、かつ、ノードＱ７６およびＱバー７８がそれぞれハイおよびローに変化する。データ入力Ｄ７２がローに保持され、ラッチされているデータ出力がハイに保持されると、トランジスタ８８がスイッチオンし、トランジスタ９４がスイッチオフするため、予備充電ハイレベル（ＶＤＤ）にノードＸが保持される。クロック信号ＣＬＫ７４がハイに変化すると、トランジスタ１００、１０２および１０４を介してノードＱ７６がＶＳＳ（ロー）に向かって放電する。この放電は、インバータ伝搬遅延に続いてＣＬＫＤバーがローに変化するまで継続する。したがって、ノードＱ７６にラッチされているデータがハイからローへ切り換わり、かつ、Ｑバーがハイへ変化する。
【００１９】
このＤフリップ−フロップ回路は、十分に高い周波数で動作させることができるため、高周波パイプラインアーキテクチャの実施が可能であるが、残念なことには、充放電の繰返しによる必然的な結果として動的論理回路内に生じる実質的な電力損失が、一般的にこの回路をこれらのアプリケーション向けとしてどちらかと言えば好ましくないものにしている。
【００２０】
クロック信号ＣＬＫ７４がハイ（評価フェーズ）に変化する場合、ラッチされているデータがハイであり、かつ、データ入力Ｄも同じくハイであれば、ノードＸがＶＳＳ（ロー）まで放電し、ノードＱがトランジスタ９８を介してＶＤＤ（ハイ）に接続されることは理解されよう。しかしながら、ラッチされているデータが既にハイであるため、トランジスタ９８が動作した結果として正味の回路動作が生じることはなく、しかもクロック信号ＣＬＫ７４は、トランジスタ９２および１００のゲート容量を依然として充電しなければならない。また、クロック信号ＣＬＫ７４がローに変化すると、トランジスタ９２およびトランジスタ１００のゲート容量が放電し、遅延パルス回路が起動してトランジスタ９６および１０４のゲート容量が充電される。これらの動作は、出力データに変化がない（ハイ）場合であっても、クロック信号ＣＬＫ７４が出力されている間、反復される。その結果、所望の回路状態変化が生じない場合であってもローディングされるクロック信号ＣＬＫ７４の非生産的な動作によって、実質的な割合の動作電力が不必要に消費される。
【００２１】
以上、組合せ論理回路および順序論理回路は、いずれも同様にクロック信号の容量性ローディングの対象になっており、正味の（生産的な）回路動作が生じない場合であっても回路電力が消費されていることを示した。
【発明の開示】
【発明が解決しようとする課題】
【００２２】
したがって、動的クロック信号の動作に応答して、より小さいゲート容量損失を示す、総合回路動作電力の小さい論理回路が必要である。本発明により、これらおよび他の必要性が満たされ、かつ、既に開発されている動的クロック方式および回路の欠点が克服される。
【課題を解決するための手段】
【００２３】
本発明は、組合せ論理回路および／または順序論理回路に利用することができるディジタル論理回路内の電力消費を低減するための方法および装置からなっている。何ら制限されることのない一例として、ディジタル論理回路のクロック入力部に印加する際のクロック入力信号の相対動作を低減することによって容量性ローディングが低減され、延いては電力消費が低減される。本発明には、一般的に、クロック信号の変化を受け取る少数の所与の入力および中間状態に対してのみ論理回路の出力状態が変化することが認識されている。
【００２４】
従来技術による多くの回路（つまり動的組合せ回路）には、個々のデータ入力に対するゲートローディングおよび関連する伝搬遅延を低減するためのクロック信号の受信が利用されていることは理解されよう。それに対して、本発明は、クロック信号がどの時点でクロックによってドライブされる入力部および中間回路素子によって課されるローディングを必要とするかを調節している。クロック経路制御回路によって、クロック経路制御回路を介した論理回路へのクロック信号の転送が所望の（生産的な）状態変化をもたらすかどうかに基づいてクロック信号の可用性が調節される。詳細には、ディジタル論理回路内における状態の真論理評価が、クロック計路制御回路を介したクロック信号の転送が、たとえば出力状態の変化あるいは順序論理回路（つまり多重状態カウンタ）の内部状態の進行などの所望の状態変化を生成しないことを示している場合、クロック経路制御回路によってクロック信号が阻止される。
【００２５】
また、本明細書で定義されているディジタル論理回路は、少なくとも１つの出力を生成する組合せ素子および／または順序素子を備えた中間回路に接続された少なくとも１つの入力部を備えていることは理解されよう。真論理評価は、その時点における状態の論理評価、および入力部、中間セクションおよび出力部を備えた回路のノードの論理評価からなっている。この論理評価によって、その時点における状態に応答したクロック信号の転送が、ディジタル論理回路の所望する状態変化をもたらすかどうかが決定される。
【００２６】
より詳細には、組合せディジタル論理回路を例にとって考察すると、クロックの変化を受信しても、その時点における入力状態の組合せではその時点における出力状態が何ら変化しない場合、たとえばパストランジスタなどによってクロック信号が阻止される。順序論理回路に関しては、クロック信号を受信しても、その時点における入力および中間状態から新しい出力状態へ向かう順序回路の状態進行に何ら寄与しない場合、クロック信号が阻止される。本明細書に使用されている「新しい出力状態に向かう」という表現は、必ずしもデータの出力状態が変化しない場合があること、また、次に新しい出力状態をもたらす可能性のある内部状態変化が生じる可能性のあることを意味している。本発明による事象駆動論理を使用して実施された単純なデータフリップ−フロップの場合を考察すると、データ入力がラッチ出力と異なっている場合にのみ、クロック経路制御回路からフリップ−フロップ回路へクロック信号が転送される。
【００２７】
回路内における評価は、本発明による多くの代替方法を使用して実施することができ、また、若干の回路オーバヘッドを使用して実施することができることもしばしばである。また、クロックの阻止が、クロック信号の受信が非生産的であり、したがって所望する回路状態の変化をもたらさないことが判明する複数の回路状態のうちのごく一部に対するものでしかない場合であっても、有効な電力消費の低減が達成されることを理解されたい。
【００２８】
本発明の一態様によれば、回路が、たとえばその回路の入力部、出力部あるいは回路内の中間ノードの状態に応答する対象になる複数の状態のうちの一部に対して回路のクロック入力が阻止される。その結果、クロック入力信号に接続されている多数のゲートが、受信するクロック信号が変化する毎に容量性充放電サイクルの対象にならないため、回路もしくは回路ステージがより少ない電力散逸で動作する。また、回路の状態を出力変化に向けて進行させない中間回路内の状態変化を除去することにより、同じく電力を節約することができることを理解されたい。図３に関連して説明した、反転され、かつ、遅延されたクロック信号ＣＬＫＤバーは、出力の変化をもたらさない関連する他の中間充放電と共にこのような中間状態変化の一例である。
【００２９】
本発明は、一般的にはクロックドディジタル論理回路の電力消費を低減するための装置の形で説明することができ、クロックドディジタル論理回路へのクロック信号の通過を、受信したフィードバックの関数として阻止するようにクロック経路制御回路が構成されている。たとえば、受信したフィードバックが、クロックドディジタル論理回路の所与のデータ入力に対して、所望する状態変化がクロック信号の受信に応答してデータ出力に生じることを示している場合にのみクロックを通過させることができる。クロック経路制御回路は、通常、クロックドディジタル論理回路の入力部の状態に応答する検出回路によって提供される調節に続いてクロック信号を選択的に阻止するためのスイッチング回路を備えている。この方法によれば、クロック信号を受信してもクロックドディジタル論理回路内の状態に変化が生じないことが検出されると、クロック信号が阻止される。したがって回路状態に対する影響力を有さないクロック信号が阻止され、かつ、電力散逸およびクロック信号のローディングが低減される。
【００３０】
本発明の他の態様によれば、本発明は、第１の論理回路と、第１の論理回路を介してクロック信号を受信する第２の論理回路と、第２の論理回路への第１の論理回路内のクロック信号の通過を、第２の論理回路から受信するフィードバックの関数として阻止するための手段とを備えた動的論理回路内に実施することができる。クロック信号は、通常、データ入力部に接続されたゲーティング回路と見なすことができる相補型回路を使用して、第２の論理回路内の予備充電および評価フェーズの選択を制御している。クロック信号は、第２の論理回路内の所望の状態変化にクロック信号が影響を及ぼす場合にのみ、第２の論理回路へ引き渡される。第２の論理回路は、組合せ論理回路および／または順序論理回路を備えることができる。第１および第２の論理回路はいずれも、相互接続された、論理機能を実行するように構成された複数のスイッチング素子を備えることができる。クロック信号を阻止するための手段は、スイッチング回路および検出回路を備えることができる。スイッチング回路は、クロックの受信によって第２の論理回路の出力が変化するかどうかを決定する検出回路によってその状態が調節されると、高インピーダンスモードに移行してクロック信号を阻止する。スイッチング素子およびスイッチング回路は、通常、１つまたは複数の所定のデバイス製造プロセス（つまりＮＭＯＳ、ＣＭＯＳ等）を使用してトランジスタが製造された集積回路内などの１つまたは複数のトランジスタとして実施される。クロック信号は、浮動クロック入力からの偽クロック信号のセンスを防止するように、第２の論理回路のクロック入力を所与の公称状態に引っ張っている間、高インピーダンスモードに移行するパストランジスタによるクロック信号の分離によって阻止されることが好ましい。
【００３１】
バイアスが制限されたトランジスタなどのレベルシフタ回路を利用して、第１の論理回路を介して第２の論理回路へ引き渡されるクロック信号の信号レベルを小さくすることができ、それにより電力の散逸およびクロック信号のローディングをさらに低減することができる。一例として、クロック信号電流の流れを制限するように、所定のバイアス電圧（すなわちＦＥＴデバイスの場合）もしくは所定のバイアス電流（すなわちバイポーラデバイスの場合）を使用して構成されたトランジスタを使用してレベルをシフトさせることができる。
【００３２】
クロック信号阻止状態を調節する検出器は、第２の論理回路内に見出される１つまたは複数の中間状態もしくは出力状態の状態に基づいて、あるいは入力部の状態、出力部の状態および中間状態の間の比較に基づいて、クロック信号を阻止するか、あるいは通過させるかどうかを決定する。スイッチング回路は、回路状態、比較あるいは回路内の関係に鑑みて検出器によって起動され、それによりトランジスタの低インピーダンスアクティブ状態を介して第２の論理回路へクロック信号が引き渡される。
【００３３】
一般的に組合せ動的論理回路の場合を考察すると、本発明は、（１）少なくとも１つのデータ入力部からデータ信号を受け取るための少なくとも１つのトランジスタと、（２）データ入力に基づいてクロック入力部のクロック信号を受け取り、データ出力の状態変化をトリガするように構成されたトランジスタの出力部に結合されたゲーティング回路と、（３）データ出力の状態に応答して、ゲーティング回路へのクロック信号の通過を選択的に阻止するように構成されたクロック阻止回路とを備えた回路として実施することができる。このデバイスは、たとえば反転および非反転バッファを実施するための単一トランジスタなどへの単一データ入力を使用して構成することができ、あるいは複数の入力を関連させる論理機能に基づいて複数のデータ入力を利用することができる。本発明に従って、データ入力間の関係に応答して、ＡＮＤゲート、ＮＡＮＤゲート、ＯＲゲート、ＮＯＲゲート、ＸＯＲゲート、一致回路およびそれらの組合せを始めとする多くの異なる組合せ論理機能を実施することができることは理解されよう。
【００３４】
本発明は、組合せ回路、順序回路あるいはそれらの組合せと共に利用することができることを理解されたい。順序回路の場合を考察すると、本発明による動的論理回路は、通常、（１）クロック入力部のクロック信号の変化によってトリガされると、データ入力部で受信したデータ信号に応答する少なくとも１つのデータ出力部を有する双安定回路であって、その前に受け取ったクロック入力の変化に応答してトリガ（ロード）されたデータ入力の状態に応答してセットされたその前の論理状態を保持し、かつ、生成するように構成された双安定回路と、（２）双安定回路に結合された、データ入力部の信号とデータ出力部の信号との間の関係に応答してクロック信号変化の受信を阻止するように構成されたクロック経路制御回路とを備えることができる。データ入力部の信号とデータ出力部の信号との間の関係の１つは、Ｄフリップ−フロップ内に見出されるような等価の関係であり、入力および出力が整合している場合、クロックは双安定回路に引き渡されない。同様に、本明細書において説明する、電力を節約し、かつ、クロック信号のローディングを低減する事象駆動論理を使用してフリップ−フロップあるいは他の形態のラッチを実施することができる。
【００３５】
また、本発明によるクロック経路制御回路は、複合組合せ回路セクションおよび順序回路セクションと共に利用することができることを理解されたい。このような場合、データ入力、中間状態、データ出力および様々な入力、出力および中間状態の間の関係からフィードバックを受け取り、複合組合せ回路セクションおよび順序回路セクションが受け取るクロック信号を選択的に調節することができる。
【００３６】
また、本発明は、一般的には、クロック信号入力部上のクロック信号を受け取り、ディジタル論理回路ステージ内の状態変化をトリガするように構成された前記ディジタル論理回路ステージの電力散逸を低減するための、（１）ディジタル論理回路ステージ内の所与の状態セットの下では、クロック信号入力部上のクロック信号を受け取ってもディジタル論理回路ステージ内の状態が変化しないことを決定するステップと、（２）ディジタル論理回路ステージ内の状態が変化しない複数の状態のうちの少なくとも一部に応答して、ディジタル論理回路ステージのクロック信号入力部からクロック信号を分離するステップとを含む方法として説明することができる。
【００３７】
この方法は、上で説明したように、クロック信号が阻止される状態に関連して説明することができ、あるいはクロック信号が引き渡される状態に従って説明することができる。したがってこの方法は、同様に、（１）ディジタル論理回路ステージ内における、クロックの変化を受け取ることによって回路動作が生じる状態を決定するステップと、（２）検出した状態に応答してディジタル論理回路ステージへのクロック変化の引渡しを許容するステップとを含み、それにより、クロックの変化に関連する総合ゲート容量ローディングを低減する方法として説明することができる。
【００３８】
本発明による、本明細書において説明する回路および方法は、多くの異なる処理技術を使用して製造される回路上で実施することができ、様々なタイプの回路には、離散論理素子、ゲートアレイ、プログラム可能論理、マイクロプロセッサ、メモリ、ディジタル信号プロセッサ、およびディジタル論理回路を利用した、電力回路を組み込んだディジタル回路、アナログデバイス、ＭＥＭデバイス等を含む他の回路が包含されている。
【００３９】
本発明の一態様によれば、電力散逸レベルが減少する論理回路アーキテクチャが提供される。
【００４０】
本発明の他の態様によれば、ＮＭＯＳ、ＣＭＯＳおよび他のデバイスプロセスを始めとする様々な製造プロセスで実施することができる、論理回路の電力損失を低減するための方法が提供される。
【００４１】
本発明の他の態様によれば、様々な組合せ論理機能および／または順序論理機能を実行するようになされた論理ステージ内に組み込むことができる、電力損失を低減するための方法が提供される。
【００４２】
本発明の他の態様によれば、従来の方法で製造される回路内で容易に実施することができる論理回路電力低減方法が提供される。
【００４３】
本発明の他の態様および利点については、本発明の好ましい実施形態を何ら制限することなく完全に開示することを目的として詳細に説明した本明細書の以下の部分および特許請求の範囲の中で明らかになるであろう。
【００４４】
本発明については、単なる説明目的に過ぎない添付の図面を参照することにより、より完全に理解されよう。
【発明を実施するための最良の形態】
【００４５】
より詳細に図面を参照すると、本発明を説明するように、概ね図４ないし図９に示す装置に本発明が具体化されている。本発明による装置は、構成および部品の詳細に応じて、本明細書において開示する基本概念を逸脱することなく変更することができること、また、本発明による方法は、特定のステップおよびシーケンスに応じて、同じく本明細書において開示する基本概念を逸脱することなく変更することができることは理解されよう。
【００４６】
図４は、１入力事象駆動論理回路１１０を例示したもので、図２に示す４入力ＡＮＤドミノ組合せ論理回路に類似している。論理回路１１０は、論理入力１１２、クロック入力１１４および出力１１６を有している。図に示すクロック経路制御回路１１８は、真論理評価に応答して、一括して示す従来の動的論理回路１２０からのクロック信号１１４を選択的に阻止している。
【００４７】
この方法の一般的な動作には、アクティブクロック信号を受け取っている間、予備充電フェーズと評価フェーズとを含んだクロックフェーズを介して論理回路を巡回させる必要がある。クロック信号は、受け取ったクロック信号に応答して、予備充電の間、第１の回路から回路ノードを充電し、次に、前記評価フェーズの間、第２の回路を介して電荷を散逸させるか、あるいはノード上に保持する相補型回路、典型的には相補型トランジスタによって受け取られることが好ましい。
【００４８】
クロック１１４がローに変化して予備充電フェーズを開始する際に、出力１１６がハイに保持されている場合を考察すると、トランジスタ１２６がスイッチオンし、一方、トランジスタ１２８がスイッチオフし、入力１１２の状態に無関係にノードＡに電荷が蓄積される。ノードＡが（インバータ１３４によって提供される対抗電流に打ち勝って）インバータ１３２の論理閾値まで充電されると、インバータ１３２の状態が切り換わって出力１１６をローにドライブし、それによりパストランジスタ１２２がスイッチオフしてクロック信号の転送が阻止され、また、プルアップトランジスタ１２４がスイッチオンして論理回路のクロック入力がハイに保持される。したがって、クロック信号ＣＬＫ１１４の真状態に無関係に、自動的に評価フェーズに移行する。
【００４９】
評価フェーズでは、トランジスタ１２８がスイッチオンし、トランジスタ１２６がスイッチオフするため、予備充電に応答して入力１１２をセットすることによって出力１１６が決定される。詳細には、入力１１２がハイであればノードＡが放電して出力１１６がハイになり、入力がローであれば、インバータ１３４（「キーパ」）によって保持されているため、ノードＡは予備充電レベルであるハイを維持し、それにより出力１１６がローに維持され、クロックパストランジスタ１２２がオフ状態を保持する。
【００５０】
論理回路１２０は、入力１１２がローを維持している間、クロック信号１１４の変化から切り離され、それにより出力１１６を整合させていることは理解されよう。この状態では、入力１１２がハイに変化すると、ノードＡが放電することになるため、出力１１６がハイに変化し、それによりクロック信号１１４の阻止が解除され、次の予備充電フェーズに移行する。本発明によって提供されるクロック信号の選択的な阻止を使用することにより、多くの方法で電力消費の低減が達成されていることは理解されよう。
【００５１】
図５は、クロック信号１１４の信号振幅を小さくするための手段を備えた、クロックがアクティブ状態である場合の容量性電力損失を低減するためのクロック経路制御回路１１８を示したものである。クロック振幅を小さくするための手段は、一例として、ゲートが基準電圧Ｖｒｅｆに接続されたトランジスタ１５２として示されている。本発明には、クロック信号１１４の信号振幅を小さくするために都合の良い任意のレベルシフト回路を利用することができることを理解されたい。
【００５２】
図６は、事象駆動動的ディジタル論理回路１７０の実施態様を例示したもので、非生産的なクロック動作に関連する不要な電力消費の少なくとも一部が排除されている。この回路の動的論理部分は、図２に示す動的論理部分と同じであるが、本発明によるクロック経路制御回路を追加することによって修正されている。この修正によって得られた事象駆動ディジタル論理回路１７０は、論理入力１７２、クロック信号ＣＬＫ１７４および出力１７６を有している。クロック経路制御回路１７８は、論理回路１８０へのクロック信号ＣＬＫ１７４の連絡を調整している。図に示すクロック経路制御回路１７８は、クロックパストランジスタ１８２およびプルアップトランジスタ１８４、１８６を備えている。論理回路１８０内の相補型トランジスタ１８８および１９０がクロック信号ＣＬＫ１７４を受け取り、直列「ＡＮＤ」機能構成のトランジスタ１９２、１９４、１９６および１９８が入力信号１７２を受け取っている。回路の出力１７６は、キーパ回路２０２を備えたインバータ２００によってドライブされている。
【００５３】
予備充電フェーズ（ＣＬＫがロー）では、ノードＡおよび出力ＯＵＴ１７６がそれぞれＶＤＤ（ハイ）およびＶＳＳ（ロー）に予備充電される。したがってトランジスタ１８６を介してノードＢがハイに予備充電される。クロック信号１７４の立上り縁における入力がすべてハイである場合、従来の動的論理回路の場合と同様、ノードＡがローに放電し、出力ＯＵＴ１７６がハイに変化する。ノードＡがローに放電すると、トランジスタ１８４によってノードＢがハイを維持し、それによりノードＢの浮動状態が除去される。トランジスタ１８４は、コンダクタンスを制限し（つまり、たとえばトランジスタの幅を狭くすることなどによって）、予備充電動作を妨げることなくノードＢの電圧を保持するための十分な電流の流れを可能にしている。クロック信号ＣＬＫ１７４がローに変化して予備充電モードに入ると、トランジスタ１８２がスイッチオンするため、ノードＢがロー状態に放電する。したがってこの事象駆動回路の動作は、クロックの評価フェーズに関しては従来の動的論理の動作と同じであり、速度の低下を招くことはない。
【００５４】
評価フェーズに移行する（クロックが変化してハイに戻る）際に、複数の入力１７２のうちのいずれか１つがローに保持されている場合、ノードＡは、放電することなくハイ状態の予備充電電圧（ＶＤＤ）を維持し、出力ＯＵＴ１７６がローにドライブされる。したがってクロック入力が阻止され、ノードＢはハイ状態を維持する。したがってトランジスタ１８６はアクティブ状態を維持し、トランジスタ１８２および１８４はオフである。
【００５５】
パストランジスタ１８２がオフであるこのような状態の下では、クロック信号ＣＬＫ１７４がローに変化しても、その変化によってゲート容量の放電および充電が生じないため、動的論理の従来の実施態様と比較すると電力が節約される。すべての入力組合せを満足し（図に示す「ＡＮＤ」機能の場合）、かつ、真論理評価が実施された場合にのみ、クロック信号ＣＬＫ１７４と動的論理が連絡することを理解されたい。この真論理評価により、クロックの変化に応答して真の状態変化がもたらされるかどうかが決定される。真の状態変化とは、クロックに応答して生じる非生産的な偶発的状態変化が排除された、回路を機能させるために必要な状態変化である。クロック信号の連絡を制限することにより、機能条件を満足する論理入力１７２にのみ応答して予備充電サイクルが生じる。回路が、デバイスの電力を浪費する、クロック信号ＣＬＫ１７４と結合したゲート容量の非生産的な充電および放電の対象にならないことを理解されたい。他の入力組合せに対しては、ノードＢへのクロック経路が阻止（分離）された状態を維持するため、予備充電サイクルと評価サイクルとの間を変化する際のクロック信号ＣＬＫ１７４によって電力が消費されることはない。
【００５６】
不要なクロック電力消費を排除することにより、本発明による事象駆動に修正されたこの動的回路１７０の総合電力消費が低減される。事象駆動回路の電力節約の量は、回路内の積層深さによって決まる。たとえば、３入力ＡＮＤ回路より４入力ＡＮＤ回路の方がより多くの電力が節約される。また、電力が節約されるのは単一論理ステージばかりでなく、論理ブロック内でも電力が節約されることを理解されたい。たとえば、典型的な３２ビット加算器内で起動される典型的な入力組合せに対する論理ステージは約２０パーセントに過ぎない。従来の動的論理を使用して実施された加算器の場合、すべての論理ステージによってクロック電力が消費される。それに対して、本発明による事象駆動動的論理を使用して実施された加算器は、複数の論理ステージのうちの起動状態にある２０パーセントの論理ステージしかクロック電力を消費しないため、小さい電力レベルで動作する。したがって、本発明による事象駆動論理を備えた論理回路を実施することにより、総合電力消費が低減される。３２ビット加算器の実施例の場合、事象駆動論理を使用することによって約８０パーセントのクロック電力が節約される。クロック電力消費は、回路内の総動作電力消費の約半分を占めているため、本発明による事象駆動論理回路を利用することにより、動作電力消費を全体で約４０パーセント低減することができることになる。
【００５７】
本発明による事象駆動論理は、上で説明した組合せ論理の他に順序論理回路に適用することも可能である。一例として、本発明による事象駆動論理を適用することによって事象駆動フリップ−フロップを生成し、不要なクロック電力消費を排除することができる。フリップ−フロップ回路に適用する場合の基本的な前提は、入力部に保持されているデータが、その前のサイクルでフリップ−フロップ内にラッチされているデータと同じである場合に、不要なクロック電力消費を排除することである。本発明による選択的なクロックの阻止を一般化し、ディジタル論理回路の状態が、クロック変化の結果として所望の状態変化をもたらさないことを示している場合に、電力を節約するように、クロック信号をディジタル論理回路から切り離すことができる。
【００５８】
図７は、クロックの立下り縁もしくは立上り縁でデータを捕捉するフリップ−フロップ回路２１０を例示したものである。データフリップ−フロップは、電力消費を低減するように、事象駆動論理を使用して実施することができる順序論理回路の一例に過ぎず、また、この方法は、一般的にほとんどの形態あるいはすべての形態の順序論理回路に適用することができる。
【００５９】
この方法は、論理回路内の状態の評価が、回路内の状態変化が回路の状態に応答して差し迫っていることを示していない限り、その論理回路に対するクロック信号の変化を阻止する方法に一般化することができる。通常、クロック信号の阻止は、単純な組合せ論理回路もしくは順序論理回路内の入力間および／または出力間の関係に応答して実施され、もっと複雑な回路には中間状態評価が必要である。データ「Ｄ」フリップ−フロップの場合、この評価によって、ラッチされているデータと入ってくるデータとが同じであるかどうかが決定される。
【００６０】
ラッチされているデータとデータ入力Ｄ２１４からのデータとが異なる状況、たとえばラッチされているデータがローであり、データ入力Ｄ２１４がハイに保持されている状況を考察すると、この場合、トランジスタ２２４がオフで、トランジスタ２２８がオンである。反転データを受け取るトランジスタ２３６の状態はハイであり、一方、トランジスタ２３４はスイッチオフする。ラッチされているデータがローであるため、ＱおよびＱバーは、それぞれローおよびハイである。Ｑバーがハイであるため、トランジスタ２２６はオフであり、一方、トランジスタ２３０はスイッチオンする。また、Ｑがローであるため、トランジスタ２３８がスイッチオンし、トランジスタ２３２がスイッチオフする。したがってＹ１がハイに保持され、トランジスタ２４０がスイッチオフする。トランジスタ２４２はオンである。
【００６１】
ＣＬＫ２１２がロー（予備充電フェーズ）になると、トランジスタ２２８および２３０を介してノードＸ１がローに放電し、トランジスタ２４４がスイッチオンする。その前の回路動作に続いて、ノードＸ２およびＹ２がそれぞれトランジスタ２４６およびトランジスタ２４２によってローにセットされる。Ｘ２バーはハイにセットされる。したがって、インバータ２４８および２５０を介してトランジスタ２５６がスイッチオフする。トランジスタ２４０の出力はトランジスタ２５８に接続されているため、トランジスタ２５８がスイッチオフする。インバータ対２４８および２５０がインバータ対２５２および２５４と相俟って、ノードＸ２およびＹ２が浮動状態になることを防止し、これらのノードをローに保持していることは理解されよう。ＱおよびＱバーにラッチされているデータは、評価回路（左側の部分）から分離されている。クロック信号ＣＬＫ２１２がハイになってトランジスタ２４４がスイッチオンすると、ノードＸ２およびＸ２バーがそれぞれハイおよびローに変化し、トランジスタ２５６がスイッチオンする。したがってノードＱのデータがロー（その前のデータ）からハイ（新しいデータ）へ変化する。
【００６２】
トランジスタ２４０がスイッチオフし、ノードＹ２がプルダウントランジスタ２４２を介してローを維持するため、トランジスタ２５８がスイッチオフし、静的電流は流れない。出力データがハイに変化すると、トランジスタ２３８がスイッチオフし、トランジスタ２３２がスイッチオンする。Ｑバーがローに変化するため、トランジスタ２２６がスイッチオンし、トランジスタ２３０がスイッチオフする。しかしながら、ＣＬＫは依然としてハイであり、入力Ｄがローに変化するとノードＹ１が浮動状態になるため（「無効」データ変化）、ノードＹ２をローに維持するためにはラッチ（インバータ２５２および２５４）が必要であることに留意されたい。したがってノードＸ１がハイになり、トランジスタ２４４がスイッチオフし、かつ、プルダウントランジスタ２４６がスイッチオンする。したがってノードＸ２がクロック信号ＣＬＫ２１２から減結合され、トランジスタ２４６を介してＶＳＳ（ロー）へ放電する。ノードＸ２バーはハイにセットされ、それによりトランジスタ２５６がターンオフする。その結果、ＱおよびＱバーにラッチされている出力が回路の残りの部分から分離される。
【００６３】
出力Ｑ２６４の状態がハイであると仮定すると、データ入力Ｄ２１４が依然としてその前のサイクルと同じ状態にある場合、ノードＹ１は、トランジスタ２３６に応答してハイを維持し、トランジスタ２４０はスイッチオフする。ノードＹ２は、トランジスタ２４２によってローに維持され、したがってトランジスタ２５８はスイッチオフする。ノードＸ１は、Ｑバーがローであり、かつ、トランジスタ２４４がスイッチオフしているため、トランジスタ２２６によってハイにセットされる。ノードＸ２およびＸ２バーは、それぞれローおよびハイを維持し、トランジスタ２５６はスイッチオフする。トランジスタ２４４および２４０は、ＣＬＫ２１２がハイに立ち上がった後であってもスイッチオフするため、本発明による事象駆動フリップ−フロップには、従来のフリップ−フロップに示すようなゲート容量の充電および放電が生じないことは理解されよう。
【００６４】
図８は、入力Ｄがハイの場合の事象駆動データフリップ−フロップのタイミング図を示したものである。クロックが評価フェーズに移行する際のＸノード、Ｙノードおよび関連するＱ出力およびＱバー出力の関係が強調されている。
【００６５】
ラッチされているデータが入力データと同じである場合、この事象駆動Ｄフリップ−フロップ内の不要なクロック電力消費が排除され、それにより総合電力消費が低減される。従来のフリップ−フロップと比較すると、非積層回路構造を使用することによって回路の動作速度を改善することができる。図３に示す従来のフリップ−フロップの場合、３つの積層トランジスタ（９２、９４および９６、もしくは１００、１０２および１０４）を介してノードＸが放電する。通常、所定の最短セットアップ時間を満足するように、クロックに先立ってデータがセットアップされる。したがって、もう一度図７を参照すると、ＣＬＫがハイに立ち上がる前に、トランジスタ２４４もしくはトランジスタ２４０のいずれかがスイッチオンする。ＣＬＫがハイに立ち上がると、ＣＬＫ信号は、非積層論理、インバータ２４８およびトランジスタ２５６もしくは２５８を通って速やかに伝搬する。したがってデータラッチ速度を約３０パーセントに改善することができる。
【００６６】
ＱおよびＱバーがそれぞれハイおよびローに変化した後、データ入力Ｄ２１４がローに保持されている場合、ＣＬＫがローになり、かつ、トランジスタ２４０がスイッチオンすると、トランジスタ２３２およびトランジスタ２３４を介してノードＹ１がＶＳＳ（ロー）に放電する。ノードＸ１は、トランジスタ２２４を介してハイにセットされ、トランジスタ２４４がスイッチオフする。クロック信号ＣＬＫ２１２がハイに変化すると、ノードＹ２がハイに変化し、トランジスタ２５８がスイッチオンする。したがってノードＱがＶＳＳ（ロー）に放電し、Ｑバーがハイになる。Ｑがローになると、ノードＹ１がハイに変化し、トランジスタ２４０がスイッチオフする。ノードＹ２はＶＳＳ（ロー）に放電し、トランジスタ２５８がスイッチオフする。Ｑバーがハイになると、データ入力Ｄ２１４がハイの場合、クロック入力ＣＬＫ２１２がローに立ち下がるとトランジスタ２３０がハイになり、ノードＸ１がローになる。この場合、後続するサイクルの間、立上り縁でトランジスタ２４４がスイッチオンし、出力が変化する。
【００６７】
要約すると、本発明のこの実施形態による事象駆動データフリップ−フロップは、データラッチ部分（インバータ２６０および２６２）、ドライバ部分（トランジスタ２５６および２５８）、クロック経路制御部分（入力データＤ２１４がハイの場合、トランジスタ２２４、２２６、２２８および２３０、また、入力データＤ２１４がローの場合、トランジスタ２３６、２３８、２３２および２３４）、およびドライバ制御部分から構成されている。クロック経路制御部分は、ラッチされているデータ（ＱもしくはＱバー）および入力データＤ２１４の情報を受け取り、不要なクロック電力消費を排除するように、ラッチされているデータおよび入力データが互いに異なっている場合にのみ起動される。
【００６８】
ローデータ入力Ｄ２１４がＱにラッチされると、データ入力Ｄ２１４がハイに変化したときのみ、クロックの変化を引き渡すようにクロック経路制御回路に応答させ、それによりドライバによる出力Ｑ２６４のローからハイへの変化を可能にしている。
【００６９】
図９は、他の例として、事象駆動フリップ−フロップ２７０の他の実施形態を示したものである。事象駆動順序デバイスのこの実施形態には、セットアップ時間のマージンを大きくするように、異なるクロック経路制御回路２８０および２８２が利用されている。図７に示す前述の事象駆動フリップ−フロップの場合、安全な回路動作を保証するためには、典型的な設計と同様、クロックに先立ってデータをセットアップしなければならないが、図９に示すフリップ−フロップの場合、１つのＮＯＲゲート遅延として与えられる量だけクロック信号ＣＬＫ２７２より遅れてデータ入力Ｄ２７４をセットアップすることができる。したがって、回路のこの実施形態は、否定的なセットアップ時間条件にもかかわらず、安全に動作させることができる。この特徴は、一般に「時間借用」技法と呼ばれている技法を使用した、より速いパイプラインアーキテクチャの構築などの速度臨界アプリケーションにとりわけ有利である。
【００７０】
事象駆動（ＥＤ）論理の重要な利点は、本明細書において説明したクロック経路制御回路を使用することにより、不要な回路電力消費およびクロック電力消費が排除されることである。クロック経路制御回路を動的論理に適用する場合、クロック信号は、有効（生産的な）状態変化を見越した論理状態の正の評価に応答して内部ノードを予備充電するためにのみ利用される。事象駆動（ＥＤ）論理をフリップ−フロップに適用する場合、クロック経路制御回路により、データ入力とその前のサイクルでラッチされたデータとが対応しない場合にのみ、出力データを変化させるための経路が可能になる。通常、クロッキングは、評価フェーズの間に決定される、論理回路の状態変化が生じる場合にのみその論理回路を通過する。評価フェーズの間に実施されるこの決定には、入力信号と論理回路の中間状態および出力状態の両方との間のあらゆる関係を考慮することができる。
【００７１】
したがって、本発明により、組合せ論理回路および順序論理回路の両方を示す多数の実施形態によって例示した事象駆動論理を実施するための方法が提供されることが分かる。事象駆動論理を実施するための方法および回路は、論理回路を備えたあらゆるデバイスに適用することができ、集積回路内での使用にとりわけ適している。また、上で説明した電力低減方法は、多くの異なる製造プロセスによって製造されるデバイスと共に利用することも可能である。
【００７２】
実例実施形態は、単一出力を有する回路を示したものであるが、本発明において説明した方法および回路は、任意の数の入力および出力を有し、かつ、中間論理回路の類別の対象となる組合せ論理回路および／または順序論理回路に適用することができることは容易に理解されよう。
【００７３】
以上の説明には多くの詳細が含まれているが、これらの詳細を本発明の範囲を制限するものとして解釈してはならない。これらの詳細は、本発明の現時点における好ましい実施形態のいくつかを単に例証したものに過ぎない。したがって、本発明の範囲には、当業者には明白になるであろう他の実施形態がすべて包含されていること、また、本発明の範囲は、したがって、明確に記述されていない限り、単数のエレメントの参照が「１つかつ唯一」ではなく、「１つまたは複数」あることを意味している特許請求の範囲以外の何物にも制限されないことは理解されよう。当業者に知られている、上で説明した好ましい実施形態のエレメントに対するすべての構造的、化学的および機能的等価物は、参照により本明細書に明白に組み込まれており、本特許請求によって包含されるべきことが意図されている。また、デバイスあるいは方法には、本特許請求によって包含されるべきであるため、本発明によって解決するように模索されている個々の問題およびすべての問題に対処する必要はない。さらに、本開示におけるエレメント、コンポーネントあるいは方法ステップは、いずれも、そのエレメント、コンポーネントあるいは方法ステップが特許請求の範囲に明確に記載されているかどうかに関係なく、公共の用に供するべきことは意図されていない。本明細書における特許請求エレメントは、そのエレメントが「ための手段」という表現を使用して明確に記載されていない限り、米国特許法１１２の第６項の規定の下で解釈してはならない。
【図面の簡単な説明】
【００７４】
【図１】静的ＣＭＯＳ論理中に実施された従来の４入力ＡＮＤゲートの略図である。
【図２】動的論理中に実施された従来の４入力ＡＮＤゲートの略図である。
【図３】動的論理中に実施された従来のフリップ−フロップ構造（Ｄ−ＦＦ）の略図である。
【図４】ゲート容量の充電および放電に関連する損失を低減するためのクロック経路制御回路の利用を示す、本発明の一実施形態による単一入力論理回路ステージの略図である。
【図５】クロック信号の振幅を制御するための追加回路を備えた図４に示すクロック経路制御回路の利用を示す、本発明の他の実施形態による単一入力回路ステージの略図である。
【図６】ゲート容量の充電および放電に関連する損失を低減するためのクロック経路制御回路の利用を示す、本発明の一実施形態による４入力ＡＮＤゲートの略図である。
【図７】ゲート容量の充電および放電に関連する損失を低減するための第１のタイプのクロック経路制御回路の利用を示す、本発明による事象駆動フリップ−フロップ回路の略図である。
【図８】図７に示すフリップ−フロップ回路のタイミング図である。
【図９】ゲート容量の充電および放電に関連する損失を低減するための代替クロック経路制御回路の利用を示す、本発明による事象駆動フリップ−フロップ回路の略図である。
【図１】
2006511986.tif 000003
【図２】
2006511986.tif 000004
【図３】
2006511986.tif 000005
【図４】
2006511986.tif 000006
【図５】
2006511986.tif 000007
【図６】
2006511986.tif 000008
【図７】
2006511986.tif 000009
【図８】
2006511986.tif 000010
【図９】
2006511986.tif 000011
【国際調査報告】
2006511986.tif 000012