JP4217158B2 - 電子回路のライセンスされた引渡しおよび課金をするための管理システム、方法および装置 - Google Patents

電子回路のライセンスされた引渡しおよび課金をするための管理システム、方法および装置 Download PDF

Info

Publication number
JP4217158B2
JP4217158B2 JP2003562837A JP2003562837A JP4217158B2 JP 4217158 B2 JP4217158 B2 JP 4217158B2 JP 2003562837 A JP2003562837 A JP 2003562837A JP 2003562837 A JP2003562837 A JP 2003562837A JP 4217158 B2 JP4217158 B2 JP 4217158B2
Authority
JP
Japan
Prior art keywords
electronic circuit
license
circuit design
data
controller
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.)
Expired - Fee Related
Application number
JP2003562837A
Other languages
English (en)
Other versions
JP2005516288A (ja
Inventor
マイケル リケッチィ,
クリストファー, ジェイ クラーク,
Original Assignee
インテリテック コーポレイション
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 インテリテック コーポレイション filed Critical インテリテック コーポレイション
Publication of JP2005516288A publication Critical patent/JP2005516288A/ja
Application granted granted Critical
Publication of JP4217158B2 publication Critical patent/JP4217158B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Security & Cryptography (AREA)
  • Economics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

[関連出願の相互参照]
この出願は、「電子回路の知的財産権のライセンスされた引渡および課金をするための管理システム、方法および装置」なる名称で2002年1月23日に出願された米国仮特許出願第60/350,885号の優先権を主張する。
[連邦補助研究または開発に関する表明]
適用なし
本発明は、対象電子回路内にプログラム可能に構成または設計された電子回路(以下、「電子回路設計」と略す)をランセンスするためのライセンスシステム及びこのシステムを管理する方法に関し、特に対象電子回路内で使用するためにライセンスされた電子回路設計の引渡に対して安全なライセンスおよび信頼性の高い課金をするためのライセンスシステムおよびこのライセンスシステムを管理する方法に関する。
近年、集積回路(IC)のサイズおよび複雑性が増すにつれて、多くの回路設計者は、既存の所有権を主張できる回路を使用してICを設計することがもはや実用的ではないことを見出している。この結果、回路設計者は、電子製品に対して増大する要望を満たしながら、半導体技術の進歩の有利さを享受できるIC設計への代わりのアプローチを採用した。
回路設計者によって採用された1つのそのようなアプローチは、「設計再使用」として知られている。この場合、1以上の既存IC設計や第三者プロバイダからの機能回路ブロックが再使用されて、新しいIC設計がなされる。このアプローチによって、回路設計者は、新しい半導体技術の利点を享受し、且つ増大した生産性を維持することが可能になる。これは、彼らがIC内の回路の全てを設計する必要がないからである。設計再使用は、製品の小型化およびコスト削減を達成することに、またそれまでは独立した複数のチップ内で実施されていた複数の機能を有する1つの新製品が単一のIC内へ集積化されることを可能にすること、および/または既存の機能と新たに設計された能力とを組み合わせた新製品を作ることに使用できる。
更に、設計再使用は、半導体技術および電子設計自動化(EDA)ツールの進歩と共に、システム・オン・チップ(SoC)の設計を可能にしている。この場合、システム全体が単一のICパッケージ内に適合するように設計および構成され得る。このようなSoC設計は典型的に、高レベルの機能回路ブロックを使用する。これらのブロックは、一般に回路設計者や第三者プロバイダの知的財産権(IP)を備えるため、たびたび「IPコア」と呼ばれる。IPコアを使用するSoC設計のアプローチは、回路設計者が製品開発サイクルを加速することを可能にする。例えば、回路設計者(「IPユーザ」)が第三者プロバイダから1以上のIPコアを得ることがあると、コア回路自身を設計する必要性を未然に回避し、またコア回路の高レベルの集積化を設計開発プロセスで行うことができる。
IPプロバイダがIPユーザに対しIPコアを提供する場合、IPプロバイダは、典型的にはIPユーザに対しICやシステムの開発に回路設計を使用することをライセンスする。IPコアは、「プロジェクト単位」または「使用単位」の2通りの一方でライセンスされる。プロジェクト単位でライセンスされる場合、そのライセンスは一般に、特別なIC、製品またはICや製品のファミリー内での使用に対してIPユーザに許可され、そして一律料金がプロジェクトの期間に対して課せられる。使用単位でライセンスされる場合、料金やロイヤリティは、しばしば設計される製品とは関係なくIPコアの各個別使用に対して課せられ、あるいはプロジェクトの期間に対して課せられる。
使用単位のライセンスは一般に、IPプロバイダおよびIPユーザの双方にとって、プロジェクト単位のライセンスよりも公正かつ予測可能であると見られている。例えば、プロジェクト単位のライセンスに必要な一律料金は通常、IPコアの期待される使用をプロジェクト期間にわたってカバーするには比較的高い。更には、IPプロバイダとIPユーザは通常、期待される製品量と期待される製造期間とを見積もらなければならない。製品が見積もられた製品量に達しない場合、IPユーザは典型的に、IPコアの各使用に対してより多くを支払う。この代わりに、期待される製品量が超過される場合、IPプロバイダは典型的に、より低い料金やロイヤリティで各IPコアをライセンスする。この結果、IPユーザによって支払われる料金と、IPプロバイダによって受け取られるロイヤリティは、これらの当事者が最初に契約したものとは有意に異なってしまうことがある。
これに対し、IPコアが使用単位でライセンスされる場合、IPプロバイダとIPユーザは一般に、最初の見積もりからかなり変化する可能性のある期待される製品量および/または期待される製造期間に頼る必要がない。さらに、使用単位のライセンスは、IPユーザがIPコアのライセンスコストを製品の製造期間にわたらせることを可能にする。しかしながら、使用単位のライセンスが一般にプロジェクト単位のライセンスよりも公正かつ予測可能であるとしても、使用単位のライセンスは典型的にIPプロバイダに対し実際のIPコア使用、即ちICの製造に使用されたIPコアの数に課金する信頼性の高い方法を与えない。例えば、IPプロバイダは、IPユーザが種々の製品で使用されたIPコアの数に正確に課金することを信頼しなければならない。
ソフトウエアのアプリケーションの実行を使用単位で監視するために今日利用可能なソフトウエアのライセンスシステムはあるが、対象電子回路およびデバイス内でライセンスされた電子回路設計の安全な引渡および信頼性の高い課金を管理するためのシステムおよび方法に対する必要性が残る。
[発明の簡単な要約]
本発明に従って、対象電子回路またはデバイス内で使用される電子回路設計をライセンスするライセンスシステムおよびこのライセンスシステムを管理する方法が提供される。このライセンスシステムは、ライセンスされた電子回路設計の安全な引渡および信頼性の高い課金を使用単位で可能とする。
一実施形態では、電子回路設計をライセンスする方法は、電子回路設計が対象電子回路内での使用にライセンスされ得るか否かを、その電子回路設計と関連したデータに含まれるライセンス情報を検証することによって判定する。このライセンス情報は、少なくとも1つの属性を有する。電子回路設計が対象電子回路内での使用にライセンス可能であると判定される場合、1組のベクターのような電子回路設計に関連したデータがライセンスコントローラを介して対象電子回路に適用される。次いで、予め定められたイベントに応答して、対象電子回路内の電子回路設計のライセンスされた使用を示すためにライセンス情報の属性は更新され。例えば、1組のテストベクターがライセンスコントローラを介して対象電子回路に適用される。電子回路設計がテストベクターに関連した1以上のテストに合格したと判定される場合、ライセンス情報の属性は更新される。この代わりに、プログラム可能な構成データ(プログラミングデータまたはプログラムデータともいう)もライセンスコントローラによって対象電子回路に適用される。この場合、対象電子回路内で初めて電子回路設計がプログラム可能に構成されていると判定される場合、ライセンス情報の属性は更新される。
もう1つの実施形態では、ライセンスシステムは、コンピュータ化されたデバイス、例えば少なくとも1つの電子回路設計に関連したデータを記憶するように構成された第1のストレージを含んだコンピュータを備える。この場合、記憶されたデータは、少なくとも1つの属性を有する第1の所定の情報を含んでいる。このライセンスシステムは更に、コンピュータに結合され且つ対象電子回路に結合可能なライセンスコントローラを含んでいる。ライセンスコントローラは、コンピュータと対象電子回路との間でデータを搬送するように構成されている。ライセンスコントローラは、電子回路設計に関連した第2の所定の情報を記憶するための第2のストレージを含んでいる。この場合、第2の所定の情報もまた、少なくとも1つの属性を有する。第1及び第2の所定の情報の属性のそれぞれは、それぞれのライセンスコントローラ用の識別子を含むことがある。
この実施形態では、コンピュータは、ライセンスコントローラのストレージからの第2の所定の情報の属性にアクセスし、第1及び第2の所定の情報のそれぞれのライセンスコントローラ用の識別子を比較し、そしてそれぞれのライセンスコントローラ用の識別子が一致する場合には、電子回路設計に関連したデータをライセンスコントローラを介して対象電子回路に適用するように構成されている。例えば、適用されたデータは、1組のテストベクターなどのテストやプログラム可能な構成データを含む。この場合、ライセンスシステムは、テストベクターや構成データの適用を管理および監視することによって、対象電子回路内の電子回路設計の使用に対して課金する。
ここで開示されるライセンスシステムは、IPコアプロバイダとIPコアユーザが、ライセンスされた電子回路設計の対象電子回路内での使用に対し使用単位で高精度に課金することを可能にし、これにより電子回路設計が全ての関係者に対して公正な手法でライセンスされているという高い保証を与える。
この発明の他の特徴、機能および形態は、後続する発明の詳細な説明から明らかとなる。
この発明は、図面に関連した以下の発明の詳細な説明を参照することによって、より完全に理解される。
[発明の詳細な説明]
2002年1月23日に出願された米国仮特許出願第60/350,885号は、参照によりここに組み入れられる。
図1は、本発明に係る知的財産権ライセンス(IPL)システム100の例証用実施形態を図示している。この例証用実施形態では、ライセンス(IPL)システム100は、コンピュータ102と、このコンピュータ102に接続されたライセンス(IPL)コントローラ(以下、ライセンスコントローラと略す)104とを含んでいる。例えば、コンピュータ102は、汎用コンピュータ(例えば、PCまたはラップトップ)であって、少なくとも1つのプロセッサと、少なくとも1つのメモリ、例えば読み出し専用メモリ(ROM)やランダムアクセスメモ(RAM)と、少なくとも1つのデータストレージ、例えばディスクとを含んでいる。ライセンスコントローラ104は、第1のバス(“Pバス”)107を介してコントローラ104がコンピュータ102と通信可能となるように構成された回路(図示せず)を含んでいる。更にライセンスコントローラ104は、プログラム可能な構成および/またはテストの目的のために、第2のバス108を介して対象電子回路106にアクセスするように構成されている。例えば、第2のバス108は、ライセンスコントローラ104が既知のテストアクセスポート(TAP)プロトコルを使用して対象電子回路106にアクセスできるように構成されたIEEE1149.1バスである。対象電子回路106は、好適なプログラム可能回路、例えばプログラム可能読み出し専用メモリ(PROM)、フラッシュメモリ、フィールドプログラム可能ゲートアレイ(FGA)、あるいは複合プログラム可能ロジックデバイス(CPLD)であってもよいし、好適なノンプログラマブル回路、例えば特定用途IC(ASIC)またはランダムアクセスメモリ(RAM)であってもよいライセンスコントローラ104が対象電子回路106にアクセスして、ライセンスされた電子回路設計を、対象電子回路106内において設計階層構造の選択されたレベルで、プログラム可能に構成またはテストすることがある点に留意されたい。例えば、ライセンスコントローラ104は、ライセンスされた電子回路設計を、対象電子回路106内で埋込型コアまたは埋込型メモリとしてアクセスすることがある。また、この対象電子回路106は、印刷回路基板(PCB)のシステム内でパッケージ化されたICまたはFPGAとして構成されることある。
ここで開示されている実施形態では、ライセンスコントローラ104は、IEEE1149.1および1532規格に従って、対象電子回路106をテストすること、および/または対象電子回路106のインシステム構成(ISC)を行うことに使用される。これらの規格は、IEEE1149.1規格テストアクセスポートおよびバウンダリスキャンアーキテクチャ仕様、並びにプログラム可能デバイスのインシステム構成用IEEE1532規格にそれぞれ記載されている。これらは、参照によってここに組み入れられる。しかしながら、ここで理解されるべき点は、テスト、スキャン、およびISCアクセスの代替の技法およびプロトコルもまた使用できるということである。さらに、コンピュータ102および/またはライセンスコントローラ104は、自動テスト装置(ATE)や他の好ましいテスト/プログラミング資源を備えることもできる。
ライセンスシステム100は、コンピュータ102のメモリ内にインストールされたライセンス機能と、ライセンスコントローラ104に含まれた不揮発性データストレージとを含んで、対象電子回路106内でのライセンスされた電子回路設計(例えば、埋込型コアおよびメモリ)の使用に対してライセンスおよび課金を行う。ここで理解されるべき点は、ここで使用されている「ライセンス」という用語は、コア電子回路設計の各個別使用に対する収入を得る好適な方法、例えば各コア電子回路設計に対する使用単位の収入を得る好適な方法を指すということである。
図1は、例示的なライセンス特徴ファイル110(図1参照)の拡大図を示している。図1に示されるように、ライセンス特徴ファイル110は、コンピュータ102のメモリに記憶されたテキストファイルを備える。このテキストファイルは、対象電子回路106に対して引き渡されるコア電子回路設計に関連したライセンスデータを含んでいる。図1に示されるように、ライセンス特徴ファイル110は、ライセンスされている特別な電子回路設計の特徴または属性を含んでいる。例えば、これらの属性は、ライセンス「発行(Issue)」番号、「製品(Product)」コード、「バージョン(Version)」コード、追加/削除される「ライセンス(Licenses)」の数、ライセンス「満了(Expiration)」コード、「ベンダー(Vendor)」コード、「顧客(Customer)」コード、およびライセンスコントローラシリアル番号”IPLC_SN”、即ち、ライセンスコントローラ104のシリアル番号を含む。加えて、ライセンス特徴ファイル110の属性の各組は、「キー(Key)」を含んでいる。このキーは、ライセンスされている電子回路設計に対する属性情報を考慮する暗号化アルゴリズムを使用して生成される。暗号化されたキーと、ライセンスコントローラ104の不揮発性データストレージ内に保持されているライセンスデータとを使用して、ライセンス特徴ファイル110内の情報を検証することによって、ライセンスシステム100は、対象電子回路106に対するコア電子回路設計の安全な引渡しを可能にる。
ライセンスシステム
ここに開示された実施形態では、ライセンスシステム100(図1参照)は、ライセンスされた電子回路設計の対象電子回路106内での使用を、対象電子回路106に適用または引渡されたプログラミングデータやテストデータ(例えば、ベクター)に基づいて、追跡するように構成されている。ライセンスシステム100は、知的財産権(IP)コアベンダーまたはプロバイダ(「IPプロバイダ」)とIPコア顧客またはユーザ(「IPユーザ」)との間で実施および強制されるべき安全な使用単位のライセンスおよび課金を可能とする。
図6は、ライセンスコントローラ104を含んだライセンスシステム100を使用するIPプロバイダおよびIPユーザ用の実例電子回路設計ライセンス環境600を図示している(図1も参照)。コンピュータ102上にインストールされた上述のライセンス機能の動作によって、IPプロバイダは、特別な電子回路設計に関連したデータIP1−IPn即ち602.1−602.nを、ライセンスされたベクターとして、IPユーザに引渡すことが可能になる。例えば、データIP1−IPn即ち602.1−602.nは、対象電子回路106内で電子回路設計をプログラム可能に構成したり、テストするに好適である。ライセンス機能は更に、ベンダー(IPプロバイダ)コード、顧客(IPユーザ)コード、および/または製品コード(例えば、IPタイプ)によってデータIP1−IPn即ち602.1−602.nにタグ付けするように動作する。言い換えると、ライセンス機能は、データIP1−IPn即ち602.1−602.nに、ベンダー(IPプロバイダ)コード、顧客(IPユーザ)コード、および/または製品コード(例えば、IPタイプ)が付け加えられるように動作する。これらのコードは、ライセンス特徴ファイル110(図1参照)内の暗号化された属性のようなキーを用いてベクターファイル内で暗号化され、ライセンスシステム100の不要な壊を防止している。IPユーザは、ライセンスされたベクター604を、ライセンスコントローラ104を介して対象電子回路106に直接適用することができる。この代わりに、IPユーザは、ライセンスされたベクター604を他のベクター(例えば、非ライセンスのユーザベクター)と組み合わせて、対象電子回路106用に組み合わされたライセンス/非ライセンスベクター606の組を形成し、そのベクター606の組を、ライセンスコントローラ104を介して対象電子回路106に適用することができる。
この結果、実例電子回路設計ライセンス環境600は、対象電子回路106内での電子回路設計のライセンスされた使用が、ベクター604および606の適用中に高い信頼性で課金され、これによりライセンスされた電子回路設計の信頼性の高い課金が、使用単位、アプリケーション単位、またはインスタンス単位で可能になる。更には、この実例電子回路設計ライセンス環境600は、ライセンスされたテストベクターの適用を準備しているので、IPユーザは一般に、このテストベクターの適用によるテストに失敗した(すなわち、テストで不合格である)電子回路設計(例えば、製造欠陥を含んだ不完全な電子回路設計)に対して支払う必要がない。従って、テストベクターの適用中に対象電子回路106テストに失敗した、すなわち不合格になったときは、ライセンスは消耗されない。そして、IPユーザは、ダイ上またはIC内の良好な(すなわち、テストで合格した)ライセンスされた電子回路設計に対してのみ支払う。この実例電子回路設計ライセンス環境600はまた、IPユーザがライセンス、例えばライセンス608を追加または削除したり、ライセンス608を1つのライセンスコントローラからもう1つのライセンスコントローラへ移動することを、ライセンスサーバ/マネージャ610を介してIPプロバイダに要求する好ましいリクエストを作ることによって、可能にする。それ故、IPユーザは、必要とするライセンスされた電子回路設計が何であれ、それに対して任意数の使用単位のライセンスを得ることができる。IPユーザは、ビジネス条件によって要求および/または指図されるように、これらのライセンスを得て、実際に使用された電子回路設計の数およびタイプに基づいてライセンス料金課せられる。
ライセンスコントローラ
図2は、ライセンスシステム100に含まれるライセンスコントローラ104(図1参照)の例証用実施形態を図示している。この例証用実施形態では、ライセンスコントローラ104は、不揮発性データストレージ202(例えば、シリアルPROM202)と、PROMコントロール回路204と、I/Oインターフェース回路206と、IEEE1149.1バスコントロール回路208とを含んでいる。I/Oインターフェース回路206は、Pバス107に結合されている。このPバス107は、クロック信号(PCLK)を搬送するためのラインと、それぞれのPDATA_INおよびPDATA_OUTデータバスとを含んでいる。シリアルPROM202、PROMコントロール回路204、I/Oインターフェース回路206、およびIEEE1149.1バスコントロール回路208の記述は、後続のセクションで与えられる。
I/Oインターフェース回路
ここで開示されている実施形態では、I/Oインターフェース回路206(図2参照)は、コンピュータ102(図1参照)およびライセンスコントローラ104が同期式高速パラレルデータバスを備えたPバス107を介して互いに通信することを可能にするように構成された回路を含んでいる。Pバス107上のPCLK信号は、コンピュータ102からライセンスコントローラ104への入力データPDATA_INの転送を同期させること、並びにライセンスコントローラ104からコンピュータ102への出力データPDATA_OUTの転送を同期させることに使用される。従って、I/Oインターフェース回路206は、PROMコントロール回路204とIEEE1149.1バスコントロール回路208との間のデータ転送を管理するように構成されている。
IEEE1149.1バスコントロール回路
IEEE1149.1バスコントロール回路208(図2参照)は、I/Oインターフェース回路206からパラレルデータおよび制御信号を受信すること、並びにこれらの信号をシリアルIEEE1149.1プロトコルに変換して、IEEE1149.1バス108を通して対象電子回路106(図1参照)へ出力するように構成された回路を含んでいる。IEEE1149.1バスコントロール回路208は、更に、結果のシリアルデータを対象電子回路106からIEEE1149.1バス108を通して受信すること、並びにこのシリアルデータをパラレルデータに変換してからI/Oインターフェース回路206へ送信するように構成されている。
PROMコントロール回路
PROMコントロール回路204(図2参照)は、I/Oインターフェース回路206からパラレルデータおよび制御信号を受信すること、並びにそのデータおよび制御信号を好適な2線式シリアルプロトコルに変換して、SCLK(シリアルクロック)ラインを使用したSDA(シリアルデータ/アドレス)バスを通してシリアルPROM202へ送信するように構成されている。PROMコントロール回路204は更に、SDAを通してシリアルPROM202から戻されるシリアルデータを受信すること、並びにこのシリアルデータをパラレルに変換してI/Oインターフェース回路206へ送信するように構成されている。
シリアルPROM
好ましい実施形態では、シリアルPROM202(図2参照)は、コア電子回路設計をライセンスするためにデータを記憶するように構成された不揮発性メモリを備えている。例えば、シリアルPROM202は、シリアルな電気的消去書込み可能読み出し専用メモリ(SEEPROM)または他の好適な形態の不揮発性リード/ライトメモリを備えることもできる。シリアルPROM202は、上述した2線式シリアルプロトコルを使用して、PROMコントロール回路204に対するインターフェースをとる。具体的には、シリアルPROM202は、シリアルクロック信号SCLKを受信する。この信号は、PROMコントロール回路204との間で、シリアルデータ/アドレスバスSDA上でのデータおよびアドレス転送の同期をとることに使用される。例えば、シリアルPROM202は、4096通りのアドレス可能メモリ位置を含むこと、並びにバイト幅のデータを与えるように構成することができる。
しかしながら、ここで理解されるべき点は、ライセンスコントローラ104が他の好ましいタイプのデータストレージを使用してもよいこと、そして他の好ましい通信プロトコルを使用するように構成され得るということである。例えば、ライセンスコントローラ104は、パラレルフラッシュメモリや、IEEE1149.1プロトコルを使用するシリアルPROMを使用することができる。さらに、ライセンスコントローラ104は、ライセンスシステム100から分離されて実施されるデータストレージを使用することができる。例えば、図3はネットワークベースのライセンスマネージャ構成300の例証用実施形態を図示している。この構成は、ネットワーク308と、コンピュータ306と、ネットワーク308に接続されたライセンスシステム320〜321とを含んでいる。この例証用実施形態では、ライセンスシステム320〜321の各々は、ライセンスシステム100(図1参照)と同様であるが、ライセンスされた電子回路設計に関連したデータが、ライセンスコントローラ324および/または325に記憶されることに代わって(あるいは加えて)、コンピュータ306に含まれたデータストレージ312、例えばディスクに記憶されている点が異なる。このようにして、ライセンスシステム320〜321は、ライセンスシステム320〜321から分離されて記憶されたライセンスされた電子回路設計データに、例えばネットワーク308を通してライセンスシステム320〜321からアクセス可能ディスク312に記憶されたライセンスデータに、アクセスするように構成できる。ここで理解される点は、この構成では、コンピュータ306に含まれたデータストレージ312が、ライセンスコントローラ324〜325に含まれた不揮発性ストレージとほぼ同じ機能を果たすということである。
ライセンスマネージャ
上述したように、図3はネットワークベースのライセンスマネージャ構成300を図示している。この例証用実施形態では、ネットワークベースのライセンスマネージャ300は、ネットワーク308と、ライセンスシステム320〜321と、ネットワーク308に接続されたコンピュータ302,304および306とを含んでいる。例えば、ネットワーク308は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、または他の好ましいネットワークを備えることができる。また、コンピュータ302,304および306は、好ましい汎用コンピュータを備えることができる。
図3のネットワークベースのライセンスマネージャ300は、以下の例証例を参照することによって、よりよく理解される。この例は、例証用ライセンス特徴ファイル310を使用する(図3のファイル310の拡大図を参照)。このライセンス特徴ファイル310は、コンピュータ304(「サーバX」)に記憶されたテキストファイルを備える。図3に示されるように、ライセンス特徴ファイル310は、対象電子回路326および/または327に引渡または適用される電子回路設計に対して、3つの「IPL」ライセンスを含んでいる。IPLライセンスは、ライセンス特徴ファイル110(図1参照)を参照して先に説明されたように、各特別な電子回路設計ライセンスに対する適切な属性およびキーを含む。ライセンス特徴ファイル310(図3参照)は、ネットワーク308上のコンピュータ302,304,306および322〜323の各々によってアクセスされ得る。この例では、コンピュータ322は、ライセンスコントローラ324に接続され、ライセンスされたベクターは、このライセンスコントローラ324を通して対象電子回路326に適用される。同様に、コンピュータ323は、ライセンスコントローラ325に接続され、ライセンスされたベクターは、このライセンスコントローラ325を通して対象電子回路327に適用される。ここで認められるべき点は、ネットワーク308が、ネットワーク上のコンピュータに取り付けられた1以上のライセンスコントローラを有することができるということである。ライセンス特徴ファイル、例えばファイル110(図1参照)や310(図3参照)、並びにシリアルPROM202(図2参照)のフォーマットは、後続するセクションにおいて更に説明される。
ライセンス特徴ファイル
図4は、ネットワークベースのライセンスマネージャ300(図3参照)と関連して使用され得るライセンス特徴ファイル410の例証用実施形態を図示している。図4に示されるように、ライセンス特徴ファイル410は、複数ラインのテキストを含んだテキストファイルを備える。例えば、各ラインは、特別なコア電子回路設計に対するライセンス属性を記述した製品ラインを備えることができる。このライセンス特徴ファイル410では、各製品ラインは、次のフォーマットを有する。
LICENSE_NAME: <Issue> <Product> <Version> <+/- Licenses>
<Expiration> <Vendor> <Customer> <IPLC_SN> <Key>
この場合、ライセンス_名称(LICENSE_NAME)フィールドは、IPプロバイダによって提供されるライセンスの名称を含んでいる。また残りのフィールドは、図1を参照して先に説明されたライセンス特徴ファイル110の対応するフィールドと同様である。
図4に示されるように、ライセンス特徴ファイル410の第3〜7ラインは、ライセンス_名称(LICENSE_NAME)が“IPL”であることを示している。これは、対象電子回路326または327(図3参照)に引渡または適用されるコア電子回路設計に対するライセンスの名称である。ここで開示されている実施形態では、ライセンス特徴ファイル410の上から2ラインは、それらの境界をオプションのコメントラインとして定める“#”で開始する。具体的には、第1ラインは、第3〜5ラインおよび第7ラインのフィールドのフォーマットを記述するために含まれている。例えば、第3ラインでは、発行(Issue)番号は“1”であり、製品(Product)コードは“ab1”であり、バージョン(Version)コードは“1”であり、追加されるライセンス(Licenses)の数は“10000”であり、満了(Expiration)コードは“12312002”であり、ベンダー(Vendor)コードは“2”であり、顧客(Customer)コードは“f1”であり、IPライセンスコントローラのシリアル番号IPLC_SNは“1”である。さらに、第7ラインでは、発行番号は“1”であり、製品コードは“dd0”であり、バージョンコードは“7”であり、追加されるライセンスの数は“3500”であり、満了コードは“00000000”であり、ベンダーコードは“A”であり、顧客コードは“f1”であり、IPライセンスコントローラのシリアル番号IPLC_SNは“1271”である。
ここで留意される点は、IPライセンスコントローラのシリアル番号1270ライセンスコントローラ324に対応し、また、IPライセンスコントローラのシリアル番号1271ライセンスコントローラ325に対応しているということである(図3参照)。さらに、同じ製品コードに対して複数のラインがある場合、発行番号は、追加のライセンスを追跡することに使用され得る。例えば、ライセンス特徴ファイル410(図4参照)の第5ラインは、製品コードab1に対するライセンス2番目の発行(Issue 2)である。このラインは、ライセンス特徴ファイル410の第3ラインに示されているように、1番目の発行1(Issue 1)によって与えられた10,000のライセンスに300のライセンスを加える。ライセンスの最終発行(例えば、最終発行番号512.、図5参照)は、シリアルPROM202(図2参照)に記憶される。この結果、ライセンスシステムは、新たにライセンスが発行されたときを容易に決定することができる。シリアルPROM202は続いて更新され、これら新たに発行されたライセンスに対して課金する。同様の手法で、ライセンスは、ライセンス特徴ファイル410から削除されるか、あるいは1つのライセンスシステムのライセンス特徴ファイルからもう1つのライセンスシステムのライセンス特徴ファイルへと転送される。
ここで留意されるべき点は、キー(“Key”)フィールドは、IPプロバイダによって生成され、そして安全に暗号化されたキーを有するということである。このライセンスキー値は、対応する製品ライン内の情報と、他のベンダー固有のデータを考慮する。ここで開示されている実施形態では、製品ライン3〜7(図4参照)はIPユーザによっては修正できない。これは、そのようにすると、(初めにIPプロバイダによって生成された)ライセンスキー値が、ファイル内の製品ラインデータと不一致にさせられてしまうからである。ライセンスファイル内の特徴や他のデータの何れかを変化させるために、IPユーザは典型的に、新しいライセンス特徴ファイル410をIPプロバイダから獲得する。このことが確実にするものは、コア電子回路設計が特定のライセンスコントローラと共に、そしてライセンスの必要条件に従って使用される点である。
異なる実施形態において、ライセンス特徴ファイル410の製品ラインは、ライセンス特徴ファイル410のライン6に示されるように、1以上の暗号化されたフィールドを有することができる。ライン6内の暗号化された値は、ライセンスされている特別な電子回路設計の属性と、ライセンスキーとを表す。製品ラインのこの形態は、分離されたフィールドを有しないが、それはライセンスシステムによって解釈されるので、安全性を提供する。
シリアルPROMフォーマット
ここで開示されている実施形態では、シリアルPROM202(図2参照)は、ライセンスデータを記憶して、ライセンス特徴ファイル(例えば、ファイル110(図1参照)および310(図3参照))によって提供されるライセンス情報を補うように構成されている。シリアルPROM202に記憶されたライセンスデータは、ライセンス特徴情報と共に使用されて、ライセンスされた電子回路設計の引渡を追跡および管理する。
図5は、ライセンスデータをシリアルPROM202(図2参照)に記憶するための例証用フォーマット500を図示している。このデータ記憶フォーマット500は、アドレス位置0〜n−1に複数バイトのデータストレージを設けている。具体的には、シリアルPROM202に記憶されたライセンスデータは、ライセンスコントローラシリアル番号502と、PROMバージョン504と、PROMサイズ506と、ライセンス(IPL)のPROM署名510とを含んでいる。このライセンス(IPL)のPROM署名510は、シリアルPROM202に記憶されたデータの完全性チェックを与えるために維持される。ここで開示されている実施形態では、ライセンスコントローラ104のベンダーだけが、ライセンス(IPL)のPROM署名510の発生および維持に使用されるアルゴリズムを知っている。このことにより、電子回路設計のライセンスに大きな保護を与える。何故ならば、IPユーザは、ライセンス(IPL)のPROM署名510を、記憶されているライセンスデータと不一致にさせることなしに、シリアルPROM202に記憶されたライセンスデータを変更できないからである。ライセンス(IPL)のPROM署名510は、シリアルPROM202電子回路設計ライセンスについてアクセスされる毎に検証されることが好ましい。更に、このライセンス(IPL)のPROM署名510は、シリアルPROM202に記憶されているライセンスデータが更新されるときは必ず再生および更新される。
図5に示されるように、IPユーザに対して発行されたライセンス、例えばライセンス1即ち512およびライセンス2即ち514は、位置「ライセンスアドレス」から開始してシリアルPROM202に記憶される。ライセンス1即ち512およびライセンス2即ち514の各々は、シリアルPROM202に記憶されている多数のバイトから構成されている。図5に拡大して示されるように、ライセンス1即ち512は、ライセンス特徴ファイルの製品ラインに設けられているように、ベンダー表示情報512.1と、顧客表示情報512.2と、製品表示情報512.3と、少なくとも1つのIPバージョンコード512.4とを含んでいる。これらの情報は、ライセンス1即ち512がシリアルPROM202に存在していることを示す。ライセンス1即ち512は更に、最終発行番号512.5と、未使用ライセンスの数(「#未使用ライセンス数」)512.6とを含んでいる。情報512.1〜512.6は更新され、そして各ライセンスされた電子回路設計の追跡を維持することに使用され得る。ここで認められるべき点は、上述したライセンスデータが、ライセンスシステム100から分離されて実現された好ましいデータストレージ媒体に記憶され得るということである。例えば、ライセンスデータは、ライセンスシステム100がローカルバスやネットワークを通してアクセス可能なディスクに記憶され得る。具体的には、ライセンス情報は、コンピュータ306に含まれたストレージデバイス312に記憶され得る。このストレージデバイス312は、ライセンスシステム320〜321がネットワーク308(図3参照)を通してアクセス可能である。このことにより、ライセンスされた電子回路設計の集中課金が、ネットワーク308上の複数のライセンスコントローラ324〜325にわたって可能になる。
識別および機密保護IPコード
ライセンスシステム100は、どのコア電子回路設計が対象電子回路106内でプログラム可能に構成されているかを識別することに、またプログラムされた電子回路設計を機密保護して、それが解読および逆行分析されたり、不注意に修正または消去されないようにすることに使用できる。
特別なコア電子回路設計を識別する1つの方法は、容易にアクセスおよび問い合わせできるレジスタ内に電子回路設計のバージョン、タイプおよび/または製造元を符号化する。例えば、1EEE1149.1および1532規格は、2つのデータレジスタ(DR)、即ちユーザコードDRとIDコードDRを特定する。これらは、32ビットの標準フォーマットを有し、電子回路設計のバージョン、タイプおよび製造元を特定することに使用できる。
プログラム可能な電子回路設計用に与えられる機密保護の特徴は、典型的にはリード保護、プログラム保護、および消去保護用の機構を含む。これらは、通常は好ましい組み合わせで使用できる。更に、これらの保護機構は、通常TAPコントローラ命令を使用して可能にされ、そして命令、データパターンまたは双方の特別なシーケンスを介して不能にされる。ある電子回路設計においては、リードおよびプログラム保護は、対象電子回路のプログラムされた内容を最初に消去することによって不能にされる。この理由により、あるプログラム可能な電子回路設計は、ユーザ定義可能キー、例えば保護機構をアンロックすることに使用できる個人識別番号(PIN)を準備している。ユーザ定義可能キーのアプローチは、リバースエンジニアリングや不注意な修正/消去に対して保護を与える機密保護方法を提供する。あるプログラム可能な電子回路設計はまた、恒久的ロックを準備しているので、保護機構は不能にされない。ここで開示されている実施形態では、ライセンスシステム100は保護キーを生成し、そしてその保護キーをライセンスコントローラ104のシリアルPROM202(図1〜2参照)に記憶するので、ライセンスコントローラ104だけが対象電子回路106内に構成された電子回路設計をリード/プログラム/消去できる。
1つの代替実施形態では、対象電子回路106(図1参照)は、対象電子回路106がライセンスされた電子回路設計のバージョンで既にプログラムされているか否かを決定するために、構成に先だって問い合わされる。例えば、対象電子回路106がライセンス1即ち512(図5参照)に関連した電子回路設計で既にプログラムされている場合、未使用ライセンスの数512.6はデクリメントされない。そして、プログラミング動作は、対象電子回路106内における電子回路設計の初回のプログラム可能な構成に対して課金される代わりに、更新(即ち、電子回路設計の新バージョンによる対象電子回路106の再プログラミング)として取り扱われる。しかしながら、ユーザコードDRはプログラム可能であるから、この方法は、現在の電子回路設計をプログラミング前に識別するには比較的信頼性が低い。この理由によって、ここで開示されているライセンスシステム100の実施形態は、ID署名レジスタ(IDSR)704(図7a参照)を使用して、対象電子回路内で実現されている現在の電子回路設計を識別する。
図7aは、対象電子回路106(図1参照)内で実現され得るテストアクセスポート(TAP)アーキテクチャ700の例証用実施形態を図示している。この例証用実施形態では、TAPアーキテクチャ700は、IEEE1149.1TAPコントローラのようなTAPコントローラ702と、命令レジスタ(IR)706と、TAPコントローラ702および命令レジスタ(IR706に接続されたID署名レジスタ(IDSR704とを含む。ID署名レジスタ(IDSR704は、ユーザ定義DRであり、対象電子回路106のプログラミング中にテストデータ入力(TDI)(図1および7参照)に関するデータの署名を生成することが可能にされている。具体的には、ID署名レジスタ(IDSR704は、ライセンスされた電子回路設計がTDIを介して対象電子回路106へ引渡されるときに、その署名を生成して記憶するように構成されている。それからID署名レジスタ(IDSR704は、対象電子回路106内に現在プログラムされているライセンスされた電子回路設計を識別するために、ライセンスコントローラ104によって選択され、そしてテストデータ出力(TDO)(図1および7参照)からスキャンされる。このようにして、ライセンスされた電子回路設計は、対象電子回路106をプログラミングまたは再プログラミングする前に、安全且つ信頼性高く識別される。
ノンプログラマブルの対象電子回路、例えばASICやRAM内で実現されたライセンスされた電子回路設計を識別および機密保護する能力を有することも望ましい。そのために、ここで開示されている実施形態は、ライセンスされた電子回路設計の機能的動作を可能にするようにプログラム可能に構成され得るイネーブルキーを備えている。このイネーブルキーは、ライセンスされた電子回路設計に対する適切な課金がなされるまで、このライセンスされた電子回路設計の使用を防止する。
図7bは、ライセンスされた電子回路設計の機能的動作をノンプログラマブルの対象電子回路内で可能にするために上述したイネーブルキーを使用する例証用回路構成720を図示している。この例証用実施形態では、回路構成720は、イネーブルキーの表示を記憶するためのイネーブルキー更新/メモリ(U/Mem)レジスタ724を含んでいる。例えば、イネーブルキー更新/メモリ(U/Memレジスタ724は、比較的小さい(例えば、32〜128ビットの)プログラム可能回路または不揮発性メモリを備えることがある。更には、この例証用回路構成720は、ライセンスされた電子回路設計から分離されているか、その一部として、対象電子回路内に実現され得る。この代わりに、この例証用回路構成720は、TAPコントローラ702の一部として対象電子回路内に実現され得る。
具体的に、イネーブルキーの表示は、対象電子回路のTDI入力を介して、イネーブルキーシフト/キャプチャ(S/C)レジスタ276(図7b参照)に対してシリアルに与えられる。例えば、イネーブルキーシフト/キャプチャ(S/Cレジスタ276は、TAPコントローラ702のTDIおよびTDOピン(図7a参照)の間でアクセス可能なユーザ定義データレジスタ(DR)を備えることができる。さらに、イネーブルキーシフト/キャプチャ(S/Cレジスタ276は、通常のDRと実質的に同じ手法で動作する。但し、イネーブルキーシフト/キャプチャ(S/Cレジスタ276が更新されるときに、その内容がイネーブルキー更新/メモリ(U/Memレジスタ724に記憶される点は異なる。次に、イネーブルキー更新/メモリ(U/Memレジスタ724は、イネーブルキーを、後続の復号用にイネーブルキーデコーダ回路722に与える。復号後にイネーブルキーが有効であると見られる場合、イネーブルキーデコーダ回路722は、IP_イネーブル信号(図7b参照)を出力する。このIP_イネーブル信号は、ライセンスされた電子回路設計の機能的動作を可能にすることに使用される。
ここで開示されている実施形態では、ライセンスされた電子回路設計の機能的動作を可能にするイネーブルキーの値は、IPプロバイダによって予め決定され、そしてライセンスされた電子回路設計がライセンスシステムによってテストされる前または後にプログラム可能に構成される。例えば、ライセンスシステム100(図1参照)は、イネーブルキーをライセンスコントローラ104のシリアルPROM202に記憶することができる。ライセンスされた電子回路設計がライセンスシステム100によって適切に課金された後に、ライセンスシステム100は、イネーブルキーを使用して、対象電子回路106上で実現されたライセンスされた電子回路設計の機能的動作を可能にする。
ここで理解されることは、上述したイネーブルキーが、ライセンスシステム100(図1参照)内で他の目的に対しても使用できるという点である。例えば、イネーブルキーは、対象電子回路106内のサポート回路の機能的動作、例えばライセンスされた電子回路設計のテストを助けるように構成された「ヘルパー」回路の機能的動作を可能にすることに使用できる。さらに、このヘルパー回路は、ライセンスされた電子回路設計のテストを可能にし、および/または加速するように構成され得る。ヘルパー回路は、ライセンスされた電子回路設計から分離されるか、その一部として、対象電子回路106内で実現され得る。
ここで認められるべき点は、ライセンスシステムは、ノンプログラマブル回路内のライセンスされた電子回路設計を識別および機密保護することに使用されるイネーブルキーに加えて、他の回路情報を生成できるということである。例えば、IPシリアル番号(IPSN)、IDコード、および/またはテストおよび修理ステータスのような回路情報は、ライセンスシステムによって生成され、ライセンスコントローラのシリアルPROM202に記憶され、そして対象電子回路内でプログラム可能に構成され得る。ここで留意される点は、ライセンスされた電子回路設計を追跡するために、IPシリアル番号(IPSNもまた使用され得るということである。ライセンスシステムは、この回路情報にアクセスして、ライセンスされた電子回路設計が以前に課金され、テストされ、および/またはイネーブルキーを通して可能にされたか否かを決定すること、並びにライセンスされた電子回路設計のテストおよび修理ステータスにアクセスすることができる。
ここで開示されている実施形態では、IPシリアル番号(IPSN情報は、IPシリアル番号(IPSNシフト/キャプチャ(S/C)レジスタ728(図7b参照)に対し対象電子回路のTDI入力を介してシリアルに与えられる。イネーブルキーシフト/キャプチャ(S/Cレジスタ726と同様に、IPシリアル番号(IPSN)シフト/キャプチャ(S/Cレジスタ728は、TAPコントローラ702のTDIおよびTDOピン(図7a参照)間でアクセス可能なユーザ定義DRを備えることができる。さらに、IPシリアル番号(IPSN)シフト/キャプチャ(S/Cレジスタ728は、通常のDRと実質的に同じ手法で動作する。但し、IPシリアル番号(IPSN)シフト/キャプチャ(S/Cレジスタ728が更新されるときに、その内容はIPシリアル番号(IPSN)更新/メモリ(U/Memレジスタ730に記憶される。このIPシリアル番号(IPSN)更新/メモリ(U/Memレジスタ730は、比較的小さい(例えば、32〜128ビットの)プログラム可能回路または不揮発性メモリを備えることがある。図7bに示されるように、例証用回路構成720は更に、イネーブルキーシフト/キャプチャ(S/Cレジスタ726およびIPシリアル番号(IPSN)シフト/キャプチャ(S/Cレジスタ728とTDOラインとの間に配置され、選択的にイネーブルキーまたはIPシリアル番号(IPSNをTDOラインに与えるように構成されたマルチプレクサ732を含む。
ライセンスシステムの動作
ライセンスされたコア電子回路設計およびベクターをライセンスシステム100(図1参照)によって安全に引渡/適用するためのライセンスシステムの管理方法が、図8を参照して説明される。ここで留意される点は、ライセンスシステム100の方法は、コンピュータ102にインストールされたライセンス機能と、ライセンスコントローラ104(図1参照)のシリアルPROM202(図2参照)に記憶されたライセンスデータとを使用して行われるということである。ステップ802に示されているように、与えられたコア電子回路設計に対するライセンスされたベクターファイル604(図6参照)が、IPプロバイダによって提供される。このライセンスされたベクターファイル604は、電子回路設計に対するプログラムおよび/またはテストデータと、このベクター内でライセンスされたそれぞれの電子回路設計に対するベンダー、顧客および製品コードとを含んでいる。次に、ステップ804に示されるように、電子回路設計特徴が現在ライセンスされているか否か判定するために、ライセンス特徴ファイルが読み出され。それから、ステップ806に示されるように、シリアルPROM202に含まれた情報が読み出される。
次に、ステップ808に示されるように、シリアルPROM202に記憶された情報の完全性が、シリアルPROMに記憶された署名について検証される。それから、ステップ810に示されるように、記憶されているPROM情報がPROM署名と一致するか否かについて定される。記憶されているPROM情報がPROM署名と不一致の場合、シリアルPROMの内容が不適切に変更されていることを示しているので、ステップ811に示されるように、コンピュータ102を経由してIPユーザに対してエラーが発行され、またベクターは適用されない。そうでない場合には、ステップ812に示されるように、それぞれのライセンスコントローラ104に対し割り当てられるライセンスが決定される。具体的には、PROM情報に含まれるライセンスコントローラ104のシリアル番号(即ち、IPLC_SN)502ライセンス特徴ファイルのそれぞれの製品ラインと比較され、そしてライセンスコントローラのシリアル番号502と一致する製品ラインは、このライセンスコントローラに割り当てられたライセンスであると判定される。
次に、ステップ814に示されるように、電子回路設計ライセンスは(シリアルPROM202から読み出されたときに)、そのベンダー、顧客および製品コードを媒介として識別される。それから、ステップ816に示されるように、このライセンスは、ライセンスコントローラ104に割り当てられたライセンス特徴について検証される。次に、ステップ818に示されるように、シリアルPROM202に含まれていないライセンス特徴ファイル内に電子回路設計ライセンスがあるか否かについて定がなされる。ライセンス特徴ファイルには含まれているが、シリアルPROMには含まれていない電子回路設計ライセンスがある場合、この電子回路設計ライセンスは新しいライセンスとみなされ、そしてステップ820に示されるように、対応するライセンス情報が、新たに生成されたPROM署名を伴ってシリアルPROM202に追加される。
それから、ステップ822に示されるように、シリアルPROM202に記憶されたライセンスデータに対し、更なる更新がなされる必要があるかを見るために、電子回路設計ライセンス情報は検証され。具体的には、シリアルPROM202内のライセンスデータは、更新され得る。これは、未使用の電子回路設計ライセンスの数に加算/減算し、ライセンスを除去し、もう1つのライセンスコントローラに対してライセンスを再割り当てし、あるいはIPバージョンを更新するためである。電子回路設計ライセンスが検証された後に、ステップ824に示されるように、シリアルPROM202内のライセンスデータに対して、新たに生成されたPROM署名を伴って、全ての必要な更新がなされる。
電子回路設計ライセンスを検証し、また必要な更新をシリアルPROM202内にプログラムした後に、ステップ825に示されるように、そのベクターに適用する必要のある電子回路設計ライセンスを決定するために、ライセンスされたIPベクターファイル604が読み出され。次に、ステップ826に示されるように、プログラム/テスト環境(即ち、ライセンスされた電子回路設計を含んだ対象電子回路106)の完全性を保証するために、そしてIPプロバイダによって認定された手法で電子回路設計がアクセスされていることを認証するために、このプログラム/テスト環境が検証されそのプログラム/テスト環境が期待されたものではない場合は、ステップ828に示されるように、コンピュータ102を介してIPユーザに対しエラーが発行され、ベクター604は適用されない。このプログラム/テスト環境の検証に続いて、ステップ830に示されるように、ライセンスされた電子回路設計の各々について対象電子回路106上で識別(ID)チェックが行われる。例えば、対象電子回路に応じて、1以上のユーザコード、IDコード、またはID署名レジスタ(IDSR値が検証される。対象電子回路106が識別(ID)チェックに失敗した、すなわち、不合格の場合、即ち、ライセンスされたベクター604にとって対象電子回路106が間違った部品または回路であると判定された場合、ステップ828に示されるように、コンピュータ102を介してIPユーザに対しエラーが発行され、そのベクターは適用されない。そうでない場合、ステップ832に示されるように、コンピュータ102によって、ライセンスされたベクター604は、ライセンスコントローラ104およびIEEE1149.1バス108を経由して、対象電子回路106に適用される。
ライセンスシステム100(図1参照)によってライセンスされた電子回路設計/ベクターを対象電子回路に対し高い信頼性で課金するためのライセンスシステムの管理方法が、図9を参照して説明される。ステップ902に示されるように、ライセンスされた電子回路設計をプログラム可能に構成またはテストすることに、ライセンスされたベクター604が使用されるか否かについて判定される。ライセンスされたベクター604がプログラム用である場合、上述した識別(ID)チェック(図8のステップ830)が使用され、ステップ904に示されるように、対象電子回路106が現在(例えば、電子回路設計の古いバージョンで)プログラムされているか、あるいは対象電子回路106内で未だにプログラムされていないかを判定する。対象電子回路106が電子回路設計の古いバージョンでプログラムされている場合、ステップ906に示されるように、ライセンスされたベクター604対象電子回路106に適用される。しかしながら、シリアルPROM202内の未使用ライセンスの数はデクリメントされない。これは、対象電子回路106が(多分新しいバージョンではなく)同じ電子回路設計で再プログラムされているためである。ここで認められる点は、この電子回路設計に対するライセンスは、電子回路設計の古いバージョンが対象電子回路106内に最初にプログラムされたときに、課金されているということである。対象電子回路106がプログラムされていなかったり、ライセンスされた電子回路設計以外の電子回路設計でプログラムされている場合は、ステップ908に示されるように、対象電子回路106はプログラムされ、そしてステップ910に示されるように、未使用ライセンスの数はデクリメントされる。ベクター内のライセンスされた電子回路設計の全てが、一度、プログラムまたは再プログラムされたら、ステップ912に示されるように、シリアルPROM202内のライセンスデータはPROM署名を含んで更新される。
ライセンスされたベクター604がテスト用である場合は、ステップ914に示されるように、このライセンスされたベクター604対象電子回路106内の電子回路設計に適用される。それから、ステップ916に示されるように、対象電子回路106内の電子回路設計がテストに合格したか否かについて判定がなされる。対象電子回路106がテストに合格した場合、ステップ918に示されるように、ライセンスされたベクター604内のライセンスされた電子回路設計に対する未使用ライセンスの数はデクリメントされる。次に、ステップ912に示されるように、シリアルPROM202はPROM署名を伴って更新される。対象電子回路106がテストに失敗した不合格の場合、失敗した電子回路設計に対する未使用ライセンスの数はデクリメントされない。このようにして、IPユーザは、例えば対象電子回路内の製造欠陥故に、テストに合格しないライセンスされた電子回路設計については課金されないので、支払いをしない。
当業者によって更に認められる点は、上述した電子回路設計のライセンスシステムおよびそのライセンスシステムを管理する方法に対する修正および変化が、ここに開示された発明の概念を逸脱することなくなされるということである。従って、この発明は、添付の請求の範囲の精神および範囲による以外は制限されるものではないとみなされるべきである。
本発明に係るライセンスシステムのブロック図である。 図1のシステムに含まれるライセンスコントローラのブロック図である。 本発明に係るネットワークベースのライセンスシステムのブロック図である。 図1のライセンスシステムで使用されるライセンス特徴ファイルを示す。 図1のライセンスシステムによって使用されるメモリフォーマットを示す図である。 図1のライセンスシステムが使用される環境のブロック図である。 図1のライセンスシステムに含まれるID署名レジスタを有したテストアクセスポートアーキテクチャーのブロック図である。 ライセンスされた電子回路設計の機能的動作を可能にするために図1のライセンスシステムで使用される回路構成のブロック図である。 図1のライセンスシステムによってライセンスされた電子回路設計を引き渡すことに関してライセンスシステムを管理する方法を示すフロー図である。 図1のライセンスシステムによって対象電子回路に引き渡された電子回路設計に関してライセンスシステムを管理する方法を示すフロー図である。

Claims (27)

  1. 少なくとも一つの対象電子回路内に使用される電子回路設計をライセンスするための
    ライセンスシステムを管理する方法であって、
    前記ライセンスシステムは、
    タグ付きデータを記憶するコンピュータと、
    前記コンピュータと前記対象電子回路とに通信可能に結合されたライセンスコントローラと、
    前記ライセンスコントローラに関連したデータストレージとを備えることを特徴とし、及び、前記方法は、
    前記電子回路設計を使用単位でライセンスするステップを備えることを特徴とし、
    前記ライセンスするステップは、
    前記コンピュータが、前記タグ付きデータを前記ライセンスコントローラへ供給するステップであって、前記タグ付きデータは、前記対象電子回路内の前記電子回路設計をテストすることに関するテストデータと前記対象電子回路内の前記電子回路設計をプログラム可能に構成することに関するプログラミングデータのうちの少なくとも1つを含むとともに、第 1 のライセンス情報が付け加えられていることを特徴とする前記供給するステップと、
    前記コンピュータが、第2のライセンス情報を記憶させるステップと、
    前記ライセンスコントローラが、前記タグ付きデータに含まれた前記第1のライセンス情報を読み込むステップと、
    前記ライセンスコントローラが、前記第1のライセンス情報を前記データストレージに記憶された第2のライセンス情報と比較するステップと、
    もし前記比較の結果が前記対象電子回路内の前記電子回路設計のライセンス可能使用を示すなら、前記コンピュータが、前記ライセンスコントローラを介して前記対象電子回路内へ前記テストデータ及び前記プログラミングデータのうちの少なくとも1つを適用するステップとを含む
    ことを特徴とする方法。
  2. 前記第1のライセンス情報が、前記対象電子回路内の前記電子回路設計を用いるための少なくとも一つのライセンスに対応することを特徴とする請求項1の方法。
  3. 前記第1のライセンス情報を前記第2のライセンス情報と比較するステップは、ライセンスコントローラへ何のライセンスが割り当てられるかを判定するために、前記ライセンスコントローラが前記第1のライセンス情報を前記第2のライセンス情報と比較することを含む請求項2の方法。
  4. 前記データストレージに記憶された前記第2のライセンス情報は、前記ライセンスコントローラに関連するシリアル番号を含むことを特徴とする請求項1の方法。
  5. 前記ライセンスコントローラに対する前記データの前記供給が、前記ライセンスコントローラに割り当てられた少なくとも一つのライセンスに応じることを特徴とする請求項3の方法。
  6. 前記ライセンスコントローラに割り当てた前記ライセンスが、前記少なくとも一つの対象電子回路内に前記電子回路設計を用いるための未使用ライセンス数に対応することを特徴とする請求項3の方法。
  7. 前記コンピュータが、前記データストレージに第3のライセンス情報を記憶することを更に含み、該第3のライセンス情報は、前記少なくとも一つの対象電子回路内に前記電子回路設計を用いるための前記未使用ライセンス数を表わすものである請求項6の方法。
  8. 前記対象電子回路に前記テストデータ及び前記プログラミングデータの一つの前記適用に関する予め定められたイベントに応じて、前記第3のライセンス情報で表わされる前記未使用ライセンス数を前記ライセンスコントローラによって更新することを更に含む請求項7の方法。
  9. 前記対象電子回路は、ID署名レジスタを持つテストアクセスポート回路を含むことを特徴とし、そして、
    前記方法は、前記プログラミングデータが前記対象電子回路に適用されるように、前記ID署名レジスタが前記プログラミングデータの署名を生成することを更に含む請求項8の方法。
  10. 前記ID署名レジスタが前記プログラミングデータの前記署名を前記対象電子回路内に記憶することを更に含む請求項9の方法。
  11. 前記対象電子回路内に前記電子回路設計を識別するために、前記ライセンスコントローラが前記プログラミングデータの前記記憶された署名にアクセスすることを更に含み、
    前記第3のライセンス情報で表わされる前記未使用ライセンス数の更新は、前記プログラミングデータが前記識別された電子回路設計とは異なる前記対象電子回路内の電子回路設計をプログラム可能に構成する場合において、前記ライセンスコントローラが前記未使用ライセンス数を更新することを特徴とする請求項10の方法。
  12. 少なくとも一つの他のライセンスコントローラに前記少なくとも一つのライセンスを再割り当てするために、前記ライセンスコントローラが、前記データストレージに記憶された前記第2のライセンス情報を更新することを更に含む請求項3の方法。
  13. 前記少なくとも一つのライセンスコントローラは、それに関するシリアル番号を有することを特徴とする請求項12の方法。
  14. 前記対象電子回路は、ID署名レジスタを持つテストアクセスポート回路を含むことを特徴とし、そして、
    前記方法は、前記プログラミングデータが前記対象電子回路に適用されるように、前記ID署名レジスタが前記プログラミングデータの署名を生成することを更に含む請求項12の方法。
  15. 前記ID署名レジスタが前記プログラミングデータの前記署名を前記対象電子回路内に記憶することを更に含む請求項14の方法。
  16. 前記電子回路設計に関する前記データは、前記対象電子回路内の前記電子回路設計をテストすることに関する前記テストデータを備えることを特徴とし、
    前記対象電子回路は、前記電子回路設計の機能的動作を可能にするためのイネーブルキー更新/メモリレジスタと前記電子回路設計に関する支援回路とを持つ回路を含むことを特徴とし、そして、
    前記方法は、前記イネーブルキー更新/メモリレジスタが、前記電子回路設計に関する前記支援回路および前記電子回路設計の一またはそれ以上の動作を可能にするためのイネーブルキーを記憶することを更に含むことを特徴とする請求項1の方法。
  17. 前記ライセンスコントローラが前記データストレージ内に前記イネーブルキーを記憶することを更に含む請求項16の方法。
  18. 前記イネーブルキーは対応する暗号化した値を持つことを特徴とする請求項16の方法。
  19. 前記電子回路設計に関する前記支援回路および前記電子回路設計の機能的動作を可能にするための前記回路は、イネーブルキーデコーダ回路を含むことを特徴とし、そして、
    前記方法は、前記イネーブルキーデコーダ回路が前記イネーブルキーの前記暗号化された値を解読することを更に含むことを特徴とする請求項18の方法。
  20. 前記イネーブルキーデコーダ回路が、前記イネーブルキーの解読値に応じて、前記対象電子回路内の前記電子回路設計の機能的動作を可能にするためにイネーブル信号を表明することを更に含む請求項19の方法。
  21. 前記支援回路は前記電子回路設計の一部を備えていることを特徴とする請求項16の方法。
  22. 前記イネーブルキーは対応する暗号化した値を持つことを特徴とし、
    前記電子回路設計に関する前記支援回路および前記電子回路設計の機能的動作を可能に するための前記回路は、イネーブルキーデコーダ回路を含むことを特徴とし、そして、
    前記方法は、前記イネーブルキーデコーダ回路が、前記イネーブルキーの暗号化した値を解読することと、前記イネーブルキーの解読値に応じて、前記イネーブルキーデコーダ回路が前記支援回路の機能的動作を可能にするためにイネーブル信号を表明することを更に含むことを特徴とする請求項16の方法。
  23. 前記支援回路によって、前記対象電子回路内の前記電子回路設計に対する前記テストを容易にすることを更に含む請求項22の方法。
  24. 前記対象電子回路は、前記電子回路設計に関する識別情報を生成するとともに記憶するための回路を含むことを特徴とし、そして、
    前記方法は、前記識別情報を生成するとともに記憶するための前記回路が、前記電子回路設計に関する識別情報を生成することを更に含む請求項1の方法。
  25. 前記識別情報を生成するとともに記憶するための前記回路が、前記対象電子回路に前記識別情報を記憶することを更に含む請求項24の方法。
  26. 前記ライセンスコントローラが、前記対象電子回路に前記テストデータ及び前記プログラミングデータの1つの適用に関する予め定められたイベントに応じて、前記電子回路設計に関する識別情報を更新することを更に含む請求項24の方法。
  27. コンピュータと、
    前記コンピュータに通信可能に結合されたライセンスコントローラと、
    前記ライセンスコントローラと関連しているデータストレージとを備え、
    少なくとも一つの対象電子回路内に使用単位に基づく電子回路設計をライセンスするためのシステムであって、
    前記コンピュータは、タグ付きデータを前記ライセンスコントローラへ供給するとともに前記データストレージに第2のライセンス情報を記憶するよう動作することを特徴とし、
    前記タグ付きデータは、前記電子回路設計に関連しているとともに、前記対象電子回路内の前記電子回路設計をテストすることに関するテストデータ及び前記対象電子回路内の前記電子回路設計をプログラム可能に構成することに関するプログラミングデータのうちの少なくとも1つを含み、第1のライセンス情報が付け加えられていることを特徴とし、
    前記ライセンスコントローラは、前記タグ付きデータの中に含まれた第1のライセンス情報を読み込み、そして前記第1のライセンス情報を前記データストレージに記憶された前記第2のライセンス情報と比較するよう動作することを特徴とし、
    もし前記比較の結果が前記対象電子回路内の前記電子回路設計のライセンス可能使用を示すなら、前記コンピュータは更に、前記ライセンスコントローラを介して前記対象電子回路に前記テストデータ及び前記プログラミングデータの少なくとも一つを適用するよう動作することを特徴とする
    前記システム。
JP2003562837A 2002-01-23 2003-01-21 電子回路のライセンスされた引渡しおよび課金をするための管理システム、方法および装置 Expired - Fee Related JP4217158B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US35088502P 2002-01-23 2002-01-23
PCT/US2003/001722 WO2003063044A2 (en) 2002-01-23 2003-01-21 Management system, method and apparatus for licensed delivery and accounting of electronic circuits

Publications (2)

Publication Number Publication Date
JP2005516288A JP2005516288A (ja) 2005-06-02
JP4217158B2 true JP4217158B2 (ja) 2009-01-28

Family

ID=27613436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003562837A Expired - Fee Related JP4217158B2 (ja) 2002-01-23 2003-01-21 電子回路のライセンスされた引渡しおよび課金をするための管理システム、方法および装置

Country Status (7)

Country Link
US (1) US9152749B2 (ja)
EP (1) EP1483712A4 (ja)
JP (1) JP4217158B2 (ja)
CN (1) CN1643532A (ja)
CA (1) CA2473956A1 (ja)
TW (1) TWI232388B (ja)
WO (1) WO2003063044A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021186975A1 (ja) 2020-03-19 2021-09-23 日本電気株式会社 課金情報処理装置、課金情報処理システム、課金情報処理方法及び課金情報処理プログラムが格納された非一時的なコンピュータ可読媒体

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7563600B2 (en) 2002-09-12 2009-07-21 Combimatrix Corporation Microarray synthesis and assembly of gene-length polynucleotides
US6944836B1 (en) * 2002-11-15 2005-09-13 Xilinx, Inc. Structures and methods for testing programmable logic devices having mixed-fabric architectures
US7353468B2 (en) * 2003-09-26 2008-04-01 Ferguson John G Secure exchange of information in electronic design automation
US20060259978A1 (en) * 2003-09-26 2006-11-16 Pikus Fedor G Secure exchange of information in electronic design automation with license-related key generation
US7222312B2 (en) * 2003-09-26 2007-05-22 Ferguson John G Secure exchange of information in electronic design automation
US20050076315A1 (en) * 2003-10-03 2005-04-07 Wen Kuei-Ann Modularized circuit design information generating method, modularized circuit design information generating tool and integrated circuit prepared with circuit design information generated therefrom
US7149943B2 (en) * 2004-01-12 2006-12-12 Lucent Technologies Inc. System for flexible embedded Boundary Scan testing
US7987373B2 (en) * 2004-09-30 2011-07-26 Synopsys, Inc. Apparatus and method for licensing programmable hardware sub-designs using a host-identifier
US20060156268A1 (en) * 2005-01-13 2006-07-13 Wen Kuei-Ann Circuit design platform
WO2007006013A2 (en) 2005-07-05 2007-01-11 Viasat, Inc. Synchronized high-assurance circuits
US7802075B2 (en) * 2005-07-05 2010-09-21 Viasat, Inc. Synchronized high-assurance circuits
US8527741B2 (en) * 2005-07-05 2013-09-03 Viasat, Inc. System for selectively synchronizing high-assurance software tasks on multiple processors at a software routine level
US8190877B2 (en) * 2005-07-05 2012-05-29 Viasat, Inc. Trusted cryptographic processor
US20090222927A1 (en) * 2006-04-30 2009-09-03 Pikus Fedor G Concealment of Information in Electronic Design Automation
US8417965B1 (en) * 2010-04-07 2013-04-09 Xilinx, Inc. Method and circuit for secure definition and integration of cores
US8910303B2 (en) * 2012-05-01 2014-12-09 Anaglobe Technology, Inc. System and method for manipulating security of integrated circuit layout
WO2014189045A1 (ja) * 2013-05-22 2014-11-27 株式会社日立国際電気 管理装置、基板処理システム、装置情報更新方法、及び記録媒体
US9584129B1 (en) * 2014-06-20 2017-02-28 Altera Corporation Integrated circuit applications using partial reconfiguration
US10817609B2 (en) * 2015-09-30 2020-10-27 Nvidia Corporation Secure reconfiguration of hardware device operating features
JP6922557B2 (ja) * 2017-08-29 2021-08-18 沖電気工業株式会社 ソフトウェア管理装置およびソフトウェア管理方法のプログラム
EP4114050A1 (de) * 2021-06-30 2023-01-04 Siemens Aktiengesellschaft Überprüfung einer lizenz für die nutzung mindestens eines leistungsmerkmals in einem internet der dinge (iot)-gerät

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4601033A (en) * 1984-01-16 1986-07-15 Siemens Corporate Research & Suppport, Inc. Circuit testing apparatus employing signature analysis
JP3270102B2 (ja) 1991-03-11 2002-04-02 ヒューレット・パッカード・カンパニー ライセンス付与方法及びシステム
WO1993011480A1 (en) 1991-11-27 1993-06-10 Intergraph Corporation System and method for network license administration
US5343526A (en) * 1992-10-30 1994-08-30 At&T Bell Laboratories Method for establishing licensor changeable limits on software usage
US5553143A (en) * 1994-02-04 1996-09-03 Novell, Inc. Method and apparatus for electronic licensing
US5717604A (en) * 1995-05-25 1998-02-10 Wiggins; Christopher Network monitoring system for tracking, billing and recovering licenses
US5671412A (en) * 1995-07-28 1997-09-23 Globetrotter Software, Incorporated License management system for software applications
US5867396A (en) * 1995-08-31 1999-02-02 Xilinx, Inc. Method and apparatus for making incremental changes to an integrated circuit design
US5790664A (en) * 1996-02-26 1998-08-04 Network Engineering Software, Inc. Automated system for management of licensed software
JPH09305408A (ja) * 1996-05-09 1997-11-28 Hitachi Ltd アプリケーション実行方法
US5796941A (en) * 1996-09-06 1998-08-18 Catalyst Semiconductor, Inc. Method for supervising software execution in a license restricted environment
US5978476A (en) * 1996-09-17 1999-11-02 Altera Corporation Access restriction to circuit designs
US5841867A (en) * 1996-11-01 1998-11-24 Xilinx, Inc. On-chip programming verification system for PLDs
US5925127A (en) * 1997-04-09 1999-07-20 Microsoft Corporation Method and system for monitoring the use of rented software
US6035107A (en) * 1997-08-28 2000-03-07 International Bunsiness Machines Corporation Method for performing functional comparison of combinational circuits
US6256770B1 (en) * 1997-10-17 2001-07-03 Lucent Technologies Inc. Register transfer level (RTL) based scan insertion for integrated circuit design processes
US6105137A (en) 1998-07-02 2000-08-15 Intel Corporation Method and apparatus for integrity verification, authentication, and secure linkage of software modules
US6205574B1 (en) * 1998-07-28 2001-03-20 Xilinx, Inc. Method and system for generating a programming bitstream including identification bits
US6249893B1 (en) * 1998-10-30 2001-06-19 Advantest Corp. Method and structure for testing embedded cores based system-on-a-chip
US6305005B1 (en) 1999-01-14 2001-10-16 Xilinx, Inc. Methods to securely configure an FPGA using encrypted macros
US6654889B1 (en) * 1999-02-19 2003-11-25 Xilinx, Inc. Method and apparatus for protecting proprietary configuration data for programmable logic devices
US7017043B1 (en) * 1999-03-19 2006-03-21 The Regents Of The University Of California Methods and systems for the identification of circuits and circuit designs
US20020105529A1 (en) * 2000-02-11 2002-08-08 Jason Bowser Generation and display of multi-image video streams
US6711674B1 (en) * 2000-02-24 2004-03-23 Xilinx, Inc. Method of watermarking configuration data in an FPGA by embedding the watermark corresponding to a macro obtained upon encountering a first watermark tag from the macro
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
US6904527B1 (en) * 2000-03-14 2005-06-07 Xilinx, Inc. Intellectual property protection in a programmable logic device
US6594802B1 (en) * 2000-03-23 2003-07-15 Intellitech Corporation Method and apparatus for providing optimized access to circuits for debug, programming, and test
US6880086B2 (en) * 2000-05-20 2005-04-12 Ciena Corporation Signatures for facilitating hot upgrades of modular software components
US6993730B1 (en) * 2001-01-10 2006-01-31 Tempus Fugit, Inc. Method for rapidly determining the functional equivalence between two circuit models
JP4899248B2 (ja) * 2001-04-02 2012-03-21 富士通セミコンダクター株式会社 半導体集積回路
US7263597B2 (en) * 2001-04-19 2007-08-28 Ciena Corporation Network device including dedicated resources control plane
US6578174B2 (en) * 2001-06-08 2003-06-10 Cadence Design Systems, Inc. Method and system for chip design using remotely located resources
GB0114317D0 (en) * 2001-06-13 2001-08-01 Kean Thomas A Method of protecting intellectual property cores on field programmable gate array
US6988232B2 (en) * 2001-07-05 2006-01-17 Intellitech Corporation Method and apparatus for optimized parallel testing and access of electronic circuits
US6832358B2 (en) * 2001-12-19 2004-12-14 Cadence Design Systems, Inc. System and method for providing burst licensing in a circuit simulation environment
WO2003067386A2 (en) * 2002-02-05 2003-08-14 Logicvision, Inc. Method and system for licensing intellectual property circuits
US7577540B2 (en) * 2002-03-01 2009-08-18 Nec Corporation Re-configurable embedded core test protocol for system-on-chips (SOC) and circuit boards
US7162644B1 (en) * 2002-03-29 2007-01-09 Xilinx, Inc. Methods and circuits for protecting proprietary configuration data for programmable logic devices
JP2005107911A (ja) * 2003-09-30 2005-04-21 Daihen Corp 書込情報生成用プログラム、ハードウェアへの情報書込用プログラム、これらのプログラムを記録したコンピュータ読み取り可能な記録媒体、書込情報生成装置及び情報書込装置
US6968478B1 (en) * 2003-12-18 2005-11-22 Xilinx, Inc. Method and apparatus for data transfer validation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021186975A1 (ja) 2020-03-19 2021-09-23 日本電気株式会社 課金情報処理装置、課金情報処理システム、課金情報処理方法及び課金情報処理プログラムが格納された非一時的なコンピュータ可読媒体

Also Published As

Publication number Publication date
CN1643532A (zh) 2005-07-20
US9152749B2 (en) 2015-10-06
EP1483712A2 (en) 2004-12-08
JP2005516288A (ja) 2005-06-02
US20030140255A1 (en) 2003-07-24
TW200307207A (en) 2003-12-01
EP1483712A4 (en) 2010-07-14
CA2473956A1 (en) 2003-07-31
TWI232388B (en) 2005-05-11
WO2003063044A2 (en) 2003-07-31
WO2003063044A3 (en) 2004-02-26

Similar Documents

Publication Publication Date Title
JP4217158B2 (ja) 電子回路のライセンスされた引渡しおよび課金をするための管理システム、方法および装置
US20230388290A1 (en) Secure feature and key management in integrated circuits
US9436848B2 (en) Configurator for secure feature and key manager
US7987373B2 (en) Apparatus and method for licensing programmable hardware sub-designs using a host-identifier
TW456103B (en) Reconfigurable secure hardware apparatus and method of operation
US8200472B1 (en) Method and apparatus for providing protected intellectual property
EP2702526B1 (en) Method and apparatus for securing programming data of a programmable device
CN101349997A (zh) 将数据写入芯片内存储器的方法及其系统
US20030149669A1 (en) Method and system for licensing intellectual property circuits
KR100826544B1 (ko) 반도체 집적 회로
US5751595A (en) Method for building and verifying authenticity of a rule system
US8670561B1 (en) Method and apparatus for limiting use of IP
JP2010160765A (ja) システムlsi及びこのデバッグ方法
Arria Arria II GX FPGA Development Kit
CN110968338A (zh) 适用于移动支付设备的升级优化方法和装置
Arria Arria V GT FPGA Development Kit
Crabill Configuration or Boot with NOR Flash for Sourcing Flexibility and Cost Reduction

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080311

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080604

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080623

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080709

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080716

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080807

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080911

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081014

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees