TWI293157B - Method, apparatus, system and computer readable recording medium recorded with relevant instructions for executing a software program in a multi-processor system with adjusting processing capabilities - Google Patents

Method, apparatus, system and computer readable recording medium recorded with relevant instructions for executing a software program in a multi-processor system with adjusting processing capabilities Download PDF

Info

Publication number
TWI293157B
TWI293157B TW094132548A TW94132548A TWI293157B TW I293157 B TWI293157 B TW I293157B TW 094132548 A TW094132548 A TW 094132548A TW 94132548 A TW94132548 A TW 94132548A TW I293157 B TWI293157 B TW I293157B
Authority
TW
Taiwan
Prior art keywords
processing
processor
software program
processing unit
identification information
Prior art date
Application number
TW094132548A
Other languages
English (en)
Other versions
TW200622898A (en
Inventor
Eiji Kasahara
Original Assignee
Sony Computer Entertainment Inc
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 Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Publication of TW200622898A publication Critical patent/TW200622898A/zh
Application granted granted Critical
Publication of TWI293157B publication Critical patent/TWI293157B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3873Variable length pipelines, e.g. elastic pipeline
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Power Sources (AREA)
  • Storage Device Security (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Description

1293157 九、發明說明: 【發明所屬之技術領域】 本發明係關於用以調整一處理器之處理能力以改良一軟 體程式在該處理器上執行時所獲得之結果的方法及裝置。 【先前技術】 零售與商業用途之軟體程式的設計行銷及販售持續成為 一曰益發展及擴張的經濟領域。的確,軟體開發者經常尋 求滿足消費者對新的及改良之軟體應用程式的一儼然永無 休止之需求。最明顯莫過於像是視訊遊戲、電影動畫和特 殊效果等電腦圖形軟體之領域。 對於日益複雜且精密之軟體程式的此一發展,執行這類 軟體程式之硬體的處理能力有一對應發展。的確,自從一 九七一年推出之僅會加法和減法的一 4位元處理器一第一 個微處理器:英特爾(Intel)之4004起,微處理器之處理能力 已成就令人難以置信的進步。於一九七九年,英特爾(Intel) 推出其8080微處理器,並且併入IBM個人電腦中。Intel 8080 微處理器利用大約29,000個時脈速度5 MHz之電晶體,其每 秒可執行0.33百萬指令(MIPS)。從一九八二至一九八九, 英特爾(Intel)推出80286、80386和80486微處理器。Intel 80486微處理器利用120萬個時脈速度25 MHz之電晶體,其 可執行20 MIPS。從一九九三至二〇〇〇,英特爾(Intel)推 出奔騰(Pentium)系列之微處理器,其中Pentium 4微處理器 利用4200萬個時脈速度1.5 GHz之電晶體,其可執行大約 17,000 MIPS。此等資料出示:用以執行軟體程式之硬體的 105208.doc 1293157 速度和動力日益增加(請注意·· Intel pentium 4之運轉較 8088微處理器之運轉快大約5,〇〇〇倍)。如此說明中將進一步 討論,較新且較強而有力之微處理器目前已開發,其可達 成時脈頻率大約4 GHz以及更高的MIPS等級。 ♦即時、多媒體應用程式變得逐漸重要。此等應用程式要 t 求像是每秒數十億位元資料之極快的處理速度。雖然單一 處理單元能夠具有快速之處理速度,但其通常無法符合多 重處理器架構的處理速度。的確,在多重處理器系統中, • 複數個處理器將平行(或至少合作)操作,以達成希望之處理 結果。 可利用多重處理技術之電腦和計算裝置的類型很廣泛。 除了個人電腦(PC)和伺服器外,此等計算裝置包括細胞式 電話、行動電腦、個人數位助理(PDA)、機上盒、數位電視 及許多其他等。 現在參照圖1,其中圖解軟體程式及執行該等軟體程式之 硬,的-對應發展。在一特殊時間點之硬體系統102並不如 像是硬體系統106或硬體系統112等其他硬體系統般強而有 力。甚至此等硬體系統不如本發明之主題:硬體系統118般 強而有力。再者,軟體程式104(圖解中為儲存於一光學碟 片上)被設計在現存硬體系統102上執行。例如,軟體程式 104可基於在具有例如Intel 8〇286微處理器提供之處理特徵 的處理單元上執行之認知而撰寫。於軟體程式i 04後設計 及購買之軟體程式n〇可被設計在具有例如Intei8嶋微處 理器的提供之處理特徵的一處理單元上執行。替代上,軟 105208.doc 1293157 Λ 體程式110可被設計及開發在具有一申請人之以叮以州仙遊 戲控制台(一九九四年推出)之處理能力的一處理單元上執 行。再者,軟體程式116可被設計及開發在具有英特爾(Intel) 之Pentium 3微處理器提供之處理能力的一處理單元上執 行。替代上,軟體程式116可被設計及開發在申請人其特別 設計以執行視訊遊戲軟體程式之PlayStati〇n 2控制台上執 行0
依據慣例:被開發在具有某些處理特徵的一給定處理單 元上執行之任何軟體程式將在具有較大處理特徵的另—處 理單元上執行。雖然在許多情形中其為真,但並非必定2 此,尤其像是一視訊遊戲軟體程式之情況當該軟體程式被 設計在一顯示器上提供一多媒體體驗給使用者時。的確, 在本質上具有較高處理能力的一處理單元上運轉一種為中 度精密的一處理單元而設計之軟體程式將導致一移動麥像 之物體過度快速移動一移動影像之聲頻與視訊組件=失 去同步化等。通常,當程式執行緒(平行處理之單元)間的相 互依存性無法獲得保證時,此等問題將顯現。 除非-給定之處理單元巾6設計以下特性:准許執 別針對其設計之軟體程式,以及被設計在較*精密理 單=上運轉的軟體程式,否則使用者將須維護兩分離之_ 理單元’以完全補^對軟體程式的支援。但其—例外& 申請人之PlayStation控制台和playStati〇n2控制台。申:人 之PlayStati〇n 2控制台利用一個以上微處理器適應特: PlayStation控帝〗台而撰寫之軟體程式以及: 105208.doc 1293157
PlayStation 2控制台而撰寫之軟體程式。尤其,ρι_^〇η 2控制台合併PlayStati()n控制台中見到之微處理器,以便執 行PlayStation視訊遊戲軟體程式。申請人之以町以…⑽二控 制台内的其他微處理器用以執行特別為piayStati〇n 2控制 台而設計之視訊遊戲軟體程式。 然而設計具有不同處理能力之多重微處理器的未來處理 單元可因應關聯於補足軟體程式之支援的某些問題,所以 希望達成較佳者具有更多功能、有效率而且具成本效益的 一優良解決方案。 【發明内容】 根據本發明的一或更多方面,一種促成一軟體程式之執 行的方法包括:獲得用以表示該軟體程式的一版本之識別 資訊;根據該軟體程式之版本而決定是否應調整用以執行 該軟體程式的至少一處理器之處理能力;以及當該決定為 肯定時調整該至少一處理器之處理能力。 該識別資訊可儲存於一光學碟片媒體、一磁性媒體及一 電子媒體之至少一者的一儲存媒體。替代上,該軟體程式 可包括該識別資訊,而且該識別資訊係從其中獲得。 調整之處理能力可包括:改變該處理單元的一時脈頻 率、該處理單元的一記憶體映像、該處理單元其一資料匯 流排的一匯流排利用、該處理單元其一資料匯流排的一頻 寬、該處理單元的一快取大小、該處理單元的一快取組織、 該處理單元的一指令延時、該處理單元的一指令通量、該 處理單元的一記憶體延時及該處理單元的一記憶體通量之 105208.doc 1293157 至少一者。 ▲ 該方法可進一步包括··存取用以結合複數個軟體程式之 各別識別責吼與供指示對該至少一處理器之處理能力所進 仃之調整用的-或更多參數的—表;以及使用關聯於給定 之識別資訊的參數調整該至少一處理器之處理能力。 該表可區域儲存於該至少—處理器、遠端儲存於_行政 貫體與/或儲存於由該行政實體加以存取的一進一步位 置。當該表為遠端儲存時,該方法可進一步包括·使用一 通信通道設置該至少_處理器與該行政實體間的一鍵結, 以及透過孩通t通道將該識別資訊從該至少一處理器傳輸 至該行政實體。該行政實體可存取該表以獲得供指示對該 至少-處理器之處理能力所進行之調整用的一或更多關聯 參數。其€,該方法可包括:彡過該通信㉟道在該至少一 處理器接收來自該行政實體之參數;以及使用關聯於給定 之識別貧訊的參數調整該至少—處理器之處理能力。 該表可進-步結合複數個軟體程式之每—各別識別資訊 與供指示對複數個不同| ^ t p 、 』蜒理裔之處理能力所進行之調整用 的複數組參數。關於這方面,該方法可進—择 該至少一處理器之處理能力的一處 减別付,同時使用該 識別貝❹該識別符存取該表以獲得供指示對該至少一處 理态之處理能力所進行之調整用的一 ,.、,且翏數,以及使用該 、、且參數調整該至少一處理器之處理能力。 當該表遠端儲存於一行政實體時, 、s於2 μ万法可包括:使用 -通#通道設置該至少一處理器與該行政實體間的一鏈 105208.doc 1293157 …,以及透過讜通t通道將該識別資訊和該處理識別符從 該至少一處理器傳輸至該行政實體。此情況下,該行政實 體可使用該識別資訊和該處理識別符存取該表以獲得供指 不對该至少-處理H之處理能力所進行之調整用的該組關 聯參數。 較佳者,該至少-處理器包括:⑴用以執行處理器任務 之複數個子處理單兀’可被操作而在該等子處理單元上 執行至少某些管理處理任務的一主處理單元,(iii)可由該主 處理單s和該等子處理單元加以存取的—主記憶體,以及 ㈣操作輕合該主處理單元、該等子處理單元與該主記憶體 的一資料匯流排。 該方法因而可進-步包括:調整至少—上述子處理單元 之處理特徵並使用該至少—子處理單元執行該軟體程式; 以及不凋整至少一其他子處理單元之處理特徵使該至少一 其他子處理單it具妹高的4理特徵而且可供執行其他處 理任務。 該調整步驟可包括至少改變該至少一處理器之時脈頻 率。尤其,該調整步驟可包括:將該主處理單元、該等子 處理單元及該資料匯流排之至少—者的_時脈頻率調整成 與其他不同的一頻率。 再者,該調整步驟可包括至少改變該至少一處理器其一 資料匯流排的-匯流排利用,該資料匯流排之匯流排利用 係藉由限制(例如該主處理單元)對該資料匯流排之存取而 改變,以便調整該處理能力。 105208.doc -10- 1293157 又進一步’該調整步驟可包括藉由調整該資料匯流排的 一位元數目而至少改變該資料匯流排的一頻寬,以便調整 該處理能力。例如,該資料匯流排之位元數目可在128位 元、64位元、32位元、16位元和8位元間調整。 替代上’該至少一處理器之區域記憶體可當作資料快取 加以操作,而且該調整步驟可包括改變該資料快取的一快 取大小’以便調整該至少一處理器之處理能力。例如,可 將至少一子處理單元之快取大小調整成與其他不同的一大 小。再者’該調整步驟可包括改變該資料快取的一快取組 織,以便調整該處理能力。例如,可調整該快取記憶體的 一通路大小及一區塊大小之至少一者。再者,可將該至少 一處理器之快取組織例如調整成與其他不同的一組織。 類似地,一主記憶體可當作該至少一處理器的一資料快 取加以操作,而且該調整步驟可包括改變該資料快取的一 I4夬取大小,以便調整該至少一處理器之處理能力。再者, 可凋處該資料快取的一快取組織,以便調整該處理能力。 例如,可改變該快取記憶體的一通路大小及一區塊大小之 至少一者。 替代上,該調整步驟可包括藉由在一給定指令的一指令提 取順序、一指令解碼順序、一指令執行順序之至少一者與一 寫回順序間要求一時間延遲而調整該至少一處理器的一指 令延時,以便調整該至少一處理器之處理能力。較佳者,該 時間延遲介於該寫回順序與一下一指令提取順序之間。 再者’該調整步驟可包括藉由在一給定指令的一指令提取 -11 - 1293157 順序、一指令解碼順序、一指令執行順序之至少一者與一 回順序間插人-或更多無作業順序而調整該至少 〜、 的一妒八、系田 處理器 扣々通罝,以便調整該至少一處理器之處理能力。較佳 者,该無作業順序介於該執行順序與該寫回順序之間。 替代上,該調整步驟可包括藉由在一位址提取順序、_ 位址解碼順序之至少—者與—f料讀取及寫人順序之一門 要求一日夺間延遲而調整該至少一處s器和_纟記憶體的一 圮憶體延時,以便調整該至少一處理器之處理能力。再者, 該調整步料包括Μ在—位址提取順序、_位址解’ 序至少其—與—資料讀取及寫人順序之-間插人或移除」 或更多無作業順序而調整至少_子處理單元與該處理單元 之主圯k體的一記憶體通量,以便調整該處理單元之處理 根據本發明的一或更多進一步之古而 ^ ^之方面,一處理安排包括 ^一處理益,而且一處理系統包括至少一處理裝置,其 包含:用以執行處理器任務之複數個子處理單元、可被二 作而在料子處料元域行至少某些管理處縣務的: 主處理單元、可由該主處理單元和該等子處理單元加以存 取的一主記憶體;以及操作輕合該主處理單元、該等子声 理單元與該主記憶體的一資料匯流排。較佳者該至少一: 理器或者該主處理單元及料子處理單元之至少—者可= 刼作以:⑴獲得用以表示一軟體程式的一版本之識別資 訊;⑴)根據該軟體程式之版本而衫是否應調整該至少二 處理器或者該處理單元或子處理單元之處理能力;以及㈣ 105208.doc -12- !293157 當該決定為肯定時調整以上處‘理能力。 該處理器或者該主處理單元及該等子處理單元之至I 者可進-步被操作以··⑴存取用以結合複數 各別識別資訊與供指示對該等處理能力所進行之調整料 -或更多參數的-表;以及⑼使用關聯於給定之識別資訊 的參數促成該等處理能力之調整。 、
如以上所討論,該表係區_存於該至少—處理器或該 處理單元、遠端储存於-行政實體或儲存於—進—步位置 之至少-者。該至少-處理器或該處理單元可被操作以使 用-通信通道設置該至少-處理器或該處理單元與該行政 實體間的-鏈結,以及透過該通料道將㈣別資訊傳輸 至該行政實體。該行政實體可存取該表以獲得供指示對該至 少一處理器或該處理單元之處理能力所進行之調整用的一 或更多關聯參數。該至少一處理器或該處理單元可進一步被 操作以透過該通信通道接收來自該行政實體之參數,以及使 用關聯於給定之識別資訊的參數調整該等處理能力。 當該表亦結合處理識別符時,該至少一處理器或者該主 處理單元及該等子處理單元之至少一者可進一步被操作 以·(0獲得該至少一處理器或該處理單元之處理能力的一 處理識別符;(ii)同時使用該識別資訊和該識別符存取該表 以獲得供指示對該至少一處理器或該處理單元之處理能力 所進行之調整用的一組參數;以及(iii)使用該組參數促進該 至少一處理器或該處理單元之處理能力的調整。 當该表遠端儲存於一行政實體時,該至少一處理器或該 105208.doc -13- !293157 τ» tm 一 i、 早70可被操作以:(i)使用一通信通道設置該至少一處 理器或該處理單元與該行政實體間的一鏈結;以及(ii)透過 該通^通道將該識別資訊和該處理識別符傳輸至該行政實 體。再者,該至少一處理器或該處理單元可被操作以透過 k k通道接收來自該行政實體之該組參數,以及使用關 聯於給定之識別資訊和處理識別符的參數調整該至少一處 理器或該處理單元之處理能力。 例如可調整該至少一處理器或該子處理單元之處理特徵 而未凋整至少一其他處理器或單元的處理特徵。例如,較 佺者δ亥至少一處理器或該處理單元之處理特徵可藉由至少 改夂其日守脈頻率而調整。尤其,該至少一處理器或該處理 單疋之處理特徵可藉由將該主處理單元、該等子處理單元 及忒貝料匯流排之至少一者的一時脈頻率改變成與其他不 同的一頻率而調整。 曰代上,该至少一處理器或該處理單元之處理特徵可藉 由至少改變該處理單元之資料匯流排的一匯流排利用而^ 整,該資料匯流排之匯流排利用係藉由限制(例如該主處理 皁元)對該資料匯流排之存取而改變,以便調整其處理能 力。 再者,δ亥至少一處理器或該處理單元之處理特徵可藉由 調整該至少-處理器或該處理單元之資料匯流排的—位元 數目以至少改變該資料匯流排的—頻寬而調整,以便調整 該至少一處理器或該處理單元之處理能力。例如,該資= 匯流排之位元數目可在128位元、64位元、32位元、^位元 105208.doc -14- 1293157 和8位元間調整。 較佳者,該至少一處理器或該等子處理單元之區域記憶 體可*作資料快取加以操作,而且該至少一處理器或該處 理單元之處理特徵可藉由改變該資料快取的一快取大小而 調整,以便調整該至少一處理器或該處理單元之處理能 力再者,該至少一處理器或該處理單元之處理特徵可藉 由改變該資料快取的一快取組織而調整,以便調整該至^ 處理器或该處理單元之處理能力。例如,可改變至少一 • 子處理單元之快取記憶體的一通路大小及一區塊大小之至 少一者。較佳者,可將該至少一處理器或至少一子處理單 元之快取組織調整成與其他不同的一組織。 替代上u亥至少處理器或该處理單元之主記憶體可當 作或更多子處理單元的一資料快取加以操作,而且該至 少一處理器或該處理單元之處理特徵可藉由改變該資料快 取的一快取大小而調整,以便調整該等處理能力。再者,、 該至少一處理器或該處理單元之處理特徵可藉由改變該資 ^ #快取的一快取組織而調整,以便調整該至少一處理器或 該處理單元之處理能力。例如,該等處理特徵可藉由改變 該快取記憶體的一通路大小及一區塊大小之至少一者而調 整。 ^ 又再者’該至少-處理器或該處理單元之處理特徵可藉 由在-給定指令的-指令提取順序、一指令解褐順序、: 指令執行順序至少其一與一寫回順序間要求_時間延遲以 改變該至少一處理器或至少一子處理單元的一指令延時而 105208.doc -15- 1293157 調整’以便調㈣處理單元之處理能力。該時間延遲可介 於該寫回順序與一下一指令提取順序之間。替代上,該處 理特徵可藉由在-給定指令的1令提取順序、—指八解 碼順序、-指令執行順序之至少一者與一寫回順序間:入 :刪除-或更多無作業順序以改變該至少—處理器或者該 處理單元其至少一子處理單元的一指令通量而調整,以便 調整該處理能力。較佳者’該無作業順序介於該執行順序 與該寫回順序之間。
又再者,該至少一處理器或該處理單元之處理特徵可藉 由在一位址提取順序、一位址解碼順序至少其一與一資才= 讀取及寫人順序之—間要求—時間延遲錢變該至少一處 Γ或至y子處理單元與該處理單元之主記憶體間的一 記憶體延時而調整,以便調整其處理能力。再者,該等處 理特徵可藉由在一位址提取順序、一位址解碼順序之至少 者二負料碩取及寫入順序之一間插入或刪除一或更多 無作業順序以改變該至少一處理器或至少一子處理單元與 該處理單元之主記憶體間的一記憶體通量而調整,以便調 整該等處理能力。 根據本發明的一或更多又進一步之方面,一記錄媒體記 錄使用如上述的一方法操作一處理單元的一程式。 根據本發明之以上方面,一種超過目前微處理器之處理 能力的新電腦架構業已開發。根據此新電腦架構,.一多重 處理器電腦系統之所有處理器係從一共用計算模組(或細 )以建構。此共用什异模組具有一種一致結構,而且較 105208.doc -16- 1293157 佳者其利用相同指令集架構。該多重處理器電腦系統可由 一或更多客戶、伺服器、個人電腦(pc)、行動電腦、遊戲 機器、個人數位助理(PDA)、機上盒、電器、數位電視和使 用電腦處理器之其他裝置加以形成。 '必要的話,複數個電腦系統可成為一網路之成員。該一 • 致模組化結構促成該多重處理器電腦系統之有效率而且高 速度的應用程式和資料之處理,如果利用一網路,則促成 該網路之應用程式和資料的快速傳輸。此結構亦簡化具有 • I種大小和處理動力之網路成員的建立及此等成員所處理 之應用程式的準備。 該基本處理模組係一處理器元件(PE)。較佳者一 pE包 含·在一共用内部位址和資料匯流排上耦合的一處理單元 (PU)、一直接記憶體存取控制器(DMAC)和複數個子處理單 元(SPU),像是四個SPU。該pu*spu與可具有一縱橫式架 構的一共享動態隨機存取記憶體(DRAM)互動。該Pu排定 及編訂SPU之資料和應用程式的處理。該等spu以一平行且 _ 獨立之方式執行此處理。該DMAC控制PU和SPU對儲存於 該共享DRAM中之資料和應用程式的存取。 根據此模組化結構,一特殊電腦系統所利用之pE數目係 根據該系統所要求的處理動力。例如,一伺服器可利用四 個PE,一工作站可利用兩個PE,而且一 pDA可利用一個 PE。被指派用來處理一特殊軟體細胞的一 ?£之spu數目取 決於該細胞内之程式和資料的複雜性與數量。 複數個PE可關聯於一共享DRAM,而且該dram可隔離 105208.doc -17- 1293157 成複數個區段’此等區段個別隔離成複數個記憶庫。該 DRAM之每—區段可由—記憶庫控制器加以控制,而且每 PE之DMAC可存取每一記憶庫控制器。此組態中,每— PE之DMAC可存取該共享DRAM的任何部分。
"亥新的電架構亦制—種新的程式規劃模型,其提供 透過-網路傳輸資料和應用程式以及在該網路之成員間處 理資料和應用程式。此程式規劃模型利用透過該網路加以 傳輸以便由該網路之任何成員予以處理的一軟體細胞。每 #人體細胞具有相同結構’而且可同時包含應用程式和資 料°該模組化電腦架構所提供之高速處理和傳輸速度導致 此等細胞得以快速處^較佳者其應用程式碼係根據相同 之共用指令集和1SA。較佳者每—軟體細胞包含-全域識別 (全域ID)及說明該細胞之處理所要求之計算資源數量的資 訊。由於所有計算資源具有相同之基本結構而且利用相同 之ISA’因而用以執行此處理之特殊資源可位於該網路上任 何地方及動態指派。 熟習此項技藝者將可從此處之說明及所結合之附圖明白 本發明的其他方面、特性與優勢。 【實施方式】 參照圖示,其中類似之數字表干^ 一 妖于衣不頜似之兀件,圖丨出示根 據本發明之一或更多方面的一虛 J屣理文排11 8。處理安排i i 8 可被操作以利用例如以下將更詳細討論的一微處理系統執 行軟體程式…顯示器12〇和聲頻能力(未出示)用以增進一 使用者的一多媒體體驗。 105208.doc -18· 1293157 軟體耘式可以任意種方式載入,像是藉由將包含該軟體 程式的一儲存媒體插入處理安排U8並將該軟體程式讀入 一隨機存取記憶體(RAM)。該儲存媒體可為一光學媒體、 一磁性媒體、一電子媒體等。根據本發明之某些方面,軟 體程式可藉由透過像是網際網路124的一網路將其下載而 載入處理安排11 8。 吾人發現:可利用一非常強而有力之多重處理系統實作 根據本發明之處理安排丨丨8而達成有利的處理特性。較佳者 • 處理安排^18可被操作以根據所執行軟體程式的一版本而 決夂是否應將其處理能力向下或向上調整,而且當該決定 為肯定時調整該處理能力。以下將討論如何能夠達成此機 能及其許多修正之各種細節和例示。關於這方面,現在將 討論處理安排118其内部建構之某些方面的一詳細討論。 現在參照圖2A,其係一基本處理模組或處理器元件 (PE)200的一例示其一方塊圖。如此圖示中所示,pE 2〇〇包 含一輸入/輸出(I/O)介面202、一處理單元(pxj)2〇4、一直接 _ 記憶體存取控制器(DMAC)206和複數個SPU 208 ,亦即: SPU1(208A)、SPU2(208B)、SPU3(208C)和 SPU4(208D)。一 區域(或内部)PE匯流排212在PU 204、SPU 208、DMAC 206 與一記憶體介面21 0間傳輸資料和應用程式。區域pE匯流排 212可例如具有一傳統架構,或者可依照一封包交換網路而 實作。雖然依照一封包交換網路而實作將要求較多硬體, 但增加可用頻寬。 PE 200可使用用以實作數位邏輯之各種方法加以建構。 105208.doc -19- 1293157 然而較佳者PE 200係利用一矽基板上的一互補金氧半導體 (CMOS)加以建構而成為一單一積體電路晶片。基板之替代 材料包括砷化鎵、砷化鋁及利用各式各樣摻雜物的其他所 謂III-B族化合物。PE 200亦可使用例如快速單一磁通量子 (RSFQ)邏輯之超導材料加以實作。 PE 200透過一高頻寬記憶體連接216與一動態隨機存取 記憶體(DRAM)214緊密結合。DRAM 2 14之功用為PE 200 的主要(或共享)記憶體。雖然較佳者DRAM 214係一動態隨 機存取記憶體,但DRAM 214亦可使用例如一靜態隨機存取 記憶體(SRAM)、一磁性隨機存取記憶體(MRAM)、一光學 記憶體或一全像記憶體等其他構件加以實作。DRAM 214 或其他實作可併入PE 200之同一積體電路晶片,或者替代 上以一分離之外部記憶體加以提供。當DRAM 214併入PE 200之同一晶片時,可將DRAM 214排列於該晶片上的一分 離位置,或者與包含該PE的一或更多處理器整合。DM AC 206和記憶體介面210促進DRAM 214、PE 200之SPU 208與 PU 204間的資料轉移。請注意:DMAC 206與/或記憶體介 面210可關於子處理單元208和PU 204而整體或分離排列。 的確,取代所示的一分離組態,DMAC 206功能與/或記憶 體介面210功能可與一或更多(較佳者所有)子處理單元208 和PU 204整合。 PU 204可為例如能夠單獨處理資料和應用程式的一標準 處理器。作業上,PU 204排定及編訂SPU 208之資料和應用 程式的處理。在一替代組態中,PE 200可包括多重PU 204。 105208.doc -20- 1293157 每一 PU 204可控制一個、所有或某些指定群組之SPU 208。 較佳者SPU 208係單一信號多重資料(SIMD)處理器。在PU 204之控制下,SPU 208以一平行且獨立之方式執行資料和 應用程式的處理。DMAC 206控制PU 204和SPU對儲存於共 享DRAM 214中之資料和應用程式的存取。請注意·· PU 204 可藉由擔任一主處理單元角色的一或更多子處理單元208 加以實作。 像是PE 200的一些PE可聯結或封裝在一起以提供增強之 處理動力。此組態可稱為一寬頻引擎(BE)。 圖2B圖解包含可根據本發明之該等方面而操作之多重 PE 250(PE 1、PE 2、PE 3和PE 4)的一處理架構其一例示。 較佳者,PE 250在一單一片上。PE 250可包括或不包括像 是以上關於圖2A之PE 200所討論的PU與/或SPU等子系 統。取決於要求之處理類型,PE 2 5 0可具有相同或不同之 類型。例如,一或更多PE 250<為一同屬微處理器、一數 位信號處理器、一圖形處理器、微控制器等。 較佳者將P E 2 5 0連結至一共享匯流排2 5 2。一 §己憶體控制 器或DMAC 256可透過一記憶體匯流排254連接至共享匯流 排252。DMAC 25 6連接至一記憶體258,其可為以上關於記 憶體23 0所討論的類型之一。一 I/O控制器262亦可透過一 I/O 匯流排260連接至共享匯流排252。I/O控制器262可連接至 像是框緩衝器、磁碟機等一或更多1/0裝置264。應了解: 以上之處理模組和架構僅作為示範,而且本發明之各種方 面可用於包括但不限於具有以下揭露之類型之多重處理器 105208.doc -21- 1293157 系統的其他結構··美國專利案號6,52M9卜標題"用於寬頻 網路之電腦架構的記憶體保護系統及方法,,,於二〇 〇三年 二月二十五日公佈,以及美國申請案號〇9/816,〇〇4,標題 ,,用於寬頻網路之電腦架構及軟體細胞,,,於二〇 〇 一年三 , 月二十二日申請,此處以引用的方式併入本文中。 .圖3圖解一 SPU 208之結構和功能的一例示。spu 2〇8包括 區域記憶體270、暫存器272、一或更多浮點單元274和一或 更多整數單元276。然而再次取決於要求之處理動力,可利 • 用一較多或較少數目的浮點單元274和整數單元276。在一 較佳具體實施例中,區域記憶體27〇包含具有128仟位元組 之儲存器,而且暫存器272之容量為128 X 128位元。較佳 者浮點單元274係以每秒32百萬浮點運算(32 GFLOPS)的一 速度操作’而且較佳者整數單元276係以每秒32百萬運算 (32 GOPS)的一速度操作。 在較佳具體實施例中’區域記憶體2 7 0包含具有2 5 6仟 位元組之儲存器,而且暫存器272之容量為128又ι28位元。 _ 請注意:處理器任務並非使用共享記憶體214加以執行。而 是將該等任務複製至一給定子處理單元2〇8之區域記憶體 270並且區域執行。 區域記憶體270可能是或不是一快取記憶體。較佳者將區 域記憶體270建構成一靜態隨機存取記憶體(Sram)。一 pu 204可要求該PU 204啟動之直接記憶體存取支援快取一致 性。SPU 208啟動之直接記憶體存取或從/對外部裝置之存 取則不要求其支援快取一致性。 105208.doc -22- 1293157 SPU 208進一步包括使應用程式和資料傳輸至/自SPU 208之匯流排288。子處理單元208進一步包括使應用程式和 資料傳輸至/自子處理單元208的一匯流排介面(I/F)278。在 一較佳具體實施例中,匯流排I/F 278耦合至整體排列於子 處理單元208内的一 DMAC(未出示)。請注意:DMAC 206 可排列於外部(如圖3中所示)。一對匯流排將匯流排I/F 278 與區域記憶體270間整體排列之DMAC互連。較佳者,該等 匯流排為256位元寬。在一較佳具體實施例中,匯流排289 為1,024位元寬。 SPU 208進一步包括内部匯流排281、283和285。在一較 佳具體實施例中,匯流排281之寬度為256位元,而且提供 區域記憶體270與暫存器272間之通信。匯流排283和285分 別提供暫存器272與浮點單元274及暫存器272與整數單元 276間之通信。在一較佳具體實施例中,從暫存器272至浮 點或整數單元之匯流排285和283的寬度為384位元,而且從 浮點或整數單元274、276至暫存器272之匯流排285和283 的寬度為128位元。於處理期間從暫存器272至浮點或整數 單元274、276之此等匯流排之寬度大於從此等單元至暫存 器272之匯流排之寬度可調節來自暫存器272的較大資料 流。每一計算需要具有三字的一最大值。然而,正常下每 一計算之結果僅為一字。 請注意:雖然較佳者使用圖2之PE 200實現本發明,但亦 可利用替代之信號處理器或多重處理器系統。例如,可使 用圖4之多重處理器系統300實現本發明的一或更多方面。 105208.doc -23- 1293157 多重處理器系統300包括透過一匯流排308耦合至一記憶體 介面304之複數個處理器302(可使用任意數目)。記憶體介面 304透過另一匯流排310與像是一 DRAM的一共享記憶體 306進行通信。記憶體介面304可分配於處理器302之間,而 且如果希望,亦可結合一 DMAC而工作。處理器302可利用 與圖3之結構相同或相似的結構或者任何其他已知或其後 開發之技術加以實作。 現在參照圖5,其係用以圖解根據本發明的一或更多方面 ® 之可例如利用PE 200(圖2)而至少部分由處理安排118加以 實現以便變更其處理能力之處理步驟的一流程圖。應了 解,圖5中圖解之某些或所有處理步驟(及後續之處理步驟) 可藉由PE 200之整體或外部的軟體、硬體或其一組合加以 實作。例如,於動作400,將一軟體程式從一儲存媒體讀入 處理安排118(其可為一軟體播放器控制台)之隨機存取記憶 體(RAM)。在本内文中,PE 2〇〇係能夠從像是一光學儲存 _ 媒體122(圖1 )、一磁性儲存媒體或一電子儲存媒體等一儲存 媒體讀取一軟體程式的一總軟體播放器控制台其一部分。 譬如,當該儲存媒體係一光學儲存媒體時,該儲存媒體可 為一 CD、一 DVD或一藍光碟片,而且可配置成一”唯讀,,、 一’’可寫入”或一,,可重寫,,裝置。替代上,或者除了此等能力 外,處理安排118可經由像是網際網路124而透過一網路下 載這類軟體程式。 再-人轉至圖5,於動作402,處理安排118獲得用以表示該 #人體私式的一版本之識別資訊。當從一儲存媒體讀取該軟 105208.doc -24- 1293157 體程式時’該識別資訊可為位於光學儲存媒體i22上的一程 式ID。替代上,該軟體程式可為一播案標頭的一部分,或 者包含㈣似光學儲存媒體122上找到的—軟體程式表 ^許多情形下,使用者將軟體㈣從光學儲存媒體122 複製至像是-硬碟機、一電子儲存媒體等包含於處理安排 118内之另-儲存媒體。這類情形τ,用謂得該軟體程式 ID之步驟將牵涉從處理安排118内之内部儲存媒體操取該 ID,有別於從一外部儲存媒體獲得該軟體程式〗〇。 I t像是經由網際網路124而下載軟體程式時,該識別資訊 可為程式ID、-使用者1〇等。較佳者該識別資訊包含於下 載之軟體程式内,像是在一程式表或一槽案標頭内,但替 代上,可儲存於處理安排118内,或者由—使用者輸入該處 理安排或者輸入另一裝置。 —同時請注意:雖然當軟體程式儲存於像是__硬碟等處理 女排118的一内部儲存媒體時有可能於步驟4〇2前執行步驟 彻,但本發明之實施不要求。再者,像是當下載或讀取軟 體程式前將鑑別-使用者時’可能於步驟4〇〇前實現步驟 402 〇 於動作404,作成是否應向下或向上調整處理安排ιΐ8之 處理能力的-決定。譬如,如果處理安排118之處理能力遠 超過軟體程式開發時軟體設計者考慮之能力以致在處理安 排118上運轉該軟體程式將產生不希望的結果,則處理安排 11 8之處理旎力將需向下調整。關於這方面,較佳 理 排118利用該軟體10或其他識別資訊決定該軟體程式之版 105208.doc -25- 1293157 本與/或適當運轉該軟體程式所需之處理能力的一指示。然 後處理安排118將比較用以運轉該軟體程式所需之處理能 力與處理安排118之處理能力。如果處理安排118之處理能 力不超過用以運轉該軟體程式所需之處理能力達到造成不 希望之結果的一程度,則動作404所決定之結果將為否定, 而且該處理流程將前進至動作4〇6。 於動作4〇6,處理安排118將利用其完全之處理能力執行 該軟體程式,或者至少將不採取減少其處理能力的步驟。 依循該軟體程式之執行,該處理流程將終止。 如果處理安排118之處理能力遠在用以運轉該軟體程式 所需的處理能力之上,則動作4〇4之決定將為肯定,而且分 岔至節點A(圖7)。請注意··關於處理安排118之處理能力的 決定將伴隨處理安排118之可用處理器元件2〇〇之數目的一 計數。的確,一或更多處理器元件2〇〇可包含於處理安排ιΐ8 内而或更多其他處理器元件可位於處理安排之遠 端。關於這方面,參照圖6,其係根據本發明其一或更多方 面的一總電腦網路的一方塊圖。此處將使用1>£2〇〇與/或寬 頻引擎(由多重PE構成)實作一電腦系統5〇〇的一總分散式 架構。系統500包括可連接複數個電腦與/或計算裝置的一 網路504。網路5G4可為—區域網路(lan)、像是網際網路的 一全域網路或任何其他電腦網路。連接至網路5〇4之電腦和 計算裝置(網路”成員,,)例如包括客戶電腦5〇6、飼服器電腦 5〇8、個人數位助理(PDA)5 1 G、數位電視(dtv)5 12及其他 有線或無線之電腦和計算裝置。較佳者網路504之成員所利 105208.doc -26- 1293157 用的處理器係從PE 200或其他適用之多重處理器系統加以 建構。
由於系統500之伺服器508較客戶506執行更多資料和應 用程式的處理,所以伺服器508包含比客戶506更多之計算 模組(例如:PE 200)。另一方面,在此例示中,pda 5 10執 行最少處理量。因此,PDA 5 10包含像是一單一pe 200之最 小的PE 200數目。DTV512執行本質上介於客戶5〇6與伺服 器508間的一等級之處理。因此,DTV 512包含介於客戶506 與伺服器508間的一處理器元件數目。 因此請注意··於動作4〇4(圖5)執行之處理安排118其處理 月匕力的/夬疋及是否調整其處理能力的最後決定將牵涉處理 安排118其内和外部處理器元件2〇〇之數目的一決定。圖6圖 解將使用許多内部和外部處理器元件2〇〇之處理能力的一 分散式系統500。 ;轉至圖5中所圖解之處理步驟的說明前,將提供有關圖 6之分散式系統500的進一步細節。系統5〇〇之同質組態促進 適應性、處理速度和處理效率。因為系統5〇〇之每一成員使 用一或更多(或某些片斷之)例如處理器元件2⑽的相同計算 執仃處理’所以用以執行資料與/或應用程式之處理的 ::電恥或计异裝置並不重要,因為此一資料和應用程式 所處理之資㈣_ 、予㈣唯識別包含系統500 U程式的軟體細胞,可將處理結果傳輸 要:該處理之電腦或計算裝置,而不 乂執仃此處理之模組具有一共用結構並利用一 105208.doc -27- 1293157 共用指令集架構,所以避免在軟體中新增一層以達成處理 器間之能力的計算負擔。此架構和程式規劃模型促進用以 執行例如即時、多媒體應用程式所需之處理速度。 為了進一步善用系統500所促進之處理速度和效率,可將 此系統處理之資料和應用程式封裝於唯一識別、均勻袼式 化的軟體細胞502中。每一軟體細胞502同時包含或可同時 包含應用程式和資料。每一軟體細胞亦包含用以遍及網路 504和系統500全域識別細胞的一ID。軟體細胞之結構的此 均勻性及遍及該網路之軟體細胞唯一識別促進網路5〇4 其任何電腦或計算裝置上的應用程式和資料處理。例如, 一客戶506可公式化一軟體細胞5〇2,但因為客戶5〇6之處理 能力有限,所以將軟體細胞502傳輸至一伺服器5〇8以便處 理。因此,軟體細胞502可遍及網路504地遷移,以便基於 網路504上之處理資源的可用性而處理。 系統500之處理器與軟體細胞5〇2的同質結構亦避免今曰 異貝網路之許多問題。例如,避免無效率之程式規劃模組, 像是尋求例如使用Java虛擬機器等虛擬機器之任何指令集 准許任何ISA上的應用程式處理。因此系統5〇〇可比傳統網 路更有效而且效率地實作寬頻處理。 再次轉至圖5,處理安排118所享用之處理能力很重要(尤 其當其可能使如圖6所示之外部裝置的處理能力停下時卜 某些情形下,此將不利影響被設計運轉於一較不精密之系 、、充的軟體私式之執行。因此,當動作404作成處理安排11 8 之處理旎力(其可包括外部能力)應根據該軟體程式之版本 105208.doc -28- 1293157 而調整的一決定時,勤杜土 于季乂佳者處理流程前進至節點A(圖7)。 於動作408,啟動用以變〜 雙更處理文排118之處理能力的一順 根據本發明可加以調整之處理能力的例示包括··改變該 處理安排用來處理資料和應用程式的一或更多時脈頻率。 如熟習此項技藝者將明白,例如當一給定之SPU 208(圖2) 以大約4她的一時脈頻率正常作業而且將該頻率向上或 向下調整時’在某些方面,該SPU 208之處理能力將因而增 加或減4。的確’可在—給定時間單位中實現之浮點運算 數目將增加或減少,可在一給定時間單位中實現之整數計 算數目將增加或減少,可在—給定時間單位中實現之指令 士將曰加$減少冑。又譬如,用以指導處理器元件· 内許夕&理功旎之?11 2〇4亦仰賴一時脈頻率,以便實現其 力月b其機旄可藉由調整該時脈頻率而增強或降級。又一 進v之例不,匯流排212亦可根據該時脈頻率而作業,根 據本毛明忒時脈頻率可增加或減少以增強或降級處理器元 件200之處理能力,及整體處理安排ιΐ8之處理能力。 根據本發明可加以調整之處理安排118的其他方面和參 數例如包括:區域記憶體250與/或共享記憶體214之記憶體 映像、(像是PU 204對)匯流排212之匯流排利用、匯流排212 之頻寬(像是128位元、64位元、32位元等)。可加以調整以 便使處理文排11 8之處理能力的一改變生效的進一步參數 例如包括:區域記憶體250與/或共享記憶體214之快取大 小、其快取組織、處理安排118之PU 2〇4的一或更多SPU 208 105208.doc -29- 1293157 之扎令延時、其指令通量、區域記憶體25〇與/或共享記憶 體214之記憶體延時及其記憶體通量。 又再譬如,可調處末端字元,例如:從一小末端字元(在 字串之末端的最低有效位元組)改變為一大末端字元(在 該字串之末端的最高有效位元組),反之亦然。可加以調整 之另參數係關於指令類型,例如:從MIPS轉換成
PowerPC,反之亦然。稍後此說明中將更詳細討論此等參數 及其調處。 S決疋·應調整處理安排1丨8之處理能力時,較佳者參照 I更表決定應調整處理安排1丨8之哪些參數及多少數 量。關於這方面,現在參照圖8,其係根據本發明其一或更 夕方面的一變更表550其一圖解。一般意義上,變更表55〇 結合各別之識別資訊(例如:軟體程式ID)與供表示對處理 安排118之處理能力所進行之調整用的一或更多參數。藉由 圖解,該識別資訊係以一垂直列522之方向出示,其中每一 項目(0010、0020、0030、...N)代表像是一軟體程式ID的一 片給定之識別資訊。每一片識別資訊關聯於一或更多參數 PM、P2_i、P3-i、P4-i、···?%」,其中每一參數表示對處 理安排118之處理能力所進行的一調整,而且丨代表給定參 數可採用的複數個數值之一。 舉例之’標示0040之識別資訊可對應於處理安排1丨8上所 執行的一軟體程式其一給定版本,而且其可已決定:處理 女排118之處理能力遠超過該軟體程式開發時考慮的處理 能力。其可進一步已決定:處理安排118之處理能力太高, 105208.doc -30- 1293157 以致如果以處理安排U8之完全 疋王此力執行給定的軟體程 式,將獲得不希望之結果。因此,變 雯更表550可包括關聯於 識別資訊_〇之複數個參數,亦即:參數Ρ2·2、來數⑸、 參數队4、..·參數PM-7。較佳者此等參數個別代表當關聯 之軟體程式執行時用以達成希望纟士 咬紙平罜恕果之處理安排118其處 理能力的一給定方面或此一方面應變更的數量。 譬如,參數Ρ2-2可代表將用來執行該軟體程式的一給定 spu或一群組SPU 208之時脈頻率。參數ρ2_2亦可代表 扣2〇4、匯流排212等一給定處理器元件2〇〇之其他部分的 時脈頻率。請注意:像是參數Ρ2_2的一給定參數之實際數 值可直接與處理安排118的—給定處理能力相關,像是實際 時脈頻率;抑或其可間接與這類能力相關,像是時脈頻率 應改變之數值。熟習此項技藝者將明自:在沒有偏離本發 明之精神和範圍下,可考慮其他間接關係。又舉例之,參 數Ρ3 1可代表當關聯之軟體程式執行時應加以調整以便獲 得希望結果之處理安排118其處理能力的另一方面。任一情 況下’較佳者處理安排118使用參數ρ2_2、ΡΜ、 Ρ4·4、..·ΡΜ_7調整其處理能力,以便達成用以執行關聯之 軟體程式(例如:0040)的一希望平台。 根據本發明之其他方面和具體實施例,較佳者變更表55〇 包括一進一步之維度,其准許各別組參數與一片給定之識 別資訊的結合。關於這方面,較佳者變更表55〇包括一維度 556 ’其中複數個處理識別符c〇〇1、c〇〇2、…⑶奴沿著該 維度而排列。每一處理識別符關聯於參數的一超級集合, 105208.doc -31 - 1293157 亦即·維度556的一給定單位内有複數組參數。因此,沿著 行552之每一軟體程式識別符關聯於沿著維度556之每一處 理識別符。同樣地,對於像是識別符〇〇4〇的一給定識別符, 複數組參數個別關聯於一各別之處理識別符c〇〇i、 C002、."COOX 〇 在該例示中,如圖8所圖解,關聯於識別符〇〇4〇之參數 P2-2、Ρ3·1、P4_4、亦關聯於處理識別符c〇〇i。與 識別符0040之關聯中存在潛在不同的參數組,亦即:其同 時關聯於識別符0040和處理識別符C001、c〇〇2、...C〇〇X。 優勢上,在如何設定每一參數之特殊值方面,此安排促成 許多自由度,尤其當可在具有非常不同之處理能力的處理 安排上執行一軟體程式其一給定版本時,例如:如同圖6 之系統500的情況。 再次轉至圖7,於動作410,作成變更表55〇係區域儲存於 處理安排118中或定位於像是網路124(其可與圖6之網路 504相同)上一節點之處理安排118之遠端的一決定。關於這 方面,變更表550可儲存於一或更多處理器元件2⑼的一或 更多區域記憶體250(圖3)與/或共享記憶體214(圖2)中。區 域儲存變更表550之優勢為··避免存取一遠端定位之變更表 所需的時間和效果。另一方面,為了確保變更表5〇〇之内容 精確且最新,將變更表550遠端儲存於可由一行政實體加以 控制及維護的地方很有利。 關於這方面’參照圖9,其係包含可被操作以連接至像是 網際網路124的一調路之處理安排丨18(較佳者包括監視器 105208.doc -32 - 1293157 120)的-處理系統则其—方塊圖。用來#作—行政實體的 一行政器382亦可連接至網際網路124。較佳纟,行政器如 包括被操作以輕合至一資料庫386的一網路與/或資料庫伺 服器384。資料庫386可常駐於與祠服器相同之位置,或 者可經由另一網路連接而遠端連接至伺服器。雖然未出 示,但網際網路124亦可連接複數個其他之處理安排(可具 有各式各樣之處理能力),而且其可利用行政器如提供的 服務,以下將加以討論。 當變更表550並非區域儲存於像是處理安排118的一或更 多處理安排(或者即使其一版本為區域儲存)時,較佳者,變 更表550的一本質上精確且最新之版本儲存於行政器的 資料庫386中。再次轉至圖7,如果變更表55〇並非區域儲 存,則較佳者處理流程前進至動作412,其中像是處理安排 118的一給定之處理安排經由網際網路124與行政器382設 置一通信鏈結。應了解:雖然網際網路124提供一較佳鏈 結,但在沒有偏離本發明之精神和範圍下,可利用任何已 知通信技術設置一鏈結。與行政器382設置一通信鏈結之動 作的一部分可包括處理安排118或其使用者之鑑別。的確, 因而行政器3 82提供之服務不必讓不願意支付抑或補償行 政器的使用者享用。因此,該鑑別處理可牽涉:根據已知 技術而將某些本質上唯一抑或控制之資訊從處理安排丨i 8 傳輸至"ί亍政器382。此資訊可包括一使用者名稱與/或密 碼、一會員號碼、軟體之某種購買證明的一序號等。 一旦處理安排118與行政器382間設置通信鏈結,較佳者 105208.doc -33- 1293157 該處理前進至動作414,其中透過網際網路124將至少有關 該軟體程式之識別資訊(像是該軟體程式ID或其他索引)從 處理安排11 8傳輸至行政器3 82。雖然並不要求,但較佳者, 變更表550包括維度556,其指示:像是一播放器ID號碼或 處理能力之其他索引的一處理識別符透過網際網路124從 處理安排118傳輸至行政器382。 其次,較佳者行政器382利用伺服器384處理進來資料及 存取變更表550(動作416)。尤其,較佳者伺服器384利用該 • 識別資訊(如果使用,則尚有該處理識別符)獲得一組參數, 其表不當運轉該軟體程式時應對處理安排u 8之處理能力 進行以便達成希望結果的調整。其後,較佳者伺服器3 8以 一適當形式(例如:以上討論之細胞格式)封裝該等參數,而 且透過網際網路124將其傳輸至處理安排118。然後,較佳 者處理流程前進至圖10中圖解的節點B,現在將參考之。 於動作418,較佳者處理安排118採取利用接收之來自變 更表550之參數(不管接收之這類參數係來自一區域儲存版 本或來自一行政實體)變更其處理能力的步驟。假設處理安 排118在一作業系統或其他系統等級之控制程式的控制 下,較佳者將該等參數提供給這類程式,以便採取變更處 理安排118之處理能力的動作。另—方面,如果採用一全硬 體途徑與/或如果採用-組合之軟體和硬體途徑,則較佳者 使該等參數選路至例如記憶體位置、暫存器等適當目的 地。於動作420,較佳者處理安排118根據提供之參數而變 更其處理特徵。 105208.doc 34· 1293157 由於給定處理器元件200之功能則可採用許多途 處理安排m的處理特徵,龍此說明中將提供某些=更 」而此時假設這類處理特徵已成功變更,較佳者誃虛、 午刚進至動作422,其中該軟體程式係利用這類已: ::特徵加以執行。優勢上,其避免該軟體程式之執行的 -吊因為處理安排118模擬該軟體程式開發時考之 能力。 丁可k之處理 =11出示一系統610的一例示,該系統可被操作以准許處 理安排11 8以例如防範該程式内容之未授權複本或宣布= 無作用的一保全方式下載像是上述該等軟體程式與/或該 等參數組之程式内容。此一系統說明於美國申請案號 1〇/316,675,標題"用於程式内容之保全分配的方法及裝置·, 於一 0 〇二年十二月十一曰申請,該揭露以引用的方式 併入本文中。 較佳者系統610包括一行政伺服器601、一第三團體伺服 器602、一加密伺服器6〇3和像是處理安排118之複數個客戶 〜^波置604 ’全部輕合至像是網際網路的一網路6〇5。請 注意:系統610可包括複數個行政伺服器6〇ι、複數個第三 團體伺服器602和複數個加密伺服器6〇3。為了簡單明瞭, 此處僅將詳細說明每一這類伺服器之一。 季父佳者伺服器601、6〇2、6〇3個別由一實體或個人加以維 遵、控制與/抑或者與其結合。請注意··此處可交換參考該 词服器及其關聯之實體。 較佳者,像是上述伺服器384等較佳者可被操作以耦合至 105208.doc -35- 1293157 像是上述資料庫386的一個人化資料庫606之行政伺服器 601係由藉由執行某些行政功能而收費的一實體加以維 護、控制與/抑或者與其結合。行政伺服器6〇1和個人化資 料庫606可利用適合用以實現網路伺服器功能和資料庫功 能之任何已知硬體加以實作。 較佳者第三團體伺服器602係由像是軟體程式的一開發 者等行政伺服器601以外的一實體加以控制、維護與/抑或 者與其結合。舉例之,第三團體伺服器602可為電腦應用程 式、電腦系統程式的一開發者,與/或可提供如以上所述由 處理安排118用來調整其處理能力之該等參數組。然而,請 注意:關聯於第三團體伺服器602之實體不必與行政伺服器 601不同’而且實際上可為相同實體。例如,第三團體祠服 器602所實現之功能可由行政祠服器6〇 1加以實現。第三團 體伺服器602可利用用以實現伺服器相關功能之任何已知 硬體加以實作。 較佳者加密伺服器603係由與行政伺服器6〇1相同之實體 加以控制、維護與/抑或者與其結合。譬如,加密伺服器可 與伺服器384共同位於行政器382内。然而,請注意:加密 伺服器603可關聯於另一實體。加密伺服器6〇3可利用用以 實現伺服器相關功能之任何已知硬體加以實作。行政伺服 器60卜第三團體伺服器602和加密伺服器6〇3所實現之各別 功能可分配給一或更多伺服器與/或由該等伺服器加以控 制、維護與/抑或者與其結合的一或更多實體,然而較佳者 這類分配與圖11中所圖解一致。 105208.doc -36- 1293157 β通常,較佳者每-客戶終端裝置咖可被操作_合至像 是任何已知之硬碟機硬體的一硬碟機6〇7和像是〜 M_rystick的一記憶卡6〇8。替代上,將客戶終端裝置輕 合至像是-CD光碟機、一 DVD光碟機或一藍光光碟機等如 以上所述而操作的-光學裝置。雖然已知之硬碟機6〇7、記 憶卡608與/或光學裝置為與裝置6〇4分離的項目(較佳者其 可抽換搞合至客戶終端裝置6〇4),但應了解··其可盘裝置 _-起整體定位。客戶終端裝置6q何利用像是—個人電 腦、申請人之PlayStati〇n6〇2等任何已知硬體加以實作。 較佳者客戶終端裝置604包括一或更多處理安排ιΐ8,而 且車乂<土者其可被操作以藉由透過網路6〇5下載而接收該原 ❹密程式或㈣原始加密參數。雖然該原始加密程式或 該組原始加密參數可從任何授權實體獲得,但較佳者客戶 終端裝置604(例如:藉由透過網路6〇5下載而)從第三團體伺 服器602或從行麵服器咖接收該原始加密電腦程式或該 組原始加密參數。 端使用者可以冑形式(亦即:原始加密>接收該電^ 程式與/或該組參數,其中在沒有域得—解密金鍮並將該 原始加密程式解密下,其無法用來執行客戶終端裝置_ 之處理安排其處理能力的調整程式。該解密金鑰僅可由一 授權客戶終端裝置6〇4獲得。 見在參”、、圖12,其係用以圖解由加密祠服器6〇3和第三團 體伺服讓所執行之某些處理步驟的一概念方塊圖和流 圖此圖不提供如何產生該原始加密電腦程式或該組原 105208.doc -37- 1293157 始加密參數的一例示。在此例示中,第三團體伺服器6〇2 關聯於一軟體開發者,其本身或者其結合另一實體可獲得 耘式與/或該等參數組。如圖12中所示,第三團體伺服器6〇2 可包含像是統程式或—應用程式之至少—程式,與/或 ,、"且參數 或更多此等程式或參數組透過網路605 傳輸至加密伺服器603。
較佳者加密飼服器603將該程式或該組參數加密,而且將 該加密程式或該組加密參數轉至第三團體祠服器6〇2。該加 密處理可利用像是公用金鍮加密、對稱金餘加密等任何已 a加:技術,以便產生該加密軟體程式或該組參數。加密 =服器603亦可提供能夠將該加密軟體程式或該組參數解 密之解密金鑰給第三團體飼服器6〇2。第三團體飼服器602 =透過網路6〇5的-電子下載將該加密程式或該組加 ,、參數分配給客戶終端裝置6〇4。不管該原始加 組原始加密參數如何分配,在沒有執行某些註冊步驟下, 較佳者終端使用者無法執 該等處理能力。 "&式或者制該組參數調整 現在參照圖⑴其係用以圖解較佳者被實 理該 ^密㈣程式與/或該組原始加密參數之某些處理步: 透過一的—下载作業=客戶終端裝置6〇4已藉由 該組原始加密參數。然而接收該原始加密電觸程式或 “、、 為了執行該原始加密雷腦p彳 或者使用該組原始加密參數 王工 透過網路605與行政伺服^ 終端裳置604必須 ,主冊該原始加密電腦程式或 105208.doc -38 - 1293157 該組原始加密參數。 圖14之流程圖中圖解該註冊處理的至少某些步驟。於步 驟20客戶終端裝置6〇4接收該原始加密電腦程式戈該組 原:始加密參數,而且如以上所討論加以儲存。於步驟似, 車又佳者使用者提供用以指示其希望安裝該電腦程式並且準 備好執行或者希望使㈣組參數的-指令。關於這方面, 車又佳者客戶終端裝置604包括被引動以響應該使用者之安 裝指令的-進—步之電腦程式。此進—步之程式提示使用 者註冊該原始加密電腦程式或該組原始加密參數,而且引 動一通信特性(步驟S24)。
請注意:較佳者客戶終端裝置6〇4包括一網路介面,如技 藝中已知,其可被操作以透過網路6〇5提供通信。任何已知 之網路介面硬體均可作為此用途。於步驟S26,較佳者客戶 終端裝置604啟動一通信通道,而且設置於裝置6〇4與行政 伺服器601之間。較佳者客戶終端裝置6〇4之網路介面可被 操作以促進透過網路605將與裝置6〇4相關的至少某種識別 資訊傳輸至行政伺服器6(H。尤其,較佳者該識別資訊包括 像是播放器ID等本質上為客戶終端裝置6〇4唯一的一機器 ID。該識別資訊亦可包括用以指示由客戶終端裝置6〇4用來 儲存該原始加密電腦程式的一記憶體之類型的一媒體id。 較佳者客戶終端裝置604包括像是硬碟機607、記憶卡6〇8 荨可被操作而將該原始加密電腦程式或該組原始加密參數 與以下將討論之某些其他資訊一起儲存的一第一儲存裝 置,以及像是一唯讀記憶體(R0M)等可被操作以儲存該機 105208.doc -39- 1293157 器1D的一第二儲存裝置。較佳者客戶終端裝置604之網路介 面進一步可被操作以透過網路605將該機器ID(從該R〇M) 傳輸至行政伺服器601(動作S28)。亦可將該媒體m從客戶 終端裝置604傳輸至行政伺服器601。 - 參照圖15,行政伺服器601透過網路6〇5接收例如機器 _ 而且有可能為媒體1D)之來自客戶終端裝置604的識別 貝汛(步驟S30)。關於這方面,較佳者行政伺服器6〇1包括 可被操作以促進與網路6〇5之通信因而能夠透過網路接 • 收來自客戶終端裝置604之識別資訊的一網路介面。於步驟 S32,行政伺服器6〇1指派對應於接收之來自客戶終端裝置 604之機器id的另—ID,此處稱為—虛擬ID。請注意:該虛 擬ID可從複數個預存⑴選定,該虛擬⑴可透過對該機器出 或某種其他運算元所執行之數值運算或者可用以產生該虛 擬ID之任何其他已知或其後開發的技術加以導出。 於步驟S34’行政伺服器6〇1對個人化資料庫6〇6搜尋與接 收之來自客戶終端裝置6〇4之機器⑴匹配的一現存機器 D(亦即.儲存於其第二儲存裝置(r〇m)之機器I。)。參照圖 16 ’較佳者個人化資料庫6()6可被操作以儲存各別註冊資 訊,每-組註冊資訊對應於一各狀客戶終端裝置6〇4。該 註冊資訊包括像是機器1〇等客戶終端裝置_之至少某種 識別資訊。如圖16所圖解,如同圖16之左行中所示,複數 個機器ID預存㈣人化資料庫祕中。較佳者每—這類機器 m對應於_給定之客戶終端裝置_,而且這類機㈣本質 上為各別客戶終端裝置_唯—。較佳者行政伺服器6〇ι亦 105208.doc 1293157 包括一資料處理器,其可被操作以對個人化資料庫6〇6搜尋 與透過網路605接收之來自客戶終端裝置6〇4之機器⑴匹配 的註冊資訊(例如:該機器ID)。任何已知或其後開發之資 料處理硬體均可作為此用途。 .再次轉至圖15 ,於步驟S36,結合該虛擬1]〇與儲存於個人 化資料庫606中之機器ID,換言之,該虛擬1〇關聯於將接收 之機器ID傳輸至行政伺服器6〇1的特殊客戶終端裝置6〇4。 較佳者此關聯係藉由一種使該虛擬m對應於儲存之機器⑴ # 的方式將其儲存於個人化資料庫606内而達成。 如以上所註,透過網路6〇5從客戶終端裝置6〇4傳輸至行 政伺服器601之識別資訊(圖14之步驟S28)可包括:所傳輸 之對應於客戶終端裝置604用來儲存該原始加密電腦程式 或該組原始加密參數之儲存裝置其類型的一媒體ι〇(或多 個媒體ID)。例如,該媒體1〇可指示··客戶終端裝置6〇4將 該原始加密電腦程式或該組原始加密參數儲存於一硬碟機 6〇7、一記憶卡608或某種其他類型之儲存媒體中。響應之, 着行政伺服器601可藉由將接收之媒體ID儲存在個人資料庫 606中對應於儲存之機器m的一位置而結合該虛擬⑴與儲 存之機器ID和接收之媒體ID。 參照圖17和18,較佳者行政伺服器6〇1可被操作以產生一 已加密解密金鑰和一已加密虛擬ID,其中該解密金鑰可被 操作以用來將客戶終端裝置6〇4上之原始加密電腦程式或 該組原始加密參數解密。請注意··行政伺服器6〇ι可存取能 夠用來將加密伺服器6〇3(圖所產生之各別原始加密 105208.doc -41- 1293157 電知程式解密的任意數目之解密金鎗。此等解密金錄可藉 由加密伺服器603與/或藉由第三團體伺服器6〇2而提供給 ,政飼服H 601。再者’該等解密金鑰可藉由網路州、藉 由另-網路而傳輸至行政储器6()1,或者可藉由儲存媒體 而人工提供等。 於y驟S40幸乂佳者行政伺服器6〇 i使用關聯於客戶終端 裝置_之虛擬ID將謂密金鑰加密。再者,較佳者行政飼 服為601使用客戶終端裝置6〇4之關聯的機器①將該虛擬⑴ 加密,較佳者每-關聯之機器1〇係從個人化資料庫6晴得 (步驟S42)。 車乂佺者灯政伺服器601之網路介面進一步可被操作以促 進透過網路605將已加密解密金鑰和已加密虛擬出傳輸至 客戶終端裝置604(步驟S44)。於步驟㈣,較佳者客戶終端 裝置604透過網路6〇5接收已加密解密金餘和已加密虛擬 ID,而且將其儲存於第一儲存裝置(例如:硬碟機⑼7、記 憶卡608等)。 已加密解密金鑰僅提供給—授權客戶終端裝置6〇4,例 如:已提供-有效機器⑴而且已註冊關聯於用來將該解密 金鑰加密的一虛擬ID之機器ID的一客戶終端裝置6〇4。再 者,像是經由網路侵權或未授權複製等已加密解密金鑰之 任何截取將無法提供將該原始加密電腦程式或該組原始加 密參數解密的必要資訊(亦即:_可使用之解密金鑰的 確’這類解密金鑰係以-纟質上唯_之虛擬ID予以加密。 類似地,已加密虛擬m僅於註冊處理已完成而且客戶終端 105208.doc -42- 1293157 裝置604已被視為授權後才提供給客戶終端裝置6〇4。當以 -加密方式(亦即··使用客戶終端裝置6〇4之機器⑴加幻將 該虛擬ID從行政伺服器601傳輸至客戶終端裝置6〇4時,已 加密虛擬ID之任何未授權取得將不給予將已加密解密金鑰 解密的必要資訊。 現在參照圖19和20,其中圖解被實現以便在客戶終端裝 置604内載入/安裝該原始加密電腦程式與/或該組原始加密 參數之某些處理。圖19圖解客戶終端裝置6〇4與例如硬碟機 6〇7、記憶卡608等之第一儲存裝置分離。如以上所討論, 此等το件可加以整合或半整合。請注意··在該處理之此階 又客戶、’、ς知裝置604包括儲存於例如該rom之第二儲存裝 置的機器ID,而且第一儲存裝置6〇7、6〇8包含以下項目: 該機器ID、已加密虛擬ID、已加密解密金鑰和該原始加密 電腦程式。 ;v驟S 5 0 ’使用者可提供用以載入、安裝該原始加密電 腦程式或使用該組原始加密參數調整該處理能力的一指令 給客戶終端裝置604。響應之,客戶終端裝置6〇4使用適當 之硬體和軟體處理從第一儲存裝置6〇7、6〇8讀取機器m, 以及從例如該R0M之第二儲存裝置讀取機器ID(步驟 S52) °於步驟S54,作成此等機器id是否匹配的一決定。如 果八不匹配,則該處理終止與/或進入一替代處理。然而如 果/、匹配’則該處理流程前進至步驟S 5 6,其中使用機器 ID(車又佳者’儲存於該R〇M之機器ID)將已加密虚擬1〇解 '、。一旦獲得該虛擬ID,則使用該虛擬1〇將已加密解密金 105208.doc -43- !293157 輪解密(步驟S5 8)。其次,使用該解密金鑰將該原始加密電 月句程式或該組原始加密參數解密(步驟S6〇)。於步驟S62, 吏用於步驟S5 6獲得之虛擬ID將該電腦程式或該組參數重 加费,以獲得一客戶加密電腦程式或一組客戶加密參數。 將該客戶加岔電腦程式或該組客戶加密參數儲存於第一儲 存裝置607、608中(步驟S64)。在此階段,已加密解密金鑰、 原始加岔電腦程式和該組原始加密參數均不需保存於第 一儲存襞置607、608中。 ' 車乂佳者客戶終端裝置6〇4包括一解密裝置和一加密裝 置—以便執仃以上討論之加密和解密功能。該解密裝置和 :抢裝置可整合在一起,而且簡稱為一解密裝置。根據本 么明’可利用用以執行這類加密及解密之任何已知或其後 開發的硬體與/或軟體。例如,可利用一解密資料館口 密資料館等。 刀 二 =電腦程式與/或該組客戶加密參數得以保 二盆未4/本終端裝置6G4上之未授權終端使用者無法 丁”未杈榷複本。的確’如以下將解釋 腦程式與/或該組客戶加密參數必須先解密 祠服㈣1註冊該電腦程式之客戶終 才=與订政 其他客戶終端裳置上執行。 ”4以外的任何 參照圖21和22’現在將討論客戶終端 電腦程式之處理。在該處理之此階段 炊用朿執行該 包括例如該R〇M等包含該機㈣之第二儲㈣、^裝置6〇4 該機器ID、該已加密# 、置以及包含 在虛擬m和该客戶加密電腦程式之第一 105208.doc -44- 1293157 儲存裝置607、608。 於步驟S70,使用者可提供用以執行該電腦程式的一指令 給客戶終端裝置604。響應之,在一適當之電腦程式之控制 下操作的客戶終端裝置從第一儲存裝置607、608讀取機器 ID,而且從第二儲存裝置(ROM)讀取機器ID(步驟S72)。於 步驟S74,作成該等機器ID是否彼此匹配的一決定。如果該 等機器ID匹配,則處理流程前進至步驟S76,其中客戶終端 裝置604之解密裝置使用機器ID(較佳者,包含於該ROM之 B 機器ID)將已加密虛擬ID解密。於步驟S78,客戶終端裝置 604之解密裝置使用於步驟S76獲得之虛擬ID將該客戶加密 電腦程式或該組客戶加密參數解密。此時,客戶終端裝置 604可執行駐留於RAM之電腦程式,或者調整該處理安排之 處理能力。 該客戶加密電腦程式或該組客戶加密參數僅可使用關聯 於將該客戶加密電腦程式或該組客戶加密參數加密之虛擬 ID的客戶終端裝置604進行解密。因此,如果該客戶加密電 II 腦程式或該組客戶加密參數之未授權複本提供給無授權終 端使用者,則在這類未授權終端使用者試圖執行該電腦程 式或使用該組參數之裝置上可能無法將該客戶加密電腦程 式或該組客戶加密參數解密。再者,如果將第一儲存裝置 607、608提供給一未授權終端使用者(例如:以致儲存裝置 607、608耦合至一不同之客戶終端裝置604),則已加密虛 擬ID無法解密,因為儲存於ROM之任何機器ID將與包含於 第一儲存裝置607、608之機器ID不匹配。因此,無法將該 105208.doc -45· 1293157 客戶加密電腦程式或該組 式或該組客戶加密參數之保人八^數解费。該等電腦程 複本宣布無作用,而且僅有、_;;殊途徑韻未授權 執行該等電腦程式與_處=㈣置_才能夠 雖然以上討論之与Γ | 士 提枇仏皆 該專方面考慮透過網路605將解密金鑰 k供給客戶終端裝置6〇4 ^ 分配的-儲存媒體(例如::CDRH可考慮藉由用於人工 給客戶終端裝置604。現在將灸昭圖將該解密金餘提供 將 '照圖23和24說明本發明之此 專方面。如圖23中所示,客戶終端裝置6 6〇9Α接收一已加密第 ㈣媒體 孟鑰。較佳者該第一解密金鑰 =操作以用來將客戶終端襄置604上之原始加密電腦程 式或該組原始加密參數解密。較佳者行政飼服器⑷可被操 作以產生-已加密第二解密金鎗和一已加密虛擬①,其中 該第二解密金鑰可被操作以用來將已加密第一解密金餘解 密。請注意:行政伺服器601可存取能夠用來將各別之已加 密第一解密金输解密的任意數目之第二解密金餘。此等第 二解密金鑰可由加密伺服器603與/或由第三團體伺服器 6〇2提供給行政祠服器6〇1。再者’此等第二解密金鑰可藉 由網路605、藉由另一網路而傳輸至行政伺服器6〇1,或者 可藉由儲存媒體而人工提供等。 於步驟S40A,較佳者行政伺服器6〇1使用關聯於客戶終 端裝置604之虛擬ID將第二解密金鑰加密。再者,較佳者行 政伺服器601使用較佳者個別從個人化資料庫6〇6取得之客 戶終端裝置604的關聯之機器ID將該虛擬m加密(步 105208.doc -46- 1293157 S42)。較佳者行政伺服器6〇1之網路介面進一步可被操作以 促進透過網路605將已加密第二解密錢和已加密虛擬^ 傳輸至客戶終端裝置604(步驟S44A)。於步驟S46a,較佳者 客戶終端裝置604透過網路605接收已加密第二解 已加密虚⑽’而謂其赌存於第_健存裝置(例== 機607、記憶卡608等)。
已加密第二解密金鑰僅提供給一授權客戶終端裝置 604,例如·已提供一有效機器m而且已註冊關聯於用來將 第二解密金鑰加密的一虛擬ID之機器ID的一客戶終端裝置 6〇4。像是藉由網路侵權或未授權複製等已加密第二解密金 錄^壬何截取將無法提供將已加密第—解密金賴密二必 要資訊(亦即:一可使用之第二解密金鑰)。的確,這類第二 解密金鑰係以-本質上唯—之虛擬m予以加密。類似地, 已加密虛擬ID僅於註冊處理已完成而且客戶終端裝置6〇4 已被視為授權後才提供給客戶終端裝置6〇心當以一加密方 式(亦即:使用客戶終端裝置6〇4之機器m加密)將該虛擬山 從行政祠服器⑷傳輸至客戶終端裝置_時,已加密虛擬 ID之任何未授權取得將不給予將已加密第二解密金餘解密 的必要資訊。 現在參照圖2 5和2 6, 置604内載入/安裝該原始加密電 其中圖解被實現以便在客戶終端裝 月®程式或該組原始加密參 數之某上處理。圖25圖解··在該處理之此階段,客戶終端 裝置604包括储存於第二儲存裝i(R〇M)之機器①,而且第 儲存4置607、608包含以下項目··該機器m、已加密虛 105208.doc -47- 1293157 擬ID、已加密第二解密金餘、已加密第一解密金餘和該原 始加密電腦程式與/或該組原始加密參數。 於步驟S50’制者可提供心載人/安裝制始加密電 腦程式與/或該組原始加密參數供未來使用的一指令給客 戶終端裝置刚。響應之,客戶終端裝置_使用適當之硬 體和軟體處理從第-儲存裝置6G7讀取機㈣,以及從例如 ROM之第二儲存裝置讀取機器m(步驟s52)。於步驟⑽, 作成此等機器m是否匹配的一決定。如果其不匹配,則該 處理終止與/或進入一替代處理。然而如果其匹配,則該處 理流程前進至步驟S56,其中使用機器I唯佳者,儲存於 該ROM之機⑽)將已加密虛擬ID解密。—旦獲得該虛擬 ID’則使用該虛⑽將已加密第二解密金鑰解密,而且使 用第二解密金鑰將已加密第—解密金瑜解密(步驟S5叫。 -人’使S第-解密金餘將該原始加密電腦程式或該組原 始加密參數解密(步驟S60A)。於步驟S62,使用於步驟S56 獲得之虛擬m將該電腦程式或該組參數重加密,以獲得一 客戶加密電腦程式。將該客戶加密電腦程式或該組客戶加 ^參數儲存於第—儲存裝置_、608中(步驟S64)。在此階 段’已加密第一解密金鑰、已加密第二解密金鑰、該原始 加密電腦程式和該組原始加密參數均不需保存於第一儲存 裝置607、608中。 —旦獲得該客戶加密電腦程式或該組客戶加密參數並將 其健存於第―健存裝置607、_中,則可制關於圖21和 而討論之處理執行該電腦程式。 105208.doc -48- 1293157 圖2 7出示可被操作以准許處理安排i丨8以例如防範未授 權複本或宣布其無作用的一保全方式下載上述電腦程式^ 該組參數之另一系統710。此一系統說明於美國申請案號 10/316,309,標題"用於内容之保全分配的方法及裝置”,於 二〇 〇二年十二月一日申請,該揭露以引用的方式併入本 文中。 較佳者系統710包括一第三團體伺服器7〇1、一加密伺服 窃702、一分配伺服器7〇3、一行政伺服器7〇4和像是處理安 參 排118之複數個客戶終端裝置705,全部耦合至像是網際網 路的一網路706。請注意:系統71〇可包括複數個第三團體 伺服器70卜複數個加密伺服器7〇2、複數個分配伺服器7〇3 與/或複數個行政伺服器704。為了簡單明瞭,此處將僅討 論每一這類伺服器之一。較佳者伺服器7(n、7〇2、7〇3、7〇4 個別由一實體或個人加以維護、控制與/抑或者與其結合。 請注意:此處可交換參考該伺服器及其關聯之實體。 如以上參照圖11所述,較佳者第三團體伺服器701係由像 ® 是軟體程式的一開發者等的一實體加以控制、維護與/抑或 者與其結合。 杈佳者加密伺服器702係由根據行政功能而付費的一實 體加以控制、維護與/抑或者與其結合。較佳者,此實體與 行政伺服器704為相同實體。然而,請注意:加密伺服器702 可關聯於另一實體。加密伺服器7〇2可利用用以實現伺服器 相關功能之任何已知硬體加以實作。 較佳者分配伺服器703係由根據像是經由網路7〇6將該軟 105208.doc •49- 1293157 體程式或該組參數分配給客戶終端裝置705而付費的一實 體加以控制、維護與/抑或者與其結合。較佳者分配祠服器 703耦合至像是資料庫386的一個人化資料庫707,此處稍後 將詳細加以討論。分配伺服器703和個人化資料庫7〇7可利 用適合用以實現網路伺服器功能和資料庫功能之任何已知 硬體加以實作。 較佳者像是伺服器384之行政伺服器704係由藉由執行某 些行政功能而支費的一實體加以維護、控制與/抑或者與其 結合。行政伺服器704可利用適合用以實現網路伺服器功能 和負料庫功能之任何已知硬體加以實作。 第二團體伺服器701、加密伺服器7〇2、分配伺服器7〇3 和行政伺服器704所實現之各別功能可分配給一或更多伺 服器與/或用以控制、維護與/抑或者與該等飼服器結合的一 或更夕實體。實際上,並不要求每一祠服器關聯於分離之 實體,例如:—實體可關聯於加密伺服器703和行政伺服器 〇4 而,較佳者該分配與圖27中所圖解一致。 118通I,每一客戶終端裝置705包括-或更多處理安排 硬體的且較佳者可被操作以耦合至像是任何已知之硬碟機 更體的一硬碟機708和像是sony — 7〇9°替代上,㈣客戶終《Μ合至-CD光磾機卡 DVD光碟機或— 碟機、一 裝置。雖然所示機4如以上所述而操作的—光學 win, 更碟機708、記憶卡709與/或光學I置 與裝置705分離的馆n “ 〜衣罝為
ί 705) 、(較佳者其可抽換耦合至客戶终^ F 置7〇5),但應了解:其可 、、袭 "表置705—起整體定位。客戶終 105208.doc •50- 1293157 端裝置705可利用像是一個人電腦、申請人之piayStati〇n 7〇2等任何已知硬體加以實作。 較佳者客戶終端裝置705可被操作以藉由透過網路7〇6以 上述關於圖11之客戶終端裝置604之方式下載而接收如以 上所述的一原始加密程式與/或一組原始加密參數。 現在參照圖28,其係用以圖解由加密伺服器7〇2和第三團 體伺服器701所執行之某些處理步驟的一概念方塊圖和流 程圖。該圖式提供如何產生該原始加密電腦程式或該組原 # 始加密參數的一例示。在此例示中,第三團體伺服器701 關聯於一軟體開發者,其本身或者其結合另一實體可獲得 透過網路706傳輸至加密伺服器702之電腦程式或該組參 數。然而,請注意:該電腦程式或該組參數可例如藉由儲 存媒體而人工提供給加密伺服器702。 車乂佳者加雄、伺服器702將該程式與/或該組參數加密,而 且將該加密程式或該組加密參數轉至第三團體伺服器 701。該加密處理可利用像是公用金鍮加密、對稱金鑰加密 ^ 等任何已知加密技術,以便產生該加密程式或該組加密參 數。言如,加岔伺服器702將像是一加密系統程式(一原始 加始、系統程式)或一加密應用程式(一原始加密應用程式)的 一加密程式或者將一組原始加密參數轉至第三團體伺服器 701。同時,加密伺服器702可提供能夠將該加密程式或該 組加密參數解密之解密金鑰給第三團體伺服器7〇1。較佳 者,《亥解禮金鑰係以一非啟動狀態提供給分配伺服器Μ), 亦即·以一種其無法立即用來將該原始加密電腦程式或該 105208.doc -51 - 1293157 組原始加密參數解密之方式。例如,初始時,該解密金鑰 可由像是加密伺服器702的一實體予以加密,使其成為非現 用。如此處猶後將討論,此提供一有利之安全等級。 現在參照圖29,其係用以圖解較佳者在分配伺服器703 與行政伺服器704間實現之某些處理步驟的一概念方塊圖 和流程圖。較佳者分配伺服器703透過網路706與行政伺服 器704設置一通信鏈結。較佳者行政伺服器7〇4透過網路7〇6 將一金鑰分配程式711、金鑰管理資料712和一金鑰註冊程 式713傳輸至分配伺服器703。如此處稍後將討論,金鑰分 配程式711係由分配伺服器703加以執行以便准許將解密金 鑰分配給終端使用者。較佳者該金鑰管理資料為包括一分 配ID之資訊的一保全收集,較佳者本質上其為每一分配伺 服器703唯一。較佳者金鑰註冊程式713係由分配伺服器703 加以執行以便將非現用解密金鑰轉換成一現用解密金鑰 (亦即:可用來將該原始加密電腦程式解密)。 現在參照圖30,其係用以圖解較佳者在分配伺服器703 與行政伺服器704間實現之進一步處理步驟的一流程圖。通 常,分配伺服器703可透過網路706對行政伺服器704產生一 啟動需求,而且接收來自行政伺服器704之啟動授與資訊以 響應之。尤其,於動作S 1,較佳者分配伺服器703透過網路 706連接至行政伺服器7〇4。於動作S2,分配伺服器7〇3將該 金鑰官理資料(其中包括該分配器ID)傳輸至行政伺服器 704 〇 於動作S3,較佳者行政伺服器704利用一適當之鑑別處理 105208.doc -52- 1293157 鑑別分配伺服器703。例如,行政伺服器7〇4可要求分配伺 服器703提供一使用者ID、密碼等或者某些其他可驗證資 訊,以便准許鑑別。然而較佳者行政伺服器7〇4從金鑰管理 資料712擷取該分配器ID以便鑑別分配伺服器7〇3。於動作 S4,作成該鑑別是否成功的一決定。如果鑑別不成功,則 該處理前進至動作S5,其中並未准許任何啟動,而且該處 理終止。如果鑑別成功,則較佳者該處理流程前進至動作 S6,其中透過網路706將啟動授與資訊從行政伺服器7〇4傳 輸至分配伺服器703。 於動作S7,較佳者分配伺服器7〇3啟動關聯於該原始加密 電細程式或該組原始加密參數之解密金鑰。尤其,較佳者 分配伺服器703執行用以要求輸入啟動授與資訊之金鑰註 冊程式713。響應之,金鑰註冊程式713啟動該解密金鑰使 其可用來將該原始加密電腦程式解密。舉例之,該啟動授 與資訊可包括適合將一初始已加密之解密金鑰予以解密的 一解密金鑰。在此情節中,金鑰註冊程式713包括利用該啟 動授與資訊將該初始已加密之解密金鑰予以解密的一解密 能力。 不管該解密金鑰如何或者是否啟動,較佳者分配伺服器 703將該解密金鍮儲存於個人化資料庫707中。在此階段, 分配伺服器703包含(或得以存取)該原始加密電腦程式或該 組原始加密參數以及能夠將這類程式或該組參數解密之解 密金鑰。 現在參照圖3 1,其係用以圖解較佳者被實現以處理該原 105208.doc -53- 1293157 始加密電《式或該㈣始加密參數之某 概念方塊圖和流程圖。然而為了執行該原始加密;=: 或者使用該組原始加密參數調整該處理安排之_理" 客戶終端裝置7。5必須執行某些註冊步驟。較‘二驟 係以網路706上之行政伺服器7〇4加以圖解。 圖32之流程圖中圖解該註冊處理的至少某些步驟。步驟 S20、S22、S24、S26和S28類似於圖16中具有相似 之步驟。
、,、後’於動作S30,較佳者行政伺服器7〇4產生註冊資料 並透過網路706將其傳輸至客戶終端裝置7〇5。舉例之,該 註冊資料可從該機器⑴和該分配器卿成,較佳者因而: 後可藉由該註冊資料之適當分析而識別此等〗d。於接受該 註冊資料時,較佳者該客戶終端裝置將其儲存於例如硬碟 機與/或記憶卡709之第一儲存裝置中。 參知、圖33 ’請注意··像是伺服器384之行政伺服器7〇4可 耦合至像是資料庫386的一資料庫7〇7A。資料庫7〇7a可包 含該註冊處理之上述階段期間所接收的任何裝置1£>與/或 分配ID。較佳者,裝置m和分配器m彼此結合而儲存, 因而可獲得有用之歷史資料及其分析。例如,可從這類分 析決定:某些客戶終端裝置7〇5已接收來自某些分配伺服器 703之該原始加密電腦程式或該組原始加密參數。裝置ID、 分配器ID與/或其間之關聯連同從分配伺服器703獲得的資 料可用來確保分配伺服器703部分之任何義務(例如:藉由 合約)均符合。 105208.doc -54- 1293157 現在參照圖34和35,其各別為用以圖解較佳者被實現以 註冊該電腦程式或該組參數並准許終端使用者進行執行或 調整該處理之進一步處理步驟的一概念方塊圖和一流程 圖。較佳者使用者提供一指令給客戶終端裝置705,其中指 示:希望獲得適合將該原始加密電腦程式解密的一解密金 鑰。於步驟S21,客戶終端裝置705透過網路706與分配伺服 器703設置一通信鏈結。因此,客戶終端裝置705將(先前從 行政伺服器704獲得之)註冊資料傳輸至分配伺服器703(動 作 S22)。 於動作S23,分配伺服器703透過網路706接收例如包含該 機器ID(而且有可能為分配器ID)之來自客戶終端裝置705 的註冊資料。關於這方面,較佳者分配伺服器703包括可被 操作以促進與網路706之通信因而能夠透過網路706接收來 自客戶終端裝置705之註冊資料的一網路介面。於步驟 S23,行政伺服器704亦指派另一 ID,此處稱為一虛擬ID, 較佳者其對應於接收之來自客戶終端裝置705的機器ID。請 注意:該虛擬ID可從複數個預存ID選定,該虛擬ID可透過 對該機器ID、該分配器ID與/或某種其他運算元所執行之數 值運算或者可用以產生該虛擬ID之任何其他已知或其後開 發的技術加以導出。 分配伺服器703對個人化資料庫707搜尋與接收之來自客 戶終端裝置705之機器ID匹配的一現存機器ID(亦即:儲存 於其第二儲存裝置(ROM)中之機器ID)。參照圖36,較佳者 個人化資料庫707可被操作以儲存各別機器ID,每一 ID對應 105208.doc -55- 1293157 於一各別之客戶終端裝置705。複數個機器ID預存於個人化 資料庫707中,例如:圖36之左行中。較佳者每一這類機器 ID對應於一給定之客戶終端裝置705,而且這類機器ID本質 上為各別客戶終端裝置705唯一。較佳者分配伺服器703亦 包括一資料處理器,其可被操作以對個人化資料庫707搜尋 與透過網路706接收之來自客戶終端裝置705之機器ID匹配 的註冊資訊(例如:該機器ID)。任何已知或其後開發之資 料處理硬體均可作為此用途。 p 再次參照圖35,於步驟S23,結合該虛擬ID與儲存於個人 化資料庫707中之機器ID,換言之,該虛擬ID關聯於將接收 之機器ID傳輸至分配伺服器703的特殊客戶終端裝置705。 較佳者此關聯係藉由一種使該虛擬ID對應於儲存之機器ID 的方式將其儲存於個人化資料庫707内而達成。 如以上所註,透過網路706從客戶終端裝置705傳輸至分 配伺服器703之註冊資料(圖35之步驟S22)可包括:所傳輸 之對應於用以獲得該原始加密電腦程式或該組原始加密參 響數之分配伺服器703的分配器ID。替代上,亦可將包含於該 註冊資料内之分配器ID儲存在關聯於該機器ID的個人化資 料庫707中。 參照圖35,較佳者分配伺服器703可被操作以產生一已加 密解密金鑰和一已加密虛擬ID,其中該解密金鑰可被操作 以用來將客戶終端裝置705上之原始加密電腦程式或該組 原始加密參數解密。請注意:分配伺服器703可存取能夠用 來將加密伺服器702(圖27-28)所產生之各別原始加密電腦 105208.doc -56- 1293157 2式解密的任意數目之解密錢。該等解密 後伺服器702與/或藉由任 猎由力 服. 他週田實體而提供給分配伺 ^ 者,該等解密金鑰可藉由網路706、藉由另一 、·罔路而傳輸至分配伺服器7〇3, 提供等。 飞者了猎由儲存媒體而人工 ^驟S24,較佳者分配伺服器7()3使用關聯於 之虛擬聰該解密錢加密。再者,較佳者分配伺 力=使用客戶終端裝置705之關聯的機器⑴將該虛擬1〇 加铪,較佳者從個人化資料庫7〇7獲得。 ^圭者分配祠服器703之網路介面進—步可被操作以促 透過網路706將已加密解密金餘和已加密虛擬出傳輸至 ^ = 1置7G5(步驟S25)。於步驟咖,較佳者客戶終端 裝置705透過網路706接收已加密解密金餘和已加密虛擬 而且將其健存於第一儲存裝置(例如:硬碟機7〇8、纪 i卡709等於動作S27 ’較佳者分配飼服器加記錄:一 特殊之解密金鑰傳輸至一客戶終端裝置7〇5(作為歷史資 料)。較佳者料例如透過網路將此資訊提供給行政飼 服器704。較佳者,分配伺服器7〇3無法存取該歷史資料中 所包含之資料。此資料可作為記帳用途,義務追蹤等。 已加密解密金鑰僅提供給一授權客戶終端裝置7〇5,例 如:已提供-有效機器10而且已註冊關聯於用來將該解密 金鑰加密的-虛擬ID之機器ID的一客戶終端裝置7〇5。再 者,像是經由網路侵權或未授權複製等已加密解密金餘之 任何截取將無法提供將該原始加密電腦程式或該組原:加 105208.doc -57- 1293157 密參數解密的必I資訊(亦即:一可使用之解密金錄)。的 確,這類解密金鑰係以-本質上唯一之虛擬m予以解密。 類似地’已加密虛擬ID僅於註冊處理已完成而且客戶終端 裝置705已被視為授權後才提供給客戶終端裝置7〇5。當以 • —加密方式(亦即:使用客戶終端裝置705之機請加密田)將 • 該虛擬ID從分配健器703傳輸至客戶終端裝置7〇5時,已 加密虛擬ID之任何未授權取得將不給予將已加密解密金錄 解密的必要資訊。 參 以上參照圖19和20說明被f頦L7庙—分& μ 零 乃散貰現以便在客戶終端裝置705 内載入、安裝該原始加密電腦程式或該組原始加密參數之 處理。 圖21和22討論客戶終端裝置7〇5藉以執行該電 腦程式或者客戶終端裝置705藉以使用該組參數控制處理 之處理。 回頭參照圖1〇,於動作402用以達成處理安排u8其處理 特徵之變更所採取的特殊步驟太繁多,以致無法非常詳細 地說明每一情形。因此,現在將討論-些圖解例示,岸了 解.在沒有偏離本發明之精神和範圍下,可利用其他途徑 和技術達成這類變更。根據本發明的—方面,較佳 至少之處理特徵,使一或更多咖可以一希 望的方式執行軟體程式,鈇而 之處理特徵,使二、:Γ 多其他SPU2°8 狄輿 使/、車又同的處理特徵可供執行其他處理任 務。舉例之,可調整像是一或 殊參數,而不調整一或更… 08之時脈頻率的特 次更夕其他SPU 208之時脈頻率。 105208.doc -58- 1293157 關於這方面,現在參照圖37,其係一處理器元件200A的 一方塊圖,該處理器元件可被操作以變更(例如:某些SPU 之)某些時脈頻率以變更其處理能力,而不變更其他SPU 208的一或更多其他時脈頻率。如圖37中所圖解,SPU 208A-D個別包括像是利用已為吾人所熟知之鎖相迴路技術 的一各別之時脈電路。尤其,SPU 208 A包括標示PLL1的一 鎖相迴路電路,而SPU 208B-D包括分別標示PLL2、PLL3 和PLL4的各別之鎖相迴路電路。較佳者每一鎖相迴路電路 可被操作以鎖定在一相對較寬之頻率範圍,因而可獲得明 顯不同之時脈頻率運轉關聯的SPU 208。例如,較佳者每一 鎖相迴路電路可被操作以鎖定在大約1 MHz至大約4 GHz 的一時脈頻率。 根據本發明之此具體實施例,處理器元件200A包括可為 一軟體控制、一硬體控制或其一組合的一系統控制280。任 一情況下,較佳者系統控制280可被操作以接收一參數,其 表示例如來自變更表550的一希望之時脈頻率,而且將其轉 換成給關聯於SPU 208A的一或更多鎖相迴路電路的一命令 信號。較佳者,系統控制280輸出信令,其由一給定之SPU 208加以辨識,因而可變更其關聯的鎖相迴路電路,而不變 更一或更多其他SPU 208的鎖相迴路電路。請注意,為了達 成此機能,每一 SPU 208將要求其本身之時脈網目,例如其 本身之時脈頻率分配網路,像是一 Η樹分配網路等。又進一 步,較佳者PU 204包括能夠根據系統控制280發出的一控制 信號加以變更的一鎖相迴路電路(標示PLL6)。同時較佳者 105208.doc -59- 1293157 匯流排212包括能夠加以變更以響應系統控制28〇發出的一 控制信號的一關聯之鎖相迴路電路(標示pLL5)。優勢上, 處理器元件200A之任何或所有鎖相迴路電路均可根據來自 系統控制280之控制信號而變更,該控制信號可以如以上所 討論之變更表550中的一參數予以影響。 圖38出示用以達成本質上與圖37中所圖解相同之機能的 一替代組態。在本發明之此具體實施例中,處理器元件2〇〇b 包括像是CLK1、CLK2、CLK3、...CLKN等共同通過SPU 208、PU 204和匯流排212的複數個時脈電路284。時脈電路 284之各別輸出例如輸入個別的spu 2〇8、pu 2〇4和匯流排 212,其中此等元件個別包括一各別之多工器286或其他相 似功能的電路。多工器286可被操作以接收時脈電路284發 出之每一潛在相異的時脈信號並且輸出該等時脈信號之 一,以響應一控制暫存器282發出的一控制信號。該控制暫 存益之内容可直接接收來自變更表55〇的一參數或已調處 其一數值的一結果。在此組態中,再一次,spu 2〇8、204 和匯流排212個別要求一分離之時脈網目,以便在對照一或 更多其他元件的一元件中達成相異時脈頻率。 參照圖39,各別之時脈電路284可利用一鎖相迴路電路信 唬及像是用以產生一 1/3頻率時脈信號iMASK丨、用以產 生一 1/2頻率時脈信號的一 MASK 2信號等各種遮罩信號加 以達成。根據本發明之此具體實施例,一控制電路(未出示) 可產生各別MASK信號。暫存器282和多工器286之組合可用 來接收固定的一組遮罩所產生的各別時脈信號,其中時脈 105208.doc -60- 1293157 信號之一將根據暫存器282而選定。 如以上所討論,處理器元件2〇〇(圖2)之匯流排212的利用 為根據本發明可加以調處之處理安排11 8其處理能力的例 示之一。關於這方面,現在參照圖40,其係特別關於PU 204 而圖解將如何實作一處理益兀件以准命匯流排利用之 調整的一方塊圖。實務上,處理器元件2〇〇c用以達成有效 處理之能力要求PU 204和SPU 208A-D偶爾取得匯流排212 之存取。如果匯流排212之存取獲得改良或受到妨礙,則處 理器元件200C之處理能力將因而增加或減少。根據本發 明,系統控制280可被操作以藉由一限制器電路288而限制 或增加PU 204對匯流排212之存取。尤其,與限制器288組 合之系統控制280可正規化准許PU 204存取匯流排212的特 定週期與/或處理週期其一百分率。例如,系統控制2 8 0可 設置准許PU於一有限處理週期數中存取匯流排212的一排 程280A。因此,若沒有系統控制280和限制器28 8,PU 204 可能已試圖存取匯流排212更少於或更多於所准許之次 Φ 數。此可提升或降低PU 204與DRAM 214間之處理速度,而 且亦可提升或降低PU 204與一或更多SPU 208間所實現的 處理。匯流排212之存取的此種限制可以一百分率術語予以 特徵化,像是PU 204其一 30%之匯流排212的利用,或者某 種其他百分率。 請注意:限制器288亦可用來以一本質上類似以上關於 PU 204所討論之方式改良或限制一或更多SPU 208對匯流 排212的存取。此可提供與調整處理器200C其處理能力有關 105208.doc • 61 - 1293157 的進一步之自由度。 如以上所討論,改變處理安排丨丨8的指令延時及指令通量 之一或兩者可影響處理安排U8的處理能力。關於這方面, 參照圖41和42,其係處理安排118將如何調處指令延時與/ 或指令通量之圖解。尤其,可在一指令管線的一或更多級 間插入或移除一時序延遲、一無作業等。例如,一指令管 線可包括一指令提取順序、一指令解碼順序、一指令執行 順序和一寫回順序。如圖4丨中所圖解,可藉由在指令執行 順序與寫回順序間插入或刪除一無作業、一浮泡、一時序 延遲等而在其間達成一時序調整。如圖42中所圖解,可於 寫回順序已完成後插入或移除一時序調整,其將影響指令 之延時。根據本發明,一或更多spu 208或PU 204可利用此 等技術,以便調整處理器元件2〇〇之處理能力。 再者,處理安排118之處理能力可透過記憶體延時與/或 其δ己憶體通量的調處加以調整。尤其,可調整一 208 在其區域記憶體250内或在共享DRAM 214内之記憶體延時 與/或記憶體通量,以便達成處理器元件2〇〇之希望的處理 能力。類似地,可調整PU 204在共享DRAM 214内之記憶體 延時與/或圮憶體通量。調整該記憶體延時與/或該記憶體通 里之詳細狀況可以一本質上類似於以上關於圖丨5和丨6所討 論的樣貌加以達成,應了解:一記憶體存取之基本順序包 括:得到一位址、將該位址解碼,以及根據該指定位址而 從該記憶體提取資料(或寫入資料)。 現在參照圖43,其係用以圖解像是軟體程式等來自租用 105208.doc •62- 1293157 程式内容的一分配器之程式内容其保全分配的一例示其一 處理流程圖。此一分配說明於以上參照之美國申請案號 1〇/316,3〇9和 1G/316,675。 租用程式内容之分配器可為行政伺服器6〇1、7〇4、第二 團體伺服器602、701、分配伺服器703,或某種其他伺服器 (未出示)。當一使用者希望租用程式内容時,較佳者先要求 該使用者成為該租用系統的一會員。關於這方面,於步驟 S70,該使用者例如藉由啟動客戶終端裝置6〇4、7〇5之機構 而才曰示其希望成為該系統的一會員。舉例之,客戶終端褒 置604、705可為該使用者將用以運轉該租用程式内容的同 一裝置,或者可為一分離之裝置。再者,客戶終端裝置⑽心 705可包含及執行用以促成該會員資格處理的一適當電腦 程式。 於步驟S72,較佳者客戶終端裝置6〇4、7〇5透過網路6〇5、 706與行政飼服請i、7G4設置—通信鏈結。於步驟㈣, 客戶終端裝置604、7〇5傳送用以指示該使用者希望成為該 租用系統其一會員的一需求。像是當該使用者將僅使用目 前之客戶終端裝置租用及執行内容時,客戶終端裝置綱、 705可透過網路6G5、將該機請傳輸至行政伺服器 H或者像是#該❹者亦將經由其他裝置租用程 式内容時,可傳輸該使用者之特定的其他m資訊。響應之, 行政伺服器601、704產生一雷工▲«次 電子會貝資袼認證,當該使用 者僅使用相同之客戶終端裝置租用及執行程式内容時,該 電子會員資格認證本質上可為客戶終端裝置6〇4、7〇5唯 105208.doc -63- 1293157 一。行政伺服器601、704亦可使用上述資料庫結合技術而 結合客戶終端裝置604、705之機器ID或使用者資訊與該電 子會員資格認證。於步驟S80,較佳者行政伺服器6(Π、704 透過網路605、706將該電子會員資格認證傳輸至客戶終端 裝置604、705。如以下將說明,該電子會員資格認證用於 該租用處理中。
一旦该使用者已成為該租用系統的一會員,則較佳者准 許忒使用者租用像是應用程式和系統程式之程式内容。較 佳者,該程式内容係一視訊遊戲電腦程式。參照圖44,較 佳者客戶終端裝置604、705上所運轉之電腦軟體准許該使 用者指示其希望租用—電腦程式。此處,供該使用者表示 希望租用程式内容之客戶終端裝置可為用以設置會員資格 的同-裝置、可為另—裝置,或者可能均不是。譬如,該 使用者可租用軟體程式以便在—遊戲控制台上使用,但將 藉二象是從該使用者之行動電話、PD錢其他裝置等而從 另裝置傳輸該會員資格認證或其他資料以啟動使用者鑑 別^亥會員資格認證或其他資料可藉由人工輸入資料、掃 或智慧卡或者讀取已儲存於該裝置中之資料而輸 =這方面(步驟82),響應來自該使用者的一指示, 佳者客戶終端裝置6〇4、7〇5盥 < 驟S84),藓廿^•趑# 刀配益玟置一通信鏈結(步 器。於步驟租用而求傳輸至該分配 4S86,較佳者像是當 一會員之nW04,#、 直㈣使用者用來成為 、,以为配器藉由分析客戶終端裝置 105208.doc -64- 1293157 604、705之機器ID而鑑別客戶終端裝置604、705 ;(另外) 與/或藉由分析該電子會員資格認證。其藉由要求客戶終端 裝置604、705提供該機器ID與/或該電子會員資格認證給該 分配器並且該分配器存取可驗證此資訊的一資料庫而完 成。 當該使用者已鑑別時,較佳者該分配器透過網路605、706 提供租用之可用標題的一清單或一選單給客戶終端裝置 604、705(步驟S88)。較佳者客戶終端裝置604、705上所運 轉之電腦軟體能夠對該使用者顯示該標題清單或選單,使 該使用者可選擇一標題以及指定一租用時間(步驟S90)。較 佳者該使用者之選擇及指定之祖用時間係透過網路605、 706傳輸至該分配器。 於步驟S92,較佳者該分配器要求該使用者提供匯款以補 償指定時間之電腦程式的租用成本。此可藉由使用客戶終 端裝置604、705或其他裝置利用例如傳輸一信用卡號碼、 一活期存款帳號、運用發票等任何已知技術加以完成。一 旦匯款已完成,較佳者該分配器產生用以指示指定之標題 和租用時間之匯款已完成的一電子帳款券(步驟S94)。於步 驟S96,較佳者該分配器透過網路605、706將該電子帳款券 傳輸至客戶終端裝置604、705或至另一裝置。 較佳者該電子帳款券提供給該使用者(或接收該電子帳 款券之客戶終端裝置604、705)某一等級的租用權,以兌換 提供給該分配器之匯款。例如,該租用權可限於該電腦程 式的一特定標題、租用時間、匯款數值等。此外,該電子 105208.doc -65- 1293157 帳=可包括像是能夠將該電腦程式解密的一解密金錄之 額卜貝訊並不要求該電子帳款券包括該解密金餘,而且 給定之内容物僅為舉例。同時考慮:該電子帳款券可包括 力密$式之解密金输’其例如藉由使用該機器①或 _用(像是-虛擬ID等)可能該電子會格認證其一部 分的其他資訊予以加密。任—情況下,在該處理之此時, 較佳者該使用者已接收某一等級之租用權,但尚未接收該 電腦程式或該電腦程式的一加密版本。 鲁在該處理之此階段,客戶終端裝置咖、7Q5或其他裝置 擁有一電子帳款券,其指示於一給定時期的一標題之匯款 已完成,而且亦將保有該使用者之電子會格認證。參 照圖45,較佳者客戶終端裝置_、7()5或其他裝置透過網 路605、7〇6與行政伺服請卜m設置—通信鏈結(步驟 S98)。於步驟S1〇〇,較佳者行政伺服器6〇1、7〇4藉由該機 器1D與/或電子會員資格認證而鑑別客戶終端裝置604、705 或其他裝置。請注意:此可藉由存取像是個人化資料庫 606、707的一適當資料庫而達成。於步驟si〇2,較佳者客 戶終端裝置604、705或其他裝置透過網路6〇5、7〇6將該電 子帳款券傳輸至行政伺服器6〇1、7〇4。響應之,較佳者行 政伺服器601、704產生一電子租用券(步驟1〇4),而且透過 ’’周路605 706將s亥電子租用券傳輸至客戶終端裝置 或其他裝置(步驟S106)。 較佳者該電子租用券提供給該使用者(或客戶終端裝置 604、705)可能與該電子帳款券提供之租用權相同或更大的 105208.doc -66- 1293157 用㈣級。例如’該電子租用券可指定電腦程式標題、 租用時間、匯款數值, °匕括像是能夠將已加密電 =式解密的一解密金錄之額外資訊(假設該解 =於該電子帳款券)。並不要求該電子租用券包括該解密 =,而且給定之内容物僅為舉例。同時考慮:該電子租 二可包括具有一加密形式之解密金輪,其例如藉由使用 利用(像是一虛擬ID”可能該電子會員資格認 ^一部分的其他資訊予以加密。任—情況下,在該處理 ;此時,較佳者該使用者已接收某-租用權等級,但尚未 接收該電腦程式或該電腦程式的一加密版本。 參照圖46,較佳者客戶終端裝置6〇4、7〇5透過網路咖、 7〇6與該分配器設置一诵 k仏鏈結(步驟S108)。響應之,該分 配器可例如藉由如以上所討論之機㈣與/或電 格認證之分析而鑑別客戶終端裝置6〇4、7〇5(步驟su〇)。直 2較佳者客戶終端裝置6〇4、7〇5或例如其他裝置透過網 5、鳩將該電子租用券(或至少其一部分)傳輸至該分配 盗4S112)。較佳者,其對該分配器指示··客戶级端裝置 6交〇4、705或其他裝置已完成所有前面之必要步驟,、因而'該 客戶終端裝置授權得以接收租用之電腦程式 =_。在該處理之此時,較佳者客戶終端裝置二 或/、他裝置擁有該機器ID、該電子帳款券、該電子租用 券、已加密解密金鑰和已加密電腦程式。 4使用者可載人、安裝及執行該電腦程式,及利用以上 關於本發明之前面之具體實施例所述的處理調整該客戶終 i05208.doc -67- 1293157 端裝置其處理能力。該租用系統因而促成透過網路6〇5、观 將租用程式内容保全分配給使用任何客戶終端裝置祕、 705的一使用者。 本發明亦適用於一使用者購買用以運轉一特殊軟體程式 之權利或者可在任何特殊裝置上獨立運轉之此一程式其一 特殊版本的-應用。譬如,該使用者可講買在像是該使用 者其本身之控制台、另-使用者所擁有的一控制台或者位 於具有許多這類控制台的一公用商街的一控制台等任何控 • ^台上運轉一特定遊戲程式或其他軟體程式之權利。工 該使用者亦可擁有儲存於像是一碟片或其他儲存裝置的 可運送軟體媒體之遊戲程式或其他軟體程式其一特定版 本的一複本,而且可將該程式從該儲存媒體複製至該使用 者之控制台、另一使用者之控制台或商街控制台。替代上, 該使用者可僅擁有用以運轉該遊戲程式或其他軟體程式其 一特殊版本之權利。任一情況下,該使用者均擁有一使用 者ID或者像是一電子認證(一虛擬ID等)之其他鑑別資訊。 當此一使用者希望在像是該使用者之控制台、另一使用 者之控制台或商街控制台的一裝置上執行該遊戲程式或其 他軟體程式而且該程式其一複本已儲存於該控制台時, 要求该使用者鑑別資訊,以便在該控制台上執行該程式, 與/或可要求該使用者鑑別資訊,以便准許該控制台獲得允 許在該控制台上適當執行該程式之必要軟體與/或資料模 組。替代上,當該遊戲程式或其他軟體程式並未儲存於該 使用者之控制台、另一使用者之控制台或商街控制台時, 105208.doc -68 - 1293157 可要求該鑑別資訊,以便准許該控制台下載該使用者已購 買權利之程式版本,與/或可要求該鑑別資訊,以便其後獲 知用以取得該控制台之適當軟體版本所要求的軟體與/或 資料模組。 ★該使用者鑑別可藉由以上參照圖43-46所述之方式實 現,亦即,藉由像是從該使用者之行動電話、PDA或其他 裝置等而從另一裝置傳輸鑑別資訊,或者可藉由人工輸入 資料、掃過一磁卡或智慧卡而將該會員資格認證或其他資 • 料輸入該控制台,抑或者當該控制台為該使用者之控制台 時’則璜取已儲存於該使用者之控制台的資料。 如以上參照圖11和27所述,該使用者鑑別資訊可傳輸至 一或更多行政伺服器60卜704、第三團體伺服器6〇2、7〇1、 分配伺服器703或某種其他伺服器(未出示)。替代上,該使 用者擁有權利之遊戲程式或其他軟體程式以及在控制台上 適當操作該遊戲程式或其他軟體程式所需之軟體與/或資 料模組可藉由以上參照圖5_36所述的方式經由一或更多伺 _ 服器予以下載。 以此方式,用以運轉一遊戲程式或其他軟體程式之權利 的所有人可使用最適合控制台之軟體版本在像是該所有人 之控制台、另一所有人之控制台或一公用(商街)控制台的任 何裝置上執行該程式。 雖然此處已參照特殊具體實施例而說明本發明,但應了 解:此等具體實施例僅作為本發明之原理和應用的圖解。 因而應了解:在沒有偏離如附加請求項所宏 η W疋我之本發明的 105208.doc -69- 精神和範圍下,謂圖解之具體實施例進行許多修正,而 且可想出其他安排。 工業可用性 b本發明可應用於有關支援軟體程式的―補^發生一些問 題之包含多重微處理器的處理單元。 【圖式簡單說明】 為了作為圖解,圖式中出示目前之較佳形式,然而應了 解·本發明不限於所示的精確安排及措施。 Θ 1係軟體私式设計及包括根據本發明的一或多重處理 安排之用以運轉之處理系統其演進的一圖形圖解; 圖2 A係根據本發明其一具體實施例的一處理器元件(pE) 其一示範結構的一圖形圖解; 圖2B係根據本發明其該等方面之pE的一多重處理系統 其一示範結構的一圖形圖解; 圖3係用以圖解根據本發明的一示範子處理單元(spu)其 結構的一圖形; 八 圖4係適合實作根據本發明之一或更多方面的一多重處 理器系統其一替代組態; 圖5係用以圖解根據本發明之一或更多方面之可至少部 刀由處ί里系統加以實j見以便變更其處理能力之處理步驟 的一流程圖; 圖6係根據本發明之一或更多方面的_總電腦網路之一 方塊圖; 圖7係用以圖解關於圖5之該等步驟之進一步處理步驟的 105208.doc 1293157 一流程圖; 圖8係根據本發明之一或更多方面之處理元件所使 一變更表; ' 圖9係根據本發明之—或更多方面之可用於網路通信而 且可被操作以變更其處理能力的一處理系統之一方塊圖; 圖10係用以圖解關於圖7之該等步驟之進一步處理步驟 的一流程圖; 圖11係將軟體程式或參數組分配給一或更多使用者的一 系統之一方塊圖; 圖12係用以圖解由圖i i之系統的某些部分所實現之某些 處理步驟的一概念方塊圖和流程圖; 圖13係用以圖解由圖11之系、統的某些部分所實現之進_ 步步驟的-進-步之概念方塊圖和流程圖; 圖14係用以出示如圖〗^ # S 13所圖解加以κ現之某些處理步驟 的一流程圖; 圖1 5係用以圖解你丨^ 士 口鮮例如由圖11之行政伺服器6〇1所實現之 某些處理步驟的一進一步流程圖; 圖16係用以圖解某些資料庫内容的-方塊圖; 圖17係用以圖解由圖11之系統的-部分所實現之某些處 理步驟的一進一步之概念方塊圖和流程圖; 圖18係用以圖解根據圖17而實現之進—步處理步驟的一 流程圖; 圖1 9係用以圖解你| ‘ 1 m , , > & / 鮮例如由圖11之客戶終端裝置6〇4所實現 的'一或更多進一步盧 少爽理步驟之一進一步之概念方塊圖和流 105208.doc -71 - 1293157 程圖; 圖20係用以圖解根據圖19 流程圖; 實現之進-步處理步驟的— 圖21係用以圖解進一步 ^ . 里v驟的一概念方塊圖和流程 圖, 圖2 2係用以圖解有關圖) 解有關圖21之處理步驟之進—步細節的一 圖23係用以圖解可實現之 和流程圖; 代處理步驟的-概念方塊圖 圖㈣用以圖解有關圖23之處理步驟之進—步 _ 流程圖; 步處理步驟 圖25係用以圖解根據圖23之替代概念的進一 之一概念方塊圖和流程圖; 圖26係用以圖解有關圖25之處理步驟之進—步細節的— 流程圖; 圖27係將軟體程式或參數組分配給〆或更多使用者的一 進一步系統其一方塊圖; 圖28係用以圖解由圖27之系統的某些部分所實現之某些 處理步驟的一概念方塊圖和流程圖,· 圖29係用以圖解由圖27之系統的某些部分所實現之進一 步步驟的一進一步之概念方塊圖和流程圖; 圖3 0係用以出示如圖29所圖解而實現之某些處理步驟的 一流程圖; 圖3 1係用以圖解例如由圖27之行政伺服器和客戶終端所 105208.doc -72- 1293157 實現之某些處理步驟的—概念方_和流_; 圖32係用以圖解由圖31之裝置所 的-流程圖; ^之進-步處理步驟 圖33係用以圖解某些資料庫内容 — 、~方塊圖; 圖34係用以圖解由圖27之系統 牛驟的、隹- 邻刀所實現之某些處 理步驟的一進一步之概念方塊圖和流程圖; 圖35係用以圖解由圖34之裝置 的-流程圖; |之進—步處理步驟 圖36係用以圖解某些資料庫内容的—方塊圖· 圖37係根據本發明之一或更多 " Α文夕方面之可被操作以 些時脈頻率以便變更其處理能力 呆 方塊圖; 4理“件系統之_ 圖38係根據本發明之—或更多方面之可被操作以變 些時脈頻率以便變更其處理能力的一替代處理系統之一: 塊圖; 圖39係圖12之某些時脈電路元件的—替代組態之一方塊 圖; 圖40係根據本發明之—或更多方面之可被操作以變更盆 處理能力之复#古;人人 . 〆、 • - 方面的一進一步之替代處理系統之一方塊
圖; A ^解根據本發明之—或更多方面之指 興/或通1的可钢敕 Τ ’整特性之一流程圖; 圖42係用以闾&、 與/或通量的可=發明之一或更多方面之指令延時 w周整特性之一替代流程圖; 105208.doc -73- 1293157 圖43係用以圖解一種用於來自租用程式内容的一分配為 之程式内容的保全分配之處理之一例示之步驟的一流程 圖, 圖44係用以圖解圖43之處理之進一步步驟的一流程圖’ 圖45係用以圖解圖44之處理之進一步步驟的一流程圖’ 以及 圖46係用以圖解圖45之處理之進一步步驟的一流程圖。 【主要元件符號說明】
102, 106, 112, 118 硬體系統 104, 110, 116 軟體程式 120 顯示器 122 光學儲存媒體 124 網際網路 200, 200A,200B,200C, 250 處理器元件 202 輸入/輸出介面 204 處理單元 206, 256 直接記憶體存取控制器 208, 208A, 208B, 208C, 子處理單元 208D 210, 304 吕己憶體介面 212, 289, 308, 310 匯流排 214, 306 動態隨機存取記憶體 216 高頻寬記憶體連接 105208.doc 74· 252 1293157
254 258 260 262 264 270 272, 282 274 276 278 280
280A 281, 283, 285 284 286 288 300
302A,302B,302C 380 382 384 386 500 共享匯流排 記憶體匯流排 記憶體 輸入/輸出匯流排 輸入/輸出控制器 輸入/輸出裝置 區域記憶體 暫存器 浮點單元 整數單元 匯流排介面 系統控制 排程 内部匯流排 時脈電路 多工器 限制器 多重處理器系統 處理器 處理系統 行政器 資料庫伺服器 資料庫 電腦系統 105208.doc -75- 1293157
502 軟體細胞 504, 605, 706 網路 506 客戶電腦 508 伺服器電腦 510 個人數位助理 512 數位電視 550 變更表 552 垂直列 554 水平列 556 維度 601, 704 行政伺服器 602, 701 第三團體伺服器 603, 702 加密伺服器 604, 705 客戶終端裝置 606, 707, 707A 個人化資料庫 607, 708 硬碟機 608, 709 記憶卡 609? 609A 儲存媒體 610, 710 系統 703 分配伺服器 105208.doc -76-

Claims (1)

  1. I293^Q^?32548號專利申請案 中文申請專利範圍替換本㊉6年6月) 十、申請專利範圍·· 年 月日樹‘替換頁_羞顯里麵|出A明 種用以在一具有調整處理能力之多處理器系統中執行 一軟體程式的方法,該方法包含·· 獲得用以表示該軟體程式的一版本之識別資訊; 根據該軟體程式之版本而決定是否應調整用以執行該 軟,私式的至少一處理器之處理能力;以及 田”亥决定為肯定時調整該至少一處理器之處理能力。 2·如巧求項1之方法,其中該識別資訊儲存於包括一光學碟 片媒體、一磁性媒體及一電子媒體之至少一者的一儲存 媒體’而且該獲得步驟包括從該儲存媒體擷取該識別資 :求項1之方法,其中該軟體程式包括該識別資訊,而 且忒獲侍步驟包括從該軟體程式内獲得該識別資訊。 4·如請求項1之方法,進一步包含: 存取用以結合複數個軟體程式之各別識別資訊與供指 示對該至少一 # w上上 屣理裔之處理能力所進行之調整用的一或 更多參數的一表;以及 使用關聯於該給定之識別資訊的參數來調整該至d 處理器之處理能力。 ^ 5·如請求項4之方| , 八中該表係區域地館存於與該至4 處理器共用的一Am 儲存於i 、儲存於一遠端定位之行政實題 、該遠端定位之行政實體加以存取的一進一 置之至少一者。 y 進一步包含·· 6·如請求項5之方法 105208-960611.doc 1293157 年’ ¥日修μί)正替換頁| 使用一通信通道以建立於該至少一處理器與該行政實 - 體間的一鏈結;以及 、 透過该通信通道將該識別資訊從該至少一處理器傳輸 至該行政實體。 7·如睛求項6之方法,其中該行政實體存取該表以獲得供指 一、ί ^至乂 處理器之處理能力所進行之調整用的一或 更多關聯參數。 ^ 8·如睛求項7之方法,進一步包含: 透過該通信通道在該至少一處理器接收來自該行政實 體之參數;以及 使用關聯於該給定之識別資訊的參數來調整該至少一 處理器之處理能力。 9·如請求項4之方法,其中該表進一步結合複數個軟體程式 之每一各別識別資訊與供指示對複數個不同處理器之處 理能力所進行之調整用的複數組參數。 ® 10.如請求項9之方法,進一步包含: 獲得該至少一處理器之處理能力的一處理識別符; 同時使用_識別資訊和該識別符存取該表以獲得供指 示對忒至處理器之處理能力所進行之調整用的一組 參數;以及 使用該組參數調整該至少一處理器之處理能力。 如明求項10之方法,其中該表係區域地儲存於與該至少 一處理器共用的一位置、儲存於一遠端定位之行政實體 及儲存於由該遠端定位之行政實體加以存取的一進一步 105208-960611 .doc -2 - 1293157 年Ά •日修/正替換頁 位置之至少一者。 ^ ----- 12. 如請求項11之方H步包含: 使用-通信通道以建立於該至少一處理器與該行政實 體間的一鏈結;以及 透過該通信通道將該識別資訊和該處 理識別符從該至 少一處理器傳輸至該行政實體。 13. 如請求項12之方法立击 * 其中該行政實體使用該識別資訊和
    該處理識別符存取該表以獲得供指示對該至少—處理器 之處理能力所進行之調整用的該組關聯參數。 14·如請求項13之方法,進一步包含: 透過該通彳§通道在該至少一處理器接收來自該行政實 體之該組參數;以及 使用關聯於該給定之識別資訊和處理識別符的參數以 調整該至少一處理器之處理能力。 15.如請求項14之方法,進一步包含:
    透過該通信通道接收來自該行政實體的一已加密解密 金鑰,以響應該識別資訊; 將該已加密解密金鑰解密;以及 使用該解密金鑰解密該關聯參數。 16·如請求項14之方法,進一步包含 透過該通信通道接收來自該行政實體之註冊資料,以 響應該識別資訊; 透過該通信通道將該註冊資料傳輸至一分配器; 透過該網路在該處理裝置接收來自該分配器的一已加 105208-960611.doc 1293157 翁解密金鑰和一已加密虛擬ID,以響應該註冊資料; 使用該虛擬ID解密該已加密解密金鑰;以及 使用該解密金鑰解密該關聯參數。 17·如請求項14之方法,進一步包含: 接收來自一行政實體的一非啟動解密金鑰;
    透過該通信通道將一啟動需求傳輸至該行政實體,而 且透過該通信通道接收來自該行政實體之啟動授與資 訊’以響應該啟動需求; 將該非啟動解密金鑰轉換成一啟動解密金鑰,以響應 該啟動授與資訊;以及 曰〜 使用該啟動解密金鑰以解密該關聯參數。 18·如明求項1之方法,其中該至少一處理器包括:⑴可被操 作以執f處理器任務之複數個子處理單元,⑼可被操作 而在4等子處理單元上執行至少某些管理處理任務的一 ^理單元以及(lu)操作耦合該主處理單元與該等子處 理單元的一資料匯流排。 19.如叫求項18之方法,其中當該處理單元之處理能力超過 用以執订4軟體程式所需之處理能力而達到獲得較希望 之結果的一程声Η主 〇,, 一 又、,則向下調整該處理單元之處理能 力’而且當該處理單元之處理能力小於用以執行該軟體 私式所而之處理能力而達㈣得較希望之結果的一程度 時,則向上調整該處理單元之處理能力。 20·如請求項18之方法,進一步包含. 調整至少—子處理單元之處理能力,而且使用該至少 105208-960611.doc 1293157 .”、·ϊ 严八; '?*處理單分批t 一一w 兀執仃該軟體程式;以及 不調整至少一 f从π 士 一 4从 /、他子處理單元之處理能力,使誃至小 一/、他子處理單元具有 "夕 較低的處理特徵。 #執仃其他處理任務之較高或 21 22. 23. 24. 25. 26. H:18之方法,其中該調整步驟包括將該主處理單 脈=率調整成與W的—頻率。 者的一時 用长項1之方法,其中該調整步驟包括至少改 一處理器之時脈頻率。 夕 长項1之方法,其中該調整步驟包括至少改變該至少 处理器之一資料匯流排的一匯流排使用,該資料匯流 =之匯流排利用係藉由改變該至少-處理器對該資料匯 抓排之存取而改變,以便調整該至少一處理器之處理能 力0 如清求項1之方法,其中該調整步驟包括藉由向上或向下 调整一資料匯流排的一位元數目而至少改變該至少一處 理器之該資料匯流排的一頻寬,以便對應調整該至少一 處理器之處理能力。 如請求項24之方法,其中該資料匯流排之位元數目可在 128位元、64位元、32位元、16位元和8位元間調整。 如請求項1之方法,其中該至少一處理器之至少一區域記 憶體可當作一或更多資料快取加以操作,而且該調整步 驟包括改變該資料快取的一快取大小,以便調整該至少 一處理器之處理能力。 105208-960611.doc 1293157 27·如請求項1之方法,其中該調整步驟包括將該至少一處理 器之快取大小調整成與另一處理器不同的一大小。
    28·如印求項1之方法,其中該至少一處理器之至少一區域記 憶體可當作—或更多資料快取加以操作,而且該調整步 驟包括改變忒資料快取的一快取組織,以便調整該至少 一處理器之處理能力。 29·如明求項28之方法,其中該調整步驟包括調整該資料快 取記憶體的-通路大小及一區塊大小之至少一者。 3〇·如μ求項1之方法,其中該調整步驟包括將該至少一處理 器之快取組織調整成與另-處理器不同的一組織。 3 1 ·如喷求項1之方法,其中一主記憶體可由該至少一處理器 加以存取’而且可當作該至少一處理器的一資料快取加 以操作’而且該調整步驟包括改變該資料快取的一快取 32.
    大小’則更調整該至少一處理器之處理能力。 如μ求項1之方法’其中—主記憶體可由該至少-處理器 力Χ存取,而且可當作該至少一處理器的一資料快取加 以細作’而且該調整步驟包括改變該資料快取的一快取 33. 組織,以便調整該至 如請求項32之方法, 憶體的一通路大小及 少一處理器之處理能力。 其中該調整步驟包括調整該快取記 一區塊大小之至少一者。 3 4 ·如5青求項1之方、本 八 V在,其中該調整步驟包括藉由在一給定指 的私7提取順序、一指令解碼順序、一指令執行順 序之至少—者命 一 一寫回順序間要求或移除一時間延遲而 調整該至少一處理 处里器的一指令延時,以便對應調整該至 105208-960611.doc 1293157 Γ'"'"' — 萃月日修(¾^替換頁 ^'一處理器之處理能力。~— 35.如請求項34之方法,其中該時間延遲介於該寫回順序與 一次一指令提取順序之間。 .如叫求項1之方法,其中該調整步驟包括藉由在一給定指 7的指令提取順序、一指令解碼順序、一指令執行順 序之至少-者與—寫回順序間插人或刪除—或更多無作 業順序而調整該至少一處理器的一指令通量,以便對應 | 調整該至少一處理器之處理能力。 37·如印求項36之方法,纟中該無作業順序介於該執行順序 與該寫回順序之間。 月求項1之方法’其中一主記憶體可由該至少一處理器 、存取,而且該調整步驟包括藉由在一位址提取順 之 位址解碼順序至少其一與一資料讀取及寫入順序 1要求或移除一時間延遲而調整該至少一處理器的 思、體L時,以便對應調整該至少一處理器之處理能 39·如請求項ι之 、 方法’其中一主記憶體可由該至少一處理器 :以,取,而且該調整步驟包括藉由在一位址提取順 位址解碼順序之至少一者與一資料讀取及寫入順 ....... n Q B ’插入或刪除一或更多無作業順序而調整該 至少一處哭ΑΛ 器的一記憶體通量,以便對應調整該至少一 處理器之處理能力。 4 0 ·如請求項ι mi 方法,其中該軟體程式包括一遊戲程式。 41 ·如睛求項】之 ' ’其中該識別資訊包括在複數假處理裝 105208-960611.doc 1293157 置之任-處理裝置域行該軟㈣ 42.如請求^ 使用者權利 進 於調整該至少一處理器之 處理此力的步驟前使用該識別資訊獲得該軟體程式之版 本。 认如請求項42之方法,其中該軟體程式之版本係區域地儲 存於與4至少-處理器共用的_位置、儲存於—遠端定 位之仃政實體或者儲存於可由該遠端定位之行政實體加 以存取的一進一步位置至少其一。 44·如請求項43之方法,進一步包含·· 使用一通信通道以建立於該至少一處理器與該行政實 體間的一鏈結; 透過該通信通道將該識別資訊從該至少一處理器傳輸 至該行政實體,該行政實體使用該識別資訊獲得該軟體 程式之版本;以及 透過該通信通道在該至少一處理器接收來自該行政實 體之軟體程式的版本。 45·如請求項43之方法,進一步包含: 使用一通信通道以建立於一另外之裝置與該行政實體 間的一鏈結; 透過該通信通道將該識別資訊從該另外之裝置傳輸至 該行政實體’該行政實體使用該識別資訊獲得該軟體程 式之版本;以及 透過該通信通道在該至少一處理器接收來自該行政實 體之軟體程式的版本。 105208-960611.doc
    1293157 46. —種具有調整處理能力以執行一軟體程式的多處理器系 統,包含: 複數個子處理單元,其個別可被操作以執行處理任務; 可被操作而在該等子處理單元上執行至少某些管理處 理任務的一主處理單元;以及 操作耦合該主處理單元及該等子處理單元的一資料匯 流排,
    其中該主處理單元及該等子處理單元之至少一者可被 操作以:⑴獲得用以表示一軟體程式的一版本之識別資 訊;(ii)根據該軟體程式之版本而決定是否應調整該處理 單元或子處理單元之處理能力;以及(iii)當該決定為肯定 時調整該處理單元之處理能力。 47. —種具有調整處理能力以執行一軟體程式的多處理器系 統,包含: 複數個處理裝置,個別包括: 複數個子處理單元,其個別可被操作以執行處理器任務, T被操作而在該等子處理單元上執行至少某些管理處 理任務的一主處理單元,以及 操作耦合該主處理單元與該等子處理單元的一資料匯 流排, 一遠端定位之行政實體;以及 可被插作以提供複數個處理裝置之每一處理裝置與該 行政實體間一通信鏈結的一通信通道; 複數個處ί里1¾之主處理單元及該等子處理單元之至 105208-960611.doc ,年、、月日修(Μ正替換頁1 1293157 少一者可進一步被操作以:(i)獲得用以表示一軟體程式 的一版本之識別資訊,(ii)根據該軟體程式之版本而決定 是否應調整用以執行該軟體程式的處理單元或子處理單 元之處理能力’以及(出)當該決定為肯定時透過該通信通 道將該識別資訊和關聯於該處理裝置之至少一識別符傳 輸至該行政實體;
    該行政實體可被操作以:⑴使用該識別資訊和該至少 識別付獲得供指示對該等處理能力所進行之調整用的 -或更多參數,以及(ii)將該等一或更多參數傳輸至關聯 之處理裝置的主處理單元及子處理單元之至少一者; 當該決定為肯定時’關聯之處理裝置的主處理單元及 子處理單s之至少—者可進-步被操作以調整該處理單 兀之處理能力。 48. ^種記錄有用以在一具有調整處理能力之多處理器系統 中執行-軟體程式的指令的電腦可讀記錄媒體,該等指 獲得該軟體程式的一版本; 識別資訊; 應調整該至少一處 獲得用以表示該軟體程式之版本的 根據該軟體程式之版本而決定是否 理器之處理能力; 一處理器之處理能力; 當該決定為肯定時調整該至少 以及 之已調整處理 將該軟體程式之版本和該至少一處理器 能力儲存於該記錄媒體。 105208-96061I.doc -10- 1293157 年 …自修^正替換頁 49· 一種記錄一坌 ^ 軟體程式上體程式之電腦可讀記錄媒體,該第-整處理能力仃一種促成—第二軟體程式在—具有調 包含:《夕處理器系統中之執行的方法,該等指令 獲付用从表示該第二軟體程式的 根據該敕體程式之版本而決定是否二之整識二貝執二, 軟,式的至少—處理器之處理能力::用以執仃該 5〇 4 = Γ肯定時調整該至少一處理器之處理能力。 斤箱―具有調整處理能力之多處理器系統中執行 一軟體程式的裝置,該裝置包含: 獲得用以表示該軟體程式的一版本之識別資訊的構 件; 根據該軟體程式之版本而決定是否應調整用以執行該 軟體程式的至少一處理器之處理能力的構件;
    當該決定為肯定時用以調整該至少—處理器之處理能 力的構件。 105208-960611.doc 11· 1293157 第094132548號專利申請案 中文圖式替換頁(96年6月) 105208.doc 々>> /'Γ fl<-; 正 1/ 員修所 頻所成 Ί
    圖32 -24-
TW094132548A 2004-09-20 2005-09-20 Method, apparatus, system and computer readable recording medium recorded with relevant instructions for executing a software program in a multi-processor system with adjusting processing capabilities TWI293157B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US61140604P 2004-09-20 2004-09-20

Publications (2)

Publication Number Publication Date
TW200622898A TW200622898A (en) 2006-07-01
TWI293157B true TWI293157B (en) 2008-02-01

Family

ID=35448087

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094132548A TWI293157B (en) 2004-09-20 2005-09-20 Method, apparatus, system and computer readable recording medium recorded with relevant instructions for executing a software program in a multi-processor system with adjusting processing capabilities

Country Status (7)

Country Link
US (1) US20060107122A1 (zh)
EP (1) EP1800214A1 (zh)
JP (1) JP4334521B2 (zh)
KR (1) KR100933389B1 (zh)
CN (1) CN1914600A (zh)
TW (1) TWI293157B (zh)
WO (1) WO2006033423A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI468961B (zh) * 2008-10-31 2015-01-11 Cadence Design Systems Inc 用於實施多使用者快取的參數化單元之方法及系統

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7685593B2 (en) * 2005-05-12 2010-03-23 Microsoft Corporation Systems and methods for supporting multiple gaming console emulation environments
WO2007130805A2 (en) * 2006-05-03 2007-11-15 Sony Computer Entertainment Inc. Translation block invalidation prehints in emulation of a target system on a host system
US20080170699A1 (en) * 2007-01-12 2008-07-17 Motorola, Inc. Method and device for managing a wireless resource
EP2183728B1 (en) 2007-07-24 2015-03-25 Nxp B.V. Method, system and trusted service manager for securely transmitting an application to a mobile phone
US8958550B2 (en) * 2011-09-13 2015-02-17 Combined Conditional Access Development & Support. LLC (CCAD) Encryption operation with real data rounds, dummy data rounds, and delay periods
TWI448968B (zh) * 2012-07-30 2014-08-11 Faraday Tech Corp 系統級模擬與仿真之裝置及方法
KR101961318B1 (ko) 2012-09-07 2019-07-17 삼성전자주식회사 중앙처리장치에서의 점유시간을 최소화하는 방어코드 운영 방법 및 그에 따른 메모리 시스템
US10235219B2 (en) 2015-07-27 2019-03-19 Sony Interactive Entertainment America Llc Backward compatibility by algorithm matching, disabling features, or throttling performance
US10303488B2 (en) * 2016-03-30 2019-05-28 Sony Interactive Entertainment Inc. Real-time adjustment of application-specific operating parameters for backwards compatibility
DE102016105844A1 (de) * 2016-03-31 2017-10-05 Dspace Digital Signal Processing And Control Engineering Gmbh Verfahren zum Testen eines Steuerprogramms eines Steuergeräts in einer Simulationsumgebung auf einem Rechner
KR102671611B1 (ko) * 2019-11-29 2024-06-03 한국전자통신연구원 단방향 프로토콜 소프트웨어 퍼징을 위한 퍼징 데이터 전송 장치 및 방법
WO2022108497A1 (en) * 2020-11-20 2022-05-27 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for efficient input/output transfer in network devices

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4688169A (en) * 1985-05-30 1987-08-18 Joshi Bhagirath S Computer software security system
US5046090A (en) * 1990-03-29 1991-09-03 Gte Laboratories Incorporated Recorded medium for video control system
JP3227542B2 (ja) * 1991-06-17 2001-11-12 サン・マイクロシステムズ・インコーポレーテッド 特定のコンピュータ・ハードウェア・アーキテクチャのために作成されたソフトウェアのバージョンの互換性を確保する装置および方法
US5805551A (en) * 1994-04-18 1998-09-08 Matsushita Electric Industrial Co., Ltd. Method and apparatus for preventing illegal copy or illegal installation of information of optical recording medium
US5598470A (en) * 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block
JP3507594B2 (ja) * 1995-07-31 2004-03-15 株式会社東芝 コンピュータ
US5812883A (en) * 1995-11-22 1998-09-22 Mitsubishi Chemical America, Inc. System for reading and storing formatting information after formatting a first storage medium and using the stored formatting information to format a second storage medium
US5951639A (en) * 1996-02-14 1999-09-14 Powertv, Inc. Multicast downloading of software and data modules and their compatibility requirements
US6006190A (en) * 1997-04-28 1999-12-21 Tartaroukos Llc Computer implemented method and a computer system for enforcing software licenses
US20010010046A1 (en) * 1997-09-11 2001-07-26 Muyres Matthew R. Client content management and distribution system
US5982892A (en) * 1997-12-22 1999-11-09 Hicks; Christian Bielefeldt System and method for remote authorization for unlocking electronic data
US6189146B1 (en) * 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US7171662B1 (en) * 1998-03-18 2007-01-30 Microsoft Corporation System and method for software licensing
JP3239842B2 (ja) * 1998-05-08 2001-12-17 日本電気株式会社 ソフトウェアの不正利用防止システム
WO2000005716A1 (fr) * 1998-07-22 2000-02-03 Matsushita Electric Industrial Co., Ltd. Dispositif d'enregistrement de donnees numeriques et procede de protection des droits d'auteur et de reproduction facile de donnees numeriques chiffrees et support d'enregistrement lisible par un ordinateur, conçu pour l'enregistrement de programme
JP3763702B2 (ja) * 1999-05-27 2006-04-05 富士通株式会社 データ運用方法
US6971022B1 (en) * 1999-06-15 2005-11-29 Matsushita Electric Industrial Co., Ltd. Cryptographic apparatus for performing cryptography on a specified area of content data
US7100195B1 (en) * 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US6427132B1 (en) * 1999-08-31 2002-07-30 Accenture Llp System, method and article of manufacture for demonstrating E-commerce capabilities via a simulation on a network
JP3508680B2 (ja) * 2000-02-24 2004-03-22 日本電気株式会社 コンテンツ不正コピー防止方法およびシステム
TW550477B (en) * 2000-03-01 2003-09-01 Passgate Corp Method, system and computer readable medium for Web site account and e-commerce management from a central location
US6677951B2 (en) * 2000-03-03 2004-01-13 Sony Computer Entertainment, Inc. Entertainment apparatus having compatibility and computer system
US6668331B1 (en) * 2000-03-24 2003-12-23 Advantest Corp. Apparatus and method for successively generating an event to establish a total delay time that is greater than can be expressed by specified data bits in an event memory
US20020032584A1 (en) * 2000-04-10 2002-03-14 Jonathan Doctor Health care payment compliance management
US6779066B2 (en) * 2000-05-01 2004-08-17 Matsushita Electric Industrial Co., Ltd. Module having application-specific program stored therein
JP3964142B2 (ja) * 2000-08-15 2007-08-22 株式会社ソニー・コンピュータエンタテインメント エミュレート装置及び部品、情報処理装置、エミュレーション方法、記録媒体、プログラム
JP2002073421A (ja) * 2000-08-31 2002-03-12 Matsushita Electric Ind Co Ltd ライセンス発行装置、コンテンツ再生装置、ライセンス発行方法、およびコンテンツ再生方法
US6732106B2 (en) * 2000-12-08 2004-05-04 Matsushita Electric Industrial Co., Ltd. Digital data distribution system
US20020077988A1 (en) * 2000-12-19 2002-06-20 Sasaki Gary D. Distributing digital content
US6993664B2 (en) * 2001-03-27 2006-01-31 Microsoft Corporation Method and system for licensing a software product
US7483433B2 (en) * 2001-09-17 2009-01-27 Foundry Networks, Inc. System and method for router data distribution
EP1454449A4 (en) * 2001-12-13 2006-10-25 Sony Computer Entertainment Inc PROCESS AND DEVICES FOR SAFE DISTRIBUTION OF PROGRAM CONTENT
WO2003055132A1 (en) * 2001-12-21 2003-07-03 Sony Computer Entertainment Inc. Methods and apparatus for secure distribution of program content
EP1505797B1 (en) * 2003-08-04 2005-05-11 Alcatel A method, a communication network and a computer software product for distributing software packages or updates

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI468961B (zh) * 2008-10-31 2015-01-11 Cadence Design Systems Inc 用於實施多使用者快取的參數化單元之方法及系統

Also Published As

Publication number Publication date
US20060107122A1 (en) 2006-05-18
KR100933389B1 (ko) 2009-12-22
CN1914600A (zh) 2007-02-14
JP4334521B2 (ja) 2009-09-30
JP2006092542A (ja) 2006-04-06
KR20070007775A (ko) 2007-01-16
WO2006033423A1 (en) 2006-03-30
EP1800214A1 (en) 2007-06-27
TW200622898A (en) 2006-07-01

Similar Documents

Publication Publication Date Title
TWI293157B (en) Method, apparatus, system and computer readable recording medium recorded with relevant instructions for executing a software program in a multi-processor system with adjusting processing capabilities
TWI292880B (en) Method, apparatus, system and computer readable medium recorded with instructions for enabling a software program to have execution capability in a system with at least one processor
US11234033B2 (en) Decentralized content distribution
CN104995634B (zh) 信任单元之间的密钥刷新
KR101626276B1 (ko) 디지털 화폐와 연동되어 디지털 컨텐츠를 생성, 제공, 재생하기 위한 방법, 이를 이용한 단말 및 컴퓨터 판독 가능한 기록 매체
KR101537527B1 (ko) 도메인에 대한 개선된 액세스
AU2001253243B2 (en) Secure digital content licensing system and method
US11153070B2 (en) Access to data broadcast in encrypted form based on blockchain
US20060064383A1 (en) Media on demand via peering
US10621520B2 (en) Interoperable keychest
US20050005114A1 (en) Ticket-based secure time delivery in digital networks
US20070162399A1 (en) Method and apparatus for providing broadcast trigger messages
CN107660286A (zh) 用于选择性内容许可和安全回放的技术
EP1683292A2 (en) Enforcing authorized domains with domain membership vouchers
US8948398B2 (en) Universal file packager for use with an interoperable keychest
TW201334519A (zh) 用於資產租賃管理之系統及方法
US8452016B2 (en) Interoperable keychest for use by service providers
US20070110012A1 (en) Device and method for tracking usage of content distributed to media devices of a local area network
Rani et al. Blockchain-enabled cooperative computing strategy for resource sharing in fog networks
WO2006011327A1 (ja) 記憶媒体処理方法、記憶媒体処理装置及びプログラム
TW200410540A (en) Validity verification method for a local digital network key
US9305144B2 (en) Digital receipt for use with an interoperable keychest
JP2002169912A (ja) 暗号復号化装置、課金装置、およびコンテンツ配信システム
Zhang et al. Supporting flexible streaming media protection through privacy-aware secure processors
Sun et al. A Trust Distributed DRM System Using Smart Cards

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees