(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-08
(54)【発明の名称】製品設計のメタデータ予測
(51)【国際特許分類】
G06F 30/10 20200101AFI20240801BHJP
G06F 30/27 20200101ALI20240801BHJP
G06F 111/04 20200101ALN20240801BHJP
G06F 111/02 20200101ALN20240801BHJP
【FI】
G06F30/10 200
G06F30/27
G06F111:04
G06F111:02
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024509476
(86)(22)【出願日】2021-08-17
(85)【翻訳文提出日】2024-04-16
(86)【国際出願番号】 US2021046248
(87)【国際公開番号】W WO2023022705
(87)【国際公開日】2023-02-23
(81)【指定国・地域】
(71)【出願人】
【識別番号】520161964
【氏名又は名称】シーメンス インダストリー ソフトウェア インコーポレイテッド
(74)【代理人】
【識別番号】110003317
【氏名又は名称】弁理士法人山口・竹本知的財産事務所
(74)【代理人】
【識別番号】100075166
【氏名又は名称】山口 巖
(74)【代理人】
【識別番号】100133167
【氏名又は名称】山本 浩
(74)【代理人】
【識別番号】100169627
【氏名又は名称】竹本 美奈
(72)【発明者】
【氏名】スーター セカンド,ジェラルド ピー.
(72)【発明者】
【氏名】ウェイ,ウェイ
(72)【発明者】
【氏名】ロズバドフスキー,ダリウシュ
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146AA21
5B146BA01
5B146DC03
5B146DC05
(57)【要約】
本願は、電子システムを含む製品の属性を記述する製品モデルを生成するコンピューティグシステムを開示する。コンピューティングシステムは、別の電子システムについて以前に生成された製品モデルに取り込まれていたメタデータで訓練された機械学習アルゴリズムを実行でき、製品モデルに記述された電子システムの属性に基づいて、製品モデルに含まれる電子システムに相関させることの可能な1つ以上のメタデータのセットを決定することができる。メタデータのセットは、電子システムの電気的接続性及びその対応するパラメータ値に関連する製品モデルにおける種々の設計制約に相当し得る。コンピューティングシステムは、メタデータのセットの少なくとも1つを製品モデルに取り込み、電子システムと相関させることができる。
【特許請求の範囲】
【請求項1】
コンピューティングシステムにより、電子システムを含む製品の属性を記述する製品モデルを生成すること、
前記コンピューティングシステムにより、前記製品モデルに記述された前記電子システムの前記属性、及び、別の電子システムを記述している前に生成された製品モデルに取り込まれているメタデータ、に少なくとも部分的に基づいて、前記製品モデルに含まれる前記電子システムに関連付けることのできるメタデータのセットを1つ以上決定すること、
前記コンピューティングシステムにより、前記メタデータのセットの少なくとも1つを前記製品モデルに取り込み、前記電子システムと相関させること、を含む方法。
【請求項2】
前記メタデータのセットは、前記電子システムの電気的接続性に関連した前記製品モデルにおける設計制約に関する値に相当する、請求項1に記載の方法。
【請求項3】
前記メタデータのセットを1つ以上決定することは、前記電子システムの前記属性の1つ以上又は前記設計制約の1つ以上に取り込まれている他の値に少なくとも部分的に基づいて、前記設計制約の1つ以上に関する少なくとも1つの値を予測すること、をさらに含む、請求項2に記載の方法。
【請求項4】
前記メタデータのセットの少なくとも1つを前記製品モデルに取り込むことは、前記設計制約に関する前記予測値の1つのセットを前記製品モデルに自動的に取り込むこと、をさらに含む、請求項3に記載の方法。
【請求項5】
前記メタデータのセットの少なくとも1つを決定することは、前記電子システムの前記属性の少なくとも1つに基づいてどの前記設計制約に前記値を割り当てるか、又は、どの前記設計制約に前記値の1つ以上を既に取り込んであるか、を同定すること、をさらに含む、請求項2に記載の方法。
【請求項6】
前記コンピューティングシステムにより、前記製品モデルに取り込まれた前記メタデータと前記別の電子システムを記述している前記前に生成された製品モデルに取り込まれている前記メタデータとを比較し、値を取り込んだ設計制約における1つ以上の差異、又は、前記設計制約に取り込まれた前記値の間の1つ以上の差異、を同定すること、
前記コンピューティングシステムにより、前記製品モデルに取り込まれた前記メタデータの検証時に、同定された前記差異を利用すること、をさらに含む、請求項1に記載の方法。
【請求項7】
前記製品モデルに含まれる前記電子システムに関連付けることのできる前記メタデータのセットを1つ以上決定することは、前記コンピューティングシステムによって実行される機械学習アルゴリズムによって行われ、この機械学習アルゴリズムは、前記別の電子システムの前記前に生成された製品モデルに取り込まれている前記メタデータで訓練される、請求項1に記載の方法。
【請求項8】
1つ以上の処理デバイスを作動させるように構成された命令を記憶した少なくとも1つのコンピュータ可読メモリデバイスを含む装置であって、
前記命令は、
電子システムを含む製品の属性を記述する製品モデルを生成すること、
前記製品モデルに記述された前記電子システムの前記属性、及び、別の電子システムを記述している前に生成された製品モデルに取り込まれているメタデータ、に少なくとも部分的に基づいて、前記製品モデルに含まれる前記電子システムに関連付けることのできるメタデータのセットを1つ以上決定すること、
前記メタデータのセットの少なくとも1つを前記製品モデルに取り込み、前記電子システムと相関させること、を含む、装置。
【請求項9】
前記メタデータのセットは、前記電子システムの電気的接続性に関連する前記製品モデルにおける設計制約に関する値に相当する、請求項8に記載の装置。
【請求項10】
前記1つ以上の処理デバイスを作動させるように構成された命令は、前記電子システムの前記属性の1つ以上又は前記設計制約の1つ以上に取り込まれている他の値に少なくとも部分的に基づいて、前記設計制約の1つ以上に関する少なくとも1つの値を予測することにより、前記メタデータのセットを1つ以上決定すること、をさらに含む、請求項9に記載の装置。
【請求項11】
前記1つ以上の処理デバイスを作動させるように構成された命令は、前記設計制約に関する前記予測値の1つのセットを前記製品モデルに自動的に取り込むことにより、前記メタデータのセットの少なくとも1つを前記製品モデルに取り込むこと、をさらに含む、請求項10に記載の装置。
【請求項12】
前記1つ以上の処理デバイスを作動させるように構成された命令は、前記電子システムの前記属性の少なくとも1つに基づいてどの前記設計制約に前記値を割り当てるか、又は、どの前記設計制約に前記値の1つ以上を既に取り込んであるか、を同定することにより、前記メタデータのセットの少なくとも1つを決定すること、をさらに含む、請求項9に記載の装置。
【請求項13】
前記1つ以上の処理デバイスを作動させるように構成された命令は、
前記製品モデルに取り込まれた前記メタデータと前記別の電子システムを記述している前記前に生成された製品モデルに取り込まれている前記メタデータとを比較し、値を取り込んだ設計制約における1つ以上の差異、又は、前記設計制約に取り込まれた前記値の間の1つ以上の差異、を同定すること、
前記製品モデルに取り込まれた前記メタデータの検証時に、同定された前記差異を利用すること、をさらに含む、請求項8に記載の装置。
【請求項14】
前記製品モデルに含まれる前記電子システムに関連付けることのできる前記メタデータのセットを1つ以上決定することは、前記1つ以上の処理デバイスによって実行される機械学習アルゴリズムによって行われ、この機械学習アルゴリズムは、前記別の電子システムの前記前に生成された製品モデルに取り込まれている前記メタデータで訓練される、請求項8に記載の装置。
【請求項15】
機械可読命令を記憶するように構成されたメモリデバイスと、
1つ以上の処理デバイスを含むコンピューティングシステムと、を含むシステムであって、
前記1つ以上の処理デバイスは、前記機械可読命令の実行に応じて、
電子システムを含む製品の属性を記述する製品モデルを生成し、
前記製品モデルに記述された前記電子システムの前記属性、及び、別の電子システムを記述している前に生成された製品モデルに取り込まれているメタデータ、に少なくとも部分的に基づいて、前記製品モデルに含まれる前記電子システムに関連付けることのできるメタデータのセットを1つ以上決定し、
前記メタデータのセットの少なくとも1つを前記製品モデルに取り込み、前記電子システムと相関させる、ように構成される、システム。
【請求項16】
前記メタデータのセットは、前記電子システムの電気的接続性に関連する前記製品モデルにおける設計制約に関する値に相当する、請求項15に記載のシステム。
【請求項17】
前記1つ以上の処理デバイスは、前記機械可読命令の実行に応じて、
前記電子システムの前記属性の1つ以上又は前記設計制約の1つ以上に取り込まれている他の値に少なくとも部分的に基づいて、前記設計制約の1つ以上に関する少なくとも1つの値を予測することにより、前記メタデータのセットを1つ以上決定する、ように構成される、請求項16に記載のシステム。
【請求項18】
前記1つ以上の処理デバイスは、前記機械可読命令の実行に応じて、
前記電子システムの前記属性の少なくとも1つに基づいてどの前記設計制約に前記値を割り当てるか、又は、どの前記設計制約に前記値の1つ以上を既に取り込んであるか、を同定することにより、前記メタデータのセットの少なくとも1つを決定する、ように構成される、請求項16に記載のシステム。
【請求項19】
前記1つ以上の処理デバイスは、前記機械可読命令の実行に応じて、
前記製品モデルに取り込まれた前記メタデータと前記別の電子システムを記述している前記前に生成された製品モデルに取り込まれている前記メタデータとを比較し、値を取り込んだ設計制約における1つ以上の差異、又は、前記設計制約に取り込まれた前記値の間の1つ以上の差異、を同定し、
前記製品モデルに取り込まれた前記メタデータの検証時に、同定された前記差異を利用する、ように構成される、請求項15に記載のシステム。
【請求項20】
前記1つ以上の処理デバイスは、前記機械可読命令の実行に応じて、
前記1つ以上の処理デバイスによって実行される機械学習アルゴリズムによって、前記製品モデルに含まれる前記電子システムに関連付けることのできる前記メタデータのセットを1つ以上決定するように構成され、
前記機械学習アルゴリズムは、前記別の電子システムの前記前に生成された製品モデルに取り込まれている前記メタデータで訓練される、請求項15に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、概して、電子設計自動化(EDA)、具体的には、製品設計のメタデータ予測に関連する。
【背景技術】
【0002】
プリント回路基板を有する電子デバイスの開発は、典型的には、設計フローとして知られる多くの工程を伴う。この設計フローは、通常、プリント回路基板で実装される新しい回路の仕様から始まる。新しい回路の仕様は、例えばスケマチックキャプチャツール(回路図エディタ)によって、又は、回路のレジスタ転送レベル(RTL)記述と呼ばれることもある論理回路設計を合成することによって、ネットリストのような回路設計に落とし込むことができる。ネットリストは、電子デジタル交換フォーマット(EDIF)で共通に指定され、回路設計の様々なデバイス又はインスタンス間のネット又は接続性を記述できる。
【0003】
設計フローは、回路設計をシミュレート又はエミュレートし、そのシミュレーション又はエミュレーションの結果が回路設計の期待される出力と一致することを確認するなどして、回路設計の機能性を検証することによって続行される。また、機能性は、回路設計を利用して構築される電子デバイスの作動中に問題となる可能性がある様々な属性について回路設計を静的にチェックすることによって検証することができる。
【0004】
回路設計が機能的に検証されると、設計フローはレイアウトと配線の設計を続ける。これは、プリント回路基板のレイアウト表現への種々のコンポーネント又はパーツの配置と相互接続を含む。この手順は、多様な方法で実施可能であるが、典型的には、レイアウトツールを使用して実施される。レイアウトツールは、プリント回路基板のグラフィカルビューを表示することができ、設計者が、ライブラリからプリント回路基板のレイアウト表示上にパーツをドラッグ又は配置することを可能にする。レイアウトツールは、電子デバイスを検証し、配置されたパーツに対して各種の設計ルールチェックを実行することができ、電子デバイスを有効に構築できることを保証する。
【0005】
プリント回路基板に作られる多くの電子デバイスが製品内に含まれることになるので、プリント回路基板のレイアウトは、製品を設計でき、製造できることを保証するために、制約され得る。設計者は、長さや遅延等の属性を有する製品定義と、例えば、電子デバイス内のコンポーネント間の電気的相互接続性を記述する設計制約と、を作成することができる。通常、設計者は、プリント基板のレイアウト及び検証で使用するために、プリント基板レイアウトツールのスプレッドシートベースのインターフェースに製品定義を手動で入力する。製品定義の作成と設計制約などのメタデータの定義への入力とは、コンポーネントデータシートを手動でレビューし、データシート内の関連情報から設計制約を生成するという、困難で時間がかかり、エラーの発生しやすい作業と言える。これは、通常、プリント基板のレイアウト時に設計欠陥を導入することなく達成するには技術的専門知識に依存することになるからである。
【発明の概要】
【0006】
本願は、電子システムを含む製品の属性を記述する製品モデルを生成するコンピューティングシステムを開示する。このコンピューティングシステムは、別の電子システムについて以前に生成された製品モデルに取り込まれていたメタデータで訓練された機械学習アルゴリズムを実行することができる。この機械学習アルゴリズムは、製品モデルに記述された電子システムの属性に基づいて、製品モデルに含まれる電子システムと相関可能なメタデータのセットを1つ以上決定することができる。メタデータのセットは、電子システムの電気的接続性に関連する製品モデルにおける各種の設計制約とそれらの対応するパラメータ値に対応し得る。本コンピューティングシステムは、メタデータのセットの少なくとも1つを製品モデルに取り込み、電子システムと相関させることができる。実施形態については、以下に詳細に説明する。
【図面の簡単な説明】
【0007】
【
図1】実施形態に係る、製品設計環境を実施するシステム例を示す。
【
図2】実施形態を実施するために使用可能なタイプのコンピュータシステムの一例を示す。
【
図3】実施形態を実施するために使用可能なタイプのコンピュータシステムの一例を示す。
【
図4】実施形態に係る、メタデータ予測を備えた製品設計システムの一例を示す。
【
図5】実施形態に係る、メタデータ予測を利用する製品モデル生成を備えたプリント基板レイアウトツールの一例を示す。
【
図6】実施形態に係る、メタデータ予測を利用する製品モデル生成のフローチャート例を示す。
【発明を実施するための形態】
【0008】
動作環境の例
【0009】
図1は、実施例に係る、製品設計環境を実施する一例のシステム100を示す。
図1を参照すると、システム100は、サーバ側-例えば管理システム110と、クライアント側-例えば設計システム120と、を含み、両者はネットワーク130を介して互いに通信することができる。サーバ側は、サーバシステム111を含むことができ、電子製品又は電気機械製品の設計に使用されるメタデータを保持し、システム100のクライアント側にメタデータ予測を実行する。一実施例において、サーバシステム111は、1つ以上のサーバ112-1~112-N、又は、設計システム120の製品設計環境を通してメタデータ予測を実行することができる他の処理デバイスを含むことができる。
【0010】
クライアント側、例えば設計システム120は、サーバシステム111と直接又はネットワーク130を介して通信することができる複数のクライアントデバイス122-1~122-Mを含み得る。一実施例において、クライアントデバイス122-1~122-Mのそれぞれは、プリント回路基板レイアウトツールなどの少なくとも1つの電子設計自動化ツールを実行することが可能であり、サーバシステム111と通信するための製品設計インターフェース(図示せず)を含むことができる。クライアントデバイス122-1~122-Mは、コンピュータ、ラップトップ、ワークステーション、タブレット、ハンドセット、又は、サーバシステム111と直接又はネットワーク130を介して通信することができる他の処理デバイスである。ネットワーク130は、1つ以上のパケット交換ネットワーク、1つ以上の回線交換ネットワーク、これらの組み合わせ、又は同様のものを含み、これらは、有線、無線、セルラー、又はその他の伝送媒体を通してサーバ側とクライアント側との間で交信を可能にする。
【0011】
実施例によれば、例えばクライアントデバイス122-1~122-Mにおける様々な電子設計又は電気機械設計自動化プロセスの実行、又は、例えばサーバシステム111におけるこれらのプロセスに関するメタデータ予測は、1つ以上のプログラマブルコンピューティングデバイスによって実行されるコンピュータ実行可能ソフトウェア命令を使用して実行することができる。これらの実施例は、ソフトウェア命令を使用して実行することができるので、種々の実施例を採用し得るプログラマブルコンピュータシステムのコンポーネント及び作動(オペレーション)を先に説明する。また、いくつかの電子設計自動化プロセスの複雑性と多くの回路設計のサイズの大きさに鑑みて、種々の電子設計自動化ツールは、複数の処理スレッドを同時に実行することが可能なコンピューティングシステムで動作するように構成されている。
【0012】
プログラマブルコンピュータなどのコンピューティングデバイス201によるソフトウェア命令の実行を通じて、様々な例を実行することができる。したがって、
図2は、コンピューティングデバイス201の一例を例示する。図示のように、コンピューティングデバイス201は、プロセッサユニット205とシステムメモリ207とを有するコンピューティングユニット203を含む。プロセッサユニット205は、ソフトウェア命令を実行する各種タイプのプログラマブル電子デバイスとすることができるが、通常はマイクロプロセッサとされ得る。システムメモリ207は、リードオンリメモリ209とランダムアクセスメモリ211の両方を用いることができる。本分野で通常の知識をもつ者には当然のことであるが、リードオンリメモリ209とランダムアクセスメモリ211の両方とも、プロセッサユニット205により実行されるソフトウェア命令を記憶することができる。
【0013】
プロセッサユニット205とシステムメモリ207は、バス213又はその他の通信構造を介して、直接的又は間接的に、1つ以上の周辺装置215~223に接続される。例えば、プロセッサユニット205又はシステムメモリ207には、磁気式及び/又はリムーバブルのハードディスクドライブ217、リムーバブル光学式ディスクドライブ219、及び/又はフラッシュメモリカードなどの、1つ以上の追加的メモリストレージデバイスを直接的又は間接的に接続することもできる。また、プロセッサユニット205及びシステムメモリ207には、1つ以上の入力デバイス221及び1つ以上の出力デバイス223も直接的又は間接的に接続することができる。入力デバイス221は、例えば、キーボード、ポインティングデバイス(マウス、タッチパッド、スタイラス、トラックボール、ジョイスティックなど)、スキャナ、カメラ、及びマイクロフォンを含むことができる。出力デバイス223は、例えば、モニタディスプレイ、プリンタ、及びスピーカを含むことができる。コンピューティングデバイス201の様々な例で、周辺装置215~223のうちの1つ以上は、コンピューティングユニット203に内蔵されてもよい。あるいは、周辺装置215~223のうちの1つ以上は、コンピューティングユニット203のハウジングの外にあり、例えばユニバーサルシリアルバス(USB)接続を介してバス213に接続してもよい。
【0014】
一実施例で、コンピューティングユニット203は、ネットワークを構成する他のデバイスと通信するために、ネットワークインターフェース215に直接的又は間接的に接続される。ネットワークインターフェース215は、コンピューティングユニット203からのデータ及び制御信号を、TCP(Transmission Control Protocol)/IP(Internet Protocol)などの1つ以上の通信プロトコルに従ってネットワークメッセージに変換することができる。また、ネットワークインターフェース215は、例えば、無線トランシーバ、モデム、又はイーサネット接続(イーサネットは登録商標)を含むネットワークへ接続するために適切な接続エージェント(又はエージェントの組み合わせ)を採用し得る。このようなネットワークインターフェース及びプロトコルは当技術分野では周知であり、従ってここではこれ以上詳細には説明しない。
【0015】
コンピューティングデバイス201は単に一例として示されているのであり、限定する意図がないことはもちろんである。各実施例は、
図2に示されているコンピューティングデバイス201のコンポーネントを含むか、
図2に示されているコンポーネントのサブセットのみを含むか、又は、
図2に図示されていないコンポーネントを含むコンポーネントの代替の組み合わせを含む、1つ以上のコンピューティングデバイスを使用して実施できる。例えば、各実施例で、マルチプロセッサコンピュータ、ネットワークに配置された複数のシングル及び/又はマルチプロセッサコンピュータ、又は、その両方のいくつかの組み合わせ、を使用して実施可能である。
【0016】
一実施例で、プロセッサユニット205は、複数のプロセッサコアを備えたものとすることができる。これについて
図3に、各実施例で使用可能なマルチコアプロセッサユニット205の一例を示す。同図に示されるように、プロセッサユニット205は、複数のプロセッサコア301A及び301Bを含む。プロセッサコア301A及び301Bのそれぞれは、コンピューティングエンジン303A,303Bと、メモリキャッシュ305A,305Bと、を含む。当技術分野で通常の知識をもつ者には知られているように、コンピューティングエンジン303A及び303Bは、ソフトウェア命令をフェッチし、そのフェッチした命令で指定されるアクションを実行するなど、種々のコンピューティング機能を実行するロジックデバイスを含み得る。そのアクションには、例えば、数値の加算、減算、乗算、比較、そして、AND、OR、NOR、XORなどの論理演算の実行、また、データの取得、などがある。そして、コンピューティングエンジン303A及び303Bのそれぞれは、対応するメモリキャッシュ305A,305Bを使用して、それぞれ実行に際しデータ及び/又は命令を迅速に格納及び検索することができる。
【0017】
プロセッサコア301A及び301Bの各々は、インターコネクト(相互接続)307に接続されている。インターコネクト307の具体的構造は、プロセッサユニット205のアーキテクチャに応じて変わり得る。ソニー株式会社、東芝株式会社、及びIBMコーポレーションにより創出されたCellマイクロプロセッサのようないくつかのプロセッサコア301A及び301Bで、インターコネクト307はインターコネクトバスとして実行される。あるいは、カリフォルニア州サニーベールのAdvanced Micro Devicesから入手可能なOpteron(商標)及びAthlon(商標)デュアルコアプロセッサのような他のプロセッサユニット301A及び301Bで、インターコネクト307はシステムリクエストインターフェースデバイスとして実行される。いずれにせよ、プロセッサコア301A及び301Bは、インターコネクト307を介して入出力インターフェース309及びメモリコントローラ310と通信する。入出力インターフェース309は、バス213への通信インターフェースを提供する。同様に、メモリコントローラ310は、システムメモリ207との情報の交換を制御する。一実施例で、プロセッサユニット205は、プロセッサコア301A及び301Bにより共通アクセス可能な高レベルキャッシュメモリなどの追加的コンポーネントを含み得る。なお、
図2及び
図3に示したコンピュータネットワークの説明は、単なる一例であり、代替実施例の使用又は機能性の範囲に関するいかなる制限も示唆する意図はないことは当然である。
【0018】
メタデータ予測による製品設計システム
【0019】
図4は、一実施例に係る、メタデータ予測を利用した製品設計システム400の例を示す。
図4を参照すると、設計システム400は、複数の通信ツール又はシステムによって製品設計の様々な側面を実行することを可能にする分散設計環境とすることができる。例えば、設計システム400は、製品の機械系アセンブリ(組み立て)設計412を開発するための機械系システム410と、製品に含まれ得る電子システムの基板系アセンブリ設計401を開発するための電子系設計システム500と、を含むことができる。
【0020】
機械系アセンブリ設計412は、製品の筐体の設計等、製品に付随する種々の物理的設計要素を記述可能である。一実施例において、筐体の設計は、1つ以上の電子システムと、ディスプレイデバイス、タッチスクリーン、イメージキャプチャデバイス、入出力デバイス、電気ポート、オーディオデバイスなどの物理的インターフェースと、の位置及び寸法を含み得る。また、機械系アセンブリ設計412は、物理的インターフェース及び1つ以上の電子システムの物理的搭載情報を記述し、物理的インターフェース及び1つ以上の電子システムの相互の物理的接続性又は製品の筐体との物理的接続性を記述し、製品内の機械的熱放散デバイスの存在を記述することができる。
【0021】
基板系アセンブリ設計401は、プリント回路基板の表現上に配置され相互接続される各種コンポーネントの観点から製品の電子システムを記述することができる。電子系設計システム500は、コンポーネントライブラリ420からパーツ又はコンポーネントをプリント回路基板の表現上に配置するためにパーツリスト404を利用することによって、回路設計402を基板系アセンブリ設計401中にレイアウトする設計環境を提供することができ、回路設計402は、電子システムを、相互接続されたコンポーネントのセットとして記述することができる。電子系設計システム500は、電子システムのコンポーネント及びこれらコンポーネントの相互接続性を記述することのできるようなネットリストなどの回路設計402を受け取ることができる。一実施例において、ネットリストは、スケマチックキャプチャツールによって、又は、回路のレジスタ転送レベル(RTL)記述とも呼ばれる論理回路設計を合成することによって、生成することができる。ネットリストは、回路設計402内の各種コンポーネント又はインスタンス間のネット又は接続性を記述することができる電子デジタル(データ)交換フォーマット(EDIF)で指定することができる。電子系設計システム500は、回路設計402に記述されているコンポーネントに対応可能な複数のパーツを含むパーツリスト404を受け取ることもできる。
図4は、回路設計402及びパーツリスト404を受け取る電子系設計システム500を示すが、別の実施例では、電子系設計システム500は、回路設計402及び/又はパーツリスト404を内部で生成することができる。
【0022】
機械系システム410及び電子系設計システム500は、互いに設計情報を交換することができる。例えば、電子系設計システム500は、基板系アセンブリ設計401を、機械系システム410又は機械系システム410から直接的に又は間接的にアクセス可能なメモリシステム(図示せず)へ、出力することができる。同様に、機械系システム410は、機械系アセンブリ設計412を、電子系設計システム500又は電子系設計システム500から直接的又は間接的にアクセス可能なメモリシステム(図示せず)へ、出力することができる。機械系システム410及び電子系設計システム500は、例えば、STEP(Standard for the Exchange of Product model data)及び/又はSAT(Standard ACIS Text)ファイルの形式で設計ファイルを交換することにより、設計プロセスの間にいつでも、それぞれの設計を互いに共有することができる。STEPファイルのフォーマットは、一実施例において、(国際標準化機構)ISO10303-21「Industrial automation systems and integration -- Product data representation and exchange -- Part 21: Implementation methods: Clear text encoding of the exchange structure」で定義することができる。
【0023】
電子系設計システム500は、例えば、基板系アセンブリ設計401の生成前に、電子システムの属性を含み得る製品定義情報406を受信することができる。電子系設計システム500は、製品定義情報406に少なくとも部分的に基づいて、電子システムの製品モデルを生成することができる。電子システムの製品モデルには、例えば、製品定義情報406からの電子システムの属性、電子システムにおける電気的接続性を記述できる設計制約、及び、一緒に使用される設計制約の組み合わせに対応する電子システムの特性、を含めることができる。一実施例において、製品モデルにおける設計制約は、機械的制約及び/又は電気的制約に対応し得る。
【0024】
電子系設計システム500は、ディスプレイデバイスによって表示されたときに設計環境へユーザインターフェースを提供して電子系設計システム500が電子システムの製品モデルを提示できるようにするディスプレイ表現403を出力することができる。電子系設計システム500は、ユーザ入力408に応答して、製品モデルに、設計制約、プロパティ、及び対応するパラメータ値を取り込むことができる一方、電子系設計システム500は、設計システム400のメタデータ予測システム430からの、例えば、予測される設計制約、プロパティ、及び/又はパラメータ値を含んでいるメタデータ情報433に少なくとも部分的に基づいて、電子システムの製品モデルを生成することもできる。
【0025】
電子系設計システム500は、一実施例において、開発中の製品モデルの現行バージョン、電子システムの属性、及び/又は機械系アセンブリ設計412を含むことができ、設計制約、特性、パラメータ値などに対応するユーザ入力408を含むことができる製品モデル情報431を、メタデータ予測システム430に伝達する。メタデータ予測システム430は、前に開発された製品モデル及び製品モデル情報431を利用して、電子系設計システム500の1つ以上の設計制約、プロパティ、及びパラメータ値を予測し、製品定義情報406に関連する電子システムの製品モデルに含める。
【0026】
メタデータ予測システム430は、一実施例において、電子デバイス又はシステムの、以前に開発された製品モデルを記憶することができ、製品モデル情報431に基づいてアクセス又は参照することができる。また、メタデータ予測システム430は、前に開発された製品モデルを用いて訓練された機械学習アルゴリズムを実行できる。一実施例において、メタデータ予測システム430は、電子系設計システム500、
図1を参照して上述したサーバシステム111のようなサーバシステム、又は、電子系設計システム500と通信することのできる他のコンピューティングシステムにおいて、実行することもできる。
【0027】
メタデータ予測システム430は、予測された設計制約、プロパティ、及びパラメータ値に基づいてメタデータ情報433を生成することができ、この情報は、電子系設計システム500が電子システムの製品モデルを開発するときに利用することができる。一実施例において、電子系設計システム500は、メタデータ情報433を利用して、1つ以上の設計制約、プロパティ、及び/又はパラメータ値を製品モデルに設定することができる。電子系設計システム500は、ディスプレイ表現403にメタデータ情報433の少なくとも一部を含めることができ、そして、例えば、メタデータ情報433を含むディスプレイ表現403に基づいたユーザ入力408、例えば、指示としての設計制約、プロパティ、及びパラメータ値を受信する。この入力は、電子系設計システム500に、電子システムの製品モデルに対する種々のアップデートを実行させることができる。この対話型開発プロセスは、製品定義情報406に記述された電子システムの最終製品モデル409が生成されるまで、継続することができる。
【0028】
電子系設計システム500は、電子システムの開発、電子システムの検証、及びメタデータ予測システム430のより一層の訓練のために、最終製品モデル409を利用することができる。一実施例において、電子系設計システム500は、電子デバイス又はシステムに関する後の製品モデルの開発に使用するべく、最終製品モデル409をメタデータ予測システム430に提供することができる。例えば、メタデータ予測システム430が機械学習アルゴリズムを含む場合、当該メタデータ予測システム430は、設計制約、プロパティ、及び関連するパラメータ値を利用して、以降の製品モデルの開発に関するメタデータ情報433の予測のために機械学習アルゴリズムを訓練することができる。メタデータ予測を利用した製品モデル生成の実施例について、以下により詳しく説明する。
【0029】
最終製品モデル409が生成された後、電子系設計システム500は、ディスプレイ表現403の別のバージョンを出力することができ、この別のバージョンがディスプレイデバイスに表示されると、設計環境にユーザインターフェースが提供され、電子系設計システム500がユーザ入力408に応答して基板系アセンブリ設計401を生成することが可能になる。ディスプレイ表現403は、この実施例において、基板系アセンブリ設計401の表現を少なくとも1つ含むグラフィカル表示ウィンドウを含むことができ、また、パーツリスト404から基板系アセンブリ設計401の中にパーツ又はコンポーネントを配置できるようにする各種のツール又は埋め込みの機能性を含むことができる。
【0030】
基板系アセンブリ設計401は、最初に、例えば、機械系アセンブリ設計412から収集された機械的制約の1つ以上に対応する寸法を有するブランク(空の)プリント回路基板を表現することができる。電子系設計システム500は、例えば、ディスプレイ表現403に基づいてユーザ入力408を受け取ることができ、この入力は、例えば、基板系アセンブリ設計401のパーツリスト404から選択又は合成されたパーツの配置や配置されたパーツ又は複合パーツの間のルートトレースなど、回路設計402に基づいて基板系アセンブリ設計401のアップデートを電子系設計システム500に実行させることができる。一実施例において、電子系設計システム500は、パーツリスト404からパーツを選ぶユーザの選択に応答して、コンポーネントライブラリ420にアクセスすることができ、基板系アセンブリ設計401の表現の中に配置可能な選択されたパーツに対応するコンポーネントモデルを同定する。
【0031】
電子系設計システム500は、基板系アセンブリ設計401において、例えば、前に開発された製品モデルに基づいて、種々の設計ルールチェックを実行することができ、基板系アセンブリ設計401におけるアップデートが設計ルールのいずれかに違反しているかどうかを判定する。例えば、電子系設計システム500は、プリント回路基板の表現中に配置されたコンポーネントモデルの位置及び特性をレビューすることができ、配置されたコンポーネントモデルが設計ルールに適合するか否かを判断する。電子系設計システム500は、ユーザ入力408に基づいてディスプレイ表現403を更新することができ、例えば、トレースラインの選択された部分又はルートの配置を図示すると共に設計ルールの少なくとも1つに対するその適合性又は欠如を強調表示し、これらはディスプレイデバイスで表示又は提示することができる。この対話型設計プロセスは、回路設計402のレイアウトが完成するまで、したがって、電子系設計システム500が、機械系アセンブリ設計412と調和した基板系アセンブリ設計401を生成するまで、継続することができる。機械系システム410及び電子系設計システム500は、設計プロセスの間にいつでもそれぞれの設計を互いに交換することができるので、他方の設計と矛盾する一方の設計における変化をプロセス中に早期に捉えて修正することができる。
【0032】
図5は、一実施例に係る、メタデータ予測を利用する製品モデル生成を備えた電子系設計システム500の例を示す。
図6は、一実施例に係る、メタデータ予測を利用する製品モデル生成のフローチャートを例示する。
図5及び
図6を参照すると、電子系設計システム500は、モデル開発システム510を含むことができ、
図6のブロック601において、電子システムの属性を有する製品定義504に少なくとも部分的に基づいて、電子システムの製品モデル515を生成することができる。電子システムの製品モデル515は1つ以上の設計制約を含むことができ、これは、電子システムにおける電気的接続性、及び、一緒に使用される設計制約の組み合わせに対応する電子システムのプロパティを記述することができる。一実施例において、製品モデル515における設計制約は、機械的制約及び/又は電気的制約に相当し得る。
【0033】
モデル開発システム510は制約管理システム512を含み、設計制約、プロパティ、及びパラメータ値などのメタデータの製品モデル515への取り込みを円滑に進めることができる。
図6のブロック602において、制約管理システム512は、電子システムの属性を利用することができ、別の電子システムを記述する、以前に生成された製品モデルに基づいて、製品モデル515の予測メタデータ506のセットを決定する。
【0034】
制約管理システム512は、現在開発中の製品モデル515、製品定義504からの電子システムの1つ以上の属性などを含み得る製品モデル情報513を、製品モデル515の予測メタデータ506を生成するメタデータ予測システムへ提供することができる。一実施例において、制約管理システム512は、製品レイヤスタック、電子システムで利用されるコンポーネント、ネットタイプなど、製品中の電子システムの属性を製品定義504から同定することができる。モデル開発システム510は、同定された電子システムの属性に基づいて、製品モデル情報513を生成することができる。以下により詳しく説明するように、製品モデル情報513は、選択された設計制約、選択されたプロパティ、及び、選択された設計制約及び/又はプロパティに関連するパラメータ値などの追加的メタデータ情報も含むことができる。
【0035】
電子系設計システム500は、予測メタデータ506の生成に使用するために、製品モデル情報513をメタデータ予測システムへ送信することができる。一実施例において、メタデータ予測システムは、電子システムの属性及び追加でメタデータを利用して製品モデル515のメタデータを予測することのできる機械学習アルゴリズムとできる。電子系設計システム500は、メタデータ予測システムから予測メタデータ506を受信することができ、この予測メタデータは、製品モデル515の予測設計制約、製品モデル515の予測プロパティ、及び、その設計制約及び/又はプロパティに関する予測パラメータ値を含むことができる。
【0036】
制約管理システム512は、
図6のブロック603において、予測メタデータ506のセットの少なくとも1つからのメタデータを製品モデル515に取り込むことができる。一実施例において、予測メタデータ506の製品モデル515への取り込みは、製品モデル515のメタデータを最初はブランクのままにするか又はメタデータのデフォルトセットを取り込むのとは対照的に、製品モデル515の初期設計制約、プロパティ、及び関連するパラメータ値を設定する技術として、モデル開発システム510によって利用することができる。
【0037】
図6のブロック604において、制約管理システム512は、予測メタデータ506を利用して、製品モデルのメタデータを開発することができる。一実施例において、制約管理システム512は、予測メタデータ506を利用して、製品モデル515に設定する可能な設計制約、製品モデル515に含める設計制約の可能な組み合わせ、及び、設計制約及びプロパティに設定する可能なパラメータ値を同定することができる。
【0038】
制約管理システム512は、製品モデル515のメタデータを開発するために、電子系設計システム500のインターフェースデバイス540と協働して予測メタデータ506を利用することができる。インターフェースデバイス540はディスプレイ表現542を出力することができ、この表現は、ディスプレイデバイスに表示されたときに、製品モデル515にメタデータを入力するためのユーザインターフェースを提供することができる。制約管理システム512は、インターフェースデバイス540に、予測メタデータ506の少なくとも一部をディスプレイ表現542中に表すよう指示し、電子系設計システム500は、ディスプレイ表現542に基づいて、ユーザ入力505を受信することができる。
【0039】
一実施例において、制約管理システム512が、インターフェースデバイス540に、製品モデル515に追加できる可能な設計制約のセットをディスプレイ表現542において表すよう指示するとき、電子系設計システム500は、設計制約の1つ以上の選択に対応するユーザ入力505を受け取ることができる。制約管理システム512は、ユーザ入力505に基づいて、インターフェースデバイス540に、予測メタデータ506に基づいて、選択された設計制約に関連する予測パラメータ値をディスプレイ表現542において表すよう指示することができる。一実施例において、予測メタデータ506の中のパラメータ値は、ドロップダウンメニュー又はリストで提示することができ、このときに、予測パラメータ値が、選択された設計制約に対する正確なパラメータ値である確率の順序で配列され得る。制約管理システム512は、ユーザ入力505に基づいて選択された設計制約を取り込むときに、予測メタデータ506においてパラメータ値を表す方法を決定することができる。
【0040】
ユーザ入力505が、制約管理システム512に、選択された設計制約へのパラメータ値の少なくとも一部の入力を開始するように指示すると、制約管理システム512は、そのユーザ入力505に基づいて、提示するパラメータ値をフィルタリングすることができる。例えば、ユーザ入力505がパラメータ値の最初のディジットが「1」に対応することを指示する場合、制約管理システム512は、「1」で始まらないパラメータ値を除去するために、予測メタデータ506の中の選択された設計制約のパラメータ値をフィルタリングし、そして、フィルタリング後のパラメータ値を予測メタデータ506から再表示することができる。製品モデル515へのメタデータの入力時にユーザ入力505に基づいて予測メタデータ506の表現を調節することによって、制約管理システム512は、製品モデル515に関して受信される入力に基づいて、リアルタイム又はほぼリアルタイムのメタデータ予測を提供することができる。
【0041】
また、制約管理システム512は、ユーザ入力505に基づいて、インターフェースデバイス540に、予測メタデータ506に基づいて、選択された設計制約に関連する他の設計制約又はプロパティを、ディスプレイ表現542において表すよう指示することができる。一実施例において、他の設計制約又はプロパティは、可能なら予測パラメータ値で製品モデル515に当該他の設計制約又はプロパティを追加することによって、可能な設計制約のセットにおいて強調表示するか又は別の方法で知らせることで、表される。ユーザ入力505が、制約管理システム512に、選択された設計制約へのパラメータ値の少なくとも一部の入力を開始するように指示すると、制約管理システム512は、予測メタデータ506をフィルタリングして、入力されたパラメータ値を有する選択された設計制約に関連する他の設計制約又はプロパティを同定することができる。
【0042】
一実施例において、メタデータを入力するプロセスは、メタデータの各選択(制約、プロパティ、パラメータ値のいずれであるか)が、制約管理システム512に、製品モデル515のメタデータの追加予測を提供するよう指示することができるように、反復可能である。例えば、予測パラメータ値を提供した後、ユーザ入力505に基づく設計制約のパラメータ値の選択又は入力が、製品モデル515に追加する別の設計制約又はパラメータ値の同定など、製品モデル515のメタデータに対する別の予測を同定するために、使用され得る。一実施例において、モデル開発システム510は、それぞれの繰り返しの後に、製品モデル情報513をアップデートして、製品モデル515にどのメタデータが取り込まれたか同定し、アップデート後の製品モデル情報513に基づいて、メタデータ予測システムから予測メタデータ506の新しいバージョンを受信することができる。制約管理システム512は、後続の繰り返しに際し、ディスプレイ表現542において予測メタデータ506の新しいバージョンを利用することができる。
【0043】
電子系設計システム500は、モデル検証システム514を含むことができ、
図6のブロック605において、製品モデル515に取り込まれたメタデータを製品モデル515の予測メタデータ506に対して検証することができる。モデル検証システム514は、予測メタデータ506にある予測設計制約、予測プロパティ、及び予測パラメータ値を、製品モデル515に取り込まれたメタデータと比較することができ、この比較で同定された差異をディスプレイ表現542において表すことができる。例えば、モデル検証システム514は、製品モデル515に設定された設計制約で予測メタデータ506に含まれていなかった制約、又は、製品モデル515に設定された設計制約のセットで予測メタデータ506に一緒に含まれていなかった制約、を同定することができる。別の例では、モデル検証システム514は、製品モデル515に設定されなかった設計制約又は設計制約のセットで予測メタデータ506に含まれていた制約を同定することができる。さらに別の例では、モデル検証システム514は、製品モデル515に設定された設計制約又はプロパティのパラメータ値であって、過去の製品モデルで前に利用されていなかった値、又は、予測メタデータ506の値から逸脱していた値、を同定することができる。モデル検証システム514は、インターフェースデバイス540を介して、ディスプレイ表現542においてこれらの設計制約、プロパティ、又はパラメータ値を強調表示したり他の方法で知らせることができ、製品モデル515の追加的編集を可能にする。一実施例において、モデル検証システム514による検証プロセスは、製品モデル515の取り込みが完了した後に実行され、例えば、エラーチェック技術として使用され得る。あるいは、他の実施例では、モデル検証システム514による検証プロセスは、製品モデル515のメタデータの開発中に繰り返し実行され得る。
【0044】
電子系設計システム500は、基板系アセンブリ設計511への回路設計502のレイアウトを制限又は抑止することのできる制約を同定するために製品モデル515を利用するべく制約システム520を含むことができる。上述したように、製品モデル515は、プリント回路基板レイアウトツール400によって開発された基板系アセンブリ設計511を含む製品の設計に関する記述を含むことができる。例えば、製品モデル515は、製品の及び製品に含まれた複数のプリント回路基板を有する電子システムの機械系アセンブリに関する情報を含み得る。一実施例において、制約は、基板系アセンブリ設計511が適合すべきエンクロージャの記述、基板系アセンブリ設計511に従って製造されるプリント回路基板を機械系アセンブリ設計に記述された筐体に装着するために利用される各留め具の位置及び記述、機械系アセンブリ内の放熱デバイス又は物理的インターフェースなどの他の機械的デバイスの存在及び位置、を含むことができる。また、制約は、製品中の他のプリント回路基板に配置されるコンポーネント又はワイヤの記述を含むこともでき、これらは、回路設計502の基板系アセンブリ設計511へのレイアウトを制限又は抑止し得る物理的又は電気的特性をもち得る。
【0045】
制約システム520は、製品モデル515から同定又は解析された電気機械的制約に基づいて、システムレベル設計ルールを同定することができる。システムレベル設計ルールは電気機械的制約に相当するものとでき、したがって、基板系アセンブリ設計511がシステムレベル設計ルールに違反する場合、基板系アセンブリ設計511は、電気機械的制約が導出された又は同定された製品モデル515と矛盾することになる。電子系設計システム500は、制約システム520によって開発されたシステムレベル設計ルールを、設計ルールチェックにおいて電子系設計システム500により利用される設計ルールのマスターセットに組み込むか関連付けることができる。
【0046】
電子系設計システム500は、パーツリスト503からのパーツを有する回路設計502のレイアウトに対応する基板系アセンブリ設計511を生成するために、レイアウトシステム530を含むことができる。ネットリストのような回路設計502は、電子システム中のコンポーネント及びそれらコンポーネントの相互接続性を記述し得る。一実施例において、ネットリストは、スケマチックキャプチャツールによって、又は、回路のレジスタ転送レベル(RTL)記述と呼ばれることもある論理回路設計を合成することによって、生成することができる。ネットリストは、回路設計502中の種々のコンポーネント又はインスタンス間のネット又は接続性を記述することのできる電子デジタル交換フォーマット(EDIF)で指定することができる。パーツリスト503は、回路設計502に記述されているコンポーネントに相当し得る複数のパーツを含み得る。
図5は、回路設計502及びパーツリスト503を受け取る電子系設計システム500を示すが、一実施例では、電子系設計システム500は、回路設計502及び/又はパーツリスト503を内部で生成することができる。
【0047】
インターフェースデバイス540は、ディスプレイデバイスによって表示されたときに設計環境に対するユーザインターフェースを提供することのできる、ディスプレイ表現542の別のバージョンを出力することができる。ディスプレイ表現542は、レイアウトシステム530からの基板系アセンブリ設計511の少なくとも1つのレイアウト表現を含むグラフィカルディスプレイウィンドウを含むことができ、また、パーツリスト503からのパーツ又はコンポーネントを基板系アセンブリ設計511のレイアウト表現の中に配置することを可能にする様々なツール又は埋め込みの機能性を含むことができる。
【0048】
レイアウトシステム530は、例えば、製品モデル515から集められた制約の1つ以上に対応する寸法を有するブランクのプリント回路基板として、最初に基板系アセンブリ設計511を表現することができる。レイアウトシステム530は、例えばディスプレイ表現542に基づいたユーザ入力505を受信することができ、このユーザ入力は、レイアウトシステム530に、基板系アセンブリ設計511に対応してデータモデルの種々のアップデートを実行させることができる。一実施例において、ユーザ入力505は、パーツリスト503から選択されたパーツを同定し、該選択パーツを配置する基板系アセンブリ設計511中の位置を同定することができる。レイアウトシステム530は、基板系アセンブリ設計511中の同定された位置に応じて、データモデル中の選択パーツに対応する少なくとも1つのコンポーネントモデルを配置することができ、回路設計502における接続性に基づいて、配置したパーツ間のルートトレースその他を配置することができる。
【0049】
電子系設計システム500は、設計ルールとの一致に関しレイアウト表現を分析することもできる。例えば、レイアウトシステム530は、基板系アセンブリ設計511において種々の設計ルールチェックを実行して、基板系アセンブリ設計511中のアップデートが設計ルール又は関連付けられた電気機械的制約に違反するかどうかを判定することができる。電気機械的制約は、基板系アセンブリ設計511に関する少なくとも1つの電気的制約又は機械的制約を含み得る。一実施例において、レイアウトシステム530は、基板系アセンブリ設計511のデータモデル中に配置されたコンポーネントモデルの位置及び特性をレビューすることができ、配置されているコンポーネントモデルが設計ルールに適合するかどうかを判定する。レイアウトシステム530は、設計ルールチェックのためにいくつかの粒度の細かいユーザオプションを提供することができ、例えば、設計ルールとの整合性をチェックする基板系アセンブリ設計511の部分についてユーザ制御を可能にする。例えば、レイアウトシステム530は、基板系アセンブリ設計511に記述されたプリント回路基板の各部分を互いに比較することができ、その部分は例えば、プリント回路基板アセンブリ、プリント回路基板上のコンポーネント、プリント回路基板上のボンドワイヤ、基板エッジなどのプリント回路基板自体の特定の部分などである。レイアウトシステム530は、基板系アセンブリ設計511に記述されたプリント回路基板の各部分を、製品の他の部分、例えば製品中の他のプリント回路基板や製品モデル515から導出された又は同定された制約などと比較することもできる。
【0050】
上述のシステム及び装置は、専用のプロセッサシステム、マイクロコントローラ、プログラマブルロジックデバイス、マイクロプロセッサ、又はこれらいずれかの組み合わせを使用して、ここに説明した作動の一部又は全部を実行することができる。上述の作動の中にはソフトウェアで実施することができるものもあり、ハードウェアで実施することができるものもある。ここに説明した作動、プロセス、及び/又は方法のいずれも、装置、デバイス、及び/又はここに説明するか図面に示したものと実質的に類似するシステムにより、実施することができる。
【0051】
上記処理デバイスは、メモリに記憶された命令又は「コード」を実行することができる。メモリは、データも記憶することができる。処理デバイスは、アナログプロセッサ、デジタルプロセッサ、マイクロプロセッサ、マルチコアプロセッサ、プロセッサアレイ、ネットワークプロセッサなどを含むが、これらに限定されない。処理デバイスは、集中制御システム又はシステムマネージャの一部であってもよく、あるいは、無線伝送を介してローカル又はリモートでネットワーク化されたシステムとインターフェースするように構成されたポータブル電子デバイスとして提供されてもよい。
【0052】
プロセッサメモリは、例えば、集積回路マイクロプロセッサなどに備えられたRAMやFLASHメモリなど、処理デバイスに集積化することができる。他の例では、メモリは、外付けディスクドライブ、ストレージアレイ、ポータブルFLASHキーフォブなどの独立したデバイスを含むことができる。メモリと処理デバイスとは、互いに接続されて作動してもよいし、例えばI/Oポートやネットワーク接続などによって相互に通信して作動してもよく、処理デバイスは、メモリに記憶されたファイルを読み出すことができる。関連するメモリは、権限設定に基づいて仕様(ROM)により「読み取り専用」になる場合と、そうでない場合がある。メモリの他の例は、固体半導体デバイスで実施されるWORM、EPROM、EEPROM、FLASHなどを含み得るが、これらに限定されるものではない。他のメモリは、周知の回転ディスクドライブのような可動部品を含み得る。これらのようなメモリはすべて、「機械可読」であってよいし、処理デバイスによって読み取り可能であってよい。
【0053】
作動命令又はコマンドは、記憶されたコンピュータソフトウェア(コンピュータプログラム」又は「コード」としても知られる)の具体的な形式で実施又は具体化することができる。プログラム、コードは、デジタルメモリに記憶され、処理デバイスによって読み出される。「コンピュータ可読記憶媒体」(あるいは「機械可読記憶媒体」)は、前述のタイプのメモリのすべてを含んでよく、さらに、メモリが、本質的にコンピュータプログラム又は他のデータの範疇にあるデジタル情報を少なくとも一時的に記憶することが可能であり、且つ、記憶した情報が適切な処理デバイスによって「読み出し」可能である限り、将来の新しい技術も含み得る。「コンピュータ可読」とは、コンプリートメインフレーム、ミニコンピュータ、デスクトップ、さらにはラップトップコンピュータを意味する「コンピュータ」の慣用的な使用法に限定されるものではない。さらに言えば、「コンピュータ可読」は、プロセッサ、処理デバイス、又はコンピューティングシステムによって可読の記憶媒体を含むことができる。このような媒体は、ローカル及び/又はリモートでコンピュータ又はプロセッサからアクセス可能である利用可能な媒体であり、揮発性及び不揮発性媒体、リムーバブル及び非リムーバブル媒体、又はこれらいずれかの組み合わせを含むことができる。
【0054】
コンピュータ可読記憶媒体に記憶されたプログラムは、コンピュータプログラム製品をなす。例えば、記憶媒体は、コンピュータプログラムを記憶又は転送するための便利な手段として使用することができる。便宜的に、作動(オペレーション)は、様々な相互接続された又は結びつけられた機能ブロック又はダイアグラムとして記述され得る。しかしながら、これら機能ブロック又はダイアグラムは、不明確な境界で単一のロジックデバイス、プログラム、又は作動に等価的に集約される場合がある。
【0055】
結言
【0056】
本願は実施形態を遂行する特定の例を説明しているが、特許請求の範囲に記載された発明の思想及び範囲に入る、上述のシステム及び技術のバリエーション及び入れ替えが数多く存在することは、当分野で通常の知識をもつ者には当然理解される。例えば、電子設計自動化プロセスに言及するために特定の用語が上の説明で使用されているが、本発明の様々な例は、電子設計自動化プロセスのいずれか所望の組み合わせを使用して実施されてもよい、ということは当然である。
【0057】
当分野で通常の知識をもつ者であれば、ここに述べた概念が他の多くの方法で具体的応用に合わせることができることも当然理解される。特に、当分野で通常の知識をもつ者であれば、説明した例が、この開示を読むと明らかになるであろう多くの代替的な実施の一つにすぎないことを当然理解する。
【0058】
本明細書は、いくつかの箇所で「an」、「one」、「another」、又は「some」-example(s)(一例)に言及しているが、これは、必ずしも、そのような参照のそれぞれが同一の例に対するものであるということ、又は、その特徴が1つの例にのみ適用されるということを意味していない。
【国際調査報告】