(57)【要約】【課題】スタンバイ時におけるリーク電流を抑制することができるようにする。【解決手段】スタンバイ状態算出部１６は、リーク算出セルライブラリ２１を用いて、スタンバイ状態になるときに組み合わせ回路の入力端子に所定の値を入力する回路を生成し、スキャン挿入部１３からのネットリストにその回路を付加した場合に、組み合わせ回路のリーク電流が小さくなるように、組み合わせ回路の前段のフリップフロップに設定される設定値であるベクタlminを算出する。回路付加部１７は、スタンバイ状態算出部１６からの設定値に基づいて、スキャン挿入部１３からのネットリストに、スタンバイ状態算出部１６により生成された回路を付加し、シミュレーション部１８に出力する。本発明は、ＬＳＩを設計するＬＳＩ設計装置に適用できる。【選択図】図２
2005086215.tif 000002
【特許請求の範囲】
【請求項１】
組み合わせ回路を有する半導体集積回路であって、
前記組み合わせ回路の入力端子の状態に基づいて算出された所定の値を、前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の入力端子に入力する入力回路が付加されて構成される
ことを特徴とする半導体集積回路。
【請求項２】
前記入力回路は、前記組み合わせ回路の前段に配置され、前記組み合わせ回路がスタンバイ状態になるときに、前記所定の値を選択して前記組み合わせ回路の入力端子に入力するセレクタにより構成される
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記セレクタは、前記所定の値を変更可能なヒューズ素子を有する
ことを特徴とする請求項２に記載の半導体集積回路。
【請求項４】
前記入力回路は、前記組み合わせ回路の前段に配置され、前記組み合わせ回路がスタンバイ状態になるときに、前記所定の値を選択して前記組み合わせ回路の入力端子に入力する、セットおよびリセットの少なくとも一方を有するフリップフロップにより構成される
ことを特徴とする請求項１に記載の半導体集積回路。
【請求項５】
前記フリップフロップは、前記所定の値を変更可能なヒューズ素子を有する
ことを特徴とする請求項４に記載の半導体集積回路。
【請求項６】
前記入力回路は、先頭の前記組み合わせ回路の前段に配置され、前記組み合わせ回路がスタンバイ状態になるときに、メモリに記憶されている前記所定の値を、順番に前記組み合わせ回路の入力端子に出力する出力手段と、
前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の個数分カウントするカウント手段と、
前記カウント手段により前記組み合わせ回路の個数分カウントされた場合、前記出力手段による前記所定の値の出力を禁止する出力禁止手段と
を備えることを特徴とする請求項１に記載の半導体集積回路。
【請求項７】
組み合わせ回路を有する半導体集積回路を設計する回路設計装置において、
前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成手段と、
前記組み合わせ回路の入力端子の状態に基づいて、前記所定の値を算出する算出手段と、
前記算出手段により算出された前記所定の値に基づいて、前記回路生成手段により生成された前記入力回路を、前記組み合わせ回路に付加する回路付加手段と
を備えることを特徴とする回路設計装置。
【請求項８】
組み合わせ回路を有する半導体集積回路を設計する回路設計方法において、
前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、
前記組み合わせ回路の入力端子の状態に基づいて、前記所定の値を算出する算出ステップと、
前記算出ステップの処理により算出された前記所定の値に基づいて、前記回路生成ステップの処理により生成された前記入力回路を、前記組み合わせ回路に付加する回路付加ステップと
を含むことを特徴とする回路設計方法。
【請求項９】
組み合わせ回路を有する半導体集積回路を設計する処理をコンピュータに行わせるプログラムが記録される記録媒体であって、
前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、
前記組み合わせ回路の入力端子の状態に基づいて、前記所定の値を算出する算出ステップと、
前記算出ステップの処理により算出された前記所定の値に基づいて、前記回路生成ステップの処理により生成された前記入力回路を、前記組み合わせ回路に付加する回路付加ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１０】
組み合わせ回路を有する半導体集積回路を設計する処理をコンピュータに行わせるプログラムであって、
前記組み合わせ回路がスタンバイ状態になるときに、前記組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、
前記組み合わせ回路の入力端子の状態に基づいて、前記所定の値を算出する算出ステップと、
前記算出ステップの処理により算出された前記所定の値に基づいて、前記回路生成ステップの処理により生成された前記入力回路を、前記組み合わせ回路に付加する回路付加ステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路、回路設計装置および方法、記録媒体、並びにプログラムに関し、特に、スタンバイ時におけるリーク電流を抑制することができるようにした半導体集積回路、回路設計装置および方法、記録媒体、並びにプログラムに関する。
【背景技術】
【０００２】
従来から、論理回路において、スタンバイ時のリーク電流が問題となっている。そこで、スタンバイ時のリーク電流を抑えるために、例えば、特許文献１では、ＣＡＤシステムにより、スタンバイ時における外部入力値によって一意的に定まる内部ノードの信号値に基づいて、既存論理回路内のセルのリーク電流を抑制する高閾値のトランジスタと低閾値のトランジスタとで構成されるセルに置き換える方法が提案されている。
【０００３】
ところで、このような論理回路を構成するセルにおいては、入力端子の状態により、リーク電流の大きさが異なる場合がある。
【０００４】
図１は、０．１３μｍプロセスの２入力ＮＯＲゲートの入力端子別リーク電流を示している。図１の縦軸は、２入力ＮＯＲゲートをスタンバイ状態にしたときのリーク電流値が上から順に、1.0E-06，1.0E-07，1.0E-08，1.0E-09，1.0E-10，1.0E-11［Ａ］を示しており、上に行くほど、リーク電流が大きいことを示している。横軸は、２入力ＮＯＲゲートをスタンバイ状態にしたときの２入力ＮＯＲゲートの入力端子ＡおよびＢの状態を示しており、左から入力端子Ａ，Ｂの状態が「０，０」、「０，１」、「１，０」および「１，１」であることを示している。
【０００５】
図１の例においては、入力端子Ａ，Ｂの状態が「０，０」の場合のリーク電流値は、最大値である2.341E-09Ａを示しており、入力端子Ａ，Ｂの状態が「０，１」の場合のリーク電流値は、9.502E-11Ａを示しており、入力端子Ａ，Ｂの状態が「１，０」の場合のリーク電流値は、1.097E-10Ａを示しており、入力端子Ａ，Ｂの状態が「１，１」の場合のリーク電流値は、最小値である3.228E-11Ａを示している。
【０００６】
したがって、図１の例の場合、最大値を示す入力端子Ａ，Ｂの状態が「０，０」の場合のリーク電流と、最小値を示す入力端子Ａ，Ｂの状態が「１，１」の場合のリーク電流値の比率は、約７３倍であることが示される。
【特許文献１】特開１１−２８２８８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の論理回路を設計する場合には、上述したように、スタンバイ状態において入力端子の状態によってリーク電流の大きさに差があるにも拘わらず、スタンバイ状態における入力端子の状態が、殆ど考慮されていなかった。したがって、従来の論理回路は、外部の制御回路などからのクロックが停止されると、そのままの状態でスタンバイ状態になってしまっていた。すなわち、従来の論理回路においては、スタンバイ状態になる直前の入力端子の状態は、直前の処理によってどんな値であるか不定であり、外部の制御回路などからのクロックが停止されると、スタンバイ状態における入力端子には、この不定の値が入力されてしまう。
【０００８】
以上のように、スタンバイ状態における入力端子の状態（値）によっては、論理回路に多大なリーク電流が流れてしまう課題があった。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、スタンバイ時におけるリーク電流を抑制することができるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の半導体集積回路は、組み合わせ回路の入力端子の状態に基づいて算出された所定の値を、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に入力する入力回路が付加されて構成されることを特徴とする。
【００１１】
入力回路は、組み合わせ回路の前段に配置され、組み合わせ回路がスタンバイ状態になるときに、所定の値を選択して組み合わせ回路の入力端子に入力するセレクタにより構成されるようにすることができる。
【００１２】
セレクタは、所定の値を変更可能なヒューズ素子を有するようにすることができる。
【００１３】
入力回路は、組み合わせ回路の前段に配置され、組み合わせ回路がスタンバイ状態になるときに、所定の値を選択して組み合わせ回路の入力端子に入力する、セットおよびリセットの少なくとも一方を有するフリップフロップにより構成されるようにすることができる。
【００１４】
フリップフロップは、所定の値を変更可能なヒューズ素子を有するようにすることができる。
【００１５】
入力回路は、先頭の組み合わせ回路の前段に配置され、組み合わせ回路がスタンバイ状態になるときに、メモリに記憶されている所定の値を、順番に組み合わせ回路の入力端子に出力する出力手段と、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の個数分カウントするカウント手段と、カウント手段により組み合わせ回路の個数分カウントされた場合、出力手段による所定の値の出力を禁止する出力禁止手段とを備えるようにすることができる。
【００１６】
本発明の回路設計装置は、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成手段と、組み合わせ回路の入力端子の状態に基づいて、所定の値を算出する算出手段と、算出手段により算出された所定の値に基づいて、回路生成手段により生成された入力回路を、組み合わせ回路に付加する回路付加手段とを備えることを特徴とする。
【００１７】
本発明の回路設計方法は、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、組み合わせ回路の入力端子の状態に基づいて、所定の値を算出する算出ステップと、算出ステップの処理により算出された所定の値に基づいて、回路生成ステップの処理により生成された入力回路を、組み合わせ回路に付加する回路付加ステップとを含むことを特徴とする。
【００１８】
本発明の記録媒体に記録されるプログラムは、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、組み合わせ回路の入力端子の状態に基づいて、所定の値を算出する算出ステップと、算出ステップの処理により算出された所定の値に基づいて、回路生成ステップの処理により生成された入力回路を、組み合わせ回路に付加する回路付加ステップとを含むことを特徴とする。
【００１９】
本発明のプログラムは、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値を入力する入力回路を生成する回路生成ステップと、組み合わせ回路の入力端子の状態に基づいて、所定の値を算出する算出ステップと、算出ステップの処理により算出された所定の値に基づいて、回路生成ステップの処理により生成された入力回路を、組み合わせ回路に付加する回路付加ステップとを含むことを特徴とする。
【００２０】
第１の本発明においては、組み合わせ回路の入力端子の状態に基づいて算出された所定の値を、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に入力する入力回路が付加されて構成される。
【００２１】
第２の本発明においては、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値を入力する入力回路が生成され、組み合わせ回路の入力端子の状態に基づいて、所定の値が算出される。そして、算出された所定の値に基づいて、生成された入力回路が、組み合わせ回路に付加される。
【発明の効果】
【００２２】
本発明によれば、スタンバイ時におけるリーク電流を抑制することができる。また、本発明によれば、スタンバイ時のリーク電流を抑制した回路を効率的に設計することができる。
【発明を実施するための最良の形態】
【００２３】
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。本明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２４】
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。
【００２５】
本発明によれば、組み合わせ回路を有する半導体集積回路が提供される。この半導体集積回路は、組み合わせ回路（例えば、図３の組み合わせ回路７１−１）の入力端子の状態に基づいて算出された所定の値（例えば、ベクタlmin）を、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に入力する入力回路（例えば、図３のＲＯＭカウンタ６３）が付加されて構成されることを特徴とする。
【００２６】
この半導体集積回路は、入力回路は、組み合わせ回路の前段に配置され、組み合わせ回路がスタンバイ状態になるときに、所定の値を選択して組み合わせ回路（例えば、図６の組み合わせ回路７１−１）の入力端子に入力するセレクタ（例えば、図６のセレクタ１１１−１）により構成されるようにすることができる。
【００２７】
この半導体集積回路は、セレクタ（例えば、図７のセレクタ１１１−１）は、所定の値を変更可能なヒューズ素子（例えば、図７のヒューズ回路１４１−１）を有するようにすることができる。
【００２８】
この半導体集積回路は、入力回路は、組み合わせ回路がスタンバイ状態になるときに、所定の値を選択して組み合わせ回路の入力端子に入力する、セットおよびリセットの少なくとも一方を有するフリップフロップ（例えば、図８のフリップフロップ１８１−１）により構成されるようにすることができる。
【００２９】
この半導体集積回路は、フリップフロップ（例えば、図９のフリップフロップ１８１−１）は、所定の値（例えば、ベクタlmin）を変更可能なヒューズ素子（例えば、図９のヒューズ回路１４１−１）を有するようにすることができる。
【００３０】
この半導体集積回路は、入力回路は、先頭の組み合わせ回路（例えば、図３の組み合わせ回路７１−１）の前段に配置され、組み合わせ回路がスタンバイ状態になるときに、メモリ（例えば、図３のＲＯＭカウンタ６３）に記憶されている所定の値を、順番に組み合わせ回路の入力端子に出力する出力手段（例えば、図３のＲＯＭカウンタ６３）と、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の個数（例えば、ｎ段）分カウントするカウント手段（例えば、図３の停止信号発生部６４）と、カウント手段により組み合わせ回路の個数分カウントされた場合、出力手段による所定の値の出力を禁止する出力禁止手段（例えば、図３のクロック発生部６２）とを備えるようにすることができる。
【００３１】
本発明によれば、組み合わせ回路（例えば、図３の組み合わせ回路７１−１）を有する半導体集積回路（例えば、図３のＬＳＩ５１）を設計する回路設計装置が提供される。この回路設計装置は、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路（例えば、図３の組み合わせ回路７１−１）の入力端子に所定の値（例えば、ベクタlmin）を入力する入力回路（例えば、図３のＲＯＭカウンタ６３）を生成する回路生成手段（例えば、図１０のステップＳ４の処理を実行する図２のスタンバイ状態算出部１６）と、組み合わせ回路の入力端子の状態に基づいて、所定の値を算出する算出手段（例えば、図１０のステップＳ５の処理を実行する図２のスタンバイ状態算出部１６）と、算出手段により算出された所定の値に基づいて、回路生成手段により生成された入力回路を、組み合わせ回路に付加する回路付加手段（例えば、図２の回路付加部１７）とを備えることを特徴とする。
【００３２】
本発明によれば、組み合わせ回路（例えば、図３の組み合わせ回路７１−１）を有する半導体集積回路（例えば、図３のＬＳＩ５１）を設計する回路設計方法が提供される。この回路設計方法は、組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値（例えば、ベクタlmin）を入力する入力回路（例えば、図３のＲＯＭカウンタ６３）を生成する回路生成ステップ（例えば、図１０のステップＳ４）と、組み合わせ回路の入力端子の状態に基づいて、所定の値（例えば、ベクタlmin）を算出する算出ステップ（例えば、図１０のステップＳ５）と、算出ステップの処理により算出された所定の値に基づいて、回路生成ステップの処理により生成された入力回路を、組み合わせ回路に付加する回路付加ステップ（例えば、図１０のステップＳ６）とを含むことを特徴とする。
【００３３】
なお、本発明の記録媒体およびプログラムも上述した本発明の情報処理方法と基本的に同様の構成であるため、繰り返しになるのでその説明は省略する。
【００３４】
以下、図を参照して本発明の実施の形態について説明する。
【００３５】
図２は、本発明を適用したＬＳＩ設計装置１の構成例を表している。図２の例の場合、ＬＳＩ（Large Scale Integrated Circuit）設計装置１は、例えば、３ビット幅の信号処理を実行する組み合わせ回路を有するＬＳＩを設計する装置である。ＬＳＩ設計装置１は、ＲＴＬ(Register Transfer Level)設計部１１、論理合成部１２、スキャン挿入部１３、入力部１４、記憶部１５、スタンバイ状態算出部１６、回路付加部１７、シミュレーション部１８および配置配線部１９により構成される。
【００３６】
ＲＴＬ設計部１１は、設計仕様書などに基づいて、ＬＳＩの機能ブロック内部の構造と動作を決定する機能設計を行い、ＲＴＬ記述を表現し、表現されたＲＴＬ記述を論理合成部１２に出力する。このとき表現されるＲＴＬ記述には、ハードウェア記述言語が用いられる。論理合成部１２は、論理合成ツールを用いて、ＲＴＬ設計部１１からのＲＴＬ記述を入力として、セルレベルのネットリスト（接続情報）を生成し、生成されたセルレベルのネットリストを、スキャン挿入部１３に出力する。セルとは、トランジスタからなるインバータ、ＮＡＮＤゲート、ＮＯＲゲートまたはフリップフロップなどの、ＬＳＩを構成する素子のことである。
【００３７】
スキャン挿入部１３は、専用ツールを用いて、論理合成部１２により生成されたセルレベルのネットリストに、スキャンチェーン用のスキャンフリップフロップ（以下、スキャンＦ／Ｆと称する）を挿入したネットリストを生成し、生成されたネットリストを、スタンバイ状態算出部１６および回路付加部１７に出力する。スキャンＦ／Ｆは、データ線にマルチプレクサが追加された内部のフリップフロップ（レジスタ）のことであり、スキャンチェーンは、このスキャンＦ／Ｆをピンから直接制御、観測する経路（スキャンチェーン）のことである。このスキャンチェーンを利用して、内部のスキャンＦ／Ｆに対して、直接値を書き込んだり、値を読み出したりし、テストパターンを容易に生成することができる。
【００３８】
入力部１４は、キーボードやマウスなどにより構成され、ユーザの操作に基づいて、スキャン挿入部１３により生成されたネットリストに、付加する回路の指示を、スタンバイ状態算出部１６に供給する。記憶部１５には、入力端子状態別のリーク電流を算出したセルライブラリであるリーク算出用セルライブラリ２１が、ユーザ（設計者）により予め入力され、登録されている。
【００３９】
スタンバイ状態算出部１６は、リーク算出セルライブラリ２１を用いて、スタンバイ状態を適した状態にするために、後述するいくつかの回路構成に基づいた回路を生成する。すなわち、スタンバイ状態算出部１６は、ネットリストの組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値（スタンバイ状態算出部１６により算出されるベクタlmin）を入力するための回路（入力回路）を生成する。
【００４０】
また、スタンバイ状態算出部１６は、スキャン挿入部１３からのネットリストに、生成された回路が付加された場合に、ネットリストの組み合わせ回路の入力端子にどのような値を入力する（どのような状態にする）と、スタンバイ状態における各段の組み合わせ回路のリーク電流が小さくなるかに基づいて、スタンバイ状態になるとき、組み合わせ回路の前段のフリップフロップに入力される設定値（ベクタlmin）を、生成された回路毎に算出する。すなわち、スタンバイ状態算出部１６は、各段の組み合わせ回路のリーク電流が最小に（できるだけ小さく）なるように、組み合わせ回路の前段のフリップフロップの設定値（ベクタlmin）を、生成された回路毎に算出する。そして、スタンバイ状態算出部１６は、入力部１４からのユーザの指示に基づいて、スキャン挿入部１３により生成されたネットリストに付加する回路を選択し、選択された回路および算出されたベクタlminを、回路付加部１７に出力する。
【００４１】
回路付加部１７は、スタンバイ状態算出部１６により算出された設定値（ベクタlmin）に基づいて、スキャン挿入部１３により生成されたネットリストに、スタンバイ状態算出部１６により生成された所定の回路を付加し、所定の回路が付加されたネットリストを、シミュレーション部１８に出力する。
【００４２】
シミュレーション部１８は、論理シミュレータを用いて、回路付加部１７からのネットリストのゲートレベルの実遅延動作検証を行い、さらに、タイミングシミュレータを用いて、ネットリストのゲートレベルの最高動作周波数やセットアップタイムとホールドタイムの検証を行い、検証されたネットリストを配置配線部１９に出力する。
【００４３】
配置配線部１９は、シミュレーション部１８により検証されたネットリストを用いて、ＬＳＩの配置を設定し、設定された配置に基づいて、セルの詳細な配置を実行する。そして、配置配線部１９は、配置されたセル間を配線する。これにより、ＬＳＩが設計される。
【００４４】
図３は、図２のＬＳＩ設計装置１により設計されたＬＳＩ５１の構成例を示す。ＬＳＩ５１は、ＬＳＩ５１上の３ビット幅の信号の処理を実行する組み合わせ回路７１−１乃至７１−ｎがスタンバイ状態になるときに、組み合わせ回路７１−１乃至７１−ｎに所定の値が入力されるようにＬＳＩ設計装置１により設計された回路である。
【００４５】
図３の例においては、ＬＳＩ５１は、３ビット幅の信号を処理する３ビット幅論理回路６１、クロック発生部６２、ＲＯＭカウンタ６３および停止信号発生部６４により構成される。ＬＳＩ５１が動作状態である場合、ＬＳＩ５１には、図示せぬ外部の制御回路からスタンバイ信号ＳＴＢ（Ｌ）が入力され、ＬＳＩ５１がスタンバイ状態である場合、ＬＳＩ５１には、スタンバイ信号ＳＴＢ（Ｈ）が入力される。
【００４６】
３ビット幅論理回路６１は、ｎ段の組み合わせ回路７１−１，７１−２，７１−３，…，７１−ｎを有する。組み合わせ回路７１−１，７１−２，７１−３，…，７１−ｎは、３つの入力端子を有しており、それぞれが前段のフリップフロップに接続されている。組み合わせ回路７１−１の前段には、Ｄ（ディレイ）−フリップフロップにより構成されるフリップフロップ（Ｆ／Ｆ）７２−１，７３−１および７４−１が配置されており、組み合わせ回路７１−２の前段には、Ｄ−フリップフロップにより構成されるフリップフロップ７２−２，７３−２および７４−２が配置されており、組み合わせ回路７１−３の前段には、Ｄ−フリップフロップにより構成されるフリップフロップ７２−３，７３−３および７４−３が配置されており、図示せぬ組み合わせ回路７１−４の前段には、フリップフロップ７２−４，７３−４および７４−４が配置されている。なお、以下、組み合わせ回路７１−１乃至７１−３、フリップフロップ７２−１乃至７２−４、フリップフロップ７３−１乃至７３−４、およびフリップフロップ７４−１乃至７４−４を個々に区別する必要がない場合、単に、それぞれ、組み合わせ回路７１、フリップフロップ７２，７３および７４と称する。また、フリップフロップ７２乃至７４も、組み合わせ回路７１と同様に、図示されていないが、ｎ段配置されている。
【００４７】
フリップフロップ７２−１乃至７４−１は、クロック発生部６２からのクロックＣＫ１の立ち上がりにラッチして、セレクタ７５−１乃至７５−３からの信号を、組み合わせ回路７１−１の各入力端子に出力する。フリップフロップ７２−２乃至７４−２は、クロック発生部６２から増幅器７６−１を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、組み合わせ回路７１−２の各入力端子に出力する。フリップフロップ７２−３乃至７４−３は、クロック発生部６２から増幅器７６−１および７６−２を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−２からの信号を、組み合わせ回路７１−３の各入力端子に出力する。フリップフロップ７２−４乃至７４−４は、クロック発生部６２から増幅器７６−１乃至７６−３を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−３からの信号を、組み合わせ回路７１−４の各入力端子に出力する。
【００４８】
フリップフロップ７２−１乃至７４−１の前段には、外部からの正規信号ＩＮ１乃至ＩＮ３の入力と、ＲＯＭカウンタ６３からの出力信号（ベクタlmin）の入力の２入力セレクタにより構成されるセレクタ７５−１乃至７５−３が配置されている。セレクタ７５−１乃至７５−３は、外部の制御回路からのスタンバイ信号ＳＴＢを、選択信号Ｓとして入力する。セレクタ７５−１乃至７５−３は、選択信号Ｓが「０（Ｌ）」のときには、それぞれ正規信号ＩＮ１乃至ＩＮ３を選択し、選択信号Ｓが「１（Ｈ）」のときには、ＲＯＭカウンタ６３からの出力信号を選択し、選択された信号を、それぞれフリップフロップ７２−１乃至７４−１に出力する。
【００４９】
増幅器７６−１乃至７６−３は、クロック発生部６２からのクロックＣＫ１を増幅するために、クロック発生部６２と、プリップフロップ７２−２乃至７４−２、フリップフロップ７２−３乃至７４−３、およびフリップフロップ７２−４乃至７４−４の間のクロック信号線上にそれぞれ配置されている。なお、図示は省略するが、増幅器７６も、対応するフリップフロップ７２乃至７４の個数分配置されている。
【００５０】
クロック発生部６２は、外部の制御回路などからのマスタークロックＭＣＫ（システムクロック）に同期して、停止信号発生部６４から入力される停止信号ＳＳが「Ｈ」である場合、停止信号発生部６４から入力される停止信号ＳＳが「Ｌ」になるまで、クロックＣＫ１を、ＬＳＩ５１の各部に出力する。そして、クロック発生部６２は、停止信号発生部６４から入力される停止信号ＳＳが「Ｌ」になったときに、クロックＣＫ１の出力を停止する。なお、図３の例においては、マスタークロックＭＣＫは、スタンバイ状態になっても、止まることなく、クロック発生部６２に入力されている。
【００５１】
ＲＯＭカウンタ６３は、３ビット幅の段数ｎ（３ビット幅論理回路６１のフリップフロップ７２乃至７４の段数）のワード数により構成される。ＲＯＭカウンタ６３には、スタンバイ状態算出部１６により算出された組み合わせ回路７１のリーク電流をできるだけ小さくする設定値（テストパターン）である３ビット幅のベクタlminが予め格納されている。具体的には、最後段（ｎ段）の組み合わせ回路７１−ｎの３ビット幅のベクタlminが最小アドレス「１」に格納され、最前段の組み合わせ回路７１−１の３ビット幅のベクタlminが最大アドレス「ｎ」に格納されている。なお、いまの場合、アドレス「１」、「２」、「３」、…、「ｎ−１」、「ｎ」の順にアドレスが大きくなっているものとする。
【００５２】
ＲＯＭカウンタ６３は、リセット(reset)を有している。通常動作状態の場合、ＲＯＭカウンタ６３のリセットには、スタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されるため、ＲＯＭカウンタ６３は、リセット状態となり、停止する。また、ＲＯＭカウンタ６３は、カウンタを内蔵している。スタンバイ状態の場合、ＲＯＭカウンタ６３のリセットには、スタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されるので、ＲＯＭカウンタ６３は、動作状態となり、ＲＯＭカウンタ６３のカウンタが、クロック発生部６２からのクロックＣＫ１に同期して、内部アドレスをインクリメントし始める。それに対応して、ＲＯＭカウンタ６３は、３ビット幅のベクタlminを最小アドレスから順に、次々と読み出し、１ビット毎にセレクタ７５−１乃至７５−３に出力する。
【００５３】
また、ＲＯＭカウンタ６３は、ＶＤＤ（電源線）に接続されており、ＶＤＤより電源が供給されている。ＲＯＭカウンタ６３の規模が大きい場合には、ＲＯＭカウンタ６３そのもののリーク電源も大きくなる。そこで、ＲＯＭカウンタ６３そのもののリーク電源を抑えるため、スタンバイ信号ＳＴＢが「Ｈ」になって、３ビット幅のベクタlminがすべて読み出された後に、外部の制御回路によりＲＯＭカウンタ６３のＶＤＤの電源をオフするようにしてもよい。
【００５４】
停止信号発生部６４は、３ビット幅論理回路６１のフリップフロップ７２乃至７４と同じ段数ｎのフリップフロップ８１−１乃至８１−ｎにより構成される。また、クロック発生部６２とフリップフロップ８１−２乃至８１−ｎの間のクロック信号線上には、クロック発生部６２からのクロックＣＫ１を増幅するために、増幅器８２−１乃至８２−（ｎ−１）が配置されている。なお、以下、フリップフロップ８１−１乃至８１−ｎおよび増幅器８２−１乃至８２−（ｎ−１）を個々に区別する必要がない場合、適宜、単にフリップフロップ８１および増幅器８２と称する
【００５５】
フリップフロップ８１は、セット（set）付きＤ−フリップフロップにより構成されている。通常動作状態の場合、ＬＳＩ５１には、スタンバイ信号ＳＴＢ（Ｌ）が入力され、フリップフロップ８１のセットには、スタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されるので、フリップフロップ８１−１乃至８１−ｎは、セット状態になり、Ｈ信号を保持する。これにより、最後段のフリップフロップ８１−ｎからのＨ信号が、クロック発生部６２に停止信号ＳＳ（Ｈ）として入力されるので、クロック発生部６２は、外部の制御回路などから入力したマスタークロックＭＣＫに同期して、クロックＣＫ１をＬＳＩ５１の各部に出力する。
【００５６】
一方、スタンバイ状態の場合、クロック発生部６２は、停止信号発生部６４から入力される停止信号ＳＳが「Ｌ」になるまでは、外部の制御回路などから入力したマスタークロックＭＣＫに同期して、クロックＣＫ１を出力し続ける。
【００５７】
また、スタンバイ状態の場合、ＬＳＩ５１には、スタンバイ信号ＳＴＢ（Ｈ）が入力され、フリップフロップ８１−１乃至８１−ｎのセットには、スタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されるので、フリップフロップ８１−１乃至８１−ｎは、入力端子からの値を保持する。すなわち、フリップフロップ８１−１の入力端子は、接地されているので、フリップフロップ８１−１は、クロック発生部６２からのクロックＣＫ１の立ち上がりにラッチして、接地からのＬ信号をフリップフロップ８１−２に出力する。フリップフロップ８１−２は、クロック発生部６２から増幅器８２−１を介して入力されるクロックＣＫ１の立ち上がりにラッチして、フリップフロップ８１−１からのＬ信号をフリップフロップ８１−３に出力する。
【００５８】
以降、同様にして、フリップフロップ８１−３，８１−４，…は、クロックＣＫ１の立ち上がりにラッチして、後段のフリップフロップにＬ信号を出力する。そして、最後段のフリップフロップ８１−ｎは、クロック発生部６２から増幅器８２−１乃至８２−（ｎ−１）を介して入力されるクロックＣＫ１の立ち上がりにラッチして、前段からのＬ信号を、停止信号ＳＳ（Ｌ）としてクロック発生部６２に出力する。これにより、クロック発生部６２は、クロックＣＫ１の出力を停止する。
【００５９】
次に、図４のタイミングチャートを参照して、ＬＳＩ５１のスタンバイ動作処理と通常動作処理について説明する。図４の例において、ｔ０乃至ｔｍは、外部の制御回路からのマスタ−クロックＭＣＫおよびクロック発生部６２により発生されるクロックＣＫ１の立ち上がりのタイミングを示しており、ＳＴＢは、スタンバイ信号ＳＴＢを示し、ＭＣＫは、外部の制御回路からのマスタ−クロックＭＣＫを示し、ＣＫ１は、クロック発生部６２により発生されるクロックＣＫ１を示している。また、ＳＳは、停止信号発生部６２からクロック発生部６２に出力される停止信号ＳＳを示し、ＤＡＴＡは、ＲＯＭカウンタ６３から出力される出力信号（３ビット幅のベクタlmin）を示している。なお、ＤＡＴＡ上の数字は、ＲＯＭカウンタ６３における３ビット幅のベクタlminの内部アドレスを示している。
【００６０】
通常動作状態の場合、ＬＳＩ５１には、スタンバイ信号ＳＴＢ（Ｌ）が入力され、フリップフロップ８１−１乃至８１−ｎのセットには、スタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されているので、フリップフロップ８１―ｎは、セット状態となり、クロック発生部６２に、停止信号ＳＳ（Ｈ）を出力している。クロック発生部６２は、停止信号ＳＳ（Ｈ）に対応して、外部の制御回路などからのマスタークロックＭＣＫに同期して、クロックＣＫ１を、ＬＳＩ５１の各部に出力している。また、スタンバイ信号ＳＴＢの反転信号（Ｈ）がリセットに入力されているので、ＲＯＭカウンタ６３は、リセット状態であり、停止している。
【００６１】
スタンバイ状態になるとき、外部の制御回路は、任意のタイミングＰ１において、ＬＳＩ５１にスタンバイ信号ＳＴＢ（Ｈ）を入力する。このとき、停止信号発生部６４から入力される停止信号ＳＳがまだ「Ｌ」になっていないので、クロック発生部６２は、外部の制御回路などからのマスタークロックＭＣＫに同期して、クロックＣＫ１を、ＬＳＩ５１の各部に出力している。
【００６２】
タイミングＰ１において、ＲＯＭカウンタ６３のリセットに、スタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されると、ＲＯＭカウンタ６３のカウンタは、スタンバイ信号ＳＴＢ（Ｈ）が出力されたタイミングＰ１の直後のクロックＣＫ１の立ち上がりｔ０に同期して、内部アドレスをインクリメントする。その内部アドレスのインクリメントに応じて、ＲＯＭカウンタ６３は、３ビット幅のベクタlminを読み出し、セレクタ７５−１乃至７５−３に出力する。このとき、ＲＯＭカウンタ６３は、最小アドレス「１」である最後段（ｎ段）の組み合わせ回路７１−ｎ用のベクタlminを読み出し、出力する。以降、ＲＯＭカウンタ６３は、クロック発生部６２からのクロックＣＫ１が止まるまで、クロックＣＫ１の立ち上がりｔ１乃至ｔｎに同期して、内部アドレスをインクリメントし、次のアドレス「２」である最後段（ｎ−１段）の組み合わせ回路７１−ｎ−１用のベクタlminから、最大アドレス「ｎ」である最前段の組み合わせ回路７１−１用のベクタlminまでを順番に読み出し、セレクタ７５−１乃至７５−３に出力していく。
【００６３】
また、タイミングＰ１において、スタンバイ信号ＳＴＢ（Ｈ）に対応して、セレクタ７５−１乃至７５−３には、選択信号Ｓ（＝１）が入力されるので、セレクタ７５−１乃至７５−３は、ＲＯＭカウンタ６３から次々と出力される３ビット幅のベクタlminを選択入力し、選択入力された３ビット幅のベクタlminを、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。
【００６４】
３ビット幅論理回路６１のフリップフロップ７２−１乃至７４−１は、クロック発生部６２からのクロックＣＫ１の立ち上がりにラッチして、セレクタ７５−１乃至７５−３からのベクタlminを、クロック発生部６２からのクロックＣＫ１が止まるまで、次々と後段の組み合わせ回路７１−１の各入力端子に出力する。組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−２乃至７４−２に出力する。
【００６５】
フリップフロップ７２―２乃至７４−２は、クロック発生部６２から増幅器７６−１を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、クロック発生部６２からのクロックＣＫ１が止まるまで、次々と組み合わせ回路７１−２の各入力端子に出力する。組み合わせ回路７１−２は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−３乃至７４−３に出力する。
【００６６】
フリップフロップ７２―３乃至７４−３は、クロック発生部６２から増幅器７６−２を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−２からの信号を、クロック発生部６２からのクロックＣＫ１が止まるまで、次々と組み合わせ回路７１−３の各入力端子に出力する。組み合わせ回路７１−３は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−４乃至７４−４に出力する。以降、同様にして、後段のフリップフロップ７２乃至７４および組み合わせ回路７１において、同様の処理が実行される。すなわち、ベクタlminは、次々と後段のフリップフロップ７２乃至７４にシフトされる。
【００６７】
一方、タイミングＰ１において、スタンバイ信号ＳＴＢ（Ｈ）に対応して、停止信号発生部６４のフリップフロップ８１−１乃至８１−ｎのセットには、スタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されるので、フリップフロップ８１−１乃至８１−ｎは、入力される値を保持する。
【００６８】
したがって、フリップフロップ８１−１は、スタンバイ信号ＳＴＢ（Ｈ）が出力されたタイミングＰ１の直後のクロックＣＫ１の立ち上がりｔ０にラッチして、接地からのＬ信号をフリップフロップ８１−２に出力（シフト）する。フリップフロップ８１−２は、次のクロックＣＫ１の立ち上がりｔ１にラッチして、フリップフロップ８１−１からのＬ信号をフリップフロップ８１−３に出力（シフト）し、フリップフロップ８１−３は、次のクロックＣＫ１の立ち上がりｔ２にラッチして、フリップフロップ８１−２からのＬ信号をフリップフロップ８１−４に出力（シフト）する。以降、同様に、Ｌ信号は、クロックＣＫ１の立ち上がりにラッチして、次々に後段のフリップフロップ８１にシフトされる。
【００６９】
最後段のフリップフロップ８１−ｎは、Ｌ信号がシフトされるｎ−１サイクルまでは、前の値を保持しているため、停止信号ＳＳ（Ｈ）を出力している。そして、フリップフロップ８１−ｎは、スタンバイ信号ＳＴＢ（Ｈ）が出力されたタイミングＰ１からｎサイクル目のクロックＣＫ１の立ち上がりｔｎ−１に、前段からのＬ信号をラッチして、クロックＣＫ１の立ち上がりｔｎ−１から少し遅延したタイミングＳ１において、停止信号ＳＳ（Ｌ）をクロック発生部６２に出力する。クロック発生部６２は、入力された停止信号ＳＳ（Ｌ）に対応して、タイミングＳ１の次のサイクルのタイミングｔｎから、クロックＣＫ１を停止する。
【００７０】
以上のようにして、停止信号発生部６４において、クロック発生部６２からのクロックＣＫ１に同期して、Ｌ信号が、次々にフリップフロップ８１−１，８１−２，８１−３，…，８１−ｎにシフトされているとき、図４のＤＡＴＡに示されるように、最小アドレス「１」の３ビット幅のベクタlminから最大アドレス「ｎ」の３ビット幅のベクタlminは、クロック発生部６２からのクロックＣＫ１に同期して、ＲＯＭカウンタ６２から読み出され、読み出された順に、クロック発生部６２からのクロックＣＫ１に同期して、フリップフロップ７２―１乃至７４−１，７２−２乃至７４−２，７２―３乃至７４−３，…にシフトされている。
【００７１】
したがって、タイミングＳ１のフリップフロップ８１−ｎからの停止信号ＳＳ（Ｌ）により、タイミングｔｎにおいて、クロック発生部６２によりクロックＣＫ１が停止されたとき、３ビット論理回路６１のフリップフロップ７２―１乃至７４−１は、最大アドレス「ｎ」の３ビット幅のベクタlminが入力された状態であり、フリップフロップ７２―２乃至７４−２は、アドレス「ｎ−１」の３ビット幅のベクタlminが入力された状態であり、フリップフロップ７２―３乃至７４−３は、アドレス「ｎ−２」の３ビット幅のベクタlminが入力された状態である。そして、最後段のフリップフロップ７２―ｎ乃至７４−ｎは、最小アドレス「１」の３ビット幅のベクタlminが入力された状態である。
【００７２】
ここで、最大アドレス「ｎ」の３ビット幅のベクタlminは、スタンバイ状態算出部１６により算出された組み合わせ回路７１−１のリーク電流をできるだけ小さくする（最小にする）設定値（テストパターン）であり、アドレス「ｎ−１」の３ビット幅のベクタlminは、スタンバイ状態算出部１６により算出された組み合わせ回路７１−２のリーク電流を小さくする設定値であり、アドレス「ｎ−２」の３ビット幅のベクタlminは、スタンバイ状態算出部１６により算出された組み合わせ回路７１−３のリーク電流を小さくする設定値であり、アドレス「ｎ」の３ビット幅のベクタlminは、スタンバイ状態算出部１６により算出された組み合わせ回路７１−ｎのリーク電流を小さくする設定値である。
【００７３】
すなわち、タイミングＳ１のフリップフロップ８１−ｎからの停止信号ＳＳ（Ｌ）により、タイミングｔｎでクロックＣＫ１が停止されるときには、各ベクタlminが所望の組み合わせ回路７１の前段のフリップフロップ７２乃至７４に入力された状態となる。したがって、スタンバイ状態においては、組み合わせ回路７１の入力端子に、フリップフロップ７２乃至７４から、スタンバイ状態算出部１６により算出された組み合わせ回路７１のリーク電流を小さくするテストパターンが入力され続ける。
【００７４】
以上のように、スタンバイ状態になるときに、組み合わせ回路の段数分のクロックＣＫ１をカウントした後に、クロックＣＫ１を停止させ、ＲＯＭカウンタ６３に記憶されている予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを各組み合わせ回路の入力端子に入力するようにしたので、ＬＳＩ５１のスタンバイリーク電流を低減することができる。
【００７５】
なお、タイミングｔｎでクロックＣＫ１が停止されるとき（すなわち、ＲＯＭカウンタ６３によりベクタlminがすべて読み出された後）に、外部の制御回路によりＲＯＭカウンタ６３のＶＤＤの電源をオフするようにしてもよい。これにより、ＲＯＭカウンタ６３そのもののリーク電源を抑えることができる。
【００７６】
次に、スタンバイ状態から、通常動作状態に戻る場合、外部の制御回路は、任意のタイミングＰ２において、ＬＳＩ５１にスタンバイ信号ＳＴＢ（Ｌ）を入力する。
【００７７】
停止信号発生部６４を構成するフリップフロップ８１は、停止信号ＳＳ（Ｌ）を出力している。タイミングＰ２で、スタンバイ信号ＳＴＢの反転信号（Ｈ）がセットに入力されると、フリップフロップ８１は、セット状態となり、タイミングＰ２から少し遅延したタイミングＳ２で、クロック発生部６２に、停止信号ＳＳ（Ｈ）を出力する。これに対応して、クロック発生部６２は、外部の制御回路などからのマスタークロックＭＣＫを入力し、タイミングＳ２の次のマスタークロックＭＣＫのタイミングｔｍで、クロックＣＫ１の発生を開始し、ＬＳＩ５１の各部に出力する。
【００７８】
また、タイミングＰ２で、スタンバイ信号ＳＴＢの反転信号（Ｈ）がリセットに入力されると、ＲＯＭカウンタ６３は、タイミングＰ２の直後のクロックＣＫ１の立ち上がりｔｍで、リセット状態となり、停止する。
【００７９】
一方、タイミングＰ２において、スタンバイ信号ＳＴＢ（Ｌ）に対応して、セレクタ７５−１乃至７５−３には、選択信号Ｓ（＝０）が入力されるので、セレクタ７５−１乃至７５−３は、正規信号ＩＮ１乃至ＩＮ３を選択入力し、選択入力された正規信号ＩＮ１乃至ＩＮ３を、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。
【００８０】
３ビット幅論理回路６１のフリップフロップ７２−１乃至７４−１は、クロック発生部６２からのクロックＣＫ１の立ち上がりにラッチして、セレクタ７５からの信号を、後段の組み合わせ回路７１−１の各入力端子に出力する。組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−２乃至７４−２に出力する。
【００８１】
フリップフロップ７２―２乃至７４−２は、クロック発生部６２から増幅器７６−１を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、組み合わせ回路７１−２の各入力端子に出力する。組み合わせ回路７１−２は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−３乃至７４−３に出力する。
【００８２】
フリップフロップ７２―３乃至７４−３は、クロック発生部６２から増幅器７６−２を介して入力されるクロックＣＫ１の立ち上がりにラッチして、組み合わせ回路７１−２からの信号を、組み合わせ回路７１−３の各入力端子に出力する。組み合わせ回路７１−３は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ７２−４乃至７４−４に出力する。以降、同様にして、後段のフリップフロップ７２乃至７４および組み合わせ回路７１において、同様の処理が実行され、最後段の組み合わせ回路７１−ｎにより、所定の信号処理された信号は、３ビット幅論理回路６１の外部に出力される。
【００８３】
以上のように、ＬＳＩ５１においては、スタンバイ信号ＳＴＢに基づいて、通常動作状態から、スタンバイ状態に切り替えられ、スタンバイ状態から、通常動作状態に切り替えられえる。そして、スタンバイ状態になるときに、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを各組み合わせ回路の入力端子に入力するようにしたので、ＬＳＩ５１のスタンバイリーク電流を低減することができる。
【００８４】
なお、図３のフリップフロップ７２乃至７４を、スキャンチェーン付きフリップフロップに置き換えて、フリップフロップ７２乃至７４の間をスキャンチェーンで繋ぎ、ＲＯＭカウンタ６３に格納されたベクタlminをスキャンチェーン上でシフトさせることにより、スタンバイ状態時の組み合わせ回路の入力端子に所望の値（状態）を入力するようにしてもよい。
【００８５】
また、図５に示されるように、ＬＳＩ５１において、フリップフロップ７２−２乃至７４−２の前に、組み合わせ回路７１−１の入力と、組み合わせ回路７１−１の出力とを入力する２入力セレクタ９１−１乃至９３−１を配置し、フリップフロップ７２―３乃至７４−３の前に、組み合わせ回路７１−２の入力と、組み合わせ回路７１−２の出力とを入力する２入力セレクタ９１−２乃至９３−２（以下、セレクタ９１−１，９１−２，…、セレクタ９２−１，９２−２，…、およびセレクタ９３−１，９３−２，…を個々に区別する必要がない場合、単に、セレクタ９１、９２および９３と称する）を配置し、以下同様に、フリップフロップ７２乃至７４の前に、前段の組み合わせ回路の入力と、前段の組み合わせ回路の出力とを入力する２入力セレクタ９１乃至９３を配置するようにしてもよい。なお、図５において、図３における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
【００８６】
この場合、これらのセレクタ９１乃至９３は、外部の制御回路からのスタンバイ信号ＳＴＢを選択信号Ｓとして入力する。セレクタ９１乃至９３は、選択信号Ｓが「０（Ｌ）」の時には組み合わせ回路の出力を選択し、選択信号Ｓが「１（Ｈ）」の時には組み合わせ回路の入力を選択し、選択された信号を後段のフリップフロップに出力する。
【００８７】
このようにすることで、スタンバイ信号ＳＴＢが「１（Ｈ）」の時には、セレクタ９１乃至９３により各段の組み合わせ回路の入力が選択されて、セレクタ９１乃至９３の後のフリップフロップ７２乃至７４に入力されるため、ＲＯＭカウンタ６３からの３ビット幅のベクタlminを各組み合わせ回路を通過しないようにすることができる。これにより、図３のＬＳＩ５１の場合よりも、ベクタlminの算出を容易にすることができる。
【００８８】
図６は、図２のＬＳＩ設計装置１により設計されたＬＳＩ１０１の構成例を示す。なお、図６において、図３における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。また、ＬＳＩ１０１には、通常動作状態時には、外部の制御回路などからクロックＣＫ２が入力されており、このクロックＣＫ２は、スタンバイ状態時には、停止される。
【００８９】
ＬＳＩ１０１においては、フリップフロップ７２−１，７３−１および７４−１の前に、セレクタ１１１−１，１１２−１および１１３−１が配置されており、フリップフロップ７２−２，７３−２および７４−２の前に、セレクタ１１１−２，１１２−２および１１３−２（以下、これらを個々に区別する必要がない場合、単にセレクタ１１１，１１２および１１３と称する）が配置されている。すなわち、図６の例の場合、各段のフリップフロップ７２，７３および７４の前に、セレクタ１１１，１１２および１１３が配置されている。
【００９０】
セレクタ１１１，１１２および１１３は、２入力セレクタにより構成され、一方の入力（０側）には、それぞれ正規信号ＩＮ１乃至ＩＮ３が入力される。もう一方の入力（１側）は、後段の組み合わせ回路７１の入力端子にベクタlminを入力するために、スタンバイ状態算出部１６により算出されたベクタlminに応じて、接地線（ＶＳＳ）および電源線（ＶＤＤ）のうちのいずれかに接続されている。なお、このベクタlminは、１ビット幅の設定値である。
【００９１】
セレクタ１１１−１は、正規信号ＩＮ１が入力される入力（０側）と接地線からベクタlminが入力される入力（１側）を有する。セレクタ１１１−１は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ１を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlminを選択し、選択された信号を、フリップフロップ７２−１に出力する。
【００９２】
セレクタ１１２−１は、正規信号ＩＮ２が入力される入力（０側）と電源線からベクタlminが入力される入力（１側）を有する。セレクタ１１２−１は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ２を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlmin（いまの場合、１）を選択し、選択された信号を、フリップフロップ７３−１に出力する。
【００９３】
セレクタ１１３−１は、正規信号ＩＮ３が入力される入力（０側）と接地線からベクタlminが入力される入力（１側）を有する。セレクタ１１３−１は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ３を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlmin（いまの場合、０）を選択し、選択された信号を、フリップフロップ７４−１に出力する。
【００９４】
セレクタ１１１−２は、組み合わせ回路７１−１から正規信号ＩＮ１が入力される入力（０側）と電源線からベクタlminが入力される入力（１側）を有する。セレクタ１１１−２は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ１を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlmin（いまの場合、１）を選択し、選択された信号を、フリップフロップ７２−２に出力する。
【００９５】
セレクタ１１２−２は、正規信号ＩＮ２が入力される入力（０側）と接地線からベクタlminが入力される入力（１側）を有する。セレクタ１１２−２は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ２を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlmin（いまの場合、０）を選択し、選択された信号を、フリップフロップ７３−２に出力する。
【００９６】
セレクタ１１３−２は、正規信号ＩＮ３が入力される入力（０側）と接地線からベクタlminが入力される入力（１側）を有する。セレクタ１１３−２は、スタンバイ信号ＳＴＢを、選択信号Ｓとして入力し、選択信号Ｓが「０（Ｌ）」のときには、正規信号ＩＮ３を選択し、選択信号Ｓが「１（Ｈ）」のときには、ベクタlmin（いまの場合、０）を選択し、選択された信号を、フリップフロップ７４−２に出力する。
【００９７】
また、図６の場合、スタンバイ信号線上のセレクタ１１１乃至１１３の前に、増幅器１１４−１しか図示されていないが、スタンバイ信号線上において、２段目以降の各セレクタ１１１乃至１１３の前には、増幅器１１４−１乃至１１４−ｎが配置され、２段目以降の各セレクタ１１１乃至１１３に入力されるスタンバイ信号ＳＴＢを増幅している。
【００９８】
次に、ＬＳＩ１０１の通常動作である信号処理について説明する。通常動作状態の場合、外部の制御回路は、ＬＳＩ１０１にスタンバイ信号ＳＴＢ（Ｌ）およびクロックＣＫ２を入力する。
【００９９】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、セレクタ１１１−１乃至１１３−１には、選択信号Ｓ（＝０）が入力されるので、セレクタ１１１−１乃至１１３−１は、正規信号ＩＮ１乃至ＩＮ３を選択入力し、選択入力された正規信号ＩＮ１乃至ＩＮ３を、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。フリップフロップ７２−１乃至７４−１は、外部の制御回路からのクロックＣＫ２の立ち上がりにラッチして、セレクタ１１１−１乃至１１３−１からの信号を、後段の組み合わせ回路７１−１の各入力端子に出力する。組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のセレクタ１１１−２乃至１１３−２に出力する。
【０１００】
セレクタ１１１−２乃至１１３−２には、増幅器１１４−１を介して、選択信号Ｓ（＝０）が入力されるので、セレクタ１１１−２乃至１１３−２は、信号を選択入力し、選択入力された信号を、フリップフロップ７２−２乃至７４−２にそれぞれ出力する。フリップフロップ７２−２乃至７４−２は、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、セレクタ１１１−２乃至１１３−２からの信号を、後段の図示せぬ組み合わせ回路７１−２の各入力端子に出力する。
【０１０１】
以降、後段のセレクタ１１１乃至１１３、フリップフロップ７２乃至７４および組み合わせ回路７１において、同様の処理が実行され、所定の信号処理された信号は、最後段の組み合わせ回路７１−ｎにより、ＬＳＩ１０１の外部に出力される。
【０１０２】
以上のようにして、通常の動作であるＬＳＩ１０１の所定の信号処理が実行される。
【０１０３】
次に、ＬＳＩ１０１のスタンバイ動作処理について説明する。スタンバイ状態になる場合、外部の制御回路は、ＬＳＩ１０１へのクロックＣＫ２の入力を止め、ＬＳＩ１０１にスタンバイ信号ＳＴＢ（Ｈ）を入力する。
【０１０４】
スタンバイ信号ＳＴＢ（Ｈ）に対応して、セレクタ１１１−１乃至１１３−１には、選択信号Ｓ（＝１）が入力されるので、セレクタ１１１−１乃至１１３−１は、接地線または電源線よりベクタlminを選択入力し、選択入力されたベクタlminを、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。フリップフロップ７２−１乃至７４−１は、これらの信号（ベクタlmin）を外部の制御回路からのクロックＣＫ２により取り込む。その後、クロックＣＫ２が止まるので、フリップフロップ７２−１乃至７４−１は、セレクタ１１１−１乃至１１３−１から入力されたベクタlminを保持する。これにより、スタンバイ状態において、スタンバイ状態算出部１６により算出されたベクタlminが、組み合わせ回路７１−１の各入力端子に入力される。
【０１０５】
それと同時に、セレクタ１１１−２乃至１１３−２には、増幅器１１４−１を介して、選択信号Ｓ（＝１）が入力されるので、セレクタ１１１−２乃至１１３−２は、ベクタlminを選択入力し、選択入力されたベクタlminを、フリップフロップ７２−２乃至７４−２にそれぞれ出力する。フリップフロップ７２−２乃至７４−２は、これらの信号（ベクタlmin）を外部の制御回路からのクロックＣＫ２により取り込む。その後、クロックＣＫ２が止まるので、フリップフロップ７２−２乃至７４−２は、セレクタ１１１−２乃至１１３−２から入力されたベクタlminを保持する。これにより、スタンバイ状態において、スタンバイ状態算出部１６により算出されたベクタlminが組み合わせ回路７１−２の各入力端子に入力される。
【０１０６】
以降、後段のセレクタ１１１乃至１１３、フリップフロップ７２乃至７４および組み合わせ回路７１においても、同様の処理が同時に実行されるが、繰り返しになるのでその説明を省略する。
【０１０７】
以上のように、各フリップフロップの前段に、セレクタを設置し、スタンバイ状態になるときに、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを各組み合わせ回路の各入力端子に入力するようにしたので、ＬＳＩ１０１のスタンバイリーク電流を低減することができる。
【０１０８】
さらに、ＬＳＩ１０１においては、図３のＬＳＩ５１のように、各組み合わせ回路７１に値をシフトさせる必要はないので、ＲＯＭカウンタや停止信号発生部などを必要とせず、構成が容易にできる。
【０１０９】
図７は、図２のＬＳＩ設計装置１により設計されたＬＳＩ１３１の構成例を示す。なお、図７のＬＳＩ１３１は、セレクタ１１１乃至１１３の一方の入力（１側）が、接地線（ＶＳＳ）または電源線（ＶＤＤ）の代わりに、ヒューズ回路が接続されている点を除いて、その他の構成は、上述した図６のＬＳＩ１０１と同様の構成である。
【０１１０】
したがって、セレクタ１１１−１乃至１１３−１は、２入力セレクタにより構成され、一方の入力（０側）には、正規信号ＩＮ１乃至ＩＮ３のいずれかが入力される。もう一方の入力（１側）は、後段の組み合わせ回路７１−１の各入力端子にベクタlminを入力するために、スタンバイ状態算出部１６により算出されたベクタlminに応じて、ブロウ（Blow,Cut）の有無が設定されたヒューズ回路１４１−１乃至１４３−１が接続されている。セレクタ１１１−２乃至１１３−２は、２入力セレクタにより構成され、一方の入力（０側）には、組み合わせ回路７１−１からの信号のいずれかが入力される。もう一方の入力（１側）は、後段の組み合わせ回路７１−２の各入力端子にベクタlminを入力するために、スタンバイ状態算出部１６により算出されたベクタlminに応じて、ブロウの有無が設定されたヒューズ回路１４１−２乃至１４３−２が接続されている（以下、これらを個々に区別する必要がない場合、単にヒューズ回路１４１乃至１４３と称する）。
【０１１１】
ヒューズ回路１４１乃至１４３は、ヒューズ素子に簡単なトランジスタ回路が付加されて構成されており、例えば、ブロウした場合には、Ｈ（１）を出力し、ブロウしない場合には、Ｌ（０）を出力するように設定されているため、ブロウの有無によって、最適なベクタlminの値を設定することができる。したがって、設計時には、ヒューズ回路１４１乃至１４３は、ブロウしないでおいて、ＬＳＩ１３１上にプロセスの状態を監視できる回路を予め搭載しておき、スタンバイリーク電流値の実測値が、設計時の値（スタンバイ状態算出部１６により算出されたベクタlmin）と異なったときに、必要な箇所のヒューズ回路１４１乃至１４３をブロウすることにより、ＬＳＩが設計された後でも、ベクタlminを適切な値に変更することができる。
【０１１２】
次に、ＬＳＩ１３１の通常動作の信号処理について説明する。通常動作状態の場合、外部の制御回路は、ＬＳＩ１３１にスタンバイ信号ＳＴＢ（Ｌ）およびクロックＣＫ２を入力する。
【０１１３】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、セレクタ１１１−１乃至１１３−１には、選択信号Ｓ（＝０）が入力されるので、セレクタ１１１−１乃至１１３−１は、正規信号ＩＮ１乃至ＩＮ３を選択入力し、選択入力された正規信号ＩＮ１乃至ＩＮ３を、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。フリップフロップ７２−１乃至７４−１は、外部の制御回路からのクロックＣＫ２の立ち上がりにラッチして、セレクタ１１１−１乃至１１３−１からの信号を、後段の組み合わせ回路７１−１の各入力端子に出力する。組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のセレクタ１１１−２乃至１１３−２に出力する。
【０１１４】
セレクタ１１１−２乃至１１３−２には、増幅器１１４−１を介して、選択信号Ｓ（＝０）が入力されるので、セレクタ１１１−２乃至１１３−２は、組み合わせ回路７１−１のからの信号を選択入力し、選択入力された信号を、フリップフロップ７２−２乃至７４−２にそれぞれ出力する。フリップフロップ７２−２乃至７４−２は、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、セレクタ１１１−２乃至１１３−２からの信号を、後段の図示せぬ組み合わせ回路７１−２の各入力端子に出力する。
【０１１５】
以降、後段のセレクタ１１１乃至１１３、フリップフロップ７２乃至７４および組み合わせ回路７１において、同様の処理が実行され、所定の信号処理された信号は、最後段の組み合わせ回路７１−ｎにより、ＬＳＩ１３１の外部に出力される。
【０１１６】
以上のようにして、通常の動作であるＬＳＩ１３１の所定の信号処理が実行される。
【０１１７】
次に、ＬＳＩ１３１のスタンバイ動作処理について説明する。スタンバイ状態になる場合、外部の制御回路は、ＬＳＩ１３１へのクロックＣＫ２の入力を止め、ＬＳＩ１３１にスタンバイ信号ＳＴＢ（Ｈ）を入力する。
【０１１８】
スタンバイ信号ＳＴＢ（Ｈ）に対応して、セレクタ１１１−１乃至１１３−１には、選択信号Ｓ（＝１）が入力されるので、セレクタ１１１−１乃至１１３−１は、ヒューズ回路１４１−１乃至１４３−１よりベクタlminを選択入力し、選択入力されたベクタlminを、フリップフロップ７２−１乃至７４−１にそれぞれ出力する。フリップフロップ７２−１乃至７４−１は、これらの信号（ベクタlmin）を外部の制御回路からのクロックＣＫ２により取り込む。その後、クロックＣＫ２が止まるので、フリップフロップ７２−１乃至７４−１は、セレクタ１１１−１乃至１１３−１から入力されたベクタlminを保持する。これにより、スタンバイ状態において、スタンバイ状態算出部１６により算出されたベクタlminが、組み合わせ回路７１−１の各入力端子に入力される。
【０１１９】
それと同時に、セレクタ１１１−２乃至１１３−２には、増幅器１１４−１を介して、選択信号Ｓ（＝１）が入力されるので、セレクタ１１１−２乃至１１３−２は、ヒューズ回路１４１−２乃至１４３−２よりベクタlminを選択入力し、選択入力されたベクタlminを、フリップフロップ７２−２乃至７４−２にそれぞれ出力する。フリップフロップ７２−２乃至７４−２は、これらの信号（ベクタlmin）を外部の制御回路からのクロックＣＫ２により取り込む。その後、クロックＣＫ２が止まるので、フリップフロップ７２−２乃至７４−２は、セレクタ１１１−２乃至１１３−２から入力されたベクタlminを保持する。これにより、スタンバイ状態において、スタンバイ状態算出部１６により算出されたベクタlminが、組み合わせ回路７１−２の各入力端子に入力される。
【０１２０】
以降、後段のセレクタ１１１乃至１１３、フリップフロップ７２乃至７４および組み合わせ回路７１においても、同様の処理が同時に実行されるが、繰り返しになるのでその説明は省略する。
【０１２１】
以上のように、各フリップフロップの前段に、ヒューズ回路付きのセレクタを設置し、スタンバイ状態になるときに、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを各組み合わせ回路の各入力端子に入力するようにしたので、ＬＳＩ１３１のスタンバイリーク電流を低減することができる。
【０１２２】
また、ＬＳＩ１３１においては、図６のＬＳＩ１０１と同様に、図３のＬＳＩ５１のように、各組み合わせ回路７１に値（ベクタlmin）をシフトさせる必要はないので、ＲＯＭカウンタや停止信号発生部などを必要とせず、構成が容易にできる。
【０１２３】
さらに、ＬＳＩ１３１上にプロセスの状態を監視できる回路を搭載しておき、スタンバイリーク電流値の実測値が、設計時の値（スタンバイ状態算出部１６により算出されたベクタlmin）と異なったときに、必要な箇所のヒューズ回路１４１乃至１４３をブロウすることにより、ＬＳＩ１３１が設計された後でも、ベクタlminを適切な値に設定することができる。
【０１２４】
図８は、図２のＬＳＩ設計装置１により設計されたＬＳＩ１７１の構成例を示す。なお、図８のＬＳＩ１７１は、後段の組み合わせ回路７１の各入力端子にベクタlminを入力するために、図６のセレクタ１１１乃至１１３を配置する代わりに、図６のフリップフロップ７２乃至７４を、フリップフロップ１８１乃至１８３に置き換えている点が、図６のＬＳＩ１０１と異なっている。また、図８の例においては、スタンバイ信号ＳＴＢの信号線上には、スタンバイ信号ＳＴＢを反転させるインバータ１８４が配置されている。
【０１２５】
ＬＳＩ１７１においては、組み合わせ回路７１−１の前段にフリップフロップ１８１−１乃至１８３−１が配置されている。また、図示せぬ組み合わせ回路７１−２の前段にフリップフロップ１８１−２乃至１８３−２が配置されている。以下、これらを個々に区別する必要がない場合、単にフリップフロップ１８１乃至１８３と称する。
【０１２６】
フリップフロップ１８１乃至１８３は、セット／リセット(set/reset)付きのＤ−フリップフロップにより構成される。フリップフロップ１８１乃至１８３は、後段の組み合わせ回路７１の各入力端子にベクタlminを入力するために、スタンバイ状態算出部１６により算出されたベクタlminに応じて、スタンバイ信号線と電源線（ＶＤＤ）が、セット(set)およびリセット(reset)のどちらかに接続されている。フリップフロップ１８１乃至１８３のセット(set)およびリセット(reset)には、スタンバイ信号線または電源線（ＶＤＤ）からの信号が反転して入力される。
【０１２７】
フリップフロップ１８１−１のリセットには、スタンバイ信号線が接続され、セットには、電源線が接続されている。したがって、通常動作状態において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｌ）が入力される場合、フリップフロップ１８１−１のリセットには、インバータ１８４を介して反転されたスタンバイ信号ＳＴＢが反転されて入力される（すなわち、反転されたスタンバイ信号ＳＴＢの反転信号（Ｌ）が入力される）ので、フリップフロップ１８１−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ１を組み合わせ回路７１−１の入力端子に出力する。一方、スタンバイ状態時において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｈ）が入力される場合、フリップフロップ１８１−１のリセットには、反転されたスタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されるので、フリップフロップ１８１−１は、リセット状態になり、ベクタlmin（いまの場合、０）を保持する。
【０１２８】
フリップフロップ１８２−１のセットには、スタンバイ信号線が接続され、リセットには、電源線が接続されている。したがって、通常動作状態において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｌ）が入力される場合、フリップフロップ１８２−１のセットには、反転されたスタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されるので、フリップフロップ１８２−１は、動作状態になり、クロックＣＫ２にラッチして、正規信号ＩＮ２を、組み合わせ回路７１−１の入力端子に出力する。一方、スタンバイ状態時において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｈ）が入力される場合、フリップフロップ１８２−１のセットには、反転されたスタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されるので、フリップフロップ１８２−１は、セット状態になり、ベクタlmin（いまの場合、１）を保持する。
【０１２９】
フリップフロップ１８３−１のリセットには、スタンバイ信号線が接続され、セットには、電源線が接続されている。したがって、通常動作状態において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｌ）が入力される場合、フリップフロップ１８３−１のリセットには、反転されたスタンバイ信号ＳＴＢの反転信号（Ｌ）が入力されるので、フリップフロップ１８３−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ３を組み合わせ回路７１−１の入力端子に出力する。一方、スタンバイ状態時において、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｈ）が入力される場合、フリップフロップ１８３−１のリセットには、反転されたスタンバイ信号ＳＴＢの反転信号（Ｈ）が入力されるので、フリップフロップ１８３−１は、リセット状態になり、ベクタlmin（いまの場合、０）を保持する。
【０１３０】
以上のように、スタンバイ信号に基づいて、フリップフロップ１８１−１乃至１８３−１には、スタンバイ状態算出部１６により算出されたベクタlminがそれぞれ保持される。これにより、スタンバイ状態において、組み合わせ回路７１−１の各入力端子に、ベクタlminが入力される。
【０１３１】
以下、同様に、フリップフロップ１８１−２のセットには、スタンバイ信号線が接続され、リセットには、電源線が接続されている。したがって、通常動作時、フリップフロップ１８１−２は、動作状態になり、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、組み合わせ回路７１−２の入力端子に出力する。一方、スタンバイ状態時、フリップフロップ１８１−２は、セット状態になり、ベクタlmin（いまの場合、１）を保持する。
【０１３２】
フリップフロップ１８２−２のリセットには、スタンバイ信号線が接続され、セットには、電源線が接続されている。したがって、通常動作時、フリップフロップ１８２−２は、動作状態になり、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、組み合わせ回路７１−２の入力端子に出力する。一方、スタンバイ状態時、フリップフロップ１８２−２は、リセット状態になり、ベクタlmin（いまの場合、０）を保持する。
【０１３３】
フリップフロップ１８３−２のリセットには、スタンバイ信号線が接続され、セットには、電源線が接続されている。したがって、通常動作時、フリップフロップ１８３−２は、動作状態になり、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、組み合わせ回路７１−２の入力端子に出力する。一方、スタンバイ状態時、フリップフロップ１８３−２は、リセット状態になり、ベクタlmin（いまの場合、０）を保持する。
【０１３４】
以上のように、スタンバイ信号に基づいて、フリップフロップ１８１−２乃至１８３−２には、スタンバイ状態算出部１６により算出されたベクタlminがそれぞれ保持される。これにより、スタンバイ状態において、組み合わせ回路７１−２の各入力端子に、ベクタlminが入力される。
【０１３５】
次に、ＬＳＩ１７１の通常動作である信号処理について説明する。通常動作状態の場合、外部の制御回路は、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｌ）およびクロックＣＫ２を入力する。
【０１３６】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８１−１乃至１８３−１のセットまたはリセットには、反転されたスタンバイ信号の反転信号（Ｌ）が入力されるので、フリップフロップ１８１−１乃至１８３−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ１乃至ＩＮ３を、後段の組み合わせ回路７１−１の各入力端子に出力する。組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ１８１−２乃至１８３−２に出力する。
【０１３７】
フリップフロップ１８１−２乃至１８３−２のセットまたはリセットには、増幅器１１４−１を介して、反転スタンバイ信号の反転信号（Ｌ）が入力されるので、フリップフロップ１８１−２乃至１８３−２は、動作状態になり、外部の制御回路から増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、後段の組み合わせ回路７１−２の各入力端子に出力する。
【０１３８】
以降、後段のフリップフロップ１８１乃至１８３および組み合わせ回路７１において、同様の処理が実行され、所定の信号処理された信号は、最後段の組み合わせ回路７１−ｎによりＬＳＩ１７１の外部に出力される。
【０１３９】
以上のようにして、通常の動作であるＬＳＩ１７１の所定の信号処理が実行される。
【０１４０】
次に、ＬＳＩ１７１のスタンバイ動作処理について説明する。スタンバイ状態になる場合、外部の制御回路は、ＬＳＩ１７１へのクロックＣＫ２の入力を止め、ＬＳＩ１７１にスタンバイ信号ＳＴＢ（Ｈ）を入力する。
【０１４１】
外部の制御回路からのスタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８１−１乃至１８３−１のセットまたはリセットには、インバータ１８４により反転されたスタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８１−１乃至１８３−１は、セット状態またはリセット状態になり、それぞれ、対応するベクタlmin（０または１）を保持する。
【０１４２】
それと同時に、フリップフロップ１８１−２乃至１８３−２のセットまたはリセットには、増幅器１１４−１を介して、反転されたスタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８１−２乃至１８３−２は、セット状態またはリセット状態になり、それぞれ、対応するベクタlmin（０または１）を保持する。
【０１４３】
具体的には、フリップフロップ１８１−１のリセットには、反転されたスタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８１−１は、リセット状態になり、対応するベクタlmin（０）を保持する。フリップフロップ１８２−１のセットには、反転されたスタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８２−１は、セット状態になり、対応するベクタlmin（１）を保持する。フリップフロップ１８３−１のリセットには、反転されたスタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８３−１は、リセット状態になり、対応するベクタlmin（０）を保持する。これにより、スタンバイ状態において、スタンバイ状態算出部１６により算出されたベクタlminが、組み合わせ回路７１−１の各入力端子に入力される。
【０１４４】
それと同時に、フリップフロップ１８１−２のセットには、反転スタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８１−２は、セット状態になり、対応するベクタlmin（１）を保持する。フリップフロップ１８２−２のリセットには、反転スタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８２−２は、リセット状態になり、対応するベクタlmin（０）を保持する。フリップフロップ１８３−２のリセットには、反転スタンバイ信号の反転信号（Ｈ）が入力されるので、フリップフロップ１８３−２は、リセット状態になり、対応するベクタlmin（０）を保持する。これにより、後段の組み合わせ回路７１−２の各入力端子には、予め算出されたベクタlminが入力される。
【０１４５】
以降、後段のフリップフロップ１８１乃至１８３および組み合わせ回路７１においても、同様の処理が同時に実行されるが、繰り返しになるのでその説明を省略する。
【０１４６】
以上のように、各組み合わせ回路の前段に、セット／リセット付きのフリップフロップを配置し、スタンバイ状態になるときに、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを、各組み合わせ回路の各入力端子に入力するようにしたので、ＬＳＩ１７１のスタンバイリーク電流を低減することができる。
【０１４７】
また、ＬＳＩ１７１においては、図６のＬＳＩ１０１の場合と同様に、図３のＬＳＩ５１のように、各組み合わせ回路７１に値（ベクタlmin）をシフトさせる必要はないので、ＲＯＭカウンタや停止信号発生部などを必要とせず、構成が容易にできる。
【０１４８】
なお、上記説明においては、組み合わせ回路の前段に、セット／リセット付きのフリップフロップを配置するようにしたが、セット付きのフリップフロップ、またはリセット付きのフリップフロップを配置するようにしてもよい。
【０１４９】
図９は、図２のＬＳＩ設計装置１により設計されたＬＳＩ２０１の構成例を示す。なお、図９のＬＳＩ２０１は、スタンバイ信号線上にインバータ１８４が配置されていない点、並びに、フリップフロップ１８１乃至１８３のセットおよびリセットに、ＮＡＮＤゲートおよび図７のヒューズ回路１４１乃至１４３が接続されている点を除いて、その他の構成は、上述した図８のＬＳＩ１７１と同様の構成である。
【０１５０】
図９の例においては、スタンバイ状態算出部１６により算出されたベクタlminに応じて、各フリップフロップ１８１乃至１８３に接続されるＮＡＮＤゲートおよびヒューズ回路１４１乃至１４３の構成が設定されている。
【０１５１】
フリップフロップ１８１−１のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４１−１からの信号が入力される入力の２入力のＮＡＮＤゲート２１１−１が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４１−１からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１２−１が接続されている。フリップフロップ１８１−１のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１１−１および２１２−１からの信号がそれぞれ反転して入力される。
【０１５２】
フリップフロップ１８２−１のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４２−１からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１３−１が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４２−１からの信号が入力される入力の２入力のＮＡＮＤゲート２１４−１が接続されている。フリップフロップ１８２−１のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１３−１および２１４−１からの信号がそれぞれ反転して入力される。
【０１５３】
フリップフロップ１８３−１のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４３−１からの信号が入力される入力の２入力のＮＡＮＤゲート２１５−１が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４２−１からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１６−１が接続されている。フリップフロップ１８３−１のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１５−１および２１６−１からの信号がそれぞれ反転して入力される。
【０１５４】
フリップフロップ１８１−２のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４１−２からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１１−２が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４１−２からの信号が入力される入力の２入力のＮＡＮＤゲート２１２−２が接続されている。フリップフロップ１８１−２のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１１−２および２１２−２からの信号がそれぞれ反転して入力される。
【０１５５】
フリップフロップ１８２−２のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４２−２からの信号が入力される入力の２入力のＮＡＮＤゲート２１３−２が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４２−２からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１４−２が接続されている。フリップフロップ１８２−２のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１３−２および２１４−２からの信号がそれぞれ反転して入力される。
【０１５６】
フリップフロップ１８３−２のセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４３−２からの信号が入力される入力の２入力のＮＡＮＤゲート２１５−２が接続され、リセットには、スタンバイ信号ＳＴＢが入力される入力と、ヒューズ回路１４３−２からの信号が反転して入力される入力の２入力のＮＡＮＤゲート２１６−２が接続されている。フリップフロップ１８３−２のセット(set)およびリセット(reset)には、ＮＡＮＤゲート２１５−２および２１６−２からの信号がそれぞれ反転して入力される。
【０１５７】
以上のように、セット／リセット付きのフリップフロップにより予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを、各組み合わせ回路の各入力端子に入力するＬＳＩにおいても、ヒューズ回路１４１乃至１４３をフリップフロップ１８１乃至１８３に付加することにより、ＬＳＩ２０１上にプロセスの状態を監視できる回路を搭載しておき、スタンバイリーク電流値の実測値が、設計時の値（スタンバイ状態算出部１６により算出されたベクタlmin）と異なったときに、ブロウの有無を変更することができるの必要な箇所のヒューズ回路１４１乃至１４３をブロウすることにより、ＬＳＩ２０１が設計された後でも、ベクタlminを適切な値に設定することができる。
【０１５８】
次に、ＬＳＩ２０１の通常動作の信号処理について説明する。通常動作状態の場合、外部の制御回路は、ＬＳＩ２０１にスタンバイ信号ＳＴＢ（Ｌ）およびクロックＣＫ２を入力する。なお、いまの場合、すべてのヒューズ回路１４１−１乃至１４３−１、および１４１−２乃至１４３−２がブロウされていない（すなわち、Ｌ（０）を出力する）とする。
【０１５９】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８１−１のセット側のＮＡＮＤゲート２１１−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４１−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１１−１は、フリップフロップ１８１−１のセットに１を出力する。フリップフロップ１８１−１のリセット側のＮＡＮＤゲート２１２−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４１−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１２−１は、フリップフロップ１８１−１のリセットに１を出力する。すなわち、フリップフロップ１８１−１のセットおよびリセットには、０が入力されるため、フリップフロップ１８１−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ１を、後段の組み合わせ回路７１−１の入力端子に出力する。
【０１６０】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８２−１のセット側のＮＡＮＤゲート２１３−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４２−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１３−１は、フリップフロップ１８２−１のセットに１を出力する。フリップフロップ１８２−１のリセット側のＮＡＮＤゲート２１４−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４２−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１４−１は、フリップフロップ１８２−１のリセットに１を出力する。すなわち、フリップフロップ１８２−１のセットおよびリセットには、０が入力されるため、フリップフロップ１８２−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ２を、後段の組み合わせ回路７１−１の入力端子に出力する。
【０１６１】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８３−１のリセット側のＮＡＮＤゲート２１５−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４３−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１５−１は、フリップフロップ１８３−１のセットに１を出力する。フリップフロップ１８３−１のリセット側のＮＡＮＤゲート２１６−１には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４３−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１６−１は、フリップフロップ１８３−１のリセットに１を出力する。すなわち、フリップフロップ１８３−１のセットおよびリセットには、０が入力されるため、フリップフロップ１８３−１は、動作状態になり、クロックＣＫ２の立ち上がりにラッチして、正規信号ＩＮ３を、後段の組み合わせ回路７１−１の入力端子に出力する。
【０１６２】
組み合わせ回路７１−１は、入力された信号に所定の信号処理を実行し、後段のフリップフロップ１８１−２乃至１８３−２に出力する。
【０１６３】
後段のフリップフロップ１８１−２乃至１８３−２には、スタンバイ信号ＳＴＢ（Ｌ）が増幅器１１４−１を介して入力される。これに対応して、フリップフロップ１８１−２のセット側のＮＡＮＤゲート２１１−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４１−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１１−２は、フリップフロップ１８１−２のセットに１を出力する。フリップフロップ１８１−２のリセット側のＮＡＮＤゲート２１２−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４１−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１２−２は、フリップフロップ１８１−２のリセットに１を出力する。すなわち、フリップフロップ１８１−２のセットおよびリセットには、０が入力されるため、フリップフロップ１８１−２は、動作状態になり、増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、図示せぬ後段の組み合わせ回路７１−２の入力端子に出力する。
【０１６４】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８２−２のセット側のＮＡＮＤゲート２１３−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４２−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１３−２は、フリップフロップ１８２−２のセットに１を出力する。フリップフロップ１８２−２のリセット側のＮＡＮＤゲート２１４−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４２−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１４−２は、フリップフロップ１８２−２のリセットに１を出力する。すなわち、フリップフロップ１８２−２のセットおよびリセットには、０が入力されるため、フリップフロップ１８２−２は、動作状態になり、増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、後段の組み合わせ回路７１−２の入力端子に出力する。
【０１６５】
スタンバイ信号ＳＴＢ（Ｌ）に対応して、フリップフロップ１８３−２のセット側のＮＡＮＤゲート２１５−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４３−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１５−２は、フリップフロップ１８３−２のセットに１を出力する。フリップフロップ１８３−２のリセット側のＮＡＮＤゲート２１６−２には、スタンバイ信号ＳＴＢ（Ｌ）とヒューズ回路１４３−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１６−２は、フリップフロップ１８３−２のリセットに１を出力する。すなわち、フリップフロップ１８３−２のセットおよびリセットには、０が入力されるため、フリップフロップ１８３−２は、動作状態になり、増幅器７６−１を介して入力されるクロックＣＫ２の立ち上がりにラッチして、組み合わせ回路７１−１からの信号を、後段の組み合わせ回路７１−２の入力端子に出力する。
【０１６６】
以降、後段のフリップフロップ１８１乃至１８３および組み合わせ回路において、同様の処理が実行され、所定の信号処理された信号は、最後段の組み合わせ回路７１−ｎによりＬＳＩ２０１の外部に出力される。
【０１６７】
以上のようにして、通常の動作であるＬＳＩ２０１の所定の信号処理が実行される。
【０１６８】
次に、ＬＳＩ２０１のスタンバイ動作処理について説明する。スタンバイ状態になる場合、外部の制御回路は、ＬＳＩ２０１へのクロックＣＫ２の入力を止め、ＬＳＩ２０１にスタンバイ信号ＳＴＢ（Ｈ）を入力する。
【０１６９】
外部の制御回路からのスタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８１−１のセット側のＮＡＮＤゲート２１１−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４１−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１１−１は、フリップフロップ１８１−１のセットに１を出力する。フリップフロップ１８１−１のリセット側のＮＡＮＤゲート２１２−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４１−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１２−１は、フリップフロップ１８１−１のリセットに０を出力する。すなわち、フリップフロップ１８１−１のセットには、０が入力され、リセットには、１が入力されるため、フリップフロップ１８１−１は、リセット状態になり、ベクタlmin（０）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−１の入力端子にベクタlmin（０）が入力される。
【０１７０】
スタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８２−１のセット側のＮＡＮＤゲート２１３−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４２−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１３−１は、フリップフロップ１８２−１のセットに０を出力する。フリップフロップ１８２−１のリセット側のＮＡＮＤゲート２１４−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４２−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１４−１は、フリップフロップ１８２−１のリセットに１を出力する。すなわち、フリップフロップ１８２−１のセットには、１が入力され、リセットには、０が入力されるため、フリップフロップ１８２−１は、セット状態になり、ベクタlmin（１）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−１の入力端子にベクタlmin（１）が入力される。
【０１７１】
さらに、スタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８３−１のセット側のＮＡＮＤゲート２１５−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４３−１からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１５−１は、フリップフロップ１８３−１のセットに１を出力する。フリップフロップ１８３−１のリセット側のＮＡＮＤゲート２１６−１には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４３−１からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１６−１は、フリップフロップ１８３−１のリセットに０を出力する。すなわち、フリップフロップ１８３−１のセットには、０が入力され、リセットには、１が入力されるため、フリップフロップ１８３−１は、リセット状態になり、ベクタlmin（０）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−１の入力端子にベクタlmin（０）が入力される。
【０１７２】
また、以上の処理と同時に、増幅器１１４−１を介して入力されるスタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８１−２のセット側のＮＡＮＤゲート２１１−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４１−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１１−２は、フリップフロップ１８１−２のセットに０を出力する。フリップフロップ１８１−２のリセット側のＮＡＮＤゲート２１２−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４１−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１２−２は、フリップフロップ１８１−２のリセットに１を出力する。すなわち、フリップフロップ１８１−２のセットには、１が入力され、リセットには、０が入力されるため、フリップフロップ１８１−２は、セット状態になり、ベクタlmin（１）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−２の入力端子にベクタlmin（１）が入力される。
【０１７３】
増幅器１１４−１を介して入力されるスタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８２−２のセット側のＮＡＮＤゲート２１３−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４２−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１３−２は、フリップフロップ１８２−２のセットに１を出力する。フリップフロップ１８２−２のリセット側のＮＡＮＤゲート２１４−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４２−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１４−２は、フリップフロップ１８２−２のリセットに０を出力する。すなわち、フリップフロップ１８２−２のセットには、０が入力され、リセットには、１が入力されるため、フリップフロップ１８２−２は、リセット状態になり、ベクタlmin（０）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−２の入力端子にベクタlmin（０）が入力される。
【０１７４】
さらに、増幅器１１４−１を介して入力されるスタンバイ信号ＳＴＢ（Ｈ）に対応して、フリップフロップ１８３−２のセット側のＮＡＮＤゲート２１５−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４３−２からの信号Ｌ（０）が入力されるので、ＮＡＮＤゲート２１５−２は、フリップフロップ１８３−２のセットに１を出力する。フリップフロップ１８３−２のリセット側のＮＡＮＤゲート２１６−２には、スタンバイ信号ＳＴＢ（Ｈ）とヒューズ回路１４３−２からの反転信号Ｈ（１）が入力されるので、ＮＡＮＤゲート２１６−２は、フリップフロップ１８３−２のリセットに０を出力する。すなわち、フリップフロップ１８３−２のセットには、０が入力され、リセットには、１が入力されるため、フリップフロップ１８３−２は、リセット状態になり、ベクタlmin（０）を保持する。これにより、スタンバイ状態において、後段の組み合わせ回路７１−２の入力端子にベクタlmin（０）が入力される。
【０１７５】
以降、後段のフリップフロップ１８１乃至１８３において、同時に、同様の処理が同時に実行され、後段の組み合わせ回路７１の各入力端子に、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminが入力される。
【０１７６】
以上のように、各組み合わせ回路の前段に、ヒューズ回路、およびセット／リセット付きのフリップフロップを配置し、スタンバイ状態になるときに、予め算出されたリーク電流を小さくする（適した状態にする）ベクタlminを各組み合わせ回路の各入力端子に入力するようにしたので、ＬＳＩ２０１のスタンバイリーク電流を低減することができる。
【０１７７】
また、ＬＳＩ２０１においては、図６のＬＳＩ１０１の場合と同様に、図３のＬＳＩ５１のように、各組み合わせ回路７１に値（ベクタlmin）をシフトさせる必要はないので、ＲＯＭカウンタや停止信号発生部などを必要とせず、構成が容易にできる。
【０１７８】
さらに、ＬＳＩ２０１上にプロセスの状態を監視できる回路を搭載しておき、スタンバイリーク電流値の実測値が、設計時の値（スタンバイ状態算出部１６により算出されたベクタlmin）と異なったときに、必要な箇所のヒューズ回路１４１乃至１４３をブロウすることにより、そのヒューズ回路が接続されているフリップフロップのスタンバイ状態でのセット状態とリセット状態を反転させることができる。したがって、ＬＳＩ２０１が設計された後でも、ベクタlminを適切な値に設定することができる。
【０１７９】
次に、図１０のフローチャートを参照して、図２のＬＳＩ設計装置１の回路設計処理を説明する。
【０１８０】
ＲＴＬ設計部１１は、ステップＳ１において、設計仕様書などに基づいて、生成するＬＳＩの機能ブロック内部の構造と動作を決定する機能設計を行い、ＲＴＬ記述を表現し、表現されたＲＴＬ記述を論理合成部１２に出力し、ステップＳ２に進む。論理合成部１２は、ステップＳ２において、論理合成ツールを用いて、ＲＴＬ設計部１１からのＲＴＬ記述を入力として、セルレベルのネットリスト（接続情報）を生成し、生成されたセルレベルのネットリストを、スキャン挿入部１３に出力し、ステップＳ３に進む。
【０１８１】
スキャン挿入部１３は、ステップＳ３において、専用ツールを用いて、論理合成部１２により生成されたセルレベルのネットリストに、スキャンチェーン用のスキャンＦ／Ｆを挿入したネットリストを生成し、生成されたネットリストを、スタンバイ状態算出部１６および回路付加部１７に出力し、ステップＳ４に進む。
【０１８２】
スタンバイ状態算出部１６は、ステップＳ４において、リーク算出セルライブラリ２１を用いて、図３、図５乃至図９を参照して上述したＬＳＩの回路構成に基づいた回路をそれぞれ生成し、ステップＳ５に進む。すなわち、スタンバイ状態算出部１６は、ネットリストの組み合わせ回路がスタンバイ状態になるときに、組み合わせ回路の入力端子に所定の値（ベクタlmin）を入力するための回路（入力回路）を生成する。
【０１８３】
スタンバイ状態算出部１６は、ステップＳ５において、スキャン挿入部１３からのネットリストに、生成された回路が付加された場合に、ネットリストの組み合わせ回路の入力端子にどのような値を入力する（どのような状態にする）と、スタンバイ状態における各段の組み合わせ回路のリーク電流が小さくなるかに基づいて、スタンバイ状態になるとき、組み合わせ回路の前段のフリップフロップに入力される設定値（ベクタlmin）を、生成された回路毎に算出する。すなわち、スタンバイ状態算出部１６は、各段の組み合わせ回路のリーク電流が小さくなるように、組み合わせ回路の前段のフリップフロップの設定値（ベクタlmin）を、生成された回路毎に算出し、ステップＳ６に進む。
【０１８４】
ユーザは、算出された設定値（ベクタlmin）などを参照して、入力部１４を操作して、図３、図５乃至図９のＬＳＩの回路構成に基づいて生成された回路の中から、適するものを選択する。これに対応して、入力部１４は、ユーザにより選択された回路の指示を、スタンバイ状態算出部１６に供給する。スタンバイ状態算出部１６は、ステップＳ６において、ユーザの指示に基づいて、スキャン挿入部１３により生成されたネットリストに付加する回路を選択し、選択された回路および算出された設定値（ベクタlmin）を、回路付加部１７に出力し、ステップＳ７に進む。
【０１８５】
回路付加部１７は、ステップＳ７において、スタンバイ状態算出部１６により算出されたフリップフロップの設定値（ベクタlmin）に基づいて、スキャン挿入部１３により生成されたネットリストに、スタンバイ状態算出部１６により生成された所定の回路を付加し、所定の回路が付加されたネットリストを、シミュレーション部１８に出力し、ステップＳ８に進む。
【０１８６】
シミュレーション部１８は、ステップＳ８において、論理シミュレータを用いて、回路付加部１７からのネットリストのゲートレベルの実遅延動作検証を行い、ステップＳ９に進み、さらに、タイミングシミュレータを用いて、ネットリストのゲートレベルの最高動作周波数やセットアップタイムとホールドタイムの検証を行い、検証されたネットリストを配置配線部１９に出力し、ステップＳ１０に進む。
【０１８７】
配置配線部１９は、ステップＳ１０において、シミュレーション部１８により検証されたネットリストを用いて、ＬＳＩの配置を設定し、設定された配置に基づいて、セルの詳細な配置を実行する。そして、配置配線部１９は、配置されたセル間を配線し、ＬＳＩを設計し、ＬＳＩ設計処理を終了する。
【０１８８】
以上のように、スタンバイ状態になるときに、組み合わせ回路の入力端子の状態に基づいて予め算出されたリーク電流を小さくする（適した状態にする）最適な設定値であるベクタlminを、組み合わせ回路の入力端子に入力する回路が付加されて、ＬＳＩが生成される。これにより、特別なプロセスがなくても、標準ロジックプロセスで、容易に、効率的にスタンバイリーク電流を低減したＬＳＩが設計される。
【０１８９】
このようにして設計されたＬＳＩは、同じプロセス、同じセルライブラリ、同じ電源電圧などの条件下でも、スタンバイ時の入力端子の状態に何も注意を払っていない従来の場合よりも、ＬＳＩのスタンバイリーク電流を低減することができる。
【０１９０】
さらに、図７のＬＳＩ１３１や図９のＬＳＩ２０１のように、ヒューズ回路が用いられた場合には、設計されたＬＳＩがシミュレーション時と異なった場合に、フリップフロップに入力される値を変更することができるので、プロセスがばらついた場合などに柔軟に対応することができる。
【０１９１】
なお、上記説明においては、３ビット幅の信号を処理するＬＳＩを設計する場合について説明したが、信号の幅は、これに限定されず、１ビット幅の信号、または、３ビット幅よりも大きい幅の８ビット幅の信号であってもよい。また、ＬＳＩの構成を、ｎ段としたが、段数も制限されることなく、何段としてもよい。
【０１９２】
また、上記説明において、図３、図５乃至図９のＬＳＩには、クロックまたはスタンバイ信号を増幅するための増幅器を配置するように説明したが、何個配置されていてもよく、また、増幅器は必ずしも必要ではないため、配置されていなくてもよい。
【０１９３】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。この場合、例えば、図２のＬＳＩ設計装置１は、図１１に示されるようなＬＳＩ設計装置３０１により構成される。
【０１９４】
図１１において、ＣＰＵ（Central Processing Unit）３１１は、ＲＯＭ(Read Only Memory) ３１２に記憶されているプログラム、または、記憶部３１８からＲＡＭ（Random Access Memory）３１３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ３１３にはまた、ＣＰＵ３１１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【０１９５】
ＣＰＵ３１１、ＲＯＭ３１２、およびＲＡＭ３１３は、バス３１４を介して相互に接続されている。このバス３１４にはまた、入出力インタフェース３１５も接続されている。
【０１９６】
入出力インタフェース３１５には、キーボード、マウスなどよりなる入力部３１６、ＣＲＴ(Cathode Ray Tube)，ＬＣＤ（Liquid Crystal Display）などよりなるディスプレイ、並びにスピーカなどよりなる出力部３１７、ハードディスクなどより構成される記憶部３１８、モデム、ターミナルアダプタなどより構成される通信部３１９が接続されている。通信部３１９は、図示しないネットワークを介しての通信処理を行う。
【０１９７】
入出力インタフェース３１５にはまた、必要に応じてドライブ３２０が接続され、磁気ディスク３２１、光ディスク３２２、光磁気ディスク３２３、或いは半導体メモリ３２４などが適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部３１８にインストールされる。
【０１９８】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０１９９】
この記録媒体は、図１１に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク３２１（フレキシブルディスクを含む）、光ディスク３２２（CD-ROM(Compact Disk-Read Only Memory)，ＤＶＤ(Digital Versatile Disk)を含む）、光磁気ディスク３２３（MD(Mini-Disk)（商標）を含む）、もしくは半導体メモリ３２４などよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭ３１２や、記憶部３１８に含まれるハードディスクなどで構成される。
【０２００】
なお、本明細書において、フローチャートに示されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０２０１】
【図１】２入力ＮＡＮＤゲートの入力端子別リーク電流を説明する図である。
【図２】本発明のＬＳＩ設計装置の構成例を示すブロック図である。
【図３】図２のＬＳＩ設計装置により設計されたＬＳＩの構成例を示す図である。
【図４】図３のＬＳＩの動作を説明するタイミングチャートである。
【図５】図３のＬＳＩの他の構成例を示す図である。
【図６】図２のＬＳＩ設計装置により設計されたＬＳＩの他の構成例を示す図である。
【図７】図２のＬＳＩ設計装置により設計されたＬＳＩのさらに他の構成例を示す図である。
【図８】図２のＬＳＩ設計装置により設計されたＬＳＩの他の構成例を示す図である。
【図９】図２のＬＳＩ設計装置により設計されたＬＳＩのさらに他の構成例を示す図である。
【図１０】図２のＬＳＩ設計装置の回路設計処理を説明するフローチャートである。
【図１１】本発明のＬＳＩ設計装置の他の構成例を示すブロック図である。
【符号の説明】
【０２０２】
１  ＬＳＩ設計装置，１１  ＲＴＬ設計部，１２  論理合成部，１３  スキャン挿入部，１６  スタンバイ状態算出部，１７  回路付加部，２１  リーク算出用セルライブラリ，５１  ＬＳＩ，６１  論理回路，６２  クロック発生部，６３  ＲＯＭカウンタ，６４  停止信号発生部，７１−１乃至７１−３  組み合わせ回路，１０１  ＬＳＩ，１１１−１，１１１−２  セレクタ，１１２−１，１１２−２  セレクタ  １１３−１，１１３−２  セレクタ，１３１  ＬＳＩ，１４１−１，１４１−２  ヒューズ回路，１４２−１，１４２−２  ヒューズ回路，１４３−１，１４３−２  ヒューズ回路，１７１  ＬＳＩ，１８１−１，１８１−２フリップフロップ，１８２−１，１８２−２フリップフロップ，１８３−１，１８３−２フリップフロップ，２０１  ＬＳＩ
【図１】
2005086215.tif 000003
【図２】
2005086215.tif 000004
【図３】
2005086215.tif 000005
【図４】
2005086215.tif 000006
【図５】
2005086215.tif 000007
【図６】
2005086215.tif 000008
【図７】
2005086215.tif 000009
【図８】
2005086215.tif 000010
【図９】
2005086215.tif 000011
【図１０】
2005086215.tif 000012
【図１１】
2005086215.tif 000013