(57)【要約】【課題】処理負荷の増大を抑えながら、これまで配線が混雑していた領域でも確実にセルや配線を配置できる集積回路設計方法等を提供する。【解決手段】集積回路設計方法は、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定ステップと、前記配線グリッド変更領域設定ステップにおいて前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更ステップと、前記領域内において、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに所与の配線を配置すると共に、前記配線グリッド変更ステップにおいて変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに配置する配置配線ステップとを含む。【選択図】図１
2010020587.tif 000002
【特許請求の範囲】
【請求項１】
所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定ステップと、
前記配線グリッド変更領域設定ステップにおいて前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更ステップと、
前記領域内において、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに所与の配線を配置すると共に、前記配線グリッド変更ステップにおいて変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに配置する配置配線ステップとを含むことを特徴とする集積回路設計方法。
【請求項２】
請求項１において、
前記配線グリッド変更領域として設定される領域が、
マクロブロックのコーナー部を含む領域であることを特徴とする集積回路設計方法。
【請求項３】
請求項２において、
前記マクロブロックのコーナー部を含む領域が、
前記コーナー部を中心とし、該コーナー部において交差する前記マクロブロックの境界線の二辺のうち短辺の長さを一辺の長さとする正方形の領域であることを特徴とする集積回路設計方法。
【請求項４】
請求項１において、
前記配線グリッド変更領域として設定される領域が、
互いに交差する第１及び第２の方向のいずれかの方向において、マクロブロックとＩ／Ｏセル領域とに挟まれた領域であることを特徴とする集積回路設計方法。
【請求項５】
請求項１において、
前記配線グリッド変更領域として設定される領域が、
第１及び第２のマクロブロックに挟まれた領域であることを特徴とする集積回路設計方法。
【請求項６】
請求項５において、
当該領域内の第１の方向に延びる前記配線グリッド変更ステップにおける変更前の配線グリッド数をｘ、前記当該領域内において前記第１の方向と交差する第２の方向に延びて所与の配線と接続される前記第１のマクロブロックの端子数をｙ１、前記当該領域内において前記第２の方向と反対方向に延びて所与の配線と接続される前記第２のマクロブロックの端子数をｙ２とすると、
前記第１及び第２のマクロブロックに挟まれた領域が、
ｘ＜ｙ１＋ｙ２となる領域であることを特徴とする集積回路設計方法。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記配線グリッド変更ステップが、
前記配線グリッド変更領域として設定される領域内において、互いに交差する第１及び第２の方向の少なくとも１つの方向に延びる配線グリッドの間隔を変更することを特徴とする集積回路設計方法。
【請求項８】
請求項７において、
前記第１の方向は、
スタンダードセルを構成するセルのうち、全セルの第１導電型のアクティブ領域が隣接して配置されるアクティブ領域連続配置方向であることを特徴とする集積回路設計方法。
【請求項９】
請求項１乃至８のいずれかにおいて、
前記配線グリッド変更ステップが、
所与のデザインルールにおけるビアセル間の最小ピッチより小さく、且つ前記デザインルールにおけるビアセルと配線との間の最小ピッチ以上となるように、前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更することを特徴とする集積回路設計方法。
【請求項１０】
配線グリッド上に配線及びセルを配置する集積回路設計装置であって、
同一機能を有する複数のセルの構成をそれぞれ互いに異なるセルグリッド間隔で指定する複数のセルの情報を記憶するセル情報記憶部と、
所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定部と、
前記配線グリッド変更領域設定部によって前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更処理部と、
前記領域内において、前記配線グリッド変更処理部により前記間隔が変更された前記配線グリッドに所与の配線とセルとを配置する配置配線処理部とを含み、
前記配置配線処理部が、
前記セル情報記憶部に記憶されたセルの情報に基づいて、前記配線グリッド変更処理部により変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更処理部によりその間隔が変更された前記配線グリッドに配置することを特徴とする集積回路設計装置。
【請求項１１】
請求項１０において、
前記配線グリッド変更領域として設定される領域が、
マクロブロックのコーナー部を中心とし、該コーナー部において交差する前記マクロブロックの境界線の二辺のうち短辺の長さを一辺の長さとする正方形の領域であることを特徴とする集積回路設計装置。
【請求項１２】
請求項１０において、
前記配線グリッド変更領域として設定される領域が、
互いに交差する第１及び第２の方向のいずれかの方向において、マクロブロックとＩ／Ｏセル領域とに挟まれた領域であることを特徴とする集積回路設計装置。
【請求項１３】
請求項１０において、
当該領域内の第１の方向に延びる前記配線グリッド変更ステップにおける変更前の配線グリッド数をｘ、前記当該領域内において前記第１の方向と交差する第２の方向に延びて所与の配線と接続される前記第１のマクロブロックの端子数をｙ１、前記当該領域内において前記第２の方向と反対方向に延びて所与の配線と接続される前記第２のマクロブロックの端子数をｙ２とすると、
前記配線グリッド変更領域として設定される領域が、
ｘ＜ｙ１＋ｙ２となる前記第１及び第２のマクロブロックに挟まれた領域であることを特徴とする集積回路設計装置。
【請求項１４】
同一機能を有する複数のセルの構成をそれぞれ互いに異なるセルグリッド間隔で指定する複数のセルの情報を記憶するセル情報記憶部と、
所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定部と、
前記配線グリッド変更領域設定部によって前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更処理部と、
前記領域内において、前記配線グリッド変更処理部により前記間隔が変更された前記配線グリッドに所与の配線とセルとを配置する配置配線処理部としてコンピュータを機能させ、
前記配置配線処理部が、
前記セル情報記憶部に記憶されたセルの配置情報に基づいて、前記配線グリッド変更処理部により変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更処理部によりその間隔が変更された前記配線グリッドに配置することを特徴とするプログラム。
【請求項１５】
第１の配線グリッド間隔の配線グリッド上に配置された配線及びセルと、
配線グリッド変更領域として設定された領域内の配線グリッドの間隔を前記第１の配線グリッド間隔より小さくした第２の配線グリッド間隔の配線グリッド上に配置された配線と、
前記配線グリッド変更領域として設定された領域内において、前記第２の配線グリッド間隔に対応したセルグリッド間隔でその構成が指定され前記第２の配線グリッド間隔の配線グリッド上に配置されたセルとを含み、
前記配線グリッド変更領域として設定された領域が、
マクロブロックのコーナー部を含む領域、マクロブロックとＩ／Ｏセル領域とに挟まれた領域、及び第１及び第２のマクロブロックに挟まれた領域の少なくとも１つであることを特徴とする集積回路。
【請求項１６】
請求項１５記載の集積回路を含むことを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路設計方法、集積回路設計装置、この集積回路設計方法又は集積回路設計装置により設計された集積回路及び電子機器に関する。
【背景技術】
【０００２】
近年、半導体集積回路（広義には集積回路）の高機能化や高性能化に対する市場の要求が高い。そのため、配線の多層化や製造プロセス技術の進歩によって半導体集積回路の高集積化が急速に進む一方で、半導体集積回路は、アナログ回路等の特殊なマクロブロックの搭載や回路規模の大幅な増大により、セルや配線の配置が一層困難になっている。これに伴い、半導体集積回路の設計期間が長くなり、設計期間の短縮が大きな課題の１つとなっている。
【０００３】
このような半導体集積回路を短期間でユーザに提供するため、ゲートアレイ、エンベデッドアレイやスタンダードセルで構成される半導体集積回路の設計手法が整備されている。例えばスタンダードセルで構成される半導体集積回路では、ユーザが必要とする機能が、最適設計された内部ロジックセルと、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＣＰＵ（Central Processing Unit）やアナログ回路等のマクロブロックとが配線により接続されて１チップ化される。その際、マクロブロックの配置位置等をフロアプランとして決定した後、自動配置配線ツールにより、チップ上のレイアウト可能領域内において定義された配線グリッド上にセルの端子が配置され、ネットリストに従って配線が配置される。
【０００４】
ところが、自動配置配線ツールを用いても、所定の領域では配線が混雑して、配線できないことが多い。そこで、例えば特許文献１には、概略配線の結果に基づいて、配線グリッド数の余裕度に応じた配線ピッチに基づいて配線グリッドを再生成する技術が開示されている。この特許文献１によれば、カップリング容量によるクロストークを防止することができる。
【０００５】
【特許文献１】特開２００４−１３３６３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、自動配置配線ツールでは、格子状に定義された配線グリッドの格子点上に端子が配置され、配線グリッド上に配線が配置されるようにセルが配置される。しかしながら、特許文献１では、配線グリッド数の余裕度に応じた配線ピッチに基づいて、単純に配線グリッドを再生成するに過ぎず、再生成後の配線グリッドに配置可能なセルの種類が限定されてしまう。そのため、配線グリッドを用いない特殊な配線処理を行う必要が生じ、処理負荷が重くなってしまうという問題がある。
【０００７】
このように、特許文献１に開示された技術を用いても、任意の配線ピッチの配線グリッドを再生成できるわけではなく、実質的に、元のセルが配置できるような配線ピッチの配線グリッドを再生成せざるを得ない。従って、特許文献１に開示された技術では、特殊な配線処理による処理負荷が重くなるか、集積回路の高集積化の効果が十分に得られない。
【０００８】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的の１つは、処理負荷の増大を抑えながら、これまで配線が混雑していた領域でも確実にセルや配線を配置できる集積回路設計方法、集積回路設計装置、集積回路及び電子機器を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために本発明は、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定ステップと、前記配線グリッド変更領域設定ステップにおいて前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更ステップと、前記領域内において、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに所与の配線を配置すると共に、前記配線グリッド変更ステップにおいて変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更ステップにおいて前記間隔が変更された配線グリッドに配置する配置配線ステップとを含む集積回路設計方法に関係する。
【００１０】
本発明によれば、局所的に配線グリッド間隔を小さくすると共に、小さくした配線グリッドに対応したセルグリッドで規定されたセルを配置するようにしたので、これまで配線の混雑度が高かった領域内でも、複雑な配線処理を行うことなく、確実にセルや配線の配置が可能となり、集積回路の高集積化を実現できるようになる。
【００１１】
また本発明に係る集積回路設計方法では、前記配線グリッド変更領域として設定される領域が、マクロブロックのコーナー部を含む領域であってもよい。
【００１２】
また本発明に係る集積回路設計方法では、前記マクロブロックのコーナー部を含む領域が、前記コーナー部を中心とし、該コーナー部において交差する前記マクロブロックの境界線の二辺のうち短辺の長さを一辺の長さとする正方形の領域であってもよい。
【００１３】
上記のいずれかの発明によれば、上記の効果に加えて、マクロブロックのコーナー部を迂回する配線によって混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路の高集積化に寄与できるようになる。
【００１４】
また本発明に係る集積回路設計方法では、前記配線グリッド変更領域として設定される領域が、互いに交差する第１及び第２の方向のいずれかの方向において、マクロブロックとＩ／Ｏセル領域とに挟まれた領域であってもよい。
【００１５】
本発明によれば、上記の効果に加えて、Ｉ／Ｏセル領域に配置されるＩ／Ｏセルに接続される配線と、各マクロブロックに接続される配線とにより混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路の高集積化に寄与できるようになる。
【００１６】
また本発明に係る集積回路設計方法では、前記配線グリッド変更領域として設定される領域が、第１及び第２のマクロブロックに挟まれた領域であってもよい。
【００１７】
本発明によれば、上記の効果に加えて、第１のマクロブロックに接続される配線と、第２のマクロブロックに接続される配線とにより混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路の高集積化に寄与できるようになる。
【００１８】
また本発明に係る集積回路設計方法では、当該領域内の第１の方向に延びる前記配線グリッド変更ステップにおける変更前の配線グリッド数をｘ、前記当該領域内において前記第１の方向と交差する第２の方向に延びて所与の配線と接続される前記第１のマクロブロックの端子数をｙ１、前記当該領域内において前記第２の方向と反対方向に延びて所与の配線と接続される前記第２のマクロブロックの端子数をｙ２とすると、前記第１及び第２のマクロブロックに挟まれた領域が、ｘ＜ｙ１＋ｙ２となる領域であってもよい。
【００１９】
本発明によれば、上記の効果に加えて、第１のマクロブロックの端子と接続可能な配線が配置される配線グリッド数と第２のマクロブロックの端子と接続可能な配線が配置される配線グリッドとの総和が、変更前の配線グリッド数より大きいときに、配線の混雑度が高くなる可能性が大きい領域に対し、配線グリッド変更領域として設定することで、できるだけ少ない配線グリッド変更領域を設定しながら、配線の混雑度を低下させて、より一層の高集積化に寄与することができるようになる。
【００２０】
また本発明に係る集積回路設計方法では、前記配線グリッド変更ステップが、前記配線グリッド変更領域として設定される領域内において、互いに交差する第１及び第２の方向の少なくとも１つの方向に延びる配線グリッドの間隔を変更することができる。
【００２１】
また本発明に係る集積回路設計方法では、前記第１の方向は、スタンダードセルを構成するセルのうち、全セルの第１導電型のアクティブ領域が隣接して配置されるアクティブ領域連続配置方向であってもよい。
【００２２】
上記のいずれかの発明によれば、少なくとも１つの方向に延びる配線グリッドの間隔を変更することで、これまで配線の混雑度が高かった領域内でも、複雑な配線処理を行うことなく、確実にセルや配線の配置が可能となり、集積回路の高集積化を実現できるようになる。
【００２３】
また本発明に係る集積回路設計方法では、前記配線グリッド変更ステップが、所与のデザインルールにおけるビアセル間の最小ピッチより小さく、且つ前記デザインルールにおけるビアセルと配線との間の最小ピッチ以上となるように、前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更することができる。
【００２４】
本発明によれば、上記の効果に加えて、デザインルールの範囲内で配線グリッド間隔をより小さく変更できるようになる。
【００２５】
また本発明は、配線グリッド上に配線及びセルを配置する集積回路設計装置であって、  同一機能を有する複数のセルの構成をそれぞれ互いに異なるセルグリッド間隔で指定する複数のセルの情報を記憶するセル情報記憶部と、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定部と、前記配線グリッド変更領域設定部によって前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更処理部と、前記領域内において、前記配線グリッド変更処理部により前記間隔が変更された前記配線グリッドに所与の配線とセルとを配置する配置配線処理部とを含み、前記配置配線処理部が、前記セル情報記憶部に記憶されたセルの情報に基づいて、前記配線グリッド変更処理部により変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更処理部によりその間隔が変更された前記配線グリッドに配置する集積回路設計装置に関係する。
【００２６】
本発明によれば、局所的に配線グリッド間隔を小さくすると共に、小さくした配線グリッドに対応したセルグリッドで規定されたセルを配置するようにしたので、これまで配線の混雑度が高かった領域内でも、複雑な配線処理を行うことなく、確実にセルや配線の配置が可能となり、集積回路の高集積化を実現できるようになる。
【００２７】
また本発明に係る集積回路設計装置では、前記配線グリッド変更領域として設定される領域が、マクロブロックのコーナー部を中心とし、該コーナー部において交差する前記マクロブロックの境界線の二辺のうち短辺の長さを一辺の長さとする正方形の領域であってもよい。
【００２８】
本発明によれば、上記の効果に加えて、マクロブロックのコーナー部を迂回する配線によって混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路の高集積化に寄与できるようになる。
【００２９】
また本発明に係る集積回路設計装置では、前記配線グリッド変更領域として設定される領域が、互いに交差する第１及び第２の方向のいずれかの方向において、マクロブロックとＩ／Ｏセル領域とに挟まれた領域であってもよい。
【００３０】
本発明によれば、上記の効果に加えて、Ｉ／Ｏセル領域に配置されるＩ／Ｏセルに接続される配線と、各マクロブロックに接続される配線とにより混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路の高集積化に寄与できるようになる。
【００３１】
また本発明に係る集積回路設計装置では、当該領域内の第１の方向に延びる前記配線グリッド変更ステップにおける変更前の配線グリッド数をｘ、前記当該領域内において前記第１の方向と交差する第２の方向に延びて所与の配線と接続される前記第１のマクロブロックの端子数をｙ１、前記当該領域内において前記第２の方向と反対方向に延びて所与の配線と接続される前記第２のマクロブロックの端子数をｙ２とすると、前記配線グリッド変更領域として設定される領域が、ｘ＜ｙ１＋ｙ２となる前記第１及び第２のマクロブロックに挟まれた領域であってもよい。
【００３２】
本発明によれば、上記の効果に加えて、第１のマクロブロックの端子と接続可能な配線が配置される配線グリッド数と第２のマクロブロックの端子と接続可能な配線が配置される配線グリッドとの総和が、変更前の配線グリッド数より大きいときに、配線の混雑度が高くなる可能性が大きい領域に対し、配線グリッド変更領域として設定することで、できるだけ少ない配線グリッド変更領域を設定しながら、配線の混雑度を低下させて、より一層の高集積化に寄与することができるようになる。
【００３３】
また本発明は、同一機能を有する複数のセルの構成をそれぞれ互いに異なるセルグリッド間隔で指定する複数のセルの情報を記憶するセル情報記憶部と、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定部と、前記配線グリッド変更領域設定部によって前記配線グリッド変更領域として設定された前記領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更処理部と、前記領域内において、前記配線グリッド変更処理部により前記間隔が変更された前記配線グリッドに所与の配線とセルとを配置する配置配線処理部としてコンピュータを機能させ、前記配置配線処理部が、前記セル情報記憶部に記憶されたセルの配置情報に基づいて、前記配線グリッド変更処理部により変更された前記配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、前記配線グリッド変更処理部によりその間隔が変更された前記配線グリッドに配置するプログラムに関係する。
【００３４】
本発明によれば、局所的に配線グリッド間隔を小さくすると共に、小さくした配線グリッドに対応したセルグリッドで規定されたセルを配置するようにしたので、これまで配線の混雑度が高かった領域内でも、複雑な配線処理を行うことなく、確実にセルや配線の配置が可能となり、集積回路の高集積化を実現できるプログラムを提供できるようになる。
【００３５】
また本発明は、第１の配線グリッド間隔の配線グリッド上に配置された配線及びセルと、配線グリッド変更領域として設定された領域内の配線グリッドの間隔を前記第１の配線グリッド間隔より小さくした第２の配線グリッド間隔の配線グリッド上に配置された配線と、前記配線グリッド変更領域として設定された領域内において、前記第２の配線グリッド間隔に対応したセルグリッド間隔でその構成が指定され前記第２の配線グリッド間隔の配線グリッド上に配置されたセルとを含み、前記配線グリッド変更領域として設定された領域が、マクロブロックのコーナー部を含む領域、マクロブロックとＩ／Ｏセル領域とに挟まれた領域、及び第１及び第２のマクロブロックに挟まれた領域の少なくとも１つである集積回路に関係する。
【００３６】
本発明によれば、処理負荷の増大を抑えながら、これまで配線が混雑していた領域でも確実にセルや配線が配置され、高集積化された集積回路を低コストで提供できるようになる。
【００３７】
また本発明は、上記記載の集積回路を含む電子機器に関係する。
【００３８】
本発明によれば、処理負荷の増大を抑えながら、これまで配線が混雑していた領域でも確実にセルや配線が配置され、高集積化された集積回路を搭載した電子機器を低コストで提供できるようになる。
【発明を実施するための最良の形態】
【００３９】
以下、本発明の実施の形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。
【００４０】
以下の実施形態では、本発明に係る実施形態における集積回路が、スタンダードセルとマクロブロックとで構成されるものとして説明するが、本発明はこれに限定されるものではなく、ゲートアレイやエンベデッドアレイで構成されていてもよい。
【００４１】
〔本実施形態の概要〕
図１（Ａ）、図１（Ｂ）に、本発明の実施形態における集積回路設計装置の処理の概要を模式的に示す。図１（Ａ）は、本実施形態の比較例における集積回路設計装置を用いた集積回路のレイアウトの概要を模式的に表したものである。図１（Ｂ）は、本実施形態の集積回路設計装置を用いた集積回路のレイアウトの概要を模式的に表したものである。図１（Ａ）、図１（Ｂ）において、同一部分には同一符号を付し、適宜説明を省略する。
【００４２】
本実施形態又はその比較例における集積回路設計装置は、レイアウト可能領域内に定義される格子状の配線グリッド上に、セルやマクロブロックとの間の接続情報を有するネットリストに従って、セルや配線を配置する処理を行う。その結果、図１（Ａ）、図１（Ｂ）において、集積回路１００には、マクロブロック１０２と、論理回路のセルと、これらを接続する配線とが配線グリッド上に配置される。
【００４３】
図１（Ａ）では、格子状に設けられた配線グリッドＧＲ上に、第１層配線ＭＬ１、第１層配線ＭＬ１より上層の第２層配線ＭＬ２、第１層配線ＭＬ１及び第２層配線ＭＬ２を電気的に接続するビアセルＶＣが配置される。隣接する配線グリッドＧＲ同士の間隔である配線グリッド間隔ＧＤ１は、製造プロセスに依存したデザインルールにより規定される。例えば、隣接するビアセルＶＣのエッジ間の最小ピッチｍ１以上となるように配線グリッド間隔ＧＤ１が規定される。第１層配線ＭＬ１は例えば垂直方向に延びる配線グリッドＧＲ上に配置されると共に、第２層配線ＭＬ２は例えば水平方向に延びる配線グリッドＧＲ上に配置され、ビアセルＶＣは、配線グリッドの格子点上に配置される。
【００４４】
図１（Ａ）では、水平方向に延びる配線グリッドの間隔と、垂直方向に延びる配線グリッドの間隔とが同じであるものとして説明したが、両方向の配線グリッドの間隔が異なっていてもよい。
【００４５】
ところで、本実施形態の比較例における集積回路設計装置では、図１（Ａ）に示すように、同じ方向に延びる隣接する配線グリッド同士の配線グリッド間隔ＧＤ１が同じである。そのため、マクロブロック１０２のコーナー部付近等の所定の領域では、配線の混雑度が高く、一部のセルや配線を配置できなくなることが多い。
【００４６】
このような領域内の配線の混雑度を低下させるために、例えば全体の配線グリッド間隔を変更することで配線の自由度を高めることが考えられる。ところが、配線処理を簡素化するためには、セルの端子を配線グリッドの格子点上に配置することが望ましく、単純に配線グリッド間隔を変更しただけでは、セルの端子が配置できなかったり、変更後の配線グリッド上に存在しないセルの端子と変更後の配線グリッド上の配線とを接続する配線処理が複雑化したりする。
【００４７】
そこで、本実施形態では、局所的に配線グリッド間隔を小さくすると共に、小さくした配線グリッドに対応したセルグリッドで規定されたセルを配置することで、当該領域内のセルや配線の配置を容易にすることができる。より具体的には、本実施形態では、図１（Ｂ）に示すように、配線の混雑度が高くなる領域を配線グリッド変更領域ＣＡとして設定し、配線グリッド変更領域ＣＡ内の配線グリッド間隔がＧＤ２ｘ、ＧＤ２ｙ（ＧＤ２ｘ＜ＧＤ１、ＧＤ２ｙ＜ＧＤ１）となるように配線グリッド間隔を小さく変更すると共に、配線グリッド変更領域ＣＡ内で、配線グリッド間隔ＧＤ２ｘ、ＧＤ２ｙに対応したセルグリッドで規定されたセルを配置する。このとき、ビアセルＶＣ間の最小ピッチｍ１より小さく、ビアセルＶＣのエッジと第１層配線ＭＬ１との最小ピッチｍ２以上で、且つビアセルＶＣのエッジと第２層配線ＭＬ２との最小ピッチｍ３以上となるように、各方向の配線グリッド間隔が規定されることが望ましい。
【００４８】
こうすることで、図１（Ａ）では配線の混雑度が高かった領域内で、セルや配線の配置が可能となり、複雑な配線処理を行うことなく、集積回路１００の高集積化を実現できるようになる。
【００４９】
以下では、このような処理を実現する集積回路設計装置の構成及び動作について説明する。
【００５０】
〔集積回路設計装置〕
図２に、本実施形態における集積回路設計システムの構成例のブロック図を示す。
【００５１】
本実施形態における集積回路設計システム１０は、集積回路設計装置２０と、表示装置４０とを含む。集積回路設計装置２０は、所与の自動配置配線アルゴリズムにより、レイアウト可能領域内に定義される格子状の配線グリッド上に、セルやマクロブロックとの間の接続情報を有するネットリストに従って、セルや配線を配置する処理を行う。集積回路設計装置２０によるセルや配線の配置処理の結果は、表示装置４０に表示される。集積回路設計装置２０の機能は、パーソナルコンピュータ、ネットワーク端末（サーバに接続されたクライアント端末）等により実現され、表示装置４０は、ＣＲＴ（Cathode Ray Tube）装置や液晶表示装置等によって実現される。
【００５２】
集積回路設計装置２０は、ネットリスト記憶部２２、配線グリッド変更領域設定部２４、配線グリッド変更処理部２６、セル情報記憶部２８、配置配線処理部３０を含む。ネットリスト記憶部２２は、ネットリストを記憶する。集積回路設計装置２０は、このネットリストに基づいて、セルや配線を配置する処理を行う。
【００５３】
配線グリッド変更領域設定部２４は、レイアウト可能領域内の所与の領域を配線グリッド変更領域として設定する。配線グリッド変更領域では、領域内のセル配置の優先度が他の領域のセル配置の優先度より低く設定されることが望ましい。この配線グリッド変更領域は、配線の混雑度が高い領域に設定されることが望ましい。
【００５４】
配線グリッド変更処理部２６は、格子状に設けられた配線グリッドの間隔を変更する処理を行う。即ち、配線グリッド変更処理部２６は、配線グリッド変更領域として設定される配線グリッド変更領域内において、互いに交差する第１及び第２の方向の少なくとも１つの方向に延びる配線グリッドの間隔を変更する。このとき、配線グリッド変更処理部２６は、配線グリッド変更領域内の配線グリッドの間隔をより小さく変更する。即ち、配線グリッド変更処理部２６による変更処理前の第１の配線グリッド間隔ＧＤ１が、変更処理により第２の配線グリッド間隔ＧＤ２（ＧＤ２＜ＧＤ１）となる。
【００５５】
セル情報記憶部２８は、複数のセル情報を記憶する。ここでセル情報は、セル毎に、セルの形状、端子数、端子位置等のセルや配線の配置に必要な情報を有する。各セルは、各セル内で定義されるセルグリッドを基準に、セル内のレイアウトの形状が指定される。セル情報記憶部２８は、同一機能を有する複数のセルの構成それぞれについて、複数種類のセルグリッド間隔のそれぞれのセル情報を記憶する。例えば、インバータ回路に対応するセルについて、セル情報記憶部２８には、第１のセルグリッド間隔で規定されたセルのセル情報と、第２のセルグリッド間隔で規定されたセルのセル情報とが記憶される。第１のセルグリッド間隔は第１の配線グリッド間隔（変更処理前の配線グリッド間隔）に対応するセルグリッド間隔であり、第２のセルグリッド間隔（変更処理後の配線グリッド間隔）は第２の配線グリッド間隔に対応するセルグリッド間隔である。
【００５６】
配置配線処理部３０は、ネットリスト記憶部２２に記憶されたネットリストに基づいて、配線グリッドの格子点上にその端子が配置されるようにセルを配置すると共に、配線グリッド上に配線を配置する。
【００５７】
図３に、図２の配線グリッド変更処理部２６の動作説明図を示す。図３では、集積回路１００がスタンダードセルにより構成されるものとし、各セルのＰ型（例えば第１導電型）アクティブ領域ＰＡ及びＮ型（例えば第２導電型）アクティブ領域ＮＡのみを模式的に表している。
【００５８】
配線グリッド変更領域設定部２４により設定される配線グリッド変更領域内では、配線グリッド変更処理部２６は、互いに交差する第１及び第２の方向の少なくとも１つの方向に延びる配線グリッドの間隔を変更することができる。
【００５９】
図３に示すように各セルには、Ｐ型アクティブ領域ＰＡ及びＮ型アクティブ領域ＮＡが配置されている。集積回路１００では、セルＣ１０〜Ｃ１３のように、所与の方向の全セルの同一導電型のアクティブ領域が隣接して配置される。この全セルの同一導電型のアクティブ領域が隣接して配置されるアクティブ領域連続配置方向をＸ方向とする。このＸ方向と交差するＹ方向には、セルＣ１０、Ｃ２０のように、Ｐ型アクティブ領域ＰＡ及びＮ型アクティブ領域ＮＡが交互に並ぶ場合や、セルＣ１３、Ｃ２４のように、ミラー配置によってＰ型アクティブ領域ＰＡ及びＮ型アクティブ領域ＮＡの一方が隣接して並ぶ場合がある。
【００６０】
このように、配線グリッド変更処理部２６は、配線グリッド変更領域内において、図３のように定義されるＸ方向及びＹ方向の少なくとも１つの方向に延びる配線グリッドの間隔を変更することができる。これにより、より小さく変更した配線グリッド間隔に対応したセルグリッド間隔で定義されるセルの生成が簡単になり、配線グリッド変更領域における配線処理も簡素化される。
【００６１】
図４に、図２の配置配線処理部３０の動作説明図を模式的に示す。
【００６２】
図４では、配線グリッド間隔ｙｄ１でＸ方向（第１の方向）に延びる配線グリッドと、配線グリッド間隔ｘｄ１でＹ方向（第２の方向）に延びる配線グリッドとが、格子状に設けられている。即ち、Ｘ方向に延びる配線グリッドと、Ｘ方向と交差するＹ方向に延びる配線グリッドとが設けられている。
【００６３】
配置配線処理部３０は、所与の形状を有するセルＣＬの端子ＸＣ１を、配線グリッドの所与の格子点上に配置する。また、配置配線処理部３０は、所与の配線グリッド上に配線ＣＮ１を配置する。
【００６４】
従って、配線グリッド変更領域外では、変更処理前の配線グリッドの格子点上にその端子が配置されるようにセルが配置されると共に、変更処理前の配線グリッド上に配線が配置される。そして、配線グリッド変更領域内では、配線グリッド変更処理部２６によりその間隔が変更された配線グリッドの格子点上にその端子が配置されると共に、変更処理後の配線グリッド上に配線が配置される。このとき、配線グリッド変更処理部２６により変更された配線グリッドの間隔（第２の配線グリッド間隔）に対応したセルグリッドを基準にその構成が指定されたセル（第２のセルグリッド間隔で指定されたセル）が、変更処理後の配線グリッドの格子点上に配置される。
【００６５】
図５に、図２のセル情報記憶部２８が記憶するセル情報の概要を示す。
【００６６】
セル情報記憶部２８は、同一機能のセルに対し、互いに異なるセルグリッド間隔で規定された複数種類のセル情報を記憶する。例えば、同じ機能を有するインバータ回路に対し、２種類のセルグリッド間隔で規定されたインバータ回路ＩＮＶ−１、ＩＮＶ−２のセル情報が、セル情報記憶部２８に記憶される。インバータ回路ＩＮＶ−１のセルは、例えば第１の配線グリッド間隔ＧＤ１に対応する第１のセルグリッド間隔ｃｇ１で規定されたセルである。インバータ回路ＩＮＶ−２のセルは、例えば第２の配線グリッド間隔ＧＤ２に対応する第２のセルグリッド間隔ｃｇ２（ｃｇ２＜ｃｇ１）で規定されたセルである。
【００６７】
図２の配線グリッド変更処理部２６が、Ｘ方向及びＹ方向に設けられる配線グリッドの（図４参照）うちＸ方向の配線グリッド間隔のみを小さくする変更を行う場合、セル情報記憶部２８には、元のセルグリッド間隔で規定されたセルのセル情報と、元のセルグリッド間隔に対してＸ方向のみ小さくしたセルグリッド間隔で規定されたセルのセル情報とが記憶される。そして、配置配線処理部３０は、セル情報記憶部２８からＸ方向のみセルグリッド間隔を小さくしたセルのセル情報を読み出し、該セルを配線グリッド変更領域内の配線グリッド上に配置し、該配線グリッド上に配置された配線と接続する処理を行う。
【００６８】
図６（Ａ）、図６（Ｂ）に、Ｘ方向の配線グリッド間隔のみを小さく変更した場合のセル情報記憶部２８が記憶するセル情報の説明図を示す。図６（Ａ）は、インバータ回路ＩＮＶ−１のセル情報の説明図を表す。図６（Ｂ）は、インバータ回路ＩＮＶ−２のセル情報の説明図を表す。図６（Ｂ）では、図６（Ａ）と同様の部分には同様の部分には同一符号を付し、適宜説明を省略する。
【００６９】
インバータ回路ＩＮＶ−１は、Ｘ方向及びＹ方向に延び、セルグリッド間隔ｃｇ１で格子状に設けられるセルグリッドを基準に、そのレイアウト形状が規定されている。即ち、インバータ回路ＩＮＶ−１には、高電位側電源電圧ＶＤＤが印加される配線層Ｍ１、低電位側電源電圧ＶＳＳが印加される配線層Ｍ２、Ｐ型のチャネル領域が形成されるＰ型アクティブ領域ＰＡ、Ｎ型のチャネル領域が形成されるＮ型アクティブ領域ＮＡが設けられる。配線層Ｍ１とＰ型アクティブ領域ＰＡとは、そのソース領域においてビアセルＶＣ１により電気的に接続される。配線層Ｍ２とＮ型アクティブ領域ＮＡとは、そのソース領域においてビアセルＶＣ２により電気的に接続される。また、インバータ回路ＩＮＶ−１には、ポリシリコン層ＰＬが、Ｐ型アクティブ領域ＰＡとＮ型アクティブ領域ＮＡとの上層に（絶縁膜を介して）設けられ、このポリシリコン層ＰＬには、セルグリッドの格子点上に配置される入力端子Ａが設けられる。Ｐ型アクティブ領域ＰＡのうちドレイン領域となる領域とＮ型アクティブ領域ＮＡのうちドレイン領域となる領域には、ビアセルＶＣ３、ＶＣ４を介して配線層Ｍ３が設けられて電気的に接続される。この配線層Ｍ３には、セルグリッドの格子点上に配置される出力端子Ｘが設けられる。
【００７０】
インバータ回路ＩＮＶ−１のセル情報は、上記の図６（Ａ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００７１】
これに対して、インバータ回路ＩＮＶ−２は、Ｘ方向に延びセルグリッド間隔ｃｇ１で設けられるセルグリッドＣＧを基準に、又はＹ方向に延びセルグリッド間隔ｃｇ２で設けられるセルグリッドＣＧを基準に、そのレイアウト形状が規定されている。即ち、インバータ回路ＩＮＶ−２は、Ｙ方向の長さはインバータ回路ＩＮＶ−１と同じで、Ｘ方向の長さが短くなっている。そのため、インバータ回路ＩＮＶ−２は、インバータ回路ＩＮＶ−１に比べて、Ｘ方向に長さｄ１だけ短い形状を有する。その一方で、インバータ回路ＩＮＶ−２では、配線グリッド変更処理部２６がより小さく変更する配線グリッド間隔に対応したセルグリッドの格子点上に、入力端子Ａ及び出力端子Ｘが配置される。
【００７２】
インバータ回路ＩＮＶ−２のセル情報は、上記の図６（Ｂ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００７３】
これにより、配線の混雑度が高かった領域内で、配線グリッド間隔を小さくできるようになるので、より多くのセルや配線の配置が可能となる。しかも、小さくした配線グリッド間隔に対応したセルグリッド間隔で定義されたセルを、この領域内で配置できるようになるため、複雑な配線処理を行うことなく、集積回路１００の高集積化を実現できるようになる。
【００７４】
また、図２の配線グリッド変更処理部２６が、Ｘ方向及びＹ方向に設けられる配線グリッドのうちＹ方向の配線グリッド間隔のみを小さくする変更を行う場合、セル情報記憶部２８には、元のセルグリッド間隔で規定されたセルのセル情報と、元のセルグリッド間隔に対してＹ方向のみ小さくしたセルグリッド間隔で規定されたセルのセル情報とが記憶される。そして、配置配線処理部３０は、セル情報記憶部２８からＹ方向のみセルグリッド間隔を小さくしたセルのセル情報を読み出し、該セルを配線グリッド変更領域内の配線グリッド上に配置し、該配線グリッド上に配置された配線と接続する処理を行う。
【００７５】
図７（Ａ）、図７（Ｂ）に、Ｙ方向の配線グリッド間隔のみを小さく変更した場合のセル情報記憶部２８が記憶するセル情報の説明図を示す。図７（Ａ）は、インバータ回路ＩＮＶ−１のセル情報の説明図を表す。図７（Ｂ）は、インバータ回路ＩＮＶ−２のセル情報の説明図を表す。図７（Ａ）では、図６（Ａ）と同一部分には同一符号を付し、適宜説明を省略する。図７（Ｂ）では、図７（Ａ）と同様の部分には同様の部分には同一符号を付し、適宜説明を省略する。
【００７６】
インバータ回路ＩＮＶ−１は、Ｘ方向及びＹ方向に延び、セルグリッド間隔ｃｇ１で格子状に設けられるセルグリッドを基準に、そのレイアウト形状が規定されている。図７（Ａ）に示すインバータ回路ＩＮＶ−１は、図６（Ａ）に示すインバータ回路ＩＮＶ−１と同一形状を有している。インバータ回路ＩＮＶ−１のセル情報は、上記の図７（Ａ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００７７】
これに対して、インバータ回路ＩＮＶ−２は、Ｘ方向に延びセルグリッド間隔ｃｇ３で設けられるセルグリッドＣＧを基準に、又はＹ方向に延びセルグリッド間隔ｃｇ１で設けられるセルグリッドＣＧを基準に、そのレイアウト形状が規定されている。即ち、インバータ回路ＩＮＶ−２は、Ｘ方向の長さはインバータ回路ＩＮＶ−１と同じで、Ｙ方向の長さが短くなっている。そのため、インバータ回路ＩＮＶ−２は、インバータ回路ＩＮＶ−１に比べて、Ｙ方向に長さｄ２だけ短い形状を有する。その一方で、インバータ回路ＩＮＶ−２では、配線グリッド変更処理部２６がより小さく変更する配線グリッド間隔に対応したセルグリッドの格子点上に、入力端子Ａ及び出力端子Ｘが配置される。
【００７８】
インバータ回路ＩＮＶ−２のセル情報は、上記の図７（Ｂ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００７９】
これにより、配線の混雑度が高かった領域内で、配線グリッド間隔を小さくできるようになるので、より多くのセルや配線の配置が可能となる。しかも、小さくした配線グリッド間隔に対応したセルグリッド間隔で定義されたセルを、この領域内で配置できるようになるため、複雑な配線処理を行うことなく、集積回路１００の高集積化を実現できるようになる。
【００８０】
また、図２の配線グリッド変更処理部２６が、Ｘ方向の配線グリッド間隔及びＹ方向の配線グリッド間隔を小さくする変更を行う場合、セル情報記憶部２８には、元のセルグリッド間隔で規定されたセルのセル情報と、元のセルグリッド間隔に対してＸ方向及びＹ方向に小さくしたセルグリッド間隔で規定されたセルのセル情報とが記憶される。そして、配置配線処理部３０は、セル情報記憶部２８からＸ方向及びＹ方向にセルグリッド間隔を小さくしたセルのセル情報を読み出し、該セルを配線グリッド変更領域内の配線グリッド上に配置し、該配線グリッド上に配置された配線と接続する処理を行う。
【００８１】
図８（Ａ）、図８（Ｂ）に、Ｘ方向及びＹ方向に配線グリッド間隔を小さく変更した場合のセル情報記憶部２８が記憶するセル情報の説明図を示す。図８（Ａ）は、インバータ回路ＩＮＶ−１のセル情報の説明図を表す。図８（Ｂ）は、インバータ回路ＩＮＶ−２のセル情報の説明図を表す。図８（Ａ）では、図６（Ａ）と同一部分には同一符号を付し、適宜説明を省略する。図８（Ｂ）では、図８（Ａ）と同様の部分には同様の部分には同一符号を付し、適宜説明を省略する。
【００８２】
インバータ回路ＩＮＶ−１は、Ｘ方向及びＹ方向に延び、セルグリッド間隔ｃｇ１で格子状に設けられるセルグリッドを基準に、そのレイアウト形状が規定されている。図８（Ａ）に示すインバータ回路ＩＮＶ−１は、図６（Ａ）に示すインバータ回路ＩＮＶ−１と同一形状を有している。インバータ回路ＩＮＶ−１のセル情報は、上記の図８（Ａ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００８３】
これに対して、インバータ回路ＩＮＶ−２は、Ｘ方向に延びセルグリッド間隔ｃｇ３で設けられるセルグリッドＣＧを基準に、又はＹ方向に延びセルグリッド間隔ｃｇ２で設けられるセルグリッドＣＧを基準に、そのレイアウト形状が規定されている。即ち、インバータ回路ＩＮＶ−２は、インバータ回路ＩＮＶ−１に比べて、Ｘ方向に長さｄ１、Ｙ方向に長さｄ２だけ短い形状を有する。その一方で、インバータ回路ＩＮＶ−２では、配線グリッド変更処理部２６がより小さく変更する配線グリッド間隔に対応したセルグリッドの格子点上に、入力端子Ａ及び出力端子Ｘが配置される。
【００８４】
インバータ回路ＩＮＶ−２のセル情報は、上記の図８（Ｂ）に示す形状が、セルグリッド間隔、セルグリッド座標系の座標位置等により指定される情報である。
【００８５】
これにより、配線の混雑度が高かった領域内で、配線グリッド間隔を小さくできるようになるので、より多くのセルや配線の配置が可能となる。しかも、小さくした配線グリッド間隔に対応したセルグリッド間隔で定義されたセルを、この領域内で配置できるようになるため、複雑な配線処理を行うことなく、集積回路１００の高集積化を実現できるようになる。
【００８６】
以上のように、本実施形態における集積回路設計装置２０は、同一機能を有するセルの構成を互いに異なるセルグリッド間隔で指定する複数のセルの情報を記憶するセル情報記憶部２８と、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定部２４と、配線グリッド変更領域設定部２４によって配線グリッド変更領域として設定された領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更処理部２６と、配線グリッド変更領域として設定された領域内において、配線グリッド変更処理部２６によりその間隔が変更された配線グリッドに所与の配線とセルとを配置する配置配線処理部３０とを含む。そして、配置配線処理部３０が、セル情報記憶部２８に記憶されたセルの配置情報に基づいて、配線グリッド変更処理部２６により変更された配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、配線グリッド変更処理部２６によりその間隔が変更された配線グリッドに配置することができる。
【００８７】
〔配線グリッド変更領域〕
ところで、本実施形態では、レイアウト可能領域内で、局所的に１又は複数の配線グリッド変更領域を設定することが望ましく、例えば以下のような複数の領域のうち少なくとも１つに本実施形態の配線グリッド変更領域を設定することが望ましい。
【００８８】
図９に、本実施形態における配線グリッド変更領域の例を示す。図９は、本実施形態の集積回路設計装置２０において自動配置配線によりセル及び配線が配置される集積回路１００のフロアプランの一例を模式的に表す。
【００８９】
集積回路１００は、矩形状のレイアウト可能領域ＬＡの各辺に隣接して、一定の幅のＩ／Ｏセル領域ＩＡ１〜ＩＡ４が設けられる。各Ｉ／Ｏセル領域には、チップの縁部に沿って、パッドと該パッドに対応するＩ／Ｏセルとが配置される。このパッドが、ＩＣパッケージの端子とボンディングワイヤを介して電気的に接続される。
【００９０】
集積回路設計装置２０によるセル及び配線の自動配置配線は、レイアウト可能領域ＬＡにおいて行われる。図９では、レイアウト可能領域ＬＡに、マクロブロックＭＢ１〜ＭＢ３が配置されているものとする。
【００９１】
本実施形態では、図９に示すように、マクロブロックのコーナー部を含む領域を、配線グリッド変更領域として設定することが望ましい。図９では、マクロブロックＭＢ１〜ＭＢ３の各マクロブロックのコーナー部を含む領域ＭＣ１〜ＭＣ１０が、配線グリッド変更領域として設定される。
【００９２】
図１０に、マクロブロックのコーナー部を含む領域に設定される配線グリッド変更領域の説明図を示す。図１０は、領域ＭＣ４の説明図を表す。図１０において、図９と同一部分には同一符号を付し、適宜説明を省略する。
【００９３】
ここで、マクロブロックＭＢ１が、短辺の長さがＤ１、長辺の長さがＤ２である矩形の形状を有しているものとする。このとき、配線グリッド変更領域としての領域ＭＣ４は、マクロブロックＭＢ１のコーナー部ＣＮＲを中心とし、該コーナー部ＣＮＲにおいて交差するマクロブロックＭＢの境界線の二辺Ｅ１、Ｅ２のうち短辺Ｅ１の長さＤ１を一辺の長さとする正方形の領域とすることが望ましい。従って、図１０の配線グリッド変更領域としての領域ＭＣ４では、セルの配置の優先順位が下げられると共に、他の領域と比較して配線グリッド間隔が小さくなるように変更される。
【００９４】
これにより、マクロブロックのコーナー部を迂回する配線によって混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路１００の高集積化に寄与できるようになる。
【００９５】
図１０では、マクロブロックＭＢ１の４つのコーナー部のうち１つのコーナー部について説明したが、他のコーナー部についても同様に配線グリッド変更領域を設定することができる。
【００９６】
また本実施形態では、図９に示すように、マクロブロックとＩ／Ｏセル領域とに挟まれた領域を、配線グリッド変更領域として設定することが望ましい。図９では、マクロブロックＭＢ１とＩ／Ｏセル領域ＩＡ１とに挟まれた領域ＭＤ１、マクロブロックＭＢ１とＩ／Ｏセル領域ＩＡ４とに挟まれた領域ＭＤ２、マクロブロックＭＢ２とＩ／Ｏセル領域ＩＡ１とに挟まれた領域ＭＤ３、マクロブロックＭＢ２とＩ／Ｏセル領域ＩＡ２とに挟まれた領域ＭＤ４、マクロブロックＭＢ３とＩ／Ｏセル領域ＩＡ２とに挟まれた領域ＭＤ５、及びマクロブロックＭＢ３とＩ／Ｏセル領域ＩＡ３とに挟まれた領域ＭＤ６が、配線グリッド変更領域として設定される。
【００９７】
図１１に、マクロブロックとＩ／Ｏセル領域とに挟まれる領域に設定される配線グリッド変更領域の説明図を示す。図１１は、領域ＭＤ４の説明図を表す。図１１において、図９と同一部分には同一符号を付し、適宜説明を省略する。
【００９８】
この領域ＭＤ４は、互いに交差するＸ方向及びＹ方向のいずれかの方向において、マクロブロックとＩ／Ｏセル領域とに挟まれた領域である。従って、図１１の配線グリッド変更領域としての領域ＭＤ４では、セルの配置の優先順位が下げられると共に、他の領域と比較して配線グリッド間隔が小さくなるように変更される。
【００９９】
これにより、Ｉ／Ｏセル領域に配置されるＩ／Ｏセルに接続される配線と、各マクロブロックに接続される配線とにより混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路１００の高集積化に寄与できるようになる。
【０１００】
ここで、領域ＭＤ４内の第１の方向（図１１ではＹ方向）に延びる配線グリッド変更処理前の配線グリッド数をｙ（ｙは自然数）、領域ＭＤ４内において第１の方向と交差する第２の方向（図１１ではＸ方向）に延びて所与の配線と接続されるＩ／Ｏセル領域ＩＡ２の端子数をｘ１（ｘ１は自然数）、領域ＭＤ４内において第２の方向と反対方向に延びて所与の配線と接続されるマクロブロックＭＢ２の端子数をｘ２（ｘ２は自然数）とする。このとき、ｙ＜ｘ１＋ｘ２となる領域を、配線グリッド変更領域として設定する。
【０１０１】
Ｉ／Ｏセル領域ＩＡ２の端子と接続可能な配線が配置される配線グリッド数とマクロブロックＭＢ２の端子と接続可能な配線が配置される配線グリッドとの総和が、変更前の配線グリッド数より大きいときに、配線の混雑度が高くなる可能性が大きい。従って、このケースの領域を配線グリッド変更領域として設定することで、できるだけ少ない配線グリッド変更領域を設定しながら、配線の混雑度を低下させて、より一層の高集積化に寄与することができるようになる。
【０１０２】
更にまた、本実施形態では、図９に示すように、第１及び第２のマクロブロックに挟まれた領域を、配線グリッド変更領域として設定することが望ましい。図９では、マクロブロックＭＢ２、ＭＢ３に挟まれた領域ＭＦ１が、配線グリッド変更領域として設定される。
【０１０３】
図１２に、第１及び第２のマクロブロックに挟まれる領域に設定される配線グリッド変更領域の説明図を示す。図１２は、領域ＭＦ１の説明図を表す。図１２において、図９と同一部分には同一符号を付し、適宜説明を省略する。
【０１０４】
この領域ＭＦ１は、互いに交差するＸ方向及びＹ方向のいずれかの方向において、第１及び第２のマクロブロックに挟まれた領域である。図１２では、第１のマクロブロックはマクロブロックＭＢ２であり、第２のマクロブロックはマクロブロックＭＢ３である。従って、図１２の配線グリッド変更領域としての領域ＭＦ１では、セルの配置の優先順位が下げられると共に、他の領域と比較して配線グリッド間隔が小さくなるように変更される。
【０１０５】
これにより、各マクロブロックに接続される配線により混雑度が高くなる領域において、配線可能な配線グリッド数を増加させることができるので、混雑度を低下させ、集積回路１００の高集積化に寄与できるようになる。
【０１０６】
ここで、領域ＭＦ１内の第１の方向（図１２ではＸ方向）に延びる配線グリッド変更処理前の配線グリッド数をｘ（ｘは自然数）、領域ＭＦ１内において第１の方向と交差する第２の方向（図１２ではＹ方向）に延びて所与の配線と接続されるマクロブロックＭＢ２の端子数をｙ１（ｙ１は自然数）、領域ＭＦ１内において第２の方向と反対方向に延びて所与の配線と接続されるマクロブロックＭＢ３の端子数をｙ２（ｙ２は自然数）とする。このとき、ｘ＜ｙ１＋ｙ２となる領域を、配線グリッド変更領域として設定する。
【０１０７】
マクロブロックＭＢ２の端子と接続可能な配線が配置される配線グリッド数とマクロブロックＭＢ３の端子と接続可能な配線が配置される配線グリッドとの総和が、変更前の配線グリッド数より大きいときに、配線の混雑度が高くなる可能性が大きい。従って、このケースの領域を配線グリッド変更領域として設定することで、できるだけ少ない配線グリッド変更領域を設定しながら、配線の混雑度を低下させて、より一層の高集積化に寄与することができるようになる。
【０１０８】
〔配線グリッド間隔の変更処理〕
本実施形態では、図２の配線グリッド変更処理部２６が行う配線グリッド間隔の変更処理は、製造プロセスに依存するデザインルールの範囲内で行われる必要がある。そこで、配線グリッド変更処理部２６は、以下のように配線グリッド間隔を小さく変更することで、デザインルールの範囲内での変更処理を実現することができる。
【０１０９】
図１３に、図２の配線グリッド変更処理部２６が行う配線グリッド間隔の変更処理の説明図を示す。図１３は、集積回路１００のレイアウトの概要を模式的に表したものである。
【０１１０】
図１３では、格子状に設けられた配線グリッドＧＲ上に、第１層配線ＭＬ１、第１層配線ＭＬ１より上層の第２層配線ＭＬ２、第１層配線ＭＬ１及び第２層配線ＭＬ２を電気的に接続するビアセルＶＣが配置される。このとき、配線グリッド変更処理部２６は、所与のデザインルール上、ビアセルＶＣ間の最小ピッチｍ１より小さく、且つビアセルＶＣと配線ＭＬ１、ＭＬ２との間の最小ピッチｍ１０以上となるように、配線グリッド変更領域として設定された領域内の配線グリッドの間隔をより小さく変更する。
【０１１１】
即ち、セル及び配線の配置後にデザインルールチェックを行う場合、配線グリッド変更処理部２６は、ビアセルＶＣ間のピッチに対しデザインルールエラーが発生し、且つビアセルＶＣと配線ＭＬ１、ＭＬ２との間のピッチに対しデザインルールエラーが発生しないように配線グリッド間隔をより小さく変更する。
【０１１２】
一方、配線グリッド変更処理部２６による配線グリッドの変更処理前の配線グリッド間隔は、ビアセルＶＣ間のピッチやビアセルＶＣと配線ＭＬ１、ＭＬ２との間のピッチに対して、デザインルールエラーが発生しない間隔とする。
【０１１３】
これにより、図１（Ａ）に示すケースと比較しても、デザインルールの範囲内で配線グリッド間隔をより小さく変更できるようになる。
【０１１４】
〔集積回路設計装置の動作〕
以上のような集積回路設計装置２０の機能は、ハードウェアにより実現されてもよいし、ソフトウェアにより実現されてもよい。以下では、集積回路設計装置２０の機能が、ソフトウェア処理により実現されるものとする。
【０１１５】
図１４に、図２の集積回路設計装置２０のハードウェア構成例のブロック図を示す。
【０１１６】
集積回路設計装置２０は、ＣＰＵ５０、Ｉ／Ｆ回路５２、読み出し専用メモリ（Read Only Memory：ＲＯＭ）５４、ランダムアクセスメモリ（Random Access Memory:ＲＡＭ）５６、バス５８を有し、バス５８を介して、ＣＰＵ５０、Ｉ／Ｆ回路５２、ＲＯＭ５４、ＲＡＭ５６は電気的に接続されている。
【０１１７】
例えばＲＯＭ５４又はＲＡＭ５６には、集積回路設計装置２０の機能を実現するプログラムが記憶される。ＣＰＵ５０は、ＲＯＭ５４又はＲＡＭ５６に記憶されたプログラムを読み出し、該プログラムに対応した処理を実行することで、上述の集積回路設計装置２０の機能をソフトウェア処理で実現できる。即ち、ＲＯＭ５４又はＲＡＭ５６に記憶されたプログラムを読み込んで該プログラムに対応した処理を行うＣＰＵ５０により、図２の集積回路設計装置２０の各部の機能が実現される。
【０１１８】
なお、ＲＡＭ５６は、ＣＰＵ５０による処理の作業領域として用いられたり、Ｉ／Ｆ回路５２やＲＯＭ５４のバッファ領域として用いられたりする。Ｉ／Ｆ回路５２は、図２の表示装置４０への出力インタフェース処理（表示処理、表示駆動処理）や、図示しない入力インタフェースからの配線グリッド変更領域を指定する信号の入力インタフェース処理等を行う。
【０１１９】
図１５に、図２の集積回路設計装置２０の処理例のフロー図を示す。例えば図１４のＲＯＭ５４又はＲＡＭ５６には、図１５に示す処理を実現するためのプログラムが格納されており、ＣＰＵ５０がＲＯＭ５４又はＲＡＭ５６に格納されたプログラムを読み出して該プログラムに対応した処理を実行することで、図１５に示す処理をソフトウェア処理により実現できる。
【０１２０】
まず、集積回路設計装置２０は、予め生成されたフロアプラン設定情報を読み込んだり、或いは外部からの指定されたフロアプラン設定情報を取り込んだりして、集積回路１００のレイアウト可能領域内にマクロブロックを配置する処理を行う（ステップＳ１０）。
【０１２１】
次に、集積回路設計装置２０は、配線グリッド変更領域ステップとして、配線グリッド変更領域設定部２４の機能により、例えば外部から指定された配線グリッド変更領域を、上記のマクロブロックが配置された集積回路１００のレイアウト可能領域に設定する処理を行う（ステップＳ１２）。ステップＳ１２で設定される配線グリッド変更領域は、例えば図９及び図１０で説明したマクロブロックのコーナー部を含む領域や、例えば図９及び図１１で説明したＩ／Ｏセル領域とマクロブロックとに挟まれた領域や、例えば図９及び図１２で説明した２つのマクロブロックに挟まれた領域である。
【０１２２】
ここで、集積回路設計装置２０は、一旦、配置配線処理部３０の機能により、セル及び配線の配置処理を行う（ステップＳ１４）。即ち、ステップＳ１４では、配線の混雑度を確認するために、ステップＳ１２で設定された配線グリッド変更領域内の配線グリッド間隔が変更されない状態でセル及び配線の配置処理が行われる。
【０１２３】
ステップＳ１４において、一度、セル及び配線の配置処理が行われた後、集積回路設計装置２０は、配線の混雑度をチェックする（ステップＳ１６）。このとき、例えば、配線グリッド変更領域でセルや配線の配置ができなかったとき、その旨を表示装置４０により通知したり、配線の配置ができなかった配線グリッド変更領域以外の領域を表示装置４０により通知したりする。
【０１２４】
ステップＳ１６において、配線の混雑度をチェックした結果、所与の閾値以下の混雑度のとき（ステップＳ１６：Ｙ）、集積回路設計装置２０は、一連の処理を終了する（エンド）。
【０１２５】
ステップＳ１６において、配線の混雑度をチェックした結果、混雑度が所与の閾値を超えているとき（ステップＳ１６：Ｎ）、集積回路設計装置２０は、配線グリッド変更ステップとして、配線グリッド変更処理部２６の機能により、例えば図１３で説明したように、配線グリッド変更領域内の配線グリッド間隔を小さくする変更処理を行う（ステップＳ１８）。
【０１２６】
続いて、集積回路設計装置２０は、配置配線処理部３０の機能により、配線グリッド変更領域内のセルを、ステップＳ１８で変更した配線グリッド間隔に対応するセルグリッド間隔で定義された同一機能のセルに置き換え（ステップＳ２０）、再びステップＳ１４に戻って配置配線処理を行う。即ち、ステップＳ２０とこれに続いて行われるステップＳ１４が、配線グリッド変更領域内において、配置配線ステップとして、配線グリッド変更ステップにおいて配線グリッド間隔が変更された配線グリッドに所与の配線を配置すると共に、配線グリッド変更ステップにおいて変更された配線グリッドの間隔に対応したセルグリッドを基準にその構成が指定されたセルを、配線グリッド変更ステップにおいて配線グリッド間隔が変更された配線グリッドに配置する。
【０１２７】
また、ステップＳ２０とこれに続いて行われるステップＳ１４では、配線グリッド変更領域以外の領域では、変更処理前の配線グリッド間隔で、所与の配線が配置されると共に、変更処理前の配線グリッド間隔に対応したセルグリッドを基準にその構成が指定されたセルが、変更処理前の配線グリッド間隔の配線グリッドに配置される。
【０１２８】
セル情報記憶部２８に、複数種類のセルグリッド間隔に対応したセル情報を記憶させておけば、ステップＳ１６で配線混雑度が所与の閾値以下となるまで、配線グリッド変更領域内の配線グリッドを小さく変更すると共に、変更した配線グリッド間隔に対応するセルグリッド間隔で定義された同一機能のセルの置き換えを繰り返すことができる。
【０１２９】
なお、図１５では、ステップＳ２０に続いて、ステップＳ１４においてセル及び配線の配置配線処理が行われるものとして説明したが、本発明はこれに限定されるものではない。例えば、ステップＳ１６における混雑度のチェックの結果、配線の配置ができなかった配線グリッド変更領域以外の領域が特定されたとき、ステップＳ２０に続いてステップＳ１２に戻って、新たに配線グリッド変更領域を追加して設定してから、ステップＳ１４においてセル及び配線の配置配線処理が行われるようにしてもよい。
【０１３０】
以上のように、本実施形態では、所与の領域を配線グリッド変更領域として設定する配線グリッド変更領域設定ステップと、配線グリッド変更領域設定ステップにおいて配線グリッド変更領域として設定された領域内の配線グリッドの間隔をより小さく変更する配線グリッド変更ステップと、配線グリッド変更領域として設定された領域内において、配線グリッド変更ステップにおいてその間隔が変更された配線グリッドに所与の配線を配置すると共に、配線グリッド変更ステップにおいて変更された配線グリッドの間隔に対応したセルグリッド間隔でその構成が指定されたセルを、配線グリッド変更ステップにおいてその間隔が変更された配線グリッドに配置する配置配線ステップとを含むことができる。
【０１３１】
このような本実施形態によれば、特殊な配線処理を行うことなく、処理負荷の増大を抑えながら、配線グリッド変更領域内の混雑度を低下させ、集積回路１００の高集積化を実現できるようになる。
【０１３２】
〔変形例〕
本実施形態における集積回路設計装置２０では、同一機能のセルが複数種類のセルグリッド間隔で定義された複数のセル情報がセル情報記憶部２８に記憶されているものとして説明したが、本発明はこれに限定されるものではない。例えば、配線グリッド間隔をより小さく変更したとき、この変更後の配線グリッド間隔に対応したセルグリッド間隔で定義されるセル情報を新たに生成するようにしてもよい。
【０１３３】
図１６に、本実施形態の変形例における集積回路設計装置の構成例のブロック図を示す。図１６において、図２と同一部分には同一符号を付し、適宜説明を省略する。
【０１３４】
本実施形態の変形例における集積回路設計装置８０は、ネットリスト記憶部２２、配線グリッド変更領域設定部２４、配線グリッド変更処理部２６、セル情報記憶部２８、配置配線処理部３０、セル情報生成部９０を含む。
【０１３５】
ネットリスト記憶部２２、配線グリッド変更領域設定部２４、配線グリッド変更処理部２６、セル情報記憶部２８、及び配置配線処理部３０の各部の構成及び機能は、本実施形態と同様であるため説明を省略する。
【０１３６】
セル情報生成部９０は、配線グリッド変更処理部２６による変更後の配線グリッド間隔に対応したセルグリッド間隔でそのレイアウト形状が定義されたセルの情報を新たに生成する。このため、配線グリッド変更処理部２６により配線グリッド間隔をより小さくする変更処理が行われたとき、セル情報生成部９０は、セル情記憶部２８に記憶されたセルのうち、配線グリッド変更領域内に配置されるセルの情報を読み出す。そして、セル情報生成部９０は、配線グリッド変更処理部２６による変更後の配線グリッド間隔に対応したセルグリッド間隔となるように、読み出したセルの情報のセルグリッド間隔をより小さく変更し、これに対応したセルの形状を指定する情報を生成する。このとき、セル情報生成部９０は、セルグリッド間隔を小さくした場合でも、変更後のセルグリッドの格子点上に端子が配置されるようにセルの形状を指定する情報を生成する。
【０１３７】
配置配線処理部３０は、配線グリッド変更領域内において、セル情報生成部９０により生成されたセルの情報に基づいて、配線グリッド間隔が変更された配線グリッド上に、セル及び配線を配置する処理を行う。
【０１３８】
なお、セル情報生成部９０は、配線グリッド変更処理部２６により配線グリッド間隔が変更される毎に、セル情報を生成するようにしてもよいし、予め配線グリッド変更処理部２６による変更後の複数の配線グリッド間隔が判明している場合には、それぞれの配線グリッド間隔に対応したセルグリッド間隔のセル情報を、配線グリッド変更処理部２６による変更処理に先立って生成するようにしてもよい。
【０１３９】
本変形例によれば、配線グリッド変更処理部２６が任意の配線グリッド間隔に変更できるようになるので、集積回路１００の高集積化をより一層促進させることができるようになる。
【０１４０】
〔集積回路〕
以上説明した本実施形態における集積回路設計装置２０又は本変形例における集積回路設計装置８０により、レイアウト設計が行われる集積回路１００は、配線グリッド変更領域内の配線の混雑度が低下し、これまで以上に高集積化される。
【０１４１】
図１７に、本実施形態又はその変形例における集積回路設計装置により設計される集積回路１００の機能ブロック図の一例を示す。図１７では、集積回路１００がマイクロコンピュータであるものとして説明するが、本発明はこれに限定されるものではない。
【０１４２】
本実施形態における集積回路設計装置２０又は本変形例における集積回路設計装置８０によりレイアウト設計される集積回路１００は、ＣＰＵ１１０、ＲＯＭ１１２、ＲＡＭ１１４、第１及び第２の周辺回路１１６、１１８、Ｉ／Ｏ（Input/Output）ポート１２０、表示メモリ１２２、ＬＣＤ（Liquid Crystal Display）駆動回路１２４、電源回路１２６、及びバス１３０を含む。これらの回路ブロックは、半導体基板（広義には基板、チップ）に形成される。ＣＰＵ１１０、ＲＯＭ１１２、ＲＡＭ１１４、第１及び第２の周辺回路１１６、１１８、Ｉ／Ｏポート１２０、表示メモリ１２２、ＬＣＤ駆動回路１２４、及び電源回路１２６は、バス１３０を介し電気的に接続される。
【０１４３】
この集積回路１００は、外部端子群Ｐ１、Ｐ２を有する。外部端子群Ｐ１、Ｐ２は、それぞれ複数の端子により構成される。外部端子群Ｐ１、Ｐ２を構成する各端子は、当該端子に対応して設けられたＩ／Ｏ（Input/Output）回路と電気的に接続され半導体基板（チップ）上に形成されたパッドを有する。各パッドとこれに対応するＩＣ（Integrated Circuit）パッケージのピンとがボンディングワイヤを介して電気的に接続される。
【０１４４】
ＣＰＵ１１０は、ＲＯＭ１１２又はＲＡＭ１１４に記憶されたプログラムをバス１３０を介して読み出し、該プログラムに対応した処理を実行することで、集積回路１００の全体の制御を司る。
【０１４５】
ＲＯＭ１１２には、ＣＰＵ１１０のプログラム又は各種の制御データが予め記憶されており、ＣＰＵ１１０又は他の回路がバス１３０を介してＲＯＭ１１２からプログラム又は制御データを読み出す。
【０１４６】
ＲＡＭ１１４には、ＣＰＵ１１０、第１及び第２の周辺回路１１６、１１８、及びＩ／Ｏポート１２０のワーク領域として、データが一時的に格納されたり、表示メモリ１２２に格納される表示データが一時的に格納されたりする。
【０１４７】
第１の周辺回路１１６は、例えば割り込みコントローラ、タイマ回路やウオッチドッグタイマにより構成され、バス１３０を介してＣＰＵ１１０により設定された条件で動作し、その動作結果をＣＰＵ１１０に通知することができるようになっている。
【０１４８】
第２の周辺回路１１８は、例えばプログラマブルタイマやシリアルインターフェス回路により構成され、バス１３０を介してＣＰＵ１１０により設定された条件で動作し、Ｉ／Ｏポート１２０を経由して、外部端子群Ｐ２を介して信号が入力又は出力されるようになっている。
【０１４９】
Ｉ／Ｏポート１２０は、汎用ポートとして機能し、外部端子群Ｐ２を構成する端子のいずれかを介して信号の入力や出力が行われる。
【０１５０】
表示メモリ１２２には、ＣＰＵ１１０により生成された図示しない液晶表示パネル（広義には、液晶表示装置）の１画面分の表示データが記憶される。表示メモリ１２２に記憶された表示データは、ＬＣＤ駆動回路１２４に送られる。外部端子群Ｐ１には、液晶表示パネルのコモン電極やセグメント電極が電気的に接続される。ＬＣＤ駆動回路１２４は、ＣＰＵ１１０により設定された表示駆動条件で、外部端子群Ｐ１を介して液晶表示パネルを駆動する制御を行う。
【０１５１】
電源回路１２６は、集積回路１００を構成する各回路ブロックの電源を生成する。この電源回路１２６は、バス１３０を介してＣＰＵ１１０により設定された条件で、各回路ブロックの電源電圧を生成する。
【０１５２】
このような集積回路１００は、ＲＯＭ１１２又はＲＡＭ１１４から読み出されたプログラムに従って生成した１画面の画像データを生成し、該画像データを表示メモリ１２２に格納する。そして、ＬＣＤ動回路１２４は、表示メモリ１２２に格納された画像データを読み出し、該画像データ（画像信号）に対応した駆動信号を用いて、液晶表示パネルを駆動する制御を行う。
【０１５３】
図１８に、本実施形態又はその変形例における集積回路設計装置により設計される図１７の集積回路１００のフロアプランの一例を模式的に示す。図１８において、図１７と同一部分には同一符号を付し、適宜説明を省略する。図１８では、集積回路１００が、スタンダードセルとマクロブロックとで構成されるものとする。
【０１５４】
集積回路１００が形成される矩形状の半導体基板の縁部に沿ってＩ／Ｏセル領域が設けられており、Ｉ／Ｏセル領域に周囲が囲まれたレイアウト可能領域に、図１７の各ブロックがハードマクロ又はスタンダードセルとして配置されている。例えば、図１８において、ＲＯＭ１１２、ＲＡＭ１１４、及び電源回路１２６等のアナログ回路がマクロブロックとして配置され、図１７のその他の回路の機能がスタンダードセルにより構成されるものとする。
【０１５５】
図１８の集積回路１００では、本実施形態における集積回路設計装置２０によって、例えば、ＲＯＭ１１２、ＲＡＭ１１４、及び電源回路１２６の各ハードマクロのコーナー部を含む領域には、配線グリッド変更領域が設定される。そのため、集積回路１００は、この配線グリッド変更領域内で配線グリッド間隔が小さくされた上に、小さくなった配線グリッド間隔に対応するセルグリッド間隔でその形状が指定されたスタンダードセルに置き換えられて配置される。従って、集積回路１００は、ＲＯＭ１１２、ＲＡＭ１１４、及び電源回路１２６の各ハードマクロのコーナー部を含む領域には、その他のスタンダードセルに比べて、同一機能のセルであったとしてもＸ方向及びＹ方向の少なくとも１つの方向に幅が小さくなったスタンダードセルが配置される（図１８のＡＲ１）。
【０１５６】
また、図１８の集積回路１００では、本実施形態における集積回路設計装置２０又は本変形例における集積回路設計装置８０によって、例えば、Ｉ／Ｏセル領域と、ＲＯＭ１１２、ＲＡＭ１１４、及び電源回路１２６の各ハードマクロとに挟まれた領域には、配線グリッド変更領域が設定される。そのため、集積回路１００は、この配線グリッド変更領域内で配線グリッド間隔が小さくされた上に、小さくなった配線グリッド間隔に対応するセルグリッド間隔でその形状が指定されたスタンダードセルに置き換えられて配置される。従って、集積回路１００は、Ｉ／Ｏセル領域と、ＲＯＭ１１２、ＲＡＭ１１４、及び電源回路１２６の各ハードマクロとに挟まれた領域には、その他のスタンダードセルに比べて、同一機能のセルであったとしてもＸ方向及びＹ方向の少なくとも１つの方向に幅が小さくなったスタンダードセルが配置される（図１８のＡＲ２）。
【０１５７】
更に、図１８の集積回路１００では、本実施形態における集積回路設計装置２０又は本変形例における集積回路設計装置８０によって、例えば、ＲＯＭ１１２とＲＡＭ１１４とに挟まれた領域には、配線グリッド変更領域が設定される。そのため、集積回路１００は、この配線グリッド変更領域内で配線グリッド間隔が小さくされた上に、小さくなった配線グリッド間隔に対応するセルグリッド間隔でその形状が指定されたスタンダードセルに置き換えられて配置される。従って、集積回路１００は、ＲＯＭ１１２とＲＡＭ１１４とに挟まれた領域には、その他のスタンダードセルに比べて、同一機能のセルであったとしてもＸ方向及びＹ方向の少なくとも１つの方向に幅が小さくなったスタンダードセルが配置される（図１８のＡＲ３）。
【０１５８】
以上のように、本実施形態における集積回路設計装置２０又は本変形例における集積回路設計装置８０によりレイアウト設計された集積回路１００は、配線グリッド間隔の変更処理前の第１の配線グリッド間隔の配線グリッド上に配置された配線及びセルと、配線グリッド変更領域として設定された領域内の配線グリッドの間隔を第１の配線グリッド間隔より小さくした第２の配線グリッド間隔の配線グリッド上に配置された配線と、配線グリッド変更領域として設定された領域内において、第２の配線グリッド間隔の配線グリッド上に配置され、第２の配線グリッド間隔に対応したセルグリッドを基準にその構成が指定されたセルとを含む。ここで、配線グリッド変更領域は、マクロブロックのコーナー部を含む領域、マクロブロックとＩ／Ｏセル領域とに挟まれた領域、及び第１及び第２のマクロブロックに挟まれた領域の少なくとも１つである。
【０１５９】
このような集積回路１００は、配線グリッド変更領域として設定された領域内の混雑度を低下させて、セル及び配線を行うことができるので、これまでより小さい面積で集積化され、低コスト化を図ることができる。また、複雑な配線処理を行う必要がないので、開発期間を短縮できるようになる。
【０１６０】
〔電子機器〕
図１７及び図１８で説明した集積回路１００は、時計や携帯電話機等に代表される携帯型の電子機器に搭載することができる。
【０１６１】
図１９に、本実施形態における電子機器の構成例のブロック図を示す。図１９は、図１７及び図１８の集積回路１００が搭載される電子機器のブロック図を表す。
【０１６２】
電子機器５００は、上記の実施形態における集積回路１００と、液晶表示パネル５１０とを含む。液晶表示パネル５１０は、例えばドットマトリクス型の液晶表示パネルであり、集積回路１００によって駆動される。この構成を有する電子機器５００は、集積回路１００のチップサイズの縮小化によって、低コスト化及び小型化を図ることができる。
【０１６３】
なお、図１９の液晶表示パネル５１０は、セグメント電極とコモン電極との間の電位差で光変調率が制御されるパッシブ型の液晶表示パネルであってもよいし、画素毎にアクティブ素子が設けられたアクティブ型の液晶表示パネルであってもよい。
【０１６４】
以上、本発明に係る集積回路設計装置、集積回路設計方法、集積回路及び電子機器を上記の実施形態又はその変形例に基づいて説明したが、本発明は上記の実施形態又はその変形例に限定されるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１６５】
（１）上記の実施形態又はその変形例では、配線グリッド変更領域として、マクロブロックのコーナー部を含む領域、マクロブロックとＩ／Ｏセル領域とに挟まれた領域、及び２つのマクロブロックに挟まれた領域の少なくとも１つを採用するものとして説明したが、本発明はこれに限定されるものではない。レイアウト可能領域内において、配線グリッド変更領域として、配線グリッド間隔をより小さく変更する領域を局所的に設定できればよい。
【０１６６】
（２）上記の実施形態又はその変形例では、主として、レイアウト設計対象の集積回路がスタンダードセルにより構成されるものとして説明したが、本発明はこれに限定されるものではない。例えば、ゲートアレイやエンベデッドアレイにより構成される集積回路を、レイアウト設計対象としてもよい。
【０１６７】
（３）上記の実施形態又はその変形例では、半導体基板に形成される集積回路のレイアウト設計に適用される例を説明したが、本発明はこれに限定されるものではない。例えば、半導体基板でない基板に回路が形成された集積回路のレイアウト設計にも適用できる。
【０１６８】
（４）上記の実施形態又はその変形例では、Ｐ型を第１導電型、Ｎ型を第２導電型として説明したが、Ｎ型を第１導電型、Ｐ型を第２導電型としてもよい。
【０１６９】
（５）上記の実施形態又はその変形例において、本発明を、集積回路設計装置、集積回路設計方法、集積回路及び電子機器として説明したが、本発明はこれに限定されるものではない。例えば、本発明を実現するための集積回路設計方法の処理手順が記述されたプログラムや、該プログラムが記録された記録媒体であってもよい。
【図面の簡単な説明】
【０１７０】
【図１】図１（Ａ）、図１（Ｂ）は本発明の実施形態における集積回路設計装置の処理の概要を模式的に示す図。
【図２】本実施形態における集積回路設計システムの構成例のブロック図。
【図３】図２の配線グリッド変更処理部の動作説明図。
【図４】図２の配置配線処理部の動作説明図。
【図５】図２のセル情報記憶部が記憶するセル情報の概要を示す図。
【図６】図６（Ａ）、図６（Ｂ）はＸ方向の配線グリッド間隔のみを小さく変更した場合のセル情報記憶部が記憶するセル情報の説明図。
【図７】図７（Ａ）、図７（Ｂ）はＹ方向の配線グリッド間隔のみを小さく変更した場合のセル情報記憶部が記憶するセル情報の説明図。
【図８】図８（Ａ）、図８（Ｂ）はＸ方向及びＹ方向に配線グリッド間隔を小さく変更した場合のセル情報記憶部が記憶するセル情報の説明図。
【図９】本実施形態における配線グリッド変更領域の例を示す図。
【図１０】マクロブロックのコーナー部を含む領域に設定される配線グリッド変更領域の説明図。
【図１１】マクロブロックとＩ／Ｏセル領域とに挟まれる領域に設定される配線グリッド変更領域の説明図。
【図１２】第１及び第２のマクロブロックに挟まれる領域に設定される配線グリッド変更領域の説明図。
【図１３】図２の配線グリッド変更処理部が行う配線グリッド間隔の変更処理の説明図。
【図１４】図２の集積回路設計装置のハードウェア構成例のブロック図。
【図１５】図２の集積回路設計装置の処理例のフロー図。
【図１６】本実施形態の変形例における集積回路設計装置の構成例のブロック図。
【図１７】本実施形態又はその変形例における集積回路設計装置により設計される集積回路の機能ブロック図の一例を示す図。
【図１８】本実施形態又はその変形例における集積回路設計装置により設計される図１７の集積回路のフロアプランの一例を模式的に示す図。
【図１９】本実施形態における電子機器の構成例のブロック図。
【符号の説明】
【０１７１】
１０…集積回路設計システム、  ２０，８０…集積回路設計装置、
２２…ネットリスト記憶部、  ２４…配線グリッド変更領域設定部、
２６…配線グリッド変更処理部、  ２８…セル情報記憶部、  ３０…配置配線処理部、
４０…表示装置、  ５０，１１０…ＣＰＵ、  ５２…Ｉ／Ｆ回路、
５４，１１２…ＲＯＭ、  ５６，１１４…ＲＡＭ、  ５８，１３０…バス、
９０…セル情報生成部、  １００…集積回路、
１０２，ＭＢ１〜ＭＢ３…マクロブロック、  １１６…第１の周辺回路、
１１８…第２の周辺回路、  １２０…Ｉ／Ｏポート、  １２２…表示メモリ、
１２４…ＬＣＤ駆動回路、  １２６…電源回路、  ５００…電子機器、
５１０…液晶表示パネル、  Ｃ１０〜Ｃ１３，Ｃ２０，Ｃ２４，ＣＬ…セル、
ＣＡ…配線グリッド変更領域、  ＣＧ…セルグリッド、  ＣＮ１…配線、
ＣＮＲ…コーナー部、
ＧＤ１，ＧＤ２ｘ，ＧＤ２ｙ，ｘｄ１，ｙｄ１…配線グリッド間隔、
ＧＲ…配線グリッド、  ＩＡ１〜ＩＡ４…Ｉ／Ｏセル領域、
ＩＮＶ−１，ＩＮＶ−２…インバータ回路、  ＬＡ…レイアウト可能領域、
Ｍ１〜Ｍ３…配線層、  ＭＣ１〜ＭＣ１０，ＭＤ１〜ＭＤ６，ＭＦ１…領域、
ＭＬ１…第１層配線、  ＭＬ２…第２層配線、  ＮＡ…Ｎ型アクティブ領域、
ＰＡ…Ｐ型アクティブ領域、  ＰＬ…ポリシリコン層、
ＶＣ，ＶＣ１〜ＶＣ４…ビアセル、  ＸＣ１…端子、
ｃｇ１，ｃｇ２，ｃｇ３…セルグリッド間隔、  ｍ１，ｍ２，ｍ３…最小ピッチ
【図１】
2010020587.tif 000003
【図２】
2010020587.tif 000004
【図３】
2010020587.tif 000005
【図４】
2010020587.tif 000006
【図５】
2010020587.tif 000007
【図６】
2010020587.tif 000008
【図７】
2010020587.tif 000009
【図８】
2010020587.tif 000010
【図９】
2010020587.tif 000011
【図１０】
2010020587.tif 000012
【図１１】
2010020587.tif 000013
【図１２】
2010020587.tif 000014
【図１３】
2010020587.tif 000015
【図１４】
2010020587.tif 000016
【図１５】
2010020587.tif 000017
【図１６】
2010020587.tif 000018
【図１７】
2010020587.tif 000019
【図１８】
2010020587.tif 000020
【図１９】
2010020587.tif 000021