TWI284811B - Methods and apparatus for secure data processing and transmission - Google Patents
Methods and apparatus for secure data processing and transmission Download PDFInfo
- Publication number
- TWI284811B TWI284811B TW094139946A TW94139946A TWI284811B TW I284811 B TWI284811 B TW I284811B TW 094139946 A TW094139946 A TW 094139946A TW 94139946 A TW94139946 A TW 94139946A TW I284811 B TWI284811 B TW I284811B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- processing unit
- key
- entity
- encrypted
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Information Transfer Systems (AREA)
Description
1284811 九、發明說明: 【發明所屬之技術領域】 本發明係關於用於安全資料處理之方法及裝置,其在(例 如)寬頻環境下使用用於安全資料處理之多處理器架構。 【先前技術】 即時多媒體網路應用變得愈來愈重要。此等網路應用需 要極快處理速度,例如每秒數千個百萬位元之資料。傳統 網路架構,例如網際網路,以及目前嵌入(例如)java模型之 程式化模型使到達此類處理速度變得極為困難。 傳統電腦網路,例如用於辦公網路之區域網路(l〇cal area network; LAN)以及網際網路等全球網路,其電腦及計算器 件主要係設計用於獨立計算。資料及應用程式(”應用程式,,) 於電腦網路上之共享並非此等電腦及計算器件之主要設計 目的。此等電腦及計算器件通常也使用由不同製造商製造 的各種不同處理器來設計,例如Motorola、Intel、Texas Instruments、Sony及其他公司。此等處理器之各個具有其 自身特定的指令集及指令集架構(instructi〇n set architecture ; ISA),即其自身特定的組合語言指令集、用 於主要什异單元之結構以及用於執行此等指令之記憶體單 元。因此,要求程式設計師瞭解每一處理之指令集及ISA, 以寫入用於此等處理器之應用程式。現今電腦網路上電腦 及计异器件之此異質組合使資料及應用程式之處理與共享 複雜化。此外,常常需要相同應用程式之多個版本,以應 付此異質環境。 106475.doc
I2848H 與全球網路,尤其係網際網路連接的電腦及計算器件之 類型十分廣泛。除個人電腦(pers〇nal c〇nipUter ; pc)及伺服 器外,此等計算器件還包括蜂巢式電話、行動電腦、個人 數位助理(personal digital assistant ; PDA)、視訊轉換盒' 數位電視及許多其他器件。此多種電腦及計算器件中的資 料及應用程式共享產生了實質問題。 已使用許多技術來嘗試克服此等問題。該等技術包括複 雜介面及複雜程式化技術等等。此等解決方案常常需要實 施處理功率之實質增加。其也常常導致處理應用程式以及 在網路上發送資料所需時間的實質增加。 通常在網際網路上與對應應用程式分離地發送資料。此 方法不需要將應用程式與對應於應用程式之各組被發送資 料一起傳送。同時,此方法將所需頻寬減至最小,頻寬也 常常給使用者造成困擾。用於被發送資料之正確應用程式 或最新應用程式可能無法用於用戶端電腦上。此方法也需 要寫入各應用程式之複數個版本,以用於網路上的複數個 不同ISA及處理器使用之指令集。
Java模型嘗試解決此問題。此模型使用符合嚴格安全協 疋的j應用私式(小型應用程式(applet)")。從網路上的伺 服器電腦傳送用戶端電腦(”用戶端,,)需要運行的小型應用 私式。為避免必須將不同版本之相同微應用程式傳送至使 用不同ISA之用戶端,所有Java小型應用程式運行於用戶端 的Java虛擬機器上。Java虛擬機器為模擬具有以八及 Java#"集之電腦的軟體。然而’此軟體運行於用戶端π a 106475.doc 12848Η 及用戶&指令集上。針對每一不同IS Α及用戶端指令集提供 Java虛擬機器之一版本。因此不需要複數個不同版本之各 小型應用程式。每一用戶端僅下載用於其特定ISA及指令集 的當刖Java虛擬機器,以運行所有java小型應用程式。 儘管對必須為各不同ISA及指令集寫入不同版本之應用 程式的問題提供了解決方案,java處理模型需要用戶端電 腦上的額外軟體層。此額外軟體層明顯地劣化處理器處理 速度。此速度降低對於即時多媒體應用尤其明顯。下載的 Java應用程式也可能包含病毒、處理故障等。此等病毒及 故障可毀損用戶端資料庫並導致其他損壞。儘管用於 模型之安全協定嘗試藉由實施軟體,,沙箱(sandb〇x),,(即用 戶端記憶體空間,超過其則java微應用程式無法寫入資料) 克服此問題,此軟體驅動安全模型在其實施中常常不安 全,且需要更多處理。 因此,本技術中需要用於單元架構内的資料安全處理之 新方法及裝置。 【發明内容】 為克服上述問題中的至少一部分問題,亦已開發出一新 的電腦(及網路)架構。依據此新的電腦架構,電腦網路所有 部件,即網路之所有電腦及計算器件,皆係由一共同計算 模、、且(或單元)構成。此共同計算模組具有一致的結構且較佳 的係採用相同的ISA。該網路之部件可為(例如)用戶端、伺 服為、PC、行動電腦、遊戲機、PDA、視訊轉換盒、器具、 數位電視及使用電腦處理器之其他器件。該一致的模組結 106475.doc 1284811 構精由網路部件提供麻用4 a 识應用桎式及資料的有效、高速處理, 以及應用程式及資料於網路上的快速傳輸。此"結構"還簡 化了各種尺寸及處理功率的網路部件之構建以及此等部件 所處理之應用程式的準備。 新的電細架構亦採用能透過網路發送資料及應用程式以 及能在該網路的各部件間處理資料及應用程式之一新程式 化模型。此程式化模型採用—軟體單元,其透過該網路發 送以便由該網路部件中的任何部件來處理。每一軟體單元 皆具有相同的結構並可能兼含應用程式與資料。由於該模 組電腦架構所提供的高速處理及傳輸速度,能快速地處理 此等單元。該等應用程式之代碼較佳的係基於相同的共同 指令集及ISA ^每一軟體單元較佳的係包含一全球識別(全 球ID)及說明單元處理所需要的計算資源數量之資訊。由於 所有δ十算負源皆具有相同的基本結構並採用相同的is A,可 執行此處理之特定資源可位於該網路上的任何地方並得以 動態指派。 該基本處理模組係一處理器元件(pr〇cess〇r element,· PE)。一 PE較佳的係包含耦合於一共同内部位址及資料匯流 排之一處理單元(processing unit ; PU)、一直接記憶體存取 控制器(direct memory access controller ; DMAC)以及複數 個附著處理單元(attached processing unit ; APU),例如四 個APU。PU及APU與一共享動態隨機存取記憶體(dynamic random access memory ; DRAM)互動,該動態隨機存取記憶 體(DRAM)可具有一交叉架構。pu對APU所作的資料及應用 106475.doc 1284811 程式處理進行排程及協調。APU以平行且獨立的方式執行 此處理。DMAC控制PU及APU對儲存於該共享DRAM内的資 料及應用程式之存取。 依據此模組結構,網路部件所使用的PE之數目基於該部 件需要的處理功率。例如,一伺服器可能採用四個PE,一 工作站可能採用二個PE而一 PDA可能採用一個PE。一PE中 被指派以處理一特定軟體單元之APU數目取決於該單元内 的程式及資料之複雜性及大小。 該複數個PE可與一共享DRAM相關聯,而DRAM可被分 離為複數個區段,此等區段中的每一區段係分離為複數個 記憶體儲存庫。可藉由一儲存庫控制器控制DRAM之每一 區段,而PE之每一 DMAC皆可存取每一儲存庫控制器。此 組態中,每一PE之DMAC皆可存取該共享DRAM之任何部 分。 DRAM可包括沙箱,以從用於一 APU所處理之程式的資料 提供一安全位準,其防止用於另一 APU所處理之程式的資 料之毁損。各沙箱定義共享DRAM之一區域,超過該區域 則特定APU或APU集無法讀取或寫入資料。 雖然使用沙箱提供防止資料毁損的某種安全措施,其並 未解決故意軟體盜錄的問題。由於給定PE内之複數個APU 係耦合於共同内部匯流排上,一 APU可監看運行於另一 APU上之軟體。寬頻網路情況中,需要給定PE内之兩個或 更多APU運行不同應用程式。為確保高系統靈活性,需要 使此等軟體程式可從不同實體獲得,例如不同軟體開發公 106475.doc 1284811 司。某些實例中,軟艎開發公司可能需要保證其敕體應用 程式安全、無被複製或以其他方式被監看之憂。 〜 根據^發明的一或多個方面,一裝置包括:一局部記憶 體,可刼作以向及從該局部記憶體載送資訊之一 dry 匕〜排;
了刼作以處理資料並且可操作性耦合至該局部記憶體之一 或多個鼻術處理單元;以及可操作以將該裝置放置於 個操作模式之至少一個操作模式内的一安全電路,該 個操作模式包括-第-模式,藉此該裝置及—外部器件可 啟動資訊在該匯流排上進入或離開該記憶體之—傳送,一 第一模式,藉此該裴置及該外部器件皆不能啟動資訊在咳 匯流排上進入或離開該記憶體之一傳送,以及第=二 2错此該裝置可啟動資訊在該匯流排上進入或離開該記 憶體之-傳送’但該外部器件不能啟動資訊在該匯流排上 進入或離開該記憶體之一傳送。 根據本發明之一或多個其他方面,該安全電路係可操作 以將該裝置放置於兩個操作模式之至少—個操作模式内, 其中料兩個操作模式包括以下模式之-··⑴-第一模 ,、藉此β裝置及_外部器件可啟動資訊在該匯流排上進 =離開該局部記憶體之—傳送,以及—第三模式,藉此 2凌置可啟動資訊在該匯流排上進入或離開該局部記憶體 、專送但忒外部器件無法啟動資訊在該匯流排上進入 :離開該局部記憶體之一傳送;以及⑼一第二模式,藉此 或”亥外。卩器件皆無法啟動資訊在該匯流排上進入或 開°亥局部记憶體之-傳送,以及該第三模式。 106475.doc 1284811 安全電路較佳的係包括安全電路外部之器件不可存取的 秘密資料區域,並且該秘密資料區域包含第一密鑰及第二 雄鑰。安全電路較佳的係還包括安全電路外部之器件可存 取的可存取資料區域。另外,安全電路包括邏輯電路,其 在該裝置處於第二模式時可操作以將該第一密錐之副本放 置於該可存取資料區域内。使用該裝置前,較佳的係在可 控程序中將第一密鑰及第二密鑰儲存於秘密資料區域内, 藉此保持安全。 女全電路杈佳的係在該裝置運行一鑑別例行程式時將該 裝置放置於第二模式中,其包括執行解密程式及執行鑑別 程式,該鑑別程式包括第二密錄之副本,並且已根據第— 密鑰加密該鑑別程式。該裝置執行解密程式,以便將可存 取資料區域内包含的第一密鑰之副本用於解密該鑑 式。 安全電路之邏輯電路較佳的係對鑑別程式之執行作出回 • 應而將第二密鑰之副本放置於可存取資料區域内;並且該 邏輯電路決定鑑別程式内包含的第二密鑰之副本是否匹配 可存取資料區域内包含的第二密鑰之副本。 安全電路可操作以在鑑別程式内包含的第二密鑰之副本 匹配可存取資料區域内包含的第二密鑰之副本時將該裝置 放置於第三模式中。 、 根據本發明之一或多個其他方面,將複數個上 放於單-器件内。 置置 根據本發明之-或多個其他方面,-方法包括將一裝置 106475.doc 1284811 放置於複數個操作模式之至少_項中,其中··豸裝置包括 -局部記憶體、可操作以向及從該局部記憶體載送資訊之 匯机排、可操作以處理資料並且可操作性耦合至該局部 心體之或夕個异術處理單元以及可操作以將該裝置放 置:亥等操作模式内之一安全電路;以及該複數個操作模 式包括一第一模式,藉此該裝置及一外部器件可啟動資訊 在4匯机排上進入或離開該記憶體之一傳送,一第二模
、藉此”亥裝置及該外部器件皆不能啟動資訊在該匯流排 f進入或離開該記憶體之—傳送,以及-第三模式,藉此 〆裝置可啟動資訊在該匯流排上進人或離開該記憶體之一 傳送但遠外部器件不能啟動資訊在該匯流排上進入或離 開該記憶體之一傳送。 根:本發明的一或多個其他方面,一裝置包括:一主要 々里單7G ’複數個附著處理單元,各處理單元包括一局部 °己隱體及解密單元,並且各處理單元可操作以進入一正 :刼作模式或-安全操作模式;以及-共享記憶體,其中·· ^ ^要處理單兀可操作以啟動該共享記憶體與該等附著處 ::凡給定處理單元間的資料傳輸,當該給定附著處 ▲早70處於正常模式時該等資料傳送繞過該解密單元,且 / ,處理單7〇不能夠··⑴啟動從該給定附著處理單元至 ^共Wit體之資料傳送;或⑻啟動從該共 給定附著虚王¥ Μ - k粒主孩 早-之資料傳送’當該給定附著處理單元處 二王、式時该等資料傳送繞過該解密單元。 /附著處理早凡較佳的係能夠啟動與共享記憶體之資料 106475.doc 1284811 傳送’而不論其是處於正常操作模式還是安全操作模式。 附著處理單70可操作以根據一硬體重設狀況及一啟動狀況 之至少一項進入安全操作模式。 各附著處理單几較佳的係、包括安全儲存器,其包含實質 上唯的⑧錄,该密鑰僅可由給定附著處理單元的解密單 :之至J -個來存取;以及經過授權的實體。各附著處理 單兀之解密單TL較佳的係使用密输來解密從共享記憶體至 _ 々部記憶體之資料傳送,其係在給定㈣處理單元處於安 全操作模式時由主要處理單元來啟動。各附著處理單元與 實質上唯的ID以及該裳置相關聯,該⑴可係給定附著處 理單元之至少一個外部的實體已知的。 "車乂佳的係藉由該|置外部的安全實體加密該等已加密資 料,該安全實體係經過授權以使用給定附著處理單元之密 输:女全實體可包括包含參與的附著處理單元之①及密錄 的資^庫,用於附著處理單元之各ID及密鍮彼此相關聯。 春纟不安全實體向安全實體提供與該密鑰相關聯之ID後,安 全實體採用給定附著處理單元之密鑰加密從不安全實體接 收並且未經授權以使用給定附著處理單元之密鍮的資料。 較佳的係安全實體可操作以向不安全實體提供已加密資 枓·不安全實體可操作以向該裝置提供已加密資料,以便 將其儲存於共享記憶體内;主要處理單元可操作以啟動已 加Μ料從共享記憶體至給定附著處理單元之傳送,以便 將二:資料輸入至解密單元内,·以及給定附著處理單元之 解在早兀可操作以使用給定附著處理單元之密输解密該等 106475.doc 1284811 已加密資料’以便將或專資料儲存於給定附著處理單元 局部記憶體内。 或者,未經授權以使用給定附著處理單元之密鑰的不^ 全實體較佳的係使用第一對稱密鑰加密該等資料,向a 2 實體提供已加密資料,並向安全實體提供與給定附著處2 單元相關聯之ID。安全實體較佳的係使用第二對稱密鑰 密不安全實體所提供之已加密資料,並使用與從不安全 體接收之ID相關聯的給定附著處理單元之密鑰加密該=資 个女金貫體敉隹的係使用帛_對稱密鑰加_料及^ 附著處理器單元之m’並向該安全實體提供已加密= 仙。最後,該安全實體可操作以使用第二對稱密瑜加 加密資料並向不安全實體提供加密已加密資料1不一 實體可操作以使用第一對稱密餘解密該等加密:加:: 科,以獲得使用給定附著處理單元之密餘產生的已加^
料,以及向該裝置提供已加密資料,以便將其館存於J 記憶體内;該主要處理單元可操作以啟動該等已加密;: 從共享記龍至給定附著處理單元之傳送,以便將已 輸人至解密單以;該給^著“單元:已 早兀可操作以使用給定附著處理單元之密餘解在 选資料’以便將該等資料儲存於給定附^ 記憶體内。 平兀之局部 用 另一替代方案中 給定附著處理單 ,該等資料為解密程式; 兀之不安全實體使用第一 未經授權以使 對稱密餘加密 J06475.doc 1284811 該解密程式,向該安全實體提供已加密之解密程式,並向 女全實體提供與給定附著處理單元相關聯之id ;並且該安 王實體使用第二對稱密鑰解密不安全實體所提供的已加密 之解密程式,並使用與從不安全實體接收之ID相關聯的給 =附著處理單元之密錄加密解密程式及第二對稱密餘。不 安全實體較佳的係使用第一對稱密鑰加密解密程式及給定 附者處理器單元之ID,並向該安全實體提供已加密資料/ ID 〇
車乂佳的係’ 6亥安全實體可操作以使用第二對稱密錄加兹 已加密解絲式及第二對稱請並向不安全實體提供加兹 已加密之解密程式/第二對稱㈣;該不安全實體可操作以 吏用第對稱雄錄解密該加密已加密之解密程式/第二到 稱密墙’以獲得使用給定附著處理單元之密餘產生的已加 密解密程式/第二對稱峰,職向職置提供已加密解密 程式n稱密鑰,以便將錢存於共享記㈣内·該主 要處理早7C可操作以啟動已加密解密程式/第二對稱密錄 從共享記憶體至給定附著處理單元之傳送,以便將已加密 解:程式/第二對稱密鑰輸入至解密單元内;該給定附著處 理:元之解密單元可操作以使用給定附著處理單元之密鑰 解密已加密解植私式/第二對稱密鑰,以便將解密程式及第 二對稱密㈣存於較附著處理單元之局部記憶體内。 、另外$女王實體可操作以使用第一對稱密鑰加密資料 並向該裝置提供已加密資料,以便將其料於共享記憶體 内。給定附著處理單元能夠從共享記憶體接收已加密資料 106475.doc 1284811 其傳送至局部記憶體内,共享記憶 並:其傳送至局部記憶體㈣,給定附 .兀°处於正吊模式或安全模式。給定附著處理單 凡可操作以使用解密程式及第二對稱密錄解密已加密資 科。主要處理單元可操作以啟動已加密資料從 至給定附荖虛王¥ 11 - > 卞G U篮 …寸者處理早兀之局部記憶體的傳送,同時繞過解密 單元。 結合附圖閱讀本文之說明’熟悉技藝人士將明白本發明 之其他觀點、特徵及優點。 【實施方式】 圖1顯示用於根據本發明之電腦系統1的總體架構。系統! 包括網路4 ’其與複數個電腦及計算H件連接。網路4可為 區域網路、全球網路,例如網際網路,或任何其他電腦網 路0 例如,與網路4(網路"部件")連接的電腦及計算器件包括 用戶端電腦6、伺服器電腦8、個人數位助理(personal digital SS1Stam,PDA)10、數位電視(digital television; Dtv)12 及其他有線或無線電腦及計算器件。網路4之部件所利用的 f理器由相同共同計算模組構成。此等處理器較佳的係全 T具有相同ISA並根據相同指令集執行處理。任何特定處理 崙内包括的模組數目取決於該處理器所需的處理功率。
例如,由於系統1之飼服器8比用戶端6執行更多資料及應 用程式之處理,伺服器8比用戶端6包含更多計算模組。另 一方面,此範例中PDAl〇執行最少數量之處理。因此,PM 106475.doc -16· !284811
1 〇包含最少;^ B 目之叶算模組〇 DTV 12執行用占山 8之間的-處理位準。因此,謂12包含用戶:::飼服器 之間的許多計算 用戶鳊6與伺服器8 制器及複數個相同處理:下所:用各計算棋…處 資料及應用程式之;IS其用於執行在網—^ 系統1之此均句έ
率。心可調適性、處理速度及處理效 某部分)來執1 使用相同計算模組的—或多個(或 之特二:理’因此對"舆應用程式執行實際處理 用程式=:::係不重要的。此外,可將-特定應 :一二包含由系統1來處理的資料及應用程式之單= 了將處理結果料給請求進行該處理之電腦或 二:古而無論此處理係發生於何處。由於執行此處理 共同的結構且採用—共用的ISA,因此能避免為 之間的相容性而添加—層軟體以致帶來計 及程式化模型有助於執行(例如)即時的多媒 應用私式所需要之處理速度。 j進一步利用系統1所促進的處理速度及效率,將此系統 之处理:資料及應用程式封裝成經唯一識別且一致格式化 盥f體早:2。母一軟體單元2皆兼含或可能兼含應用程式 貝料每一軟體單元還包含一出以全域性地識別整個網 路二及系統1中的單元。該等軟體單元之此結構—致性以及 軟體單元在整個網路中的唯一識別有助於在該網路的 可電月&或4异器件上處理應用程式及資料。例如,一用 106475.doc •17· 1284811 戶端6可能定製一軟體單元2,但是,由於用戶端6之處理能 力有限,因此其將此軟體單元發送給一伺服器8以作處理。 軟體單元2可在整個網路4中轉移以根據該網路4上處理資 源之可用性來進行處理。 系統1之處理器及軟體單元2之均勻結構還避免當今均勻 、’罔路所存在問題中的許多問題。例如,可避免採用致力於 允許在任何ISA上使用任何指令集處理應用程式之低效程 φ 式化模型(例如,諸如Java虛擬機器之類的虛擬機器)。因 此,系統1實施寬頻處理之效果及效率可能遠遠超過傳統網 路0 參考圖2’顯不可加以調適以用於執行本發明之一或多個 特徵的處理系統⑽之至少—部分。為達到簡潔及清楚的目 的,本文對圖2之方塊圖的參考及說明係作為對裝置丨的 說明,不過應瞭解,本說明可容易地等力應用於一方法之 各種方面。 處理系統100包括複數個處理器1〇2A、l〇2B、102C及 1〇2D,應瞭解可㈣任何數目之處理器,而不會背離本發 明之精神與範圍。處理器⑽亦包括複數個局部記憶體 104A 104B、i〇4C、104D及一共享記憶體1〇6。至少處理 器1〇2、局部記憶體1G4及共享記憶體⑽較佳㈣在匯❹ 系統108上(直接或間接)彼此麵合,該匯流排系統係可操作 以根據適當協定向及從各組件傳送資料。 處理器H)2之各個可具有相同結構或不同結構。可使 夠從共享(或系統)記憶體1()6請求資料並操控資料以實現期匕 106475.doc 1284811 望結果的任何已知技術來實施處理器。例如,可使用能夠 執行軟體及/或韌體之任何已知微處理器,包括標準微處理 。器、分散式微處理器等等’來實施處理器1〇2。:如|處理 益102之一或多個可為能夠請求及操控資料(例如像素資 料,包括灰階資訊、色彩資訊、文字資料、多邊形資訊、 視訊訊框資訊等等)之圖形處理器。 系統1 〇〇之處理器102的一或多個處理器可承擔主要(或 管理)處理器之角色。主要處理器可對其他處理器之資料處 理進行排程及協調。 系統記憶體106較佳的係透過記憶體介面電路(未顯示) 與處理器102麵合的動態隨機存取記憶體(DRAM)。儘管系 統=憶體H)6較佳的#DRAM,記憶體⑽可使用其他方式 來實施,例如靜態隨機存取記憶體(伽…㈣⑽咖如 memory ’ SRAM)、磁性隨機存取記憶體(magnetic access memory , MRAM)、光學記憶體 '全訊記憶體等等。 各處理$ 1G2較佳的係包括—處理器核心以及在其中執 ―矛式的局。卩„己隐體〗〇4之相關聯局部記憶體。此等組件可 整口置放於共同半導體基板上或可根據設計者之需要分離 :咖。較佳的係使用處理管線實施處理器核心,其中以 吕線方式處理邏輯指令。儘管可將該管線分割成處理指令 ^任何數目之級’管線通常包含擷取-或多個指令、解碼 指令、檢查指令間的相依性、發出指令以及執行指令。在 方面4理器核心可包括指令緩衝器、指令解碼電路、 相依1± 4欢查電路、指令發出電路以及執行級。 106475.doc •19- 1284811 各局部記憶體104經由匯流排與其相關聯處理器核心1〇2 耦合,且較佳的係位於作為處理器核心之相同晶片(相同半 導體基板)上。局部記憶體i 〇4較佳的並非傳統硬體快取記 隐體,因為無晶片上或晶片外硬體快取記憶體電路、快取 °己隐體暫存器、快取記憶體控制器等等來實施硬體快取記 隐體功旎。由於晶片上空間常常有限,局部記憶體之大小 可能遠小於共享記憶體106。 處理裔1 02較佳的係提供資料存取請求以在匯流排系統 1 〇8上從系統記憶體106複製資料(其可包括程式資料)至其 個別局部δ己憶體1〇4内,以便用於程式執行及資料操控。用 於促進資料存取之機制可利用任何已知技術來實施,例如 直接圯憶體存取(direct mem〇ry access ; DMA)技術。較佳 的係藉由記憶體介面電路執行此功能。 參考圖3,處理器1〇2之一或多個同樣較佳的係包括安全 電路150,其可操作以將處理器1〇2放置於複數個操作模式 之至少一操作模式内。安全電路15〇包括秘密資料區域 152、可存取資料區域154及邏輯電路156。秘密資料區域 車乂佳的係不旎由安全電路丨5 〇外部之任何器件存取。可存取 負料區域1 5 4較佳的係由安全電路〗5 〇外部之任何器件存 取。可將秘密資料區域152及/或可存取資料區域154實施為 局部記憶㈣6之個別部>、個別暫存器及/或個別其他儲 存器件’例如ROM等等。 使用處理11102前,較佳的係在可控程序中將第一密錄 KEY 1及第二密鑰ΚΕγ 2儲存於安全電路15〇之秘密資料區 106475.doc •20- 1284811 域152内’藉此保持安全。事實上,預期需要使用κΕγ】及 ΚΕΥ2,以便鑑別處理器1〇2並將其驗證為可信器件。因此, 當使用處理器102時以及使用處理器1〇2前,例如製造期 間而要將KEY 1及KEY 2保持秘密且處於g過授權方之控 制内。 秘密資料區域152、可存取資料區域154及邏輯電路156 較佳的係在連接線路158上彼此麵合,連接線路可使用一匯 流排組態來加以實施。邏輯電路156較佳的係藉由一或多個 資料線路160耦合至暫存器,資料線路亦可使用—匯流排組 態來加以實施。 斤述女王電路150較佳的係可操作以將處理器1〇2 放置於複數個操作模式之至少一操作模式内。此等模式較 佳的係包括第-模式(正常模式),藉此處理器1〇2及任何一 二、夕個外器件可啟動資訊進人或離開處理器之傳 :’例如進入或離開局部記憶體1〇4。此等模式較佳的係還 ^括^二模式(隔離模式),藉此處理器1〇2及任何一或多個 心件白不能啟動資訊進入或離開處理器搬之傳送。此 1〇:莫式較佳的係還包括第三模式(安全模式),藉此處理器 可啟動資訊進人或離開處理器⑽之傳送,但任何—或 :外部器件無法啟動資訊進入或離開處理器1〇2之傳送。 考圖4至6可更好地瞭解安全電路之操作,該等圖式 力’程圖,其說明根據本發明之處理器 力。在此方面,個定泠7 &文王月b (動作_)。請記得,::102係預設為第一正常操作模式 于在第一模式内,處理器102及任何一或 106475.doc -21 .
12848 H 多個外部器株f 理器H)2之局部 處理器)可啟動資訊進入或離開處 且體實⑹丨^ 5己憶體⑽之傳送。餘意在本發明之替代 具體實施例中,# ^ ^ 進入第-操作^ 2在初始化(例如啟動)後可能無法 利於以下將說明:或者僅可進入該模式-較短時間’以 子次明的第二或第三操作模式。 -=中’處理器1〇2可運行鑑別例行程式,以便達到 成難^ 了藉由從運行於處理器1〇2上之應用程式呼叫 行程式(動作202)。* 士, τ 1衣啟動鑑別例 ⑽可隨㈣狀^ 之替代具體實施例中,處理器 x ,在初始化時或稍後運行鑑別例行程式,而 =要從應用程式呼叫。為對啟動鏗別例行程式作出回 处理益102較佳的係執行一解密程式。應注意可從置放 外^模組内的適當記憶體獲得解密程式,或者其可 含二二源獲得。此類外部來源之範例包括可包 ^ ,、、先内之適s 5己憶體,或與網路4耦合 、、益件Μ如執行管理功能等的飼服器8(圖^。本發明 之—或多項具體實施例中,可將解密程式包含於安全 揮發性ROM中,例如快閃R〇M。 · =作206中,在處理器1()2執行解密程式之前、期間或作 操作之結果’處理㈣2較佳的係進人第二隔離操作模 I心得’在第二操作模式中’處理器m及任何 ::卜部器件皆不能啟動資訊進入或離開局部記憶體二 得3^。 動作中,處理器102較佳的係接收在鐘別例行程式期 106475.doc -22- 1284811 間使用的鑑別程式。應注意處理器丨G 2接收已加密鐘別程式 的時序並非剛性的;事實上,可在執行鑑別例行程式之前 或期間的任何適當時間接收程式。較佳的係根據κΕγι加密 鑑別程式,以便其僅可藉由經過授權之方式加以利用。另 外’鑑別程式較佳的係包括Κ Ε γ 2 ’其識別該鑑別程式。例 如,KEY 2可為一序號、一雜湊結果等等。 較佳的係將已加密鑑別程式儲存於處理器⑽中的適當
記憶體、包含處理器1G2之模組或處理器1()2或模組外部之 記憶體内。最佳的係將已加密㈣程式儲存於包含處理器 1〇2之模組外部的記憶體内,但仍在包含該模組之器件卜 另外較佳的係藉由經過授權之實體在—可控程序中執行鑑 別程式之加密以及其在適當記憶體中的储存。事實上,需 要始終保持鑑別程式之完整性,以便確保其在鑑別處判 ⑽或任何其程式的使用方面較為有效。本發明之一或多項 具體實施例中,可將鑑別程式包含於安全、非揮發性ROM 中,例如快閃ROM。 動作中’解密程式之執行較佳的係使ΚΕγ^安全副 本可從秘密資料區域152加以讀取,並被儲存於安全電路 15〇内之可存取資料區域。, 貝叶匕焯154中例如,邏輯電路156較佳的 係可操作㈣處理器102之暫存器(未顯示)内的特定資料之 存在作出回應而將KEY !之副本從秘密資料區域152傳送至 可存取資料區域154。由於虛理突、 田於慝理裔102處於第二隔離模式, 可存取資料區域1 54内KEY 1之石丨丨士 Λ人士丄 ^ 1之剎本的存在並不代表安全之 破壞。事實上,處理器i 〇2及任
饮订外部益件皆不能啟動KEY 106475.doc -23- 1284811 1透過局部記憶體104或以其他方式離開處理器1〇2之傳送。 動作212中,解密程式較佳的係利用ΚΕγ i以解密該已加 费鑑別程式’以便其可由處理器1〇2加以執行。執行鑑別程 式期間,較佳的係將秘密資料區域152内包含的ΚΕγ 2之副 本寫入可存取資料區域154(動作214)。例如’邏輯電路156 較佳的係可操作以根據鑑別程式對可寫入暫存器的特定資 料作出回應而將KEY 2之副本從秘密資料區域152傳送至〇 I 存取資料區域154。 動作216中,較佳的係決定可存取資料區域154内之κΕγ 2 的副本是否匹配鑑別程式内包含的ΚΕγ 2之副本。請記得, 鑑別程式包含KEY 2之副本,其在解密鑑別程式時變得可用 (動作212)。例如,可根據鑑別程式本身之執行將鑑別程式 内包含的KEY 2之副本暫時儲存於局部記憶體1〇4内或可將 其寫入可存取資料區域154。同樣,此不代表安全之破壞, 因為處理器1 02在此程序期間處於隔離模式,因此處理器 φ 102外部的未經授權器件無法獲得KEY 2之副本。 若鑑別程式内包含的KEY 2之副本不匹配從秘密資料區 域152獲得的KEY 2之副本,則鑑別處理器1〇2之程序終止 (動作218)。然而,當KEY 2之此等副本匹配時,較佳的係 清除可存取資料區域154内包含的ΚΕγ 1&ΚΕγ2之副本(動 作220),且處理器102較佳的係進入第三安全操作模式(動作 222)。例如,邏輯電路156可從可存取資料區域154清除ΚΕγ 1及KEY 2之副本並可使處理器1〇2進入第三安全操作模式。 凊記得,在第三安全操作模式中,處理器丨〇2可啟動資訊 106475.doc •24- 1284811 進入或離開局部記憶體104之傳送。換言之,在 — 、〇 仕弟二安全操 作模式中,處理器102可啟動資訊進入或離開處理器1〇2之 傳送,但處理器丨02外部之任何器件無法啟動此類資訊之傳 送。-旦處理器102已進入第三安全操作模<,則將其視為 可執行操作及操控資料之可信器件,而不必擔心未經授權 之實體可獲得此類資料。事實上,若處理器1〇2本身不加以
啟動,其他處理器甚至無法取得對處理器1〇2内之資料的 取權。 、/ 、子 其優點在於,可信處理器102可提供許多有用功能,例如 在圖1所說明的分散式系統内L力能包括提供安全外部 記憶體控制器,其具有僅可由經過授權之器件存取的記憶 體區域、僅可由經過授權之器件修改的安全時脈器件、; 信請求機制以及能夠鑑別開機碼之安全處理元件(例如使 用已公用密鑰為主之鑑別等等)。 根據本發明之一或多方面,可信處理器102可由包括主要 處理。器之其他處理器1G2來使用,以執行解密操作。例如, 處理a 10 2之-可需要藉由可信處理器! G 2解密儲存於主要 记憶體106内之資料。因此,該處理器可向可信處理器⑽ 傳送—請求’其指示資料位於主要記憶體106内的何處以及 指示需要執行何種解密例行程式之參數的至少—項。(或, 可預疋解推例行程式’從而可省略此類參數。)對該請求作 出回應’可信處理器102可從主要記憶體⑽讀取已加密資 ❹將該等資料發送其至局部記憶體ig销,以及執行解密 若八他處理器1 〇2執行請求前可信處理器⑽未擁有 106475.doc -25· 1284811 解«錄(例如KEY1«EY2),則較佳的係亦藉由請求處 理β 102提供此類解密密鑰或關於如何 訊。接著,較佳的係將已解密資料寫回至主要記:體二 内及/或寫入請求處理器102之局部記憶體1〇4。 、現在提供用於多處理器系統之較佳電腦架構的說明,其 適用於執行本文說明的一或多個特徵。根據一或多個具體 實施例,可將多處理器系統實施為單一晶片解決方案,立 可操作以用於多媒體應用程式之獨立及/或分散式處理,例 如遊戲系統、家用終端、PC系統、祠服器系統及工作站。 某些應用程式中,例如遊戲系統及家用終端,可需要即時 計算。例如,在即時、分散式遊戲應用程式中,網路影像 解屋縮、3D電腦圖形、聲頻產生、網路通信、實體模擬及 人工智慧程序之-或多項必須加以足夠迅速地執行,以為 使用,提供即時幻視體驗。因此,多處理器系統内之每一 處理盗必須在一較短及可預測時間内完成任務。 :此:的,以及根據此電腦架構,多處理電腦系統之所 处理态皆係由一共同計算模組(或單元)構成。此共同計算 模組具有-致的結構且較佳的係採用相同的指令集架構。 该多處理電腦系統可由-或多個用戶端、伺服器、%、行 ==遊戲機、舰、視訊轉換盒、器具、數位電視及 電月自處理器之其他器件來形成。 一而要則複數個電腦系統也可能係一網路之部件。該 乃次袓模組結構使得能藉由該多處理電腦系統對應用程式 貝"進行有效、高速處理,而且若採用一網路,則還能 106475.doc • 26 · 1284811 夠透過網路快速傳輸應用程式及資料。此結構還簡化了該 網路中不同尺寸及處理功率的部件之構建以及為此等部件 之處理而對應用程式作的準備。 參考圖7,基本處理模組為處理器元件(ρΕ)3〇〇。ρΕ则 包^輸入/輸出介面3〇2、4理單元(ρυ)3〇4以及複數個子處 理單元308’即子處理單元扇a、子處理單元3嶋、子處 理單7L 308C及子處理單元3〇8D。局部(或内部师匯流排扣 在PU 304、子處理單元3〇8及記憶體介面3ιι之中發送資料 及應用程式。該局㈣匯流排312可具有(例如)傳統架構, 或可作為封包交換網路來實施。若實施為封包交換網路, 儘管需要更多硬體,但可增加可用頻寬。 可使用實施數位邏輯之各種方法來構成pE 3〇〇。然而, 較佳的係將PE 300構建為在一矽基板上採用一互補金氧半 導體(CMOS)之-單—積體電路。基板之替代性材料包括坤 化鎵、砷化鎵鋁及採用各種摻雜劑的其他所謂化合 物。亦可使用㉟導材料’ W如快速單通量子(叫^ single-flux,antum ; RSFQ)邏輯來實施pE 遍。 PE 300經由一高頻寬記憶體連接316而與一共享(主要)記 憶體314密切相關。儘管記憶體314較佳的係動態隨機存取 e己憶體(DRAM),但亦可使用其他構件而將記憶體3 14實施 為(例如)靜態隨機存取記憶體(SRAM)、磁性隨機存取記憶 體(MRAM)、光學記憶體、全訊記憶體等等。 PU 304及子處理單兀3〇8•較佳的係各與包括直接記憶體 存取DMA功能性之—記憶體流控制器(memory flow 106475.doc -27- 1284811 controller ; MFC)耦合,其與記憶體介面311組合,可促進 DRAM 314及子處理單元308與PE 300之PU 304間的資料傳 送。應注意,該DMAC及/或該記憶體介面311可能係關於子 處理單元308及PU 3 04整合或分離地加以置放。事實上,該 DMAC功能及/或該記憶體介面3 11功能可與子處理單元308 及PU 304之一或多個(較佳的係全部)整合。同樣應注意, DRAM 314可能係關於PE 300整合或分離地加以置放。例 如,可如圖示插圖所示意將DRAM 3 14置放於晶片外,或可 用積體方式將DRAM 314置放於晶片上。 例如,PU 3 04可為如能夠獨立處理資料及應用程式的標 準處理器。在操作中,PU 3 04較佳的係對子處理單元所作 的資料及應用程式處理進行排程及協調。子處理單元較佳 的係單指令多資料(single instruction,multiple data ; SIMD) 處理器。在PU 304之控制下,子處理單元以平行且獨立的 方式對此等資料及應用程式執行處理。PU 304較佳的係使 用PowerPC核心來實施,其係採用精簡指令集計算(RISC) 技術之微處理器架構。RISC使用簡單指令之組合執行更複 雜之指令。因此,用於該處理器之時序可基於更簡單及更 快之操作,從而使微處理器針對給定時脈速度執行更多指 〇 應注意,可藉由子處理單元308中有主要處理單元作用之 一子處理單元來實施該PU 3 04,該子處理單元對子處理單 元308所執行的資料及應用程式處理進行排程及協調。另 外,處理器單元300内可實施多個PU。 106475.doc -28 · Ϊ284811 依據此模組結構,特定電腦系統所使用的PE 3〇〇之數目 係基於該系統需要的處理功率。例如,一伺服器可能採用 四個PE 300,一工作站可能採用二個pE 3〇〇而一 pDA可能 採用一個PE 300。PE 300中被指派以處理特定軟體單元之 子處理單元數目取決於該單元内的程式及資料之複雜性及 大小。
圖8§兒明子處理單元(sub_processing unit; Spu)3〇8之較佳 結構及功能。SPU 308架構較佳的係填充通用處理器(其係 叹。十成對廣泛的應用程式集實現高平均性能)與特殊用途 處理器(其係設計成對於單一應用程式實現高性能)間的空 隙SPU 308係设計成對遊戲應用程式、媒體應用程式、寬 頻系統等實ί見高性㊣’以及為即時應用程式之程式設計師 提供高控制程度。SPU 308之某些能力包括圖形幾何管線、 表面細分、快速富利葉轉換、影像處理關鍵字、資料流處 理、MPEG編碼/解碼、加密、解密、器件驅動器擴展、模 型化、遊戲物理學、内容建立及聲頻合成與處理。 子處理單元308包括兩個基本功能單元,即spu核心3i〇a 及記憶體流控制器(MFC)3 i 〇B。spu核心3 i 〇a實施程式執 行、資料操控等等,而MFC3刚執行與spu核心“Μ與系 統之DRAM 314間的資料傳送相關之功能。 SPU核心3 1 〇A包括局部記憶體35〇、指令單元(instruction _ m)352、暫存器354、一或多個浮點執行級心及一或 多個疋點執行級358。較佳的係可使用單璋式隨機存取記憶 體(例如SRAM)實施局部記憶體別。而大部分處理器藉由 106475.doc -29· 1284811 採用快取記憶體減小對記憶體之潛時,spu核心3丨〇a實施 較小局部記憶體350而非快取記憶體。事實上,為給即時應 用程式(以及本文提及的其他應用程式)之程式設計師提供 致且可預測之記憶體存取潛時,SPU 308A内之快取記憶 體架構並不理想。快取記憶體之快取記憶體衝擊/遺失特徵 導致揮發性記憶體存取時間從數個週期變為數百個週期。 此類揮發性削弱了(例如)即時應用程式之程式化中需要的 存取時序可預測性。藉由重疊DMA傳送與資料計算,可在 局部記憶體SRAM 350中實現潛時隱藏。此方法為即時應用 程式之程式設計提供較高控制程度。由於與DMA傳送相關 聯之潛時及指令負擔超過伺服快取記憶體遺失之潛時的負 擔,SRAM局部記憶體方法在DMA傳送大小足夠大且充分 可預測(例如可在需要資料前發出一 DMA命令)時實現一優 點。 運行於子處理器單元308之給定子處理單元上的程式使 用一局部位址參考相關聯之局部記憶體350,不過,亦給局 部圮憶體350之各個位置指派總體系統記憶體映射内的一 真實位址(real address ; RA)。此使得權限軟體可將局部記 隐體350映射至一程序之有效位址(e打ective Address ; EA) 内’以促進一局部記憶體350與另一局部記憶體35〇間的 DMA傳送。PU 3〇4亦可使用有效位址直接存取局部記憶體 3 5 〇。在一較佳具體實施例中,局部記憶體3 5 0包含3 5 6千位 兀組之健存量,而暫存器352之容量係128X128位元。 SPU核心304A較佳的係使用處理管線來實施,其中以管 106475.doc -30- 1284811 線方式處理邏輯指令。儘管 &深刀割為處理指令的任 何數目之級,管線通常包含擷取一或多個指令、解碼該等 指令、檢查指令間之相依性、發出指令以及執行指二在 此方面,m 352包括指令緩衝器、指令解碼電路、㈣性 檢查電路以及指令發出電路。 指令緩衝器較佳的係包括複數個暫存 3仔裔’其與局部記憶 體350耗合並可操作以在揭取指令時暫時健存指令。指令缓 衝器較佳的係操作以便全部指令作為一群組(即實質曰^同 時)離開暫存器。儘管指令緩衝器可為任何大小,較佳係不 大於二或三個暫存器之大小。 ,一般而言’解碼電路分解指令並產生邏輯微操作,其執 仃對應指令之功能。例如,邏輯微操作可^算術及邏輯 操作’向局部記憶體350載入並館存操作,暫存來源運算元 及/或中間資料運算元。解碼雷踗介 解碼電路亦可指示指令使用哪些資 源,例如目標暫存器位址、έ士盖 Μ , 〜構貝源、功能單元及/或匯流 排。解碼電路亦可供應指示需 % 不而要貝源之指令管線級的資 成。才日令解碼電路較佳的係 呆作以實質上同時地解碼數 目專於指令缓衝器之暫存器數目的指令。 相依性檢查電路包括數位邏 4匕人 ^科具執仃測試以決定給定 扣令之運算元是否取決於營 夂 θ Β, 、於S線内其他指令之運算元。若 疋,則不應執行給定指令,亩5 s ώ 直至更新此類其他運算元(例如 錯由使其他指令可完成執行 , 仃)較佳的係相依性檢查電路決 疋丨J日寻從解碼态電路j 12遞 、夕個指令的相依性。 扣々發出電路可操作以向 U,子點執行級356及/或定點執行 106475.doc 1284811 級358發出指令。 128^1的係將暫存器354實施為較大統—暫存器檔案,例如 、暫存器檔案。此提供了高度管線式高頻率實施方案, 而不需要重新命名,以避免暫存器供應不足。f新命名硬 體通常消耗處理系統内的極大部分區域及功率。因此,當 藉由軟體迴路展開或其他交錯技術覆蓋潛時時,可 利操作。 有 # 較佳的係SPU核心31〇Α具有超純量架構,以便在每一時 脈週,内發出多個指令。較佳的係SPU核心31GA之操作的 超純量程度對應於指令緩衝器之同時指令遞送數目,例如2 與3之間(意味著每一時脈週期發出兩個或三個指令)。根據 所需的處理功率,可採用數目更多或更少的浮點執行級356 及定點執行級358。一較佳具體實施例中,浮點執行級356 係以每秒鐘32億次浮點操作(32 GFL〇ps)之速度進行操 作而疋點執行級358係以每秒鐘32億次操作(32 GOPS)之 φ 速度進行操作。 MFC 310B較佳的係包括匯流排介面單元(bus interface unit ’ BIU)364、$己憶體管理單元(meinory management unit ; MMU)3 62及直接記憶體存取控制器(direct memory access controller; DMAC)360。除 DMAC 360 外,MFC 310B 較佳 的係採用相較於SPU核心3 10A及匯流排3 12之一半頻率(一 半速度)來運行,以滿足低功率消耗設計目標。MFC 310B 可操作以處理從匯流排312進入SPU 308之資料及指令,並 提供用於DMAC之位址轉譯,以及用於資料相關性之探索 106475.doc •32- 1284811 操作。3111 3 64提供匯流排312與]\41^1; 362及〇]^八€ 3 60間的 介面。因此,SPU 308(包括SPU核心310A及MFC 310B)及 DMAC 3 60以實體及/或邏輯方式與匯流排312連接。 MMU 362較佳的係可操作以將有效位址(從DMA命令取 得)轉譯為用於記憶體存取之真實位址。例如,MMU 3 62可 將更高階位元之有效位址轉譯為真實位址位元。不過,較 低階位址位元較佳的係不可轉譯的,並且係視為邏輯與實 體位址位元,以便用於形成真實位址並請求對記憶體之存 取。在一或多項具體實施例中,可根據64位記憶體管理模 型實施MMU 362,並且其可提供具有4K、64K、1M及16M 位元組之頁面大小及256MB之片斷大小的264位元組之有 效位址空間。較佳的係MMU 362可操作以支援最高265位元 組之虛擬記憶體,以及用於DMA命令的242位元組(4兆兆位 元組)之實體記憶體。MMU 362之硬體可包括8項完全關聯 式SLB、256項4路組關聯式TLB以及用於TLB之4x4替換管 理表(Replacement Management Table ; RMT)-用於硬體 TLB 遺失處理。
DMAC 360較佳的係可操作以管理來自SPU核心310A以 及一或多個其他器件(例如PU 304及/或其他SPU)之DMA命 令。可存在三類DMA命令:存進命令,其操作以將資料從 局部記憶體350移動至共享記憶體3 14 ;接收命令,其操作 以將資料從共享記憶體3 14移動至局部記憶體350内;以及 儲存控制命令,其包括SLI命令及同步命令。同步命令可包 括原子式命令、傳送信號命令及專用阻障命令。對DMA 106475.doc -33- 1284811 命令作出回應,MMU 3 62將有效位址轉譯為真實位址,並 將真實位址轉遞至BIU 364。 SPU核心3 10A較佳的係使用通道介面及資料介面,以便 採用DMAC 360内之介面進行通信(傳送DMA命令、狀態 等)。SPU核心310A透過通道介面遞送DMA命令至DMAC 3 60内的DMA佇列。一旦DMA命令處於DMA佇列内,則藉 由DMAC 360内的發出及完成邏輯加以處理。當用於DMA 命令之全部匯流排交易完成時,在通道介面上將完成信號 傳送回至SPU核心310A。 圖9說明PU 304之較佳結構及功能。PU 304包括兩個基本 功能單元,即SPU核心304A及記憶體流控制器 (MFC)3 04B。PU核心304A實施程式執行、資料操控、多處 理器管理功能等等,而MFC 304B執行關於PU核心304A與 系統100之記憶體空間之間的資料傳送之功能。 PU核心304A可包括L1快取記憶體370、指令單元 (IU)372、暫存器374、一或多個浮點執行級376及一或多個 定點執行級378。L1快取記憶體為透過MFC 304B從共享記 憶體106、處理器102或記憶體空間之其他部分接收的資料 提供資料快取功能性。由於PU核心304A較佳的係實施為超 級管線,較佳的係將指令單元372實施為具有許多級之指令 管線,該等級包括擷取、解碼、相依性檢查、發出等等。 同時較佳的係PU核心304A具有超純量組態,藉此在每一時 脈週期内從指令單元372發出多個指令。為實現高處理功 率,浮點執行級376及定點執行級378在管線組態内包括複 106475.doc -34- 1284811 數個級。根據所需的處理功率,可採用數目更多或更少的 浮點執行級376及定點執行級378。 MFC 3 04B包括匯流排單元(BIU)380、L2快取記憶體、非 可快取單元(non-cachable unit ; NCU)384、核心介面單元 (core interface unit ; cm)386以及記憶體管理單元 (MMU)3 88。大部分MFC 304B採用相較於pu核心304A及匯 流排108之一半頻率(一半速度)來運行,以滿足低功率消耗 設計目標。 BIU 380提供匯流排1〇8及L2快取記憶體382與NCU 384 邏輯區塊間的介面。為此目的,BIU 38〇可當作匯流排1〇8 上之主器件以及從屬器件,以便執行完全連貫之記憶體操 作。作為主器件,其可從來源載入/儲存請求至匯流排丨〇8, 以用於代表L2快取§己憶體382及NCU 384之服務。BIU 380 亦可針對命令實施流量控制機制,其限制可傳送至匯流排 108之命令的總數目。匯流排1〇8上之資料操作可被設計成 • 採用八拍,因此BIU 380較佳的係設計為大約128位元組之 快取記憶體線路,且相關性及同步粒度為128kb。 L2快取記憶體382(以及支援硬體邏輯)較佳的係設計成 快取312KB之資料。例如,L2快取記憶體382可處理可快取 載入/儲存、資料預擷取、指令擷取、指令預擷取、快取記 憶體操作及阻障操作。L2快取記憶體382較佳的係8路組關 聯式系統。L2快取記憶體382可包括匹配六個(6)逐出佇列 之六個重新載入佇列(例如六個RC機器)以及八個(寬料個 位兀組)儲存仔列。L2快取記憶體382可操作以提供^快取 106475.doc -35- 1284811 記憶體370内之某些或全部資料的備份副本。其優點在於, 當對處理節點進行熱交換時,此在重新儲存狀態内較為有 用。此組態亦使L1快取記憶體37〇可採用更少埠更快地加以 #作’並可提供更快的快取記憶體對快取記憶體傳送⑽為 請求可停止於L2快取記憶體382)。此組態也提供用於將快 取記憶體相關性管理傳遞至L2快取記憶體382的機制。 NCU 384介接CIU 386、L2快取記憶體382以及Bm 38〇, φ 並且一般係執行佇列/緩衝電路之功能,其用於PU核心304Α 與記憶體系統間之非可快取操作。NCU 384較佳的係處理 L2快取記憶體382不予處理的與]?1;核心3〇4a之全部通信, 例如禁止快取記憶體之載入/儲存、阻障操作及快取記憶體 相關性操作。NCU 384較佳的係採用一半速度來運行,以 滿足上述功率消耗目標。 將CIU 386置放於MFC 304B及PU核心304A之邊界,並用 作選路、仲裁及流量控制點,其用於來自執行級376、378、 • 指令單元372AMMU單元388並到達L2快取記憶體382及 NCU 384之請求。PU核心304Α&ΜΜυ38Μ^^佳的係全速運 仃,而L2快取記憶體382及NCU 384可採用2 : 1速度比率操 作。因此,頻率邊界存在於CIU 386r,其功能之一係當其 在兩個頻域間轉遞請求及重新載入資料時,準確處理頻率 交越。 CIU 386由三個功能區塊組成··載入單元、儲存單元及重 新載入單元。此外,資料預擷取功能係由CIU 386來執行, 且較佳的係載入單元之功能部分,其可操作以··⑴接受來 106475.doc -36- 1284811 、 3〇4A及MMU 388之載入及健存請求;(ii)將該等 叫求從全速時脈頻率轉換為半速(2 :丨時脈頻率轉換);(丨⑴ 將可陕取晴求選路至L2快取記憶體382,以及將非可快取請 求選路至NCU 3 84; (iv)在到達L2快取記憶體382&NCu 384 之#求間公平地仲裁;(v)在對L2快取記憶體382及NCU 384 之遞送中提供流量控制,以便在目標窗口中接收請求並避 免溢流;(Vi)接受載入返回資料並將其選路至執行級376、 _ 378、指令單元372或MMU 388 ; (vii)將探索請求傳遞至執 行級376、378、指令單元372或MMU 388 ;以及(viii)將載 入返回資料及探索流量從半速轉換為全速。 MMU 388較佳的係提供用於PU核心304A之位址轉譯,例 如猎由第二位準位址轉譯設施。第一位準之轉譯較佳的係 精由可遠小於且快κΜΜυ 388的分離指令及資料erat(對 真實位址轉譯有效)陣列而提供在PU核心304A中。 一較佳具體實施例中,PU 304採用64位元實施方案在钧 • GHz、10F04下操作。暫存器較佳的係長M位元(儘管一或多 個特殊用途暫存器可更小),有效位址長64位元。指令單元 〇暫存器372及執行級374及376較佳的係使用p〇werpc 技術來實施,以實現(RISC)計算技術。 美國專利第6,526,491號中可找到關於此電腦系統之模組 結構的詳細資料,其整個揭示内容以提及方式併入本文中。 現在參考圖10,其係根據本發明之一或多個其他方面之 處理器500的方塊圖。此具體實施例中,處理器5〇〇也包括 解密單元502及安全記憶體504。安全記憶體5〇4包含不可見 J06475.doc -37- 1284811 密錄(IKi) ’此處i代表第i個處理器。解密單元jo]可操作以 解密從記憶體流控制器310B流動至局部記憶體35〇的資料 (使用不可見密鑰iKi)。較佳的係不可見密鑰IKi對給定處理 器5 00實質上係唯一密鑰,應瞭解系統内的各處理器包括唯 一不可見密鑰。解密單元502可採用任何已知技術,例如簡 單XOR演算法或更複雜的演算法。 處理器500較佳的係可操作以進入安全操作模式,其使用 上述技術或利用其他技術。較佳的係處理器5〇〇在硬體重設 狀況或啟動狀況後進入安全操作模式。當處於不安全模^ 時’ PU304能夠啟動共享⑽施川與局部記憶體35〇間之 資料傳送,而不用穿過解密單元5〇2。同樣,當處理器· 處於不安全模式時,PU剔能夠啟動從局部記憶體35〇至共 享DRAM 314之資料傳送。然而,當處於安全模式時,叩綱 不能夠啟動從共享DRAM 314至局部記憶體35q之資料傳 送,而不用使此類資料穿過解密單元5G2epu3G4啟動的發 自局部記憶體350之資料傳送在安全模式中不允許。因此, P U 3 〇4 (或任何其他外部實體)所啟動的任何資料傳送將導 致資料經受解密,其使用不可見密錄IKi。然而,處理器· 此夠啟動局部記憶體35G與共享DRAM 31須的資料傳送, 而不論其是否處於安全操作模式。 i、子;女王錯存記憶體504内之不可見密鑰IKi僅可由處 之解在早兀502或某一其他經過授權之實體存取。 〜系P使實體經過授權以得知特定處理器5〇〇之不 &鑰IK i ’此類實體必須以某種方式得到對不可見密鑰 106475.doc -38- 1284811 iKi之存取權,除了從處理器500之安全記憶體5〇4獲得外。 例如,在處理器500之製造程序期間,不可見密鑰IKi較佳 的係儲存於安全記憶體504中,恰在或大約在該相同時間, 使經過授權之該等實體得知不可見密鑰IKi,以獲得資訊。 處理器500較佳的係還包括實質上唯一之m,例如序號或 其他識別標記。然而,與不可見密鑰IKi不同,較佳的係想 要利用處理器500之安全特徵的任何實體皆知道處理器5〇〇 φ 之1D。因此,ID可視為可見密鑰VKi,此處i代表第丨個處理 器 500 〇 參考圖11,說明可採用處理器500之安全特徵的一系統。 違系統包括處理器500、中間實體51〇及安全實體(或伺服器) 512。安全實體512包括認證伺服器514及資料庫516,以下 將予以更詳細說明。應注意雖然圖丨丨顯示本發明某些方面 的、、Ό構’也顯示了資料/程序流。因此,本文中圖1 1用於說 明本發明之裝置及方法的細節。 鲁 中間貫體51 〇可為任何實體或系統,其需要以安全方式向 處理器500發送資料或發送並執行程式。請記得,處理器5〇〇 可為共享DRAM 3 14之複數個附著處理單元中的一個。因 此’可能將從中間實體510發送至處理器5〇〇的資料至少暫 時儲存於共享DRAM 314中。某些情況下,此可使資料遭受 其他處理器之盜錄。但是根據本發明,中間實體5〗〇可用此 方式將 > 料發送至處理器5 〇 〇 :僅處理器5 〇 〇可取得對資 料之存取權及使用權。 特定言之,中間實體510獲得與處理器5〇〇相關聯之可見 106475.doc -39- 1284811 密鑰VKi。中間實體510向安全伺服器512發送資料(例如需 要在處理器500上執行的遠端程式)以及可見密鑰νκί。此傳 輸可使用任何已知技術而發生,例如藉由網際網路或任何 其他網路、通信鏈路或藉由手動干預。安全伺服器512從傳 輸獲得可見密餘VKi並採用認證伺服器5丨4以搜尋資料庫 516,其包含複數個可見密鑰一不可見密鑰對。可見及不可 見密鑰對藉由其與特定處理器之相互關係彼此相關聯,例
如處理器500。若獲得從中間實體51〇接收之可見密鑰 一資料庫5 1 6内之已儲存可見密鑰之一間的匹配,則認證伺 服器514較佳的係使用與可見密鑰VKi及處理器5〇〇相關聯 之不可見密鑰IKi加密資料(此範例中為遠端程式)。安全伺 服益512接著將已加密資料發送至中間實體5ι〇,例如採用 網際網路。 儘管中間實體510獲得提供給安全伺服器512之資料的已 饴版本中間貫體51〇並不具有關於處理器5〇〇之不可見 密鑰IKi的任何貝訊。在此方面,安全伺服器川係經過授 權之實體,因為其具有處理器之安全記憶體5〇4内包含 、不可見&鑰IKi之知識。雖然任何實體,例如中間實體 Μ可具有任何給定處理之可見密餘呢的知識,僅經過 授權之實體’例如安全伺服器512,具有不可見㈣m及/ 或其與特定可見密鑰VKi的關聯性之知識。 中間實體510接著可向處理器5〇〇發送已加密資料,例如 藉由網際網路’或任何其他適當機制。根據處理器·之操 作能力,PU 304促進從中間實體⑽的已加密資料之接收以 106475.doc -40- 1284811 及”亥等資料在共享DRAM 3 14内之儲存。較佳的係處理器 恰在或大約在PU 304使已加密資料健存於共享dram 314時處於安全操作模式中。因此,當ro3〇4啟動已加密資 料從共享DRAM 3丨4至處理器500之局部記憶體35〇的傳送 時,此類已加密資料必須穿過解密單元5〇2。因此,解密單 元502利用儲存於處理器5〇〇之安全記憶體5〇4内的不可見 密鑰IKi解密已加密資料。其優點在於,以安全方式將中間 φ 貫體510所發出之已解密資料儲存於處理器500之局部記憶 體35〇内。事實上,安全模式中,pu 3〇4及任何其他外部實 體皆無法從局部記憶體350獲得資料,且處理器5〇〇可操控 此類資料而不經受盜錄。 現在參考圖12,其係圖π之系統的方塊圖,該系統採用 替代方法以利用處理器500之安全特徵。如同上文參考圖u 所說明之方法,中間實體51〇獲得與處理器5〇〇相關聯之可 見密鑰VKi。但與該方法不同,中間實體510使用對稱密鑰1 φ 加密至少該等資料(例如遠端程式)。例如,中間實體5 1 〇所 使用之加密技術可為眾所周知的高級加密標準(Advanced Encryption Standard ; AES),其致動一或多個對稱密鑰之使 ,用,以加密及解密敏感資料。應注意中間實體5 1 〇可利用對 稱密鑰1加密資料及可見密鑰VKi兩者。任何情形中,中間 實體510較佳的係將已加密資料(以及可見密鑰vKi)發送至 安全實體5 12。認證伺服器5 14較佳的係可操作以接收已加 密資料及可見密鑰VKi,以及利用對稱密鑰2將其解密。 一旦認證伺服器514已獲得已解密資料及可見密鑰VKi, 106475.doc -41 - 1284811 其搜尋資料庫514以找到可見密鑰一不可見密鑰對。若獲得 從中間實體5 10接收之可見密鑰VKi與資料庫516内之已储 存可見密鑰之一間的匹配,則認證伺服器5 14較佳的係使用 與可見密鑰VKi及處理器500相關聯之不可見密鑰IKi加密 資料。認證伺服器514亦利用對稱密鑰2加密該等已加密資 料,以獲得加密已加密資料。安全實體5 12接著將加密已加 密資料發送至中間實體5 10。 中間實體510較佳的係接 密鑰1將其解密,以獲得藉由不可見密鑰IKi加密之資料。 中間實體510接著可向處理器5〇〇發送已加密資料,例如藉 由網際網路,或任何其他適當機制。pu 3〇4促進已加密資 料從中間實體51〇之接收以及其在共享DRAM 314中之儲 存。較佳的係處理器500恰在或大約在PU3〇4使已加密資料 儲存於共享DRAM 314時處於安全操作模式中。當pu 3〇4 啟動已加密資料從共享DRAM 314至處理器5〇〇之局部記憶 體350的傳送時,此類已加密資料必須穿過解密單元術。 因此,解密單元502利用儲存於處理器5〇〇之安全記憶體5〇4 内的不可見密繪IKi解密已加密資料。其優點在於,以安全 方式將中間實體51G所發出之已解密資料儲存於處理器別 實體350内。安全模式中,PU304及任何其他外部
1體白無法不經處理器500士刃蛾工"乂 D u ”心5且而攸局部記憶體350獲得資 科規因處理請可操控此類資料而不經受盜錄。 採用另1圖13至14,其係圖11之系統的方塊圖.,該系統 另—替代方法以利用處理器_之安全特徵。根據本發 106475.doc -42- 1284811
明之此具體實施例,資料包括解密程式及對稱密鑰(例如根 據RSA協定)。中間實體510利用對稱密鑰1(其較佳的係僅中 間實體5 1 〇及任何可信實體知道的秘密密鑰)加密解密程式 及對.稱雄鍮2。應注意,中間實體51〇亦可與解密程式及對 稱密鑰2 一起加密處理器500之可見密鑰VKi。任何情形中, 中間實體510將已加密解密程式/對稱密鑰2及可見密鑰VKi 發送至安全伺服器512。認證伺服器514較佳的係可操作以 利用對稱密鑰2解密已加密資料,以獲得解密程式及可見密 鑰VKi(假定其亦與解密程式一起得以加密密鑰2較佳的 係公用密鑰,因為其他實體亦可知道密鑰2之細節。(還應 注意認證伺服器514所使用的公用密鑰2可不同於與解密程 式一起付以加密之公用密鑰2。)認證伺服器514接著搜尋資 料庫516以獲得匹配已接收之可見密鑰VKi的可見密鑰—不 可見密鑰對。若獲得匹酉己,認證祠服器514較佳的係使用與 可見密鑰VKi及處理器500相關聯之不可見密鑰⑻加密解 密程式及對稱密鑰2。認證祠服器514同樣較佳的係利用對 稱密鑰2(例如利用RSA加密技術)加密已加密資料。安全祠 服器512接著向中間實體510發送加密已加密資料(例如解 密程式及對稱密鑰2),例如利用網際網路。 中間實體510較㈣係利用對稱(秘密)密鑰1解密加密已 加密資料,以獲得已加密資料。此時,中間實體5H)具有解 密程式及對稱(公用)密鑰2,1 p姑丄 μ ^其已稭由不可見密鍮IKi加以加 禮、。中間實體510接者可向虛理 π慝理益500發送已加密資料(解密 程式及對稱密鑰2),例如藉由 稽由網際網路。如同先前具體實 106475.doc -43. 1284811· 施例’ PU 304促進已加密資料從中間實體5 10之接收、其在 共享DRAM 3 14中之儲存以及已加密資料透過解密單元5〇2 之傳送’以便以安全方式將解密程式及對稱密鑰2儲存於處 理器500之局部記憶體35〇内。 此時,將處理器放置於”安全模式”内,例如上述第三模 式。更特定言之,第三模式中,處理器5〇〇可啟動資訊進入 或離開處理器500之傳送,但任何外部器件(例如pu 304)則 不能。 雖然此有利地使處理器500可以安全方式操控解密程式 及對稱密餘2,其也以簡化方式提供稍後之安全資料傳送, 以下將參考圖I4予以詳細說明。 中間實體510較佳的係利用對稱(公用)密鑰!加密其他資 料’並將其發送至處理器5〇〇,例如利用網際網路或任何其 他適當機制。應注意中間實體51〇用以加密其他資料之私有 密鑰1不必與用於加密需要傳輸至安全伺服器512的解密程 式之私有密鑰1相同。PU 3 04促進已加密資料從中間實體 5 10之接收以及其在共享dram 3 14中之儲存。應注意在本 發明之此具體實施例中,處理器5〇0不必處於操作之”隔離 模式11。回顧以上說明,在隔離模式(第二模式)中,處理器 500及任何器件皆無法啟動資訊進入或離開處理器5〇〇之傳 送。事實上,處理器500或pu 3 (Μ可啟動已加密資料從共享 DRAM 314至局部記憶體35〇之傳送,而繞過解密單元5〇2。 此係由於其他資料係利用對稱(私有)密鑰1來加以加密,且 PU 304及任何其他外部實體皆不具有安全地儲存於局部記 106475.doc -44· 128481} 憶,350的解密程式或對稱(公用)密錄2之知冑或存取權。處 里、裔5〇0接著可利用解密程式及對稱密錄2解密其他已加密 資料。其優點在於,處理器细以安全方式接收其他資料並 ° 乂相同方式接收其他資料,而無需借助於安全操作模式。 現在參考圖15,其係顯示兩個處理器5〇OA及500B之方塊 八ΊΓ操作以在網際網路或任何其他適當通信通道或機 制上彼此通信。根據本發明之此具體實施例,每一處理器 • 5〇〇A、5嶋接收一加密/解密程式及-對稱密鑰,較佳的係 利用參考圖13的上述方法。更特定言之,處理器5 〇〇 a較佳 的係接收加密/解密程式及對稱密鑰2,而處理器5〇〇B接收 加毪/解雄.式及對稱密鑰丨。較佳的係加密/解密程式及對 稱密鑰附加於AES加密方法。 現在詳細說明處理器5〇〇A與處理器5〇〇B間的安全資料 傳送(亦稱為點對點通信)。特定言之,處理器5〇〇B可利用 局部記憶體350B内之加密/解密程式及對稱密鑰1加密其他 _ 資料。處理器5〇〇B接著可將其他已加密資料從局部記憶體 350B傳送至共享DRAM 314]3。PU 304B接著可藉由網際網 路將其他已加密資料從共享DRAM 3 14B傳送至與處理器 5 00八相關聯之?11 304八。?11 304八接著可傳送與處理器500八 相關聯之共享DRAM 3 14A内的其他已加密資料。處理器
500A或PU 304A接著可將已加密其他資料從共享DRAM 314A傳送至局部記憶體350A,而繞過解密單元502A。一旦 處於局部記憶體3 5 0 A内,可利用加密/解密程式及對稱密錄 2解密其他已加密資料。其優點在於,可在處理器500B與處 106475.doc •45- 1284811 理器500A間傳送其他資料,而無需與中間實體5 1〇(圖13)進 一步通信。 亦可利用與上述技術實質上相同之技術將其他資料從處 理器500A傳送至處理器500B。事實上,處理器5〇〇A可利用 加密/解密程式及對稱密鑰2加密其他資料,並將其傳送至 共子DRAM 3 14A。PU 3 04A可經由網際網路將此類其他已 加密資料從共享DRAM 3 14A傳送至與處理器500B相關聯 • 之PU 304B。PU 304B可將其他已加密資料傳送至與處理器 500B相關聯之共享DRAM 314B。處理-5〇〇B4pu 3〇扣接 著可將其他已加密資料從共享DRAM 3 14B傳送至局部記憶 體350B,此處利用加密/解密程式及對稱密鑰2將其加密。 另外,其他資料從處理器500A至處理器5〇OB之安全傳送可 不用進一步採用中間實體510或安全伺服器512(圖13)而完 成。 現在參考圖16及17,其係與圖1丨及/或圖12之系統實質上 • 相同的系統之方塊圖,其中採用另一替代方法以利用若干 處理器500之安全特徵。根據本發明之此具體實施例,中間 實體510(其可為分佈伺服器)向安全伺服器512傳送解密(或 解碼)程式及對稱密鑰2,較佳的係在上述安全路徑上。中 間貫體510另外較佳的係發送與各處理器相關聯之個別可 見密鑰VKi,其將以安全方式參與其他資料之傳輸。安全伺 服器512向中間實體51〇發送解碼程式及對稱密鑰2之已加 密版本,此處採用與接收之可見密鑰VKi之個別密餘相關聯口 的特定不可見密鑰IKi加密各版本。中間實體51〇接著向個 106475.doc -46- 1284811· 別處理器500A、500B....... 500i發送已加密解碼程式及對 稱雄鑰2之個別版本。各處理器較佳的係處於安全操作模 式’以便已加密解碼程式及對稱密鑰2之個別版本必須穿過 個別解密單元5〇2A、5〇2B.......5〇2丨。因此,各處理器 500A、500B、 ……500i獲得其相關聯局部記憶體350A、 350B、 35Oi内之解碼程式及對稱密鎗2。 之後,中間實體51〇可向處理器5〇〇之每個發送其他資料
之一版本,例如分佈程式,其已藉由對稱密鑰1加密(圖17)。 處理器5GG之每個接著可利用位於其個別局部記憶體35〇内 的解碼程式及對稱密鑰2解密其他已加密資料。其優點在 於,可以安全方式發送其他資料’而不需要用於各束盥處 理器則之不同版本。在此方面,解碼程式可視為使用者" 車票",其使特定處理器500可接收其他資料,例如電影、 音樂、遊戲程式等等。由於該車票僅對特定處理器_或 使用者)有效,僅該使用者可接收及解密已加密分佈程式。 然而’分佈飼服器510僅需要準備一版本之分佈程式,: 管已被加密,仍可藉由經過授權之處理器來解密。^ 攸工乂 一穴……3掏立或人 地加以使用,以完成各種安全操作,例如可信碼之處理: 分佈二事實上,可驗證可信碼之來源,並決定可信 已被篡改。此外,本發明可用於鑑別資料 ^疋 配資料内$’管理系統權限’處理電子商務付款女=分 對點並管理用戶端對伺服器鑑 ,、s理點 由在啟動前㈣及驗證操作系統未被1改 用於错 貝現給定處理 106475.doc -47- 1284811· 二::全:動程序。本發明之用途並非完整地加以列舉,· 心本技藝者應明白本發明之用途數量I多,難 以--列舉。 产圖Μ ’其說明如何依據本發明之各個方面採用 彳之另一乾例。更特定言之,圖18顯示在資料匯 轉及/或任何其他通信鏈路上彼此通信之複數個處 益6〇〇A、6〇〇B........6_的方塊圖。至少處理器600 之‘,隔離#,因為其局部記憶體内之資料不經同意無 法獲得。換言之,-或多個處理器_處於上述安全操作模 式。在圖18所說明之範例中,處理器6·、咖、⑼犯及 600E處於安全操作模式,而處理器⑹化及嶋卩處於不安全 喿作模式除非另外准許,安全及不安全處理器皆可從安 王處理态之局部記憶體接收資料。因此,不安全處理器6獄 無法從處理H6GGB之局部記憶體單方面獲得f料。同樣, 女王處理器600E無法從安全處理器6〇〇B之局部 面獲得資料。因此,任何處理器_可從不安全處理器= 部記憶體單方面獲得資料。然而,當獲得准許時,例如藉 由手動協作,伺服器處理器(例如處理器6〇〇A)可使另一處 理态(例如處理器600B)可從其局部記憶體單方面獲得資 料。 例如,以上系統可用於資料安全非常重要的多方商業投 機官理。例如,處理器60〇八及6〇〇]3可為管理實體,其包含 專有内容及/或在投機中向其他方提供鑑別功能。因此,處 理器600D及600E可鑑別内容,例如驗證及/或加密内容,以 106475.doc •48- 128481l· 便猶後使用處理器600A及/或處理器600B進行分配或處 理。在此方面,處理器60〇D及600E可視為領執照者之管理 實體。另外’第三方内容可在不安全處理器6〇〇(:及6〇〇F上 獲得及/或處理。 雖然已參考特定具體實施例來說明本發明,但應明白, 這些具體實施例僅係用以說明本發明的原理及應用。因此 應瞭解,可以對說明性的具體實施例進行各種修改,並且
可在不脫離隨附申請專利範圍所定義之本發明的精神及範 驚下设δ十出其它配置。 產業上的利用可能性 本發明可應用於針對使用多處理器架構之安全資料處理 的技術。 【圖式簡單說明】 ▲為達到解釋的㈣’圖式中所顯示的係本發明目前之一 較佳形式,然而’應瞭解,本發明並不限於所示刻板配置 與機制。 示範性電腦網路之 圖1說明根據本發明之一或多方面的 總體架構; 圖2係說明根據本發明之 方塊圖; 一或多方面的多處理器系統之 圖3係說明根據本發明之_或多方面的圖2之系統的安全 電路之結構的方塊圖; 圖4係流程圖,其說明可由 發明之一或多方面的
Ra^ ^.. 由圖2之糸統執行以實現根據本 別例行程式之程序步驟的一部分; 106475.doc -49- 1284811·
圖$係流程圖,其說明可由圖2之系統執行以實現根據本 發明之-或多方面的鑑別例行程式之程序步驟的H 圖6係流程圖,其說明可由圖2之系統執行以實現根 發明之-或多方面的鑑別例行程式之程序步驟的_部分. 圖7係說明可用於實施本發明之一或多個其他方面:較 佳處理器元件(PE)之方塊圖; 圖8係方塊圖,其說明可根據本發明之一或多個其他方面 加以调適的圖7之系統的示||性子處理單元(spu)之結構; 圖9係方塊圖,其說明可根據本發明之一或多個其他方面 加以調適的圖7之系統的示範性處理單元(pu)之結構,· 圖_具有根據本發明之—或多方面的安全特 器的方塊圖; 圖11係使用®1G之處判㈣用本發明之特定安全特徵 的系統之方塊圖;
圖12係使用圖1〇之處理器 特徵的系統之方塊圖; 圖13係使用圖1 〇之處理器 特徵的系統之方塊圖; 以利用根據本發明之其他安全 以利用根據本發明之其他安全 進一步細節; 器以利用根據本發明之其他安全 圖14說明圖13之系統的 圖1 5係使用圖1 〇之處理 特徵的系統之方塊圖; 圖16係使用圖1 〇之處理号 特徵的系統之方塊圖,· 以利用根據本發明之其他安全
17說明圖16之系統的 進一步細節;以及 106475.doc •50- 1284811 圖1 8係利用根據本發明之一或多個其他方面的複數個處 理器之系統的方塊圖。 【主要元件符號說明】
1 電腦系統 2 軟體單元 4 網路 6 用戶端電腦 8 伺服器電腦 10 個人數位助理 12 數位電視 100 處理系統 102A 處理器 102B 處理器 102C 處理器 102D 處理器 104A 局部記憶體 104B 局部記憶體 104C 局部記憶體 104D 局部記憶體 106 共享記憶體 108 匯流排系統 109 局部記憶體 150 安全電路 152 秘密資料區域 106475.doc 51 1284811·
154 可存取資料區域 156 邏輯電路 300 處理器元件 302 輸入/輸出介面 304 處理單元 304A SPU核心 304B 記憶體流控制器 308 子處理單元 308A 子處理單元 308B 子處理單元 308C 子處理單元 308D 子處理單元 310A SPU核心 310B 記憶體流控制器 311 記憶體介面 312 PE匯流排 314 記憶體 314A 共享DRAM 315 高頻寬記憶體連接 350 局部記憶體 350A 局部記憶體 350B 局部記憶體 352 指令單元 354 暫存器 106475.doc -52- 1284811
356 浮點執行級 358 定點執行級 359 暫存器 360 直接記憶體存取控制器 362 記憶體管理單元 364 匯流排介面單元 370 L1快取記憶體 372 指令單元 374 暫存器 376 浮點執行級 378 定點執行級 380 匯流排單元 382 L2快取記憶體 384 非可快取單元 386 核心介面單元 388 記憶體管理單元 500 處理器 500A 處理器 500B 處理器 502 解密單元 502A 解密單元 502B 解密單元 504 安全記憶體 510 中間實體 106475.doc -53- 1284811 512 安全實體 514 認證伺服器 516 資料庫 600 處理器 600A 處理器 600B 處理器 600C 處理器 600D 處理器 600E 處理器 600F 處理器
106475.doc 54-
Claims (1)
- •12848 Μί39946號專利申請案 中文申睛專利範圍替換本(96年2月) 〜 十、申請專利範圍: #上二 l 一種安全資料處理及傳輸之裝置,其包含 一局部記憶體; 八可操作以向及從該局部記憶體· -或多個算術處理單元,其 貧訊, 4. . lL , 八j保作以處理資料並且可 刼作性耦合至該局部記憶體;以及一安全電路, 式之至少一個内 之一: 其可操作以將該裝置放置於兩個操作模 ,其中該等兩個操作模式包括以下各項 在模式’藉此該裝置及一外部器件可啟動資訊 L排上進人或離開該局部記憶體之-傳送,以及 一第二模式’藉此該裝置 > J级動貝訊在該匯流排上進入 或離開該局部記憶體之一傳逆 得送仁該外部器件不能啟動 貢訊在該匯流排上進入或籬 飞離開該局部記憶體之一傳送; 以及(ϋ) 一第一模式,藉此該梦署芬 — al* 來 精逆裝置及該外部器件皆不能啟動 >訊在该匯流排上進入或離間兮 疋、4離開該,己憶體之一傳送,以及 該第三模式。 2·如請求項1之裝置,其中當該梦 田茨衮置運仃一鑑別例行程式 時,該安全電路將該裝置放置於該第二模心。 3·如請求項1或2之裝置,其中: 該安全電路包括該安全電路外 电格外部之斋件不可存取的一 秘密資料區域,並且該秘密資彳 么貝针&域包含一第一密鑰及 一第二密鑰; 106475-960214.doc 12848 ll· 該安全電路包括該安全電路外部之器件可存取的一可 存取資料區域;以及 該安全電路包括邏輯電路,其在該裝置處於該第二模 式時可操作以將該第一密鑰之一副本放置於該可存取資 料區域内。 4·如请求項3之裝置,其中在使用該裝置前在一可控程序中 將該第一密鑰及該第二密鑰儲存於該秘密資料區域内, 藉此保持安全。 5·如請求項3之裝置,其中: 該安全電路較佳的係在該裝置運行一鑑別例行程式時 將該裝置放置於該第二模式中,其包括執行一解密程式 及執行一鑑別程式,該鑑別程式包括該第二密鑰之一副 本’並且已根據該第一密鑰加密該鑑別程式;以及 該裝置執行該解密程式,以便將該可存取資料區域内 包含的該第一密鑰之該副本用於解密該鑑別程式。 6·如請求項5之裴置,其中·· 該安全電路之該邏輯電路對該鑑別程式之該執行作出 ^ 將該第一密鑰之一副本放置於該可存取資料區域 内;以及 該邏輯電路執行一決定,即該鑑別程式内包含的該第 一密鑰之該副本是否匹配該可存取資料區域内包含的該 第二密鑰之該副本。 7.如請求項5之奘甚 ^ ^ 衣罝’其中該安全電路可操作以將該褒置放 置於該等第三操作模式中,在該鑑別程式内包含的該第 106475-960214.doc 1284811' 二密鑰之該副本匹配該可存取資料區域内包含的該第二 费鑰之該副本時進入該第三模式。 8·如請求項3之裝置,其中在使該裝置進入該第三模式之該 放置别清除該可存取資料區域内包含的該等第一及第二 密鑰之該等副本。 9·種置放於一單一器件内之複數個處理單元,該等處理 單元之至少兩個包含·· 一局部記憶體; 一匯流排,其可操作以向及從該局部記憶體載送資訊; ^ 一或多個算術處理單元,其可操作以處理資料並且可 操作性耦合至該局部記憶體;以及 、一安全電% ’其可操#以將該裝置放置於兩個操作模 式之至乂 一個内,其中該等兩個操作模式包括以下各項(1)第一模式,藉此該裝置及一外部器件可啟動資訊 在該匯流排上進人或離開該記憶體之-傳送,以及一第 三模式,藉此該裳置可啟動資訊在該匯流排上進入或離 開:亥。己隱體之一傳送’但該外部器件不能啟動資訊在該 匯流排上進入或離開該記憶體之一傳送;以及 (ii) 一第二模式, 資訊在該匯流排上 該第三模式。 藉此該裝置及該外部器件皆不能啟動 進入或離開該記憶體之一傳送,以及 10. 一種安全資料處理及傳輸之方法,其 將一裝置放置於複數個操作模式之 包含: 至少一個操作模式 106475-960214.doc 128481Γ 中,其中: 該裝置包括一局部記憶體 憶體載送資訊之一匯流排、 作性耦合至該局部記憶體之 可操作以將該裝置放置於該 ;以及 、可操作以向及從該局部記 可操作以處理資料並且可操 一或多個算術處理單元以及 等操作模式内之一安全電路該複數個操作模式包括以下各項之一· ⑴-第-模式’藉此該裝置及一外部器件可啟動資訊 在該匯流排上進人或離開該記憶體之—傳送,以及一第 三模式’藉此該裝置可啟動資訊在該匯流排上進入或離 開該記憶體之一傳送’但該外部器件不能啟動資訊在該 匯流排上進入或離開該記憶體之一傳送;以及 ⑼-第二模式,藉此該裝置及該外部器件皆不能啟動 資訊在該匯流排上進入或離開該記憶體之一傳送,以及 該第三模式。 11·如請求項ίο之方法,其進一步包含當該裝置運行一鑑別 例行程式時將該裝置放置於該第二模式中。 12.如請求項1〇或11之方法,其中·· 該安全電路包括該安全電路外部之器件不可存取之一 秘密資料區域,該秘密資料區域包含一第一密输及一第 二密鑰,並且該安全電路包括該安全電路外部之器件可 存取之一可存取資料區域;以及 該方法進一步包含當該裝置處於該第二模式内時將該 第一密鑰之一副本放置於該可存取資料區域内。 106475-960214.doc -4- 1284811* 13.如請求項12之方法,其進一步包含在使用該裝置前在— 可控程序中將該第一密鑰及該第二密鑰儲存於該秘密資 料區域内,藉此保持安全。 14·如請求項12之方法,其進一步包含:在該裝置運行一鑑別例行程式時將該裝置放置於該第 二模式中,其中該例行程式包括執行一解密程式及執行 一鑑別程式,該鑑別程式包括該第二密鑰之一副本,並 且已根據該第一密鑰加密該鑑別程式;以及 執行該解密程式,以便將該可存取資料區域内包含的 該第一密鑰之該副本用於解密該鑑別程式。 15.如請求項14之方法,其進一步包括: 對该鑑別程式之該執行作出回應,將該第二密鑰之一 副本放置於該可存取資料區域内;以及 決定該鑑別程式内包含的該第二密錄之該副本是否匹 配該可存取資料區域内包含的該第二㈣之該副本。 16·如請求項14之方法,其中可進人該等三個模式之任何模 式,並且該方法進一舟治入 、 ^ 步包含當該鑑別程式内包含的該 •一猶输之該副本匹配兮+ 配该可存取資料區域内包含的該第- 欲餘之该副本時,將兮驶 將该裝置放置於該第三模式内。 17·如請求項12之方法,复推 ’、一步包含在使該裝置進入兮笛 三模式之該放置前清除分, 〜弟 該可存取資料區域内包含的該等 第一及第二密鑰之該等副本。 寻 18· —種安全資料處理及僂 1寻輸之裴置,其包含: 一主要處理單元; 106475-960214.doc 1284811· 複數個附著處理單元,各附著處理單元包括一局部記 憶體及-解密單元,並且各附著處理單元可操作以進: 一正常操作模式或一安全操作模式;以及 一共享記憶體,其中:該主要處理單元能夠啟動該共享記憶體與該等附著處 料元之-給定附著處理單元間的資料傳輸,當該給定附 者處理早%處於該正常模式時其繞過該解密單元,以及 該主要處理單元能夠:⑴啟動該給定附著處理單元至 該共享記憶體之資料傳送;或者(ii)啟動該共享記情體至 该給定附著處理單元之資料傳送’當該給定附著處理單 兀•處於該安全模式時其繞過該解密單元。 19.如請求項18之裝置,其中該 It處理早兀能夠啟動與 該,、予記憶體之資料傳送,而不从 不,其疋處於該正常操作 模式還是該安全操作模式。2°.=項18或19之裝置,其中該等附著處理單元可操作 以根據-硬體重設狀況及—啟動狀況 安全操作模式。 夕項進入該 21.如請求項18或19之裝置,其中 式之至少部分。 其中以貝枓可包括一軟體程 22. 23. 如請求項18或19之裝 全儲存器,其包含一 該給定附著處理單元 以及經過授權的實體 如請求項22之裝置, 置’其中各附著處理單元包括一安 實質上唯-的麵’該密餘僅可由 的該解密單元之至少一個來存取, 〇 其中各附著處理單元之該解密單元 106475-960214.doc 1284811- 使用该密鑰來解密從該共享記憶體至該局部記憶體之資 料傳送,其係在該給定附著處理單元處於該安全操作模 式時由該主要處理單元來啟動。 24·如請求項22之裝置,其中該共享記憶體可包含已加密資 料’其已使用該等附著處理單元之該等實質上唯一的密 输之一來加密。 25·如請求項22之裝置,其中各附著處理單元與一實質上唯 • 一的1D以及該裝置相關聯,該ID可係給定附著處理單元 之至少一個外部的實體已知的。 26. 如請求項24之裝置,其中藉由該裝置外部之一安全實體 加密該等已加密資料,該安全實體係經過授權以使用該 給定附著處理單元之該密鑰。 27. 如請求項22之裝置,其中該安全實體包括一資料庫,其 包含參與附著處理單元之該等ID及密鑰,用於一給定附 著處理單元之各ID及密鑰彼此相關聯。 • 28·如請求項22之裝置,其中在該不安全實體向該安全實體 提供與該密鑰相關聯之一 10後,該安全實體採用一給定 附著處理單元之該密錄加密從一不安全實體接收並且未 經授權以使用該給定附著處理單元之該密鑰的資料。 29.如請求項28之裝置,其中·· 該安全實體可操作以向該不安全實體提供該等已加密 資料; 該不安全實體可操作以向該裝置提供該等已加密資料 ,以便儲存於該共享記憶體内; 106475-960214.doc 1284811 該 ^主要處理早:可操作以啟動該等已加密資料從該共 旱圮憶體至該給定附著處理單 _ 、 处理早兀之一傳送,以便將該等 已加雄、為料輸入該解密單元;以及 該給定附著處理單元之該解密單元可操作以使用㈣ 定附著處理單元之該密餘解密該等已加密資料,以便將該 等資料儲存於該給定附著處理單元之該局部記憶體内。 3 0.如請求項22之裝置,其中: 給定附著處理單元之該密鑰的一不 對稱密鑰加密該等資料,向該安全 未經授權以使用一 安全實體使用一第一 實體提供該等已加密資料,並向該安全實體提供與一給 定附著處理單元相關聯之一 m ; 該安全實體使用一第二對稱密鑰解密該不安全實體所 k供之該專已加禮、資料,並使用與從該不安全實體接收 之該ID相關聯的該給定附著處理單元之該密鑰加密該等 資料。 31·如請求項30之裝置,其中該不安全實體使用該第一對稱 密鑰加密該等資料及該給定附著處理器單元之該ID,並 向該安全實體提供該等已加密資料/ID。 32.如請求項3〇之裝置,其中: 該安全實體可操作以使用該第二對稱密鑰加密該等已 加密資料’並向該不安全實體提供該等加密已加密資料 該不安全實體可操作以使用該第一對稱密鑰解密該等 加密已加密資料,以獲得使用該給定附著處理單元之該 106475-960214.doc 1284811- 松鑰產生的該等已加密資料,以及向該裝置提供該等已 加密資料,以便將其儲存於該共享記憶體内; 〜#處理單元可操作以啟動該等已加密資料從該共 享己It體至該給疋附著處理單元之—傳送,以便將該等 已加密資料輸入該解密單元;以及 —該較附著處理單元之該解密單元可操作以使用該給 定附著處理單元之該密鑰解密該等已加密資料,以便將該 φ 等資㈣存於該給定附著處理單元之該局部記憶體内。 33.如請求項22之裝置,其中: 该等資料為一解密程式; 未經授權以使用—、給定附著處理單元之該密㈣一不 安王實體使用一第一對稱密鑰加密該解密程式,向該安 全實體提供該已加密解密程式’並向該安全實體提供與 一給定附著處理單元相關聯之一 ID ;以及 該女全實體使用一第二對稱密錄解密該不安全實體所 • 提供之該已加密解密程式,並使用與從該不安全實體接 收之該ID相關聯的該給定附著處理單元之該密鑰加密該 解密程式及該第二對稱密鑰。 34·如請求項33之裝置,其中該不安全實體使用該第一對稱 密鑰加密該解密程式及該給定附著處理器單元之該ID, 並向該安全實體提供該已加密解密程式/ID。 35.如凊求項33之裝置,其中該不安全實體使用該第一對稱 密鑰加密該解密程式、該給定附著處理器單元之該1〇以 及該第二對稱密鑰,並向該安全實體提供該已加密解密 106475-960214.doc •1284811· 程式/ID/第二對稱密鑰。 36.如請求項33之裝置,其中: 該安全實體可操作以使用該第二對稱密鑰加密該已加 密解密程式及該第二對稱密鑰,並向該不安全實體提供 該加密已加密解密程式/第二對稱密鑰; 該不安全實體可操作以使用該第一對稱密鑰解密該加 密已加密解密程式/第二對稱密鍮,以獲得使用該給定附 鲁 者處理單元之該密鑰產生的該已加密解密程式/第二對稱 雄、鑰’以及向該裝置提供該已加密解密程式/第二對稱密 鑰’以便將其儲存於該共享記憶體内; 该主要處理單元可操作以啟動該已加密解密程式/第二 對稱密鑰從該共享記憶體至該給定附著處理單元之一傳 送’以便將該已加密解密程式/第二對稱密鑰輸入該解密 單元;以及 該給定附著處理單元之該解密單元可操作以使用該給 • 定附著處理單元之該密鑰解密該已加密解密程式/第二對 稱畨鑰,以便將該已加密解密程式及該第二對稱密鑰儲 存於該給定附著處理單元之該局部記憶體内。 37·如凊求項36之裝置,其中不安全實體可操作以使用第一 對稱密餘加密資料並向該裝置提供該等已加密資料,以 便將其儲存於該共享記憶體内。 3 8·如π求項36之&置’纟中該給定附著處理單元能夠從該 /、享圮憶體接收該等已加密資料並繞過該解密單元將其 傳送至該局部記憶體内。 106475-960214.doc .1284811 39.如請求項38之裝置,其中卷 加密資料並將其傳送至:二 記憶體接收該等已 卢理單… 部記憶體内時,該給定附著 處早70可處於該正常模式或該安全模式。 40·如請求項36之裝詈,1击 八一給定附著處理單元可摔作以 使用該解密程式另钤筮 平凡』ί呆作以 料。 μ第一對稱密鑰解密該等已加密資 41·如請求項40之裝置,其中 甲忒專貝枓可包括一軟體程式。 42·如钼求項36之裝置,其中 > ——、^主要處理早几可操作以啟動 該'已加後資料從該共享記憶體繞過該解密單元至該給 定附著處理單元該局部記憶體内的該傳送。 43. —種安全資料處理及傳輪之方法,其包含: 提供-主要處理單元、複數個附著處理單元及 記憶體’各附著處理單元包括—局部記憶體及—解^單 兀,並且可操作以進人—安全操作模式;以及 當該附著處理單元之一給定附著處理單元處於該安全 f 模式時,禁止該主要處理單元啟動從該共享記憶體至該 給定處理單元的一資料傳送’其繞過該解密單元,以便 從外部啟動的進人該局部記憶體之任”㈣送必Μ 該解密單元使料該給定附著處理單元實質上係唯一的 且僅經過授權之實體才知道的一密鎗來解密。 44·如請求項43之方法,其進一步包括·· 使該輔助處理單元可啟動與該共享記憶體之資料傳送 ,而不論其是否處於該安全操作模式。 45·如請求項43或44之方法,其進一步包含·· 106475-960214.doc • 11 - 128481Γ ,據—硬體重設狀況及—啟動狀況之至少一項使該等 附著處理單元進入該安全操作模式。 /6·如請求項“或料之方法,其進一步包含: 從一中間實體向-安全實體發送資料及與該 理單元之—給定附著處理單元相關聯之-ID ; ^ 人搜尋包含參與附著處理單元的m及相關聯密瑜之該安 全^體的―資料庫’並獲得與接收該ID的該給定附著處 理單7L相關聯之該密鑰; 处 使用與接收該ID的該給定附著處理單元相 ❹密料至該安全實體之該等資料;収 從該安王實體發送該等已加密資料至該中間實體。 47.如請求項46之方法,其進一步包括: 。。從該中間實體發送該等已加密資料至該給定附著處理 早70之共享記憶體; 當該給定附著處理單元處於該安全模式時,啟動該等 已―、資料從該共享記憶體至該給定附著處理單元之一 ' X便該解密單元使用該密输加密該等已加密資料 ;以及 贝貝Tt :該等資料儲存於該給定輔助處理單元之該局部記憶 體内。 48·如請求項43之方法,其進一步包含: 4吏用 繁 與該等附著鑰在該中間實體内加㈣等資料及 至少一項;早疋之一給定處理單元相關聯的-10之 106475-960214.doc -12- 1284811. 從該中間實體發送該等已加密資料及該ID至一安全實 體; 使用一第二對稱密鑰在該安全實體内解密該等已加密 資料及該ID之至少一項; 搜哥包含參與附著處理單元的ID及相關聯密鑰之該安 全實體的一資料庫,並獲得與接收該m的該給定附著處 理單元相關聯之該密鍮;使用與該給定附著處理單元相關聯之該密鑰在該安全 實體加密該等資料,使用該第二對稱密鑰加密該等已加 密資料;以及 從該安王實體發送該等加密已加密資料至該中間實體。 49·如請求項48之方法,其進一步包括: 使用,亥第-對稱密鑰在該中間實體解密該等加密已加 雄、資料’以獲得藉由盘該体 时 一 η、、、口疋附耆處理单元相關聯之 密鑰加密的該等資料;從該中間實體發送該等 單元之共享記憶體; 已加密資料至該給定附著處理 备$亥、、、口 附荖盧裡留— 者處理早疋處於該安全模式時,啟動哕笪 ::密:::該共享記憶體至該給定附著處理單= 傳:及便該解密單元使用該密鑰加密該等已加密資料 理單元之該局部記憶 包括⑴一解密程式, 將該等資料儲存於該給定辅助處 體内。 50.如請求項49之方法 其中該等資料 l06475-960214.doc -13- J28481T 及(ii)该第二對稱密鑰,該方法進一步包含·· 使用該第一對稱密鑰在該中間實體加密其他資料; 將該等已加密其他資料從該中間實體發送至該給定附 著處理單元,以便儲存於該共享記憶體内;以及 啟動該等其他已加密資料從該共享記憶體至該局部記 憶體之該傳送,同時該給定附著處理單元不在該安全模 式内,以便繞過該解密單元。 、 鲁 51.如凊求項5〇之方法,其進一步包括: 使用該給定附著處理單元以使用該解密程式及該第二 對稱松鑰解密該等其他已加密資料。 52·如請求項49項之方法,其中該資料包括⑴一加密/解密程 式,以及(ii)與該加密/解密程式相關聯之一對對稱密鑰之 -’以便將其儲存於該給定附著處理單元之該局部記憶 體内,該方法進一步包含: ^ 使用其他資料及另一附著處理單元重複該方法之該等 • 步驟’該等其他資料包括⑴另-加請密程式,以及⑼ 與另°亥加迸/解密程式相關聯之該對對稱密鑰之另一密 输’以便將其儲存於該另__附著處理單元之該局部記憶 53_如請求項52之方法,其進一步包括·· 附著處理單元之該一個 使用該加密/解密程式及該給定 對稱密鑰加密其他資料; 將該等其他已加密資料從該給定附著處理單 該其他附著處理單开 以庙 、 早几則更錯存於其一共享記憶體内; 106475-960214.doc -14- J284811· 以及 “啟動,等其他已加密資料從該共享記憶體至該另一附 者處理單元的該局部記憶體之該傳送,同時該另一附著 處理單元不在該安全模式内,以便繞過該解密單元。 54.如請求項53之方法,其進一步包括: 使用該另一附著處理單元以使用該另一加密,密程式 及該另一對稱密鑰解密該等其他已加密資料。 鲁 55·如請求項52之方法,其進一步包括: 使用該加密/解密程式及該另一附著處理單元之該其他 對稱密瑜加密其他資料; 將該等其他已加密資料從該另一附著處理單元發送至 該給定附著處理單元,以便儲存於其一共享記憶體内; 以及 啟動該等其他已加密資料從該共享記憶體至該給定附 著處理I ^的該局部記憶體之該傳送,同時該給定附著 Φ 處理單兀不在該安全模式内,以便繞過該解密單元。 56·如請求項55之方法,其進一步包括: 使用該、、、0疋附著處理單元以使用該加密/解密程式及該 一個對稱密鑰解密該等其他已加密資料。 57·如凊求項55之方法,其中該給定附著處理單元之該共享 記憶體與該另1著處s單元之該纟享記憶、冑係相同記 憶體。 58.如請求項49項之方法,其中該資料包括⑴一解密程式, 以及(11)與該解密程式相關聯之該第二對稱密鑰,以便將 106475-960214.doc -15- J284811- 其儲存於該給定附著處理單元之該局部記憶體内,該方 法進一步包含·· 使用其他附著處理單元重複該方法之該等步驟,以便 將該解密程式及該第二對稱密鑰儲存於該等附著處理單 元之各附著處理單元中。 59·如凊求項58之方法,其進一步包括··使用該第-對稱密齡該巾間實體加密其他資料; 將該等已加密其他㈣從該中間實體發送至該等附著 处里單7G之各個’以便儲存於該共享記憶體内;以及 啟動該4其他已加资杳祖仰兮从丄 處理單元… 旱記憶體至該等附著 著處理… 局部記憶體之該傳送,同時該等附 單:。早70不在該安全模式内,以便繞過該等個別解密 00.單元以使用該等個別解密程式及 該等其他已加密資料。 使用该荨附著處理 第二對稱密鑰解密 106475-960214.doc -16 -
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/985,354 US7502928B2 (en) | 2004-11-12 | 2004-11-12 | Methods and apparatus for secure data processing and transmission |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200636488A TW200636488A (en) | 2006-10-16 |
TWI284811B true TWI284811B (en) | 2007-08-01 |
Family
ID=35709177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW094139946A TWI284811B (en) | 2004-11-12 | 2005-11-11 | Methods and apparatus for secure data processing and transmission |
Country Status (7)
Country | Link |
---|---|
US (2) | US7502928B2 (zh) |
EP (2) | EP1836635B1 (zh) |
JP (2) | JP4386883B2 (zh) |
KR (1) | KR100924043B1 (zh) |
CN (2) | CN101084505B (zh) |
TW (1) | TWI284811B (zh) |
WO (1) | WO2006052017A2 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060026417A1 (en) * | 2004-07-30 | 2006-02-02 | Information Assurance Systems L.L.C. | High-assurance secure boot content protection |
US20060155955A1 (en) * | 2005-01-10 | 2006-07-13 | Gschwind Michael K | SIMD-RISC processor module |
US7516315B2 (en) * | 2005-03-18 | 2009-04-07 | Research In Motion Ltd. | Electronic device having an alterable configuration and methods of manufacturing and configuring the same |
US20060288209A1 (en) * | 2005-06-20 | 2006-12-21 | Vogler Dean H | Method and apparatus for secure inter-processor communications |
US8189788B2 (en) * | 2005-07-15 | 2012-05-29 | Tyfone, Inc. | Hybrid symmetric/asymmetric cryptography with user authentication |
US8477940B2 (en) * | 2005-07-15 | 2013-07-02 | Tyfone, Inc. | Symmetric cryptography with user authentication |
FR2892838B1 (fr) * | 2005-10-28 | 2008-04-25 | Michael Vergoz | Gestionnaire specialise de flux entre le processeur et la memoire a acces aleatoire |
US8688856B2 (en) * | 2006-01-24 | 2014-04-01 | Novell, Inc. | Techniques for managing a network delivery path of content via a key |
KR100891093B1 (ko) | 2006-05-09 | 2009-03-31 | 삼성전자주식회사 | 보안 데이터의 안전한 이동을 제공하는 장치 및 방법 |
US7949130B2 (en) * | 2006-12-28 | 2011-05-24 | Intel Corporation | Architecture and instruction set for implementing advanced encryption standard (AES) |
EP2164020B1 (en) * | 2007-05-11 | 2014-02-26 | Nagrastar L.L.C. | Apparatus for controlling processor execution in a secure environment |
US8625793B2 (en) | 2007-06-11 | 2014-01-07 | Qualcomm Incorporated | Resynchronization for push message security using secret keys |
KR100915589B1 (ko) * | 2007-07-12 | 2009-09-07 | 엔에이치엔비즈니스플랫폼 주식회사 | 보안 인증 시스템 및 방법 |
US8515052B2 (en) * | 2007-12-17 | 2013-08-20 | Wai Wu | Parallel signal processing system and method |
US8826037B2 (en) * | 2008-03-13 | 2014-09-02 | Cyberlink Corp. | Method for decrypting an encrypted instruction and system thereof |
US8959200B2 (en) * | 2008-07-01 | 2015-02-17 | Ortho-Clinical Diagnostics, Inc. | Event-based communication in a clinical diagnostic analyzer |
US8566286B1 (en) | 2009-05-15 | 2013-10-22 | Idera, Inc. | System and method for high speed database backup using rapidly adjusted dynamic compression ratios controlled by a feedback loop |
US8646050B2 (en) * | 2011-01-18 | 2014-02-04 | Apple Inc. | System and method for supporting JIT in a secure system with randomly allocated memory ranges |
EP3229436B1 (en) * | 2011-11-09 | 2018-07-25 | Huawei Technologies Co., Ltd. | Retrieving data stored securely in the cloud |
US8832374B1 (en) * | 2011-11-14 | 2014-09-09 | Union Supply Company, Inc. | Providing electronic content to residents of controlled-environment facilities |
US9672574B2 (en) | 2012-03-20 | 2017-06-06 | Facebook, Inc. | Bypass login for applications on mobile devices |
US9154568B2 (en) * | 2012-03-20 | 2015-10-06 | Facebook, Inc. | Proxy bypass login for applications on mobile devices |
US20130305388A1 (en) * | 2012-05-10 | 2013-11-14 | Qualcomm Incorporated | Link status based content protection buffers |
FR2998689B1 (fr) * | 2012-11-27 | 2014-12-26 | Oberthur Technologies | Ensemble electronique comprenant un module de desactivation |
US10410003B2 (en) | 2013-06-07 | 2019-09-10 | Apple Inc. | Multiple containers assigned to an application |
CN103400086B (zh) * | 2013-07-30 | 2016-12-07 | 东莞宇龙通信科技有限公司 | 一种终端 |
CN103402019B (zh) * | 2013-07-30 | 2016-04-06 | 东莞宇龙通信科技有限公司 | 终端和数据处理方法 |
US9170957B2 (en) | 2013-08-29 | 2015-10-27 | Qualcomm Incorporated | Distributed dynamic memory management unit (MMU)-based secure inter-processor communication |
JP6265783B2 (ja) * | 2014-03-06 | 2018-01-24 | キヤノン株式会社 | 暗号化/復号化システム及びその制御方法、並びにプログラム |
KR102297383B1 (ko) * | 2014-09-25 | 2021-09-03 | 삼성전자주식회사 | 보안 데이터 처리 |
EP3048776B2 (en) * | 2015-01-22 | 2021-03-17 | Nxp B.V. | Methods for managing content, computer program products and secure element |
KR101666746B1 (ko) * | 2015-04-30 | 2016-10-17 | 성균관대학교산학협력단 | 컴퓨팅 장치의 도난 및 부정 접근으로부터 컴퓨팅 장치 내의 데이터를 안전하게 보호할 수 있는 데이터 보호 시스템 및 방법 |
US10102391B2 (en) * | 2015-08-07 | 2018-10-16 | Qualcomm Incorporated | Hardware enforced content protection for graphics processing units |
TWI560575B (en) * | 2015-10-15 | 2016-12-01 | Via Tech Inc | Microprocessor and method for securely executing instructions therein |
KR102385552B1 (ko) | 2015-12-29 | 2022-04-12 | 삼성전자주식회사 | 시스템-온-칩 및 이를 포함하는 전자 장치 |
US10209907B2 (en) * | 2016-06-14 | 2019-02-19 | Microsoft Technology Licensing, Llc | Secure removal of sensitive data |
JP6852604B2 (ja) * | 2017-07-12 | 2021-03-31 | 住友電気工業株式会社 | 車載装置、管理方法および管理プログラム |
CN109960943A (zh) * | 2019-04-02 | 2019-07-02 | 山东渔翁信息技术股份有限公司 | 一种密码设备 |
US10846413B2 (en) | 2019-04-18 | 2020-11-24 | Advanced New Technologies Co., Ltd. | Data processing method and device |
KR102147912B1 (ko) | 2019-08-13 | 2020-08-25 | 삼성전자주식회사 | 프로세서 칩 및 그 제어 방법들 |
FR3118504B1 (fr) * | 2020-12-28 | 2024-05-17 | St Microelectronics Rousset | Système électronique comprenant plusieurs microprocesseurs |
TWI847921B (zh) * | 2023-11-22 | 2024-07-01 | 立鴻半導體股份有限公司 | 記憶體內二進位浮點乘法裝置及其操作方法 |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4633388A (en) * | 1984-01-18 | 1986-12-30 | Siemens Corporate Research & Support, Inc. | On-chip microprocessor instruction decoder having hardware for selectively bypassing on-chip circuitry used to decipher encrypted instruction codes |
US5134700A (en) | 1987-09-18 | 1992-07-28 | General Instrument Corporation | Microcomputer with internal ram security during external program mode |
US7133845B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | System and methods for secure transaction management and electronic rights protection |
US6708273B1 (en) * | 1997-09-16 | 2004-03-16 | Safenet, Inc. | Apparatus and method for implementing IPSEC transforms within an integrated circuit |
US7225333B2 (en) * | 1999-03-27 | 2007-05-29 | Microsoft Corporation | Secure processor architecture for use with a digital rights management (DRM) system on a computing device |
US7600131B1 (en) | 1999-07-08 | 2009-10-06 | Broadcom Corporation | Distributed processing in a cryptography acceleration chip |
US7124170B1 (en) * | 1999-08-20 | 2006-10-17 | Intertrust Technologies Corp. | Secure processing unit systems and methods |
US6938164B1 (en) | 2000-11-22 | 2005-08-30 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
JP2002163239A (ja) | 2000-11-22 | 2002-06-07 | Toshiba Corp | マルチプロセッサシステムおよびその制御方法 |
US6959346B2 (en) * | 2000-12-22 | 2005-10-25 | Mosaid Technologies, Inc. | Method and system for packet encryption |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
US6826662B2 (en) | 2001-03-22 | 2004-11-30 | Sony Computer Entertainment Inc. | System and method for data synchronization for a computer architecture for broadband networks |
US20030037237A1 (en) * | 2001-04-09 | 2003-02-20 | Jean-Paul Abgrall | Systems and methods for computer device authentication |
CN1268088C (zh) * | 2001-11-29 | 2006-08-02 | 东南大学 | 基于pki的vpn密钥交换的实现方法 |
EP1329787B1 (en) | 2002-01-16 | 2019-08-28 | Texas Instruments Incorporated | Secure mode indicator for smart phone or PDA |
JP3866597B2 (ja) | 2002-03-20 | 2007-01-10 | 株式会社東芝 | 内部メモリ型耐タンパプロセッサおよび秘密保護方法 |
JP2003281071A (ja) | 2002-03-20 | 2003-10-03 | Seiko Epson Corp | データ転送制御装置、電子機器及びデータ転送制御方法 |
US7603550B2 (en) | 2002-04-18 | 2009-10-13 | Advanced Micro Devices, Inc. | Computer system including a secure execution mode-capable CPU and a security services processor connected via a secure communication path |
US20040003321A1 (en) * | 2002-06-27 | 2004-01-01 | Glew Andrew F. | Initialization of protected system |
US20040111563A1 (en) * | 2002-12-10 | 2004-06-10 | Edirisooriya Samantha J. | Method and apparatus for cache coherency between heterogeneous agents and limiting data transfers among symmetric processors |
US7322042B2 (en) | 2003-02-07 | 2008-01-22 | Broadon Communications Corp. | Secure and backward-compatible processor and secure software execution thereon |
JP4945053B2 (ja) | 2003-03-18 | 2012-06-06 | ルネサスエレクトロニクス株式会社 | 半導体装置、バスインターフェース装置、およびコンピュータシステム |
US7475257B2 (en) * | 2003-09-25 | 2009-01-06 | International Business Machines Corporation | System and method for selecting and using a signal processor in a multiprocessor system to operate as a security for encryption/decryption of data |
-
2004
- 2004-11-12 US US10/985,354 patent/US7502928B2/en active Active
-
2005
- 2005-11-11 EP EP05806776.0A patent/EP1836635B1/en active Active
- 2005-11-11 CN CN2005800437883A patent/CN101084505B/zh active Active
- 2005-11-11 EP EP19158500.9A patent/EP3514723B1/en active Active
- 2005-11-11 CN CN2009101523231A patent/CN101615233B/zh active Active
- 2005-11-11 KR KR1020077013169A patent/KR100924043B1/ko active IP Right Grant
- 2005-11-11 JP JP2005327282A patent/JP4386883B2/ja active Active
- 2005-11-11 TW TW094139946A patent/TWI284811B/zh active
- 2005-11-11 WO PCT/JP2005/021177 patent/WO2006052017A2/en active Application Filing
-
2009
- 2009-01-13 US US12/352,817 patent/US8001377B2/en active Active
- 2009-06-22 JP JP2009147826A patent/JP4756718B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP4386883B2 (ja) | 2009-12-16 |
EP1836635B1 (en) | 2019-02-27 |
US20090125717A1 (en) | 2009-05-14 |
CN101615233B (zh) | 2011-12-28 |
US8001377B2 (en) | 2011-08-16 |
WO2006052017A3 (en) | 2006-08-24 |
JP2006139785A (ja) | 2006-06-01 |
EP1836635A2 (en) | 2007-09-26 |
CN101084505B (zh) | 2010-04-21 |
EP3514723A1 (en) | 2019-07-24 |
KR20070086051A (ko) | 2007-08-27 |
CN101615233A (zh) | 2009-12-30 |
KR100924043B1 (ko) | 2009-10-27 |
JP2009217845A (ja) | 2009-09-24 |
US7502928B2 (en) | 2009-03-10 |
WO2006052017A2 (en) | 2006-05-18 |
CN101084505A (zh) | 2007-12-05 |
EP3514723B1 (en) | 2020-12-23 |
JP4756718B2 (ja) | 2011-08-24 |
TW200636488A (en) | 2006-10-16 |
US20060112213A1 (en) | 2006-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI284811B (en) | Methods and apparatus for secure data processing and transmission | |
US11838418B2 (en) | Protection of keys and sensitive data from attack within microprocessor architecture | |
US8001390B2 (en) | Methods and apparatus for secure programming and storage of data using a multiprocessor in a trusted mode | |
US8001592B2 (en) | Methods and apparatus for accessing resources using a multiprocessor in a trusted mode | |
US7958371B2 (en) | Methods and apparatus for secure operating system distribution in a multiprocessor system | |
US9575906B2 (en) | Method and system for process working set isolation | |
US10877806B2 (en) | Method and apparatus for securely binding a first processor to a second processor | |
US11949775B2 (en) | Network bound encryption for recovery of trusted execution environments | |
EP2577543B1 (en) | Secure virtual machine bootstrap in untrusted cloud infrastructures | |
US20080282341A1 (en) | Methods and apparatus for random number generation in a multiprocessor system | |
TWI427501B (zh) | 具安全處理庫的數位內容播放器之系統及方法 | |
US11671412B2 (en) | Network bound encryption for orchestrating workloads with sensitive data | |
EP1855476A2 (en) | System and method for trusted data processing | |
US20160188874A1 (en) | System and method for secure code entry point control | |
US8726041B2 (en) | Methods and apparatus for generating a random number in one or more isolated processors | |
TW201346612A (zh) | 使用儲存裝置以實施數位版權管理保護之方法及設備 |