欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于確定訪問許可的方法和設備的制作方法

文檔序號:6485036閱讀:236來源:國知局
專利名稱:用于確定訪問許可的方法和設備的制作方法
技術領域
本發(fā)明涉及訪問許可,并且尤其涉及用于在例如數據處理系統(tǒng)內確定訪問許可的訪問許可電路。
背景技術
在芯片上系統(tǒng)(system on a chip,SoC)解決辦法中,通常使多個主裝置(master)具有共享的外圍裝置和從屬裝置,諸如例如存儲器。可能需要保護所有或某些共享的外圍裝置和從屬裝置的內容,以防被諸如在可能敗壞系統(tǒng)的某些主裝置上運行的錯誤或敵對軟件等篡改、拷貝或詢問。例如,可能由在不安全的主裝置上所運行的軟件引入病毒,所述不安全的主裝置可能被用來獲得對在所述系統(tǒng)的外圍裝置和從屬裝置內安全信息的訪問。此外,系統(tǒng)中的某些總線主裝置可能被認為是安全的,而其它總線主裝置可能被認為是不安全的,并且這些考慮因素可能隨系統(tǒng)狀態(tài)改變而改變。因此,為了確保系統(tǒng)的完整性和安全性,需要保護系統(tǒng)免受在不安全的主裝置上所運行的錯誤或敵對軟件的破壞。


