(57)【要約】【課題】信号路の信号到達時間を考慮したグループ化処理をおこなうこと。ユーザの意図した領域に信号路を配線させること。【解決手段】取得部２０１は、ネット情報を取得する。決定部２０２は、取得部２０１によって取得されたネット情報に基づいて、隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を決定する。指定部２０３は、隣接する複数のネットによって接続されたセル間において、配線領域を確保する際の基準となる基準点または基準線の指定を受け付ける。領域確保部２０４は、指定部２０３によって指定された基準点または基準線に沿った方向に、配線領域を確保する。領域変更部２０５は、領域確保部２０４によって確保された配線領域を変更する。配線部２０６は、領域変更部２０５によって変更された配線領域に、決定部２０２によって配線処理単位が決定された信号路を配線する。【選択図】図２
2008204349.tif 000002
【特許請求の範囲】
【請求項１】
隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定させる決定工程を、コンピュータに実行させることを特徴とするレイアウト設計プログラム。
【請求項２】
前記決定工程によって決定された配線処理単位で、前記隣接する複数のネットによって接続されたセル間を接続する信号路を配線させる配線工程をさらに含んだことを特徴とする請求項１に記載のレイアウト設計プログラム。
【請求項３】
前記隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付けさせる指定工程と、
前記指定工程によって指定された点または線分に沿った方向に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保させる領域確保工程と、
をさらに含んだことを特徴とする請求項１に記載のレイアウト設計プログラム。
【請求項４】
前記領域確保工程によって確保された配線領域に、前記決定工程によって決定された配線処理単位で、前記信号路を配線させる配線工程をさらに含んだことを特徴とする請求項３に記載のレイアウト設計プログラム。
【請求項５】
前記領域確保工程によって確保された配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更させる領域変更工程をさらに含んだことを特徴とする請求項３に記載のレイアウト設計プログラム。
【請求項６】
請求項１〜５のいずれか一つに記載のレイアウト設計プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項７】
隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定する決定工程を含んだことを特徴とするレイアウト設計方法。
【請求項８】
隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定する決定手段を備えたことを特徴とするレイアウト設計装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路のレイアウトを設計するレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置に関する。
【背景技術】
【０００２】
近年、半導体集積回路設計においては、たとえばＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述された論理機能データに基づいてネットリストなどのレイアウト情報を自動生成し、さらにこのレイアウト情報に基づいて配線処理を自動的におこなうことができるレイアウト設計装置が利用されている。
【０００３】
そして、このようなレイアウト設計装置を、たとえばＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）やＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などの半導体集積回路のレイアウト設計に用いることにより、レイアウト設計期間の短期間化を図ることが可能とされている。
【０００４】
しかしながら、たとえレイアウト設計装置を用いて自動的に配線処理をおこなったとしても、遅延、配線間隔、電力、ノイズの影響などといった設計ルールに従った修正作業を手作業でおこなわなければならないケースが殆どである。近年の半導体集積回路では、配線が数百万本にも及んでおり、上記修正作業に伴って、レイアウト設計期間が長期化してしまうといった問題を解決することができなかった。
【０００５】
そこで、たとえば、何らかの共通点を持つ複数の信号路（たとえば、隣接または重複する信号路、ネットの角度差が閾値よりも小さい信号路、共通の名称を持つ信号路、など）をグループ化することによって、グループ単位での配線処理や配線修正処理をおこなうことができるレイアウト設計プログラムなどが考案されている（たとえば、下記特許文献１および２参照。）。そして、このような方法を用いたレイアウト設計をおこなうことによって、レイアウト設計期間を短期間化することができるものとされている。
【０００６】
【特許文献１】特開平０４−１１５３６８号公報
【特許文献２】特開平０４−２７５６７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、グループ化された信号路においては、各信号路の信号到達時間ができるだけ揃っていることが望ましいにも関わらず、上記特許文献１および２に記載の従来技術にあっては、信号路の信号到達時間を考慮したグループ化処理をおこなうことができない。このため、グループ化された信号路において、各信号路の信号到達時間が揃うように、配線、セルの配置、グループ構成などをユーザが手作業で修正しなければならず、これに伴ってレイアウト設計期間が長期間化してしまうことが問題となっていた。
【０００８】
また、上記特許文献１および２に記載の従来技術にあっては、ユーザの意図した領域に信号路を配線することができない。このため、一度配線された信号路を、ユーザの意図した領域に配線されるように、ユーザが手作業で修正しなければならず、これに伴ってレイアウト設計期間が長期間化してしまうことが問題となっていた。
【０００９】
この発明は、上述した従来技術による問題点を解消するため、信号路の信号到達時間を考慮したグループ化処理をおこない、ユーザの意図した領域に信号路を配線することによって、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するため、第１の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置は、隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定することを特徴とする。
【００１１】
この発明によれば、レイアウト設計において、隣接する信号路のうち、遅延タイミングを同期させる必要がある信号路同士や、何らかの共通点を有する信号路同士を同一の配線処理単位として扱うことができる。
【００１２】
また、第２の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置は、設計対象回路のレイアウト上における、隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付け、指定された点または線分に沿った方向に、隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保することを特徴とする。
【００１３】
この発明によれば、点または線分といった簡素な情報に基づいて、隣接する信号路の配線領域を確保することができる。
【００１４】
また、第３の発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置は、設計対象回路のレイアウト上において確保された、隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更することを特徴とする。
【００１５】
この発明によれば、レイアウト上に確保された配線領域のうち、遅延、消費電力、配線混雑度などの設定ルールにおいて余裕のある配線領域を、自動的に変更することができる。
【発明の効果】
【００１６】
本発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置によれば、信号路の信号到達時間を考慮したグループ化処理をおこない、ユーザの意図した領域に信号路を配線することができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１７】
以下に添付図面を参照して、この発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置の好適な実施の形態を詳細に説明する。
【００１８】
（実施の形態）
（レイアウト設計装置のハードウェア構成）
まず、この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成について説明する。図１は、この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。
【００１９】
図１において、レイアウト設計装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ（ハードディスクドライブ）１０４と、ＨＤ（ハードディスク）１０５と、ＦＤＤ（フレキシブルディスクドライブ）１０６と、着脱可能な記録媒体の一例としてのＦＤ（フレキシブルディスク）１０７と、ディスプレイ１０８と、Ｉ／Ｆ（インターフェース）１０９と、キーボード１１０と、マウス１１１と、スキャナ１１２と、プリンタ１１３と、を備えている。また、各構成部はバス１２０によってそれぞれ接続されている。
【００２０】
ここで、ＣＰＵ１０１は、レイアウト設計装置１００の全体の制御を司る。ＲＯＭ１０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ１０３は、ＣＰＵ１０１のワークエリアとして使用される。ＨＤＤ１０４は、ＣＰＵ１０１の制御にしたがってＨＤ１０５に対するデータのリード／ライトを制御する。ＨＤ１０５は、ＨＤＤ１０４の制御で書き込まれたデータを記憶する。
【００２１】
ＦＤＤ１０６は、ＣＰＵ１０１の制御にしたがってＦＤ１０７に対するデータのリード／ライトを制御する。ＦＤ１０７は、ＦＤＤ１０６の制御で書き込まれたデータを記憶したり、ＦＤ１０７に記憶されたデータを読み取らせたりする。
【００２２】
また、着脱可能な記録媒体として、ＦＤ１０７のほか、ＣＤ−ＲＯＭ（ＣＤ−Ｒ、ＣＤ−ＲＷ）、ＭＯ、ＤＶＤ（ＤｉｇｉｔａｌＶｅｒｓａｔｉｌｅＤｉｓｋ）、メモリーカードなどであってもよい。ディスプレイ１０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ１０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２３】
Ｉ／Ｆ１０９は、通信回線を通じてインターネットなどのネットワーク１１４に接続され、このネットワーク１１４を介して他の装置に接続される。そして、Ｉ／Ｆ１０９は、ネットワーク１１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ１０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２４】
キーボード１１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス１１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２５】
スキャナ１１２は、画像を光学的に読み取り、レイアウト設計装置１００内に画像データを取り込む。なお、スキャナ１１２は、ＯＣＲ機能を持たせてもよい。また、プリンタ１１３は、画像データや文書データを印刷する。プリンタ１１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００２６】
（レイアウト設計装置の機能的構成）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００の機能的構成について説明する。図２は、この発明の実施の形態にかかるレイアウト設計装置１００の機能的構成を示すブロック図である。
【００２７】
図２において、レイアウト設計装置１００は、取得部２０１と、決定部２０２と、指定部２０３と、領域確保部２０４と、領域変更部２０５と、配線部２０６と、表示部２０７と、から構成されている。
【００２８】
取得部２０１は、たとえばネットリストなどの、設計対象回路のレイアウトに関する情報（以下、「レイアウト情報」という）を取得する。また、取得部２０１は、設計対象回路のレイアウト上に設けられた隣接する複数のネットに関する、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路などの情報（以下、「ネット情報」という）を取得する。さらに、取得部２０１は、上記設計対象回路のレイアウトの変更に関する情報（以下、「レイアウト変更情報」という）を取得する。
【００２９】
具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７などの所定の記録媒体から、レイアウト情報、ネット情報およびレイアウト変更情報を読み取る。これらの情報は、レイアウト設計装置１００によって生成されたものであってもよいし、別の装置によって生成されたものであってもよい。たとえば、ネット情報は、レイアウト設計装置１００によって算出されたものであってもよいし、別の装置によって算出されたものであってもよい。
【００３０】
なお、取得部２０１は、レイアウト設計装置１００と接続された別の装置から図１に示したネットワーク１１４を介して送信されたレイアウト情報、ネット情報およびレイアウト変更情報を取得するようにしてもよい。取得部２０１は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによって制御されたＩ／Ｆ１０９によってその機能を実現する。
【００３１】
決定部２０２は、取得部２０１によって取得されたネット情報に基づいて、取得部２０１によって取得されたレイアウト情報に示されているネットのうち、隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を決定する。
【００３２】
具体的には、たとえば、ネット情報に示されている隣接する複数のネットに関するスラック値および信号到達時間を用いて、スラック値の差分が所定の閾値よりも少ない場合、かつ信号到達時間の差分が所定の閾値よりも少ない場合に、隣接する複数のネットをグループ化する。すなわち、同一の配線処理単位とすると決定する。
【００３３】
なお、ネットをグループ化する方法は、上記に限らず、たとえば、起点端子や終点端子の配置座標の距離が近いネット同士をグループ化する、関連する文字列を名称に含むネット同士をグループ化する、概略配線経路が隣接または重複するネット同士をグループ化するなどであってもよい。
【００３４】
また、決定部２０２による具体的な配線処理単位の決定処理の手順については、図４を用いて後述する。決定部２０２は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００３５】
指定部２０３は、隣接する複数のネットによって接続されたセル間において、配線領域を確保する際の基準となる点（以下、「基準点」という）または線分（以下、「基準線」という）の指定を受け付ける。具体的には、ユーザが図１に示したキーボート１１０やマウス１１１などを操作して、隣接する複数のネットによって接続されたセル間に入力した点または線を、配線領域を確保する際の基準点または基準線として受け付ける。なお、指定される基準点および基準線は、設計ルールで指定された配線方向とする。指定部２０３は、具体的には、たとえば図１に示したキーボート１１０やマウス１１１などによってその機能を実現する。
【００３６】
領域確保部２０４は、指定部２０３によって指定された基準点または基準線に沿った方向に、配線領域を確保する。たとえば、領域確保部２０４は、基準点または基準線を基準として、配線領域を確保する。ユーザによって配線領域の大きさが指定された場合、その大きさの配線領域を確保する。ユーザによって配線領域の大きさが指定されない場合、たとえば、領域確保部２０４は、基準点または基準線を基準として、単位長さの抵抗値、単位長さの容量、スラック値などを用いて算出された大きさ以上で、かつ、平行配線長エラーが起きない最低限の大きさの配線領域を確保する。領域確保部２０４は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００３７】
領域変更部２０５は、ユーザによって配線領域の大きさが指定されない場合、領域確保部２０４によって自動的に確保された配線領域を変更する。たとえば、領域変更部２０５は、遅延、消費電力、配線混雑度を算出または取得した結果、遅延と消費電力が制約値よりも小さく、かつ、配線領域周辺の混雑度に余裕があると判断した場合、配線間隔を広げることができるように、配線領域を変更する。変更の大きさは、配線混雑度、配線遅延、消費電力が制約値以内に収まる範囲内とする。ユーザによって配線領域の大きさが指定された場合、領域変更部２０５は、領域確保部２０４によって確保された配線領域を変更しない。
【００３８】
また、領域変更部２０５は、取得部２０１によってレイアウト変更情報が取得された場合においても、取得されたレイアウト変更情報に基づいて、既に確保されている配線領域を変更することができる。なお、領域変更部２０５は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００３９】
配線部２０６は、領域変更部２０５によって変更された配線領域に、決定部２０２によって配線処理単位が決定された信号路を配線する。配線部２０６は、具体的には、たとえば図１に示したＲＯＭ１０２、ＲＡＭ１０３、ＨＤ１０５、ＦＤ１０７に記憶されたプログラムをＣＰＵ１０１が実行することによってその機能を実現する。
【００４０】
表示部２０７は、取得部２０１によって取得されたレイアウト情報に基づくレイアウト、指定部２０３によって指定された基準点または基準線、領域確保部２０４によって確保された配線領域、領域変更部２０５によって変更された配線領域、配線部２０６による配線処理がおこなわれた後のレイアウト、などを表示する。表示部２０７は、具体的には、たとえば図１に示したディスプレイ１０８などによってその機能を実現する。
【００４１】
（設計対象回路の一例）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる設計対象回路の一例について説明する。図３は、この発明の実施の形態にかかるレイアウト設計装置１００に用いられる設計対象回路の一例を示す説明図である。
【００４２】
図３において、設計対象回路３００は、セル３０１，３０２，３０３，３０４，３０５，３０６と、ネット３１１，３１２，３１３と、から構成されている。このうち、ネット３１１は、ネットを一意に識別するためのネットＩＤ「Ｎ１」を有し、セル３０１とセル３０６とを接続する。また、ネット３１２は、ネットＩＤ「Ｎ２」を有し、セル３０２とセル３０５とを接続する。そして、ネット３１３は、ネットＩＤ「Ｎ３」を有し、セル３０３とセル３０４とを接続する。
【００４３】
（ネット情報の一例）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００に用いられるネット情報の一例について説明する。図４は、この発明の実施の形態にかかるレイアウト設計装置１００に用いられるネット情報の一例を示す説明図である。
【００４４】
図４において、ネット情報４００は、図３に示したネット３１１，３１２，３１３に関するネット情報を示したものである。ネット情報４００のうち、列「スラック値」には、ネットを経由する信号経路のスラック値が設定される。また、列「信号到達時間」には、ネットを経由する信号経路における当該ネットへの信号到達時間が設定される。
【００４５】
たとえば、図４に示すネット情報４００から、ネットＩＤ「Ｎ１」を有するネットを経由する信号経路のスラック値は、「７００」であって、ネットＩＤ「Ｎ１」を有するネットを経由する信号経路における当該ネットへの信号到達時間は、「０．０００９８（ｍｓｅｃ）」であると判断することができる。
【００４６】
（決定部２０２による配線処理単位の決定処理の手順）
つぎに、決定部２０２による配線処理単位の決定処理の手順について説明する。図５は、決定部２０２による配線処理単位の決定処理の手順の一例を示すフローチャートである。
【００４７】
まず、取得部２０１によって取得されたレイアウト情報に示されているネットの中から、隣接するネットの組み合わせを一つ選択する（ステップＳ５０１）。つぎに、取得部２０１によって取得されたネット情報に基づいて、ステップＳ５０１で選択されたネットの組み合わせのスラック値の差分を算出して（ステップＳ５０２）、ステップＳ５０２で算出された差分が所定の閾値より少ないか否かを判断する（ステップＳ５０３）。
【００４８】
ステップＳ５０３において、所定の閾値より多いと判断した場合（ステップＳ５０３：Ｎｏ）は、ステップＳ５０７へ進む。一方、ステップＳ５０３において、所定の閾値より少ないと判断した場合（ステップＳ５０３：Ｙｅｓ）は、取得部２０１によって取得されたネット情報に基づいて、ステップＳ５０１で選択されたネットの組み合わせの信号到達時間の差分を算出する（ステップＳ５０４）。
【００４９】
そして、ステップＳ５０４で算出された差分が所定の閾値より少ないか否かを判断する（ステップＳ５０５）。ステップＳ５０５において、所定の閾値より多いと判断した場合（ステップＳ５０５：Ｎｏ）は、ステップＳ５０７へ進む。一方、ステップＳ５０５において、所定の閾値より少ないと判断した場合（ステップＳ５０５：Ｙｅｓ）は、ステップＳ５０１で選択されたネットの組み合わせによって接続されたセル間を接続する信号路を同一の配線処理単位とすると決定して（ステップＳ５０６）、ステップＳ５０７へ進む。
【００５０】
続いて、取得部２０１によって取得されたレイアウト情報に示されているネットの中から、隣接するネットの組み合わせが全て選択されたか否かを判断する（ステップＳ５０７）。ステップＳ５０７において、全て選択されたと判断した場合（ステップＳ５０７：Ｙｅｓ）は、一連の処理を終了する。一方、ステップＳ５０７において、全て選択されていないと判断した場合（ステップＳ５０７：Ｎｏ）は、ステップＳ５０７で全て選択されたと判断されるまで、ステップＳ５０１〜ステップＳ５０６を繰り返しおこなう。
【００５１】
ここで、たとえば、スラック値の差分と比較される閾値が「１００」であって、信号到達時間の差分と比較される閾値が「０．０００１０（ｍｓｅｃ）」であった場合において、図３に示したネット３１１，３１２，３１３を用いて、上記手順による配線処理単位の決定処理をおこなった場合について説明する。
【００５２】
まず、ネット３１１と、ネット３１２とのスラック値の差分は上記閾値よりも少ない「５０」であり、ネット３１１と、ネット３１２との信号到達時間の差分は上記閾値よりも少ない「０．００００２（ｍｓｅｃ）」であることから、ネット３１１によって接続されたセル間を接続する信号路と、ネット３１２によって接続されたセル間を接続する信号路と、を同一の配線処理単位とすると決定される。
【００５３】
同様に、ネット３１２と、ネット３１３とのスラック値の差分は上記閾値よりも少ない「５０」であり、ネット３１２と、ネット３１３との信号到達時間の差分は上記閾値よりも少ない「０．００００５（ｍｓｅｃ）」であることから、ネット３１２によって接続されたセル間を接続する信号路と、ネット３１３によって接続されたセル間を接続する信号路と、を同一の配線処理単位とすると決定される。
【００５４】
このように、この発明の実施の形態にかかるレイアウト設計装置１００は、取得部２０１によって取得されたネット情報に示されているスラック値および信号到達時間に基づいて、隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を決定することができる。
【００５５】
（レイアウト設計装置１００によるレイアウト設計処理の手順）
つぎに、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト設計処理の手順について説明する。図６は、この発明の実施の形態にかかるレイアウト設計装置１００によるレイアウト設計処理の手順の一例を示すフローチャートである。
【００５６】
まず、取得部２０１によって、レイアウト情報を取得する（ステップＳ６０１）。つぎに、取得部２０１によって、ネット情報を取得する（ステップＳ６０２）。
【００５７】
つぎに、決定部２０２によって、ステップＳ６０２で取得されたネット情報を用いて、ステップＳ６０１で取得されたレイアウト情報に示されているネットのうち、隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を決定する（ステップＳ６０３）。なお、具体的な配線処理単位の決定処理の手順については、図５を用いて上述したとおりである。
【００５８】
つぎに、指定部２０３によって、隣接する複数のネットによって接続されたセル間において、基準点または基準線の指定を受け付ける（ステップＳ６０４）。つぎに、領域確保部２０４によって、ステップＳ６０４で指定された基準点または基準線に沿った方向に配線領域を確保する（ステップＳ６０５）。
【００５９】
そして、領域変更部２０５によって、ステップＳ６０５で確保された配線領域を変更して（ステップＳ６０６）、配線部２０６によって、ステップＳ６０６で変更された配線領域内に、ステップＳ６０３で配線処理単位が決定された信号路を配線する（ステップＳ６０７）。
【００６０】
続いて、取得部２０１によって、レイアウト変更情報を取得したか否を判断する（ステップＳ６０８）。ステップＳ６０８において、レイアウト変更情報を取得したと判断した場合（ステップＳ６０８：Ｙｅｓ）は、ステップＳ６０２に戻り、レイアウトが変更された設計対象回路に対するレイアウト設計処理（ステップＳ６０２〜ステップＳ６０７）をおこなう。このとき、基準点または基準線は既に指定されていることから、指定部２０３による基準点または基準線の受け付け処理（ステップＳ６０４）は省略することができる。一方、ステップＳ６０８において、レイアウト変更情報を取得していないと判断した場合（ステップＳ６０８：Ｎｏ）は、一連の処理を終了する。
【００６１】
（指定部２０３によって指定された基準点の一例）
つぎに、指定部２０３によって指定された基準点の一例について説明する。図７は、指定部２０３によって指定された基準点の一例を示す説明図である。
【００６２】
図７は、指定部２０３によって図３に示した設計対象回路３００に対して指定された基準点７０１，７０２，７０３を示したものである。この基準点７０１，７０２，７０３は、領域確保部２０４によって、セル３０１とセル３０６とを接続する信号路、セル３０２とセル３０５とを接続する信号路、およびセル３０３とセル３０４とを接続する信号路の配線領域を確保する際の基準となる。
【００６３】
（指定部２０３によって指定された基準線の一例）
つぎに、指定部２０３によって指定された基準線の一例について説明する。図８は、指定部２０３によって指定された基準線の一例を示す説明図である。
【００６４】
図８は、指定部２０３によって図３に示した設計対象回路３００に対して指定された基準線８０１を示したものである。この基準線８０１は、図７に示した基準点７０１，７０２，７０３と同様に、領域確保部２０４によって、セル３０１とセル３０６とを接続する信号路、セル３０２とセル３０５とを接続する信号路、およびセル３０３とセル３０４とを接続する信号路の配線領域を確保する際の基準となる。
【００６５】
（領域確保部２０４によって確保された配線領域の一例）
つぎに、領域確保部２０４によって確保された配線領域の一例について説明する。図９は、領域確保部２０４によって確保された配線領域の一例を示す説明図である。
【００６６】
図９は、領域確保部２０４によって図３に示した設計対象回路３００に対して確保された配線領域９０１を示したものである。図９に示すように、配線領域９０１は、図７に示した基準点７０１，７０２，７０３および図８に示した基準線８０１に沿った方向に確保されている。
【００６７】
このように、この発明の実施の形態にかかるレイアウト設計装置１００は、基準点または基準線をユーザに指定させるだけといった簡単な操作をおこなわせることによって、セル間を接続する信号路の配線領域を確保することができる。
【００６８】
（領域変更部２０５によって変更された配線領域の一例）
つぎに、領域変更部２０５によって変更された配線領域の一例について説明する。図１０は、領域変更部２０５によって変更された配線領域の一例を示す説明図である。
【００６９】
図１０は、領域変更部２０５によって変更された配線領域１００１を示したものである。図１０に示すように、配線領域１００１は、図７に示した基準点７０１，７０２，７０３および図８に示した基準線８０１に沿った方向に確保されているだけでなく、配線領域に余裕を持たせることによって、追加される配線が迂回されることを防止したり、配線間隔を広げたりすることができるように、遅延、電力、配線混雑度に基づいて、図９に示した配線領域９０１よりも大きい面積となっている。このように、この発明の実施の形態にかかるレイアウト設計装置１００は、遅延、電力、配線混雑度に基づいて、既に確保されている配線領域を自動的に変更することができる。
【００７０】
（配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例）
つぎに、配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例について説明する。図１１は、配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例を示す説明図である。
【００７１】
図１１に示すように、設計対象回路３００において、セル３０１とセル３０６とを接続する信号路１１０１、セル３０２とセル３０５とを接続する信号路１１０２、およびセル３０３とセル３０４とを接続する信号路１１０３は、それぞれ、配線部２０６によって、図１０に示したように変更された配線領域１００１内に配線されている。
【００７２】
このように、この発明の実施の形態にかかるレイアウト設計装置１００は、ユーザによる基準点７０１，７０２，７０３または基準線８０１の指定に基づいて確保および変更された配線領域１００１内に、セル間を接続する信号路を配線することができる。
【００７３】
（レイアウトが変更された設計対象回路３００の一例）
つぎに、レイアウトが変更された設計対象回路３００の一例について説明する。図１２は、レイアウトが変更された設計対象回路３００の一例を示す説明図である。
【００７４】
図１２は、図１１に示したように配線処理がおこなわれた後に、レイアウトが変更された設計対象回路３００を示したものである。図１２に示すように、設計対象回路３００は、レイアウトが変更されたことによって、セル１２０１およびセル１２０２が追加されており、さらに、セル１２０１とセル１２０２とを接続するネット１２１０が追加されている。
【００７５】
（領域変更部２０５によって変更された配線領域の一例）
つぎに、領域変更部２０５によって変更された配線領域の一例について説明する。図１３は、領域変更部２０５によって変更された配線領域の一例を示す説明図である。
【００７６】
図１３は、図１２に示したように設計対象回路３００のレイアウトが変更された後に、領域変更部２０５によって変更された配線領域１３０１を示したものである。図１２に示すように、配線領域１３０１は、図７に示した基準点７０１，７０２，７０３および図８に示した基準線８０１に沿った方向に確保されているだけでなく、セル１２０１とセル１２０２とを接続する信号路を配線させる必要から、図１０に示した配線領域１００１よりも大きい面積となっている。
【００７７】
このように、この発明の実施の形態にかかるレイアウト設計装置１００は、設計対象回路３００に変更が生じた場合であっても、既に指定されている基準点または基準線をあらたにユーザに指定させることなく、既に指定されている基準点および基準線に基づいて、既に確保されている配線領域を変更することができる。
【００７８】
（配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例）
つぎに、設計対象回路３００のレイアウトが変更された後に、配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例について説明する。図１４は、設計対象回路３００のレイアウトが変更された後に、配線部２０６によって配線処理がおこなわれた設計対象回路３００の一例を示す説明図である。
【００７９】
図１４に示すように、レイアウトが変更された設計対象回路３００（図１２参照）において、すでに配線領域１３０１内に配線されていた信号路１１０１、信号路１１０２、および信号路１１０３に加えて、セル１２０１とセル１２０２とを接続する信号路１４０１が配線領域１３０１内に配線されている。
【００８０】
このように、この発明の実施の形態にかかるレイアウト設計装置１００は、設計対象回路３００に変更が生じた場合であっても、既に指定されている基準点または基準線をあらたにユーザに指定させることなく、既に指定されている基準点および基準線に基づいて、既に確保されている配線領域を変更したうえで、変更された配線領域内に、セル間を接続する信号路を配線することができる。
【００８１】
（基準線および配線領域の別の一例）
つぎに、基準線および配線領域の別の一例について説明する。図１５は、指定部２０３によって指定された基準線の一例を示す説明図である。一方、図１６は、領域確保部２０４によって確保された配線領域の一例を示す説明図である。
【００８２】
図１５は、設計対象回路３００（図３参照）に対して指定された基準線１５０１を示したものである。一方、図１６は、図１５に示した基準線１５０１に基づいて確保された配線領域９０１を示したものである。このように、本実施の形態にかかるレイアウト設計処理では、配線領域を確保する際の基準となる基準線を斜めに指定させることもできる。そして、斜めに指定された基準線に沿った方向に、配線領域を確保することができる。
【００８３】
以上説明したように、この発明の実施の形態にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置によれば、ネット情報を取得し、取得されたネット情報に基づいて隣接する信号路の配線処理単位を決定し、決定された配線処理単位で隣接する信号路を配線する構成とした。このため、配線処理を含むレイアウト設計において、隣接する信号路を、遅延などのタイミングに基づく配線処理単位で扱うことができる。これにより、信号路の信号到達時間を考慮したグループ化処理をおこなうことができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【００８４】
また、ネット情報に示されているスラック値の差分が所定の閾値よりも少ない場合、かつネット情報に示されている信号到達時間の差分が所定の閾値よりも少ない場合に、隣接する信号路を同一の配線処理単位とする構成とした。このため、配線処理を含むレイアウト設計において、隣接する信号路のうち、遅延などのタイミングを同期させる必要が高い信号路を同一の配線処理単位として扱うことができる。これにより、信号路の信号到達時間を考慮したグループ化処理をおこなうことができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【００８５】
また、基準点または基準線の指定を受け付け、指定された基準点または基準線に沿った方向に、配線領域を確保する構成とした。このため、基準点または基準線といった簡素な情報に基づいて、隣接する信号路の配線領域を確保することができる。これにより基準点または基準線をユーザに指定させるだけで、ユーザの意図した領域に信号路を配線することができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【００８６】
また、遅延、消費電力、および配線混雑度に基づいて、既に確保されている配線領域を変更する構成とした。これにより、たとえば、レイアウト変更が生じ、配線が追加される場合であっても、追加される配線の信号到達時間が他の配線の信号到達時間と同じになるように、追加された配線を、迂回させることなく配線領域に配線させることができる。また、配線同士のノイズの影響を受けることがないように、配線間隔を広げることができる。このように、遅延、消費電力、および配線混雑度に基づいて、既に確保されている配線領域を、自動的に変更することができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【００８７】
また、レイアウト変更情報を取得し、取得されたレイアウト変更情報に基づいて、既に確保されている配線領域を変更する構成とした。このため、レイアウトが変更された場合、基準点または基準線の指定をあらためて受け付けることなく、既に確保されている配線領域を、レイアウトの変更内容に応じて変更することができる。これにより、レイアウトが変更された場合であっても、基準点または基準線をあらためてユーザに指定させることなく、ユーザの意図した領域に信号路を配線することができるため、レイアウト設計における修正作業を削減することができ、結果的に、レイアウト設計期間の短期間化を図ることができるという効果を奏する。
【００８８】
なお、本実施の形態で説明したレイアウト設計プログラムは、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション、ＣＡＤなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体であってもよい。
【００８９】
（付記１）隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定させる決定工程を、コンピュータに実行させることを特徴とするレイアウト設計プログラム。
【００９０】
（付記２）前記決定工程によって決定された配線処理単位で、前記隣接する複数のネットによって接続されたセル間を接続する信号路を配線させる配線工程をさらに含んだことを特徴とする付記１に記載のレイアウト設計プログラム。
【００９１】
（付記３）前記隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付けさせる指定工程と、
前記指定工程によって指定された点または線分に沿った方向に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保させる領域確保工程と、
をさらに含んだことを特徴とする付記１に記載のレイアウト設計プログラム。
【００９２】
（付記４）前記領域確保工程によって確保された配線領域に、前記決定工程によって決定された配線処理単位で、前記信号路を配線させる配線工程をさらに含んだことを特徴とする付記３に記載のレイアウト設計プログラム。
【００９３】
（付記５）前記領域確保工程によって確保された配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更させる領域変更工程をさらに含んだことを特徴とする付記３に記載のレイアウト設計プログラム。
【００９４】
（付記６）前記領域変更工程によって変更された配線領域に、前記決定工程によって決定された配線処理単位で、前記信号路を配線させる配線工程をさらに含んだことを特徴とする付記５に記載のレイアウト設計プログラム。
【００９５】
（付記７）設計対象回路のレイアウト上における、隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付けさせる指定工程と、
前記指定工程によって指定された点または線分に沿った方向に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保させる領域確保工程と、
をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【００９６】
（付記８）前記領域確保工程によって確保された配線領域に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線させる配線工程をさらに含んだことを特徴とする付記７に記載のレイアウト設計プログラム。
【００９７】
（付記９）前記領域確保工程によって確保された配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更させる領域変更工程をさらに含んだことを特徴とする付記７に記載のレイアウト設計プログラム。
【００９８】
（付記１０）設計対象回路のレイアウト上において確保された、隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更させる領域変更工程をコンピュータに実行させることを特徴とするレイアウト設計プログラム。
【００９９】
（付記１１）前記領域変更工程によって変更された配線領域に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線させる配線工程をさらに含んだことを特徴とする付記９または１０に記載のレイアウト設計プログラム。
【０１００】
（付記１２）付記１〜１１のいずれか一つに記載のレイアウト設計プログラムを記録したコンピュータ読み取り可能な記録媒体。
【０１０１】
（付記１３）隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定する決定工程を含んだことを特徴とするレイアウト設計方法。
【０１０２】
（付記１４）設計対象回路のレイアウト上における、隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付ける指定工程と、
前記指定工程によって指定された点または線分に沿った方向に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保する領域確保工程と、
を含んだことを特徴とするレイアウト設計方法。
【０１０３】
（付記１５）設計対象回路のレイアウト上において確保された、隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更する領域変更工程を含んだことを特徴とするレイアウト設計方法。
【０１０４】
（付記１６）隣接する複数のネットによって接続されたセル間を接続する信号路の配線処理単位を、前記隣接する複数のネットに関する情報のうち、スラック値、信号到達時間、起点端子および終点端子の配置座標、名称、角度、概略配線経路、の少なくともいずれか一つに基づいて決定する決定手段を備えたことを特徴とするレイアウト設計装置。
【０１０５】
（付記１７）設計対象回路のレイアウト上における、隣接する複数のネットで接続されたセル間において、点または線分の指定を受け付ける指定手段と、
前記指定手段によって指定された点または線分に沿った方向に、前記隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を確保する領域確保手段と、
を備えたことを特徴とするレイアウト設計装置。
【０１０６】
（付記１８）設計対象回路のレイアウト上において確保された、隣接する複数のネットで接続されたセル間を接続する信号路を配線するための配線領域を、当該配線領域に関する情報のうち、遅延、消費電力、および配線混雑度の少なくともいずれか一つに基づいて変更する領域変更手段を備えたことを特徴とするレイアウト設計装置。
【産業上の利用可能性】
【０１０７】
以上のように、本発明にかかるレイアウト設計プログラム、該プログラムを記録した記録媒体、レイアウト設計方法、およびレイアウト設計装置は、半導体集積回路のレイアウト設計に有用であり、特に、配線本数が膨大な数に及ぶ半導体集積回路のレイアウト設計に適している。
【図面の簡単な説明】
【０１０８】
【図１】この発明の実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。
【図２】この発明の実施の形態にかかるレイアウト設計装置の機能的構成を示すブロック図である。
【図３】この発明の実施の形態にかかるレイアウト設計装置に用いられる設計対象回路の一例を示す説明図である。
【図４】この発明の実施の形態にかかるレイアウト設計装置に用いられるネット情報の一例を示す説明図である。
【図５】決定部による配線処理単位の決定処理の手順の一例を示すフローチャートである。
【図６】この発明の実施の形態にかかるレイアウト設計装置によるレイアウト設計処理の手順の一例を示すフローチャートである。
【図７】指定部によって指定された基準点の一例を示す説明図である。
【図８】指定部によって指定された基準線の一例を示す説明図である。
【図９】領域確保部によって確保された配置領域の一例を示す説明図である。
【図１０】領域変更部によって変更された配線領域の一例を示す説明図である。
【図１１】配線部によって配線処理がおこなわれた設計対象回路の一例を示す説明図である。
【図１２】レイアウトが変更された設計対象回路の一例を示す説明図である。
【図１３】領域変更部によって変更された配線領域の一例を示す説明図である。
【図１４】設計対象回路のレイアウトが変更された後に、配線部によって配線処理がおこなわれた設計対象回路の一例を示す説明図である。
【図１５】指定部によって指定された基準線の一例を示す説明図である。
【図１６】領域確保部によって確保された配線領域の一例を示す説明図である。
【符号の説明】
【０１０９】
１００  レイアウト設計装置
２０１  取得部
２０２  決定部
２０３  指定部
２０４  領域確保部
２０５  領域変更部
２０６  配線部
２０７  表示部
３００  設計対象回路
【図１】
2008204349.tif 000003
【図２】
2008204349.tif 000004
【図３】
2008204349.tif 000005
【図４】
2008204349.tif 000006
【図５】
2008204349.tif 000007
【図６】
2008204349.tif 000008
【図７】
2008204349.tif 000009
【図８】
2008204349.tif 000010
【図９】
2008204349.tif 000011
【図１０】
2008204349.tif 000012
【図１１】
2008204349.tif 000013
【図１２】
2008204349.tif 000014
【図１３】
2008204349.tif 000015
【図１４】
2008204349.tif 000016
【図１５】
2008204349.tif 000017
【図１６】
2008204349.tif 000018