(57)【要約】【課題】半導体装置のセルの配置のルール違反を、確実にかつ迅速に検出可能な配置検証装置を提供する。【解決手段】セルの配置によって構成される半導体装置の回路図とセルを回路図に配置するときの違反に基づいて、セルに制約表示を付加し、違反を制約表示の配列に変換する。セルから制約表示が検索可能なセルライブラリーを設け、このセルライブラリーでセルの制約表示を検索し検索された制約表示を回路図に配置されたセルに張り付ける。最後に違反の制約表示の配列に一致する制約表示の配列を回路図から抽出する。【選択図】　　　図３
2004046731.tif 000002
【特許請求の範囲】
【請求項１】
セルの配置によって構成される半導体装置の回路図と、前記セルを前記回路図に配置するときの違反に基づいて、前記セルの配置の検証を行う配置検証装置において、
前記セルに制約表示を付加するセルへの付加部と、
前記違反を、前記制約表示の配列に変換する配置ルール生成部と、
前記セルから前記制約表示が検索可能なセルライブラリーと、
前記セルライブラリーで前記セルの前記制約表示を検索し、検索された前記制約表示を前記回路図に配置された前記セルに張り付ける制約表示張付部と、
前記配列に一致する前記制約表示の配列を前記回路図から抽出する違反抽出部とを有することを特徴とする配置検証装置。
【請求項２】
前記制約表示の配列の前記抽出の後に、前記回路図から前記制約表示を除去する制約表示の削除部をさらに有することを特徴とする請求項１に記載の配置検証装置。
【請求項３】
前記制約表示が前記セルの配線パターンが付加された階層に付加されることを特徴とする請求項１に記載の配置検証装置。
【請求項４】
前記セルの前記制約表示が、前記セルに接して配置された他のセルの上に設けられることを特徴とする請求項１に記載の配置検証装置。
【請求項５】
セルの配置によって構成される半導体装置の回路図と、前記セルを前記回路図に配置するときの違反に基づいて、前記セルの配置の検証を行う配置検証方法において、
前記セルに制約表示を付加することと、
前記違反を、前記制約表示の配列に変換することと、
前記セルから前記制約表示が検索可能なセルライブラリーを設けることと、
前記セルライブラリーで前記セルの前記制約表示を検索し、検索された前記制約表示を前記回路図に配置された前記セルに張り付けることと、
前記配列に一致する前記制約表示の配列を前記回路図から抽出することとを有することを特徴とする配置検証方法。
【請求項６】
前記抽出することの後に、前記回路図から前記制約表示を除去することをさらに実施することを特徴とする請求項５記載の配置検証方法。
【請求項７】
抽出された前記制約表示の配列を前記回路図で再配置することをさらに実施することを特徴とする請求項５に記載の配置検証方法。
【請求項８】
前記制約表示が前記セルの配線パターンが付加された階層に付加されることを特徴とする請求項５に記載の配置検証方法。
【請求項９】
前記セルの前記制約表示が、前記セルに接して配置された他のセルの上に設けられることを特徴とする請求項５に記載の配置検証方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体装置のチップ内に配置されるＩ／Ｏセルの配置のルールの違反を検出する装置に関する。
【０００２】
【従来の技術】
半導体装置の設計においては、回路図面またはコンピュータ支援設計（ＣＡＤ）装置の表示画面上の回路図で、Ｉ／Ｏセルの配置のルール違反の検査をしている。この検査においては、Ｉ／Ｏセルのサイズや回路のパターンからＩ／Ｏセルの種類を判断している。半導体装置は、微細化と多ピン化が進められている。このことにより、Ｉ／Ｏセルも微細化され数も多くなっている。現在では、その微細ゆえと数の多さゆえに人による検査では、配置のルール違反を見逃さないために、長い検査時間が必要であった。
【０００３】
【発明が解決しようとする課題】
本発明は、上記問題に鑑みて為されたものであり、その目的とするところは、半導体装置のセルの配置のルール違反を、確実にかつ迅速に検出可能な配置検証装置を提供することにある。
【０００４】
【課題を解決するための手段】
上記課題を解決するために、本発明の第１の特徴は、セルの配置によって構成される半導体装置の回路図と、セルを回路図に配置するときの違反に基づいて、セルの配置の検証を行う配置検証装置において、セルに制約表示を付加するセルへの付加部と、違反を制約表示の配列に変換する配置ルール生成部と、セルから制約表示が検索可能なセルライブラリーと、セルライブラリーでセルの制約表示を検索し検索された制約表示を回路図に配置されたセルに張り付ける制約表示張付部と、違反の制約表示の配列に一致する制約表示の配列を回路図から抽出する違反抽出部とを有する配置検証装置にある。
【０００５】
本発明の第２の特徴は、セルの配置によって構成される半導体装置の回路図とセルを回路図に配置するときの違反に基づいてセルの配置の検証を行う配置検証方法において、セルに制約表示を付加することと、違反を制約表示の配列に変換することと、セルから制約表示が検索可能なセルライブラリーを設けることと、セルライブラリーでセルの制約表示を検索し検索された制約表示を回路図に配置されたセルに張り付けることと、違反の制約表示の配列に一致する制約表示の配列を回路図から抽出することとを有する配置検証方法にある。
【０００６】
【発明の実施の形態】
以下図面を参照して、本発明の実施例を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は模式的なものであり、現実のものとは異なることに留意すべきである。また図面相互間においても互いの寸法の関係や比率の異なる部分が含まれるのはもちろんである。
【０００７】
（配置検証装置）
図１のように、配置検証装置２８は、半導体装置の仕様入力部１と、システム機能設計部２と、論理設計部３と、論理検証部４と、レイアウト設計部５と、バス１５を有している。半導体装置の仕様入力部１では、製造する半導体装置の仕様が入力される。システム機能設計部２では、入力した半導体装置の仕様に基づいて、半導体装置に求められる具体的な機能を設計する。論理設計部３では、具体化された機能から論理式を設計する。論理検証部４では、設計された論理式が正しいか否かの検証を行う。レイアウト設計部５では、検証された論理式に基づいて論理セルとＩ／Ｏセルの配置と配線を行う。バス１５は、設計部１乃至５の相互間の入出力を伝送する。これらのことにより、セルの配置によって構成される半導体装置の回路図が形成できる。
【０００８】
配置検証装置２８は、回路検証部７と、マスクパターン生成部９と、マスク各層の検証部１０と、表示・出力部１２と、チップテスト部１３を有している。回路検証部７と、マスク各層の検証部１０と、チップテスト部１３は、それぞれ、配置ルール違反抽出部８を有している。回路検証部７では、半導体装置の回路が論理式を満足するように動作するか否かの検証を行う。マスクパターン生成部９では、回路に基づいてマスクパターンを形成する。マスク各層の検証部１０は、マスクパターンの各層毎に異常なパターンが存在しないかの検証を行う。表示・出力部１２では、Ｉ／Ｏセルの配置に配置ルールの違反が発見された場合に、違反の状況をオペレーターに表示し、外部装置に違反の発生したことと、違反の発生している回路内の場所を出力する。チップテスト部１３では、マスクパターンを用いて半導体装置の工場２７で製造されたチップのテストを行う。
【０００９】
配置検証装置２８は、配置制約情報入力部１６と、制約表示パターンの配置ルール生成部１７と、制約表示パターンのセルへの付加部１８と、制約表示パターンの回路への張付部６と、制約表示パターンの削除部１９と、再度のレイアウト設計部２０を有している。
【００１０】
配置制約情報入力部１６では、Ｉ／Ｏセルのチップ上の配置制約、例えば、セルを回路図に配置するときの違反に関する配置制約情報を入力する。
【００１１】
制約表示パターンのセルへの付加部１８では、生成された配置ルールに沿って、生成された制約表示パターンを、セルライブラリー内に記録されたＩ／Ｏセルに付加する。
【００１２】
制約表示パターンの配置ルール生成部１７では、配置制約情報に基づいて、制約表示パターンを生成し、この制約表示パターンによるＩ／Ｏセルの配置の配置ルールを生成する。具体的には、セルの配置の違反を、制約表示パターンの配列に変換する。
【００１３】
制約表示パターンの回路への張付部６では、生成された制約表示パターンを有するセルライブラリーＤ３に沿って、生成された制約表示パターンを、回路に配置されたＩ／Ｏセルに張り付ける。具体的には、制約表示パターンを有するセルライブラリーでセルの制約表示パターンを検索し、検索された制約表示パターンを回路図に配置されたセルに張り付ける。
【００１４】
ここで、回路検証部７、マスク各層の検証部１０とチップテスト部１３の配置ルール違反抽出部８において、付加された制約表示パターンに基づいて、Ｉ／Ｏセルの配置に対する配置ルールの違反を抽出する。具体的には、違反の制約表示パターンの配列に一致する制約表示パターンの配列を回路図から抽出する。
【００１５】
制約表示パターンの削除部１９では、配置ルールの違反を抽出したの後に、回路図に配置されたＩ／Ｏセルに張り付けられた制約表示パターンを除去する。
【００１６】
再度のレイアウト設計部２０では、抽出された配置ルールの違反に関するＩ／Ｏセルの配置を、配置ルールに基づいて、回路上で再配置する。具体的には、抽出された制約表示パターンの配列を有するセルを再配置する。
【００１７】
配置検証装置２８は、配置制約情報記録部２１と、配置ルール記録部２２と、セルライブラリー記録部２３と、制約表示パターンを有するセルライブラリー記録部２４と、セルの配置情報記録部２５と、制約表示パターンを有するセルの配置情報記録部２６を有する。配置制約情報記録部２１では、配置制約情報を、他の部から読み出し可能な状態で記録する。配置ルール記録部２２では、配置ルールを、他の部から読み出し可能な状態で記録する。セルライブラリー記録部２３では、Ｉ／Ｏセルについて機能と大きさと入出力の位置等のデータを有するセルライブラリーを、他の部から読み出し可能な状態で記録する。制約表示パターンを有するセルライブラリー記録部２４では、セルライブラリー記録部２３のセルライブラリーに対して、配置ルールに基づいて、必要なＩ／Ｏセルに制約表示パターンを関係付けたセルライブラリーを、他の部から読み出し可能な状態で記録する。制約表示パターンを関係付けたセルライブラリーは、セルから制約表示パターンが検索可能である。セルの配置情報記録部２５では、回路上へのＩ／Ｏセルの配置の位置を、配置情報として、他の部から読み出し可能な状態で記録する。制約表示パターンを有するセルの配置情報記録部２６では、制約表示パターンを有する論理セルとＩ／Ｏセルの回路上への配置の位置を、配置情報として、他の部から読み出し可能な状態で記録する。
【００１８】
この配置検証装置２８によって、半導体装置のチップ内に並べて配置されるＩ／Ｏセルの配置制約情報を配置制約の種類ごとに特定の配置制約パターンとして予め用意できる。そして、Ｉ／Ｏセルに配置制約パターンを持たせることで、自動的に、迅速かつ確実に配置制約違反の検証が行える。
【００１９】
また、配置制約パターンを表示・出力部１２で表示、または、シートやファイルに出力させることでＩ／Ｏセルの配置制約情報の検証を容易に行える。そして、検証の結果を視覚的に確認することができるので、配置ルールの違反の修正も迅速に行うことができるようになる。
【００２０】
（配置検証方法）
次に、配置検証方法について説明する。配置検証方法は、図２のフローチャートに示す準備段階と、図３のフローチャートに示す本段階に分けて考えることもできる。まず、図２の準備段階について説明する。
【００２１】
まず、ステップＳ１において、図１の半導体装置の仕様入力部１で、半導体装置の仕様を入力する。
【００２２】
ステップＳ２において、システム機能設計部２で、入力した半導体装置の仕様に基づいて、半導体装置に求められる具体的な機能を設計する。
【００２３】
ステップＳ３において、論理設計部３で、セルライブラリー記録部２３に記録されたセルライブラリーＤ２が読み出される。そして、具体化された機能とセルライブラリーＤ２から論理式を設計する。
【００２４】
ステップＳ４において、論理検証部４で、設計された論理式が正しいか否かの検証を行う。
【００２５】
ステップＳ５において、レイアウト設計部５で、セルライブラリー記録部２３に記録されたセルライブラリーＤ２が読み出される。そして、検証された論理式とセルライブラリーＤ２に基づいてＩ／Ｏセルの配置と配線を行う。このことにより、Ｉ／Ｏセルが配置された回路が生成する。この回路のＩ／Ｏセルの配置の位置の情報等のセルの配置情報Ｄ５が、セルの配置情報記録部２５に出力される。ステップＳ５の次のステップは図３の本段階のステップＳ１１になる。なお、以下に説明するステップＳ６乃至Ｓ８は、ステップＳ１１が、開始する前に終了する。
【００２６】
ステップＳ６において、配置制約情報入力部１６で、Ｉ／Ｏセルのチップ上の配置制約、例えば、前記セルを前記回路図に配置するときの違反に関する配置制約情報Ｄ１を外部から入力する。配置制約情報Ｄ１を配置制約情報記録部２１に出力する。
【００２７】
ステップＳ７において、制約表示パターンの配置ルール生成部１７で、配置制約情報Ｄ１に基づいて、制約表示パターンを生成し、この制約表示パターンによるＩ／Ｏセルの配置の配置ルールＤ４を生成する。具体的には、セルの配置の違反を制約表示パターンの配列に変換する。生成した配置ルールＤ４は、配置ルール記録部２２に出力される。
【００２８】
ステップＳ８において、制約表示パターンのセルへの付加部１８で、生成された配置ルールＤ４に沿って、生成された制約表示パターンを、セルライブラリーＤ２内に記録されたＩ／Ｏセルに付加する。制約表示パターンを付加されたＩ／Ｏセルを有するセルライブラリーＤ３を、制約表示パターンを有するセルライブラリー記録部２４に出力する。セルライブラリーＤ３では、セルから制約表示パターンが検索可能である。
【００２９】
次に、配置検証方法の本段階について説明する。
【００３０】
まず、ステップＳ１１において、制約表示パターンの回路への張付部６で、セルの配置情報Ｄ５に沿って、生成された制約表示パターンを有するセルライブラリーＤ３が有する制約表示パターンを、回路に配置されたＩ／Ｏセルに張り付ける。具体的には、セルライブラリーＤ３でセルの制約表示パターンを検索し、検索された制約表示パターンを回路図に配置されたセルに張り付ける。制約表示パターンが張り付けられた回路を、制約表示パターンを有するセルの配置情報Ｄ６として、制約表示パターンを有するセルの配置情報記録部２６に出力する。
【００３１】
ステップＳ１２において、回路検証部７で、半導体装置の回路が論理式を満足するように動作するか否かの検証を行う。そして、ステップＳ１３において、配置ルール違反抽出部８で、付加された制約表示パターンに基づいて、Ｉ／Ｏセルの回路上の配置に対する配置ルールの違反を抽出する。具体的には、違反の制約表示パターンの配列に一致する制約表示の配列を回路図から抽出する。
【００３２】
ステップＳ２３において、配置ルール違反抽出部８で、抽出された違反の有無を判定する。違反がある場合は、ステップＳ２２に進む。違反がない場合は、ステップＳ２４に進む。
【００３３】
ステップＳ２２において、表示・出力部１２で、違反の状況をオペレーターに表示し、外部装置に違反の発生したことと、違反の発生している回路内の場所及びセルの識別表示を出力する。
【００３４】
ステップＳ２１において、再度のレイアウト設計部２０で、抽出された配置ルールの違反に関するＩ／Ｏセルの配置を、配置ルールに基づいて、回路上で再配置する。再配置された回路は、セルの配置情報Ｄ５として、セルの配置情報記録部２５に出力される。
【００３５】
ステップＳ２４において、制約表示パターンの削除部１９で、回路に配置されたＩ／Ｏセルに張り付けられた制約表示パターンを除去する。
【００３６】
ステップＳ１４において、マスクパターン生成部９で、回路に基づいてマスクパターンを形成する。
【００３７】
ステップＳ１５において、マスク各層の検証部１０で、マスクパターンの各層毎に異常なパターンが存在しないかの検証を行う。
【００３８】
ステップＳ１７において、半導体装置の工場２７で、マスクパターンを用いて、チップの製造を行う。
【００３９】
ステップＳ１８において、チップテスト部１３で、製造されたチップのテストを行う。テストに合格したチップは、ステップＳ２０に進む。
【００４０】
ステップＳ２０をもって、半導体装置が完成する。
【００４１】
なお、ステップＳ２４を省略して、ステップＳ２３において、抽出された違反の有無の判定で、違反がない場合は、ステップＳ１４に進んでもよい。ステップＳ２４を省略したフローでは、チップに動作不良が発生した場合の検証をする場合に、チップ動作に影響しない配置制約パターンを残しておくことで目視などによる解析が容易に行える。
【００４２】
この配置検証方法によって、半導体装置のチップ内に並べて配置されるＩ／Ｏセルの配置制約情報Ｄ１を配置制約の種類ごとに特定の配置制約パターンとして予め用意できる。そして、Ｉ／Ｏセルに配置制約パターンを持たせることで、自動的に、迅速かつ確実に配置制約違反の検証が行える。
【００４３】
また、配置制約パターンを表示・出力部１２で表示、または、シートやファイルに出力させることでＩ／Ｏセルの配置制約情報Ｄ１の検証を容易に行える。そして、検証の結果を視覚的に確認することができるので、配置ルールＤ４の違反の修正も迅速に行うことができる。
【００４４】
（実施例１）
実施例１では、配置制約情報Ｄ１が、特定の２つのＩ／Ｏセルを並べて配置しないことである場合を説明する。
【００４５】
まず、図２のステップＳ１で、半導体装置の仕様を入力する。ステップＳ２で、入力した半導体装置の仕様に基づいて、半導体装置に求められる具体的な機能を設計する。ステップＳ３で、具体化された機能とセルライブラリーＤ２から論理式を設計する。ステップＳ４で、設計された論理式が正しいか否かの検証を行う。ステップＳ５で、検証された論理式とセルライブラリーＤ２に基づいてＩ／Ｏセルの配置と配線を行う。このことにより、図４に示すような、Ｉ／Ｏセルが配置された半導体装置４９として表された回路が生成する。この回路のＩ／Ｏセルの配置の位置の情報等のセルの配置情報Ｄ５が、セルの配置情報記録部２５に記録される。
【００４６】
半導体装置４９の回路は、内部に配置された論理セル配置領域５３と、論理セル配置領域５３の外周部に配置されたＩ／Ｏセル配置領域５２と、Ｉ／Ｏセル配置領域５２の外周部に配置されたパッド配置領域５１を有している。Ｉ／Ｏセル配置領域５２には、Ｉ／Ｏセル３２が配置可能なＩ／Ｏセルスロットが設けられている。このＩ／Ｏセルスロットに一致するように複数の第１乃至第５のＩ／Ｏセル３４乃至３８Ｉ／Ｏセル３２が列をなして配列される。パッド配置領域５１には、パッド３１が列をなして配列される。
【００４７】
図２のステップＳ６において、配置制約情報Ｄ１が入力される。配置制約情報Ｄ１として、まず、Ｉ／Ｏセル３０と３４乃至３８が、低電圧駆動セル群５５と、カットセル群５６と、高電圧駆動セル群５７に分類される。低電圧駆動セル群５５は、第１Ｉ／Ｏセル３４と第２Ｉ／Ｏセル３５を有する。カットセル群５６は、第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０を有する。高電圧駆動セル群５７は、第４Ｉ／Ｏセル３７と第５Ｉ／Ｏセル３８を有する。
【００４８】
第１Ｉ／Ｏセル３４と第２Ｉ／Ｏセル３５は、第１の低電圧電源ライン６１と６７と第２の低電圧電源ライン６２と６８を有する。第１Ｉ／Ｏセル３４と第２Ｉ／Ｏセル３５は、第１の低電圧電源ライン６１と６７が接続するように、第２の低電圧電源ライン６２と６８が接続するように、配置することができる。
【００４９】
第４Ｉ／Ｏセル３７と第５Ｉ／Ｏセル３８は、第１の高電圧電源ライン７７と７１と第２の高電圧電源ライン７８と７２を有する。第４Ｉ／Ｏセル３７と第５Ｉ／Ｏセル３８は、第１の高電圧電源ライン７７と７１が接続するように、第２の高電圧電源ライン７８と７２が接続するように、配置することができる。一方、第４Ｉ／Ｏセル３７と第５Ｉ／Ｏセル３８は、第１Ｉ／Ｏセル３４と第２Ｉ／Ｏセル３５と接して配置することができない。これは、第１の低電圧電源ライン６１、６７と、第１の高電圧電源ライン７１、７７が短絡してしまうからである。同様に、第２の低電圧電源ライン６２、６８と、第２の高電圧電源ライン７２、７８が短絡してしまうからである。
【００５０】
第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０は、第１の低電圧電源ライン６５と６３と第２の低電圧電源ライン６６と６４を有し、第１の高電圧電源ライン７５と７３と第２の高電圧電源ライン７６と７４を有する。第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０は、互いに接するように配置されることはない。第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０は、第１Ｉ／Ｏセル３４と第２Ｉ／Ｏセル３５に接するように配置することができる。この時、第１の低電圧電源ライン６５と６３は、第１の低電圧電源ライン６１と６７に接続する。第２の低電圧電源ライン６６と６４は、第１の低電圧電源ライン６２と６８に接続する。第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０は、第４Ｉ／Ｏセル３７と第５Ｉ／Ｏセル３８に接するように配置することができる。この時、第１の高電圧電源ライン７５と７３は、第１の高電圧電源ライン７１と７７に接続する。第２の高電圧電源ライン７６と７４は、第２の高電圧電源ライン７２と７８に接続する。
【００５１】
次に、ステップＳ７の制約表示パターンを生成すると共に、制約表示パターンによる配置ルールＤ４を生成する。まず、図６のように制約表示パターンを生成する。
【００５２】
第１Ｉ／Ｏセル３４には、一つの他のセルと接する辺の近傍に制限表示パターン８１を配置する。他のセルと接する他の辺の近傍に制限表示パターン８２を配置する。制限表示パターン８１と８２は同型の○（丸）としたが、同一であるとの識別が容易にできればこれに限らない。
【００５３】
第２Ｉ／Ｏセル３５には、一つの他のセルと接する辺の近傍に制限表示パターン８３を配置する。他のセルと接する他の辺の近傍に制限表示パターン８４を配置する。制限表示パターン８３と８４は、制限表示パターン８１と同型の○としたが、同一であるとの識別が容易にできればこれに限らない。
【００５４】
第３Ｉ／Ｏセル３６には、低電圧駆動セル群５５に属するセル３４、３５と接する辺の近傍に制限表示パターン８５を配置する。高電圧駆動セル群５７に属するセル３７と３８と接する辺の近傍に制限表示パターン８６を配置する。制限表示パターン８５は、制限表示パターン８１と同型の○としたが、同一であるとの識別が容易にできればこれに限らない。一方、制限表示パターン８６は、制限表示パターン８１と異型の◇（菱形）としたが、異型であるとの識別が容易にできればこれに限らない。
【００５５】
第６Ｉ／Ｏセル３０には、低電圧駆動セル群５５に属するセル３４、３５と接する辺の近傍に制限表示パターン８８を配置する。高電圧駆動セル群５７に属するセル３７と３８と接する辺の近傍に制限表示パターン８７を配置する。制限表示パターン８８は、制限表示パターン８１と同型の○としたが、同一であるとの識別が容易にできればこれに限らない。制限表示パターン８７は、制限表示パターン８６と同型の◇としたが、同一であるとの識別が容易にできればこれに限らない。
【００５６】
第４Ｉ／Ｏセル３７には、一つの他のセルと接する辺の近傍に制限表示パターン８１を配置する。他のセルと接する他の辺の近傍に制限表示パターン８２を配置する。制限表示パターン８９と９０は、制限表示パターン８６と同型の◇としたが、同一であるとの識別が容易にできればこれに限らない。
【００５７】
第５Ｉ／Ｏセル３８には、一つの他のセルと接する辺の近傍に制限表示パターン９１を配置する。他のセルと接する他の辺の近傍に制限表示パターン９２を配置する。制限表示パターン９１と９２は、制限表示パターン８６と同型の◇としたが、同一であるとの識別が容易にできればこれに限らない。
【００５８】
次に、図７に示すように、ステップＳ７において、制約表示パターンによる配置ルールＤ４を生成する。配置ルールＤ４は、制約表示パターンによる基本的な配置パターンによって表され、正常な配置パターンと、違反となる配置パターンと、違反を解消するために再配置すべき配置パターンを有する。
【００５９】
正常な配置パターンの基本的な配置パターンは、４種類である。まず、（正常１）に示すように、低電圧駆動セル群５５に属する２つのＩ／Ｏセル、例えば、２つの第１Ｉ／Ｏセル３４を接続する場合であり、４つの制限表示パターン８１、８２、８１、８２が近接して配置されている。正常な配置パターン（正常２）は、高電圧駆動セル群５７に属する２つのＩ／Ｏセル、例えば、２つの第４Ｉ／Ｏセル３７を接続する場合であり、４つの制限表示パターン８９、９０、８９、９０が近接して配置されている。正常な配置パターン（正常３）は、低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４と、カットセル群５６に属する第３Ｉ／Ｏセル３６を接続し、この第３Ｉ／Ｏセル３６に高電圧駆動セル群５７に属するＩ／Ｏセル、例えば、第４Ｉ／Ｏセル３７を接続する場合である。この場合に、３つの制限表示パターン８１、８２、８５が近接して配置されている。また、３つの制限表示パターン８６、８９、９０が近接して配置されている。正常な配置パターン（正常４）は、高電圧駆動セル群５７に属するＩ／Ｏセル、例えば、第４Ｉ／Ｏセル３７と、カットセル群５６に属する第６Ｉ／Ｏセル３０を接続し、この第６Ｉ／Ｏセル３０に低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４を接続する場合である。この場合に、３つの制限表示パターン８９、９０、８７が近接して配置されている。また、３つの制限表示パターン８８、８１、８２が近接して配置されている。
【００６０】
違反となる配置パターンの基本的な配置パターンは、４種類である。また、この４種類それぞれに対応して、違反を解消するために再配置すべき配置パターンが、配置ルールＤ４として設けられている。
【００６１】
まず、（違反１）に示すように、低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４と、高電圧駆動セル群５７に属するＩ／Ｏセル、例えば、第４Ｉ／Ｏセル３７を接続する場合であり、４つの制限表示パターン８１、８２、８９、９０が近接して配置されている。（違反１）に対する再配置は、（再配置１）に示すように、Ｉ／Ｏセル３４と３７の間に、第３Ｉ／Ｏセル３６を接続する。この（再配置１）により、（正常３）の配置パターンを得ることができる。
【００６２】
違反となる配置パターン（違反２）は、高電圧駆動セル群５７に属するＩ／Ｏセル、例えば、第４Ｉ／Ｏセル３７と、低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４を接続する場合であり、４つの制限表示パターン８９、９０、８１、８２が近接して配置されている。（違反２）に対する再配置は、（再配置２）に示すように、Ｉ／Ｏセル３７と３４の間に、第６Ｉ／Ｏセル３０を接続する。この（再配置２）により、（正常４）の配置パターンを得ることができる。
【００６３】
違反となる配置パターン（違反３）は、低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４と、第３Ｉ／Ｏセル３６を接続し、この第３Ｉ／Ｏセル３６と第６Ｉ／Ｏセル３０を接続し、この第６Ｉ／Ｏセル３０と低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４を接続する場合であり、８つの制限表示パターン８１、８２、８５、８６、８７、８８、８１、８２が近接して配置されている。（違反３）に対する再配置は、（再配置３）に示すように、Ｉ／Ｏセル３６と３０を省いて、Ｉ／Ｏセル３４と３４を接続する。この（再配置３）により、（正常１）の配置パターンを得ることができる。
【００６４】
違反となる配置パターン（違反４）は、低電圧駆動セル群５５に属するＩ／Ｏセル、例えば、第１Ｉ／Ｏセル３４と、第３Ｉ／Ｏセル３６を接続し、この第３Ｉ／Ｏセル３６と第３Ｉ／Ｏセル３６を接続し、この第３Ｉ／Ｏセル３６と高電圧駆動セル群５７に属するＩ／Ｏセル、例えば、第４Ｉ／Ｏセル３７を接続する場合であり、８つの制限表示パターン８１、８２、８５、８６、８５、８６、８９、９０が近接して配置されている。（違反４）に対する再配置は、（再配置４）に示すように、どちらか１つのＩ／Ｏセル３６を省く。この（再配置４）により、（正常３）の配置パターンを得ることができる。
【００６５】
次に、図２のステップＳ８において、図６に示すように、制約表示パターン８１乃至９２を、配置ルールに従って、第１乃至第６Ｉ／Ｏセル３０と３４乃至３８に付加する。具体的には、制約表示パターンを有するセルライブラリーＤ３において、第１Ｉ／Ｏセル３４と制約表示パターン８１と８２を関係付ける。このことにより、第１Ｉ／Ｏセル３４を選択することにより、制約表示パターン８１と８２に関するデータを読み出すことが可能になる。この制約表示パターン８１と８２に関するデータとは、制約表示パターン８１と８２の形状、第１Ｉ／Ｏセル３４における表示位置、第１Ｉ／Ｏセル３４が有する階層構造のなかの制約表示パターン８１と８２が配置される階層等のことである。また、階層とは、いわゆる、マスクレイヤーと考えてもよい。同様に、制約表示パターンを有するセルライブラリーＤ３において、第２Ｉ／Ｏセル３５と制約表示パターン８３と８４を関係付ける。第３Ｉ／Ｏセル３６と制約表示パターン８５と８６を関係付ける。第６Ｉ／Ｏセル３０と制約表示パターン８７と８８を関係付ける。第４Ｉ／Ｏセル３７と制約表示パターン８９と９０を関係付ける。第５Ｉ／Ｏセル３８と制約表示パターン９１と９２を関係付ける。
【００６６】
次に、図３のステップＳ１１において、図８（ａ）（ｂ）に示すように、セルの配置情報Ｄ５であるＩ／Ｏセル３４、３５、３７、３８の半導体装置の回路上の配列に対して、制約表示パターン８１乃至８４と８９乃至９２を張り付ける。
【００６７】
次に、図３のステップＳ１３において、図８（ｂ）に示すような制約表示パターンを有するセルの配置情報Ｄ６を使用して、図７の（違反１）乃至（違反４）の制約表示パターンの配置パターンと比較する。図８（ｃ）に示す制約表示パターン８３、８４、８９、９０が、（違反１）の配置パターンと一致することにより、配置ルールの違反を抽出することができる。
【００６８】
次に、図３のステップＳ２３において、配置ルールの違反の有無を判定する。違反が抽出されているので、ステップＳ２２に進む。ステップＳ２２において、図８（ｃ）に示すような、違反の表示を行う。第１と第２の制約表示パターンは、表示・出力部で表示される回路の上にも表示され目視での検証も可能である。
【００６９】
次に、図３のステップＳ２１において、図９（ａ）に示すように、抽出された違反（違反１）に対する再配置として（再配置１）を行う。再配置されたＩ／Ｏセルの配列は、セルの配置情報Ｄ５として記録される。そして、再び、ステップＳ１１において、図９（ｂ）に示すように、制約表示パターンの張り付けが行われる。
【００７０】
次に、ステップＳ１３において、配置ルールの違反の抽出が行われるが、今回は違反は抽出されない。ステップＳ２３において、違反はないと判定され、ステップＳ２４に進む。ステップＳ２４では、図９（ｂ）に示すような制約表示パターン８１乃至８６と８９乃至９２が、図９（ａ）に示すように、削除される。
【００７１】
次に、ステップＳ１４において、再配置されたセルの配置情報Ｄ５に基づいて、マスクパターンを生成する。ステップＳ１５において、マスク各層の検証を行う。ステップＳ１７において、チップの製造を行う。ステップＳ１８において、チップのテストを行う。以上により、半導体装置が完成する。
【００７２】
（実施例１の変形例）
実施例１の変形例では、実施例１に比較して、制約表示パターンの形状とＩ／Ｏセルにおける配置位置とパターンが配置される階層を変更している。
【００７３】
例えば、実施例１の配置ルールの（正常１）は、図１０（ａ）に示すように表される。この（正常１）は、実施例１の変形例では、制約表示パターンを表示するための専用の階層を有している。この場合、実配線には影響しない専用の階層を使用することで、図１の制約表示パターンの削除部１９と図３のステップＳ２４を省略できる。これは、ステップＳ１４のマスクパターンの生成において、制約表示パターンを表示するための専用の階層に基づいてマスクレイヤーとマスクパターンを生成しないからである。また、たとえ、この専用の階層に基づいたマスクパターンが生成されても、ステップＳ１７のチップの製造において、このマスクパターンが使用されることはないからである。
【００７４】
この制約表示パターンを表示するための専用の階層を利用することで、図１０（ｂ）に示すように、第１のＩ／Ｏセル３４の三角形の第３の制約表示パターン９４を、第２のＩ／Ｏセル３５の上に配置することができる。第１のＩ／Ｏセル３４の第３の制約表示パターン９４は、第２のＩ／Ｏセル３５の第３の制約表示パターン９５と合同か小さい相似形とする。第１のＩ／Ｏセル３４と第２のＩ／Ｏセル３５を接続した場合に、第３の制約表示パターン９４が、第３の制約表示パターン９５の上に重なるように、あるいは、合同、相似の関係において対応する各辺が平行で重心が一致するように配置することができる。このような、第３の制約表示パターン９４と９５の配置により、容易にＩ／Ｏセル３４と３５の配置が正常であることが認識できる。Ｉ／Ｏセル３４と３５の他のＩ／Ｏセルと接続可能な辺にも、第３の制約表示パターン９３と９６が設けられている。第３の制約表示パターン９３と９６は、第３の制約表示パターン９４と９５と同様の関係を有している。
【００７５】
実施例１の配置ルールの（正常２）は、図１０（ｃ）に示すように表される。この（正常２）は、実施例１の変形例では、図１０（ｄ）に示すように、第４のＩ／Ｏセル３７の四角形の第４の制約表示パターン９８を、第５のＩ／Ｏセル３８の上に配置することができる。第４のＩ／Ｏセル３７の第４の制約表示パターン９８は、第５のＩ／Ｏセル３８の第４の制約表示パターン９９と合同か小さい相似形とする。第４のＩ／Ｏセル３７と第５のＩ／Ｏセル３８を接続した場合に、第４の制約表示パターン９８が、第４の制約表示パターン９９の上に重なるように、あるいは、合同、相似の関係において対応する各辺が平行で重心が一致するように配置することができる。このような、第４の制約表示パターン９８と９９の配置により、容易にＩ／Ｏセル３７と３８の配置が正常であることが認識できる。Ｉ／Ｏセル３７と３８の他のＩ／Ｏセルと接続可能な辺にも、第４の制約表示パターン９７と１００が設けられている。第４の制約表示パターン９７と１００は、第４の制約表示パターン９８と９９と同様の関係を有している。
【００７６】
実施例１の配置ルールの（違反１）は、図１０（ｅ）に示すように表される。この（違反１）は、実施例１の変形例では、図１０（ｆ）に示すように、第４のＩ／Ｏセル３７の第４の制約表示パターン９７の上に、第１のＩ／Ｏセル３４の第３の制約表示パターン９４が配置される。第４の制約表示パターン９７と第３の制約表示パターン９４が合同でも相似形でもないことが、一部重ねることで、容易に認識することができる。このことにより、容易にＩ／Ｏセル３４と３７の配置が違反であることが認識できる。Ｉ／Ｏセル３４と３７の他のＩ／Ｏセルと接続可能な辺にも、制約表示パターン９３と９８が設けられている。制約表示パターン９３と９８は、制約表示パターン９４と９７と同様の関係を有している。
【００７７】
実施例１の配置ルールの（正常３）は、図１０（ｇ）に示すように表される。この（正常３）は、実施例１の変形例では、図１０（ｈ）に示すように、第１のＩ／Ｏセル３４の第３の制約表示パターン９４を、第３のＩ／Ｏセル３６の上に配置することができる。第１のＩ／Ｏセル３４の第３の制約表示パターン９４は、第３のＩ／Ｏセル３６の第３の制約表示パターン１０１と合同か小さい相似形とする。第１のＩ／Ｏセル３４と第３のＩ／Ｏセル３６を接続した場合に、第３の制約表示パターン９４が、第３の制約表示パターン１０１の上に重なるように、あるいは、合同、相似の関係において対応する各辺が平行で重心が一致するように配置することができる。このような、第３の制約表示パターン９４と１０１の配置により、容易にＩ／Ｏセル３４と３６の配置が正常であることが認識できる。
【００７８】
第３のＩ／Ｏセル３６の第４の制約表示パターン１０２を、第４のＩ／Ｏセル３７の上に配置することができる。第４の制約表示パターン１０２は、第４のＩ／Ｏセル３７の第４の制約表示パターン９７と合同か小さい相似形とする。第３のＩ／Ｏセル３６と第４のＩ／Ｏセル３７を接続した場合に、第４の制約表示パターン１０２が、第４の制約表示パターン９７の上に重なるように、あるいは、合同、相似の関係において対応する各辺が平行で重心が一致するように配置することができる。このような、第４の制約表示パターン１０２と９７の配置により、容易にＩ／Ｏセル３６と３７の配置が正常であることが認識できる。
【００７９】
なお、実施例１とその変形例では、制約表示パターンの形状の異同を認識することを基本としたが、制約表示を色の異同で表現してもよい。
【００８０】
（実施例２）
実施例２では、配置制約情報Ｄ１が、Ｉ／Ｏセル配置領域５２のコーナーに特定のＩ／Ｏセルを並べて配置しないことである場合を説明する。
【００８１】
まず、実施例１と同様に、図２のステップＳ１乃至Ｓ５を実行する。図４に示すような、Ｉ／Ｏセルが配置された半導体装置４９として表された回路が生成する。半導体装置４９の回路は、Ｉ／Ｏセル配置領域５２を有している。Ｉ／Ｏセル配置領域５２のコーナーには、複数の第７乃至第１１のＩ／Ｏセル３９乃至４３Ｉ／Ｏセル３２が配列される。
【００８２】
図２のステップＳ６において、配置制約情報Ｄ１が入力される。配置制約情報Ｄ１として、図１１（ａ）に示すように、第９Ｉ／Ｏセル４１と１１１は、Ｉ／Ｏセル配置領域５２のコーナーに配置することができない。
【００８３】
次に、ステップＳ７の制約表示パターンを生成すると共に、制約表示パターンによる配置ルールＤ４を生成する。まず、図１１（ｂ）に示すような制約表示パターン１１４を生成する。第９Ｉ／Ｏセル４１には、図１１（ｂ）に示すように、配線パターン１１２に接するかあるいは近傍に、第５の制約表示パターン１１４が配置される。第５の制約表示パターン１１４は、配線パターン１１２と同じ階層に設けられる。第５の制約表示パターン１１４は、四角形としたが同じ階層の配線パターンと異型であるとの識別が容易にできればこれに限らない。次に、第５の制約表示パターン１１４と１１５による配置ルールＤ４を生成する。配置ルールＤ４は、制約表示パターン１１４と１１５の基本的な配置位置によって表され、正常な配置位置と、違反となる配置位置と、違反を解消するために再配置すべき配置位置を有する。
【００８４】
正常な配置位置は、図１２（ａ）の（正常）に示すように、第９Ｉ／Ｏセル４１と１１１が、第７Ｉ／Ｏセル３９と第１１Ｉ／Ｏセル４３の配置されている位置に配置されていないことである。そして、制約表示パターン１１４と１１５が、第７Ｉ／Ｏセル３９と第１１Ｉ／Ｏセル４３の配置されている位置に配置されていないことである。
【００８５】
違反となる配置位置は、図１２（ｂ）の（違反）に示すような配置位置に、第９Ｉ／Ｏセル４１と１１１が配置されていることである。そして、制約表示パターン１１４と１１５が、図１２（ｂ）の（違反）に示すような配置位置に配置されていることである。（違反）に対する再配置は、図１２（ｃ）の（再配置）に示すように、第９Ｉ／Ｏセル４１を含んだセル３９乃至４１のセル列を右方向に２セル分だけシフトさせる。第９Ｉ／Ｏセル１１１を含んだセル１１１と４３のセル列を上方向に１セル分だけシフトさせる。なお、（違反）に対する再配置は、図１２（ｂ）から図１２（ａ）へ第９Ｉ／Ｏセル４１と第７Ｉ／Ｏセル３９を入れ替えてもよい。また、第９Ｉ／Ｏセル１１１と第１１Ｉ／Ｏセル４３を入れ替えてもよい。この（再配置）により、（正常）の配置パターンを得ることができる。なお（再配置）においては、入れ替えるＩ／Ｏセルの間に存在するセルの数がゼロと１つの場合であったが、セルの数はこれらに限らず任意である。
【００８６】
次に、図２のステップＳ８において、図１１（ｂ）に示すように、第５の制約表示パターン１１４を、配置ルールに従って、第９Ｉ／Ｏセル４１に付加する。具体的には、制約表示パターンを有するセルライブラリーＤ３において、第９Ｉ／Ｏセル４１と第５の制約表示パターン１１４を関係付ける。
【００８７】
次に、図３のステップＳ１１において、図１３（ａ）（ｂ）に示すように、セルの配置情報Ｄ５である半導体装置の回路上のＩ／Ｏセルの配列の第９Ｉ／Ｏセル４１に対して、第５の制約表示パターン１１４を張り付ける。
【００８８】
次に、図３のステップＳ１３において、図１３（ｂ）に示すような第５の制約表示パターン１１４を有するセルの配置情報Ｄ６と、図１２の（違反）の第５の制約表示パターン１１４と１１５の配置位置を比較する。図１３（ｃ）に示す第５の制約表示パターン１１４が、（違反）の配置位置と一致することにより、配置ルールの違反を抽出することができる。第５の制約表示パターン１１４の配置位置の確認は、認識範囲１１６のみで行えば十分である。
【００８９】
次に、図３のステップＳ２３において、配置ルールの違反の有無を判定する。違反が抽出されているので、ステップＳ２２に進む。ステップＳ２２において、違反の表示を行う。
【００９０】
次に、図３のステップＳ２１において、図１４（ａ）に示すように、抽出された（違反）に対する（再配置）を行う。再配置されたＩ／Ｏセルの配列は、セルの配置情報Ｄ５として記録される。そして、再び、ステップＳ１１において、制約表示パターンの張り付けが行われる。増加するセルは存在しないので、新たに制約表示パターンが張り付けられることはない。
【００９１】
次に、ステップＳ１３において、配置ルールの違反の抽出が行われるが、図１４（ｂ）に示すように、今回は違反は抽出されない。ステップＳ２３において、違反はないと判定され、ステップＳ２４に進む。ステップＳ２４では、図９（ｂ）に示すような第５の制約表示パターン１１４が、削除される。
【００９２】
次に、ステップＳ１４において、再配置されたセルの配置情報Ｄ５に基づいて、マスクパターンを生成する。ステップＳ１５において、マスク各層の検証を行う。ステップＳ１７において、チップの製造を行う。ステップＳ１８において、チップのテストを行う。以上により、半導体装置が完成する。
【００９３】
【発明の効果】
以上述べたように、本発明によれば、半導体装置のセルの配置のルール違反を、確実にかつ迅速に検出可能な配置検証装置を提供することができる。
【図面の簡単な説明】
【図１】実施の形態に係る配置検証装置の構成図である。
【図２】実施の形態に係る配置検証方法のフローチャート（その１）である。
【図３】実施の形態に係る配置検証方法のフローチャート（その２）である。
【図４】実施の形態に係る半導体装置の回路図である。
【図５】実施例１に係る配置検証方法の配置ルールを説明するための図である。
【図６】実施例１に係る配置検証方法において付加された制約表示パターンを有するＩ／Ｏセルの上面図である。
【図７】実施例１に係る配置検証方法における配置ルールに対して正常である配置と、検出される違反である配置と、この違反である配置の再配置を説明するための図である。
【図８】実施例１に係る配置検証方法を説明するための図（その１）である。
【図９】実施例１に係る配置検証方法を説明するための図（その２）である。
【図１０】実施例１の変形例の制約表示パターンを、実施例１の制約表示パターンと比較して説明するための図である。
【図１１】実施例２に係る配置検証方法の配置ルールと制約表示パターンを有するＩ／Ｏセルを説明するための図である。
【図１２】実施例２に係る配置検証方法における配置ルールに対して正常である配置と、検出される違反である配置と、この違反である配置の再配置を説明するための図である。
【図１３】実施例２に係る配置検証方法を説明するための図（その１）である。
【図１４】実施例２に係る配置検証方法を説明するための図（その２）である。
【符号の説明】
１　半導体装置の仕様入力部
２　システム機能設計部
３　論理設計部
４　論理検証部
５　レイアウト設計部
７　回路の検証部
８　配置ルール違反抽出部
９　マスクパターン生成部
１０　マスク各層の検証部
１２　表示・出力部
１３　チップテスト部
１５　バス
１６　配置制約情報入力部
１７　制約表示パターンの配置ルール生成部
１８　制約表示パターン付加部
１９　制約表示パターンの削除部
２０　再度のレイアウト設計部
２１　配置制約情報記録部
２２　配置ルール記録部
２３　セルライブラリー記録部
２４　制約表示パターンを有するセルライブラリー記録部
２５　セルの配置情報記録部
２６　制約表示パターンを有するセルの配置情報記録部
２７　半導体装置の工場（チップの製造部）
２８　配置検証装置
３１　電極パッド
３２、３４乃至４３　Ｉ／Ｏセル
４９　半導体装置（チップ）
５１　パッド配置領域
５２　Ｉ／Ｏセル配置領域
５３　論理セル配置領域
５５　低電圧駆動セル群
５６　カットセル群
５７　高電圧駆動セル群
６１乃至６８　低電圧電源ライン
７１乃至７８　高電圧電源ライン
８１乃至８５、８８　第１の制約表示パターン
８６、８７、８９乃至９２　第２の制約表示パターン
９３乃至９６、１０１　第３の制約表示パターン
９７乃至１００、１０２　第４の制約表示パターン
１１１　第９Ｉ／Ｏセル
１１２、１１３　配線パターン
１１４、１１５　第５の制約表示パターン
１１６　認識範囲
【図１】
2004046731.tif 000003
【図２】
2004046731.tif 000004
【図３】
2004046731.tif 000005
【図４】
2004046731.tif 000006
【図５】
2004046731.tif 000007
【図６】
2004046731.tif 000008
【図７】
2004046731.tif 000009
【図８】
2004046731.tif 000010
【図９】
2004046731.tif 000011
【図１０】
2004046731.tif 000012
【図１１】
2004046731.tif 000013
【図１２】
2004046731.tif 000014
【図１３】
2004046731.tif 000015
【図１４】
2004046731.tif 000016