(57)【要約】【課題】半導体集積回路の階層設計において、下位階層であるモジュール間のタイミングパスのエラーを抑制し、設計開発期間の短縮を目的とする。【解決手段】機能記述入力手段１０１と、半導体集積回路の動作仕様を表わす記述を入力する動作条件記述入力手段１０２と、論理的および物理的なセル情報の集合を入力するセルライブラリ入力手段１０３と、回路接続情報作成手段１０４と、回路接続情報に従って接続関係の強いセルを１つにまとめモジュールとし、前記半導体集積回路内に前記モジュールの配置と、前記モジュールの入力および出力ピンの物理的配置と、前記モジュール間の配線とを行うモジュール配置配線手段１０５と、モジュール内のセルを物理的に配置配線するセル配置配線手段１０６等を備える。【選択図】　図１
2004005126.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路の機能を表わす記述を入力する機能記述入力手段と、半導体集積回路の動作仕様を表わす記述を入力する動作条件記述入力手段と、論理的および物理的なセル情報の集合を入力するセルライブラリ入力手段と、前記機能記述入力と前記セルライブラリ入力をもとに論理合成しセルの接続情報を作成する回路接続情報作成手段と、前記回路接続情報に従って接続関係の強いセルを１つにまとめモジュールとし、前記半導体集積回路内に前記モジュールの配置と、前記モジュールの入力および出力ピンの物理的配置と、前記モジュール間の配線とを行うモジュール配置配線手段と、前記セルライブラリ入力と前記回路接続情報に従って前記モジュール内のセルを物理的に配置配線するセル配置配線手段と、前記セルライブラリ入力と前記モジュール配置配線手段の出力情報および前記セル配置配線手段の出力情報をもとに、前記セルおよび配線の遅延時間を計算する遅延時間算出手段と、前記動作条件記述入力と前記モジュール配置配線手段、前記セル配置配線手段および前記遅延時間算出手段の出力情報をもとに前記モジュールをまたがるレジスタ間のパスの遅延時間を最適化するモジュール間タイミングパス最適化手段と、前記モジュール配置配線手段、前記セル配置配線手段および前記モジュール間タイミングパス最適化手段の出力情報をもとに、それぞれの前記モジュールの回路接続情報および物理的な情報を出力するモジュール情報出力手段と、前記モジュール情報出力手段の出力情報をもとに、それぞれの前記モジュール内のセルの配置配線およびモジュール間の配線を確定し物理設計を行うモジュール物理設計手段と、を備えることを特徴とする半導体集積回路設計装置。
【請求項２】
半導体集積回路の機能を表わす記述を入力し、半導体集積回路の動作仕様を表わす記述を入力し、論理的および物理的なセル情報の集合であるセルライブラリを入力し、前記機能記述入力と前記セルライブラリ情報をもとに論理合成された回路接続情報と、前記動作仕様の情報と、前記セルライブラリの情報より、タイミングパスの最適化を行う半導体集積回路の設計方法において、前記回路接続情報に従って接続関係の強いセルを１つにまとめモジュールとし、前記半導体集積回路内に前記モジュールの配置と、前記モジュールの入力および出力ピンの物理的配置と、前記モジュール間の配線とを行うモジュール配置配線工程と、前記セルライブラリ情報と前記回路接続情報に従って前記モジュール内のセルを配置配線するセル配置配線工程と、前記セルライブラリ情報と前記モジュール配置配線工程および前記セル配置配線工程の情報をもとに、前記セルおよび配線の遅延時間を計算する遅延時間算出工程と、前記動作仕様の情報と前記遅延時間算出工程の出力情報をもとに前記モジュールをまたがるレジスタ間のパスの遅延時間を最適化するモジュール間タイミングパス最適化工程と、前記モジュール配置配線工程、前記セル配置配線工程および前記モジュール間タイミングパス最適化工程の出力情報をもとに、それぞれの前記モジュールの回路接続情報および物理的な情報を出力するモジュール情報出力工程と、前記モジュール情報出力工程の出力情報をもとに、それぞれの前記モジュール内のセルの配置配線およびモジュール間の配線を確定し物理設計を行うモジュール物理設計工程と、を備えることを特徴とする半導体集積回路設計方法。
【請求項３】
前記モジュール間タイミングパス最適化工程は、前記モジュールをまたがるレジスタ間の経路上に存在するセルおよび配線および前記ピン位置を、両レジスタ間の前記動作仕様によって規制されるタイミング制約を満足するように移動もしくは置換もしくは削除することを特徴とする請求項２に記載の半導体集積回路設計方法。
【請求項４】
前記モジュール情報出力工程は、前記モジュール間タイミングパス最適化工程の情報をもとに、各モジュール毎の形状情報およびピン配置情報および既に配置配線された部分に関する配置配線情報と、セル構成およびその接続関係を出力することを特徴とする請求項２に記載の半導体集積回路設計方法。
【請求項５】
前記モジュールの物理設計工程は、前記モジュール情報出力工程の情報をもとに、既に配置配線された部分に関しては配置配線を固定し、モジュール内の配置配線未完了の部分については配置配線を実行し、全モジュールの配置配線およびモジュール間の配線を行うことを特徴とする請求項２に記載の半導体集積回路設計方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路の論理合成および配置配線を行う半導体集積回路設計装置およびその設計方法に関する。
【０００２】
【従来の技術】
近年、半導体集積回路の高集積化、高速化に伴い、従来の設計方法ではシステムの仕様要求通りの速度で動作する半導体集積回路を設計することが極めて困難になってきている。また昨今では配線負荷容量による伝播遅延時間を考慮した論理設計および物理設計が行なわれるようになってきている。
【０００３】
このような伝播遅延時間を考慮した設計方法の代表的なものとして、タイミングドリブンレイアウト設計と呼ばれる物理設計方法が知られている。これは論理設計の段階で得られるレジスタ間経路の伝播遅延時間情報を物理設計段階のセル配置工程や配線工程で考慮することにより、半導体集積回路が伝播遅延時間違反を犯さないようにするものである。これに関しては、その内容が、例えば参考文献１：「ＡＳＩＣ技術の基礎と応用」（電子情報通信学会、今井正治編、１９９４年発行）の４７ページに開示されている。これにより物理設計が終了した段階で発生する伝播遅延時間違反を最小にとどめ、論理設計からやり直すことなく最適な配置配線結果が得られる。
【０００４】
また、伝播遅延時間を考慮した設計方法としては、半導体集積回路の任意の２点間の配線伝播遅延時間を計算し、設定した伝播遅延時間を満足する配線を行なう方法が知られている。こうした技術としては例えば参考文献２：「配線ディレイ制御による配線設計装置およびその方法」（特開平６−２６８０６５号公報）に開示されている。これによりセル配置工程をやり直すことなく最適な配線が得られる。
【０００５】
【発明が解決しようとする課題】
しかしながら、半導体集積回路の大規模化、高速化に伴い、設計コストが増大し、設計開始から半導体集積回路が完成するまでの期間が長期化する傾向にある。一方、ユーザー、市場からの要求される開発期間は次第に短縮化の傾向にある。
【０００６】
さて上記参考文献１による設計方法は、論理設計の段階で得られるレジスタ間経路の伝播遅延時間情報を物理設計段階のセル配置工程や配線工程で考慮しなければならない。このため、物理設計段階での設計コストが増大し、また適切な論理設計が為されていない場合は物理設計が破綻してしまい論理設計工程までの後戻りが発生し、設計期間の長期化を招くという不都合が生じる。
【０００７】
また参考文献２による設計方法は、配線の伝播遅延時間を利用した伝播遅延時間違反を解決する手段を提供し、配線工程の短期化を提供するものとしている。しかしセル配置領域が固定されており配線の引き回しによる伝播遅延時間の調整を行なうものであるから、配線領域が非常に混雑している場合にはセル配置工程への後戻りが発生するという不都合が生じ、設計期間の長期化を招くという問題点が発生する。
【０００８】
本発明はこうした不都合を排除した、すなわち、設計開発期間の短縮化が図れる半導体集積回路設計装置およびその設計方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
前記課題を解決するために、本発明の請求項１に記載の半導体集積回路設計装置は、半導体集積回路の機能を表わす記述を入力する機能記述入力手段と、半導体集積回路の動作仕様を表わす記述を入力する動作条件記述入力手段と、論理的および物理的なセル情報の集合を入力するセルライブラリ入力手段と、前記機能記述入力と前記セルライブラリ入力をもとに論理合成しセルの接続情報を作成する回路接続情報作成手段と、前記回路接続情報に従って接続関係の強いセルごとに１つにまとめモジュールとし、前記半導体集積回路内に前記モジュールの配置と、前記モジュールの入力および出力ピンの物理的配置と、前記モジュール間の配線とを行うモジュール配置配線手段と、
前記セルライブラリ入力と前記回路接続情報に従って前記モジュール内のセルを物理的に配置配線するセル配置配線手段と、前記セルライブラリ入力と前記モジュール配置配線手段の出力情報および前記セル配置配線手段の出力情報をもとに、前記セルおよび配線の遅延時間を計算する遅延時間算出手段と、前記動作条件記述入力と前記モジュール配置配線手段、前記セル配置配線手段および前記遅延時間算出手段の出力情報をもとに前記モジュールをまたがるレジスタ間のパスの遅延時間を最適化するモジュール間タイミングパス最適化手段と、前記モジュール配置配線手段、前記セル配置配線手段および前記モジュール間タイミングパス最適化手段の出力情報をもとに、それぞれの前記モジュールの回路接続情報および物理的な情報を出力するモジュール情報出力手段と、前記モジュール情報出力手段の出力情報をもとに、それぞれの前記モジュール内のセルの配置配線およびモジュール間の配線を確定し物理設計を行うモジュール物理設計手段と、を備える。
【００１０】
この構成によれば、上位階層のフロアプランと同時に下位階層となるモジュールの形状、配置およびピン位置を決定し、モジュールにまたがるタイミングパスの動作条件を満足するようにモジュール内のセルの配置配線ができる。従って、タイミングエラーの発生を抑制することができ、設計期間の短縮を図ることができる。
【００１１】
本発明の請求項２に記載の半導体集積回路設計方法は、半導体集積回路の機能を表わす記述を入力し、半導体集積回路の動作仕様を表わす記述を入力し、論理的および物理的なセル情報の集合であるセルライブラリを入力し、前記機能記述入力と前記セルライブラリ情報をもとに論理合成された回路接続情報と、前記動作仕様の情報と、前記セルライブラリの情報より、タイミングパスの最適化を行う半導体集積回路の設計方法において、前記回路接続情報に従って接続関係の強いセルごとに１つにまとめモジュールとし、前記半導体集積回路内に前記モジュールの配置と、前記モジュールの入力および出力ピンの物理的配置と、前記モジュール間の配線とを行うモジュール配置配線工程と、前記セルライブラリ情報と前記回路接続情報に従って前記モジュール内のセルを配置配線するセル配置配線工程と、前記セルライブラリ情報と前記モジュール配置配線工程および前記セル配置配線工程の情報をもとに、前記セルおよび配線の遅延時間を計算する遅延時間算出工程と、前記動作仕様の情報と前記遅延時間算出工程の出力情報をもとに前記モジュールをまたがるレジスタ間のパスの遅延時間を最適化するモジュール間タイミングパス最適化工程と、前記モジュール配置配線工程、前記セル配置配線工程および前記モジュール間タイミングパス最適化工程の出力情報をもとに、それぞれの前記モジュールの回路接続情報および物理的な情報を出力するモジュール情報出力工程と、前記モジュール情報出力工程の出力情報をもとに、それぞれの前記モジュール内のセルの配置配線およびモジュール間の配線を確定し物理設計を行うモジュール物理設計工程とを備える。
【００１２】
この構成によれば、上位階層のフロアプランと同時に下位階層となるモジュールの形状、配置およびピン位置を決定し、モジュールにまたがるタイミングパスの動作条件を満足するようにモジュール内のセルの配置配線ができる。従って、タイミングエラーの発生を抑制することができ、設計期間の短縮を図ることができる。
【００１３】
本発明の請求項３に記載の半導体集積回路設計方法は、請求項２記載の半導体集積回路設計方法において、前記モジュール間タイミングパス最適化工程は、前記モジュールをまたがるレジスタ間の経路上に存在するセルおよび配線および前記ピン位置を、両レジスタ間の前記動作仕様によって規制されるタイミング制約を満足するように移動もしくは置換もしくは削除するものである。
【００１４】
本発明の請求項４に記載の半導体集積回路設計方法は、請求項２記載の半導体集積回路設計方法において、前記モジュール情報出力工程は、前記モジュール間タイミングパス最適化工程の情報をもとに、各モジュール毎の形状情報およびピン配置情報および既に配置配線された部分に関する配置配線情報と、セル構成およびその接続関係を出力するものである。
【００１５】
本発明の請求項５に記載の半導体集積回路設計方法は、請求項２記載の半導体集積回路設計方法において、前記モジュールの物理設計工程は、前記モジュール情報出力工程の情報をもとに、既に配置配線された部分に関しては配置配線を固定し、モジュール内の配置配線未完了の部分については配置配線を実行し、全モジュールの配置配線およびモジュール間の配線を行う。
【００１６】
【発明の実施の形態】
本発明の実施の形態について図を用いて説明する。
【００１７】
図１は本発明の半導体集積回路設計装置の一実施例に係る構成図を示す。この半導体集積回路設計装置は、機能記述入力手段１０１、動作条件入力手段１０２、セルライブラリ入力手段１０３、回路接続情報作成手段１０４、モジュール配置配線手段１０５、セル配置配線手段１０６、遅延時間算出手段１０７、モジュール間タイミングパス最適化手段１０８、モジュール情報出力手段１０９、モジュール物理設計手段１１０とを備える。
【００１８】
機能記述入力手段１０１は、半導体集積回路の機能を言語あるいは記号により表した機能記述を入力する手段である。動作条件入力手段１０２は、機能記述入力手段１０１により入力した半導体集積回路のレジスタ間経路の信号伝播遅延時間を規定するクロック情報、クロックに対する入力および出力される信号のタイミング情報および容量負荷情報、配線負荷などを言語あるいは記号により表わした動作条件を入力する手段である。このとき、後工程においてタイミングが悪化する場合の対策として、動作条件にマージンを含ませておくこともできる。
【００１９】
セルライブラリ入力手段１０３は、回路を構成する最小単位であるセルの集合であるセルライブラリを入力する手段であり、セルライブラリは組み合わせセルやレジスタ、ハードマクロなどから成る。これらはセルの機能を表す論理部分および形状やピン位置を表す物理部分から成り、論理部分と物理部分はセル名で対応付けされるならばそれぞれ別々でもよい。また配線容量や配線抵抗など、プロセスに依存する物理パラメータも含まれる。
【００２０】
回路接続情報作成手段１０４は、機能記述入力手段１０１により入力された機能記述およびセルライブラリ入力手段１０３により入力されたセルライブラリを用いて論理合成を行ない、セルとセルとの接続情報を生成する手段である。
【００２１】
モジュール配置配線手段１０５は、階層設計手法において、上位階層から参照される下位階層のモジュールの形状およびモジュールのピン位置を決定するとともに配置位置を決定し、モジュールのピン間を接続する配線の経路を決定する手段である。モジュールのピン位置および配線経路は、モジュール間で可能な限り短くなるように決定される。
【００２２】
セル配置配線手段１０６は、モジュール内のセルの配置位置および配線経路を決定する手段である。これもまたセル間およびセルとモジュールのピンとの間の配線距離ができる限り短くなるように決定される。
【００２３】
遅延時間算出手段１０７は、セルの駆動能力や配線容量、ピン容量および抵抗等から、セル間の配線遅延時間を計算し、またセルの入力ピンから出力ピンまでの遅延時間すなわちセル遅延時間を計算する手段である。これはセルライブラリに含まれる物理パラメータおよびセルの配置位置、配線経路およびピン位置を用いて計算される。
【００２４】
モジュール間タイミングパス最適化手段１０８は、モジュール間のタイミングパスすなわちあるモジュール内のレジスタセルを始点として、組み合わせセルを経由して別のモジュール内のレジスタセルを終点とするパスに対し、遅延時間算出手段１０７の結果を用いて、動作条件を満足するようセルの構成、配置、配線経路およびピン位置などを修正、置換および削除する手段である。
【００２５】
モジュール情報出力手段１０９は、モジュールの形状や配置位置、ピン配置位置、モジュール内のセル配置位置および配線経路情報を出力する手段である。モジュール物理設計手段１１０は、モジュール単位でセルの配置および結線の配線を行い配置配線を行う手段である。このとき、既に配置配線が完了している部分の情報を入力し、その部分を固定してその他の部分を選択的に配置配線を行うこともできる。
【００２６】
図２は本実施の形態に係る半導体集積回路設計装置を用いて半導体集積回路を設計する方法の手順を示したフローチャートである。ステップ２０１は、機能記述入力手段１０１により機能記述を入力する。ステップ２０２は、動作条件入力手段１０２により動作条件を入力する。
【００２７】
ステップ２０３は、セルライブラリ入力手段１０３によりセルライブラリを入力する。ステップ２０４は、ステップ２０１および２０３において入力した機能記述およびセルライブラリから、回路接続情報作成手段１０４により論理合成を行い、回路接続情報を作成する。
【００２８】
ステップ２０５は、モジュール配置配線手段１０５により、ステップ２０４において論理合成により作成した回路接続情報から接続関係の強いセルを１つのグループにまとめモジュールとし、上位階層で参照する下位階層すなわちモジュールの形状の決定や、その配置およびピン配置を決定する。なお、これらを決定するにあたり、上位階層の半導体集積回路の外形もしくは面積の上限あるいは下限となる数値を入力しそれらを満足するように決定してもよい。また、それらの上限あるいは下限となる数値を入力せずに、回路接続情報から算出する各モジュールの面積を基準として半導体集積回路の外形もしくは面積を決定してもよい。またモジュールの形状の決定やその配置を行うときに、自動で行わず事前に準備していたフロアプラン情報を入力してもよい。ピン配置についても同様に事前に準備した情報を入力してもよいが、自動で決定する場合はピン間の配線経路が最短になるように決定する。
【００２９】
ステップ２０６は、モジュール間タイミングパス最適化手段１０８により、モジュール間にまたがって存在するレジスタの出力からレジスタの入力までのタイミングパスを抽出する。ここでモジュール間のタイミングパスとは、たとえば、任意の第１モジュールのレジスタを始点とし、この第１モジュール内の組み合わせ回路を経由して第１モジュールの出力ピンに接続し、さらに上位階層のモジュール間接続配線により他の第２モジュールの入力ピンに接続し、第２モジュール内の組み合わせ回路を経由して、第２モジュールのレジスタを終点とする、パスのことである。ステップ２０６では、ステップ２０４で作成した回路接続情報から、このようなタイミングパスを構成するセルおよびそれらの結線を探索し、そのインスタンス名をタイミングパス毎に記録しておく。
【００３０】
ステップ２０７は、ステップ２０６で抽出したタイミングパス情報をもとに、セル配置配線手段１０６によりモジュールに含まれるセルおよび結線を配置、配線する。このとき、配置および配線は動作条件に制約されることなく行われる。またステップ２０６で抽出されなかったセルおよび結線については配置および配線は実行されない。
【００３１】
ステップ２０８は、ステップ２０７において遅延時間算出手段１０７により配置および配線したタイミングパスについて、遅延計算を行う。ステップ２０９は、ステップ２０７において遅延時間算出手段１０７により配置および配線したタイミングパスについて、動作条件を満足しているかどうかの判定を行う。ここで全てのタイミングパスが動作条件を満足していればステップ２１３に進む。満足していなければステップ２１０へ進む。
【００３２】
ステップ２１０は、ステップ２０９においてモジュール間タイミングパス最適化手段１０８により、動作条件を満足していなかったタイミングパスに対して最適化を行う。このとき、動作条件を既に満足しているタイミングパスであっても、まだ動作条件を満足していないタイミングパスが改善されるならば、修正が行われてもよい。
【００３３】
ステップ２１１は、ステップ２１０において再度遅延時間算出手段１０７により、配置および配線したタイミングパスについて遅延計算を行う。
【００３４】
ステップ２１２は、ステップ２１０において遅延時間算出手段１０７により、配置および配線したタイミングパスについて、動作条件を満足しているかどうかの判定を行う。ここで全てのタイミングパスが動作条件を満足していればステップ２１３に進む。満足していなければステップ２１０へ戻る。
【００３５】
ステップ２１３は、モジュール情報出力手段１０９により、ステップ２１２までに作成した回路接続情報やモジュール形状、モジュール配置、モジュールピン配置情報およびモジュール内のセル配置、結線配線情報を出力する。
【００３６】
ステップ２１４は、ステップ２１３のモジュール情報を用いてモジュール物理設計手段１１０によりモジュール間の配置配線およびモジュール内の配置配線と、ステップ２０６で抽出されなかったセルおよび結線について、ステップ２０３のセルライブラリ情報とステップ２０４の回路接続情報をもとにセルの配置配線を確定しモジュールの物理設計を行う。
【００３７】
図３は本発明の実施の形態における半導体集積回路の、フロアプラン工程での階層イメージおよび存在するタイミングパスの例である。ここでのタイミングパスが既に機能記述から論理合成され回路接続情報となっているイメージである。
【００３８】
外形３０１は半導体集積回路の外形を表し、斜線の網掛け部分６０２はＩＯセル配置領域である。外形３０１内の網掛けされていない部分６１２はコア配置領域である。コア配置領域内６１２に示した６１６は下位階層モジュールを表している。例えば３０２、３０３をそれぞれモジュールＡ、モジュールＢとする。３０４から３１４までは、モジュールＡ３０２とモジュールＢ３０３との間に存在するタイミングパスである。３０４はモジュールＡ３０２内のレジスタでありタイミングパスの始点となる。レジスタ３０４の出力ピンは結線３１０により組み合わせたセルであるバッファ３０５の入力ピンに接続されている。バッファ３０５の出力ピンは結線３１１によりモジュールＡ３０２の出力ピン３０６に接続されている。モジュールＡ３０２の出力ピン３０６は結線３１２によりモジュールＢ３０３の入力ピン３０７に接続されている。モジュールＢ３０３の入力ピン３０７は結線３１３によりモジュールＢ３０３内のバッファ３０８の入力ピンに接続されており、バッファ３０８の出力ピンは結線３１４により、モジュールＢ３０３内のレジスタ３０９の入力ピンに接続されている。なおこのタイミングパスは説明のため単純な組み合わせ回路によるパスを示しており実際は複雑な組み合わせ回路を経由する場合が多く、また始点が複数存在する場合が多い。
【００３９】
図４は、図３のタイミングパスに注目した、より物理的なイメージ図を示す。図中の各要素は図３と同じである。またこの図はフローチャートのステップ２０８の遅延時間算出まで完了したものであるとする。図中のｔｄ３０４からｔｄ３１４の表記は、ステップ２０８の遅延時間算出で得られた、各セルおよび各結線でそれぞれ遅延時間を表している。ｔｄの添字の数字は対応するセルおよび結線の数字と同じであり、各セルおよび結線の遅延時間に対応している。
【００４０】
ここで、ｔｄ３０４＝ｔｄ３１０＝ｔｄ３０５＝ｔｄ３１１＝ｔｄ３１２＝ｔｄ３１３＝ｔｄ３０８＝２単位時間、ｔｄ３１４＝４単位時間とする。
【００４１】
モジュールＡ３０２のレジスタ３０４とモジュールＢ３０３のレジスタ３０９の間のデータ受け渡しに関し、１２単位時間内に到達しなければならないという動作条件があるとする。図４の状態では、２＋２＋２＋２＋２＋２＋２＋４＝１８単位時間かかってしまっている。こうした場合ステップ２０９の動作条件を満足しているかどうかの判定は「Ｎｏ」になる。
【００４２】
ステップ２０９において「Ｎｏ」の判定が下されると次のステップ２１０において、モジュール間タイミングパス最適化を行う。ここでは、論理を変更しない組み合わせセルの置換、ピン位置の変更、配線経路の最短化、セルの配置変更等を行う。
【００４３】
図５はモジュール間タイミングパス最適化を行ったあとの状態を示す。バッファ３０５は最適化の結果インバータ５０５に置き換えられている。同様にバッファ３０８もインバータ５０８に置き換えられている。この置換は２段のバッファよりも２段のインバータの方が遅延時間の計算の結果短縮できると判断したためである。またインバータ５０５は、モジュールＡ３０２のピン３０６との結線距離が最短になるよう移動している。
【００４４】
この移動にともない、レジスタ３０４とインバータ５０５の結線５１０は結線３１０の形状を保持した状態でレジスタ３０４と共に移動している。次にモジュールＢ３０３のピン３０７はモジュールＡ３０２とモジュールＢ３０３との間が最短になるように移動している。したがって、ピン３０６とピン３０７との結線５１２は、結線３１２と形状が異なり短縮されている。またインバータ５０８も、モジュールＢ３０３のピン３０７との距離が最短になるように移動している。したがって、ピン３０７とインバータ５０８の入力との結線５１３は結線３１３とは形状が異なり短縮されている。またインバータ５０８の出力とレジスタ３０９の入力との距離が最短になるようにレジスタ３０９が移動している。したがって、インバータ５０８出力とレジスタ３０９の入力との結線５１４は結線３１４とは形状が異なり短縮されている。
【００４５】
ステップ２１１において遅延時間算出手段１０７により、最適化後の遅延時間算出を行う。なお図５中のｔｄ３０４からｔｄ５１４の表記は、ステップ２１１の遅延時間算出で得られた、各セルおよび各結線でそれぞれ遅延時間を表している。図４と同じ表記は遅延時間も同じである。また、図４と同様に、ｔｄの添字の数字は対応するセルおよび結線の数字と同じであり、各セルおよび結線の遅延時間に対応している。ここで、ｔｄ３０４＝ｔｄ５１０＝２単位時間、ｔｄ５０５＝ｔｄ５１１＝１単位時間、ｔｄ５１２＝２単位時間、ｔｄ５１３＝ｔｄ５０８＝ｔｄ５１４＝１単位時間、と最適化される。
【００４６】
図５の状態では、モジュールＡ３０２のレジスタ３０４とモジュールＢ３０３のレジスタ３０９の間のデータ受け渡し時間は２＋２＋１＋１＋２＋１＋１＋１＝１１単位時間になった。これは１２単位時間内に到達しなければならないという動作条件を満足しているため、この場合ステップ２１２の動作条件を満足しているかどうかの判定は「Ｙｅｓ」になる。
【００４７】
ステップ２１２が「Ｙｅｓ」の判定を下すと次ぎの処理はステップ２１３に移り、モジュール情報出力手段１０９により、既に配置および配線されたモジュール、セルおよび結線に関する情報の出力を行う。
【００４８】
最後に、ステップ２１４においてモジュール物理設計手段１１０により、モジュール内の物理設計を行う。このときステップ２１３で出力したモジュール情報を用いて、既に確定している部分についてはそのまま固定し、その他の部分について配置配線を行う。
【００４９】
なお本実施の形態において、１回の最適化で動作条件を満足したが、満足しない場合はステップ２１２からステップ２１０に戻り、再びモジュール間タイミングパス最適化を行う。
【００５０】
【発明の効果】
本発明の半導体集積回路設計装置およびその設計方法によれば、半導体集積回路の設計早期に行われる上位階層のフロアプラン工程の段階にて、下位階層であるモジュール間のタイミング関係を考慮し、モジュール間およびモジュール内の配置配線を行うため、タイミングエラーの発生を抑制することができる。
【００５１】
またフロアプランの段階にて決定したセルの配置や結線の配線情報をモジュールの物理設計に使用することにより、当初の最適化結果を保持したまま、すなわちモジュール間のタイミングエラーの発生を抑えつつモジュールの設計を行うことができ、開発期間の短縮を図ることができる半導体集積回路設計装置およびその設計方法を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る構成図
【図２】本発明の実施の形態に係るフローチャート
【図３】本発明の実施の形態に係る半導体集積回路の階層概念図およびタイミングパスの論理的概念図
【図４】図３のタイミングパスに注目した物理的概念図
【図５】図４に示される半導体集積回路のタイミングパスの最適化後の概念図
【符号の説明】
１０１　機能記述入力手段
１０２　動作条件入力手段
１０３　セルライブラリ入力手段
１０４　回路接続情報作成手段
１０５　モジュール配置配線手段
１０６　セル配置配線手段
１０７　遅延時間算出手段
１０８　モジュール間タイミングパス最適化手段
１０９　モジュール情報出力手段
１１０　モジュール物理設計手段
２０１　機能記述入力ステップ
２０２　動作条件入力ステップ
２０３　セルライブラリ入力ステップ
２０４　回路接続情報作成ステップ
２０５　モジュール配置配線ステップ
２０６　モジュール間タイミングパス抽出ステップ
２０７　セル配置配線ステップ
２０８　遅延時間算出ステップ
２０９　動作条件適合判断ステップ
２１０　モジュール間タイミングパス最適化ステップ
２１１　遅延時間算出ステップ
２１２　動作条件適合判断ステップ
２１３　モジュール情報出力ステップ
２１４　モジュール物理設計ステップ
３０１　半導体集積回路の外形
３０２　モジュールＡ
３０３　モジュールＢ
３０４　レジスタ
３０５　バッファ
３０６　出力ピン
３０７　入力ピン
３０８　バッファ
３０９　レジスタ
３１０〜３１４　結線
５０５、５０８　インバータ
５１０〜５１４　結線
ｔｄ３０４、ｔｄ３０５、ｔｄ３０８、ｔｄ３１０、ｔｄ３１１、ｔｄ３１２、ｔｄ３１３、ｔｄ３１４、ｔｄ５０５、ｔｄ５０８、ｔｄ５１０、ｔｄ５１１、ｔｄ５１２、ｔｄ５１３、ｔｄ５１４　遅延時間
【図１】
2004005126.tif 000003
【図２】
2004005126.tif 000004
【図３】
2004005126.tif 000005
【図４】
2004005126.tif 000006
【図５】
2004005126.tif 000007