(57)【特許請求の範囲】
【請求項１】
所定の機能を有するマクロコアと入力端子と出力端子を有するマクロに、前記入力端子と出力端子の近傍であって当該端子からの配線長による遅延時間を考慮する必要がない位置に境界セルを新たに付加する工程と、
前記境界セルを付加したマクロについて、該入力端子と出力端子に該境界セルの遅延特性データを属性データとして与えた論理ライブラリデータを生成して論理ライブラリファイルに格納する工程と、
少なくとも複数のセルと前記マクロを有し、前記セルが該マクロの入力端子及び出力端子に接続された境界セルを介して前記マクロコアに接続される論理回路を設計する工程と、
該設計された論理回路について、該遅延特性データに基づいてマクロの遅延時間を演算する工程と、
演算して求めた該遅延時間にしたがって該設計された論理回路の論理シミュレーションを行う工程とを有し、
前記入力端子に接続される境界セルの遅延特性データは、入力スルーレートに依存する遅延時間特性であって、該入力端子に接続されるセルの第１の遅延時間判定閾値と前記マクロコアの前記第１の遅延時間判定閾値とは異なる第２の遅延時間判定閾値とに整合した遅延時間特性についてのデータであり、前記出力端子に接続される境界セルの遅延特性データは、入力スルーレートに依存する遅延時間特性であって、前記マクロコアの前記第２の遅延時間判定閾値と前記出力端子に接続されるセルの前記第１の遅延時間判定閾値とに整合した遅延時間特性についてのデータであることを特徴とする大規模集積回路装置の設計方法。
【請求項２】
前記遅延時間特性についてのデータは、遅延時間の計算に必要な特性パラメータであることを特徴とする請求項１に記載の大規模集積回路装置の設計方法。
【請求項３】
前記出力端子に接続される境界セルの遅延特性データは、出力駆動能力についてのデータであることを特徴とする請求項１に記載の大規模集積回路装置の設計方法。
【請求項４】
前記出力駆動能力についてのデータは、入力スルーレート及び負荷容量に依存した出力スルーレートのデータと、入力スルーレート及び負荷容量に依存した遅延時間であることを特徴とする請求項３に記載の大規模集積回路装置の設計方法。
【請求項５】
所定の機能を有するマクロコアと入力端子と出力端子を有するマクロに、前記入力端子と出力端子に境界セルを新たに付加する工程と、
前記境界セルを付加したマクロについて、該入力端子と出力端子に該境界セルの遅延特性データを属性データとして与えた論理ライブラリデータを生成して論理ライブラリファイルに格納する工程と、
少なくとも複数のセルと前記マクロを有し、前記セルが該マクロの入力端子及び出力端子に接続された境界セルを介して前記マクロコアに接続される論理回路を設計する工程と、
該設計された論理回路について、該遅延特性データに基づいてマクロの遅延時間を演算する工程と、
演算して求めた該遅延時間にしたがって該設計された論理回路の論理シミュレーションを行う工程とを有し、
前記入力端子に接続される境界セルの遅延特性データは、入力スルーレートに依存する遅延時間特性であって、該入力端子に接続されるセルの第１の遅延時間判定閾値と前記マクロコアの前記第１の遅延時間判定閾値とは異なる第２の遅延時間判定閾値とに整合した遅延時間特性についてのデータであり、前記出力端子に接続される境界セルの遅延特性データは、入力スルーレートに依存する遅延時間特性であって、前記マクロコアの前記第２の遅延時間判定閾値と前記出力端子に接続されるセルの前記第１の遅延時間判定閾値とに整合した遅延時間特性についてのデータであることを特徴とする大規模集積回路装置の設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、大規模集積回路装置（ＬＳＩ）の製造方法及び大規模集積回路装置にかかり、特に、ＬＳＩの設計段階における論理シミュレーション工程において行われる遅延時間計算工程に関する。
【０００２】
【従来の技術】
近年の半導体の微細化技術の向上により、ＬＳＩは大規模化がより進んでいる。その結果、１つのチップ内にシステムとしての機能を作り込むことが可能になってきている。例えば、従来であれば１チップ内で構成されていた機能マクロが、それ以外の論理回路と共に１チップに設けられるようになる。かかる機能マクロは、例えば、ＣＰＵ、乗算器、マイクロコンピュータの周辺回路等、それ自体で１つのチップとしての機能を有するものである。通常のマクロは、ゲートやフリップフロップであるセルやメモリを複数個有する比較的大きな固まりの回路である。
【０００３】
この様な機能マクロは、業界内で一種の標準化されたものが多く見受けられる様になり、ＬＳＩを設計して製造するメーカーによる独自設計のもの以外にも、種々の設計会社により設計されて市場に流通するものがある。従って、これらの機能マクロはある意味でブラックボックス化され、それを利用する者にとって内部の詳細な構成を考慮せず単にその機能さえ満足されれば良いという性格のものになってきている。
【０００４】
【発明が解決しようとする課題】
しかしながら、機能マクロがブラックボックス化されるに伴い、ＬＳＩの設計上必要な論理シミュレーション工程での遅延時間計算を正確に行うことができないという新たな問題が出てきた。即ち、ＬＳＩの製造工程には、大きく分けて回路設計をして論理シミュレーションによりその動作を確認する工程と、実際のＬＳＩのマスクパターンを設計する工程と、そして最後に実際の半導体ウエハ上にそのパターンを焼き付けてＬＳＩチップとする工程等からなる。
【０００５】
論理シミュレーション工程は、その後の多大なコストを要するウエハ工程を無駄にしない為には必須の工程である。そして、その論理シミュレーション工程ではチップ内のセルやマクロの論理動作が確認されるが、その為には回路接続された各セルやマクロの遅延時間を計算により求め、その遅延時間に基づいて論理動作の確認のシミュレーションが行われる。
【０００６】
従って、機能マクロがブラックボックス化されることによって、その機能マクロにおける遅延時間の算出が困難になっている。それ自体で膨大な規模をもつ機能マクロは、内部の基本的な遅延時間は設計された段階でほぼ確定されているが、そのマクロの入力端子に入力される入力スルーレートに依存して入力部での遅延時間が変動し、更にそのマクロの出力に接続される負荷容量に依存して出力部での遅延時間が変動する。この変動の原因は、微細化に伴い従来考慮する必要がなかった入力スルーレートに依存したセルの遅延時間や出力スルーレート、配線部分の遅延時間、そして、遅延判定の信号レベルの違いからくる遅延時間等であり、機能マクロがチップ内に作り込まれることと密接な関係にある。
【０００７】
かかる変動部分を正確に計算して、基本的な遅延時間に加算することによって、チップ内に設けられたマクロの全体の遅延時間を正確に計算することが可能になる。ところが、ブラックボックス化されたマクロの入力段の回路構成は千差万別であり、また出力段での回路構成も同様にマクロ毎に異なる。従って、市場に流通するマクロを利用して論理回路設計をする場合、その遅延時間の正確な計算は容易ではない。
【０００８】
そこで、本発明は、上記従来の問題点を解決するため、ブラックボックス化されたマクロに対しても、回路の設計者がその遅延時間を正確に計算することが容易にできるようにするマクロのモデリング方法を提供し、より効率的な大規模集積回路装置の製造方法及び大規模集積回路装置を提供することにある。
【０００９】
【課題を解決するための手段】
上記の目的は、本発明によれば、所定の機能を有するマクロコアを有し入力端子と出力端子の近傍に境界セルを付加したマクロに対して、該入力端子と出力端子に該境界セルの遅延特性データを属性データとして与えた論理ライブラリデータを生成してファイルに格納する工程と、
少なくとも複数のセルと前記マクロを有し、前記セルが該マクロの入力端子及び出力端子に接続された境界セルを介して前記マクロコアに接続される論理回路を設計する工程と、
該設計された論理回路について、該遅延特性データに基づいてマクロの遅延時間を演算する工程と、
演算して求めた該遅延時間にしたがって該設計された論理回路の論理シミュレーションを行う工程とを有することを特徴とする大規模集積回路装置の製造方法を提供することにより達成される。
【００１０】
本発明によれば、前記入力端子に接続される境界セルの遅延特性データは、入力スルーレートに依存する遅延時間特性についてのデータであることを特徴とする。さらに、前記遅延時間特性についてのデータは、遅延時間の計算に必要な特性パラメータであることを特徴とする。また、前記遅延時間特性についてのデータは、該入力端子に接続されるセルの遅延時間判定レベルと前記マクロコアの遅延時間判定レベルとに整合した遅延時間特性であることを特徴とする。
【００１１】
さらに、本発明によれば、前記出力端子に接続される境界セルの遅延特性データは、出力駆動能力についてのデータであることを特徴とする。さらに、前記出力駆動能力についてのデータは、入力スルーレート及び負荷容量に依存した出力スルーレート、及び入力スルーレートと負荷容量に依存した遅延時間であることを特徴とする。また、前記出力駆動能力についてのデータは、該出力端子に接続されるセルの遅延時間判定レベルと前記マクロコアの遅延時間判定レベルとに整合した遅延時間特性であることを特徴とする。
【００１２】
上記の目的は、本発明によれば、複数のセルと、所定の機能を有するマクロとを有する大規模集積回路装置において、
前記マクロは、複数の入力端子と出力端子と、上記所定の機能を有するマクロコアと、該入力端子及び出力端子と該マクロコアとの間に設けられ該入力端子及び出力端子毎に接続された境界セルとを有し、前記セルが境界セルを介して該マクロコアに接続されてなることを特徴とする大規模集積回路装置を提供することにより達成される。
【００１３】
【発明の実施の形態】
以下、本発明の実施の形態の例について図面に従って説明する。しかしながら、かかる実施の形態例が本発明の技術的範囲を限定するものではない。
【００１４】
図１は、ＬＳＩの製造工程の概略的なフローチャートの一例である。まず、目的としているＬＳＩの論理回路の設計が行われる（Ｓ１）。この工程では、論理ライブラリにある複数種類のセル、マクロ等を配置して接続することにより行われる。そして、設計された論理回路に対して、遅延時間の計算が行われる（Ｓ２）。この遅延時間計算工程は、通常遅延時間計算プログラムといわれるツールによりコンピュータによって行われる。遅延時間の計算には、論理回路を構成する各セルやマクロの遅延特性、あるいは遅延時間計算の為のパラメータが論理ライブラリから取り出されて利用される。例えば、前段のセルやマクロの出力駆動能力にしたがう入力スルーレートが計算され、その入力スルーレートと上記遅延特性などからそのセルやマクロの遅延時間が求められる。
【００１５】
遅延時間の計算が終わると、その遅延時間に基づいて論理回路の論理シミュレーションが行われる（Ｓ３）。この論理シミュレーションもシミュレーションプログラムにより行われるが、論理設計を行った者により作成された所定の入力パターンとそれに対応する期待される出力パターンからなるテストパターンが使用される。論理シミュレーション工程において、各セルやマクロがステップＳ２で求めた遅延時間で動作することを前提にして、期待通りの論理動作を行うか否かのチェックが行われる。即ち、入力パターンに対して出力されるパターンが上記の期待出力パターンと一致するか否かのチェックが行われる。
【００１６】
論理チェックで合格となると、各セルやマクロのレイアウトパターンに従って具体的なチップレイアウトが作成される（Ｓ４）。そして、レイアウト図からより正確な抵抗値や容量値が抽出される（Ｓ５）。その抽出した抵抗、容量に従って、再度遅延時間の計算が行われ（Ｓ６）、論理シミュレーションが行われる（Ｓ７）。この２つの検証工程は、チップレイアウトに基づいたより正確な動作チェックの為に行われるものである。それを合格すると、最後にＬＳＩの製造が行われる（Ｓ８）。
【００１７】
上記した通り、ＬＳＩの製造工程において論理回路を構成するセルやマクロの特性、特に遅延時間計算に必要な特性やパラメータ、論理シミュレーションに必要な特性やパラメータを事前に抽出して論理ライブラリ化しておくことが必要である。図中のステップＳ９が、その論理ライブラリの作成工程である。
【００１８】
図２は、概略的に示したＬＳＩ設計システムの全体構成図である。ＣＰＵ１０に各ファイル１１〜１６がアクセス可能に接続されている。ファイルには前記した論理ライブラリのファイル１１、各セルやマクロの回路パターンが格納されている物理ライブラリのファイル１２、設計された論理回路データのファイル１３、テストパターンのファイル１４、設計された論理回路データをもとに物理ライブラリの回路パターンをあてはめて生成されるレイアウトデータのファイル１５等がある。
【００１９】
また、設計用のツールとしては、設計ツール用ファイル１６に格納されている様に、例えば、各セルやマクロの特性、特性パラメータを抽出するキャラクタライズプログラム、マクロ等のパスの遅延時間を求めるパス解析ツール、遅延時間計算プログラム、論理シミュレーションプログラム、レイアウトプログラム、レイアウト図から抵抗や容量を抽出するプログラム等が利用される。
【００２０】
次に、高集積化に伴い遅延時間計算で考慮すべき点と、それに伴い通常のセルからなる回路内にマクロを埋め込む場合に考慮すべき点について以下に説明する。
【００２１】
図３は、入力スルーレートや出力容量に依存するセルの遅延時間を説明する図である。この入力スルーレート依存性は、微細化技術が進んだことにより遅延時間計算の為に考慮する必要が出てきたものである。図３（ａ）にはセル２０の入力端子２１に立ち上がり波形が異なる入力Ｔｓｉｎ１，２，３が入力され、出力端子２２に負荷容量ＣＬが接続された例が示されている。ここで、入力スルーレートとは入力信号の立ち上がりに要する時間であり、入力信号が急峻に立ち上がると入力スルーレートが短くなり、立ち上がりが鈍いと入力スルーレートが長くなる。
【００２２】
図３（ｂ）には、その時のセル２０の遅延時間Ｔｐｄが示されている。出力端子２２に接続される負荷容量ＣＬが大きくなるに伴い遅延時間Ｔｐｄが増加する。また、入力スルーレートが異なると、セル２０のトランジスタが反転する閾値Ｖｔに達する時間が異なり、入力の立ち上がりが遅いとセル内の駆動トランジスタの不完全なオン状態が長くなり、図中２３の様に遅延時間波形が緩慢な波形になる。即ち、負荷容量が大きくなると、入力スルーレートの長いＴｓｉｎ３では駆動トランジスタの不完全状態が長くなり遅延時間Ｔｐｄが大きくなる。そして、負荷容量がさらに大きくなると遅延時間は単純に容量値に比例する。図３（ｂ）の特性は、セルによって異なる。
【００２３】
かかるセル２０が論理回路内に配置されると、前段のセルの駆動能力や回路接続の状態によって、入力端子への入力スルーレートが決定され、その入力スルーレートに依存してセルの遅延時間が異なることになる。負荷容量も同様である。従って、セル２０の特性として、その遅延時間計算に必要なパラメータ或いは図３（ｂ）の如き遅延特性が入出力パス毎に予め求められて登録されている必要がある。パラメータ値の例としては、以下の如きα値であり、かかるα値があれば遅延時間の計算を行うことができる。
【００２４】
α１＝（Ｔ０２−Ｔ０１）／（Ｔｓｉｎ２−Ｔｓｉｎ１）
α２＝（Ｔ０３−Ｔ０２）／（Ｔｓｉｎ３−Ｔｓｉｎ２）
或いは、図３（ｂ）の遅延時間特性は、図中の点の部分の値をテーブルの形でデータ化されることもある。
【００２５】
図４は、配線による遅延時間（配線ディレイ）Ｔｌｉｎｅを説明する図である。微細化技術の進歩により高集積化が進み、配線幅が細くなりセルの面積に比べて配線の占める面積が大きくなり、相対的に配線容量による遅延時間が無視できなくなっている。図４に示される通り、配線の抵抗Ｒと寄生容量Ｃに比例して配線遅延時間が長くなる。
【００２６】
図５は、セルとマクロが接続された時のその接続部での遅延時間の誤差を説明する図である。ＬＳＩチップ１００内にセル２６、２７とマクロ３０とが接続されている。マクロが市場を流通することに伴い、独自の遅延判定レベルにもとづいて遅延時間が定義されることがある。その為、図５の如き接続をした場合、セル２６，２７とマクロ３０との遅延判定レベルＶｔが異なり、遅延時間に誤差が発生する。
【００２７】
セルやマクロの遅延時間は、入力信号が所定の判定レベルＶｔに達してから出力信号が同様の判定レベルＶｔに達するまでの時間として定義される。例えば、セル２６，２７が立ち上がり電圧の２０％程度の判定レベルＶｔ１で定義され、マクロが５０％程度の判定レベルＶｔ２で定義されていたとする。すると、セル２６とマクロ３０の入力端子ＩＮとの間では、信号２４のＶｔ１からＶｔ２までのΔｔ１の時間が遅延時間から抜けてしまう。更に、マクロ３０の出力端子ＯＵＴとセル２７との間では、信号２５のＶｔ１からＶｔ２までのΔｔ２の時間が遅延時間として重複してしまう。
【００２８】
マクロ３０の入力端子ＩＮの入力信号２４の入力スルーレートとセル２７の入力信号２５の入力スルーレートとは、そこに接続される負荷容量や前段の駆動能力により異なるので、単純に相殺しあうことはできない。従って、マクロの遅延時間がセル２６，２７と異なる判定レベルで定義されている場合は、上記したΔｔ１とΔｔ２の分が遅延時間の計算に含めることができず不正確な遅延時間となってしまう。
【００２９】
図６は、ＬＳＩチップ内にマクロを埋め込んだ場合の問題点を説明する図である。この例では、ＬＳＩチップ１００内でセルＡ，Ｂ，Ｃとマクロ３０とが接続されている。マクロを埋め込む場合、マクロ内の基本的な遅延時間に加えて、入力端子ＭＡ，ＭＢでの入力スルーレートに依存した遅延時間と出力端子ＭＸでの負荷容量に伴う遅延及び配線による遅延時間を考慮する必要がある。マクロ３０内で入力信号が一端バッファリングされると、内部ではその入力に対する出力の遅延時間は固定的であるので、基本遅延時間として画一的に登録しておくことができる。入力スルーレートに依存した遅延時間と出力端子ＭＸでの負荷容量に伴う遅延及び配線による遅延時間とが、この場合外部の回路に依存した変動要素である。即ち、入力部での入力端子ＭＡ、ＭＢでの入力スルーレートと出力端子ＭＸでの負荷容量ＣＬは、論理回路の設計をして初めて特定されるファクタである。
【００３０】
そこで、ブラックボックス化されているマクロ３０の入力端子に接続される内部回路の例をみると、第一に、入力端子ＭＡに対してセルＯとセルＰとが接続されている。従って、入力スルーレートから求められる遅延時間の特性パラメータ或いは遅延特性をセルＯにすべきかセルＰにすべきかという問題が生じる。論理ライブラリに登録されるマクロの属性データとして、入力端子ＭＡにおける遅延時間計算の為のパラメータまたは遅延特性を与える必要がある。しかし、図６の端子ＭＡの場合は、セルＯ，Ｐのどちらにすべきか決定できず、一方のパラメータを与えると、他方のセルへのパスの遅延時間が不正確なものになる。
【００３１】
第二に、入力端子ＭＢの場合には、マクロの初段のセルＱまでの配線ＴｌｉｎｅＢが長い為、その配線ディレイを属性データとして与える必要があるが、セルＳに対しては不要なディレイであり、入力端子ＭＢに与えるパラメータとしては不適切である。
【００３２】
更に、第三に出力端子ＭＸと最終段のセルＲとの間の配線ＴｌｉｎｅＲが長いと、その遅延時間を出力端子ＭＸの属性データとして与える必要がある。そして、第四に前述したセルＡ，Ｂ，Ｃとマクロの遅延時間判定レベルに不整合があると、図５で説明したような不整合に伴う遅延時間の調整を行うことが必要である。
【００３３】
以上４つの例で示した通り、ブラックボックス化されたマクロを埋め込む場合に、内部回路の構成にかかわりなく入力端子や出力端子に遅延時間計算に必要な属性データを与えておくことが必要である。ところが、上記４つの例で示した通り、正しく属性データを与えることが困難である。
【００３４】
図７は、本発明を適用してモデリングされたマクロを示す図である。この例では、図６に示したマクロ３０をマクロコア３５として取り扱い、そのマクロコア３５の入力端子３６、３７と出力端子３８に境界セル３１、３２、３３を追加して、新たなマクロ３４としている。即ち、論理ライブラリにマクロを登録する場合に、そのマクロ３０をマクロコア３５とし、更に境界セル３１、３２、３３を入力初段セルと出力最終段セルとして付加したマクロ３４を登録するのである。更に、境界セル３１、３２、３３は、新たなマクロ３４の入力端子ＭＡ，ＭＢと出力端子ＭＸの近傍に配置し、前述した入力段と出力段での配線長による遅延時間を考慮する必要がない様にする。
【００３５】
上記の様に境界セルを入力端子ＭＡ，ＭＢと出力端子ＭＸの近傍に追加してマクロ３４を登録することにより、第一にマクロの入力端子と境界セルとが１対１になり、入力スルーレートに依存した遅延時間は境界セルの特性、または特性パラメータを利用することで簡単に且つ正確に計算することができる。従って、図６で説明した端子ＭＡに対する特性をセルＯかＰかのどちらにするかの問題はなくなる。
【００３６】
第二に、境界セルをマクロの外部端子ＭＡ，ＭＢ，ＭＸの近傍に配置することにより、入力スルーレートに依存する遅延時間の計算工程では、マクロ３０の外部端子ＭＢからマクロの初段のセルＱまでの配線ＴｌｉｎｅＢの遅延を無視することができる。そして、図７におけるマクロコア３５の端子３７と初段セルＱまでの配線ＴｌｉｎｅＢの遅延時間は、入力端子ＭＢにあたえられる信号の入力スルーレートに依存せず、単純にマクロ内の遅延時間として固定的に取り扱うことができる。従って、その分の遅延時間をマクロコア内の固定遅延として取り扱うことができ、マクロ３４の境界部分の遅延時間から切り離すことができる。この点は、出力端子ＭＸの場合も、同等の理由で配線遅延ＴｌｉｎｅＲを無視して遅延時間の計算を行うことができる。
【００３７】
第三に、境界セルの遅延時間判定レベルは、入力側の境界セル３１、３２では、入力側の判定レベルをマクロ外部のセルＡ，Ｂと同じレベルにし、出力側の判定レベルをマクロコア３５と同じレベルにする。また、出力側の境界セル３３では、入力側の判定レベルをマクロコア３５と同じレベルにし、出力側の判定レベルをマクロ外部のセルＣと同じレベルにする。その様に境界セルをそれぞれ定義して付加することにより、遅延時間の判定レベルＶｔの不整合による不正確な遅延時間をなくすことができる。
【００３８】
この様に、ブラックボックス化されたマクロ３０に対して、上記の如き特性で定義される境界セルを周辺に追加して新たなマクロ３４とすることにより、マクロ３０（マクロコア３５）の内部回路を考慮することなく、マクロを埋め込んだことに伴う境界部分での遅延特性（または特性パラメータ）を属性データとして与えることができ、その特性の属性データに従って正確な遅延時間の計算を行うことができる。
【００３９】
上記した境界セルの種類は特に限定されない。通常のＮＡＮＤ，ＡＮＤ，ＮＯＲ，ＯＲゲート、フリップフロップ、双方向セル等、任意の回路が選択される。
【００４０】
図８は、論理ライブラリを作成するフローチャートである。このフローチャートは、図１で示したステップＳ９における工程を詳述したものである。上記の考え方にしたがって、ブラックボックス化されたマクロの特性抽出（キャラクタライズ）が行われる。
【００４１】
論理回路設計において、論理ライブラリに登録されたセルやマクロが適宜使用される。そして、その論理ライブラリに登録されている属性データにしたがって遅延時間計算工程、論理シミュレーション工程が行われる。通常、論理回路設計者により遅延時間の計算工程と論理シミュレーション工程が実行される。従って、マクロの内部が完全にブラックボックス化されて、マクロの入力端子での遅延特性と出力端子での駆動能力（遅延特性）とがそれぞれの端子の属性データとして単純に与えられることが必要である。
【００４２】
図８のフローチャートに従って説明するにあたり、例として図９に示したマクロ３０を図１０に示したＬＳＩチップ１００内にセルＡ，Ｂ，Ｃと共に埋め込む論理回路を設計するとする。従って、本発明により図１０での論理ライブラリ内のマクロ３４は境界セルを追加したマクロである。
【００４３】
図８のステップＳ１０に示される通り、論理回路設計に使用されるセルの特性抽出（キャラクタライズ）が行われる。このセルの特性のうち遅延時間の計算に必要な特性は、図３で示した様な特性のテーブルである。或いは、前述した通りの特性パラメータ（α値）である。この様な特性テーブル或いは特性パラメータは、セルの入出力のパス毎に登録される。セルの属性データとしては、かかる特性テーブルまたはパラメータの他に、例えば図１４に示される様に論理データ、入力端子容量、出力駆動能力等である。
【００４４】
次に、マクロの特性の抽出（キャラクタライズ）を行う為にマクロの周辺に追加する境界マクロの特性の抽出を行う（Ｓ１１）。図１１は、かかる境界セルの抽出される特性を説明する図である。この例は、境界セル３１がバッファタイプの場合であり、図１１（ａ）に示される通り、境界セル３１の入力端子３９に異なる入力スルーレート（入力信号がＬからＨレベルに立ち上がるのに要する時間）Ｔｓｉｎ１，２，３の信号が入力し、出力端子４０に負荷容量ＣＬが接続される。その場合、入力スルーレートに依存する遅延時間Ｔｐｄの特性（図１１（ｂ））と、同様に依存する出力スルーレートＴｓｏｕｔの特性（図１１（ｃ））が抽出される。この特性は更に遅延時間計算用の特性パラメータ（α値）として抽出される。
【００４５】
これらの特性が抽出されることで、境界セルがマクロの入力端子に接続される場合は入力スルーレートに依存する遅延時間Ｔｐｄが簡単に計算でき、また境界セルが出力端子に接続される場合はマクロの外部にある次段のセルの入力スルーレートを求めることができる。
【００４６】
上記した遅延時間Ｔｐｄは、前述した通り判定レベルがそれぞれ接続される前段または後段の判定レベルに合わせられて抽出される。例えば、図１２にはマクロの外部のＬＳＩチップ１００内のセル４２の遅延時間とマクロ３０の遅延時間を判定するレベルの例が示されている。即ち、図１２の例では、セル４２の遅延時間Ｔｐｄを判定する電圧レベルが入出力共に１Ｖであり（図１２（ａ））、一方、マクロ３０の遅延時間Ｔｐｄを判定する電圧レベルが入出力共に１．６５Ｖである（図１２（ｂ））。
【００４７】
そこで、図１３に境界セルの判定レベルを示す。図１３（ａ）がマクロの入力端子に接続される境界セルの例であり、入力信号の判定レベルはセル４２の判定レベルの１Ｖに設定され出力信号の判定レベルはマクロ３０の判定レベルの１．６５Ｖに設定される。この様にして定義された遅延時間Ｔｐｄが、図１１（ｂ）の特性として定義される。図１３（ｂ）はマクロの出力端子に接続される境界セルの例であり、入力信号の判定レベルはマクロ３０の判定レベルの１．６５Ｖに設定され出力信号の判定レベルはセル４２の判定レベルの１Ｖに設定される。
【００４８】
さて、図８に戻って、境界セルの特性抽出が終わると、マクロ３０の周辺に境界セルが配置され、新たなマクロが形成される（Ｓ１２）。即ち、図７で示したマクロ３４の構成が形成される。入力用の境界セル３１、３２はマクロコアの入力端子３６、３７と入力端子ＭＡ，ＭＢとの間に追加される。出力用の境界セル３３がマクロコアの出力端子３８と出力端子ＭＸとの間に追加される。そして、前述の通り、境界マクロ３１、３２、３３はそれぞれの入力端子ＭＡ，ＭＢや出力端子ＭＸの近傍に配置される。
【００４９】
そして、ステップＳ１３に示す通り、境界セルが追加された新しいマクロ３４に対して特性抽出（キャラクタライズ）が行われる。マクロの遅延時間計算に利用される特性は、図１１（ｂ）で示した入力スルーレートに依存する遅延時間の特性パラメータである。この特性パラメータは、入力端子ＭＡ，ＭＢ毎に属性データとして与えられる。出力端子ＭＸに与えられるパラメータは図１１（ｂ）と更に、図１１（ｃ）で示した出力スルーレートの特性である。この特性は出力駆動能力の属性データとして出力端子ＭＸ毎に与えられる。
【００５０】
図１４は、論理ライブラリに格納されるセルＡ，Ｂ，ＣとマクロＤ（３４）の属性データの構成例である。マクロの属性データとしては、上記の特性パラメータＤ２、出力駆動能力Ｄ３に加えて、入力スルーレートに依存しない基本遅延時間Ｄ４がある。Ｄ１はマクロＤの論理データであり、論理シミュレーションで使用される属性データである。図１４の如きマクロの属性データが与えられると、そのデータが論理ライブラリとして、ファイル１１内に格納される。このファイル１１は、コンピュータにより読みとり可能は記録媒体であれば、磁気テープ、磁気ディスク、その他光磁気を利用したファイル、半導体記憶装置などで実現される。
【００５１】
図１に戻り、論理ライブラリの登録されたマクロとセルにより論理回路が設計されると（Ｓ１）、遅延時間計算プログラムにしたがって設計された論理回路内の各遅延時間の計算が行われる。上記の様にマクロ３４がライブラリに登録されているので、論理回路の遅延時間の計算は簡単でかつ正確に行われる。マクロ３４内の回路構成を考慮することなく、ブラックボックスとして扱うことができる。即ち、入力端子ＭＡ，ＭＢに対しては、入力パラメータに依存する遅延時間を求める為の特性パラメータが属性データとして与えられているので、単純にその特性パラメータに従って遅延時間を計算することができる。出力端子ＭＸに対しては、駆動能力として負荷に対する遅延時間の特性（負荷依存性）と出力スルーレートの特性が属性データとして与えられているので、出力端子ＭＸに接続される負荷による遅延時間の増加分と出力端子ＭＸに接続される次段のセルＣに与えられる入力スルーレートが簡単に計算される。
【００５２】
そして、入力スルーレートに依存した入力側の境界セルの遅延時間及び出力側の負荷による遅延時間の増分をマクロの基本遅延時間Ｄ４に加えることで、マクロ３４全体の遅延時間を求めることができる。その後は、既に説明した論理シミュレーション工程Ｓ３、レイアウト工程Ｓ４、抵抗と容量抽出工程Ｓ５、遅延時間計算と論理シミュレーション工程Ｓ６，７を経て、ＬＳＩの製造工程Ｓ８へと移っていく。
【００５３】
上記の様に境界セルが付加されたマクロを埋め込んだＬＳＩは、その完成された構成には、マクロの入出力端子の近傍にかならず境界セルが設けられることになる。
【００５４】
【発明の効果】
以上説明した通り、本発明によれば、ブラックボックス化されたマクロの周辺に入出力端子と１対１に対応して境界セルが付加されて、マクロとしての特性の抽出が行われる。従って、入力端子の特性パラメータ、出力端子の駆動能力等の属性データを単純に割り当てることができる。よってそのようなマクロをライブラリから引き出して論理回路の設計が行われる場合は、その後の遅延時間の計算工程が極めて単純になり、より正確な遅延時間の計算を行うことが可能になる。
【図面の簡単な説明】
【図１】ＬＳＩの製造工程の概略的なフローチャートの一例である。
【図２】ＬＳＩ設計システムの全体構成図である。
【図３】入力スルーレートや出力容量に依存するセルの遅延時間を説明する図である。
【図４】配線による遅延時間（配線ディレイ）を説明する図である。
【図５】セルとマクロが接続された時のその接続部での遅延時間の誤差を説明する図である。
【図６】ＬＳＩチップ内にマクロを埋め込んだ場合の問題点を説明する図である。
【図７】本発明を適用してモデリングされたマクロを示す図である。
【図８】論理ライブラリを作成するフローチャートである。
【図９】実施の形態例で使用されるマクロの回路例を示す図である。
【図１０】実施の形態例で使用されるＬＳＩチップの例を示す図である。
【図１１】境界セルの抽出される特性を説明する図である。
【図１２】セルの遅延時間とマクロの遅延時間を判定するレベルの例を示す図である。
【図１３】境界セルの判定レベルを示す図である。
【図１４】論理ライブラリに格納されるセルとマクロの属性データの構成例である。
【符号の説明】
１０              ＣＰＵ
１１              論理ライブラリを格納したファイル
３１、３２、３３  境界セル
３４              マクロ
３５              マクロコア
１００            ＬＳＩチップ
ＭＡ，ＭＢ        入力端子
ＭＣ              出力端子
【図１】
0003938220.tif 000002
【図２】
0003938220.tif 000003
【図３】
0003938220.tif 000004
【図４】
0003938220.tif 000005
【図５】
0003938220.tif 000006
【図６】
0003938220.tif 000007
【図７】
0003938220.tif 000008
【図８】
0003938220.tif 000009
【図９】
0003938220.tif 000010
【図１０】
0003938220.tif 000011
【図１１】
0003938220.tif 000012
【図１２】
0003938220.tif 000013
【図１３】
0003938220.tif 000014
【図１４】
0003938220.tif 000015