安全意識主機的系統(tǒng)和方法
【技術領域】
[0001]本公開一般涉及安全處理環(huán)境,并且更具體地,涉及用于提供安全感知處理組件的系統(tǒng)和方法。
【背景技術】
[0002]處理系統(tǒng)可以包括共享從機(或外設)的多個主機。為了提供安全的處理環(huán)境,處理系統(tǒng)通常實現(xiàn)安全機制,使得各主主機依賴于它的安全狀態(tài)而訪問資源。例如,安全機制可以使得主機在安全狀態(tài)下運行以訪問安全和非安全的資源,同時讓主機在非安全狀態(tài)下運行,以獲得唯一的非安全資源。主機通常不知道它的工作狀態(tài),使得即使在非安全狀態(tài)下運行時,主機可以嘗試訪問安全資源。安全機制阻止這種嘗試,然后通知主機發(fā)生錯誤并試圖訪問安全資源。然后,主機可以采取行動來糾正錯誤。雖然現(xiàn)有的安全機制已經(jīng)普遍足夠用于它們的預期目的,但他們沒有在所有方面完全令人滿意。
【附圖說明】
[0003]當結合附圖閱讀時,本公開內容最好從下面的詳細描述理解。需要強調,按照業(yè)界的標準做法,各種特征未按比例繪制,并且僅用于說明目的。事實上,各種特征的尺寸可任意放大或縮小為了清楚的討論。
[0004]圖1是根據(jù)本公開內容的各個方面用于提供安全處理環(huán)境的示例性處理系統(tǒng)的示意性框圖。
[0005]圖2是根據(jù)本公開的各個方面,支持安全感知主機的示例性安全機制的示意性框圖,其可以通過圖1的處理系統(tǒng)實現(xiàn)。
[0006]圖3是根據(jù)本公開的各個方面,可在圖2的安全機制中實現(xiàn)的示例性主機安全檢查寄存器。
[0007]圖4A和圖4B是根據(jù)本公開內容的各方面,用于支持處理系統(tǒng)的安全意識端點的示例性方法的流程圖,諸如參照圖1、圖2以及圖3所描述的處理系統(tǒng)。
【具體實施方式】
[0008]在本文中描述使得端點檢查其操作狀態(tài)的系統(tǒng)和相關方法。在各種實施方式中,系統(tǒng)可以包括與一個或多個主機,一個或多個從機以及耦合到其上的主機安全檢查寄存器的系統(tǒng)互連。主機安全檢查寄存器可以存儲數(shù)據(jù),表明訪問主機安全檢查寄存器的任何主機的安全狀態(tài)。例如,在各種實施方式中,主機安全檢查寄存器被配置為從主機經(jīng)由系統(tǒng)互連接收請求以訪問主機安全檢查寄存器。該請求包括主操作狀態(tài)信號,指示請求存取的主機的安全狀態(tài),和主機安全檢查寄存器還被配置為基于主機操作狀態(tài)信號向主機返回數(shù)據(jù)值,其中數(shù)據(jù)值表示請求訪問的主機的當前安全狀態(tài)。該系統(tǒng)可以被配置,使得當請求訪問主機安全檢查寄存器的主機在非安全狀態(tài)運行時,無差錯信號產(chǎn)生。主機安全檢查寄存器可以具有固定地址空間。
[0009]在各種實施方式中,主機操作狀態(tài)信號可指示安全狀態(tài)或者非安全狀態(tài),其中,主機安全檢查寄存器可以返回當主機操作狀態(tài)信號指示所述安全狀態(tài)時的第一數(shù)據(jù)值,和當主機操作狀態(tài)信號表明非安全狀態(tài)時的第二數(shù)據(jù)值。在不同的實施方式中,主機操作狀態(tài)信號可以指示訪問主機安全檢查寄存器的主機的安全模式,和主機安全檢查寄存器可以返回指示訪問主安全檢查寄存器的安全模式的數(shù)據(jù)值。一旦從主機安全檢查寄存器收到表明主機是在安全狀態(tài)下運行的數(shù)據(jù)值,主機可以訪問從機。在不同的實施方式中,主機可以訪問從機,而沒有安全錯誤。一旦從主機安全檢查寄存器接收表明主機在非安全狀態(tài)下運行的數(shù)據(jù)值,主機可以要求安全狀態(tài)。
[0010]在各種實施方式中,該系統(tǒng)包括系統(tǒng)保護單元,被配置為保護系統(tǒng)資源避免錯誤的存取。該系統(tǒng)保護單元可以包括主機安全檢查寄存器,并在各種實施方式中,系統(tǒng)保護單元被配置在主機和從機之間,使得從主機到從機的任何訪問由系統(tǒng)保護單元控制(gate)。
[0011]示例實施例的詳述
[0012]處理系統(tǒng)可以包括共享從機(或外設)的多個主機。為了提供安全的處理環(huán)境,處理系統(tǒng)通常實現(xiàn)安全機制,使得各主機依賴于它的安全狀態(tài)訪問從機的資源。安全機制可根據(jù)處理系統(tǒng)的安全性模型而有所不同。在以芯片為中心的安全模型中,處理系統(tǒng)部件通常具有明確定義的靜態(tài)安全狀態(tài)。例如,只有指定的主機(諸如,核心處理器)在安全狀態(tài)和非安全狀態(tài)之間過渡,而其他主機靜態(tài)地在任一個安全狀態(tài)或者非安全狀態(tài)下進行操作,和/或資源被靜態(tài)定義為安全資源或者非安全資源。這樣的安全模型提供了定義良好的安全機制,可以讓主機在安全狀態(tài)下運行以訪問安全和非安全的資源,同時讓主機在非安全狀態(tài)下運行以獲得唯一的非安全資源。與此相反,在分布式安全模型中,處理系統(tǒng)組件具有動態(tài)安全性的狀態(tài)。例如,不同的主機(例如,除了核心處理器)可以在安全狀態(tài)和非安全狀態(tài)之間轉換,使得各個主機可以影響安全資源的內容,并且資源可以在安全和非安全之間轉換。這樣的安全模型可以實現(xiàn)安全控制器,其控制和監(jiān)測主機和資源的運行狀態(tài),從而確保系統(tǒng)完整性。
[0013]在任何安全處理環(huán)境中,主機通常不知道它的工作狀態(tài)。這樣,主機可以試圖在非安全狀態(tài)下運行時訪問安全資源,或在不足以訪問某些資源的操作模式中試圖訪問安全資源。安全機制將阻止此類嘗試,然后當試圖訪問安全資源時通知主機錯誤發(fā)生。在各種實施方式中,例如,當主機接收與主總線錯誤中斷相關聯(lián)的錯誤響應時,該處理系統(tǒng)可斷言主機總線錯誤中斷。主機然后負責解決什么原因造成的錯誤響應。該錯誤響應決定要求顯著的處理開銷。
[0014]以下公開內容提供了一種安全機制,它使得處理系統(tǒng)內的主機檢查它的操作狀態(tài)。例如,主機可以嘗試訪問安全資源和/或在請求安全訪問級別(或模式)之前,檢查其安全狀態(tài)(或模式)。本文所描述的安全機制和處理系統(tǒng)配置可以提高安全處理環(huán)境,并顯著減少處理開銷。不同的實施例可以具有不同的優(yōu)點,并沒有特別的優(yōu)勢是本文所述的任何實施例必需的。
[0015]圖1是根據(jù)本公開內容的各個方面,提供安全處理環(huán)境的示例性處理系統(tǒng)10的示意性框圖。在各種實施方式中,處理系統(tǒng)10被實施為系統(tǒng)級芯片(SOC),使得處理系統(tǒng)10的組件集成在單個芯片中。在各種實施方式中,處理系統(tǒng)10的部件在同一設備中實現(xiàn)。可替換地,處理系統(tǒng)10的組件可以分布在相互連接的各種集成電路和/或設備中,使得處理系統(tǒng)10的部件被集成以提供安全的處理環(huán)境。為清楚起見,圖1被簡化以更好地理解本公開的發(fā)明概念。附加特征可以在處理系統(tǒng)10中被添加,并且一些所描述的特征可以在處理系統(tǒng)10的其它實施例中被替換或排除。
[0016]處理系統(tǒng)10包括主機20,諸如Ml,M2…麗(其中N是主機的總數(shù)),并且從機30中,如Sl,S2*”Sn(其中η是從機的總數(shù))。在各種實施方式中,從機30共享在處理系統(tǒng)10中的資源,其中每個主機20可以訪問該從機30。主機20包括可以發(fā)起總線事務的任何處理系統(tǒng)組件,諸如中央處理單元(CPU)、微控制器、微處理器、數(shù)字信號處理器、直接存儲器存取(DMA)模塊、系統(tǒng)調試單元模塊或其它互連或系統(tǒng)總線主控器。從機30包括由總線事務激活的任何處理組件,諸如存儲器、控制器(諸如,存儲器控制器)、輸入/輸出(I/O)模塊(接收或提供信息給處理系統(tǒng)10的任何類型的設備)、外設或其它互連或系統(tǒng)總線從屬。存儲器可以包括閃速存儲器、隨機存取存儲器(RAM)、只讀存儲器(ROM)、動態(tài)RAM(DRAM)、靜態(tài)RAM(SRAM)、同步DRAM (SDRAM)、雙數(shù)據(jù)速率SDRAM (DDR SDRAM)、圖形DDR存儲器、磁阻RAM (MRAM)、其它類型的存儲器或其組合。在各種實施方式中,處理部件可以同時作為主機和從機。需要注意:處理系統(tǒng)10可以包括任何數(shù)量的主機(一個或多個)和/或從機(一個或多個),這取決于處理系統(tǒng)10的設計要求。
[0017]系統(tǒng)互連40互連處理系統(tǒng)10的各種組件。例如,在所描繪的實施例中,主機20和從機30耦合到系統(tǒng)互連40,以使得主機20和從機30可以經(jīng)由系統(tǒng)互連40相互通信。系統(tǒng)互連40可以包括其單總線、多條總線、橫桿網(wǎng)絡、單級網(wǎng)絡、多級網(wǎng)絡