(57)【要約】【課題】自動配置配線された配線（レイアウト）に対して手配線による配線を追加して回路の配線を作成する場合に、レイアウト検証を容易に行う。【解決手段】本発明のレイアウト検証方法は、半導体集積回路を作成するためのｖｅｒｉｌｏｇネットリストデータを入力して自動配置配線処理を行い、自動配置配線レイアウトデータを第１のレイヤに含まれる配線データとして出力する工程と、上記ｖｅｒｉｌｏｇネットリストデータに含まれない、上記半導体集積回路に含まれる配線に関する手動配置配線データを入力して、手動配置配線レイアウトデータを上記第１のレイヤとは異なる第２のレイヤに含まれる配線データとして出力する工程と、上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとの論理積演算を行う工程とを含む。【選択図】図２
2011065207.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに備わる制御部において実行することにより実現されるレイアウト検証方法であって、
上記制御部は、
半導体集積回路を作成するためのｖｅｒｉｌｏｇネットリストデータを記憶装置から入力して自動配置配線処理を行い、自動配置配線レイアウトデータを第１のレイヤに含まれる配線データとして記憶装置に出力する工程と、
上記ｖｅｒｉｌｏｇネットリストデータに含まれない、上記半導体集積回路に含まれる配線に関する手動配置配線データを入力手段及び記憶装置から入力して、手動配置配線レイアウトデータを上記第１のレイヤとは異なる第２のレイヤに含まれる配線データとして記憶装置に出力する工程と、
上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとを、記憶装置から読み込み、両者の論理積演算を行い、その論理積演算の結果から、上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとの重なりの発生を把握する工程と
を実行する、
レイアウト検証方法。
【請求項２】
上記重なりの発生を把握する工程は、重なりの発生を把握することによりショート箇所を検出することを更に含む
請求項１に記載のレイアウト検証方法。
【請求項３】
更に、上記手動配置配線レイアウトデータを記憶装置から読み出してセル化を行い、セル化された手動配置配線レイアウトデータを記憶装置に出力するセル化工程を含む
請求項２に記載のレイアウト検証方法。
【請求項４】
上記セル化工程において、読み出した上記手動配置配線レイアウトデータについて、配置位置に従って一つ若しくはそれ以上のブロックに分割した上で、セル化を行う
ことを特徴とする請求項３に記載のレイアウト検証方法。
【請求項５】
コンピュータに備わる制御部において実行することにより実現されるレイアウト検証装置であって、
記憶手段に格納される、半導体集積回路を作成するためのｖｅｒｉｌｏｇネットリストデータに基づいて、自動配置配線処理を行い、自動配置配線レイアウトデータを第１のレイヤに含まれる配線データとして記憶装置に出力する自動配置配線レイアウトデータ作成手段と、
上記ｖｅｒｉｌｏｇネットリストデータに含まれない、入力手段から入力される若しくは記憶装置に格納される、上記半導体集積回路に含まれる配線に関する手動配置配線データに基づいて、手動配置配線レイアウトデータを上記第１のレイヤとは異なる第２のレイヤに含まれる配線データとして記憶装置に出力する手動配置配線レイアウトデータ作成手段と、
上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとを、記憶装置から読み込み、両者の論理積演算を処理装置にて行い、その論理積演算から、上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとの重なりの発生を処理装置にて把握するエラー検出手段と
を含むレイアウト検証装置。
【請求項６】
上記エラー検出手段は、重なりの発生を把握することによりショート箇所を検出することを更に行う
請求項５に記載のレイアウト検証装置。
【請求項７】
更に、上記手動配置配線レイアウトデータを記憶装置から読み出してセル化を行い、セル化された手動配置配線レイアウトデータを記憶装置に出力するセル化手段を含む
請求項６に記載のレイアウト検証装置。
【請求項８】
上記セル化手段は、読み出した上記手動配置配線レイアウトデータについて、配置位置に従って一つ若しくはそれ以上のブロックに分割した上で、セル化を行う
ことを特徴とする請求項７に記載のレイアウト検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路のレイアウト検証方法、及びレイアウト検証装置に関する。
【背景技術】
【０００２】
半導体集積回路のレイアウト設計を行う際、自動配置配線装置によって作成されたレイアウトデータには、ノイズ対策用のガードリングや電源／ＧＮＤに関する配線等の、Ｖｅｒｉｌｏｇネットリストに無い配線データが手配線で追加される。その後、市販されている検証用ソフトウエアを用いてプロセス基準のデザインルールチェック(ＤＲＣ)や、回路とレイアウトの比較チェック(ＬＶＳ)等の検証作業が順次実施される。もし、検証作業でエラーが発見されれば、上記の自動配置配線処理、手配線処理、及び検証作業が、エラーが無くなるまで繰り返し行なわれる。
【０００３】
図８は、従来のレイアウト設計におけるレイアウト検証方法のフロー図である。まず、ｖｅｒｉｌｏｇネットリスト１２’と、各ブロックのセル枠データ１４’とを用いて、自動配置配線処理１６’を行い、レイアウトデータ（１）１８’を作成する。レイアウトデータ（１）１８’に対して、電源／ＧＮＤに関する配線やガードリングなどの、Ｖｅｒｉｌｏｇネットリストに無い配線が追加される。ここで、追加された配線に関するブロックデータ２４’を用いて、レイアウトデータ（２）２２’が作成される。
【０００４】
作成されたレイアウトデータ（２）２２’に対して、プロセス基準のデザインルールチェック（ＤＲＣ）２８’や、ＬＶＳ／ＥＲＣ検証３０’が行われる。ＬＶＳ／ＥＲＣ検証３０’では、ショート箇所のチェックも行われる。検証により、回路の設計を修正する必要が生じれば、その時点でのｖｅｒｉｌｏｇネットリストを用いて、自動配置配線処理１６’以降の処理（作業）が繰り返して行われ、回線上の修正すべき部位の除去が目指される。なお、ＬＶＳ／ＥＲＣ検証３０’では、検証用ネットリスト３４’が利用されるが、この検証用ネットリスト３４’は、自動配置配線処理１６’で出力されるｖｅｒｉｌｏｇネットリスト３２’から変換される。
【０００５】
従来のレイアウト設計におけるレイアウト検証において、自動配置配線処理を行う自動配置配線ツールも検証機能を有する。しかしながら、ここでの検証機能は、自動配置配線ツールによって配置される配線におけるチェックのみ行う。つまり、自動配置配線された配線であるレイアウトデータ（１）に対して、電源／ＧＮＤに関する配線やガードリングなどの、Ｖｅｒｉｌｏｇネットリストに無い配線が追加された配線におけるチェックを行うものではない。このチェックは、ＬＶＳ／ＥＲＣ検証３０’において行われるが、手配線データを受けたレイアウトに関するチェックであるから、ショート等のエラーが多く生じやすい。また、図８に示すように検証作業は繰り返し行われるのが通常であるが、設計される回路が高度化・複雑化しているにも拘わらず、チェック作業及びその修正を作業者の経験に依存して場当たり的に行っているため、回路設計上のエラーの除去に多大な時間が掛かることがある。
【０００６】
なお、特許文献１は、新しいレイアウト設計に際しても即座に全組合せデバイスのレイアウト構成を抽出し正規のレイアウト検証ルールを作成し出力する他、不正規デバイス等の不正規のレイアウト構成を明確に区別して出力しＬＶＳやＤＲＣの検証時にエラー個所を容易に発見し製造プロセス生成の効率化を目的とする、レイアウト検証ルール作成装置等が開示される。また、特許文献２は、レイアウトデータに配線ショートのエラーがある場合、ＤＲＣでは検出されずＬＶＳで検出されるもののエラー発生箇所を特定するのが困難であることに着目し、配線のショートエラーの場所を短時間で且つ確実に特定する、レイアウトパターン検証装置を開示する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、自動配置配線された配線（レイアウト）に対して手配線による配線を追加して、回路の配線を作成する場合でも、ショート箇所の見極めを容易に行うことができ、よってレイアウト検証を容易に行うことができる、レイアウト検証方法を提供することを目的とする。また、そもそも自動配置配線ツールがエラーの発生を抑制する配線を作成できるデータを提供する、レイアウト検証方法及びレイアウト検証装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上記の目的を達成するために為されたものである。本発明に係るレイアウト検証方法は、
コンピュータに備わる制御部において実行することにより実現されるレイアウト検証方法であって、
上記制御部は、
半導体集積回路を作成するためのｖｅｒｉｌｏｇネットリストデータを記憶装置から入力して自動配置配線処理を行い、自動配置配線レイアウトデータを第１のレイヤに含まれる配線データとして記憶装置に出力する工程と、
上記ｖｅｒｉｌｏｇネットリストデータに含まれない、上記半導体集積回路に含まれる配線に関する手動配置配線データを入力手段及び記憶装置から入力して、手動配置配線レイアウトデータを上記第１のレイヤとは異なる第２のレイヤに含まれる配線データとして記憶装置に出力する工程と、
上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとを、記憶装置から読み込み、両者の論理積演算を行い、その論理積演算の結果から、上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとの重なりの発生を把握する工程と
を実行する。
【０００９】
また、本発明に係るレイアウト検証方法では、上記重なりの発生を把握する工程は、重なりの発生を把握することによりショート箇所を検出することを更に含むことが好ましい。
【００１０】
また、本発明に係るレイアウト検証方法は、
更に、上記手動配置配線レイアウトデータを記憶装置から読み出してセル化を行い、セル化された手動配置配線レイアウトデータを記憶装置に出力するセル化工程を含むことが好ましい。
【００１１】
また、本発明に係るレイアウト検証方法は、
上記セル化工程において、読み出した上記手動配置配線レイアウトデータについて、配置位置に従って一つ若しくはそれ以上のブロックに分割した上で、セル化を行うことが好ましい。
【００１２】
更に、本発明に係るレイアウト検証装置は、
コンピュータに備わる制御部において実行することにより実現されるレイアウト検証装置であって、
記憶手段に格納される、半導体集積回路を作成するためのｖｅｒｉｌｏｇネットリストデータに基づいて、自動配置配線処理を行い、自動配置配線レイアウトデータを第１のレイヤに含まれる配線データとして記憶装置に出力する自動配置配線レイアウトデータ作成手段と、
上記ｖｅｒｉｌｏｇネットリストデータに含まれない、入力手段から入力される若しくは記憶装置に格納される、上記半導体集積回路に含まれる配線に関する手動配置配線データに基づいて、手動配置配線レイアウトデータを上記第１のレイヤとは異なる第２のレイヤに含まれる配線データとして記憶装置に出力する手動配置配線レイアウトデータ作成手段と、
上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとを、記憶装置から読み込み、両者の論理積演算を処理装置にて行い、その論理積演算から、上記第１のレイヤに含まれるデータとして出力された配線データと、上記第２のレイヤに含まれるデータとして出力された配線データとの重なりの発生を処理装置にて把握するエラー検出手段と
を含む。
【発明の効果】
【００１３】
本発明を利用することにより、自動配置配線ツールによって配線された配線と手配線による配線とのショート箇所の見極めが行えるので、レイアウト検証時間が短縮される。また、本発明を利用して、手配線によって加えられた配線データをブロック化（セル化）することにより、回路設計変更の際に（特に自動配置配線時に）ショート箇所を生じてしまう確率が低くなる。
【図面の簡単な説明】
【００１４】
【図１】本発明の好適な実施形態に係るレイアウト検証方法を実行するレイアウト処理装置のハード構成を示すブロック図である。
【図２】本発明の好適な実施形態に係る、レイアウト設計におけるレイアウト検証方法のフロー図である。
【図３】電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データを、自動配置配線による配線データに追加した上で合成し、合成レイアウトデータを作成する様子を示す図である。
【図４】図３に示した合成レイアウトデータにおいて、Ｌ−１７とＬ−１１７との論理積演算を行い、同一メタル（メタル１）における自動配置配線による配線と手配線による配線との重なりを確実に把握する様子を示す図である。
【図５】「電源／ＧＮＤに関する配線やガードリングのセルデータ」に基づいて生成されるＬＶＳ検証用ネットリスト（手配線分）を検証用ネットリストに追加し、合成レイアウトデータ（レイアウトデータ（２））のＬＶＳ検証を行う様子を示す図である。
【図６】電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データを、一つの固まりとしてセル化する様子を示す図である。
【図７】電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データを、配置位置に従って、複数のブロックに分割した上で、セル化する様子を示す図である。
【図８】従来のレイアウト設計におけるレイアウト検証方法のフロー図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明に係る好適な実施形態を説明する。
【００１６】
［ハードウエア構成］
図１は、本発明の好適な実施形態に係るレイアウト検証方法を実行するためのレイアウト処理装置１０のハードウエア構成を示すブロック図である。図１に示すレイアウト処理装置１０は、レイアウト検証の処理を行う処理装置１、処理装置１に対して種々の情報や種々の命令を入力するキーボード１２及びマウス１３等の入力手段、データやプログラムを記憶する記憶装置４、及び、入力画面（例えばＧＵＩ）の表示や処理結果の表示等を行う表示装置１５を備える。図１から明らかなように、図１に示すレイアウト処理装置１０は、通常のコンピュータ及びその周辺装置で構成される。本発明の好適な実施形態に係るレイアウト検証方法を構成する処理工程は、処理装置１、つまり処理装置１に含まれる制御部が、記憶装置４に記憶される適切なプログラムを実行することで機能的に構成されるものである。なお、マウス１３の代りに、タブレットやトラックボール等のポインティングデバイスが用いられてもよい。また、記憶装置４には、ＲＡＭ、ＥＰＲＯＭ、ＨＤ等が任意に用いられ、表示装置５には、例えばＣＲＴや液晶ディスプレイ等が任意に用いられる。
【００１７】
［レイアウト検証方法］
図２は、本発明の好適な実施形態に係るレイアウト設計におけるレイアウト検証方法のフロー図である。まず、ｖｅｒｉｌｏｇネットリスト１２と、各ブロックのセル枠データ１４とを用いて、自動配置配線処理１６を行い、レイアウトデータ（１）１８を作成する。この自動配置配線処理１６では、レイアウトにおけるショート箇所を極力発生させないために、電源／ＧＮＤに関する配線やガードリングのセルデータ２６が利用される。この「電源／ＧＮＤに関する配線やガードリングのセルデータ」２６については、後述する。
【００１８】
次に、図２に示すフロー図では、レイアウトデータ（１）１８に対して、電源／ＧＮＤに関する配線やガードリングなどの、Ｖｅｒｉｌｏｇネットリストに無い配線データが追加される（２０）。
【００１９】
ここで、電源／ＧＮＤに関する配線やガードリングなどの、Ｖｅｒｉｌｏｇネットリストに無い配線データは、セル化（ブロック化）されて、「電源／ＧＮＤに関する配線やガードリングのセルデータ」２６として出力されると同時に、レイアウトデータ（１）に対して、現存の自動配置配線による配線データとは区別して、追加される。
【００２０】
「区別して追加する」とは、以下のような意味である。つまり、自動配置配線による配線のレイヤ（プロセス基準の配線レイヤ）とは別の空きレイヤに、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データが追加される、ということである。ここで、自動配置配線ツールにより（プロセス基準の配線レイヤとは別の）一つのレイヤが配線禁止レイヤとして指定され、その配線禁止レイヤが「別の空きレイヤ」（仮レイヤ）として利用されるのが好ましい（図６参照）。なお、配線禁止レイヤは、通常の自動配置配線ツールにて定義され得る属性のレイヤである。
【００２１】
【表１】
2011065207.tif 000003
上記表１は、例えば、プロセス基準の配置レイヤが「Ｌ−１７」である場合、配線禁止レイヤとして「Ｌ−１１７」が指定され、それが空きレイヤ（仮レイヤ）として利用されることを示す表である。図３では、Ｖｅｒｉｌｏｇネットリストに無い配線データが「Ｌ−１１７」レイヤ（仮レイヤ）に配置され、自動配置配線による配線データが「Ｌ−１７」に配置されることを示している。
【００２２】
図２に示すフロー図に戻って、追加された配線（即ち、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線）に関するブロックデータ２４を用いて、レイアウトデータ（２）２２が作成される。
【００２３】
作成されたレイアウトデータ（２）２２に対して、プロセス基準のデザインルールチェック（ＤＲＣ）２８が行われる。本実施形態では、このＤＲＣ２８において、論理演算処理、具体的には論理積（ＡＮＤ）処理により、ショート箇所のエラーの検出を行う。つまり、プロセス基準の配線レイヤと仮レイヤとの論理積演算を行うことにより、同一メタルにおける、自動配置配線による配線と、手配線による配線との重なりが出力される。
【００２４】
図３は、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データ４０を、自動配置配線による配線データ４２に追加した上で合成し、合成レイアウトデータ４４を作成する様子を示す図である。なお、合成レイアウトデータ４４は、図２に示すレイアウトデータ（２）２２と実質的に等しいものである。図３に示す合成レイアウトデータ４４を目視することにより、少なくとも２つのショート箇所（α、β）が存在することが把握される。
【００２５】
図４は、図３に示した合成レイアウトデータ４４において、Ｌ−１７とＬ−１１７との論理積演算を行い、同一メタル（メタル１）における自動配置配線による配線と手配線による配線との重なりを確実に把握する様子を示す図である。このように、プロセス基準の配線レイヤと仮レイヤとの論理積演算を行うことにより、ショート箇所のエラーの検出が確実になる。
【００２６】
図２に示すフロー図に戻って、ＤＲＣ２８の後、ＬＶＳ／ＥＲＣ検証３０が行われる。ＬＶＳ／ＥＲＣ検証３０では図２に示すように、ｖｅｒｉｌｏｇネットリスト１２から変換された検証用ネットリスト３４が用いられるが、この検証用ネットリスト３４には、上記の「電源／ＧＮＤに関する配線やガードリングのセルデータ」２６に基づいて生成されるＬＶＳ検証用ネットリスト（手配線分）２７が追加されるのが好ましい。
【００２７】
つまり、図２には示していないが、電源／ＧＮＤに関する配線やガードリングのセルデータ２６は、ＬＶＳ検証で利用されるネットリスト形式のデータで表すことができる。このＬＶＳ検証用ネットリスト（手配線分）２７を、ＬＶＳ検証用ネットリスト３４に反映した上でＬＶＳ検証を行えば、検証処理（ＬＶＳ／ＥＲＣ検証３０）がより適切なものとなる。図５は、「電源／ＧＮＤに関する配線やガードリングのセルデータ」２６に基づいて生成されるＬＶＳ検証用ネットリスト（手配線分）２７を検証用ネットリスト３４に追加し、合成レイアウトデータ４４（レイアウトデータ（２）２２）のＬＶＳ検証を行う様子を示す図である。
【００２８】
再び図２に示すフロー図に戻る。上記ショート箇所チェックやＬＶＳ検証を含む検証により、回路の設計を修正する必要が生じれば、ｖｅｒｉｌｏｇネットリスト、及びこの時点での「電源／ＧＮＤに関する配線やガードリングのセルデータ」を用いて、自動配置配線処理１６、Ｖｅｒｉｌｏｇネットリストに無い配線データの追加２０、及び検証（２８、３０）が再び行われる。これら処理は、ショート箇所の検出やその他のエラーの検出が無くなるまで、繰り返される。
【００２９】
エラーの検出が無くなれば、仮レイヤに配置されている電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データが、プロセス基準の配線レイヤに移される（戻される）。上記の例を用いて説明すると、Ｌ−１１７のＶｅｒｉｌｏｇネットリストに無い配線データが、Ｌ−１７のプロセス基準の配線データに移される。これで、レイアウトデータの作成が完了する。
【００３０】
レイアウトデータ完成時の「電源／ＧＮＤに関する配線やガードリングのセルデータ」２６は、セル化（ブロック化）された状態で、自動配置配線処理１６を実行する自動配置配線ツールに反映される。このセルデータの反映は、自動配置配線ツールによる回路の変更時に有用なものとなる。つまり、自動配置配線処理１６が、エラーを含まない、電源／ＧＮＤに関する配線やガードリングなどの（Ｖｅｒｉｌｏｇネットリストに無い）配線データを含んだ状態で、始められることになるから、エラーの発生を抑制でき、回路設計変更を短時間で行うことができる。
【００３１】
［セル化（ブロック化）］
自動配置配線ツールに反映される「電源／ＧＮＤに関する配線やガードリングのセルデータ」の作成について、説明する。図６は、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データ４０を、一つの固まりとしてセル化する（３６）様子を示す図である。作成された、回路全体に関する「電源／ＧＮＤに関する配線やガードリングのセルデータ」がそのまま、自動配置配線ツールに反映される（３８）。自動配置配線ツールに反映されたセルデータは、回路設計の小規模の変更時に特に有効に利用され得る。
【００３２】
一方、図７は、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データ４０を、配置位置に従って、複数のブロックに分割した上で、セル化（３６）する様子を示す図である。分割されたセルデータの状態で、自動配置配線ツールに反映される（３８）。このような、分割されたセルデータの反映は、特に、分割されたセル単位での回路設計変更時に有効に利用され得る。なお、電源／ＧＮＤに関する配線やガードリングなどのＶｅｒｉｌｏｇネットリストに無い配線データ４０は、信号名単位で分割されてセル化されてもよい。
【符号の説明】
【００３３】
１・・・処理装置、２・・・キーボード、３・・・マウス、４・・・記憶装置、５・・・表示装置、１０・・・レイアウト処理装置。
【先行技術文献】
【特許文献】
【００３４】
【特許文献１】特開２００５−１４８９９９公報
【特許文献２】特開２０００−１１４３３９公報
【図１】
2011065207.tif 000004
【図２】
2011065207.tif 000005
【図３】
2011065207.tif 000006
【図４】
2011065207.tif 000007
【図５】
2011065207.tif 000008
【図６】
2011065207.tif 000009
【図７】
2011065207.tif 000010
【図８】
2011065207.tif 000011