(57)【要約】加算回路が、直列に相互接続された複数の加算段階を備え、最後の加算段階以外の各加算段階のキャリーアウトが、加算段階のうちのすぐ次の加算段階のキャリーインに結合される。加算段階のうちの少なくとも所与の加算段階でキャリーアウト計算要素の各入力に加えられる桁上げ、生成および伝播信号は、キャリーアウト計算要素のその各入力に到達するときに、前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる。これは有利には、加算回路内の動的切換え電力と短絡電力の両方の大幅な低減をもたらす。
2007538305.tif 000002
【特許請求の範囲】
【請求項１】
最後の加算段階以外の加算段階のそれぞれのキャリーアウトが前記加算段階のうちのすぐ次の加算段階のキャリーインに結合された、直列に相互接続された前記複数の加算段階を備える加算回路であって、
前記加算段階のうちの少なくとも所与の加算段階でキャリーアウト計算要素の各入力に加えられる桁上げ、生成および伝播信号が、前記キャリーアウト計算要素のその各入力に到達するときに前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる加算回路。
【請求項２】
前記キャリーアウト計算要素がＡＮＤ−ＯＲ−ＩＮＶブロックを備える請求項１に記載の加算回路。
【請求項３】
前記キャリーアウト計算要素がＯＲ−ＡＮＤ−ＩＮＶブロックを備える請求項１に記載の加算回路。
【請求項４】
前記キャリーアウト計算要素に加えられる前記生成および伝播信号を計算するために使用される前記所与の加算段階の論理レベルの数が、前記キャリーアウト計算要素に加えられる桁上げ信号のクリティカル・パスの深度と同じである請求項１に記載の加算回路。
【請求項５】
前記桁上げ信号が前記所与の加算段階のキャリーインを備える請求項１に記載の加算回路。
【請求項６】
前記複数の加算段階のそれぞれで、前記加算段階のキャリーアウト計算要素の各入力に加えられる対応する桁上げ、生成および伝播信号が、前記キャリーアウト計算要素のその各入力に到達するときに前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる請求項１に記載の加算回路。
【請求項７】
２の補数形式の入力オペランドの対を合計する請求項１に記載の加算回路。
【請求項８】
３２ビット加算回路を備える請求項１に記載の加算回路。
【請求項９】
４段の加算回路を備える請求項８に記載の加算回路。
【請求項１０】
前記加算回路の最下位ビットから最上位ビットへと順次配列された、第１の４ビット段階、６ビット段階、１８ビット段階および第２の４ビット段階を含む４段階を備える請求項９に記載の加算回路。
【請求項１１】
前記第１の４ビット段階のキャリーアウト計算要素に加えられる桁上げ信号が、２ゲート遅延に対応するクリティカル・パス遅延を有し、前記第１の４ビット段階の前記キャリーアウト計算要素に加えられる生成および伝播信号もまた、２ゲート遅延に対応するクリティカル・パス遅延を有する請求項１０に記載の加算回路。
【請求項１２】
前記６ビット段階のキャリーアウト計算要素に加えられる対応する桁上げ信号が、３ゲート遅延に対応するクリティカル・パス遅延を有し、前記６ビット段階の前記キャリーアウト計算要素に加えられる生成および伝播信号もまた、３ゲート遅延に対応するクリティカル・パス遅延を有する請求項１０に記載の加算回路。
【請求項１３】
前記１８ビット段階のキャリーアウト計算要素に加えられる桁上げ信号が、４ゲート遅延に対応するクリティカル・パス遅延を有し、前記６ビット段階の前記キャリーアウト計算要素に加えられる生成および伝播信号もまた、４ゲート遅延に対応するクリティカル・パス遅延を有する請求項１０に記載の加算回路。
【請求項１４】
前記第２の４ビット段階のキャリーアウト計算要素に加えられる桁上げ信号が、５ゲート遅延に対応するクリティカル・パス遅延を有し、前記第２の４ビット段階の前記キャリーアウト計算要素に加えられる生成および伝播信号もまた、５ゲート遅延に対応するクリティカル・パス遅延を有する請求項１０に記載の加算回路。
【請求項１５】
集積回路の一部として実装される請求項１に記載の加算回路。
【請求項１６】
デジタル・データ・プロセッサの演算素子を備える請求項１に記載の加算回路。
【請求項１７】
最後の加算段階以外の加算段階のそれぞれのキャリーアウトが前記加算段階のうちのすぐ次の加算段階のキャリーインに結合された、直列に相互接続された前記複数の加算段階を備える加算回路で使用するための方法であって、
前記加算段階のうちの少なくとも所与の加算段階で桁上げ、生成および伝播信号をキャリーアウト計算要素の各入力に加える工程と、
前記加えられた桁上げ、生成および伝播信号を使用して、前記所与の加算段階のキャリーアウトを計算する工程とを備え、
前記桁上げ、生成および伝播信号が、前記キャリーアウト計算要素のその各入力に到達するときに前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる方法。
【請求項１８】
前記桁上げ信号が前記所与の加算段階のキャリーインを備える請求項１７に記載の方法。
【請求項１９】
前記複数の加算段階のそれぞれで、前記加算段階のキャリーアウト計算要素の各入力に加えられる対応する桁上げ、生成および伝播信号が、前記キャリーアウト計算要素のその各入力に到達するときに前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる請求項１７に記載の方法。
【請求項２０】
少なくとも１つのプロセッサを備える集積回路であって、前記プロセッサが、
少なくとも１つの加算回路を備える少なくとも１つの演算装置を備え、
前記加算回路が、最後の加算段階以外の加算段階のそれぞれのキャリーアウトが前記加算段階のうちのすぐ次の加算段階のキャリーインに結合された直列に相互接続された前記複数の加算段階を備え、
前記加算段階のうちの少なくとも所与の加算段階でキャリーアウト計算要素の各入力に加えられる桁上げ、生成および伝播信号が、前記キャリーアウト計算要素のその各入力に到達するときに前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、参照により本明細書に組み込まれている、発明者Ｋ．Ｃｈｉｒｃａ等の名前で２００４年３月５日に出願された米国仮出願第６０／５５０９１６号「Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｂａｌａｎｃｅｄ  Ｌｏｗ  Ｐｏｗｅｒ  Ａｄｄｉｔｉｏｎ」の優先権を主張するものである。
【０００２】
本発明は、一般には、デジタル・データ・プロセッサの分野に関し、より詳細には、演算処理操作、ならびにデジタル信号プロセッサ（ＤＳＰ：ｄｉｇｉｔａｌ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）または他のタイプのデジタル・データ・プロセッサで使用するための関連処理回路に関する。
【背景技術】
【０００３】
命令を実行するコンピュータまたは他のデジタル・データ・プロセッサはしばしば、２の補数形式を使用して、入力オペランドに対して算術演算を実施し、結果オペランドを生成する。高性能の演算回路、特に加算器および減算器は、こうしたプロセッサの設計における重要な構成要素である。
【０００４】
所与のプロセッサ・アーキテクチュアは、特定の結果を生成するために、２つの数が加算されることを指定し得る。例えば、そのアーキテクチュアは、２の補数の結果を生成するために、２の補数の符号付きオペランドが加算または減算されることを指定し得る。一般に、アーキテクチュア上の同じ機能を実施する複数の許容可能な実装が存在する。特定の演算機能を実施する加算器の許容可能な実装の一部の例は、桁上げ先見加算器、桁上げ伝播加算器、桁上げスキップ加算器または桁上げ保存加算器である。
【０００５】
演算回路のそれぞれ異なる部分に異なるタイプの加算器を組み込むことが時々可能である。一例は、８ビット桁上げ伝播セクションの後に、１６ビット加算を実施する８ビット桁上げ先見セクションが続くことであり得る。
【０００６】
デジタル・データ・プロセッサ演算のこれらのおよび他の従来の側面に関する追加の詳細は、例えば、参照により本明細書に組み込まれている、Ｂ．Ｐａｒｈａｍｉ、「Ｃｏｍｐｕｔｅｒ  Ａｒｉｔｈｍｅｔｉｃ：Ａｌｇｏｒｉｔｈｍｓ  ａｎｄ  Ｈａｒｄｗａｒｅ  Ｄｅｓｉｇｎｓ」、Ｏｘｆｏｒｄ  Ｕｎｉｖｅｒｓｉｔｙ  Ｐｒｅｓｓ、Ｎｅｗ  Ｙｏｒｋ、２０００（ＩＳＢＮ０−１９−５１２５８３−５）に見られ得る。
【０００７】
様々な設計パラメータを最適化するために、種々の論理回路実装が開発される。一部の重要な設計パラメータには、伝播遅延、領域使用率および電力損失が含まれる。ほどんどの加算器実装は、性能と領域をトレード・オフする傾向にある。設計プロセスでは、以下で詳述する動的切換え電力が時々考慮される。
【０００８】
回路設計上の有効電力損失は一般に、動的切換え電力および短絡電力として分類され得る。動的電力切換えは、トランジスタが状態を切り替えるとき（０−＞１または１−＞０など）に損失される。短絡電力は、一時的な性質のものである。それは、入力信号間のスキューによる切換え中の複数の遷移、あるいは遷移を引き起こさない状態に最終的に静止する入力信号によって伝播される一時的な状態変化により表れる。
【０００９】
従来の演算回路実装の欠点は、こうした実装が動的切換え電力および短絡電力の問題に十分に対処できていないことである。これは、複数のデジタル・データ・プロセッサの応用において問題となる過度な電力消費をもたらし得る。
【特許文献１】米国仮出願第６０／５５０９１６号
【非特許文献１】Ｂ．Ｐａｒｈａｍｉ、「Ｃｏｍｐｕｔｅｒ  Ａｒｉｔｈｍｅｔｉｃ：Ａｌｇｏｒｉｔｈｍｓ  ａｎｄ  Ｈａｒｄｗａｒｅ  Ｄｅｓｉｇｎｓ」、Ｏｘｆｏｒｄ  Ｕｎｉｖｅｒｓｉｔｙ  Ｐｒｅｓｓ、Ｎｅｗ  Ｙｏｒｋ、２０００（ＩＳＢＮ０−１９−５１２５８３−５）
【特許文献２】米国特許出願第１０／２６９３７２号
【発明の開示】
【発明が解決しようとする課題】
【００１０】
したがって、動的切換え電力および短絡電力の低減によって改良型の演算回路性能を提供することができる技術が求められている。
【課題を解決するための手段】
【００１１】
例示的な実施形態では本発明は、動的切換え電力および短絡電力の低減を示す低電力加算回路を提供する。
【００１２】
本発明の一態様によれば、加算回路は、直列に相互接続された複数の加算段階を備え、最後の加算段階以外の各加算段階のキャリーアウトが、加算段階のうちのすぐ次の加算段階のキャリーインに結合される。加算段階のうちの少なくとも所与の加算段階でキャリーアウト計算要素の各入力に加えられる桁上げ、生成および伝播信号は、キャリーアウト計算要素のその各入力に到達するときに、前記加算回路内で前記信号が遭遇するゲート遅延の数に関して実質上平衡が保たれる。
【００１３】
例示的な実施形態では、加算回路は、２の補数形式の入力オペランドの対を合計するように構成された３２ビット加算回路を備える。３２ビット加算回路は、加算回路の最下位ビットから最上位ビットへと順次配列された４つの段階、すなわち第１の４ビット段階、６ビット段階、１８ビット段階および第２の４ビット段階を備える。この特定の実施形態における諸段階は桁上げスキップ段階であるが、他の実施形態では、他のタイプの段階が使用され得る。
【００１４】
例示的な実施形態の各段階では、桁上げ生成プロセスへの入力に関連するゲート遅延の数は実質上均等にされる。例えば、第１の４ビット段階のキャリーアウト計算要素に加えられる桁上げ信号は、２つのゲート遅延に対応するクリティカル・パスを有し、第１の４ビット段階のキャリーアウト計算要素に加えられる生成および伝播信号もまた、２つのゲート遅延に対応するクリティカル・パス遅延を有する。同様に、第２の４ビット段階のキャリーアウト計算要素に加えられる桁上げ信号は、５つのゲート遅延に対応するクリティカル・パスを有し、第２の４ビット段階のキャリーアウト計算要素に加えられる生成および伝播信号もまた、５ゲート遅延に対応するクリティカル・パス遅延を有する。したがって、段階は、短絡電力が最小限に抑えられるように、段階のそれぞれにおいて使用される論理レベルを平衡させるやり方で設計される。
【発明を実施するための最良の形態】
【００１５】
本発明について、本明細書では、複数の桁上げスキップ・ブロックを備える３２ビット低電力加算回路の例示的な一実施形態の文脈で述べる。しかし、本発明は、図示する特定の構成を必要とするものではなく、他のタイプの加算ブロック構成、ビット長、数形式および演算回路を使用して実装され得ることを理解されたい。
【００１６】
本発明で述べる所与の加算回路は、１つまたは複数の集積回路を備えるデジタル・データ・プロセッサの一部として実装され得る。
【００１７】
例示的な実施形態の３２ビット加算回路は、３２ビットの数に対する２の補数の加算を実施し、低減電力動作のため、複数の段階のそれぞれにおいて論理レベルの平衡が保たれる。上述したように、回路設計における有効電力の１次要素は、動的切換え電力および短絡電力であるが、従来の設計は、これらの要素に十分には対処できていない。例示的な実施形態での本発明は、短絡電力に対して特別な注意を払い、動的切換え電力を最小限に抑える構成を提供する。
【００１８】
一般に、例示的な実施形態の加算回路は、それぞれ異なるビット幅を有する複数の段階に分割される。それぞれの段階で、桁上げ生成操作への入力に関連するゲート遅延の数は実質上均等にされる。したがって、段階は、段階のそれぞれにおいて使用される論理レベルを平衡させるようなやり方で設計される。短絡電力は、所与の段階内の桁上げ生成プロセスの入力で必要とされるすべての信号が実質上同時に到着するので、最小限に抑えられる。これによって有利には、加算回路内で損失される総有効電力が低減される。
【００１９】
図１は、本発明の例示的な実施形態による３２ビット低電力加算回路１００を示している。加算回路１００は、３２ビット加算器を形成するように互いにカスケードされた、ビット幅がそれぞれ異なる桁上げスキップ加算器を備える４つの段階、すなわち段階１０２、１０３、１０４および１０５を備える。より具体的には、段階１０２、１０３、１０４および１０５はそれぞれ、４ビット桁上げスキップ加算器（ＣＳ４）、６ビット桁上げスキップ加算器（ＣＳ６）、１８ビット桁上げスキップ加算器（ＣＳ１８）およびさらなる４ビット桁上げスキップ加算器（ＣＳ４）を備える。
【００２０】
図１に示す加算回路１００は、マルチスレッド・プロセッサまたは他のデジタル・データ・プロセッサの演算論理装置の少なくとも一部を表すものと見なされ得る。上述したように、こうしたプロセッサは、集積回路の形で実装され得る。
【００２１】
加算回路１００で、最後の加算段階以外の各加算段階のキャリーアウトは、加算段階のうちのすぐ次の加算段階のキャリーインに結合される。図１の図中の各桁上げスキップ段階の最も左側の矢印は、その段階のキャリーアウトを表し、最初の３つの段階１０２、１０３および１０４の場合には、その次の桁上げスキップ段階のキャリーインに接続される。第１段階１０２のキャリーインＣＩは、この実施形態では使用されない。最終段階１０５のキャリーアウトＣｏｕｔは、加算回路１００によって実施される３２ビット加算のキャリーアウトを表す。段階１０２、１０３、１０４および１０５は桁上げスキップ論理を使用するが、出力桁上げでは桁上げ先見論理を使用することは、加算回路１００の独特の特徴である。しかし、加算器１００のこの独特の特徴は本発明の要件ではないことを理解されたい。また、代替の実施形態では桁上げスキップ段階以外の異なるタイプの段階が使用され得ることが、当業者には容易に理解されよう。
【００２２】
この実施形態の加算回路１００は、２の補数形式の３２ビット入力オペランドの対Ａ［３１：０］とＢ［３１：０］を合計して、３２ビット和Ｓ［３１：０］およびキャリーアウトＣｏｕｔを生成する。加算段階１０２、１０３、１０４および１０５のそれぞれの入力に供給される入力オペランドＡおよびＢの特定の部分、ならびにそれらの段階によって生成される和Ｓの部分が図に示されている。
【００２３】
段階１０２、１０３、１０４および１０５の詳細概略図が、図２、３、４および５にそれぞれ示されている。これらの図のそれぞれで、桁上げ、伝播および生成信号のクリティカル・パスの深度が、信号名の後の括弧内に示されている。所与の信号のクリティカル・パスの深度は一般に、その信号を生成するのに必要な段階内のゲート遅延の数を示している。図中に示す桁上げ入力および出力信号の場合、特定の信号名は、説明を分かり易くするのに適している場合には、数に加えて「ｉｎ」または「ｏｕｔ」の表示を含み得る。
【００２４】
次に図２を参照すると。加算回路１００の第１の４ビット桁上げスキップ段階１０２のより詳細な図が示されている。段階１０２は、４つの１ビット全加算（ＦＡ：ｆｕｌｌ  ａｄｄｅｒ）ブロック２００−１、２００−２、２００−３および２００−４を備え、それぞれがビットの対、入力オペランドＡおよびＢのそれぞれからのビット対について加算操作を実施し、和Ｓの対応するビットを生成する。段階１０２はさらに、図示するように相互接続されたＯＲ−ＡＮＤ−ＩＮＶ（ＯＡＩ：Ｏｒ−Ａｎｄ−Ｉｎｖｅｒｔ）ブロック２０２および２０４と、２入力ＮＯＲゲート２０６と、ＡＮＤ−ＯＲ−ＩＮＶ（ＡＯＩ：Ａｎｄ−Ｏｒ−Ｉｎｖｅｒｔ）ブロック２０８とを備える。
【００２５】
第１ＦＡブロック２００−１は、それぞれの２の補数のオペランドＡおよびＢの最下位ビットＡ［０］およびＢ［０］を受信する。このＦＡブロックは、第１出力合計ビットＳ［０］、ならびに生成するのに１ゲート遅延を要する反転キャリーアウト・ビットＣ０（オーバーライン付き）を生成する。したがって、この反転キャリーアウト・ビットＣ０（オーバーライン付き）は、図中の信号名の後の括弧内に示されるように、１のクリティカル・パスの深度を有する。このキャリーアウト・ビットは、桁上げチェーンに沿った第２ＦＡブロック２００−２およびＯＡＩブロック２０２への入力である。ｉ番ビット位置のキャリーアウト・ビットＣｉは、以下のように表現される。
Ｃｉ＝Ｇｉ＋Ｐｉ・Ｃｉ−１                                            （１）
ただし、
Ｇｉ＝Ａｉ・Ｂｉ  生成信号                                            （２）
Ｐｉ＝Ａｉ＋Ｂｉ  伝播信号                                            （３）
Ｃｉ＝Ｇｉ＋Ｐｉ・Ｇｉ−１＋Ｐｉ・Ｐｉ−１・Ｇｉ−２＋．．．＋Ｐｉ．．．Ｐ１・Ｃ０                                                                    （４）
したがって、段階１０２の反転されたＧ１およびＰ１も１ゲート遅延を要する。また、ＯＡＩブロック２０２の３つのすべての入力は、同じゲート遅延を有する。そのブロックは、Ｃ１を生成し、桁上げチェーンに沿ってそれをＡＯＩブロックに送る。このレベルの桁上げ生成の入力は反転されないので、入力の極性を変更するのではなく、補数論理、ＡＯＩが、論理レベルを簡略化するために使用される。
【００２６】
図に示すように、第１の２ビットのキャリーアウトＣ１生成するには、２ゲート遅延を要する。数式（４）から、キャリーアウトＣ３は、以下のように書かれ得る。
Ｃ３＝Ｇ３＋Ｐ３・Ｇ２＋Ｐ３・Ｐ２・Ｇ１＋Ｐ３・Ｐ２・Ｐ１・Ｇ０＋Ｐ３・Ｐ２・Ｐ１・Ｐ０・ＣＩ
＝Ｇ３＋Ｐ３・Ｇ２＋Ｐ３・Ｐ２・（Ｇ１＋Ｐ１・Ｇ０＋Ｐ１・Ｐ０・ＣＩ）
＝Ｇ３＋Ｐ３・Ｇ２＋Ｐ３・Ｐ２・Ｃ１
＝Ｇ２３＋Ｐ２３・Ｃ１                                            （５）
【００２７】
ＡＯＩブロック２０８に加えられる生成および伝播Ｇ２３およびＰ２３はそれぞれ、２ゲート遅延を要し、したがってＡＯＩブロックの他の入力Ｃ１のそれに一致するクリティカル・パスの深度を有する。
【００２８】
図３は、加算回路１００の６ビット桁上げスキップ段階１０３のより詳細な図を示している。段階１０３は、図示するように互いに相互接続された、２つの３ビットＦＡブロック３００−１および３００−２と、ＡＯＩブロック３０２および３０４と、ＮＡＮＤゲート３０６と、ゲート３０８と、ＯＡＩブロック３１０とを備える。
【００２９】
段階１０３で、それぞれのＮＡＮＤゲート３０６およびＡＯＩブロック３０４からのＯＡＩブロック３１０への伝播および生成信号入力はそれぞれ、直前の段階からの桁上げ入力Ｃｉｎ３のクリティカル・パス深度と一致する３ゲート遅延を費やす。段階１０３の最後の桁上げ計算の入力は反転されるので、桁上げチェーンに沿って極性の切換えなしにキャリーアウトＣｏｕｔ９を生成するために、ＯＡＩブロック３１０が使用される。これは、図２の段階１０２の第１の部分で使用される構成と類似する。
【００３０】
キャリーインＣｉｎ３は、図の最上部の３ビットＦＡブロック３００全体に波及し、和を生成するために使用される。第２のＦＡブロック３００−２の和生成の速度を増加させるために、第１の３ビットＦＡブロック３００−１の伝播および生成信号Ｐ０およびＧ０は、キャリーインＣｉｎ３と共にＡＯＩブロック３０２に送られて、第２の３ビットＦＡブロック３００−２のキャリーインが生成される。したがって、この第２ＦＡブロックの和生成は、キャリーインが最後まで波及するのを待たず、そうではなく、ローカルに生成された「スキップされた」キャリーインを受信する。
【００３１】
次に図４を参照すると、加算回路１００の１８ビット桁上げスキップ段階１０４のより詳細な図が示されている。段階１０４は、図示されるように相互接続された、６つの３ビットＦＡブロック４００−１から４００−６と、桁上げ計算ブロック４０２、４０４、４１０、４１６および４１８と、伝播ブロック４０６、４１４および４２０と、生成ブロック４０８、４１２および４２２と、ＡＯＩブロック４２４とを備える。
【００３２】
桁上げチェーンに沿ってキャリーインＣ９を一致させるために、さらなるビットが組み合わされて、それぞれのブロック４１２および４１４内でグローバル生成および伝播信号ＧｂｌｏｃｋおよびＰｂｌｏｃｋが生成され得る。Ｃ９は４ゲート遅延を有するので、段階１０４で、生成−伝播計算の追加レベルが加えられる。この追加のレベルは、ブロック４１２および４１４によって提供される。ＦＡブロック４００によって提供される上位レベルの論理の構成は、直前の段階１０３のそれに類似する。段階のこの部分でのローカル・キャリーアウト生成は同じスキップ規則に従うが、その上に論理レベルも増加されて、ＡＯＩブロック４２４への入力で、必要とされるクリティカル・パス深度の一致がもたらされる。
【００３３】
図５は、加算回路１００の最後の４ビット桁上げスキップ段階１０５を示している。段階１０５は、４つの１ビットＦＡブロック５００−１、５００−２、５００−３および５００−４と、ＯＡＩブロック５０２および５０６と、ＮＯＲゲート５０４および５０８と、計算ブロック５１０と、ＡＯＩブロック５１２とを備える。
【００３４】
キャリーインＣ２７のクリティカル・パスの深度を一致させるために、生成−伝播回路は、消費する追加の論理レベルを有する。したがって、伝播信号を実装するために、ＯＲ論理を使用するのではなく、ＸＯＲ論理がこれらのブロック内で使用される。この論理は、和生成器によっても共有される。したがって、３つのレベルの生成−伝播生成では５ゲート遅延を費し、それによってキャリーインＣ２７のゲート遅延を一致させる。高速の和生成を提供するために、キャリーインＣ２７は、４つの１ビットＦＡブロック５００のそれぞれに持ち込まれる。
【００３５】
上述の技術を使用して、所与の桁上げ計算プロセスへのすべての入力は、ゲート遅延に関して平衡が保たれ得る。上述の代表的な３２ビット加算器は、各段階の桁上げ生成の時点でゲート遅延の所望の一致を提供するために、論理回路の複数のレベルに渡ってこうした信号を平衡させる。平衡化の結果、特定のキャリーアウトを生成するのに必要なすべての信号は、操作を実施する計算要素にほぼ同時に到達する。これは有利には、トランジスタ回路の一時切換えを回避し、加算回路１００の短絡電力を減少させる。
【００３６】
図１から５に示す特定の加算設計は、例示するために提示されるものにすぎないことを理解されたい。複数の代替の縮小加算器設計が使用されることができ、また所与の実装で使用されるために選択される特定の加算器は、入力オペランドの形式など、アプリケーション特有の要因に基づいて変化し得る。また、当業者には明らかなように、明示的に示されていない追加または代替の要素が含まれ得る。
【００３７】
上述したように、本発明は、１つまたは複数の集積回路を備えるデジタル・データ・プロセッサで実施され得る。例えば、本発明は有利には、マルチスレッド・プロセッサで実施され得る。本発明が実施され得るマルチスレッド・プロセッサのより具体的な例は、本願の譲受人に譲渡され、また参照により本明細書に組み込まれている、２００２年１０月１１日に出願された米国特許出願第１０／２６９３７２号「Ｍｕｌｔｉｔｈｒｅａｄｅｄ  Ｐｒｏｃｅｓｓｏｒ  Ｗｉｔｈ  Ｅｆｆｉｃｉｅｎｔ  Ｐｒｏｃｅｓｓｉｎｇ  Ｆｏｒ  Ｃｏｎｖｅｒｇｅｎｃｅ  Ｄｅｖｉｃｅ  Ａｐｐｌｉｃａｔｉｏｎｓ」に記載されている。
【００３８】
本発明で述べた３２ビット低電力加算器は、こうしたマルチスレッド・プロセッサ内の演算論理装置内で実装され得る。もちろん、本発明は、他のマルチスレッド・プロセッサ、またはより一般には他のタイプのデジタル・データ・プロセッサで実施され得る。
【００３９】
さらに、上述した本発明の諸実施形態は例示的なものにすぎず、添付の特許請求の範囲の範囲内の複数の代替実施形態が当業者には明らかになろう。例えば、特定の論理回路、レベルの数、段階のタイプおよび構成、ならびに例示的な諸実施形態の他の側面は、他の実施形態では変更され得る。添付の特許請求の範囲内のこれらのおよび他の代替の構成が、当業者には容易に明らかになろう。
【図面の簡単な説明】
【００４０】
【図１】本発明による３２ビット低電力加算回路の例示的な一実施形態のブロック図である。
【図２】図１の加算回路の第１の桁上げスキップ・ブロックの概略図である。
【図３】図１の加算回路の第２の桁上げスキップ・ブロックの概略図である。
【図４】図１の加算回路の第３の桁上げスキップ・ブロックの概略図である。
【図５】図１の加算回路の第４の桁上げスキップ・ブロックの概略図である。
【図１】
2007538305.tif 000003
【図２】
2007538305.tif 000004
【図３】
2007538305.tif 000005
【図４】
2007538305.tif 000006
【図５】
2007538305.tif 000007
【国際調査報告】
2007538305.tif 000008
2007538305.tif 000009