(57)【要約】【課題】従来のレイアウト検証方法では、短絡が発生している配線は特定できても、短絡が発生している配線上の短絡箇所は特定できない問題があった。【解決手段】一実施の形態によれば、レイアウト検証プログラム、レイアウト検証装置、及びレイアウト検証方法は、実際のレイアウト情報から抽出した第２の接続端子の位置と、下位階層回路における階層間接続端子として予め定義された第１の接続端子の位置と、を比較し、第１の接続端子と第２の接続端子との差分情報に基づき配線パターン上のショート候補箇所情報を出力する。【選択図】図２
2013200710.tif 000002
【特許請求の範囲】
【請求項１】
階層構造を有する回路情報に基づき形成される半導体装置の回路素子及び配線のチップ内における位置情報が少なくとも定義されるレイアウト情報と、前記階層構造のうち下位側の下位階層回路において上位側の上位階層回路との接続点となる第１の接続端子を定義する第１の接続端子情報と、が格納される記憶装置と、
演算装置と、
を有するレイアウト検証装置において前記演算装置に前記レイアウト情報における前記配線の短絡箇所を抽出させるレイアウト検証プログラムであって、
前記上位階層回路と前記下位階層回路とを接続する第２の接続端子を前記レイアウト情報から抽出して階層間接続箇所レイアウト情報を生成する階層間接続点抽出ステップと、
前記第１の接続端子情報と前記階層間接続箇所レイアウト情報との差分情報をショート候補箇所情報として出力するショート候補箇所抽出ステップと、
を前記演算装置に実行させるレイアウト検証プログラム。
【請求項２】
前記第１の接続端子情報と前記レイアウト情報とに基づき、前記チップ内における前記第１の接続端子の位置を定義した上位階層端子位置情報を生成する上位階層端子位置抽出ステップを有し、
前記ショート候補箇所抽出ステップでは、前記上位階層端子位置情報により定義される前記第１の接続端子の前記チップ内の位置と前記第２の接続端子の位置との差分情報を前記ショート候補箇所情報として出力する請求項１に記載のレイアウト検証プログラム。
【請求項３】
前記記憶装置には、前記半導体装置内の前記回路素子及び前記配線の接続情報を含むネットリスト情報がさらに格納され、
前記レイアウト検証プログラムは、前記レイアウト情報と前記ネットリスト情報とに基づき、前記レイアウト情報から抽出される接続情報が前記ネットリスト情報に定義される接続情報と一致するか否かを検証するＬＶＳ（Layout Versus Schematic）実行ステップを前記演算装置に実行させ、
前記ＬＶＳ実行ステップにおいて、前記レイアウト情報における前記短絡箇所の有無を検証し、前記短絡箇所が存在する場合、前記配線のうち当該短絡箇所が存在する短絡配線の位置情報を含む配線レイアウト情報と前記短絡配線の配線名情報とを出力する請求項１に記載のレイアウト検証プログラム。
【請求項４】
前記ショート候補箇所情報と、前記配線レイアウト情報と、前記配線名情報を合成してショート候補領域情報を生成するショート情報統合ステップをさらに有する請求項３に記載のレイアウト検証プログラム。
【請求項５】
前記第１の接続端子情報は、ＬＥＦ（Library Exchange Format）形式で記述される請求項１に記載のレイアウト検証プログラム。
【請求項６】
階層構造を有する回路情報に基づき形成される半導体装置の回路素子及び配線のチップ内における位置情報が少なくとも定義されるレイアウト情報と、前記階層構造のうち下位側の下位階層回路において上位側の上位階層回路との接続点となる第１の接続端子を定義する第１の接続端子情報と、が格納される記憶装置と、
前記レイアウト情報における前記配線の短絡箇所を抽出する短絡抽出装置と、を有する半導体装置のレイアウト検証装置であって、
前記短絡抽出装置は、
前記上位階層回路と前記下位階層回路とを接続する第２の接続端子を前記レイアウト情報から抽出して階層間接続箇所レイアウト情報を生成する階層間接続点抽出部と、
前記第１の接続端子情報と前記階層間接続箇所レイアウト情報との差分情報をショート候補箇所情報として出力するショート候補箇所抽出部と、
を有するレイアウト検証装置。
【請求項７】
前記第１の接続端子情報と前記レイアウト情報とに基づき、前記チップ内における前記第１の接続端子の位置を定義した上位階層端子位置情報を生成する上位階層端子位置抽出部を有し、
前記ショート候補箇所抽出部は、前記上位階層端子位置情報により定義される前記第１の接続端子の前記チップ内の位置と前記第２の接続端子の位置との差分情報を前記ショート候補箇所情報として出力する請求項６に記載のレイアウト検証装置。
【請求項８】
前記記憶装置には、前記半導体装置内の前記回路素子及び前記配線の接続情報を含むネットリスト情報がさらに格納され、
前記レイアウト情報と前記ネットリスト情報とに基づき、前記レイアウト情報から抽出される接続情報が前記ネットリスト情報に定義される接続情報と一致するか否かを検証するＬＶＳ（Layout Versus Schematic）実行部をさらに有し、
前記ＬＶＳ実行部は、前記レイアウト情報における前記短絡箇所の有無を検証し、前記短絡箇所が存在する場合、前記配線のうち当該短絡箇所が存在する短絡配線の位置情報を含む配線レイアウト情報と前記短絡配線の配線名情報とを出力する請求項６に記載のレイアウト検証装置。
【請求項９】
前記ショート候補箇所情報と、前記配線レイアウト情報と、前記配線名情報を合成してショート候補領域情報を生成するショート情報統合部をさらに有する請求項８に記載のレイアウト検証装置。
【請求項１０】
前記第１の接続端子情報は、ＬＥＦ（Library Exchange Format）形式で記述される請求項６に記載のレイアウト検証装置。
【請求項１１】
階層構造を有する回路情報に基づき形成される半導体装置の回路素子及び配線のチップ内における位置情報が少なくとも定義されるレイアウト情報と、前記階層構造のうち下位側の下位階層回路において上位側の上位階層回路との接続点となる第１の接続端子を定義する第１の接続端子情報と、が格納される記憶装置と、
前記レイアウト情報における前記配線の短絡箇所を抽出する演算装置と、を有するレイアウト検証装置におけるレイアウト検証方法であって、
前記演算装置において、
前記上位階層回路と前記下位階層回路とを接続する第２の接続端子を前記レイアウト情報から抽出して階層間接続箇所レイアウト情報を生成する階層間接続点抽出ステップと、
前記第１の接続端子情報と前記階層間接続箇所レイアウト情報との差分情報をショート候補箇所情報として出力するショート候補箇所抽出ステップと、
を実行するレイアウト検証方法。
【請求項１２】
前記第１の接続端子情報と前記レイアウト情報とに基づき、前記チップ内における前記第１の接続端子の位置を定義した上位階層端子位置情報を生成する上位階層端子位置抽出ステップを有し、
前記ショート候補箇所抽出ステップでは、前記上位階層端子位置情報により定義される前記第１の接続端子の前記チップ内の位置と前記第２の接続端子の位置との差分情報を前記ショート候補箇所情報として出力する請求項１１に記載のレイアウト検証方法。
【請求項１３】
前記記憶装置には、前記半導体装置内の前記回路素子及び前記配線の接続情報を含むネットリスト情報がさらに格納され、
前記レイアウト情報と前記ネットリスト情報とに基づき、前記レイアウト情報から抽出される接続情報が前記ネットリスト情報に定義される接続情報と一致するか否かを検証するＬＶＳ（Layout Versus Schematic）実行ステップを有し、
前記ＬＶＳ実行ステップにおいて、前記レイアウト情報における前記短絡箇所の有無を検証し、前記短絡箇所が存在する場合、前記配線のうち当該短絡箇所が存在する短絡配線の位置情報を含む配線レイアウト情報と前記短絡配線の配線名情報とを出力する請求項１１に記載のレイアウト検証方法。
【請求項１４】
前記ショート候補箇所情報と、前記配線レイアウト情報と、前記配線名情報を合成してショート候補領域情報を生成するショート情報統合ステップをさらに有する請求項１３に記載のレイアウト検証方法。
【請求項１５】
前記第１の接続端子情報は、ＬＥＦ（Library Exchange Format）形式で記述される請求項１１に記載のレイアウト検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はレイアウト検証プログラム、レイアウト検証装置及びレイアウト検証方法に関し、例えば、階層構造を有する回路設計情報に基づきレイアウト処理を行うレイアウト検証プログラム、レイアウト検証装置及びレイアウト検証方法に関する。
【背景技術】
【０００２】
近年、半導体装置の大規模・高集積化に伴い、設計されたレイアウトデータにおける回路素子間の接続や電源配線のショート等を目視によりチェックすることが困難になりつつある。また、大規模・高集積化を実現するために、１チップレイアウトは階層構造を持つことが一般的となってきている。このような半導体装置では、回路素子間の接続は、論理回路データの接続情報と、レイアウトデータの接続結果とを比較するＬＶＳ（Layout Versus Schematic）検証プログラムによりチェックされる。また、電源配線等の配線の接続情報をチェックするＥＲＣ（Electrical Rule Check）プログラムも利用されている。つまり、これらの検証プログラムを用いることにより、配線間のショートの有無をチェックすることが可能である。
【０００３】
しかし、電源配線のように、チップ全体に配線が存在する場合には、その配線全体がショート有りと判別される。よって、配線全体からショートの箇所を特定するのは非常に困難であり、ショートの箇所をいかに特定するかが課題となっていた。そこで、特許文献１では、ショート箇所の特定を容易にするための技術が開示されている。
【０００４】
特許文献１に記載のレイアウト検証方法は、半導体装置のパッド間又はノード間、もしくは、パッドとノード間の配線ショートを検出するレイアウト検証方法である。特許文献１に記載のレイアウト検証方法では、パッド間又はノード間、もしくは、パッドとノード間に介在する全ての配線を抽出し、全ての配線から端点を他の配線と共有しない全ての分岐配線を取り除き、全ての分岐配線を取り除いた後の配線を不具合パターンとして出力する。また、特許文献１に記載のレイアウト検証方法では、不具合パターンデータ上の全てのセル端子名を抽出し、セル端子名を、パッド又はノードセル端子名対応リストで照合し、照合結果に基づいてショート箇所を特定する。また、特許文献１に記載のレイアウト検証方法では、不具合パターンデータを階層ごとに分解し、各階層の境界に位置する配線端にパッド又はノード名を割り振り、配線端を起点として、上位階層より順にショート箇所の有無を検査する。このような処理により、特許文献１に記載のレイアウト検証方法では、検証すべき配線数を削減し、ショートの有無の検証を容易化する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３５１４８９２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、配線パターン単位で短絡が生じている配線を抽出できるのみであって、抽出された不具合パターンにおける配線短絡箇所までは特定することができない問題がある。その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
一実施の形態によれば、レイアウト検証プログラム、レイアウト検証装置、及びレイアウト検証方法は、実際のレイアウト情報から抽出した第２の接続端子の位置と下位階層回路における階層間接続端子として予め定義された第１の接続端子の位置とを比較し、第１の接続端子と第２の接続端子との差分情報に基づき配線パターン上のショート候補箇所情報を出力する。
【発明の効果】
【０００８】
一実施の形態によれば、レイアウト検証プログラム、レイアウト検証装置、及びレイアウト検証方法は、配線パターン上の短絡箇所の特定を容易化することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１にかかるレイアウト検証装置のブロック図である。
【図２】実施の形態１にかかるレイアウト検証プログラムの動作手順を示すフローチャートである。
【図３】実施の形態１にかかるレイアウト検証プログラムにおいて検証対象とする半導体装置のレイアウト情報の一例を示す概略図である。
【図４】図３で示した半導体装置の下位階層回路のレイアウトを示す概略図である。
【図５】図３で示した半導体装置の上位階層回路のレイアウトを示す概略図である。
【図６】実施の形態１にかかるレイアウト検証プログラムのＬＶＳ処理により検出されたショート配線を説明するための図である。
【図７】実施の形態１にかかるレイアウト検証プログラムにおいて抽出される階層間接続点を説明するための図である。
【図８】実施の形態１にかかるレイアウト検証プログラムにおいて読み込まれる下位階層回路の端子情報を説明するための図である。
【図９】実施の形態１にかかるレイアウト検証プログラムにおいて抽出される上位階層端子位置情報を説明するための図である。
【図１０】実施の形態１にかかるレイアウト検証プログラムにおいて抽出されるショート候補箇所を説明するための図である。
【図１１】実施の形態２にかかるレイアウト検証装置のブロック図である。
【図１２】実施の形態２にかかるレイアウト検証プログラムの動作手順を示すフローチャートである。
【図１３】実施の形態２にかかるレイアウト検証プログラムにおいて抽出されるショート候補箇所を説明するための図である。
【発明を実施するための形態】
【００１０】
実施の形態１
以下、図面を参照して実施の形態について説明する。まず、実施の形態１にかかる半導体装置のレイアウト検証プログラム、レイアウト検証装置及びレイアウト検証方法は、階層構造を有する回路情報に基づき形成される半導体装置のレイアウトにおける配線短絡箇所の有無を検証するものである。
【００１１】
また、レイアウト検証プログラムは、演算装置等で実行されるものである。そして、当該演算装置は、レイアウト検証プログラムを実行することでレイアウト検証装置となる。また、レイアウト検証装置は、レイアウト検証プログラムにより実現される処理を専用のハードウェアを用いて実現した装置として実現しても良い。以下の説明では、演算装置においてレイアウト検証プログラムを実行することでレイアウト検証装置を構成するものとする。
【００１２】
図１に実施の形態１にかかるレイアウト検証装置１のブロック図を示す。図１に示すように、レイアウト検証装置１は、演算装置１０、記憶装置２０を有する。そして、演算装置１０は、例えば、記憶装置２０からレイアウト検証プログラムを読み出して、読み出したレイアウト検証プログラムを実行する。演算装置１０は、レイアウト検証プログラムを実行することで、ＬＶＳ（Layout Versus Schematic）実行処理と、短絡検出処理を行う。図１では、ＬＶＳ実行処理を行う処理ブロックとして、ＬＶＳ実行部１１を示した。また、短絡検出処理を行う処理ブロックとして、短絡検出処理部１２を示した。
【００１３】
また、実施の形態１にかかるレイアウト検証プログラムは、短絡検出処理において、階層間接続点抽出処理、上位階層端子位置抽出処理、及び、ショート候補箇所抽出処理を行う。図１では、階層間接続点抽出処理を行う処理ブロックとして階層間接続点抽出部１３を示し、上位階層端子位置抽出処理を行う処理ブロックとして上位階層端子位置抽出部１４を示し、ショート候補箇所抽出処理を行う処理ブロックとしてショート候補箇所抽出部１５を示した。
【００１４】
記憶装置２０には、ネットリスト情報２１、レイアウト情報２２、第１の接続端子情報（例えば、下位階層回路の端子情報２３）、階層間接続箇所レイアウト情報２４、上位階層端子位置情報２５、ショート候補箇所情報２６が格納される。なお、記憶装置２０には、図示しない情報及びプログラムが格納されていても良い。例えば、図１では図示していないが、記憶装置２０には、実施の形態１にかかるレイアウト検証プログラムを格納しても良い。
【００１５】
ＬＶＳ実行部１１は、レイアウト情報２２とネットリスト情報２１とに基づき、レイアウト情報２２から抽出される接続情報がネットリスト情報２１に定義される接続情報と一致するか否かを検証する。そして、ＬＶＳ実行部１１は、レイアウト情報に定義された回路の接続情報中に短絡した配線が存在した場合には、検証結果信号ＣＲにより短絡検出処理部１２に処理の開始を指示する。
【００１６】
ここで、ネットリスト情報２１は、半導体装置内の回路素子及び配線の接続情報を含むデータである。ネットリスト情報２１は、回路図エディタ、論理合成ツール等の設計ツールにより生成されるものである。レイアウト情報２２は、階層構造を有する回路情報に基づき形成される半導体装置の回路素子及び配線のチップ内における位置情報が少なくとも定義される。このレイアウト情報２２は、配置配線ツール等により生成されるマスクパターンデータであって、例えば、ＧＤＳＩＩ、ＯＡＳＩＳといったデータフォーマットで記述されるものである。なお、レイアウト情報２２には、半導体装置を構成する回路の１チップのレイアウト情報が含まれる。
【００１７】
短絡検出処理部１２は、検証結果信号ＣＲが処理の開始を指示した場合に、レイアウト情報２２中の配線の短絡箇所の解析処理を開始する。つまり、短絡検出処理部１２は、検証結果信号ＣＲに応じて階層間接続点抽出部１３、上位階層端子位置抽出部１４、ショート候補箇所抽出部１５による処理を開始する。
【００１８】
階層間接続点抽出部１３は、上位階層回路と下位階層回路とを接続する第２の接続端子をレイアウト情報２２から抽出して階層間接続箇所レイアウト情報２４を生成する。つまり、第２の接続端子は、実際のレイアウトデータにおいて上位階層回路と下位階層回路とを接続する階層間接続点である。以下の説明では、第２の接続端子を階層間接続点と称す。階層間接続箇所レイアウト情報２４には、階層間接続点のチップチップ内の位置を示す座標情報が含まれる。
【００１９】
上位階層端子位置抽出部１４は、下位階層回路の端子情報２３とレイアウト情報２２とに基づき、チップ内における第１の接続端子の位置を定義した上位階層端子位置情報２５を生成する。より具体的には、上位階層端子位置抽出部１４は、下位階層回路の端子情報２３において定義される階層間接続端子の位置情報と、処理対処の下位階層回路のチップ内の位置と、を参照して、第１の接続端子のチップ内の位置を示す座標情報を算出する。そして、上位階層端子位置抽出部１４は、算出した第１の接続端子の座標情報を上位階層端子位置情報２５として出力する。
【００２０】
なお、下位階層回路の端子情報２３には、半導体装置を構成する回路の階層構造のうち下位側の下位階層回路において上位側の上位階層回路との接続点となる第１の接続端子が定義される。以下の説明では、第１の接続端子を階層間接続端子と称す。また、下位階層回路の端子情報２３は、例えば、ＬＥＦ（Library Exchange Format）形式で記述される。このように、下位階層回路の端子情報２３として一般的な情報を用いることで、別途データを準備する必要がないため、レイアウト工程に要する時間を短縮することができる。
【００２１】
ショート候補箇所抽出部１５は、階層間接続箇所レイアウト情報２４と上位階層端子位置情報２５との差分情報をショート候補箇所情報として出力する。より具体的には、ショート候補箇所抽出部１５は、上位階層端子位置情報２５により定義される第１の接続端子のチップ内の位置と階層間接続箇所レイアウト情報２４に定義される第２の接続端子の位置との差分情報をショート候補箇所情報２６として出力する。
【００２２】
続いて、実施の形態１にかかるレイアウト検証プログラムの動作について説明する。実施の形態１にかかるレイアウト検証プログラムの動作手順を示すフローチャートを図２に示す。図１に示すように、レイアウト検証プログラムは、レイアウト検証処理が開始されると、まず、ネットリスト情報２１及びレイアウト情報２２を読み込む（ステップＳ１）。そして、ＬＶＳ実行部１１においてＬＶＳ処理を実施するＬＶＳ実行ステップを行う（ステップＳ２）。
【００２３】
そして、ＬＶＳ実行部１１は、ＬＶＳ実行ステップにおいて、レイアウト情報２２に定義されたチップ内の配線の短絡の有無を判断する（ステップＳ３）。ステップＳ３で配線間の短絡がないと判断された場合（ステップＳ３のＮＯの枝）、レイアウト検証処理を終了する。一方、ステップＳ３で配線間の短絡があると判断された場合（ステップＳ３のＹＥＳの枝）、ＬＶＳ実行部１１は、検証結果信号ＣＲにより短絡検出処理部１２に処理の開始を指示する。
【００２４】
そして、検証結果信号ＣＲにより短絡検出処理部１２は、ステップＳ４〜Ｓ８の処理を実施する。ステップＳ４では、階層間接続点抽出部１３がレイアウト情報２２を読み出して、レイアウト情報２２に定義されたレイアウトデータから実際にレイアウトされた配線から上位階層回路と下位階層回路との接続点を抽出する。このステップＳ４で抽出された接続点は、階層間接続点であって、階層間接続点抽出部１３は、階層間接続点のチップ内での座標情報を階層間接続箇所レイアウト情報２４として出力する。
【００２５】
続いて、ステップＳ５では、上位階層端子位置抽出部１４がレイアウト情報２２と下位階層回路の端子情報２３とを読み込む。そして、ステップＳ６において、上位階層端子位置抽出部１４は、下位階層回路に対して定義された階層間接続端子のチップ内の位置情報を算出し、算出された階層間接続端子のチップ内の位置情報を上位階層端子位置情報２５として出力する。
【００２６】
続いて、ステップＳ７では、ショート候補箇所抽出部１５が、ステップＳ４で生成した階層間接続箇所レイアウト情報２４の階層間接続点の位置と、ステップＳ６で生成した上位階層端子位置情報２５の階層間接続端子の位置との差分情報を抽出する。そして、ステップＳ８において、ショート候補箇所抽出部１５は、差分情報に基づき、上位階層回路における階層間接続端子の位置と不一致な階層間接続点をショート候補箇所として抽出する。また、ステップＳ８において、ショート候補箇所抽出部１５は、ショート候補箇所を記述したショート候補箇所情報２６を記憶装置２０に格納する。そして、ステップＳ８の処理の終了におうじて実施の形態１にかかるレイアウト検証プログラムは、処理を終了する。
【００２７】
上記のような処理により、実施の形態１にかかるレイアウト検証プログラムは、階層構造を有する回路情報に基づき形成される半導体装置における配線短絡箇所を特定することができる。そこで、具体的なレイアウトの概略図に基づきレイアウト検証プログラムの処理についてより具体的に説明する。
【００２８】
まず、図３にレイアウト検証プログラムで処理する半導体装置のレイアウト情報の一例示す。図３に示す例では、半導体装置のチップレイアウトの一部のみを図示したものであり、半導体装置は図示しない他の回路も含む。
【００２９】
図３に示すように、半導体装置は、複数の回路セル（例えば、回路セルＣＥ１〜ＣＥ６）を配置することで機能回路を形成する。回路セルは、下位階層回路に含まれる。また、下位階層回路には、回路セル間を接続する配線を含む。一方、上位階層回路も、回路セル間を接続する配線を含む。また、図３に示す例では、パッドＰＤ１、ＰＤ２を示した。パッドＰＤ１は、外部から電源電圧ＶＤＤが与えられる。パッドＰＤ２は、外部から接地電圧ＧＮＤが与えられる。そして、パッドＰＤ１に与えられた電源電圧ＶＤＤは、上位階層回路に含まれる電源配線ＶＤＤ２を介して階層回路に与えられる。また、パッドＰＤ２に与えられた接地電圧ＧＮＤは、上位階層回路に含まれる接地配線ＧＮＤ３〜ＧＮＤ６を介して下位階層回路に与えられる。
【００３０】
ここで、図３に示したレイアウト情報に含まれる下位階層回路のみのレイアウトを示す概略図を図４に示す。図４に示すように、下位階層回路には、回路セルＣＥ１〜ＣＥ６と、接地配線ＧＮＤ１、ＧＮＤ２、電源配線ＶＤＤ１が含まれる。接地配線ＧＮＤ１は、回路セルＣＥ１〜ＣＥ３に含まれるＮＭＯＳトランジスタのソースを接続する。また、接地配線ＧＮＤ２は、回路セルＣＥ４〜ＣＥ６に含まれるＮＭＯＳトランジスタのソースを接続する。電源配線ＶＤＤ１は、回路セルＣＥ１〜ＣＥ６に含まれるＰＭＯＳトランジスタのソースを接続する。このように、下位階層回路には、複数の回路セルと、下位階層回路に含まれる回路セル間を接続する配線と、が含まれる。
【００３１】
続いて、図３に示したレイアウト情報に含まれる上位階層回路のみのレイアウトを示す概略図を図５に示す。図５に示すように、上位階層回路には、回路セル間を接続する配線のうち、下位階層回路に含まれる回路セルを他の下位階層回路又は上位階層回路と接続するための配線（例えば、引き出し配線）が含まれる。図５に示す例では、回路セルＣＥ１〜ＣＥ６の入力端子を図示していない他の回路セルに接続する配線として配線ＩＮ１〜ＩＮ６を示し、回路セルＣＥ１〜ＣＥ６の出力端子を図示していない他の回路セルに接続する配線として配線ＯＵＴ１〜ＯＵＴ６を示した。また、図５に示す例では、下位階層回路の接地配線ＧＮＤ１、ＧＮＤ２に接地電圧ＧＮＤを与える接地配線ＧＮＤ３〜ＧＮＤ６を示した。さらに、図５に示す例では、下位階層回路の電源配線ＶＤＤ１に電源電圧ＶＤＤを与える電源配線ＶＤＤ２を示した。また、図５に示す例では、電源配線ＶＤＤ１と接地配線ＧＮＤ４とがノードＰ１において短絡している。実施の形態１にかかるレイアウト検証プログラムでは、このノードＰ１を特定することができる。
【００３２】
次いで、図２のステップＳ２のＬＶＳ実行ステップにおいて検出されるショート配線を説明するための図を図６に示す。図６に示す例は、図３で示したレイアウト例に対してＬＶＳ実行ステップを実施したものである。図３で示したレイアウト例では、接地配線ＧＮＤ４と電源配線ＶＤＤ１とがノードＰ１において短絡している。そのため、図６に示すように、ＬＶＳ実行ステップでは、下位階層回路の接地配線ＧＮＤ１、ＧＮＤ２及び電源配線ＶＤＤ１を介して電源電圧ＶＤＤが与えられるパッドＰＤ１と、接地電圧ＧＮＤが与えられるパッドＰＤ２とに接続される配線が短絡配線として検出される。このように各階層の回路を合成することで生じる短絡は、下位階層回路と上位階層回路とを別々に検証しただけでは検出できず、レイアウトの不具合として生じうるものである。
【００３３】
次いで、図２のステップＳ４において行われる階層間接続点抽出ステップについて説明する。そこで、図７に実施の形態１にかかるレイアウト検証プログラムにおいて抽出される階層間接続点を説明するための図を示す。図７に示すように、階層間接続点は、上位階層回路と下位階層回路とを接続する接続点である。そして、階層間接続点抽出部１３は、当該接続点を階層間接続点として抽出する。
【００３４】
階層間接続点抽出部１３は、回路セルＣＥ１〜ＣＥ６の入力端子と上位階層回路の配線との接続点を階層間接続点ＣＰ１ｉ〜ＣＰ６ｉとして抽出し、回路セルＣＥ１〜ＣＥ６の出力端子と上位階層回路の配線との接続点を階層間接続点ＣＰ１ｏ〜ＣＰ６ｏとして抽出する。階層間接続点抽出部１３、接地配線ＧＮＤ１と接地配線ＧＮＤ３との接続点を階層間接続点ＣＰ４として抽出し、接地配線ＧＮＤ１と接地配線ＧＮＤ４との接続点を階層間接続点ＣＰ３として抽出し、接地配線ＧＮＤ１と接地配線ＧＮＤ５との接続点を階層間接続点ＣＰ２として抽出し、接地配線ＧＮＤ１と接地配線ＧＮＤ６との接続点を階層間接続点ＣＰ１として抽出する。階層間接続点抽出部１３は、接地配線ＧＮＤ２と接地配線ＧＮＤ３との接続点を階層間接続点ＣＰ８として抽出し、接地配線ＧＮＤ２と接地配線ＧＮＤ４との接続点を階層間接続点ＣＰ７として抽出し、接地配線ＧＮＤ２と接地配線ＧＮＤ５との接続点を階層間接続点ＣＰ６として抽出し、接地配線ＧＮＤ２と接地配線ＧＮＤ６との接続点を階層間接続点ＣＰ５として抽出する。階層間接続点抽出部１３は、電源配線ＶＤＤ１と電源配線ＶＤＤ２との接続点を階層間接続点ＣＰ１１〜ＣＰ１３として抽出し、電源配線ＶＤＤ１と接地配線ＧＮＤ４との接続点を階層間接続点ＣＰ０として抽出する。なお、階層間接続点抽出部１３が抽出した階層間接続点は、チップ内の位置を示す座標情報により定義される情報であって、階層間接続箇所レイアウト情報２４には階層間接続点の座標情報が記述される。
【００３５】
次いで、図２のステップＳ５において上位階層端子位置抽出部１４が読み込む下位階層回路の端子情報２３について説明する。図８に、実施の形態１にかかるレイアウト検証プログラムにおいて読み込まれる下位階層回路の端子情報を説明するための図を示す。図８に示すように、下位階層回路の端子情報２３は、下位階層回路において上位階層回路と接続される箇所に階層間接続端子ＣＴ１〜ＣＴ８、ＣＴ１１〜ＣＴ１３、ＣＴ１ｉ〜ＣＴ６ｉ、ＣＴ１ｏ〜ＣＴ６ｏが定義される。
【００３６】
より具体的には、階層間接続端子ＣＴ１〜ＣＴ４は、接地配線ＧＮＤ１上に定義される。階層間接続端子ＣＴ５〜ＣＴ８は、接地配線ＧＮＤ２上に定義される。階層間接続端子ＣＴ１１〜ＣＴ１３は、電源配線ＶＤＤ１上に定義される。階層間接続端子ＣＴ１ｉ〜ＣＴ６ｉは、回路セルの入力端子上に定義される。階層間接続端子ＣＴ１ｏ〜ＣＴ６ｏは、回路セルの出力端子上に定義される。下位階層回路の端子情報２３は、階層間接続端子の下位階層回路内における位置を示す座標情報を階層間接続端子の情報として有する。
【００３７】
次いで、図２のステップＳ６において上位階層端子位置抽出部１４が抽出する上位階層端子位置情報２５について説明する。図９に上位階層端子位置抽出部１４において抽出される上位階層端子位置情報２５を説明するための図を示す。
【００３８】
図９に示すように、上位階層端子位置抽出部１４は、レイアウト情報から検証対象となる下位階層回路を選択し、選択した下位階層回路に対応する階層間接続端子の座標情報を下位階層回路の端子情報２３から読み出す。そして、上位階層端子位置抽出部１４は、読み出した階層間接続端子のチップ内の位置に基づき読み出した階層間接続端子にチップ内の位置を示す座標情報を与える。図９に示す例は、下位階層回路の端子情報２３から読み出した階層間接続端子をチップ上に配置したものである。上位階層端子位置抽出部１４は、図９に示した階層間接続端子の位置を示す座標情報を上位階層端子位置情報２５として出力する。
【００３９】
次いで、図２のステップＳ７、Ｓ８においてショート候補箇所抽出部１５が抽出するショート候補箇所について説明する。図１０に、ショート候補箇所抽出部１５が抽出したショート候補箇所を説明するための図を示す。ショート候補箇所抽出部１５は、階層間接続箇所レイアウト情報２４及び上位階層端子位置情報２５を読み込むことで、図７で示した階層間接続点のチップ内の座標情報と、図９で示した階層間接続端子のチップ内の座標情報と、を得る。そして、ショート候補箇所抽出部１５は、２つの座標情報を比較して、差分情報を得る。図７に示した階層間接続箇所レイアウト情報２４と、図９で示した上位階層端子位置情報２５では、図１０に示すように、階層間接続点ＣＰ０が座標が不一致な箇所となる。そのため、ショート候補箇所抽出部１５は、階層間接続点ＣＰ０をショート候補箇所として抽出し、階層間接続点ＣＰ０の座標情報をショート候補箇所情報２６として出力する。
【００４０】
上記説明より、実施の形態１にかかるレイアウト検証プログラムによれば、実際のレイアウト情報から抽出した階層間接続点の座標情報と、論理的に決められる階層間接続端子の位置と、の差分情報に基づきショート候補箇所を抽出することができる。このショート候補箇所は、接続点の情報であるため、ショート候補箇所の座標から、短絡が発生している可能性のある配線上の特定の位置を知ることができる。
【００４１】
一方、特許文献１に記載の技術では、検出される短絡発生箇所は、パッド間又はノード間、もしくは、パッドとノード間を接続する配線単位でしか検出することができず、検出した配線のいずれの場所で短絡が発生しているかは検出できない。このような場合、電源配線のようなチップ全体にわたって配置される配線において短絡が発生した場合、短絡箇所の特定に時間がかかりレイアウト検証時間が長くなる問題が発生する。
【００４２】
しかし、実施の形態１にかかるレイアウト検証プログラムにより、抽出されたショート候補箇所を参照することで、電源配線のようなチップ全体にわたって配置される配線であっても、配線のどの箇所で短絡が発生しているかを特定することができる。また、短絡が発生している配線の短絡発生箇所を特定できることで短絡発生箇所の探索時間を短縮して、レイアウト検証時間を短縮することができる。
【００４３】
また、実施の形態１にかかるレイアウト検証プログラムでは、実際のレイアウト情報から抽出した階層間接続点の座標情報と、論理的に決められる階層間接続端子の位置と、の差分情報に基づきショート候補箇所を抽出する。そのため、実際のレイアウトにおいて下位階層回路の端子情報２３において規定された階層間接続端子とは異なる階層間接続点を検出することができる。このような階層間接続点を検出することで、当該階層間接続点において短絡が生じていない場合においても、レイアウト上の不具合を検証することができる。
【００４４】
なお、上記説明では、レイアウト検証プログラムの動作として実施の形態の説明を行ったが、レイアウト検証プログラムによる動作と同じ動作を行うレイアウト検証装置であっても、上記効果を得ることができる。また、レイアウト検証プログラムによる動作に対応する手順を適用したレイアウト検証方法を演算器等に応じて実施することでも上記効果をえることができる。
【００４５】
実施の形態２
実施の形態２では、実施の形態１にかかるレイアウト検証プログラムにより抽出されたショート候補箇所をグラフィカルに表示するための構成について説明する。そこで、実施の形態２にかかるレイアウト検証装置２のブロック図を図１１に示す。このレイアウト検証装置２も、実施の形態１と同様に、実施の形態２にかかるレイアウト検証プログラムを演算装置で実行することで実現されるものである。なお、実施の形態２において、実施の形態１と同様の構成要素については、同じ符号を付して説明を省略する。
【００４６】
図１１に示すように、実施の形態２にかかるレイアウト検証装置２は、演算装置３０と、記憶装置４０と、を有する。演算装置３０は、実施の形態１にかかる演算装置１０のＬＶＳ実行部１１をＬＶＳ実行部３１に置き換え、短絡検出処理部１２を短絡検出処理部３２に置き換えたものである。また、短絡検出処理部３２は、実施の形態１にかかる短絡検出処理部１２にショート情報統合部３３を追加したものである。記憶装置４０は、実施の形態１にかかる記憶装置２０にさらにショート配線レイアウト情報４１、ショート配線テキスト情報４２、ショート候補領域情報４３を格納したものである。
【００４７】
ＬＶＳ実行部３１は、ＬＶＳ実行ステップを実施した結果としてショート配線レイアウト情報４１及びショート配線テキスト情報４２を出力する機能をＬＶＳ実行部１１に追加したものである。ショート配線レイアウト情報４１は、ネットリスト情報２１に定義された配線のうち短絡が発生している短絡配線の位置情報を含む配線レイアウト情報である。また、ショート配線テキスト情報４２は、短絡配線の配線名情報である。より具体的には、ショート配線テキスト情報４２は、短絡している２つの配線の配線名を含む情報である。
【００４８】
また、ショート情報統合部３３は、ショート候補箇所情報２６と、配線レイアウト情報（例えば、ショート配線レイアウト情報４１）と、配線名情報（例えば、ショート配線テキスト情報４２）と、を合成してショート候補領域情報４３を生成する。このショート候補領域情報４３は、図形情報として表示されるレイアウト上において短絡箇所を特定する表示するための情報であって、例えば、配線上の短絡候補箇所に短絡した配線の配線名を表示するための情報を含む。
【００４９】
続いて、実施の形態２にかかるレイアウト検証プログラムの動作手順について説明する。そこで、図１２に実施の形態２にかかるレイアウト検証プログラムの動作手順を示すフローチャートを示す。図１２に示すように、実施の形態２にかかるレイアウト検証プログラムでは、ステップＳ１１、Ｓ１２の処理が追加される。ステップＳ１１は、ステップＳ３とステップＳ４の処理の間で行われる。また、ステップＳ１２は、ステップＳ１２は、ステップＳ８の後に行われる。
【００５０】
ステップＳ１１では、ＬＶＳ実行部３１が短絡の発生しているショート配線と、短絡が発生している配線名を示すショートテキストと、をネットリスト情報２１及びレイアウト情報２２から抽出する。そして、ＬＶＳ実行部３１は抽出したショート配線を含むショート配線レイアウト情報４１と、ショートテキストを含むショート配線テキスト情報４２と、を出力する。
【００５１】
また、ステップＳ１２では、ショート情報統合部３３が、ショート候補箇所情報２６と、ショート配線レイアウト情報４１と、ショート配線テキスト情報４２と、を合成してショート候補領域情報４３を生成する。より具体的には、ショート情報統合部３３は、短絡が発生しているショート配線上にショート候補箇所を表示し、ショート候補箇所にショートテキストを付した情報をショート候補領域情報４３として生成する。そして、実施の形態２にかかるレイアウト検証プログラムは、ステップＳ１２の処理の終了に応じて処理を終了する。
【００５２】
ここで、実施の形態２にかかるレイアウト検証プログラムにおいて抽出されるショート候補領域情報４３を説明するための図を図１３に示す。図１３に示す例は、図１０に示した例と同じレイアウト検証結果を示すものである。図１３に示すように、実施の形態２にかかるショート候補領域情報４３によれば、ショート候補箇所がレイアウト図形上に表示され、かつ、いずれの配線の間で短絡が発生しているかがテキスト情報として表示される。
【００５３】
上記説明より、実施の形態２にかかるレイアウト検証プログラムによれば、実施の形態１にかかるレイアウト検証プログラムと同じ手順で検出されたショート候補箇所を、レイアウト図形上で確認することができる。このように、ショート候補箇所をレイアウト図形上で確認することで、レイアウト検証プログラムの利用者が容易にショート候補箇所を確認し、ショート候補箇所の良否判断を容易に行うことができる。
【００５４】
なお、上記実施の形態で説明したレイアウト検証プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory）を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００５５】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
【符号の説明】
【００５６】
１、２  レイアウト検証装置
１０、３０  演算装置
１１、３１  ＬＶＳ実行部
１２、３２  短絡検出処理部
１３  階層間接続点抽出部
１４  上位階層端子位置抽出部
１５  ショート候補箇所抽出部
２０、４０  記憶装置
２１  ネットリスト情報
２２  レイアウト情報
２３  下位階層回路の端子情報
２４  階層間接続箇所レイアウト情報
２５  上位階層端子位置情報
２６  ショート候補箇所情報
３３  ショート情報統合部
４１  ショート配線レイアウト情報
４２  ショート配線テキスト情報
４３  ショート候補領域情報
ＣＴ１〜ＣＴ８、ＣＴ１１〜ＣＴ１３  階層間接続端子
ＣＴ１ｉ〜ＣＴ６ｉ、ＣＴ１ｏ〜ＣＴ６ｏ  階層間接続端子
ＣＰ０〜ＣＰ８、ＣＰ１１〜ＣＰ１３  階層間接続点
ＣＰ１ｉ〜ＣＰ６ｉ、ＣＰ１ｏ〜ＣＰ６ｏ  階層間接続点
ＶＤＤ１、ＶＤＤ２  電源配線
ＧＮＤ１〜ＧＮＤ６  接地配線
ＰＤ１、ＰＤ２  パッド
ＣＥ１〜ＣＥ６  回路セル
ＩＮ１〜ＩＮ６  配線
ＯＵＴ１〜ＯＵＴ６  配線
ＣＲ  検証結果信号
【図１】
2013200710.tif 000003
【図２】
2013200710.tif 000004
【図３】
2013200710.tif 000005
【図４】
2013200710.tif 000006
【図５】
2013200710.tif 000007
【図６】
2013200710.tif 000008
【図７】
2013200710.tif 000009
【図８】
2013200710.tif 000010
【図９】
2013200710.tif 000011
【図１０】
2013200710.tif 000012
【図１１】
2013200710.tif 000013
【図１２】
2013200710.tif 000014
【図１３】
2013200710.tif 000015