(57)【要約】【課題】設計の自由度が向上し、デッドスペースや基板面積の増加を抑制しながら、Ｉ／Ｏバッファ数（信号数）を増加させることが可能な半導体集積回路装置を提供する。【解決手段】エリアＩ／Ｏ３と、マクロ４と、周辺Ｉ／Ｏ２とを具備する半導体集積回路装置を用いる。エリアＩ／Ｏ３は、チップ１上のゲート領域５又は周辺部の任意の位置に配設され、複数のＩ／Ｏバッファを含む。マクロ４は、ゲート領域５の任意の位置に配設されている。周辺Ｉ／Ｏ２は、その周辺部に配設された複数のＩ／Ｏバッファを含む。そして、マクロ４は、マクロ４に用いるエリアＩ／Ｏ３と組み合され、その任意の位置に配設される。更に、ゲート領域５に配設された複数の論理ゲートを具備する。【選択図】　　　図１
2004047516.tif 000002
【特許請求の範囲】
【請求項１】
チップ上のゲート領域又は周辺部の任意の位置に配設され、複数のＩ／Ｏバッファを含むエリアＩ／Ｏと、
前記ゲート領域の任意の位置に配設されたマクロと、
を具備する、
半導体集積回路装置。
【請求項２】
前記周辺部に配設された複数のＩ／Ｏバッファを含む周辺Ｉ／Ｏと、
を更に具備する、
請求項１に記載の半導体集積回路装置。
【請求項３】
前記マクロは、前記マクロに用いる前記エリアＩ／Ｏと組み合され、前記任意の位置に配設される、
請求項１又は２に記載の半導体集積回路装置。
【請求項４】
前記ゲート領域に配設された複数の論理ゲートを更に具備する、
１乃至３のいずれか一項に記載の半導体集積回路装置。
【請求項５】
複数のマクロの各々に関する情報と、前記複数のマクロの各々に対応するエリアＩ／Ｏの情報とを関連付けて記憶しているマクロテーブルと、ここで、前記エリアＩ／Ｏは、チップ上のゲート領域又は周辺部の任意の位置に配設可能な複数のＩ／Ｏバッファを含み、
設計に用いる複数のマクロとしての複数の設計マクロに関する情報と、前記複数の設計マクロの内の高速での情報処理が必要なものを指定する情報としての処理情報と、前記マクロテーブルとに基づいて、前記高速での情報処理が必要な設計マクロとしての高速マクロを選択し、前記高速マクロと前記エリアＩ／Ｏとの組であるエリアＩ／Ｏ付きマクロを生成する選択部と、
前記設計マクロに関する情報と、前記マクロテーブルとに基づいて、前記エリアＩ／Ｏ付きマクロを、前記チップ上の所定の場所へ配置するレイアウト設計部と、
を具備する、
半導体集積回路の設計装置。
【請求項６】
前記マクロテーブルの前記複数のマクロの各々に対応するエリアＩ／Ｏの情報は、前記エリアＩ／ＯのＩ／Ｏバッファの数、前記Ｉ／Ｏバッファの配置及び前記エリアＩ／Ｏと前記マクロの最適配置の少なくとも１つの情報を含む、
請求項５に記載の半導体集積回路の設計装置。
【請求項７】
設計に用いる複数のマクロの内、高速に信号の入出力を行う前記マクロとしての高速マクロを選択するステップと、
前記高速マクロと前記高速マクロに用いるエリアＩ／Ｏとを組み合せたエリアＩ／Ｏ付きマクロを生成するステップと、
前記高速マクロがゲート領域に含まれるように、前記エリアＩ／Ｏ付きマクロをチップ上に配置するステップと、
を具備する、
半導体集積回路装置のレイアウト方法。
【請求項８】
前記エリアＩ／Ｏ付きマクロを生成するステップは、
複数のマクロの各々に関する情報と前記複数のマクロの各々に対応するエリアＩ／Ｏの情報とを関連付けて記憶しているマクロテーブルと、前記高速マクロの情報とに基づいて生成される、
請求項７に記載の半導体集積回路装置のレイアウト方法。
【請求項９】
前記マクロテーブルの前記複数のマクロの各々に対応するエリアＩ／Ｏの情報は、前記エリアＩ／Ｏと前記マクロの最適配置の情報を含み、
前記エリアＩ／Ｏ付きマクロをチップ上に配置するステップは、
前記高速マクロに関する情報と、前記マクロテーブルとに基づいて、前記エリアＩ／Ｏ付きマクロを、前記チップ上の所定の場所へ配置する、
請求項８に記載の半導体集積回路装置のレイアウト方法。
【請求項１０】
選択部と、レイアウト設計部と、マクロテーブルとを具備する半導体集積回路装置の設計装置の前記選択部が、設計に用いる複数のマクロとしての複数の設計マクロに関する情報と、前記複数の設計マクロの内の高速での情報処理が必要なものを指定する情報としての処理情報と、前記マクロテーブルとに基づいて、前記高速での情報処理が必要な設計マクロとしての高速マクロを選択し、前記高速マクロとエリアＩ／Ｏとの組であるエリアＩ／Ｏ付きマクロを生成するステップと、
前記レイアウト設計部が、前記設計マクロに関する情報と、前記マクロテーブルとに基づいて、前記エリアＩ／Ｏ付きマクロを、前記チップ上の所定の場所へ配置するステップと、
を具備し、
前記エリアＩ／Ｏは、チップ上のゲート領域又は周辺部の任意の位置に配設可能な複数のＩ／Ｏバッファを含み、
前記マクロテーブルは、複数のマクロの各々に関する情報と、前記複数のマクロの各々に対応するエリアＩ／Ｏの情報とを関連付けて記憶している、
半導体集積回路装置のレイアウト方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体集積回路装置に関し、特に、設計の自由度を向上することが可能な半導体集積回路装置に関する。
【０００２】
【従来の技術】
半導体集積回路装置の設計では、予めＩ／Ｏバッファを配置する領域としてのＩ／Ｏバッファ領域、及び、基本セルやマクロを配置する領域としてのゲート領域の位置が各々決められている。例えば、Ｉ／Ｏバッファ領域は、半導体集積回路装置としてのチップの周辺部、ゲート領域は、Ｉ／Ｏバッファ領域に囲まれた中央部（内部）である。そして、設計の際、Ｉ／Ｏバッファや基本セル、マクロは、その決められた領域の中において、設計、配置される。
【０００３】
半導体集積回路装置において、Ｉ／Ｏバッファ数を増加させる方法として、以下のような技術が知られている。
図１０は、従来のＩ／Ｏバッファ数を増加させる方法を説明する半導体集積回路装置の模式的な平面図である。半導体集積回路装置としてのチップＡ１０１−１は、ゲート領域１０５−１とバッファ領域１０３−１とを備える。ゲート領域１０５−１は、基本セルやマクロを含み、半導体集積回路装置の中央部に設けられている。バッファ領域１０３−１は、Ｉ／Ｏバッファやパッド１０４を含み、半導体集積回路装置の周辺部全体にわたり、ゲート領域１０５−１を囲むように設けられている。この場合、Ｉ／Ｏバッファ（バッファ領域１０３−１）をチップ周辺に配置している。
Ｉ／Ｏバッファの数を増加させる場合、図１０に示すように、チップ一辺の長さを長くする。すなわち、チップサイズを大きくし、ゲート領域１０５−２とバッファ領域１０３−２とを備えるチップＢ１０１−２のようにして対応する。このとき、ゲートサイズが小さい場合、ゲート領域１０５−２内のデッドスペースが増加することが考えられる。
【０００４】
関連する技術として、特開平４−１７１７５６号公報に、半導体集積回路装置の技術が開示されている。この技術の半導体集積回路装置は、基板の中央部にゲート領域を、また周辺部にバッファ領域を夫々設定した半導体集積回路装置において、前記バッファ領域は、周辺部に沿って内、外に相互の間に所定の間隔を隔てて複数重に設けたことを特徴とする。
図１１は、この技術の半導体集積回路装置を説明する模式的な平面図である。半導体集積回路装置としてのチップ１１１は、ゲート領域１１５及びバッファ領域１１３を備え、両者の間を信号線１１２で接続している。チップ１１１最外周のバッファ領域１１３には多数のＩ／Ｏバッファを隙間なく一列に配置する。その内側のバッファ領域１１３には、間隔を置いてＩ／Ｏバッファを複数列配置できる。この技術は、同じ基板面積で、配置可能なＩ／Ｏバッファの数を増大させ、基板面積を縮小させることを目的としている。
Ｉ／Ｏバッファの数を増加させる際、複数重のＩ／Ｏバッファを配置すると、内側のバッファ領域１１３が拡大し、ゲート領域１１５として使用可能な面積が縮小することが考えられる。
【０００５】
また、他の関連する技術として、Ｉ／Ｏ　Ｆｌｏｏｒｐｌａｎｎｉｎｇ　Ｇｕｉｄｅ　ｆｏｒ　ＳＡ−１２（Ｉｎｔｅｒｎａｔｉｏｎａｌ　ＢｕｓｉｎｅｓｓＭａｃｈｉｎｅｓ　Ｃｏｒｐｏｒａｔｉｏｎ、ＡＳＩＣ　Ｐｒｏｄｕｃｔｓ　Ａｐｐｌｉｃａｔｉｏｎ　Ｎｏｔｅ　Ｎｏ．ＳＡ１４−２３０９−００、１９９８）の技術が開示されている。
図１２は、この技術の半導体集積回路装置を説明する模式的な平面図である。この技術の半導体集積回路装置は、半導体集積回路装置としてのチップ１２１に、マトリックス状に配置されたエリアＩ／Ｏ１２６と、エリアＩ／Ｏ１２６の列の間に設けられたゲート領域１２５を備える。このチップ１２１は、フリップチップ用であり、周辺部にＩ／Ｏバッファを設ける必要はなく、エリア内（中央部）に設けらたＩ／ＯバッファとしてのエリアＩ／Ｏ１２６を用いる。エリアＩ／Ｏ１２６の配置可能領域は、決められている。そして、その個数を増加させることによりＩ／Ｏバッファ数を増加させる。
Ｉ／Ｏバッファの数を増加させる際、Ｉ／Ｏバッファ（エリアＩ／Ｏ１２６）を配置可能な領域が制限されているため、大きなマクロを配置する場合、エリアＩ／Ｏ１２６を削除する必要がある。そのため、取り扱える信号数（Ｉ／Ｏバッファ数）が低下することが考えられる。また、Ｉ／Ｏバッファ近傍に基本セルを配置する場合、ラッチアップ等の影響を考慮して、少し距離をあける必要がある。そのため、Ｉ／Ｏバッファを全てエリアＩ／Ｏ１２６として配置すると、デッドスペースが増加し、ゲート領域１２５が減少することが考えられる。
【０００６】
【発明が解決しようとする課題】
従って、本発明の目的は、設計の自由度の向上する半導体集積回路装置及び半導体集積回路装置のレイアウト方法を提供することである。
また、本発明の他の目的は、デッドスペースの発生を抑さえ、基板面積の増加を抑制しながら、Ｉ／Ｏバッファ数（信号数）を増加させることが可能な半導体集積回路装置及び半導体集積回路装置のレイアウト方法を提供することである。
【０００７】
【課題を解決するための手段】
以下に、［発明の実施の形態］で使用される番号・符号を用いて、課題を解決するための手段を説明する。これらの番号・符号は、［特許請求の範囲］の記載と［発明の実施の形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号・符号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【０００８】
従って、上記課題を解決するために、本発明の半導体集積回路装置は、エリアＩ／Ｏ（３）と、マクロ（４）とを具備する。
エリアＩ／Ｏ（３）は、チップ（１）上のゲート領域（５）又は周辺部の任意の位置に配設され、複数のＩ／Ｏバッファを含む。マクロ（４）は、ゲート領域（５）の任意の位置に配設されている。
【０００９】
すなわち、エリアＩ／Ｏ（３）やマクロ（４）について、配置する場所を予め設定するのではなく、チップ（１）上の任意（例示：チップの周辺部や中心部のような設計上望ましい位置、所定の素子（群）の近傍、所定の素子（群）から出来るだけ離れた位置、等）の場所に配置する。
その場合、チップ上のＩ／Ｏバッファのサイズやパッドの配置構成（格子状、千鳥状）、パッドピッチが変更された場合でも、同様に適用可能である。
【００１０】
また、本発明の半導体集積回路装置は、その周辺部に配設された複数のＩ／Ｏバッファを含む周辺Ｉ／Ｏ（２）を更に具備する。
【００１１】
また、本発明の半導体集積回路装置は、マクロ（４）は、マクロ（４）に用いるエリアＩ／Ｏ（３）と組み合され、その任意の位置に配設される。
【００１２】
すなわち、マクロ（４）は、マクロ（４）用のエリアＩ／Ｏ（３）（Ｉ／Ｏバッファ、信号パッド、Ｉ／Ｏバッファ用電源パッド、Ｉ／Ｏバッファ用接地パッド及び接続配線を含む）と組み合されて、チップ（１）上の任意の位置に配置される。
【００１３】
更に、本発明の半導体集積回路装置は、ゲート領域（５）に配設された複数の論理ゲート（図示されず）を更に具備する。
【００１４】
上記課題を解決するために、本発明の半導体集積回路の設計装置は、マクロテーブル（７４）と、選択部（７３）と、レイアウト設計部（７２）とを具備する。
マクロテーブル（７４）は、複数のマクロ（４）の各々に関する情報と、複数のマクロ（４）の各々に対応するエリアＩ／Ｏ（３）の情報とを関連付けて記憶している。ここで、エリアＩ／Ｏ（３）は、チップ（１）上のゲート領域（５）又は周辺部の任意の位置に配設可能な複数のＩ／Ｏバッファを含む。選択部（７３）は、設計に用いる複数のマクロ（４）としての複数の設計マクロ（４）に関する情報と、複数の設計マクロ（４）の内の高速での情報処理が必要なものを指定する情報としての処理情報と、マクロテーブル（７４）とに基づいて、その高速での情報処理が必要な設計マクロ（４）としての高速マクロ（４）を選択し、高速マクロ（４）とエリアＩ／Ｏ（３）との組であるエリアＩ／Ｏ付きマクロを生成する。レイアウト設計部（７２）は、設計マクロ（４）に関する情報と、マクロテーブル（７４）とに基づいて、そのエリアＩ／Ｏ付きマクロを、チップ（１）上の所定の場所へ配置する。
【００１５】
また、本発明の半導体集積回路の設計装置は、マクロテーブル（７４）の複数のマクロ（４）の各々に対応するエリアＩ／Ｏ（３）の情報は、エリアＩ／Ｏ（３）のＩ／Ｏバッファの数、そのＩ／Ｏバッファの配置及びエリアＩ／Ｏ（３）とマクロ（４）の最適配置の少なくとも１つの情報を含む。
【００１６】
上記課題を解決するために、本発明の半導体集積回路装置のレイアウト方法は、設計に用いる複数のマクロ（４）の内、高速に信号の入出力を行うマクロ（４）としての高速マクロ（４）を選択するステップと、高速マクロ（４）と高速マクロ（４）に用いるエリアＩ／Ｏ（３）とを組み合せたエリアＩ／Ｏ付きマクロを生成するステップと、高速マクロ（４）がゲート領域（５）に含まれるように、エリアＩ／Ｏ付きマクロをチップ（１）上に配置するステップとを具備する。
【００１７】
すなわち、信号処理に対するチップ（１）上の位置の影響の大きいマクロ（４）を優先的にチップ（１）上に配置する。
優先性の指標は、上記の高速信号処理の他に、熱の影響（例示：周辺部の方が放熱し易い、中心部の方が熱の伸縮の影響が少ない）、チップ（１）周辺の他の素子との位置関係が例示される。
【００１８】
また、本発明の半導体集積回路装置のレイアウト方法は、エリアＩ／Ｏ付きマクロを生成するステップが、複数のマクロ（４）の各々に関する情報と複数のマクロ（４）の各々に対応するエリアＩ／Ｏ（３）の情報とを関連付けて記憶しているマクロテーブル（７４）と、高速マクロ（４）の情報とに基づいて生成される。
【００１９】
更に、本発明の半導体集積回路装置のレイアウト方法は、マクロテーブル（７４）の複数のマクロ（４）の各々に対応するエリアＩ／Ｏ（３）の情報が、エリアＩ／Ｏ（３）とマクロ（４）の最適配置の情報を含んでいる。
そして、エリアＩ／Ｏ付きマクロをチップ（１）上に配置するステップは、高速マクロ（４）に関する情報と、マクロテーブル（７４）とに基づいて、エリアＩ／Ｏ付きマクロを、チップ（１）上の所定の場所へ配置する。
【００２０】
上記課題を解決するために、本発明の半導体集積回路装置のレイアウト方法に関するプログラムは、選択部（７３）と、レイアウト設計部（７２）と、マクロテーブル（７４）とを具備する半導体集積回路装置の設計装置（７０）により実行される。
すなわち、選択部（７３）が、設計に用いる複数のマクロ（４）としての複数の設計マクロ（４）に関する情報と、複数の設計マクロ（４）の内の高速での情報処理が必要なものを指定する情報としての処理情報と、マクロテーブル（７４）とに基づいて、その高速での情報処理が必要な設計マクロ（４）としての高速マクロ（４）を選択し、高速マクロ（４）とエリアＩ／Ｏ（３）との組であるエリアＩ／Ｏ付きマクロを生成するステップと、レイアウト設計部（７２）が、設計マクロ（４）に関する情報と、マクロテーブル（７４）とに基づいて、エリアＩ／Ｏ付きマクロを、チップ（１）上の所定の場所へ配置するステップとを具備する。
ここで、エリアＩ／Ｏ（３）は、チップ（１）上のゲート領域（５）又は周辺部の任意の位置に配設可能な複数のＩ／Ｏバッファを含んでいる。また、マクロテーブル（７４）は、複数のマクロ（４）の各々に関する情報と、複数のマクロ（４）の各々に対応するエリアＩ／Ｏ（３）の情報とを関連付けて記憶している。
【００２１】
【発明の実施の形態】
以下、本発明である半導体集積回路装置及び半導体集積回路装置のレイアウト方法の実施の形態に関して、添付図面を参照して説明する。
【００２２】
図１は、本発明である半導体集積回路装置の実施の形態における構成を示す模式的な平面図である。
半導体集積回路装置としてのチップ１は、チップの周辺部だけでなく、チップの内部においてもＰＡＤを設けることが可能なチップであり、フリップチップに例示される。周辺Ｉ／Ｏ２、エリアＩ／Ｏ３、マクロ４及びゲート領域５を具備する。
【００２３】
本発明の半導体集積回路装置は、ゲート領域５（マクロ４を含む）及びバッファ領域（周辺Ｉ／Ｏ２及びエリアＩ／Ｏ３を含む）の位置を、予め固定せず、自由に配置可能とする。
すなわち、一つのマクロ４と、そのマクロ４に関わるエリアＩ／Ｏ３（Ｉ／Ｏバッファ、信号パッド、Ｉ／Ｏバッファ用電源パッド、Ｉ／Ｏバッファ用接地パッド、及びＩ／Ｏバッファと各パッドとを繋ぐ接続配線）とを一つの設計上の単位（以下、「エリアＩ／Ｏ付きマクロ」と称する）として用意する。そうすることにより、チップ１上の任意の場所へ、エリアＩ／Ｏ付きマクロを自動的に配置することが容易に実現できる。また、周辺Ｉ／Ｏ２とエリアＩ／Ｏ３とを併用することにより、デッドスペース拡大を抑制しながらＩ／Ｏバッファ数（信号数）を増加させることも実現可能となる。なお、マクロ４と組み合わされるのは、周辺Ｉ／Ｏ２でも良い。
また、図１は、上記各構成の配置の一例であり、本発明がこの配置に制限されるものではない。
【００２４】
以下各構成について説明する。
周辺Ｉ／Ｏ２は、チップ１の周辺部の辺に沿って、素子を設置可能な辺の領域全体に連続して設けられている。そして、Ｉ／Ｏバッファやパッド（信号パッド、Ｉ／Ｏバッファ用電源パッド、Ｉ／Ｏバッファ用接地パッドを含む）を有するバッファ領域である。なお、周辺Ｉ／Ｏ２の周辺部のパッド上には、マクロ４や基本セル（ゲートを構成可能なするトランジスタ素子の集合であり、エリアＩ／Ｏ３又は周辺Ｉ／Ｏ２と配線で接続される）、論理ゲートの一部が重なる（ただし別の層）場合もある。
【００２５】
エリアＩ／Ｏ３は、チップ１上に設けられ、Ｉ／Ｏバッファやパッド（信号パッド、Ｉ／Ｏバッファ用電源パッド、Ｉ／Ｏバッファ用接地パッド、接続配線を含む）を有するバッファ領域である。エリアＩ／Ｏ３は、設計により、チップ１の中央部だけではなく、周辺部に設置しても良い。また、その大きさも設計により可変である。なお、エリアＩ／Ｏ３の周辺部のパッド上には、マクロ４や基本セル、論理ゲートの一部が重なる（ただし別の層）場合もある。
【００２６】
マクロ４は、チップ１上に設けられ、ＣＰＵやＲＡＭ、ＲＯＭ、乗算器のような所定の機能を有するコア（基本セルの大きなもの）である。マクロ４は、エリアＩ／Ｏ３又は周辺Ｉ／Ｏ２と配線で接続される。マクロ４は、チップ１の中央部だけではなく、周辺部に設置しても良い。
【００２７】
ゲート領域５は、チップ１上に設けられ、基本セルやマクロ４、論理ゲートの配置される領域である。ゲート領域５は、チップ１の中央部だけではなく、周辺部に設置しても良い。
【００２８】
図１に示すように、この半導体集積回路装置は、周辺Ｉ／Ｏ２及びエリアＩ／Ｏ３を同一チップ１上に実現する。
中央部のゲート領域５にはエリアＩ／Ｏ３を配置する。エリアＩ／Ｏ３は、マクロ４（コア）の近傍に配置することが出来る。また、エリアＩ／Ｏ３周辺もゲート領域５として使用できる。
周辺部には、周辺Ｉ／Ｏ２としてＩ／Ｏバッファを一列に隙間なく配置する。また、エリアＩ／Ｏ３を周辺部に配置しても良い。
すなわち、周辺Ｉ／Ｏ２とエリアＩ／Ｏ３との組合せにより、デッドスペースを抑えながらＩ／Ｏバッファ数（信号数）の増加が可能となる。
【００２９】
また、高速（例示：５００ＭＨｚ以上）に信号の入出力を行う必要があるマクロ４又は基本セルに用いるエリアＩ／Ｏ３を、それらマクロ４や基本セルの近傍に配置することが出来る。そして、それ以外のマクロ４や基本セルは、それ以外の部分に配置する。それにより、チップ１での信号処理を高速化することが出来る。加えて、信号遅延を改善することが出来、Ｉ／Ｏ時のタイミングを合わせ易くなる。
【００３０】
次に、半導体集積回路装置としてのチップの具体的な構造の例を図を参照して説明する。なお、図２〜図５の各チップの面積は全て等しいものとし、一辺のパッド数は２９パッドで共通とする。
また、本発明は、図２〜図５の構造に制限されるものではなく、チップ上のＩ／Ｏバッファのサイズやパッドの配置構成（格子状、千鳥状）、パッドピッチが変更された場合でも、同様に適用可能である。
【００３１】
図２は、周辺Ｉ／Ｏを有し、エリアＩ／Ｏを有しないチップ１１を示す。これは、従来の技術（図１０）で説明した構造である。チップ１１は、周辺Ｉ／Ｏ１２、ゲート領域１５を備える。
周辺Ｉ／Ｏ１２は、Ｉ／Ｏバッファ用電源パッド（図中Ｖ１で表示、以下同様）としてのＩ／Ｏ電源１７、Ｉ／Ｏバッファ用接地パッド（図中Ｇ１で表示、以下同様）としてのＩ／ＯＧＮＤ１８、信号パッド（図中Ｓで表示、以下同様）としての信号端子１９を含む。信号端子１９の数は、チップ１１におけるピンの数に対応する。図２では、３２２ピンである。
ゲート領域１５及び周辺Ｉ／Ｏ１２のその他の機能等については、図１のゲート領域５及び周辺Ｉ／Ｏ２と同様である。
【００３２】
図３は、エリアＩ／Ｏを有し、周辺Ｉ／Ｏを有しないチップ２１を示す。チップ２１は、エリアＩ／Ｏ２３、ゲート領域２５を備える。
エリアＩ／Ｏ２３は、Ｉ／Ｏバッファ用電源パッド（Ｖ１）としてのＩ／Ｏ電源２７、Ｉ／Ｏバッファ用接地パッド（Ｇ１）としてのＩ／ＯＧＮＤ２８、信号パッド（Ｓ）としての信号端子２９を含む。信号端子２９の数は、チップ２１におけるピンの数に対応する。図３では、４１６ピンである。図２のチップ１１と図３のチップ２１は、同一の面積である。すなわち、図３のピン数は図２の１．２５倍であり、同一面積でＩ／Ｏバッファ数（信号数）が増加している。
ゲート領域２５及びエリアＩ／Ｏ２３のその他の機能等については、図１のゲート領域５及びエリアＩ／Ｏ３と同様である。
【００３３】
図４は、エリアＩ／Ｏ及び周辺Ｉ／Ｏを有するチップ３１を示す。チップ３１は、周辺Ｉ／Ｏ３２、エリアＩ／Ｏ３３、ゲート領域３５を備える。
周辺Ｉ／Ｏ３２及びエリアＩ／Ｏ３３は、Ｉ／Ｏバッファ用電源パッド（Ｖ１）としてのＩ／Ｏ電源３７、Ｉ／Ｏバッファ用接地パッド（Ｇ１）としてのＩ／ＯＧＮＤ３８、信号パッド（Ｓ）としての信号端子３９を含む。信号端子３９の数は、チップ３１におけるピンの数に対応する。図４では、４７６ピンである。図２のチップ１１と図４のチップ３１は、同一の面積である。すなわち、図４のピン数は図２の１．４３倍であり、同一面積でＩ／Ｏバッファ数（信号数）が増加している。
ゲート領域３５、周辺Ｉ／Ｏ３２及びエリアＩ／Ｏ３３のその他の機能等については、図１のゲート領域５、周辺Ｉ／Ｏ２及びエリアＩ／Ｏ３と同様である。
【００３４】
図５は、エリアＩ／Ｏ及び周辺Ｉ／Ｏを有するチップ４１を示す。チップ４１は、周辺Ｉ／Ｏ４２、エリアＩ／Ｏ４３、ゲート領域４５を備える。この場合、図４に比較して、エリアＩ／Ｏ４３の数を減らし、ゲート領域４５を増やしている。
周辺Ｉ／Ｏ４２及びエリアＩ／Ｏ４３は、Ｉ／Ｏバッファ用電源パッド（Ｖ１）としてのＩ／Ｏ電源４７、Ｉ／Ｏバッファ用接地パッド（Ｇ１）としてのＩ／ＯＧＮＤ４８、信号パッド（Ｓ）としての信号端子４９を含む。信号端子４９の数は、チップ４１におけるピンの数に対応する。図５では、４１２ピンである。図２のチップ１１と図５のチップ４１は、同一の面積である。すなわち、図５のピン数は図２の１．２４倍であり、同一面積でＩ／Ｏバッファ数（信号数）が増加している。
ゲート領域４５、周辺Ｉ／Ｏ４２及びエリアＩ／Ｏ４３のその他の機能等については、図１のゲート領域５、周辺Ｉ／Ｏ２及びエリアＩ／Ｏ３と同様である。
【００３５】
図２及び図１０のように従来では基本セルを配置していたゲート領域（１５、１０５）に、図３〜図５のようにエリアＩ／Ｏ（２３、３３、４３）を配置し、周辺Ｉ／Ｏ（３２、４２）をも用いることにより、単位面積当たりの信号密度（Ｉ／Ｏバッファ数）を飛躍的に増加させることが出来る。また、ゲート領域の空き領域へ、周辺Ｉ／Ｏの一部をエリアＩ／Ｏとして移動させることにより、チップサイズを縮小させることも可能になる。
【００３６】
図６は、エリアＩ／Ｏの構成の一部の一例を示す図である。エリアＩ／Ｏは、パッド５１、Ｉ／Ｏバッファ５２、エリアＩ／Ｏ本体５３、ガードリングセル５４、配線５５（−１〜２）、デッドスペース５６を備える。
パッド５１は、複数あり、それぞれ信号パッド、Ｉ／Ｏバッファ用電源パッド及びＩ／Ｏバッファ用接地パッドのいずれか一つである（図６中では、それらを明記していない）。パッド５１の各々は、Ｉ／Ｏバッファ５２のいずれかと、配線５５により接続されている。なお、図中には、配線５５として配線５５−１及び配線５５−２のみを例示している。エリアＩ／Ｏ本体５３は、Ｉ／Ｏバッファ５２及びガードリングセル５４を含み、周囲の基本セル又はマクロ（図示せず）とデッドスペース５６で隔てられている。すなわち、ゲート領域の基本セル又はマクロとエリアＩ／Ｏ本体５３とは同じ層にある。そして、エリアＩ／Ｏのパッド５１と、その基本セル又はマクロの一部とは、互いに別の層で重なっている。ガードリングセル５４は、ラッチアップ対策用にエリアＩ／Ｏ本体５３のＩ／Ｏバッファ５２の両端に設けられている。
【００３７】
図７は、周辺Ｉ／Ｏの構成の一部の一例を示す図である。周辺Ｉ／Ｏは、パッド６１、Ｉ／Ｏバッファ６２、周辺Ｉ／Ｏ本体６３、配線６５、デッドスペース６６を備える。
パッド６１は、パッド５１と同様である。パッド６１の各々は、Ｉ／Ｏバッファ６２のいずれかと、配線６５により接続されている。なお、図中には、配線６５の１本のみを例示している。周辺Ｉ／Ｏ本体６３は、Ｉ／Ｏバッファ６２を含み、チップの中央側の基本セル又はマクロ（図示せず）とデッドスペース６６で隔てられている。すなわち、ゲート領域の基本セル又はマクロとエリアＩ／Ｏ本体６３とは同じ層にある。そして、エリアＩ／Ｏのパッド６１と、その基本セル又はマクロの一部とは、互いに別の層で重なっている。
【００３８】
通常、Ｉ／Ｏバッファ５２、６２及び基本セル（又はマクロ）間は、スペースが必要である。そのため、図６及び図７に示すように、デッドスペース５６、６６を設ける必要がある。エリアＩ／Ｏ本体５３は、周囲に基本セル（又はマクロ）が配置される。そのため、エリアＩ／Ｏ本体５３を多用すると、デッドスペース６６の総面積よりもデッドスペース５６の総面積が大きくなる。また、エリアＩ／Ｏ本体５３は、両端にガードリングセル５４を配置するため、周辺Ｉ／Ｏ本体６３本体より広くＩ／Ｏバッファ配置領域が必要になる。
信号ピン数のほぼ同じである図３及び図５のチップにて算出したデッドスペースを以下に示す。Ｉ／Ｏバッファサイズ２５０μｍ×５０μｍ、ガードリングセルサイズ２５０μｍ×２０μｍ、パッドピッチ２５０μｍ、Ｉ／Ｏバッファと基本セルの間隔１０μｍとする。
図３（エリアＩ／Ｏのみ）　　　　　：６８１，２００μｍ２
　図５（周辺Ｉ／Ｏ＋エリアＩ／Ｏ）　：３４１，０００μｍ２
　すなわち、図３の場合に比較して、図５の場合にはデッドスペースを１／２に抑制することが出来る。従って、周辺Ｉ／Ｏ及びエリアＩ／Ｏの組合せにより、エリアＩ／Ｏを多用しないようにすれば、デッドスペースを抑えることが可能となる。そして、デッドスペースを抑えることにより、単位面積当たりの信号数（Ｉ／Ｏバッファ数）を増加させることが出来る。
【００３９】
次に、本発明である半導体集積回路装置のレイアウト方法の実施の形態について図面を参照して説明する。
図８は、半導体集積回路装置のレイアウト方法を適用した設計装置を示す構成図である。設計装置７０は、設計装置本体７１と、表示装置７５と、入出力装置７６とを備える。
【００４０】
設計装置本体７１は、ワークステーションに例示される情報処理装置である。情報処理に必要な情報の入力と情報処理結果の出力を行う入出力装置７６、及び、入力や出力内容等を表示する表示装置７５に接続されている。設計装置本体７１は、プログラムとしてのレイアウト設計部７２及び選択部７３を備え、マクロテーブル７４を搭載している。
【００４１】
マクロテーブル７４は、マクロの情報（例示：マクロの名称、マクロの種類）と、それらのマクロ４に用いるエリアＩ／Ｏ３の情報（例示：Ｉ／Ｏバッファの数及びＩ／Ｏバッファの配置、関連する信号パッド・Ｉ／Ｏバッファ用電源パッド・Ｉ／Ｏバッファ用接地パッドの数及び配置、Ｉ／Ｏバッファと各パッドとを繋ぐ接続配線、エリアＩ／Ｏ３とマクロ４との最適配置）とを関連付けて記憶している。
【００４２】
選択部７３は、設計に使用するマクロ４の情報と、高速でデータ処理を行う必要のあるマクロ４を指定する情報（例示：マクロ名称、マクロの種類）としての処理情報と、マクロテーブル７４とに基づいて、設計に使用するマクロ４から高速データ処理を行うマクロ４を選択し、そのマクロ４とエリアＩ／Ｏ３との組であるエリアＩ／Ｏ付きマクロを生成する。
【００４３】
レイアウト設計部７２は、マクロテーブル７４に基づいて、生成されたエリアＩ／Ｏ付きマクロをチップ１上の所定の場所へ配置するレイアウト設計を行う。そして、レイアウト設計部７２は、更に、従来知られた自動設計プログラムを含み、上記のレイアウトに基づいて、チップの自動設計が可能である。
【００４４】
次に、本発明である半導体集積回路装置のレイアウト方法の実施の形態について説明する。
図９は、本発明である半導体集積回路装置のレイアウト方法の実施の形態を示すフロー図である。
（１）ステップＳ０１
設計者は、チップ１の設計に必要な複数のマクロ４（「設計マクロ」とも称する）の種類に関する情報と、そのマクロ４の内の高速でデータ処理を行う必要のあるマクロ４（「高速マクロ」とも称する）を指定する情報としての処理情報とを入出力装置７６から入力する。処理情報は、マクロ名称、マクロの種類等のマクロを特定する情報である。ただし、高速処理の速度（例示：５００ＭＨｚ）等の諸特性やチップ１上に配置する際の優先順位などを用いて、マクロを特定することも可能である。
選択部７３は、複数のマクロ４の種類と処理情報の入力に基づいて、高速に信号を入出力する必要があるマクロ４を選択する。そして、選択されたマクロ４について、マクロテーブル７４から、そのマクロ４に用いるＩ／Ｏバッファの数及び配置（エリアＩ／Ｏ）の情報を取り出す。そして、マクロ４と、そのマクロ４に関わるエリアＩ／Ｏ３とを一つの設計上の単位であるエリアＩ／Ｏ付きマクロ（高速）として用意する。高速の目安としては、５００ＭＨｚ以上である。
（２）ステップＳ０２
レイアウト設計部７２は、マクロテーブル７４に基づいて、エリアＩ／Ｏ付きマクロ（高速）を、そのマクロ４がゲート領域５内の高速信号処理に適する場所へ配置されるように配置する。そして、その結果を表示装置７５に表示する。
設計者は、表示された配置結果について、ゲート領域５内の任意の場所にエリアＩ／Ｏ付きマクロ（高速）を移動可能である。
（３）ステップＳ０３
レイアウト設計部７２は、他のマクロ４の内、他に速い速度（以下「中速」と称する）で信号を入出力する必要があるものがあれば、ステップＳ０１のように、マクロを選択し、エリアＩ／Ｏ付きマクロ（中速）として用意し、ステップＳ０２のように、残りの空いている領域の適する場所へ配置する。
（４）ステップＳ０４
設計者は、チップ１の設計に必要な他のマクロ４や基本セル等を入力する。
レイアウト設計部７２は、他のマクロ４又は基本セルを、残りの空いている領域へ配置する。この場合、従来知られた自動設計の方法を利用することが出来る。
【００４５】
本発明は、Ｉ／Ｏバッファサイズ、パッド配置構成（格子状、千鳥状）、パッドピッチ等が変更された場合でも、マクロテーブル７４のデータを一部変更するなどの対応により、上記実施例と同様に適用することが可能である。
【００４６】
上記レイアウト方法により、チップ１上の任意の場所へ、エリアＩ／Ｏ付きマクロを自動的に配置することが容易に実現できる。また、残りのマクロ４や基本セル（図示されず）を、空いているゲート領域５へ配置し、周辺Ｉ／Ｏ２とエリアＩ／Ｏ３とを併用することにより、デッドスペース拡大を抑制しながらＩ／Ｏバッファ数（信号数）を増加させることも実現可能となる。なお、マクロ４と組み合わせてエリアＩ／Ｏ付きマクロとするのは、周辺Ｉ／Ｏ２でも良い。
【００４７】
【発明の効果】
本発明により、設計の自由度を向上させることが可能となる。その理由は、周辺Ｉ／Ｏ領域、エリアＩ／Ｏ領域、配線領域等を予め設定せず、エリアＩ／Ｏ付きマクロを用いてマクロやエリアＩ／Ｏを任意の場所に配置するようにするからである。
また、本発明により、チップ上のデッドスペースの発生を抑さえ、基板面積の増加を抑制しながら、Ｉ／Ｏバッファ数（信号数）を増加させる（＝単位面積当たりの信号数を増加させる）ことが可能となる。その理由は、周辺Ｉ／Ｏ領域やエリアＩ／Ｏ領域を予め設定せず、その領域を必要に応じて任意に加減することが出来、予め設定した場合に発生し易いデッドスペースをより少なくするように設計できるからである。
【図面の簡単な説明】
【図１】本発明である半導体集積回路装置の実施の形態における構成を示す模式的な平面図である。
【図２】半導体集積回路装置の具体的な構造の例を示す図である。
【図３】半導体集積回路装置の具体的な構造の例を示す図である。
【図４】半導体集積回路装置の具体的な構造の例を示す図である。
【図５】半導体集積回路装置の具体的な構造の例を示す図である。
【図６】エリアＩ／Ｏの構成の一部の一例を示す図である。
【図７】周辺Ｉ／Ｏの構成の一部の一例を示す図である。
【図８】半導体集積回路装置の設計装置を示す構成図である。
【図９】本発明である半導体集積回路装置のレイアウト方法の実施の形態を示すフロー図である。
【図１０】従来の半導体集積回路装置の模式的な平面図である。
【図１１】従来の半導体集積回路装置の模式的な平面図である。
【図１２】従来の半導体集積回路装置の模式的な平面図である。
【符号の説明】
１　　チップ
２　　周辺Ｉ／Ｏ
３　　エリアＩ／Ｏ
４　　マクロ
５、１５、２５、３５、４５　　ゲート領域
１１、２１、３１、４１　　チップ
１２、３２、４２　　周辺Ｉ／Ｏ
１７、２７、２７、４７　　Ｉ／Ｏ電源
１８、２８、３８、４８　　Ｉ／ＯＧＮＤ
１９、２９、３９、４９　　信号端子
２３、３３、４３　　エリアＩ／Ｏ
５１、６１　　パッド
５２、６２　　Ｉ／Ｏバッファ
５３　　エリアＩ／Ｏ本体
５４　　ガードリングセル
５５（−１〜２）、６５　　配線
５６、６６　　デッドスペース
６３　　周辺Ｉ／Ｏ本体
７０　　設計装置
７１　　設計装置本体
７２　　レイアウト設計部
７３　　選択部
７４　　マクロテーブル
７５　　表示装置
７６　　入出力装置
１０１−１　　チップＡ
１０１−２　　チップＢ
１０３−１〜２、１１３　　バッファ領域
１０５−１〜２、１１５、１２５　　ゲート領域
１１１、１２１　　チップ
１１２　　信号線
１２６　　エリアＩ／Ｏ
【図１】
2004047516.tif 000003
【図２】
2004047516.tif 000004
【図３】
2004047516.tif 000005
【図４】
2004047516.tif 000006
【図５】
2004047516.tif 000007
【図６】
2004047516.tif 000008
【図７】
2004047516.tif 000009
【図８】
2004047516.tif 000010
【図９】
2004047516.tif 000011
【図１０】
2004047516.tif 000012
【図１１】
2004047516.tif 000013
【図１２】
2004047516.tif 000014