用于虛擬硬件存儲器保護的系統和方法
【專利摘要】本發明涉及一種用于虛擬硬件存儲器保護的系統和方法。存儲器保護單元包括硬件邏輯。所述硬件邏輯接收指向總線受控器的來自虛擬中央處理單元(CPU)的事務,該事務與虛擬CPU標識(ID)相關,其中虛擬CPU實現在物理CPU上。所述硬件邏輯還基于虛擬CPU?ID確定是否授權或拒絕訪問所述總線受控器。所述虛擬CPU?ID不同于虛擬CPU實現在其上的物理CPU的ID。
【專利說明】用于虛擬硬件存儲器保護的系統和方法
[0001]相關申請的交叉引用
[0002]本申請要求2013年2月7日提交的美國臨時專利申請61 / 762,212(代理編號T1-73288PS)的優先權,其通過引用合并于此。
【背景技術】
[0003]各種過程由與安全和風險降低有關的國際標準控制。例如,IEC61508致力于例如用于控制工業或其他安全關鍵過程的微控制器或其他計算機的電氣、電子和可編程電子器件的功能安全。IEC61508基于特定應用的概率分析定義安全完整性等級(SIL)。為了實現給定的SIL,包括組成組件的應用必須滿足最大“危險故障”概率和最小“安全故障分數”的目標。“危險故障”的概念是以具體應用為基礎來定義,但是基于在安全關鍵應用的開發期間被證實完整性的要求約束。“安全故障分數”確定系統管理危險故障的能力并且將安全的已檢測故障的可能性與危險的未檢測故障的可能性進行比較。最終,電子器件對于特定SIL的認證要求電子器件提供特定故障檢測水平和特定故障恢復水平并且使安全關鍵應用能夠在出現故障后轉變到安全狀態。
[0004]另一個功能安全標準是IS026262,其致力于公路車輛例如汽車的功能安全。IS026262關注于解決由汽車的電子系統和電氣系統的故障行為可能導致的危害。類似于IEC61508所定義的SIL,IS026262提供了特定汽車的基于風險的方案以便確定被稱為汽車安全完整性等級(ASIL)的風險級別。ASIL被用來指定特定產品的能力以便實現可接受的安全目標。
[0005]用于控制過程(工業過程、汽車過程或其他過程)的電子器件可被用來執行多種功能,其中一些是“安全功能”,而其他是“非安全功能”。安全功能是其操作影響過程安全的功能;例如,驅動電動機用于動力轉向的閉環控制系統是一種安全功能。非安全功能是其操作不影響過程安全的功能;例如,內置于電子器件的調試功能用于針對控制功能開發軟件,但在電子器件集成到車輛時將不再使用該調試功能,此調試功能為非安全功能。
【發明內容】
[0006]上面提到的問題很大一部分由包括硬件邏輯的存儲器保護單元來解決。硬件邏輯接收指向總線受控器的來自虛擬中央處理單元(CPU)的事務,該事務與虛擬CPU標識(ID)相關,其中虛擬CPU實現在物理CPU上。硬件邏輯還基于虛擬CPU ID確定是否授權或拒絕訪問總線受控器。虛擬CPU ID不同于虛擬CPU實現在其上的物理CPU的ID。
[0007]本公開的其他實施例涉及一種包括硬件邏輯的存儲器保護單元。硬件邏輯接收指向總線受控器來自虛擬中央處理單元(CPU)的事務,該事務與虛擬任務標識(ID)相關,其中虛擬CPU實現在物理CPU上。硬件邏輯還基于虛擬任務ID確定是否授權或拒絕訪問總線受控器。虛擬任務ID不同于在虛擬CPU實現在其上的物理CPU上執行的任務的ID。
[0008]本公開的又一實施例涉及一種方法,其包括:接收指向總線受控器的來自虛擬中央處理單元(CPU)的事務,該事務與虛擬CPU標識(ID)相關,其中虛擬CPU實現在物理CPU上。該方法還包括:基于虛擬CPU ID確定是否授權或拒絕訪問總線受控器。虛擬CPU ID不同于虛擬CPU實現在其上的物理CPU的ID。
【專利附圖】
【附圖說明】
[0009]為了詳細描述本發明示例性實施例,現在將參考附圖,其中:
[0010]圖1示出根據各種實施例的示例性片上系統(SOC)體系結構的框圖;
[0011]圖2示出根據各種實施例的結合多任務總線主控器的示例性存儲器保護單元(MPU)的框圖;
[0012]圖3示出根據各種實施例的結合單任務總線主控器的示例性MPU的框圖;
[0013]圖4示出根據各種實施例的利用虛擬化硬件方案結合多任務總線主控器的示例性MPU的框圖;和
[0014]圖5a_5d示出根據各種實施例的方法的流程圖。
[0015]注釋和術語
[0016]貫穿以下描述和所附權利要求書中使用特定術語來指代特定系統組件。如所屬領域的技術人員將 了解,各公司可用不同名稱來指代一組件。本文不意圖區分名稱不同但功能相同的組件。在以下論述和所附權利要求書中,術語“包含”和“包括”以開放式方式使用,且因此應解釋為表示“包含但不限于…”。并且,術語“耦合”意在表示間接或直接電連接。因此,如果第一器件耦合到第二器件,那么該連接可經由直接電連接,或經由通過其它器件和連接的間接電連接。
[0017]如本文中所使用,術語“事務”指讀出/寫入存儲器或讀出/寫入另一邏輯塊或寄存器的請求。
[0018]如本文中所使用,術語“總線主控器”指啟動事務的邏輯塊。
[0019]如本文中所使用,術語“總線受控器”指接收事務的組件;例如,存儲器區域或外圍設備可以是總線受控器。
[0020]如本文中所使用,術語“互連件”指例如在總線主控器和總線受控器之間分配事務的組件。
【具體實施方式】
[0021]下面的討論針對本發明的各種實施例。盡管這些實施例的一個或多個可能是優選的,但所公開的實施例不應被解釋為或以其他方式用作限制包括權利要求的本公開的范圍。此外,本領域技術人員將理解,下面的描述具有廣泛的應用,并且任何實施例的討論僅僅意在例示該實施例,而不旨在暗示包括權利要求的本公開的范圍限于該實施例。
[0022]安全和非安全功能可以在例如具有一個或多個處理器核和存儲器的片上系統(SOC)上實現,可在處理器核之間共享該安全和非安全功能。理論上講,當單獨SOC執行電子器件的各種功能中的每一個時,最高安全等級得以實現。這樣,特定功能的操作不會被其他功能削弱或破壞,因為實現特定功能的總線主控器不能訪問除其自身以外的任何總線受控器。然而,此類方法成本太高。
[0023]為了降低此類電子器件的成本,安全功能可以與非安全功能一起實現,例如由單個SOC執行多種功能。然而,為了維持適當的SIL,應該避免某些功能干擾其他功能(例如,應該避免一種功能訪問未分配給該功能的地址區域存儲器,或者避免向未分配給該功能的外圍設備發送事務)。
[0024]安全功能可以與多個SIL中的一個相關。例如,SIL為3的安全功能可能要求高等級的安全保證,而SIL為2或更低的功能要求較低等級的安全保證,但是仍然比非安全功能要求更多的安全保證。也就是說,相對于SIL為2(或更低)的功能,SIL為3的功能存在更大程度的風險,因此要求更多的風險降低措施。因此,多個安全功能可以具有相互獨立的SIL。各種標準要求具有不同SIL等級的功能不應互相干擾。類似地,非安全關鍵任務不得干擾安全關鍵任務。因此,當非安全功能應該被分離以使得非安全功能不破壞安全功能時,較高SIL安全功能(即,數值更大)也應被分離以使得較低SIL安全功能不會破壞較高SIL安全功能。
[0025]圖1示出具有由數個總線主控器實現的多個功能(也被稱為任務)的SOC體系結構100。如上所解釋,SOC體系結構100可以是控制過程和執行多個功能的電子設備的一部分。某些任務可以是安全功能,這些安全功能在某些情況下具有不同的SIL,而其他任務可以是非安全功能。該SOC體系結構100包括實現任務A和B的CPU102、實現任務C和D的直接存儲器存取(DMA)引擎104和實現任務E的通用串行總線(USB)控制器106。CPU102、DMA引擎104和USB控制器106是總線主控器的示例。
[0026]SOC體系結構100還包括將總線主控器102、104、106耦合到示例性總線受控器(例如,隨機存取存儲器(RAM) 110和只讀存儲器(ROM) 112)的互連件108。此外,互連件108可以將總線主控器102、104、106耦合到外圍設備116a_116n(例如,串行端口、通用輸入/輸出端口或定時器)。在一些情況下,外圍互連件114被插入在互連件108和外圍設備116a-l 16η之間,從而進一步便于將事務路由到適當的外圍設備116a_l 16η。
[0027]SOC體系結構100是示例性的,并且應當理解各種總線主控器102、104、106的多個實例可存在于專用SOC中。不論具體的實施方式如何,總線受控等級的各個任務之問免受干擾是重要的,以確保執行各種任務的設備達到可接受的風險等級。此外,如圖1所示,某些總線主控器102、104、106實現多個任務,其中一些可以是安全功能,而另一些可以是非安全功能,因此在單個總線主控器102、104、106上運行的任務之間保持免受干擾也是重要的。
[0028]轉到圖2,CPU102與本地存儲器保護單元(MPU) 202 一起被示出。MPU202包括基于每個事務確定是否授權或拒絕訪問總線受控器的硬件邏輯(未示出)。硬件邏輯可包括各種比較器、編碼器、解碼器等,其利用包含在事務中的信息來確定是否授權或拒絕訪問總線受控器。例如,事務可以是指令提取或數據訪問請求。MPU202可以將指令提取發送到指令總線,將數據訪問請求發送到數據總線,或者將指令提取和數據訪問請求中的任一個發送到混合的指令和數據總線,連同控制信號一起發送以確定該事務是否是指令提取或數據訪問請求。這在圖2中通過MPU202單獨發送指令提取和數據訪問請求來顯示。互連件108意在表不各種總線實施方式。
[0029]包含在指令提取和/或數據訪問請求字段中的信息可用于確定是否授權或拒絕訪問總線受控器。此外,MPU202可以基于一個因子或數個因子的組合來確定是否授權或拒絕訪問總線受控器。
[0030]在一些情況下,可以基于事務所指向的存儲器的地址來隔離事務。例如,某些地址可以是被保護的,而其他地址是非保護的。源自安全功能的事務可以由MPU202授權其對被保護或非保護地址的訪問,而源自非安全功能的事務被授權訪問非保護地址,并且被拒絕訪問被保護的地址。此外,在某些實施例中,可以有多個地址保護等級,并且允許更高等級的安全功能訪問任何地址,然而僅允許較低等級的安全功能訪問一定等級的保護地址,并且僅允許非安全功能訪問非保護地址。
[0031]在其他情況下,可基于與生成事務的功能或任務相關的特權等級來隔離事務。例如,某些功能可以是“特權的”,其他功能可以是“非特權的”。源自特權功能的事務可由MPU202授權訪問要求特權等級的總線受控器,而源自非特權功能的事務可以被拒絕訪問要求特權等級的總線受控器。類似地,可基于安全等級來隔離事務,其中一些功能包括可信代碼,而其他功能包括非可信代碼。源自可信代碼的事務由MPU202授權訪問以確保總線受控器安全,而源自非可信代碼的事務被拒絕訪問以確保總線受控器安全。
[0032]此外,可以基于與生成事務的功能或任務相關的任務標識(ID)來隔離事務。例如,總線主控器或CPU102可以將任務ID分配到正在運行的每個任務,任務ID可以由MPU202用來基于每個任務而識別權限。可替換地,可以基于事務是否源自由作為“功能單元”的總線主控器執行或由作為“調試單元”的總線主控器執行的功能或任務來隔離事務。MPU202可以授權源自功能單元的任務訪問某些總線受控器,而拒絕源自調試單元的任務訪問那些總線受控器。
[0033]參考圖1和2,RAMllO和/或R0M112的地址區具有相關的權限。如果特定功能或任務的各種屬性滿足地址區的權限等級,則MPU202授權源自該功能或任務的事務進行訪問。如果屬性不符合地址區域的權限等級,訪問被拒絕。對于支持執行多于一個任務的某些組件(例如,CPU102),相關的MPU202在執行的任務改變時被重新配置以便支持基于任務的隔離。MPU202的配置是指被應用到當前正在執行的任務的訪問權限。例如,存儲緩沖器可能屬于第一任務。當CPU102正在執行第一任務時,MPU202被配置為允許訪問存儲緩沖器;但是,當CPU102切換到第二任務時,MPU202被重新配置以防止訪問存儲緩沖器。MPU202可以具有對應于CPU102所執行的不同任務的許多已存儲的配置。在一些實施例中,MPU202可以基于事務的不同的接收任務ID而切換配置。在其他實施例中,例如當總線主控器是CPU102時,在CPU102上執行的改變任務的軟件也重新配置MPU202。
[0034]如有嘗試違反由MPU202執行的訪問規則的情況發生,可以采取各種動作。例如,MPU202可以向CPU102上執行的系統級監控任務報告嘗試的訪問違規。在一些情況下,MPU202阻止事務發生,而在另外一些情況下,MPU202將該事務標記為具有錯誤。此外,在安全敏感的應用中,標記為具有錯誤的事務可向嘗試獲得安全存儲器訪問的惡意實體提供有用的信息,可產生模擬正常響應的響應,但該響應包含錯誤的數據。
[0035]圖3示出USB控制器106,其是單任務總線主控器的示例。在單任務總線主控器的情況下,類似于MPU202的MPU302被實現,盡管是在簡化的基礎上。例如,USB控制器106通常只訪問兩個區域一發送緩沖器和接收緩沖器。此外,MPU302執行基于任務的識別是沒有必要的,因為只有一個任務由USB控制器106來實現。
[0036]在上述示例中,MPU202、302通過在適當的時候限制較低等級功能或者非安全功能的訪問而有利于保護存儲器和/或某些外圍設備的某些區域。因此,可接受的安全等級由整體裝置獲得,在該整體裝置上實施SOC體系結構100,同時通過在單個SOC上實現許多功能來降低設備成本。
[0037]根據各種實施例,總線主控器例如CPU102可以實現虛擬化硬件的多個實例以便執行各種功能。轉到圖4,CPU102可包含實現安全功能的第一虛擬CPU402和實現非安全功能的第二虛擬CPU404。但是,由于安全功能和非安全功能都由相同的物理CPU(即CPU102)實現,所以由任一功能產生的事務的CPU ID將是相同的。此外,在某些情況下,由任一功能產生的事務的任務ID可能是相同的。因此,上面描述的MPU202將不能區分事務,而較低等級的或非安全的功能會被不適當地授權訪問特定的總線受控器。
[0038]根據各種實施例,虛擬CPU ID與在物理CPU102上仿真的每個虛擬CPU402、404相關。此外,虛擬任務ID可以與在虛擬CPU402、404上運行的每個虛擬任務相關。與實現虛擬化硬件的總線主控器相關的MPU406(例如,實現一個或多個虛擬CPU402、404的物理CPU102)基于虛擬CPU ID和/或虛擬任務ID來授權或拒絕訪問外圍設備、存儲器區域或其他總線受控器。因此,即使在安全和非安全功能在虛擬化硬件中實現的系統中,存儲器保護也被使能,從而達到可接受的風險等級。
[0039]此外,物理CPU102可以執行獨立于由虛擬CPU402、404執行的任務(例如,任務A-D)的任務(例如,任務E)。在這種情況下,MPU406不只是基于虛擬CPU ID或虛擬任務ID來授權或拒絕訪問,而是一般基于虛擬CPU ID和CPU ID或者虛擬任務ID和任務ID來授權或拒絕訪問。這樣,MPU406將相同的許可方案應用到CPU,而不管它們是否是虛擬CPU402、404或物理CPU102。類似地,MPU406將相同的許可方案應用到任務,而不管它們是否是由虛擬硬件實現的任務(即由虛擬CPU402、404實現的任務A-D)或由物理硬件實現的任務(即由CPU102實現的任務E)。
[0040]圖5a_5d示出根據各種實施例的方法500。圖5a示出方法500,其開始于塊502,其中接收指向總線受控器的來自虛擬CPU的事務。虛擬CPU實現在物理CPU上,并且該事務與虛擬CPU ID相關。方法500繼續進入塊504中,其中基于虛擬CPU ID確定是否授權或拒絕訪問總線受控器。如上面所解釋的,由此使得即便各種功能實現在虛擬化硬件中也能夠進行存儲器保護。例如,安全功能可以在虛擬CPU上執行,而非安全功能在物理CPU上執行。通常,每個功能將只與物理CPU ID相關,但是因為它們在相同的物理總線主控器上執行,所以不能被區分。然而,根據各種實施例,由于考慮到虛擬CPU ID和物理CPU ID,因此MPU例如MPU406使得能夠區分這些功能。
[0041]轉到圖5b,方法500可以可選地包括:在塊506中接收同樣指向總線受控器的來自物理CPU的事務。方法500繼續進入塊508,其中基于物理CPU ID確定是否授權或拒絕訪問總線受控器。然后,在塊510中,該方法包括:分別基于虛擬CPU ID和物理CPU ID授權來自虛擬CPU和物理CPU的事務之一進行訪問,并且拒絕其他事務進行訪問。這進一步說明如上所述的功能,其中MPU406區分源于物理CPU上的事務和源于實現在物理CPU上的虛擬CPU上的事務。
[0042]圖5c進一步示出該方法500,其可選地包括:在塊512中接收指向總線受控器的來自虛擬CPU的事務。該事務與虛擬任務ID相關。方法500繼續進入塊514,其中基于虛擬任務ID確定是否授權或拒絕訪問總線受控器。如圖5d的塊516中所示,圖5c所示的方法500可以可選地繼續接收指向總線受控器的來自物理CPU的事務。該事務與物理任務ID相關。方法500繼續進入塊518,其中基于物理任務ID確定是否授權或拒絕訪問總線受控器。在塊520中,方法500包括:基于虛擬任務ID和物理任務ID授權來自虛擬CPU或物理CPU的事務中的一個進行訪問,并且拒絕其他事務進行訪問。這樣,不管事務是否源自虛擬CPU或物理CPU,其關聯的任務ID ( S卩,虛擬任務ID或物理任務ID)都可被用來區分針對每個事務允許的存儲器保護等級。
[0043]以上討論意在說明本發明的原理和各種實施例。本領域技術人員一旦完全理解上述公開,許多變化和修改將變得明顯。隨附權利要求旨在被解釋成包含所有這樣的變化和修改。
【權利要求】
1.一種存儲器保護單元,其包括: 硬件邏輯,其用于: 接收指向總線受控器的來自虛擬中央處理單元即虛擬CPU的事務,所述事務與虛擬CPU標識即虛擬CPU ID相關,其中所述虛擬CPU實現在物理CPU上;以及基于所述虛擬CPU ID確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬CPU ID不同于所述虛擬CPU實現在其上的所述物理CPU的ID。
2.根據權利要求1所述的存儲器保護單元,其中所述硬件邏輯進一步: 接收指向所述總線受控器的來自所述物理CPU的事務,該事務與所述物理CPU ID相關;以及 基于所述物理CPU ID確定是否授權或拒絕訪問所述總線受控器; 其中所述硬件邏輯分別基于所述虛擬CPU ID或所述物理CPU ID授權來自所述虛擬CPU或所述物理CPU的事務中的一個進行訪問,并且基于所述虛擬CPU ID或所述物理CPUID拒絕其他事務進行訪問。
3.根據權利要求1所述的存儲器保護單元,其中所述硬件邏輯進一步: 接收指向所述總線受控器的來自所述虛擬CPU的另一事務; 以每個事務為基礎確 定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬CPU ID指示訪問應被授權,但是所述硬件邏輯基于所述事務的獨特因子拒絕訪問所述總線受控器。
4.根據權利要求3所述的存儲器保護單元,其中所述事務的獨特因子包括選自由以下各項構成的群組中的一個: 所述事務指向的地址; 與產生所述事務的任務相關的特權等級; 與產生所述事務的所述任務相關的安全等級;以及 所述事務是否由所述虛擬CPU的功能單元或者所述虛擬CPU的調試單元產生。
5.一種存儲器保護單元,其包括: 硬件邏輯,其用于: 接收指向總線受控器的來自虛擬中央處理單元即虛擬CPU的事務,所述事務與虛擬任務標識即虛擬任務ID相關,其中所述虛擬CPU實現在物理CPU上; 基于所述虛擬任務ID確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬任務ID不同于在所述虛擬CPU實現在其上的所述物理CPU上執行的任務的ID。
6.根據權利要求5所述的存儲器保護單元,其中所述硬件邏輯進一步: 接收指向所述總線受控器的來自所述物理CPU的事務,所述事務與所述物理任務ID相關;以及 基于所述物理任務ID確定是否授權或拒絕訪問所述總線受控器; 其中所述硬件邏輯分別基于所述虛擬任務ID或所述物理任務ID授權來自所述虛擬CPU或所述物理CPU的事務中的一個進行訪問,并且基于所述虛擬任務ID或所述物理任務ID拒絕其他事務進行訪問。
7.根據權利要求5所述的存儲器保護單元,其中所述硬件邏輯進一步:接收指向所述總線受控器的來自所述虛擬CPU的另一事務; 以每個事務為基礎確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬任務ID指示訪問應被授權,但是所述硬件邏輯基于所述事務的獨特因子拒絕訪問所述總線受控器。
8.根據權利要求7所述的存儲器保護單元,其中所述事務的獨特因子包括選自由以下各項構成的群組中的一個: 所述事務指向的地址; 與產生所述事務的任務相關的特權等級; 與產生所述事務的所述任務相關的安全等級;以及 所述事務是否由所述虛擬CPU的功能單元或者所述虛擬CPU的調試單元產生。
9.一種方法,其包括: 接收指向總線受控器的來自虛擬中央處理單元即虛擬CPU的事務,所述事務與虛擬CPU標識即虛擬CPU ID相關,其中所述虛擬CPU實現在物理CPU上;以及基于所述虛擬CPU ID確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬CPU ID不同于所述虛擬CPU實現在其上的所述物理CPU上的ID。
10.根據權利要求9所述的方法,其進一步包括: 接收指向所述總線受控器的來自所述物理CPU的事務,所述事務與所述物理CPU ID相關;以及 基于所述物理CPU ID確定是否授權或拒絕訪問所述總線受控器; 分別基于所述虛擬CPU ID或所述物理CPU ID授權來自所述虛擬CPU或所述物理CPU的事務中的一個進行訪問;以及 基于所述虛擬CPU ID或所述物理CPU ID拒絕其他事務進行訪問。
11.根據權利要求9所述的方法,其進一步包括: 接收指向所述總線受控器的來自所述虛擬CPU的另一事務; 以每個事務為基礎確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬CPU ID指示訪問應被授權,而所述方法進一步包括基于所述事務的獨特因子拒絕訪問所述總線受控器。
12.根據權利要求11所述的方法,其中所述事務的獨特因子包括選自由以下各項構成的群組中的一個: 所述事務指向的地址; 與產生所述事務的任務相關的特權等級; 與產生所述事務的所述任務相關的安全等級;以及 所述事務是否由所述虛擬CPU的功能單元或者所述虛擬CPU的調試單元產生。
13.根據權利要求9所述的方法,其進一步包括: 接收指向總線受控器的來自虛擬CPU的事務,所述事務與虛擬任務標識即虛擬任務ID相關;以及 基于所述虛擬任務ID確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬任務ID不同于在所述虛擬CPU實現在其上的所述物理CPU上執行的任務的ID。
14.根據權利要求13所述的方法,其進一步包括: 接收指向所述總線受控器的來自所述物理CPU的事務,所述事務與所述物理任務ID相關;以及 基于所述物理任務ID確定是否授權或拒絕訪問所述總線受控器; 分別基于所述虛擬任務ID或所述物理任務ID授權來自所述虛擬CPU或所述物理CPU的事務中的一個進行訪問;以及 基于所述虛擬任務ID或者所述物理任務ID拒絕其他事務進行訪問。
15.根據權利要求13所述的方法,其進一步包括: 接收指向所述總線受控器的來自所述虛擬CPU的另一事務; 以每個事務為基礎確定是否授權或拒絕訪問所述總線受控器; 其中所述虛擬任務ID指示訪問應被授權,而所述方法進一步包括基于所述事務的獨特因子拒絕訪問所述總線受控器。
16.根據權利要求15的方法,其中所述事務的獨特因子包括選自由以下各項構成的群組中的一個: 所述事務指向的 地址; 與產生所述事務的任務相關的特權等級; 與產生所述事務的所述任務相關的安全等級;以及 所述事務是否由所述虛擬CPU的功能單元或者所述虛擬CPU的調試單元產生。
【文檔編號】G06F21/78GK103984909SQ201410092365
【公開日】2014年8月13日 申請日期:2014年1月29日 優先權日:2013年2月7日
【發明者】B·S·沙瓦里, K·F·格雷布, R·蘇瓦納 申請人:德克薩斯儀器股份有限公司