(57)【特許請求の範囲】
【請求項１】
トランジスタ素子、抵抗素子又は容量素子を含む複数の部分回路よりなるトランジスタレベルの回路を該回路のプロセステクノロジに適合するように最適化する回路最適化装置であって、
前記複数の部分回路のうち回路の等価変換規則に合致する部分回路を該部分回路と等価な機能を持つ等価な部分回路に仮に変換する部分回路等価変換手段と、
前記等価な部分回路の前記プロセステクノロジに対する適合性の評価値を計算する評価値計算手段と、
前記評価値計算手段から得られた評価値を判定し、該評価値が改善された場合には、前記等価な部分回路への変換を行なう回路最適化手段とを備え、
前記評価値計算手段は、
複数のトランジスタ素子が直列接続された部分回路における各トランジスタ素子のしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部と、
前記部分回路の遅延時間を算出する遅延時間算出部と、
ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部と、
前記直列しきい値和電圧算出部、遅延時間算出部及び論理しきい値電圧算出部がそれぞれ算出した算出結果に前記プロセステクノロジに基づいた重み付けを行い、前記等価な部分回路に含まれるトランジスタ素子のトランジスタ幅を変更して前記評価値を計算する評価値計算部と
を有していることを特徴とする回路最適化装置。
【請求項２】
前記部分回路等価変換手段は、
前記複数の部分回路のうち等価な部分回路に変換できる部分回路を識別する識別部と、
前記識別部により識別された部分回路を等価な部分回路に変換する変換部とを有していることを特徴とする請求項１に記載の回路最適化装置。
【請求項３】
トランジスタ素子、抵抗素子又は容量素子を含む複数の部分回路よりなるトランジスタレベルの回路を該回路のプロセステクノロジに適合するように最適化する回路最適化装置であって、
入出力部を有し、回路の等価変換規則に基づいて対話形式で前記部分回路を該部分回路と等価な機能を持つ等価な部分回路に変更する回路編集手段と、
前記プロセステクノロジに基づいて前記回路編集手段により変更された前記等価な部分回路の最適化のための評価値を計算する評価値計算手段と、
前記評価値計算手段により得られた評価値を表示する表示手段とを備え、
前記評価値計算手段は、
複数のトランジスタ素子が直列接続された部分回路における各トランジスタ素子のしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部と、
前記部分回路の遅延時間を算出する遅延時間算出部と、
ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部と、
前記直列しきい値和電圧算出部、遅延時間算出部及び論理しきい値電圧算出部がそれぞれ算出した算出結果に前記プロセステクノロジに基づいた重み付けを行い、前記等価な部分回路に含まれるトランジスタ素子のトランジスタ幅を変更して前記評価値を計算する評価値計算部と
を有していることを特徴とする回路最適化装置。
【請求項４】
前記評価値計算手段は、
前記複数のトランジスタ素子のトランジスタ幅の値をそれぞれ最適化し、最適化されたトランジスタ幅の値を前記遅延時間算出部及び論理しきい値電圧算出部に対して出力するトランジスタ幅最適化部をさらに有していることを特徴とする請求項１又は３に記載の回路最適化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＭＯＳ・ＬＳＩ等の回路設計におけるトランジスタレベルの回路合成を行なう回路最適化装置に関する。
【０００２】
【従来の技術】
近年の半導体製造技術の進展によって、システムオンチップと呼ばれるように、１チップの半導体集積回路にコンピュータや通信装置等のシステム全体が組み込まれるようになってきている。また、半導体製造プロセス技術が従来にも増して短期間で世代交代が行なわれるようになってきており、システムオンチップの傾向に拍車をかけている。また、システムの用途又は使用条件がそれぞれ異なるため、半導体チップに対しても、低電力化、高性能化、低コスト化等の異なる要求が課せられる。従って、半導体製造プロセス技術も、様々な要求に対応できるように複数のバリエーションを用意する必要が生じてきている。
【０００３】
このような、半導体プロセスのバリエーションの増大又はシステム規模の増大は、半導体システムの設計工程の増大につながるため、増大した設計工数に対応する設計手法の革新が求められている。設計工数削減の最も有望な手段としては、同等の機能を持つ回路を半導体製造プロセスに依らず再利用可能な部品として活用することである。
【０００４】
再利用可能な機能回路又はレイアウト部品をハードＩＰと呼び、このハードＩＰを再利用するためには、半導体製造プロセスのデザインルールの変更に対応してレイアウトの変更を自動的に行なうレイアウトコンパクション手法（例えば、特開平１０−３４９１号公報）、又はデザインルールによりパラメタライズされるレイアウト合成手法等がある。また、半導体製造プロセスの変更に応じてトランジスタサイズの最適値も変わるため、トランジスタサイジング手法（例えば、特開平１１−３９７３号公報）をこれらのレイアウトコンパクション手法と組み合わせる方法等がある。
【０００５】
【発明が解決しようとする課題】
しかしながら、前記従来のハードＩＰの再利用方法は、回路構造に変更が加えられないため、再利用される回路構造がプロセステクノロジの更新による新たな条件に適合しない場合には、回路の最適性が損なわれるという問題がある。
【０００６】
本発明は、前記従来の問題に鑑みてなされたものであり、製造条件や動作環境が変更された場合であっても、変更された条件又は環境に対して最適化された回路に自動変換できるようにすることを目的とする。
【０００７】
【課題を解決するための手段】
前記の目的を達成するため、本発明は、プロセステクノロジが変更されたとしても、いったん合成された回路データを最適化するために、回路の一部を構成する部分的な回路構造（以下、部分回路と呼ぶ。）を変更する等価変換を行なう構成とするものである。
【０００８】
本発明に係る第１の回路最適化装置は、トランジスタ素子、抵抗素子又は容量素子を含む複数の部分回路よりなるトランジスタレベルの回路を該回路のプロセステクノロジに適合するように最適化する回路最適化装置を対象とし、複数の部分回路のうち回路の等価変換規則に合致する部分回路を該部分回路と等価な機能を持つ等価な部分回路に仮に変換する部分回路等価変換手段と、等価な部分回路のプロセステクノロジに対する適合性の評価値を計算する評価値計算手段と、評価値計算手段から得られた評価値を判定し、該評価値が改善された場合には、等価な部分回路への変換を行なう回路最適化手段とを備え、評価値計算手段は、複数のトランジスタ素子が直列接続された部分回路における各トランジスタ素子のしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部と、部分回路の遅延時間を算出する遅延時間算出部と、ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部と、直列しきい値和電圧算出部、遅延時間算出部及び論理しきい値電圧算出部がそれぞれ算出した算出結果に前記プロセステクノロジに基づいた重み付けを行い、前記等価な部分回路に含まれるトランジスタ素子のトランジスタ幅を変更して前記評価値を計算する評価値計算部を有している。
【０００９】
第１の回路最適化装置によると、複数の部分回路のうち回路の等価変換規則に合致する部分回路を等価な部分回路に仮に変換する部分回路等価変換手段と、仮に変換された等価な部分回路のプロセステクノロジに対する適合性の評価値を計算する評価値計算手段とを備えているため、得られた評価値が変換前と比べて改善されている場合にはこの等価な部分回路を回路合成用に採用できるので、プロセステクノロジが変更されたとしても回路データを最適化できる。
【００１０】
第１の回路最適化装置において、部分回路等価変換手段が、複数の部分回路のうち等価な部分回路に変換できる部分回路を識別する識別部と、識別部により識別された部分回路を等価な部分回路に変換する変換部とを有していることが好ましい。
【００１３】
本発明に係る第２の回路最適化装置は、トランジスタ素子、抵抗素子又は容量素子を含む複数の部分回路よりなる回路を該回路のプロセステクノロジに適合するように最適化する回路最適化装置を対象とし、入出力部を有し、回路の等価変換規則に基づいて対話形式で部分回路を該部分回路と等価な機能を持つ等価な部分回路に変更する回路編集手段と、プロセステクノロジに基づいて回路編集手段により変更された等価な部分回路の最適化のための評価値を計算する評価値計算手段と、評価値計算手段により得られた評価値を表示する表示手段とを備え、評価値計算手段は、複数のトランジスタ素子が直列接続された部分回路における各トランジスタ素子のしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部と、部分回路の遅延時間を算出する遅延時間算出部と、ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部と、直列しきい値和電圧算出部、遅延時間算出部及び論理しきい値電圧算出部がそれぞれ算出した算出結果に前記プロセステクノロジに基づいた重み付けを行い、前記等価な部分回路に含まれるトランジスタ素子のトランジスタ幅を変更して前記評価値を計算する評価値計算部を有している。
【００１４】
第２の回路最適化装置によると、装置の操作者が回路編集手段を用いて対話形式で部分回路を該部分回路と等価な機能を持つ等価な部分回路に変更できる回路編集手段と、等価変換規則に基づいて回路編集手段により変更された等価な部分回路に対して最適化の評価値を計算する評価値計算手段と、得られた評価値を表示する表示手段とを備えているため、装置の操作者が回路編集手段を用いて対話形式で部分回路を該部分回路と等価な機能を持つ等価な部分回路に変更することができ、等価変換規則に基づいて回路編集手段により変更された等価な部分回路に対して最適化の評価値を計算し、得られた評価値を回路編集手段の出力部に出力できる。これにより、操作者は等価な部分回路の評価値を変更後直ちに確認できる。
【００１６】
第１又は第２の回路最適化装置において、評価値計算手段が、複数のトランジスタのトランジスタ幅をそれぞれ最適化し、遅延時間算出部及び論理しきい値電圧算出部に対して出力するトランジスタ幅最適化部をさらに有していることが好ましい。
【００１７】
【発明の実施の形態】
（第１の実施形態）
本発明に係る第１の実施形態について図面を参照しながら説明する。
【００１８】
図１は本発明の第１の実施形態に係る回路最適化装置の機能ごとのブロック構成を示している。図１において、本実施形態に係る回路最適化装置は、等価回路変換手段１Ａ、評価値計算手段２及び回路最適化手段３を備えている。
【００１９】
等価回路変換手段１Ａは、回路の合成対象であって、トランジスタ素子、抵抗素子及び容量素子を含むトランジスタレベルの回路図データＤ１及び部分回路の等価変換規則データＤ２を読み込み、該等価変換規則データＤ２に基づいて回路データを変換し、変換された部分回路を回路図データＤ１に出力する。
【００２０】
評価値計算手段２は、等価回路変換手段１Ａにより変換された回路図データＤ１と、プロセス条件や電源電圧等を記述したプロセステクノロジである環境変数データＤ３とを読み込んで最適化の程度を評価する評価値を計算する。
【００２１】
回路最適化手段３は、評価値計算手段２が出力する評価値を用いて、回路の最適化段階において、等価回路変換を行なう部分（＝部分回路）の選定と、等価回路変換を実際に行なうか否かの判定を各部分回路に対して順次行ない、回路全体を最適化する。
【００２２】
以下、等価回路変換手段１Ａを説明する。
【００２３】
図２に示すように、本実施形態に係る等価回路変換手段１Ａは、回路合成の対象である回路図データＤ１及び回路の等価変換規則Ｄ２を読み込み、回路図データＤ１の中から等価変換規則Ｄ２に合致し且つ等価変換が可能な部分回路を識別する識別部１１と、該識別部１１により識別された部分回路を該部分回路と等価な機能を持つ等価回路に変換する変換部１２とを有している。
【００２４】
識別部１１は、等価変換規則Ｄ２に合致する等価変換が可能な部分回路を１つ以上探索した後、探索された部分回路のうちの１つを選択し、変換部１２は選択された部分回路を等価回路に変換する。回路の探索は、例えば、電源線、グランド線又はクロック線に接続されたトランジスタを探索すればよい。
【００２５】
次に、回路の等価変換規則Ｄ２の例を図面を参照しながら説明する。
【００２６】
図３（ａ）及び（ｂ）〜図５（ａ）及び（ｂ）は本実施形態に係る等価変換規則を説明するための部分回路の回路構成を示している。図３（ａ）に示す部分回路は、トーテンポール型のダイナミック回路であって、互いのゲートが入力端子Ｘと接続され且つ互いのドレインが出力端子Ｙと接続された第１のＰ型トランジスタ５１ｐ及び第１のＮ型トランジスタ５１ｎよりなるインバータ５１を有している。インバータ５１の電源端子側にはクロック信号ＣＬにより制御される第２のＮ型トランジスタ５２ｎが接続され、グランド端子側にはクロック相補信号／ＣＬにより制御される第２のＰ型トランジスタ５２ｐが接続されている。従って、クロック信号がローの場合には出力端子Ｙがハイインピーダンスとなり、クロック信号がハイの場合にはインバータ５１の動作が可能となる。図３（ｂ）に示す部分回路は、図３（ａ）に示す回路の等価回路であって、インバータ５１の出力側にクロック信号ＣＬ及びクロック相補信号／ＣＬにより制御される転送ゲートよりなるセレクタ５３が接続されて構成されている。
【００２７】
図３（ａ）に示す部分回路は、出力負荷容量を抑えることができるという長所を持つ反面、直列段のトランジスタの個数が多いため、電源電圧を小さくできないという短所と動作時の直列トランジスタ抵抗が大きくなるという短所とを持つ。逆に、図３（ｂ）に示す部分回路は、直列段のトランジスタの個数が少ないため、低電圧化を図れると共に動作時の直列トランジスタ抵抗を小さくできるという長所を持つが、出力負荷容量が増えるという短所を持つ。従って、どちらがより最適であるかは、動作時の電源電圧や製造プロセスの技術に大きく依存する。
【００２８】
ここで、図３（ｂ）に示す部分回路を探索する探索方法を説明する。
手順（１）：ゲートにクロック信号が入力されているトランジスタをすべて抽出する。
手順（２）：手順（１）で抽出されたトランジスタのうち、一のトランジスタとソース及びドレインを共有する他のトランジスタを探索する。
手順（３）：手順（２）で探索された、ソース及びドレインを共有するトランジスタ同士をトランジスタ対とする。
手順（４）：手順（３）で生成されたトランジスタ対のうち、Ｐ型トランジスタとＮ型トランジスタとからなり、互いのゲートに相補な関係を持つ信号が入力されるトランジスタ対を抽出する。
手順（５）：抽出されたトランジスタ対のうち、ソース又はドレインがインバータの出力端子と接続されているトランジスタ対を抽出する。
【００２９】
このように、手順（５）で抽出されたトランジスタ対及びインバータが、図３（ｂ）に示すセレクタ５３及びインバータ５１とそれぞれ対応し、従って、所望の部分回路が探索されたことになる。
【００３０】
他の部分回路に対しても、各回路構成に応じて適当な探索方法を用いる。
【００３１】
次に、図４（ａ）及び（ｂ）に示す部分回路はインバータ５１の入力信号の論理を反転させる他のインバータが接続されてなる。図４（ａ）に示す部分回路はインバータ５１の入力端子Ｘ側にインバータ５４が設けられている。図４（ｂ）に示す部分回路は図４（ａ）に示す部分回路の等価回路であって、インバータ５１の入力端子Ｘ側に２つのインバータ５４Ａ，５４Ｂが設けられている。図４（ａ）に示す部分回路は、単純な構成のため速度や面積の点で有利である。図４（ｂ）に示す部分回路は、２つのインバータ５４Ａ，５４Ｂのそれぞれを構成するＰ型トランジスタ及びＮ型トランジスタのサイズの比であるＰ／Ｎ比を調整することにより、ゲート開閉のタイミングを調整することができるため、信号変化時の貫通電流を減らすような最適化が可能である。
【００３２】
図５（ａ）に示す部分回路は１つのインバータ５５よりなり、図５（ｂ）に示す部分回路は第１のインバータ５５Ａ，第２のインバータ５５Ｂ及び第３のインバータ５５Ｃが直列に接続されてなる。図５（ａ）及び（ｂ）に示す部分回路は論理的には等価であるが、図５（ａ）に示す部分回路は面積を小さくできる反面、ドライブ能力を確保するのが困難であり、逆に、図５（ｂ）に示す部分回路は、面積は大きくなる反面、ドライブ能力を十分に確保することができる。
【００３３】
このように、部分回路とその等価回路にはいずれも長所短所があり、合成する回路のプロセステクノロジに応じて最適な回路を選択すればよい。
【００３４】
以下、評価値計算手段２の詳細を説明する。評価値計算手段２は、トランジスタレベルの回路データに対して回路最適化の評価値を計算する。
【００３５】
図６に示すように、本実施形態に係る評価値計算手段２は、複数のトランジスタが直列接続されてなる部分回路における各トランジスタのしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部２１と、部分回路における複数のトランジスタのトランジスタ幅をそれぞれ最適化するトランジスタ幅最適化部２２と、部分回路の遅延時間を算出する遅延時間算出部２３と、ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部２４と、直列しきい値和電圧算出部２１、遅延時間算出部２３及び論理しきい値電圧算出部２４がそれぞれ算出した算出結果に環境変数データＤ３に基づいた重み付けを行なって評価値を計算する評価値計算部２５とを有している。
【００３６】
ここで、トランジスタ幅最適化部２２は、例えば、前述の特開平１１−３９７３号公報に開示された方法を用いて計算することができる。
【００３７】
具体的に、直列しきい値和電圧算出部２１及び論理しきい値電圧算出部２４が用いる評価関数の具体例を説明する。
【００３８】
まず、直列しきい値和電圧算出部２１において、電源電圧Ｖddを１．８Ｖとした場合に、直列接続されたトランジスタの最大個数をＮ（ただし、Ｎは自然数とする。）とすると、以下の式（１）に示すトランジスタのしきい値電圧の総和と電源電圧との比の値を電源電圧に対する動作保証の評価値として用いることができる。
【００３９】
Ｎ・Ｖt ／（Ｖdd−α）                              …（１）
ここで、αはプロセス及び回路レイアウト設計に依存する電源電圧のばらつきを表わす変数である。式（１）により示される値は、０から１の間が許容範囲であり、値が１に近づく程、動作保証の評価値が小さくなる。
【００４０】
また、式（１）に示す評価値を用いた評価関数には以下の式（２）に示す第１の評価関数Ｅv が適当である。
【００４１】
Ｅv ＝  １／｛ｍａｘ(δ，１−Ｎ・Ｖt ／(Ｖdd−α))｝  …（２）
（但し、δはδ＜＜１の正数である。）
ここで、第１の評価関数Ｅv は、式（１）に示す値が０のときには１となり、１に近づくか又は１を超えるときには無限大となる。
【００４２】
次に、論理しきい値電圧算出部２４において、ゲートの出力論理が切り替わるときの入力電圧（論理しきい値電圧）Ｖthは、電源電圧Ｖddのほぼ２分の１、すなわち、電源電圧Ｖddの中央値を取るのが好ましく、論理しきい値電圧Ｖthの値は回路を解析的に解くことにより求められる。
【００４３】
論理しきい値電圧Ｖthは電源電圧Ｖddの中央値が好ましいという第２の評価関数Ｅt を下記の式（３）のように表現する。
【００４４】
Ｅt ＝  ｍａｘ（１／(Ｖdd−Ｖth)，１／Ｖth）          …（３）
また、評価値計算部２５において、回路最適化の評価値を第１の評価関数Ｅv と第２の評価関数Ｅt との重み付け線形和として下記の式（４）のように表現する。
【００４５】
Ｅtotal ＝Ａ・Ｅv ＋Ｂ・Ｅt                         …（４）
ここで、外部環境に依存する変数は、式（１）の変数αと式（４）の変数Ａ，Ｂである。例えば、プロセスが微細化され該プロセスによる設計ばらつきが増大する場合には変数αを大きくする。また、電源電圧に対する直列トランジスタの個数を抑えたい場合には、変数Ａを大きくする。これらの操作により、外部環境の変更又は変化に対して最適化の基準を設定し、回路の最適性評価に反映させることができる。
【００４６】
以下、前記のように構成された回路最適化装置の動作について図面を参照しながら説明する。前述の等価回路変換手段１Ａ、評価値計算手段２及び回路最適化手段３はそれぞれコンピュータ上で動作するソフトウェアプログラムにより構成されており、本実施形態においては、図１に示す回路最適化手段３がメイン処理となり、他の構成要素、すなわち、等価回路変換手段１Ａ及び評価値計算手段２を援用しながら、対象回路の最適化を行なう。
【００４７】
図７は本発明の第１の実施形態に係る回路最適化装置の最適化処理手順のフローチャートを示している。図７に示すように、まず、部分回路検索工程ＳＴ０１において、等価回路変換手段１Ａは、最適化の対象とする回路全体から、等価回路に変換可能な部分回路を検索する。等価回路に変換可能な部分回路が見つからない場合は処理を終了する。
【００４８】
次に、等価変換仮実施工程ＳＴ０２において、等価回路変換手段１Ａは、検索した部分回路に対して等価変換を仮実施する。
【００４９】
次に、評価値計算工程ＳＴ０３において、評価値計算手段２は、回路図データＤ１と環境変数データＤ３とを読み込み、式（４）に示す評価関数Ｅtotal を用いて最適化の程度を評価する評価値を計算する。
【００５０】
次に、評価値判定工程ＳＴ０４において、回路最適化手段３は、評価値が等価回路に変換する前と比べて改善されているか否かを判定する。この仮実施により評価値が改善されない場合には、等価回路への変換を行なわない。
【００５１】
次に、等価変換実施工程ＳＴ０５において、回路最適化手段３は、仮実施により評価値が改善されている場合には、等価回路への変換を行なう。続いて、次の部分回路を検索する。
【００５２】
以下、このような回路最適化処理により変換される回路の具体例について図面を参照しながら説明する。
【００５３】
図８〜図１０は本実施形態に係る回路最適化処理が行なわれる様子を段階的に示す回路図である。図８に示す回路Ａは、従来の製造プロセスに適合した第１の部分回路ａ１、第２の部分回路ａ２及び第３の部分回路ａ３を含む回路構成を示している。ここで、例えば、プロセステクノロジの変更に伴って、回路Ａに供給される電源電圧Ｖddが３．３Ｖから、２．５Ｖに低減される場合を考える。電源電圧Ｖddが低下すると、ノイズの低減を図るために、トランジスタにおける直列しきい値電圧の和と電源電圧Ｖddとの比の値を小さくする必要がある。また、電源電圧Ｖddが低下し、回路全体の消費電力が小さくなるため、個々のトランジスタの消費電力を低減するよりも、個々のトランジスタの動作を高速化する必要性の方が増大する。従って、図８に示す回路Ａにおける第１の部分回路ａ１を図９に示す回路Ｂにおける第１の部分回路ｂ１に変換すれば、図３（ａ）及び図３（ｂ）で説明したように、第１の部分回路ｂ１は第１の部分回路ａ１よりも直列しきい値電圧の和が小さくなる。
【００５４】
また、図８に示す回路Ａにおける第２の部分回路ａ２を図９に示す回路Ｂにおける第２の部分回路ｂ２に変換すれば、図５（ａ）及び図５（ｂ）の説明から分かるように、第２の部分回路ｂ２は第２の部分回路ａ２よりも低電圧駆動が可能となる。
【００５５】
さらに、図９に示す回路Ｂにおける第３の部分回路ａ３を図１０に示す回路Ｃにおける第３の部分回路ｃ３に変換すれば、第３の部分回路ｃ３は第３の部分回路ａ３よりも直列しきい値電圧の和が小さくなる。
【００５６】
このように、回路Ａから回路Ｂへの変換処理、及び回路Ｂから回路Ｃへの変換処理を行なうことにより、次第にプロセステクノロジへの適合性が向上することが分かる。
【００５７】
また、本実施形態を、例えば、エキスパートシステムとして実現する場合には、図１１に示すように、回路Ａ、Ｂ、Ｃ間の等価変換の関係を知識表現として記述すればよい。ここで、図１１に示す「ｓｔｒｕｃｔｕｒｅ（構造）」は、回路等価変換知識ベース及び回路構造データベースとして蓄積する。
（第２の実施形態）
以下、本発明に係る第２の実施形態について図面を参照しながら説明する。
【００５８】
図１２は本発明の第２の実施形態に係る回路最適化装置の機能ごとのブロック構成を示している。図１２において、図１に示す構成要素と同一の構成要素には同一の符号を付すことにより説明を省略する。図１２に示す等価変換規則データＤ２１は一方向の変換規則のみで構成されており、等価回路変換手段１Ｂは、読み込んだ等価変換規則データＤ２１に基づいて等価変換が可能な部分回路が見つかりしだい、順次等価回路の変換を行なう。等価変換が可能な部分回路が見つからなくなった時点で回路合成を終了する。ここで、一方向の変換規則とは、例えば、図５（ａ）及び（ｂ）に示すインバータを例に採ると、図５（ａ）に示すインバータ５５から図５（ｂ）に示すインバータ５５Ａ，５５Ｂ，５５Ｃへの変換、又はその逆の変換のみを規定する変換規則をいう。
【００５９】
このように、所望のプロセス条件や電源電圧等に適合する等価変換規則Ｄ２１を用いているため、迅速に且つ簡便に最適化された回路を再合成することができる。
（第３の実施形態）
以下、本発明に係る第３の実施形態について図面を参照しながら説明する。
【００６０】
図１３は本発明の第３の実施形態に係る回路最適化装置の機能ごとのブロック構成を示している。図１３において、図１に示す構成要素と同一の構成要素には同一の符号を付すことにより説明を省略する。本実施形態に係る回路最適化装置は、トランジスタレベルの回路データに対して対話形式で部分回路を等価回路に変換できる構成を有しており、図１３に示すように、回路編集手段としての回路図エディタ４には入力部及び表示部としてのインタラクティブ入出力手段５が設けられている。
【００６１】
このように構成された回路最適化装置の動作を説明すると、まず、本装置の操作者はインタラクティブ入出力手段５から回路図エディタ４を起動し、所定の操作を行なって複数の部分回路よりなる回路図データＤ１を読み込む。読み込まれた回路図データＤ１の中から所望の部分回路を選択し、等価変換規則Ｄ２に基づいた変換を行なう。変換結果が回路図データＤ１に出力された後に、評価値計算手段２は、変換された等価回路の評価値Ｅtotal （＝式（４））を求め、求めた評価値Ｅtotal を回路図エディタ４に出力すると共に回路最適化手段３に出力する。
【００６２】
従って、本実施形態によると、回路に変更を加えた際に、変更された回路の評価値が即時に表示されるため、操作者は、評価値を確認しながら最適化された変換処理を行なうことができるので、操作者の人為的な誤りを防止でき、その結果、合成時における回路の最適化を効率良く行なえるようになる。
【００６３】
【発明の効果】
本発明の第１の回路最適化装置によると、複数の部分回路のうち回路の等価変換規則に合致する部分回路を等価な部分回路に仮変換すると共に、該等価な部分回路のプロセステクノロジに対する適合性の評価値を計算する。従って、得られた評価値が変換前よりも改善されている場合には、この等価な部分回路を回路合成用に採用できるため、プロセステクノロジが変更されたとしても、新たなプロセステクノロジを満足する回路データを再合成できる。
【００６４】
第１の回路最適化装置において、部分回路等価変換手段が、複数の部分回路のうち等価な部分回路に変換できる部分回路を識別する識別部と、識別部により識別された部分回路を等価な部分回路に変換する変換部とを有していると、トランジスタレベルの回路データが膨大なデータ量であっても、回路の等価変換規則に合致する部分回路を確実に識別でき且つ変換できる。
【００６６】
本発明の第２の回路最適化装置によると、操作者は等価な部分回路の評価値を変更後直ちに確認できるため、操作者の人為的な誤りを防止できるので、人手を介して回路合成の最適化を行なう際に作業効率を向上できる。
【００６７】
第１又は第２の回路最適化装置において、評価値計算手段が、複数のトランジスタが直列接続された部分回路における各トランジスタのしきい値電圧の総和と電源電圧との比の値を算出する直列しきい値和電圧算出部と、部分回路の遅延時間を算出する遅延時間算出部と、ゲートの出力論理が切り替わる際の電圧である論理しきい値電圧を算出する論理しきい値電圧算出部と、直列しきい値和電圧算出部、遅延時間算出部及び論理しきい値電圧算出部が算出した算出結果にプロセステクノロジに基づいた重み付けを行なって評価値を計算する評価値計算部とを有していると、プロセステクノロジのうち電源電圧、トランジスタのしきい値電圧、プロセスのばらつき及び論理しきい値電圧を回路の最適化の評価値に反映できるため、トランジスタレベルの回路の最適化を確実に行なえる。
【００６８】
第１又は第２の回路最適化装置において、評価値計算手段が、複数のトランジスタのトランジスタ幅をそれぞれ最適化し、遅延時間算出部及び論理しきい値電圧算出部に対して出力するトランジスタ幅最適化部をさらに有していると、遅延時間及び論理しきい値電圧の評価値の精度を向上させることができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る回路最適化装置の機能ブロック図である。
【図２】本発明の第１の実施形態に係る回路最適化装置の等価回路変換手段の機能ブロック図である。
【図３】（ａ）及び（ｂ）は本発明の第１の実施形態に係る回路最適化装置の等価変換規則を説明するための部分回路の回路図である。
【図４】（ａ）及び（ｂ）は本発明の第１の実施形態に係る回路最適化装置の等価変換規則を説明するための部分回路の回路図である。
【図５】（ａ）及び（ｂ）は本発明の第１の実施形態に係る回路最適化装置の等価変換規則を説明するための部分回路の回路図である。
【図６】本発明の第１の実施形態に係る回路最適化装置の回路最適化手段の機能ブロック図である。
【図７】本発明の第１の実施形態に係る回路最適化装置の最適化手順を示すフローチャート図である。
【図８】本発明の第１の実施形態に係る回路最適化装置を用いた回路最適化処理の対象となる回路図であって、従来のプロセステクノロジに適合する回路図である。
【図９】本発明の第１の実施形態に係る回路最適化装置を用いた回路最適化処理の対象となる回路図であって、新たなプロセステクノロジに適合する等価変換後の回路図である。
【図１０】本発明の第１の実施形態に係る回路最適化装置を用いた回路最適化処理の対象となる回路図であって、新たなプロセステクノロジに適合する等価変換後の回路図である。
【図１１】本発明の第１の実施形態に係る回路最適化装置における、回路Ａ、回路Ｂ及び回路Ｃ間の等価変換の関係を知識表現として記述したプログラム例である。
【図１２】本発明の第２の実施形態に係る回路最適化装置の機能ブロック図である。
【図１３】本発明の第３の実施形態に係る回路最適化装置の機能ブロック図である。
【符号の説明】
１Ａ    等価回路変換手段
１Ｂ    等価回路変換手段
１１    識別部
１２    変換部
２      評価値計算手段
２１    直列しきい値和電圧算出部
２２    トランジスタ幅最適化部
２３    遅延時間算出部
２４    論理しきい値電圧算出部
２５    評価値計算部
３      回路最適化手段
４      回路図エディタ
５      インタラクティブ入出力手段
Ｄ１    回路図データ
Ｄ２    等価変換規則データ
Ｄ２１  等価変換規則データ
Ｄ３    環境変数データ
５１    インバータ
５１ｐ  第１のＰ型トランジスタ
５１ｎ  第１のＮ型トランジスタ
５２ｐ  第２のＰ型トランジスタ
５２ｎ  第２のＮ型トランジスタ
５３    セレクタ
５４Ａ  インバータ
５４Ｂ  インバータ
５５Ａ  第１のインバータ
５５Ｂ  第２のインバータ
５５Ｃ  第３のインバータ
Ｘ      入力端子
Ｙ      出力端子
ＣＬ    クロック信号
／ＣＬ  クロック相補信号
ａ１    第１の部分回路
ａ２    第２の部分回路
ａ３    第３の部分回路
ｂ１    第１の部分回路
ｂ２    第２の部分回路
ｃ３    第３の部分回路
【図１】
0003907342.tif 000002
【図２】
0003907342.tif 000003
【図３】
0003907342.tif 000004
【図４】
0003907342.tif 000005
【図５】
0003907342.tif 000006
【図６】
0003907342.tif 000007
【図７】
0003907342.tif 000008
【図８】
0003907342.tif 000009
【図９】
0003907342.tif 000010
【図１０】
0003907342.tif 000011
【図１１】
0003907342.tif 000012
【図１２】
0003907342.tif 000013
【図１３】
0003907342.tif 000014