(57)【要約】【課題】  この発明は、最終的なマスクパターンがどの様なマスクパターンを用いているのか検証可能にし、マスクパターン不良の発生等を防止することを目的とする。【解決手段】  マスクパターンを検証する動作を制御する処理手段と、前記処理手段に接続されチェックされるマスクパターンのライブラリに用意された機能セルとコンパイルドセルのパラメータがそれぞれ記述されているセル種別記述ファイルを格納する記憶手段と、チェック結果を表示する表示手段と、を備え、前記処理手段は、前記記憶手段に格納されたセル種別記述ファイルを読み出して機能セルかコンパイルドセルかを判別する手段と、前記判別手段でコンパイルドセルと判別されたセルに対してパラメータに基づき最新のパターンを再合成する手段と、再合成されたパターンとマスクパターンとを比較する手段と、備える。【選択図】  図３
2005353097.tif 000002
【特許請求の範囲】
【請求項１】
マスクパターンを検証する動作を制御する処理手段と、この処理手段に接続され入力されたチェックコマンドを前記処理手段に与える入力手段と、前記処理手段に接続されチェックされるマスクパターンのライブラリに用意された機能セルとコンパイルドセルのパラメータがそれぞれ記述されているセル種別記述ファイルを格納する記憶手段と、チェック結果を表示する表示手段と、を備え、前記処理手段は、前記記憶手段に格納されたセル種別記述ファイルを読み出して機能セルかコンパイルドセルかを判別する手段と、前記判別手段でコンパイルドセルと判別されたセルに対してパラメータに基づき最新のパターンを再合成する手段と、再合成されたパターンとマスクパターンとを比較する手段と、備えることを特徴とする半導体集積回路装置のマスクパターン検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、大規模集積回路（ＬＳＩ）開発におけるレイアウトパターンの設計において、作成したマスクパターンの検証を行う半導体集積回路装置のマスクパターン検証装置に関するものである。
【背景技術】
【０００２】
半導体集積回路のマスクパターンを作成するまでには、回路設計から最終的なマスクパターンを得るまでに数ヶ月あるいはそれ以上に及ぶ期間がかかる。これらの期間、設計者はライブラリから必要なセルのマスクパターンを取り出して使用するが、ライブラリから取り出した後に、ライブラリのマスクパターンが変更されることがある。このライブラリの変更は、通常、マスクパターンの異常を修正する場合や、スペック改良、その他歩止まり向上のため等の理由で行なわれる。
【０００３】
設計者がこのライブラリの変更を知らずにいると最終的なマスクパターンとライブラリのマスクパターンが不一致となり、その結果、設計した集積回路のマスクパターンに不具合が生じる場合がある。
【０００４】
また、一旦設計が修了した集積回路を改訂して新たな集積回路を作成する場合もある。この場合には以前に使用したマスクパターンをそのまま一部を再利用する場合にも、改訂する前にライブラリが変更されている場合があり、この場合も同様な問題が発生することがある。
【０００５】
一方、マスクパターン自体を比較する方法が特許文献１に示されている。この特許文献１には、マスクパターン比較を高速に行う技術について開示されているが、比較するための基準マスクパターンの変更があった場合の対応については何等対策が講じられていない。
【特許文献１】特開平６−３２６１９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
この発明は、設計に際してライブラリから取り出した後に、ライブラリのマスクパターンが変更された場合に問題が生じることがないように、最終的なマスクパターンがどの様なマスクパターンを用いているのか検証可能にし、マスクパターン不良の発生等を防止することを目的とする。更に、この発明は、最終のライブラリデータが使用されているかをチェックすることを目的とする。
【課題を解決するための手段】
【０００７】
この発明の半導体集積回路装置のマスクパターン検証装置は、マスクパターンを検証する動作を制御する処理手段と、この処理手段に接続され入力されたチェックコマンドを前記処理手段に与える入力手段と、前記処理手段に接続されチェックされるマスクパターンのライブラリに用意された機能セルとコンパイルドセルのパラメータがそれぞれ記述されているセル種別記述ファイルを格納する記憶手段と、チェック結果を表示する表示手段と、を備え、前記処理手段は、前記記憶手段に格納されたセル種別記述ファイルを読み出して機能セルかコンパイルドセルかを判別する手段と、前記判別手段でコンパイルドセルと判別されたセルに対してパラメータに基づき最新のパターンを再合成する手段と、再合成されたパターンとマスクパターンとを比較する手段と、備えることを特徴とする。
【０００８】
上記の構成によれば、マスクパターン全体のマスクパターン比較を行わず、機能セル単位でチェックを行うものであるが、ライブラリにマスクパターンデータとして存在しないコンパイルドセルについても最新のものが使用されているかのチェックが可能となっている。このチェックでは、バージョン番号を比較する前述した構成に比べて、処理時間がかかるが、バージョン情報の管理が不要なとなると共に、さらにマスクパターン自体を比較するため、確実にチェックが行える。
【発明の効果】
【０００９】
以上説明したように、マスクパターン全体のマスクパターン比較を行わず、機能セル単位でチェックを行うものであるが、ライブラリにマスクパターンデータとして存在しないコンパイルドセルについても最新のものが使用されているかのチェックが可能となっている。このチェックでは、バージョン情報の管理が不要になること、さらにマスクパターン自体を比較するため、確実にチェックが行えることなどの利点がある。
【発明を実施するための最良の形態】
【００１０】
以下、この発明の実施の形態につき図面を参照して説明する。
【００１１】
図１は、この発明が適用される半導体集積回路装置のマスクパターン検証装置の基本的構成を示すブロック図である。
【００１２】
図１に示すように、処理装置１は、ＣＰＵ及びこれら動作を制御するプログラムが格納された記憶装置を備え、後述する動作フローに従ってマスクパターンをチェックする処理を行う。この処理装置１には、キーボード及びマウスなどのポインティングデバイスを含む入力装置２からチェックの際のコマンドが入力される。更に、この処理装置１には、マスクパターンデータやセル情報を記述ファイルとして格納している記憶装置３からそれぞれのデータが与えられ、マスクパターンのチェックを行う。このチェック結果はＣＲＴなどからなる表示装置４に表示される。
【００１３】
次に、上記処理装置の動作につき動作フロー図に従い説明する。
【００１４】
この発明の参考例においては、必要な機能セル毎にバジョーン番号がそれぞれ付加された状態でライブラリとして記憶装置３に格納されている。機能セルとしては、論理ゲート、メモリブロック、マルチプレイヤ等があり、図４に示すように、マスクパターンにバージョン番号が付され、ライブラリが改訂された毎にこのバージョン番号は書き換えられる。そして、図５に示すように、記憶装置３内に最新バージョン記述ファイルとして格納されている。設計者が設計したマスクパターンに使用した時点のライブラリのバージョン番号がそのマスクパターンのライブラリと共に記述ファイルとして格納されている。そして、マスクパターンをチェックする場合には、検証するマスクパターンの記述ファイル等を記憶装置３内に格納する。
【００１５】
まず、この発明の参考例につき図２の動作を示すフローに従い説明する。
【００１６】
まず、チェック動作を開始すると、ステップＳ１において、記憶装置３に格納されているチェックするマスクパターンの記述ファイルからマスクパターンで使用されているセル名を順次検索する。
【００１７】
続いて、ステップＳ２において、検索したセル名が最新バージョン記述ファイルに定義されているセルかどうかを判断する。定義されているセルの場合は、バージョンのチェックを行うためにステップＳ３に進み、定義されていない場合は、ステップＳ８の処理を行う。
【００１８】
最新バージョン記述ファイルの記述例を図５に示す。この例は最新バージョン記述ファイルのフォーマットを限定するものではないが、内容としては、機能セルのセル名とその最新バージョンが記述されているものである。このステップＳ２における判断は、マスクパターンで使用されているセルには機能セル以外のバージョンのチェックが不要なものも含まれており、このセルを除くことで余分なチェックを省き、高速に処理を行うためである。チェックが不要なセルの一例として、機能セルを構成する下階層のセルが挙げられる。ただし、これらの下階層セルもチェックに含まれるのであれば、必要なものをチェックするようにしても良い。
【００１９】
ステップＳ３においては、チェックを行うセルのマスクパターンからそのセルのバージョン番号を抽出して取得し、ステップＳ４に進む。図４にバージョン番号が記述されているマスクパターンの例を示す。この例では、”ＣＥＬＬ＿Ａ”というセルのマスクパターンのバージョンが”３”であることを示している。
【００２０】
ステップＳ４においては、チェックを行うセルの最新バージョン番号を最新バージョン記述ファイルから取得する。図５の例では、”ＣＥＬＬ＿Ａ”のバージョン番号”３”が得られる。
【００２１】
ステップＳ５においては、マスクパターンから得たバージョン番号と、最新バージョン記述ファイルから得たバージョン番号を比較する。一致する場合は、ステップＳ８に進み、一致しない場合にはステップＳ６に進み、処理を行う。図４及び図５に示す例では、”ＣＥＬＬ＿Ａ”のバージョン番号が各々３であるため一致している。
【００２２】
セルが一致しない場合、例えば、マスクパターンから得た”ＣＥＬＬ＿Ａ”のバージョン番号が１であり、最新バージョン記述ファイルから得た”ＣＥＬＬ＿Ａ”のバージョン番号が３である場合には、ステップＳ５において、両者のバージョン番号が一致しないと判断され、ステップＳ６にて、バージョン番号の一致しないセル情報の表示を行った後、ステップＳ７に進む。この例では、図６の一行目に示したように、「ＣＥＬＬ＿Ａのバージョンは１ですが、最新バージョンは３です。」という表示を表示装置４に行う。尚、この表示は例であって限定するものではない。このようにバージョン番号を比較することにより、処理時間のかかるレイアウト比較を行わずに簡易な方法で最新のライブラリデータを使用しているかをチェックできるため、高速にチェックができる。
【００２３】
続いて、ステップＳ７では、ここでは、旧バージョンを使用した際の問題点を表示する。問題点とは、マスクパターンで使用されていた旧バージョンから最新バージョンまでの改定履歴で、これらを各バージョンについて表示する。このように、改訂履歴を表示することで、そのまま旧バージョンを使用した場合にどのような問題が発生するかを知ることができる。また、その理由によって、問題のあるセルのマスクパターンを入れ換えるべきかの判定を行うことができる。
【００２４】
ステップＳ８では、マスクパターンで使用されているすべてのセルについて、ステップＳ２以降の処理がなされたかを判定する。すべてのセルについて終了した場合は、処理を終了し、残りのセルがある場合は、ステップＳ２へ戻り前述の動作を繰り返す。
【００２５】
次に、この発明の実施の形態につき図３のフロー図に従い説明する。
【００２６】
単純にマスクパターン比較を行うためのツールは、多くのＥＤＡベンダーから販売されている。この発明の第２の実施の形態では、これらのマスクパターン比較のツール等を用いて、マスクパターンの最新バージョンとの比較を行う。この第２の実施の形態においては、機能セル毎にマスクパターン比較を行っている。
【００２７】
マスクパターンのチェックを開始すると、まず、ステップＳ１１において、セル種別記述ファイルに記述されているセルについて順に検索する。セル種別記述ファイルの例を図７に示す。このファイルにはライブラリに用意されているセルとコンパイルドセルのパラメータが記述されている。この例では、記述されている３つのセルについて、”ＣＥＬＬ＿Ａ”、”ＣＥＬＬ＿Ｂ”はライブラリで用意されているセルで、”ＣＥＬＬ＿Ｃ”は、ビット数が８、ワード数が１０２４のＲＡＭのコンパイルドセルであることを示している。
【００２８】
続いて、ステップＳ１２において、ステップＳ１１で得たセルが最新バージョンに定義されているマスクパターンで使用されているセルであるかを判断する。該当しない場合は、ステップＳ１８に進み、ステップＳ１８の処理を行う。ステップＳ１２において、該当する場合は、ステップＳ１３に進み、ステップＳ１３でコンパイルドセルであるか否かの判断を行う。
【００２９】
ステップＳ１３において、マスクパターンに使用されているセルがコンパイルドセルでない場合は、ステップＳ１５にそのまま進む。
【００３０】
ステップＳ１３において、セルがコンパイルセルであると判断されると、ステップＳ１４に進み、ステップＳ１４では、コンパイルドセルについてコンパイルドセルのパラメータを元にそのセルの最新バージョンのマスクパターンを発生する。これは、コンパイルドセルは、ライブラリとして完成された形で存在せず、コンパイルドセルを構成するサブセルを組み合わせて構成されるからである。図７に示す例では、ビット数が８、ワード数が１０２４のＲＡＭの最新バージョンのマスクパターンを発生することになる。
【００３１】
ステップＳ１５では、ライブラリ及び／または、ステップＳ１４において発生させたコンパイルドセルの最新バージョンのマスクパターンの比較を行う。ここでの比較は図形的な比較であり、この比較の手法としては、ＥＤＡベンダーから販売されていツール等や特開平６−３２６１９１号公報に開示されているような圧縮したビットマップに基づく比較処理などを用いることができる。
【００３２】
続いて、ステップＳ１６では、ステップＳ１５における比較の結果に基づきマスクパターンが一致するか否か判断し、一致するマスクパターンであれば、ステップＳ１８に進み、一致しない場合は、ステップＳ１７に進む。ステップＳ１７で、前述した参考例と同様に不一致セルの情報を表示装置４に表示する。
【００３３】
上記したように、マスクパターン全体のマスクパターン比較を行わず、機能セル単位でチェックを行うものであるが、ライブラリにマスクパターンデータとして存在しないコンパイルドセルについても最新のものが使用されているかのチェックが可能となる。このチェック方法では、第１の実施の形態に比べて、処理時間がかかるが、バージョン情報の管理が不要になる点、さらにマスクパターン自体を比較するため、確実にチェックが行えることなどの利点がある。
【００３４】
ステップＳ１８では、セル種別記述ファイルに記述されているセル全てについて、上記ステップＳ１２以降の処理がなされたかを判定する。全てのセルについて終了した場合は、処理を終了し、残りのセルがある場合は、ステップＳ１２に戻り前述した処理を行う。
【図面の簡単な説明】
【００３５】
【図１】この発明が適用される半導体集積回路装置のマスクパターン検証装置の基本的構成を示すブロック図である。
【図２】この発明の参考例の処理動作を示すフロー図である。
【図３】この発明の実施の形態の処理動作を示すフロー図である。
【図４】バージョン番号が記述されているマスクパターンの例を示す模式図である。
【図５】最新バージョン記述ファイルの記述例を示す模式図である。
【図６】旧バージョンでの問題点の表示例を示す模式図である。
【図７】セル種別記述ファイルの例を示す模式図である。
【符号の説明】
【００３６】
１  処理装置
２  入力装置
３  記憶装置
４  表示装置
【図１】
2005353097.tif 000003
【図２】
2005353097.tif 000004
【図３】
2005353097.tif 000005
【図４】
2005353097.tif 000006
【図５】
2005353097.tif 000007
【図６】
2005353097.tif 000008
【図７】
2005353097.tif 000009