JP2001325319A - リモートipシミュレーション・モデリング - Google Patents

リモートipシミュレーション・モデリング

Info

Publication number
JP2001325319A
JP2001325319A JP2001084534A JP2001084534A JP2001325319A JP 2001325319 A JP2001325319 A JP 2001325319A JP 2001084534 A JP2001084534 A JP 2001084534A JP 2001084534 A JP2001084534 A JP 2001084534A JP 2001325319 A JP2001325319 A JP 2001325319A
Authority
JP
Japan
Prior art keywords
customer
site
logic
output signal
core logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001084534A
Other languages
English (en)
Inventor
L Ashley Karl
カール・エル・アシュレイ
N Kookarosu Charles
チャールズ・エヌ・コーカロス
A Tetoraato Scott
スコット・エイ・テトラート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2001325319A publication Critical patent/JP2001325319A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/08Intellectual property [IP] blocks or IP cores

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【課題】 小規模な顧客に課せられる計算負荷を低減
し、業者の知的財産権を保護する方法及びシステムを提
供すること。 【解決手段】 回路をシミュレートする方法及び構造
が、顧客サイトから初期メモリ状態と、ホスト・サイト
内のコア論理への初期入力信号とを入力し、広域ネット
ワークを通じて接続されるホスト・サイト及び顧客サイ
トを利用して、回路をシミュレートし(ホスト・サイト
はコア論理を含み、顧客サイトは顧客論理を含み、コア
論理及び顧客論理が回路を形成する)、テスト出力信号
を所望の出力信号と比較し、テスト出力信号が所望の出
力信号と一致するまで、顧客論理を変更する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般に、シミュレー
ト化モデリングに関して、特に、資源を制限された顧客
に追加のシミュレーション能力を提供し、ホスト・シス
テムのコア論理及び他の知的財産権を保護する方法及び
システムに関する。
【0002】
【従来の技術】従来、顧客が業者と特定用途向け集積回
路(ASIC)の制作を契約する場合、業者は顧客にソ
フトウェア・モデリング・プログラムを提供する。通
常、顧客はASICを設計するとき、業者により制作さ
れた多くの既成の集積回路素子を利用する。顧客により
作成される基本論理設計は、業者により制作された基
本"コア"集積回路素子の配置及び接続に関連する。
【0003】顧客に与えられるソフトウェア・モデリン
グ・プログラムは、顧客が様々な配置、論理接続、及び
顧客のニーズに特定の他の回路機構を設計することを可
能にする。ソフトウェア・モデリング・プログラムは、
様々な入力及び初期論理状態が与えられると、顧客にシ
ミュレート化出力を提供する。
【0004】しかしながら、前述のシミュレーション
は、顧客及び業者に問題を提起する。例えば、限られた
資源しか有さない顧客先の会社は、大規模なモデルをシ
ミュレートしようとするとき、しばしば、競争力に劣る
ことを感じざるを得ない。なぜなら、彼らはこうした大
規模なモデルをシミュレートするために必要な、より高
度なコンピュータを持つだけの余裕がないからである。
更に、ASICメーカは、顧客がソフトウェア・モデリ
ング・プログラムの暗号化を見破り、ASIC製品の設
計において使用されるコア要素の論理(例えば"コア論
理")を発見(ことによると逆行分析)されるのではな
いかと懸念を抱く。更に、メーカは時に顧客がソフトウ
ェア・プログラムを用いて設計した回路を、そのメーカ
に制作させることを前提として、モデリング・ソフトウ
ェアを無料で顧客に提供する。
【0005】
【発明が解決しようとする課題】小規模な顧客に課せら
れる計算負荷を低減し、業者の知的財産(IP:intell
ectual property)権を保護する方法及びシステムが待
望される。更に、業者がそのモデリング・プログラムの
利用及び関連処理時間に対して、料金を請求するための
便利な方法が待望される。
【0006】
【課題を解決するための手段】従って、本発明の目的
は、回路をシミュレートする構造及び方法を提供するこ
とであり、これは顧客サイトから初期メモリ状態と、ホ
スト・サイト内のコア論理への初期入力信号とを入力
し、広域ネットワークを通じて接続されるホスト・サイ
ト及び顧客サイトを利用して、回路をシミュレートし
(ホスト・サイトはコア論理を含み、顧客サイトは顧客
論理を含み、コア・ラッパ(すなわちコア・ポートのシ
ェル)及び顧客論理が回路を形成する)、テスト出力信
号を所望の出力信号と比較し、テスト出力信号が所望の
出力信号と一致するまで、顧客論理を変更する。コア論
理は、顧客論理内で使用される設計要素を含む。
【0007】コア論理はホスト・サイトによってのみア
クセス可能で、ホスト・サイトにより保護される。ホス
ト・サイトはコア論理から顧客サイトに素子出力信号を
供給する。顧客サイトは素子出力信号を顧客論理に供給
し、テスト出力信号を生成する。ホスト・サイトはコア
論理の利用を追跡する。コア論理は物理ハードウェア素
子でありうる。
【0008】特定用途向け集積回路(ASIC)をシミ
ュレートするシステムは、インタフェースと、インタフ
ェースに接続されるホスト・サイトと(ホスト・サイト
はコア論理を含む)、インタフェースを通じてホスト・
サイトに接続される顧客サイトとを含み、顧客サイトは
顧客論理を含む。顧客サイトはインタフェースを通じ
て、初期メモリ状態と、コア論理への初期入力信号とを
入力する。ホスト・サイトは素子出力信号を顧客サイト
に返却する。顧客サイトは、素子出力信号を顧客論理を
通じて処理することにより、テスト出力信号を生成し、
テスト出力信号を所望の出力信号と比較し、テスト出力
信号が所望の出力信号と一致するまで、顧客論理を変更
する。コア論理は、顧客論理内で使用される設計要素を
含む。コア論理はホスト・サイトによりアクセス可能な
だけであり、ホスト・サイトにより保護される。ホスト
・サイトはコア論理の利用を追跡する。コア論理は物理
ハードウェア素子でありうる。
【0009】
【発明の実施の形態】本発明は、ASICコア会社が彼
らのIPを保護することを可能にし、限られたコンピュ
ータ資源しか有さない顧客に、彼らが要求するシミュレ
ーション能力を提供するリモートIPシミュレーション
・モデリングを実現する。これにより顧客の競争状態が
強化され、ASICコア会社は付加価値マーケッティン
グ戦略を作成することができる。
【0010】本発明は通信ネットワーク(例えばインタ
ーネット)を利用して、リモート・シミュレーション機
能を可能にすることにより、前述の問題を解決する。こ
れはASIC業者の施設と、顧客のロケーションの両方
において、シミュレーションのための対話式共同処理を
通じて達成される。対話式処理は、ネットワークを介す
るイベント・データの交換を通じて、互いに補完し合う
地理的に別々のシステムの間で、シミュレーション・タ
スクを分割するものである。
【0011】より詳細には、図1に示されるように、本
発明はリモート・シミュレーションを実行する方法及び
システムを含む。図1に示される例は、広域ネットワー
ク(WAN)などのネットワーク16を含み、これは例
えばインターネットであり、顧客システム14とメーカ
のシステムとを接続する。後者は、顧客システムから遠
く離れて存在し得、時にホスト・システムまたはリモー
ト・システム15と呼ばれる。各システム14、15
は、標準のアプリケーション・プログラム・インタフェ
ース(API)を使用するインタフェース・モジュール
11、12を含み、これは本発明をプラットフォーム独
立にする。リモート・システム15は保護コア・モデル
13を含む。
【0012】保護コア・モデル13は、顧客システム1
4が顧客モデル10内において結合または変更する、集
積回路要素のテスト・ベンチを含む。保護コア・モデル
13は集積回路要素のソフトウェア・シミュレーション
を含むか、或いは、実際のハードウェア集積回路要素を
通じて、信号を処理してもよい。顧客モデル10は、コ
ア・モデル13を使用するテスト・ベンチ上の様々な集
積回路要素の集まりまたは変更を用意するために使用さ
れる。従って、顧客モデル10は、コア・モデルのテス
ト・ベンチ上の様々な要素上の初期メモリ状態、及び初
期入出力ピン信号を決定する。保護コア・モデル13は
(実際にまたは論理的にシミュレーションを通じて、)
入力ピン上に提供される信号を処理し、出力ピン上に出
力信号を提供する。この情報は次に顧客モデル10に転
送され、顧客モデル10は情報を組み合わせて、顧客の
設計に特定な様々な論理演算を実行し、最終出力を生成
する。この最終出力が次に所望の出力と比較され、シミ
ュレーションからの出力が所望の出力に一致するまで、
顧客モデル10が変更される。
【0013】従って、本発明は顧客システム14上で
も、リモート・システム15でも、シミュレーションを
排他的に実行するものではない。代わりに、本発明は2
つのシステムの間で、シミュレーション処理を共有す
る。保護コア・モデル13上で実行されるシミュレーシ
ョン処理は、既成の集積回路素子要素を介する処理信号
に制限される。素子要素の設計は、ASICメーカの専
有知的財産である。個々の素子要素は、シミュレーショ
ンのために拡張的な演算能力を要求する。なぜなら、そ
れらは非常に複雑な回路を含み、非常に多数の計算及び
論理的決定を実行するからである。前述のように、保護
コア・モデル13は実際、シミュレーション・テスト・
ベンチを実行する代わりに、ハードウェア要素を通じて
信号を処理しうる。一般に、ハードウェア要素自体は、
同一要素のシミュレーション・プログラムに比較して、
信号をより高速に処理し、より少ないオーバヘッドしか
要求しない。
【0014】顧客モデル10は、コア・モデル13によ
り集積回路要素を通じて処理された信号を受信し、コア
・モデル13から出力された信号に対して、比較的単純
な論理演算を実行する。顧客モデル内で実行される処理
のタイプは、拡張的な計算能力や、大きな資源オーバヘ
ッドを要求しない。
【0015】本発明のリモートIPシミュレーションを
使用する顧客は、ホスト・システムとのアカウントを確
立し、これがセキュリティ及び正当性のためにチェック
される。更に、ホスト・システムは、顧客のIP保護に
関する正当性問題を導入しないように、個々のアカウン
トを別々に維持するように要求される。
【0016】本発明のリモート・シミュレーションは、
対話処理を含む。この方法論では、データがホスト15
と顧客14のサイト間で、リアルタイムに送信される。
今日のシミュレータを使用することにより、ユーザはC
言語インタフェース11、12の機能を用いて、シミュ
レーションの間にホスト・システムに対するポートを開
き、コア・モデル13と顧客論理10との間のインタフ
ェースとして作用させる。これらのインタフェース1
1、12は、顧客論理10とコア論理13との間の直接
通信を可能にし、それらがあたかも一体化されたモデル
のようにする。
【0017】シミュレーションの初期化の間、初期メモ
リ状態(妥当な場合)及び初期信号接続が、受け入れ可
能な所望の信号のリストと一緒に確立される。ホスト・
システム15は、外部的に見える信号及び承認された内
部信号を厳格に包含する単純なテスト・ベンチとして実
行される。ホスト・システム15は、顧客14により供
給された入力信号を用いて、1度に1サイクルを実行
し、顧客14に返送される出力信号を生成する。シミュ
レーションの終わりに、ホスト・システム15は最終メ
モリ状態(妥当な場合)を返却する。
【0018】図1に示されるC言語インタフェース1
1、12プログラムは、図2及び図3に示されるよう
に、データを処理する2つの並列ストリームを有する。
図2において、インタフェース11、12はネットワー
クからイベントを受信し(ステップ21)、出力を常駐
シミュレーション環境(例えば顧客システム14または
リモート・システム15)内に駆動する(ステップ2
2)。図3に示されるように、ネットワークからイベン
トを受信し(ステップ23)、出力24を駆動した後
(ステップ24)、C言語インタフェース・モジュール
は静止状態を待機し(ステップ25)、結果の入力変化
をリモート・システムのためのイベントとして、ネット
ワークに転送する(ステップ26)。図2及び図3に示
されるこれらのプロセスの各々は、システム14、15
のそれぞれにおいて、同時に(例えば並列に)実行され
る。
【0019】次の疑似コードは、シミュレーション・ル
ープの間のインタフェースの機能を示す。
【0020】 ダイアグラム4−例1:初期化セクション procedure host-initialize-connection(){ Open-com-socket(SOC1、ConType、Speed、@Params) print SOC1 "$userid $password\n" $rc=getSOC1 if($rc){ //接続 print SOC1 "Request Model $SIMMODELNAME" print SOC1 ":Additional Parameters @ModelReqs\n" $rc=getSOC1 if($rc){ //許可の付与 open(FILE、init-memory) print SOC1 "!Start Mem init at $Address、$length\n" while(data=<FILE>{ print SOC1 "data\n" } Close(FILE) Open(FILE、init-regs) print SOC1 "!Start Regs Init at $Address、$length\n" while(data=<FILE>{ print SOC1 "data\n" } Close(FILE) Open(FILE、init-rom print SOC1 "!Start Rom init at $Address、$length\n" while(data=<FILE>{ print SOC1 "data\n" } Close(FILE) print SOC1 "!Init Params @ModelInitParams\n" print SOC1 "!!End Init\n" } } if($rc==0){ print "FAILED!!!!"; }else{ print "Connected...Session granted!\n" } return($rc) } //フェンスの反対側 procedure remote-initialize-connection() { AlwaysRun = 1 for(x=0;x<NumSocketConnectionsToServer;x++){ Initialize-com-socket(Socket[x]); Soc-active[x]=0; while AlwaysRun{ for(x=0;x<NumSocketconnectionsToServer;x++){ if(Soc-active[x]==0){ $rc=ping-com-connection(Socket[x]) if($rc){ //要求を獲得!!! $1line=get Socket[x] $isgood=check-valid-login($1line); if(!$isgood){ //無効ユーザの接続 print Socket[x]"$NONVALIDSTRING\n"; }else{ //有効ユーザ $line=get Socket[x] ($stat、@TypesAvail)=check-Model_Availablitiy($1line) if(Sstat){ //使用可能なモデルを獲得... print Socket[x]"$SIMSESSIONGRANTEDSTR\n" while(($line=<Socket[x]>)!=〜/!!End Init/){ //モデル初期化パラメータをアレイに獲得 (@InitParams)= Gather-organize-init-params-onto-stack($1line); } for(z=0;z<MaxModelTypesAvail;z++){ if($TypesAvail[z]){ //このモデル・タイプをチェック... $ModelID=check-out-model[$line、$TypesAvail[z]) break; } } //モデル・セッションを初期化し、実行可能プロセスをforkする... Soc-active[x]=1; //ソケットがアクティブ pid[x]=fork(start-new-model-simulation-loop ($ModelID、@InitParams) }else{ //使用可能なコアが存在しない...セッション終了... print Socket[x]'$TERMINATESTR\n"; } } } )else{ //ソケットがアクティブ...シミュレーション実行の終了をチェック... if(check-is-pid-still-running(pid[x])==0){ //pidの終了、事前にチェック済みのモデル・シミュレーションを終了 Soc-active[x]=0; } } } }//whileループの終了 print"Shutting Down Model Sim Server!!!\n" }//プロシージャの終了
【0021】次の例は、主シミュレーション・ループ・
サイクルの間のインタフェースの疑似コードを含む。こ
れはホスト及びリモート・システムのハンドシェークの
基礎となる考えを示す。
【0022】 ダイアグラム4−例2: //例2:シミュレーション・ループ・インタフェース・コード ENDSIM=FALSE While(!ENDSIM){ //DELTA反復ステップを開始 for(x=0;x<NUMREMOTEMODELS;x++){ MODELTOSIM=@SIMMODELARRAY[X] PUT portcon-host[x]"Query:Inputs$MODELTOSIM\n" wait for @inputs=GET portcon-host[x] PUT portcon-remote[x] 'RunDelta $MODELTOSIM @inputs\n"wait for @outputs=GET portcon-remote[x] PUT portcon-host〜x]"outputs $MODELTOSIM @outputs\n" } for(x=0;x<NUMREMOTEMODELS;x++){ PUT portcon-host[x]"DELTA STEP DONE\n" PUT portcon-remote[x]'DELTA STEP DONE\n" }wait for ENDSIM-sig=GET portcon-MasterHostPort //ENDSIM信号をパス for(x=0;x<NUMREMOTEMODELS;X++){ PUT portcon-remote[x]"ENDSIM signal=$ENDSIM-sig\n" } }
【0023】本発明により、メーカのコア論理設計は、
顧客にとって使用不可となる。なぜなら、シミュレーシ
ョン(または実際の)信号応答だけが、顧客システム1
4に供給されるからである。メーカにコア・シミュレー
ションを管理させることにより、コアへのアクセスが制
御され、利用がメーカにより直接制限されるようにな
る。更に、メーカは、顧客システムが保護コア・モデル
13を通じて信号を処理するとき、CPU利用及び他の
類似のオーバヘッド・アイテムに対して、料金を請求で
きる。
【0024】本発明により、メーカはコアの利用をモニ
タする機会を有し、コアが適切に利用されているか否
か、或いは顧客が専有コア論理をアクセスするセキュリ
ティ対策を無視しようとしているか否かを判断する。更
に、メーカは、集積回路素子要素が如何に利用されてい
るかを観察することにより、集積回路素子要素そのもの
を改善または変更することができる。
【0025】ほとんどのネットワーク分散コンピュータ
技法と異なり、本発明のリモートIPシミュレーション
技法は、シミュレーション処理をネットワークを介して
分割する。本発明により、実際の並列共有実行が達成さ
れる。前述のように、(例えばコア13のための)AS
ICメーカのシミュレーション部分は、インタフェース
11、12により、顧客システム14から保護される。
再度、メーカにコア・シミュレーション13を管理させ
ることは、メーカが顧客の利用を特徴付け、顧客による
コア13の利用にもとづき、顧客にフィードバックを提
供することを可能にする。例えば、本発明では、メーカ
はシミュレーションの間に不正なオペレーション・シー
ケンスが仮定された場合、顧客に通知することができ
る。更に、顧客のコアの利用は、マーケッティング情報
のための、及びコア素子そのものを改善するための基礎
となる。それに対して、単に顧客にシミュレーション・
プログラムを提供する従来システムは、顧客によるコア
・モデルの利用パターンをモニタすることができない。
【0026】本発明の全般的な方法論について述べてき
たが、当業者には明らかなように、本発明は多くの異な
るタイプのシステムにおいても実現され、多くの異なる
方法により実行され得る。例えば、図4に示されるよう
に、本発明に従う情報処理/コンピュータ・システムの
典型的なハードウェア構成は、好適には、少なくとも1
つのプロセッサまたは中央処理ユニット(CPU)30
0を有する。例えば、中央処理ユニット300は、様々
なイメージ/テクスチャ処理ユニット、マッピング・ユ
ニット、重み付けユニット、分類ユニット、クラスタ化
ユニット、フィルタ、加算器、減算器、及び比較器など
を含む。或いは、当業者には明らかなように、本開示に
より、複数の特殊CPU(または他の類似の個々の機能
ユニット)が、同一の処理、マッピング、重み付け、分
類、クラスタ化、フィルタリング、加算、減算、及び比
較などを実行してもよい。
【0027】CPU300はシステム・バス301を介
して、ランダム・アクセス・メモリ(RAM)302、
読出し専用メモリ(ROM)303、入出力(I/O)
アダプタ304(ディスク・ユニット305やテープ・
ドライブ306などの周辺装置をバス301に接続す
る)、通信アダプタ307(情報処理システムをデータ
処理ネットワークに接続する)、ユーザ・インタフェー
ス・アダプタ308(キーボード、マウス、イメージ
ャ、マイクロフォン、スピーカなどの周辺装置309乃
至310、または他のインタフェース装置を、バス30
1に接続する)、プリンタ311、及び表示アダプタ3
12(バス301を表示装置313に接続する)に接続
される。本発明は、記憶装置305に記憶されるコンピ
ュータ・プログラム内に、前述の本発明の方法を含むこ
とにより、図4に示される構造を用いて実現され得る。
こうしたコンピュータ・プログラムは、インタフェース
・ユニット309乃至310を通じて、またはネットワ
ーク接続307を通じて提供されるモデル上で作用す
る。本システムは自動的にモデリング・オペレーション
を実行し、それを表示装置313上に、またはプリンタ
311を通じて出力するか、ネットワーク307へ返送
する。
【0028】従って、前述のように、本発明は処理を顧
客システム14とリモート・システム15との間で分割
する。このことは、メーカのリモート・システム15
が、コア論理素子のモデル化に関連する計算集中型の処
理を実行することを可能にする。同時に、顧客のシステ
ムは、コア論理素子13からの結果を使用して、同時に
顧客の個々のASIC論理設計をモデル化する。本発明
は、メーカがコア論理に関して有する知的財産権を保護
し、メーカがコア論理の顧客の利用を追跡することを可
能にする(それにより、利用に対する請求、論理素子の
改善、及び追加のマーケッティングの実行を可能にす
る)。本発明はまた、顧客にメーカのシステム15の拡
張オーバヘッドを提供し、メーカが潜在的な顧客問題に
関する入力を提供することを可能にする。
【0029】本発明は好適な実施例について述べてきた
が、当業者であれば、本発明がその趣旨及び範囲内にお
いて、変更を伴い実施され得ることが理解できよう。
【0030】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0031】(1)回路をシミュレートするプロセスで
あって、顧客サイトから、初期メモリ状態と、ホスト・
サイト内のコア論理への初期入力信号とを入力するステ
ップと、前記ホスト・サイトがコア論理を含み、前記顧
客サイトが顧客論理を含み、前記コア論理及び前記顧客
論理が前記回路を形成し、広域ネットワークを通じて接
続される前記ホスト・サイト及び前記顧客サイトを利用
して、前記回路をシミュレートするステップと、テスト
出力信号を所望の出力信号と比較するステップと、前記
テスト出力信号が前記所望の出力信号と一致するまで、
前記顧客論理を変更するステップとを含むプロセス。 (2)前記コア論理が前記顧客論理内で使用される設計
要素を含む、前記(1)記載のプロセス。 (3)前記コア論理が前記ホスト・サイトによってのみ
アクセス可能で、前記ホスト・サイトにより保護され
る、前記(1)記載のプロセス。 (4)前記ホスト・サイトが前記コア論理から前記顧客
サイトに素子出力信号を供給する、前記(1)記載のプ
ロセス。 (5)前記顧客サイトが前記素子出力信号を前記顧客論
理に供給し、前記テスト出力信号を生成する、前記
(4)記載のプロセス。 (6)前記ホスト・サイトが前記コア論理の利用を追跡
する、前記(1)記載のプロセス。 (7)前記コア論理が物理ハードウェア素子を含む、前
記(1)記載のプロセス。 (8)特定用途向け集積回路(ASIC)をシミュレー
トするプロセスであって、顧客サイトから、初期メモリ
状態と、ホスト・サイト内のコア論理への初期入力信号
とを入力するステップと、前記ホスト・サイトがコア論
理を含み、前記顧客サイトが顧客論理を含み、前記コア
論理及び前記顧客論理が前記ASICを形成し、広域ネ
ットワークを通じて接続される前記ホスト・サイト及び
前記顧客サイトを利用して、前記ASICをシミュレー
トするステップと、テスト出力信号を所望の出力信号と
比較するステップと、前記テスト出力信号が前記所望の
出力信号と一致するまで、前記顧客論理を変更するステ
ップとを含むプロセス。 (9)前記コア論理が前記顧客論理内で使用される設計
要素を含む、前記(8)記載のプロセス。 (10)前記コア論理が前記ホスト・サイトによっての
みアクセス可能で、前記ホスト・サイトにより保護され
る、前記(8)記載のプロセス。 (11)前記ホスト・サイトが前記コア論理から前記顧
客サイトに素子出力信号を供給する、前記(8)記載の
プロセス。 (12)前記顧客サイトが前記素子出力信号を前記顧客
論理に供給し、前記テスト出力信号を生成する、前記
(11)記載のプロセス。 (13)前記ホスト・サイトが前記コア論理の利用を追
跡する、前記(8)記載のプロセス。 (14)前記コア論理が物理ハードウェア素子を含む、
前記(8)記載のプロセス。 (15)特定用途向け集積回路(ASIC)をシミュレ
ートするシステムであって、インタフェースと、コア論
理を含み、前記インタフェースに接続されるホスト・サ
イトと、顧客論理を含み、前記インタフェースを通じて
前記ホスト・サイトに接続される顧客サイトとを含み、
前記顧客サイトが前記インタフェースを通じて、初期メ
モリ状態と、前記コア論理への初期入力信号とを入力
し、前記ホスト・サイトが素子出力信号を前記顧客サイ
トに返却し、前記顧客サイトが前記素子出力信号を顧客
論理を通じて処理することにより、テスト出力信号を生
成し、前記顧客サイトが前記テスト出力信号を所望の出
力信号と比較し、前記テスト出力信号が前記所望の出力
信号と一致するまで、顧客論理を変更するシステム。 (16)前記コア論理が前記顧客論理内で使用される設
計要素を含む、前記(15)記載のシステム。 (17)前記コア論理が前記ホスト・サイトによっての
みアクセス可能で、前記ホスト・サイトにより保護され
る、前記(15)記載のシステム。 (18)前記ホスト・サイトが前記コア論理の利用を追
跡する、前記(15)記載のシステム。 (19)前記コア論理が物理ハードウェア素子を含む、
前記(15)記載のシステム。 (20)前記インタフェースが前記ホスト・サイト及び
前記顧客サイトを広域ネットワークを通じて接続する、
前記(15)記載のシステム。 (21)回路をシミュレートする方法を実行する命令の
プログラムを有する、マシンにより読取り可能なプログ
ラム記憶装置であって、前記方法が、顧客サイトから、
初期メモリ状態と、ホスト・サイト内のコア論理への初
期入力信号とを入力するステップと、前記ホスト・サイ
トがコア論理を含み、前記顧客サイトが顧客論理を含
み、前記コア論理及び前記顧客論理が前記回路を形成
し、広域ネットワークを通じて接続される前記ホスト・
サイト及び前記顧客サイトを利用して、前記回路をシミ
ュレートするステップと、テスト出力信号を所望の出力
信号と比較するステップと、前記テスト出力信号が前記
所望の出力信号と一致するまで、前記顧客論理を変更す
るステップとを含むプログラム記憶装置。 (22)前記コア論理が前記顧客論理内で使用される設
計要素を含む、前記(21)記載のプログラム記憶装
置。 (23)前記コア論理が前記ホスト・サイトによっての
みアクセス可能で、前記ホスト・サイトにより保護され
る、前記(21)記載のプログラム記憶装置。 (24)前記ホスト・サイトが前記コア論理から前記顧
客サイトに素子出力信号を供給する、前記(21)記載
のプログラム記憶装置。 (25)前記顧客サイトが前記素子出力信号を前記顧客
論理に供給し、前記テスト出力信号を生成する、前記
(21)記載のプログラム記憶装置。 (26)前記ホスト・サイトが前記コア論理の利用を追
跡する、前記(21)記載のプログラム記憶装置。 (27)前記コア論理が物理ハードウェア素子を含む、
前記(21)記載のプログラム記憶装置。
【図面の簡単な説明】
【図1】顧客のシステムをリモート・システムに接続す
るネットワークを示す図である。
【図2】本発明の好適な方法を示すフロー図である。
【図3】本発明の好適な方法を示すフロー図である。
【図4】本発明のハードウェア実施例を示す図である。
【符号の説明】
10 顧客モデル 11、12 C言語インタフェース 13 保護コア・モデル 14 顧客システム 15 リモート・システム 16 ネットワーク 300 CPU
───────────────────────────────────────────────────── フロントページの続き (72)発明者 カール・エル・アシュレイ アメリカ合衆国05452、バーモント州エセ ックス・ジャンクション、バターナット・ コート 6 (72)発明者 チャールズ・エヌ・コーカロス アメリカ合衆国05401、バーモント州バー リントン、ユニット・ナンバー86、オース ティン・ドライブ 161 (72)発明者 スコット・エイ・テトラート アメリカ合衆国05468、バーモント州ジョ ージア、ラウンド・ロード 162

Claims (27)

    【特許請求の範囲】
  1. 【請求項1】回路をシミュレートするプロセスであっ
    て、 顧客サイトから、初期メモリ状態と、ホスト・サイト内
    のコア論理への初期入力信号とを入力するステップと、 前記ホスト・サイトがコア論理を含み、前記顧客サイト
    が顧客論理を含み、前記コア論理及び前記顧客論理が前
    記回路を形成し、広域ネットワークを通じて接続される
    前記ホスト・サイト及び前記顧客サイトを利用して、前
    記回路をシミュレートするステップと、 テスト出力信号を所望の出力信号と比較するステップ
    と、 前記テスト出力信号が前記所望の出力信号と一致するま
    で、前記顧客論理を変更するステップとを含むプロセ
    ス。
  2. 【請求項2】前記コア論理が前記顧客論理内で使用され
    る設計要素を含む、請求項1記載のプロセス。
  3. 【請求項3】前記コア論理が前記ホスト・サイトによっ
    てのみアクセス可能で、前記ホスト・サイトにより保護
    される、請求項1記載のプロセス。
  4. 【請求項4】前記ホスト・サイトが前記コア論理から前
    記顧客サイトに素子出力信号を供給する、請求項1記載
    のプロセス。
  5. 【請求項5】前記顧客サイトが前記素子出力信号を前記
    顧客論理に供給し、前記テスト出力信号を生成する、請
    求項4記載のプロセス。
  6. 【請求項6】前記ホスト・サイトが前記コア論理の利用
    を追跡する、請求項1記載のプロセス。
  7. 【請求項7】前記コア論理が物理ハードウェア素子を含
    む、請求項1記載のプロセス。
  8. 【請求項8】特定用途向け集積回路(ASIC)をシミ
    ュレートするプロセスであって、 顧客サイトから、初期メモリ状態と、ホスト・サイト内
    のコア論理への初期入力信号とを入力するステップと、 前記ホスト・サイトがコア論理を含み、前記顧客サイト
    が顧客論理を含み、前記コア論理及び前記顧客論理が前
    記ASICを形成し、広域ネットワークを通じて接続さ
    れる前記ホスト・サイト及び前記顧客サイトを利用し
    て、前記ASICをシミュレートするステップと、 テスト出力信号を所望の出力信号と比較するステップ
    と、 前記テスト出力信号が前記所望の出力信号と一致するま
    で、前記顧客論理を変更するステップとを含むプロセ
    ス。
  9. 【請求項9】前記コア論理が前記顧客論理内で使用され
    る設計要素を含む、請求項8記載のプロセス。
  10. 【請求項10】前記コア論理が前記ホスト・サイトによ
    ってのみアクセス可能で、前記ホスト・サイトにより保
    護される、請求項8記載のプロセス。
  11. 【請求項11】前記ホスト・サイトが前記コア論理から
    前記顧客サイトに素子出力信号を供給する、請求項8記
    載のプロセス。
  12. 【請求項12】前記顧客サイトが前記素子出力信号を前
    記顧客論理に供給し、前記テスト出力信号を生成する、
    請求項11記載のプロセス。
  13. 【請求項13】前記ホスト・サイトが前記コア論理の利
    用を追跡する、請求項8記載のプロセス。
  14. 【請求項14】前記コア論理が物理ハードウェア素子を
    含む、請求項8記載のプロセス。
  15. 【請求項15】特定用途向け集積回路(ASIC)をシ
    ミュレートするシステムであって、 インタフェースと、 コア論理を含み、前記インタフェースに接続されるホス
    ト・サイトと、 顧客論理を含み、前記インタフェースを通じて前記ホス
    ト・サイトに接続される顧客サイトとを含み、前記顧客
    サイトが前記インタフェースを通じて、初期メモリ状態
    と、 前記コア論理への初期入力信号とを入力し、前記ホスト
    ・サイトが素子出力信号を前記顧客サイトに返却し、 前記顧客サイトが前記素子出力信号を顧客論理を通じて
    処理することにより、テスト出力信号を生成し、 前記顧客サイトが前記テスト出力信号を所望の出力信号
    と比較し、前記テスト出力信号が前記所望の出力信号と
    一致するまで、顧客論理を変更するシステム。
  16. 【請求項16】前記コア論理が前記顧客論理内で使用さ
    れる設計要素を含む、請求項15記載のシステム。
  17. 【請求項17】前記コア論理が前記ホスト・サイトによ
    ってのみアクセス可能で、前記ホスト・サイトにより保
    護される、請求項15記載のシステム。
  18. 【請求項18】前記ホスト・サイトが前記コア論理の利
    用を追跡する、請求項15記載のシステム。
  19. 【請求項19】前記コア論理が物理ハードウェア素子を
    含む、請求項15記載のシステム。
  20. 【請求項20】前記インタフェースが前記ホスト・サイ
    ト及び前記顧客サイトを広域ネットワークを通じて接続
    する、請求項15記載のシステム。
  21. 【請求項21】回路をシミュレートする方法を実行する
    命令のプログラムを有する、マシンにより読取り可能な
    プログラム記憶装置であって、前記方法が、 顧客サイトから、初期メモリ状態と、ホスト・サイト内
    のコア論理への初期入力信号とを入力するステップと、 前記ホスト・サイトがコア論理を含み、前記顧客サイト
    が顧客論理を含み、前記コア論理及び前記顧客論理が前
    記回路を形成し、広域ネットワークを通じて接続される
    前記ホスト・サイト及び前記顧客サイトを利用して、前
    記回路をシミュレートするステップと、 テスト出力信号を所望の出力信号と比較するステップ
    と、 前記テスト出力信号が前記所望の出力信号と一致するま
    で、前記顧客論理を変更するステップとを含むプログラ
    ム記憶装置。
  22. 【請求項22】前記コア論理が前記顧客論理内で使用さ
    れる設計要素を含む、請求項21記載のプログラム記憶
    装置。
  23. 【請求項23】前記コア論理が前記ホスト・サイトによ
    ってのみアクセス可能で、前記ホスト・サイトにより保
    護される、請求項21記載のプログラム記憶装置。
  24. 【請求項24】前記ホスト・サイトが前記コア論理から
    前記顧客サイトに素子出力信号を供給する、請求項21
    記載のプログラム記憶装置。
  25. 【請求項25】前記顧客サイトが前記素子出力信号を前
    記顧客論理に供給し、前記テスト出力信号を生成する、
    請求項21記載のプログラム記憶装置。
  26. 【請求項26】前記ホスト・サイトが前記コア論理の利
    用を追跡する、請求項21記載のプログラム記憶装置。
  27. 【請求項27】前記コア論理が物理ハードウェア素子を
    含む、請求項21記載のプログラム記憶装置。
JP2001084534A 2000-03-30 2001-03-23 リモートipシミュレーション・モデリング Pending JP2001325319A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/539020 2000-03-30
US09/539,020 US6970814B1 (en) 2000-03-30 2000-03-30 Remote IP simulation modeling

Publications (1)

Publication Number Publication Date
JP2001325319A true JP2001325319A (ja) 2001-11-22

Family

ID=24149418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001084534A Pending JP2001325319A (ja) 2000-03-30 2001-03-23 リモートipシミュレーション・モデリング

Country Status (3)

Country Link
US (1) US6970814B1 (ja)
JP (1) JP2001325319A (ja)
TW (1) TW484100B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002952700A0 (en) * 2002-11-18 2002-11-28 Vpisystems Pty Ltd Simulation player
DE60318141T2 (de) * 2003-01-15 2008-12-04 Verigy (Singapore) Pte. Ltd. Modellierung einer elektronischen Vorrichtung
US20040225459A1 (en) * 2003-02-14 2004-11-11 Advantest Corporation Method and structure to develop a test program for semiconductor integrated circuits
US7454323B1 (en) * 2003-08-22 2008-11-18 Altera Corporation Method for creation of secure simulation models
TWI387259B (zh) * 2008-08-01 2013-02-21 Kathy T Lin 監控網站應用程式使用情境安全性之系統、方法、監控程式產品及電腦可讀取記錄媒體

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572437A (en) * 1990-04-06 1996-11-05 Lsi Logic Corporation Method and system for creating and verifying structural logic model of electronic design from behavioral description, including generation of logic and timing models
US5563801A (en) * 1993-10-06 1996-10-08 Nsoft Systems, Inc. Process independent design for gate array devices
FR2714746B1 (fr) 1993-12-31 1996-02-02 Bull Sa Procédé de simulation d'une architecture "serveur" à partir d'une architecture "client".
US6085978A (en) * 1994-08-17 2000-07-11 Metrologic Instruments, Inc. Holographic laser scanners of modular construction and method and apparatus for designing and manufacturing the same
US5732247A (en) 1996-03-22 1998-03-24 Sun Microsystems, Inc Interface for interfacing simulation tests written in a high-level programming language to a simulation model
US6023565A (en) * 1996-03-29 2000-02-08 Xilinx, Inc. Method for configuring circuits over a data communications link
US5696771A (en) * 1996-05-17 1997-12-09 Synopsys, Inc. Method and apparatus for performing partial unscan and near full scan within design for test applications
US6006332A (en) * 1996-10-21 1999-12-21 Case Western Reserve University Rights management system for digital media
US6317860B1 (en) * 1996-10-28 2001-11-13 Altera Corporation Electronic design automation tool for display of design profile
US5878408A (en) * 1996-12-06 1999-03-02 International Business Machines Corporation Data management system and process
US5889954A (en) 1996-12-20 1999-03-30 Ericsson Inc. Network manager providing advanced interconnection capability
US6578188B1 (en) * 1997-09-17 2003-06-10 Numerical Technologies, Inc. Method and apparatus for a network-based mask defect printability analysis system
JPH11224284A (ja) * 1998-02-09 1999-08-17 Fujitsu Ltd 半導体設計資産の流通システム並びに流通装置、および、該流通装置用のソフトウェアを記憶した記憶媒体
US6453419B1 (en) * 1998-03-18 2002-09-17 Secure Computing Corporation System and method for implementing a security policy
AU4219999A (en) * 1998-05-29 1999-12-13 Cadence Design Systems, Inc. Method and apparatus for selecting ip blocks
HUP0301274A2 (en) * 1998-09-30 2003-08-28 Cadence Design Systems Block based design methodology
US6425109B1 (en) * 1999-07-23 2002-07-23 International Business Machines Corporation High level automatic core configuration
US6519756B1 (en) * 1999-10-05 2003-02-11 Sun Microsystems, Inc. Method and apparatus for building an integrated circuit
US6678645B1 (en) * 1999-10-28 2004-01-13 Advantest Corp. Method and apparatus for SoC design validation
US6687710B1 (en) * 1999-12-03 2004-02-03 Synchronicity Software, Inc. Intellectual property library management system
US6246254B1 (en) * 1999-12-06 2001-06-12 International Business Machines Corporation Method and circuit for providing copy protection in an application-specific integrated circuit
US6539536B1 (en) * 2000-02-02 2003-03-25 Synopsys, Inc. Electronic design automation system and methods utilizing groups of multiple cells having loop-back connections for modeling port electrical characteristics
US6594799B1 (en) * 2000-02-28 2003-07-15 Cadence Design Systems, Inc. Method and system for facilitating electronic circuit and chip design using remotely located resources

Also Published As

Publication number Publication date
US6970814B1 (en) 2005-11-29
TW484100B (en) 2002-04-21

Similar Documents

Publication Publication Date Title
US7366650B2 (en) Software and hardware simulation
Chen et al. Platform choices and design demands for IoT platforms: cost, power, and performance tradeoffs
US7069204B1 (en) Method and system for performance level modeling and simulation of electronic systems having both hardware and software elements
US20030004699A1 (en) Method and apparatus for evaluating an integrated circuit model
US7437690B2 (en) Method for predicate-based compositional minimization in a verification environment
US20140143121A1 (en) System and Method for Programming a Trading System
US9703579B2 (en) Debug environment for a multi user hardware assisted verification system
EP3859585B1 (en) Block chain intelligent contract execution method, device and electronic apparatus
US8838430B1 (en) Detection of memory access violation in simulations
Sikka et al. High‐speed and area‐efficient Sobel edge detector on field‐programmable gate array for artificial intelligence and machine learning applications
JP2006343942A (ja) バスシステム設計方法と装置
US6654935B2 (en) IP validation method and IP verified by the IP validation method
JP2001325319A (ja) リモートipシミュレーション・モデリング
US6832358B2 (en) System and method for providing burst licensing in a circuit simulation environment
Li et al. Formal and virtual multi-level design space exploration
US7395196B2 (en) Test-cases for functional verification of system-level interconnect
Han et al. Design of embedded remote software update system based on FPGA+ ARM
Mehta et al. UVM (Universal Verification Methodology)
Amruth et al. Five Stage Pipelined MIPS Processor Verification Scoreboard Module using UVM
Silva et al. A Distributed Functional Verification Environment for the Design of System-on-Chip in Heterogeneous Architectures
Yan et al. SoC Design
US20230087217A1 (en) Computer technology to ensure an electronic design automation (eda) implementation for electronic circuitry is traceable, auditable, and reproducible
US7231616B1 (en) Method and apparatus for accelerating test case development
Stokke An FPGA-Based Hardware Accelerator For The Digital Image Correlation Engine
US12073155B2 (en) Method and system for building hardware images from heterogeneous designs for electronic systems

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040107

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040220

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040319

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060602