(57)【要約】【課題】下位階層のマクロブロックの空き領域を有効利用できるようにし、レイアウトのチップサイズの縮小化を図る。【解決手段】下位ブロックレイアウトのタイミング検証結果入力機能１３、前記下位ブロックレイアウトの各パスについて追加できる容量値についてのスラックテーブルを作成するスラックテーブル作成機能１４、前記下位ブロックのクリティカルパス表示機能１５、前記下位ブロックのタイミングを考慮したタイミング検証機能１６、前記下位ブロックのタイミングを考慮した自動配線機能１７、前記スラックテーブルを再計算する再計算機能１８を備える。【選択図】　　　　図１
2004055911.tif 000002
【特許請求の範囲】
【請求項１】
セルや機能ブロックなどの半導体集積回路の構成要素を下位階層および上位階層に階層的にレイアウトする自動配置配線装置において、
前記下位階層のレイアウトの各パスのタイミング検証結果と設計上の制約である前記各パスの要求到達時間とをもとに算出された前記各パスのタイミング制約に対する遅延の余裕値を超えずに前記各パスに追加できる、前記上位階層のレイアウトの影響を想定したときの容量値のスラックテーブルを生成するスラックテーブル作成手段を備えていることを特徴とする自動配置配線装置。
【請求項２】
スラックテーブルは、下位階層のレイアウトのパスを構成する各ネットに対し追加できる容量値の組合わせをテーブル形式で示したものであることを特徴とする請求項１記載の自動配置配線装置。
【請求項３】
スラックテーブルをもとに、下位階層のレイアウトのパスを構成する各ネットについて追加できる容量値に応じた表示を行う表示手段を備えていることを特徴とする請求項２記載の自動配置配線装置。
【請求項４】
表示手段は、スラックテーブルをもとに、パスを構成する各ネットごとに追加できる容量値の平均値を求め、前記容量値の平均値に応じた色分けを含む段階的な表示を行うことを特徴とする請求項３記載の自動配置配線装置。
【請求項５】
表示手段は、レイアウト画面上で選択された任意のネットに対し、追加できる容量値の組合わせを表示することを特徴とする請求項３記載の自動配置配線装置。
【請求項６】
上位階層のレイアウトの影響による容量値の追加により下位階層のレイアウトのパスに生じるタイミングエラーを回避する配線経路をスラックテーブルをもとに検索し、前記上位階層のレイアウトを自動配線する自動配線手段を備えていることを特徴とする請求項２または請求項３記載の自動配置配線装置。
【請求項７】
自動配線手段による上位階層のレイアウトの自動配線の実行、または手配線による上位階層のレイアウトの配線実行に対し、下位階層のレイアウトの各パスに追加できる容量値のスラックテーブルを再作成するスラックテーブル再作成手段を備えていることを特徴とする請求項６記載の自動配置配線装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、階層的に半導体集積回路（以下、チップという）をレイアウトした場合に発生することのあったタイミングエラーを防止し、タイミング調整を再実行する必要をなくし、レイアウト効率の向上や設計時間の短縮化を図れる自動配置配線装置に関するものである。
【０００２】
【従来の技術】
従来の自動配置配線装置を用いてレイアウト設計済みのセルやブロックレイアウトなどを上位階層のレイアウトを使用して階層的にチップをレイアウトする階層レイアウト手法において、すでにレイアウト設計済みでタイミングエラーのない下位ブロック上や内部に配線を通した場合、下位ブロックの内部ネットの配線容量が変わり、前記下位ブロック内部の各パスのタイミングが変化してしまう。
図６は、階層的にチップをレイアウトし、下位ブロック上や内部に配線を通した場合、下位ブロックの内部ネットの配線と上位ブロックのレイアウトとの間に発生する各種容量を示す説明図であり、図においてＡＬ１は第一層メタル配線、ＡＬ２は第ニ層メタル配線、ＡＬ３は第三層メタル配線、Ｃｓは並行平板容量、Ｃｃはカップリング容量、Ｃｆはフリンジ容量である。このような階層的にチップをレイアウトし下位ブロック上や内部に配線を通した場合に発生する各種容量により、もともとタイミングエラーがなかった下位ブロック内部、特にタイミング制約に対する余裕がほとんどないパス（以下、クリティカルパスという）でタイミングエラーを引き起こすことがあった。
【０００３】
図８は、設計済みマクロブロック上を配線可能とした場合の従来の自動配置配線装置によりＬＳＩの配線を行なったときの具体例を示すマクロブロック間配線図である。図においてＭ１６，Ｍ１７，Ｍ１８，Ｍ１９，Ｍ２０，Ｍ２１，Ｍ２２，Ｍ２３，Ｍ２４，Ｍ２５，Ｍ２６，Ｍ２７，Ｍ２８，Ｍ２９，Ｍ３０はマクロブロックであり、Ｍ２４を除きＭ１６〜Ｍ３０は上位階層のマクロブロック、Ｍ２４は下位階層のマクロブロックである。ｃ１，ｃ２およびｃ３は下位階層のマクロブロックＭ２４内のセルである。ＡおよびＢはマクロブロックＭ２４内のブロックセルである。Ｐ１，Ｐ２，Ｐ３，Ｐ４はＩ／Ｏパットセルである。ｒ５はマクロブロックＭ２４とマクロブロックＭ３０との間を接続したブロック間配線、ｒ６はマクロブロックＭ２４とマクロブロックＭ２７との間を接続したブロック間配線、ｒ７はＩ／ＯパットセルＰ４の１つとマクロブロックＭ１８との間を接続したブロック間配線、ｒ８はマクロブロックＭ１６とマクロブロックＭ２１との間を接続したブロック間配線である。ｎ１は下位階層のマクロブロックＭ２４内でセルＡとセルｃ１との間を接続した配線、ｎ２は同様にマクロブロックＭ２４内のセルｃ１とセルｃ２との間を接続した配線、ｎ３は同様にマクロブロックＭ２４内のセルｃ２とセルｃ３との間を接続した配線、ｎ４は同様にマクロブロックＭ２４内のセルｃ３とセルＢとの間を接続した配線であり、配線ｎ１と配線ｒ７とは下位階層と上位階層との配置階層の違いはあるもののオーバーラップした関係で配置されている。また、配線ｎ２もその一部が前記配線ｎ１と同様に配線ｒ７とオーバーラップした関係で配置されている。
【０００４】
このような配置関係で下位階層のマクロブロック内の配線と上位階層のマクロブロック間の配線とが配置された場合であって、下位階層のマクロブロックＭ２４内のセルＡとセルＢとの間のパス（以下、パスＡＢという）は下位階層のマクロブロックＭ２４だけでのタイミング検証でエラーとはならないが非常にクリティカルなパスであった場合、上位階層のレイアウトによって配置されたブロック間配線ｒ７がパスＡＢにオーバーラップもしくは隣接していると、パスＡＢの遅延量が増加し、タイミングエラーとなることがある。このため従来のレイアウト設計では、自動配置配線装置を用いて上位階層のマクロブロックのレイアウト設計をする際には、すでにレイアウト設計済みの下位階層のマクロブロック領域に対し、Ｉ／ＯパットセルＰ４の内の１つのＩ／ＯパットセルとマクロブロックＭ１８とを接続する配線の配置を、図７の符号ｒ３で示すブロック間配線のように下位階層のマクロブロックＭ２４の領域を迂回させた配置形態とするか、または下位階層のマクロブロックの配置も含めて設計をやり直す（下位階層のマクロブロックのタイミングの再調整）などの必要があった。
なお、図７においては上述した理由から符号ｒ１，ｒ２，ｒ４で示すブロック間配線もマクロブロックＭ１８，Ｍ１９，Ｍ２０，Ｍ２５，Ｍ２６，Ｍ２８，Ｍ２９の領域を迂回させた配置形態となっている。
【０００５】
図９は、従来の自動配置配線装置によりチップレベルのレイアウトを行う場合の動作を示すフローチャートであり、以下、このフローチャートに従って従来の自動配置配線装置によるチップレベルのレイアウトを行う場合の動作を説明する。
先ず、回路図の入力を行い（ステップＳＴ１０１）、次にフロアプランニングを行い（ステップＳＴ１０２）、セルの配置を行なった後（ステップＳＴ１０３）、概略配線を行う（ステップＳＴ１０４）。続いて混雑度について検証を行い（ステップＳＴ１０５）、この検証結果が問題ないものであれば詳細配線を行う（ステップＳＴ１０６）。一方、前記検証結果が問題ありの場合には、前記ステップＳＴ１０２のフロアプランニングあるいは前記ステップＳＴ１０３のセルの配置を再調整することになる。
ステップＳＴ１０６の詳細配線を行なった後には、ＤＲＣ（設計規則検査）エラーの有無を判定し（ステップＳＴ１０７）、ＤＲＣエラーがなければタイミング検証を行う（ステップＳＴ１０８）。また、前記ステップＳＴ１０７においてＤＲＣエラーがあれば手配線による修正を行い、再度ステップＳＴ１０７へ戻るか（ステップＳＴ１１１）、前記ステップＳＴ１０２のフロアプランニングあるいは前記ステップＳＴ１０３のセルの配置を再調整するか、あるいは回路図の変更を行うことになる（ステップＳＴ１１２）。
【０００６】
【発明が解決しようとする課題】
従来の自動配置配線装置を用いた階層レイアウト手法では、以上のように各マクロブロックの配置やマクロブロック間の配線が行われていたので、上位階層のレイアウトで下位ブロックの領域上や内部に配線を通した場合、下位階層のマクロブロック内部、特にクリティカルなパスでタイミングエラーが発生してしまうことから、下位階層のマクロブロックでのタイミングエラー発生を防ぐため、上位階層のマクロブロックのレイアウトでは、下位階層のマクロブロック領域の全面に配線禁止領域を設けるなどして配線を禁止していた。しかしながら、このような配線禁止領域を設ける場合、上位階層のマクロブロックのレイアウトでは、下位階層のマクロブロック領域上や下位階層のマクロブロック内部の配線領域などの空き領域を有効利用できないため、設計効率が悪化するという課題があった。
また、下位階層のマクロブロック間で配線の局所混雑が発生し未結線が残ってしまい、これを回避するためにチップサイズが大きくなってしまうという課題があった。
【０００７】
この発明は、上記のような課題を解決するためになされたものであり、下位階層のマクロブロックの空き領域を有効利用できるようにすることで、レイアウトのチップサイズの縮小化を図れる自動配置配線装置を得ることを目的とする。
【０００８】
また、この発明は、詳細配線後のエラーやタイミングエラーを改善するための出戻り時間を短縮でき、レイアウト設計期間を短縮できる自動配置配線装置を得ることを目的とする。
【０００９】
【課題を解決するための手段】
この発明に係る自動配置配線装置は、下位階層のレイアウトの各パスのタイミング検証結果と設計上の制約である前記各パスの要求到達時間とをもとに算出された前記各パスのタイミング制約に対する遅延の余裕値を超えずに前記各パスに追加できる、上位階層のレイアウトの影響を想定したときの容量値のスラックテーブルを生成するスラックテーブル作成手段を備えるようにしたものである。
【００１０】
この発明に係る自動配置配線装置は、スラックテーブルが、下位階層のレイアウトのパスを構成する各ネットに対し追加できる容量値の組合わせをテーブル形式で示すようにしたものである。
【００１１】
この発明に係る自動配置配線装置は、スラックテーブルをもとに、下位階層のレイアウトのパスを構成する各ネットについて追加できる容量値に応じた表示を行う表示手段を備えるようにしたものである。
【００１２】
この発明に係る自動配置配線装置は、表示手段が、スラックテーブルをもとに、パスを構成する各ネットごとに追加できる容量値の平均値を求め、前記容量値の平均値に応じた色分けを含む段階的な表示を行うようにしたものである。
【００１３】
この発明に係る自動配置配線装置は、表示手段が、レイアウト画面上で選択された任意のネットに対し、追加できる容量値の組合わせを表示するようにしたものである。
【００１４】
この発明に係る自動配置配線装置は、上位階層のレイアウトの影響による容量値の追加により下位階層のレイアウトのパスに生じるタイミングエラーを回避する配線経路をスラックテーブルをもとに検索し、前記上位階層のレイアウトを自動配線する自動配線手段を備えるようにしたものである。
【００１５】
この発明に係る自動配置配線装置は、自動配線手段による上位階層のレイアウトの自動配線の実行、または手配線による上位階層のレイアウトの配線実行に対し、下位階層のレイアウトの各パスに追加できる容量値のスラックテーブルを再作成するスラックテーブル再作成手段を備えるようにしたものである。
【００１６】
【発明の実施の形態】
以下、この発明の実施の一形態について説明する。
この発明の自動配置配線装置は、チップレベルおよびブロックレベルのレイアウト設計のどちらにも適用可能であるが、以下の実施の形態ではチップレベルのレイアウトを想定して説明を行う。
実施の形態１．
図１は、この実施の形態１の自動配置配線装置の構成を示すブロック図であり、図において、１は回路図入力機能、２は回路制約入力機能、３は初期レイアウト（フロアプラン）作成機能、４はセルのマニュアル配置機能、５はセルの自動配置機能、６は手配線機能、７は概略配線、詳細配線を含む自動配線機能、８はタイミング改善機能、９はタイミング検証機能、１０はレイアウト検証機能、１１は回路図出力機能、１２はレイアウト出力機能である。
【００１７】
１３は下位ブロックレイアウトのタイミング検証結果入力機能、１４は前記下位ブロックレイアウトの各パスについて、上位ブロックレイアウトの影響を想定した場合の追加できる容量値についてのスラック（余裕）テーブルを作成するスラックテーブル作成機能（スラックテーブル作成手段）、１５は前記下位ブロックのクリティカルパス表示機能（表示手段）、１６は前記下位ブロックのタイミングを考慮したタイミング検証機能、１７は前記下位ブロックのタイミングを考慮した自動配線機能（自動配線手段）、１８は前記スラックテーブルを再計算する再計算機能（スラックテーブル再作成手段）である。
【００１８】
次に、この実施の形態１の自動配置配線装置の動作について説明する。
図４は、この実施の形態１の自動配置配線装置によりチップレベルのレイアウトを行う場合の動作を示すフローチャートであり、以下、このフローチャートに従ってチップレベルのレイアウトを行う場合の動作を説明する。
先ず、回路図の入力を行い（ステップＳＴ１１）、次にフロアプランニングを行い（ステップＳＴ１２）、セルの配置を行なった後（ステップＳＴ１３）、下位ブロックレイアウトのタイミング検証結果をもとに、クリティカルパスの抽出やスラックテーブルの作成を行う（ステップＳＴ８、ステップＳＴ９、ステップＳＴ１４）。このスラックテーブルの作成はスラックテーブル作成機能１４により行う。
【００１９】
続いて、下位ブロックのクリティカルパス表示機能１５によるクリティカルパスの表示を行い（ステップＳＴ１５）、概略配線を行なった後（ステップＳＴ１６）、混雑度について検証を行い（ステップＳＴ２１）、この検証結果が問題ないものであれば、下位ブロックのタイミングを考慮した自動配線機能１７により下位ブロックのタイミングを考慮した詳細配線を行う（ステップＳＴ２２）。一方、前記検証結果が問題ありの場合には、前記ステップＳＴ１２のフロアプランニングあるいは前記ステップＳＴ１３のセルの配置を再調整することになる。
ステップＳＴ２２の詳細配線を行なった後には、ＤＲＣ（設計規則検査）エラー、タイミングエラーの有無を判定し（ステップＳＴ２３）、ＤＲＣエラーやタイミングエラーがなければ配置配線を完了する（ステップＳＴ２４）。また、前記ステップＳＴ２３においてＤＲＣエラーやタイミングエラーがあれば、スラックテーブルの再計算をスラックテーブルを再計算する再計算機能１８により行い（ステップＳＴ２５）、ステップＳＴ２２へ戻り詳細配線を行うか、または下位ブロックのクリティカルパス表示機能１５によりクリティカルパスを表示し（ステップＳＴ２６）、下位ブロックのタイミングを考慮した手配線を行い（ステップＳＴ２７）、ステップＳＴ２３へ戻りＤＲＣエラーやタイミングエラーの有無を判定する。あるいはまた、回路図の変更を行うことになる（ステップＳＴ２８）。
【００２０】
次に、この実施の形態１の自動配置配線装置が有している特徴的な機能についてそれぞれ詳細に説明する。
先ず、この実施の形態１の自動配置配線装置が有しているチップ全体の各パスのタイミング制約に対する遅延の余裕値を算出する遅延余裕値算出機能について説明する。この遅延余裕値算出機能は、ブロック設計完了時点でタイミング検証機能を有する装置が出力するタイミング検証結果、またはタイミング検証機能９が出力するタイミング検証結果を読み込んで、チップ全体の各パスのタイミング制約に対する遅延の余裕値を算出する機能である。
【００２１】
図２は、設計済みマクロブロック上を配線可能とした場合におけるＬＳＩの配線を行なったときの具体例を示すマクロブロック間配線図である。図においてＭ１６，Ｍ１７，Ｍ１８，Ｍ１９，Ｍ２０，Ｍ２１，Ｍ２２，Ｍ２３，Ｍ２４，Ｍ２５，Ｍ２６，Ｍ２７，Ｍ２８，Ｍ２９，Ｍ３０はマクロブロックであり、Ｍ２４を除きＭ１６〜Ｍ３０は上位階層のマクロブロック、Ｍ２４は下位階層のマクロブロックである。ｃ１，ｃ２およびｃ３は下位階層のマクロブロックＭ２４内のセルである。ＡおよびＢはマクロブロックＭ２４内のブロックセルである。Ｐ１，Ｐ２，Ｐ３，Ｐ４はＩ／Ｏパットセルである。ｒ５はマクロブロックＭ２４とマクロブロックＭ３０との間を接続したブロック間配線、ｒ６はマクロブロックＭ２４とマクロブロックＭ２７との間を接続したブロック間配線、ｒ７はＩ／ＯパットセルＰ４の１つとマクロブロックＭ１８との間を接続したブロック間配線、ｒ８はマクロブロックＭ１６とマクロブロックＭ２１との間を接続したブロック間配線である。ｎ１は下位階層のマクロブロックＭ２４内でセルＡとセルｃ１との間を接続した配線（ネット）、ｎ２は同様にマクロブロックＭ２４内のセルｃ１とセルｃ２との間を接続した配線、ｎ３は同様にマクロブロックＭ２４内のセルｃ２とセルｃ３との間を接続した配線、ｎ４は同様にマクロブロックＭ２４内のセルｃ３とセルＢとの間を接続した配線であり、配線ｎ１と配線ｒ７とは下位階層と上位階層との配置階層の違いはあるもののオーバーラップした関係で配置されている。また、配線ｎ２もその一部が前記配線ｎ１と同様に配線ｒ７とオーバーラップした関係で配置されている。
【００２２】
図３は、図２のセルＡとセルＢとの間のパスＡＢの一例を示す回路図であり、パスＡＢはセルｃ１，ｃ２，ｃ３、配線ｎ１，ｎ２，ｎ３，ｎ４により構成される。
先ず、図３を用いてパス遅延（例えばフリップフロップ−フリップフロップ）の求め方を示す。図３において、配線ｎ１，ｎ２，ｎ３，ｎ４の配線遅延をそれぞれＬ１，Ｌ２，Ｌ３，Ｌ４、また、セルｃ１，ｃ２，ｃ３のセル内遅延をそれぞれＣ１，Ｃ２，Ｃ３とすると、セルＡ、Ｂ間のパス遅延は次に示す式（１）…Ｌ１＋Ｌ２＋Ｌ３＋Ｌ４＋Ｃ１＋Ｃ２＋Ｃ３により求めることが出来る。
【００２３】
チップ設計上の制約であるセルＡ、Ｂ間の要求到達時間に対し、セルＡ、Ｂ間のパス遅延（パスＡＢの遅延）は下位ブロックのレイアウト設計時のタイミング検証もしくはこの自動配置配線装置が有しているタイミング検証機能９により計算できているとした場合、パスＡＢの遅延の余裕値は次に示す式（２）…（セルＡ、Ｂ間の要求到達時間）−（パスＡＢの遅延）により計算することが出来る。
【００２４】
この実施の形態１の自動配置配線装置では、遅延余裕値算出機能により、ブロック設計完了時点でのタイミング検証の結果から式（２）により求められる、各パスの遅延の余裕値を計算することが出来る。
【００２５】
なお、この実施の形態１の自動配置配線装置は自動配置配線ツールそのものが有するタイミング検証機能が出力するタイミング検証結果ならびに他のタイミング検証装置が出力するタイミング検証結果（出力ファイル）の両方を扱うことが出来ることを特徴とする。
【００２６】
以上のように、この実施の形態１によれば、セル間の要求到達時間に対する前記セル間のパスの遅延の余裕値を計算することが出来る自動配置配線装置が得られる効果がある。
【００２７】
次に、この自動配置配線装置は、例えば図２および図３に示すセルＡ、Ｂ間のパスＡＢを含む各パスにおける各配線ｎ１，ｎ２，ｎ３，ｎ４が占める遅延の割合や、セルＡ，ｃ１，ｃ２，ｃ３の駆動能力から、容量を追加した場合のパス遅延に対する影響度（増加分）を配線毎に計算し、前記遅延余裕値算出機能により求めた遅延の余裕値を超えずに追加できる容量値の組合わせを示すスラックテーブルを生成するスラックテーブル作成機能１４を有している。
なお、このスラックテーブル作成機能１４は、レイアウト画面上で選択された任意のネットに対し、追加可能な容量値の組合わせを生成することも可能である。
追加容量による遅延影響度は、図３に示す例では、各配線（ネット）の遅延値Ｌ１，Ｌ２，Ｌ３，Ｌ４、各セルＡ，ｃ１，ｃ２，ｃ３の駆動能力と各セルの遅延値Ｃｌ，Ｃ２，Ｃ３から計算できる。
前記スラックテーブル作成において、すべてのパスのスラックテーブルを作成する場合、時間およびディスク容量の観点から現実的でない場合もあるため、ユーザが指定したパスもしくはクリティカル度の高い上位パスに特化してスラックテーブルを生成することも可能である。
【００２８】
前記スラックテーブルの生成を実現するために以下の処理を行う。
（１）自動配置配線装置が有するタイミング検証機能９によるタイミング検証時に配線容量を計算する際、下位ブロックのレイアウト情報を参照する（図４のステップＳＴ２２）。
（２）自動配置配線済みの下位ブロックの配置とチップレベルの配線との間に寄生する容量を算出する（図４のステップＳＴ２２、ステップＳＴ２３）。（ただし、下位ブロックのレイアウトはこの自動配置配線装置によりレイアウト設計済みである、もしくは他の配置配線装置で設計したレイアウトデータをこの自動配置配線装置のデータベース上にデータを取り込んでいることが前提条件である。）
（３）前記遅延余裕値算出機能により算出した各パスの遅延の余裕値とユーザがこの自動配置配線装置に入力する遅延の余裕値（スラック値）よりクリティカルなパスを抽出する（図４のステップＳＴ１４）。
（４）スラックテーブル作成の一例として、例えば任意のパス（図２および図３のセルＡ，Ｂ間のパスＡＢ）を構成する任意の配線（例えば、図２、図３の配線ｎ１など）に任意の容量値を仮想的に追加し、遅延計算を実施する。この結果がタイミングエラーを引き起こさなければスラックテーブルのリストに加える。各配線に仮想的に追加する容量を任意の間隔で変動させ、同様の処理を繰り返すことでスラックテーブルを作成できる。
【００２９】
図５に、この自動配置配線装置が作成するスラックテーブルの一例を示す。このスラックテーブルの例では、あるパス、例えば図２、図３に示すパスＡＢを構成する配線をｎ１，ｎ２，ｎ３，ｎ４とした場合、パスＡＢがタイミングエラーとならないように各配線ｎ１，ｎ２，ｎ３，ｎ４に追加できる容量値Ｃｎ１，Ｃｎ２，Ｃｎ３，Ｃｎ４の組み合わせＴ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５，Ｔ６…によりスラックテーブルは構成される。
【００３０】
以上のように、この実施の形態１によれば、各パスの遅延の余裕からセルの駆動能力も考慮した上で、下位ブロックのネットに追加できる容量の値を計算することで、すでにレイアウト設計済みの下位ブロックや配線済みのレイアウトに追加可能な配線を見積もることが出来る。つまりステップＳＴ２２、ステップＳＴ２３、ステップＳＴ２５、ステップＳＴ２６、ステップＳＴ２７、ステップＳＴ２８の処理を経ることで、タイミングエラーを引き起こすことなく下位ブロックの配線に隣接する配線や下位ブロックの配線とオーバーラップする配線を通すことが可能となる自動配置配線装置が得られる効果がある。
【００３１】
次に、この自動配置配線装置では、スラックテーブル作成機能１４により作成したスラックテーブルを使用し、追加配線の負荷容量またはその平均値によりタイミングエラーを引き起こすネットまたはパスを視覚的に段階表示する下位ブロックのクリティカルパス表示機能１５を有している。前記段階表示とは配線できない部分の表示、配線できる部分の表示、タイミングがクリティカルなネットおよびパスの表示などを選択して表示することならびにクリティカルな度合いに応じて色分け表示することである。配線ができる、できない、またクリティカルな度合いの判断はユーザが与えるタイミング制約および遅延の余裕値をもとに自動配置配線装置上のタイミング検証機能が判断する。一例を挙げると、スラックテーブルの容量の余裕値が１０ｐＦ未満のパスは赤色で、１０ｐＦ以上５０ｐＦ未満のパスは黄色で、５０ｐＦ以上のパスは青色で表示し、視覚的に判断が容易になるようにする。
以上のように、この実施の形態１によれば、下位ブロックのクリティカルパス表示機能１５により、ユーザが特定のネットをマニュアル配線する場合（図４のステップＳＴ２７）などにおいてタイミングエラーを引き起こすことなく下位ブロック上の配線を実施できる自動配置配線装置が得られる効果がある。
【００３２】
次に、この自動配置配線装置では、前記スラックテーブル作成機能１４により作成したスラックテーブルを参照し配線可能な経路をサーチして自動配線する、下位ブロックのタイミングを考慮した自動配線機能１７を有している。この場合の配線可能な経路のサーチ方法は配線上のタイミング検証機能が判断し、（既存のタイミングドリブン配線のアルゴリズムに前記スラックテーブル作成機能１４により作成したスラックテーブルを使用する。）出来るだけタイミングに余裕ができるように各ネットを配線する。また、タイミングを満たした上で配線が不可能な場合はできるだけタイミングエラーの値が小さくなるよう、エラーを引き起こしながらも配線を実施する。配線完了後にはＤＲＣエラーの表示と同様にタイミングエラーの個数や場所を表示する機能を持つ。
【００３３】
以上のように、この実施の形態１によれば、下位ブロックのタイミングを考慮した自動配線機能１７により、自動でタイミングエラーを引き起こすことなく下位ブロック上の配線が実施できる自動配置配線装置が得られる効果がある。
【００３４】
また、この自動配置配線装置はチップレベルでの任意の追加配線に対応し、前記説明したスラックテーブルを再計算する再計算機能１８を有している。これにより、手配線などを追加した場合でも前記下位ブロックのスラックテーブル作成機能１４、クリティカルパス表示機能１５、自動配線機能１７を繰り返し実施することが出来る。
【００３５】
【発明の効果】
この発明によれば、下位階層のレイアウトの各パスのタイミング検証結果と設計上の制約である前記各パスの要求到達時間とをもとに算出された前記各パスのタイミング制約に対する遅延の余裕値を超えずに前記各パスに追加できる、上位階層のレイアウトの影響を想定したときの容量値のスラックテーブルを生成するスラックテーブル作成手段を備えるように構成したので、前記スラックテーブルを利用することで上位階層のレイアウトを行う場合の前記下位階層のレイアウトの空き領域の有効利用が可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００３６】
この発明によれば、下位階層のレイアウトのパスを構成する各ネットに対し追加できる容量値の組合わせをスラックテーブルによりテーブル形式で示すように構成したので、前記スラックテーブルが示す前記容量値の組合わせをもとに、前記下位階層のレイアウトの空き領域の有効利用が可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００３７】
この発明によれば、スラックテーブルをもとに、下位階層のレイアウトのパスを構成する各ネットについて追加できる容量値に応じた表示を行う表示手段を備えるように構成したので、前記下位階層のレイアウトのクリティカルパスを識別でき、前記下位階層のレイアウトの空き領域の有効利用が可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００３８】
この発明によれば、表示手段が、スラックテーブルをもとに、パスを構成する各ネットごとに追加できる容量値の平均値を求め、前記容量値の平均値に応じた色分けを含む段階的な表示を行うように構成したので、下位階層のレイアウトのクリティカルパスを、追加できる容量値の平均値に応じた色分けを含む段階的な表示により識別でき、前記下位階層のレイアウトの空き領域の有効利用が可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００３９】
この発明によれば、表示手段が、レイアウト画面上で選択された任意のネットに対し、追加できる容量値の組合わせを表示するように構成したので、前記レイアウト画面上で選択された任意のネットについてクリティカルパスを識別でき、下位階層のレイアウトの空き領域の有効利用が可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００４０】
この発明によれば、上位階層のレイアウトの影響による容量値の追加により下位階層のレイアウトのパスに生じるタイミングエラーを回避する配線経路をスラックテーブルをもとに検索し、前記上位階層のレイアウトを自動配線する自動配線手段を備えるように構成したので、前記スラックテーブルをもとに、下位階層のレイアウトの空き領域を有効に利用して前記上位階層のレイアウトを自動配線することが可能になり、レイアウトのチップサイズの縮小化が期待できる効果がある。
【００４１】
この発明によれば、自動配線手段による上位階層のレイアウトの自動配線の実行、または手配線による上位階層のレイアウトの配線実行に対し、下位階層のレイアウトの各パスに追加できる容量値のスラックテーブルを再作成するスラックテーブル再作成手段を備えるように構成したので、詳細配線後のエラーやタイミングエラーを改善するための出戻り時間を短縮でき、レイアウト設計期間を短縮できる効果がある。
【図面の簡単な説明】
【図１】この発明の実施の形態１の自動配置配線装置の構成を示すブロック図である。
【図２】この発明の実施の形態１の自動配置配線装置により設計済みマクロブロック上を配線可能とした場合におけるＬＳＩの配線を行なったときの具体例を示すマクロブロック間配線図である。
【図３】この発明の実施の形態１の自動配置配線装置によりチップレベルのレイアウトを行う場合のセルＡとセルＢとの間のパスＡＢの一例を示す回路図である。
【図４】この発明の実施の形態１の自動配置配線装置によりチップレベルのレイアウトを行う場合の動作を示すフローチャートである。
【図５】この発明の実施の形態１の自動配置配線装置が作成するスラックテーブルの一例を示す説明図である。
【図６】階層的にチップをレイアウトし、下位ブロック上や内部に配線を通した場合、前記下位ブロックの内部ネットの配線と上位ブロックのレイアウトとの間に発生する各種容量を示す説明図である。
【図７】設計済みマクロブロック上を配線不可とした場合における、配線の配置形態の具体例を示すマクロブロック間配線図である。
【図８】従来の自動配置配線装置により設計済みマクロブロック上を配線可能としてＬＳＩの配線を行なったときの具体例を示すマクロブロック間配線図である。
【図９】従来の自動配置配線装置によりチップレベルのレイアウトを行う場合の動作を示すフローチャートである。
【符号の説明】
１４　スラックテーブル作成機能（スラックテーブル作成手段）、１５　クリティカルパス表示機能（表示手段）、１７　自動配線機能（自動配線手段）、１８　再計算機能（スラックテーブル再作成手段）、２１　制御手段。
【図１】
2004055911.tif 000003
【図２】
2004055911.tif 000004
【図３】
2004055911.tif 000005
【図４】
2004055911.tif 000006
【図５】
2004055911.tif 000007
【図６】
2004055911.tif 000008
【図７】
2004055911.tif 000009
【図８】
2004055911.tif 000010
【図９】
2004055911.tif 000011