新四季網

用於電子電路的許可交付與計費的管理系統、方法和設備的製作方法

2023-06-03 14:06:01

專利名稱:用於電子電路的許可交付與計費的管理系統、方法和設備的製作方法
相關申請的交叉參考本申請要求了於2002年1月23日提交的名為「ManagementSystem,Method and Apparatus for Licensed Delivery and Accounting ofIntellectual Property in Electronic Circuits」、申請號為60/350,885的美國臨時專利申請的優先權。
有關聯邦政府出資的研究或開發的聲明。
N/A背景技術本發明通常涉及在目標電子電路中可編程配置的或設計的電子電路設計的許可,更具體而言涉及一種用在目標電子電路之內、用於對獲許可電子電路設計的交付進行安全許可和準確計費的系統和方法。
近年來,隨著集成電路(IC)規模及複雜度的增加,許多電路設計者已經發現使用現有專用電路來設計IC不再切實可行。結果,電路設計者採用了另外的方法來設計IC,這使得他們可以利用半導體技術的優點,同時滿足了電子產品增長的需求。
電路設計者所採用的這樣一種方法被稱為「再使用設計(designre-use)」,其中,將來自一個或多個現有IC設計或第三方提供商所提供的功能電路塊再次使用並生成一個新的IC設計。因為電路設計者不必設計出IC內的所有電路,所以該方法允許電路設計者利用新的半導體技術並保持生產率增長。「再使用設計」方法可以實現產品微型化和成本降低,可以將先前在單晶片內實現的若干功能集成到單個IC中以產生新產品,和/或將現有功能與最新設計的功能組合在一起以產生新產品。
此外,隨著半導體技術和電子設計自動化(EDA)工具的發展,再使用設計方法已經使得設計一個片上系統(SoC)成為可能,在所述片上系統中能夠設計整個系統並將其配置成能適合封裝在單個IC內。通常,這種SoC設計使用高級功能電路塊,由於通常包括電路設計者或第三方提供商的智慧財產權(IP),這些功能電路塊常常被稱為「IP核心」。採用IP核心的SoC設計方法可以使電路設計者加快開發周期。例如,電路設計者(「IP用戶」)可以從第三方提供商(「IP提供商」)那裡獲得一個或多個IP核心,由此避免了自己設計核心電路的必要,並且在設計開發過程中允許在較高級別集成核心電路。
當IP提供商向IP用戶提供IP核心時,通常,該IP提供商向該IP用戶許可在IC或系統開發過程中使用的電路設計。可以按以下兩種方式之一來許可IP核心基於「每個項目」或基於「每次使用」。當在每個項目的基礎上許可時,通常授權IP用戶在特定IC、產品或IC或產品系列內使用,並且收取該項目周期的整個費用。當在每次使用的基礎上許可時,通常對IP核心的每次使用收取費用或專利權稅,而往往不考慮要設計成什麼產品或者該項目的周期。
無論是對IP提供商還是對IP用戶,通常認為每次使用許可比每個項目許可更公平和更具有可預測性。例如,每個項目許可所需的整個費用通常相對較高,以便負擔支付(cover)在項目周期內IP核心的期望使用率。此外,IP提供商和IP用戶通常必須要估計預期產量和預期生產周期。如果該產品未達到估算的產量,那麼IP用戶通常要就為IP核心的每次使用付更多錢。另外,如果超過了預期產量,那麼IP提供商就通常要以更低的費用或專利權稅來許可每個IP核心。其結果是,由IP用戶支付的費用以及由IP提供商收取的專利權稅可能會與這些當事方最初成交的價格有很大的差異。
相反,當在每次使用的基礎上許可IP核心時,由於可能與原始估計有相當大的差異,IP提供商和IP用戶一般不必依賴預期產量和/或預期生產周期。此外,每次使用許可允許IP用戶在產品的生產周期內擴充許可IP核心的成本。然而,雖然每次使用許可一般比每個項目許可更公平且更可預測,但是每次使用許可通常沒有給IP提供商提供一種計算IP核心實際使用次數的可靠方式,即在生產IC過程中已採用的IP核心的數目。例如,IP提供商可能不得不依賴IP用戶來給出在各種產品中使用的IP核心數目的精確計算。
雖然現今存在可執行用於監控每次使用的軟體應用程式的軟體許可系統,但是還需要一種用於對目標電子電路和裝置內的獲許可電路設計的安全交付和準確計費進行管理的系統和方法。

發明內容
根據本發明,提供了一種許可在目標電子電路或裝置內使用電子電路設計的系統和方法。該許可系統允許在每次使用的基礎上來進行獲許可電路設計的安全交付和準確計費。
在一個實施例中,許可電子電路設計的方法包括通過驗證與電子電路設計相關聯的數據中所包含的許可信息,來確定電子電路設計是否獲許可在目標電子電路內使用,其中所述許可信息具有至少一種屬性。如果確定該電子電路設計獲許可在目標電子電路內使用,那麼通過許可控制器,將與電路設計相關的數據,比如一組向量,應用到目標電子電路中。接下來,響應於預定事件,來更新許可信息的屬性以表示電子電路設計獲許可在目標電路內使用。例如,可以經由許可控制器將一組測試向量應用到目標電路。如果確定該電子電路設計已經通過了與測試向量相關聯的一個或多個測試,那麼就更新許可信息的屬性。另外,也可以經由許可控制器將可編程配置數據應用到目標電路。在這種情況下,如果確定該電子電路設計在目標電子電路內是第一次被可編程配置,那麼就更新許可信息的屬性。
在另一個實施例中,許可系統包括一個計算機裝置,比如像包括第一存儲器的計算機,所述第一存儲器被配置成能存儲與至少一個電子電路設計相關聯的數據,其中所存儲的數據包括具有至少一種屬性的第一預定信息。該系統還包括一個耦接於計算機且可耦接於目標電子電路的許可控制器。將所述許可控制器配置成能在計算機與目標電路之間傳送數據。所述許可控制器包括第二存儲器,用於存儲與電子電路設計相關聯的第二預定信息,其中所述第二預定信息也具有至少一種屬性。第一和第二預定信息的每種屬性都可以包括各自許可控制器的標識符。
在該實施例中,將計算機配置成能訪問來自許可控制器中的存儲器的第二預定信息的屬性,將第一和第二預定信息中的各自許可控制器標識符進行比較,並且在各自許可控制器標識符匹配時,就經由許可控制器將與電子電路設計相關聯的數據應用到目標電路。例如,應用數據可以包括一組測試向量或可編程配置數據。在這種情況下,該許可系統通過管理和監視測試向量或配置數據的應用,來計費在目標電路內的電子電路設計的使用。
目前公開的許可系統允許IP核心提供商和IP核心用戶以更高精度在每次使用的基礎上統計在目標電子電路內使用的獲許可電子電路設計,由此對以所有當事方都公平的方式來許可電子電路設計,提高了確信度。
通過下述對發明的詳細說明,本發明的其它特徵、功能和方面將會變得明顯。


