国产精品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>

      具有改進的器件安全性的集成電路的制作方法

      文檔序號:6553350閱讀:212來源:國知局
      專利名稱:具有改進的器件安全性的集成電路的制作方法
      技術領域
      本發(fā)明涉及一種嵌入半導體器件內(nèi)部的功能硬件元件,用于保護器件免于未授權的訪問。
      背景技術
      諸如集成電路之類的現(xiàn)代半導體器件包括大量的功能,尤其在用于數(shù)據(jù)處理的電路中需要保護一定的器件功能免于未授權的訪問。這是因為全部功能、電路和攜帶信息的總線在器件內(nèi)部。對于存儲器或附加到半導體器件的其他外圍器件的訪問一般是通過安全設備來進行路由,以提供密鑰形式的保護。
      例如,US 2002/0059518 A1公開了一種用于確保對于電子系統(tǒng)中多個功能的安全、受控訪問的方法和設備,這些功能的每一個均具有與其相關聯(lián)的對應密鑰。所述方法包括以下步驟選擇與所需功能相對應的密鑰;進行認證過程,包括驗證選定的密鑰,并且根據(jù)認證過程的結果來允許或拒絕訪問所需功能。
      此外,諸如加密和解密例行程序、移動電話中用于實現(xiàn)特定特征的代碼等的不同功能可以具有不同的訪問策略。在具有嵌入式處理器的許多器件中,可以通過諸如JAVA程序之類在嵌入式處理器上運行的任意應用程序,讀取嵌入式存儲器中的程序代碼或信息數(shù)據(jù)。嵌入式存儲器可以包含必須保護免于不必要訪問的重要信息。
      密鑰的使用具有可以被惡意代碼進行黑客攻擊的缺點。因此,被認為不具有這種訪問的外部器件可以獲得對受保護功能的訪問,因此危及器件安全性。

      發(fā)明內(nèi)容
      本發(fā)明的目的是改進器件安全性。
      根據(jù)本發(fā)明,該目的是通過如獨立權利要求1所述的半導體器件實現(xiàn)的。
      半導體器件具有包括以下部件的電路嵌入式存儲器;嵌入式處理器,用于執(zhí)行應用程序代碼;以及功能硬件元件,經(jīng)由受保護總線與嵌入式存儲器相連,并且經(jīng)由未受保護總線與嵌入式處理器相連,所述硬件元件被配置為保護受保護總線,并且包括鎖定裝置,所述鎖定裝置包括至少一個鎖定比特,用于在執(zhí)行應用程序代碼之前全局地鎖定所述鎖定裝置的至少一部分。
      在另外的實施例中,所述鎖定裝置被配置為保護嵌入式存儲器的區(qū)域。
      功能硬件元件通過限制對于受保護總線的未授權訪問來執(zhí)行防火墻的作用,因此優(yōu)選地,可以限制對于需要保護的嵌入式存儲器區(qū)域的訪問。在這種情況下,功能硬件元件通過鎖定嵌入式存儲器的這種區(qū)域,優(yōu)選地使用鎖定裝置,來防止未授權的訪問。在初始化嵌入式處理器上的任意應用程序代碼之前,鎖定裝置本身可以被附加的鎖定比特鎖定。將至少一個鎖定比特配置為全局地鎖定所述鎖定裝置的至少一部分,這有效地凍結了鎖定裝置的至少一部分的狀態(tài)。一旦被鎖定,只要存在嵌入式處理器上運行的任意代碼,就不能更改鎖定比特的狀態(tài)。因此,在處理器上運行的程序代碼不能改變鎖定裝置的狀態(tài)。由于提供給受保護總線的保護,對于諸如嵌入式存儲器之類與受保護總線相連的器件,試圖獲得對于這種器件訪問的未受保護總線上的器件不能影響到它。具體地,在嵌入式處理器上運行的惡意代碼不能直接地訪問嵌入式存儲器的鎖定區(qū)域。
      在另外的實施例中,鎖定裝置包括鎖定寄存器,并且將至少一個鎖定比特配置為全局地鎖定所述鎖定寄存器的至少一部分。
      在另一個實施例中,功能硬件元件包括配置裝置,所述配置裝置包括配置寄存器,用于存儲針對受保護總線的訪問,條件;以及鎖定寄存器,所述鎖定寄存器與配置寄存器中至少一個有關聯(lián),用于選擇性地允許或拒絕對于配置寄存器中所述至少一個的訪問。
      優(yōu)選地,鎖定裝置包括至少一個鎖定寄存器。將至少一個鎖定比特配置為全局地鎖定所述鎖定寄存器的至少一部分,使得這些寄存器從未受保護總線不再是可用的。優(yōu)選地,配置裝置包括多組配置寄存器,可以用于針對受保護總線上的器件、以及具體地嵌入式存儲器的區(qū)域來限定保護級別。將用于允許或拒絕對于受保護總線(具體地,受保護總線上的器件)訪問的條件存儲在配置寄存器中。優(yōu)選地,鎖定寄存器與一個或更多配置寄存器相關聯(lián),并且選擇性地允許或拒絕從未受保護總線上的器件(例如運行應用程序代碼的嵌入式處理器)對與其相關聯(lián)的配置寄存器的訪問。
      在另外的實施例中,激活的鎖定寄存器表示將配置寄存器中相關聯(lián)的至少一個配置為只讀,并且未激活的鎖定寄存器表示將配置寄存器中相關聯(lián)的至少一個配置為讀和寫。
      優(yōu)選地,鎖定寄存器根據(jù)鎖定寄存器的激活和去激活來設定對于配置寄存器的保護。根據(jù)鎖定寄存器的狀態(tài),因此可以允許或拒絕對于相應的配置寄存器的訪問。優(yōu)選地,當沒有激活鎖定寄存器時,相應的配置寄存器可以由未受保護總線上的器件或者讀取或者寫入;而當激活鎖定寄存器時,相應的配置寄存器僅可以由從未受保護總線進行讀取。
      在另一個實施例中,將配置寄存器配置為限定受保護的嵌入式存儲器區(qū)域。
      優(yōu)選地,例如,配置寄存器通過存儲嵌入式存儲器的起始地址和結束地址來限定嵌入式存儲器的受保護區(qū)域。
      包括硬件防火墻的另一個實施例的特征在于在設定鎖定比特之后,鎖定裝置的未鎖定部分從未受保護總線仍然是可訪問的。
      如在上文中所討論的,優(yōu)選地,將鎖定比特配置為全局地鎖定所述鎖定寄存器的至少一部分,使得這些寄存器對于試圖獲得受保護總線(具體地對于嵌入式存儲器的受保護部分)的訪問的任意惡意代碼是不可用的。在設定鎖定比特時沒有保護的受保護總線上的器件和嵌入式存儲器對于尋求訪問的未受保護總線上的器件仍然是可用的。
      在優(yōu)選實施例中,功能硬件元件包括與配置裝置相連的條件檢查裝置,用于將對于受保護總線的訪問請求與在配置裝置中存儲的訪問條件進行比較,并且根據(jù)所述比較的結果,向鎖定裝置提供信號用于允許或拒絕所述訪問請求。
      條件檢查裝置與配置裝置相連。其將對于受保護總線的訪問請求與在配置裝置中編程且存儲的訪問條件進行比較。條件檢查裝置通常連續(xù)地在未受保護總線上檢查任意訪問請求。在檢測到訪問請求之后,進行比較,然后條件檢查裝置可以根據(jù)比較的結果向鎖定裝置提供相關信號,用于允許或拒絕對于受保護總線的訪問請求。
      在另外的實施例中,將鎖定裝置配置為當從條件檢查裝置接收訪問拒絕信號時,禁用對于受保護總線的訪問。
      在另一個實施例中,將條件檢查裝置配置為當所述訪問請求無效時,向未受保護總線發(fā)送空數(shù)據(jù)。
      當條件檢查裝置確定需要禁用對于受保護總線的訪問時,可以將鎖定裝置配置為阻塞對受保護總線的讀取訪問和/或寫入訪問。優(yōu)選地,當做出針對讀取訪問的無效請求時,條件檢查裝置將向未受保護總線發(fā)送空數(shù)據(jù)。
      在另一個實施例中,將條件檢查裝置配置為向嵌入式處理器發(fā)送違反信號,用于開始反抗惡意應用程序代碼的防衛(wèi)機制。
      優(yōu)選地,條件檢查裝置可以向發(fā)出無效請求的未受保護總線提供指示。例如,可以將諸如中斷、錯誤、或中止之類的違反信號發(fā)送到嵌入式處理器,用于開始反抗在處理器上運行的可能的惡意代碼的防衛(wèi)機制。


      根據(jù)下文中描述的實施例,本發(fā)明的這些和其他方面是顯而易見的,并且參考下文中描述的實施例進行闡述。
      圖中圖1示意性地示出了包括硬件防火墻的集成電路體系結構的概述;以及圖2示意性地示出了集成電路中結合的所建議防火墻體系結構的概述。

      了本發(fā)明的實施例,與說明書一起用于解釋本發(fā)明的原理。
      應該注意的是,上述實施例所示并非限制本發(fā)明,并且在不脫離所附權利要求所限定范圍的情況下,本領域的普通技術人員能夠設計替代的實施例。在權利要求中,任意參考符號不應該限制權利要求的范圍。本發(fā)明可以通過包括幾個不同元件的硬件來實現(xiàn)。
      具體實施例方式
      防火墻用于提供對于系統(tǒng)或器件攻擊的保護。攻擊可以來自于系統(tǒng)上運行的軟件或應用程序代碼。操作系統(tǒng)軟件不能完全地防止來自系統(tǒng)上運行的外部代碼的攻擊。因此,本發(fā)明提出了一種硬件防火墻,能夠保護對于受保護總線的訪問,具體地對于與受保護總線相連的器件的訪問,具體地對于嵌入式存儲器的訪問。將功能硬件元件嵌入到半導體器件(例如,集成電路)內(nèi)部。所述功能硬件元件與嵌入式存儲器以及嵌入式處理器相連,和/或優(yōu)選地,還經(jīng)由受保護總線和未受保護總線與附加到半導體器件上的外圍器件相連。
      圖1是示意性體系結構,包括功能硬件元件105以執(zhí)行防火墻的作用。半導體器件100包括功能硬件元件105,在下文中也稱作硬件防火墻。硬件防火墻105與嵌入式處理器150相連,并且優(yōu)選地,經(jīng)由未受保護總線115與總線主控器(master device)140相連。按照類似的方式,硬件防火墻105與嵌入式存儲器110(例如,RAM或ROM)相連,并且優(yōu)選地,還經(jīng)由受保護總線125與外部存儲器接口120和系統(tǒng)外圍器件130相連。優(yōu)選地,外部存儲器接口120還經(jīng)由受保護總線125連接硬件防火墻105和外部存儲器160。
      由硬件防火墻105所限定的保護機制允許不同的級別,所述級別可以依賴于要求訪問受保護器件的應用程序代碼的行為來限定。
      在圖1中,可以看出將硬件防火墻105具體實現(xiàn)在嵌入式處理器150和嵌入式存儲器110之間??梢詫⒂布阑饓?05用于保護受保護總線125,從而保護嵌入式存儲器110的特定區(qū)域免于被在嵌入式處理器150上運行的應用程序代碼訪問。還可以對硬件防火墻105進行編程,以限定針對待保護的嵌入式存儲器110的每一個區(qū)域的訪問級別,這將參考圖2詳細討論??梢葬槍η度胧酱鎯ζ?10的不同區(qū)域或受保護總線125上不同的其他器件來限定不同的訪問級別。
      可以依賴于要求訪問器件的應用程序代碼的行為,例如訪問受保護總線125、訪問嵌入式存儲器110等,由硬件防火墻105限定保護的不同級別。例如,可以設想以下保護級別a.根本不允許訪問當設定鎖定比特211(圖2)時,防火墻105防止對于系統(tǒng)啟動期間鎖定的受保護總線125上器件的任意訪問。例如,在啟動期間,需要進行系統(tǒng)安全檢查或重要參數(shù)初始化,并且在其后應該防止對于這些例行程序的訪問;b.僅取碼訪問應用程序代碼所使用的例如加密或解密例行程序的一些系統(tǒng)專用例行程序可以存儲在受保護存儲器110中,但是必須在受保護區(qū)域以外是可用的。使用取碼,可以使例行程序位于嵌入式處理器150上;c.管理程序訪問例如,為了在操作中設定系統(tǒng)時鐘或改變特定系統(tǒng)參數(shù),操作系統(tǒng)可以在硬件防火墻105后面向操作系統(tǒng)本身可以信任的未受保護總線115上的器件給出管理程序訪問,例如例行程序;d.無寫入訪問例如,防止對嵌入式存儲器110或外圍寄存器的受保護區(qū)域中的數(shù)據(jù)進行寫入訪問可能是重要的。然而,讀取訪問可能仍然是必需的;e.完全訪問來自未受保護總線115的完全訪問對于受保護總線125上的特定內(nèi)容是可用的,例如嵌入式存儲器110中存儲的非重要例行程序或數(shù)據(jù)。
      可以將硬件防火墻電路105包括在嵌入式處理器150中。然而,該保護機制僅當訪問是從嵌入式處理器150本身發(fā)出時才工作。獨立的硬件防火墻105具有以下優(yōu)點可以防止受保護總線125免于其他器件(例如,總線主控器140)的訪問。此外,可以禁用嵌入式存儲器150內(nèi)部的嵌入式存儲器110的保護設定。該發(fā)明的另外用途是在調試正在器件上運行的軟件的同時,檢測是否已經(jīng)準予對故障代碼的非故意訪問。使用硬件防火墻105的另外應用是依賴于所限定的訪問條件來限制對經(jīng)由多總線環(huán)境中的受保護總線125與防火墻相連的器件的訪問。
      圖2是硬件防火墻205的實施例的示意性表示。硬件防火墻205包括鎖定裝置235、配置裝置220和條件檢查裝置230。鎖定裝置235包括鎖定寄存器210、訪問鎖定裝置240和數(shù)據(jù)鎖定裝置250。條件檢查裝置230經(jīng)由地址總線202和控制總線203與鎖定寄存器210和配置裝置220相連。數(shù)據(jù)總線201還將鎖定寄存器210和配置寄存器220與鎖定裝置235的數(shù)據(jù)鎖定裝置240相連。此外,地址總線202還與形成鎖定裝置235一部分的訪問鎖定裝置250相連。
      在執(zhí)行應用程序代碼之前,將至少一個鎖定比特211用于全局地鎖定所述鎖定寄存器210的至少一部分。
      將硬件防火墻205附加到受保護總線225上,所述受保護總線225與嵌入式存儲器110相連,并且優(yōu)選地還與外部存儲器接口120和外圍器件130相連。附加到硬件防火墻205上的未受保護總線215與嵌入式處理器150相連,并且優(yōu)選地還與總線主控器140相連。
      配置裝置220包括配置寄存器,用于存儲用于訪問受保護總線225的訪問相關信息和條件。優(yōu)選地,將配置裝置220中限定的配置寄存器分組,其中每一組限定嵌入式存儲器110的受保護區(qū)域,例如可以使用嵌入式存儲器110中的起始地址和結束地址來限定。
      優(yōu)選地,鎖定寄存器210與配置寄存器220中至少一個相關聯(lián)。將鎖定寄存器210配置為選擇性地允許或拒絕訪問配置寄存器220中相關聯(lián)的至少一個。例如,當沒有激活鎖定寄存器210時,可以讀取或寫入相關聯(lián)的配置寄存器220。當激活鎖定寄存器210時,僅可以讀取相關聯(lián)的配置寄存器220。
      與鎖定寄存器210相關聯(lián)的至少一個鎖定比特211可以將鎖定寄存器210本身鎖定。當沒有激活鎖定比特211時,可以沒有任何限制地讀取或寫入鎖定寄存器210。然而,當激活鎖定比特211時,防止訪問鎖定寄存器210。因此,針對已經(jīng)激活的鎖定寄存器210,不可以更改在相關聯(lián)配置寄存器220中已經(jīng)限定的保護。
      類似地在設定鎖定比特211之后,可以限制訪問由被鎖定的配置寄存器220所表示的受保護總線225上的器件。于是,只有當前不與任意鎖定寄存器210相關聯(lián)的配置寄存器220、或與未鎖定的鎖定寄存器210相關聯(lián)的配置寄存器220仍然是可以從未受保護總線215可訪問的。
      結果,可以在設定鎖定比特211之后限定新的保護,但是當在配置寄存器220中已經(jīng)限定了保護,并且鎖定寄存器210與該配置寄存器210相關聯(lián)并且隨后被鎖定時,保護不能從未受保護總線215進行更改。因此,防護了受保護器件或存儲器區(qū)域免于來自受保護總線225的未授權訪問。
      條件檢查裝置230連續(xù)地檢查未受保護總線215對于受保護總線225的訪問請求。條件檢查裝置230還檢查在限定了針對受保護總線225上不同器件的保護級別的被鎖定配置寄存器220中存儲的訪問條件。條件檢查裝置230利用在配置裝置220中存儲的訪問條件,檢查未受保護總線215上的訪問請求。如果確定不應該允許所請求的訪問,條件檢查裝置230向訪問訪問鎖定裝置250和數(shù)據(jù)鎖定裝置240發(fā)送信號,以根據(jù)所得到的比較條件來允許或拒絕讀取和/或寫入訪問。優(yōu)選地,條件檢查裝置230提供系統(tǒng)使用的指示符,以便知道什么時候在系統(tǒng)中發(fā)生訪問條件的違反。當已經(jīng)發(fā)生訪問條件的違反時,將條件檢查裝置235配置為向嵌入式處理器發(fā)送違反信號204以開始防衛(wèi)機制,例如中斷信號、錯誤信號或中止信號。
      訪問鎖定裝置250連續(xù)地與條件檢查裝置230相互作用。當條件檢查裝置230向訪問鎖定裝置250發(fā)送拒絕訪問信號時,訪問鎖定裝置250禁用從未受保護總線215請求的對于受保護總線225的訪問。
      此外,鎖定裝置包括與條件檢查裝置230相互作用的數(shù)據(jù)鎖定裝置240。當存在來自未受保護總線215的無效訪問請求時,條件檢查裝置230可以指示數(shù)據(jù)鎖定裝置240向未受保護總線215的數(shù)據(jù)線發(fā)送空數(shù)據(jù)。
      硬件防火墻205具有以下優(yōu)勢條件是完全地可編程的和靈活的,而沒有危及器件的安全。另一個優(yōu)點是硬件防火墻205允許外部存儲器160中包含的應用程序來限定受保護總線以及待保護嵌入式存儲器110的特定專用區(qū)域。該系統(tǒng)的另外優(yōu)點是其在調試軟件的應用中的使用,其中硬件防火墻205可以通過保護系統(tǒng)中的各種器件來保護系統(tǒng)免于非故意的訪問。
      盡管本發(fā)明已經(jīng)參考上述實施例進行了描述,明顯的是可以替代地將其它實施例用于實現(xiàn)相同目的。因此,本發(fā)明的范圍不局限于上述實施例,而是也可以應用于其它器件。
      還應該注意的是,動詞“包括”及其變形在該說明書(包括權利要求)中被理解為詳細說明所聲明的特征、整體、步驟或部件的存在,但是不排除存在或添加一個或更多其它特征、整體、步驟、部件及其組合。還應該注意的是,權利要求中元件前的不定冠詞不排除存在多個此種元件。此外,任意參考符號不限制權利要求的范圍。本發(fā)明可以通過硬件和軟件兩者來實現(xiàn),相同項目的硬件可以表示幾個“裝置”。此外,本發(fā)明存在于每一個新穎特征或特征的組合。
      本發(fā)明可以總結如下。具有電路的半導體器件包括嵌入式存儲器;嵌入式處理器,用于執(zhí)行應用程序代碼;以及功能硬件元件,經(jīng)由受保護總線與嵌入式存儲器相連,并且經(jīng)由未受保護總線與嵌入式處理器相連,所述硬件元件配置為保護受保護總線,并且包括鎖定裝置,所述鎖定裝置包括多個鎖定比特,用于在執(zhí)行應用程序代碼之前,全局地鎖定所述鎖定裝置的至少一部分。
      權利要求
      1.一種半導體器件100,具有包括以下部件的電路嵌入式存儲器110;嵌入式處理器150,用于執(zhí)行應用程序代碼;以及功能硬件元件105,經(jīng)由受保護總線125與嵌入式存儲器110相連,并且經(jīng)由未受保護總線115與嵌入式處理器150相連,所述硬件元件105配置為保護受保護總線125,并且包括鎖定裝置235,所述鎖定裝置235包括至少一個鎖定比特211,用于在執(zhí)行應用程序代碼之前全局地鎖定所述鎖定裝置235的至少一部分。
      2.根據(jù)權利要求1所述的器件,其中,鎖定裝置235配置為保護嵌入式存儲器110的區(qū)域。
      3.根據(jù)權利要求1所述的器件,其中,鎖定裝置235包括鎖定寄存器210,并且將至少一個鎖定比特211配置為全局地鎖定所述鎖定寄存器210的至少一部分。
      4.根據(jù)權利要求1所述的器件,其中,功能硬件元件235包括配置裝置220,所述配置裝置220包括配置寄存器220,用于存儲針對受保護總線125的訪問,條件;以及鎖定寄存器210,所述鎖定寄存器210與配置寄存器中至少一個相關聯(lián),用于選擇性地允許或拒絕對于配置寄存器220中所述至少一個的訪問。
      5.根據(jù)權利要求4所述的器件,其中,激活的鎖定寄存器210表示將配置寄存器220中相關聯(lián)的至少一個配置為只讀,并且未激活的鎖定寄存器210表示將配置寄存器220中相關聯(lián)的至少一個配置為讀和寫。
      6.根據(jù)權利要求4所述的器件,其中,配置寄存器220配置為限定受保護的嵌入式存儲器區(qū)域110。
      7.根據(jù)權利要求1所述的器件,其中,在設定鎖定比特211之后,鎖定裝置235的未鎖定部分從未受保護總線215仍然是可訪問的。
      8.根據(jù)權利要求4所述的器件,其中,功能硬件元件105包括與配置裝置220相連的條件檢查裝置230,用于將對于受保護總線225的訪問請求與在配置裝置220中存儲的訪問條件進行比較,并且根據(jù)所述比較的結果,向鎖定裝置235提供信號204用于允許或拒絕所述訪問請求。
      9.根據(jù)權利要求8所述的器件,其中,鎖定裝置235配置為當從條件檢查裝置230接收訪問拒絕信號204時,禁用對于受保護總線225的訪問。
      10.根據(jù)權利要求8所述的器件,其中,條件檢查裝置230配置為當所述訪問請求無效時,向未受保護總線215發(fā)送空數(shù)據(jù)。
      11.根據(jù)權利要求8所述的器件,其中,條件檢查裝置230配置為向嵌入式處理器150發(fā)送違反信號204,用于開始反抗惡意應用程序代碼的防衛(wèi)機制。
      全文摘要
      一種半導體器件,具有包括以下部件的電路嵌入式存儲器;嵌入式處理器,用于執(zhí)行應用程序代碼;以及功能硬件元件,經(jīng)由受保護總線與嵌入式存儲器相連,并且經(jīng)由未受保護總線與嵌入式處理器相連,所述硬件元件配置為保護受保護總線,并且包括鎖定裝置,所述鎖定裝置包括至少一個鎖定比特,用于在執(zhí)行應用程序代碼之前全局地鎖定所述鎖定裝置的至少一部分。
      文檔編號G06F21/79GK101084504SQ200580043632
      公開日2007年12月5日 申請日期2005年12月19日 優(yōu)先權日2004年12月21日
      發(fā)明者帕特里克·富爾徹里, 哈拉爾德·N·鮑爾, 讓-菲利普·佩蘭 申請人:皇家飛利浦電子股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1