(57)【特許請求の範囲】
【請求項１】
ゲートが第１の入力により制御され、第１の動作電位点と第１ノードとの間にソースドレイン経路が接続された第１のｐチャネル電界効果トランジスタと、
ゲートが第２の入力により制御され、第１の動作電位点と第１ノードとの間にソースドレイン経路が接続された第２のｐチャネル電界効果トランジスタと、
ゲートが第１の入力により制御され、第１ノードと第４ノードとの間にソースドレイン経路が接続された第１のｎチャネル電界効果トランジスタと、
ゲートが第２の入力により制御され、第４ノードと第２の動作電位点との間にソースドレイン経路が接続された第２のｎチャネル電界効果トランジスタと、
ゲートが第１ノードにより制御され、第１の動作電位点と第２ノードとの間にソースドレイン経路が接続された第３のｐチャネル電界効果トランジスタと、
ゲートが第１ノードにより制御され、第２ノードと第２の動作電位点との間にソースドレイン経路が接続された第３のｎチャネル電界効果トランジスタと、
ゲートが第２ノードにより制御され、第３入力と第３ノードとの間にソースドレイン経路が接続された第５のｎチャネル電界効果トランジスタと、
ゲートが第１ノードにより制御され、第４入力と第３ノードとの間にソースドレイン経路が接続された第６のｎチャネル電界効果トランジスタと、
ゲートが第３ノードにより制御され、第１動作電位点と第１の出力との間にソースドレイン経路が接続された第４のｐチャネル電界効果トランジスタと、
ゲートが第３ノードにより制御され、第１の出力と第２の動作電位点との間にソースドレイン経路が接続された第４のｎチャネル電界効果トランジスタを具備するブール処理付きセレクタ論理を含むことを特徴とする論理回路。
【請求項２】
ゲートが出力により制御され、第１動作電位点と第３ノードとの間にソースドレイン経路が接続された第５のｐチャネル電界効果トランジスタを具備することを特徴とする請求項１の論理回路。
【請求項３】
ゲートが第１０の入力により制御され、第１の動作電位点と第１０ノードとの間にソースドレイン経路が接続された第１０のｐチャネル電界効果トランジスタと、
ゲートが第１０の入力により制御され、第１０ノードと第２の動作電位点との間にソースドレイン経路が接続された第１０のｎチャネル電界効果トランジスタと、
ゲートが第１０ノードにより制御され、第１１の入力と第１１ノードとの間にソースドレイン経路が接続された第１１のｎチャネル電界効果トランジスタと、
ゲートが第１０の入力により制御され、第１２の入力と第１１ノードとの間にソースドレイン経路が接続された第１２のｎチャネル電界効果トランジスタと、
ゲートが第１１ノードにより制御され、第１の動作電位点と第１２ノードとの間にソースドレイン経路が接続された第１５のｐチャネル電界効果トランジスタと、
ゲートが第１１ノードにより制御され、第１２ノードと第２の動作電位点との間にソースドレイン経路が接続された第１５のｎチャネル電界効果トランジスタと、
ゲートが第１２ノードにより制御され、第１の動作電位点と第１０の出力との間にソースドレイン経路が接続された第１４のｐチャネル電界効果トランジスタと、
ゲートが第１２ノードにより制御され、第１０の出力と第１３ノードとの間にソースドレイン経路が接続された第１４のｎチャネル電界効果トランジスタと、
ゲートが第１３の入力により制御され、第１の動作電位点と第１０の出力との間にソースドレイン経路が接続された第１３のｐチャネル電界効果トランジスタと、
ゲートが第１３の入力により制御され、第１３ノードと第２動作電位点との間にソースドレイン経路が接続された第１３のｎチャネル電界効果トランジスタを具備するブール処理付きセレクタ論理を含むことを特徴とする論理回路。
【請求項４】
ゲートが第１２ノードにより制御され、第１動作電位点と第１１ノードとの間にソースドレイン経路が接続された第１１のｐチャネル電界効果トランジスタを具備することを特徴とする請求項３の論理回路。
【請求項５】
ゲートが第２０の入力により制御され、第１の動作電位点と第２０ノードとの間にソースドレイン経路が接続された第２０のｐチャネル電界効果トランジスタと、
ゲートが第２１の入力により制御され、第１の動作電位点と第２０ノードとの間にソースドレイン経路が接続された第２１のｐチャネル電界効果トランジスタと、
ゲートが第２０の入力により制御され、第２０ノードと第２４ノードとの間にソースドレイン経路が接続された第２０のｎチャネル電界効果トランジスタと、
ゲートが第２１の入力により制御され、第２４ノードと第２の動作電位点との間にソースドレイン経路が接続された第２１のｎチャネル電界効果トランジスタと、
ゲートが第２２の入力により制御され、第１の動作電位点と第２２ノードとの間にソースドレイン経路が接続された第２２のｐチャネル電界効果トランジスタと、
ゲートが第２２の入力により制御され、第２２ノードと第２の動作電位点との間にソースドレイン経路が接続された第２２のｎチャネル電界効果トランジスタと、
ゲートが第２２ノードにより制御され、第２３入力と第２３ノードとの間にソースドレイン経路が接続された第２３のｎチャネル電界効果トランジスタと、
ゲートが第２２の入力により制御され、第２０のノードと第２３ノードとの間にソースドレイン経路が接続された第２４のｎチャネル電界効果トランジスタと、
ゲートが第２３ノードにより制御され、第１動作電位点と第２０の出力との間にソースドレイン経路が接続された第２５のｐチャネル電界効果トランジスタと、
ゲートが第２３ノードにより制御され、第２０の出力と第２の動作電位点との間にソースドレイン経路が接続された第２５のｎチャネル電界効果トランジスタを具備するブール処理付きセレクタ論理を含むことを特徴とする論理回路。
【請求項６】
ゲートが出力により制御され、第１動作電位点と第２３ノードとの間にソースドレイン経路が接続された第２３のｐチャネル電界効果トランジスタを具備することを特徴とする請求項５の論理回路。
【請求項７】
請求項１〜６のうちのいずれかに記載の論理回路は、
パストランジスタセレクタの面積比率が１０〜６０％であることを特徴とする論理回路。
【請求項８】
請求項１ないし２のうちの何れかに記載の論理回路は、
半導体基板上に、少なくともセル１およびセル２を有し、
セル１および２は、実質的に長方形の形状を有し、
セル１は、第１、２のｐチャネル電界効果トランジスタと第１、２のｎチャネル電界効果トランジスタとを有し、
セル２は、第４のｐチャネル電界効果トランジスタと第４、５、６のｎチャネル電界効果トランジスタとを有し、
セル１およびセル２は水平方向に走る２本の電源線を有し、セル１とセル２の垂直方向の高さは実質的に等しく、
セル１とセル２の電源線の垂直方向の高さは実質的に等しいことを特徴とする論理回路。
【請求項９】
合成すべき論理回路の一群の入力信号を表す一群の入力変数と該論理回路の少なくとも一つの出力信号を表す出力変数との間の関係を規定する論理関数に基づいて、その論理回路を計算機システムにより合成する論理回路の合成方法であって、その計算機システムにより実行される次のステップを有するもの。
（ａ）論理関数から二分決定グラフを作成し、
（ｂ）その二分決定グラフのノードを、一旦すべて、２入力１出力１制御入力のパストランジスタセレクタ回路に置き換えてパストランジスタ論理回路を作成し、
（ｃ）２本の入力のいずれか一方の入力が、論理定数１あるいは０に固定されているパストランジスタセレクタを、論理的に等価なＮＡＮＤ、ＮＯＲ、ＡＮＤ、ＯＲ等のＣＭＯＳゲートに置き換え、面積、遅延時間、消費電力等の回路特性の値を計算して、ＣＭＯＳゲートに置き換えた方が所定の回路特性の値がより最適に近ければ、パストランジスタセレクタをＣＭＯＳゲートに置き換え、
（ｄ）上記ステップ（ｃ）を、すべてのパストランジスタセレクタに適用し、所定の回路特性を最適化して、
（ｅ）以上のステップで得られたパストランジスタ回路とＣＭＯＳ回路を組み合わせてできた論理回路を上記論理関数に対する論理回路として出力する。
【請求項１０】
上記所定の回路特性の値が最適な論理回路は、面積が最小な論理回路である請求項９記載の論理回路の合成方法。
【請求項１１】
上記所定の回路特性の値が最適な論理回路は、遅延時間が最小な論理回路である請求項９記載の論理回路の合成方法。
【請求項１２】
上記所定の回路特性の値が最適な論理回路は、消費電力が最小な論理回路である請求項９記載の論理回路の合成方法。
【請求項１３】
上記所定の回路特性の値が最適な論理回路は、面積と遅延時間と消費電力の組合せが最適な論理回路である請求項９記載の論理回路の合成方法。
【請求項１４】
合成すべき論理回路の一群の入力信号を表す一群の入力変数と該論理回路の少なくとも一つの出力信号を表す出力変数との間の関係を規定する論理関数に基づいて、その論理回路を計算機システムにより合成する論理回路の合成方法であって、その計算機システムにより実行される次のステップを有するもの。
（ａ）論理関数から二分決定グラフを作成し、
（ｂ）その二分決定グラフのノードのうち、２本の枝（０枝、１技）のどちらか一方だけが、論理定数１あるいは０に固定されているノードは、そのノードと論理的に等価なＮＡＮＤ、ＮＯＲ、ＡＮＤ、ＯＲ等のＣＭＯＳゲートに置き換え、それ以外のノードは、２入力１出力１制御入力のパストランジスタセレクタ回路に置き換えて、
（ｃ）以上のステップで得られたパストランジスタ回路とＣＭＯＳ回路を組み合わせてできた論理回路を上記論理関数に対する論理回路として出力する。
【請求項１５】
入力信号と出力信号の間の関係を規定する論理関数を実行する論理回路を計算機システムにより合成する方法であって、
（ａ）上記論理関数から二分決定グラフを作成し、
（ｂ）該二分決定グラフのノードを、全て２入力１出力１制御入力のパストランジスタセレクタ回路に変換してパストランジスタ論理回路を作成し、
（ｃ）上記パストランジスタ論理回路の一部のみを、論理的に等価なＣＭＯＳゲートに変換してＣＭＯＳゲート論理回路を作成し、
（ｄ）ステップ（ｂ）で作成されたパストランジスタ論理回路の一部を、ステップ（ｃ）で作成されたＣＭＯＳ論理回路で置き換えた論理回路を出力する、
各ステップを有する論理回路の合成方法。
【請求項１６】
入力信号と出力信号の間の関係を規定する論理関数を実行する論理回路を計算機システムにより合成し、半導体装置を製造する方法であって、
（ａ）上記論理関数から二分決定グラフを作成し、
（ｂ）該二分決定グラフのノードを、全て２入力１出力１制御入力のパストランジスタセレクタ回路に変換しでパストランジスタ論理回路を作成し、
（ｃ）上記パストランジスタ論理回路の一部のみを、論理的に等価なＣＭＯＳゲートに変換してＣＭＯＳゲート論理回路を作成し、
（ｄ）ステップ（ｂ）で作成されたパストランジスタ論理回路の一部を、ステップ（ｃ）で作成されたＣＭＯＳ論理回路で置き換えた論理回路を出力し、
（ｅ）該出力された論理回路に基づいて、その論理回路を生成するための複数のマスクパターンを生成し、
（ｆ）該複数のマスクパターンを用いて上記論理回路を含む半導体集積回路を製造する、
各ステップを有する半導体装置の製造方法。
【請求項１７】
ゲートが第１の入力により制御され、第１の動作電位点と第１ノードとの間にソースドレイン経路が接続された第１のｐチャネル電界効果トランジスタと、
ゲートが第２の入力により制御され、第１の動作電位点と第１ノードとの間にソースドレイン経路が接続された第２のｐチャネル電界効果トランジスタと、
ゲートが第１の入力により制御され、第１ノードと第４ノードとの間にソースドレイン経路が接続された第１のｎチャネル電界効果トランジスタと、
ゲートが第２の入力により制御され、第４ノードと第２の動作電位点との間にソースドレイン経路が接続された第２のｎチャネル電界効果トランジスタと、
ゲートが第１ノードの信号の相補信号により制御され、第３入力と第３ノードとの間にソースドレイン経路が接続された第５のｎチャネル電界効果トランジスタと、
ゲートが第１ノードの信号により制御され、第４入力と第３ノードとの間にソースドレイン経路が接続された第６のｎチャネル電界効果トランジスタと、
第３ノードに接続された第１の出力と、
第３入力または第４入力と第１の出力の間にあって信号を処理するインバータ回路を有し、
該インバータ回路は、第１動作電位点にソースドレイン経路が接続された第４のｐチャネル電界効果トランジスタと、第２の動作電位点にソースドレイン経路が接続された第４のｎチャネル電界効果トランジスタを具備し、上記第４のｐチャネル電界効果トランジスタと第４のｎチャネル電界効果トランジスタのソースドレイン経路が直列接続されている論理回路。
【請求項１８】
ゲートが第１０の入力の信号の相補信号により制御され、第１１の入力と第１１ノードとの間にソースドレイン経路が接続された第１１のｎチャネル電界効果トランジスタと、
ゲートが第１０の入力の信号により制御され、第１２の入力と第１１ノードとの間にソースドレイン経路が接続された第１２のｎチャネル電界効果トランジスタと、
上記第１１ノードに接続される第１２ノードと、
ゲートが第１２ノードにより制御され、第１の動作電位点と第１０の出力との間にソースドレイン経路が接続された第１４のｐチャネル電界効果トランジスタと、
ゲートが第１３の入力により制御され、第１３ノードと第２動作電位点との間にソースドレイン経路が接続された第１３のｎチャネル電界効果トランジスタと、
第１１入力または第１２入力と上記第１２ノードとの間にあって信号を処理するインバータ回路を有し、
該インバータ回路は、第１動作電位点にソースドレイン経路が接続された第１５のｐチャネル電界効果トランジスタと、第２の動作電位点にソースドレイン経路が接続された第１５のｎチャネル電界効果トランジスタを具備し、上記第１５のｐチャネル電界効果トランジスタと第１５のｎチャネル電界効果トランジスタのソースドレイン経路が直列接続されている論理回路。
【請求項１９】
ゲートが第２０の入力により制御され、第１の動作電位点と第２０ノードとの間にソースドレイン経路が接続された第２０のｐチャネル電界効果トランジスタと、
ゲートが第２１の入力により制御され、第１の動作電位点と第２０ノードとの間にソースドレイン経路が接続された第２１のｐチャネル電界効果トランジスタと、
ゲートが第２０の入力により制御され、第２０ノードと第２４ノードとの間にソースドレイン経路が接続された第２０のｎチャネル電界効果トランジスタと、
ゲートが第２１の入力により制御され、第２４ノードと第２の動作電位点との間にソースドレイン経路が接続された第２１のｎチャネル電界効果トランジスタと、
ゲートが第２２の入力の相補信号により制御され、第２３入力と第２３ノードとの間にソースドレイン経路が接続された第２３のｎチャネル電界効果トランジスタと、
ゲートが第２２の入力により制御され、第２０のノードと第２３ノードとの間にソースドレイン経路が接続された第２４のｎチャネル電界効果トランジスタと、
第２３入力と上記第２０出力との間にあって信号を処理するインバータ回路を有し、
該インバータ回路は、第１動作電位点とにソースドレイン経路が接続された第２５のｐチャネル電界効果トランジスタと、第２の動作電位点にソースドレイン経路が接続された第２５のｎチャネル電界効果トランジスタを具備し、上記第２５のｐチャネル電界効果トランジスタと第２５のｎチャネル電界効果トランジスタのソースドレイン経路が直列接続されている論理回路。
【請求項２０】
請求項３ないし４のうちの何れかに記載の論理回路は、
半導体基板上に、少なくともセル１およびセル２を有し、
セル１および２は、実質的に長方形の形状を有し、
セル１は、第１３、１４のｐチャネル電界効果トランジスタと第１３、１４のｎチャネル電界効果トランジスタとを有し、
セル２は、第１５のｐチャネル電界効果トランジスタと第１１、１２、１５のｎチャネル電界効果トランジスタとを有し、
セル１およびセル２は水平方向に走る２本の電源線を有し、セル１とセル２の垂直方向の高さは実質的に等しく、
セル１とセル２の電源線の垂直方向の高さは実質的に等しいことを特徴とする論理回路。
【請求項２１】
請求項５ないし６のうちの何れかに記載の論理回路は、
半導体基板上に、少なくともセル１およびセル２を有し、
セル１および２は、実質的に長方形の形状を有し、
セル１は、第２０、２１のｐチャネル電界効果トランジスタと第２０、２１のｎチャネル電界効果トランジスタとを有し、
セル２は、第２５のｐチャネル電界効果トランジスタと第２３、２４、２５のｎチャネル電界効果トランジスタとを有し、
セル１およびセル２は水平方向に走る２本の電源線を有し、セル１とセル２の垂直方向の高さは実質的に等しく、
セル１とセル２の電源線の垂直方向の高さは実質的に等しいことを特徴とする論理回路。
【請求項２２】
第１ノードと第２ノードとの間にソースドレイン経路を有する第１電界効果トランジスタと、第３ノードと上記第２ノードとの間にソースドレイン経路を有する第２電界効果トランジスタとを有するパストランジスタ回路と、
制御信号を出力する多入力ＣＭＯＳ論理回路と、
上記制御信号の反転信号を生成するインバータ回路とを有し、
上記制御信号が上記第１電界効果トランジスタのゲートに入力され、上記インバータ回路により生成される上記制御信号の反転信号が上記第２電界効果トランジスタのゲートに入力され、
上記多入力ＣＭＯＳ論理回路は第１セルに配置され、上記パストランジスタ回路と上記インバータ回路とは第２セルに配置され、
上記第１セル及び上記第２セルは、上記パストランジスタ回路、上記多入力ＣＭＯＳ論理回路及び上記インバータ回路に電源を供給する電源配線に沿って配置される半導体集積回路装置。
【請求項２３】
請求項２２において、
上記多入力ＣＭＯＳ論理回路は、第１及び第２入力ノードと、第１及び第２ｐチャネル電界効果トランジスタと、第１及び第２ｎチャネル電界効果トランジスタとを有し、
上記第１ｐチャネル電界効果トランジスタは、上記第１ｎチャネル電界効果トランジスタと直列に接続され、
上記第２ｐチャネル電界効果トランジスタは、上記第２ｎチャネル電界効果トランジスタと直列に接続され、
上記第１入力ノードは、上記第１ｐチャネル電界効果トランジスタのゲートと上記第１ｎチャネル電界効果トランジスタのゲートとに接続され、
上記第２入力ノードは、上記第２ｐチャネル電界効果トランジスタのゲートと上記第２ｎチャネル電界効果トランジスタのゲートとに接続される半導体集積回路装置。
【請求項２４】
請求項２２または請求項２３のいずれかにおいて、
上記第１セルの上記電源配線と垂直方向の幅と上記第２セルの上記電源配線と垂直方向の幅とが等しい半導体集積回路装置。
【請求項２５】
請求項２４において、
上記インバータ回路は、第３ｐチャネル電界効果トランジスタと第３ｎチャネル電界効果トランジスタとから構成される半導体集積回路装置。
【請求項２６】
第１ノードと第２ノードとの間にソースドレイン経路を有する第１電界効果トランジスタと、第３ノードと上記第２ノードとの間にソースドレイン経路を有する第２電界効果トランジスタとを有するパストランジスタ回路と、
多入力ＣＭＯＳ論理回路と、
インバータ回路とを有し、
上記多入力ＣＭＯＳ論理回路の出力が上記第１ノードに入力され、
制御信号が上記第１電界効果トランジスタのゲートに入力され、上記インバータ回路により生成される上記制御信号の反転信号が上記第２電界効果トランジスタのゲートに入力され、
上記多入力ＣＭＯＳ論理回路は第１セルに配置され、上記パストランジスタ回路と上記インバータ回路とは第２セルに配置され、
上記第１セル及び上記第２セルは、上記パストランジスタ回路、上記多入力ＣＭＯＳ論理回路及び上記インバータ回路に電源を供給する電源配線に沿って配置される半導体集積回路装置。
【請求項２７】
請求項２６において、
上記多入力ＣＭＯＳ論理回路は、第１及び第２入力ノードと、第１及び第２ｐチャネル電界効果トランジスタと、第１及び第２ｎチャネル電界効果トランジスタとを有し、
上記第１ｐチャネル電界効果トランジスタは、上記第１ｎチャネル電界効果トランジスタと直列に接続され、
上記第２ｐチャネル電界効果トランジスタは、上記第２ｎチャネル電界効果トランジスタと直列に接続され、
上記第１入力ノードは、上記第１ｐチャネル電界効果トランジスタのゲートと上記第１ｎチャネル電界効果トランジスタのゲートとに接続され、
上記第２入力ノードは、上記第２ｐチャネル電界効果トランジスタのゲートと上記第１ｎチャネル電界効果トランジスタのゲートとに接続される半導体集積回路装置。
【請求項２８】
請求項２６または請求項２７において、
上記第１セルの上記電源配線と垂直方向の幅と上記第２セルの上記電源配線と垂直方向の幅とが等しい半導体集積回路装置。
【請求項２９】
請求項２８において、
上記インバータ回路は、第３ｐチャネル電界効果トランジスタと第３ｎチャネル電界効果トランジスタとから構成される半導体集積回路装置。
【請求項３０】
第１ノードと第２ノードとの間にソースドレイン経路を有する第１電界効果トランジスタと、第３ノードと上記第２ノードとの間にソースドレイン経路を有する第２電界効果トランジスタとを有するパストランジスタ回路と、
上記第２ノードがその入力に接続される第１インバータ回路と、
上記第１インバータ回路の出力がその少なくとも一つの入力に接続された多入力ＣＭＯＳ論理回路と、
第２インバータ回路とを有し、
制御信号が上記第１電界効果トランジスタのゲートに入力され、上記第２インバータ回路により生成される上記制御信号の反転信号が上記第２電界効果トランジスタのゲートに入力され、
上記多入力ＣＭＯＳ論理回路は第１セルに配置され、上記パストランジスタ回路と上記第２インバータ回路とは第２セルに配置され、
上記第１セル及び上記第２セルは、上記パストランジスタ回路、上記多入力ＣＭＯＳ論理回路及び上記第２インバータ回路に電源を供給する電源配線に沿って配置される半導体集積回路装置。
【請求項３１】
請求項３０において、
上記多入力ＣＭＯＳ論理回路は、第１及び第２入力ノードと、第１及び第２ｐチャネル電界効果トランジスタと、第１及び第２ｎチャネル電界効果トランジスタとを有し、
上記第１ｐチャネル電界効果トランジスタは、上記第１ｎチャネル電界効果トランジスタと直列に接続され、
上記第２ｐチャネル電界効果トランジスタは、上記第２ｎチャネル電界効果トランジスタと直列に接続され、
上記第１入力ノードは、上記第１ｐチャネル電界効果トランジスタのゲートと上記第１ｎチャネル電界効果トランジスタのゲートとに接続され、
上記第２入力ノードは、上記第２ｐチャネル電界効果トランジスタのゲートと上記第２ｎチャネル電界効果トランジスタのゲートとに接続される半導体集積回路装置。
【請求項３２】
請求項３０または請求項３１において、
上記第１セルの上記電源配線と垂直方向の幅と上記第２セルの上記電源配線と垂直方向の幅とが等しい半導体集積回路装置。
【請求項３３】
請求項３２において、
上記第２インバータ回路は、第３ｐチャネル電界効果トランジスタと第３ｎチャネル電界効果トランジスタとから構成される半導体集積回路装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術の分野】
本発明は、パストランジスタ回路とＣＭＯＳ回路を組み合わせた、小面積、高速、低消費電力の論理回路に関し、また、論理関数から、パストランジスタ回路とＣＭＯＳ回路を組み合わせた小面積、高速、低消費電力の論理回路を合成する方法に関する。
【０００２】
【従来の技術】
論理回路の一つであるパストランジスタ論理回路では、１個のトランジスタに様々な論理機能を持たせる事が可能である。このため、パストランジスタ論理回路を上手に構成して、従来のＣＭＯＳ論理回路をすべてパストランジスタ論理回路に置き換えて、大規模化する一方のＬＳＩのトランジスタの数を大幅に削減して、ＬＳＩの小面積化および低消費電力化を目指した研究が多く発表されている。その中に、論理関数から二分決定グラフ（Ｂｉｎａｒｙ  Ｄｅｃｉｓｉｏｎ  Ｄｉａｇｒａｍ）を作成して、その各々のノードを２入力１出力１制御入力のパストランジスタセレクタに置き換えて、目的の論理機能を持ったパストランジスタ論理回路を合成する方法がある。二分決定グラフは、１枝と０枝と呼ばれる２本の枝を持ったノードの二分木により、論理関数をグラフ表現したもので、複雑な論理関数を簡潔に表現できるという性質を持つ。このため、この方法は、少ないトランジスタで目的の論理機能を持ったコンパクトなパストランジスタ論理回路を合成する方法として注目されている。
【０００３】
例えば、Ｐｒｏｃｅｅｄｉｎｇ  ｏｆ  ＩＥＥＥ  １９９４  Ｃｕｓｔｏｍ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ  Ｃｏｎｆｅｒｅｎｃｅ，ｐｐ．６０３−６０６（以下、文献１と呼ぶ  ）では、２入力１出力のパストランジスタセレクタをｎチャネル電界効果トランジスタだけで構成し、必要に応じて遅延時間を小さくするためのバッファ用インバータを挿入して、目的のパストランジスタ論理回路を合成する方法が提案されている。従来のＣＭＯＳ論理回路では、性能の劣るｐチャネル電界効果トランジスタがｎチャネル電界効果トランジスタと同じ数だけ必要である。しかし、文献１の方法で合成されるパストランジスタ論理回路では、バッファ用インバータ以外の、回路の大半の部分を高性能なｎチャネル電界効果トランジスタだけで構成することができる。このため、従来のＣＭＯＳ論理回路よりも、面積、遅延時間、消費電力が小さい、性能の優れた回路が得られる。
【０００４】
また、ＩＥＥＥ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｌｏｗ  Ｐｏｗｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ，  １９９５，  ｐｐ．１４−１５（以下、文献２と呼ぶ  ）では、文献１をさらに発展させた方法が提案されている。この方法は、多段化した二分決定グラフ（以下多段二分決定グラフと呼ぶ）からパストランジスタ論理回路を合成する点に特徴がある。多段二分決定グラフは、以下の手順で作成される。
【０００５】
（１−１）論理関数から二分決定グラフを作成する。
【０００６】
（１−２）作成した二分決定グラフ上で、０枝あるいは１枝の指すノードは異なるが、その他のグラフの形が全く同じ部分（同型部分木）を抽出して、同型部分木で制御されるノードを新たに作成する。
【０００７】
（１―２）の効果により、多段二分決定グラフでは普通の二分決定グラフよりも少ないノードで論理関数を表現できる。このため、文献１よりも、さらに少ないトランジスタで目的の論理機能を持ったパストランジスタ論理回路を合成することが可能である。また、直列につながるノードの数も押さえられるため、合成されるパストランジスタ回路の段数が押さえられる。このため、文献１よりもさらに遅延時間の小さく、しかも面積と消費電力も小さいパストランジスタ論理回路を合成することが可能である。
【０００８】
また、電子情報通信学会技術研究報告ＶＬＤ９５−１１５，Ｖｏｌ．９５，Ｎｏ．１１９，ｐｐ．９１−９６（以下、文献３呼ぶ  ）では、消費電力の小さいパストランジスタ論理回路を合成することを目的にした方法が提案されている。この方法では、文献２と同様に、多段二分決定グラフからパストランジスタ論理回路を合成するが、遅延時間改善用のバッファ用インバータを必要最低限に絞り込むことにより、さらに消費電力の小さいパストランジスタ論理回路を合成することが可能である。
【０００９】
なお、パストランジスタ回路については、特開平１―１２９６１１号、特開平１―２１６６２２号、特開平１―２５６２１９号、特開平７―１３０８５６号等に記載がある。
【００１０】
さらに、パストランジスタ論理回路を合成する方法については、他に特開平７―１６８８７４号や特願平８―９７１３２号に記載がある。
【００１１】
【発明が解決しようとする課題】
本発明者らは、文献１、２、３記載の方法で、いくつかの論理関数に対して二分決定グラフを作成してパストランジスタ論理回路を実際に合成した。その結果、ある論理関数に対しては、従来からあるＣＭＯＳ論理回路よりも非常にトランジスタの少ない、面積、遅延時間、消費電力の小さいパストランジスタ論理回路を合成することができた。しかし、別の論理関数に対しては、面積、遅延時間、消費電力が逆に大きくなってしまう場合が存在することが分かった。
【００１２】
例えば、単純な２入力のＮＡＮＤ論理を、文献１、２、３の方法でパストランジスタ論理回路で合成すると、図４のＣ１のトランジスタ６個の回路が得られる。しかし、ＣＭＯＳ論理回路ではトランジスタ４個のより単純な回路（図４のＣ２）になる。また、２入力のＮＯＲ論理についても、パストランジスタ論理回路はトランジスタ６個の回路（図４のＣ３）になるが、ＣＭＯＳ論理回路ではトランジスタ４個の回路（図４のＣ４）になる。
【００１３】
図４に示されるように、ＮＡＮＤ論理およびＮＯＲ論理では、消費電力以外の面積、遅延時間については、ＣＭＯＳゲートで回路を構成した方が性能が良い。このようにパストランジスタセレクタ回路は、その回路構造のため、ＮＡＮＤ論理やＮＯＲ論理ではなく、複数ある何かの信号を他の信号で選択するというセレクタ論理に適している。一方、ＮＡＮＤ論理、ＮＯＲ論理は、ＣＭＯＳ回路の基本回路であり、ＣＭＯＳ回路の方が性能が良い論理回路を組めるのは当然であるといえる。しかし、消費電力については、ＮＡＮＤ論理およびＮＯＲ論理でも、パストランジスタ回路の方が小さくできる。
【００１４】
このことは、従来のパストランジスタ論理回路の研究では見落とされていたが、パストランジスタ回路およびＣＭＯＳ回路ともに、それぞれに得意、不得意があり、パストランジスタ回路がＣＭＯＳ回路よりもすべての場合において優れているわけではないことを示している。しかも、パストランジスタ回路とＣＭＯＳ回路のどちらの方が優れているかは、合成される論理回路で、面積、遅延時間、消費電力の回路特性のどれが優先されるかによっても変わってくる。
【００１５】
また、人手で論理回路を設計していた時代と異なり、現在ではＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）等の高級言語で論理回路の設計が行われるようになったため、ＨＤＬでよく使われる、Ｉｆ  ｔｈｅｎ  ｅｌｓｅ（つまりセレクタ論理に対応）とブール代数が組み合わさった論理をいかにコンパクトな論理回路で実現できるかが非常に重要となっている。
【００１６】
このように、どんな論理についても、また、面積、遅延時間、消費電力の回路特性のどれが優先される場合でも、回路特性の優れた論理回路を作るためには、パストランジスタ回路だけでは不可能であり、パストランジスタ回路とＣＭＯＳ回路の両者の長所をうまく組み合わせて、いわばパストランジスタ回路とＣＭＯＳ回路が一つの論理回路内で互いうまく協力し合う、パストランジスタ／ＣＭＯＳ協調論理回路を作る必要がある。また、そのような性能の優れたパストランジスタ／ＣＭＯＳ協調論理回路を、計算機システムで自動合成する方法を提供することは、面積が小さく、遅延時間も小さく、さらに消費電力も小さい性能の優れたＬＳＩチップを作るためには、きわめて重要な意味を持つ。
【００１７】
さらに、参考文献２に記載の方法で、多段二分決定グラフからパストランジスタ論理回路を合成したところ、トランジスタをさらに削減することが可能であったが、論理によっては、遅延時間は逆に遅くなってしまう場合があった。これを発明者らが独自に分析したところ次のような問題があることがわかった。つまり、多段二分決定グラフから合成されるパストランジスタ論理回路では、あるパストランジスタセレクタがバッファ用インバータを介して、後段のパストランジスタセレクタの制御入力に接続される構成の回路ができる。この場合、バッファ用インバータと後段のパストランジスタセレクタ内のインバータが直列に接続されるため、遅延時間がどうしても遅くなってしまうということがわかった。つまり、多段二分決定グラフからパストランジスタ論理回路を合成するこの方法は、遅延時間の条件が厳しい場合には、上記の遅延時間の問題がネックになって、実用的ではない場合が存在することが判明した。
【００１８】
本発明の目的は、どんな種類の論理に対しても、パストランジスタ回路とＣＭＯＳ回路の、それぞれの長所をうまく組み合わせることにより、従来のパストランジスタだけで構成した論理回路あるいはＣＭＯＳだけで構成した論理回路よりも、面積、あるいは遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を提供すると同時に、そのような性能の優れたパストランジスタ／ＣＭＯＳ協調論理回路を計算機システムで自動合成する方法を提供することである。
【００１９】
また、本発明の他の目的は、どんな種類の論理に対しても、パストランジスタ回路とＣＭＯＳ回路の、それぞれの長所をうまく組み合わせることにより、従来の多段二分決定グラフからパストランジスタだけで合成した論理回路の遅延時間の問題を解決して、遅延時間が小さくしかもトランジスタ数の少ない、面積、あるいは遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路とその合成方法を提供することである。
【００２０】
また、本発明の他の目的は、面積、あるいは遅延時間、消費電力等の回路特性あるいはそれらの組合せにおいてより望ましい論理回路を、パストランジスタ回路とＣＭＯＳ回路をうまく組み合わせて合成する方法を提供することである。
【００２１】
【課題を解決するための手段】
上記目的を達成するため、本発明の望ましい態様では、
ゲートが第１の入力（ＩＮ１）により制御され、第１の動作電位点（ＶＤＤ）と第１ノード（ＮＰ１）との間にソースドレイン経路が接続された第１のｐチャネル電界効果トランジスタ（ＴＰ１）と、
ゲートが第２の入力（ＩＮ２）により制御され、第１の動作電位点（ＶＤＤ）と第１ノード（ＮＰ１）との間にソースドレイン経路が接続された第２のｐチャネル電界効果トランジスタ（ＴＰ２）と、
ゲートが第１の入力（ＩＮ１）により制御され、第１ノード（ＮＰ１）と第４ノード（ＮＰ４）との間にソースドレイン経路が接続された第１のｎチャネル電界効果トランジスタ（ＴＮ１）と、
ゲートが第２の入力（ＩＮ２）により制御され、第４ノード（ＮＰ４）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第２のｎチャネル電界効果トランジスタ（ＴＮ２）と、
ゲートが第１ノード（ＮＰ１）により制御され、第１の動作電位点（ＶＤＤ）と第２ノード（ＮＰ２）との間にソースドレイン経路が接続された第３のｐチャネル電界効果トランジスタ（ＴＰ３）と、
ゲートが第１ノード（ＮＰ１）により制御され、第２ノード（ＮＰ２）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第３のｎチャネル電界効果トランジスタ（ＴＮ３）と、
ゲートが第２ノード（ＮＰ１）により制御され、第３入力（ＩＮ３）と第３ノード（ＮＰ３）との間にソースドレイン経路が接続された第５のｎチャネル電界効果トランジスタ（ＴＮ５）と、
ゲートが第１ノード（ＮＰ１）により制御され、第４入力（ＩＮ４）と第３ノード（ＮＰ３）との間にソースドレイン経路が接続された第６のｎチャネル電界効果トランジスタ（ＴＮ６）と、
ゲートが第３ノード（ＮＰ３）により制御され、第１動作電位点（ＶＤＤ）と第１の出力（ＯＵＴ１）との間にソースドレイン経路が接続された第４のｐチャネル電界効果トランジスタ（ＴＰ４）と、
ゲートが第３ノード（ＮＰ３）により制御され、第１の出力（ＯＵＴ１）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第４のｎチャネル電界効果トランジスタ（ＴＮ４）を具備するブール処理付きセレクタ論理を含む論理回路（図１）である。
【００２２】
本発明の他の望ましい他の態様は、ゲートが第１０の入力（ＩＮ１０）により制御され、第１の動作電位点（ＶＤＤ）と第１０ノード（ＮＰ１０）との間にソースドレイン経路が接続された第１０のｐチャネル電界効果トランジスタ（ＴＰ１０）と、
ゲートが第１０の入力（ＩＮ１０）により制御され、第１０ノード（ＮＰ１０）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第１０のｎチャネル電界効果トランジスタ（ＴＮ１０）と、
ゲートが第１０ノード（ＮＰ１０）により制御され、第１１の入力（ＩＮ１１）と第１１ノード（ＮＰ１１）との間にソースドレイン経路が接続された第１１のｎチャネル電界効果トランジスタ（ＴＮ１１）と、
ゲートが第１０の入力（ＩＮ１０）により制御され、第１２の入力（ＩＮ１２）と第１１ノード（ＮＰ１１）との間にソースドレイン経路が接続された第１２のｎチャネル電界効果トランジスタ（ＴＮ１２）と、
ゲートが第１１ノード（ＮＰ１１）により制御され、第１の動作電位点（ＶＤＤ）と第１２ノード（ＮＰ１２）との間にソースドレイン経路が接続された第１５のｐチャネル電界効果トランジスタ（ＴＰ１５）と、
ゲートが第１１ノード（ＮＰ１１）により制御され、第１２ノード（ＮＰ１２）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第１５のｎチャネル電界効果トランジスタ（ＴＮ１５）と、
ゲートが第１２ノード（ＮＰ１２）により制御され、第１の動作電位点（ＶＤＤ）と第１０の出力（ＯＵＴ１０）との間にソースドレイン経路が接続された第１４のｐチャネル電界効果トランジスタ（ＴＰ１４）と、
ゲートが第１２ノード（ＮＰ１２）により制御され、第１０の出力（ＯＵＴ１０）と第１３ノード（ＮＰ１３）との間にソースドレイン経路が接続された第１４のｎチャネル電界効果トランジスタ（ＴＮ１４）と、
ゲートが第１３の入力（ＩＮ１３）により制御され、第１の動作電位点（ＶＤＤ）と第１０の出力（ＯＵＴ１０）との間にソースドレイン経路が接続された第１３のｐチャネル電界効果トランジスタ（ＴＰ１３）と、
ゲートが第１３の入力（ＩＮ１３）により制御され、第１０の出力（ＯＵＴ１０）と第２動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第１３のｎチャネル電界効果トランジスタ（ＴＮ１３）を具備するブール処理付きセレクタ論理を含む論理回路（図２）である。
【００２３】
本発明の他の望ましい他の態様は、ゲートが第２０の入力（ＩＮ２０）により制御され、第１の動作電位点（ＶＤＤ）と第２０ノード（ＮＰ２０）との間にソースドレイン経路が接続された第２０のｐチャネル電界効果トランジスタ（ＴＰ２０）と、
ゲートが第２１の入力（ＩＮ２１）により制御され、第１の動作電位点（ＶＤＤ）と第２０ノード（ＮＰ２０）との間にソースドレイン経路が接続された第２１のｐチャネル電界効果トランジスタ（ＴＰ２１）と、
ゲートが第２０の入力（ＩＮ２０）により制御され、第２０ノード（ＮＰ２０）と第２４ノード（ＮＰ２４）との間にソースドレイン経路が接続された第２０のｎチャネル電界効果トランジスタ（ＴＮ２０）と、
ゲートが第２１の入力（ＩＮ２１）により制御され、第２４ノード（ＮＰ２４）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第２１のｎチャネル電界効果トランジスタ（ＴＮ２１）と、
ゲートが第２２の入力（ＩＮ２２）により制御され、第１の動作電位点（ＶＤＤ）と第２２ノード（ＮＰ２２）との間にソースドレイン経路が接続された第２２のｐチャネル電界効果トランジスタ（ＴＰ２２）と、
ゲートが第２２の入力（ＩＮ２２）により制御され、第２２ノード（ＮＰ２２）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第２２のｎチャネル電界効果トランジスタ（ＴＮ２２）と、
ゲートが第２２ノード（ＮＰ２２）により制御され、第２３入力（ＩＮ２３）と第２３ノード（ＮＰ２３）との間にソースドレイン経路が接続された第２３のｎチャネル電界効果トランジスタ（ＴＮ２３）と、
ゲートが第２２の入力（ＩＮ２２）により制御され、第２０のノード（ＮＰ２０）と第２３ノード（ＮＰ２３）との間にソースドレイン経路が接続された第２４のｎチャネル電界効果トランジスタ（ＴＮ２４）と、
ゲートが第２３ノード（ＮＰ２３）により制御され、第１動作電位点（ＶＤＤ）と第２０の出力（ＯＵＴ２０）との間にソースドレイン経路が接続された第２５のｐチャネル電界効果トランジスタ（ＴＰ２５）と、
ゲートが第２３ノード（ＮＰ２３）により制御され、第２０の出力（ＯＵＴ２０）と第２の動作電位点（ＧＮＤ）との間にソースドレイン経路が接続された第２５のｎチャネル電界効果トランジスタ（ＴＮ２５）を具備するブール処理付きセレクタ論理を含む論理回路（図３）である。
【００２４】
このようなパストランジスタ回路とＣＭＯＳ回路を組み合わせた論理回路を計算機システムで自動合成するために、本発明では、論理関数から二分決定グラフあるいは多段二分決定グラフを作成して、そのノードをすべて２入力１出力１制御入力のパストランジスタセレクタにマッピングしてパストランジスタ論理回路を作成する。そのパストランジスタ論理回路で、２本の入力のいずれか一方の入力が、論理定数１あるいは０に固定されていて、ＮＡＮＤ論理あるいはＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているパストランジスタセレクタを、論理的に等価なＮＡＮＤ、ＮＯＲ等のＣＭＯＳゲートに置き換え、面積、遅延時間、消費電力等の回路特性の値を計算して、ＣＭＯＳゲートに置き換えた方が所定の回路特性の値がより最適に近ければ、パストランジスタセレクタをＣＭＯＳゲートに置き換える。以上の操作をすべてのパストランジスタセレクタに試行して、所定の回路特性が最適であるパストランジスタ／ＣＭＯＳ協調論理回路を合成する。このような最適化に使用する回路特性として、例えば、面積、遅延時間、あるいは消費電力、あるいはこれらの適当な組合せを使用する。
【００２５】
本発明の他の望ましい他の態様は、論理関数から二分決定グラフあるいは多段二分決定グラフを作成して、そのグラフのノードのうち、２本の枝（０枝、１枝）のどちらか一方だけが、論理定数１あるいは０に固定されているノードには、そのノードと論理的に等価なＮＡＮＤ、ＮＯＲ等のＣＭＯＳゲートをマッピングする。また、それ以外のノードには、２入力１出力のパストランジスタセレクタをマッピングして、パストランジスタ／ＣＭＯＳ協調論理回路を合成する。
【００２６】
【発明の実施の形態】
以下、本発明のパストランジスタ／ＣＭＯＳ協調論理回路とその合成方法を図面に示したいくつかの実施例を参照してさらに詳細に説明する。なお、以下においては、同じ参照番号は同じものもしくは類似のものを表わすものとする。
【００２７】
＜実施例１＞
本発明のパストランジスタ／ＣＭＯＳ協調論理回路の一実施形態を図５に従って説明する。図５のａ、ｂ、ｃは、それぞれ以下の論理関数で与えられる論理を、本発明のパストランジスタ／ＣＭＯＳ協調論理回路で構成した場合と、従来からあるパストランジスタ論理回路とＣＭＯＳ論理回路で構成した場合を比較した図である。なお、この図５で簡単化した記号で示したインバータとＣＭＯＳゲートは、図４に示すトランジスタ回路で構成されるものである。
0003625973.tif 000002
図５のａでは、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、インバータＩ５０、パストランジスタセレクタＳ５０、ＣＭＯＳゲートＧ５０から構成される回路になる。一方、従来のパストランジスタ論理回路では、インバータＩ５０、Ｉ５１、パストランジスタセレクタＳ５０、Ｓ５１が必要である。また、ＣＭＯＳ論理回路では、インバータＩ５２、Ｉ５４、ＣＭＯＳゲートＧ５０〜Ｇ５３が必要になる。図５のａに示されるように、従来のパストランジスタ論理回路では、パストランジスタ回路に適していないＮＡＮＤ論理、ＮＯＲ論理もパストランジスタ回路で組まなければならない（Ｓ５１）。また、従来のＣＭＯＳ論理回路では、ＣＭＯＳ回路で構成するのに適していないセレクタ論理もＣＭＯＳ回路で構成しなければならない（Ｇ５１〜Ｇ５３）。これに対し、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、与えられた論理の中で、セレクタ論理に相当する部分はセレクタ論理に適したパストランジスタセレクタ（Ｓ５０）で回路を組み、それ以外のＮＡＮＤ、ＮＯＲ論理部分はそれに適したＣＭＯＳゲート（Ｇ５０）で回路を組むことが可能である。このように本発明のストランジスタ／ＣＭＯＳ協調論理回路は、セレクタ論理とＮＡＮＤ論理、ＮＯＲ論理（ＡＮＤ論理あるいはＯＲ論理）が組み合わさった論理をコンパクトな回路で実現できる。このため、パストランジスタ論理回路ではトランジスタが１４個、ＣＭＯＳ論理回路ではトランジスタが２０個必要であるのに対し、本発明のパストランジスタ／ＣＭＯＳ協調論理回路ではトランジスタ１１個で目的の論理機能を実現でき、小面積、低消費電力の性能の優れた回路であることがわかる。さらに、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、パストランジスタ論理回路のセレクタＳ５１、インバータＩ５１に相当する部分を一つのＣＭＯＳゲートＧ５０に縮約することができるため、パストランジスタ論理回路で、セレクタＳ５１内のインバータ→セレクタＳ５１→バッファ用インバータＩ５１でかかる遅延時間を、ＣＭＯＳゲートＧ５０だけの遅延時間に短縮することができる。さらに、パストランジスタ論理回路のセレクタＳ５１内の遅延時間の遅いインバータを経路から取り除くことができるので、本発明のパストランジスタ／ＣＭＯＳ協調論理回路は、パストランジスタ論理回路に比べて遅延時間を大幅に小さくすることができる。また、ＣＭＯＳ論理回路と比較しても、ＣＭＯＳ論理回路のＧ５１〜Ｇ５３、Ｉ５２、Ｉ５４の部分の経路を、本発明のパストランジスタ／ＣＭＯＳ協調論理回路ではＳ５０、Ｉ５０に短縮できるので、本発明のパストランジスタ／ＣＭＯＳ協調論理回路の方が遅延時間が小さい。この図５のａに示す本発明のパストランジスタ／ＣＭＯＳ協調論理回路のレイアウト例を図６に示す。この図６では、セル１がＣＭＯＳ回路のＮＡＮＤゲート（Ｇ５０）に相当し、セル２がパストランジスタセレクタ（Ｓ５０）に相当する。この図６に示すように、セル１の高さｈ１とセル２の高さｈ４、さらに、セル１の電源線（ＶＤＤおよびＧＮＤ）の幅であるｈ２およびｈ３と、セル２の電源線（ＶＤＤおよびＧＮＤ）の幅であるｈ５およびｈ６を等しくすることにより、はじめて、パストランジスタ回路とＣＭＯＳ回路を一つの回路に組み合わせた論理回路を実際に製作することが可能になる。このことは以下の実施例でも同様である。
【００２８】
また、図５のｂの論理では、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、インバータＩ６０、パストランジスタセレクタＳ６０、ＣＭＯＳゲートＧ６０から構成されるトランジスタ１１個で目的の論理機能を持った回路を構成できる。一方、パストランジスタ論理回路では、インバータＩ６０およびＩ６１、パストランジスタセレクタＳ６０、Ｓ６１が必要であり、トランジスタが１４個必要である。また、ＣＭＯＳ論理回路では、インバータＩ６２、Ｉ６４、ＣＭＯＳゲートＧ６０〜Ｇ６３が必要で、トランジスタが２０個必要である。つまり、この場合も、本発明のパストランジスタ／ＣＭＯＳ協調論理回路が一番性能が良いことがわかる。また、遅延時間についても、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、パストランジスタ論理回路のセレクタＳ６１、インバータＩ６１に相当する部分を一つのＣＭＯＳゲートＧ６０に縮約できるため、パストランジスタ論理回路のセレクタＳ６１内のインバータ→セレクタＳ６１→バッファ用インバータＩ６１でかかる遅延時間を、ＣＭＯＳゲートＧ５０だけの遅延時間に短縮することができ、特に、セレクタＳ６１内の遅いインバータを取り除くことができるので、パストランジスタ論理回路よりも遅延時間を大幅に小さくすることができる。また、ＣＭＯＳ論理回路と比較しても、ＣＭＯＳ論理回路のＧ６１〜Ｇ６３、Ｉ６２、Ｉ６４の部分の経路を、本発明のパストランジスタ／ＣＭＯＳ協調論理回路ではＳ６０、Ｉ６０に短縮できるので、本発明のパストランジスタ／ＣＭＯＳ協調論理回路の方が遅延時間が小さい。
【００２９】
また、図５のｃでは、本発明のパストランジスタ／ＣＭＯＳ協調論理回路では、インバータＩ７０、パストランジスタセレクタＳ７０、ＣＭＯＳゲートＧ７０から構成されるトランジスタ１１個で目的の論理機能を持った回路を構成できる。一方、パストランジスタ論理回路では、インバータＩ７０およびＩ７１、パストランジスタセレクタＳ７０、Ｓ７１が必要であり、トランジスタが１４個必要である。また、ＣＭＯＳ論理回路では、インバータＩ７２、Ｉ７４、ＣＭＯＳゲートＧ７０〜Ｇ７３が必要で、トランジスタが２０個必要である。つまり、この場合も、本発明のパストランジスタ／ＣＭＯＳ協調論理回路が一番性能が良いことがわかる。遅延時間についても図５のａ、ｂと同様の理由で本発明のパストランジスタ／ＣＭＯＳ協調論理回路が一番小さい。
【００３０】
＜実施例２＞
以上の実施例では簡単な論理を例にとって本発明のパストランジスタ／ＣＭＯＳ協調論理回路を説明した。本実施例では、より複雑な論理に対して、面積、遅延時間、消費電力等の回路特性の優れた高性能なパストランジスタ／ＣＭＯＳ協調論理回路を、図７および図８に示す計算機システムにより自動合成する方法を説明する。
【００３１】
（１）システムの全体構成
図８において、設計者は目的とする半導体集積回路の論理機能の仕様を記述した論理回路仕様１０を入力する。論理回路仕様１０には回路の論理機能を記述した論理関数が記述されている。その他に、その回路の面積、遅延時間、消費電力等の回路特性の目標値と、さらにどの回路特性を優先させるかといった情報も記述されている。本実施例に特有のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラム１００は、論理回路仕様１０に記載されている情報から、ライブラリ１１を参照して、面積、遅延時間、消費電力等の回路特性の目標値を満たすように、論理回路仕様１０の論理機能を持ったパストランジスタ／ＣＭＯＳ協調論理回路１２を合成する。自動レイアウトプログラム１６０はライブラリ１１を参照して、この論理回路に最適なレイアウトを決定し、レイアウトデータ２０を作成する。マスクデータ作成プログラム１７０は、レイアウトデータ２０に従って、上記合成された論理回路を半導体集積回路技術を使用して生成するための複数のマスクパターンを決め、それらのマスクパターンを表すマスクデータ２１を生成する。半導体製造装置１８０は、マスクデータ２１を用いて目的の論理機能を持った半導体集積回路を製造する。１００、１６０、１７０の各プログラムは、それぞれに割り当てられた異なる計算機上で実行される。もちろん、これらのプログラムを同じ計算機上で実行させることもできる。
【００３２】
図７は、本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラム１００の概略構造とこのプログラムを実行するための計算機システムを示す。この計算機システムは、入力装置、例えば、キーボード１、中央処理装置（ＣＰＵ）２、表示装置（ＣＲＴ）３、磁気テープ装置４および論理回路合成プログラム１００を格納する磁気ディスク装置５からなる。プログラム１００は、二分決定グラフ作成ルーチン１１０、パストランジスタセレクタマッピングルーチン１２０、ＣＭＯＳゲート割り当てルーチン１３０から構成される。このプログラムは、設計者がキーボード１から指示を与えることにより、磁気ディスク装置５からＣＰＵ２にロードされて、実行される。プログラム１００により合成されたパストランジスタ／ＣＭＯＳ協調論理回路はＣＲＴ３上に表示され、磁気テープ装置４等を経由して図８の自動レイアウトプログラム１６０に渡される。
【００３３】
本実施例では、二分決定グラフを作って、パストランジスタセレクタをマッピングして合成したパストランジスタ回路の中で、ＣＭＯＳ回路に変更した方が性能が良くなる部分を見つけ出してその部分をＣＭＯＳ回路で組み直して、従来のパストランジスタ単独の論理回路あるいはＣＭＯＳ単独の論理回路より性能の優れたパストランジスタ／ＣＭＯＳ協調論理回路を合成する点に特徴がある。具体的には、２本の入力のいずれか一方の入力が、論理定数１あるいは０に固定され、ＮＡＮＤ論理あるいはＮＯＲ論理（ＡＮＤ論理あるいはＯＲ論理）として動作しているパストランジスタセレクタを、論理的に等価なＮＡＮＤ、ＮＯＲ等のＣＭＯＳゲートに置き換え、面積、遅延時間、消費電力等の回路特性の値を計算して、ＣＭＯＳゲートに置き換えた方が所定の回路特性の値がより最適に近ければ、パストランジスタセレクタをＣＭＯＳゲートに置き換えるという操作により、ＣＭＯＳ回路にした方が性能が良くなる部分をＣＭＯＳ回路で組み直す。以下、次の論理関数を例にして本実施例のそれぞれのルーチンについて説明する。
【００３４】
ｏｕｔ１  ＝  Ｂ  ＊  Ａ  ＋  Ｃ  ＊  Ａ  ＋  （Ｉ  ＊  Ｆ  ＋  Ｄ）  ＊  （Ｄ  ＋  （Ｈ  ＋  Ｅ）  ＊  （Ｅ  ＋  Ｇ））
ｏｕｔ２  ＝  Ｂ  ＋  （（Ｉ  ＊  Ｆ  ＋  Ｄ）  ＊  （Ｄ  ＋  （Ｈ  ＋  Ｅ）  ＊  （Ｅ  ＋  Ｇ）））
なお、この論理関数から、従来からある既存の公知の方法でＣＭＯＳ論理回路を合成すると、図１０のＧ１００〜Ｇ１１１から構成される回路が得られる。
【００３５】
（２）二分決定グラフ作成ルーチン１１０
このルーチン１１０は、論理回路仕様１０から二分決定グラフを生成する。論理回路仕様１０には、合成する論理回路の入力信号と出力信号に対応する入力変数と出力変数と、その回路の論理機能を表した論理関数が含まれる。
【００３６】
上に示した論理関数から二分決定グラフを作成すると、図１１のノードＮ１００〜Ｎ１１１から構成されるグラフが作成される。この図１１の多段二分決定グラフでは、ノードＮ１０４〜Ｎ１０９を共通化して括り出して多段化することにより、普通の二分決定グラフよりノード数を削減している。なお、ノード数の少ないサイズの小さい二分決定グラフを作成するためには、グラフを作成する際の入力変数順序が大変重要な意味を持つが、この入力変数順序は既存の公知の二分決定グラフ作成ツールを使用して決定できる。
【００３７】
（３）パストランジスタセレクタマッピングルーチン１２０
このルーチンは、図１２のマッピングルールに従い、二分決定グラフ作成ルーチン１１０で作成された二分決定グラフの各々のノードを、ノードの種類に応じてパストランジスタセレクタあるいはインバータ等にマッピングしてパストランジスタ論理回路を生成する。さらに、必要に応じてバッファ用のインバータを挿入する。
【００３８】
図１２のａに示すノードＮ１のように、１枝および０枝がつながっている先が論理定数１、０ではない場合には、ｎチャネル電界効果トランジスタＴ０，Ｔ１およびインバータＩ０から構成される２入力１出力のパストランジスタセレクタＳ０を対応させる。このパストランジスタセレクタＳ０の制御入力には、二分決定グラフのノードに対応する入力変数Ａを割り当て、その制御入力が１の時に選択される入力ｉｎ１には、１枝につながっているノードの出力を割り当てる。制御入力が０の時に選択される入力ｉｎ０には、０枝につながっているノードの出力を割り当てる。
【００３９】
図１２のｂのノードＮ２のように、１枝が論理定数１に接続され、０枝が論理定数０に接続されている場合には、このノードの出力は、そのノードの入力変数Ａが１の時は１が出力され、また入力変数Ａが０の時は０が出力される。つまり、入力信号Ａをそのまま後段の回路に接続すればよい。
【００４０】
また、図１２のｃに示すノードＮ３のように、１枝が論理定数０に接続され、０枝が論理定数１に接続されている場合には、このノードの出力は、ノードの入力変数Ａが１の時は０が出力され、入力変数Ａが０の時は１が出力される。つまり、入力信号Ａをインバータによって反転させ後段の回路に接続すればよい。
【００４１】
このようにマッピングすることにより二分決定グラフと同じ論理機能を持ったパストランジスタ論理回路が合成される。図１１の二分決定グラフからパストランジスタ論理回路を合成すると、図１３に示す、パストランジスタセレクタＳ１００〜Ｓ１０５、インバータＩ１００〜Ｉ１０５から構成されるパストランジスタ論理回路が合成される。この回路で、Ｉ１００、Ｉ１０３、Ｉ１０５はバッファ用インバータである。図１１の二分決定グラフでは、ノードＮ１０２、Ｎ１０３、Ｎ１０９が図１２のマッピングルールのｂに該当し、ノードＮ１０６、Ｎ１０７、Ｎ１１１は図１２のｃに該当する。その他のノードは、図１２のａに該当する。
【００４２】
（４）ＣＭＯＳゲート割り当てルーチン１３０
このルーチンでは、パストランジスタセレクタマッピングルーチン１２０で生成されたパストランジスタ論理回路の中で、ＣＭＯＳゲートで組み直した方が面積、遅延時間、消費電力等の回路特性が良くなると考えられる、ＮＡＮＤ論理、ＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているパストランジスタセレクタをＣＭＯＳゲートで組み直す。
【００４３】
まず、パストランジスタ論理回路のうち、図１４のａ〜ｄの変換パターンに該当するパストランジスタセレクタを選択する。この図１４のａ〜ｄに示すパストランジスタセレクタは、２本の入力のいずれか一方の入力がＶＤＤあるいはＧＮＤ電位に固定されて、つまり論理定数１あるいは論理定数０に固定されている、ＮＡＮＤ論理、ＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているセレクタである。処理１３１では、これらのパストランジスタセレクタを、図１４の変換パターンに従ってＣＭＯＳゲートに変換する。なお、図１４の変換パターンで簡単化した記号で示したＣＭＯＳ回路の２入力ＮＡＮＤゲート、２入力ＮＯＲゲートおよびインバータは、それぞれトランジスタＴ１０〜Ｔ１３、Ｔ２０〜Ｔ２３、Ｔ３０〜３１のトランジスタレベルの回路から構成される。
【００４４】
図１４の変換パターンからわかるように、一つのパストランジスタセレクタは必ずしも一つのＣＭＯＳゲートに変換するされるわけではなく、通常、極性合わせためのインバータが必要になる。このため、図１４の変換パターンに従って、パストランジスタセレクタをＣＭＯＳゲートに変換しただけでは、元から存在するインバータと、変換によって生じた極性合わせのためのインバータが２個直列に接続された冗長なインバータが生じてしまう可能性がある。つまり、面積、遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を生成するためには、インバータ伝搬を行って、このような無駄なインバータを回路から取り除く必要がある。また、パストランジスタセレクタをＣＭＯＳゲートに変換することによって、パストランジスタセレクタが、ＣＭＯＳゲートを直接駆動する形の回路が生じる可能性も考えられるが、この場合には、パストランジスタセレクタとＣＭＯＳゲートの間にバッファ用インバータを挿入する必要がある。以上のインバータ伝搬とバッファ挿入処理は互いに相反する処理であるが、この二つの処理をひとまとめにして同時に行うことによって、必要なところにはバッファ用のインバータが挿入され、しかも冗長なインバータは存在しない、面積、遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を作ることが可能になる（処理１３２）。
【００４５】
次に、インバータ伝搬およびバッファ挿入が終わった回路に対して、回路の面積、遅延時間、消費電力を計算する。これらの回路特性の値から、この回路のコストを算出する。こうして求められた、ＣＭＯＳゲートに変換した後の回路のコストと、あらかじめ求めておいたＣＭＯＳゲートに変換する前の回路のコストを比較する（処理１３３）。ＣＭＯＳゲートに変換した回路の方がコストが良ければＣＭＯＳゲートに変換した回路を選択し、ＣＭＯＳゲートよりパストランジスタセレクタの方がコストが良ければ回路をＣＭＯＳゲートに変換する前の回路に戻す。このようにして、ＣＭＯＳゲートとパストランジスタセレクタのうちでよりコストが良い方を選択する（処理１３４）。以上の処理１３１〜１３４を図１４の変換パターンに該当するすべてのパストランジスタセレクタに対して行って、ＣＭＯＳゲートで組み直した方が回路特性が良くなるすべてのパストランジスタセレクタをＣＭＯＳゲートで組み直して、面積、遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を作成する。
【００４６】
本方法では、面積、遅延時間、消費電力から決定されるコストの定義を変更することで、面積、遅延時間、消費電力のどれに重点をおいてを、回路を合成するかを制御することが可能である。例えば、図９の１３５で定義されるコストで、面積優先度α、遅延時間優先度β、消費電力優先度γを、α＝１、β＝０、γ＝０に設定すると、遅延時間と消費電力は考慮されずに、ただ面積だけを小さくするようにして、パストランジスタ／ＣＭＯＳ協調論理回路の合成が行われる。また、α＝０、β＝０、γ＝１に設定すれば、消費電力を最優先にしたパストランジスタ／ＣＭＯＳ協調論理回路が合成される。もちろん、三つの回路特性をすべてが良くなるように合成することも可能であり、α＝１、β＝１、γ＝１に設定すれば、面積も遅延時間も消費電力も考慮してパストランジスタ／ＣＭＯＳ協調論理回路が合成される。
【００４７】
本実施例では以下に、図１３のパストランジスタ論理回路から、面積最優先（図９の１３５で定義されるコストでα＝１、β＝０、γ＝０に設定）で、パストランジスタ／ＣＭＯＳ協調論理回路を合成する方法を説明する。図１３の回路で、セレクタＳ１００は図１４の変換パターンのａに該当するので、処理１３１によってＣＭＯＳゲートに変換され、図１５の中間回路が作成される。図１５の中間回路では、パストランジスタセレクタＳ１０１が、そのままではＣＭＯＳゲートＧ１００を直接駆動する形になるため、バッファ用インバータＩ１０８が挿入される。また、このインバータＩ１０８の極性合わせのために、インバータＩ１０７も挿入される。しかし、このインバータＩ１０７はセレクタＳ１０１をはさんで、元からあったインバータＩ１０１およびＩ１０２と２個直列に接続された形の冗長なインバータであるので、処理１３２のインバータ伝搬処理によって取り除かれる。また、インバータＩ１００、Ｉ１０６も冗長であるので取り除くことができ、図１６のパストランジスタ／ＣＭＯＳ協調論理回路が得られる。この図１６の回路の面積をライブラリ１１を参照して計算すると、９９２μ  になり、コストもこの面積の値と同じ値になる。一方、パストランジスタセレクタＳ１００をＣＭＯＳゲートに組み直す前の面積は、１１６４μ  であり、コストもこの値になる。つまり、ＣＭＯＳゲートに変換した方がコストが良く、ＣＭＯＳゲートに変換した回路が選択される。図１６の回路の残りのパストランジスタセレクタのうち、Ｓ１０４とＳ１０５は、図１４の変換パターンのｃに該当するので、同様にＣＭＯＳゲートに変換されるが、パストランジスタセレクタＳ１０５については、パストランジスタセレクタで回路を構成した方が面積が小さく、コストも良いため、ＣＭＯＳゲートには組み直されない。以上の処理により、最終的には図１７のパストランジスタ／ＣＭＯＳ協調論理回路が合成される。
【００４８】
表１は、実施例２の論理関数から本発明によって合成されたパストランジスタ／ＣＭＯＳ協調論理回路と、ＣＭＯＳ論理回路、パストランジスタ論理回路、およびＣＭＯＳ論理回路をパストランジスタセレクタに置き換えて作成された論理回路の、面積、遅延時間、消費電力を比較した表である。
【００４９】
【表１】
0003625973.tif 000003
【００５０】
表１に示すように、本方法で面積最優先で合成したパストランジスタ／ＣＭＯＳ協調論理回路は、ＣＭＯＳ単独で構成した論理回路（図１０）より、面積を４０％近く削減することに成功しており、遅延時間および消費電力についても、それぞれ５％と６０％近く削減できている。また、パストランジスタ単独で構成した論理回路（図１３）と比較しても、遅延時間と消費電力では劣るものの、目的とする面積の小さいパストランジスタ／ＣＭＯＳ協調論理回路が合成できていることがわかる。
【００５１】
実施例１でも述べたように、パストランジスタセレクタが最も得意とするのは、ＮＡＮＤ論理やＮＯＲ論理ではなく、複数ある何かの信号を他の信号で選択するというセレクタ論理である。本方法では、与えられた論理関数から二分決定グラフを作り、パストランジスタ単独で構成した論理回路を作ってから、その論理回路で、ＮＡＮＤ論理、ＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として機能しているパストランジスタセレクタをＣＭＯＳゲートに変換して論理回路を組み直す。このような手順で論理回路を合成することにより、与えられた論理関数のなかで、セレクタ論理に相当する部分にはパストランジスタセレクタを割り当て、それ以外のＮＡＮＤ論理や、ＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）に相当する部分にはＣＭＯＳゲートを割り当てることが可能になる。このようにして、パストランジスタセレクタとＣＭＯＳゲートを、それぞれに適した部分に上手に使い分けることにより、パストランジスタセレクタとＣＭＯＳゲートの両方の長所をうまく組み合わせたパストランジスタ／ＣＭＯＳ協調論理回路を生成する。
【００５２】
本発明の論理回路合成方法を使用しなくても、パストランジスタとＣＭＯＳゲートをただ組み合わせただけの論理回路を作ることは可能である。例えば、本方法とは全く逆の手順で、ＣＭＯＳ単独の論理回路を作ってから、その回路のＣＭＯＳゲートの中でパストランジスタセレクタに適している部分を見つけて、その部分をパストランジスタセレクタに変換して、パストランジスタとＣＭＯＳゲートを組み合わせた回路を作ることもできる。しかし、ＣＭＯＳ論理回路では、すべての論理がＮＡＮＤ論理とＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）の組み合わせで構成されているため、与えられた論理関数にパストランジスタセレクタに適したセレクタ論理部分が存在したとしても、それに対応する部分を見つけだすことは困難である。実際、本実施例の論理関数から合成したＣＭＯＳ論理回路（図１０）をパストランジスタセレクタに置き換えてみると、図１８に示すパストランジスタ回路が得られる。この回路では、すべてのパストランジスタセレクタが、２本の入力のいずれか一方の入力がＶＤＤあるいはＧＮＤ電位に固定されており、パストランジスタセレクタには適してないＮＡＮＤ論理、ＮＯＲ論理として使用されている。セレクタ論理として使用されているパストランジスタセレクタは一つとして存在しない。このため、表１に示すように、図１８の回路は、ＣＭＯＳ単独の論理回路（図１０）や、パストランジスタ単独で構成した論理回路（図１３）のいずれよりも、面積、遅延時間、消費電力のすべての回路特性において劣っている。このように、ＣＭＯＳ論理回路からは、パストランジスタとＣＭＯＳゲートの長所をうまく組み合わせた論理回路を作成することは困難であり、最悪の場合には、この例のように、ＣＭＯＳ単独で構成した論理回路、パストランジスタ単独で構成した論理回路のどちらよりも性能の劣った回路ができてしまうことがわかる。
【００５３】
以上からわかるように、ただ単にＣＭＯＳゲートとパストランジスタセレクタを組み合わせただけでは、パストランジスタセレクタとＣＭＯＳゲートのそれぞれの長所をうまく組み合せることは不可能であり、最悪の場合にはそれらの短所だけが組み合わされた回路特性の劣った論理回路ができてしまう。つまり、本方法に示した手順で回路を合成することによってはじめて、パストランジスタセレクタとＣＭＯＳゲートのそれぞれの長所をうまく組み合せたパストランジスタ／ＣＭＯＳ協調論理回路を合成することが可能になる。
【００５４】
＜実施例２の変形例＞
実施例２では、パストランジスタセレクタをｎチャネル電界効果トランジスタだけで構成した例を説明したが、ｐチャネル、ｎチャネルの両方のタイプのトランジスタで構成したパストランジスタセレクタ（例えば図２０に示したトランジスタＴ２００〜Ｔ２０３、インバータＩ２００から構成されるセレクタ）でも、実施例２と全く同様にして、本方法により、面積の小さいパストランジスタ／ＣＭＯＳ協調論理回路を作ることが可能である。このことは、以下の実施例でも全く同様である
＜実施例３＞
本実施例では、実施例２と同じ論理関数を例にとって、実施例２と違って遅延時間を最優先（図９の１３５のコストでα＝０、β＝１、γ＝０に設定）にしてパストランジスタ／ＣＭＯＳ協調論理回路を合成した例を説明する。実施例２と同様に、二分決定グラフ作成ルーチン１１０で二分決定グラフが作られ、パストランジスタマッピングルーチン１２０により、図１３のパストランジスタ論理回路が作られる。図１３のパストランジスタ論理回路で、まずパストランジスタセレクタＳ１００が選択され、処理１３１によりＣＭＯＳゲートに変換される。次に、処理１３２により、セレクタＳ１０１の出力にバッファ用インバータが挿入され、冗長なインバータが取り除かれて、図１６の中間回路が得られる。処理１３５では、実施例２の場合と違って、面積ではなく回路の遅延時間が計算され、遅延時間の値がこの回路のコストになる。ＣＭＯＳゲートに組み直す前の回路（図１３）の遅延時間は、入力Ｆ→セレクタＳ１０４→セレクタＳ１０２→バッファ用インバータＩ１０３→セレクタＳ１００内のインバータ→セレクタＳ１００→バッファ用インバータＩ１００の経路の遅延時間である。一方、ＣＭＯＳゲートで組み直した回路（図１６）で対応する経路は、入力Ｆ→セレクタＳ１０４→セレクタＳ１０２→バッファ用インバータＩ１０３→ＣＭＯＳゲートＧ１００に短縮されるので、遅延時間は大幅に小さくなる。このため、ＣＭＯＳゲートで組み直した回路の方がコストが良いので、処理１３４ではＣＭＯＳゲートで組み直した回路が選択される。
【００５５】
発明の解決すべき課題の項で説明したように、多段二分決定グラフから構成されるパストランジスタ単独の論理回路では、あるパストランジスタセレクタがバッファ用インバータを介して、後段のパストランジスタセレクタの制御入力に接続される構成の回路ができる（図１３のＳ１０２→Ｉ１０３→Ｓ１００内のインバータ→Ｓ１００）。この場合、バッファ用インバータと後段のパストランジスタセレクタ内のインバータが直列に接続されるので遅延時間がどうしても遅くなってしまう。しかし、実施例１で既に説明したように、この例のように後段のパストランジスタセレクタをうまくＣＭＯＳゲートで組み直すことができれば、パストランジスタセレクタ内の遅いインバータを省略することができるので、遅延時間の小さい論理回路を作ることが可能になる。一般に、パストランジスタ単独の論理回路をパストランジスタ／ＣＭＯＳ協調論理回路に組み直すことにより遅延時間を小さくすることができる。
【００５６】
残りのパストランジスタセレクタのうち、図１４の変換パターンに相当するのはＳ１０４とＳ１０５である。面積最優先の実施例２ではＳ１０４のみがＣＭＯＳゲートで組み直されたが、遅延時間最優先の本実施例では、Ｓ１０５もＣＭＯＳゲートに変換される。理由は、Ｓ１００の場合と同様に、セレクタＳ１０５をＣＭＯＳゲートに変換することによりセレクタＳ１０５内の遅いインバータを取り除くことができ、遅延時間をさらに削減できるからである。以上の操作により、最終的には図１９のパストランジスタ／ＣＭＯＳ協調論理回路が得られる。表１に示すように、本実施例でも、本方法でパストランジスタ／ＣＭＯＳ協調論理回路を合成することにより、ＣＭＯＳ単独で構成した論理回路（図１０）より、遅延時間を２０％近く削減することに成功している。また、パストランジスタ単独で構成した論理回路（図１３）と比較しても、遅延時間を１０％近く小さくすることに成功している。
【００５７】
＜実施例４＞
本実施例では、実施例２、３と異なり、消費電力を最優先（図９の１３５のコストでα＝０、β＝１、γ＝０に設定）にしてパストランジスタ／ＣＭＯＳ協調論理回路を合成する方法を、実施例２、３と同じ論理関数を例にして説明する。実施例２、３と同様に、二分決定グラフ作成ルーチン１１０で二分決定グラフが作られ、パストランジスタセレクタマッピングルーチン１２０を経て、図１３のパストランジスタ論理回路が作られる。図１３のパストランジスタ論理回路で、まずセレクタＳ１００選択され、処理１３１、処理１３２を経て、図１６の中間回路が得られる。次の処理１３３では、実施例２、３と違って、回路の消費電力が計算され、消費電力の値が回路のコストになる。図１６のパストランジスタ／ＣＭＯＳ協調論理回路の消費電力をライブラリ１１を参照して計算すると、１４３μＷ／ＭＨｚになる。一方、ＣＭＯＳゲートに変換する前の回路（図１３）の消費電力は、１４０μＷ／ＭＨｚであるので、実施例２、３の場合と違って、パストランジスタセレクタで回路を構成した方がコストが良い。つまり、処理１３４で選択されるのはＣＭＯＳゲートで組み直した回路ではなく、パストランジスタセレクタで構成した回路になる。図１４の変換パターンに該当する残りのパストランジスタセレクタはＳ１０４、Ｓ１０５であるが、実施例２、３と違って、この２つのセレクタについても、パストランジスタセレクタで構成した回路の方が消費電力が小さく、コストが良い。このため、消費電力最優先の本実施例では、図１３のパストランジスタ論理回路は、ＣＭＯＳゲートに全く組み直されることなくそのまま出力される。
【００５８】
この理由は、図４のパストランジスタセレクタとＣＭＯＳゲートの比較結果にも示したように、パストランジスタセレクタの消費電力はＣＭＯＳゲートよりも大幅に小さいからである（ＣＭＯＳゲートの半分以下）。これは、パストランジスタセレクタでは、セレクタ回路の大半を占めるセレクタ部分をｎチャネル電界効果トランジスタだけで構成して、より性能の劣るｐチャネル電界効果トランジスタの数を削減することにより、性能を劣化させることなくパストランジスタセレクタ回路内のトランジスタのゲート幅の合計を押さえること可能であり、このため、消費電力を小さくできるからである。
【００５９】
＜実施例５＞
本発明のパストランジスタ／ＣＭＯＳ協調論理回路の合成方法では、ＣＭＯＳゲートに変換した方が回路の性能が良くなると考えられる、ＮＡＮＤ論理やＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているパストランジスタセレクタを、ＣＭＯＳゲートに変換するのであるが、実際にＣＭＯＳゲートに変換するかどうかは、パストランジスタセレクタをＣＭＯＳゲートに変換して、回路の面積、遅延時間、消費電力から定義されるコストを計算してコストが良くなるかどうかで判断する。このため、本方法では、以上の実施例２、３、４からわかるように、パストランジスタ／ＣＭＯＳ協調論理回路を合成する際の、面積、遅延時間、電力で定義されるコストを変更することで、パストランジスタセレクタとＣＭＯＳゲートの割合を変化させて、合成される回路の諸特性を柔軟に制御することが可能である。例えば、図２１は、実施例２、３、４よりも大規模な論理関数（ＣＭＯＳゲート換算で約１０００ゲート）を例にして、図９の１３５のコストで面積優先度αと電力優先度γを０から１の間で変化させることにより、面積最優先から消費電力最優先まで変化させて、パストランジスタ／ＣＭＯＳ協調論理回路を合成した結果である。図２１の結果からわかるように、消費電力の優先度が増加するに従って、消費電力を削減するのに適したパストランジスタの割合が増加し、消費電力優先のパストランジスタ／ＣＭＯＳ協調論理回路が合成されていることがわかる。このように、本方法で合成されるパストランジスタ／ＣＭＯＳ協調論理回路では、パストランジスタセレクタとＣＭＯＳゲートの割合を制御することによって、合成される回路の特性を容易にコントロールすることが可能である。また、この結果から、実際の大規模な論理でパストランジスタ／ＣＭＯＳ協調論理回路を組んだ場合に、面積、遅延時間、消費電力の三つの回路特性が最もバランスが良いのは、パストランジスタ回路の面積比率が回路全体の１０〜６０％程度の場合であることが初めて明らかになった。
【００６０】
本方法では、  実際に回路の面積、遅延時間、消費電力等の回路特性が良くなる場合だけ、パストランジスタセレクタをＣＭＯＳゲートに変換する。このため、本方法では、どんな論理関数に対しても常にパストランジスタ単独で構成した論理回路、あるいはＣＭＯＳゲート単独で構成した論理回路よりも回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を合成することが可能である。例えば、図２２は、図２１の論理よりさらに大規模な１２種類の論理（ＣＭＯＳゲート換算で１０００〜１００００ゲート）に対して、本方法で合成したパストランジスタ／ＣＭＯＳ協調論理回路と、従来の方法で合成したパストランジスタ単独の論理回路を、ＣＭＯＳ単独の論理回路を基準にして比較した結果である。この結果からわかるように、本方法では、どんな論理に対しても、従来のパストランジスタ単独の論理回路およびＣＭＯＳ単独の論理回路よりも常に面積と消費電力の両方が優れたパストランジスタ／ＣＭＯＳ協調論理回路を合成することが可能であることがわかる。
【００６１】
＜実施例６＞
以上の実施例では、図９のプログラムによって、パストランジスタ／ＣＭＯＳ協調論理回路を合成する手順を示した。本実施例では以下に、図２３に示すプログラムによってパストランジスタ／ＣＭＯＳ協調論理回路を合成する方法を説明する。これまでの実施例２〜５と同様に、まず二分決定グラフ作成ルーチン１１０によって二分決定グラフが作られる。実施例２〜５と違うのは、この二分決定グラフから、パストランジスタセレクタ／ＣＭＯＳゲートマッピングルーチン３００により、パストランジスタ論理回路を経由せずに、直接パストランジスタ／ＣＭＯＳ協調論理回路を合成する点である。以下、図２４の二分決定グラフを例にしてこのパストランジスタセレクタ／ＣＭＯＳゲートマッピングルーチン３００を説明する。まず処理３０１によって、ノードＮ３０１は図１４のｂに該当するので、図１４の変換パターンに従って、ＣＭＯＳゲートにマッピングされる（図２５のＧ３０１、Ｉ３００）。その他のノードＮ３００、Ｎ３０２、Ｎ３０３は図１２のマッピングルールに従ってパストランジスタセレクタおよびインバータにマッピングされる（図２５のＳ３００、Ｉ３０１）。このようにして図２５の中間回路が生成される。図２５の中間回路で、インバータＩ３００とＩ３０１は冗長なインバータであるので、処理３０２により除去され、最終的には図２６の回路が合成される。
【００６２】
実施例２〜５のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラム（図９）では、一度パストランジスタ論理回路を作ってから、ＮＡＮＤ論理やＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているパストランジスタセレクタを、回路の面積、遅延時間、消費電力等の回路特性から定義されるコストを計算して、コストが良くなればＣＭＯＳゲートに変換する。このため、どんな場合でも、回路特性の優れた論理回路を合成できることが保証される。しかし、毎回、回路の面積、遅延時間、消費電力等を計算する必要があるため、回路の合成に多少時間がかかるという欠点がある。また、図４からわかるように、たいていの場合、ＮＡＮＤ論理やＮＯＲ論理（あるいはＡＮＤ論理、ＯＲ論理）として動作しているパストランジスタセレクタは、ＣＭＯＳゲートに変換した方が合成される回路の特性は良くなる。このため、本実施例のように、コストを計算せずに、二分決定グラフから直接、パストランジスタ／ＣＭＯＳ協調論理回路を作成しても、そこそこ回路特性の優れた論理回路が合成できることが期待できる。実際、図２４の二分決定グラフからパストランジスタ論理回路を合成すると図２７の回路が合成されるが、この回路と比べてみると、本方法で合成されたパストランジスタ／ＣＭＯＳ協調論理回路（図２５）の方がトランジスタ数が少なく、優れた論理回路が合成できていることがわかる。このように、本方法によっても、パストランジスタセレクタとＣＭＯＳゲートの長所をうまく組み合わせたパストランジスタ／ＣＭＯＳ協調論理回路を合成することが可能である。
【００６３】
【発明の効果】
以上に示した実施例からわかるように、本発明によれば、与えられた論理回路仕様がどんな論理であっても、パストランジスタ回路とＣＭＯＳ回路の両方の長所をうまく組み合わせることにより、従来のＣＭＯＳ単独で構成した論理回路およびパストランジスタ単独で構成した論理回路よりも、面積、遅延時間、消費電力等の回路特性の優れたパストランジスタ／ＣＭＯＳ協調論理回路を合成することが可能になる。
【００６４】
また、回路の面積、遅延時間、消費電力から定義されるコストを調整することにより、パストランジスタセレクタとＣＭＯＳゲートの割合を変化させて、合成されるパストランジスタ／ＣＭＯＳ協調論理回路の面積、遅延時間、消費電力等の回路特性を柔軟にコントロールすることが可能になる。
【図面の簡単な説明】
【図１】本発明の望ましい実施形態。
【図２】本発明の他の望ましい実施形態。
【図３】本発明の他の望ましい実施形態。
【図４】パストランジスタセレクタでＮＡＮＤ論理およびＮＯＲ論理を構成した場合と、ＣＭＯＳゲートで構成した場合の比較の図。
【図５】本発明の第１の実施例によるパストランジスタ／ＣＭＯＳ協調論理回路と、従来のパストランジスタ論理回路およびＣＭＯＳ論理回路を比較した図。
【図６】本発明の第１の実施例によるパストランジスタ／ＣＭＯＳ協調論理回路のレイアウト例。
【図７】本発明の第２の実施例による、論理回路を合成するための計算機システムとそこに使用される論理回路合成プログラムの概略構成図。
【図８】本発明の第２の実施例による、論理回路の合成から半導体集積回路の製造までのフローチャート。
【図９】実施例２のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムのフロチャート。
【図１０】実施例２の論理関数から既存の公知の方法で合成されたＣＭＯＳ論理回路の回路図。
【図１１】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムの二分決定グラフ作成ルーチンによって作成される多段二分決定グラフの例を示す図。
【図１２】パストランジスタセレクタのマッピングルールを示す図。
【図１３】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムのパストランジスタマッピングルーチンによって、図１１の多段二分決定グラフから作成されるパストランジスタ論理回路の回路図。
【図１４】本発明の方法でパストランジスタ／ＣＭＯＳ協調論理回路を合成する際に、ＣＭＯＳゲートに変換されるパストランジスタセレクタのパターンと、その変換ルールを示す図。
【図１５】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムのＣＭＯＳゲート割り当てルーチンの途中で作成される中間回路の回路図。
【図１６】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムのＣＭＯＳゲート割り当てルーチンの途中で作成される中間回路の回路図。
【図１７】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムで面積最優先に設定した時に合成されるパストランジスタ／ＣＭＯＳ協調論理回路の回路図。
【図１８】図１０のＣＭＯＳ論理回路からＣＭＯＳゲートをパストランジスタセレクタに変換して作成される論理回路の回路図。
【図１９】図９の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムで遅延時間最優先に設定した時に合成されるパストランジスタ／ＣＭＯＳ協調論理回路の回路図。
【図２０】ｐチャネルとｎチャネルの両方のタイプのトランジスタで構成したパストランジスタセレクタの回路図。
【図２１】本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムで、コストを面積最優先から遅延時間最優先まで変化させた時の結果。
【図２２】１２種類の異なった論理に対して、本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムで合成される論理回路と、既存の公知の方法で合成したＣＭＯＳ論理回路およびパストランジスタ論理回路との、面積と消費電力を比較した図。
【図２３】本発明の第６の実施例によるパストランジスタ／ＣＭＯＳ協調論理回路の合成プログラムのフロチャート。
【図２４】図２３の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムにより作成される二分決定グラフの例を示す図。
【図２５】図２３の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムのパストランジスタセレクタ／ＣＭＯＳゲートマッピングルーチンの途中で作成される中間回路の回路図。
【図２６】図２３の本発明のパストランジスタ／ＣＭＯＳ協調論理回路合成プログラムにより合成されるパストランジスタ／ＣＭＯＳ協調論理回路の回路図。
【図２７】図２４の二分決定グラフから合成されるパストランジスタ論理回路の回路図。
【図１】
0003625973.tif 000004
【図２】
0003625973.tif 000005
【図３】
0003625973.tif 000006
【図４】
0003625973.tif 000007
【図５】
0003625973.tif 000008
【図６】
0003625973.tif 000009
【図７】
0003625973.tif 000010
【図８】
0003625973.tif 000011
【図９】
0003625973.tif 000012
【図１０】
0003625973.tif 000013
【図１１】
0003625973.tif 000014
【図１２】
0003625973.tif 000015
【図１３】
0003625973.tif 000016
【図１４】
0003625973.tif 000017
【図１５】
0003625973.tif 000018
【図１６】
0003625973.tif 000019
【図１７】
0003625973.tif 000020
【図１８】
0003625973.tif 000021
【図１９】
0003625973.tif 000022
【図２０】
0003625973.tif 000023
【図２１】
0003625973.tif 000024
【図２２】
0003625973.tif 000025
【図２３】
0003625973.tif 000026
【図２４】
0003625973.tif 000027
【図２５】
0003625973.tif 000028
【図２６】
0003625973.tif 000029
【図２７】
0003625973.tif 000030