(57)【要約】【課題】回路図面の編集作業などを行うことなく、回路検証用のネットリストを容易且つ確実に生成できる新規なネットリスト作成方法およびネットリスト作成装置の提供。【解決手段】コンピュータの主記憶装置130に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、前記コンピュータの入力装置110によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報であるジャンプマーカーＪＭを設けた後、前記コンピュータの演算装置120によって、前記第１階層と第２階層の内部ネットにそれぞれ暫定的なポートを生成すると共に、当該ポートを介して前記ジャンプマーカーＪＭ間の内部ネットを仮想配線で暫定的に繋いでネットリストを作成する。【選択図】  図１
2011014085.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、
前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報であるジャンプマーカーを設けた後、
前記コンピュータの演算装置によって、前記第１階層と第２階層の内部ネットにそれぞれ暫定的なポートを生成すると共に、当該ポートを介して前記ジャンプマーカー間の内部ネットを仮想配線で暫定的に繋いでネットリストを作成することを特徴とするネットリスト作成方法。
【請求項２】
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、
前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設ける第１ステップと、
前記コンピュータの演算装置によって、前記第１階層の内部ネットの仮想的なポート化を行って第１ポートを生成すると共に、前記第１階層のひとつ上の中間階層に、前記第１ポートと同じ名前のネットを作成して当該ネットと前記第１ポートとを接続する第２ステップと、
前記コンピュータの演算装置によって、前記中間階層上の階層が前記第２階層であるならば、前記第１ポートに接続するネットを、前記第２階層の内部ネットと同じ名前にリネームする第３ステップと、を含むことを特徴とするネットリスト作成方法。
【請求項３】
前記第１階層は、トップ階層を最上位の階層としたときに、当該トップ階層の直下に位置する前記第２階層よりも下層であることを特徴とする請求項２に記載のネットリスト作成方法。
【請求項４】
前記第２ステップにおいて、前記第１階層のひとつ上の階層に、前記第１ネットをポート化した第１ポートと同じ名前のネットを作成する際に、前記第１階層のひとつ上の階層に前記第１ポートと同じ名前のネットが既にある場合は、前記第１ポートとは異なる名前のネットを作成することを特徴とする請求項２又は３に記載のネットリスト作成方法。
【請求項５】
前記中間階層のひとつ上の階層が前記第２階層でないならば、前記第２ステップにおける前記ひとつ上の階層が前記第２階層となるまで前記第２ステップを繰り返し行った後、前記第３ステップを行うことを特徴とする請求項２乃至４のいずれかに記載のネットリスト作成方法。
【請求項６】
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、
前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設ける第１ステップと、
前記コンピュータの演算装置によって、前記各内部ネット間の階層パスが共通であるか否かを判断する第２ステップと、
前記第２ステップにおいて共通でないと判断された場合、前記コンピュータの演算装置によって、前記各ジャンプマーカーの前記各階層よりも上層にある階層であって且つ共通の階層を検知する第３ステップと、
前記コンピュータの演算装置によって、前記共通の階層内で存在しない一時的なネット名を設ける第４ステップと、
前記コンピュータの演算装置によって、前記第１又は第２階層から順に、前記各ジャンプマーカーにより指定された前記内部ネットのポート化を行うと共に、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前のネットを作成し、そのネットと前記第１又は第２ポートを接続する第５ステップと、
前記第１又は第２階層のひとつ上の階層が前記共通の階層であるならば、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前で第１又は第２ポートに接続されたネットを、前記一時的ネットと同じ名前にリネームする第６ステップと、を含むことを特徴とするネットリスト作成方法。
【請求項７】
前記第５ステップにおいて、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２ポートと同じ名前のネットを作成する際に、前記第１又は２階層のひとつ上の階層に前記第１又は第２ポートと同じ名前のネットが既にある場合は、前記第１又は第２ポートとは異なる名前のネットを作成することを特徴とする請求項６に記載のネットリスト作成方法。
【請求項８】
前記第１又は第２階層のひとつ上の階層が前記共通の階層でないならば、前記第５ステップにおける前記ひとつ上の階層が前記共通の階層となるまで前記第５ステップを繰り返し行った後、前記第６ステップを行うことを特徴とする請求項６又は７に記載のネットリスト作成方法。
【請求項９】
コンピュータの主記憶手段に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する装置であって、
前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設けるジャンプマーカー設定手段と、
前記第１階層の内部ネットの仮想的なポート化を行って第１ポートを生成すると共に、前記第１階層のひとつ上の中間階層に、前記第１ポートと同じ名前のネットを作成して当該ネットと前記第１ポートとを接続する第１ポート接続手段と、
前記中間階層上の階層が前記第２階層であるならば、前記第１ポートに接続するネットを、前記第２階層の内部ネットと同じ名前にリネームするリネーム手段と、
前記コンピュータの主記憶装置に展開した多階層の電子回路図を表示する表示手段と、
前記多階層の電子回路図データおよびネットリストを保存する外部記憶手段と、を備えることを特徴とするネットリスト作成装置。
【請求項１０】
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する装置であって、
前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設けるジャンプマーカー設定手段と、
前記コンピュータの演算装置によって、前記各内部ネット間の階層パスが共通であるか否かを判断する階層パス判断手段と、
前記第２ステップにおいて共通でないと判断された場合、前記コンピュータの演算装置によって、前記各ジャンプマーカーの前記各階層よりも上層にある階層であって且つ共通の階層を検知する階層検知手段と、
前記共通の階層内で存在しない一時的なネット名を設けるテンポラリーネット設定手段と、
前記第１又は第２階層から順に、前記各ジャンプマーカーにより指定された前記内部ネットのポート化を行うと共に、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前のネットを作成し、そのネットと前記第１又は第２ポートを接続する接続手段と、
前記第１又は第２階層のひとつ上の階層が前記共通の階層であるならば、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前で第１又は第２ポートに接続されたネットを、前記一時的ネットと同じ名前にリネームするリネーム手段と、
前記コンピュータの主記憶装置に展開した多階層の電子回路図を表示する表示手段と、
前記多階層の電子回路図データおよびネットリストを保存する外部記憶手段と、を備えることを特徴とするネットリスト作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）を用いて半導体回路などの電子回路を設計する際にその回路検証のためのネットリストを生成するためのネットリスト作成方法およびネットリスト作成装置に関する。
【背景技術】
【０００２】
係る従来の回路設計では、回路図面を少しずつ変更しながら回路検証をして最終的な電子回路を確定していく（例えば以下の特許文献１など）。そして、階層構造を有する電子回路の回路設計においては、試作として階層の異なる内部ネットを一時的に繋げて回路検証したい場合がある。具体的には、ある階層（例えば下階層）の内部ネットを別の階層（例えば上階層）の内部ネットに直接繋ぎたい場合である。
【０００３】
このような回路検証を行うには、従来回路図面を直接編集し、下階層の内部ネットを外部に出すためポート化すると共に中間階層にも全てポートを介すようにして上階層の内部ネットに接続すれば試作用の回路図面を実現できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−３３５２２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、このようにして編集した回路図面は、あくまでも回路検証中での暫定的な回路図面でしかなく回路検証後には不要となることが多い。また、階層間の内部ネットを繋ぐためだけに中間階層本来の回路図面をわざわざ編集するのは効率的でない。
そこで、本発明はこの課題を解決するために案出されたものであり、その主な目的は、階層の異なるネットを一時的に繋げて回路検証するに際して、中間階層などの回路図面の編集作業などを行うことなく、回路検証用のネットリストを容易且つ確実に生成できる新規なネットリスト作成方法およびネットリスト作成装置を提供するものである。
【課題を解決するための手段】
【０００６】
前記課題を解決するために第１の発明は、
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報であるジャンプマーカーを設けた後、前記コンピュータの演算装置によって、前記第１階層と第２階層の内部ネットにそれぞれ暫定的なポートを生成すると共に、当該ポートを介して前記ジャンプマーカー間の内部ネットを仮想配線で暫定的に繋いでネットリストを作成することを特徴とするネットリスト作成方法である。
【０００７】
また、第２の発明は、
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、
前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設ける第１ステップと、前記コンピュータの演算装置によって、前記第１階層の内部ネットの仮想的なポート化を行って第１ポートを生成すると共に、前記第１階層のひとつ上の中間階層に、前記第１ポートと同じ名前のネットを作成して当該ネットと前記第１ポートとを接続する第２ステップと、前記コンピュータの演算装置によって、前記中間階層上の階層が前記第２階層であるならば、前記第１ポートに接続するネットを、前記第２階層の内部ネットと同じ名前にリネームする第３ステップと、を含むことを特徴とするネットリスト作成方法である。
【０００８】
また、第３の発明は、
第２の発明において、前記第１階層は、表面階層を最上位の階層としたときに、当該表面階層の直下に位置する前記第２階層よりも下層であることを特徴とするネットリスト作成方法である。
また、第４の発明は、
第２又は第３の発明において、前記第２ステップにおいて、前記第１階層のひとつ上の階層に、前記第１ネットをポート化した第１ポートと同じ名前のネットを作成する際に、前記第１階層のひとつ上の階層に前記第１ポートと同じ名前のネットが既にある場合は、前記第１ポートとは異なる名前のネットを作成することを特徴とするネットリスト作成方法である。
また、第５の発明は、
また、第２乃至４のいずれかに記載の発明において、前記中間階層のひとつ上の階層が前記第２階層でないならば、前記第２ステップにおける前記ひとつ上の階層が前記第２階層となるまで前記第２ステップを繰り返し行った後、前記第３ステップを行うことを特徴とするネットリスト作成方法である。
【０００９】
また、第６の発明は、
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する方法であって、
前記コンピュータの入力装置によって、前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設ける第１ステップと、前記コンピュータの演算装置によって、前記各内部ネット間の階層パスが共通であるか否かを判断する第２ステップと、前記第２ステップにおいて共通でないと判断された場合、前記コンピュータの演算装置によって、前記各ジャンプマーカーの前記各階層よりも上層にある階層であって且つ共通の階層を検知する第３ステップと、前記コンピュータの演算装置によって、前記共通の階層内で存在しない一時的なネット名を設ける第４ステップと、前記コンピュータの演算装置によって、前記第１又は第２階層から順に、前記各ジャンプマーカーにより指定された前記内部ネットのポート化を行うと共に、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前のネットを作成し、そのネットと前記第１又は第２ポートを接続する第５ステップと、前記第１又は第２階層のひとつ上の階層が前記共通の階層であるならば、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前で第１又は第２ポートに接続されたネットを、前記一時的ネットと同じ名前にリネームする第６ステップと、を含むことを特徴とするネットリスト作成方法である。
【００１０】
また、第７の発明は、
第６の発明において、前記第５ステップにおいて、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２ポートと同じ名前のネットを作成する際に、前記第１又は２階層のひとつ上の階層に前記第１又は第２ポートと同じ名前のネットが既にある場合は、前記第１又は第２ポートとは異なる名前のネットを作成することを特徴とするネットリスト作成方法である。
また、第８の発明は、
第６又は第７に記載の発明において、前記第１又は第２階層のひとつ上の階層が前記共通の階層でないならば、前記第５ステップにおける前記ひとつ上の階層が前記共通の階層となるまで前記第５ステップを繰り返し行った後、前記第６ステップを行うことを特徴とするネットリスト作成方法である。
【００１１】
また、第９の発明は、
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する装置であって、
前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設けるジャンプマーカー設定手段と、前記第１階層の内部ネットの仮想的なポート化を行って第１ポートを生成すると共に、前記第１階層のひとつ上の中間階層に、前記第１ポートと同じ名前のネットを作成して当該ネットと前記第１ポートとを接続する第１ポート接続手段と、前記中間階層上の階層が前記第２階層であるならば、前記第１ポートに接続するネットを、前記第２階層の内部ネットと同じ名前にリネームするリネーム手段と、前記コンピュータの主記憶装置に展開した多階層の電子回路図を表示する表示手段と、前記多階層の電子回路図データおよびネットリストを保存する外部記憶手段と、を備えることを特徴とするネットリスト作成装置である。
【００１２】
また、第１０の発明は、
コンピュータの主記憶装置に展開した多階層の電子回路図をシミュレーションにより検証するに際し、前記電子回路図を構成する第１階層の内部ネットと、当該第１階層とは異なる少なくともひとつ以上の中間階層を介して位置する第２階層の内部ネットとの暫定的な接続情報であるネットリストを作成する装置であって、
前記第１階層の内部ネットと前記第２階層の内部ネットとにそれぞれ接続先の階層情報を指定したジャンプマーカーを設けるジャンプマーカー設定手段と、前記コンピュータの演算装置によって、前記各内部ネット間の階層パスが共通であるか否かを判断する階層パス判断手段と、前記第２ステップにおいて共通でないと判断された場合、前記コンピュータの演算装置によって、前記各ジャンプマーカーの前記各階層よりも上層にある階層であって且つ共通の階層を検知する階層検知手段と、前記共通の階層内で存在しない一時的なネット名を設けるテンポラリーネット設定手段と、前記第１又は第２階層から順に、前記各ジャンプマーカーにより指定された前記内部ネットのポート化を行うと共に、前記第１又は第２階層のひとつ上の階層に、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前のネットを作成し、そのネットと前記第１又は第２ポートを接続する接続手段と、前記第１又は第２階層のひとつ上の階層が前記共通の階層であるならば、前記第１又は第２階層の内部ネットをポート化した第１又は第２ポートと同じ名前で第１又は第２ポートに接続されたネットを、前記一時的ネットと同じ名前にリネームするリネーム手段と、前記コンピュータの主記憶装置に展開した多階層の電子回路図を表示する表示手段と、前記多階層の電子回路図データおよびネットリストを保存する外部記憶手段と、を備えることを特徴とするネットリスト作成装置である。
【発明の効果】
【００１３】
本発明は、上述したように繋ぎたい上下階層の内部ネットに「ジャンプマーカー」という特殊シンボルを設け、中間階層では回路図面を何も編集することなく、ネットリスト作成時にのみ中間階層を含め暫定ポートを生成し、「ジャンプマーカー」間のネットが仮想配線で暫定的に繋がったネットリストを作成するようにしたものである。
これにより、繋ぎたい内部ネットに「ジャンプマーカー」のペアを設定するだけで、中間階層の回路図面の編集が不要で、且つ、試作用のネットリストを容易且つ確実に生成できるため、回路検証の容易化に寄与できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係る電子回路の階層構造およびその上下階層の内部ネットにそれぞれジャンプマーカーを接続した状態を示す概念図である（階層パスが共通の例）。
【図２】ジャンプマーカー実回路使用例を示す概念図である。
【図３】仮想配線として下階層の内部ネットを上階層にひとつポート化した状態を示す概念図である。
【図４】下階層のジャンプマーカーを上階層に順にポート化して、上階層まで辿り着いた状態を示す概念図である。
【図５】上階層に引き出されたネット名を一致させた状態を示す概念図である。
【図６】ポート化したネット名が重複したときにそのネット名を変更した状態を示す概念図である。
【図７】本発明のネットリスト作成装置を構成するハードウェアの構成図である
【図８】本発明の第２の実施形態に係る電子回路の階層構造およびその上下階層の内部ネットにそれぞれジャンプマーカーを接続した状態を示す概念図である（階層パスが共通でない例）。
【図９】階層パスが共通でない場合に共通階層に一時的にネットを生成し、それに仮想配線した状態を示す概念図である。
【図１０】階層パスが共通の場合（第１の実施形態）のフローチャート図である。
【図１１】階層パスが共通でない場合（第１の実施形態）のフローチャート図である。
【発明を実施するための形態】
【００１５】
次に、本発明の実施の形態を添付図面を参照しながら説明する。
（第１の実施形態）
図１は、本発明に係るネットリスト作成方法の第１の実施形態に係る電子回路の構成例を示したものである。
図示するようにこの電子回路は、最上位のトップ図面を構成する「Ｔｏｐ」の下に「ＩＵＰＰＥＲ」なる上階層が位置すると共に、その「ＩＵＰＰＥＲ」の下に「Ｉ１」、「Ｉ２」、「Ｉ３」、「ＩＬＯＷＥＲ」なる下階層が順に位置した積層階層となっている。これら各階層は、その実体を示すインスタンスとその配線情報である内部ネットとから構成されている。
【００１６】
そして、図示するように本発明は、この上下階層に「ジャンプマーカーＪＭ（ＪＵＭＰＭＡＲＫＥＲ）」という特殊シンボルを接続したことを特徴とするものである。
この「ジャンプマーカーＪＭ」という特殊シンボルは、ネットリスト作成時のみ利用される特殊シンボルである。従来「マーカー」と呼ばれるシンボルがあるが、これは同一階層内の同一ネットを配線無しで接続するという意味で用いられる。
これに対し、本発明でいう「ジャンプマーカーＪＭ」は、異種階層の内部ネットを繋ぐために用いられるもので、前提としてポートに繋げることはできない。
そして、この「ジャンプマーカーＪＭ」には、そのペアを識別する「インデックスＩＮＤＥＸ」と、異種階層の検索を容易にするためにペアの相手先のネット名を示す「ジャンプネットＪＵＭＰＮＥＴ」という情報を有する。
【００１７】
ここで図１を参考にしてこの「ジャンプマーカーＪＭ」の入力設定方法を説明する。なお、以後インスタンスとネットを区別し易くするために、ネットは＜＞で囲うこととする。また、これは内部ネット、つまりポートとは異なり外部とは接続されない回路モジュール内部の配線を示す。上階層「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」と、下階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」を繋ぐことを想定してみる。
【００１８】
これらの意味は、ＵＰＰＥＲＮＥＴ（アッパーネット）、ＬＯＷＥＲＮＥＴ（ロアーネット）がそれぞれ上下階層の内部ネットを指し、トップ図面（Ｔｏｐ）の下のインスタンスＩＵＰＰＥＲに内部ネットＵＰＰＥＲＮＥＴがある。また、トップ図面の下のインスタンスＩＵＰＰＥＲの下にインスタンスＩ２があり、その下にインスタンスＩ３があり、その下のインスタンスＩＬＯＷＥＲに内部ネットＬＯＷＥＲＮＥＴがあることを示している。
【００１９】
そして、それぞれの内部ネットに「ジャンプマーカーＪＭ」を接続し、インデックス情報として、例えば「Ａ」を付ける。これだけで回路図入力は完了である。
このとき「ジャンプマーカーＪＭ」のインデックス情報「Ａ」はペアで指定されるため、相手先の「ジャンプネット」は自動的に設定される。上階層「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」の「ジャンプネット」には、下階層の内部ネットである「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」が、逆に下階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」の「ジャンプネットＪＵＭＰＮＥＴ」には、上階層「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」が設定される。
【００２０】
図２は、インスタンスＩＵＰＰＥＲおよびＩＬＯＷＥＲの実回路例を示したものである。
図示するように、この例では下階層のインスタンスＩＬＯＷＥＲの内部ネット＜ＬＯＷＥＲＮＥＴ＞を「ジャンプマーカーＪＭ」により仮想的なポートとして引き出し、上階層のインスタンスＩＵＰＰＥＲの内部ネット＜ＵＰＰＥＲＮＥＴ＞に仮想的に繋げている。
そして、この「ジャンプマーカーＪＭ」の「ジャンプネットＪＵＭＰＮＥＴ」情報から、異種階層を跨ぐネットを容易に検索することができる。
【００２１】
図１に示すように、上階層「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」を検索すると、「ジャンプネットＪＵＭＰＮＥＴ」＝「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」が設定されており、階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ」に自動でジャンプし＜ＬＯＷＥＲＮＥＴ＞を、例えばコンピュータのモニター（表示装置）に表示された回路図にハイライト表示する。逆に、下階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」を検索すると、「ジャンプネットＪＵＭＰＮＥＴ」＝「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」が設定されており、階層「／ＩＵＰＰＥＲ」に自動でジャンプして＜ＵＰＰＥＲＮＥＴ＞を、同じく例えばコンピュータのモニター（表示装置）に表示された回路図にハイライト表示する。
【００２２】
このように片方の「ジャンプマーカーＪＭ」の「ジャンプネットＪＵＭＰＮＥＴ」の設定により、もう一方の「ジャンプマーカーＪＭ」の情報が判るので、少なくとも片方だけの設定で事足りるが、本検索の容易さ、つまりどちらの階層からでも容易にジャンプさせるため、双方の「ジャンプマーカーＪＭ」の設定を同時にしている。
次に、このようにして上下階層に「ジャンプマーカーＪＭ」という特殊シンボルを接続したならば、回路図面上では接続されていない上下階層の「ジャンプマーカーＪＭ」をネットリスト上で接続されるよう取り扱う。
【００２３】
そのためには、先ず図３に示すように下階層の「ジャンプマーカーＪＭ」を上階層に順にポート化する。すなわち、図示するように下階層の「ジャンプマーカーＪＭ」を開始点とし、階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ」の「ジャンプマーカーＪＭ」の内部ネット＜ＬＯＷＥＲＮＥＴ＞を仮想的にポート化して、上階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３」に引き出す。
【００２４】
ここで図中［ＬＯＷＥＲＮＥＴ］という標記は、前述した＜ＬＯＷＥＲＮＥＴ＞が内部ネットを示すのに対し、［ＬＯＷＥＲＮＥＴ］は、上位階層に配線されるポートを示したものである。そして、図３上の点線は、回路図面には存在しないがネットリスト上に存在する仮想ポート（縦線）および仮想ネット（横線）という取扱いを示す。引き出したときのネット名は“取り敢えず”同一名「ＬＯＷＥＲＮＥＴ」とする。（これに関しては詳しく後述する）
【００２５】
次に、このようにしてその「ジャンプマーカーＪＭ」の内部ネット＜ＬＯＷＥＲＮＥＴ＞を仮想的にポート化して、上階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３」に引き出したなら、図４に示すようにこの工程をその「ジャンプネットＪＵＭＰＮＥＴ」指定の上階層まで繰り返す。
すなわち、この「ジャンプマーカーＪＭ」の「ジャンプネットＪＵＭＰＮＥＴ」指定は「／ＩＵＰＰＥＲ／＜ＵＰＰＥＲＮＥＴ＞」なので、図４に示すように順に階層「／ＩＵＰＰＥＲ」まで上記の工程を繰り返す。
図４によれば、階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ」の内部ネット＜ＬＯＷＥＲＮＥＴ＞が各階層で仮想的にポート化されて階層「／ＩＵＰＰＥＲ」まで引き出されているのが判る。
【００２６】
次に、このようにして内部ネット＜ＬＯＷＥＲＮＥＴ＞が上階層「／ＩＵＰＰＥＲ」まで引き出されたならば、図５に示すように上階層「／ＩＵＰＰＥＲ」まで引き出されたネット名を一致させる。
すなわち、下階層から引き出された＜ＬＯＷＥＲＮＥＴ＞を、「ジャンプネットＪＵＭＰＮＥＴ」指定された上階層のネット名＜ＵＰＰＥＲＮＥＴ＞に変更する。図５によれば、階層「／ＩＵＰＰＥＲ／Ｉ２」の＜ＬＯＷＥＲＮＥＴ＞が階層「／ＩＵＰＰＥＲ」の＜ＵＰＰＥＲＮＥＴ＞に接続されたことが判る。
【００２７】
これら一連の処理の流れを示したのが図１０のフローチャートである。
先ず、最初のステップＳ１００において、異種階層の繋ぎたい内部ネットに「ジャンプマーカーＪＭ」を設定し、それぞれの「ジャンプネットＪＵＭＰＮＥＴ」に互いのネット名が階層込みで指定される。
次にステップＳ１０２に移行し、その繋ぎたい内部ネットの異種階層の階層パスが共通か否かを判断する。本実施の形態では、図１に示すように階層パスが共通している（Ｙｅｓ）のでそのままステップＳ１０４に移行する。
【００２８】
ステップＳ１０４では、図３および図４に示したように下層階から順に「ジャンプマーカーＪＭ」指定の内部ネットのポート化を行うと共に、その上層階にはそのポート名と同一のネット名として引き出す。
次にステップＳ１０６に移行し、上階層に同一（重複）ネット名が存在するか否かを判断し、重複するネット名が存在すると判断したとき（Ｙｅｓ）は、そのまま次のステップＳ１０８に移行し、反対に重複するネット名が存在しないと判断したとき（Ｎｏ）は、その次のステップＳ１１０までジャンプする。
本実施の形態では、重複するネット名が存在しないが、重複するネット名が存在すると判断したとき（Ｙｅｓ）は、そのまま次のステップＳ１０８に移行し、重複するネット名を変更する。
【００２９】
すなわち、前記下階層から引き出したときのネット名は“取り敢えず”同一名「ＬＯＷＥＲＮＥＴ」としたが、ポート化したネット名が上階層で既に存在している可能性がある。図１を例にすると、階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３」にＬＯＷＥＲＮＥＴが存在する場合である。“取り敢えず”同一名としてはネット名の重複という不具合が生じる可能性があるので、「ジャンプネットＪＵＭＰＮＥＴ」指定された上階層のひとつ下の階層まで全て、ポート化したネット名の重複チェックをし、重複した場合、存在しない名前に適当に変更する。
【００３０】
ここで“適当に”とは、図６を例に示すと、ＬＯＷＥＲＮＥＴが重複するとき、ＬＯＷＥＲＮＥＴ１、ＬＯＷＥＲＮＥＴ２…と数字のｐｒｅｆｉｘ（接尾語）をインクリメントしたネット名で存在チェックをし、重複しないネット名に適当にアサインするという意味である。ネット名が変わった場合、その上階層にポート化する際は当然変更後のネット名となる。互いの「ジャンプマーカーＪＭ」間の中間階層のポート名・ネット名はあくまでも一時的なものであり、これらの名前に特別に意味はなく、重複しないことが重要である。
【００３１】
ステップＳ１１０では、このようにしてポート化した階層が上階層の「ジャンプマーカーＪＭ」のひとつ下の階層か否かを判断する。そして、ひとつ下の階層でないと判断したとき（Ｎｏ）は、ステップＳ１０４に戻って同様の処理を繰り返すが、ひとつ下の階層であると判断したとき（Ｙｅｓ）は、最後のステップＳ１１２に移行して図５に示したように引き出したネット名を上階層の「ジャンプマーカーＪＭ」指定の内部ネット名にリネームして処理を終了する。
【００３２】
このように本発明は繋ぎたい上下階層の内部ネットに「ジャンプマーカーＪＭ」という特殊シンボルを設け、中間階層では回路図面を何も編集することなく、ネットリスト作成時にのみ中間階層を含め暫定ポートを自動生成し、「ジャンプマーカーＪＭ」間のネットが階層間で暫定的に繋がったネットリストを作成するようにしたものである。
これにより、繋ぎたい内部ネットに「ジャンプマーカーＪＭ」のペアを設定するだけで、中間階層の回路図面の編集が不要で、且つ、試作用のネットリストを容易且つ確実に生成できるため、回路検証の容易化が為される。
【００３３】
なお、これらの一連の処理は、図７に示したようなハードウェア構成をしたコンピュータシステムを利用したネットリスト作成装置１００によって行われる。
すなわち、このネットリスト作成装置１００は、キーボードやマウスなどの入力装置１１０と、ＣＰＵやＭＰＵなどからなる演算装置１２０と、ＤＲＡＭなどからなる主記憶装置１３０と、液晶ディスプレイやＣＲＴなどからなる表示装置１４０と、ＨＤＤや半導体メモリなどからなる書き換え可能な外部記憶装置１５０とから主に構成されている。
【００３４】
そして、入力装置１１０からの指令に応じて演算装置１２０が外部記憶装置１５０に格納された回路図ファイルから所定の回路図データを主記憶装置１３０に展開すると共にその回路図を視認可能に表示装置１４０に表示する。その後、この演算装置１２０が入力装置１１０からの指令に応じて前述した「ジャンプマーカーＪＭ」を回路図中の所定の階層に設置したならば、その回路図を解析して前述したような処理を実行してネットリストを作成する。その後、自動的あるいは入力装置１１０からの指令に応じてそのネットリストを外部記憶装置１５０に格納したり、引き続きそのネットリストを用いて所望のシミュレーションなどを実行することになる。
【００３５】
（第２の実施形態）
次に、本発明に係るネットリスト作成方法の第２の実施形態を説明する。
前記第１の実施形態は、図１に示したように上下階層の「ジャンプマーカーＪＭ」が同一の階層パス内にある場合のネットリスト作成アルゴリズムを示したものであるが、本実施の形態は、図８に示すように上下階層の「ジャンプマーカーＪＭ」が同一の階層パス内にない場合のネットリスト作成アルゴリズムに関するものである。
すなわち、同一の階層パス内とは、図１を例にとると、下階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ」が上階層「／ＩＵＰＰＥＲ」の下層に存在する場合のことである。この同一の階層パス内のネットリスト作成アルゴリズムを一般的に応用することができる。つまり、どの階層に「ジャンプマーカーＪＭ」を設定してもネットリスト作成時に仮想的に繋がるということを意味する。例えば、隣のインスタンス同士の内部ネットを繋ぐことが可能となる。
【００３６】
図８に示すように下階層の「ジャンプマーカーＪＭ」は図１と同様に階層「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ」にあるが、上階層の「ジャンプマーカーＪＭ」は階層「／ＩＵＰＰＥＲ／Ｉ１」にある場合は、同一の階層パスではないので、前記第１の実施形態のアルゴリズムのみでは繋ぐことはできない。そこで、このように上下階層の「ジャンプマーカーＪＭ」が同一の階層パス内にない場合でも結果的に２つの「ジャンプマーカーＪＭ」が繋がる応用アルゴリズムを説明する。
【００３７】
図９の例では、一番上の共通の階層は「／ＩＵＰＰＥＲ」である。ここに元々存在しない内部ネット＜ＴＥＭＰＯＲＡＲＹ＿ＮＥＴ＞を設定し、この＜ＴＥＭＰＯＲＡＲＹ＿ＮＥＴ＞に対し、２つのジャンプマーカー「／ＩＵＰＰＥＲ／Ｉ２／Ｉ３／ＩＬＯＷＥＲ／＜ＬＯＷＥＲＮＥＴ＞」「／ＩＵＰＰＥＲ／Ｉ１／＜Ｉ１ＮＥＴ＞」の仮想接続を前記第１実施形態のアルゴリズムを共に適用し行う。これによって、結果的に階層「／ＩＵＰＰＥＲ」の＜ＴＥＭＰＯＲＡＲＹ＿ＮＥＴ＞を介すことで、２つの「ジャンプマーカーＪＭ、ＪＭ」が仮想接続されることになる。
【００３８】
これら一連の処理の流れを示したのが図１１のフローチャートである。
先ず、第１の実施形態と同様に最初のステップＳ１００において、異種階層の繋ぎたい内部ネットに「ジャンプマーカーＪＭ」を設定し、それぞれの「ジャンプネットＪＵＭＰＮＥＴ」に互いのネット名が階層込みで指定される。
次にステップＳ１０２に移行し、その繋ぎたい内部ネットの異種階層の階層パスが共通か否かを判断する。本実施の形態では、図８に示すように階層パスが共通していない（Ｎｏ）のでステップＳ１０３側に移行する。
ステップＳ１０３では、両「ジャンプマーカーＪＭ、ＪＭ」の共通の階層を求めて次のステップＳ１０５に移行する。なお、共通の階層がなければそれはトップ階層を意味する。
【００３９】
ステップＳ１０５では、図９に示すようにその共通の階層内で存在しない一時ネット（テンポラリーネットＴＥＭＰＯＲＡＲＹ＿ＮＥＴ）名を設けて次のステップＳ１０７に移行する。
ステップＳ１０７では、その一時ネット名に対し、図１０のフローに示すように両「ジャンプマーカーＪＭ、ＪＭ」への仮想配線を行って処理を終了する。
このように本実施の形態によれば、上下階層の「ジャンプマーカーＪＭ、ＪＭ」が同一の階層パス内にない場合であっても、共通の階層を介した仮想配線によって暫定的に接続できるため、前記第１の実施の形態と同様に容易且つ確実にネットリストを作成することができる。
【符号の説明】
【００４０】
１００…ネットリスト作成装置
１１０…入力装置
１２０…演算装置
１３０…主記憶装置
１４０…表示装置
１５０…外部記憶装置
ＪＭ…ジャンプマーカー
【図１】
2011014085.tif 000003
【図２】
2011014085.tif 000004
【図３】
2011014085.tif 000005
【図４】
2011014085.tif 000006
【図５】
2011014085.tif 000007
【図６】
2011014085.tif 000008
【図７】
2011014085.tif 000009
【図８】
2011014085.tif 000010
【図９】
2011014085.tif 000011
【図１０】
2011014085.tif 000012
【図１１】
2011014085.tif 000013