国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      動(dòng)態(tài)資源共享的制作方法

      文檔序號(hào):6539072閱讀:223來(lái)源:國(guó)知局
      動(dòng)態(tài)資源共享的制作方法
      【專利摘要】本發(fā)明公開(kāi)了動(dòng)態(tài)資源共享。設(shè)備和技術(shù)的代表性實(shí)現(xiàn)提供了資源的動(dòng)態(tài)安全共享??梢詫①Y源模塊劃分成多個(gè)功能塊,可以將這些功能塊分配給非安全應(yīng)用和安全應(yīng)用。安全性監(jiān)視器可以監(jiān)視處理器活動(dòng)并且確定安全資源何時(shí)可以被訪問(wèn)。
      【專利說(shuō)明】動(dòng)態(tài)資源共享
      【背景技術(shù)】
      [0001]在知識(shí)產(chǎn)權(quán)(IP)盜版和其它形式的潛在有害活動(dòng)是許多操作或計(jì)算環(huán)境中的主要擔(dān)憂。通常,例如,由于硬件的配置,微控制器不提供用于執(zhí)行專有或保密例程的受信任的執(zhí)行環(huán)境。例如,硬件的架構(gòu)可能更多地基于經(jīng)濟(jì)的設(shè)計(jì)考慮,尤其是當(dāng)硬件要部署在工業(yè)應(yīng)用中的時(shí)候。當(dāng)考慮到這樣的微控制器可能在其中進(jìn)行操作的潛在地被暴露的環(huán)境時(shí),這可能是有問(wèn)題的。諸如固件、軟件、數(shù)據(jù)等之類的寶貴的IP資產(chǎn)在這些情況可能會(huì)易于遭受攻擊。
      [0002]已提出的解決方案通常包括對(duì)資源的重復(fù),這可能包括額外的硬件組件或系統(tǒng)。例如,片上系統(tǒng)(SoC)可以在芯片上包括除了類似通用組件之外的額外的“安全”組件(例如,出于數(shù)字版權(quán)管理的目的)。例如,安全組件可以僅由受信任的應(yīng)用在安全環(huán)境中使用。這種安全組件可以包括時(shí)鐘、中斷控制器、小鍵盤控制器、DMA模塊、存儲(chǔ)器等??偟膩?lái)說(shuō),資源重復(fù)需要額外的管芯尺寸和增加的功耗。
      [0003]在其它所提出的解決方案中,可以使用設(shè)計(jì)的時(shí)間分區(qū)將模塊從非安全模式切換到安全模式并且切換回來(lái),以根據(jù)需要來(lái)運(yùn)行安全應(yīng)用。然而,一旦將模塊暫時(shí)指派給非安全應(yīng)用或者安全應(yīng)用,整個(gè)模塊在一段時(shí)間期間通常不可用于另一個(gè)“世界”(例如,分別為安全應(yīng)用/例程或非安全應(yīng)用/例程),直到所指派的應(yīng)用將其放棄。一般來(lái)說(shuō)情況是如此,即使模塊包括若干能夠并發(fā)并且獨(dú)立使用的功能塊。在這種情況下,模塊的功能塊中的許多(例如,多數(shù))可以是空閑的,而模塊的塊中的其余部分(例如,幾個(gè))正在由所指派的應(yīng)用使用。該技術(shù)可能限制設(shè)計(jì)的應(yīng)用和/或用例的范圍,并且可能是低效的。

      【發(fā)明內(nèi)容】

      [0004]根據(jù)本發(fā)明的一個(gè)方面,提供了一種裝置,包括:嗅探器組件,其被布置為:監(jiān)視處理器并且確定在所述處理器上執(zhí)行的應(yīng)用是否請(qǐng)求對(duì)資源的安全訪問(wèn);以及輸出組件,其被布置為:當(dāng)所述應(yīng)用是安全應(yīng)用時(shí),輸出準(zhǔn)予對(duì)共享的資源模塊的安全功能塊的安全訪問(wèn)的安全模式信號(hào)。
      [0005]根據(jù)本發(fā)明的另一個(gè)方面,提供了一種系統(tǒng),包括:處理器,其被布置為:并發(fā)地執(zhí)行非安全應(yīng)用和安全應(yīng)用;安全性監(jiān)視器,其被布置為:監(jiān)視所述處理器并且當(dāng)所述安全應(yīng)用請(qǐng)求對(duì)資源模塊的訪問(wèn)時(shí)輸出安全模式信號(hào);一個(gè)或多個(gè)資源模塊,每個(gè)資源模塊包括多個(gè)功能塊,所述多個(gè)功能塊中的一個(gè)或多個(gè)功能塊被分配給所述非安全應(yīng)用,并且所述多個(gè)功能塊中的一個(gè)或多個(gè)其它功能塊被并發(fā)地分配給所述安全應(yīng)用;以及一個(gè)或多個(gè)安全性套接字,其被布置為:確定所述一個(gè)或多個(gè)資源模塊的所分配的功能塊中的每一個(gè)的訪問(wèn)許可,所述訪問(wèn)許可基于功能塊是被分配給所述非安全應(yīng)用還是被分配給所述安全應(yīng)用。
      [0006]根據(jù)本發(fā)明的另一個(gè)方面,提供了一種方法,包括:從第一應(yīng)用接收針對(duì)模塊的資源的第一請(qǐng)求,所述第一應(yīng)用是安全應(yīng)用或非安全應(yīng)用中的一個(gè);將所述模塊的第一功能塊分配給所述第一應(yīng)用,所述模塊包括多個(gè)功能塊;從第二應(yīng)用接收針對(duì)所述模塊的資源的第二請(qǐng)求,所述第二應(yīng)用是所述安全應(yīng)用或所述非安全應(yīng)用中的另一個(gè);以及將所述模塊的第二功能塊分配給所述第二應(yīng)用,所述第二應(yīng)用訪問(wèn)所述模塊與所述第一應(yīng)用訪問(wèn)所述模塊是并發(fā)的,所述第一功能塊與所述第二功能塊通信地隔離。
      [0007]根據(jù)本發(fā)明的另一個(gè)方面,提供了一種控制器設(shè)備,其包括處理器以及具有存儲(chǔ)在其上的處理器可執(zhí)行指令的一個(gè)或多個(gè)存儲(chǔ)器存儲(chǔ)設(shè)備,當(dāng)由所述處理器執(zhí)行時(shí),所述處理器可執(zhí)行指令指引所述處理器執(zhí)行包括以下的操作:從第一應(yīng)用接收針對(duì)模塊的資源的第一請(qǐng)求,所述第一應(yīng)用是安全應(yīng)用或非安全應(yīng)用中的一個(gè);將所述模塊的第一功能塊分配給所述第一應(yīng)用,所述模塊包括多個(gè)功能塊;從第二應(yīng)用接收針對(duì)所述模塊的資源的第二請(qǐng)求,所述第二應(yīng)用是所述安全應(yīng)用或所述非安全應(yīng)用中的另一個(gè);以及將所述模塊的第二功能塊分配給所述第二應(yīng)用,所述第二應(yīng)用訪問(wèn)所述模塊與所述第一應(yīng)用訪問(wèn)所述模塊是并發(fā)的,所述第一功能塊與所述第二功能塊通信地隔離。
      【專利附圖】

      【附圖說(shuō)明】
      [0008]參照附圖闡述了詳細(xì)描述。在圖中,參考編號(hào)的一個(gè)或多個(gè)最左邊的位標(biāo)識(shí)該參考編號(hào)首次出現(xiàn)在其中的圖。相同的參考編號(hào)在不同的圖中的使用指示相似或相同的項(xiàng)目。
      [0009]對(duì)于本討論,圖中所示的設(shè)備和系統(tǒng)被示為具有多個(gè)組件。如本文中所描述的,設(shè)備和/或系統(tǒng)的各種實(shí)現(xiàn)可以包括更少的組件并且仍然在本公開(kāi)的范圍之內(nèi)??商娲?,設(shè)備和/或系統(tǒng)的其它實(shí)現(xiàn)可以包括額外的組件或者所描述的組件的各種組合,并且仍然在本公開(kāi)的范圍之內(nèi)。
      [0010]圖1是根據(jù)一種實(shí)現(xiàn)的示例微控制器拓?fù)涞囊徊糠值目驁D,在其中可以應(yīng)用本文中公開(kāi)的技術(shù)和設(shè)備。
      [0011]圖2是根據(jù)一種實(shí)現(xiàn)的、由一些功能塊組成的示例模塊的框圖。示出了該模塊和與其相關(guān)聯(lián)的安全性套接字包裝器以及各個(gè)互連路徑。
      [0012]圖3是根據(jù)一種實(shí)現(xiàn)的、在功能塊級(jí)上示出的示例中斷傳遞機(jī)制的框圖。
      [0013]圖4A是包括專用中斷處理的示例中斷處理方案的框圖。
      [0014]圖4B是根據(jù)一種實(shí)現(xiàn)的、使用公共中斷用于安全和通用使用的示例中斷處理方案的框圖。
      [0015]圖5A是根據(jù)一種實(shí)現(xiàn)的、示例安全性監(jiān)視器的框圖。
      [0016]圖5B是根據(jù)一種實(shí)現(xiàn)示出非安全世界與安全世界之間的示例切換的狀態(tài)圖。
      [0017]圖6是根據(jù)一種實(shí)現(xiàn)示出非安全世界與安全世界之間的切換的示例階段的進(jìn)度圖。
      [0018]圖7是根據(jù)一種實(shí)現(xiàn)示出用于非安全世界與安全世界之間的受控轉(zhuǎn)換的技術(shù)的進(jìn)度圖,尤其詳述了所涉及的中斷。
      [0019]圖8是根據(jù)一種實(shí)現(xiàn)示出向非安全應(yīng)用指派功能塊的示例階段的進(jìn)度圖。
      [0020]圖9是根據(jù)一種實(shí)現(xiàn)示出向安全應(yīng)用指派功能塊的示例階段的進(jìn)度圖。
      [0021]圖10是根據(jù)一種實(shí)現(xiàn)示出用于在非安全應(yīng)用與安全應(yīng)用之間提供動(dòng)態(tài)資源共享的示例過(guò)程的流程圖?!揪唧w實(shí)施方式】
      [0022]概沭
      設(shè)備和技術(shù)的代表性實(shí)現(xiàn)在不需要重復(fù)的硬件以及伴隨的增加的管芯尺寸和功耗的情況下提供了非安全應(yīng)用和安全應(yīng)用對(duì)資源的動(dòng)態(tài)安全共享。在一個(gè)示例中,可以將資源模塊劃分成多個(gè)功能塊,可以將這些功能塊分配給非安全應(yīng)用和安全應(yīng)用。在一種實(shí)現(xiàn)中,可以將來(lái)自資源模塊的一些功能塊分配給非安全應(yīng)用,并且可以并發(fā)地將來(lái)自資源模塊的其它功能塊分配給安全應(yīng)用,而沒(méi)有數(shù)據(jù)泄漏或破壞一個(gè)或多個(gè)安全應(yīng)用的安全性。
      [0023]在一種實(shí)現(xiàn)中,安全性監(jiān)視器可以監(jiān)視處理器活動(dòng),并且基于在該處理器上執(zhí)行的應(yīng)用針對(duì)安全資源的請(qǐng)求來(lái)確定安全資源何時(shí)可以被訪問(wèn)。例如,當(dāng)安全應(yīng)用請(qǐng)求訪問(wèn)資源模塊時(shí),安全性監(jiān)視器可以輸出安全模式信號(hào)。然后,當(dāng)對(duì)安全資源的訪問(wèn)結(jié)束時(shí),安全性監(jiān)視器可以對(duì)安全模式信號(hào)解斷言(de-assert)。
      [0024]在各種實(shí)現(xiàn)中,資源模塊與布置用于確定這些資源模塊的所分配的功能塊中的每一個(gè)功能塊的訪問(wèn)許可的安全性套接字相關(guān)聯(lián)。例如,訪問(wèn)許可可以基于功能塊是分配給了非安全應(yīng)用還是分 配給了安全應(yīng)用。
      [0025]在本公開(kāi)中討論了用于安全資源共享的各種實(shí)現(xiàn)和技術(shù)。參照附圖中示出的示例微控制器設(shè)備和系統(tǒng)對(duì)技術(shù)和設(shè)備進(jìn)行了討論。然而,這并非旨在是限制性的,而是為了容易討論和說(shuō)明方便。所討論的技術(shù)和設(shè)備可以應(yīng)用于各種處理器和控制器設(shè)備設(shè)計(jì)、嵌入式設(shè)備和系統(tǒng)、結(jié)構(gòu)等中的許多,并且仍然在本公開(kāi)的范圍之內(nèi)。在本公開(kāi)中對(duì)術(shù)語(yǔ)微控制器或控制器的使用旨在包括任何和所有這樣的處理器設(shè)備、系統(tǒng)、結(jié)構(gòu)等。
      [0026]在下面使用多個(gè)示例對(duì)實(shí)現(xiàn)進(jìn)行了更加詳細(xì)的解釋。雖然在這里和下面討論了各種實(shí)現(xiàn)和示例,但是通過(guò)對(duì)單獨(dú)實(shí)現(xiàn)和示例的特征和元素進(jìn)行組合,進(jìn)一步的實(shí)現(xiàn)和示例可以是可能的。
      [0027]示例控制器拓?fù)?br> 圖1是根據(jù)一種實(shí)現(xiàn)的示例控制器(例如,微控制器等)拓?fù)?00的一部分的框圖,在其中可以應(yīng)用本文中公開(kāi)的技術(shù)和設(shè)備。示出示例拓?fù)?00具有至少兩個(gè)互連總線(LI和L2)、在LI互連上具有數(shù)量“η”個(gè)資源(例如,從設(shè)備)模塊102 (“模塊”),并且在L2互連上具有另外數(shù)量“m”個(gè)模塊102。在各種實(shí)現(xiàn)中,拓?fù)?00可以具有任意數(shù)量的總線、互連和模塊102以及額外的組件。
      [0028]例如,如下面進(jìn)一步描述的,在圖1的示例拓?fù)?00中,每個(gè)模塊102與布置用于確定針對(duì)模塊102的訪問(wèn)許可的安全性套接字104相關(guān)聯(lián)。此外,圖1的圖示包括中央處理單元(CPU) 106、安全性監(jiān)視器108、存儲(chǔ)器控制器110、安全存儲(chǔ)器112、通用存儲(chǔ)器114、橋組件116和總線主設(shè)備組件118。在各種實(shí)現(xiàn)中,拓?fù)?00可以包括更少的、額外的或者替代的組件,并且仍然在本公開(kāi)的范圍之內(nèi)。
      [0029]在一種實(shí)現(xiàn)中,資源模塊(“模塊”)102表示可以由在CPU 106上執(zhí)行的應(yīng)用用來(lái)執(zhí)行操作或任務(wù)的資源。例如,模塊102可以包括像實(shí)時(shí)時(shí)鐘的基準(zhǔn)組件;諸如中斷控制器的任務(wù)管理組件;諸如小鍵盤控制器的輸入-輸出管理組件;諸如直接存儲(chǔ)器存取(DMA)模塊的存儲(chǔ)器管理組件等。應(yīng)當(dāng)理解的是:這些示例僅是模塊102的大量可能的類型中的幾個(gè)示例。一般地說(shuō),可以由在CPU 106上執(zhí)行的應(yīng)用請(qǐng)求和/或采用的任何和所有資源都可以是模塊102。[0030]在各種實(shí)現(xiàn)中,CPU 106被布置為:并發(fā)地執(zhí)行一個(gè)或多個(gè)非安全應(yīng)用以及一個(gè)或多個(gè)安全應(yīng)用。CPU 106可以包括單處理器或多處理器計(jì)算機(jī)、處理器或控制器系統(tǒng)、小型計(jì)算設(shè)備、大型設(shè)備、以及個(gè)人計(jì)算機(jī)、手持式或移動(dòng)計(jì)算設(shè)備(例如,平板電腦、智能電話等)、基于微處理器的或可編程的消費(fèi)或工業(yè)電子設(shè)備等。還可以在分布式計(jì)算環(huán)境中實(shí)施所示出的方面,在分布式計(jì)算環(huán)境中,任務(wù)由通過(guò)通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行。然而,本公開(kāi)的方面中的一些(如果不是全部)方面可以在獨(dú)立的計(jì)算設(shè)備上實(shí)施。在分布式計(jì)算環(huán)境中,程序組件可以位于本地和遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備(諸如存儲(chǔ)器設(shè)備112、114)兩者中。
      [0031]在一種實(shí)現(xiàn)中,安全性監(jiān)視器108被布置為:針對(duì)由在處理器106上執(zhí)行的應(yīng)用進(jìn)行的安全模式進(jìn)入和退出序列來(lái)監(jiān)視處理器(即,CPU 106)。例如,安全性監(jiān)視器108被布置為:當(dāng)被授權(quán)的應(yīng)用開(kāi)始安全事務(wù)或者發(fā)起對(duì)安全資源的訪問(wèn)時(shí),斷言安全模式信號(hào)。進(jìn)一步的,當(dāng)應(yīng)用結(jié)束安全事務(wù)或者終止對(duì)安全資源的訪問(wèn)時(shí),安全性監(jiān)視器108對(duì)安全模式信號(hào)解斷言。
      [0032]在一種實(shí)現(xiàn)中,如圖4中所示,安全性監(jiān)視器108包括嗅探器組件402,其被布置為監(jiān)視處理器106并且確定在處理器106上執(zhí)行的應(yīng)用是否請(qǐng)求對(duì)諸如模塊102、存儲(chǔ)器114等的資源的安全訪問(wèn)。
      [0033]在各種實(shí)現(xiàn)中,當(dāng)進(jìn)入安全模式的條件滿足時(shí),安全性監(jiān)視器108輸出安全模式信號(hào)。例如,當(dāng)非安全應(yīng)用通過(guò)預(yù)定義的合約(例如,經(jīng)由啟動(dòng)ROM)等請(qǐng)求資源模塊102的功能塊202指派給該非安全應(yīng)用時(shí),啟動(dòng)ROM代碼(或者類似的機(jī)構(gòu))可以執(zhí)行序列來(lái)使安全性監(jiān)視器108相信請(qǐng)求是善意的。在這樣的示例中,安全性監(jiān)視器108輸出安全模式信號(hào),從而斷言安全模式。在這些實(shí)現(xiàn)中,安全性監(jiān)視器108可以包括輸出組件(未示出),例如,輸出組件可以被布置為:當(dāng)請(qǐng)求應(yīng)用是安全應(yīng)用或者請(qǐng)求應(yīng)用具有訪問(wèn)安全資源的授權(quán)時(shí),輸出準(zhǔn)予對(duì)共享的資源模塊的安全功能塊的安全訪問(wèn)的安全模式信號(hào)。
      [0034]在另外的實(shí)現(xiàn)中,安全性監(jiān)視器108被布置為:處理或管理安全中斷請(qǐng)求。用這種方式,中斷以安全的方式處理,并且與非安全系統(tǒng)或應(yīng)用隔離。例如,安全性監(jiān)視器108可以對(duì)安全中斷請(qǐng)求進(jìn)行聚合,并且將經(jīng)聚合的安全中斷請(qǐng)求轉(zhuǎn)發(fā)到處理器106和/或中斷控制器來(lái)進(jìn)行對(duì)中斷的處理。
      [0035]在一種示例實(shí)現(xiàn)中,安全性監(jiān)視器108包括中斷處理組件(未示出),中斷處理組件被布置為:當(dāng)安全模式信號(hào)被斷言時(shí),使用安全中斷服務(wù)例程(ISR)處理程序?qū)χ袛嘞蛄考拇嫫鬟M(jìn)行重新編程。例如,安全性監(jiān)視器108可以被布置為:使用(例如,在安全ROM中定義的)安全模式ISR的地址對(duì)專用安全模式中斷向量條目進(jìn)行編程,并且將中斷轉(zhuǎn)發(fā)到CPU106和/或中斷控制器來(lái)進(jìn)行對(duì)中斷的處理。在不同的實(shí)現(xiàn)中,其它技術(shù)可以用于使用安全性監(jiān)視器108來(lái)處理安全中斷。
      [0036]因此,對(duì)由指派給安全世界的功能塊202斷言的任何中斷進(jìn)行安全地處理,而沒(méi)有來(lái)自惡意應(yīng)用等的攔截。
      [0037]在進(jìn)一步的實(shí)現(xiàn)中,安全性監(jiān)視器108被布置為:當(dāng)斷言了安全模式信號(hào)時(shí)禁用控制器100的調(diào)試基礎(chǔ)結(jié)構(gòu),并且當(dāng)解斷言了安全模式信號(hào)時(shí)啟用調(diào)試基礎(chǔ)結(jié)構(gòu)。用這種方式,安全操作和事務(wù)也保持與調(diào)試基礎(chǔ)結(jié)構(gòu)隔離,從而提供了額外的安全性等級(jí)。在各種實(shí)現(xiàn)中,替換的或額外的保護(hù)機(jī)制可以用于防止當(dāng)在安全模式中時(shí)未授權(quán)的調(diào)試。[0038]如果包括的話,那么存儲(chǔ)器控制器100可以被布置為:基于由安全性監(jiān)視器108輸出的安全模式信號(hào)來(lái)控制應(yīng)用和/或例程對(duì)存儲(chǔ)器存儲(chǔ)設(shè)備的訪問(wèn),所述存儲(chǔ)器存儲(chǔ)設(shè)備諸如安全存儲(chǔ)器112和通用存儲(chǔ)器114。例如,當(dāng)安全性監(jiān)視器108斷言安全模式信號(hào)時(shí),可以向安全應(yīng)用準(zhǔn)予對(duì)安全存儲(chǔ)器112的訪問(wèn)。相反,當(dāng)安全性監(jiān)視器108解斷言安全模式信號(hào)時(shí),可以拒絕對(duì)安全存儲(chǔ)器112的訪問(wèn)。
      [0039]在各種實(shí)現(xiàn)中,可以使用處理器(B卩,CPU 106)可訪問(wèn)的任何形式的計(jì)算機(jī)可讀介質(zhì)來(lái)實(shí)現(xiàn)存儲(chǔ)器存儲(chǔ)設(shè)備112和114。例如,計(jì)算機(jī)可讀介質(zhì)可以包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。
      [0040]計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。存儲(chǔ)器112,114是計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的示例??梢越o出的另外類型的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括但不限于:RAM、ROM、EEPR0M、閃速存儲(chǔ)器或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光學(xué)存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備、或者可以用于存儲(chǔ)所期望的信息且可以由處理器106訪問(wèn)的任何其它介質(zhì)。
      [0041]相對(duì)地,通信介質(zhì)典型地在調(diào)制的數(shù)據(jù)信號(hào)中體現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),諸如載波或其它傳輸機(jī)制。
      [0042]如果包括的話,那么橋116提供總線、互連(諸如L1,L2)等之間的信號(hào)路徑。在各種實(shí)現(xiàn)中,橋116可包括一個(gè)或多個(gè)端口以適應(yīng)互連等。
      [0043]在另一種實(shí)現(xiàn)中,拓?fù)?00可以包括總線主設(shè)備118。在該實(shí)現(xiàn)中,總線主設(shè)備118被布置為指引總線、互連等上的業(yè)務(wù)。例如,總線主設(shè)備118可以指引去往和來(lái)自輸入/輸出組件(諸如一個(gè)或多個(gè)模塊102)的數(shù)據(jù)或分組等。在各種實(shí)現(xiàn)中,總線主設(shè)備118通常相對(duì)于輸入/輸出設(shè)備和/或模塊102對(duì)數(shù)據(jù)、地址等的信號(hào)路徑進(jìn)行(動(dòng)態(tài)地或初始地)控制。在另一種實(shí)現(xiàn)中,基于位于諸如CPU 106等的別處的其它(例如,優(yōu)先級(jí)、額外的等)總線業(yè)務(wù)控制 ,總線主設(shè)備118可以是第二或后續(xù)的總線主設(shè)備。
      [0044]在替代的實(shí)現(xiàn)中,控制器拓?fù)?00可以包括更少的組件、額外的組件或替代的組件來(lái)執(zhí)行所討論的功能或者用于其它所期望的功能性。
      [0045]示例資源模塊
      圖2是控制器拓?fù)?00的一部分的框圖,其示出了示例模塊102以及相關(guān)聯(lián)的組件的細(xì)節(jié)。在一種實(shí)現(xiàn)中,模塊102由一些功能塊202組成。在圖2的圖示中,示出了模塊102和與其相關(guān)聯(lián)的安全性套接字(也被稱為包裝器)104以及相關(guān)聯(lián)的分配器204。應(yīng)當(dāng)理解的是:分配器204可以如圖所示與模塊102相關(guān)聯(lián)、或者可以與另一模塊相關(guān)聯(lián)、或者可以是單獨(dú)的元件。
      [0046]在一種實(shí)現(xiàn)中,如圖2中所示,共享的資源模塊102被劃分成一些功能塊202,這些功能塊202可指派為安全功能塊或非安全功能塊。在一種實(shí)現(xiàn)中,基于功能塊202被應(yīng)用或例程請(qǐng)求的順序,并且根據(jù)請(qǐng)求應(yīng)用的安全性質(zhì)或授權(quán),將功能塊202分配為安全或非安全功能塊202。
      [0047]例如,這由功能塊202到特定的“世界”的指派來(lái)表示。在一段持續(xù)時(shí)間內(nèi),可以將每個(gè)功能塊202指派給通用世界402 (即,“非安全世界”、“正常世界”等)或者指派給“安全世界”404 (如圖4B中所示)。指派給安全世界404意味著:當(dāng)安全性監(jiān)視器108斷言(SP,輸出)安全模式信號(hào)時(shí),被授權(quán)的應(yīng)用、例程等可訪問(wèn)功能塊202。換句話說(shuō),功能塊202變成了在特權(quán)操作模式——操作的安全模式中(在一段持續(xù)時(shí)間內(nèi))可訪問(wèn)的專用資源。當(dāng)安全性監(jiān)視器108解斷言(即,停止)安全模式信號(hào)時(shí),任何應(yīng)用、例程等不可訪問(wèn)功能塊202。例如,當(dāng)安全模式?jīng)]有激活時(shí),針對(duì)訪問(wèn)功能塊202的嘗試返回忙信號(hào)等。
      [0048]指派給通用(GP)世界402意味著:無(wú)論安全性監(jiān)視器108是否斷言安全模式信號(hào),任何應(yīng)用、例程等可訪問(wèn)功能塊202。訪問(wèn)指派給GP世界的功能塊202的應(yīng)用不能預(yù)期它們的操作是安全的或者是與其它操作、例程等隔離的。
      [0049]此外,功能塊202可以在一段持續(xù)時(shí)間內(nèi)既不指派給GP世界402也不指派給安全世界404。這意味著:在這段持續(xù)時(shí)間內(nèi),功能塊202是釋放的,并且可獲得來(lái)在未來(lái)被指派給請(qǐng)求應(yīng)用(非安全或者安全應(yīng)用)。
      [0050]例如,在一種實(shí)現(xiàn)中,控制器拓?fù)?00可以包括分配器204,該分配器204被布置為:將一個(gè)或多個(gè)資源模塊102的多個(gè)功能塊202中的一個(gè)或多個(gè)功能塊動(dòng)態(tài)地分配給請(qǐng)求非安全應(yīng)用,和/或?qū)⒁粋€(gè)或多個(gè)資源模塊102的多個(gè)功能塊202中的一個(gè)或多個(gè)其它功能塊動(dòng)態(tài)地分配給請(qǐng)求安全應(yīng)用。在各種實(shí)現(xiàn)中,這可以包括來(lái)自一個(gè)或多個(gè)非安全應(yīng)用的一系列連續(xù)請(qǐng)求和/或來(lái)自一個(gè)或多個(gè)安全應(yīng)用的一系列連續(xù)請(qǐng)求。依照這些請(qǐng)求,分配器204被布置為:按照這些請(qǐng)求的順序,將來(lái)自被請(qǐng)求模塊102的功能塊202分配給請(qǐng)求應(yīng)用。
      [0051]然而,在一種實(shí)現(xiàn)中,從非安全應(yīng)用和安全應(yīng)用背靠背地接收針對(duì)模塊102的請(qǐng)求。例如,在該實(shí)現(xiàn)中,分配器204可以從第一應(yīng)用接收針對(duì)模塊102的資源的第一請(qǐng)求,其中,第一應(yīng)用是安全應(yīng)用或非安全應(yīng)用。分配器204將模塊102的多個(gè)功能塊202的第一功能塊202分配給第一應(yīng)用。隨后,分配器204從第二應(yīng)用接收針對(duì)同一模塊102的資源的第二請(qǐng)求,其中,第二應(yīng)用與第一應(yīng)用相反,例如,相應(yīng)地是非安全應(yīng)用或安全應(yīng)用。相應(yīng)地,分配器204將同一模塊102的第二功能塊202分配給第二應(yīng)用。在該實(shí)現(xiàn)中,第二應(yīng)用與第一應(yīng)用訪問(wèn)模塊102并發(fā)地訪問(wèn)模塊102,然而,第一功能塊202與第二功能塊202通信地隔離,從而使得沒(méi)有數(shù)據(jù)泄漏或者對(duì)安全應(yīng)用或分配給其的一個(gè)或多個(gè)功能塊202的安全性的破壞。
      [0052]因此,在各種實(shí)現(xiàn)中,模塊102的一個(gè)或多個(gè)安全功能塊202可以與模塊102的一個(gè)或多個(gè)非安全功能塊202被非安全應(yīng)用訪問(wèn)并發(fā)地被安全應(yīng)用訪問(wèn)。這可以在沒(méi)有硬件重復(fù)的情況下實(shí)現(xiàn),因?yàn)榘踩δ軌K202與非安全功能塊202是通信地隔離的。
      [0053]此外,可以基于先請(qǐng)求而接收(first-request-received)將同一模塊102的額外的功能塊202 (當(dāng)可用時(shí))分配給第一或第二應(yīng)用,或者分配給額外的應(yīng)用,不管該額外的應(yīng)用安全還是不安全。在替代的實(shí)現(xiàn)中,模塊102的功能塊202的分配可以基于預(yù)定義的優(yōu)先級(jí)系統(tǒng)或者其它設(shè)立的規(guī)則(例如,考慮操作系統(tǒng)的規(guī)則等)而發(fā)生。
      [0054]在各種實(shí)現(xiàn)中,分配器204可以包括模塊、組件、例程等,或者它們的組合??梢栽谟布?、固件和/或軟件中實(shí)現(xiàn)分配器204的部分。此外,在一些實(shí)現(xiàn)中,分配器204對(duì)特定模塊102來(lái)說(shuō)可以是本地的(例如,分配器可以位于或至少部分地存儲(chǔ)在模塊102內(nèi)),并且可以各自地關(guān)聯(lián)到特定的模塊102,從而對(duì)該模塊102的功能塊進(jìn)行分配。在替代的實(shí)現(xiàn)中,分配器204可以更一般地被關(guān)聯(lián)(例如,與一組模塊102相關(guān)聯(lián)、關(guān)聯(lián)到互連(L1、L2)等),并且被布置為對(duì)多個(gè)模塊102的功能塊202進(jìn)行分配。在這樣的替代實(shí)現(xiàn)中,分配器204的部分可以位于或遠(yuǎn)程存儲(chǔ)到關(guān)聯(lián)到分配器204的多個(gè)模塊102中的一個(gè)或多個(gè)上。
      [0055]圖2的圖示示出了被劃分成“η”個(gè)功能塊202的從設(shè)備(模塊)102。在各種實(shí)現(xiàn)中,功能塊202在模塊102的能力之內(nèi)可以是相同的,或者非常接近于相同的。在其它實(shí)現(xiàn)中,可以基于請(qǐng)求應(yīng)用的資源需要或者基于其它條件來(lái)對(duì)功能塊202進(jìn)行劃分。
      [0056]在一種實(shí)現(xiàn)中,如圖2中所示,安全性套接字(也被稱為包裝器)104關(guān)聯(lián)到特定的模塊102。在替代的實(shí)現(xiàn)中,安全性套接字104關(guān)聯(lián)到一個(gè)以上的模塊102。在各種實(shí)現(xiàn)中,使用安全性套接字104服務(wù)的功能塊202的配置信息(例如,開(kāi)始地址、大小、安全訪問(wèn)許可等)對(duì)安全性套接字104進(jìn)行編程。在一種實(shí)現(xiàn)中,安全性套接字104被布置為:確定安全性套接字104關(guān)聯(lián)到的一個(gè)或多個(gè)資源模塊102的所分配的功能塊202中的每一個(gè)功能塊的訪問(wèn)許可。例如,訪問(wèn)許可基于功能塊202是分配給了非安全應(yīng)用還是分配給了安全應(yīng)用。
      [0057]這在圖2的圖示中通過(guò)安全性套接字104圖中的功能塊202的列表(FB ID I到FB ID N)以及功能塊202中的每一個(gè)功能塊的相關(guān)聯(lián)的所指派的世界(“指派的世界”)來(lái)表示。如所提到的,每個(gè)功能塊202的所指派的世界可以包括通用(GP)世界402、安全世界404或者兩者都不是(例如,可用于指派給世界)。
      [0058]在一種實(shí)現(xiàn)中,允許安全可執(zhí)行指令使用配置信息對(duì)安全性套接字104進(jìn)行編程。如本文中所使用的,安全可執(zhí)行指令包括安全(例如,被授權(quán)的、受信任的等)軟件或代碼的指令。然而,非安全可執(zhí)行指令,即非安全(例如,未授權(quán)的、不受信任的、未驗(yàn)證的等)軟件或代碼的指令,不被允許 對(duì)安全性套接字104進(jìn)行編程。在一種實(shí)現(xiàn)中,安全和非安全可執(zhí)行指令包括固件,諸如與耦接到控制器100的硬件組件相關(guān)聯(lián)的固件、存儲(chǔ)在控制器100的非易失性存儲(chǔ)器存儲(chǔ)設(shè)備中的固件等。
      [0059]在各種替代實(shí)現(xiàn)中,安全和非安全可執(zhí)行指令包括任意計(jì)算機(jī)或處理器可執(zhí)行指令,無(wú)論它們存儲(chǔ)在什么位置或者它們的來(lái)源為何(例如,存儲(chǔ)器存儲(chǔ)設(shè)備、嵌入式系統(tǒng)、外圍設(shè)備、網(wǎng)絡(luò)、因特網(wǎng)、云存儲(chǔ),便攜式/可移動(dòng)存儲(chǔ)設(shè)備或介質(zhì)等)。例如,僅允許安全可執(zhí)行指令對(duì)安全性套接字104進(jìn)行編程,而不管該安全可執(zhí)行指令的來(lái)源。由于安全性套接字104確定許可,因此這防止非安全源更改與功能塊202或模塊102相關(guān)聯(lián)的許可。
      [0060]在一種實(shí)現(xiàn)中,拓?fù)?00還可以包括互連寄存器,該互連寄存器被布置為:確定一個(gè)或多個(gè)資源模塊102的其它訪問(wèn)許可。例如,模塊102可以基于該模塊102的預(yù)期用途、安裝、資源類型等而具有特定許可(例如,模塊102可以為了只讀訪問(wèn)而已被硬連線等)。在這種情況下,基于關(guān)于模塊102的互連信息,試圖進(jìn)行與該模塊的許可相反的操作(例如,向只讀資源模塊102進(jìn)行寫(xiě)操作)的任何應(yīng)用在執(zhí)行該操作時(shí)將是不成功的。
      [0061]示例實(shí)現(xiàn)
      如上面所討論的,安全性監(jiān)視器108可以控制對(duì)安全中斷的處理等。圖3是根據(jù)一種實(shí)現(xiàn)的、在功能塊級(jí)上示出的示例中斷傳遞機(jī)制300的框圖。
      [0062]在該實(shí)現(xiàn)中,如圖3中所示,諸如模塊N的模塊102被劃分成數(shù)量為“η”的功能塊202。功能塊202中的每一個(gè)功能塊可以基于在該功能塊202處發(fā)生的事件來(lái)生成中斷。在一種實(shí)現(xiàn)中,中斷被分隔成一般中斷和安全中斷。例如,由一般例程使用的功能塊202可以生成一般中斷,并且由安全例程使用的功能塊202可以生成安全中斷。
      [0063]在該實(shí)現(xiàn)中,如圖3中所示,就像在任何一般控制器方案中一樣,或者根據(jù)特定處理器(例如,CPU 106)的一般中斷處理,將一般中斷引導(dǎo)到常規(guī)中斷分發(fā)302。例如,可以將中斷引導(dǎo)到CPU 106來(lái)進(jìn)行處理。
      [0064]在該實(shí)現(xiàn)中,如圖3中所示,安全中斷被聚合到安全模式中斷累積器304等。所聚合的中斷與一般中斷分開(kāi)處理,以便保護(hù)安全應(yīng)用、例程、資源等的安全性。例如,如圖3中所示,可以將所累積的安全中斷轉(zhuǎn)發(fā)到安全性監(jiān)視器106。如上面所討論的,安全性監(jiān)視器108可以將所聚合的安全中斷請(qǐng)求轉(zhuǎn)發(fā)到CPU 106和/或中斷控制器來(lái)進(jìn)行對(duì)中斷的處理。
      [0065]如所示出的,在一種實(shí)現(xiàn)中,模塊102中的每一個(gè)功能塊202可以包括一般中斷路徑和安全中斷路徑,以便適應(yīng)被分配為非安全功能塊202或安全功能塊202。相應(yīng)地,在不同的場(chǎng)景中可以對(duì)每個(gè)功能塊202進(jìn)行不同的分配(非安全的或安全的),這取決于在CPU106上執(zhí)行的一個(gè)或多個(gè)應(yīng)用。
      [0066]圖4A是示例中斷處理方案的框圖,該中斷處理方案包括:使用專用GP中斷控制器(GP intC) 406來(lái)處理GP世界402中斷,并且使用專用安全中斷控制器(SEC intC) 408來(lái)處理安全世界404中斷。在該以及類似的方案中,資源的重復(fù)通常用于確保安全中斷是隔離處理的。
      [0067]相對(duì)地,圖4B示出了上面參照?qǐng)D3概述的示例方案。例如,可以經(jīng)由安全性監(jiān)視器108來(lái)處理安全世界404中斷,包括對(duì)安全中斷進(jìn)行聚合,并且然后將所聚合的中斷信號(hào)轉(zhuǎn)發(fā)到CPU 106等來(lái)進(jìn)行處理。當(dāng)該聚合的中斷信號(hào)由CPU 106接收時(shí),其可以進(jìn)一步聚合到(例如,來(lái)自GP應(yīng)用的)通用中斷。以這種方式,CPU 106以及控制器100和其通用組件不知道所接收的中斷的來(lái)源。相應(yīng)地,安全中斷和它們的一個(gè)或多個(gè)安全應(yīng)用的安全性質(zhì)得到了保護(hù)。
      [0068]圖5A是根據(jù)一種實(shí)現(xiàn)的示例安全性監(jiān)視器108的框圖。如圖5A中所示,示例安全性監(jiān)視器108可以包括嗅探器組件502,嗅探器組件502被布置為:通過(guò)在CPU 106上執(zhí)行的應(yīng)用,針對(duì)安全模式進(jìn)入和退出序列(如圖5B和圖6-9中所示)來(lái)監(jiān)視CPU 106。在額外的或替代的實(shí)現(xiàn)中,安全性監(jiān)視器108可以被布置為:經(jīng)由CPU總線與CPU 106對(duì)接和/或使用總線接口單元(BIU) 504等經(jīng)由互連(諸如L1、L2)與控制器100對(duì)接。
      [0069]如上面所討論的,在其它實(shí)現(xiàn)中,安全性監(jiān)視器108可以被布置為:接收一個(gè)或多個(gè)安全中斷并且輸出聚合的安全模式中斷。
      [0070]圖5B是根據(jù)一種實(shí)現(xiàn)示出非安全GP世界402與安全世界404之間的示例切換的狀態(tài)圖。示出了各種觸發(fā)和結(jié)果;其中,如所討論的,通過(guò)安全性監(jiān)視器108斷言或者解斷言安全模式信號(hào)來(lái)促進(jìn)從“世界”之一到“世界”中的另一個(gè)的切換。
      [0071]圖5B的圖示示出了來(lái)自安全世界404中的應(yīng)用或例程的安全中斷發(fā)起向安全模式的切換,以便處理安全中斷。例如,安全世界404中的應(yīng)用可以在GP世界402激活時(shí)引起中斷,從而需要切換到安全世界404來(lái)進(jìn)行安全中斷的安全處理。這將導(dǎo)致安全性監(jiān)視器108斷言安全模式信號(hào)。當(dāng)在安全世界中時(shí)(例如,安全資源、模塊102、存儲(chǔ)器112等對(duì)于被授權(quán)的應(yīng)用和/或例程來(lái)說(shuō)是可訪問(wèn)的)對(duì)安全中斷進(jìn)行處理。安全中斷處理的完成發(fā)起回到GP世界402的切換(包括從安全中斷返回)。
      [0072]如圖5B中所示,如上面所討論的,在GP世界402中處理GP中斷,并且在安全世界404中處理安全中斷。
      [0073]圖5B的圖示還示出了來(lái)自GP世界402中的應(yīng)用或例程的安全服務(wù)的受控的調(diào)用發(fā)起向安全世界404的切換,以便處理請(qǐng)求。例如,這也將導(dǎo)致安全性監(jiān)視器108斷言安全模式信號(hào)。安全服務(wù)的受控的調(diào)用可以包括:對(duì)來(lái)自模塊102的資源的請(qǐng)求等。如上面所討論的,在安全世界404內(nèi)對(duì)請(qǐng)求進(jìn)行處理,包括提供所請(qǐng)求的一個(gè)或多個(gè)服務(wù),諸如來(lái)自一個(gè)或多個(gè)功能塊202的模塊102資源。安全服務(wù)的完成發(fā)起回到GP世界402的切換(包括從受控的調(diào)用返回)。
      [0074]圖6是根據(jù)一種實(shí)現(xiàn)示出非安全402與安全404世界之間的切換的示例階段的進(jìn)度圖。例如,當(dāng)GP世界應(yīng)用602經(jīng)由啟動(dòng)ROM接口 604請(qǐng)求安全服務(wù)時(shí),安全模式進(jìn)入序列600可以被發(fā)起。在一種實(shí)現(xiàn)中,使用服務(wù)請(qǐng)求的必要細(xì)節(jié)來(lái)調(diào)用啟動(dòng)ROM調(diào)度器(BR0M_DISPATCHER (SERVICE, PARAMETERS))。調(diào)度器的調(diào)用和隨后的進(jìn)入序列600的執(zhí)行由安全性監(jiān)視器108監(jiān)視,安全性監(jiān)視器108在進(jìn)入序列600結(jié)束時(shí)斷言安全模式信號(hào)。
      [0075]如上面所提到的,在斷言安全模式信號(hào)之前,安全性監(jiān)視器108可以暫時(shí)禁用調(diào)試基礎(chǔ)結(jié)構(gòu)。在斷言了安全模式信號(hào)的情況下,安全世界404是激活的,并且安全資源(例如,諸如模塊102的安全功能塊202)對(duì)于被授權(quán)的應(yīng)用、例程等來(lái)說(shuō)是可訪問(wèn)的。啟動(dòng)ROM可以向安全ROM 606 (例如,使用被示為SR0M_L0AD(START,LENGTH)的函數(shù))傳遞服務(wù)請(qǐng)求,安全ROM 606執(zhí)行所期望的請(qǐng)求或者將該請(qǐng)求傳遞到安全RAM 610中的安全應(yīng)用。
      [0076]在圖6中所示的示例中,服務(wù)包括安全ROM 606處的解密服務(wù)612,例如,解密服務(wù)612包括:讀取(例如,在NVROM/閃存608處的)加密的內(nèi)容、對(duì)該內(nèi)容進(jìn)行解密、并且將經(jīng)解密的內(nèi)容寫(xiě)入安全RAM以用于I/O處理。該服務(wù)完成之后,SR0M_L0AD()函數(shù)返回啟動(dòng)ROM 604,并且安全模式退出序列614被發(fā)起。這包括:由安全性監(jiān)視器108解斷言安全模式信號(hào)并且啟用調(diào)試基礎(chǔ)結(jié)構(gòu)。最后,啟動(dòng)ROM調(diào)度器將控制返回給調(diào)用該例程的GP軟件602。
      [0077]在示例實(shí)現(xiàn)中,例如,GP軟件、啟動(dòng)ROM軟件604和NVROM/閃存608可以加載到GP存儲(chǔ)器114中,并且安全ROM軟件606和安全RAM 610可以加載到安全存儲(chǔ)器112中。
      [0078]圖7是根據(jù)一種實(shí)現(xiàn)示出用于非安全402與安全404世界之間的受控轉(zhuǎn)換的技術(shù)的進(jìn)度圖,尤其詳述了所涉及的中斷。例如,當(dāng)安全性監(jiān)視器108檢測(cè)到安全模式中斷時(shí),安全模式進(jìn)入序列700可以被發(fā)起。在圖7的示例場(chǎng)景中,安全中斷事件由被指派了功能塊202的安全世界404標(biāo)記。安全中斷事件由安全性監(jiān)視器108接收,例如,安全性監(jiān)視器108使用啟動(dòng)ROM 604中定義的向量來(lái)對(duì)應(yīng)用向量寄存器702中的安全中斷向量條目進(jìn)行更新。
      [0079]—旦已經(jīng)安裝了安全向量條目,就將原始事件傳遞到常規(guī)中斷控制器704上,常規(guī)中斷控制器704然后中斷CPU 106并且導(dǎo)致新安裝的處理程序執(zhí)行。
      [0080]在安全中斷已經(jīng)被處理之后,安全ROM 606中的安全應(yīng)用將控制返回給啟動(dòng)ROM604,啟動(dòng)ROM 604然后執(zhí)行安全模式退出序列706。這恢復(fù)了被中斷的GP應(yīng)用的上下文(包括原始向量表)。
      [0081]圖8是根據(jù)一種實(shí)現(xiàn)示出向非安全GP應(yīng)用602指派功能塊202的示例階段的進(jìn)度圖。例如,當(dāng)GP應(yīng)用602使用啟動(dòng)ROM軟件604經(jīng)由啟動(dòng)ROM調(diào)度器做出針對(duì)資源的請(qǐng)求時(shí),安全模式進(jìn)入序列800可以被發(fā)起。調(diào)用專用安全ROM 606服務(wù)。
      [0082]在示例實(shí)現(xiàn)中,安全ROM 606服務(wù)讀取與所請(qǐng)求的資源模塊202相關(guān)聯(lián)的安全性套接字104,并且識(shí)別第一可用的功能塊202。功能塊202被分配并且指派給GP世界402。發(fā)起安全模式退出序列802,包括將功能塊的ID返回給GP應(yīng)用602。
      [0083]圖9是根據(jù)一種實(shí)現(xiàn)示出向安全GP應(yīng)用610指派功能塊202的示例階段的進(jìn)度圖。例如,當(dāng)GP應(yīng)用602使用啟動(dòng)ROM軟件604經(jīng)由啟動(dòng)ROM調(diào)度器請(qǐng)求安全服務(wù)時(shí),安全模式進(jìn)入序列900可以被發(fā)起。調(diào)用專用安全ROM 606服務(wù),其將控制(安全服務(wù))轉(zhuǎn)移到能夠滿足所請(qǐng)求的服務(wù)的安全應(yīng)用610。例如,安全應(yīng)用610可以使用硬件資源來(lái)滿足GP應(yīng)用602的安全服務(wù)請(qǐng)求。
      [0084]在示例實(shí)現(xiàn)中,安全應(yīng)用610可以針對(duì)功能塊202的實(shí)例經(jīng)由預(yù)定義的安全ROM606服務(wù)(安全服務(wù))來(lái)直接請(qǐng)求安全服務(wù),以便滿足服務(wù)請(qǐng)求。如上面所討論的,這樣的服務(wù)將所分配的功能塊202暫時(shí)指派(ASSIGN_SEC_FB())給安全世界404。在查詢和關(guān)聯(lián)到所分配的功能塊202的模塊102的安全性套接字104的更新之后,安全ROM 606向安全應(yīng)用610返回所分配的功能塊的ID。
      [0085]在各種實(shí)現(xiàn)中,如圖6-9中所示,與功能塊202的指派有關(guān)的服務(wù)對(duì)于GP 402和安全404世界可以是不同的。相應(yīng)地,公共指派服務(wù)可能發(fā)現(xiàn)其難以判定服務(wù)請(qǐng)求來(lái)自哪里。
      [0086]如上面所討論的,本文中參照實(shí)現(xiàn)描述的技術(shù)、組件和設(shè)備不限于圖1-9的圖示,并且在不脫離本公開(kāi)的范圍的情況下可以應(yīng)用于其它控制器拓?fù)?、設(shè)備和設(shè)計(jì)。在一些情況下,額外的或替代的組件、技術(shù)、序列或過(guò)程可以用于實(shí)現(xiàn)本文中描述的技術(shù)。此外,可以在各種組合中對(duì)組件和/或技術(shù)進(jìn)行布置和/或組合,而得到相似或大致相同的結(jié)果。應(yīng)當(dāng)理解的是:控制器100可以作為獨(dú)立的設(shè)備或者作為另一個(gè)系統(tǒng)的部分(例如,與其它組件、系統(tǒng)等相集成)來(lái)實(shí)現(xiàn)。在各種實(shí)現(xiàn)中,額外的或替代的組件可以用于實(shí)現(xiàn)所公開(kāi)的技術(shù)和布置。
      [0087]代表件討稈
      圖10是根據(jù)一種實(shí)現(xiàn)示出用于提供動(dòng)態(tài)資源共享的示例過(guò)程1000的流程圖。過(guò)程1000描述了使用安全性監(jiān)視器(例如,諸如安全性監(jiān)視器108)來(lái)監(jiān)視在控制器(例如,諸如控制器100)上執(zhí)行的應(yīng)用??梢詫①Y源模塊(例如,諸如模塊102)的功能塊(例如,諸如功能塊202)并發(fā)地分配給非安全應(yīng)用和安全應(yīng)用,而不破壞安全應(yīng)用和其被分配的資源的安全性并且沒(méi)有硬件重復(fù)。參考圖1-9對(duì)過(guò)程1000進(jìn)行描述。
      [0088]對(duì)過(guò)程進(jìn)行描述的順序并不旨在解釋為限制,并且可以按照任意順序?qū)θ我鈹?shù)量的所描述的過(guò)程塊進(jìn)行組合來(lái)實(shí)現(xiàn)該過(guò)程或者替代的過(guò)程。此外,在不脫離本文中描述的主題的精神和范圍的情況下,可以從過(guò)程中刪除單獨(dú)塊。此外,在不脫離本文中描述的主題的范圍的情況下,可以用任意合適的材料或者其組合來(lái)實(shí)現(xiàn)過(guò)程。
      [0089]根據(jù)一種實(shí)現(xiàn),在框1002處,過(guò)程1000包括:從第一應(yīng)用接收針對(duì)模塊(例如,諸如模塊102)的資源的第一請(qǐng)求。在該實(shí)現(xiàn)中,第一應(yīng)用包括安全應(yīng)用或非安全應(yīng)用中的一個(gè)。
      [0090]在框1004處,過(guò)程包括:將模塊的第一功能塊(例如,諸如功能塊202)分配給第一應(yīng)用。在一種實(shí)現(xiàn)中,第一功能塊是模塊的第一可用功能塊。例如,在該實(shí)現(xiàn)中,模塊包括多個(gè)功能塊。在一種實(shí)現(xiàn)中,過(guò)程包括:將模塊劃分成多個(gè)功能塊,使得模塊的這些功能塊是相似或相同的。在替代的實(shí)現(xiàn)中,功能塊是基于其它所期望的特性(例如,優(yōu)先級(jí)、性能等)來(lái)劃分的。[0091]在框1006處,過(guò)程包括:從第二應(yīng)用接收針對(duì)模塊的資源的第二請(qǐng)求。在一種實(shí)現(xiàn)中,第二應(yīng)用包括安全應(yīng)用或非安全應(yīng)用中的另一個(gè)。例如,如果第一應(yīng)用是非安全應(yīng)用,則第二應(yīng)用是安全應(yīng)用,反之亦然。在替代的實(shí)現(xiàn)中,第二應(yīng)用是第一應(yīng)用。在另一種實(shí)現(xiàn)中,第二應(yīng)用具有與第一應(yīng)用相同的安全性(非安全或安全)。
      [0092]在框1008處,過(guò)程包括:將模塊的第二功能塊分配給第二應(yīng)用。在一個(gè)示例中,第二功能塊是模塊的下一個(gè)可用功能塊。在一種實(shí)現(xiàn)中,第二應(yīng)用與第一應(yīng)用訪問(wèn)模塊并發(fā)地訪問(wèn)模塊。在該實(shí)現(xiàn)中,第一功能塊與第二功能塊通信地隔離。
      [0093]在一種實(shí)現(xiàn)中,過(guò)程包括:將包裝器關(guān)聯(lián)到模塊,其中,包裝器被布置為:確定模塊的所分配的功能塊的訪問(wèn)許可。例如,訪問(wèn)許可基于功能塊是分配給了安全應(yīng)用還是分配給了非安全應(yīng)用。在另一種實(shí)現(xiàn)中,過(guò)程包括:基于由模塊的包裝器確定的訪問(wèn)許可來(lái)允許或拒絕對(duì)功能塊的總線訪問(wèn)。
      [0094]在一種實(shí)現(xiàn)中,包裝器可由安全可執(zhí)行指令編程,并且不可由非安全可執(zhí)行指令編程。例如,如果與硬件設(shè)備資源相關(guān)聯(lián)的固件是安全的,那么該固件等可以對(duì)包裝器進(jìn)行編程。在替代的實(shí)現(xiàn)中,安全可執(zhí)行指令可以包括其它形式的代碼、軟件、機(jī)器指令等。
      [0095]在一種實(shí)現(xiàn)中,過(guò)程包括:基于由模塊的包裝器確定的訪問(wèn)許可,將模塊的功能塊指派給下列各項(xiàng)中的一項(xiàng):安全世界、非安全世界、或者既不是安全世界也不是非安全世界。在另一種實(shí)現(xiàn)中,過(guò)程包括:當(dāng)安全模式激活時(shí),允許應(yīng)用訪問(wèn)指派給安全世界的功能塊。在進(jìn)一步的實(shí)現(xiàn)中,過(guò)程包括:當(dāng)安全模式?jīng)]有激活時(shí),拒絕應(yīng)用訪問(wèn)指派給安全世界的功能塊。
      [0096]在一種實(shí)現(xiàn)中,過(guò)程包括:基于模塊的預(yù)定的許可,經(jīng)由互連結(jié)構(gòu)來(lái)允許或阻斷與模塊的事務(wù)。例如,預(yù)定的許可(諸如只讀訪問(wèn)等)可以是模塊的硬連線或固定條件。
      [0097]在一種實(shí)現(xiàn)中,過(guò)程包括:將模塊的下一個(gè)可用功能塊分配給下一個(gè)請(qǐng)求應(yīng)用,而不管該下一個(gè)請(qǐng)求應(yīng)用是安全應(yīng)用還是非安全應(yīng)用。在另一種實(shí)現(xiàn)中,下一個(gè)功能塊與第一功能塊和第二功能塊中的至少一個(gè)通信地隔離,從而在這些功能塊之間提供安全性。
      [0098]在替代的實(shí)現(xiàn)中,在各種組合中可以將其它技術(shù)包括在過(guò)程1000中,并且仍然在本公開(kāi)的范圍之內(nèi)。
      [0099]結(jié)論
      雖然已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動(dòng)作的語(yǔ)言對(duì)本公開(kāi)的實(shí)現(xiàn)進(jìn)行了描述,但應(yīng)當(dāng)理解的是:這些實(shí)現(xiàn)并不必然限于所描述的特定特征或動(dòng)作。相反,這些特定特征和動(dòng)作被公開(kāi)作為實(shí)現(xiàn)示例設(shè)備和技術(shù)的代表性形式。
      【權(quán)利要求】
      1.一種裝置,包括: 嗅探器組件,其被布置為:監(jiān)視處理器并且確定在所述處理器上執(zhí)行的應(yīng)用是否請(qǐng)求對(duì)資源的安全訪問(wèn);以及 輸出組件,其被布置為:當(dāng)所述應(yīng)用是安全應(yīng)用時(shí),輸出準(zhǔn)予對(duì)共享的資源模塊的安全功能塊的安全訪問(wèn)的安全模式信號(hào)。
      2.根據(jù)權(quán)利要求1所述的裝置,還包括中斷處理組件,其被布置為:當(dāng)斷言所述安全模式信號(hào)時(shí),使用安全中斷服務(wù)例程(ISR)處理程序?qū)χ袛嘞蛄考拇嫫鬟M(jìn)行重新編程。
      3.根據(jù)權(quán)利要求1所述的裝置,其中,所述共享的資源模塊被劃分為安全功能塊和非安全功能塊,所述安全功能塊被安全應(yīng)用訪問(wèn)與所述非安全功能塊被非安全應(yīng)用訪問(wèn)是并發(fā)的。
      4.根據(jù)權(quán)利要求3所述的裝置,其中,所述安全功能塊與所述非安全功能塊是通信地隔尚的。
      5.根據(jù)權(quán)利要求1所述的裝置,其中,當(dāng)被授權(quán)的應(yīng)用開(kāi)始安全事務(wù)或者發(fā)起對(duì)安全資源的訪問(wèn)時(shí),所述裝置斷言所述安全模式信號(hào),并且當(dāng)應(yīng)用結(jié)束安全事務(wù)或者終止對(duì)安全資源的訪問(wèn)時(shí),所述裝置解斷言所述安全模式信號(hào)。
      6.根據(jù)權(quán)利要求1所述的裝置,其中,所述裝置被布置為:對(duì)安全中斷請(qǐng)求進(jìn)行聚合,并且將所聚合的安全中斷請(qǐng)求轉(zhuǎn)發(fā)到所述處理器和/或外部中斷控制器。
      7.根據(jù)權(quán)利要求1所述的裝置,其中,所述裝置被布置為:當(dāng)所述安全模式信號(hào)被斷言時(shí)禁用調(diào)試基礎(chǔ)結(jié)構(gòu),并且當(dāng)所述安全模式信號(hào)被解斷言時(shí)啟用所述調(diào)試基礎(chǔ)結(jié)構(gòu)。
      8.一種系統(tǒng),包括: 處理器,其被布置為:并發(fā)地執(zhí)行非安全應(yīng)用和安全應(yīng)用; 安全性監(jiān)視器,其被布置為:監(jiān)視所述處理器并且當(dāng)所述安全應(yīng)用請(qǐng)求對(duì)資源模塊的訪問(wèn)時(shí)輸出安全模式信號(hào); 一個(gè)或多個(gè)資源模塊,每個(gè)資源模塊包括多個(gè)功能塊,所述多個(gè)功能塊中的一個(gè)或多個(gè)功能塊被分配給所述非安全應(yīng)用,并且所述多個(gè)功能塊中的一個(gè)或多個(gè)其它功能塊被并發(fā)地分配給所述安全應(yīng)用;以及 一個(gè)或多個(gè)安全性套接字,其被布置為:確定所述一個(gè)或多個(gè)資源模塊的所分配的功能塊中的每一個(gè)的訪問(wèn)許可,所述訪問(wèn)許可基于功能塊是被分配給所述非安全應(yīng)用還是被分配給所述安全應(yīng)用。
      9.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括分配模塊,其被布置為:將所述一個(gè)或多個(gè)資源模塊的所述多個(gè)功能塊中的一個(gè)或多個(gè)功能塊動(dòng)態(tài)地分配給請(qǐng)求非安全應(yīng)用和/或?qū)⑺鲆粋€(gè)或多個(gè)資源模塊的所述多個(gè)功能塊中的一個(gè)或多個(gè)其它功能塊動(dòng)態(tài)地分配給請(qǐng)求安全應(yīng)用。
      10.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括一個(gè)或多個(gè)存儲(chǔ)器存儲(chǔ)設(shè)備,其包括安全存儲(chǔ)器部分和非安全存儲(chǔ)器部分。
      11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中,當(dāng)所述安全性監(jiān)視器斷言所述安全模式信號(hào)時(shí),向所述安全應(yīng)用準(zhǔn)予對(duì)所述安全存儲(chǔ)器的訪問(wèn),并且其中,當(dāng)所述安全性監(jiān)視器解斷言所述安全模式信號(hào)時(shí),對(duì)所述安全存儲(chǔ)器的訪問(wèn)被拒絕。
      12.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括互連寄存器,其被布置為:確定所述一個(gè)或多個(gè)資源模塊的其它訪問(wèn)許可。
      13.根據(jù)權(quán)利要求8所述的系統(tǒng),其中,所述一個(gè)或多個(gè)資源模塊包括下列各項(xiàng)中的一項(xiàng):實(shí)時(shí)時(shí)鐘、中斷控制器、小鍵盤控制器和直接存儲(chǔ)器存取(DMA)模塊。
      14.根據(jù)權(quán)利要求8所述的系統(tǒng),其中,允許安全可執(zhí)行指令使用配置信息對(duì)所述安全性套接字進(jìn)行編程,并且不允許非安全可執(zhí)行指令對(duì)所述安全性套接字進(jìn)行編程。
      15.一種方法,包括: 從第一應(yīng)用接收針對(duì)模塊的資源的第一請(qǐng)求,所述第一應(yīng)用是安全應(yīng)用或非安全應(yīng)用中的一個(gè); 將所述模塊的第一功能塊分配給所述第一應(yīng)用,所述模塊包括多個(gè)功能塊; 從第二應(yīng)用接收針對(duì)所述模塊的資源的第二請(qǐng)求,所述第二應(yīng)用是所述安全應(yīng)用或所述非安全應(yīng)用中的另一個(gè);以及 將所述模塊的第二功能塊分配給所述第二應(yīng)用,所述第二應(yīng)用訪問(wèn)所述模塊與所述第一應(yīng)用訪問(wèn)所述模塊是并發(fā)的,所述第一功能塊與所述第二功能塊通信地隔離。
      16.根據(jù)權(quán)利要求15所述的方法,還包括:將所述模塊劃分成所述多個(gè)功能塊,使得所述模塊的功能塊是相似或相同的。
      17.根據(jù)權(quán)利要求15所述的方法,還包括:將包裝器關(guān)聯(lián)到所述模塊,所述包裝器被布置為:確定所述模塊的所分配的功能塊的訪問(wèn)許可,所述訪問(wèn)許可基于功能塊是被分配給安全應(yīng)用還是被分配給非安全應(yīng)用。
      18.根據(jù)權(quán)利要求17所述的方法,還包括:基于由所述模塊的所述包裝器確定的訪問(wèn)許可來(lái)允許或拒絕對(duì)功能塊的總線訪問(wèn)。
      19.根據(jù)權(quán)利要求17所述的方法,其中,所述包裝器可由安全可執(zhí)行指令編程,并且不可由非安全可執(zhí)行指令編程。
      20.根據(jù)權(quán)利要求17所述的方法,還包括:基于由所述模塊的所述包裝器確定的訪問(wèn)許可,將所述模塊的功能塊指派給下列各項(xiàng)中的一項(xiàng):安全世界、非安全世界、或者既不是所述安全世界也不是所述非安全世界。
      21.根據(jù)權(quán)利要求20所述的方法,還包括:當(dāng)安全模式激活時(shí)允許應(yīng)用訪問(wèn)指派給所述安全世界的功能塊,并且當(dāng)所述安全模式?jīng)]有激活時(shí)拒絕應(yīng)用訪問(wèn)指派給所述安全世界的功能塊。
      22.根據(jù)權(quán)利要求17所述的方法,還包括:基于所述模塊的預(yù)定的許可,經(jīng)由互連結(jié)構(gòu)來(lái)允許或阻斷與所述模塊的事務(wù)。
      23.根據(jù)權(quán)利要求15所述的方法,還包括:將所述模塊的下一個(gè)可用功能塊分配給下一個(gè)請(qǐng)求應(yīng)用,不管所述下一個(gè)請(qǐng)求應(yīng)用是安全應(yīng)用還是非安全應(yīng)用。
      24.根據(jù)權(quán)利要求23所述的方法,其中,所述下一個(gè)功能塊與所述第一功能塊和所述第二功能塊中的至少一個(gè)通信地隔離。
      25.—種控制器設(shè)備,其包括處理器以及具有存儲(chǔ)在其上的處理器可執(zhí)行指令的一個(gè)或多個(gè)存儲(chǔ)器存儲(chǔ)設(shè)備,當(dāng)由所述處理器執(zhí)行時(shí),所述處理器可執(zhí)行指令指引所述處理器執(zhí)行包括以下的操作: 從第一應(yīng)用接收針對(duì)模塊的資源的第一請(qǐng)求,所述第一應(yīng)用是安全應(yīng)用或非安全應(yīng)用中的一個(gè);將所述模塊的第一功能塊分配給所述第一應(yīng)用,所述模塊包括多個(gè)功能塊; 從第二應(yīng)用接收針對(duì)所述模塊的資源的第二請(qǐng)求,所述第二應(yīng)用是所述安全應(yīng)用或所述非安全應(yīng)用中的另一個(gè);以及 將所述模塊的第二功能塊分配給所述第二應(yīng)用,所述第二應(yīng)用訪問(wèn)所述模塊與所述第一應(yīng)用訪問(wèn)所述 模塊是并發(fā)的,所述第一功能塊與所述第二功能塊通信地隔離。
      【文檔編號(hào)】G06F9/48GK104021037SQ201410070908
      【公開(kāi)日】2014年9月3日 申請(qǐng)日期:2014年2月28日 優(yōu)先權(quán)日:2013年3月1日
      【發(fā)明者】P.巴拉蘇布拉馬尼安 申請(qǐng)人:英飛凌科技股份有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1