(57)【要約】【課題】ダイナミック論理回路に関する誤り検出装置および方法を提供する。【解決手段】回路誤りは、真の信号とコンプリメントの信号とが実際に相補信号であることを確実なものにするために真の信号とコンプリメントの信号とを比較することによって検出される。擬似コンプリメント法が、別個のロジックコーンが真の桁上げ信号とコンプリメントの桁上げ信号とを生成する加算器を実現するために使用される。共有ロジックコーン分解のような追加の特徴を含む他の実施形態も提供される。【選択図】　　　図２
2004005664.tif 000002
【特許請求の範囲】
【請求項１】
ドミノ論理回路における誤りを検出する装置であって、
真の信号を生成するように構成されている第１のロジックコーンと、
前記真の信号のコンプリメントを生成するように構成されている第２のロジックコーンと、
前記真の信号と前記真の信号の前記コンプリメントとが論理的コンプリメントであるかどうかを判定するように構成されており、および、誤り信号を生成するようにさらに構成されている比較器と、
を含む装置。
【請求項２】
前記第１のロジックコーンは前記第２のロジックコーンとは別個である、請求項１に記載の装置。
【請求項３】
前記真の信号と前記真の信号の前記コンプリメントとは、別個の論理式によって実現されている、請求項１に記載の装置。
【請求項４】
前記比較器は、前記誤り信号を生成するように構成されているロジックゲートである、請求項１に記載の装置。
【請求項５】
前記比較器は排他的否定論理和ゲートである、請求項１に記載の装置。
【請求項６】
前記比較器は排他的論理和ゲートである、請求項１に記載の装置。
【請求項７】
前記誤り信号は前記真の信号と前記真の信号の前記コンプリメントとの排他的否定論理和である、請求項１に記載の装置。
【請求項８】
さらに、前記第１のロジックコーンと前記第２のロジックコーンとを重複させることによって形成されている共有ロジックコーンを含む、請求項１に記載の装置。
【請求項９】
前記共有ロジックコーンは、前記共有ロジックコーンにおける誤りを検出するための別個の真の回路とコンプリメントの回路とに分解されている、請求項８に記載の装置。
【請求項１０】
ドミノ論理回路における誤りを検出する方法であって、
第１のロジックコーンにおいて真の信号を得ることと、
第２のロジックコーンにおいて前記真の信号のコンプリメントを得ることと、
前記真の信号と前記真の信号の前記コンプリメントとが論理的コンプリメントであるかどうかを判定するために、前記真の信号と前記真の信号の前記コンプリメントとを比較することと、
前記真の信号と前記真の信号の前記コンプリメントとの比較に応答して誤り信号を生成することと、
を含む方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、論理回路における誤り検出に関し、さらに特に、ダイナミック論理回路における誤りの検出に関する。
【０００２】
【従来の技術】
ドミノ回路は、高速のスイッチング速度と面積縮小とを実現するので、高性能加算器の設計において広く用いられるようになっている。しかし、従来のドミノ論理回路は、回路とレイアウトトポロジとの影響を非常に受け易く、かつ、回路故障を被り易いので、こうした従来のドミノ論理回路の使用は様々な設計上のリスクをもたらす。このことは、回路故障の検出とデバッギングとを困難にする。シミュレーション検査が回路挙動または論理をデバッギングする上で有効であることがあるが、電子的結合のような実際の回路機能性に悪影響を与える幾つかの問題が、集積回路のシリコン実装に使用される特定の回路またはレイアウトトポロジのために生じることが多い。したがって、回路は、シミュレーションでは適正に動作しても、集積回路として実装される場合に故障することがある。
【０００３】
ダイナミック論理回路は電荷の蓄積に依存する。ドミノ論理回路の設計技術は公知のタイプのダイナミック論理回路である。ドミノ論理回路には、一般的に、２つのクロッキング動作、すなわち、プリチャージ段階（ｐｒｅｃｈａｒｇｅ　ｐｈａｓｅ）とエバリュエーション段階（ｅｖａｌｕａｔｉｏｎ　ｐｈａｓｅ）とがある。プリチャージ段階中は、ダイナミックノードがＶＤＤ（正の供給電圧、論理「高」すなわち論理「１」値）に充電される。エバリュエーション段階中は、組合せ論理機能がエバリュエーションされ、および、ダイナミックノードが条件付きでＶＳＳ（負の供給電圧、すなわち、接地）に放電される。
【０００４】
特定の組の入力に関して、その機能が「真」であるとエバリュエーションすると、ＶＳＳに対するパスが存在してダイナミックノードを放電し、それによって静的出力インバータがゲート出力を論理「１」に駆動することが引き起こされる。例えば、入力Ａと入力Ｂの両方が「真」である場合に、２入力ＡＮＤゲートが論理「１」を出力する。すなわち、その機能は、エバリュエーション段階中にＡとＢの両方が論理「１」である場合に、「真」であるとエバリュエーションする。エバリュエーション段階中にＡとＢが両方とも論理「１」ではない場合には、ＶＳＳに対するパスが生じさせられず、ダイナミックノードは、その保存された状態を維持しなければならず、このことがゲート出力を論理「０」に保持する。
【０００５】
ドミノ論理ゲートでは、適正なゲートのエバリュエーションのために必要とされる通りにＶＳＳへとダイナミックノードが放電させられることが不可能である場合には、回路故障の一形態が生じる。しかし、このタイプの故障は、ドミノゲートを含む集積回路の通常動作中には生じない。集積回路に対して行われる他の検査が、その集積回路を通常動作させる前に、この問題を明らかにし、および、欠陥のある部品が適切に選別される。別の発生可能な形態の回路故障が、ダイナミックノードが論理「１」値に保持されない場合に生じる。この故障は様々な理由から生じ、例えば、電荷の共有、入力信号上のノイズ、または、パワーレール（ｐｏｗｅｒ　ｒａｉｌ）上のノイズがダイナミックノード上の保存された状態を破損する可能性がある。電荷共有の問題は、プリチャージ段階においてダイナミックノードに蓄積される電荷がエバリュエーション段階においてトランジスタの接合キャパシタンスの間で共有される場合に生じる。電荷共有は出力電圧レベルを低下させ、誤った出力値を生じさせる可能性がある。エバリュエーション段階中は、ダイナミックノードは再充電されることが不可能であり、したがって、出力は誤った値のままである。加算器のような機能要素では、単一のゲートのミスエバリュエーション（ｍｉｓｅｖａｌｕａｔｉｏｎ）は演算結果の誤りを生じさせる。ドミノ回路故障のさらなる詳細については、例えば、下記非特許文献１を参照されたい。
【０００６】
回路誤りを検出するための従来の技術は、機能要素を重複させることと、各機能要素の結果を比較することとを含む。図１は、従来技術の機能要素誤り検出システムおよび方法のブロック図である。このシステムは、第１の加算器１１０と、第２の加算器１２０と、比較器１３０とを含む。加算器１１０、１２０は比較器１３０と結合する。比較器は機能要素誤り信号１４０を生じさせる。図に示すように、第１の加算器１１０は信号Ａと信号Ｂとの加算を計算し、第２の加算器１２０も信号Ａと信号Ｂとの加算を計算する。第１の加算器１１０の結果と第２の加算器１２０の結果は、機能要素誤り信号１４０を求めるために比較器１３０によって比較される。すなわち、第１の加算器１１０が第２の加算器１２０の結果とは異なる結果を生じさせる場合に、回路誤りが第１の加算器１１０または第２の加算器１２０のどちらかで発生していることになる。
【０００７】
【非特許文献１】
Ｐｒａｎｊａｌ　Ｓｒｉｖａｓｔａｖａ，　Ａｎｄｒｅｗ　Ｐｕａ，　ａｎｄ　Ｌａｒｒｙ　Ｗｅｌｃｈ，“Ｉｓｓｕｅｓ　ｉｎ　ｔ　　　　　ｈｅ　Ｄｅｓｉｇｎ　ｏｆ　Ｄｏｍｉｎｏ　Ｌｏｇｉｃ　Ｃｉｒｃｕｉｔｓ，”　８ｔｈ　ＧＬＳ−ＶＬＳＩ，　ｐｐ．　１０８−１１　　　　　２，　１９９８
【０００８】
【発明が解決しようとする課題】
機能要素を重複させることが結果における完全性の幾分かの増大をもたらすが、誤りを検出するために重複した機能要素を使用することに関する１つの問題点は、幾つかの誤りがエイリアス（ａｌｉａｓ）される可能性があるということである。過渡的誤り（すなわち、ソフトエラー）は再計算法（ｒｅｃｏｍｐｕｔａｔｉｏｎ　ｔｅｃｈｎｉｑｕｅ）によって検出されることが可能であるが、エイリアシングは、不正であるが互いに同一である結果を重複機能要素が生じさせることを引き起こす。このような不正であるが互いに同一である結果は比較器１３０によっては検出されない可能性がある。したがって、重複した機能要素を含むことは、結果における絶対的な完全性または保証された妥当性を必ずしも実現しない。回路設計の問題点、レイアウトの問題点、または、結合のような電気的な問題点が、この問題の原因となる。
【０００９】
重複した機能要素を誤り検出のために使用することに関する別の問題点が、誤り検出結果の細分性である。機能要素のレベルで誤りを検出することは、特定の機能要素における誤りをデバッグすることに関してあまり多くの情報を回路設計者に提供しない。回路設計者は、例えば、加算器のどの回路が誤った結果の原因であったか分からない。したがって、誤りを取り除くことは困難で時間のかかるプロセスである。
【００１０】
重複機能要素において誤りを検出することに関するさらに別の問題点が、必要とされる追加のハードウェアである。追加の機能要素と結果比較器とによって使用される面積が、他のシステム機能に割り当てられることも可能な集積回路チップのフットプリントを増大させる。さらに、こうした追加のハードウェアは、回路故障を引き起こすかまたはより高コストの冷却方策を必要とする可能性がある熱発生を増大させる。従来の誤り検出技術は、すべての機能要素で生じる問題をエイリアスし、問題を検出できないまま放置する可能性がある。さらに、従来のアプローチでは、誤りが検出される場合に、回路をデバッグすることが、誤り検出判定の細分性のために長時間を要する煩雑なプロセスであることが多い。
【００１１】
したがって、ドミノ論理回路における誤りを確実に検出する装置および方法が必要とされている。
【００１２】
【課題を解決するための手段】
本発明の一実施態様がダイナミック論理回路における誤り検出を実現する。ドミノタイプのダイナミック論理回路では、ダイナミックノード上に保存された状態が様々な状況によって破損させられるので回路故障が発生する。ドミノ論理回路を使用して実現される加算器設計は、大半の信号の真の形式とコンプリメントの形式とを必要とする。回路誤りは、真の信号とコンプリメントの信号とが実際に相補的な信号であることを確実にするために、その真の信号とコンプリメントの信号とを比較することによって検出される。信号が相補的ではない場合には、その真の信号とコンプリメントの信号とを生じさせたロジックコーン（ｌｏｇｉｃ　ｃｏｎｅ）の１つにおいて回路誤りが発生している。ロジックコーン（または、ロジックのコーン）は、式をエバリュエーションするかまたはブール関数を実現するために必要とされる回路系から構成されている。ダイナミックノードは誤って放電させられる可能性があるが、一方、ダイナミックノードは、テスト容易化設計（ＤＦＴ：ｄｅｓｉｇｎ−ｆｏｒ−ｔｅｓｔ）検査によってこうした条件が検出されることなしに誤ってＶＤＤ（正の供給電圧、論理「高」すなわち論理「１」値）に充電すなわち固着（ｓｔｉｃｋ）させられることは不可能なので、第１のロジックコーンによって生じさせられた真の信号が実際に第２のロジックコーンによって生じさせられたコンプリメントの信号の論理的コンプリメントであることを確実にすることが誤りを検出する。
【００１３】
一実施態様では、擬似コンプリメント法（ｐｓｅｕｄｏｃｏｍｐｌｅｍｅｎｔｔｅｃｈｎｉｑｕｅ）が、真の桁上げ信号とコンプリメントの桁上げ信号とをロジックコーンが生成する加算器を実現するために使用される。別個のロジックコーンが真の信号とコンプリメントの信号とを実現する場合には、どんな誤りもエイリアスされず、真の信号とコンプリメントの信号とを比較することが、少なくとも１つの誤りがロジックコーンの１つで発生している時点を検出する。したがって、回路設計者は、誤りが複合回路内のどこで発生したかを発見して、その問題に対処することが可能である。
【００１４】
さらに別の実施態様では、回路誤りが共有ロジックコーンにおいて検出される。共有ロジックコーンは、真の信号とコンプリメントの信号との生成に使用される共通項すなわち共有項を含む。共有ロジックコーンの場合には、ロジックコーンの共有領域すなわち重複領域内で発生する回路誤りがエイリアスされる可能性がある。すなわち、真の信号を生じさせるロジックコーンを、コンプリメントの信号を生じさせるロジックコーンと比較することは、少なくとも１つの回路誤りを必ずしも検出しない。共有ロジックコーンは、共有領域内で誤りを検出するために別個に比較される。共有ロジックコーンにおける誤り検出の一実施態様が、真の信号とコンプリメントの信号とを実現する別個のロジックコーンの形に共有領域を分解することである。共有ロジックコーンにおける誤り検出の別の実施態様では、共有項すなわち共通項がワンホット（ｏｎｅ−ｈｏｔ）であり、これは１つの項だけが特定の時点で論理「１」の値を有することが可能であるということを意味する。したがって、共通のワンホット項が実際にワンホットであるということを確認することが、共有ロジックコーンの共通ロジックにおける誤りを検出する。
【００１５】
本発明のさらに別の特徴とその本質と様々な利点とが、添付図面と後述の詳細な説明とからより明らかになるだろう。
【００１６】
本明細書に組み入れられておりかつ本明細書の一部分を構成する添付図面が、本発明による幾つかの実施形態を例示し、および、詳細な説明と共に、本発明の原理を説明する役割を果たす。
【００１７】
【発明の実施の形態】
以下では、本発明の幾つかの実施形態が示されている添付図面を参照しながら、本発明をより詳細に説明する。
【００１８】
ドミノ論理回路を使用して実現される加算器は、生成される殆どの信号の真のバージョンとコンプリメントのバージョンとを必要とする。一実施形態では、擬似コンプリメント法は、真の信号とコンプリメントの信号とが別個のロジックコーンによって生成される、信号Ａと信号Ｂとを加算するための桁上げ先見加算器を実現するために使用される。信号Ａと信号Ｂは、一実施形態では、両方とも６４ビット長であり、ここでａ［ｉ］がＡのｉ番目のビットを表し、ｂ［ｉ］がＢのｉ番目のビットを表す。当業者は、本明細書で説明されている原理があらゆるビット長の信号に適用されるということを理解するだろう。擬似コンプリメント設計アプローチは、本明細書に内容全体が引例として組み入れられている　Ｚｈｏｎｇｄｅ　Ｗａｎｇ他，“Ｆａｓｔ　Ａｄｄｅｒｓ　Ｕｓｉｎｇ　Ｅｎｈａｎｃｅｄ　Ｍｕｌｔｉｐｌｅ−Ｏｕｔｐｕｔ　Ｄｏｍｉｎｏ　Ｌｏｇｉｃ”，　ＩＥＥＥ　Ｊ．ＳＯＬＩＤ−ＳＴＡＴＥ　ＣＩＲＣＵＩＴＳ，　ｖｏｌ．３２，　ｎｏ．２，　ｐｐ．２０６−２１４，　１９９７に記述されている。擬似コンプリメント法を使用することによって、ｉ番目のビット位置の真のキャリーアウト（ｃａｒｒｙ−ｏｕｔ）が式１によって生成され、ここで生成項ｇ［ｉ］が式２として定義され、伝搬項ｐ［ｉ］が式３として定義される。当業者は、式に関するここでの言及が、機能すなわち論理式を実現する論理回路系を表すということを理解するだろう。ｉ番目のビット位置に対する真のキャリーイン（ｃａｒｒｙ−ｉｎ）がｃ［ｉ−１］である。
ｃ［ｉ］＝ｇ［ｉ］＋ｐ［ｉ］ｃ［ｉ−１］　　　　　　　　　式１
ｇ［ｉ］＝ａ［ｉ］ｂ［ｉ］　　　　　　　　　　　　式２
ｐ［ｉ］＝ａ［ｉ］＋ｂ［ｉ］　　　　　　　　　　　　式３
【００１９】
ｉ番目のビット位置のキャリーインのコンプリメントが式４によって生成され、ここでキル項ｋ［ｉ］が式５として定義され、擬似コンプリメント伝搬項ｐｃｐ［ｉ］が式６として定義される。ｉ番目のビット位置に対するコンプリメントのキャリーインが／ｃ［ｉ−１］である（なお、“／ｃ”は、バーｃの代替表現である。以下、同様。）。
【数１】
2004005664.tif 000003
【００２０】
図２は、本発明の実施形態による、別個のロジックコーンを使用する桁上げ信号誤り検出を示す図である。このシステムは、第１のロジックコーン２０５と、第２のロジックコーン２１０と、排他的否定論理和ゲート２１５とを含む。ロジックコーン２０５、２１０は排他的否定論理和ゲート２１５と結合する。排他的否定論理和ゲート２１５の出力は、ｉ番目のビット位置に関する桁上げ誤り信号ｃｅ［ｉ］である。第１のロジックコーン２０５は、式１にしたがってｉ番目のビット位置に関する真の桁上げ信号ｃ［ｉ］を計算し、第２のロジックコーン２１０は、式４にしたがってｉ番目のビット位置に関する桁上げ信号のコンプリメント／ｃ［ｉ］を計算する。ロジックコーンは、例えば式１のような式をエバリュエーションするために必要とされる回路系から構成されている。実現されるべき機能に応じて、ロジックコーンは、例えば、単一ドミノロジックゲート、複合ドミノロジックゲート、または、所望の式を実現するようにカスケード式またはその他の形に構成されている複数のドミノロジックゲートを含む。擬似コンプリメント法を使用することによって、真の信号ｃ［ｉ］とこの真の信号のコンプリメント／ｃ［ｉ］とを生成するロジックコーンはそれぞれ別個である。すなわち、桁上げ信号の真の形式とコンプリメントの形式との生成には、共通項すなわち共有ロジックが存在しない。別個のロジックコーンにおいて真の信号ｃ［ｉ］とこの真の信号のコンプリメント／ｃ［ｉ］とを実現することは、真の信号とコンプリメントの信号とが比較される時にすべての回路誤りが検出されるということを確実なものにする。ロジックコーンが別個である場合には、どんな回路誤りもエイリアスされることは不可能である。
【００２１】
図２に示されている実施形態では、排他的否定論理和ゲート２１５は、真の桁上げ信号とコンプリメントの桁上げ信号とが実際に互いのコンプリメントであるかどうかを判定するために、真の桁上げ信号とコンプリメントの桁上げ信号とを比較する。当業者は、信号ｃ［ｉ］と信号／ｃ［ｉ］とがすでにエバリュエーションされている場合に、エバリュエーション段階中に桁上げ誤り信号ｃｅ［ｉ］が有効であるということを理解するだろう。真の信号ｃ［ｉ］とこの真の信号のコンプリメント／ｃ［ｉ］とのエバリュエーションされた値を比較することが、第１のロジックコーン２０５または第２のロジックコーン２１０のどちらかで回路故障が発生しているかどうかを検出する。これらのロジックコーンにおいて、すなわち、これらの信号を生成する回路自体において誤りが存在しない場合には、排他的否定論理和ゲート２１５の出力である桁上げ誤り信号ｃｅ［ｉ］は論理「０」である。しかし、排他的否定論理和ゲート２１５の出力が論理「１」である場合には、真の信号ｃ［ｉ］とこの真の信号のコンプリメント／ｃ［ｉ］とが互いのコンプリメントではないので、回路誤りが発生している。当業者は、例えば排他的論理和ゲートのような他の論理ゲートや機能要素やその等価物がこれらの信号を比較するために適切に使用されることが可能であるということを理解するだろう。
【００２２】
回路故障は、ダイナミックノードが論理「１」に保持されない場合にドミノ論理ゲート内で誤りが発生するので、真の信号とこの真の信号のコンプリメントとを比較することによって確実に検出される。論理「０」から論理「１」へのミスエバリュエーションは、例えばノイズ障害のような理由からよく起こるものである。しかし、論理「１」から論理「０」へのミスエバリュエーションは、ノイズまたは他の過渡現象によっては引き起こされない。エバリュエーション段階中は、ドミノゲートは論理「０」に留まるか、または、論理「０」から論理「１」への移行を行う。ドミノゲートは、一般的に、集積回路上で行われる他の検査がこの問題を明らかにするので、ダイナミックノードが（条件付き放電を不可能にする）論理「１」に固着させられるという問題を実際には呈しない。ダイナミックノードが論理「１」に保持されないミスエバリュエーション故障は様々な理由から生じ、例えば、入力信号またはパワーレール上のノイズが、ダイナミックノード上に保存されている状態を破壊する可能性がある。
【００２３】
一例として図２をさらに参照して、真の桁上げ信号ｃ［ｉ］が論理「０」であると予想されるが、第１のロジックコーン２０５における回路誤りがｃ［ｉ］を論理「１」に変化させる場合を考察する。コンプリメントの桁上げ信号／ｃ［ｉ］は、第２のロジックコーン２１０によって生成されるので、適正にエバリュエーションして論理「１」に変化する。したがって、真の信号とコンプリメントの信号との排他的否定論理和である桁上げ誤り信号ｃｅ［ｉ］は論理「１」である。これは、真の桁上げ信号ｃ［ｉ］とコンプリメントの桁上げ信号／ｃ［ｉ］とが同一でありかつ互いのコンプリメントではないので、ｉ番目のビット位置に関するキャリーアウトにおいて回路故障が発生しているということを表示する。当業者は、桁上げ誤り信号ｃｅ［ｉ］がエラーハンドリングフラグ（ｅｒｒｏｒ　ｈａｎｄｌｉｎｇ　ｆｌａｇ）をセットするか、または、そうでない場合には、ロジックコーンが回路誤りを有するということを理解するだろう。設計プロセス段階（例えば、プリプロダクションまたはポストプロダクション）に応じて、例えば、結果の無効化と再計算、誤り発生源の位置発見、または、生産部分に関する誤りの訂正を含む、幾つかのエラーハンドリングオプションが存在する。
【００２４】
上述の例では、別個のロジックコーン２０５、２１０が真の信号とコンプリメントの信号とを生じさせる。コンプリメントの桁上げ信号／ｃ［ｉ］も、それが誤って論理「０」に留まることを引き起こす回路故障を有する場合には、回路故障が検出されない。これは、コンプリメントの信号／ｃ［ｉ］を実現した回路のダイナミックノードが論理「１」に留まるべきであるということを意味する。上述したように、集積回路が通常動作させられる前に集積回路に対して行われる他の検査がこの問題を明らかにするので、ＶＳＳに放電されるべきダイナミックノードがＶＤＤに留まるこのタイプの故障はドミノゲートでは発生しない。したがって、別個のロジックコーンによって生じさせられる真の信号とコンプリメントの信号とを比較することが、対応するロジックコーンにおける少なくとも１つの回路故障を検出する。
【００２５】
ｉ個のビット位置の各々に関する桁上げ誤り信号ｃｅ［ｉ］を生成するために真の桁上げ信号ｃ［ｉ］のｉ個のビット位置の各々とコンプリメントの桁上げ信号／ｃ［ｉ］のｉ個のビット位置の各々とを比較することが有利であり得るが、当業者は、疎らなキャリーチェーン（ｃａｒｒｙ　ｃｈａｉｎ）を有する加算器では、最終和の算出に係わる生成された桁上げはほんのわずかしか存在しないということを理解するだろう。したがって、これらのほんのわずかな真の桁上げとコンプリメントの桁上げとを比較することが、その算出に係わるロジックコーン全体における回路故障を検出することが可能である。さらに、回路故障が存在する場合には、どちらの排他的否定論理和が論理「１」であったかを調べることが、回路故障を有したロジックコーンを正確に指摘する。これは、回路設計者がデバッグして問題を解決することをより容易にする。
【００２６】
図３は、本発明の一実施形態による真の和信号とコンプリメントの和信号とを実現するロジックコーンを例示する図である。このシステムは、第１のロジックコーン３０５と、第２のロジックコーン３１０と、共有ロジックコーン３１５とを含む。第１のロジックコーン３０５は第２のロジックコーン３１０と重複して共有ロジックコーン３１５を形成する。第１のロジックコーン３０５は、式７にしたがってｉ番目のビット位置に関する真の和信号ｓ［ｉ］を計算し、ここで排他的論理和項ｘ［ｉ］は式８として定義される。第２のロジックコーン３１０は、式９にしたがってｉ番目のビット位置に関する和信号のコンプリメント／ｓ［ｉ］を計算する。
【数２】
2004005664.tif 000004
【００２７】
図３に示されている実施形態では、共有ロジックコーン３１５は、真の和信号ｓ［ｉ］とこの和信号のコンプリメント／ｓ［ｉ］との生成における共通項を表す。真の和とコンプリメントの和とを生成する回路は、共通項ｘ［ｉ］、ｇ［ｉ］、および、ｋ［ｉ］を有する。したがって、ロジックコーン３０５、３１０は別個ではない。この実施形態では、真の和信号ｓ［ｉ］とこの和信号のコンプリメント／ｓ［ｉ］とが互いの論理的コンプリメントであることを確実にするために真の和信号とこの和信号のコンプリメントとを比較することは、すべての回路誤りの検出を確実なものにするわけではない。これは、真の和ｓ［ｉ］とこの真の和のコンプリメント／ｓ［ｉ］の両方が共に不正でありかつ互いの論理的コンプリメントであるということを引き起こす誤りが、共有ロジックコーン３１５において生じる可能性があるからである。したがって、共有ロジックコーン３１５はエイリアスされた誤りの原因となる可能性がある。すなわち、真の和信号ｓ［ｉ］とこの和信号のコンプリメント／ｓ［ｉ］とを比較することは、共有ロジックコーン３１５内の共通回路における誤りを明らかにはしない。
【００２８】
図４は、本発明の一実施形態による共有ロジックコーンの誤り検出を示す略図である。この回路は第１のＡＮＤゲート４０５と、第２のＡＮＤゲート４１０と、第３のＡＮＤゲート４１５と、ＯＲゲート４２０とを含む。ＡＮＤゲート４０５、４１０、４１５は、式１０にしたがって積の和を実現するためにＯＲゲート４２０と結合する。第１のＡＮＤゲート４０５は入力として項ｇ［ｉ］と項ｘ［ｉ］とを有する。第２のＡＮＤゲート４１０は入力として項ｇ［ｉ］と項ｋ［ｉ］とを有する。第３のＡＮＤゲート４１５は入力として項ｘ［ｉ］と項ｋ［ｉ］とを有する。ＡＮＤゲート４０５、４１０、４１５の各々の出力が、共有誤り信号ｓｅ［ｉ］を生じさせるためにＯＲゲート４２０に入力される。定義によって、信号ｘ［ｉ］、ｇ［ｉ］、および、ｋ［ｉ］はワンホットであり、これは、これらの信号の中の１つだけがあらゆる任意の時点において論理「１」の値を有することが可能であるということを意味する。これらの項の２つ以上が論理「１」の値を有する場合には、回路故障が発生している。これらの信号を生じさせる回路に誤りが無い場合には、共有誤り信号ｓｅ［ｉ］が論理「０」の値を有する。回路故障が共有ロジックコーン３１５（図３）において生じる場合には、共有誤り信号ｓｅ［ｉ］は論理「１」値を出力する。
【００２９】
共有誤り信号ｓｅ［ｉ］は、共有ロジックコーン３１５（図３）における誤りを検出するために生成される。加算器の実施形態では、共有ロジックコーンにおいて各信号の真の形式とコンプリメントの形式とを明示的に生成することと、真の信号とコンプリメントの信号とが実際にコンプリメントであることを確実にすることとを伴わずに、共有ロジックコーン３１５（図３）の共通回路すなわち共有回路における誤りを検出することが可能である。別の実施形態では、回路誤りが、共有ロジックコーンを個別のロジックコーンに分解することによって検出されることが可能である。この実施形態については、図５を参照してさらに詳細に後述する。当業者は、共有誤り信号ｓｅ［ｉ］を発見するために他の機能または式が使用可能であるということを理解するだろう。
ｓｅ［ｉ］＝ｇ［ｉ］ｘ［ｉ］＋ｇ［ｉ］ｋ［ｉ］＋ｘ［ｉ］ｋ［ｉ］　　　　　　式１０
【００３０】
図３を参照して上述したように、真の和信号ｓ［ｉ］とこの和信号のコンプリメント／ｓ［ｉ］とが互いの論理的コンプリメントであることを確実にするためにこの真の和信号とこの和信号のコンプリメントとを比較することは、共有ロジックコーン３１５（図３）内の共通回路によって幾つかの誤りがエイリアスされる可能性があるので、すべての回路誤りの検出を確実なものにするわけではない。この実施形態では、少なくとも１つの誤りを検出するために、第１のロジックコーン３０５と第２のロジックコーン３１０とが比較される。これと同時に、共有ロジックコーン３１５内の重複信号が、図４を参照して上述したように、エイリアスされた誤りに関して検査される。
【００３１】
図５は、本発明の実施形態による別個のロジックコーンを使用する機能Ｆにおける誤り検出を示す図である。このシステムは第１のロジックコーン５０５と、第２のロジックコーン５１０と、共有ロジックコーン５１５と、第３のロジックコーン５２０と、排他的否定論理和ゲート５３０とを含む。第１のロジックコーン５０５は機能Ｇを実現し、第２のロジックコーン５１０は相補（コンプリメント）機能／Ｇを実現する。第１のロジックコーン５０５と第２のロジックコーン５１０は重なり合って共有ロジックコーン５１５を形成する。共有ロジックコーン５１５は機能Ｆを実現し、第３のロジックコーン５２０は相補機能／Ｆを実現する。第３のロジックコーン５２０は、機能／Ｆを実現するために別個のコンプリメント信号回路を含む。共有ロジックコーン５１５と第３のロジックコーン５２０は、誤り信号Ｅを生じさせるために、排他的否定論理和ゲート５３０と結合する。
【００３２】
図に示す実施形態では、第１のロジックコーン５０５と第２のロジックコーン５１０とは別個ではない。上述したように、第１のロジックコーン５０５と第２のロジックコーン５１０によってそれぞれに生じさせられる信号Ｇと信号／Ｇとを比較することは、第１のロジックコーン５０５の回路と第２のロジックコーン５１０の回路とにおけるすべての誤りの検出を確実なものにするわけではない。共有ロジックコーン５１５内の回路は誤りをエイリアスする可能性があり、および、Ｇと／Ｇとがコンプリメントであることを確実なものにするためにＧと／Ｇを比較することが、エイリアスされた誤りを検出しないことがある。したがって、共有ロジックコーン５１５内の回路を別個のコンプリメントの信号回路に分解することによって、共有ロジックコーン５１５における誤りを検出することが可能である。
【００３３】
上述したように、ダイナミックノードが論理「１」値に保持されない場合にドミノ論理ゲートにおいて誤りが発生するので、真の信号とこの真の信号のコンプリメントとを比較することによって回路故障が確実に検出される。共有ロジックコーン５１５における誤りは、共有ロジックコーン５１５と第３のロジックコーン５２０とが発生させる信号Ｆと信号／Ｆとを比較することによって検出される。図に示す実施形態では、排他的否定論理和ゲート５３０はこれらの信号を比較して誤り信号Ｅを出力する。誤り信号Ｅは、Ｆと／Ｆとが互いの論理的コンプリメントではない場合に論理「１」の値を有する。すなわち、回路誤りが、共有ロジックコーン５１５の真信号回路または第３のロジックコーン５２０のコンプリメント信号回路のどちらかで発生し、機能Ｆおよび機能／Ｆが相補信号でないことを引き起こした。
【００３４】
さらに、共有ロジックコーン５１５において誤りが存在しない場合には、機能Ｇおよび機能／Ｇをそれぞれに実現する第１および第２のロジックコーン５０５、５１０を、第１および第２のロジックコーン５０５、５１０の回路における誤りを検出するために比較することが可能である。機能Ｇおよび機能／Ｇにおける少なくとも１つの誤りが、Ｇと／Ｇとが実際に相補信号であることと、共有ロジックコーン５１５にエイリアスされた誤りが存在しないこととを確実にすることによって、検出されることが可能である。上述したように、Ｆと／Ｆとが検査されて相補信号であることが発見される場合には、エイリアスされた誤りは存在しない。当業者は、共有ロジックコーン５１５と第１および第２のロジックコーン５０５、５１０とにおける誤り検出が並行して生じることが可能であるということを理解するだろう。
【００３５】
当業者は、図５がダイナミック論理回路における誤り検出のためのフレームワークを示すということを理解するだろう。例えば、重複信号を別々に検査することによって重複ロジックコーンにおける回路誤りを検出して正確に指摘することが可能である。一実施形態では、比較されることが可能な別個の真の回路とコンプリメントの回路とに重複信号を分解することが可能である。図５には１つの分解を示してあるが、この方法を、任意の数の共有ロジックコーンまたは共通項を含む論理式の実現のために反復することが可能である。
【００３６】
当業者は、本発明が加算器の実施形態に限定されず、および、誤り検出が望ましい場合に機能要素または他の論理機能を実現するダイナミック論理回路に一般的に適用されることが可能であるということを理解するだろう。
【００３７】
本発明は様々な異なる形態で具体化されることが可能なので、本明細書に説明されている実施形態だけに限定されるものとして解釈されてはならない。むしろ、これらの実施形態は、この開示内容が詳細で完全であるように、および、当業者に本明細書を完全に伝達するように提供される。例えば、本発明の一実施形態はドミノ論理加算器における誤り検出である。しかし、本発明は加算器の実現だけには限定されず、本明細書で説明した原理はダイナミック論理回路一般に対して適切に適用されることが可能である。
【００３８】
本明細書では、（例示的でありかつ非限定的であることが意図されている）ダイナミック論理回路における誤り検出の好ましい実施形態を説明してきたが、当業者によって改変と変形とが上述の説明を考慮して行われることが可能である。したがって、添付の特許請求項とその等価物とによって定義される通りの本発明の範囲と着想とに含まれる変更が、開示されている本明細書の特定の実施形態において行われることが可能であるということを理解されたい。
【００３９】
（付記１）　ドミノ論理回路における誤りを検出する方法であって、
第１のロジックコーンにおいて真の信号を得ることと、
第２のロジックコーンにおいて前記真の信号のコンプリメントを得ることと、
前記真の信号と前記真の信号の前記コンプリメントとが論理的コンプリメントであるかどうかを判定するために、前記真の信号と前記真の信号の前記コンプリメントとを比較することと、
前記真の信号と前記真の信号の前記コンプリメントとの比較に応答して誤り信号を生成することと、
を含む方法。
【００４０】
（付記２）　前記第１のロジックコーンは前記第２のロジックコーンとは別個である、付記１に記載の方法。
【００４１】
（付記３）　前記真の信号と前記真の信号の前記コンプリメントとを別個の論理式によって実現する、付記１に記載の方法。
【００４２】
（付記４）　前記真の信号と前記真の信号の前記コンプリメントとを比較することは、前記誤り信号を生成するように構成されているロジックゲートによる、付記１に記載の方法。
【００４３】
（付記５）　前記真の信号と前記真の信号の前記コンプリメントとを比較することは、排他的否定論理和演算による、付記１に記載の方法。
【００４４】
（付記６）　前記真の信号と前記真の信号の前記コンプリメントとの比較は、排他的論理和演算による、付記１に記載の方法。
【００４５】
（付記７）　前記誤り信号は、前記真の信号と前記真の信号の前記コンプリメントとの排他的否定論理和である、付記１に記載の方法。
【００４６】
（付記８）　前記第１のロジックコーンと前記第２のロジックコーンは重複して共有ロジックコーンを形成する、付記１に記載の方法。
【００４７】
（付記９）　さらに、
前記共有ロジックコーンを別個の真の回路とコンプリメントの回路とに分解することと、
前記共有ロジックコーンにおける誤りを検出するために前記別個の真の回路とコンプリメントの回路とを比較することと、
を含む、付記８に記載の方法。
【００４８】
（付記１０）　ドミノ論理回路における誤りを検出する装置であって、
真の信号を生成するように構成されている第１のロジックコーンと、
前記真の信号のコンプリメントを生成するように構成されている第２のロジックコーンと、
前記真の信号と前記真の信号の前記コンプリメントとが論理的コンプリメントであるかどうかを判定するように構成されており、および、誤り信号を生成するようにさらに構成されている比較器と、
を含む装置。
【００４９】
（付記１１）　前記第１のロジックコーンは前記第２のロジックコーンとは別個である、付記１０に記載の装置。
【００５０】
（付記１２）　前記真の信号と前記真の信号の前記コンプリメントとは、別個の論理式によって実現されている、付記１０に記載の装置。
【００５１】
（付記１３）　前記比較器は、前記誤り信号を生成するように構成されているロジックゲートである、付記１０に記載の装置。
【００５２】
（付記１４）　前記比較器は排他的否定論理和ゲートである、付記１０に記載の装置。
【００５３】
（付記１５）　前記比較器は排他的論理和ゲートである、付記１０に記載の装置。
【００５４】
（付記１６）　前記誤り信号は前記真の信号と前記真の信号の前記コンプリメントとの排他的否定論理和である、付記１０に記載の装置。
【００５５】
（付記１７）　さらに、前記第１のロジックコーンと前記第２のロジックコーンとを重複させることによって形成されている共有ロジックコーンを含む、付記１０に記載の装置。
【００５６】
（付記１８）　前記共有ロジックコーンは、前記共有ロジックコーンにおける誤りを検出するための別個の真の回路とコンプリメントの回路とに分解されている、付記１７に記載の装置。
【００５７】
（付記１９）　ドミノ論理回路における誤りを検出する装置であって、
第１のロジックコーンにおいて真の信号を生成する手段と、
第２のロジックコーンにおいて前記真の信号のコンプリメントを生成する手段と、
前記真の信号と前記真の信号の前記コンプリメントとが論理的コンプリメントであるかどうかを判定するために、前記真の信号と前記真の信号の前記コンプリメントとを比較する手段と、
前記比較手段によって行われる比較に応答して誤り信号を生成する手段と、
を含む装置。
【００５８】
（付記２０）　前記第１のロジックコーンは前記第２のロジックコーンとは別個である、付記１９に記載の装置。
【００５９】
（付記２１）　前記真の信号と前記真の信号の前記コンプリメントとは、別個の論理式によって実現されている、付記１９に記載の装置。
【００６０】
（付記２２）　前記真の信号と前記真の信号の前記コンプリメントとの前記比較手段は、前記誤り信号を生成するように構成されているロジックゲートによる、付記１９に記載の装置。
【００６１】
（付記２３）　前記真の信号と前記真の信号の前記コンプリメントとの前記比較手段は、排他的否定論理和演算による、付記１９に記載の装置。
【００６２】
（付記２４）　前記真の信号と前記真の信号の前記コンプリメントとの前記比較手段は、排他的論理和演算による、付記１９に記載の装置。
【００６３】
（付記２５）　前記誤り信号は、前記真の信号と前記真の信号の前記コンプリメントとの排他的否定論理和である、付記１９に記載の装置。
【００６４】
（付記２６）　前記第１のロジックコーンと前記第２のロジックコーンは重複して共有ロジックコーンを形成する、付記１９に記載の装置。
【００６５】
（付記２７）　さらに、
前記共有ロジックコーンを別個の真の回路とコンプリメントの回路とに分解する手段と、
前記共有ロジックコーンにおける誤りを検出するために前記別個の真の回路とコンプリメントの回路とを比較する手段と、
を含む、付記２６に記載の装置。
【図面の簡単な説明】
【図１】従来技術の機能要素誤り検出システムおよび方法のブロック図である。
【図２】別個のロジックコーンを使用する桁上げ信号誤り検出を示す図である。
【図３】真の和信号とコンプリメントの和信号を実現するロジックコーンを示す図である。
【図４】共有ロジックコーン誤り検出を示す略図である。
【図５】別個のロジックコーンを使用する機能Ｆにおける誤り検出を示す図である。
【符号の説明】
２０５…第１のロジックコーン
２１０…第２のロジックコーン
２１５…排他的否定論理和ゲート
３０５…第１のロジックコーン
３１０…第２のロジックコーン
３１５…共有ロジックコーン
【図１】
2004005664.tif 000005
【図２】
2004005664.tif 000006
【図３】
2004005664.tif 000007
【図４】
2004005664.tif 000008
【図５】
2004005664.tif 000009