(57)【要約】【課題】パッド律則とコア律則を意識しないレイアウト設計を容易に実現し、半導体集積回路の面積の縮小化とコストの低減化を図ること。【解決手段】レイアウト設計装置３００は、設計対象回路の回路情報の入力を入力部３０１により受け付け、入力された回路情報に含まれているコアの領域が確保された設計対象回路のレイアウト情報を生成部３０２が生成する。生成されたレイアウト情報上のコアの領域以外の領域に、回路情報に含まれているＩ／Ｏ回路をレイアウト部３０３により配置および配線する。回路情報に含まれているパッドの配置可能領域を決定部３０８により作成したレイアウト情報上に決定する。必要配置数分のパッドの総面積が配置可能領域の面積を超えない最大の大きさに、パッドの面積を最適化部３０９により最適化する。最適化されたパッドを配置部３１０により配置可能領域に配置する。【選択図】図３
2010117962.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
設計対象回路の回路情報の入力を受け付ける入力工程と、
前記入力工程によって入力された回路情報に含まれているコアの領域が確保された前記設計対象回路のレイアウト情報を生成する生成工程と、
前記生成工程によって生成されたレイアウト情報上の前記コアの領域以外の領域に、前記回路情報に含まれているＩ／Ｏ回路を配置するレイアウト工程と、
前記レイアウト情報のうち前記コアの領域および前記Ｉ／Ｏ回路の配置領域以外の領域の中から、前記回路情報に含まれているパッドの配置可能領域を決定する決定工程と、
前記決定工程によって決定された前記配置可能領域に前記パッドを配置する配置工程と、
を実行することを特徴とするレイアウト設計方法。
【請求項２】
前記決定工程は、
ワイヤボンディングで指定されたワイヤの長さに基づいて、前記配置可能領域を決定することを特徴とする請求項１に記載のレイアウト設計方法。
【請求項３】
前記決定工程は、
半導体試験装置のプローブで指定された針の長さに基づいて、前記配置可能領域を決定することを特徴とする請求項１または２に記載のレイアウト設計方法。
【請求項４】
前記コンピュータが、
前記パッドの配置数および面積を取得する取得工程と、
前記配置可能領域の面積を算出するとともに、前記取得工程によって取得された前記パッドの配置数および面積により前記配置数分のパッドの総面積を算出する算出工程と、
前記算出工程によって算出された面積どうしを比較することにより、前記配置数分のパッドが前記配置可能領域に配置可能か否かを判断する判断工程と、を実行し、
前記決定工程は、
前記判断工程によって判断された判断結果に基づいて、前記配置数分のパッドを前記配置可能領域に配置することを特徴とする請求項１〜３のいずれか一つに記載のレイアウト設計方法。
【請求項５】
前記コンピュータが、
前記判断工程によって前記配置可能領域の面積が前記配置数分のパッドの総面積よりも小さいと判断された場合、前記配置可能領域の面積を所定量拡張する拡張工程を実行し、
前記判断工程は、
前記拡張工程によって拡張された前記配置可能領域の面積と前記配置数分のパッドの総面積とを比較することにより、前記配置数分のパッドが前記配置可能領域に配置可能か否かを判断する請求項４に記載のレイアウト設計方法。
【請求項６】
前記決定工程は、
前記判断工程によって前記配置可能領域の面積が前記配置数分のパッドの総面積以上と判断された場合、前記配置数分のパッドを前記配置可能領域に配置することを特徴とする請求項４または５に記載のレイアウト設計方法。
【請求項７】
前記コンピュータが、
前記パッドの面積を、前記配置数分のパッドの総面積が前記配置可能領域の面積を超えない最大の大きさにする最適化工程を実行し、
前記配置工程は、
前記最適化工程によって最適化されたパッドを配置することを特徴とする請求項１〜６のいずれか一つに記載のレイアウト設計方法。
【請求項８】
前記配置工程は、
同種のパッドが隣接するように配置することを特徴とする請求項１〜７のいずれか一つに記載のレイアウト設計方法。
【請求項９】
コアの回路と、
前記コアの回路に接続されるＩ／Ｏ回路群と、
前記Ｉ／Ｏ回路群に接続される複数種類のパッド群と、を備え、
前記各種類のパッドの数が前記Ｉ／Ｏ回路の数よりも少ないことを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体集積回路のレイアウト設計をおこなうレイアウト設計方法およびレイアウト設計により得られるレイアウト情報をもとに製造された半導体集積回路に関する。
【背景技術】
【０００２】
従来から、半導体集積回路のプロセステクノロジーの微細化と、半導体集積回路の高機能化に伴ってＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）の数が増加し、Ｉ／Ｏ回路の構成や数によって半導体集積回路の面積が決定されることがあった。そのため、Ｉ／Ｏ回路の配置による半導体集積回路の面積を小さくする技術が知られている（たとえば、特許文献１〜３を参照。）。
【０００３】
また、コアの領域の面積により半導体集積回路の面積が決定される場合がある。このような決定はコア律則と呼ばれ、このコア律則にしたがって、レイアウト設計をおこなう技術がある（たとえば、特許文献４を参照。）。
【０００４】
また近年では、パッドの面積とパッドの数により半導体集積回路の面積が決定される場合がある。このような決定はパッド律則と呼ばれる。パッド律則によりレイアウト設計される理由としては、半導体試験装置のプローブの針を接触する技術やボンディング技術とによるパッドの面積の縮小化およびパッドの峡ピッチ化よりも、半導体集積回路のプロセステクノロジーによるＩ／Ｏ回路の面積の縮小化が進んでいるためである。
【０００５】
この場合、半導体集積回路内のＩ／Ｏ回路は２つのパッドを必ず有している。一方のパッドは、ウェハ状態のテストで使用する半導体試験装置のプローブの針を接触するためのパッド（Ｐｒｉｍａｒｙ  Ｔｅｓｔパッド。以下、「ＰＴパッド」とする）である。他方のパッドは、パッケージにするためのボンディング用のパッド（Ｗｉｒｅ  Ｂｏｎｄｉｎｇパッド。以下、「ＷＢパッド」とする）である。
【０００６】
【特許文献１】特許第２７２０６２９号公報
【特許文献２】特開平５−２５９３７９号公報
【特許文献３】特開平５−３２６７１２号公報
【特許文献４】特開２００７−９６２１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述したパッド律則にしたがってレイアウト設計をすると、半導体集積回路上に空き領域が存在し、半導体集積回路の面積が大きくなる。そのため、半導体集積回路の製造コストが高くなるという問題点があった。図１７を用いてこの問題点を説明する。
【０００８】
図１７は、パッド律則にしたがってレイアウト設計された半導体集積回路のレイアウト情報を示す説明図である。パッド律則のレイアウト情報１７００上には、コアの領域１０１と、Ｉ／Ｏ回路領域１０２と、モニター領域１０３と、が存在する。Ｉ／Ｏ回路領域１０２にはＩ／Ｏ回路が配置される。
【０００９】
そして、１つのＩ／Ｏ回路領域１０２に対して、必ずＰＴパッド１０４とＷＢパッド１０５が存在する。パッドのピッチに合わせて、Ｉ／Ｏ回路が配置されているため、隣接するＩ／Ｏ回路領域１０２，１０２間には、空き領域が存在している。また、Ｉ／Ｏ回路領域１０２とコアの領域１０１の間に空き領域（○で囲われた箇所）が存在している。これらの空き領域により半導体集積回路の面積が大きくなる。
【００１０】
一方、コア律則にしたがってレイアウト設計をすると、モニター領域に隣接するパッドとモニター領域との間に、空き領域が存在する。図１８を用いてこの空き領域を説明する。
【００１１】
図１８は、コア律則にしたがってレイアウト設計された半導体集積回路のレイアウト情報を示す説明図である。コア律則のレイアウト情報１８００上に存在するコアの領域１０１に対して、Ｉ／Ｏ回路の数とパッド数（ＰＴパッド１０４の数とＷＢパッド１０５の数）が少ないため、半導体集積回路上に空き領域（○で囲われた箇所）が発生する。この空き領域は、半導体集積回路を構成するための要素として活用されない。そのため、無駄な領域を半導体集積回路上に保持するという問題点があった。
【００１２】
この発明は、上述した従来技術による問題点を解消するため、半導体集積回路の面積の縮小化と半導体集積回路の低廉化を図ることを目的とする。また、半導体集積回路の内部の領域の有効活用化を図ることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するため、このレイアウト設計方法は、設計対象回路の回路情報の入力を受け付け、入力された回路情報に含まれているコアの領域が確保された設計対象回路のレイアウト情報を生成し、生成されたレイアウト情報上のコアの領域以外の領域に、回路情報に含まれているＩ／Ｏ回路を配置および配線し、作成したレイアウト情報のうちコアの領域およびＩ／Ｏ回路の配置領域以外の領域の中から、回路情報に含まれているパッドの配置可能領域を決定し、決定された配置可能領域にパッドを配置することを要件とする。
【００１４】
このレイアウト設計方法によれば、パッド律則を意識することなくパッドを自動配置する。このため、パッドの配置位置が決められている場合に比べて、パッドの配置による空き領域が減少する。
【００１５】
また、上記レイアウト設計方法において、パッドの面積を、必要配置数分のパッドの総面積がパッドの配置可能領域の面積を超えない最大の大きさに最適化し、最適化されたパッドを配置することとしてもよい。
【００１６】
このレイアウト設計方法によれば、コア律則を意識することなくパッドを自動配置する。このため、パッドの面積が決められている場合に比べて、パッドの面積を広く取ることができ、半導体集積回路の空き領域の有効活用を図ることができる。
【発明の効果】
【００１７】
このレイアウト設計方法および半導体集積回路によれば、半導体集積回路の面積の縮小化と半導体集積回路の低廉化を図ることができるという効果を奏する。また、半導体集積回路の内部の領域の有効活用化を図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００１８】
以下に添付図面を参照して、このレイアウト設計方法および半導体集積回路の好適な実施の形態を詳細に説明する。
【００１９】
（本実施の形態の概要）
本実施の形態では、入力された回路情報から、コアの領域の回路とＩ／Ｏ回路をレイアウトし、パッドの配置可能領域を決定する。これにより、パッドの配置可能領域を特定し、空き領域が発生するのを抑制することができる。また、配置可能領域の面積が必要配置数のパッドの総面積以上の場合に、パッドの面積が大きくなるように最適化する。これにより、半導体集積回路の空き領域を有効活用することができる。
【００２０】
したがって、空き領域の発生を抑制することにより、半導体集積回路の面積を縮小することができる。また、パッドを最適化することにより、ワイヤボンディングを容易にし、製造時のボンディングミスを抑制することができる。さらに、プローブの針を当てやすくなり、試験の容易化および精度の向上を図ることができる。
【００２１】
図１は、本実施の形態によりレイアウト設計された半導体集積回路のレイアウト図である。半導体集積回路のレイアウト情報１００上には、コアの領域１０１と、Ｉ／Ｏ回路領域１０２と、モニター領域１０３と、ＰＴパッド１０４とＷＢパッド１０５が存在している。モニター領域１０３は半導体集積回路の情報や特性を測るためのトランジスタなどを配置する領域である。
【００２２】
また、図１において、コアの領域１０１内とＩ／Ｏ回路領域１０２内に、パッドが重なっている。しかし、実際には、Ｉ／Ｏ回路領域１０２の配線は下層の配線である。パッドは、Ｉ／Ｏ回路領域の配線よりも上層の配線を利用している。また、パッドと重なっているコアの領域は、パッドよりも下層の配線を利用している。そのため、パッドの配置位置は、Ｉ／Ｏ回路領域とコアの領域以外の領域である。
【００２３】
本実施の形態では、すべてのＩ／Ｏ回路が必ずしも２つのパッドを有しているわけではない。必要配置数のみのパッドを配置している。そして、必ずしもパッドの配置位置が接続するＩ／Ｏ回路領域１０２上の位置でない。そのため、パッド律則により発生する空き領域が減少している。
【００２４】
また、本実施の形態では、パッドの面積は従来技術で使用されているパッドの面積以上の面積である。そのため、パッドの面積を大きくすることにより、コア律則により発生する空き領域が活用される。
【００２５】
（レイアウト設計装置のハードウェア構成）
図２は、実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。図２において、レイアウト設計装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３と、磁気ディスクドライブ２０４と、磁気ディスク２０５と、光ディスクドライブ２０６と、光ディスク２０７と、ディスプレイ２０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）２０９と、キーボード２１０と、マウス２１１と、スキャナ２１２と、プリンタ２１３と、を備えている。また、各構成部はバス２００によってそれぞれ接続されている。
【００２６】
ここで、ＣＰＵ２０１は、レイアウト設計装置の全体の制御を司る。ＲＯＭ２０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ２０３は、ＣＰＵ２０１のワークエリアとして使用される。磁気ディスクドライブ２０４は、ＣＰＵ２０１の制御にしたがって磁気ディスク２０５に対するデータのリード／ライトを制御する。磁気ディスク２０５は、磁気ディスクドライブ２０４の制御で書き込まれたデータを記憶する。
【００２７】
光ディスクドライブ２０６は、ＣＰＵ２０１の制御にしたがって光ディスク２０７に対するデータのリード／ライトを制御する。光ディスク２０７は、光ディスクドライブ２０６の制御で書き込まれたデータを記憶したり、光ディスク２０７に記憶されたデータをコンピュータに読み取らせたりする。
【００２８】
ディスプレイ２０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ２０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２９】
インターフェース（以下、「Ｉ／Ｆ」と略する。）２０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク２１４に接続され、このネットワーク２１４を介して他の装置に接続される。そして、Ｉ／Ｆ２０９は、ネットワーク２１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ２０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３０】
キーボード２１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス２１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３１】
スキャナ２１２は、画像を光学的に読み取り、レイアウト設計装置内に画像データを取り込む。なお、スキャナ２１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ２１３は、画像データや文書データを印刷する。プリンタ２１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００３２】
（レイアウト設計装置の機能的構成）
つぎに、レイアウト設計装置の機能的構成について説明する。図３は、レイアウト設計装置の機能的構成を示すブロック図である。レイアウト設計装置３００は、入力部３０１と、生成部３０２と、レイアウト部３０３と、取得部３０４と、算出部３０５と、判断部３０６と、拡張部３０７と、決定部３０８と、最適化部３０９と、配置部３１０と、を含む構成である。
【００３３】
入力部３０１は、回路情報によって表現されたデータの入力を受け付ける。回路情報とは、後述するレイアウト情報の生成元となる情報であり、たとえば、設計対象の半導体集積回路内の回路間の接続情報（ネットリスト）である。具体的には、この回路情報は、ユーザによるキーボード操作またはマウス操作によって入力されたものに限らず、たとえば、ＣＰＵ２０１が、ＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置から読み取ったり、Ｉ／Ｆ２０９から受信することとしてもよい。入力された回路情報４００は、記憶装置に格納される。
【００３４】
図４は、回路情報の一例を示す説明図である。回路情報４００は、ネットリストにより表現されるため実際はテキストデータであるが、ここでは、理解の容易のためイメージ図で示すこととする。回路情報４００は、コアの回路４０１とＩ／Ｏ回路４０２で構成されている。コアの回路４０１は、ディジタル回路、アナログ回路、ＲＡＭなどの回路ブロックから構成されている。コアの回路４０１は、コアの領域１０１にレイアウトされる回路である。
【００３５】
図３に戻って、生成部３０２は、入力された回路情報４００に含まれているコアの領域１０１が確保されたレイアウト情報を生成する。具体的には、たとえば、ＣＰＵ２０１が、所定サイズの半導体集積回路の配置領域を記憶装置に描画する。そして、回路情報４００を記憶装置から読み出して、半導体集積回路の配置領域上に、回路情報４００に含まれているコアの回路４０１を描画する。このコアの回路４０１が描画された半導体集積回路配置の領域がレイアウト情報１００に相当する。レイアウト情報１００は記憶装置に格納される。以下、図５を用いて具体的に説明する。
【００３６】
図５は、生成部３０２により生成されたレイアウト情報を示す説明図である。まず、半導体集積回路のレイアウト情報１００を生成する。つぎに、半導体集積回路のレイアウト情報１００上にコアの回路４０１を配置および配線する。よって、図５では、半導体集積回路のレイアウト情報１００上にコアの領域１０１が存在する。
【００３７】
図３に戻って、レイアウト部３０３は、コアの領域１０１以外の領域に、回路情報４００に含まれているＩ／Ｏ回路４０２をレイアウトする。具体的には、たとえば、ＣＰＵ２０１が、回路情報４００を記憶装置から読み出して、レイアウト情報１００上に回路情報４００に含まれているＩ／Ｏ回路４０２の配置領域を指定する。つぎに、各Ｉ／Ｏ回路４０２の配置位置を決定、すなわち、座標位置を計算する。そして、座標位置に基づいて半導体集積回路のレイアウト情報１００上にＩ／Ｏ回路４０２の配置をおこなう。以下、図６を用いてＩ／Ｏ回路４０２が配置されたレイアウト情報を具体的に示す。
【００３８】
図６は、レイアウト部３０３によりＩ／Ｏ回路４０２が配置されたレイアウト情報を示す説明図である。図６の半導体集積回路のレイアウト情報は、レイアウト部３０３によりＩ／Ｏ回路４０２がレイアウトされたレイアウト情報である。回路情報４００に含まれるＩ／Ｏ回路４０２は、半導体集積回路のレイアウト情報１００上のＩ／Ｏ回路領域１０２に配置されている。パッドの配置位置にかかわらず、Ｉ／Ｏ回路４０２を配置している。そのため、隣接するＩ／Ｏ回路領域１０２，１０２間には、空き領域が存在しない。
【００３９】
図３に戻って、取得部３０４は、パッドの必要配置数および最小面積情報を取得する。パッドの必要配置数とは、半導体集積回路上に必ず配置するＰＴパッド１０４の総数とＷＢパッド１０５の総数である。パッドの最小面積情報とは、パッドの最小面積を特定する情報であり、パッドの縦の長さ、横の長さ、面積を含む。パッドの最小面積情報は、ボンディングとプローブの制約条件により決められている。具体的には、たとえば、外部装置からパッドの必要配置数および最小の面積を受信したり、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置から読み出したりする。
【００４０】
図７は、パッドの必要配置数テーブルを示す説明図である。必要配置数テーブル７００は、後述する配置可能領域のＡ〜Ｄ区に配置する、ＰＴパッド１０４とＷＢパッド１０５の配置数を保持するテーブルである。さらに、必要配置数テーブル７００は、配置するＰＴパッド１０４の総数と配置するＷＢパッド１０５の総数を保持している。必要配置数テーブル７００は、たとえば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されるテーブルである。
【００４１】
図８は、パッドの最小面積情報テーブルを示す説明図である。最小面積情報テーブル８００は、パッドの最小面積情報を保持する。最小面積情報は以下の２つの制約条件により決められている。１つ目はパッドの面積がボンディングすることができる面積であることである。２つ目はパッドの面積がプローブの針を接触することができる面積であることである。
【００４２】
最小面積情報テーブル８００に保持されているＰａｄｘ（たとえば縦）とＰａｄｙ（たとえば横）はパッドの四角形の辺の長さである。よって、最小面積は下記の式で算出できる。
最小面積＝Ｐａｄｘ×Ｐａｄｙ
【００４３】
最小面積情報テーブル８００は、具体的には、たとえば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されるテーブルである。
【００４４】
図３に戻って、算出部３０５は、取得部３０４により取得されたパッドの必要配置数およびパッドの最小面積情報を用いて、必要配置数のパッドの総面積を算出する。具体的には、たとえば、ＣＰＵ２０１が必要配置数のパッドの総面積を下記の式により算出する。算出結果は図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に保持される。
【００４５】
必要配置数のパッドの総面積＝必要配置数×パッドの面積
【００４６】
また、算出部３０５は、パッドの配置可能領域の面積を算出する。具体的には、たとえば、ＣＰＵ２０１は、後述するボンディングとプローブの制約情報により決定されるパッドの配置禁止領域を特定する。そして、半導体集積回路配置領域からパッドの配置禁止領域とモニター領域１０３を除いた領域を配置可能領域とする。
【００４７】
つぎに、この特定された配置可能領域を辺ごとに区分けする。区分けした区の端点の座標を求める。そして、座標を基に、区の面積を求め、すべての区の面積を足し合わせ、配置可能領域の面積を算出する。算出結果は図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に保持される。以下、図９−１〜図９−２および図１０を用いて具体的に説明する。
【００４８】
図９−１は、パッドの配置禁止領域を示す説明図である。配置禁止領域９０１はｄ，ｅ，ｆ，ｇを頂点とする図形の領域で、パッドを配置できない領域である。たとえば、ｄ，ｅ，ｆ，ｇの座標は、ボンディングの制約とプローブの制約によって決まる。この２つの制約について図１０に示す。
【００４９】
図１０は、ボンディングとプローブの制約テーブルを示す説明図である。制約テーブル１０００は、パッド配置におけるボンディングの制約とプローブの制約、およびパッドのピッチを記載したテーブルである。ボンディングの制約は、ボンディング可能なワイヤ長である。また、プローブの制約は、プローブの針長である。制約テーブル１０００は、たとえば、図２に示したＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶されるテーブルである。
【００５０】
図９−１に戻って、制約テーブル１０００からボンディングのワイヤ長Ｋ［μｍ］とプローブの針長Ｎ［μｍ］を引く。つぎに、Ｋ［μｍ］とＮ［μｍ］とを比較して、小さい値をＱ［μｍ］とする。Ｑに基づいて、配置禁止領域９０１の特定をおこなうことで、パッドの種類によらず配置禁止領域９０１を特定できる。そのため、パッドの種類により配置禁止領域９０１を特定することに比べて、処理の高速化を図ることができる。
【００５１】
たとえば、半導体集積回路配置領域の頂点である原点から内側に向かって、Ｘ軸方向にＱ［μｍ］，Ｙ軸方向にＱ［μｍ］移動した点をｄとし、ｄの座標を求める。同様に半導体集積回路配置領域の頂点であるａ，ｂ，ｃの点からＸ軸方向にＱ［μｍ］、Ｙ軸方向にＱ［μｍ］移動した点を、それぞれｅ，ｆ，ｇとし、座標を求める。そして、ｄ，ｅ，ｆ，ｇを頂点とする図形の領域が配置禁止領域９０１である。なお、特定した、配置禁止領域９０１はＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に保持される。
【００５２】
Ｋ以下の値で配置禁止領域９０１を特定することで、配置禁止領域９０１は、パッドを配置してもボンディングできない領域になる。また、Ｎ以下の値で配置禁止領域９０１を特定することで、配置禁止領域９０１は、パッドを配置してもプローブの針を接触することのできない領域になる。つぎに、配置禁止領域９０１を用いて、配置可能領域を特定し、配置可能領域の面積を算出する。図９−２を用いて具体的に説明する。
【００５３】
図９−２は、パッドの配置可能領域を示す説明図である。図９−２においてＡ〜Ｄに区分けされた領域が配置可能領域である。たとえば、Ａ区の領域は、ｉ，ｊ，ｕ，ｄ，ｔ，ｈを頂点とする図形の領域である。Ｂ区の領域は、ｋ，ｌ，ｎ，ｖ，ｅ，ｕを頂点とする図形の領域である。Ｃ区の領域は、ｍ，ｏ，ｐ，ｗ，ｆ，ｖを頂点とする図形の領域である。Ｄ区の領域は、ｑ，ｒ，ｓ，ｔ，ｇ，ｗを頂点とする図形の領域である。
【００５４】
また、モニター領域１０３はパッドを配置できない領域である。したがって、配置可能領域は、半導体集積回路配置領域から、配置禁止領域９０１とモニター領域１０３を除外した領域である。
【００５５】
ワイヤボンディングで指定されたワイヤの長さに基づいて配置可能領域を決定しているため、ワイヤの長さに応じて配置可能領域が変化する。したがって、指定された長さのワイヤで適切なワイヤボンディングをおこなうことができる。また、プローブで指定された針の長さに基づいて、針の長さに応じて配置可能領域が変化する。したがって、指定された長さの針で適切な試験をおこなうことができる。
【００５６】
つぎに、配置可能領域の面積を算出する。たとえば、Ａ〜Ｄの区は配置可能領域を辺ごとに４つに区分けされた領域である。そして、Ａ〜Ｄ区のそれぞれの端点の座標を求めて面積を算出する。たとえば、以下に、Ａ区を例に挙げて算出方法を説明する。
【００５７】
図９−２において、Ａ区は、２つの四角形で構成されている。一方の四角形は、ｉ，ｊ，ｋ，ｈを頂点とする四角形である。もう一方の四角形は、ｔ，ｋ，ｕ，ｄを頂点とする四角形である。
【００５８】
また、Ａ区の頂点の座標は以下の通りである。ｉの座標＝（ｘ１，０），ｊの座標＝（ｘ４，０），ｋの座標＝（ｘ４，ｙ１），ｈの座標＝（ｘ１，ｙ１），ｔの座標＝（ｘ２，ｙ１），ｕの座標＝（ｘ４，ｙ２），ｄの座標＝（ｘ２，ｙ２）である。
【００５９】
座標を使用して２つの四角形の面積を求め、足し合わせることで、Ａ区の面積が算出できる。Ａ区の面積＝（ｘ４−ｘ１）×ｙ１＋（ｘ４−ｘ２）×（ｙ２−ｙ１）となる。
【００６０】
同様にして、Ｂ〜Ｄ区の面積を算出する。そして、Ａ〜Ｄ区の面積を足し合わせることで、配置可能領域の面積を算出する。
【００６１】
図３に戻って、判断部３０６は、必要配置数分のパッドが配置可能領域に配置可能か否かを判断する。具体的には、たとえば、ＣＰＵ２０１が、必要配置数のパッドの総面積と配置可能領域の面積を比較する。パッドの配置可能領域の面積が必要配置数のパッドの総面積よりも小さい場合、必要配置数分のパッドを配置可能領域に配置できないと判断される。
【００６２】
また、パッドの配置可能領域の面積が必要配置数のパッドの総面積以上の場合、必要配置数分のパッドを配置可能領域に配置できると判断される。
【００６３】
拡張部３０７は、判断部３０６で必要配置数分のパッドを配置可能領域に配置できないと判断された場合、配置可能領域を拡張する。具体的には、たとえば、配置可能領域をＹ軸方向にパッドの横方向の長さＰａｄｙ［μｍ］大きくする。または、配置可能領域をＸ軸方向にパッドの縦方向の長さＰａｄｘ［μｍ］大きくする。
【００６４】
さらに、たとえば、ＣＰＵ２０１は、判断部３０６と拡張部３０７の処理を、配置可能領域の面積の拡張により配置数分のパッドの総面積となるまで繰り返す。したがって、必要最小限の領域のみを拡張することにより、空き領域の発生を可能な限り抑制して、半導体集積回路の面積を必要最小限の面積にすることができる。また、必要最小限の面積となる配置可能領域を自動決定することにより、配置領域の領域不足を防ぐことができる。
【００６５】
決定部３０８は、判断部３０６の判断結果をもとに配置可能領域を決定する。具体的には、たとえば、ＣＰＵ２０１は、判断部３０６で必要配置数のパッドが配置可能領域に配置できると判断した場合に、配置可能領域を決定する。なお、決定した配置可能領域のデータはＲＡＭ２０３、磁気ディスク２０５、光ディスク２０７などの記憶装置に記憶される。面積どうしの比較による判断部３０６の判断結果を用いて決定部３０８が配置可能領域を決定することで、機能を単純化することができる。したがって、パッドの配置処理の高速化を図ることができる。
【００６６】
最適化部３０９は、判断部３０６で必要配置数分のパッドを配置可能領域に配置できると判断されたときに、配置可能領域に配置できる最大の面積となるようにパッドの面積を最適な大きさにする。具体的には、たとえば、ＣＰＵ２０１は、必要配置数分のパッドを配置可能領域に配置できると判断される都度、四角形のパッドの縦の辺であるＰａｄｘをΔａｘ［μｍ］（たとえば、１［μｍ］）大きくする。そして、横の辺であるＰａｄｙをΔｂｙ［μｍ］（たとえば、１［μｍ］）大きくする。よって、パッドの面積は下記の式で算出できる。
【００６７】
パッドの面積＝（Ｐａｄｘ＋Δａｘ）×（Ｐａｄｙ＋Δｂｙ）
【００６８】
最適化されると必要配置数のパッドの総面積が配置可能領域より小さく、配置可能である最大の面積がパッドの面積となる。図１１と図１２を用いて、最適化したパッドにより空き領域が変化することを示す。
【００６９】
図１１は、配置可能領域に最小の面積のパッドを配置したイメージ図である。たとえば、半導体集積回路の面積がコア律則にしたがって決められており、且つ配置可能領域の面積が必要配置数のパッドの総面積以上である場合、配置可能領域に空き領域（○で囲われた箇所）が発生する。この場合、半導体集積回路の面積を小さくすることができないため、空き領域は無駄な領域である。
【００７０】
図１２は、配置可能領域に最適化した面積のパッドを配置したイメージ図である。最適化した面積のパッドを配置可能領域に配置することで、図１１において発生していた空き領域（○で囲われた箇所）が減少した。
【００７１】
図３に戻って、配置部３１０は、決定部３０８によって決められた配置可能領域に、最適化部３０９で面積を最適化したパッドを配置する。具体的には、たとえば、ＣＰＵ２０１は、必要配置数テーブル７００よりパッドの必要配置数を引く。つぎに、制約テーブル１０００よりパッドのピッチを引き、パッドのピッチ以上の幅で等間隔となるよう、レイアウト情報１００上に必要配置数分のパッドを並べる。
【００７２】
つぎに、ＰＴパッド１０４の配置位置を決定する。たとえば、ＰＴパッド１０４同士を隣接して配置する。つぎに、ＷＢパッド１０５の配置位置を決定する。たとえば、ＷＢパッド１０５同士を隣接して配置する。そして、配置位置を決定したら、すべてのパッドを配置する。図１３を用いて、パッドの配置位置の決定方法を説明する。
【００７３】
図１３は、ＰＴパッド１０４の配置位置とＷＢパッド１０５の配置位置の決定処理を示す説明図である。まず、制約テーブル１０００よりパッドのピッチＰを引く。そして、パッドとパッドの間がＰ幅以上となるように、最適化部３０９で最適化したパッドを、レイアウト情報１００上に並べる。つぎに、ＰＴパッド１０４の必要配置数とＷＢパッド１０５の必要配置数を必要配置数テーブル７００から引く。
【００７４】
つづいて、ＰＴパッド１０４の配置を決定する。ＰＴパッド１０４同士が隣接するようにＰＴパッド１０４の配置を決定する。したがって、プローブの針を当てやすくなり、試験の容易化および精度の向上を図ることができる。
【００７５】
たとえば、ＰＴパッド１０４はＡ〜Ｄの区ごとに半導体集積回路の外側に隣接しながら配置する。実線の矢印ルートがＰＴパッド１０４の配置位置の決定ルートである。半導体集積回路領域の外側からみて、半導体集積回路領域内の外側の左端にくるパッドを始点（○印のパッド）として、ＰＴパッド１０４の数を確保した箇所が終点となる。そして、Ｉ／Ｏ回路４０２の配置の順に合わせて、配置位置を決定する。
【００７６】
つぎに、ＷＢパッド１０５の配置位置を決定する。ＷＢパッド１０５同士が隣接するようにＷＢパッド１０５の配置を決定する。したがって、ワイヤボンディングの容易化を図ることができ、製造時のボンディングミスを抑制することができる。
【００７７】
たとえば、ＷＢパッド１０５はＡ〜Ｄの区分けごとにコアの領域１０１側に各パッドの配置位置を決定する。点線の矢印ルートがＷＢパッド１０５の配置位置の決定ルートである。半導体集積回路領域の外側からみて、コアの領域１０１側の右端にくるパッドを始点（×印のパッド）として、ＷＢパッド１０５の数を確保した箇所が終点となる。Ｉ／Ｏ回路４０２の配置の順に合わせて、配置位置を決定する。レイアウト情報１００上にＡ〜Ｄ区のパッドをすべて配置する、図１の半導体集積回路のレイアウト情報１００となる。
【００７８】
（設計支援装置の設計支援処理手順）
つぎに、本実施の形態にかかる設計支援装置の設計支援処理手順について説明する。図１４は、本実施の形態にかかるレイアウト設計装置のレイアウト設計処理手順を示すフローチャートである。図１４において、まず、入力部３０１により回路情報４００の入力を受け付ける（ステップＳ１４０１）。
【００７９】
つぎに、生成部３０２により回路情報４００にあるコアの回路４０１を配置したコアの領域１０１を含むレイアウト情報１００を作成する（ステップＳ１４０２）。そして、レイアウト部３０３により回路情報４００にあるＩ／Ｏ回路４０２をレイアウト情報１００に配置する（ステップＳ１４０３）。
【００８０】
つぎに、パッドの配置可能領域の決定処理を実行する（ステップＳ１４０４）。そして、パッドの配置処理を実行する（ステップＳ１４０５）。これにより、一連の処理を終了する。
【００８１】
つぎに、上述したパッドの配置可能領域の決定処理（ステップＳ１４０４）について説明する。図１５は、パッドの配置可能領域の決定処理手順を示すフローチャートである。図１５において、まず、取得部３０４によりパッドの最小面積情報とパッドの必要配置数（Ｇ）情報を取得する（ステップＳ１５０１）。
【００８２】
つぎに、パッドの面積（Ｆ）＝パッドの最小面積とし（ステップＳ１５０２）、パッドの配置可能領域の特定をおこなう（ステップＳ１５０３）。つぎに、算出部３０５によりパッドの配置可能領域の面積（Ｅ）を算出する（ステップＳ１５０４）。
【００８３】
判断部３０６によりＥ≧Ｆ×Ｇであるか判断する（ステップＳ１５０５）。Ｅ≧Ｆ×Ｇでないとき（ステップＳ１５０５：Ｎｏ）、拡張部３０７によりパッドの配置可能領域を拡大し（ステップＳ１５０６）、ステップＳ１５０５に戻る。一方、Ｅ≧Ｆ×Ｇであるとき（ステップＳ１５０５：Ｙｅｓ）、Ｅ≧Ｆ×Ｇで且つ、パッドの面積が配置可能である最大の面積であるか判断する（ステップＳ１５０７）。
【００８４】
Ｅ≧Ｆ×Ｇで且つパッドの面積が配置可能である最大の面積、でない場合（ステップＳ１５０７：Ｎｏ）、パッドの面積＝（Ｐａｄｘ＋Δａｘ）×（Ｐａｄｙ＋Δｂｙ）でパッドの面積を拡張する（ステップＳ１５０８）。Δａｘ［μｍ］および、Δｂｙ［μｍ］はパッドの拡張量である。そして、ステップＳ１５０７に戻る。一方、Ｅ≧Ｆ×Ｇで且つパッドの面積が最大である場合（ステップＳ１５０７：Ｙｅｓ）、パッドの面積を決定する（ステップＳ１５０９）。つぎに、図１４に示したステップＳ１４０５に移行する。
【００８５】
つぎに、上述したパッドの配置処理（ステップＳ１４０５）について説明する。図１６は、パッドの配置処理手順を示すフローチャートである。図１６において、まず、配置部３１０によってＰＴパッド１０４の配置位置を決定する（ステップＳ１６０１）。つぎに、配置部３１０によりＷＢパッド１０５の配置位置を決定する（ステップＳ１６０２）。そして、すべてのパッドを配置し（ステップＳ１６０３）、一連の処理を終了する。
【００８６】
以上説明したように、本実施の形態によれば、入力された回路情報４００から、コアの回路４０１とＩ／Ｏ回路４０２をレイアウトし、パッドの配置可能領域を決定する。これにより、パッドの配置可能領域を特定し、空き領域が発生するのを抑制することができる。また、配置可能領域の面積が必要配置数のパッドの総面積以上の場合に、パッドの面積が大きくなるように最適化する。これにより、半導体集積回路の空き領域を有効活用することができる。
【００８７】
したがって、空き領域の発生を抑制することにより、半導体集積回路の面積を縮小することができる。また、パッドを最適化することにより、ワイヤボンディングを容易にし、製造時のボンディングミスを抑制することができる。さらに、プローブの針を当てやすくなり、試験の容易化および精度の向上を図ることができる。
【００８８】
このレイアウト設計方法および半導体集積回路によれば、半導体集積回路の面積の縮小化と半導体集積回路の低廉化を図ることができるという効果を奏する。また、半導体集積回路の内部の領域の有効活用化を図ることができるという効果を奏する。
【００８９】
なお、本実施の形態で説明したレイアウト設計方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な媒体であってもよい。
【００９０】
上述した実施の形態に関し、さらに以下の付記を開示する。
【００９１】
（付記１）コンピュータが、
設計対象回路の回路情報の入力を受け付ける入力工程と、
前記入力工程によって入力された回路情報に含まれているコアの領域が確保された前記設計対象回路のレイアウト情報を生成する生成工程と、
前記生成工程によって生成されたレイアウト情報上の前記コアの領域以外の領域に、前記回路情報に含まれているＩ／Ｏ回路を配置するレイアウト工程と、
前記レイアウト情報のうち前記コアの領域および前記Ｉ／Ｏ回路の配置領域以外の領域の中から、前記回路情報に含まれているパッドの配置可能領域を決定する決定工程と、
前記決定工程によって決定された前記配置可能領域に前記パッドを配置する配置工程と、
を実行することを特徴とするレイアウト設計方法。
【００９２】
（付記２）前記決定工程は、
ワイヤボンディングで指定されたワイヤの長さに基づいて、前記配置可能領域を決定することを特徴とする付記１に記載のレイアウト設計方法。
【００９３】
（付記３）前記決定工程は、
半導体試験装置のプローブで指定された針の長さに基づいて、前記配置可能領域を決定することを特徴とする付記１または２に記載のレイアウト設計方法。
【００９４】
（付記４）前記コンピュータが、
前記パッドの配置数および面積を取得する取得工程と、
前記配置可能領域の面積を算出するとともに、前記取得工程によって取得された前記パッドの配置数および面積により前記配置数分のパッドの総面積を算出する算出工程と、
前記算出工程によって算出された面積どうしを比較することにより、前記配置数分のパッドが前記配置可能領域に配置可能か否かを判断する判断工程と、を実行し、
前記決定工程は、
前記判断工程によって判断された判断結果に基づいて、前記配置数分のパッドを前記配置可能領域に配置することを特徴とする付記１〜３のいずれか一つに記載のレイアウト設計方法。
【００９５】
（付記５）前記コンピュータが、
前記判断工程によって前記配置可能領域の面積が前記配置数分のパッドの総面積よりも小さいと判断された場合、前記配置可能領域の面積を所定量拡張する拡張工程を実行し、
前記判断工程は、
前記拡張工程によって拡張された前記配置可能領域の面積と前記配置数分のパッドの総面積とを比較することにより、前記配置数分のパッドが前記配置可能領域に配置可能か否かを判断する付記４に記載のレイアウト設計方法。
【００９６】
（付記６）前記決定工程は、
前記判断工程によって前記配置可能領域の面積が前記配置数分のパッドの総面積以上と判断された場合、前記配置数分のパッドを前記配置可能領域に配置することを特徴とする付記４または５に記載のレイアウト設計方法。
【００９７】
（付記７）前記コンピュータが、
前記パッドの面積を、前記配置数分のパッドの総面積が前記配置可能領域の面積を超えない最大の大きさにする最適化工程を実行し、
前記配置工程は、
前記最適化工程によって最適化されたパッドを配置することを特徴とする付記１〜６のいずれか一つに記載のレイアウト設計方法。
【００９８】
（付記８）前記配置工程は、
同種のパッドが隣接するように配置することを特徴とする付記１〜７のいずれか一つに記載のレイアウト設計方法。
【００９９】
（付記９）コアの回路と、
前記コアの回路に接続されるＩ／Ｏ回路群と、
前記Ｉ／Ｏ回路群に接続される複数種類のパッド群と、を備え、
前記各種類のパッドの数が前記Ｉ／Ｏ回路の数よりも少ないことを特徴とする半導体集積回路。
【０１００】
（付記１０）コアの回路と、
前記コアに接続される複数のＩ／Ｏ回路群と、
前記各Ｉ／Ｏ回路群に接続される複数種類のパッド群と、を備え、
前記複数のＩ／Ｏ回路群のうち少なくともいずれか一つのＩ／Ｏ回路群において、前記各種類のパッドの数が前記Ｉ／Ｏ回路の数よりも少ないことを特徴とする半導体集積回路。
【０１０１】
（付記１１）前記少なくともいずれか一つのパッドが、当該パッドに接続されるＩ／Ｏ回路の直上以外の位置に配置されていることを特徴とする付記９または１０に記載の半導体集積回路。
【０１０２】
（付記１２）同種のパッドが隣接するように配置されていることを特徴とする付記９〜１１のいずれか一つに記載の半導体集積回路。
【０１０３】
（付記１３）コンピュータを、
設計対象回路の回路情報の入力を受け付ける入力手段、
前記入力手段によって入力された回路情報に含まれているコアの領域が確保された前記設計対象回路のレイアウト情報を生成する生成手段、
前記生成手段によって生成されたレイアウト情報上の前記コアの領域以外の領域に、前記回路情報に含まれているＩ／Ｏ回路を配置するレイアウト手段、
前記レイアウト情報のうち前記コアの領域および前記Ｉ／Ｏ回路の配置領域以外の領域の中から、前記回路情報に含まれているパッドの配置可能領域を決定する決定手段、
前記決定手段によって決定された前記配置可能領域に前記パッドを配置する配置手段、
として機能させることを特徴とするレイアウト設計プログラム。
【０１０４】
（付記１４）設計対象回路の回路情報の入力を受け付ける入力手段、
前記入力手段によって入力された回路情報に含まれているコアの領域が確保された前記設計対象回路のレイアウト情報を生成する生成手段、
前記生成手段によって生成されたレイアウト情報上の前記コアの領域以外の領域に、前記回路情報に含まれているＩ／Ｏ回路を配置するレイアウト手段、
前記レイアウト情報のうち前記コアの領域および前記Ｉ／Ｏ回路の配置領域以外の領域の中から、前記回路情報に含まれているパッドの配置可能領域を決定する決定手段、
前記決定手段によって決定された前記配置可能領域に前記パッドを配置する配置手段、
を備えることを特徴とするレイアウト設計装置。
【図面の簡単な説明】
【０１０５】
【図１】本実施の形態によりレイアウト設計された半導体集積回路のレイアウト図である。
【図２】実施の形態にかかるレイアウト設計装置のハードウェア構成を示すブロック図である。
【図３】レイアウト設計装置の機能的構成を示すブロック図である。
【図４】回路情報の一例を示す説明図である。
【図５】生成部３０２により生成されたレイアウト情報を示す説明図である。
【図６】レイアウト部３０３によりＩ／Ｏ回路４０２が配置されたレイアウト情報を示す説明図である。
【図７】パッドの必要配置数テーブルを示す説明図である。
【図８】パッドの最小面積情報テーブルを示す説明図である。
【図９−１】パッドの配置禁止領域を示す説明図である。
【図９−２】パッドの配置可能領域を示す説明図である。
【図１０】ボンディングとプローブの制約テーブルを示す説明図である。
【図１１】配置可能領域に最小の面積のパッドを配置したイメージ図である。
【図１２】配置可能領域に最適化した面積のパッドを配置したイメージ図である。
【図１３】ＰＴパッド１０４の配置位置とＷＢパッド１０５の配置位置の決定処理を示す説明図である。
【図１４】本実施の形態にかかるレイアウト設計装置のレイアウト設計処理手順を示すフローチャートである。
【図１５】パッドの配置可能領域の決定処理手順を示すフローチャートである。
【図１６】パッドの配置処理手順を示すフローチャートである。
【図１７】パッド律則にしたがってレイアウト設計された半導体集積回路のレイアウト情報を示す説明図である。
【図１８】コア律則にしたがってレイアウト設計された半導体集積回路のレイアウト情報を示す説明図である。
【符号の説明】
【０１０６】
１００  レイアウト情報
１０１  コアの領域
３０１  入力部
３０２  生成部
３０３  レイアウト部
３０４  取得部
３０５  算出部
３０６  判断部
３０７  拡張部
３０８  決定部
３０９  最適化部
３１０  配置部
４００  回路情報
４０２  Ｉ／Ｏ回路
【図１】
2010117962.tif 000003
【図２】
2010117962.tif 000004
【図３】
2010117962.tif 000005
【図４】
2010117962.tif 000006
【図５】
2010117962.tif 000007
【図６】
2010117962.tif 000008
【図７】
2010117962.tif 000009
【図８】
2010117962.tif 000010
【図９−１】
2010117962.tif 000011
【図９−２】
2010117962.tif 000012
【図１０】
2010117962.tif 000013
【図１１】
2010117962.tif 000014
【図１２】
2010117962.tif 000015
【図１３】
2010117962.tif 000016
【図１４】
2010117962.tif 000017
【図１５】
2010117962.tif 000018
【図１６】
2010117962.tif 000019
【図１７】
2010117962.tif 000020
【図１８】
2010117962.tif 000021