(57)【要約】プログラマブルロジックデバイス（ＰＬＤ）は、遅延回路およびボディバイアスジェネレータを含む。遅延回路は、ＰＬＤにおけるユーザー回路のインプリメントの遅延を表すように構成された遅延回路を有する。ボディバイアスジェネレータは、ユーザー回路内のトランジスタのボディバイアスを調整するように構成される。ボディバイアスジェネレータは、遅延回路の信号伝播遅延から引き出されたレベルに応答し、トランジスタのボディバイアスを調整する。
2007538474.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルロジックデバイス（ＰＬＤ）であって、
遅延回路であって、該プログラマブルロジックデバイス（ＰＬＤ）においてインプリメントされるユーザー回路の遅延を表すように構成された遅延を有する遅延回路と、
ボディバイアスジェネレータであって、該遅延回路の伝播遅延から引き出されたレベルに応答する該ユーザー回路内のトランジスタのボディバイアスを調整するように構成されたボディバイアスジェネレータと
を備える、プログラマブルロジックデバイス（ＰＬＤ）。
【請求項２】
前記遅延回路は、組み合わせロジックを備える、請求項１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３】
前記遅延回路は、少なくとも一つのロジック遅延要素および少なくとも一つのルーティング遅延要素を備える、請求項１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４】
前記少なくとも一つのロジック遅延要素および前記少なくとも一つの遅延要素は、前記プログラマブルロジックデバイス（ＰＬＤ）内のプログラマブル回路網を使用してインプリメントされる、請求項３に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項５】
位相比較器であって、前記遅延回路の入力に印加される基準信号に応答する該遅延回路の出力信号の位相と該基準信号の位相を比較するように構成された位相比較器をさらに備える、請求項１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項６】
前記比較器は第１の出力信号および第２の出力信号を供給するようにさらに構成された、請求項５に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項７】
前記第１の出力信号に応答して、前記ボディバイアスジェネレータは、前記トランジスタの動作をスピードアップするように該トランジスタの該ボディバイアスを調整する、請求項６に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項８】
前記第２の出力信号に応答して、前記ボディバイアスジェネレータは、前記トランジスタの動作をスローダウンするように該トランジスタの該ボディバイアスを調整する、請求項６に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項９】
前記遅延回路は、構成可能遅延回路を備える、請求項５に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１０】
前記構成可能遅延回路の前記伝播遅延は、構成可能である、請求項９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１１】
前記ユーザー回路は、少なくとも一つのプログラマブルロジック要素および少なくとも一つのプログラマブル相互接続要素を備える、請求項１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１２】
プログラマブルロジックデバイス（ＰＬＤ）であって、
該プログラマブルロジックデバイス（ＰＬＤ）においてインプリメントされるユーザー回路の伝播遅延を表す遅延を生成するための手段と、
該生成された遅延に従って少なくとも一つの信号を引き出すための手段と、
該少なくとも一つの信号に応答して該ユーザー回路にあるトランジスタのボディバイアスをプログラムするための手段と
を備える、プログラマブルロジックデバイス（ＰＬＤ）。
【請求項１３】
前記ユーザー回路の前記トランジスタは、プログラマブルロジック要素内にある、請求項１２に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１４】
前記ユーザー回路の前記トランジスタは、プログラマブル相互接続要素内にある、請求項１２に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１５】
前記遅延を生成するための手段によって生成される該遅延は調整可能である、請求項１２に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１６】
前記遅延の調整は、前記少なくとも一つの信号における変化を引き起こす、請求項１５に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１７】
少なくとも一つの信号を引き出すための前記手段は、前記トランジスタの前記ボディバイアスをプログラムするための該手段が該トランジスタをスピードアップさせるようにして、該少なくとも一つの信号を引き出す、請求項１６に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１８】
少なくとも一つの信号を引き出すための前記手段は、前記トランジスタの前記ボディバイアスをプログラムするための該手段が該トランジスタをスローダウンさせるようにして、該少なくとも一つの信号を引き出す、請求項１６に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項１９】
プログラマブルロジックデバイス（ＰＬＤ）であって、
基準トランジスタであって、該プログラマブルロジックデバイス（ＰＬＤ）における回路に関係した電流を供給するように構成された該基準トランジスタと、
電流測定回路であって、該基準トランジスタによって供給された該電流を測定し、測定された電流信号を供給するように構成された該測定回路と、
ボディバイアスジェネレータであって、該測定された電流信号からの少なくとも一つのボディバイアス信号を引き出すように構成され、該ボディバイアスジェネレータは、該少なくとも一つのボディバイアス信号を該プログラマブルロジックデバイス（ＰＬＤ）における回路に供給するようにさらに構成される該ボディバイアスジェネレータと
を備える、プログラマブルロジックデバイス（ＰＬＤ）。
【請求項２０】
前記電流測定回路および前記ボディバイアスジェネレータに結合された比較器であって、該比較器は、前記測定された電流信号を基準信号と比較することによって、信号を引き出すように構成され、該比較器は、該信号を該ボディバイアスジェネレータへ供給するようにさらに構成された比較器
をさらに備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２１】
前記比較器と前記ボディバイアスジェネレータとの間において結合されたフィルタをさらに備える、請求項２０に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２２】
前記フィルタは、積分器を備える、請求項２１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２３】
前記電流測定回路は、電流ミラーを備え、該電流ミラーは、前記基準トランジスタによって供給された前記電流を増幅し、増幅された電流を供給するように構成された、請求項２０に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２４】
前記測定回路は、電流計数回路をさらに備え、該電流計数回路は、前記増幅された電流を測定するように構成される、請求項２３に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２５】
前記比較器は、構成可能な比較器を備える、請求項２０に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２６】
前記電流測定回路および前記ボディバイアスジェネレータに結合された第１および第２の比較器であって、該第１および該第２の比較器は、前記測定された電流信号を該第１および該第２の基準信号と比較することによって一対の信号を引き出すように構成され、該第１および該第２の比較器は、該一対の信号を該ボディバイアスジェネレータへ供給するようにさらに構成された第１および第２の比較器
をさらに備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２７】
前記第１および前記第２の電流基準信号は、それぞれ、より低いリーク値およびより高いリーク値に対応する、請求項２０に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２８】
前記第１および第２の比較器に結合されたカウンタであって、該カウンタは、該第１および該第２の比較器によって供給される一対の信号に応答しカウントするように構成され、該カウンタは、カウント値を前記ボディバイアスジェネレータへ供給するようにさらに構成されたカウンタ
をさらに備える、請求項２７に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項２９】
前記第１の比較器は、構成可能な比較器を備え、前記第２の比較器は、構成可能な比較器を備える、請求項２８に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３０】
前記プログラマブルロジックデバイス（ＰＬＤ）内の前記回路は、プログラマブルロジックを備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３１】
前記プログラマブルロジックデバイス（ＰＬＤ）内の前記回路は、プログラマブルロジック相互接続を備える、請求項３０に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３２】
前記測定された電流信号は、リーク電流信号を備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３３】
前記測定された電流信号は、トランジスタの閾値電圧（ＶＴ）から引き出された電流を備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３４】
前記測定された電流信号は、トランジスタの飽和電流（Ｉｄｓａｔ）を備える、請求項１９に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３５】
プログラマブルロジックデバイス（ＰＬＤ）であって、
回路におけるリーク電流を得る手段と、
該リーク電流を測定することによって、測定されたリーク電流を生成する手段と、
該測定されたリーク電流に応答して該回路におけるトランジスタのボディバイアスをプログラムするための手段と
を備える、プログラマブルロジックデバイス（ＰＬＤ）。
【請求項３６】
リーク電流を得るための前記手段は、前記回路にある、請求項３５に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３７】
前記測定されたリーク電流を少なくとも一つのリーク基準信号と比較するための手段をさらに備える、請求項３５に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３８】
比較するための前記手段は、少なくとも一つの出力信号を前記ボディバイアスジェネレータへ供給する、請求項３７に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項３９】
比較のための前記手段の前記少なくとも一つの出力信号を処理することによって、少なくとも一つの処理された信号を生成するため、および、該少なくとも一つの処理された信号を前記ボディバイアスジェネレータへ供給するための手段をさらに備える、請求項３８に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４０】
前記測定されたリーク電流を比較するための前記手段は、該測定されたリーク電流を第１および第２のリーク基準信号と比較し、該第１および第２のリーク基準信号は、前記回路におけるリーク電流の所望の範囲に対応する、請求項３７に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４１】
複数のユーザー回路であって、該ユーザー回路の各々は、プログラマブルロジックデバイス（ＰＬＤ）においてインプリメントされるユーザー回路と、
複数のボディバイアスジェネレータであって、該複数のボディバイアスジェネレータにおける少なくとも一つのボディバイアスジェネレータは、該複数のユーザー回路における少なくとも一つのユーザー回路内のトランジスタのボディバイアスを選択的に調整するように構成されている複数のボディバイアスジェネレータと
を備える、プログラマブルロジックデバイス（ＰＬＤ）。
【請求項４２】
前記複数のボディバイアスジェネレータにおける前記少なくとも一つのボディバイアスジェネレータは、前記複数のユーザー回路における該少なくとも二つのユーザー回路の各々内のトランジスタのボディバイアスを選択的に調整するようにさらに構成される、請求項４１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４３】
前記複数のボディバイアスジェネレータにおける各ボディバイアスジェネレータは、前記複数のユーザー回路における対応するユーザー回路内のトランジスタのボディバイアスを選択的に調整するように構成される、請求項４２に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４４】
前記複数のユーザー回路の各々における前記トランジスタの前記ボディバイアスは、個々のレベルに調整される、請求項４３に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４５】
前記トランジスタの前記ボディバイアスは、動作速度とワット損をトレードオフするように調整される、請求項４１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４６】
前記トランジスタの前記ボディバイアスは、動作速度とリーク電流をトレードオフするように調整される、請求項４１に記載のプログラマブルロジックデバイス（ＰＬＤ）。
【請求項４７】
電子回路をインプリメントするためのプログラマブルロジックデバイス（ＰＬＤ）を使用する方法であって、
設計を生成するために、該電子回路を該プログラマブルロジックデバイス（ＰＬＤ）内の機能リソースにマッピングするステップと、
該生成された設計の少なくとも一つの部分内の信号伝播遅延を表す遅延からボディバイアス値を引き出すステップと、
該生成された設計の該少なくとも一つの部分内の少なくとも一つのトランジスタのボディバイアスレベルを該ボディバイアス値へプログラムするステップと
を包含する、方法。
【請求項４８】
前記電子回路を前記プログラマブルロジックデバイス（ＰＬＤ）内の機能リソースへのマッピングすることは、該電子回路の少なくとも一部分を該プログラマブルロジックデバイス（ＰＬＤ）内のプログラマブルロジックリソースにマッピングすることをさらに包含する、請求項４７に記載の方法。
【請求項４９】
前記電子回路を前記プログラマブルロジックデバイス（ＰＬＤ）内の機能リソースへのマッピングすることは、該電子回路の少なくとも一部分を該プログラマブルロジックデバイス（ＰＬＤ）内のプログラマブルロジックリソースにマッピングすることをさらに包含する、請求項４７に記載の方法。
【請求項５０】
前記生成された設計の少なくとも一部分内の信号伝播遅延を表す遅延からボディバイアス値を引き出すステップは、該遅延を既知の期間と比較することをさらに包含する、請求項４７に記載の方法。
【請求項５１】
前記遅延は、調整可能である、請求項５０に記載の方法。
【請求項５２】
前記遅延は、前記プログラマブルロジックデバイス（ＰＬＤ）内においてインプリメントされるロジック回路によって生成される、請求項４７に記載の方法。
【請求項５３】
プログラマブルロジック回路（ＰＬＤ）内において実施される回路におけるトランジスタのリークレベルを調整する方法であって、
該トランジスタのリーク電流を表す電流を得るステップと、
該得られた電流からボディバイアスレベルを引き出すステップと、
該トランジスタの該ボディバイアスレベルを該引き出されたボディバイアスレベルへ調整するステップと
を包含する、方法。
【請求項５４】
前記トランジスタのリーク電流を表す電流を得るステップは、前記回路におけるリーク電流の測定するステップをさらに包含する、請求項５３に記載の方法。
【請求項５５】
前記得られた電流からボディバイアスレベルを引き出すステップは、該得られた電流を少なくとも一つのリーク基準値と比較し、少なくとも一つのエラー信号を生成するステップをさらに包含する、請求項５３に記載の方法。
【請求項５６】
前記得られた電流からボディバイアスレベルを引き出すステップは、前記少なくとも一つのエラー信号から該ボディバイアスレベルを引き出すステップをさらに包含する、請求項５５に記載の方法。
【請求項５７】
前記得られた電流からボディバイアスレベルを引き出す方法であって、
前記少なくとも一つのエラー信号を濾過し、濾過された信号を生成するステップと、
該濾過した信号からボディバイアスレベルを引き出すステップと
をさらに包含する、請求項５６に記載の方法。
【請求項５８】
前記得られた電流と少なくとも一つのリーク基準値と比較するステップは、該得られた電流を第１および第２のリーク基準値との比較するステップをさらに包含し、該第１および第２の基準値は前記トランジスタのリーク電流の範囲を規定する、請求項５５に記載の方法。
【請求項５９】
プログラマブルロジック回路（ＰＬＤ）における少なくとも一つの回路領域におけるユーザーの回路を実現する方法であって、
該回路領域における少なくとも一つのトランジスタ用のボディバイアスレベルを選択するステップと、
プログラマブルロジックデバイス（ＰＬＤ）内の該回路領域の初期配置を生成するステップと、
既存のボディバイアスレベルおよび配置が所定の性能基準を満たさない場合、該回路領域における該少なくとも一つのトランジスタに印加されるべき該ボディバイアスレベルを少なくとも１回別のレベルに変更するステップと
を包含する、方法。
【請求項６０】
前記既存のバイアスレベルおよび配置が所定の性能基準を満たさない場合、該ボディバイアスの新しいレベルから引き出された遅延推定を使用することによって、前記回路領域のタイミングを少なくとも１回分析するステップをさらに包含する、請求項５９に記載の方法。
【請求項６１】
前記既存のバイアスレベルおよび配置が所定の性能基準を満たさない場合、前記プログラマブルロジックデバイス（ＰＬＤ）内の前記回路領域の該配置を少なくとも１回改善するステップをさらに包含する、請求項６０に記載の方法。
【請求項６２】
前記既存のバイアスレベルおよび配置が所定の性能基準を満たす場合、前記回路領域の該現在の配置およびバイアスレベルを記録するステップをさらに包含する、請求項６１に記載の方法。
【請求項６３】
前記所定の性能基準は、タイミング基準を備える、請求項５９に記載の方法。
【請求項６４】
前記所定の性能基準は、電力基準を備える、請求項５９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２００４年５月１９日出願の米国特許出願第１０／８４８，９５３号、代理人整理番号第ＡＬＴＲ：０２６号の発明の名称「Ａｐｐａｒａｔｕｓ  ａｎｄ  Ｍｅｔｈｏｄｓ  ｆｏｒ  Ａｄｊｕｓｔｉｎｇ  ｔｈｅ  Ｐｅｒｆｏｒｍａｎｃｅ  ｏｆ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅｓ」の一部継続出願であり、それを参考として援用する。
【０００２】
発明コンセプトは、一般に、プログラマブルロジックデバイス（ＰＬＤ）を含む集積回路（ＩＣ）の性能の調整に関する。
【背景技術】
【０００３】
ＰＬＤは、設計者のみならずエンドユーザーにも柔軟性を提供するユビキタスな電子デバイスである。電子回路またはシステムの設計サイクル時、設計者は、設計ごとにＰＬＤを単純に再プログラムすることによって、比較的多くの回数の設計反復を実行し得る。従って、設計サイクルの長さと費用は、他の代案と比較して減少する。同様に、エンドユーザーは、ＰＬＤを含む設計の機能性に対するコントロールの所望のレベルを有し得る。ＰＬＤを実地にまたはリアルタイムベースでさえプログラムすることによって、ユーザーは、回路またはシステムが動作する方法を変更し得る。
【０００４】
ますます複雑化する設計を収容するため、現代のＰＬＤは比較的多数のトランジスタを含む。さらにユーザーは、ますます高い性能を要求し、結果的に、より大きな動作周波数となる。その結果、ＰＬＤの消費電力、ワット損、ダイ温度、および従って、電力密度（種々の回路またはブロックのワット損）は、増加する傾向である。しかし、出力密度を上げていくと、ＰＬＤの設計とインプリメンテーションを非現実的または故障しやすくする。調整可能な消費電力および性能を特徴とするＰＬＤに対する必要性が存在する。さらに、汎用ＩＣ内のトランジスタの性能（リーク、速度、およびワット損）を直接コントロールする必要性が存在する。
【発明の開示】
【課題を解決するための手段】
【０００５】
（要約）
開示された新しいコンセプトは、たとえば、速度と消費電力をトレードオフすることによって、ＰＬＤの性能を調整するための装置および方法に関する。発明のコンセプトの一局面は、ＰＬＤの性能を調整するための装置に関する。一実施形態において、ユーザーの回路をインプリメントするように構成されたＰＬＤは、遅延回路およびボディバイアスジェネレータを含む。遅延回路は、ＰＬＤにおいてインプリメントされるユーザーの回路の遅延を表す遅延を有する。ユーザーの回路は、少なくとも一つのトランジスタを含む。ボディバイアスジェネレータは、遅延回路の伝播遅延から引き出された量に応答し、ユーザーの回路におけるトランジスタのボディバイアスを調整する。
【０００６】
別の実施形態において、ＰＬＤは、基準トランジスタ、電流測定回路、およびボディバイアスジェネレータを含む。基準トランジスタは、ＰＬＤ内の回路に関係する電流を供給する。電流測定回路は、基準トランジスタによって供給される電流を測定し、測定された電流信号をボディバイアスジェネレータに供給する。ボディバイアスジェネレータは、測定された電流信号から少なくとも一つのボディバイアス信号を引き出し、ボディバイアス信号をＰＬＤの回路に供給する。
【０００７】
さらに別の実施形態において、ＰＬＤは、複数のユーザー回路および複数のボディバイアスジェネレータを含む。ユーザー回路の各々は、ＰＬＤにおいてインプリメントされる。複数のボディバイアスジェネレータの少なくとも一つは、ユーザー回路の少なくとも一つ内のトランジスタのボディバイアスを選択的に調整するように構成される。
【０００８】
発明コンセプトの別の局面は、ＰＬＤの性能を調整し、ユーザーの回路をインプリメントするためにＰＬＤを使用することの方法に関する。一実施形態において、電子回路をインプリメントするためにＰＬＤを使用する方法は、設計を生成するために電子回路をＰＬＤ内の機能リソースにマッピングすること、および生成された設計の少なくとも一つの部分内の信号伝播遅延を表す遅延からボディバイアス値を引き出すことを含む。方法はさらに、生成された設計の部分内の少なくとも一つのトランジスタのボディバイアスレベルをボディバイアス値にプログラムすることを含む。
【０００９】
別の実施形態において、ＰＬＤ内で実施される回路におけるトランジスタのリークレベルを調整する方法は、トランジスタのリーク電流を表す電流を得ること、および得られた電流からボディバイアスレベルを引き出すことを含む。方法はさらに、トランジスタのバイアスレベルを引き出されたボディバイアスレベルに調整することを含む。
【００１０】
さらに別の実施形態において、ＰＬＤにおける少なくとも一つの回路領域においてユーザー回路を実現する方法は、回路領域において少なくとも一つのトランジスタのボディバイアスレベルを選択し、ＰＬＤ内における回路領域の初期配置を生成することを含む。方法はさらに、既存のボディバイアスレベルおよび配置が所定の性能基準を満たさない場合、回路領域においてトランジスタに印加されるべきボディバイアスレベルを少なくとも１回別のレベルに変更することを含む。
【００１１】
添付の図面は、発明の例示的実施形態を示すに過ぎなく、従って、発明の範囲を制限するものと考えられるべきではない。本発明の記述からメリットを享受する当業者は、開示された発明のコンセプトがその他の等しく有効な実施形態に役立つことを理解する。図面において、二つ以上の図面において使用される同じ数字符号は、同じ、同様な、または同等な機能性、コンポーネント、またはブロックを示す。
【発明を実施するための最良の形態】
【００１２】
（詳細な説明）
本発明コンセプトは、調整可能な出力および性能を特徴とするＰＬＤのための装置および関連方法を意図する。発明コンセプトは、従来のＰＬＤが被っている過度の出力密度レベルを克服するのを助ける。さらに、本発明に従い、ＰＬＤの所望の部分またはすべての性能レベルを調整し得る（すなわち、個別のトランジスタからＰＬＤ全体に至るまでの範囲にわたる粒状ベースで）。
【００１３】
より具体的には、以下に詳細に記述されているように、発明コンセプトは、ＰＬＤ内の個別のトランジスタまたはトランジスタのグループのボディバイアスまたはウェルバイアスの設定、プログラム、または調整を意図する。ボディバイアスを調整することは、トランジスタの消費電力および性能を変動させる。
【００１４】
この発明コンセプトは、従来のインプリメンテーション対して以下の利点を提供する。第１に、発明コンセプトは、性能と消費電力とのトレードオフ、または性能―消費電力のトレードオフの最適化を可能にする。第２に、ＰＬＤのクリティカル回路パスまたは部品において、必要に応じ、それらの性能を向上させるために、ボディバイアスレベルを選択的に設定し、プログラムし、または、調整し得る。逆に、非クリティカル回路パスまたはＰＬＤのパーツにおいて、ボディバイアスレベルを選択的に設定し、プログラムし、または、調整し得、従って、それらの消費電力を減少させ、それらの出力密度を低下させ得る。
【００１５】
さらに、ＰＬＤ内で使用しない部品または回路を遮断または不能にし得、それによって、それらの消費電力を減少させ、それらの出力密度を低下させ得る。また、熱暴走を防ぐ（またはその可能性を減少させる）ために、発明コンセプトを採用し得る。より具体的には、従来のＰＬＤにおいて、比較的高速で動作する回路は、より多くの電力を消費する傾向があり、その結果、ＰＬＤの温度上昇を招く。消費電力の増加は、これらの回路がさらに多くの電力を消費させる原因になり得る。このプラスのフィードバックメカニズムは、出力密度を不安全なまたは破壊的なレベルまで増加させ得る。
【００１６】
図１は、発明の例示的実施形態に従う、ＰＬＤ１０３の汎用ブロック図を示す。ＰＬＤ１０３は、構成回路網１３０、構成メモリ１３３、制御回路網１３６、プログラマブルロジック１０６、プログラマブル相互接続１０９、およびＩ／Ｏ回路網１１２を含む。さらに、ＰＬＤ１０３は、必要に応じ、テスト／デバッグ回路網１１５、一つ以上のプロセッサ１１８、一つ以上の通信回路網１２１、一つ以上のメモリ１２４、一つ以上のコントローラ１２７を含み得る。
【００１７】
図１は、ＰＬＤ１０３の簡略なブロック図を示すことに注意されたい。このように、ＰＬＤ１０３は、当業者が理解するように、その他のブロックおよび回路網を含み得る。そのような回路網の例は、クロック発振および分配回路、冗長回路などを含む。さらに、ＰＬＤ１０３は、必要に応じ、アナログ回路網、その他のディジタル回路網、および／または混合モード回路網を、含み得る。
【００１８】
プログラマブルロジック１０６は、ルックアップテーブル（ＬＵＴ）、プロダクトタームロジック、マルチプレクサ、ロジックゲート、レジスタ、メモリなどの構成可能なロジック回路網またはプログラマブルロジック回路網のブロックを含む。プログラマブル相互接続１０９は、プログラマブルロジック１０６に結合し、プログラマブルロジック１０６内の種々のブロックとＰＬＤ１０３内または外部のその他の回路網との間の構成可能な相互接続（結合メカニズム）を提供する。
【００１９】
制御回路網１３６は、ＰＬＤ１０３内の種々の動作を制御する。制御回路網１３６の監視の下に、ＰＬＤ構成回路網１３０は、ＰＬＤ１０３の機能性をプログラム、または、構成するために、構成データを使用する（ＰＬＤ構成回路網は、そのデータをストレージデバイス、ホストなどの外部ソースから得る）。本発明の記述の助けをもって当業者が理解するように、構成データは、プログラマブルロジック１０６およびプログラマブル相互接続１０９をプログラムすることによって、ＰＬＤ１０３の機能性を決定する。
【００２０】
本発明の記述のたすけを有する当業者が理解するように、Ｉ／Ｏ回路網は、幅広い様々のＩ／Ｏデバイスまたは回路を構成する。Ｉ／Ｏ回路網１１２は、ＰＬＤ１０３の種々の部品、たとえば、プログラマブルロジック１０６およびプログラマブル相互接続１０９など、に接続する。Ｉ／Ｏ回路１１２は、外部回路またはデバイスと通信するために、ＰＬＤ１０３内の種々のブロック用の機構および回路網を提供する。
【００２１】
テスト／デバッグ回路網１１５は、ＰＬＤ１０３内の種々のブロックおよび回路のテストおよびトラブルシューティングを容易にする。テスト／デバッグ回路網１１５は、本発明の記述のたすけを有する当業者に知られている種々のブロックまたは回路を含み得る。たとえば、テスト／デバッグ回路網１１５は、必要に応じ、ＰＬＤ１０３のパワーアップまたはリセット後のテストを実行する回路を含み得る。テスト／デバッグ回路網１１５はまた、必要に応じ、コーディングおよびパリティ回路も含む。
【００２２】
上記されるように、ＰＬＤ１０３は、一つ以上のプロセッサ１１８を含み得る。プロセッサ１１８は、ＰＬＤ１０３内のその他のブロックおよび回路に結合し得る。本発明の記述のたすけをもって当業者が理解するように、プロセッサ１１８は、ＰＬＤ１０３内のまたは外部の回路からデータおよび情報を受け取り得、幅広い様々の方法で情報を処理し得る。一つ以上のプロセッサ１１８は、ディジタル信号プロセッサ（ＤＳＰ）を構成し得る。ＤＳＰは、必要に応じ、圧縮、圧縮解除、音声処理、映像処理、フィルタリングなどの幅広い様々の信号処理タスクの実行を可能にする。
【００２３】
ＰＬＤ１０３はまた、一つ以上の通信回路網１２１も含み得る。本発明の記述からメリットを享受する当業者は理解するように、通信回路網１２１は、ＰＬＤ１０３内の種々の回路とＰＬＤ１０３の外部の回路との間のデータおよび情報の交換を容易にし得る。一例として、通信回路網１２１は、必要に応じ、種々のプロトコル機能性（たとえば、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、ユーザデータグラムプロトコル（ＵＤＰなど）を提供し得る。別の例として、通信回路網１２１は、必要に応じ、ネットワーク（たとえば、イーサネット（登録商標）、トークンリングなど）またはバスインターフェース回路網を含み得る。
【００２４】
ＰＬＤ１０３はさらに、一つ以上のメモリ１２４および一つ以上のコントローラ１２７を含み得る。メモリ１２４は、ＰＬＤ１０３内の種々のデータおよび情報（ユーザーデータ、中間結果、計算結果など）の格納を可能にする。メモリ１２４は、必要に応じ、粒状形またはブロック形を有し得る。コントローラ１２７は、ＰＬＤの外部の回路網の動作および種々の機能にインタフェースし、制御することを可能にする。たとえば、コントローラ１２７は、必要に応じ、外部の同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）にインタフェースし、制御するメモリコントローラを構成し得る。
【００２５】
ＰＬＤ１０３内の回路網のブロックは、多数のトランジスタを含む。より具体的には、トランジスタは、必要に応じ、ｎ型ＭＯＳ（ＮＭＯＳ）、ｐ型ＭＯＳ（ＰＭＯＳ）、相補型ＭＯＳ（ＣＭＯＳ）、または、部分空乏シリコンオンインシュレータ（ＳＯＩ）ＭＯＳトランジスタ（またはこれらの種類のトランジスタの組み合せ）などの金属酸化物半導体（ＭＯＳ）トランジスタを構成する。
５７  図２は、本発明に従う、例示的な実施形態において使用されるＭＯＳトランジスタを示す。ＭＯＳトランジスタは、本体（または基板）領域２０３、ソース領域２０６、ドレイン領域２０９、ゲートインシュレータ２１５、およびゲート２１２を含む。動作の飽和領域におけるＭＯＳトランジスタのドレイン電流は、トランジスタの閾値電圧およびゲートからソースへの電圧に依存し、
ｉＤ＝Ｋ（νＧＳ−ＶＴ）２          （１）
である。ここで、
ｉＤ＝全ドレイン電流（すなわち、ＡＣおよびＤＣ成分を含む）
Ｋ＝定数
νＧＳ＝ゲートからソースへの全電圧（すなわち、ＡＣおよびＤＣ成分を含む）、および
ＶＴ＝閾値電圧
である。
【００２６】
閾値電圧ＶＴは、トランジスタのソース領域２０６と本体領域２０３との間の電圧などの多数の要因に依存する。下記の等式は、本体からソースへの電圧の関数としての閾値電圧を提供する：
【００２７】
【数１】
2007538474.tif 000003
代わりに、ソースから本体への電圧の点から、等式２Ａは：
【００２８】
【数２】
2007538474.tif 000004
と書き得る。ここで、
ＶＴ（０）＝ソースから本体（または本体からソース）への電圧が０にセットされた閾値電圧
γ＝本体係数で、本体のドーピングレベルに依存する定数
ΦＦ＝定数
νＢＳ＝本体からソースへの全電圧（すなわち、ＡＣおよびＤＣ成分を含む）、および
νＳＢ＝ソースから本体への全電圧（すなわち、ＡＣおよびＤＣ成分を含む）
である。本体からソースへの電圧、νＢＳ（または、ソースから本体への電圧、νＳＢ）が０に等しいとき、閾値電圧ＶＴは、ＶＴ（０）に等しいことに注意されたい。
【００２９】
等式２Ｂが示すように、有限本体係数γに関して、ソースから本体への電圧、νＳＢ、が増加すると、トランジスタの閾値電圧は増加する。しかし、等式（１）は、特定のゲートからソースへの電圧に関して、閾値電圧における増加は、トランジスタのドレイン電流ｉＤを減少させることを示す。換言すると、等式１および２Ｂに従って、定数のゲートからソースへの電圧νＧＳに関して、ソースから本体への電圧νＳＢにおける増加は、閾値電圧、ＶＴにおける増加の原因になる。
【００３０】
増加した閾値電圧ＶＴは、今度は、量（νＧＳ―ＶＴ）における減少の原因となり、その結果、トランジスタのドレイン電流ｉＤにおける減少となる。このように、ゲートからソースへの一定の電圧νＧＳに関して、ソースから本体への電圧νＳＢにおける増加は、トランジスタの電流駆動能力（性能の一つの基準）における減少の原因となる。トランジスタの減少した電流駆動能力は、今度は、回路動作を遅くすることになり、最終的には、トランジスタを含むＰＬＤの動作を遅くする。
【００３１】
トランジスタのワット損もまた、その閾値電圧における変化に従って、変動する。より具体的には、閾値電圧が小さくなると、トランジスタのＯＦＦ状態のリーク電流（Ｉｏｆｆ）が増加する。逆もまた同様である。トランジスタのＩｏｆｆは、そのスタティック（非スイッチング）のワット損に影響する。さらに、より小さい閾値電圧は、トランジスタのダイナミックまたはスイッチングワット損を増加させる。このように、ボディバイアスを調整することによって閾値電圧を変化させると、ＭＯＳトランジスタのワット損に影響する。
【００３２】
さらに、所定の供給電圧、ＶＤＤ、に関して、閾値電圧、ＶＴ、における増加は、トランジスタがパストランジスタとして動作するときに、トタンジスタが伝導し得る最大電圧を制限する。換言すると、閾値電圧、ＶＴ、が、ゲートからソースへの電圧νＧＳに等しいかまたは超える点まで増加する場合、ドレイン電流は０に減少する。このように、トランジスタのドレインに印加される電圧、たとえば、ロジック１レベルに対応する電圧は、トランジスタのソースに適切に伝導しない。その結果、トランジスタは、パストランジスタとして信頼性をもって動作しない。
【００３３】
上記に示すように、ＭＯＳトランジスタのボディバイアス、従ってトランジスタのソースから本体への電圧を調整することによって、ＭＯＳトランジスタの性能に影響を及ぼし得る（最終的には、閾値電圧における変化の結果を招く）。ボディバイアスを調整すると、電流駆動能力、動作速度、ワット損、などの性能基準に影響する。
【００３４】
上記のように、発明に従う実施形態において、必要に応じ、ＰＬＤ内の個々のトランジスタ、個々の回路またはブロック、トランジスタまたはブロックのグループ、またはＰＬＤ全体までのボディバイアスを調整し得る。さらに、必要に応じ、個々のＮＭＯＳおよびＰＭＯＳトランジスタのボディバイアス、または、ＮＭＯＳおよびＰＭＯＳトランジスタのグループのボディバイアスを調整し得る。以下の説明は、詳細を提供する。
【００３５】
図３は、発明の例示的実施形態に従うＰＬＤ１０３の平面図を示す。ＰＬＤ１０３は、二次元アレイとして配置されているプログラマブルロジック１０６を含む。水平相互接続および垂直相互接続として配置されたプログラマブル相互接続１０９は、プログラマブルロジック１０６のブロックを互いに結合する。必要に応じ、プログラマブルロジック１０６の各ブロック、プログラマブル相互接続１０９の各セグメント、またはその両方のボディバイアスを調整し得る。さらに、必要に応じ、プログラマブルロジック１０６の一つ以上のブロックの部分、プログラマブル相互接続１０９の部分、またはその両方のボディバイアスを調整し得る。
【００３６】
例示的実施形態において、発明に従うＰＬＤは、階層アーキテクチャを有する。換言すると、図３のプログラマブルロジック１０６の各ブロックは、今度は、より小さいかまたはより多い粒状のプログラマブルロジクブロックまたは回路を含み得る。必要に応じ、ＰＬＤの階層アーキテクチャの各レベルにおけるトランジスタのボディバイアスを調整し得る。
【００３７】
図４は、発明の例示的な実施形態に従うＰＬＤにおけるプログラマブルロジック１０６のブロック図を示す。プログラマブルロジック１０６は、論理要素またはプログラマブルロジック回路２５０、ローカル相互接続２５３、インタフェース回路２５６およびインタフェース回路２５９を含む。本発明の記述からメリットを享受する当業者は理解するように、論理要素２５０は、構成可能なロジック機能またはプログラマブルロジック機能、たとえば、ＬＵＴ、レジスタ、プロダクトタームロジックなどを提供する。ローカル相互接続２５３は、必要に応じ、論理要素２５０が互いにまたはプログラマブル相互接続１０９（「グローバル相互接続」と呼ばれることがある）に結合するように構成可能なメカニズムまたはプログラマブルメカニズムを提供する。
【００３８】
インタフェース回路２５６およびインタフェース回路２５９は、回路網のプログラマブルロジック１０６がプログラマブル相互接続１０９（および従って、図３に示すように、その他のプログラマブルロジック１０６）に結合するように、構成可能な方法またはプログラマブルな方法を提供する。本発明の記述からメリットを享受する当業者は理解するように、インタフェース回路２５６およびインタフェース回路２５９は、マルチプレクサ（ＭＵＸ）、レジスタ、バッファ、ドライバなどを含み得る。
【００３９】
必要に応じ、ＰＬＤ１０３（図１、図３、および図４を参照）内の回路網の各部分またはブロックのボディバイアスを調整し得る。さらに、必要に応じ、個々または集合的ベースで、回路網の各部分またはブロックのボディバイアスを他に無関係に調整し得る。回路網の各部分またはブロック内で、必要に応じ、個々または集合的ベースで、各サブブロックまたはトランジスタのボディバイアス、またはサブブロックまたはトランジスタのグループのボディバイアスを調整し得る。
【００４０】
たとえば、発明の例示的な実施形態に従い、ＰＬＤ内の下記の回路網のすべてまたは部分のボディバイアスを調整し得る：図１の一つ以上のブロック（たとえば、プログラマブルロジック１０６、プログラマブル相互接続１０９など）；一つ以上のプログラマブルロジックブロック１０６内の一つ以上の論理要素２５０；一つ以上のプログラマブルロジックブロック１０６内の一つ以上のインタフェース回路２５６および／または２５９；一つ以上のプログラマブルロジック１０６内の一つ以上のローカル相互接続；および一つ以上のインタフェース回路２５６および／または２５９内の一つ以上のＭＵＸ、ドライバ、バッファなど。
【００４１】
上記のとおり、ボディバイアス調整を、粒状度の任意の所望レベルで、行い得る。換言すると、必要また適用可能に応じ、個々のトランジスタ、トランジスタのグループ、サブブロック、ブロックまたはＰＬＤ全体に適用可能な調整を行い得る。たとえば、必要に応じ、一つ以上のＮＭＯＳトランジスタのボディバイアス調整を、一つ以上のＰＭＯＳトランジスタに無関係に、行い得る。
【００４２】
さらに、必要に応じ、ＰＬＤ１０３内の一つの要素のボディバイアスを、その他のすべての要素に無関係に、調整し得る。本発明の記述からメリットを享受する当業者は理解するように、必要に応じ、ＰＬＤのいくつかの部品のボディバイアス調整を行い得、さらにＰＬＤのその他の部品の固定またはデフォルトのボディバイアスを提供し得る。
【００４３】
ボディバイアス調整の粒状度の例として、２入力、１出力のＭＵＸを考慮されたい。図５は、ボディバイアス調整を含む発明の例示的実施形態に従うＰＬＤにおいて使用されるＭＵＸを示す。ＭＵＸは、トランジスタ２７５およびトランジスタ２７８を含む。ＭＵＸは、回路Ａから信号を受信し、別の信号を回路Ｂから受信する。選択信号、Ｓ、およびそのコンプリメントＳ’に応答し、ＭＵＸは、回路Ａまたは回路Ｂのいずれかからの信号を回路Ｃ（ＭＵＸの出力に結合された）に伝送する。
【００４４】
トランジスタ２７５およびトランジスタ２７８のボディバイアスは多数の方法で調整し得る。第１に、ボディバイスを調整しないことを選択し得る（たとえば、ＰＬＤ内のデフォルトボディバイアスを使用する）。第２に、トランジスタ２７５のボディバイアスをトランジスタ２７８のボディバイアスと同レベルに調整し得る。代案として、トランジスタ２７５およびトランジスタ２７８のみのボディバイアスを調整し得る。別の選択として、トランジスタ２７５およびトランジスタ２７８の各々のボディバイアスを個々に調整し得る。
【００４５】
従って、ＭＵＸの性能特性を柔軟性ある方法で構成し得る。他の方法では、ＭＵＸの動作速度、電流駆動能力、およびワット損のバランスまたはトレードオフを、互いに対して、行い得る。さらなる例として、ボディバイアス調整コンセプトを、ＭＵＸのトランジスタの一セット、特定の信号ルート（たとえば、特定の入力に対応した信号伝送ルーティング）、パストランジスタの一セット（たとえば、プログラマブルルーティングにおけるパストランジスタ一セットで、それが、構成メモリビット数を節約するためにその他のパストランジスタのセットによって共有されたＭＵＸに入力する）、などに広げ得ることに注意されたい。
【００４６】
上記のとおり、ユーザーは、本発明に従い、ＰＬＤの種々の部分のボディバイアスを調整し得る。ユーザーは、ＰＬＤの設計をマッピングするために使用されるソフトウェアを使用することによって、そのように行い得る。図６Ａは、発明の例示的実施形態に従うＰＬＤコンピュータ支援設計（ＣＡＤ）ソフトウェアが使用する種々のソフトウェアモジュールを示す。モジュールは、設計入力モジュール３０５、合成モジュール３１０、プレース・ルートモジュール３１５、および検査モジュール３２０を含む。
【００４７】
設計入力（ｄｅｓｉｇｎ−ｅｎｔｒｙ）モジュール３０５は、多様な設計ファイルの統合を可能にする。ユーザーは、必要に応じ、設計入力モジュール３０５を使用することによってまたは種々の電子設計オートメーション（ＥＤＡ）またはＣＡＤツール（業界標準のＥＤＡツールなど）を使用することによって、設計ファイルを生成し得る。ユーザーは、必要に応じ、グラフ形式、波形ベース形式、スケマティック形式で、テキストまたはバイナリ形式で、またはこれらの形式の組み合わせで、設計を入力し得る。
【００４８】
合成モジュール３１０は、設計入力モジュール３０５の出力を受け取る。ユーザー提供の設計に基づき、合成モジュール３１０は、ユーザー提供の設計を実現する適切なロジック回路網を生成する。一つ以上のＰＬＤ（明白には示されてない）は、合成された全体設計またはシステムを実行する。合成モジュール３１０はまた、ユーザーの設計における種々のモジュールの統合および適切な動作およびインタフェースを可能にする任意のグルー（ｇｌｕｅ）ロジックも生成し得る。たとえば、合成モジュール３１０は、一つのブロックの出力が別のブロックの入力と適切にインタフェースするように、適切なハードウェアを提供する。合成モジュール３１０は、全体設計またはシステムにおいてモジュールの各々の仕様に合致するように、適切なハードウェアを提供する。
【００４９】
さらに、合成モジュール３１０は、合成された設計を最適化するためのアルゴリズムおよびルーチンを含み得る。最適化によって、合成モジュール３１０は、全体設計またはシステムを実行する一つ以上のＰＬＤのリソースをより効率的に使用するよう努める
。合成モジュール３１０は、プレース・ルートモジュール３１５への出力を提供する。
【００５０】
プレース・ルートモジュール３１５は、最適なロジックマッピングおよび配置を行うため、設計者のタイミング仕様を使用する。ロジックマッピングおよび配置は、ＰＬＤ内のルーティングリソースの使用を決定する。換言すると、設計の所定の部品のためにＰＬＤとの特定のプログラマブル相互接続を使用することによって、プレース・ルートモジュール３１５は、全体設計またはシステムの性能の最適化を支援する。ＰＬＤルーティングリソースを適切に使用することによって、プレース・ルートモジュール３１５は、全体設計またはシステムのクリティカルタイミングパスを満たすように支援する。プレース・ルートモジュール３１５は、本発明の記述からメリットを享受する当業者に知られている方法より速く、クリティカルタイミングパスを最適化し、タイミング閉止の提供を支援する。その結果、全体設計またはシステムは、より速い性能（すなわち、より高いクロックレイトまたはより高いスループットでの動作）を達成し得る。
【００５１】
さらに、プレース・ルートモジュール３１５は、設計およびシステムを実行するＰＬＤの部分またはすべてのボディバイアスを調整する。プレース・ルートモジュール３１５は、それを自動的に行うか、ユーザー指定の基準に従って行うか、またはその二つの組み合わせに従って、行い得る。プレース・ルートモジュール３１５は、ユーザー指定の基準（たとえば、ワット損、速度、および／または電流駆動能力などの性能仕様）を使用し得る。さらに、または、その代わりに、プレース・ルートモジュール３１５は、必要に応じ、設計またはシステムのパーツまたはすべてのボディバイアスを調整するために、設計またはシステム内のクリティカルパスに関する情報を使用し得る。
【００５２】
たとえば、プレース・ルートモジュール３１５は、より高い性能を達成するために、設計またはシステムのクリティカルパーツのボディバイアスを調整し得る。プレース・ルートモジュール３１５は、必要に応じ、パワーおよび性能のトレードオフを行うために、ワット損基準（たとえば、最大出力密度）を考慮に入れ得る。プレース・ルートモジュール３１５は、検査モジュール３２０に対する最適な設計を提供する。
【００５３】
検査モジュール３２０は、設計のシミュレーションおよび検査を実行する。シミュレーションおよび検査は、設計がユーザーの規定した仕様に従うことを検査することをその一部において努める。シミュレーションおよび検査はまた、設計を試作する前に、すべての設計問題を検出し、修正することを意図する。このように、検査モジュール３２０は、ユーザーが全体設計またはシステムの総コストを削減し、市場へ出すまでの時間を短縮するよう支援する。
【００５４】
検査モジュール３２０は、必要に応じ、種々の検査およびシミュレーションオプションを支持し、実行し得る。オプションは、必要に応じ、設計規則チェック、機能上の検査、テストベンチ（ｔｅｓｔ−ｂｅｎｃｈ）生成、スタティックタイミング解析、タイミングシミュレーション、ハードウェア／ソフトウェアシミュレーション、システム内検査、ボードレベル（ｂｏａｒｄ−ｌｅｖｅｌ）タイミング解析、信号の完全性分析および電磁環境適合性（ＥＭＣ）、形式的なネットリスト検査、および消費電力推定を含み得る。必要に応じ、また本発明の記述からメリットを享受する当業者は理解するように、他のまたは追加の検査技術が実行し得ることに注意されたい。上記のとおり、発明に従うＰＬＤアーキテクチャおよび回路網は、ユーザーが、ＰＬＤまたはＰＬＤの領域において、速度を犠牲にしてリーク（および従って、ワット損）に対処できる能力を提供する。ユーザーがこの機能性を使用することをできるだけ便利にするために、発明の例示的実施形態に従うＰＬＤ  ＣＡＤは、ユーザーの仕様と基準を自動的に満たすように、回路網を自動的に構成し得る。さらに、ユーザーの回路への速度への影響を最小にしながらリーク減少を最大にするため、発明の種々な実施形態に従うＰＬＤ  ＣＡＤは、ユーザー回路のインプリメンテーション時にバイアス領域の存在を考慮し、バイアス領域の有効性を最大にするように回路を最適化する。以下の説明は、ＰＬＤ  ＣＡＤの機能性の詳細を提供する。
【００５５】
基板バイアスを最高に活用するタイミング駆動のＰＬＤ  ＣＡＤシステムに関して、設計インプリメンテーション時に、そのシステムが、ＰＬＤまたはＰＬＤの各領域（一つ以上のトランジスタを含み得る）に対して基板バイアスを推定すべきである。ＰＬＤ  ＣＡＤは、設計のタイミング分析時にボディバイアスを考慮に入れる。このように、ボディバイアスレベルは、タイミングの観点から設計のどの部分がクリティカルになるかについて影響する。
【００５６】
最初、ＣＡＤシステムは、ユーザーが一つ以上のトランジスタのボディバイアスレベルの設定またはプログラムを望むＰＬＤの各領域に対して、あるボディバイアスレベル（および従って、リーク／速度設定）を想定する。一つの可能性ある選択として、ＰＬＤ  ＣＡＤは、すべての影響を受けた領域が比較的低速度設定（すなわち、比較的低リークレベルの結果となるボディバイアス）を使用すると想定し得る。ＰＬＤ  ＣＡＤシステムは、ＰＬＤ回路網の初期配置を提供する。配置は、その初期配置の反復の改善によって、進行する。
【００５７】
この反復の改善手順の種々の時点において、ＰＬＤ  ＣＡＤは、回路の速度を推定し、関係するすべての接続に対してタイミングスラック値を計算する。タイミングスラック値の計算は、遅延を推定するときに、各領域に対して選ばれた現在のボディバイアスレベルを考慮に入れる。ＰＬＤ  ＣＡＤは、ボディバイアス選択を配置の反復の改善にインタリーブすることに注意されたい。ＰＬＤ  ＣＡＤは、より高速な（および対応するより高いリークの）ボディバイアス設定への変換のため、より小さい平均および最悪ケースの接続スラック値を有する回路の部分を含む領域を評価する。ＣＡＤソフトウェアは、一つ以上の領域について新候補バイアス設定を選択し、回路タイミングの点から新設定の総原価、ならびにリーク電流および／または漏れ電力における全増加を推定することによって、バイアス設定を評価する。新バイアス設定が、領域におけるすべての接続についてプラスのスラック値に導く場合（または、領域におけるより少ないマイナススラックレベル）、ＰＬＤ  ＣＡＤは、一般に、新バイアス設定を採用する。
【００５８】
同様に、ＣＡＤソフトウェアは、より低速度のボディバイアス設定への変換のために、現在比較的高いバイアス設定を有する領域で、すべての接続がプラスのスラック値を有する領域を評価する。新ボディバイアス採用することが、どの回路タイミング基準に対しても違反を引き起こすことにならない場合、ＣＡＤソフトウェアは、新ボディバイアス設定を採用する。
【００５９】
一つ以上のバイアス設定を変更次第、反復配置改善は、変更されたバイアス設定によって発生するすべての起こりうるタイミングの懸念または違反を解決する試みを継続し、または、よりタイムクリティカルな回路網をより高速度を有する新しく作成されたバイアス領域に移動するよう試みる。配置とルーティングがユーザーのタイミングおよびパワー目標を満たすときか、または、所望または所定の反復限界に達した（それ以上の改善がなされ得ないように見える）のいずれかのとき、アルゴリズムは終了する。
【００６０】
図６Ｂは、発明の例示的実施形態に従うＰＬＤ  ＣＡＤソフトウェアの流れ図を示す。図６Ｂに示されるＰＬＤ  ＣＡＤは、ＰＬＤの各領域に対するボディバイアスの選択をタイミング駆動のプレース・ルートＣＡＤシステムに組み入れる。
【００６１】
より具体的には、３３０において、ＰＬＤ  ＣＡＤは、初期領域ボディバイアス設定をセットする。３３５において、ソフトウェアは初期配置を生成する。次に、３３８において、ソフトウェアは、現在のボディバイアス設定を反映する遅延推定を使用して、回路網のタイミングを分析する。３４１において、ソフトウェアは、ユーザーのタイミングおよびパワー目標を満たしたかどうかについて判断する。満たしたと判断する場合、３４４において、ソフトウェアは、配置およびボディバイアス選択を記録する。満たさなかったと判断する場合、ソフトウェアは、３４７において、反復限界に達したかどうかをチェックし判断する。達したと判断する場合、ソフトウェアは、３４４に進み、現在の配置およびボディバイアス選択を記録する。ソフトウェアが反復限界に達していない場合、ソフトウェアは、反復カウント（明白には示されていない）をインクリメントし、３５０において、少なくともいくつかの領域のバイアス設定を変更する。３５３において、ソフトウェアは、変更されたボディバイアス設定を反映する遅延推定を使用して回路網のタイミングを分析する。３５６において、ソフトウェアは、回路の配置を改善し、３４１に飛び、ユーザーのタイミングおよびパワー目標を満たしたかどうかを判断する。
【００６２】
本発明の記述からメリットを享受する当業者は理解するように、本明細書に記述されたアルゴリズムの多くの変種を使用し得る。たとえば、すべての領域を低速または高速に設定するなど、種々の初期ボディバイアスの設定を使用し得る。ソフトウェアが、配置におけるすべてのタイミング仕様を満たすと推定する場合、より大きなプラススラック値を有する接続を含む領域を優先して、高速バイアス領域を低速領域への変換を評価する。いくつかの領域を低速領域に変換後に、ソフトウェアは配置改善を再開する。ソフトウェアは、これらの二つのステップをユーザーのパワーおよびタイミングの目標を満たすまで、反復し得る。
【００６３】
第２の例として、ソフトウェアは、ユーザーのチップ平面図からバイアス領域の初期設定を生成し得る。ソフトウェアは、高速動作用の平面図におけるタイムクリティカル領域のためのバイアスを初期設定し、比較的低速動作用のその他の領域のためのバイアスを設定する。ソフトウェアは、次に、バイアス選択のさらなる改善のために、図６Ｂに示される技術を使用し得る。
【００６４】
第３の例として、ソフトウェアは、回路の迅速な配置からボディバイアスの初期設定を生成し、その後続いて、タイミング分析を行い、速度クリティカル領域をその他の領域から識別し得る。配置は、正規の配置を構成し得るか、または、どのボディバイアス領域においてユーザーの回路の各パーツを見つけるかを判断する「粗配置」を構成し得る。ソフトウェアは、次に、これらの初期バイアス設定をさらに改善するために、図６Ｂのアルゴリズムを使用し得る。
【００６５】
第４の例として、配置を開始する前に、ソフトウェアは、回路をボディバイアス領域を構成する比較的大きな回路要素にクラスタ化し得る。クラスタの各々は、タイムクリティカルかまたは非タイムクリティカルである回路網から成り立ち得る。ソフトウェアは、クラスタをＰＬＤのボディバイアス領域を表す粗いグリッド上に配置し得る。ソフトウェアは、次に、ソフトウェア内に置かれた回路網の種類に従い、各領域のバイアスレベルを設定し得る。このように、タイムクリティカルな回路は、比較的高速のボディバイアス設定を受け取り、一方非タイムクリティカル回路は、比較的低速を受け取る。ソフトウェアは、次に、配置を改善するこれらの初期バイアス設定を有する図６Ｂにあるアルゴリズムを使用し得る。
【００６６】
第５の例として、ルーティングアルゴリズムなどの配置アルゴリズム以外のその他のアルゴリズムは、それらのアルゴリズムの遅延推定における所定の領域のボディバイアスを考慮し得る。領域ボディバイアス選択および正規のアルゴリズム最適化をインタリーブすることによって、そのようなアルゴリズムをボディ領域バイアス微同調にインタリーブし得る。
【００６７】
一旦、ＰＬＤ  ＣＡＤが、設計をインプリメントすると（たとえば、設計を合成し、配置し、ルーティングする）、ＣＡＤソフトウェアは、ボディバイアス回路網（たとえば、ボディバイアス生成回路網、ボディバイアス制御回路網）を正しい状態およびボディバイアスレベルに自動的にセットする。ソフトウェアは、ボディバイアス回路網の動作の詳細およびユーザーの目標によるいくつかの方法によって、その動作を行い得る。
【００６８】
一つの代案として、ユーザーが漏れ電力目標を有し、バイアス回路網は、リークロックループ（ｌｅａｋａｇｅ−ｌｏｃｋｅｄ  ｌｏｏｐ）（詳細は下記）を組み入れている場合、ＰＬＤ  ＣＡＤは、漏れ電力がユーザーのワット損目標より少ないか同等になるようにバイアス回路網を設定する。ＣＡＤソフトウェアは、次に、比較的高温で回路のタイミングを、および、リーク電流の「オン」トランジスタ駆動電流に対する最高比率を有する処理コーナーを、回路がその処理および動作条件においてすべてのタイミング仕様を満たすようにして、解析し得る。代わりに、ユーザーが、すべてのタイミング仕様を満たす条件で、漏れ電力を最小にする目標を有する場合、トランジスタが、最悪の予想される処理および動作コーナーにおいてすべてのタイミングの制限を満たす状況において動作するように、ソフトウェアは、各領域におけるリークロックループを設定し得る。一般に、コーナーは、比較的高温で、および、リーク電流の「オン」トランジスタ駆動電流に対する最高比率を有する処理コーナーにおいて発生する。
【００６９】
別の代案として、ユーザーがいくつかのタイミング仕様を満たす条件で電力を最小にする目標を有し、バイアス回路網が遅延ロックループを含む場合、ＣＡＤソフトウェアは、回路がこれらのタイミング仕様を満たすように、遅延ループを設定またはプログラムし得る。ソフトウェアはそのような動作を、タイミング解析によって各ボディバイアス領域における回路網から最もクリティカルなパスを抽出することによって、行い得る。遅延ロックループがプログラマブル遅延連鎖を使用する場合、ソフトウェアは、それが各ボディバイアス領域における基準連鎖の遅延を、対応するボディバイアス領域のクリティカルパスの名目遅延より大きい名目遅延値に設定するように回路網を設定する。ソフトウェアは、クリティカルパス用ランチ（ｌａｕｎｃｈ）およびキャプチャエッジを定義する適切なクロック信号を遅延ロック回路網へ伝送する。通例、同じクロック信号は、ランチと捕獲エッジの両方を定義するが、複数の位相および周波数関係クロック信号を有する設計において、別のクロックドメインが、ランチおよび捕獲エッジを定義し得る。遅延ロックループが「ソフト」で、あるＰＬＤ回路網にロックする場合、ＣＡＤシステムは、遅延ロックループの基準遅延として使用されるよう、各バイアス領域に対する各クリティカルパスのできるだけ正確なコピーを行う。
【００７０】
さらに代案として、ＰＬＤ  ＣＡＤは、ボディバイアス回路網をプログラムすることによって、ユーザーに種々の電力と遅延との間のトレードオフの選択を行う能力を与える。その場合、ＣＡＤソフトウェアは、ユーザーが選んだバイアス設定に従う適切な電力および遅延モデルを調べ、それらのモデルを電力およびタイミング解析において使用する。ソフトウェアは、電力および遅延モデルをより旧式でないようにする（最悪ケース）。これは、ユーザーへの出荷前にデバイスをテストすることによって、またＰＬＤ（たとえば、ＰＬＤ内にある不揮発性メモリ）においてトランジスタ速度およびリークを示すデータを（一般に閾値電圧の形式で）格納することによって、行われる。ＣＡＤソフトウェアは、プログラム時に、ユーザーの所望の電力遅延トレードオフをデバイスに、なおもプログラムするが、オンチップハードウェアは、この「所望された」トレードオフを格納されたデバイス特性と比較し、トランジスタが所望の電力遅延トレードオフを有するように、適切なボディバイアスレベルを計算し、適用する。
【００７１】
図７は、発明の例示的実施形態に従うボディバイアス調整の処理の流れ図を示す。図６Ａに関連して記述されたソフトウェアなどのプログラムは、図７における処理を実行する。
【００７２】
４０３において一旦処理が開始すると、処理は、上記、および本発明の記述からメリットを享受する当業者は理解するように、設計またはシステムをインプリメントするＰＬＤ内のクリティカル回路パスを識別する。４０３において、処理は、識別されたクリティカル回路パス内のトランジスタのボディバイアスを調整する。換言すると、処理は、一つ以上のトランジスタまたはトランジスタのセット用の一つ以上のボディバイアスレベルを選択する。次に、４０６において処理は、クリティカル回路パス用に一つ以上のボディバイアスジェネレータをプログラムまたは構成する。ボディバイアスジェネレータは、４０３で選択された一つ以上のボディバイアスレベルを生成する。
【００７３】
処理は、識別されたクリティカル回路パスまたはブロックだけに限定する必要がないことに注意されたい。その代わり、またはさらに、ユーザーが特定の性能基準を満たすことを希望した回路パスまたはブロックをユーザーは、識別し指定し得る。たとえば、ユーザーは、ＰＬＤ内でインプリメントされた高速加算器を有することを希望し得る。ユーザーは、加算器をインプリメントするために使用される回路網またはブロックを識別し得、特定のタイミング仕様を満たすために回路網またはブロックのボディバイアスレベルを調整するソフトウェアを指定し得る。ユーザーは、ワット損などのその他の性能仕様または基準を提供し得る。ソフトウェアは、回路パスまたはブロックのボディバイアスレベルを選択するために、種々性能仕様をトレードオフし得る。
【００７４】
図８は、所望のＰＬＤ回路網またはブロックの調整、プログラムまたは設定するために、発明の例示的実施形態に従うＰＬＤ内の回路のブロック図を示す。回路網は、ボディバイアスジェネレータ４３０、複数の構成メモリ（構成ランダムアクセスメモリ、すなわち、ＣＲＡＭ、またはその他のメモリのインプリメンテーション）セル４３８Ａ〜４３８Ｄ、複数のトランジスタ４４０Ａ〜４４０Ｄ、およびＰＬＤ回路４４５Ａ〜４４５Ｂを含む。
【００７５】
ボディバイアスジェネレータ４３０は、一つ以上のボディバイアス信号４３５を生成し、それらの信号をトランジスタ４４０Ａ〜４４０Ｄに提供する。ＣＲＡＭセル４３８Ａ〜４３８Ｄにあるデータの各々の一つに応答し、トランジスタ４４０Ａ〜４４０Ｄは、ボディバイアス信号４３５をＰＬＤ回路４４５Ａ〜４４５Ｂに提供する。ＰＬＤ回路４４５Ａ〜４４５Ｂは、上記の、個別トランジスタ、トランジスタのグループ、回路ブロック回路などの回路でその回路のボディバイアスレベルを設定、プログラム、または調整することが所望される回路網を構成し得る。
【００７６】
たとえば、ＣＲＡＭセル４３８Ａおよび４３８Ｃはバイナリ１を格納するが一方、ＣＲＡＭセル４３８Ｂおよび４３８Ｄはバイナリ０を格納すると想定されたい。その結果、トランジスタ４４０Ａおよび４４０Ｃはオンとなり、ボディバイアス信号４３５ＡをＰＬＤ回路４４５Ａ〜４４５Ｂに供給する。トランジスタ４４０Ｂおよび４４０Ｄはオフとなり、従ってどの信号もＰＬＤ回路４４５Ａ〜４４５Ｂに供給しない。
【００７７】
別の例として、前の例の逆の状況が存在する（すなわち、ＣＲＡＭセル４３８Ａ〜４３８Ｄがバイナリデータ０，１，０，１をそれぞれ保持する）と想定されたい。この場合、トランジスタ４４０Ａおよび４４０Ｃはオフとなり（従って、信号をＰＬＤ回路４４５Ａ〜４４５Ｂに供給しない）、トランジスタ４４０Ｂおよび４４０Ｄはオンとなる。その結果、トランジスタ４４０Ｂおよび４４０Ｄはボディバイアス信号４３５ＢをＰＬＤ回路４４５Ａ〜４４５Ｄに供給する。
【００７８】
例示的な実施形態において、ＣＲＡＭセル４３８Ａ〜４３８Ｄは、必要に応じ、複数の目的を扱う。より具体的には、ＣＲＡＭセル４３８Ａ〜４３８ＤはＰＬＤ内の種々の回路網（たとえば、ＰＬＤ回路４４５Ａまたは４４５Ｂ）のボディバイアスを制御し得る。さらに、ＣＲＡＭセル４３８Ａ〜４３８ＤはルーティングＣＲＡＭセルとして働き得る。換言すると、ボディバイアスレベルの制御に加えて、ＣＲＡＭセル４３８Ａ〜４３８Ｄの一つ以上は、必要に応じ、ＭＵＸ内の一つの回路パスを別のパスに優先して選択し得る（すなわち、ＭＵＸ内の代替のルーティングと反対に、ＭＵＸ内の一つのルーティングを選択し得る。
【００７９】
本発明の記述からメリットを享受する当業者は理解するように、種々の方法でボディバイアスジェネレータ４３０をインプリメントし得ることに注意されたい。たとえば、バイアスソース（たとえば、種々の公知のバイアスソースの一つ）を使用し得、次に、チャージポンプを使用してボディバイアス信号４３５を生成し得、その信号は適切または所望のレベルに注入される。別の例として、ボディバイアスレベルに対応して格納されたディジタルデータを使用し得、所望のボディバイアス信号４３５を生成するために、一つ以上のディジタル−アナログ変換器（ＤＡＣ）と共に一つ以上のスケーラ回路を使用し得る。
【００８０】
ボディバイアスレベルの調整、プログラムまたは設定に加えて、ワット損、および従って、ＰＬＤの出力密度を制御するために他の手段を使用し得る。より具体的には、ＰＬＤ内の回路網の部分を選択的に遮断または電源を切り得る。その結果、ＰＬＤ内のワット損をさらに減少し得る。
【００８１】
図９は、発明の例示的な実施形態に従い、回路網の電源を選択的にオフにするか、あるいは、ＰＬＤ内の回路網の消費電力を削減または全体的制御するための回路のブロック図を示す。回路は、制御回路網１３６、トランジスタ４５０、およびＰＬＤ回路４４５Ａを含む。さらに、回路は、トランジスタ４５０Ａ、トランジスタ４５３、供給電圧回路４５６、トランジスタ４５３ＡおよびＰＬＤ回路４４５Ｂを含み得る。
【００８２】
ＰＬＤ回路４４５Ａの遮断を希望すると想定されたい。トランジスタ４５０はＰＬＤ回路４４５Ａを供給電圧ＶＤＤに結合する。換言すると、トランジスタ４５０がオンの場合、ＰＬＤ回路４４５Ａは供給電圧ＶＤＤを受け取る。逆もまた同様である。トランジスタ４５０は、制御回路網１３６からの制御信号に応答し、電源をオンおよびオフする。このように、ＰＬＤ回路４４５Ａの電源をオフするために、制御回路網１３６をトランジスタ４５０のゲート信号をデアサート（ｄｅ−ａｓｓｅｒｔ）にし、ＰＬＤ回路４４５Ａへの電源供給を中断させる。その後、制御回路網１３６の監視の下にトランジスタ４５０のゲート信号をアサート（ａｓｓｅｒｔ）することによって、ＰＬＤ回路４４５Ａの電源をオンにし得る。
【００８３】
トランジスタ４５０の電源をオンまたはオフにするよりはむしろ、トランジスタ４５０を可変インピーダンスデバイスとして使用するためにトランジスタ４５０のゲート電圧を制御し得ることに注意されたい。このように、トランジスタ４５０は、極限において、比較的高いインピーダンス（オフ状態）、比較的低いインピーダンス（オン状態）、または、それらの二状態間のインピーダンスレベルを有し得る。その結果、ＰＬＤ回路４４５Ａの電源をオフおよびオンするだけでなく、トランジスタ４５０のインピーダンスを制御することによって、それらの回路内のワット損をも制御する。
【００８４】
供給電圧ＶＤＤをＰＬＤ回路４４５Ａへの供給を制御する（上記のとおり、電源をオン、オフまたはこれらの極限間のどれにでも）トランジスタ４５０を使用することに加えて、またはその代わりに、供給電圧ＶＳＳ（代表的には、回路アース）の供給を制御するトランジスタ４５０Ａを使用し得る。本発明の記述からメリットを享受する当業者は理解するように、動作の詳細は、トランジスタ４５０および供給電圧ＶＤＤに関する上記の詳細と同様である。
【００８５】
ＰＬＤ１０３は、必要に応じ、一つ以上得の供給電圧を使用し得る。換言すると、一次供給電圧ＶＤＤから二次供給電圧を生成するために、供給電圧回路４５６を任意に使用し得る。二次供給電圧４５９は、必要に応じ、一次供給電圧より小さいまたは大きい絶対値を有し得る。さらに、必要に応じ、二つ以上の供給電圧を使用し得る。二次供給電圧４４５Ｂは、ＰＬＤ回路４４５Ｂに電力を供給する。制御回路網１３６の監視の下に、トランジスタ４５３のゲート信号をそれぞれ非表明および表明することによって、ＰＬＤ回路４４５Ｂを遮断またはパワーアップし得る。
【００８６】
トランジスタ４５３の電源をオフまたはオンにするよりはむしろ、トランジスタ４５３を可変インピーダンスデバイスとして使用するためにトランジスタ４５３のゲート電圧を制御し得ることに注意されたい。このように、トランジスタ４５３は、極限において、比較的高いインピーダンス（オフ状態）、比較的低いインピーダンス（オン状態）、または、それらの二状態間のインピーダンスレベルを有し得る。その結果、ＰＬＤ回路４４５Ｂの電源をオフおよびオンするだけでなく、トランジスタ４５３のインピーダンスを制御することによって、それらの回路内のワット損も制御する。
【００８７】
二次供給電圧４５９をＰＬＤ回路４４５Ｂへの供給を制御する（上記のとおり、電源をオン、オフまたはそれらの極限間のどれにでも）トランジスタ４５３を使用することに加えて、またはその代わりに、供給電圧ＶＳＳ（代表的には、回路アース）の供給を制御するトランジスタ４５３Ａを使用し得る。本発明の記述からメリットを享受する当業者は理解するように、動作の詳細は、トランジスタ４５３および二次供給電圧４５９に関する上記の詳細と同様である。
【００８８】
各ＰＬＤ回路４４５Ａおよび／またはＰＬＤ回路４４５Ｂは、必要に応じ、ＰＬＤブロック（たとえば、図１、図３、および図４を参照されたい）、ＰＬＤブロックの部分、またはＰＬＤブロックの一セットを構成し得ることに注意されたい。換言すると、必要に応じ、電力制御技術を、ＰＬＤ内の一つ以上のブロック、サブブロック、またはブロックの部分に選択的に適用し得る。
【００８９】
ＰＬＤの外部ソースに応答し、ボディバイアスレベルを調整、プログラム、または設定し得ることに注意されたい。たとえば、ＰＬＤの性能を調整し、修正するために、ボディバイアスレベルをＰＬＤに伝達し得る。図１０は、外部ソース４７０に応答し、ＰＬＤ内のボディバイアスレベルを調整するための、発明の例示的実施形態に従う回路配置を示す。回路配置は、外部ソース４７０、通信／インタフェース回路４７５、およびボディバイアスジェネレータ４３０を含む。
【００９０】
通信／インタフェース回路４７５は、情報を通信し交換するため、外部ソース４７０のメカニズムおよびボディバイアスジェネレータ４３０を提供する。外部ソース４７０は、一つ以上の制御信号４８０をＰＬＤ１０３内の通信／インタフェース回路４７５に提供し得る。通信／インタフェース回路４７５は、外部ソース４７０から受け取った情報をボディバイアスジェネレータ４３０に提供する。それに応答して、ボディバイアスジェネレータ４３０は、制御信号４８０に対応するレベルを有する一つ以上のボディバイアス信号４３５を生成する。通信／インタフェース回路４７５は、ボディバイアスジェネレータ４３０（または一般的にはＰＬＤ１０３）からのステータス信号などの情報を外部ソース４７０に供給する。
【００９１】
本発明の記述からメリットを享受する当業者は理解するように、外部ソース４７０は、種々のデバイス、構造、または配置を構成し得る。本発明の記述からメリットを享受する当業者は理解するように、たとえば、外部ソース４７０は、必要に応じ、インターネット、コンピュータネットワーク、バスなどを構成し得る。
【００９２】
変化する条件（たとえば、性能仕様における変化）を考慮に入れ、それに応答するため、必要に応じ、ダイナミックまたは時間変動ベースで、ＰＬＤにおけるボディバイアスレベルを調整、プログラムまたは設定し得ることに注意されたい。一例として、図１０を参照すると、外部ソース４７０は、それがＰＬＤ１０３に供給する制御信号４８０を更新、または、修正し得る。応答して、ボディバイアスジェネレータ４３０は、更新されたまたは修正された制御信号４８０に対応するボディバイアス信号４３５を供給する。
【００９３】
別の例として、ＰＬＤ１０３自体内における変化、たとえば、ＰＬＤ１０３の一つ以上の回路または領域における温度の変化、に応答して、ボディバイアスレベルを変更または調整し得る。図１１は、発明の例示的実施形態に従うＰＬＤ内のボディバイアスレベルを修正するための回路配置を示す。
【００９４】
回路配置は、一つ以上の温度センサ５０３、一つ以上の基準ソース５１２、減算器５０９、およびボディバイアスジェネレータ４３０を含む。温度センサ５０３は、ＰＬＤ１０３内の一つ以上の領域、回路またはブロックにおける温度を感知し、温度信号５０６を減算器５０９に供給する。基準ソース５１２は、基準信号５１５を減算器５０９に供給する。基準信号５１５は、種々の温度レベルに対応する数値を有し得る。
【００９５】
減算器５０９は、基準信号５１５を温度信号５０６から減じ、差信号５１８をボディバイアスジェネレータ４３０に供給する。差信号５１８は、ＰＬＤ１０３の一つ以上のパーツにおける実際の温度と所望温度との間の差を構成し得る。
【００９６】
差信号５１８に応答して、ボディバイアスジェネレータ４３０は、ボディバイアス信号４３５を生成する。ボディバイアスジェネレータ４３０は、ＰＬＤ１０３の性能の種々の局面に影響するボディバイアス信号４３５を生成するために差信号５１８を使用し得る。たとえば、差信号５１８が、スレショルド温度または最大温度より低い温度を示す場合、ボディバイアスジェネレータ４３０は、ＰＬＤ１０３内の一つ以上のトランジスタの閾値電圧を減少させる（および従って、性能の向上の原因となる）ボディバイアス信号を生成し得る。対照的に、差信号５１８が、安全レベルまたは最大レベルより高い温度レベルを示す場合、ボディバイアスジェネレータ４３０は、ＰＬＤ１０３内の一つ以上のトランジスタの閾値電圧を増加させる（従って、性能の劣化にもかかわらず温度レベルの減少の原因となる）ボディバイアス信号を生成し得る。
【００９７】
より一般的には、特定の性能基準を目標にして、ボディバイアスレベルを生成するフィードバックループをインプリメントし得る。別の言い方をすると、ＰＬＤの実際の性能手段と所望または特定の手段または基準と比較し、それに従い、ボディバイアスレベルを調整、プログラムまたは設定し得る。
【００９８】
図１２は、発明の例示的実施形態において使用されるＰＬＤにおけるボディバイアスレベルを調整、プログラムまたは設定する処理または技術の流れ図を示す。制御回路網１３６などの適切な回路網（または、回路網およびソフトウェアまたはファームウェアとの組み合わせ）を使用することによって、処理または技術をインプリメントし得る。
【００９９】
処理は以下のとおり動作する。５５０において、ＰＬＤの所望の部分用の初期ボディバイアスレベルを設定またはプログラムする。その後、５５３で、ＰＬＤの性能手段を得る。本発明の記述からメリットを享受する当業者は理解するように、性能手段は、所定の動作に要する時間、消費電力、出力密度、スループット、オンチップセルフテスト結果などの幅広い様々の基準を含み得る。
【０１００】
次に、５５６において、実際の性能手段が所望または指定の基準を満たすかどうかの判断のためチェックする。満たす場合、５５９において、処理は、ボディバイアスレベルをそのままにする。他方、実際の性能手段が所望または指定の基準を満たさない場合、５６２において、処理は、実際の性能手段と所望の性能手段との間の差を減少させるように新しいまたは更新されたボディバイアスレベルを調整、プログラム、または設定する。次に、処理は、５５３に戻り、実際の性能手段に対する新しいボディバイアスレベルの影響をチェックする。処理は、必要に応じ、無期限か所定の回数を継続し得る。
【０１０１】
性能手段（たとえば、動作速度、スループット、消費電力など）をチェックすることに加え、ＰＬＤ内の一つ以上のパーツまたは回路の温度レベルをチェックし得る。図１３は、温度レベルを考慮に入れ、ボディバイアスレベルを調整、プログラム、または設定する処理または技術の流れ図を示す。上記の通り、制御回路１３６などの適切な回路網（または、回路網およびソフトウェアまたはファームウェアとの組み合わせ）を使用することによって、処理または技術をインプリメントし得る。
【０１０２】
５５０において、処理は、ＰＬＤ内の所望のトランジスタ、回路、ブロックなどの初期ボディバイアスレベルを設定、プログラム、または、調整する。５５３において、処理は、性能手段を得る。上記のとおり、性能手段は、幅広いパラメータまたは変数を含み得る。当業者が理解するように、性能手段の選択は、ＰＬＤがインプリメントする回路またはシステムのための設計よび性能仕様などの要因に依存する。
【０１０３】
その後、５５３Ａにおいて、処理は、温度レベルを得る。上記のとおり、ＰＬＤの種々のパーツから一つ以上の温度レベルを得、チェックし得る。例示的実施形態において、任意の識別されたクリティカルパス、または、一般に、比較的に高消費電力および従って比較的に高温度レベルを有し得る任意の回路網から温度レベルを得られ得る。
【０１０４】
５５６Ａにおいて、処理は、実際の性能手段が所望または指定の基準を満たすかどうかの判断のためチェックする。さらに、処理は、実際の温度レベルが所望または指定の基準を満たすかどうか（たとえば、実際の温度が所定の範囲内にあるかまたはスレショルドレベル以下に落ちるかどうか）の判断のためチェックする。
【０１０５】
５５９において、両方ともの条件が当てはまる場合、処理はボディバイアスレベルを不変のままにする。しかし、両方ともの条件が当てはまらない場合、５６２において、処理は、実際の性能手段と所望の性能手段との間の差および実際の温度レベルと所望または所定の温度レベルとの差を減らすように、新しいまたは更新されたボディバイアスレベルを調整、プログラム、または設定する。次に、処理は、５５３に戻り、実際の性能手段、および温度レベルに対する新しいボディバイアスレベルの影響をチェックする。処理は、必要に応じ、無期限か所定の回数を継続し得る。
【０１０６】
その他の実施形態において、ＰＬＤがインプリメントする回路またはシステムの動作環境に応答または依存して、ボディバイアスレベルを調整、プログラムまたは設定し得る。たとえば、通信ネットワークのコントローラまたはルータを実現するために、発明に従うＰＬＤを使用すると仮定されたい。動作時、ＰＬＤは、コントローラまたはルータが動作する環境の条件または特性についての情報を得られ得る。
【０１０７】
たとえば、ＰＬＤは、環境内のトラフィックレベルに関する手段を得られ得る。ＰＬＤの動作環境における条件またはその特性に依存し、ＰＬＤは、ＰＬＤの性能が動作環境の必要性にマッチするように、ＰＬＤの一つ以上のトランジスタにおけるボディバイアスレベルを調整、プログラムまたは設定し得る。もちろん、上の例は、そのようなＰＬＤを使用し得る方法の一例示を構成するに過ぎない。本発明の記述からメリットを享受する当業者は理解するように、発明コンセプトを、回路、システムおよび動作環境で、各々それ自体の特性および条件を有する幅広い回路、システムおよび動作環境に適用し得る。
【０１０８】
図１４は、ＰＬＤが動作する環境の特性または条件を考慮に入れ、ボディバイアスレベルを調整、プログラム、または設定する処理または技術のための流れ図を示す。上記のとおり、制御回路網１３６などの適切な回路網（または、回路網およびソフトウェアまたはファームウェアとの組み合わせ）を使用することによって、処理または技術をインプリメントし得る。
【０１０９】
処理は以下のとおり動作する。５５０において、ＰＬＤの所望の部分のための初期ボディバイアスレベルをプログラムまたは設定する。その後、５５３Ｂにおいて、ＰＬＤが動作する環境、回路またはシステムの一つ以上の条件または特性を得る。上記のとおり、条件または特性は、幅広い様々のアイテムを含み得る。
【０１１０】
次に、５５６Ｂにおいて、処理は、動作環境の条件または特性がＰＬＤのより高い性能レベルを望ましくするどうかについて判断するためにチェックする。（上の例を使用するため、たとえば、ネットワークトラフィックレベルは比較的高く、従って、より高いＰＬＤ性能またはスループットをより望ましくするかどうか）そうでない場合は、５５９において、処理は、ボディバイアスレベルをそのままにする。他方、より高いＰＬＤ性能またはスループットが望ましい場合、５６２において、処理は、実際の性能手段と所望の性能手段との差を減らすように、新しいまたは更新されたボディバイアスレベルを調整、プログラム、または設定する。次に、処理は、５５３Ｂに戻り、実際の性能手段に対する新しいボディバイアスレベルの影響をチェックする。処理は、必要に応じ、無期限か所定の回数を継続し得る。
【０１１１】
所定のアプリケーションまたはインプリメンテーション用の設計および性能仕様などの要因によって、発明コンセプトに従う種々の実施形態を使用し得る。たとえば、図１４を参照すると、図１３に関連し記述された実施形態と同様に、必要に応じ、ＰＬＤの種々のパーツの温度レベルを考慮に入れ得ることに注意されたい。
【０１１２】
別の言い方をすると、より高いＰＬＤ性能またはスループットの望ましさを検査するのみならず、ＰＬＤ内の温度レベルまたは出力密度が向上したＰＬＤ性能を安全または適切にするかどうかについても検査する。図１５は、そのような実施形態を実現する処理を示す。その手順をアプリケーションによって、所望の回数を繰り返し得る。上記のとおり、制御回路網１３６などの適切な回路網（もしくは、回路網およびソフトウェアまたはファームウェアとの組み合わせ）を使用することによって、処理または技術をインプリメントし得る。
【０１１３】
本開示の別の局面は、ＰＬＤ内の選択された回路または領域の遅延を測定することによって、ＰＬＤ内の回路網のボディバイアスの設定または調整に関する。図１６は、ユーザー回路のトランジスタのボディバイアスを、ユーザー回路の動作遅延を表す遅延に基づき調整する回路配置を示す。より具体的には、回路配置は、ＰＬＤ１０３、ＰＬＤ領域６０６、ユーザー回路６０９、遅延回路６１２、およびボディバイアスコントローラ６０３を含む。
【０１１４】
ＰＬＤ領域６０６は、ユーザー回路６０９および遅延回路６１２を含む。ユーザー回路６０９は、ユーザーインプリメントまたは指定の回路、または回路の部分（たとえば、クリティカルパス）などの任意の所望の回路網を含み得る。遅延回路６１２は、ユーザー回路６０９の実際の遅延を表すか、またはそれのモデルとなる。一般に、遅延は、ユーザー回路６０９の遅延を表し、遅延は、ユーザー回路６０９と同じ遅延を有する必要はない。たとえば、遅延回路６１２は、必要に応じ、ユーザー回路６０９と同じ遅延、２倍の遅延、半分の遅延などを有し得る。
【０１１５】
遅延回路６１２は、信号リンク６１５（導体などの一つ以上の結合メカニズム）を介して、ボディバイアスコントローラ６０３と結合する。遅延回路６１２の実際の遅延に応答して、ボディバイアスコントローラ６０３は、一つ以上のボディバイアス信号をＰＬＤ領域６０６の少なくともいくつかのトランジスタを提供する（詳細は以下に記述される）。
【０１１６】
図１６は、二つのボディバイアス信号Ｖｂ１およびＶｂ２を示すことに注意されたい。ボディバイアス信号は、ＰＬＤ領域６０６における少なくとも一つのトランジスタのボディバイアスを調整または設定する。たとえば、一方のボディバイアス信号（たとえば、Ｖｂ１）は、ＰＭＯＳトランジスタのボディバイアスを設定し得るが、他方のボディバイアス信号（たとえば、Ｖｂ２）ＮＭＯＳトランジスタであるボディバイアスを設定し得る、などである。ユーザー回路６０９におけるトランジスタのボディバイアスを調整することによって、上記のとおり、ユーザー回路の速度とリークとを制御または調整し得る。
【０１１７】
図１７は、発明の例示的実施形態に従うボディバイアスコントローラ６０３のブロック図を示す。ボディバイアスコントローラ６０３は、基準信号ジェネレータ６２５、遅延回路６１２、位相比較器６３７、およびボディバイアスジェネレータ４３０を含む。任意に、ボディバイアスコントローラ６０３は、詳細は以下に記述のとおり、ＭＵＸ６２７を含み得る。
【０１１８】
基準信号ジェネレータ６２５は、クロック信号６２８から基準信号６３１を生成する。回路の実際の設計およびインプリメンテーションに依存する要因（たとえば、遅延回路６１２における遅延とユーザー回路６０９における遅延との関係など）により、基準信号６３１は、必要に応じ、クロック信号６２８と特定の関係を有し得る。たとえば、基準信号６３１は、クロック信号６２８の半分の周波数を有し得る。基準信号６３１は、遅延回路６１２に入力（ｆｅｅｄ）する。応答して遅延回路６１２は、基準信号６３１の遅延バージョンである出力信号６３４を生成する。
【０１１９】
必要に応じ、多数のクロック信号６２８Ａの一つを選択する能力を提供するＭＵＸ６２７を任意に使用し得ることに注意されたい。以下に詳細に記述されているように、ボディバイアスコントローラ６０３は、クロック信号６２８の周期を使用し基準回路の遅延を測定し、その測定の結果を使用して、ボディバイアス信号を生成しＰＬＤ１０３内の種々の回路へ供給する。ＭＵＸ６２７の選択信号６２７Ａによって、選ばれたクロック信号が所望または特定の周期を有するようにクロック信号６２８Ａの一つを選択し得る。その方法によって、ボディバイアスコントローラ６０３の柔軟性を増加し得る。
【０１２０】
位相比較器６３７は、基準信号６３１と遅延回路６１２の出力信号６３４を比較する。二つの信号の相対位相によって、比較器６３７は、出力信号６４０（スピードアップ）および出力信号６４３（スローダウン）を生成する。出力信号６４０および６４３は、ボディバイアスジェネレータ４３０を駆動する。ボディバイアスジェネレータ４３０は、出力信号６４０および６４３に応答して、ボディバイアス信号を生成する。図１７に示す特定の例において、ボディバイアスジェネレータは、ボディバイアス信号６４６（νｂ１）およびボディバイアス信号６４９（νｂ２）を生成する。
【０１２１】
図１８は、本発明の例示的実施形態に従う基準信号ジェネレータ６２５の回路配置を示す。基準信号ジェネレータ６２５は、フリップフロップ６６０ならびにインバータ６６３および６６６を含む。この特定の例において、基準信号ジェネレータ６２５は、２で割る回路を構成する。このように、フリップフロップ６６０およびインバータ６６３は、クロック信号６２８の周波数の半分を有する信号を生成する。インバータ６６６は、その信号をバッファリングし、基準信号６３１を供給する。本発明の記述からメリットを享受する当業者は理解するように、回路構成およびアプリケーションによって、必要に応じ、インバータ６６６を使用する必要がなく、それを省き得る。
【０１２２】
図１９は、発明の例示的実施形態に従う位相比較器６３７の回路配置を示す。比較器６３７は、排他的ＯＲ（ＸＯＲ）ゲート６７５、およびフリップフロップ６８１を含む。遅延回路６１２の出力は、ＸＯＲゲート６７５の１入力に入力（ｆｅｅｄ）する。基準信号６３１は、ＸＯＲゲート６７５の第２の入力に入力する。
【０１２３】
ＸＯＲゲート６７５の出力は、フリップフロップ６８１のデータ（Ｄ）入力に入力する。クロック信号６２８はフリップフロップ６８１および６８４を駆動する。フリップフロップ６８１の出力Ｑは出力信号６４０
【０１２４】
【数３】
2007538474.tif 000005
を供給する。出力信号が高いことは、回路があまりに遅く流れていることを示し（より順のボディバイアスを有すべき）、を示し、逆もまた同様である（低信号は、回路がより逆のボディバイアスを有すべきことを示す）。
【０１２５】
遅延回路６１２による遅延がクロック信号６２８の周期より短い場合、ユーザー回路は、あまりに速く動作する。この場合、ゲート６７５の出力は、クロック信号６２８の立ち上がり遷移時にロジックゼロとなる。逆に、遅延回路６１２による遅延がクロック信号６２８の周期より長い場合、ユーザー回路は、あまりに遅く動作する。それらの状況の下に、ＸＯＲゲート６７５は、クロック信号６２８の立ち上がり遷移時の出力時にロジックハイ信号を供給する。その結果、フリップフロップ６８１はスピードアップ出力信号を提供する。
【０１２６】
図２０は、発明の例示的実施形態に従う位相比較器６３７の別の回路配置を示す。図１９と同様に、図２０の比較器６３７は、排他的ＯＲ（ＸＯＲ）ゲート６７５、排他的ＮＯＲ（ＸＮＯＲ）ゲート６７８、およびフリップフロップ６８１および６８４を含む。さらに、図２０の比較器６３７は不感帯遅延回路６９０を含む。不感帯遅延回路６９０は、ＰＬＤ１０３内のトランジスタをより安定に電力効率的なボディバイアス調整を行う。
【０１２７】
より具体的には、不感帯遅延回路６９０は、ＸＮＯＲゲート６７８が基準信号６３４自体よりはむしろ、基準信号６３４の遅延バージョンを受信する原因となる。不感帯遅延回路６９０がない場合、比較器６３７は、ユーザー回路６０９用の平衡速度、リーク、消費電力を見つけるよう求めるので、比較器のスピードアップおよびスローダウン出力信号を繰り返しおよび交互にアサートし得る。ボディ調整を繰り返す（トランジスタボディの充電と放電）と、電力消費の増加、および従って、効率の低下の原因となる。
【０１２８】
不感帯遅延回路６９０は、比較器６３７が、その出力時に、「チャタ（ｃｈａｔｔｅｒ）」がより少なくなるように助ける。別の言い方をすると、遅延回路６１２および不感帯遅延回路６９０を含む比較器６３７の場合（すなわち、図２０）、一つの遅延回路は最小遅延を形成し、両方の合計は最大の遅延を形成する。クロック信号６２８の周期が両方の遅延の合計を超えた場合、ユーザー回路６０９はあまりに速く動作する。その結果、比較器６３７はスローダウン出力信号をアサートする。
【０１２９】
逆に、クロック周期が遅延回路６１２の遅延より短い場合、ユーザー回路６０９は、あまりに遅く動作する。その結果、比較器６３７はスピードアップ出力信号をアサートする。ユーザー回路６０９が、速度の許容可能または所定の範囲内で（対応するリークおよび消費電力レベルを伴って）動作する場合、比較器６３７は、その出力信号のいずれもアサートしない。その結果、比較器６３７は、ユーザー回路６０９の許容可能な動作速度を達成するために、比較器の出力信号の繰り返しの変更を避ける。
【０１３０】
遅延回路６１２は、固定または調整可能または構成可能な遅延のいずれかを提供し得ることに注意されたい。固定遅延の場合、遅延回路６１２は、所望または所定の遅延を有するロジック回路を含む。たとえば、遅延回路６１２は、ゲートなどの組み合わせの論理要素の配置を含み得る。プログラマブルロジック１０６およびプログラマブルルーティングまたは相互接続１０９などの、ＰＬＤ１０３のプログラマブルリソースを使用して遅延回路６１２をインプリメントし得る（図１を参照されたい）。
【０１３１】
代わりに、遅延回路６１２は、構成可能な遅延を有し得る。図２１は、発明に従う例示的実施形態における使用のための構成可能な遅延回路６１２を示す。図２１の遅延回路６１２は、構成または調整信号７０３の１セットを受け入れる。信号７０３は、Ｂ０〜Ｂｉで示されるビットの１セットを含む。構成信号７０３は、遅延回路６１２の遅延を調整または構成する。換言すると、構成信号７０３においてビットの値を設定することによって、時間量を調整し得、その時間量によって遅延回路６１２は、その出力信号を生成するためにその入力信号を遅延させる。
【０１３２】
図２２は、発明の例示的実施形態に従う構成可能な遅延回路の回路配置を示す。構成可能な遅延回路は、相互接続またはルーティング遅延要素７１０の１セットのカスケード結合、ロジック遅延要素７１９の１セットのカスケード結合、ＭＵＸ７１３およびＭＵＸ７２５を含む。
【０１３３】
ルーティング遅延要素７１０の出力信号は、ＭＵＸ７１３の入力信号を構成する。ＭＵＸ７１３はまた、一つ以上の選択信号７１６を受信する。本発明の記述からメリットを享受する当業者は理解するように、選択信号７１６の数は、ルーティング遅延要素７１０の数に依存する。選択信号７１６によって、ルーティング遅延要素７１０の一つの出力をＭＵＸ７１３の出力に選択的に結合し得る。このように、第１のルーティング遅延要素の入力信号（基準信号６３１）からＭＵＸ７１３の出力までの遅延の量を構成し得る。
【０１３４】
同様に、ロジック遅延要素７１９の出力信号は、ＭＵＸ７２５の入力信号を供給。ＭＵＸ７２５もまた、一つ以上の選択信号７２８を受信する。本発明の記述からメリットを享受する当業者は理解するように、選択信号７２８の数は、ロジック遅延要素７１９に依存する。選択信号７２８を使用することによって、ロジック遅延要素７１９の一つの出力をＭＵＸ７２８の出力へ選択的に結合し得る。従って、第１のロジック遅延要素の入力信号（すなわち、ＭＵＸ７１３の出力信号）からＭＵＸ７２５の出力までの遅延の量を構成し得る。
【０１３５】
ＭＵＸ７１３およびＭＵＸ７２５を使用することによって、所望数のルーティング遅延要素７１０とロジック遅延要素７１９とのそれぞれの遅延組み合わせを構成するために構成可能な遅延回路の遅延を構成し得る。このように、遅延回路の遅延がユーザーの回路の遅延を表すように、遅延回路を構成し得る（たとえば、詳細上記のＰＬＤ構成ソフトウェアによって）。さらに、必要に応じ、ダイナミックな方法で（変化する動作環境、外部制御、ユーザー制御に応答して）遅延を構成し得る。
【０１３６】
図２３は、本発明の例示的実施形態に従うルーティング遅延要素７１０用の回路配置を示す。ルーティング遅延要素７１０は、ＭＵＸ７３５およびインバータ７３８を含む。ＭＵＸ７３５およびインバータ７３８は、一緒になって、ＰＬＤ１０３内の代表的なルーティングメカニズム（その対応する遅延を含む）を表すよう捜す。ＭＵＸ７３５は、その入力の一つおよびその選択入力が接地され、その結果、ＭＵＸ７３５はその入力信号をインバータ７３８に結合する。インバータ７３８の出力信号は、ルーティング遅延要素７３８の出力信号を構成する。このように、ルーティング遅延ロジック７１０は、その出力信号としてその入力信号の反転したバージョンを供給する。
【０１３７】
図２４は、発明の例示的実施形態に従うロジック遅延要素７１９の回路配置を示す。ロジック遅延要素７１９は、送信ゲート７４５、送信ゲート７４８、インバータ７５１、およびインバータ７５４を含む。ロジック遅延要素７１９内の回路要素は、一緒になって、ＰＬＤ１０３内のプログラマブルロジック回路（およびその回路の対応する遅延）を表すように求める。送信ゲート７４５および７４８およびインバータ７５１は、入力信号（そのロジック値に関わらず）をインバータ７５４の入力に結合するためのメカニズムを提供する。インバータ７５４の出力信号は、ロジック遅延要素７１９の出力信号を構成する。このように、ロジック遅延ロジック７１９は、その出力信号としてその入力信号の反転したバージョンを供給する。
【０１３８】
図（たとえば、図１８〜２０および２２〜２４）は、図が表すそれぞれの回路の例示的な実施形態を提供するに過ぎないことに注意されたい。本発明の記述からメリットを享受する当業者は理解するように、設計および性能仕様などの要因によって、必要に応じ、その他の回路および実施形態を使用し得る。
【０１３９】
単なる一例として、離散的時間出力値を有する比較器を使用するよりはむしろ、連続的時間出力値を有する比較器を使用し得る。さらに、調整可能またはプログラマブルなボディバイアス信号をＰＬＤ１０３の種々のパーツに供給するために、必要に応じ、二つ以上のボディバイアスコントローラ６０３（および比較器）を使用し得る。
【０１４０】
別の例として、必要に応じ、たとえば、制御回路網１３６（図１を参照されたい）のパーツとしての専用の回路網を使用して、図にある種々の回路（たとえば、ボディバイアスコントローラ６０３）を実現し得る。代案として、必要に応じ、ＰＬＤ１０３のプログラマブルリソースにおけるそれらの回路（たとえば、図１、図３、および図４を参照されたい）すなわち、プログラマブルロジック１０６およびプログラマブル相互接続１０９、をインプリメントし得る。本発明の記述からメリットを享受する当業者は、これらの二つの手法の組み合わせを使用し得ること理解する。換言すると、必要に応じ、一部ではＰＬＤ１０３のプログラマブルリソースを使用することによって、および、一部では専用の回路網を使用して、回路網を実現し得る。インプリメンテーションがＰＬＤプログラマブルリソースを使用する場合、ＰＬＤ  ＣＡＤソフトウェアは（たとえば、図６Ａおよび附属の説明を参照されたい）、ＰＬＤ１０３のプログラマブル構造（プログラマブルロジック１０６およびプログラマブル相互接続１０９）内の種々の回路要素を配置し、伝送する。
【０１４１】
さらに、ＰＬＤ  ＣＡＤソフトウェアは、遅延回路１１２をインプリメントする回路要素（組み合わせのロジック要素またはルーティング遅延要素７１０およびロジック遅延要素７１９）を選択、配置、および伝送する。ＰＬＤ  ＣＡＤソフトウェアは、遅延回路６１２がユーザー回路６０９の遅延を表すように回路要素を選択する。ＰＬＤ  ＣＡＤソフトウェアは、構成メモリ１３３のビット値をプログラムし（図１を参照されたい）、構成メモリ１３３は、その後、ＭＵＸ選択信号６２７Ａ（図１７を参照されたい）および構成信号７０３（図２１を参照されたい）などの種々の構成またはプログラム信号用の値を供給する。代わりの実施形態において、ユーザーは、ユーザー回路６０９をモデルにするため、遅延回路６１２のパラメータを定義し得る。代わりの実施形態は、ユーザーに対しＰＬＤ回路網の性能をユーザーの仕様または要件に適合させる能力を提供する。
【０１４２】
一つの遅延回路６１２および比較器６３７を使用するよりはむしろ、その代わりに必要に応じ、複数の遅延回路６１２および／または比較器６３７を使用し得ることに注意されたい。そうすることによって、遅延連鎖によって提供される遅延のより多くの解決、および従って、ボディバイアスコントローラの収束の改善を提供し得る。
【０１４３】
開示の別の局面は、一般に、ＩＣ内のトランジスタの性能（リーク、速度、およびワット損）を直接に調整またはプログラムする（それらのトランジスタを含む回路の性能をモデルにする遅延回路を使用するよりはむしろ）ことに関する。より具体的には、ＩＣ内の一つ以上のトランジスタのリークレベルをトランジスタのボディバイアスをプログラムまたは調整することによって設定するために、リークロックループ（ＬＬＬ）を使用し得る。
【０１４４】
リークロックループ技術は、リーク電流の尺度としての代表遅延を使用することによる間接制御よりはむしろ、その技術が回路のリークを直接に制御する能力を提供するというメリット有する。その技術は、ユーザーが許容または所望リークレベルを指定し、性能とリーク電流およびワット損との間の所望のトレードオフを選択し指定することを可能にする。リークロックループのコンセプトを、一般に、ＰＬＤを含むＩＣに適用し得ることに注意されたい。
【０１４５】
図２５は、発明の例示的実施形態に従った、リークロックループのブロック図を示す。リークロックループは、基準トランジスタ７６０、リーク測定回路７６６、加算器７７５、およびボディバイアスジェネレータ４３０を含む。一般的に言って、リークロックループは負フィードバック回路を含む。リークロックループは、ＩＣ回路７６３内のトランジスタのリーク電流を測定するために、基準トランジスタ７６０を使用し、それらのトランジスタ用のボディバイアス信号を生成するために、測定されたリーク電流を使用する。
【０１４６】
必要に応じ、また、本発明の記述からメリットを享受する当業者は理解するように、他の量を測定するリークロックループの他の実施形態を設計し得、一つ以上のユーザー指定の基準を満たすように一つ以上のトランジスタのボディバイアスを調整し得ることに注意されたい。そのような量の例は、基準トランジスタの閾値電圧（ＶＴ）または基準トランジスタの飽和電流（Ｉｄｓａｔ）を含む。
【０１４７】
基準トランジスタ７６０は、ＩＣ回路７６３にある。必要に応じ、二つ以上の基準トランジスタ７６０を使用し得ること（たとえば、ＩＣ回路７６３の二箇所以上の場所におけるリーク電流を測定すること）に注意されたい。ＩＣ回路７６３は、ＩＣの性能がボディバイアスレベルによって調整またはプログラムされるように求められるそのＩＣ内の回路網を構成する。たとえば、ＩＣはＰＬＤであるという状況において、ＩＣ回路７６３は、ユーザー回路６０９を構成し得る（たとえば、図１６を参照されたい）。
【０１４８】
一般に、ＩＣ回路７６３のトランジスタ（基準トランジスタ７６０を含む）が同様な電気的特性を有するようにし、条件の変動（たとえば、処理、電圧、および温度、またはＰＶＴ）がＩＣ回路７６３全体のボディバイアスのプログラムを実質的に劣化しないように、ＩＣ内の回路網の十分に小さな部分を含めて、ＩＣ回路７６３を選択する。
【０１４９】
リーク測定回路７６６は、基準トランジスタ７６０のリークを測定し、リーク信号７６９を加算器７７５へ供給する。加算器７７５は、リーク信号７６９を基準リーク信号（νｒｅｆ）７７２に比較し、エラー信号７７８を生成する。ボディバイアスジェネレータ４３０は、エラー信号を使用し、一つ以上のボディバイアス信号４３５を生成する。ボディバイアスジェネレータ４３０は、ボディバイアス信号４３５をＩＣ回路７６０内の所望のトランジスタに供給する。
【０１５０】
図２５のリークロックループにおいて、必要に応じ、構成可能コンポーネントを使用し得ることに注意されたい。たとえば、必要に応じ、リーク測定回路７６６（構成可能利得）、構成可能加算器７７５（構成可能利得）または加算器７７５に続く個別の利得ブロック、構成可能基準リーク信号７７２（構成可能レベル）、および／またはボディバイアスジェネレータ４３０における構成可能利得を使用し得る。ＰＬＤ構成ＲＡＭビット、ＰＬＤ上のユーザー回路からの信号、またはこの二つの組み合わせを、それらの構成可能コンポーネントの各々を構成するために、必要に応じ、使用し得ることに注意されたい。
【０１５１】
図２６は、発明の別の例示的実施形態に従ったリークロックループのブロック図を示す。図２６におけるリークロックループは、基準トランジスタ７６０（ＩＣ回路７６３にある）、リーク測定回路７６６、基準値および比較器回路７７５、フィルタ７８７、およびボディバイアスジェネレータ４３０を含む。
【０１５２】
基準トランジスタ７６０およびＩＣ回路７６３は、図２５に関連する上記のそれらのものと同じかまたは同様の構成を有する。リーク測定回路７６６は、制御信号７８１によって、プログラマブル利得を供給する。より具体的には、リーク測定回路７６６がリーク信号７６９を供給するために、測定されたリーク電流に印加する利得は、制御信号７８１によって、調整し得る。
【０１５３】
基準値および比較器回路７７５は、リーク信号を処理する。基準値および比較器回路７７５は、必要に応じて、プログラマブル基準値、プログラマブル利得、またはその両方を、制御信号７８４によって供給する。換言すると、制御信号７８４によって、基準リーク信号（図２５の基準リーク信号７７２に類似した）、リーク信号７６９を基準リーク信号と比較しリークエラー信号７７８を生成する比較器（明白には示されていない）、またはその両方を、必要に応じ、調整し得る。基準値および比較器回路７７５は、必要に応じて、比較器の出力信号を量子化する量子化器を任意に含み得る。
【０１５４】
フィルタ７８７は、リークエラー信号７７８を濾波および処理し、濾波された信号７９０を生成する。ボディバイアスジェネレータ４３０は、図２５に関連する上記の方法で動作し、一つ以上のボディバイアス信号をＩＣ回路２６３に供給する。
【０１５５】
必要に応じ、フィルタ７８７をリークロックループから省略し得ることに注意されたい。フィルタ７８７は、利得ブロックまたは回路、ローパス転送機能または積分器トランジスタ機能などの所望の転送機能を有し得る。本発明の記述からメリットを享受する当業者は理解するように、フィルタ７８７およびその特定の転送機能を含めるかどうかの選択は、設計および性能仕様ならびに考慮に依存する。
【０１５６】
必要に応じ、リーク測定回路７６６、および、基準値および比較器回路７７５を種々の方法によって実行し得る。本発明の記述からメリットを享受する当業者は理解するように、回路の選択およびインプリメンテーションは、種々の要因（たとえば、使用されるＩＣ技術、所望の性能特性など）に依存する。図２７〜図２９は、いくつかの例を提供する。
【０１５７】
図２７は、発明の例示的実施形態に従ったリーク測定回路７６６を示す。リーク測定回路７６６は、ＰＭＯＳトランジスタ８０３および８０５、基準トランジスタ７６０、および複数のＮＭＯＳトランジスタ８０８Ａ〜８０８Ｄを含む。
【０１５８】
基準トランジスタ７６０のゲートはそのソースに結合し、そのことは、基準トランジスタ７６０をオフ状態にする。このように、基準トランジスタ７６０を通じて伝導される電流は、基準トランジスタのリーク電流を表す。トランジスタ８０３は、基準トランジスタ７６０とシリアルに結合する。トランジスタ８０３のゲートは、そのトランジスタのドレインに結合する（いわゆる「ダイオード接続構成」）。
【０１５９】
トランジスタ８０３およびトランジスタ８０５は、電流ミラーを形成する。電流ミラーは、リーク電流（基準トランジスタ７６０を通った電流）を増幅する。本発明の記述からメリットを享受する当業者は理解するように、増幅のレベルは、トランジスタ８０３および８０５の相対サイズに依存する。
【０１６０】
電流ミラーによって増幅される電流は、オン状態の任意のトランジスタ８０８Ａ〜８０８Ｄを通して流れる。トランジスタ８０８Ａ〜８０８Ｄは、構成可能な出力電流（リーク電流７６９）を供給する。適切なレベルの制御信号７８１を印加することによってトランジスタ８０８Ａ〜８０８Ｄを選択的にオンにすることによって、出力電流を構成し得る。一般に、ｉビットを有する制御信号７８１に関して、基準電流の２ｉレベルを供給する。トランジスタ８０８Ａ〜８０８Ｄは、制御信号７８１に応答し所望の基準電流プロファイルを供給するように選択された相対サイズを有し得る。
【０１６１】
本発明の記述からメリットを享受する当業者は理解するように、トランジスタの数とサイズの種々の組み合わせを使用し得る。一例として、トランジスタ８０８Ｂ〜８０８Ｄの各々がその前のトランジスタの２倍の幅を有するように（２進重み付け構成）、トランジスタ８０８Ａ〜８０８Ｄのサイズを決め得る。一つの例示的実施形態において、所定のチャネル長に関して、トランジスタ７６０は２００の幅を有し、トランジスタ８０３は１の幅、トランジスタ８０５は５０の幅、トランジスタ８０８Ａは１の幅、およびトランジスタ８０８Ｂ〜８０８Ｄは２進重み付け幅を有する（すなわち、トランジスタ８０８Ｂは２の幅、トランジスタ８０８Ｃは４の幅、など）。
【０１６２】
図２８は、発明の例示的実施形態に従った基準値および比較器回路７７５を示す。回路は、抵抗８１８、抵抗８２１および比較器８１５を含む。抵抗８１８および８２１は、リーク基準信号７７２を比較器８１５に供給する分圧器を形成する。所望の基準レベルを供給するように、抵抗８１８および８２１の値を選択し得る。比較器８１５は、リーク信号７６９をリーク基準信号７７２と比較し、リークエラー信号７７８を供給する。比較器８１５は、必要に応じ、構成可能な利得を有し得る（制御信号７８４に応答して）。図２８は簡略な比較器８１５を示し、その比較器８１５は、必要に応じ、比較的正確な基準電圧を供給するために安定した基準回路を含め得ることに注意されたい。
【０１６３】
図２９は、発明の別の例示的実施形態に従った基準値および比較器回路７７５を示す。回路は、抵抗８２４、抵抗８２７、抵抗８３０、比較器８１５Ａ、比較器８１５Ｂ、およびカウンタ８３９を含む。比較器８１５Ａおよび／または８１５Ｂは、必要に応じ、構成可能な利得を有し得る（制御信号７８４に応答して）。
【０１６４】
図２９における基準値および比較器回路７７５は図２８の回路と同様であるが、この回路は、リーク電流用に下限と上限を供給するように二つの基準信号を使用する。より具体的には、抵抗８２４、８２７、および８３０は、リーク基準信号７７２Ａを比較器８１５Ａに供給し、リーク基準信号７７２Ｂを比較器８１５Ｂに供給する分圧器を形成する。リーク基準信号７７２Ａおよび７７２Ｂは、リーク電流用の上下限を構成する。別の言い方をすると、リーク基準信号７７２Ａおよび７７２Ｂは、リーク電流用の値の「ウィンドウ」を供給する。リーク基準信号７７２Ａおよび７７２Ｂの所望のレベルを供給するように、抵抗８２４、８２７、および８３０の値を選択し得る。
【０１６５】
比較器８１５Ａは、リーク信号７６９をリーク基準信号７７２Ａと比較し、ダウン信号８３３を供給する。ダウン信号８３３は、カウンタ８３９をカウントダウンさせる（すなわち、ＩＣ回路の動作速度を下げる）。逆に、比較器８１５Ｂは、リーク信号７６９をリーク基準信号７７２Ｂと比較し、アップ信号８３６を供給する。アップ信号８３６は、カウンタ８３９をカウントアップさせる（すなわち、ＩＣ回路の動作速度を上げる）。別の言い方をすると、カウンタ８３９は、図２６のフィルタ７８７としての積分器を使用することに類似している。カウント信号８４２は、カウンタ８３９の電流カウント値を提供する。ボディバイアスジェネレータ４３０（図２９に示されない）カウント信号８４２を使用し、ボディバイアス信号４３５（図２９に示されない）を生成し、その信号をＩＣ回路７６３に供給する。
【０１６６】
ボディバイアスレベルの制御またはプログラムをさらに供給するために、必要に応じ、ＩＣ内に二つ以上のボディバイアスジェネレータ回路４３０を含め得る。そのような構成において、各ボディバイアスジェネレータ４３０は一つ以上のボディバイアス信号４３５を回路（ＩＣ回路７６３など）またはＩＣ内の領域に供給する。
【０１６７】
このように、ボディバイアスジェネレータ４３０をプログラムし、ＩＣの各回路または領域用の特定のまたは個々に区別されたボディバイアス信号を供給し得る。代案として、ユーザーは、ＩＣの所定の回路または領域用にボディバイアス信号４３５の所望の数およびレベルを生成するようにボディバイアスジェネレータ４３０用のプログラムを特定し、または供給し得る。特に適合されまたはプログラムされたボディバイアスレベルは、ＩＣの各回路または領域用に性能とリークおよびワット損とのトレードオフを可能にする。その結果、ユーザーは、より細かい粒状度で、ＩＣ内の種々の部品および回路について性能と電力とのトレードオフに対する制御を増加させる。
【０１６８】
図３０は、発明の例示的実施形態に従った、ＩＣにおける複数のボディバイアス回路を供給するための回路配置を示す。回路配置は、ＩＣ領域８７０、ＩＣ回路７６３Ａ〜７６３Ｃのセット、対応する数のＭＵＸ８７５Ａ〜８７５Ｃ、およびボディバイアスジェネレータ４３５Ａ〜４３５Ｃを含む。
【０１６９】
ボディバイアスジェネレータ４３０Ａ〜４３０Ｃの各々は、ボディバイアス信号４３５Ａ〜４３５Ｃとして示される一つ以上のボディバイアス信号を生成し、信号をＭＵＸ８７５Ａ〜８７５Ｃの各々に供給する。選択信号８８０に応答し、ＭＵＸ８７５Ａ〜８７５Ｃの各々は、ボディバイアスジェネレータ４３５Ａ〜４３５Ｃの一つからのボディバイアス信号を選択し、選択されたボディバイアス信号をＩＣ回路７６３Ａ〜７６３Ｃの対応する一つに供給する。
【０１７０】
ＭＵＸ８７５Ａ〜８７５Ｃを使用するよりはむしろ、プログラマブル不揮発性結合メカニズム（ヒューズなど）を使用し得る。そのような状況において、個々のＩＣの特性（たとえば、リークのレベル）を判定するために、製作後個々のＩＣをテストし得、所望または適切なボディバイアス信号をＩＣの種々の領域または回路に供給するように不揮発性結合メカニズムをプログラムし得る。多数のボディバイアスジェネレータを含むことによって、ユーザーは、それらの領域または回路のボディバイアスレベルを独立してプログラムする能力が与えられる。
【０１７１】
別の実施形態において、不揮発性メモリに記憶された値（ＩＣの特性（たとえば、リークレベル）またはＩＣ内の特定の領域または回路に関係する値など）とユーザー構成またはユーザー特定の値との組み合わせを使用し、ボディバイアスレベルを生成し得る。この案は、性能とワット損およびリークレベルとをトレードオフするために、ＩＣの特性およびユーザー特定のパラメータの両方を考慮に入れることを可能にする。
【０１７２】
ＰＬＤの場合、ＰＬＤ領域８７０は、ＰＬＤ領域６０６を構成し得（たとえば、図２５を参照されたい）、各ＩＣ回路７６３はユーザー回路６０９に対応し得る。一つ以上の適合またはプログラムされたボディバイアス信号４３５をＰＬＤ１０３内の各ユーザー回路６０９（たとえば、図２５を参照されたい）に供給し得る。別の実施形態において、ＩＣ回路７６３は、ＰＬＤ回路（プログラマブルロジック１０６およびプログラマブル相互接続１０９）の物理的に近いセット、またはプログラマブルロジック１０６およびプログラマブル相互接続１０９の選択されたグループ（たとえば、図３の長方形のアレイに配列されたプログラマブルロジック回路１０６のグループ）に対応し得る。
【０１７３】
図３０は、ボディバイアス信号４３５Ａ〜４３５Ｃを供給する回路網としてのボディバイアスジェネレータ４３０Ａ〜４３０Ｃを示す。ＰＬＤの場合、一般に、ボディバイアスジェネレータ４３０Ａ〜４３０Ｃよりはむしろ、ボディバイアスコントローラ６０３Ａ〜６０３Ｃ（たとえば、図２５を参照されたい）を使用し得る。
【０１７４】
図３０は、ＩＣ回路７６３Ａ〜７６３Ｃを含むとしてのＩＣ領域８７０を示すことに注意されたい。しかし、本発明の記述からメリットを享受する当業者は理解するように、逆の状況が存在し得る（すなわち、各ＩＣ回路は一つ以上のＩＣ領域８７０含み得る）。
【０１７５】
上記の性能同調コンセプトをその他の技術と組み合わせ、出力密度を減少し、または出力密度を安全な範囲内に維持し得ることにさらに注意されたい。たとえば、ＰＬＤ内の種々の回路をオンまたはオフにし得（図９および添付の説明を参照されたい）、所望の性能レベルと安全または所定の消費電力レベルまたは出力密度とのトレードオフを達成し得る。その他の変種および実施形態は、本発明の記述からメリットを享受する当業者にとって、明らかであろう。
【０１７６】
一般に、必要に応じ、また、本発明の記述からメリットを享受する当業者は理解するように、発明コンセプトを、当業界で他の名前で公知の種々のプログラマブルロジック回路網またはＩＣへ効果的に適用し得ることに注意されたい。そのような回路網は、複合プログラマブルロジックデバイス（ＣＰＬＤ）、プログラマブルゲートアレイ（ＰＧＡ）、およびフィールドプログラマブルゲートアレイ（ＦＰＧＡ）として公知のデバイスを含む。
【０１７７】
図を参照すると、当業者は、示された種々のブロックは主としてコンセプトの機能および信号流れを示し得ることに気づく。実際の回路インプリメンテーションは、種々の機能ブロック用の別々に識別可能なハードウェアを含み得または含まれ得なく、また、示された特定の回路網を使用し得または使用し得ない。
【０１７８】
たとえば、必要に応じ、種々のブロックの機能性を一つの回路ブロックに結合し得る。さらに、必要に応じ、いくつかの回路ブロックにおいて一つのブロックの機能性を実現し得る。本発明の記述からメリットを享受する当業者は理解するように、回路インプリメンテーションの選択は、所定のインプリメンテーション用の特定の設計および性能仕様などの種々の要因に依存する。
【０１７９】
この明細書に記述された発明の実施形態に加えて、その他の修正および代わりの実施形態は、本発明の記述からメリットを享受する当業者にとって、明らかであろう。従って、この記述は、当業者に発明の実施方法を教え、例示的としてのみと解釈すべきである。
【０１８０】
示され記述された発明の形式は、現在好適なまたは例示的な実施形態として解すべきである。当業者は、本明細書に記述された発明の範囲から逸脱することなく、形状、サイズ、および部品の配置における種々の変更を行い得る。たとえば、当業者は、本明細書に例示および記述されたエレメントの代わりに同等のエレメントを用い得る。さらに、本発明の記述からメリットを享受する当業者は、発明の範囲から逸脱することなく、発明の特定の特徴を他の特徴の使用とは無関係に使用し得る。
【図面の簡単な説明】
【０１８１】
【図１】図１は、本発明の実施形態に従う、ＰＬＤの全体ブロック図を示す。
【図２】図２は、本発明に従う、例示的実施形態において使用されるＭＯＳトランジスタを例示する。
【図３】図３は、本発明の例示的実施形態に従う、ＰＬＤの平面図を示す。
【図４】図４は、本発明の例示的実施形態に従う、ＰＬＤにおけるプログラマブルロジックのブロック図を示す。
【図５】図５は、ボディバイアス調整を組み込んだ本発明の例示的実施形態に従う、ＰＬＤにおいて使用されるマルチプレクサを例示する。
【図６Ａ】図６Ａは、本発明の例示的実施形態に従う、ＰＬＤのコンピュータ支援設計（ＣＡＤ）ソフトウェアにおいて使用される種々のソフトウェアモジュールを示す。
【図６Ｂ】図６Ｂは、本発明の例示的実施形態に従う、ＰＬＤ  ＣＡＤソフトウェアの流れ図を例示する。
【図７】図７は、本発明の例示的実施形態に従う、ボディバイアスを調整する処理の流れ図を示す。
【図８】図８は、本発明の例示的実施形態に従う、所望のＰＬＤ回路網またはブロックのボディバイアスレベルを調整、プログラムまたは設定するためのＰＬＤ内の回路網のブロック図を例示する。
【図９】図９は、本発明の例示的実施形態に従う、回路網の電源を選択的にオフにするか、あるいは、ＰＬＤ内の回路網の消費電力を削減または全体的制御する回路のブロック図を示す。
【図１０】図１０は、本発明の例示的実施形態に従う、外部ソースに応答し、ＰＬＤ内のボディバイアスレベルを調整するための回路配置を示す。
【図１１】図１１は、本発明の例示的実施形態に従う、ＰＬＤ内のボディバイアスレベルを修正するための回路配置を例示する。
【図１２】図１２は、本発明の例示的実施形態において使用されるＰＬＤにおけるボディバイアスレベルを調整、プログラムまたは設定する処理または技術の流れ図を示す。
【図１３】図１３は、温度レベルを考慮に入れ、ボディバイアスレベルを調整、プログラム、または設定する処理または技術の流れ図を示す。
【図１４】図１４は、ＰＬＤが動作する環境の特性を考慮に入れ、ボディバイアスレベルを調整、プログラム、または設定する処理または技術の流れ図を例示する。
【図１５】図１５は、ＰＬＤが動作する環境の温度レベルおよび特性を考慮に入れ、ボディバイアスレベルを調整、プログラム、または設定する処理または技術の流れ図を示す。
【図１６】図１６は、ユーザー回路におけるトランジスタのボディバイアスをユーザー回路の動作遅延を表す遅延に基づき調整するための回路配置を示す。
【図１７】図１７は、本発明の例示的実施形態に従う、ボディバイアスコントローラのブロック図を例示する。
【図１８】図１８は、本発明の例示的実施形態に従う、基準信号ジェネレータの回路配置を示す。
【図１９】図１９は、本発明の例示的実施形態に従う、位相比較器の回路配置を示す。
【図２０】図２０は、本発明の例示的実施形態に従う、位相比較器の別の回路配置を例示する。
【図２１】図２１は、本発明の例示的実施形態において使用する構成可能な遅延回路を示す。
【図２２】図２２は、本発明の例示的実施形態に従う、構成可能な遅延回路の回路配置を示す。
【図２３】図２３は、本発明の例示的実施形態に従う、ルーティング遅延要素の回路配置を例示する。
【図２４】図２４は、本発明の例示的実施形態に従う、ロジック遅延要素の回路配置を示す。
【図２５】図２５は、本発明の例示的実施形態に従う、リークロックループのブロック図を示す。
【図２６】図２６は、本発明の別の例示的実施形態に従う、リークロックループのブロック図を例示する。
【図２７】図２７は、本発明の別の例示的実施形態に従う、リーク測定回路を示す。
【図２８】図２８は、本発明の例示的実施形態に従う、基準値および比較器回路を示す。
【図２９】図２９は、本発明の別の例示的実施形態に従う、基準値および比較器回路を例示する。
【図３０】図３０は、本発明の例示的実施形態に従う、ＩＣにおける複数のボディバイアス回路を提供するための回路配置を示す。
【図１】
2007538474.tif 000006
【図２】
2007538474.tif 000007
【図３】
2007538474.tif 000008
【図４】
2007538474.tif 000009
【図５】
2007538474.tif 000010
【図６Ａ】
2007538474.tif 000011
【図６Ｂ】
2007538474.tif 000012
【図７】
2007538474.tif 000013
【図８】
2007538474.tif 000014
【図９】
2007538474.tif 000015
【図１０】
2007538474.tif 000016
【図１１】
2007538474.tif 000017
【図１２】
2007538474.tif 000018
【図１３】
2007538474.tif 000019
【図１４】
2007538474.tif 000020
【図１５】
2007538474.tif 000021
【図１６】
2007538474.tif 000022
【図１７】
2007538474.tif 000023
【図１８】
2007538474.tif 000024
【図１９】
2007538474.tif 000025
【図２０】
2007538474.tif 000026
【図２１】
2007538474.tif 000027
【図２２】
2007538474.tif 000028
【図２３】
2007538474.tif 000029
【図２４】
2007538474.tif 000030
【図２５】
2007538474.tif 000031
【図２６】
2007538474.tif 000032
【図２７】
2007538474.tif 000033
【図２８】
2007538474.tif 000034
【図２９】
2007538474.tif 000035
【図３０】
2007538474.tif 000036
【国際調査報告】
2007538474.tif 000037
2007538474.tif 000038
2007538474.tif 000039
2007538474.tif 000040