以舉例形式圖示了本發(fā)明,并且本發(fā)明并不受附圖的限制,其中相似的附圖標記表示類似的元件,并且其中圖1以框圖形式圖示了依照本發(fā)明一個實施例的數據處理系統(tǒng);圖2依照本發(fā)明一個實施例以框圖形式圖示了圖1的數據處理系統(tǒng)中的訪問保護控制寄存器;和圖3依照本發(fā)明一個實施例以流程圖形式圖示了圖1中的數據處理系統(tǒng)的操作。
技術人員應當理解為簡單和清楚起見圖示了圖中的元件并且不一定按比例繪制所述元件。例如,可能相對于其它元件放大了圖中的某些元件的尺寸以便幫助理解本發(fā)明的實施例。
具體實施例方式
如這里所用,術語“總線”用來指的是可以用來轉送一種或多種類型的信息(諸如數據、地址、控制或狀態(tài))的多種信號或導線。如這里所述的導線可以被圖示或描述為單條導線、多條導線、單向導線或雙向導線。然而,不同的實施例可以改變所述導線的實施方式。例如,可以使用獨立的單向導線而不是雙向導線,反之亦然。此外,多條導線還可以被替換為單條導線,所述單條導線串行或依照時間多路復用的方式來轉送多個信號。同樣,可以把攜帶多個信號的單條導線分離為用于攜帶這些信號子集的各個不同的導線中。因此,對于轉送信號存在許多選擇。
為了確保系統(tǒng)的完整性和安全性,希望確保諸如例如多個主裝置數據處理系統(tǒng)之類的系統(tǒng)不會被在不安全的處理器或其它主裝置上運行的錯誤或敵對軟件損害。例如,多主裝置系統(tǒng)中的多個主裝置可以共享相同的資源,諸如例如所述系統(tǒng)的外圍裝置或從屬裝置。多個主裝置中的某些可能被認為是安全的,而其它主裝置可能被認為是不安全的。如這里所用,安全的主裝置指的是與不安全的主裝置相比通常較少訪問并且對破壞不那么敏感的主裝置,而所述不安全的主裝置通常被更多訪問并且對破壞也更為敏感。例如,安全主裝置可以具有有限的可訪問性或可以執(zhí)行完全由主裝置或SoC的制造商所控制的指令(即在安全主裝置上運行的軟件可以被認為是可信任的或安全軟件)。然而,不安全的主裝置可以是通用的應用處理器,所述應用處理器可能接收并執(zhí)行第三方軟件(例如用戶開發(fā)的軟件)或任何其它未置信的軟件(其中所述軟件的內容和功能通常是未知的)。由于所述軟件是未置信的,所以它可能是試圖破壞系統(tǒng)的其它部分或試圖訪問安全信息的錯誤或敵對軟件。此外,特定主裝置為安全或不安全的狀態(tài)可能隨數據處理系統(tǒng)狀態(tài)改變而改變。
因此,本發(fā)明的一個實施例允許從屬裝置或外圍裝置(諸如例如非易失性存儲器)的內容以下述方式是安全的,所述方式為當以安全狀態(tài)操作時允許開始執(zhí)行來自非易失性存儲器的程序,但是當以不那么安全的狀態(tài)操作時防止出現未經授權的訪問。一個實施例提供了一種允許系統(tǒng)狀態(tài)修改或覆蓋先前編程的數據處理系統(tǒng)的訪問保護策略的方法,如下面參考圖1-3將要描述的那樣。覆蓋例如可以用來一并或獨立地限制系統(tǒng)中的每個主裝置對所述系統(tǒng)資源(例如從屬裝置、外圍裝置、存儲器、共享資源等)的讀取和寫入訪問(或反之,擴大對其的訪問許可)。此外,當出現狀態(tài)信息改變時,可以動態(tài)地改變這些覆蓋。此外,如下面所進一步描述的,狀態(tài)信息還可以包括與數據處理系統(tǒng)狀態(tài)有關的任何類型的信息,諸如例如與啟動調試模式、執(zhí)行來自不安全或未驗證的存儲器區(qū)域的程序、重新編程部分非易失性存儲器等有關的信息。
圖1圖示了數據處理系統(tǒng)10的一個實施例。數據處理系統(tǒng)10包括主裝置12(也被稱為互連或總線主裝置12)、主裝置14(也被稱為互連或總線主裝置14)、存儲器控制器32、非易失性存儲器36、系統(tǒng)互連22、I/O電路16、外圍裝置18及其它從屬裝置20。主裝置12經由導線48與系統(tǒng)互連22雙向耦合,主裝置14經由導線50與系統(tǒng)互連22雙向耦合,I/O電路經由導線52與系統(tǒng)互連22雙向耦合,外圍裝置18經由導線54與系統(tǒng)互連22雙向耦合,其它從屬裝置20經由導線56與系統(tǒng)互連22雙向耦合,并且存儲器控制器32經由導線24與系統(tǒng)互連22雙向耦合。導線24包括用于傳遞主裝置標識符26、地址/數據30、R/W信號28及其它信號34的導線。
存儲器控制器32包括訪問保護控制寄存器38、訪問修改電路40、訪問控制電路42和存儲器訪問電路44,并且所述存儲器控制器32經由導線46與非易失性存儲器36雙向耦合。訪問保護控制寄存器向訪問修改電路40提供訪問許可58。訪問修改電路40經由導線62從數據處理系統(tǒng)10內的信息中以及經由導線64從存儲器控制器32內的信息中接收狀態(tài)信息60,并且向訪問控制電路42提供所修改的訪問許可66。注意到在替換實施例中,狀態(tài)信息60可以只包括從數據處理系統(tǒng)10(經由導線62)所提供的信息或可以只包括從存儲器控制器32內所提供的信息。此外,狀態(tài)信息60可以包括從在數據處理系統(tǒng)10之外的源(經由一些或所有導線62)所提供的信息。因此狀態(tài)信息60可以包括任何類型的信號或指示符,所述信號或指示符向訪問修改電路40提供了所要求的狀態(tài)信息,如下面將要詳述的那樣。訪問控制電路42向存儲器訪問電路44提供了允許訪問指示符68(其可以包括一個或多個指示符)。
盡管在圖1中只圖示了一個外圍裝置18,然而數據處理系統(tǒng)10可以包括與系統(tǒng)互連22耦合的任意數目的外圍裝置。同樣,任意數目的主裝置和從屬裝置可以與系統(tǒng)互連22耦合,并且不局限于在圖1中所示出的那些。還要注意,在一個實施例中,所有數據處理系統(tǒng)10可以位于單個集成電路上或位于相同的裝置內。作為選擇,數據處理系統(tǒng)10可以包括彼此互連的任意數目的獨立的集成電路或獨立的裝置。例如,在一個實施例中,存儲器和存儲器控制器(諸如例如非易失性存儲器36和存儲器控制器32)可以位于一個或多個集成電路上,與數據處理系統(tǒng)10的其余部分分離。
在一個實施例中,主裝置12和主裝置14可以是能夠執(zhí)行指令的處理器,諸如微處理器、數字信號處理器等,或可以包括任何其它類型的互連或總線主裝置,諸如直接存儲器訪問(direct memory accessDMA)電路或調試電路。盡管只圖示了兩個主裝置,然而根據需要數據處理系統(tǒng)10也可以包括任意數目的主裝置(一個或多個)。還要注意,在任何給定的操作點上,每個主裝置12和14可以具有不同的安全等級。即,例如,取決于在特定操作點上數據處理系統(tǒng)10的狀態(tài),每個主裝置12和14可以是安全或不安全的主裝置。外圍裝置18可以是任何類型的外圍裝置,諸如通用異步收發(fā)器(universalasynchronous receiver transmitter,UART)、實時時鐘(real timeclock,RTC)、鍵盤控制器、任何類型的存儲器等。注意到,其它從屬裝置20可以包括任何類型的互連從屬裝置,諸如例如可由主裝置12和14訪問的存儲器,以及駐留在系統(tǒng)總線上的任何類型的外圍裝置,包括與外圍裝置18相同類型的外圍裝置。I/O電路16可以包括任何類型的I/O電路,所述I/O電路接收或提供在數據處理系統(tǒng)10之內或之外的信息。
在所舉例說明的實施例中,存儲器控制器32和非易失性存儲器36對應于與系統(tǒng)互連22耦合的另一從屬裝置。注意到,在一個實施例中,非易失性存儲器36可以由與系統(tǒng)互連22耦合的至少兩個主裝置(諸如例如主裝置12和14)共享。非易失性存儲器36可以位于與主裝置12和14相同的集成電路上或位于獨立的集成電路上。此外,盡管存儲器36被圖示為非易失性存儲器(諸如閃速存儲器),然而存儲器36可以是任何類型的存儲器,諸如例如只讀存儲器(read onlymemory,ROM)、隨機存取存儲器(random access memory,RAM)、動態(tài)RAM(DRAM)、靜態(tài)RAM(SRAM)、非易失性存儲器(例如閃存、MRAM)等。此外,存儲器36還可以是位于另一外圍裝置或從屬裝置內的存儲器或其它存儲裝置。在又一實施例中,存儲器36可以是具有安全信息的任何其它類型的資源,所述安全信息需要被保護,其中存儲器控制器32可以被替換為具有用于保護所述資源的訪問保護電路的任何類型的控制器。
系統(tǒng)互連22把主裝置12、主裝置14、I/O電路16、外圍裝置18、其它從屬裝置20和存儲器控制器32互連。在一個實施例中,如圖1中所示,把系統(tǒng)互連22實現為依照系統(tǒng)總線協議操作的系統(tǒng)總線。作為選擇,可以使用互連電路(諸如例如在各個裝置之間路由信息的切換電路)來實現系統(tǒng)互連22。
在操作中,主裝置12和14請求使用系統(tǒng)互連22來請求對其它從屬裝置20、外圍裝置18或經由存儲器控制器32對非易失性存儲器36的訪問。請求的主裝置可以經由系統(tǒng)互連22向存儲器控制器32提供訪問請求。所述訪問請求例如可以是對數據或指令的讀取請求或寫入請求。假定所述請求主裝置具有足夠的訪問許可,存儲器控制器32響應于讀取訪問請求,經由系統(tǒng)互連22把所請求的信息(數據或指令)提供回所述請求主裝置。在一個實施例中,對于訪問請求,向存儲器控制器32提供主裝置標識符26,其用于標識哪個主裝置正在請求當前訪問。還可以向存儲器控制器32提供R/W信號28以便表明當前訪問請求是讀取還是寫入類型的訪問。存儲器控制器32還經由地址/數據30接收對應于當前訪問請求的地址信息并且提供所請求的信息??梢越浻善渌盘?4來提供任何往返于存儲器控制器32進行傳遞所需要的其它信號(諸如狀態(tài)、控制、數據等)。
諸如主裝置12和14之類的每個主裝置可以具有相應的訪問許可,所述訪問許可可以用來確定是否允許對非易失性存儲器36的特定訪問請求。例如,特定的主裝置對非易失性存儲器36的寫入訪問或讀取訪問可以具有不同的訪問許可。在一個實施例中,把這些訪問許可存儲在訪問保護控制寄存器38中。
圖2圖示了圖1的訪問保護控制寄存器38的一個實施例。在一個實施例中,訪問保護控制寄存器38包括用于數據處理系統(tǒng)10內每個主裝置的一個訪問保護字段。例如,訪問保護控制寄存器38包括分別對應于主裝置12和14的主裝置12訪問保護字段70和主裝置14訪問保護字段76。訪問保護字段表明是否允許由特定的主裝置對非易失性存儲器36的特定類型的訪問。例如,在所舉例說明的實施例中,每個訪問保護字段70和76包括讀取訪問保護字段和寫入訪問保護字段,用于表明對每個主裝置的讀取訪問和寫入訪問的許可。
主裝置12訪問保護字段70包括用于表明是否允許主裝置12對非易失性存儲器36執(zhí)行讀取訪問的主裝置12讀取訪問保護字段72以及用于表明是否允許主裝置12對非易失性存儲器36執(zhí)行寫入訪問的主裝置12寫入訪問保護字段74。因此,可以向主裝置12授予對非易失性存儲器36只執(zhí)行讀取或寫入訪問之一的許可。作為選擇,取決于字段72和74的值,可以向主裝置12授予許可,以對非易失性存儲器36既執(zhí)行讀取訪問又執(zhí)行寫入訪問,或者既不能執(zhí)行讀取訪問也不能執(zhí)行寫入訪問。在一個實施例中,字段72和74中的每個都是用于表明是否允許相應訪問類型(讀取或寫入)的一位的字段。類似地,主裝置14訪問保護字段76包括用于表明是否允許主裝置14對非易失性存儲器36執(zhí)行讀取訪問的主裝置14讀取訪問保護字段78,以及用于表明是否允許主裝置14對非易失性存儲器36執(zhí)行寫入訪問的主裝置14寫入訪問保護字段80。因此,可以向主裝置14授予對非易失性存儲器36只執(zhí)行讀取或寫入訪問之一的許可。作為選擇,取決于字段78和80的值,可以向主裝置14授予許可,以對非易失性存儲器36既執(zhí)行讀取訪問又執(zhí)行寫入訪問,或者既不能執(zhí)行讀取訪問也不能執(zhí)行寫入訪問。在一個實施例中,字段78和80中的每個都是用于表明是否允許相應訪問類型(讀取或寫入)的一位的字段。
注意,在候選實施例中,訪問保護控制寄存器38可以包括任意數目的訪問保護字段,諸如字段70和76。例如,訪問保護控制寄存器38可以包括用于數據處理系統(tǒng)10中每個主裝置或只是數據處理系統(tǒng)10中主裝置子集的一個訪問保護字段。還要注意,每個訪問保護字段70和76可以包括任意數目的字段,以便根據代替或除讀取和寫入訪問之外的不同類型的訪問(諸如例如脈沖串(burst)訪問)來識別許可。此外,可以依照各種不同的方式來實現字段70、72、74、76、78和80,諸如通過使用不同的字段定義、不同的位分配或不同的位數目來實現。作為選擇,可以把它們不同地組織到諸如獨立的寄存器或數據處理系統(tǒng)10中別處的其它寄存器或存儲單元。通常,訪問保護控制寄存器38可由安全主裝置來軟件編程。在一個實施例中,訪問保護控制寄存器38可以在重置時被編程。
返回參照圖1,訪問修改電路40可以用來修改(或覆蓋)在控制寄存器38中所存儲的一個或多個訪問許可。例如,取決于狀態(tài)信息60,訪問修改電路40可以有選擇地修改來自訪問保護控制寄存器38的訪問許可58以便提供所修改的訪問許可66。即,在某些情況下,可以修改所有的訪問許可58以便生成修改的訪問許可66,或者作為選擇,可以只修改一個或一些訪問許可58以致所修改的訪問許可66只包括一個或一些所修改的許可。即,所修改的訪問許可66可以包括來自訪問保護控制寄存器38的當前并沒有修改的許可。還要注意,所修改的訪問許可66可以向特定的主裝置提供對存儲器36的更廣闊的(或更少限制性的)訪問,或者可以限制特定的主裝置對存儲器36的訪問。
返回參照圖1,然后訪問控制電路42可以根據所修改的訪問許可66來確定是否允許當前的訪問請求。例如,數據處理系統(tǒng)10內的每個主裝置(諸如主裝置12和14)可以具有相應的主裝置標識符。在一個實施例中,主裝置12可以對應于主裝置標識符0,而主裝置14可以對應于主裝置標識符1,以致可以利用相應的編號來唯一地識別每個主裝置。在替換實施例中,任何類型的標識符可以依照任何方式使用并分配,并且不局限于依照數字次序、以0開始、或到單個數字。此外,在替換實施例中,多個主裝置也可以共享相同的主裝置標識符。因此,訪問控制電路42可以根據哪個主裝置正在請求當前訪問(由主裝置標識符26向訪問控制電路42表明)以及根據訪問許可(由所修改的訪問許可66向訪問控制電路42表明),來確定是否允許對非易失性存儲器36的訪問。如果允許訪問,那么允許訪問指示符68向存儲器訪問電路44表明允許訪問,以致存儲器訪問電路44然后可以向非易失性存儲器36提供必要的信號和信息以便完成所請求的訪問(例如完成所請求的讀取或寫入)。然而,如果根據當前請求主裝置的所修改的訪問許可66,訪問控制電路42確定不允許訪問,則允許訪問指示符68表明不允許訪問以致存儲器訪問電路44不完成所請求的訪問。將參考圖3進一步描述存儲器控制器32的操作。
圖3依照本發(fā)明一個實施例圖示了對應于存儲器控制器32的操作的流程96。流程96始于開始82并且繼續(xù)至塊84,在塊84接收訪問請求。例如,主裝置12或14可以經由系統(tǒng)互連22提供對非易失性存儲器36的訪問請求,其中所述訪問請求可以是例如讀取或寫入請求,如R/W信號28所表明的那樣。然后流程繼續(xù)至塊86,在那里確定訪問許可。例如,可以由訪問保護控制寄存器38內的字段(諸如字段70和76)來提供這些訪問許可。然后流程繼續(xù)至塊88,在那里接收狀態(tài)信息(諸如狀態(tài)信息60)。所述狀態(tài)信息例如可以涉及調試操作、來自不安全或未驗證的存儲器的操作、存儲器編程、直接存儲器訪問(DMA)操作、引導操作、軟件安全性校驗、安全等級、安全性監(jiān)控操作、操作模式、故障監(jiān)控、外部總線操作等。即,可以經由狀態(tài)信息60向訪問修改電路40提供信息,其可以表明上述條件、狀態(tài)或操作中的一個或多個,或可以表明與條件、狀態(tài)或操作中的一個或多個有關的信息。因此可以從數據處理系統(tǒng)10內的各種地方(諸如從主裝置12、主裝置14、I/O電路16、外圍裝置18或其它從屬裝置20)、存儲器控制器32內或從在數據處理系統(tǒng)10外部的某些地方或從其任何組合處接收狀態(tài)信息60。
例如,對于與調試操作有關的狀態(tài)信息,狀態(tài)信息60的一個或多個信號可以從與系統(tǒng)互連22耦合的調試電路(未示出)接收,所述調試電路作為獨立的單元,或者例如作為主裝置12或14的一部分。還可以依照各種不同的方式來組合狀態(tài)信息60內的信號以便根據不止一個資源來向訪問修改電路40提供所組合的狀態(tài)信息或狀態(tài)信息。此組合電路可以位于訪問修改電路40內或在訪問修改電路40之外,甚至在存儲器控制器32之外。
返回參照圖3,然后流程繼續(xù)至塊90,在那里根據所接收的狀態(tài)信息,可以有選擇地修改訪問許可。例如,在一個實施例中,硬件覆蓋可以用來修改所述訪問許可,以致經由狀態(tài)信息60傳遞的某些條件或狀態(tài)可以使在訪問保護控制寄存器38內所存儲的許可被硬件覆蓋。例如,在一個實施例中,狀態(tài)信息60可以按要求被組合繼而輸入到(或直接輸入到)硬件覆蓋電路,以致當滿足一定的條件時,訪問保護控制寄存器38的值可以被硬件修改或替換以便創(chuàng)建所修改的訪問許可,諸如所修改的訪問許可66。作為選擇,可以依照其它方式,諸如按照其它硬件或軟件方法,來根據狀態(tài)信息60有選擇地修改訪問許可58,以便生成所修改的訪問許可66。
然后流程繼續(xù)至塊92,在那里根據所修改的訪問許可來有選擇地執(zhí)行所請求的訪問。例如,如果主裝置12請求對非易失性存儲器36的讀取訪問,并且主裝置12讀取訪問保護字段72表明允許由主裝置12進行讀取訪問,那么將要執(zhí)行主裝置12的請求(假定它沒有被訪問修改電路40修改)。然而,如果狀態(tài)信息60表明應當修改主裝置12的讀取訪問許可(例如拒絕而不是允許),那么訪問修改電路40可以修改所述讀取訪問許可(并且把它作為所修改的訪問許可66的一部分提供),以便將拒絕而不是允許所請求的讀取訪問,從而覆蓋了主裝置12讀取訪問保護字段72。然后流程在結束94結束。(注意到,當每個經由存儲器控制器32對存儲器36進行訪問請求時,可以重復圖3的流程。)因此,對于主裝置(諸如主裝置12或14)對非易失性存儲器36的每個訪問,訪問保護控制寄存器38提供訪問許可58,所述訪問許可58可以用來確定是否應當允許當前訪問。然而,取決于數據處理系統(tǒng)10的狀態(tài)信息,存在其中可能希望覆蓋這些可軟件編程的寄存器(從而產生所修改的訪問許可66)。例如,如果訪問保護控制寄存器38是可軟件編程的,那么在訪問保護控制寄存器38內所存儲的許可可能已經被不安全的軟件改變以致錯誤地允許訪問那些需要被保護的安全信息。因此,訪問修改電路40可以用來提供修改(諸如硬件覆蓋),取決于數據處理系統(tǒng)10的一定狀態(tài)信息或條件,所述訪問修改電路40可以用來修改所述訪問保護控制寄存器38的訪問許可以便防止訪問安全信息。
在一個例子中,在調試操作期間可能需要限制訪問,這是因為在調試期間數據處理系統(tǒng)10通常被更多地訪問。因此,在一個實施例中,狀態(tài)信息60包括來自調試電路(未示出)的信息,用于表明何時啟用調試。在這種情況下,在訪問保護控制寄存器38內所存儲的一些或所有主裝置12和14的許可可以被訪問修改電路40修改。
在另一例子中,在從不安全或未驗證的存儲器進行操作期間,可能需要修改訪問以便確保數據處理系統(tǒng)10的安全性,并且防止可能由于例如在這些不安全或未驗證的存儲器內所存儲的錯誤或敵對軟件而導致的破壞。
在另一例子中,當已經編程存儲器時可以修改訪問許可。例如,參照圖1,當修改非易失性存儲器36時,可以修改對非易失性存儲器36的訪問許可,這是因為它不可能確保非易失性存儲器36的所修改部分的安全性。例如,非易失性存儲器36可能已經被修改為包括壞的數據、有誤信息或存儲了錯誤或敵對的軟件。在這種情況下,狀態(tài)信息60可以包括從存儲器控制器32諸如經由導線64所提供的信息。
在又一例子中,可以對于直接存儲器訪問(DMA)操作修改訪問許可。在此例子中,狀態(tài)信息60可以包括來自DMA的、用于表明出現DMA操作的信號(其中例如,主裝置12或14可以是或包括DMA)。在另一例子中,當引導操作時可以修改訪問許可從而確保安全信息仍然是安全的,這是因為系統(tǒng)可能會由于錯誤的固件、軟件或設置而被引導到未知狀態(tài)中。還可以根據軟件安全性校驗來修改訪問許可,以致不允許在訪問保護控制寄存器38內所存儲的訪問許可控制訪問(即被覆蓋或修改)直到可以校驗所述軟件為止。還可以根據數據處理系統(tǒng)10或主裝置12和14的安全等級來修改訪問許可。例如,每個主裝置可以具有變化的安全等級(只是在安全和不安全之間變化),其中根據在特定訪問請求期間的安全等級,可以修改控制寄存器38的訪問許可。還可以根據安全性監(jiān)控操作來修改訪問許可。例如,在數據處理系統(tǒng)10中可以存在安全性監(jiān)視器(未示出),所述安全性監(jiān)視器用于監(jiān)督在數據處理系統(tǒng)10內的操作以便確保沒有違反安全性。因此,當由安全性監(jiān)視器檢測到一定的條件時,可以據此修改訪問。因此狀態(tài)信息60可以用來向訪問修改電路40提供與這些狀態(tài)、條件和操作有關的信息。
在另一例子中,還可以根據數據處理系統(tǒng)或存儲器控制器32的操作模式來修改訪問許可,如狀態(tài)信息60所表明的。例如,如果數據處理系統(tǒng)10進入簡化級操作狀態(tài)(諸如最小操作狀態(tài),其中只支持基本的操作集),那么可以修改控制寄存器38的所編程的訪問許可從而當在簡化級操作時保護數據處理系統(tǒng)10。在另一實施例中,可以根據數據處理系統(tǒng)10的故障監(jiān)視器(未示出)來修改訪問許可。例如,響應于故障監(jiān)視器檢測到在數據處理系統(tǒng)10的任何部分內的故障,可以修改控制寄存器38的訪問許可從而當故障檢測時限制訪問。在此例子中,可以經由狀態(tài)信息60向訪問修改電路40提供來自所述故障監(jiān)視器的信號。在又一實施例中,可以根據外部總線操作來修改訪問許可。例如,在外部總線操作期間,外部源可能試圖訪問或修改安全信息,或者破壞存儲器36或者數據處理系統(tǒng)10。因此,在外部總線操作期間可以限制對訪問的訪問許可從而確保數據處理系統(tǒng)10的安全性。
注意到,對于其中狀態(tài)信息(例如經由狀態(tài)信息60提供)可以用來有選擇地修改控制寄存器38的訪問許可的不同情況,上面提供了許多例子。替換實施例可以使用比上述信息更多或更少的信息。此外,可以使用上述情況的組合,其中取決于數據處理系統(tǒng)10的需要,可以依照任何方式來組合狀態(tài)信息60以便確定何時應當修改訪問許可。即,狀態(tài)信息60可以取自各種不同的資源或源,包括來自存儲器控制器32內的那些,用于向訪問修改電路40表明必要的狀態(tài)信息以致訪問修改電路40可以適當地確定是否修改訪問許可。此外,狀態(tài)信息可以包括用于反映數據處理系統(tǒng)10或其任何組件的狀態(tài)或條件的任何類型的信息。所述狀態(tài)信息還可以表明一個或多個主裝置(諸如主裝置12和14)的可信賴性。此外,還要注意,盡管上面大部分例子是參考限制訪問許可來提供的,然而取決于數據處理系統(tǒng)10的設計,訪問修改電路40也可以使用狀態(tài)信息來增加或擴大訪問許可。
因此,應當理解可以實現改進了安全性的數據處理系統(tǒng),包括多個主裝置的數據處理系統(tǒng)。存取修改電路可以用來根據各種不同類型的狀態(tài)信息來有選擇地修改訪問許可。因此,隨著數據處理系統(tǒng)10的狀態(tài)改變,通過在每個訪問的基礎上限制或擴大訪問許可,可以根據需要來保持安全性。此外,可以以每個主裝置為基礎和以每個訪問類型為基礎來執(zhí)行修改。狀態(tài)信息可以包括從數據處理系統(tǒng)10的各個部分所接收的信息,包括在存儲器控制器32內的信息,并且可以包括從在數據處理系統(tǒng)10之外的源所接收的信息。還要注意,訪問修改電路可以使用硬件覆蓋機構來有選擇地修改訪問許可。作為選擇,可以使用其它硬件、軟件或其組合、機構來生成修改的訪問許可66。
在上述說明中,已經參考具體實施例描述了本發(fā)明。然而,一個本領域內普通技術人員應當理解,在不脫離如權利要求所闡明的本發(fā)明的范圍的情況下,可以進行各種修改和變化。例如,可以不同于在圖1的實施例中所圖示的那樣來組織數據處理系統(tǒng)10和存儲器控制器32。此外,可以采用硬件、軟件和固件的任何組合來實現所述電路。據此,應當認為說明書和附圖是說明性的而并非是限制性的,并且意在將所有這種修改包括在本發(fā)明的范圍內。
相對于具體實施例上面已經描述了益處、其它優(yōu)點和問題的解決辦法。然而,可能導致任何益處、優(yōu)點或解決辦法出現或使其更加顯著的益處、優(yōu)點、問題的解決辦法和任何元素不應當被理解為任何或所有權利要求的關鍵性的、要求的或必需的特征或元素。如這里所用的,術語一個或一種被定義為一個或多個而并非單指一個。如這里所用的,術語包含和/或具有被定義為包括(即,開放式語言)。如這里所用的,術語“包括”、“包含”或其任何其它變化意在覆蓋非排他性的包含,以致包括一列元素的過程、方法、物品或設備并不只包括那些元素,而且還可以包括沒有明顯地列出的其它元素或為這種過程、方法、物品或設備所固有的元素。
權利要求
1.一種訪問許可電路,包括第一訪問保護電路,用于存儲對應于第一總線主裝置的第一訪問許可信息;第二訪問保護電路,用于存儲對應于第二總線主裝置的第二訪問許可信息;訪問修改電路,與所述第一和第二訪問保護電路耦合;和允許訪問指示符,由所述訪問修改電路提供,其中響應于由所述第一總線主裝置的第一訪問,所述訪問修改電路接收第一狀態(tài)信息并且接收所述第一訪問許可信息,其中根據所述第一狀態(tài)信息,所述訪問修改電路有選擇地修改所述第一訪問許可信息以便生成第一修改的訪問許可信息,其中所述第一修改的訪問許可信息用來確定所述允許訪問指示符是否將允許所述第一訪問;其中響應于由所述第二總線主裝置的第二訪問,所述訪問修改電路接收第二狀態(tài)信息并且接收所述第二訪問許可信息,其中根據所述第二狀態(tài)信息,所述訪問修改電路有選擇地修改所述第二訪問許可信息以便生成第二修改的訪問許可信息,并且其中所述第二修改的訪問許可信息用來確定所述允許訪問指示符是否將允許所述第二訪問。
2.如權利要求1所述的訪問許可電路,其中所述第一狀態(tài)信息表明所述第一總線主裝置的可信賴性。
3.如權利要求1所述的訪問許可電路,其中所述第一狀態(tài)信息涉及引導操作。
4.如權利要求1所述的訪問許可電路,其中所述訪問許可電路包括數據處理系統(tǒng)的一部分。
5.如權利要求4所述的數據處理系統(tǒng),還包括調試電路,用于提供所述第一狀態(tài)信息。
6.如權利要求4所述的數據處理系統(tǒng),還包括直接存儲器訪問(DMA)電路,用于提供所述第一狀態(tài)信息。
7.如權利要求4所述的數據處理系統(tǒng),還包括外部總線接口電路,用于提供所述第一狀態(tài)信息。
8.如權利要求1所述的方法,其中所述第一總線主裝置包括用于執(zhí)行指令的主裝置、用于執(zhí)行直接存儲器訪問(DMA)操作的主裝置和用于執(zhí)行調試操作的主裝置中的至少一個。
9.一種用于確定訪問保護的方法,包括接收對應于第一主裝置的第一訪問請求;確定對應于所述第一主裝置的第一訪問許可;接收第一狀態(tài)信息;根據所述第一狀態(tài)信息來有選擇地修改所述第一訪問許可;接收來自第二主裝置的第二訪問請求;確定對應于所述第二主裝置的第二訪問許可;接收第二狀態(tài)信息;并且根據所述第二狀態(tài)信息來有選擇地修改所述第二訪問許可,其中從與所述第二狀態(tài)信息不同的源提供所述第一狀態(tài)信息。
10.一種用于確定訪問保護的方法,包括接收對應于第一主裝置的第一訪問請求;提供第一狀態(tài)信息;根據所述第一訪問請求來確定第一訪問許可;根據所述第一狀態(tài)信息來有選擇地修改所述第一訪問許可;接收對應于第二主裝置的第二訪問請求;提供第二狀態(tài)信息;根據所述第二訪問請求來確定第二訪問許可;根據所述第二狀態(tài)信息來有選擇地修改所述第二訪問許可。
全文摘要
一種用于確定訪問保護(96)的方法和設備,包括接收對應于多個主裝置(12,14)的多個訪問請求(84),確定訪問許可(86),提供狀態(tài)信息(60),根據所述訪問請求(84)來確定訪問許可(86),并且根據所述狀態(tài)信息(90)來有選擇地修改所述訪問許可。所述狀態(tài)信息(60)可以涉及調試操作、來自不安全或未驗證的存儲器的操作、存儲器編程、直接存儲器訪問(DMA)操作、引導操作、軟件安全性校驗、安全等級、安全性監(jiān)控操作、操作模式、故障監(jiān)控、外部總線接口等(88)。
文檔編號G06F13/28GK1799030SQ200480014969
公開日2006年7月5日 申請日期2004年4月30日 優(yōu)先權日2003年5月29日
發(fā)明者威廉·C.·莫耶爾, 阿福扎·M.·瑪利克 申請人:飛思卡爾半導體公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
五家渠市| 凤山县| 哈尔滨市| 孝感市| 门源| 达尔| 夹江县| 井冈山市| 兰溪市| 通州区| 清涧县| 循化| 阳春市| 宁蒗| 凤山县| 文山县| 景宁| 丽江市| 太原市| 视频| 陕西省| 灌云县| 柘城县| 同德县| 无锡市| 游戏| 舞阳县| 青龙| 河曲县| 莱阳市| 宿迁市| 乌兰察布市| 巫山县| 玉林市| 陆丰市| 西贡区| 得荣县| 清涧县| 德州市| 紫金县| 凯里市|