參照下述結合附圖的發明詳述,將更充分地理解本發明,在圖中圖1是根據本發明的一種許可系統的方框圖;圖2是圖1的系統中所包括的一種許可控制器的方框圖;圖3是根據本發明的一種基於網絡的許可系統的方框圖;圖4示出了一種在圖1的許可系統中使用的許可特徵文件的表示;圖5是舉例說明圖1的許可系統所採用的存儲格式的圖;圖6是其中採用圖1的許可系統的環境的方框圖;圖7A是具有圖1的許可系統中所包含的一個ID籤名寄存器的一種測試訪問埠結構的方框圖;
圖7B是圖1的許可系統中使用的、用於實現獲許可電路設計的功能操作的電路結構的方框圖;圖8是一種通過使用圖1的許可系統將獲許可電路設計交付給目標電路的流程圖;和圖9是一種說明計費獲許可電路設計的方法的流程圖,所述電路設計是通過使用圖1的許可系統來交付給目標電路。
發明詳述將2002年1月23日提交的申請號為60/350,885的美國臨時專利申請引入於此以供參考。
圖1示意性地描繪了一種根據本發明的智慧財產權許可(IPL)系統100的實施例。在該示意性的實施例中,許可系統100包括計算機102和連接到計算機102的許可控制器104。例如,計算機102可以包括通用計算機(例如,PC或膝上型電腦),該通用計算機包括至少一個處理器、至少一個諸如只讀存儲器(ROM)和隨機存取存儲器(RAM)之類的存儲器,和至少一個諸如磁碟之類的數據存儲器。許可控制器104包括電路(未示出),該電路被配置成允許控制器104經由第一總線(「P總線」)107來與計算機102進行通信。此外,為了可編程配置和/或測試目的,將許可控制器104配置成能經由第二總線108來訪問目標電子電路106。例如,第二總線108可以包括IEEE 1149.1總線,該總線被配置成允許許可控制器104利用已知的測試訪問埠(TAP)協議來訪問目標電路106。目標電路106可以包括任何適合的可編程電路,比如像可編程只讀存儲器(PROM)、快閃記憶體、現場可編程門陣列(FPGA)或複雜可編程邏輯器件(CPLD)。另外,目標電路106可以包括任何適合的非可編程電路,比如像專用集成電路(ASIC)或隨機存取存儲器(RAM)。應當注意,許可控制器104可以訪問目標電路106,從而以選定的設計層次等級來可編程地配置或測試目標電路內的獲許可的電子電路設計。例如,許可控制器104可以作為目標電路內的嵌入式核心或嵌入式存儲器來訪問獲許可電路設計,所述電路可以在印刷電路板(PCB)的系統內被配置成一個封裝的IC或FPGA。
在目前公開的實施例中,分別根據IEEE 1149.1標準測試訪問埠與邊界掃描體系結構規範中所描述的IEEE 1149.1標準和用於可編程裝置的系統內配置的IEEE 1532標準中所描述的IEEE 1532標準,採用許可控制器104來測試目標電路106和/或執行電路106的系統內配置(ISC),將這些標準引入於此以供參考。然而,應該理解的是,還可以採用另外的測試、掃描和ISC訪問方法及協議。此外,作為選擇,計算機102和/或許可控制器104還可以包括自動測試設備(ATE)或任何其它適合的測試/編程資源。
許可系統100包括安裝在計算機102的存儲器中的許可工具以及包含在許可控制器104中的非易失性數據存儲器,以便許可和計費在目標電路106內使用獲許可電路設計(嵌入式核心和存儲器)。應當理解的是,這裡所使用的術語″許可″指的是用於獲得核心電子電路設計每次單獨使用的收益的任何適合方法,例如獲得每個核心電路設計基於每次使用的收益。
圖1描述了一種許可特徵文件110(參見圖1)實例的放大圖。如圖1所示,許可特徵文件110包括存儲在計算機102的存儲器中的文本文件,該文本文件包含與將要交付給目標電路106的核心電路設計相關聯的許可數據。如圖1所示,許可特徵文件110包括獲許可特定電路設計的特徵或屬性。例如,這些屬性可以包括許可「發行」號、「產品」代碼、「版本」代碼、許多將要添加/刪除的許可、許可「期滿」代碼、「供應商」代碼、「顧客」代碼、以及許可控制器序列號「IPLC_SN」,即許可控制器104的序列號。另外,許可特徵文件110中的每組屬性都包括「密鑰」,該「密鑰」是利用加密算法產生的,所述加密算法把獲許可的電路設計的屬性信息考慮在內。通過使用許可控制器104的非易失性數據存儲器中保存的加密密鑰和許可數據來驗證許可特徵文件110中的信息,許可系統100實現了將獲許可的核心電路設計安全交付給目標電路106。
許可系統在目前公開的實施例中,將許可系統100(參見圖1)配置成能根據應用到或交付給目標電路106的編程數據或測試數據(例如,向量)來跟蹤目標電路106內獲許可電路設計的使用。許可系統100可以實現在智慧財產權(IP)核心供應商或提供商(「IP提供商」)與IP核心顧客或用戶(「IP用戶」)之間完成的安全地每次使用許可和認證,並使其安全性得到提高。
圖6示意性地描繪了用於IP提供商和IP用戶的電子電路設計許可環境600,所述IP提供商和IP用戶採用了包含許可控制器104(參見圖1)的許可系統100。上述安裝在計算機102上的許可工具可操作來允許IP提供商把與特定電子電路設計相關聯的數據IP1-IPn602.1-602.n作為獲許可的向量交付給IP用戶。例如,數據IP1-IPn602.1-602.n可能適合於可編程地配置或測試目標電路106內的電子電路設計。此外,許可工具還可利用供應商(IP提供商)代碼、顧客(IP用戶)代碼和/或產品代碼(例如,IP類型)來標記數據IP1-IPn602.1-602.n,其中在向量文件內利用密鑰對這些代碼進行加密,如同許可特徵文件110(參見圖1)內的加密屬性,以便防止許可系統出現不希望的失效。IP用戶可以經由許可控制器104將獲許可的向量604直接應用於目標電路106。另外,IP用戶也可以把獲許可的向量604與其它向量(例如,不許可的用戶向量)組合起來,以形成目標電路106的獲許可/不許可向量組合後的向量組606,然後經由許可控制器104將向量組606應用到目標電路106。
其結果是,許可環境600允許在向量604和606的應用期間,對在目標電路106內許可使用的電子電路設計進行準確計費,由此允許基於每次使用、每個應用或每個實例對獲許可電路設計進行準確計費。此外,由於許可環境600提供了獲許可的測試向量應用,所以IP用戶一般無須支付測試失敗(例如,包含製造缺陷的故障電路設計)的電路設計費用。因此,當在測試向量應用期間目標電路損壞時不會用盡許可,並且IP用戶只支付好的裸片上或IC內的獲許可電路設計的費用。許可環境600還允許IP用戶添加或刪除許可(如,許可608),或者經由許可伺服器/管理器610向IP提供商發出一個合適請求,以把許可608從一個許可控制器移動到另一個許可控制器。因此,IP用戶能夠獲得他或她需要的任何獲許可電路設計的任何數量的每次使用許可。IP用戶根據商情需要和/或規定來獲得這些許可,並且根據實際使用的電子電路設計的數目和類型來支付許可費用。
許可控制器圖2示意性地描繪了許可系統100(參見圖1)中所包含的許可控制器104的一個實施例。在示意性的實施例中,許可控制器104包括非易失性數據存儲器202(例如,串行PROM)、PROM控制電路204、輸入/輸出接口206、和IEEE 1149.1總線控制電路208。輸入/輸出接口206耦合於P總線107,該P總線包括用於傳輸時鐘信號(PCLK)的線路以及各個PDATA_IN和PDATA_OUT數據總線。在下文的部分中提供了對串行PROM 202、PROM控制電路204、輸入/輸出接口206和IEEE 1149.1總線控制電路208的說明。
輸入/輸出接口在目前公開的實施例中,輸入/輸出接口206(參見圖2)包括可配置成允許計算機102(參見圖1)與許可控制器104經由P總線107進行相互通信的電路,所述P總線107包括同步的高速並行數據總線。P總線107上的PCLK信號用來對輸入數據PDATA_IN從計算機102到許可控制器104的傳輸進行同步,和對輸出數據PDATAOUT從控制器104到計算機102的傳輸進行同步。因此,將輸入/輸出接口206配置成能管理PROM控制電路204及IEEE 1149.1總線控制電路208兩者與計算機102之間的數據傳輸。
IEEE 1149.1總線控制電路IEEE 1149.1總線控制電路208(參見圖2)包括這樣的電路,它被配置成能從輸入/輸出接口206那裡接收並行數據和控制信號,並將這些信號轉換成串行的IEEE 1149.1協議,該協議通過IEEE 1149.1總線108被輸出到目標電路106(參見圖1)。IEEE 1149.1總線控制208的電路進一步配置成能通過IEEE 1149.1總線108從目標電路106中接收所得到的串行數據,並在把該串行數據發送到輸入/輸出接口206之前先將該數據轉換成並行數據。
PROM控制電路將PROM控制電路204(參見圖2)配置成能從輸入/輸出接口206接收並行數據和控制信號,並在通過SDA(串行數據/地址)總線利用SCLK(串行時鐘)將所述數據和控制信號發送到串行PROM202之前,先將它們轉換成適合的雙線串行協議。PROM控制電路204可進一步配置成能通過SDA總線接收從串行PROM 202中返回的串行數據,並在把該串行數據發送到輸入/輸出接口206之前先將該數據轉換成並行格式。
串行PROM在優選實施例中,串行PROM 202(參見圖2)包括非易失性存儲器。為了許可核心電子電路設計,所述非易失性存儲器可以存儲數據。例如,串行PROM 202可以包括串行電可擦可編程只讀存儲器(SEEPROM)或任何其它適當形式的非易失性讀/寫存儲器。串行PROM 202採用上述雙線串行協議與PROM控制電路204連接。具體地說,串行PROM 202接收串行時鐘信號SCLK,利用所述串行時鐘信號SCLK,通過雙向數據/地址總線SDA使數據和地址傳輸與PROM控制電路204同步。例如,串行PROM 202可以包括4096個可尋址存儲單元,並且可以將其配置成能提供字節寬的數據。
然而,應該理解的是,許可控制器104可以採用其它合適類型的數據存儲器,並且可以將其配置成能使用其它適合的通信協議。例如,許可控制器104可以採用並行閃速存儲器或使用IEEE 1149.1協議的串行PROM。此外,許可控制器104可以採用與許可系統100分開實現的數據存儲器。例如,圖3示意性地描繪了基於網絡的許可管理器結構300的實施例,所述許可管理器結構300包括網絡308、計算機306和連接於該網絡308的許可系統320-321。在舉例說明的實施例中,除了與獲許可電路設計相關聯的數據是存儲在計算機306中所包含的數據存儲器312(例如,一個磁碟)中而不是(或者除了)存儲在許可控制器324和/或325中之外,許可系統320-321中的每一個都與許可系統100(參見圖1)相類似。由此,可以將許可系統320-321配置成能訪問與系統320-321分開存儲的獲許可電路設計數據,例如許可數據可以存儲在許可系統320-321經網絡308訪問的存儲器312上。應該理解的是,在這個結構中,計算機306中所包含的數據存儲器3 12實際上與許可控制器324-325中所包含的非易失性存儲器執行相同功能。
許可管理器如上所述,圖3描繪了基於網絡的許可管理器結構300。在示意性的實施例中,基於網絡的許可管理器300包括網絡308和許可系統320-321以及連接於網絡308的計算機302、304和306。例如,網絡308可以包括區域網(LAN)、廣域網(WAN)、網際網路或任何其它適合的網絡,而計算機302、304和306可以包括適合的通用計算機。
參照下列說明性的示例,將更好地理解圖3的基於網絡的許可管理器300。這個示例採用了示意性的許可特徵文件310(參見圖3中文件310的放大圖),所述許可特徵文件包括存儲在計算機304(「伺服器X」)中的文本文件。如圖3所示,所述許可特徵文件310包括用於將要交付給或應用到目標電路326和/或327上的電路設計的三個「IPL」許可。如上所述,參照許可特徵文件110(參見圖1),IPL許可包括用於各個特定電路設計許可的適當屬性和密鑰。網絡308上的計算機302、304、306和322-323中的每一個都可以訪問許可特徵文件310(參見圖3)。在該示例中,計算機322與許可控制器324連接,通過所述許可控制器可以將獲許可的向量應用到目標電路326。同樣,計算機323與許可控制器325連接,通過所述許可控制器可以將獲許可的向量應用到目標電路327。應該認識到的是,網絡308可能具有附於網絡上的計算機上的一個或多個許可控制器。在下文的部分中,將進一步描述諸如文件110(參見圖1)和310(參見圖3)之類的許可特徵文件以及串行PROM 202(參見圖2)的格式。
許可特徵文件圖4示意性描繪了許可特徵文件410的一種表示,可以結合基於網絡的許可管理器300(參見圖3)來使用所述許可特徵文件。如圖4所示,許可特徵文件410包括含有多行文本的文本文件。例如,每一行都可以包括描述特定核心電子電路設計的許可屬性的產品行。在許可特徵文件410中,每個產品行都具有下列格式LICENSE_NAME發行產品版本+/-許可期滿供應商顧客IPLC-SN密鑰,其中「LICENSE_NAME」欄位包含IP提供商提供的許可名稱,並且剩餘欄位都類似於上面參照圖1所述的許可特徵文件110的相應欄位。
如圖4所示,許可特徵文件410的第三至第七行表明LICENSE_NAME為「IPL」,這是將要交付給或應用到目標電路326或327(參見圖3)的核心電路設計的許可的名稱。在目前公開的實施例中,許可特徵文件410頂部的開頭兩行以「#」開始,該「#」將它們限定為可選注釋行。具體地說,包含的第一行用以描述第三至五行以及第七行中的欄位格式。例如,在第三行中,發行號為「1」、產品代碼為「ab1」、版本代碼為「1」、將要添加的許可數目為「10000」、期滿代碼為「12312002」、供應商代碼為「2」、顧客代碼為「f1」,以及IP許可控制器序列號IPLC_SN為「1270」。此外,在第七行中,發行號為「1」、產品代碼為「dd0」、版本代碼為「7」、將要添加的許可數目為「3500」、期滿代碼為「00000000」、供應商代碼為「A」、顧客代碼為「f1」,以及IPLC_SN為「1271」。
注意,序列號1270對應於許可控制器324,而序列號1271對應於許可控制器325(參見圖3)。此外,當存在對應相同產品代碼的多行時,發行號可以用來跟蹤附加許可。例如,許可特徵文件410的第五行(參見圖4)是對應產品代碼ab1的許可的第二發行號(發行2)。這行將300個許可添加到由發行1提供的10,000個許可中,正如文件410的第三行所示的那樣。許可的最後發行(例如,最後的發行號512.5,參見圖5)是存儲在串行PROM 202中(參見圖2),以便許可系統能夠容易地確定何時有新發行的許可。隨後,更新串行PROM202以證明這些最新發行的許可。按類似的方式,可以從許可特徵文件410中刪掉許可,或者將許可從一個許可系統的許可特徵文件轉移到另一個許可系統的許可特徵文件中。
應當注意的是,「密鑰」欄位是由IP提供商生成的,且包括安全加密後的密鑰。這個許可密鑰值考慮到了相應產品行中的信息以及其它特定供應商的數據。在目前公開的實施例中,第三至七個產品行(參見圖4)也許不能由IP用戶來修改,因為這樣做將會導致許可密鑰值(諸如最初由IP提供商生成的)與文件中的產品許可數據不一致。為了改變許可文件中的任何特徵或其它數據,IP用戶通常從IP提供商那裡獲得新的許可特徵文件410。這確保了與指定的許可控制器一起使用核心電路設計,而且依照許可的需求來使用。
在另外的實施例中,許可特徵文件410的產品行可以包括一個或多個加密欄位,正如許可特徵文件410的第六行中舉例說明的那樣。第六行中的加密值表示得到許可的特定電子電路設計和許可密鑰的屬性。雖然產品行的這種形式不具有獨立的欄位,但是由於是由許可系統解釋的,所以它提高了安全性。
串行PROM格式在目前公開的實施例中,將串行PROM 202(參見圖2)配置成能存儲許可數據來補充由許可特徵文件(例如,文件110(參見圖1)和310(參見圖3))提供的許可信息。通過將存儲在串行PROM 202中的許可數據與許可特徵信息一起使用,來跟蹤和管理獲許可電路設計的交付。
圖5示意性地描繪了用於在串行PROM 202(參見圖2)中存儲許可數據的格式500。數據存儲格式500在地址單元0至n-1提供了多個字節的數據存儲器。具體地說,存儲在串行PROM中的許可數據包括許可控制器序列號502、PROM版本504、PROM尺寸506和PROM籤名510,保存這些數據以提供串行PROM中所存儲的數據的完整性檢查。在目前公開的實施例中,只有許可控制器104的供應商知道用以生成和維持PROM籤名510的算法。這在電子電路設計的許可過程中提高了安全性,因為IP用戶在不導致PROM籤名510和已存儲的許可數據不一致的情況下,不可能改變串行PROM中所存儲的許可數據。優選地,每當為電路設計許可而訪問串行PROM時,都驗證PROM籤名510。此外,無論何時對存儲在串行PROM中的任何許可數據進行更新,都再生和更新PROM籤名510。
如圖5所示,發行給IP用戶的許可,比如像許可1512和許可2514,都被存儲在從位置「許可地址」開始的串行PROM中。許可512和514中的每一個都是由存儲在串行PROM中的許多字節組成。如圖5中的放大圖所示,許可1512包括供應商指示符512.1、顧客指示符512.2、產品指示符512.3和至少一個IP版本代碼512.4,如同在許可特徵文件的產品行中提供的那樣。這一信息表示許可1512存在於串行PROM之中。許可1512還包括最後的發行號512.5和許多未使用的許可(「#未使用的許可」)512.6。可以更新信息512.1-512.6並利用該信息來記錄每個獲許可電路設計。應該認識到的是,上述許可數據可以存儲在與許可系統100分開的適當數據存儲介質中。例如,許可數據可以存儲在磁碟上,許可系統100能夠通過局部總線或網絡來訪問所述磁碟。具體地說,許可信息可以存儲在計算機306中所包含的存儲裝置312上,許可系統320-321能夠通過網絡308(參見圖3)來訪問該計算機。這允許通過網絡308上的多個許可控制器324-325來對獲許可的電子電路設計進行集中計費。
識別IP核心和確保IP核心的安全採用許可系統100能夠識別在目標電路內可編程配置哪個(哪些)核心電子電路設計,並且確保編程電路設計的安全,以便它不會被回讀和逆向工程設計或者不會被無意中修改或擦除。
識別特定核心電子電路設計的一種方式就是通過對可能容易地被訪問和詢問的寄存器中的電路設計的版本、類型和/或廠商進行編碼。例如,IEEE 1149.1和1532標準指定了兩個數據寄存器(DR)-具有標準32位格式的用戶代碼DR和ID代碼DR,並且可以利用上述這兩種標準來規定電子電路設計的版本、類型和廠商。
為可編程電路設計而提供的安全特徵通常包括用於讀保護、程序保護和擦除保護的機制,所述這些機制一般以任意適當的組合來使用。此外,通常利用TAP控制器指令來啟用這些保護機制,並且通過特定的指令序列、數據模式或這兩者來使之無效。在一些電路設計中,讀保護和程序保護只能通過第一次擦除目標裝置的已編程的內容來使之無效。為此,一些可編程電路提供了能用來解鎖保護機制的諸如個人識別碼(PIN)之類的用戶可定義的密鑰。用戶可定義的密鑰手段提供了防止逆向工程設計或無意中修改/擦除的安全方法。一些可編程電路還提供了永久性加鎖,以便使保護機制不能被無效。在目前公開的實施例中,許可系統100生成保護密鑰,並將該密鑰存儲在許可控制器104的串行PROM 202當中(參見圖1-2),以便只有控制器104能夠對目標電路106內配置的電路設計進行讀取/編程/擦除。
在可選的實施例中,在進行配置以確定是否已利用獲許可電路設計的版本來對電路106進行編程之前,詢問目標電路106(參見圖1)。例如,如果確定已利用與許可1512(參見圖5)相關聯的電路設計對目標電路106進行了編程,那麼就不減少未使用的許可512.6的數目,並且把編程操作當作為更新(即,利用電路設計的新版本來對目標電路進行重新編程),而不是把這視為對目標電路106內的電路設計的第一次的可編程配置。然而,因為用戶代碼DR是可編程的,所以對於在編程之前識別當前電路設計,這是一種相對不可靠的方式。為此,目前公開的許可系統100的實施例採用ID籤名寄存器(IDSR)704(參見圖7A),以用於識別目標電路內實現的當前電路設計。
圖7A示意性描繪了可以在目標電路106(參見圖1)內實現的測試訪問埠(TAP)結構700的實施例。在舉例說明的實施例中,TAP結構700包括諸如IEEE 1149.1TAP控制器之類的TAP控制器702、指令寄存器(IR)706以及連接於該TAP控制器702和IR 706的IDSR 704。IDSR 704是用戶定義的DR,並且在對目標電路106進行編程期間,啟動所述IDSR來在測試數據輸入端(TDI)(參見圖1和7)生成數據籤名。具體地說,將IDSR 704配置成能在經由TDI將獲許可電路設計的籤名交付給目標電路106時創建並存儲該籤名。然而,可以由許可控制器104選擇IDSR 704,並且在測試數據輸出端(TDO)以外將其掃描(參見圖1和7),以便識別出目前編程到目標電路106中的獲許可電路設計。由此,可以在對目標電路106進行編程或重新編程之前,安全而準確地識別出獲許可電路設計。
人們還期望能擁有識別和確保在非可編程目標電路內實現的獲許可的電子電路設計的安全的能力,所述非可編程目標電路諸如是ASIC或RAM。為此,目前公開的實施例提供了啟動密鑰,該啟動密鑰可以被可編程地配置成能啟動獲許可電路設計的功能操作。啟動密鑰避免了在對獲許可的設計進行準確計費之前使用獲許可電路設計。
圖7B示意性描繪了採用上述啟動密鑰以啟動非可編程目標電路內的獲許可電路設計的功能操作的電路結構720。在示意性的實施例中,電路結構720包括啟動密鑰更新/存儲(U/Mem)寄存器724,用於存儲啟動密鑰的表示。例如,啟動密鑰U/Mem寄存器724可以包括相對小的(例如,32-128位)可編程電路或非易失性存儲器。此外,可以在目標電路內獨立於獲許可電路設計或作為獲許可電路設計的一部分來實現電路結構720。另外,可以在目標電路內作為TAP控制器的一部分來實現電路結構720。
具體地說,經由目標電路的TDI輸入端,串行地向啟動密鑰轉移/捕獲(S/C)寄存器726(參見圖7B)提供啟動密鑰的表示。例如,啟動密鑰S/C寄存器726可以包括在TAP控制器的TDI和TDO管腳之間可訪問的用戶定義的數據寄存器(DR)(參見圖7A)。此外,除了當S/C寄存器726被更新時它的內容存儲在啟動密鑰U/Mem寄存器724中之外,啟動密鑰S/C寄存器726實質上是按照同常規的DR相同的方式進行操作的。接下來,啟動密鑰U/Mem寄存器724向啟動密鑰解碼器電路722提供啟動密鑰以供進行後續解碼。如果在解碼之後認為啟動密鑰有效,那麼解碼器電路722就認為是IP啟動信號(參見圖7B),該IP啟動信號用於啟動獲許可電路設計的功能操作。
在目前公開的實施例中,啟動獲許可電路設計的功能操作的啟動密鑰的值是由IP提供商預先定義的,並且在許可系統測試獲許可電路設計之前或之後可以對所述啟動密鑰的值進行可編程配置。例如,許可系統100(參見圖1)可以在許可控制器104的串行PROM中存儲啟動密鑰。在許可系統100已經正確地計費獲許可電路設計之後,所述許可系統100可以使用該啟動密鑰來啟動在目標電路上實現的獲許可電路設計的功能操作。
應當理解的是,在許可系統100內上述啟動密鑰可以用於其它目的。例如,啟動密鑰可以用來啟動目標電路內的保持電路的功能操作,比如像被配置成能幫助測試獲許可電路設計的「輔助」電路。此外,又可以將輔助電路配置成能啟動和/或加速獲許可電路設計的測試。可以在目標電路內獨立於獲許可電路設計或作為獲許可電路設計的一部分來實現輔助電路。
此外,還應該認識到的是,除了供識別非可編程電路中的獲許可電路設計和確保其安全的啟動密鑰之外,許可系統還可以生成其它電路信息。例如,可以由許可系統生成諸如IP序列號(IPSN)、ID代碼和/或測試和修復狀態之類的電路信息,將這些信息存儲在許可控制器的串行PROM中,然後在目標電路內對其進行可編程配置。應當注意也可以採用IPSN來跟蹤獲許可電路設計。許可系統可以訪問這個電路信息來確定先前是否對獲許可電路設計進行了計費、測試和/或經由啟動密鑰啟動它,或者訪問獲許可電路設計的測試和修復狀態。
在目前公開的實施例中,經由目標電路的TDI輸入端向IPSN轉移/捕獲(S/C)寄存器728(參見圖7B)串行地提供IPSN的表示。像啟動密鑰S/C寄存器726一樣,IPSN S/C寄存器728可以包括在TAP控制器的TDI和TDO管腳之間可訪問的用戶定義的DR(參見圖7A)。此外,除了當S/C寄存器728被更新時它的內容存儲在IPSNU/Mem寄存器730中之外,IPSN S/C寄存器728基本上是按照同常規的DR相同的方式進行操作的,所述IPSN U/Mem寄存器可以包括相對小的(例如,32-128位)可編程電路或非易失性存儲器。如圖7B所示,示意性的電路結構720還包括置於S/C寄存器726和728與TDO線路之間的多路復用器732,並且對其進行配置以向TDO線路有選擇地提供啟動密鑰或IPSN。
許可系統的應用和操作參照圖8,舉例說明了一種利用許可系統100(參見圖1)來安全遞送/應用獲許可的核心電子電路設計和向量的方法。應當注意,許可系統100的方法是利用安裝在計算機102上的許可工具以及存儲在許可控制器104(參見圖1)中的串行PROM 202(參見圖2)中的許可數據來執行的。正如在步驟802中描述的那樣,指定的核心電子電路設計的獲許可向量文件是由IP提供商提供的。該獲許可向量文件包括用於電路設計的編程和/或測試數據,以及在向量中許可的各個電路設計的供應商代碼、顧客代碼和產品代碼。接下來,如步驟804中所描述的,讀取許可特徵文件以確定目前許可哪些電路設計特徵。然後,如步驟806中所描述的,讀取串行PROM 202中所包含的信息。
接下來,如步驟808中所描述的,相對於串行PROM中所存儲的PROM籤名,來驗證存儲在串行PROM 202中的信息的完整性。然後,如步驟810中所描述的,確定PROM籤名是否與已存儲的PROM信息相一致。如果PROM籤名與已存儲的PROM信息不一致,由此表示已經不恰當地改變了串行PROM的內容,那麼就經由計算機102向IP用戶發布錯誤並不應用所述向量,正如步驟811中所描述的那樣。否則,如步驟812中所描述的,確定給各個許可控制器104分配什麼許可。具體地說,將包含在PROM信息中的許可控制器序列號(即IPLC_SN)與許可特徵文件的各個產品行進行比較,並且將與許可控制器序列號匹配的產品行確定為分配給該許可控制器的許可。
接下來,如步驟814中所描述的,通過電路設計許可的各個供應商、顧客和產品代碼來識別電路設計許可(諸如從串行PROM中讀取)。然後,如步驟816中所描述的,相對於分配給許可控制器104的許可特徵,來驗證所述許可。接下來,如步驟818中所描述的,確定在串行PROM 202中所不包含的許可特徵文件中是否存在任何電路設計許可。如果在許可特徵文件而非串行PROM中包含電路設計許可,那麼就把該許可視作為新的許可,並且如步驟820中所描述的那樣,將相應的許可信息連同新生成的PROM籤名一起添加到串行PROM中。
然後,如步驟822中所描述的,驗證電路設計許可信息以便看看是否還需要更進一步地更新串行PROM 202中存儲的許可數據。具體地說,可以更新串行PROM中的許可數據,以便增加/減去未使用的電路設計許可的數目,刪除許可,將許可重新轉讓給另一個許可控制器,或者更新IP版本。在已經驗證了電路設計許可之後,如步驟824中所描述的,對串行PROM許可數據以及新生成的PROM籤名進行所有必要的更新。
在已經驗證了電路設計許可並將任何必要的更新編程到串行PROM 202中的情況下,如步驟825中所描述的,讀取獲許可向量文件,以確定需要應用所述向量的電路設計許可。接下來,如步驟826中所描述的,驗證編程/測試環境(即,包括獲許可電路設計的目標電路106),以保證環境的完整性,並且保證以IP提供商所授權的方式訪問的電路設計的合法性。如果不是所期望的環境,那麼就如步驟828中所描述的那樣,經由計算機102向IP用戶發布錯誤,並且不應用所述向量。在驗證編程/測試環境之後,如步驟830中所描述的,對每個獲許可電路設計的目標電路106執行識別檢查。例如,取決於目標電路,可以驗證一個或多個用戶代碼、ID代碼或IDSR值。如果目標電路106的識別檢查失敗,即對獲許可向量而言電路被確定是不正確的組件或電路,那麼就如步驟828中所描述的那樣,經由計算機102向IP用戶發布錯誤,並且不應用所述向量。否則,如步驟832中所描述的,經由許可控制器104和IEEE 1149.1總線108,將所述獲許可向量應用到目標電路106。
參照圖9,舉例說明了一種通過使用許可系統100(參見圖1)來準確計費應用到目標電路的獲許可電路設計/向量的方法。如步驟902中所描述的,確定獲許可向量是否是供可編程配置或測試獲許可電路設計時使用。如果獲許可向量是用於編程目的,那麼如步驟904中所描述的那樣,利用上述識別檢查(參見圖8的步驟830)來確定目前在目標電路內是對目標電路106進行了編程還是尚未編程(例如,利用電路設計的舊版本)。如果已經利用電路設計的舊版本對目標電路106進行了編程,那麼就如步驟906中所描繪的那樣,將所述向量應用到該電路。然而,由於正在利用相同的電路設計對該目標電路進行重新編程(儘管假設利用了更新的版本),串行PROM 202中未使用的許可值的數目沒有減少。應當認識到,當最初把舊版本的設計編程到目標電路中時,用於該電路設計的許可是被計費過的。如果尚未對目標電路106進行編程或者尚未利用不同於獲許可電路設計的電路設計對其進行編程,那麼就如步驟908中所描述的那樣對所述目標電路進行編程,並如步驟910中所描述的那樣減少未使用的許可值的數目。一旦已經對向量中所有的獲許可電路設計進行了編程或重新編程,就如步驟912中所描述的那樣,更新包括PROM籤名的串行PROM數據。
如果獲許可向量是用於測試目的,那麼就如步驟914中所描述的那樣,將所述向量應用於目標電路106內的電路設計。然後,如步驟916中所描述的,確定目標電路內的電路設計是否已經通過了測試。如果目標電路106已經通過了測試,那麼就如步驟918中所描述的那樣,減少在向量中許可的電路設計的未使用的許可值數目。接下來,如步驟912中所描述的,更新串行PROM 202以及PROM籤名。如果目標電路106沒有通過測試,則並不減少不合格電路設計的未使用的許可值數目。由此,IP用戶最終不會負擔那些因(例如)電路中的製造缺陷而未通過測試的獲許可電路設計的費用。
此外,本領域的普通技術人員還將認識到的是,在不背離這裡所公開的本發明構思的情況下,可以對上述電路設計許可系統和方法作出修改和變化。因此,本發明視作只能由所附的權利要求的範圍和精神來限定。
權利要求
1.一種許可在一個目標電子電路內使用一個電子電路設計的方法,該方法至少在一個許可系統中使用,每個許可系統都包括一個可通信地耦合於各個目標電子電路的許可控制器,所述方法包括以下步驟通過驗證與該電子電路設計相關聯的第一數據中所包含的第一許可信息,來確定該電子電路設計是否獲許可在所述目標電子電路內使用,所述第一許可信息具有至少一種關聯屬性;如果確定該電子電路設計獲許可在所述目標電子電路內使用,那麼就經由所述許可控制器將第一數據應用到所述目標電子電路;以及響應於預定事件,更新所述至少一種關聯屬性,以表示許可在所述目標電子電路中使用所述電子電路。
2.如權利要求1所述的方法,其中所述確定步驟包括訪問第二許可信息,將所述第一許可信息的至少一部分與該第二許可信息的至少一部分相比較,並且根據比較結果來確定所述電子電路設計是否獲許可在所述目標電子電路內使用。
3.如權利要求1所述的方法,其中所述應用步驟包括將第一數據應用到所述目標電子電路中,用於在所述目標電子電路內可編程配置所述電子電路設計。
4.如權利要求3所述的方法,進一步包括以下步驟產生應用於所述目標電子電路的所述第一數據的一個籤名。
5.如權利要求3所述的方法,其中所述更新步驟包括如果確定所述電子電路設計在所述目標電子電路內是第一次可編程配置,就更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
6.如權利要求5所述的方法,進一步包括以下步驟如果確定所述電子電路設計在所述目標電子電路內不是第一次可編程配置,就不更新所述至少一種關聯屬性。
7.如權利要求1所述的方法,其中所述應用步驟包括將所述第一數據應用到所述目標電子電路,用於在所述目標電子電路內測試所述電子電路設計。
8.如權利要求7所述的方法,其中所述更新步驟包括如果確定所述電子電路設計已經通過了所述測試,則更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
9.如權利要求8所述的方法,進一步包括以下步驟如果確定所述電子電路設計尚未通過所述測試,則不更新所述至少一種關聯屬性。
10.如權利要求7所述的方法,進一步包括以下步驟如果確定所述電子電路設計已經通過了所述測試,則經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作。
11.如權利要求1所述的方法,進一步包括以下步驟經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作或測試操作。
12.如權利要求1所述的方法,其中所述許可系統與至少一個網絡連接,並且所述確定步驟包括通過該網絡訪問所述第一許可信息的至少一部分。
13.如權利要求2所述的方法,其中所述許可系統與至少一個網絡連接,並且所述確定步驟包括通過該網絡訪問所述第一和所述第二許可信息的至少一部分。
14.如權利要求1所述的方法,其中所述確定步驟、所述應用步驟和所述更新步驟都是由多個許可系統執行的,每個許可系統都與至少一個網絡連接。
15.一種許可在一個目標電子電路內使用一個電子電路設計的系統,包括至少一個第一存儲器,其被配置來存儲與該電子電路設計相關聯的第一數據,所述第一數據包括第一許可信息,所述第一許可信息具有至少一種關聯屬性;一個計算機,其被配置來訪問存儲在所述第一存儲器中的第一數據,並且通過驗證所述第一許可信息來確定是否許可在該目標電子電路內使用該電子電路設計;和一個控制器,其被配置來將所述第一數據從該計算機傳送到所述目標電子電路,其中所述計算機進一步被配置成如果確定許可在所述目標電子電路內使用所述電子電路設計,那麼就經由該控制器將所述第一數據應用到所述目標電子電路。
16.如權利要求15所述的系統,其中所述計算機進一步被配置成響應於預定事件,更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
17.如權利要求15所述的系統,其中所述計算機進一步被配置成訪問所述第二許可信息,將所述第一許可信息的至少一部分與所述第二許可信息的至少一部分相比較,並且根據比較結果來確定是否許可在所述目標電子電路內使用所述電子電路設計。
18.如權利要求17所述的系統,其中所述第一存儲器進一步被配置成能存儲所述第二許可信息。
19.如權利要求17所述的系統,進一步包括第二存儲器,其被配置成能存儲所述第二許可信息。
20.如權利要求19所述的系統,其中所述第二存儲器包含在所述控制器中,並且所述控制器進一步被配置成能把所述第二許可信息從所述第二存儲器傳送到所述計算機。
21.如權利要求15所述的系統,其中所述計算機進一步被配置成能將所述第一數據應用到所述目標電子電路,用於在所述目標電子電路內可編程配置所述電子電路設計。
22.如權利要求21所述的系統,其中所述目標電子電路被配置來生成所述第一數據的一個籤名。
23.如權利要求21所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計在所述目標電子電路內是第一次被可編程配置,則更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
24.如權利要求23所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計在所述目標電子電路內不是第一次被可編程配置,則不更新所述至少一種關聯屬性。
25.如權利要求15所述的系統,其中所述計算機進一步被配置成將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內測試所述電子電路設計。
26.如權利要求25所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計已經通過了所述測試,則更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
27.如權利要求26所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計尚未通過所述測試,則不更新所述至少一種關聯屬性。
28.如權利要求25所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計已經通過了所述測試,則經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作。
29.如權利要求15所述的系統,其中所述計算機進一步被配置成經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作或測試操作。
30.如權利要求15所述的系統,進一步包括至少一個網絡,可通信地連接於該網絡的所述第一存儲器和所述計算機,並且其中所述計算機進一步配置成通過該網絡訪問所述第一許可信息的至少一部分。
31.如權利要求19所述的系統,進一步包括至少一個網絡、可通信連接於該網絡的所述第一存儲器、所述第二存儲器和所述計算機,並且其中所述計算機進一步配置成通過該網絡訪問所述第一和所述第二許可信息的至少一部分。
32.一種許可在一個目標電子電路內使用一個電子電路設計的方法,該方法在一個許可系統中使用,該許可系統包括一個計算機和一個用於在該計算機與該目標電路之間傳送數據的控制器,所述方法包括以下步驟由該計算機來訪問與該電子電路設計相關聯的第一數據,所述第一數據包括第一許可信息,所述第一許可信息具有至少一種關聯屬性;由該計算機來驗證第一許可信息以確定是否許可在該目標電子電路內使用該電子電路設計;以及如果確定許可在該目標電子電路內使用該電子電路設計,則經由所述控制器通過該計算機將該第一數據應用到該目標電子電路。
33.如權利要求32所述的方法,進一步包括以下步驟在至少一個第一存儲器中存儲所述第一數據。
34.如權利要求33所述的方法,進一步包括以下步驟在至少一個第一存儲器中存儲所述第一數據,其中所述第一存儲器包含在所述許可系統中。
35.如權利要求32所述的方法,進一步包括以下步驟響應於預定事件,由所述計算機來更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
36.如權利要求32所述的方法,其中所述驗證步驟包括由所述計算機來訪問所述第二許可信息,將所述第一許可信息的至少一部分與所述第二許可信息的至少一部分相比較,並且根據比較結果來確定是否許可在所述目標電子電路內使用所述電子電路設計。
37.如權利要求36所述的方法,進一步包括以下步驟在至少一個第一存儲器中存儲所述第二許可信息。
38.如權利要求36所述的方法,進一步包括以下步驟在至少一個第二存儲器中存儲所述第二許可信息。
39.如權利要求38所述的方法,進一步包括以下步驟由所述控制器將所述第二許可信息從所述第二存儲器傳送到所述計算機,其中所述第二存儲器包含在所述控制器中。
40.如權利要求32所述的方法,其中所述應用步驟包括將所述第一數據應用到所述目標電子電路,用於在所述目標電子電路內可編程配置所述電子電路設計。
41.如權利要求40所述的方法,進一步包括以下步驟由所述目標電子電路來生成所述第一數據的一個籤名。
42.如權利要求40所述的方法,進一步包括以下步驟如果確定所述電子電路設計在所述目標電子電路內是第一次被可編程配置,則由所述計算機來更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
43.如權利要求42所述的方法,進一步包括以下步驟如果確定所述電子電路設計在所述目標電子電路內不是第一次被可編程配置,則不更新所述至少一種關聯屬性。
44.如權利要求32所述的方法,其中所述應用步驟包括將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內測試所述電子電路設計。
45.如權利要求44所述的方法,進一步包括以下步驟如果確定所述電子電路設計已經通過了所述測試,則由所述計算機來更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
46.如權利要求45所述的方法,進一步包括以下步驟如果確定所述電子電路設計尚未通過所述測試,則不更新所述至少一種關聯屬性。
47.如權利要求44所述的方法,進一步包括以下步驟如果確定所述電子電路設計已經通過了所述測試,則經由所述許可控制器通過所述計算機來將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作。
48.如權利要求32所述的方法,進一步包括以下步驟經由所述許可控制器通過所述計算機將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作或測試操作。
49.如權利要求32所述的方法,進一步包括以下步驟在至少一個網絡上由所述計算機來訪問所述第一許可信息的至少一部分,所述第一存儲器和所述計算機可通信地連接於該網絡。
50.如權利要求38所述的方法,進一步包括以下步驟在至少一個網絡上由所述計算機來訪問所述第一和所述第二許可信息的至少一部分,所述第一存儲器、第二存儲器和所述計算機都可通信地連接於所述網絡。
51.一種許可在一個目標電子電路內使用一個電子電路設計的系統,包括至少一個網絡;可通信地連接於該網絡的至少一個第一存儲器,所述第一存儲器被配置成能存儲與該電子電路設計相關聯的第一數據,所述第一數據包括第一許可信息,所述第一許可信息具有至少一種關聯屬性;和可通信地連接於該網絡的至少一個許可子系統,其中所述許可子系統包括一個計算機,其被配置成能通過該網絡訪問存儲在所述第一存儲器中的所述第一數據,並且通過驗證所述第一許可信息來確定是否許可在至少一個目標電子電路內使用該電子電路設計;和一個控制器,其被配置成能將所述第一數據從該計算機傳送到該目標電子電路,其中所述計算機進一步被配置成如果確定許可在該目標電子電路內使用該電子電路設計,則經由所述控制器將所述第一數據應用到所述目標電子電路。
52.如權利要求51所述的系統,其中所述計算機進一步被配置成響應於預定事件,通過所述網絡更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
53.如權利要求51所述的系統,其中所述計算機進一步被配置成通過所述網絡訪問第二許可信息,將所述第一許可信息的至少一部分與該第二許可信息的至少一部分相比較,並且根據比較結果來確定是否許可在所述目標電子電路內使用所述電子電路設計。
54.如權利要求53所述的系統,其中所述第一存儲器進一步被配置成能存儲所述第二許可信息。
55.如權利要求53所述的系統,進一步包括第二存儲器,其被配置成能存儲所述第二許可信息,所述第二存儲器可通信地連接於所述網絡。
56.如權利要求55所述的系統,其中所述第二存儲器包含在所述控制器中,並且所述控制器進一步被配置成能把所述第二許可信息從所述第二存儲器傳送到所述計算機。
57.如權利要求51所述的系統,其中所述計算機進一步被配置成能將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內可編程配置所述電子電路設計。
58.如權利要求57所述的系統,其中所述目標電子電路被配置成能生成所述第一數據的一個籤名。
59.如權利要求57所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計在所述目標電子電路內是第一次被可編程配置,則通過所述網絡更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
60.如權利要求59所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計在所述目標電子電路內不是第一次被可編程配置,則不更新所述至少一種關聯屬性。
61.如權利要求51所述的系統,其中所述計算機進一步被配置成將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內測試所述電子電路設計。
62.如權利要求61所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計已經通過了所述測試,則通過所述網絡更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
63.如權利要求62所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計尚未通過所述測試,則不更新所述至少一種關聯屬性。
64.如權利要求61所述的系統,其中所述計算機進一步被配置成如果確定所述電子電路設計已經通過了所述測試,則經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作。
65.如權利要求51所述的系統,其中所述計算機進一步被配置成經由所述許可控制器將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作或測試操作。
66.一種許可在一個目標電子電路內使用一個電子電路設計的方法,包括在至少一個網絡上由至少一個許可子系統來訪問至少一個第一存儲器中所存儲的第一數據,所述許可子系統包括一個計算機和一個控制器,所述第一存儲器和所述許可子系統可通信地連接於該網絡,所述第一數據包括第一許可信息,所述第一許可信息具有至少一種關聯屬性;通過由該計算機驗證所述第一許可信息,以確定是否許可在至少一個所述目標電子電路內使用所述電子電路設計;以及如果確定許可在所述目標電子電路內使用所述電子電路設計,則經由所述控制器將所述第一數據應用到所述目標電子電路。
67.如權利要求66所述的方法,進一步包括以下步驟響應於預定事件,由所述計算機通過所述網絡更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
68.如權利要求66所述的方法,其中所述確定步驟包括通過所述網絡訪問第二許可信息,將所述第一許可信息的至少一部分與第二許可信息的至少一部分相比較,並且根據比較結果來確定是否許可在所述目標電子電路內使用所述電子電路設計。
69.如權利要求68所述的方法,進一步包括以下步驟在所述第一存儲器中存儲所述第二許可信息。
70.如權利要求68所述的方法,進一步包括以下步驟在至少一個第二存儲器中存儲所述第二許可信息,所述第二存儲器可通信地連接於所述網絡。
71.如權利要求70所述的方法,進一步包括以下步驟將所述第二許可信息從所述第二存儲器傳送到所述計算機,其中所述第二存儲器包含在所述控制器中。
72.如權利要求66所述的方法,其中所述應用步驟包括將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內可編程配置所述電子電路設計。
73.如權利要求72所述的方法,進一步包括以下步驟由所述目標電子電路來生成所述第一數據的一個籤名。
74.如權利要求72所述的方法,進一步包括以下步驟如果確定所述電子電路設計在所述目標電子電路內是第一次被可編程配置,則通過所述網絡由所述計算機來更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
75.如權利要求74所述的方法,進一步包括以下步驟如果確定所述電子電路設計在所述目標電子電路內不是第一次被可編程配置,則不更新所述至少一種關聯屬性。
76.如權利要求66所述的方法,其中所述應用步驟包括將所述第一數據應用到所述目標電子電路,用來在所述目標電子電路內測試所述電子電路設計。
77.如權利要求76所述的方法,進一步包括以下步驟如果確定所述電子電路設計已經通過了所述測試,則通過所述網絡由所述計算機來更新所述至少一種關聯屬性,以表示許可在所述目標電子電路內使用所述電子電路設計。
78.如權利要求77所述的方法,進一步包括以下步驟如果確定所述電子電路設計尚未通過所述測試,則不更新所述至少一種關聯屬性。
79.如權利要求76所述的方法,進一步包括以下步驟如果確定所述電子電路設計已經通過了所述測試,則由所述許可控制器通過所述計算機來將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作。
80.如權利要求66所述的方法,進一步包括以下步驟經由所述許可控制器通過所述計算機將與所述電子電路設計相關聯的第二數據應用到所述目標電子電路,以啟動所述電子電路設計的功能操作或測試操作。
全文摘要
一種在目標電子電路(326)或裝置內許可電子電路設計的系統和方法(圖3),所述系統和方法允許基於每次使用來進行獲許可電路設計的安全交付和準確計費。所述方法包括通過驗證與電子電路設計相關聯的一組預定向量中所包含的許可信息,來確定是否許可在目標電子電路(326)內使用電子電路設計(圖3)。許可系統(321)允許IP核心提供商和IP核心用戶以更高精度、在每次使用的基礎上計費獲許可電子電路設計的使用,由此對以所有當事方都公平的方式來許可電子電路設計,提高了確性度。
文檔編號G06F21/00GK1643532SQ03806781
公開日2005年7月20日 申請日期2003年1月21日 優先權日2002年1月23日
發明者麥可·裡凱蒂, 克里斯多福·J·克拉克 申請人:英特泰克公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