存儲器數據的穩定可靠是MCU安全運行的基礎,但環境因素和存儲器本身的物理特性都可能造成存儲器數據異常,本文將詳細介紹RAM&ROM常用安全機制。
存儲器(ROM,RAM)數據的安全可靠是MCU穩定運行的基礎,在汽車功能安全設計中,存儲器相關的安全機制也是系統基本保障的重點之一。通常,不同的汽車芯片都有自己的存儲器校驗機制以及相應的處理手段來保證功能的正常運行。下面會對常見的處理機制進行一些介紹。
RAM的校驗糾錯機制
RAM的校驗機制相對ROM的校驗機制較少,校驗機制基本都屬于MCU本身的特性,通過內部硬件實現,對于用戶來說是透明的。而一般用戶使用時也不會主動的對RAM進行校驗。1. Parity BitParity Bit(奇偶校驗位)是一種數據校驗機制,常用與判斷數據在存儲過程中是否發生了比特位錯誤。
圖1 奇偶校驗模式可以看到圖1,帶有Parity Bit的內存在每一個字節(B7~B0)外又額外增加了一個校驗位(C)用于對錯誤進行校驗。Parity Bit有著計算簡單的優點,只需要對前面字節的位進行異或操作:
C = B7^ B6^ B5^ B4^ B3^ B2^ B1^ B0Parity Bit在ECC技術之前,是RAM中應用最多的錯誤檢查技術,當然,現在只有在已經很少有CPU用到,因為每1 Byte的數據都需要1 bit的校驗位,對于MCU本就很緊張的RAM顯然不合適。另外Parity Bit只具備檢錯能力,并不具備糾錯能力。2. ECC通過上面對Parity Bit的分析可以知道,通過在原來的數據1 byte基礎上增加1 bit,可以用來檢查當前1 byte數據的正確性。如果數據為256 byte就需要256 bit的校驗位,而且出錯的數據無法糾正。由于上述的缺點,出現了一種新的存儲檢錯糾錯機制 – ECC。
圖2 檢錯能力對比ECC(Error-Correcting Code),可以譯為檢錯糾錯碼。ECC的計算過程比Parity Bit的計算過程復雜一點,這里不進行過多描述。僅針對ECC的兩個主要特點進行說明:① ECC有極強的檢錯能力ECC的計算方式與Parity Bit不同,當數據為1 Byte時,ECC需要5 bit校驗位對數據進行校驗,之后數據每增加1倍,相應的只需要增加1 bit的ECC 校驗位。可以看到圖2,ECC的檢錯能力相比Parity Bit有極大的提升。② ECC具有糾錯能力當數據只有單bit 錯誤時,ECC能夠對錯誤進行修復,但需要注意的是,當數據中有超過 2 bit的錯誤同時產生時,ECC不一定能檢測出來,這一點Parity Bit也是一樣。
ROM的檢驗糾錯機制
與復雜的RAM空間相比,ROM空間的操作顯然簡單的多,因此,對于ROM的校驗使用者可以根據不同的需求,選擇不同的方式。
常用的有hash,CRC,對于大容量ROM,比如Nand Flash同樣也可以使用ECC的方式?;旧?,只需要滿足ROM內容和生成的校驗碼存在相對唯一的映射關系即可。
但是用戶自己實現的ROM校驗機制存在不少缺點:校驗失敗沒有靈活的處理措施,對ROM的校驗需要消耗額外MCU資源等。1. HSE隨著汽車產業的不斷升級,汽車智能化程度也在不斷加深,越來越多的汽車會通過OTA的方式實現客戶的個性化需求。但OTA在增加汽車升級和維護便利性的同時,也給數據的安全可靠性帶來了新的考驗。顯然,應用開發者自己實現的ROM校驗并不足以滿足汽車應用的安全需求,汽車應用上,保證MCU程序的正確運行顯然需要一套更靈活,更完善的校驗機制,并且該校驗機制不僅需要保證數據的可靠性,還要保證檢驗機制本身的可靠性。下面會介紹NXP S32系列芯片是如何利用其HSE安全子系統來為ROM數據的可靠性提供支持,進而保證汽車應用的安全穩定運行的。
圖3 HSE框架HSE(Hardware Security Engine)全稱為硬件安全引擎,用于給對數據的可靠性和保密性有嚴格要求的應用提供相應的安全服務。其有以下特點:
獨立的內核,固件,存儲空間;
可以為加密算法提供安全硬件加速;
支持固件升級。
可以看到圖3中,HSE模塊最基礎也最主要的部分是它的Crypto Engine(加密引擎),其可以通過硬件實現加解密/MAC生成校驗/簽名驗簽等功能。因為HSE全面完善的算法和密鑰管理機制,可以利用HSE模塊可以對用戶設定的存儲區域進行校驗,并根據檢驗結果執行不同的操作,正是HSE安全可靠,設置靈活的特性,構成了MCU安全穩定運行的基礎。當然HSE除了能夠為MCU的OTA和安全啟動功能提供可靠保證外,HSE通過硬件加速特性和完善的加解密算法庫還能夠對網絡協議進行全面可靠的支持,可以實現TLS offload,IP offload,減少網絡協議的通信時延。
結語
上面提到了一些存儲器常見的校驗方式和NXP S32系列的HSE安全子系統,當然無論通過哪種方式,為了實現OTA和越來越多的網絡應用功能,通過MCU實現更加安全可靠的數據存儲傳輸都是現在的趨勢。
-
mcu
+關注
關注
146文章
17699瀏覽量
357864 -
存儲器
+關注
關注
38文章
7610瀏覽量
165867 -
RAM
+關注
關注
8文章
1384瀏覽量
116305 -
數據存儲
+關注
關注
5文章
991瀏覽量
51535
發布評論請先 登錄
相關推薦
評論