TWI606359B - 於電腦系統中實施資源存取控制之方法(二) - Google Patents
於電腦系統中實施資源存取控制之方法(二) Download PDFInfo
- Publication number
- TWI606359B TWI606359B TW105112653A TW105112653A TWI606359B TW I606359 B TWI606359 B TW I606359B TW 105112653 A TW105112653 A TW 105112653A TW 105112653 A TW105112653 A TW 105112653A TW I606359 B TWI606359 B TW I606359B
- Authority
- TW
- Taiwan
- Prior art keywords
- fabric
- sai
- access
- devices
- soc
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- 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/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Description
本發明之領域大體上係有關電腦系統,更特別係但非專只有關在包括單晶片系統之電腦系統中實施資源存取控制的方法。
與電腦有關的安全問題已經變成一種不斷增大的困擾。病毒、木馬、惡意軟體及其他諸如此類者對於大部分的電腦使用者來說是已經廣為人知的常見威脅。此種威脅程度是如此普遍,以至於已經產生出完整的產業來經由利用與安全有關的軟體和服務,像是防毒、防間諜軟體、防火牆軟體等等,來解決這些困擾。
大部分的安全性攻擊是瞄準軟體階層,並且是設計來存取多種作業系統或檔案資源。例如,一個病毒可能會經由對於以隱藏方式含有此病毒碼的一個執行程式之下載,而獲得對於一個電腦系統之檔案的存取權。為了避免這種類型的攻擊,係可利用防毒軟體來「掃描」所下載的檔案以尋找已知或可疑的程式碼。由於安全性威脅的關
係,有許多使用者會使用防護軟體。
雖然較不常見,但安全性攻擊也可以是在硬體階層做出。然而,並沒有相當於防護軟體的東西來避免對於系統階層的硬體資源和資產,像是組態暫存器、範圍暫存器及其他諸如此類者,的存取。因此,許多系統架構係於用來控制對於重要系統資源之存取的以硬體為基礎的和以韌體為基礎的防護措施當中設計。這典型上係在一種逐系統基礎上完成,而導致重複設計、除蟲和驗證作業,以及跨系統設計間之安全性管理的不一致。
依據本發明之一實施例,係特地提出一種設備,其包含:一或更多個處理器核心;一第一組構,其包含用以經由一記憶體介面耦接到一記憶體之一互連體;複數個輸入/輸出(I/O)裝置;及一第二組構,其經由一介面耦接到該第一組構,該第二組構用以和該等複數個I/O裝置之至少一些I/O裝置通訊;其中,該等複數個I/O裝置的一I/O裝置係用以起始對該設備的一目標資源之一異動,該異動包含起始者(SAI)資訊的安全屬性;及其中,該第二組構係用以至少部份地基於該SAI資訊而實施用於該目標資源所界定之一存取控制政策,且回應於至少部份地基於該SAI資訊之該異動的否決,該第二組構要發送一訊息至該I/O裝置。
依據本發明之另一實施例,係特地提出一種方法,其包含:於一個電腦系統中,其具有一或更多個處理
核心、包含用以經由一記憶體介面耦接到一記憶體的一互連體之一第一組構、複數個輸入/輸出(IO)裝置、和經由一介面而耦接到該第一組構的一第二組構,該第二組構用以與該等複數個I/O裝置的至少一些I/O裝置通訊;從該等複數個I/O裝置的一I/O裝置起始對該電腦系統的一目標資源之一異動,該異動包含起始者(SAI)資訊的安全屬性;在該第二組構中至少部份地基於該SAI資訊而實施用於該目標資源所界定之一存取控制政策;及回應於至少部份地基於該SAI資訊之該異動的否決來發送一訊息至該I/O裝置。
依據本發明之又一實施例,係特地提出一種單晶片系統(SoC),其包含:一或更多個處理器核心;一第一組構,其包含用以經由一記憶體介面耦接到一記憶體的一互連體;複數個輸入/輸出(I/O)裝置;及一第二組構,其經由一介面而耦接到該第一組構,該第二組構用以和該複數個I/O裝置的至少一些I/O裝置通訊;其中該複數個I/O裝置的一I/O裝置係用以起始對該設備的一目標資源的一異動,該異動包含起始者(SAI)資訊的安全屬性;且其中該第二組構係用以至少部份地基於該SAI資訊而實施用於該目標資源所界定的一存取控制政策,且回應於至少部份地基於該SAI資訊之該異動的否決,該第二組構要發送一訊息至該I/O裝置。
100‧‧‧單晶片系統(SoC)
102‧‧‧處理器/處理器核心
104‧‧‧快取記憶體
106‧‧‧記憶體組構
108‧‧‧加速器
110、126、128、506‧‧‧記憶體
112‧‧‧核心介面
114‧‧‧記憶體介面
116‧‧‧面南介面
118‧‧‧動態隨機存取記憶體(DRAM)
120‧‧‧輸入/輸出(IO)組構
122、124、504‧‧‧裝置
130‧‧‧靜態隨機存取記憶體(SRAM)130
132~152‧‧‧通訊路徑
154‧‧‧輸入/輸出(I/O)橋接器
156、200~206‧‧‧政策暫存器
300、302‧‧‧讀取和寫入政策暫存器
400‧‧‧控制政策暫存器
500‧‧‧匯流排
502‧‧‧橋接器
508‧‧‧對映器
I0~In‧‧‧起始者
O0~On‧‧‧物件
隨著前文所述之觀點和本發明的許多附屬優點藉由配合隨附圖式參考下文中之詳細說明而變得更易瞭
解,前文所述之觀點和本發明的許多附屬優點也會變得更易於識出,於此等圖式中,除非有特別指明其他情況,否則在這許多圖案中相似參考號碼係指涉相似的部件:第1圖為一個系統概略圖,例示出一個示範單晶片系統架構和與由此系統中之裝置起始的異動相關聯之對應通訊路徑。
第2圖示出一個安全存取機制之總覽,其運用依據本發明之一實施例的數個政策暫存器。
第3圖示出依據本發明之一實施例的一個示範讀取和寫入政策暫存器組。
第4圖示出依據本發明之一實施例的一個示範控制政策暫存器。
第5圖示出第1圖之單晶片系統(System on a Chip,SoC),但更包括有一個匯流排,此匯流排施作一個專屬協定、和用於在此專屬協定與由此SoC組構所運用的一個協定之間對映安全屬性的一個對映器。
第6圖依據本發明之一實施例示出一個示範異動和利用第1圖之SoC的相關聯安全存取實施機構設施。
於此係說明用於實施資源存取控制之方法和設備的實施例。在後文之說明中,係闡述許多具體細節來提供對本發明之實施例的通盤瞭解。然而,熟於此技者會可識出,本發明係可在沒有這些具體細節中之一或多者,或
者是配合其他方法、成份、材料等,的情況下實行。在一些其他情況中,並未示出或詳細說明習知的結構、材料或操作,以避免混淆本發明之觀點。
於本說明書通篇中之對於「一個實施例」或「一實施例」之指涉係指配合此實施例所說明的一個特定的特徵、結構或特性係包括在本發明的至少一個實施例中。因此,本說明書通篇中之「在一個實施例中」或「在一實施例中」等詞語的出現並不必然全係指涉同一個實施例。此外,在一或多個實施例中,這些特定特徵、結構或特性係可以任何合適的方式而加以結合。
於第1圖中,係示出對應於一個示範單晶片系統(SoC)100的一個架構。SoC 100包括一或多個處理器核心102,其各包括有耦接至一個記憶體組構106的一個本地快取記憶體104。SoC 100亦包括耦接至記憶體110的一或多個加速器108,記憶體110轉而經由核心介面112耦接至記憶體組構106。記憶體組構106亦包括一個記憶體介面114和一個面南介面116。記憶體介面114有助於與動態隨機存取記憶體(dynamic random access memory,DRAM)118之通訊。面南介面116提供在記憶體組構與一個IO組構120之間的互連。IO組構120支援與多種IO裝置(由各耦接至個別的記憶體126和128之裝置122和124例示)的輸入/輸出(input/output,I/O)通訊。IO組構120亦提供在靜態隨機存取記憶體(Static Random Access Memory,SRAM)130與其餘系統部件之間的介面。
在SoC 100之操作期間內,有多種系統部件可存取由其他部件/裝置所持有或提供的SoC資產。例如,處理器102可存取DRAM 118、加速器108、記憶體110、裝置124、記憶體128和SRM 130中之各者,如由個別通訊路徑裝置132、134、136、138、140和142所描繪的。同樣地,有多種IO裝置可存取其他資產,像是裝置和記憶體資源等,如由通訊路徑144、146、148、150和152所描繪的。
這些處理器核心、加速器和裝置與彼此互動,以處理由SoC 100所處置的工作負載。這互動有部份係受到對與這些核心、加速器和裝置相關聯的記憶體和儲存資源及/或暫存器,以及像是DRAM 118、SRAM 130等等的常見記憶體資源,之存取的促進。於本文中,起始此等系統資源存取請求的部件被稱為「起始者」。
如可在第1圖之架構中看出的,一些起始者,例如處理器核心102和加速器108,係包含被建在SoC 100內的內部部件,而其他起始者,例如IO裝置122和124,可係位在SoC內部或外部,視其特定功能而定。同樣在Soc外部的,還有可能會試著透過此SoC中之內部或外部起始者而存取內部或外部資源的軟體和韌體實體。因此,係可同時執行具有不同程度之可信度的數個工作負載。
SoC 100包括有必須被保護以避免未經授權存取的資料和硬體資產,像是組態暫存器、範圍暫存器等等。目前來說,對於這些資料和硬體資產的控制係由各個SoC之特定建築師以針對此SoC的一種特定且零碎的方式來處
置。之前,並沒有任何在SoC和組構中的綜合支援可以明確地判定一個起始者的優勢。
近期內在SoC架構上的進展引進了支援跨內部(例如,經由記憶體組構106)和外部(例如,經由IO組構120)記憶體資源之同調性的記憶體和IO組構。這有部份係得助於記憶體存取和同調性框架。在一些實施例中,係利用此框架來界定可跨SoC架構實施的一個統一存取控制架構,用以以一種一致方式支援對資源的安全存取。在一個實施例中,記憶體組構106和IO組構120係採用英特爾公司(Intel®)快速路徑互連(QuickPath Interconnect,QPI)框架。一般而言,各個記憶體組構和IO組構包含有與對應控制邏輯的互連,以促進在連接至此等互連的裝置和資源之間的異動。
在一個實施例中,安全屬性會被指定給主體/起始者,並被用來判定起始者的存取權利(即,讀取、寫入、不存取等等)。這些起始者之安全屬性(Security Attribute of the Initiator,SAI)代表起始者之用於做出存取判定的恆定不變性質。在一個實施例中,這些安全屬性係由SoC硬體產生,並且必須伴隨每一個異動。在一個實施例中,係採用讀取和寫入存取政策暫存器,以實施政策。此外,在一個實施例中,係採用一個控制政策暫存器,此控制政策暫存器決定哪個實體或哪些實體可組配這些讀取和寫入政策暫存器。
第2圖示出以SAI為基礎的一個安全存取機制之
示範實作的總覽。在這個範例中,係將起始者I0、I1、…、In示為正存取物件O0、O1、…、On。對於存取耦接至一個記憶體組構106之物件的存取控制(例如,以組構為基礎的存取)係經由記憶體組構讀取和寫入政策暫存器200和202促進。同樣地,對於存取外部目標的存取控制(例如,以目標為基礎的存取),例如IO裝置,係經由讀取和寫入政策暫存器204和206促進。
在第2圖的範例中,主體S0想要執行對耦接至記憶體組構106之物件O0的讀取存取(未示於圖中)。各個起始者I0、I1、…、In被指定有一組安全屬性(security attributes,SA),這組SA界定各個起始者的由SAI安全機制經由相關聯政策暫存器所實施的存取權利。導致這組安全屬性SA可施用至一個主體的資訊係隨同由此主體所起始的各個存取訊息被轉送,如於下文中更詳細說明的。這些政策暫存器儲存用於控制對對應物件之存取的安全屬性資料。若一個起始者主體的安全屬性符合用以存取一個物件的安全屬性,則此項異動會被准許進行。相反地,若一個起始者主體並不擁有適當的安全屬性(如經由隨同其存取訊息所轉送之其SAI資訊所識別的),則此項異動會被拒絕,且會有一個對應訊息被回傳給這個起始者主體。
存取控制架構
如於上文中所論述的,起始者之安全屬性(SAI)一詞係界定為代表一個主體或起始者之用於做出存取決定的恆定不變的性質。在一個實施例中,這些屬性係由硬體
實體產生,並且伴隨由對應主體或起始者所起始的各個異動。不若來源ID,SAI並沒有在橋接器被轉換;他們會存續直到政策實施時為止。政策暫存器被運用來界定對於一個資產的讀取和寫入存取之政策,並被運用來限制可組配或更新這些政策的實體。在一個實施例中,此存取控制架構包含有下列建築方塊:SAI、SAI產生器、SAI對映器、讀取政策暫存器、寫入政策暫存器、和控制政策暫存器。此外,在一個實施例中,係使用封套資料來實施針對外部連接埠的SAI,用以確保其存取有適當地特徵化。
SAI
起始者之安全屬性或SAI代表起始者(和主體)之恆定不變的性質,這些性質被檢驗以判定對於在一個SoC平臺中之目標的存取權。在一個實施例中,這些性質包括角色、裝置模式、和系統模式。一個起始者可係具有這些性質的任何組合。一個角色會被指定給具有類似優勢的一群主體/起始者。角色是靜態的,並且係由SoC建築師指定。在一個實施例中,對於角色至主體/起始者的對映可為下列中之任何一者:R[0..n]->S[0..n]:各個主體/起始者可具有其自己的獨特角色。
R[0]->S[0..n]:複數個主體/起始者可被群聚在同一個角色下。
R[0..n]->S[0]:可將複數個角色指定給同一個主體/起始者。
裝置模式是動態的,其並捕捉一個裝置的目前內部模式。例如,此模式可為一個安全或正常模式。系統模式是動態的,其並指出由一個處理器核心驅動之模式。在一個實施例中,這些處理器核心是基於英特爾32位元或64位元架構的IA核心(於此產業中被稱為IA)。例如,此系統模式可係在系統管理模式(System Management Mode,SMM)或安全模式等等當中。此外,針對多緒起始者而言,係界定有用於指出目前緒的一個脈絡屬性;這些屬性會伴隨SAI。
SAI產生器
SAI是由SoC硬體所產生的一種編碼,並且係由所具有的輸入參數包括角色、裝置和系統模式的一個函數產生。對於SAI的解譯是特定於各個SoC,並且係由SoC建築師所界定的。舉一個示範實作來說,在一種示範7位元SAI編碼中,將位元6設定為1可指出由一個處理器核心所做的存取。若位元6被設定為0,則位元5~0可係用於編碼裝置存取。例如,1000001b代表IA核心存取,且0010000b代表一個裝置存取。當然,這只是例示性的,因為SAI編碼的位元數量和格式可由建築師組配。
SAI對映器
一些SoC中的I/O裝置係連接至非供應商(即,不是此SoC的供應商)或舊有供應商組構。例如,一些SoC可整合開放核心協定(Open Core Protocol,OCP)、進階微控制器匯流排架構(Advanced Microcontroller Bus
Architecture,AMBA)、英特爾晶載系統組構(Intel On-Chip System Fabric,IOSF)或其他私有匯流排協定。SAI對映器負責將伴隨由一個SoC供應商之標準組構中之代理器所產生的異動之安全屬性或SAI對映至可在此特定於SoC的裝置域(例如,OCP域)中被解譯的安全屬性。同樣地,針對由在非供應商組構中之裝置所產生的上游異動而言,由此等裝置所產生的安全屬性必須要被對映至可在此記憶體/同調性和IOSF域中被解譯的SAI。典型上,係可在將一個組構協定對映至另一個組構協定的橋接器中實作這些對映器。在一些實施例中,這些對映器係在硬體中被安全地對映,並且不能被調處。
於第5圖中,係示出一個SAI對映器的一個示範實作。在這個範例中,一個非供應商或舊有供應商匯流排,例如OCP、AMBA、IOSF等等的匯流排500,經由一個橋接器502而被耦接至IO組構120。具有記憶體506的一或多個裝置504被耦接至匯流排500,其中對於這些裝置的存取係依據由匯流排502所實施的協定。同時,有一個不同的協定針對要對連接至SoC 100中之記憶體組構106和IO組構120之資產和資源作存取的異動而被實施。為了促進在連接至匯流排500和SoC 100的裝置之間的異動,橋接器502運用一個SAI對映器508來在這兩個協定之間對映SAI資料。
讀取和寫入政策暫存器
讀取和寫入政策暫存器含有由SoC建築師針對
各個起始者而界定的讀取寫入許可。伴隨此異動的SAI係作用為對此政策暫存器的一個索引。舉個例子來說,在一個實施例中,有一個32位元讀取和寫入政策暫存器被界定在記憶體組構中。於第3圖中,係示出對應的一對讀取和寫入政策暫存器300和302,其中1指出存取被容許,而0指出存取被拒絕。一般而言,SAI寬度為n個位元。n的值可一代一代地或是隨不同產品改變。在一個實施例中,編碼空間為2^(n-1),其中,這n個位元中的一個位元被用來區別核心與裝置編碼。利用一個32位元暫存器只是示範性的,因為實際編碼一般會特定於產品。對於起始者的SAI指定是具有彈性的,並且係取決於此特定產品而定。例如,可以是每起始者有一個SAI,或者是每起始者有複數個SAI,或將複數個起始者群聚到一個SAI中。
前文中所述的運用利用一個32位元暫存器之位元向量的範例僅係用於實現讀取和寫入許可的一種技術。亦可無礙地運用其他技術,包括運用較長或較短位元向量的機制、包括有利用一或多個暫存器或類比儲存機構所實施的許可規則之階層的機制、以及可經由硬體、微碼、韌體等等來實施的各種其他許可邏輯。
控制政策暫存器
控制政策暫存器之內容界定出被容許組配讀取和寫入政策暫存器的可信賴實體。控制政策暫存器為一個自參考暫存器;於此控制政策暫存器中所指明的SAI被容許修改讀取和寫入暫存器政策以及覆寫控制政策暫存器之
內容。容許單一個可信賴實體組配此控制政策暫存器,言外之意即為,對此控制政策暫存器的存取對於所有其他代理器而言是鎖住的。由此控制政策暫存器中之SAI所指明的實體可選擇將可以組配控制政策暫存器的這組暫存器擴展至於開機/重設時所載入的初始值之外,或者是,此可信賴實體可將0寫入至此控制政策暫存器,因而將其鎖住,直到下一次的系統重設/開機為止。這對SoC建築師提供彈性,以實行出將政策暫存器鎖住直到下一次重設,或是容許在運行時間中藉由一個可信賴實體而更新政策。第4圖示出一個示範32位元控制政策暫存器400。
第6圖描繪安全地實施裝置對記憶體存取的一個範例。在這個範例中,裝置122起始要存取DRAM 118的一個異動(例如,讀取或寫入)。在一個I/O橋接器152處,適當的SAI經由此橋接器硬體而被產生;這些SAI將會與異動訊息一起被跨介面轉送,直到到達一個可施用安全實施實體為止,於此事例中,這個可施用安全實施實體為記憶體組構106中之政策暫存器156。於政策暫存器156,SAI將會依據異動類型,例如,讀取或寫入,而相對於可施用政策暫存器被檢驗和評估。
於本文中所揭露的SAI安全存取實施機制可在目前途徑上提供許多優點。其界定出可跨SoC設計而一貫運用的統一存取控制建築方塊,像是SAI產生器、SAI對映器、政策暫存器等等。其以一種統一方式施用至SoC組構。這些益處係由將一個恆久屬性,SAI,與各個異動聯繫
來達成。藉由在現有的異動訊息格式內轉送SAI資料,可在現存的互連框架,例如QPI,內達到對於增加存取安全措施的支援。SoC可利用SAI資訊來實施對於目標為SoC資產,例如記憶體、非核心暫存器、I/O裝置等等,的由所有起始者所產生的異動之存取控制。可利用SAI來在處理器運行於特定模式中時對特定I/O裝置容許對於記憶體區域的外部存取,或對於SoC資產的外部存取。此存取控制架構是一種強而有力的新典範,其容許在一個一貫且模組式的框架內作對於所有存取控制判定的評估。藉由恆定地跨互連載運SAI資訊,吾等簡化對於存取控制判定的設計、除蟲和驗證工作,因為起始者安全角色是跨所有緩衝異動的微架構結構而立即可用的。
上文中對於所例示之本發明之實施例的說明,包括在發明摘要中所說明的,並非係意欲要將本發明窮盡或限制在所揭露的這些拘泥形式中。雖然於本文中係為求例示目的而說明本發明的數個特定實施例和範例,但在本發明之範疇內可能會有多種相等修改體,如熟於相關技藝者會可識出的。
可有鑑於上文中之詳細說明而對本發明作出這些修改。於後附申請專利範圍中所使用的詞語不應被解讀為將本發明限制於在本說明書及圖式中所揭露的特定實施例。相反地,本發明之範疇係要完全由後附申請專利範圍決定,後附申請專利範圍係要依據已建立的申請專利範圍解讀宗旨來解釋。
200~206‧‧‧政策暫存器
I0~In‧‧‧起始者
O0~On‧‧‧物件
Claims (19)
- 一種設備,其包含:一或更多個處理器核心;一第一組構,其包含用以經由一記憶體介面耦接到一記憶體之一互連體;複數個輸入/輸出(I/O)裝置;及一第二組構,其經由一介面耦接到該第一組構,該第二組構用以和該等複數個I/O裝置之至少一些I/O裝置通訊;其中,該等複數個I/O裝置的一I/O裝置係用以起始對該設備的一目標資源之一異動,該異動包含起始者之安全屬性(SAI)資訊;及其中,該第二組構係用以至少部份地基於該SAI資訊而實施用於該目標資源所界定之一存取控制政策,且回應於至少部份地基於該SAI資訊之該異動的否決,該第二組構要發送一訊息至該I/O裝置,其中該SAI資訊包含複數個位元,該等複數個位元包括用以藉該一或更多個處理器核心去指出一存取之一第一位元。
- 如申請專利範圍第1項之設備,其中該設備包含一單晶片系統(SoC)。
- 如申請專利範圍第2項之設備,其中該單晶片系統(SoC)進一步包含一或更多個加速器。
- 如申請專利範圍第1項之設備,進一步包含至少一控制暫存器以儲存至少一控制設定。
- 如申請專利範圍第1項之設備,進一步包含用以耦接該第二組構到與一第三組構相關聯的一匯流排之一橋接器。
- 如申請專利範圍第1項之設備,其中該設備包含一第一晶片和一第二晶片,且其中該等複數個I/O裝置之至少一者係在該第二晶片上。
- 如申請專利範圍第6項之設備,其中該複數個核心的至少一些核心係在該第一晶片上。
- 如申請專利範圍第1項之設備,其中該SAI資訊包含一角色。
- 如申請專利範圍第1項之設備,其中該SAI資訊包含一裝置模式。
- 如申請專利範圍第1項之設備,其中該SAI資訊包含一系統模式。
- 一種方法,其包含:於一個電腦系統中,其具有一或更多個處理核心、包含用以經由一記憶體介面耦接到一記憶體的一互連體之一第一組構、複數個輸入/輸出(IO)裝置、和經由一介面而耦接到該第一組構的一第二組構,該第二組構用以與該等複數個I/O裝置的至少一些I/O裝置通訊;從該等複數個I/O裝置的一I/O裝置起始對該電腦系統的一目標資源之一異動,該異動包含起始者之安全屬性(SAI)資訊,該SAI資訊包含複數個位元,該等複數個位元包括用以藉該一或更多個處理器核心去指出一存 取之一第一位元;在該第二組構中至少部份地基於該SAI資訊而實施用於該目標資源所界定之一存取控制政策;及回應於至少部份地基於該SAI資訊之該異動的否決來發送一訊息至該I/O裝置。
- 如申請專利範圍第11項之方法,進一步包含運用系統硬體以回應於該異動的起始而產生該SAI資訊。
- 如申請專利範圍第11項之方法,進一步包含經由一或更多個讀取和寫入政策暫存器而實施該存取政策。
- 如申請專利範圍第11項之方法,進一步包含藉指定一存取角色至各個起始裝置而實施該存取控制政策,各個角色定義和該角色相關聯的存取優勢。
- 如申請專利範圍第14項之方法,進一步包含接收來自該I/O裝置之該SAI資訊,其包括識別與該I/O裝置相關聯之角色的資訊。
- 一單晶片系統(SoC),其包含:一或更多個處理器核心;一第一組構,其包含用以經由一記憶體介面耦接到一記憶體的一互連體;複數個輸入/輸出(I/O)裝置;及一第二組構,其經由一介面而耦接到該第一組構,該第二組構用以和該複數個I/O裝置的至少一些I/O裝置通訊;其中該複數個I/O裝置的一I/O裝置係用以起始對該設備的一目標資源的一異動,該異動包含起始者之安全屬性 (SAI)資訊,該SAI資訊包含複數個位元,該等複數個位元包括用以藉該一或更多個處理器核心去指出一存取之一第一位元;且其中該第二組構係用以至少部份地基於該SAI資訊而實施用於該目標資源所界定的一存取控制政策,且回應於至少部份地基於該SAI資訊之該異動的否決,該第二組構要發送一訊息至該I/O裝置。
- 如申請專利範圍第16項之SoC,進一步包含一或更多個加速器。
- 如申請專利範圍第16項之SoC,進一步包含至少一控制暫存器去儲存至少一控制設定。
- 如申請專利範圍第16項之SoC,進一步包含用以耦接該第二組構至與一第三組構相關聯的一匯流排之一橋接器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/890,040 US8789170B2 (en) | 2010-09-24 | 2010-09-24 | Method for enforcing resource access control in computer systems |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201642159A TW201642159A (zh) | 2016-12-01 |
TWI606359B true TWI606359B (zh) | 2017-11-21 |
Family
ID=45872086
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105112653A TWI606359B (zh) | 2010-09-24 | 2011-09-23 | 於電腦系統中實施資源存取控制之方法(二) |
TW100134358A TWI541675B (zh) | 2010-09-24 | 2011-09-23 | 於電腦系統中實施資源存取控制之方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100134358A TWI541675B (zh) | 2010-09-24 | 2011-09-23 | 於電腦系統中實施資源存取控制之方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8789170B2 (zh) |
JP (1) | JP5636501B2 (zh) |
CN (1) | CN103124975B (zh) |
TW (2) | TWI606359B (zh) |
WO (1) | WO2012040691A1 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8789170B2 (en) | 2010-09-24 | 2014-07-22 | Intel Corporation | Method for enforcing resource access control in computer systems |
US9448847B2 (en) | 2011-07-15 | 2016-09-20 | Throughputer, Inc. | Concurrent program execution optimization |
US8930602B2 (en) | 2011-08-31 | 2015-01-06 | Intel Corporation | Providing adaptive bandwidth allocation for a fixed priority arbiter |
US9021156B2 (en) | 2011-08-31 | 2015-04-28 | Prashanth Nimmala | Integrating intellectual property (IP) blocks into a processor |
US8929373B2 (en) | 2011-09-29 | 2015-01-06 | Intel Corporation | Sending packets with expanded headers |
US8874976B2 (en) | 2011-09-29 | 2014-10-28 | Intel Corporation | Providing error handling support to legacy devices |
US8713240B2 (en) * | 2011-09-29 | 2014-04-29 | Intel Corporation | Providing multiple decode options for a system-on-chip (SoC) fabric |
US8775700B2 (en) | 2011-09-29 | 2014-07-08 | Intel Corporation | Issuing requests to a fabric |
US8711875B2 (en) | 2011-09-29 | 2014-04-29 | Intel Corporation | Aggregating completion messages in a sideband interface |
US8805926B2 (en) | 2011-09-29 | 2014-08-12 | Intel Corporation | Common idle state, active state and credit management for an interface |
US8713234B2 (en) | 2011-09-29 | 2014-04-29 | Intel Corporation | Supporting multiple channels of a single interface |
US9053251B2 (en) | 2011-11-29 | 2015-06-09 | Intel Corporation | Providing a sideband message interface for system on a chip (SoC) |
US9805221B2 (en) * | 2011-12-21 | 2017-10-31 | Intel Corporation | Incorporating access control functionality into a system on a chip (SoC) |
US20130166672A1 (en) * | 2011-12-22 | 2013-06-27 | International Business Machines Corporation | Physically Remote Shared Computer Memory |
US8935775B2 (en) * | 2012-06-28 | 2015-01-13 | Intel Corporation | Method and apparatus for dishonest hardware policies |
US9285865B2 (en) | 2012-06-29 | 2016-03-15 | Oracle International Corporation | Dynamic link scaling based on bandwidth utilization |
US20140040526A1 (en) * | 2012-07-31 | 2014-02-06 | Bruce J. Chang | Coherent data forwarding when link congestion occurs in a multi-node coherent system |
WO2014041395A1 (en) | 2012-09-12 | 2014-03-20 | Freescale Semiconductor, Inc. | System-on-chip device, method of peripheral access and integrated circuit |
US9904802B2 (en) | 2012-11-23 | 2018-02-27 | Nxp Usa, Inc. | System on chip |
FR3003054B1 (fr) * | 2013-03-06 | 2016-08-19 | Sagem Defense Securite | Procede et dispositif de filtrage de transactions pour systeme sur puce |
US8959576B2 (en) * | 2013-03-14 | 2015-02-17 | Intel Corporation | Method, apparatus, system for qualifying CPU transactions with security attributes |
EP2808818B1 (en) * | 2013-05-29 | 2016-07-13 | Nxp B.V. | Processing system |
WO2015008112A1 (en) * | 2013-07-18 | 2015-01-22 | Freescale Semiconductor, Inc. | System on chip and method therefor |
ITBS20130173A1 (it) | 2013-11-22 | 2015-05-23 | Carlo Braga | Garza chirurgica |
US10454970B2 (en) * | 2014-06-30 | 2019-10-22 | Vescel, Llc | Authorization of access to a data resource in addition to specific actions to be performed on the data resource based on an authorized context enforced by a use policy |
US9690719B2 (en) | 2014-09-11 | 2017-06-27 | Nxp Usa, Inc. | Mechanism for managing access to at least one shared integrated peripheral of a processing unit and a method of operating thereof |
US9785223B2 (en) * | 2014-12-25 | 2017-10-10 | Intel Corporation | Power management in an uncore fabric |
US20160246721A1 (en) * | 2015-02-19 | 2016-08-25 | Qualcomm Incorporated | Role based cache coherence bus traffic control |
WO2017019061A1 (en) | 2015-07-29 | 2017-02-02 | Hewlett Packard Enterprise Development Lp | Firewall to determine access to a portion of memory |
US10628373B2 (en) * | 2015-12-01 | 2020-04-21 | Marvell International Ltd. | Systems and methods for transmitting an access request via a flexible register access bus |
US10613991B2 (en) | 2016-08-01 | 2020-04-07 | Hewlett Packard Enterprise Development Lp | Transparent routers to provide services |
US10318440B2 (en) * | 2016-09-23 | 2019-06-11 | Intel Corporation | Mapping security policy group registers |
US10223317B2 (en) | 2016-09-28 | 2019-03-05 | Amazon Technologies, Inc. | Configurable logic platform |
US10795742B1 (en) | 2016-09-28 | 2020-10-06 | Amazon Technologies, Inc. | Isolating unresponsive customer logic from a bus |
US10911261B2 (en) | 2016-12-19 | 2021-02-02 | Intel Corporation | Method, apparatus and system for hierarchical network on chip routing |
US10846126B2 (en) | 2016-12-28 | 2020-11-24 | Intel Corporation | Method, apparatus and system for handling non-posted memory write transactions in a fabric |
CN110268392A (zh) * | 2017-01-10 | 2019-09-20 | 瑞萨电子美国有限公司 | 安全架构和方法 |
US10387336B2 (en) * | 2017-03-24 | 2019-08-20 | Micron Technology, Inc. | Memory protection based on system state |
US11100023B2 (en) * | 2017-09-28 | 2021-08-24 | Intel Corporation | System, apparatus and method for tunneling validated security information |
CN108062486B (zh) | 2017-12-15 | 2020-09-15 | 杭州中天微系统有限公司 | 一种针对间接访问存储控制器的存储保护装置 |
CN108197503B (zh) * | 2017-12-15 | 2020-09-15 | 杭州中天微系统有限公司 | 一种为间接访问存储控制器增加保护功能的装置 |
US11281595B2 (en) * | 2018-05-28 | 2022-03-22 | Intel Corporation | Integration of disparate system architectures using configurable isolated memory regions and trust domain conversion bridge |
FR3089322B1 (fr) * | 2018-11-29 | 2020-12-18 | St Microelectronics Rousset | Gestion des restrictions d’accès au sein d’un système sur puce |
FR3103585B1 (fr) * | 2019-11-22 | 2023-04-14 | Stmicroelectronics Grand Ouest Sas | Procédé de gestion de la configuration d’accès à des périphériques et à leurs ressources associées d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant |
FR3103586B1 (fr) | 2019-11-22 | 2023-04-14 | St Microelectronics Alps Sas | Procédé de gestion du fonctionnement d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant |
FR3103584B1 (fr) * | 2019-11-22 | 2023-05-05 | St Microelectronics Alps Sas | Procédé de gestion du débogage d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant |
US11783042B2 (en) | 2020-06-17 | 2023-10-10 | Qualcomm Incorporated | Access control system and method for isolating mutually distrusting security domains |
CN112511569B (zh) * | 2021-02-07 | 2021-05-11 | 杭州筋斗腾云科技有限公司 | 网络资源访问请求的处理方法、系统及计算机设备 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7277972B2 (en) | 2002-03-08 | 2007-10-02 | Freescale Semiconductor, Inc. | Data processing system with peripheral access protection and method therefor |
US7266786B2 (en) | 2002-11-05 | 2007-09-04 | Sonics, Inc. | Method and apparatus for configurable address mapping and protection architecture and hardware for on-chip systems |
US7412588B2 (en) * | 2003-07-25 | 2008-08-12 | International Business Machines Corporation | Network processor system on chip with bridge coupling protocol converting multiprocessor macro core local bus to peripheral interfaces coupled system bus |
JP2007524161A (ja) | 2004-01-15 | 2007-08-23 | ヴァー2アス インコーポレイテッド | ウイルス、スパイウェア及びハッカー保護特徴を有する仮想処理空間における分離マルチプレクス型多次元処理 |
US7512813B2 (en) | 2004-05-28 | 2009-03-31 | International Business Machines Corporation | Method for system level protection of field programmable logic devices |
EP1779609B1 (en) | 2004-08-12 | 2009-01-21 | Koninklijke Philips Electronics N.V. | Integrated circuit and method for packet switching control |
CN101356506B (zh) | 2005-08-25 | 2014-01-08 | 晶像股份有限公司 | 智能可缩放存储切换架构 |
US7434033B2 (en) | 2006-04-14 | 2008-10-07 | International Business Machines Corporation | Placing a processor into a gradual slow mode of operation in response to a detected livelock condition within a processor pipeline |
US8959311B2 (en) | 2006-08-25 | 2015-02-17 | Texas Instruments Incorporated | Methods and systems involving secure RAM |
US7774723B2 (en) * | 2007-03-09 | 2010-08-10 | Mips Technologies, Inc. | Protecting trade secrets during the design and configuration of an integrated circuit semiconductor design |
EP2075696A3 (en) | 2007-05-10 | 2010-01-27 | Texas Instruments Incorporated | Interrupt- related circuits, systems and processes |
US8392667B2 (en) | 2008-12-12 | 2013-03-05 | Nvidia Corporation | Deadlock avoidance by marking CPU traffic as special |
US8789170B2 (en) * | 2010-09-24 | 2014-07-22 | Intel Corporation | Method for enforcing resource access control in computer systems |
-
2010
- 2010-09-24 US US12/890,040 patent/US8789170B2/en active Active
-
2011
- 2011-09-23 TW TW105112653A patent/TWI606359B/zh active
- 2011-09-23 TW TW100134358A patent/TWI541675B/zh active
- 2011-09-26 CN CN201180045940.7A patent/CN103124975B/zh active Active
- 2011-09-26 WO PCT/US2011/053216 patent/WO2012040691A1/en active Application Filing
- 2011-09-26 JP JP2013529450A patent/JP5636501B2/ja active Active
-
2014
- 2014-06-13 US US14/304,307 patent/US9112867B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20120079590A1 (en) | 2012-03-29 |
CN103124975A (zh) | 2013-05-29 |
US20140298408A1 (en) | 2014-10-02 |
TW201642159A (zh) | 2016-12-01 |
US8789170B2 (en) | 2014-07-22 |
JP5636501B2 (ja) | 2014-12-03 |
JP2013537347A (ja) | 2013-09-30 |
TWI541675B (zh) | 2016-07-11 |
TW201224838A (en) | 2012-06-16 |
WO2012040691A1 (en) | 2012-03-29 |
US9112867B2 (en) | 2015-08-18 |
CN103124975B (zh) | 2016-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI606359B (zh) | 於電腦系統中實施資源存取控制之方法(二) | |
EP3629540B1 (en) | Apparatus and method for secure memory access using trust domains | |
EP3479519B1 (en) | Dynamic access control on blockchain | |
KR101457355B1 (ko) | 보안 애플리케이션 실행을 제공하는 방법 및 장치 | |
CN106462708B (zh) | 认证变量的管理方法和装置 | |
CN103201746B (zh) | 用于数据存储装置处的安全管理供应的技术 | |
KR20170095161A (ko) | 시큐어 시스템 온 칩 | |
JP2009015818A (ja) | 動的信頼管理 | |
TW201349007A (zh) | 提供儲存裝置上防有毒軟體保護之系統與方法 | |
TWI608378B (zh) | 裝置與安全處理環境之間的介面 | |
Lebedev et al. | Sanctorum: A lightweight security monitor for secure enclaves | |
LeMay et al. | Network-on-chip firewall: Countering defective and malicious system-on-chip hardware | |
Zhang et al. | Security enforcement model for distributed usage control | |
US8635685B2 (en) | Value generator coupled to firewall programmable qualifier data structure logics | |
JP2020504393A (ja) | セキュリティアーキテクチャおよび方法 | |
CN114912138A (zh) | 使用硬件安全等级的安全计算的体系结构、系统及其方法 | |
Tiemann et al. | IOTLB-SC: An accelerator-independent leakage source in modern cloud systems | |
Yang et al. | RTTV: a dynamic CFI measurement tool based on TPM | |
Zhou et al. | SmartNIC Security Isolation in the Cloud with S-NIC | |
Liu et al. | TZEAMM: An Efficient and Secure Active Measurement Method Based on TrustZone | |
US20230098288A1 (en) | Apparatus and method for role-based register protection for tdx-io | |
Cheruvu et al. | Base Platform Security Hardware Building Blocks | |
Thomas et al. | Data Security Architecture using Embedded Chip | |
Kun et al. | A solution to make trusted execution environment more trustworthy | |
Chacon et al. | Coherence Attacks and Countermeasures in Interposer-based Chiplet Systems |