(57)【要約】【課題】クリティカルな信号等の所定の信号の配線長に着目して配線レイアウトを早い段階で変更することにより、信頼性の高い半導体集積回路装置を短期間で設計するための設計支援プログラム等を提供すること。【解決手段】本発明の半導体集積回路装置の設計支援プログラムは、配置配線の対象となる回路に含まれるセルを配置するセル配置手段１２と、配置配線の対象となる回路に含まれるネットを配線するネット配線手段１４と、配置配線後のレイアウトに基づいて、前記ネットの配線レイアウトを変更する配線レイアウト変更手段１６としてコンピュータを機能させる。ネット配線手段１４は、所定のネットの配線を他のネットの配線よりも優先して行う。配線レイアウト変更手段１６は、前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更する。【選択図】図１
2009093365.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路装置の設計を支援する設計支援プログラムであって、
配置配線の対象となる回路に含まれるセルを配置するセル配置手段と、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線手段と、
配線した前記ネットの配線レイアウトを変更する配線レイアウト変更手段としてコンピュータを機能させ、
前記ネット配線手段は、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更手段は、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項２】
請求項１において、
前記ネット配線手段は、
前記所定のネットの配線長が前記規格値以下となるように前記所定のネットの配線を行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項３】
請求項１又は２において、
前記セル配置手段は、
前記所定のネットが接続されているセルの配置を他のセルの配置よりも優先して行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項４】
請求項１乃至３のいずれかにおいて、
複数の前記所定のネットに優先順位を設定するネット優先順位設定手段としてコンピュータを機能させ、
前記ネット配線手段は、
前記優先順位に従い、一の前記所定のネットを配線した後、他の前記所定のネットを配線する処理を繰り返し行い、
前記配線レイアウト変更手段は、
前記優先順位に従い、一の前記所定のネットの配線レイアウトを変更した後、他の前記所定のネットの配線レイアウトを変更する処理を繰り返し行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項５】
請求項４において、
前記セル配置手段は、
前記優先順位に従い、一の前記所定のネットに接続されているセルを配置した後、他の前記所定のネットに接続されているセルを配置する処理を繰り返し行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記セル配置手段は、
前記所定のネットに接続されているセルを配置し、前記配線レイアウト変更手段が前記所定のネットの配線レイアウトを変更した後に、他のセルの配置を行い、
前記ネット配線手段は、
前記所定のネットを配線し、前記配線レイアウト変更手段が前記所定のネットの配線レイアウトを変更した後に、他のネットの配線を行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項７】
請求項１乃至６のいずれかにおいて、
配置配線の対象となる回路に含まれるセルを複数のグループに分割し、当該グループに優先順位を設定するセルグループ優先順位設定手段としてコンピュータを機能させ、
前記セル配置手段は、
前記各グループに設定された優先順位に従い、一のグループに属するセルを配置し、前記ネット配線手段が当該グループに属するセルに接続されているネットを配線した後に、他のグループに属するセルを配置する処理を繰り返し行い、
前記ネット配線手段は、
前記各グループに設定された優先順位に従い、一のグループに属するセルに接続されているネットを配線し、前記セル配置手段が他のグループに属するセルを配置した後に、当該他のグループに属するセルに接続されているネットを配線する処理を繰り返し行うことを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項８】
請求項１乃至７のいずれかにおいて、
前記配線レイアウト変更手段は、
配線長が所定の規格値よりも大きい前記所定のネットが所与の信号の伝搬経路における終端のセルに接続されている場合には、当該終端のセルの配置を変更することを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項９】
請求項１乃至８のいずれかにおいて、
指定した信号の伝搬経路上に存在するネットを前記所定のネットとして抽出するネット抽出手段としてコンピュータを機能させることを特徴とする半導体集積回路装置の設計支援プログラム。
【請求項１０】
半導体集積回路装置の設計を支援する設計支援システムであって、
配置配線の対象となる回路に含まれるセルを配置するセル配置手段と、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線手段と、
配置配線後のレイアウトに基づいて、前記ネットの配線レイアウトを変更する配線レイアウト変更手段と、を含み、
前記ネット配線手段は、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更手段は、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする半導体集積回路装置の設計支援システム。
【請求項１１】
配置配線の対象となる回路に含まれるセルを配置するセル配置ステップと、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線ステップと、
配置配線後のレイアウトに基づいて、前記ネットの配線レイアウトを変更する配線レイアウト変更ステップと、を含み、
前記ネット配線ステップにおいて、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更ステップにおいて、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする半導体集積回路装置の設計方法。
【請求項１２】
請求項１乃至９のいずれかに記載された半導体集積回路装置の設計支援プログラム、請求項１０に記載された半導体集積回路装置の設計支援システム又は請求項１１に記載された半導体集積回路装置の設計方法を用いて設計製造されたことを特徴とする半導体集積回路装置。
【請求項１３】
請求項１２に記載された半導体集積回路装置と、
前記半導体集積回路装置の処理対象となるデータの入力手段と、
前記半導体集積回路装置により処理されたデータを出力するための出力手段とを含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路装置の設計プログラム、半導体集積回路装置の設計支援システム、半導体集積回路装置の設計方法、半導体集積回路装置及び電子機器に関する。
【背景技術】
【０００２】
近年、ＬＳＩのプロセス微細化に伴い集積度が飛躍的に向上した結果、配線密度がますます高くなる傾向がある。配線密度が高くなると配線が隣接する信号間における干渉が大きくなる。そして、論理セルの入力信号の電圧レベルが論理しきい値付近にある時に、隣の信号配線の影響を受けて入力信号の電圧レベルが瞬時的に変化すると論理セルの出力信号に短いパルスが発生する。このような短いパルスがフリップフロップに入力されるクロック信号や非同期リセット信号に発生すると回路が誤動作する可能性がある。そこで、クロック信号や非同期リセット信号等のクリティカルな信号をドライブするセルには駆動能力の比較的大きいセルが使用されるように制約条件を設定して論理合成が行われている。また、配置配線後に、クリティカルな信号に関しては、遷移時間（スルーレート）の許容値を小さく設定してタイミング検証が行われている。
【特許文献１】特開２００３−１８６９３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、タイミング検証はすべてのセルの配置配線が終わった後に行われるため、クリティカルな信号のスルーレートにエラーがあるとクリティカルな信号の配線が短くなるように配置配線をやり直す作業に時間を要する場合もある。また、タイミング検証の制約に抜けがあるとクリティカルな信号に関する不具合を見逃し、結果として実機での動作確認ではじめてその不具合を発見するに至る場合もある。一方、クリティカルな信号の両側を配線禁止領域にしたり、クリティカルな信号を電源ラインでガードしたりすることも考えられるが、配線可能領域が減少するため他の配線が困難になり配線作業に時間を要したり、他の配線ができない場合にはチップサイズの増大を招く場合もある。いずれの場合でも、結果としてチップコストが増大する原因となっていた。
【０００４】
本発明は、以上のような問題点に鑑みてなされたものであり、クリティカルな信号等の所定の信号の配線長に着目して配線レイアウトを早い段階で変更することにより、信頼性の高い半導体集積回路装置を短期間で設計するための設計支援プログラム等を提供することを目的とする。
【課題を解決するための手段】
【０００５】
（１）本発明は、
半導体集積回路装置の設計を支援する設計支援プログラムであって、
配置配線の対象となる回路に含まれるセルを配置するセル配置手段と、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線手段と、
配線した前記ネットの配線レイアウトを変更する配線レイアウト変更手段としてコンピュータを機能させ、
前記ネット配線手段は、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更手段は、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする。
【０００６】
所定のネットは、ユーザが指定したネットであってもよいし、所定の規則に従ってネットリストから自動的に抽出されたネットであってもよい。例えば、ユーザーが指定した信号（クロック信号や非同期リセット信号等）の伝搬経路上に存在するネットを抽出して所定のネットとしてもよいし、“ＣＬＫ”や“ＲＳＴ”の文字列を含むネット名を有するネットを自動抽出して所定のネットとしてもよい。また、所定のネットは複数存在してもよい。
【０００７】
配線レイアウト変更手段は、配線長が所定の規格値よりも大きいネットの配線をやり直すことにより、又は、当該ネットに接続されているセルの配置を変更することにより、所定のネットの配線レイアウトを変更するようにしてもよい。また、配線レイアウト変更手段は、配線長が所定の規格値よりも大きいネットに１つ以上のバッファやインバータを挿入することにより当該ネットを２つ以上に分割するように配線レイアウトを変更してもよい。また、配線レイアウト変更手段は、配線長が所定の規格値よりも大きいネットの配線に平行なシールド配線（電源電位やグランド電位が供給される配線）を当該ネット配線の両側又は片側に挿入することにより、所定のネットの配線レイアウトを変更するようにしてもよい。また、当該ネット配線の両側又は片側にシールド配線分の隙間を用意して配線禁止領域に設定するようにしてもよい。さらに、配線レイアウト変更手段は、配線のやり直し、セルの配置変更、バッファ等の挿入、シールド配線の挿入、配線禁止領域の設定等の方法からユーザーが指定した方法により所定のネットの配線レイアウトを変更するようにしてもよい。
【０００８】
規格値はネットの配線に許容される最大配線長を規定する値であり、ネットを伝搬する信号の周波数、製造プロセス、ゲート占有率等により決定するようにしてもよい。また、規格値はユーザーが可変に設定できるようにしてもよい。
【０００９】
本発明によれば、優先配線された所定のネットの配線長に着目し、複雑な遅延計算を行うことなく、配線長が所定の規格値よりも大きいネットの配線レイアウトを変更する。従って、すべてのセル及びネットの配置配線が終了する前に、所定のネットについては優先的に短い配線にすることができる。その結果、クロック信号や非同期リセット信号等のクリティカルな信号の伝搬経路上に存在するネットを所定のネットとして指定しておけば、クリティカルな信号が他の信号の影響を受けにくくすることができる。また、クリティカルな信号の伝搬経路上に存在するネットの配線が優先的に行われるので、配線長が規格値よりも大きい場合でも配線レイアウトの変更が比較的容易である。また、クリティカルな信号の伝搬経路上に存在するネットの配線が短くなるので、クリティカルな信号の周辺を配線禁止領域にしたりシールド配線を行っても配線領域の増加が少なくて済む。さらに、クリティカルな信号の伝搬経路上に存在するネットの配線が短かければ不具合が起こりにくく、仮にタイミング検証における制約条件の設定漏れがあっても問題ない。従って、本発明によれば、信頼性の高い半導体集積回路装置を短期間で提供することができる。
【００１０】
（２）本発明の半導体集積回路装置の設計支援プログラムにおいて、
前記ネット配線手段は、
前記所定のネットの配線長が前記規格値以下となるように前記所定のネットの配線を行うことを特徴とする。
【００１１】
本発明によれば、所定のネットについて配線長が規格値以下となるように優先配線するので、所定のネットの配線をより適切に短くすることができる。
【００１２】
（３）本発明の半導体集積回路装置の設計支援プログラムにおいて、
前記セル配置手段は、
前記所定のネットが接続されているセルの配置を他のセルの配置よりも優先して行うことを特徴とする。
【００１３】
本発明によれば、所定のネットが接続されているセルを優先配置するのでこれらのセルは近くに配置されやすく、所定のネットの配線をより適切に短くすることができる。
【００１４】
（４）本発明の半導体集積回路装置の設計支援プログラムは、
複数の前記所定のネットに優先順位を設定するネット優先順位設定手段としてコンピュータを機能させ、
前記ネット配線手段は、
前記優先順位に従い、一の前記所定のネットを配線した後、他の前記所定のネットを配線する処理を繰り返し行い、
前記配線レイアウト変更手段は、
前記優先順位に従い、一の前記所定のネットの配線レイアウトを変更した後、他の前記所定のネットの配線レイアウトを変更する処理を繰り返し行うことを特徴とする。
【００１５】
複数のネットに同じ優先順位を設定してもよい。例えば、一の信号（例えば、第１のクロック信号）の伝搬経路上に存在するすべてのネットに同じ優先順位（第１の優先順位）を設定し、他の信号（例えば、第２のクロック信号）の伝搬経路上に存在するすべてのネットに同じ優先順位（第２の優先順位）を設定するようにしてもよい。また、規格値が小さいネットほど優先順位を高く設定してもよい。
【００１６】
前記ネット配線手段は、前記優先順位が高い前記所定のネットから順に、一の前記所定のネットを配線した後、他の前記所定のネットを配線する処理を繰り返し行い、前記配線レイアウト変更手段は、前記優先順位が高い前記所定のネットから順に、一の前記所定のネットの配線レイアウトを変更した後、他の前記所定のネットの配線レイアウトを変更する処理を繰り返し行うようにしてもよい。
【００１７】
また、前記ネット配線手段は、前記優先順位に従い、一の前記所定のネットを配線し、前記配線レイアウト変更手段が当該一の前記所定のネットの配線レイアウトを変更した後に、他の前記所定のネットを配線する処理を繰り返し行い、前記配線レイアウト変更手段は、前記優先順位に従い、一の前記所定のネットの配線レイアウトを変更し、前記ネット配線手段が他の前記所定のネットを配線した後に、当該他の前記所定のネットの配線レイアウトを変更する処理を繰り返し行うようにしてもよい。
【００１８】
本発明によれば、優先順位に従って所定のネットの配線及び配線レイアウト変更を行うので、優先順位がより高いネットの配線ほどより適切に短くすることができる。例えば、クリティカルな信号が複数ある場合には、他の信号の影響をより受けやすい信号の伝搬経路上に存在するネットほど優先順位を高く設定し、配線及び配線レイアウト変更を優先的に行うことができる。また、クリティカルな信号の伝搬経路上に存在するネットの中でも、小さい規格値が設定されているネットやファンアウト数が多いネット（分岐の数が多いネット）ほど高い優先順位を設定しておくことにより、これらのネットの配線及び配線レイアウト変更を優先的に行うことができる。
【００１９】
（５）本発明の半導体集積回路装置の設計支援プログラムにおいて、
前記セル配置手段は、
前記優先順位に従い、一の前記所定のネットに接続されているセルを配置した後、他の前記所定のネットに接続されているセルを配置する処理を繰り返し行うことを特徴とする。
【００２０】
前記セル配置手段は、前記優先順位が高い前記所定のネットから順に、一の前記所定のネットに接続されているセルを配置した後、他の前記所定のネットに接続されているセルを配置する処理を繰り返し行うようにしてもよい。
【００２１】
本発明によれば、所定のネットの各々に設定された優先順位に従って各ネットに接続されているセルの配置を行う。すなわち、優先順位がより高いネットに接続されているセルをより優先的に配置するので、優先順位の高いネットほどより適切に短くすることができる。
【００２２】
（６）本発明の半導体集積回路装置の設計支援プログラムは、
前記セル配置手段は、
前記所定のネットに接続されているセルを配置し、前記配線レイアウト変更手段が前記所定のネットの配線レイアウトを変更した後に、他のセルの配置を行い、
前記ネット配線手段は、
前記所定のネットを配線し、前記配線レイアウト変更手段が前記所定のネットの配線レイアウトを変更した後に、他のネットの配線を行うことを特徴とする。
【００２３】
本発明によれば、所定のネットに接続されているセルの配置、当該所定のネットの配線及び配線レイアウトの変更を行った後に、他のネットに接続されているセルの配置及び当該他のネットの配線を行う。すなわち、所定のネットの配線レイアウトを変更する際に他のネットに接続されているセルが配置されていないので、配線レイアウト変更の自由度が向上する。従って、所定のネットの配線をより適切に短くすることができる。
【００２４】
（７）本発明の半導体集積回路装置の設計支援プログラムは、
配置配線の対象となる回路に含まれるセルを複数のグループに分割し、当該グループに優先順位を設定するセルグループ優先順位設定手段としてコンピュータを機能させ、
前記セル配置手段は、
前記各グループに設定された優先順位に従い、一のグループに属するセルを配置し、前記ネット配線手段が当該グループに属するセルに接続されているネットを配線した後に、他のグループに属するセルを配置する処理を繰り返し行い、
前記ネット配線手段は、
前記各グループに設定された優先順位に従い、一のグループに属するセルに接続されているネットを配線し、前記セル配置手段が他のグループに属するセルを配置した後に、当該他のグループに属するセルに接続されているネットを配線する処理を繰り返し行うことを特徴とする。
【００２５】
例えば、第１のクロック信号で動作する同期回路に含まれるセルを第１のグループとして第１の優先順位を設定し、第１のクロック信号よりも低い周波数の第２のクロック信号で動作する同期回路に含まれるセルを第２のグループとして第２の優先順位を設定するようにしてもよい。
【００２６】
前記セル配置手段は、前記各グループに設定された優先順位の高いグループから順に、一のグループに属するセルを配置し、前記ネット配線手段が当該グループに属するセルに接続されているネットを配線した後に、他のグループに属するセルを配置する処理を繰り返し行うようにしてもよい。
【００２７】
前記ネット配線手段は、前記各グループに設定された優先順位の高いグループから順に、一のグループに属するセルに接続されているネットを配線し、前記セル配置手段が他のグループに属するセルを配置した後に、当該他のグループに属するセルに接続されているネットを配線する処理を繰り返し行うようにしてもよい。
【００２８】
本発明によれば、セルを複数のグループに分割して優先順位を設定し、優先順位に従ってグループ単位で配置配線を行う。さらに、１つのグループに含まれるセルのうち、所定のネットに接続されているセルの配置及び所定のネットの配線を優先的に行う。従って、優先順位がより高いグループに属するセルに接続された所定のネットの配線ほどより適切に短くすることができる。例えば、動作周波数の高いセルほど優先順位の高いグループに属するように分割すれば、タイミングの制約が厳しく、かつ、クリティカルな信号の伝搬経路上に存在するネットほど適切に短くすることができる。
【００２９】
（８）本発明の半導体集積回路装置の設計支援プログラムにおいて、
前記配線レイアウト変更手段は、
配線長が所定の規格値よりも大きい前記所定のネットが所与の信号の伝搬経路における終端のセルに接続されている場合には、当該終端のセルの配置を変更することを特徴とする。
【００３０】
所与の信号の伝搬経路における終端のセルは、例えば、フリップフロップやラッチであってもよい。
【００３１】
本発明によれば、所定のネットの配線レイアウトを変更する際に、終端のセルの配置を変更する。すなわち、終端のセルの配置を変更することにより所定のネットの配線を短くする。従って、バッファ等を挿入することなく所定のネットの配線長を規格値以下にすることができるので、チップサイズの増大を抑制することができる。
【００３２】
（９）本発明の半導体集積回路装置の設計支援プログラムは、
指定した信号の伝搬経路上に存在するネットを前記所定のネットとして抽出するネット抽出手段としてコンピュータを機能させることを特徴とする。
【００３３】
本発明によれば、所定のネットとして、指定した信号の伝搬経路上に存在するネットを自動的に抽出する。従って、指定した信号の伝搬経路上に存在するネットを優先配線することにより、より適切に短くすることができる。
【００３４】
（１０）本発明は、
半導体集積回路装置の設計を支援する設計支援システムであって、
配置配線の対象となる回路に含まれるセルを配置するセル配置手段と、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線手段と、
配置配線後のレイアウトに基づいて、前記ネットの配線レイアウトを変更する配線レイアウト変更手段と、を含み、
前記ネット配線手段は、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更手段は、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする。
【００３５】
（１１）本発明は、
配置配線の対象となる回路に含まれるセルを配置するセル配置ステップと、
前記配置配線の対象となる回路に含まれるネットを配線するネット配線ステップと、
配置配線後のレイアウトに基づいて、前記ネットの配線レイアウトを変更する配線レイアウト変更ステップと、を含み、
前記ネット配線ステップにおいて、
所定のネットの配線を他のネットの配線よりも優先して行い、
前記配線レイアウト変更ステップにおいて、
前記所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、前記所定のネットの配線レイアウトを変更することを特徴とする半導体集積回路装置の設計方法である。
【００３６】
（１２）本発明は、
上記のいずれかに記載された半導体集積回路装置の設計支援プログラム、上記に記載された半導体集積回路装置の設計支援システム又は上記に記載された半導体集積回路装置の設計方法を用いて設計製造されたことを特徴とする半導体集積回路装置である。
【００３７】
（１３）本発明は、
上記に記載された半導体集積回路装置と、
前記半導体集積回路装置の処理対象となるデータの入力手段と、
前記半導体集積回路装置により処理されたデータを出力するための出力手段とを含むことを特徴とする電子機器である。
【発明を実施するための最良の形態】
【００３８】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【００３９】
１．半導体集積回路装置の設計支援システム、半導体集積回路装置の設計支援プログラム
図１は、本実施形態の半導体集積回路装置の設計支援システム及び設計プログラムについて説明するための図である。本実施形態の半導体集積回路装置の設計支援システム１は、当該構成要素（各部）の一部を省略した構成としてもよい。
【００４０】
操作部３０は、ユーザーの操作等をデータとして入力するためのものであり、その機能は、例えばキーボードやマウス等のハードウェアにより実現できる。
【００４１】
記憶部４０は、処理部１０や通信部８０などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００４２】
記憶部４０は、ライブラリ情報記憶部４２を含む。
【００４３】
ライブラリ情報記憶部４２は、設計データにより得られたライブラリ情報（論理回路情報、レイアウト情報、接続情報）や、生成されたネットリストの情報等が記憶されている。
【００４４】
情報記憶媒体５０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ等）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。
【００４５】
また情報記憶媒体５０には、本実施形態の各手段としてコンピュータを機能させるプログラムや補助データ（付加データ）が記憶される。
【００４６】
処理部１０は、この情報記憶媒体５０に格納されるプログラム（設計支援プログラム）や情報記憶媒体５０から読み出されたデータなどに基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体５０には、本実施形態の各手段としてコンピュータを機能させるためのプログラム（各手段の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００４７】
表示部６０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴディスプレイ、ＬＣＤ（液晶ディスプレイ）、ＯＥＬＤ（有機ＥＬディスプレイ）、ＰＤＰ（プラズマディスプレイパネル）、タッチパネル型ディスプレイなどのハードウェアにより実現できる。
【００４８】
音出力部７０は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどのハードウェアにより実現できる。
【００４９】
通信部８０は、外部（例えばサーバ装置や他の端末機）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００５０】
処理部１０（プロセッサ）は、操作部３０からの操作データやプログラムなどに基づいて、各種処理などを行う。この処理部１０は記憶部４０をワーク領域として各種処理を行う。処理部１０の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、アプリケーションプログラム、ＯＳ（例えば汎用ＯＳ等）により実現できる。
【００５１】
処理部１０は、セル配置手段１２、ネット配線手段１４、配線レイアウト変更手段１６を含む。処理部１０は、さらに、ネット抽出手段１８、ネット優先順位設定手段２０、セルグループ優先順位設定手段２２を含んでもよい。
【００５２】
セル配置手段１２は、配置配線の対象となる回路に含まれるセルを配置する処理を行う。
【００５３】
また、セル配置手段１２は、所定のネットが接続されているセルの配置を他のセルの配置よりも優先して行うようにしてもよい。
【００５４】
また、セル配置手段１２は、ネット優先順位設定手段２０が設定した優先順位に従い、一の所定のネットに接続されているセルを配置した後、他の所定のネットに接続されているセルを配置する処理を繰り返し行うようにしてもよい。
【００５５】
また、セル配置手段１２は、所定のネットに接続されているセルを配置し、配線レイアウト変更手段１６が所定のネットの配線レイアウトを変更した後に、他のセルの配置を行うようにしてもよい。
【００５６】
また、セル配置手段１２は、セルグループ優先順位設定手段２２によって各グループに設定された優先順位に従い、一のグループに属するセルを配置し、ネット配線手段１４が当該グループに属するセルに接続されているネットを配線した後に、他のグループに属するセルを配置する処理を繰り返し行うようにしてもよい。
【００５７】
ネット配線手段１４は、配置配線の対象となる回路に含まれるネットを配線する処理を行う。ここで、ネット配線手段１４は、所定のネットの配線を他のネットの配線よりも優先して行う。
【００５８】
また、ネット配線手段１４は、所定のネットの配線長が規格値以下となるように所定のネットの配線を行うようにしてもよい。
【００５９】
また、ネット配線手段１４は、ネット優先順位設定手段２０が設定した優先順位に従い、一の所定のネットを配線した後、他の所定のネットを配線する処理を繰り返し行うようにしてもよい。
【００６０】
また、ネット配線手段１４は、所定のネットを配線し、配線レイアウト変更手段１６が所定のネットの配線レイアウトを変更した後に、他のネットの配線を行うようにしてもよい。
【００６１】
また、ネット配線手段１４は、セルグループ優先順位設定手段２２によって各グループに設定された優先順位に従い、一のグループに属するセルに接続されているネットを配線し、セル配置手段１２が他のグループに属するセルを配置した後に、当該他のグループに属するセルに接続されているネットを配線する処理を繰り返し行うようにしてもよい。
【００６２】
配線レイアウト変更手段１６は、配線した前記ネットの配線レイアウトを変更する処理を行う。ここで、配線レイアウト変更手段１６は、ネット配線手段１４が優先配線した所定のネットの配線長を計算し、配線長が所定の規格値よりも大きい場合には、当該所定のネットの配線レイアウトを変更する処理を行う。
【００６３】
また、配線レイアウト変更手段１６は、ネット優先順位設定手段２０が設定した優先順位に従い、一の所定のネットの配線レイアウトを変更した後、他の所定のネットの配線レイアウトを変更する処理を繰り返し行うようにしてもよい。
【００６４】
また、配線レイアウト変更手段１６は、配線長が所定の規格値よりも大きい所定のネットが所与の信号の伝搬経路における終端のセルに接続されている場合には、当該終端のセルの配置を変更するようにしてもよい。
【００６５】
ネット抽出手段１８は、指定した信号の伝搬経路上に存在するネットを所定のネットとして抽出する処理を行う。
【００６６】
ネット優先順位設定手段２０は、複数の所定のネットに優先順位を設定する処理を行う。
【００６７】
セルグループ優先順位設定手段２２は、配置配線の対象となる回路に含まれるセルを複数のグループに分割し、当該グループに優先順位を設定する処理を行う。
【００６８】
本実施形態の半導体集積回路装置の設計支援システム又は設計支援プログラムによれば、優先配線された所定のネットの配線長に着目し、複雑な遅延計算を行うことなく、配線長が所定の規格値よりも大きいネットの配線レイアウトを変更する。従って、すべてのセル及びネットの配置配線が終了する前に、所定のネットについては優先的に短い配線にすることができる。その結果、クロック信号や非同期リセット信号等のクリティカルな信号の伝搬経路上に存在するネットを所定のネットとして指定しておけば、クリティカルな信号が他の信号の影響を受けにくくすることができる。また、クリティカルな信号の伝搬経路上に存在するネットの配線が優先的に行われるので、配線長が規格値よりも大きい場合でも配線レイアウトの変更が比較的容易である。また、クリティカルな信号の伝搬経路上に存在するネットの配線が短くなるので、クリティカルな信号の周辺を配線禁止領域にしたりシールド配線を行っても配線領域の増加が少なくて済む。さらに、クリティカルな信号の伝搬経路上に存在するネットの配線が短ければ不具合が起こりにくく、仮にタイミング検証における制約条件の設定漏れがあっても問題ない。従って、本実施形態の半導体集積回路装置の設計支援システム又は設計支援プログラムによれば、信頼性の高い半導体集積回路装置を短期間で提供することができる。
【００６９】
なお、本実施形態の各手段としてコンピュータを機能させるためのプログラム（設計支援プログラム）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部８０を介して情報記憶媒体５０（記憶部４０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００７０】
２．半導体集積回路装置の設計方法、半導体集積回路装置の設計支援プログラムの処理手順
２．１  第１の実施例
図２は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例を説明するためのフローチャートである。以下、図２のフローチャートについて説明する。
【００７１】
まず、所定の信号を指定する(ステップＳ１０)。ここで、その伝搬経路上に存在するすべてのネットの配線長を短くしたい信号を所定の信号として指定する。例えば、他の信号とのクロストークを避けたいクロック信号や非同期リセット信号等のクリティカルな信号を所定の信号として指定してもよい。所定の信号は複数指定するようにしてもよい。また、所定の信号は、ユーザが直接指定してもよいし、所定の規則に従って所定の信号をネットリストから自動的に抽出して指定するようにしてもよい。例えば、リセット信号及びクロック信号の信号名はそれぞれその一部に必ず“ＲＳＴ”及び“ＣＬＫ”の文字列を含むという命名規則が存在する場合には、“ＲＳＴ”又は“ＣＬＫ”の文字列を一部に含む信号を自動抽出することにより、すべてのリセット信号及びクロック信号を指定するようにしてもよい。
【００７２】
次に、ステップＳ１０で指定した所定の信号の伝搬経路上に存在するセル及びネットを抽出する（ステップＳ１２）。
【００７３】
次に、ステップＳ１２で抽出した各セルを配置する（ステップＳ１４）。すなわち、ステップＳ１２で抽出した各セルを他のセル（ステップＳ１０で指定した所定の信号の伝搬経路上に存在しないセル）よりも優先して配置する。
【００７４】
次に、他のセル（ステップＳ１０で指定した所定の信号の伝搬経路上に存在しないセル）を配置する（ステップＳ１６）。
【００７５】
次に、ステップＳ１２で抽出した各ネットを配線する（ステップＳ１８）。すなわち、ステップＳ１２で抽出した各ネットを他のネット（ステップＳ１０で指定した所定の信号の伝搬経路上に存在しないネット）よりも優先して配線する。
【００７６】
次に、ステップＳ１２で抽出した各ネット（すなわち、ステップＳ１８で優先配線した各ネット）の配線長を計算する（ステップＳ２０）。
【００７７】
次に、ステップＳ１２で抽出した各ネット（すなわち、ステップＳ１８で優先配線した各ネット）のうち、ステップＳ２０で計算した配線長についてあらかじめ設定された規格値よりも大きいネットが存在するか否かを判断する（ステップＳ２２）。例えば、２０μｍの規格値が設定されている場合、２０μｍよりも大きい配線長を有するネットが存在するか否かが判断される。ここで、すべてのネットに対して同一の規格値が設定されていてもよいし、ネット毎に異なる規格値が設定されていてもよい。
【００７８】
ステップＳ２２で規格値よりも大きい配線長のネットが存在すると判断した場合（ステップＳ２２でＹｅｓの場合）、規格値よりも大きい配線長のネットの配線レイアウトを変更し（ステップＳ２４）、変更後の配線レイアウトに対して再び規格値よりも大きい配線長のネットが存在するか否かを判断する（ステップＳ２２）。ステップＳ２４の処理において、規格値よりも大きい配線長のネットの配線をやり直してもよいし、当該ネットに接続されているセルの配置を変更するようにしてもよい。また、当該ネットに１つ以上のバッファやインバータを挿入することにより当該ネットを２つ以上に分割するようにしてもよい。また、当該ネットの配線に平行なシールド配線（電源電位やグランド電位が供給される配線）を当該ネット配線の両側又は片側に挿入するようにしてもよい。また、当該ネット配線の両側又は片側にシールド配線分の隙間を用意して配線禁止領域に設定するようにしてもよい。さらに、配線のやり直し、セルの配置変更、バッファ等の挿入、シールド配線の挿入、配線禁止領域の設定等のレイアウト変更処理からユーザが指定した処理を選択可能に構成してもよい。
【００７９】
最後に、ステップＳ２２で規格値よりも大きい配線長のネットが存在しないと判断した場合（ステップＳ２２でＮｏの場合）は、他のネット（ステップＳ１０で指定した所定の信号の伝搬経路上に存在しないネット）を配線する（ステップＳ２６）。
【００８０】
図３〜図１０は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例における処理をより具体的に説明するための図である。
【００８１】
図３は、第１の実施例を適用して配置配線を行う対象となる回路（半導体集積回路装置の一部の回路）の一例を示す図である。
【００８２】
配置配線の対象となる回路（配置配線対象回路）１００は、４つのバッファセル（１０２、１０６、１１４、１２４）、４つのインバータセル（１１６、１１８、１２０、１３２）、３つのＡＮＤセル（１０４、１１０、１２２）、１つのＯＲセル（１２８）、４つのフリップフロップ（ＦＦ）セル（１０８、１１２、１２６、１３０）を含んで構成されている。バッファ１０２の入力にはクロック信号ＣＬＫ１が供給され、バッファ１１４の入力には非同期リセット信号ＲＳＴ１が供給されている。ここで、クロック信号ＣＬＫ１及びリセット信号ＲＳＴ１の伝搬経路上のネットにノイズが重畳すると配置配線対象回路１００が誤動作する可能性がある。そのため、他の信号とのクロストークを低減するためにクロック信号ＣＬＫ１及びリセット信号ＲＳＴ１の伝搬経路上の各ネットの配線はできるだけ短い方が望ましい。
【００８３】
そこで、まず、図２のステップＳ１０において、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１を指定する。そうすると、図２のステップＳ１２の処理において、配置配線対象回路１００をトレースし、クロック信号ＣＬＫ１の伝搬経路上に存在するセルとしてバッファセル１０２、ＡＮＤセル１０４、バッファセル１０６、ＦＦセル１０８、ＦＦセル１１２、ＡＮＤセル１２２、バッファセル１２４、ＦＦセル１２６、ＦＦセル１３０が抽出される。また、配置配線対象回路１００をトレースし、クロック信号ＣＬＫ１の伝搬経路上に存在するネットとしてネット２０２、２０４、２０６、２２２、２２４が抽出される。同様に、配置配線対象回路１００をトレースし、非同期リセット信号ＲＳＴ１の伝搬経路上に存在するセルとしてバッファセル１１４、インバータセル１１６、ＦＦセル１０８、ＦＦセル１１２、インバータセル１３２、ＦＦセル１２６、ＦＦセル１３０が抽出される。また、配置配線対象回路１００をトレースし、非同期リセット信号ＲＳＴ１の伝搬経路上に存在するネットとしてネット２１４、２１６、２３２が抽出される。
【００８４】
図４は、図３で説明した配置配線対象回路１００の配置配線前のレイアウトの一例を示す図である。例えば、ゲートアレイ設計では、配置配線対象回路１００の配置配線前は、縦方向にＭ行、横方向にＮ列のベーシックセルＢＣ１１〜ＢＣＭＮがバルク上に敷き詰められている。
【００８５】
図５は、図２のステップＳ１４の処理が終了した後のレイアウトの一例を示す図である。図２のステップＳ１２において抽出されたセル、すなわち、クロック信号ＣＬＫ１又は非同期リセット信号ＲＳＴ１のいずれかの伝搬経路上に存在するバッファセル１０２、ＡＮＤセル１０４、バッファセル１０６、ＦＦセル１０８、ＦＦセル１１２、バッファセル１１４、インバータセル１１６、ＡＮＤセル１２２、バッファセル１２４、ＦＦセル１２６、ＦＦセル１３０、インバータセル１３２が優先配置されている。
【００８６】
図６は、図２のステップＳ１６の処理が終了した後のレイアウトの一例を示す図である。図２のステップＳ１２において抽出されなかったセル、すなわち、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１のいずれの伝搬経路上にも存在しないＡＮＤセル１１０、インバータセル１１８、インバータセル１２０、ＯＲセル１２８が配置されている。
【００８７】
図７は、図２のステップＳ１８の処理が終了した後のレイアウトの一例を示す図である。図２のステップＳ１２において抽出されたネット、すなわち、クロック信号ＣＬＫ１又は非同期リセット信号ＲＳＴ１のいずれかの伝搬経路上に存在するネット２０２、２０４、２０６、２１４、２１６、２２２、２２４、２３２が優先配線されている。そして、図２のステップＳ２０において、ネット２０２、２０４、２０６、２１４、２１６、２２２、２２４、２３２の配線長が計算される。例えば、ＡＮＤセル１０４の出力端子とバッファセル１０６の入力端子を接続するネット２０４の配線長は、配線方向に沿った長さ（ａ＋ｂ）として計算される。また、バッファセル１０６の出力端子、ＦＦセル１０８のクロック入力端子及びＦＦセル１１２のクロック入力端子を接続するネット２０６のように分岐しているネットについては、例えば、バッファセル１０６の出力端子からＦＦセル１０８のクロック入力端子までの配線の配線長としてｃ＋ｄ、バッファセル１０６の出力端子からＦＦセル１１２のクロック入力端子までの配線の配線長としてｃ＋ｅ＋ｆのように分岐の数に対応して複数の計算が行われる。
【００８８】
次に、図２のステップＳ２２において、ネット２０６（バッファセル１０６の出力端子からＦＦセル１１２のクロック入力端子までの配線）の配線長及びネット２２４（バッファセル１２４の出力端子からＦＦセル１３０のクロック入力端子までの配線）の配線長が規格値よりも大きいと判断されたとする。この場合、図２のステップＳ２４において、ネット２０６及びネット２２４の配線レイアウトが変更される。例えば、ネット２０６及びネット２２４にバッファセルを挿入してもよい。図８に、ネット２０６及びネット２２４にバッファセルが挿入された後の回路を示す。バッファセル１０６の出力端子とＦＦセル１１２のクロック入力端子の間にバッファセル１３４が挿入され、ネット２０６とネット２３４に分割されている。また、バッファセル１２４の出力端子とＦＦセル１３０のクロック入力端子の間にバッファセル１３６が挿入され、ネット２２４とネット２３６に分割されている。
【００８９】
図９は、図２のステップＳ２４の処理が終了した後のレイアウトの一例を示す図である。すなわち、図８で説明したようにバッファセル１３４及び１３６が挿入され、それぞれＦＦセル１１２及び１３０の左側に隣接して配置されている。また、バッファセル１３４及び１３６の各出力端子とＦＦセル１１２のクロック入力端子及び１３０のクロック入力端子をそれぞれ接続するネット２３４及び２３６の配線が行われている。さらに、ネット２０６はバッファセル１０６の出力端子、バッファセル１３４の入力端子及びＦＦセル１０８のクロック入力端子を接続するように配線が変更されている。同様に、ネット２２４はバッファセル１２４の出力端子、バッファセル１３６の入力端子及びＦＦセル１２６のクロック入力端子を接続するように配線が変更されている。その結果、ネット２０６及び２２４の配線長は規格値以下となっている。また、新たに挿入されたネット２３４及び２３６の配線長も規格値以下となっている。すなわち、図９のレイアウトでは優先配線したすべてのネットの配線長が規格値以下となっている。
【００９０】
図１０は、図２のステップＳ２６の処理が終了した後（すべての処理が終了した後）のレイアウトの一例を示す図である。図２のステップＳ１２において抽出されなかったネット、すなわち、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１のいずれの伝搬経路上にも存在しないネット２０８、２１０、２１２、２１８、２２０、２２６、２２８、２３０が配線されている。
【００９１】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、優先配線された所定のネットの配線長に着目し、複雑な遅延計算を行うことなく、配線長が所定の規格値よりも大きいネットの配線レイアウトを変更する。従って、すべてのセル及びネットの配置配線が終了する前に、所定のネットについては優先的に短い配線にすることができる。その結果、クロック信号や非同期リセット信号等のクリティカルな信号の伝搬経路上に存在するネットを所定のネットとして指定しておけば、クリティカルな信号が他の信号の影響を受けにくくすることができる。また、クリティカルな信号の伝搬経路上に存在するネットの配線が優先的に行われるので、配線長が規格値よりも大きい場合でも配線レイアウトの変更が比較的容易である。また、クリティカルな信号の伝搬経路上に存在するネットの配線が短くなるので、クリティカルな信号の周辺を配線禁止領域にしたりシールド配線を行っても配線領域の増加が少なくて済む。さらに、クリティカルな信号の伝搬経路上に存在するネットの配線が短ければ不具合が起こりにくく、仮にタイミング検証における制約条件の設定漏れがあっても問題ない。従って、本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、信頼性の高い半導体集積回路装置を短期間で提供することができる。
【００９２】
また、本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、指定した信号の伝搬経路上に存在するセル及びネットを自動的に抽出し、当該ネットが接続されているセルを優先配置するのでこれらのセルは近くに配置されやすく、当該ネットについて配線長が規格値以下となるように優先配線するので、当該ネットの配線をより適切に短くすることができる。
【００９３】
２．２  第２の実施例
図１１は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例を説明するためのフローチャートである。以下、図１１のフローチャートについて説明する。
【００９４】
まず、所定の信号を指定する(ステップＳ３０)。
【００９５】
次に、ステップＳ３０で指定した所定の信号の伝搬経路上に存在するセル及びネットを抽出する（ステップＳ３２）。
【００９６】
次に、ステップＳ３２で抽出したＮ個のネットに優先順位を設定する（ステップＳ３３）。すなわち、Ｎ個のネットの各々に対して、ステップＳ３４及びステップＳ３８〜Ｓ４４の処理を行う順番を規定する優先順位を設定する。ここで、Ｎ個のネットの各々に対してそれぞれ１番目からＮ番目の優先順位を設定してもよいし、複数のネットに同じ優先順位を設定してもよい。
【００９７】
次に、ステップＳ３３で設定した優先順位に従い、ｋ番目（１≦ｋ≦Ｎ）の優先順位が設定されたネットに接続されたセル（ステップＳ３２で抽出したセルに含まれる）を配置する（ステップＳ３４）。すなわち、ｋ番目の優先順位が設定されたネットに接続されたセルをｋ＋１番目以降の優先順位が設定されたネットに接続されたセル及びその他のセル（ステップＳ３０で指定した信号の伝搬経路上に存在しないセル）よりも優先して配置する。最初は、１番目の優先順位（最も高い優先順位）が設定されたネットに接続されたセルを配置する。
【００９８】
次に、ステップＳ３２で抽出したＮ個のネットに接続されたすべてのセル（ステップＳ３０で指定した信号の伝搬経路上に存在するすべてのセル）についてステップＳ３４の処理が終了したか否かを判断する（ステップＳ３５）。
【００９９】
ステップＳ３２で抽出したＮ個のネットに接続されたいずれかのセルについてステップＳ３４の処理が終了していない場合（ステップＳ３５でＮｏの場合）は、優先順位が次に高いネット（ｋ＋１番目の優先順位が設定されたネット）に接続されたセルについてステップＳ３４の処理を行う。
【０１００】
次に、ステップＳ３２で抽出したＮ個のネットに接続されたすべてのセル（ステップＳ３０で指定した信号の伝搬経路上に存在するすべてのセル）についてステップＳ３４の処理が終了した場合（ステップＳ３５でＹｅｓの場合）は、他のセル（ステップＳ３０で指定した信号の伝搬経路上に存在しないセル）を配置する（ステップＳ３６）。
【０１０１】
次に、ステップＳ３３で設定した優先順位に従い、ｋ番目の優先順位が設定されたネットを配線する（ステップＳ３８）。すなわち、ｋ番目の優先順位が設定されたネットをｋ＋１番目以降の優先順位が設定されたネット及びその他のネット（ステップＳ３０で指定した信号の伝搬経路上に存在しないネット）よりも優先して配線する。最初は、１番目の優先順位（最も高い優先順位）が設定されたネットを配線する。
【０１０２】
次に、ステップＳ３８で配線したネット（すなわち、ｋ番目の優先順位が設定されたネット）の配線長を計算する（ステップＳ４０）。
【０１０３】
次に、ステップＳ３８で配線したネット（すなわち、ｋ番目の優先順位が設定されたネット）について、ステップＳ４０で計算した配線長についてあらかじめ設定された規格値よりも大きいか否かを判断する（ステップＳ４２）。ここで、ステップＳ３２で抽出したＮ個のネットに対して同一の規格値が設定されていてもよいし、信号毎に異なる規格値が設定されていてもよい。
【０１０４】
ｋ番目の優先順位が設定されたネットの配線長が規格値よりも大きいと判断した場合（ステップＳ４２でＹｅｓの場合）、配線長が規格値よりも大きいネットの配線レイアウトを変更し（ステップＳ４４）、変更後の配線レイアウトに対して再び配線長が規格値よりも大きいか否かを判断する（ステップＳ４２）。
【０１０５】
ｋ番目の優先順位が設定されたネットの配線長が規格値以下であると判断した場合（ステップＳ４２でＮｏの場合）は、ステップＳ３２で抽出したＮ個のネット（ステップＳ３０で指定した信号の伝搬経路上に存在するすべてのネット）についてステップＳ３８〜Ｓ４４の処理が終了したか否かを判断する（ステップＳ４５）。
【０１０６】
ステップＳ３２で抽出したＮ個の信号のいずれかについてステップＳ３８〜Ｓ４４の処理が終了していない場合（ステップＳ４５でＮｏの場合）は、優先順位が次に高いネット（ｋ＋１番目の優先順位が設定されたネット）についてステップＳ３８〜Ｓ４４の処理を行う。
【０１０７】
最後に、ステップＳ３２で抽出したＮ個の信号のすべてについてステップＳ３８〜Ｓ４４の処理が終了した場合（ステップＳ４５でＹｅｓの場合）は、他のネット（ステップＳ３０で指定した信号のいずれの伝搬経路上にも存在しないネット）を配線する（ステップＳ４６）。
【０１０８】
図１２〜図１７は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例における処理をより具体的に説明するための図である。以下では、図３で説明した配置配線対象回路１００に対して第２の実施例を適用して配置配線を行う場合を例にとり説明する。
【０１０９】
まず、図１１のステップＳ３０において、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１を指定する。そうすると、図１１のステップＳ３２の処理において、クロック信号ＣＬＫ１又は非同期リセット信号ＲＳＴ１の伝搬経路上に存在するセルとしてバッファセル１０２、ＡＮＤセル１０４、バッファセル１０６、ＦＦセル１０８、ＦＦセル１１２、バッファセル１１４、インバータセル１１６、ＡＮＤセル１２２、バッファセル１２４、ＦＦセル１２６、ＦＦセル１３０、インバータセル１３２が抽出される。また、クロック信号ＣＬＫ１又は非同期リセット信号ＲＳＴ１の伝搬経路上に存在するネットとしてネット２０２、２０４、２０６、２１４、２１６、２２２、２２４、２３２が抽出される。そして、図１１のステップＳ３３において、ステップＳ３２で抽出した８個のネット２０２、２０４、２０６、２１４、２１６、２２２、２２４、２３２に優先順位が設定される。ここで、８個のネットに１番目から８番目までの優先順位をそれぞれ設定してもよいし、いくつかのネットについて同じ優先順位を設定してもよい。例えば、クロック信号ＣＬＫ１又は非同期リセット信号ＲＳＴ１のそれぞれの信号伝播経路上のネット間では配線順序を問わないが、クロック信号ＣＬＫ１の信号伝播経路上のネット２０２、２０４、２０６、２２２、２２４を非同期リセット信号ＲＳＴ１の伝搬経路上のネット２１４、２１６、２３２よりも先に配線したい場合には、ネット２０２、２０４、２０６、２２２、２２４に第１の優先順位を設定し、ネット２１４、２１６、２３２に第２の優先順位を設定を設定するようにしてもよい。
【０１１０】
図１２は、第１の優先順位が設定されたネットについて図１１のステップＳ３４の処理が終了した後のレイアウトの一例を示す図である。図１１のステップＳ３３において第１の優先順位が設定されたネット、すなわち、クロック信号ＣＬＫ１の伝搬経路上に存在するネット２０２、２０４、２０６、２２２、２２４に接続されたバッファセル１０２、ＡＮＤセル１０４、バッファセル１０６、ＦＦセル１０８、ＦＦセル１１２、ＡＮＤセル１２２、バッファセル１２４、ＦＦセル１２６、ＦＦセル１３０が優先配置されている。
【０１１１】
図１３は、第２の優先順位が設定されたネットについて図１１のステップＳ３４の処理が終了した後のレイアウトの一例を示す図である。図１１のステップＳ３３において第２の優先順位が設定されたネット、すなわち、非同期リセット信号ＲＳＴ１の伝搬経路上に存在するネット２１４、２１６、２３２に接続されたバッファセル１１４、インバータセル１１６、インバータセル１３２が配置されている。なお、ＦＦセル１０８、１１２、１２６、１３０もネット２１６、２３２に接続されているが、図１２で説明したように第１の優先順位が設定されたネットについての図１１のステップＳ３４の処理においてＦＦセル１０８、１１２、１２６、１３０はすでに配置されているので配置し直す必要はない。
【０１１２】
図１４は、第１の優先順位が設定されたネットについて図１１のステップＳ３８の処理が終了した後のレイアウトの一例を示す図である。まず、図１１のステップＳ３６において、他のセル、すなわち、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１のいずれの伝搬経路上にも存在しないＡＮＤセル１１０、インバータセル１１８、インバータセル１２０、ＯＲセル１２８が配置された後、図１１のステップＳ３８において、第１の優先順位が設定されたネット２０２、２０４、２０６、２２２、２２４が優先配線されている。そして、図１１のステップＳ４０において、ネット２０２、２０４、２０６、２２２、２２４の配線長が計算される。
【０１１３】
次に、図１１のステップＳ４２において、ネット２０６（バッファセル１０６の出力端子からＦＦセル１１２のクロック入力端子までの配線）の配線長及びネット２２４（バッファセル１２４の出力端子からＦＦセル１３０のクロック入力端子までの配線）の配線長が規格値よりも大きいと判断されたとする。この場合、図１１のステップＳ４４において、ネット２０６及びネット２２４の配線レイアウトが変更される。例えば、バッファセル１０６の出力端子とＦＦセル１１２のクロック入力端子の距離が短くなるようにＦＦセル１１２を移動（配置を変更）した後にネット２０６を再配線させてもよい。同様に、バッファセル１２４の出力端子とＦＦセル１３０のクロック入力端子の距離が短くなるようにＦＦセル１３０を移動（配置を変更）した後にネット２２４を再配線させてもよい。
【０１１４】
図１５は、第１の優先順位が設定されたネットについて図１１のステップＳ４４の処理が終了した後のレイアウトの一例を示す図である。バッファセル１０６の出力端子とＦＦセル１１２のクロック入力端子の距離が短くなるようにＦＦセル１１２の配置が変更されている。また、バッファセル１０６の出力端子とＦＦセル１１２のクロック入力端子を接続するネット２０６が再配線されている。同様に、バッファセル１２４の出力端子とＦＦセル１３０のクロック入力端子の距離が短くなるようにＦＦセル１３０の配置が変更され、バッファセル１２４の出力端子とＦＦセル１３０のクロック入力端子を接続するネット２２４が再配線されている。その結果、ネット２０６及び２２４の配線長は規格値以下となり、図１５のレイアウトでは第１の優先順位が設定されたすべてのネットの配線長が規格値以下となっている。このように、クロック信号ＣＬＫ１の伝搬経路における終端のセルであるＦＦセル１１２及び１３０の配置を変更すれば、バッファ等を挿入することなくネット２０６及び２２４の配線長を規格値以下にすることができるので、チップサイズの増大を抑制することができる。
【０１１５】
図１６は、第２の優先順位が設定されたネットについて図１１のステップＳ４４の処理が終了した後のレイアウトの一例を示す図である。まず、図１１のステップＳ３８において第２の優先順位が設定されたネット２１４、２１６、２３２が優先配線され、図１１のステップＳ４０においてネット２１４、２１６、２３２の配線長が計算される。次に、図１１のステップＳ４２において、例えば、ネット２１４、２１６、２３２の配線長が規格値以下であると判断されると、ネット２１４、２１６、２３２については配線レイアウトを変更する必要はないので、図１１のステップＳ４４の処理は行われない。
【０１１６】
図１７は、図１１のステップＳ４６の処理が終了した後（すべての処理が終了した後）のレイアウトの一例を示す図である。図１１のステップＳ３２において抽出されなかったネット、すなわち、クロック信号ＣＬＫ１及び非同期リセット信号ＲＳＴ１のいずれの伝搬経路上にも存在しないネット２０８、２１０、２１２、２１８、２２０、２２６、２２８、２３０が配線されている。
【０１１７】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、指定した信号の伝搬経路上に存在するネットのうち、優先順位がより高いネットに接続されているセルをより優先的に配置し、優先順位に従って当該ネットの配線及び配線レイアウト変更を行うので、優先順位がより高いネットの配線ほどより適切に短くすることができる。例えば、クリティカルな信号が複数ある場合には、他の信号の影響をより受けやすい信号の伝搬経路上に存在するネットほど優先順位を高く設定し、配線及び配線レイアウト変更を優先的に行うことができる。また、クリティカルな信号の伝搬経路上に存在するネットの中でも、小さい規格値が設定されているネットやファンアウト数が多いネット（分岐の数が多いネット）ほど高い優先順位を設定しておくことにより、これらのネットの配線及び配線レイアウト変更を優先的に行うことができる。
【０１１８】
２．３  第３の実施例
図１８は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第３の実施例を説明するためのフローチャートである。以下、図１８のフローチャートについて説明する。
【０１１９】
まず、所定の信号を指定する(ステップＳ５０)。
【０１２０】
次に、ステップＳ５０で指定した所定の信号の伝搬経路上に存在するセル及びネットを抽出する（ステップＳ５２）。
【０１２１】
次に、ステップＳ５２で抽出した各セルを配置する（ステップＳ５４）。すなわち、ステップＳ５２で抽出した各セルを他のセル（ステップＳ５０で指定した所定の信号の伝搬経路上に存在しないセル）よりも優先して配置する。
【０１２２】
次に、ステップＳ５２で抽出した各ネットを配線する（ステップＳ５８）。すなわち、ステップＳ５２で抽出した各ネットを他のネット（ステップＳ５０で指定した所定の信号の伝搬経路上に存在しないネット）よりも優先して配線する。
【０１２３】
次に、ステップＳ５２で抽出した各ネット（すなわち、ステップＳ５８で優先配線した各ネット）の配線長を計算する（ステップＳ６０）。
【０１２４】
次に、ステップＳ５２で抽出した各ネット（すなわち、ステップＳ５８で優先配線した各ネット）のうち、ステップＳ６０で計算した配線長についてあらかじめ設定された規格値よりも大きいネットが存在するか否かを判断する（ステップＳ６２）。
【０１２５】
ステップＳ６２で規格値よりも大きい配線長のネットが存在すると判断した場合（ステップＳ６２でＹｅｓの場合）、規格値よりも大きい配線長のネットの配線レイアウトを変更し（ステップＳ６４）、変更後の配線レイアウトに対して再び規格値よりも大きい配線長のネットが存在するか否かを判断する（ステップＳ６２）。
【０１２６】
次に、ステップＳ６２で規格値よりも大きい配線長のネットが存在しないと判断した場合（ステップＳ６２でＮｏの場合）は、他のセル（ステップＳ５０で指定した所定の信号の伝搬経路上に存在しないセル）を配置する（ステップＳ６５）。
【０１２７】
最後に、他のネット（ステップＳ５０で指定した所定の信号の伝搬経路上に存在しないネット）を配線する（ステップＳ６６）。
【０１２８】
なお、図２で説明した第１の実施例ではステップＳ１６において他のセルを配置した後に（すなわち、すべてのセルの配置が終了した後に）ステップＳ１８において優先配線を行うのに対し、第３の実施例ではステップＳ５０〜Ｓ６４の処理において所定のネットに対して優先的に配置配線を行った後に、他のセルの配置配線を行う点において相違するのみである。すなわち、図３で説明した配置配線対象回路１００に対して図４〜図１０で具体的に説明した第１の実施例によるレイアウトについても、ＡＮＤセル１１０、インバータセル１１８、インバータセル１２０、ＯＲセル１２８を配置するタイミングを除いて第１の実施例と同様であり、第３の実施例の具体的な説明については省略する。
【０１２９】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、指定した信号の伝搬経路上に存在するネットに接続されているセルの配置、当該ネットの配線及び配線レイアウトの変更を行った後に、他のネットに接続されているセルの配置及び当該他のネットの配線を行う。すなわち、指定した信号の伝搬経路上に存在するネットの配線レイアウトを変更する際に他のネットに接続されているセルが配置されていないので、配線レイアウト変更の自由度が向上する。従って、指定した信号の伝搬経路上に存在するネットの配線をより適切に短くすることができる。
【０１３０】
２．４  第４の実施例
図１９は、本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第４の実施例を説明するためのフローチャートである。以下、図１９のフローチャートについて説明する。
【０１３１】
まず、所定の信号を指定する(ステップＳ７０)。
【０１３２】
次に、配置配線の対象となる回路に含まれるセルをＭ個（Ｍ≧２）のグループ（セルグループ）に分割し、Ｍ個のセルグループに優先順位を設定する。すなわち、Ｍ個のセルグループの各々に対して、ステップＳ７２〜Ｓ８６の処理を行う順番を規定する優先順位を設定する（ステップＳ７１）。ここで、Ｍ個のセルグループの各々に対して、それぞれ１番目からＭ番目の優先順位を設定してもよいし、複数のセルグループに同じ優先順位を設定してもよい。
【０１３３】
次に、ステップＳ７１で設定した優先順位に従い、ｊ番目（１≦ｊ≦Ｍ）の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセル及び当該セルに接続されているネットを抽出する（ステップＳ７２）。
【０１３４】
次に、ステップＳ７２で抽出した各セル（ｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセル）を配置する（ステップＳ７４）。すなわち、ｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセルを、ｊ番目の優先順位が設定されたセルグループに属する他のセル、ｊ＋１番目以降の優先順位が設定されたセルグループに属するセルよりも優先して配置する。
【０１３５】
次に、ｊ番目の優先順位が設定されたセルグループに属する他のセル（ｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在しないセル）を配置する（ステップＳ７６）。
【０１３６】
次に、ステップＳ７１で設定した優先順位に従い、ステップＳ７２で抽出した各ネット（ｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセルに接続されるネット）を配線する（ステップＳ７８）。すなわち、ｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセルに接続されるネットを、ｊ番目の優先順位が設定されたセルグループに属する他のセルに接続されるネット、ｊ＋１番目以降の優先順位が設定されたセルグループに属するセルに接続されるネットよりも優先して配線する。
【０１３７】
次に、ステップＳ７２で抽出した各ネット（すなわち、ステップＳ７８で優先配線したｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセルに接続されるネット）の配線長を計算する（ステップＳ８０）。
【０１３８】
次に、ステップＳ７２で抽出した各ネット（すなわち、ステップＳ７８で優先配線したｊ番目の優先順位が設定されたセルグループに属し、かつ、ステップＳ７０で指定した所定の信号の伝搬経路上に存在するセルに接続されるネット）のうち、ステップＳ８０で計算した配線長についてあらかじめ設定された規格値よりも大きいネットが存在するか否かを判断する（ステップＳ８２）。
【０１３９】
ステップＳ８２で規格値よりも大きい配線長のネットが存在すると判断した場合（ステップＳ８２でＹｅｓの場合）、規格値よりも大きい配線長のネットの配線レイアウトを変更し（ステップＳ８４）、変更後の配線レイアウトに対して再び規格値よりも大きい配線長のネットが存在するか否かを判断する（ステップＳ８２）。
【０１４０】
次に、ステップＳ８２で規格値よりも大きい配線長のネットが存在しないと判断した場合（ステップＳ８２でＮｏの場合）は、ｊ番目の優先順位が設定されたセルグループに属する他のセルに接続されるネットを配線する（ステップＳ８６）。
【０１４１】
最後に、ステップＳ７１で優先順位を設定したＭ個のセルグループのすべてについてステップＳ７２〜Ｓ８６の処理が終了したか否かを判断する（ステップＳ８８）。
【０１４２】
ステップＳ７１で優先順位を設定したＭ個のセルグループのいずれかについてステップＳ７２〜Ｓ８６の処理が終了していない場合（ステップＳ８８でＮｏの場合）は、優先順位が次に高いセルグループ（ｊ＋１番目の優先順位が設定されたセルグループ）についてステップＳ７２〜Ｓ８６の処理を行う。
【０１４３】
ステップＳ７１で優先順位を設定したＭ個のセルグループのすべてについてステップＳ７２〜Ｓ８６の処理が終了した場合（ステップＳ８８でＹｅｓの場合）は、処理を終了する。
【０１４４】
なお、図３で説明した配置配線対象回路１００に含まれるセルを第１のセルグループとし、配置配線の対象となるその他の回路（図示しない）に含まれるセルを第２のセルグループとすれば、図１９のステップＳ７１において第１のセルグループに第１の優先順位が設定された場合における第１のセルグループについてのレイアウトは図３〜図１０で第１の実施例について説明したレイアウトと全く同様であるので、第４の実施例の具体的な説明については省略する。
【０１４５】
本実施形態の半導体集積回路装置の設計方法（設計支援プログラム）によれば、セルを複数のグループに分割して優先順位を設定し、優先順位に従ってグループ単位で配置配線を行う。さらに、１つのグループに含まれるセルのうち、指定した信号の伝搬経路上のネットに接続されているセルの配置及び当該ネットの配線を優先的に行う。従って、優先順位がより高いグループに属するセルに接続され、かつ、指定した信号の伝搬経路上に存在するネットほど適切に短くすることができる。
【０１４６】
３．半導体集積回路装置
図２０は、本実施の形態の半導体集積回路装置のブロック図の一例である。
【０１４７】
マイクロコンピュータ（半導体集積回路装置）７００は、ＣＰＵ５１０、キャッシュメモリ５２０、ＲＯＭ７１０、ＲＡＭ７２０、ＭＭＵ７３０、ＬＣＤコントローラ５３０、リセット回路５４０、プログラマブルタイマ５５０、リアルタイムクロック（ＲＴＣ）５６０、ＤＭＡコントローラ５７０、割り込みコントローラ５８０、通信制御回路５９０、バスコントローラ６００、Ａ／Ｄ変換器６１０、Ｄ／Ａ変換器６２０、入力ポート６３０、出力ポート６４０、Ｉ／Ｏポート６５０、クロック発生装置６６０、プリスケーラ６７０、クロック停止制御回路７４０及びそれらを接続する汎用バス６８０、専用バス７５０等、各種ピン６９０等を含む。
【０１４８】
マイクロコンピュータ７００は、本実施の形態の設計支援プログラム、設計支援システム又は設計方法を用いて設計製造された半導体集積回路装置である。
【０１４９】
４．電子機器
図２１に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、マイクロコンピュータ（半導体集積回路装置）８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【０１５０】
ここで、入力部８２０は、種々のデータを入力するためのものである。マイクロコンピュータ８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、マイクロコンピュータ８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。
【０１５１】
音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【０１５２】
図２２（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【０１５３】
図２２（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【０１５４】
図２２（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【０１５５】
本実施の形態の半導体集積回路装置を図２２（Ａ）〜図２２（Ｃ）の電子機器に組み込むことにより、信頼性の高い電子機器を短期間で提供することができる。
【０１５６】
なお、本実施形態を利用できる電子機器としては、図２２（Ａ）〜図２２（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等の種々の電子機器を考えることができる。
【０１５７】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【０１５８】
例えば、図１１のフローチャートにおいて、ステップＳ３６の処理（他のセルの配置処理）をステップＳ４５でＹｅｓの場合（優先順位を設定した全てのネットの配線処理が終了した後）に行うようにしてもよい。
【０１５９】
また、例えば、図４〜図７、図９、図１０、図１２〜図１７においてゲートアレイ設計におけるレイアウトの例を示したが、スタンダードセル設計やエンベディッドアレイ設計においても、本発明を同様に適用することができる。
【０１６０】
本発明は、実施の形態で説明した構成と実質的に同一の構成（例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成）を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【図面の簡単な説明】
【０１６１】
【図１】本実施形態の半導体集積回路装置の設計支援システム及び設計プログラムについて説明するための図。
【図２】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例を説明するためのフローチャート。
【図３】配置配線を行う対象となる回路の一例を示す図である。
【図４】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図５】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図６】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図７】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図８】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図９】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図１０】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第１の実施例について説明するための図。
【図１１】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例を説明するためのフローチャート。
【図１２】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１３】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１４】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１５】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１６】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１７】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第２の実施例について説明するための図。
【図１８】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第３の実施例を説明するためのフローチャート。
【図１９】本実施の形態の半導体集積回路装置の設計方法（設計支援プログラムの処理手順）の第４の実施例を説明するためのフローチャート。
【図２０】本実施の形態の半導体集積回路装置のブロック図の一例。
【図２１】半導体集積回路装置を含む電子機器のブロック図の一例。
【図２２】図２２（Ａ）〜図２２（Ｃ）は、種々の電子機器の外観図の例。
【符号の説明】
【０１６２】
１  設計支援システム、１０  処理部、１２  セル配置手段、１４  ネット配線手段、１６  配線レイアウト変更手段、１８  ネット抽出手段、２０  ネット優先順位設定手段、２２  セルグループ優先順位設定手段、３０  操作部、４０  記憶部、４２  ライブラリ情報記憶部、５０  情報記憶媒体、６０  表示部、７０  音出力部、８０  通信部、１００  配置配線対象回路、１０２  バッファセル、１０４  ＡＮＤセル、１０６  バッファセル、１０８  フリップフロップ（ＦＦ）セル、１１０  ＡＮＤセル、１１２  フリップフロップ（ＦＦ）セル、１１４  バッファセル、１１６  インバータセル、１１８  インバータセル、１２０  インバータセル、１２２  ＡＮＤセル、１２４  バッファセル、１２６  フリップフロップ（ＦＦ）セル、１２８  ＯＲセル、１３０  フリップフロップ（ＦＦ）セル、１３２  インバータセル、１３４  バッファセル、１３６  バッファセル、２０２〜２３６  ネット、５１０  ＣＰＵ、５２０  キャッシュメモリ、５３０  ＬＣＤコントローラ、５４０  リセット回路、５５０  プログラマブルタイマ、５６０  リアルタイムクロック（ＲＴＣ）、５７０  ＤＭＡコントローラ、５８０  割り込みコントローラ、５９０  通信制御回路、６００  バスコントローラ、６１０  Ａ／Ｄ変換器、６２０  Ｄ／Ａ変換器、６３０  入力ポート、６４０  出力ポート、６５０  Ｉ／Ｏポート、６６０  クロック発生装置、６７０  プリスケーラ、６８０  汎用バス、６９０  各種ピン、７００  マイクロコンピュータ（半導体集積回路装置）、７１０  ＲＯＭ、７２０  ＲＡＭ、７３０  ＭＭＵ、７４０  クロック停止制御回路、７５０  専用バス、８００  電子機器、８１０  マイクロコンピュータ（半導体集積回路装置）、８２０  入力部、８３０  メモリ、８４０  電源生成部、８５０  ＬＣＤ、８６０  音出力部、９５０  携帯電話、９５２  ダイヤルボタン、９５４  ＬＣＤ、９５６  スピーカ、９６０  携帯型ゲーム装置、９６２  操作ボタン、９６４  十字キー、９６６  ＬＣＤ、９６８  スピーカ、９７０  パーソナルコンピュータ、９７２  キーボード、９７４  ＬＣＤ、９７６  音出力部
【図１】
2009093365.tif 000003
【図２】
2009093365.tif 000004
【図３】
2009093365.tif 000005
【図４】
2009093365.tif 000006
【図５】
2009093365.tif 000007
【図６】
2009093365.tif 000008
【図７】
2009093365.tif 000009
【図８】
2009093365.tif 000010
【図９】
2009093365.tif 000011
【図１０】
2009093365.tif 000012
【図１１】
2009093365.tif 000013
【図１２】
2009093365.tif 000014
【図１３】
2009093365.tif 000015
【図１４】
2009093365.tif 000016
【図１５】
2009093365.tif 000017
【図１６】
2009093365.tif 000018
【図１７】
2009093365.tif 000019
【図１８】
2009093365.tif 000020
【図１９】
2009093365.tif 000021
【図２０】
2009093365.tif 000022
【図２１】
2009093365.tif 000023
【図２２】
2009093365.tif 000024