當前在汽車、軌道交通的安全系統開發中,很多使用了雙核鎖步(dual core lockstep)安全芯片,本篇來談談雙核鎖步安全芯片的技術特點。
ISO26262對雙核鎖步芯片的規定條款
在汽車功能安全標準ISO26262-5 2018 產品開發:硬件層面附錄D對處理單元的診斷覆蓋率推薦的安全技術措施中,作為可實現高診斷覆蓋率的幾種技術措施之一,硬件冗余技術中,雙核鎖步、非對稱冗余、編碼計算是三種典型的技術措施。
技術特性
處理器CPU作為控制器的核心,內部包括寄存器、內存、譯碼器、ALU、高速緩存、總線、電源、時鐘、堆棧、復位電路,所有組成部分需要以正確的時序要求運行,但CPU也會出現故障,如EMC、輻射、時鐘漂移、低電壓都可能導致CPU出現錯誤導致控制行為不可控。
雙核鎖步CPU是一種CPU冗余技術,在一個芯片中包含兩個相同的處理器,一個作為master,一個作為slave,它們執行相同的代碼并嚴格同步,master可以訪問系統內存并輸出指令,而slave不斷執行在總線上的指令(即由主處理器獲取的指令)。slave產生的輸出,包括地址位和數據位,發送到比較邏輯模塊,由master和slave總線接口的比較器電路組成,檢查它們之間的數據、地址和控制線的一致性。檢測到任何總線的值不一致時,就會發現其中一個CPU 上存在故障,但不會確定是哪個CPU故障。
這種CPU架構使得CPU自檢獨立于應用軟件,不需要執行專門的指令集自檢,實際運行的軟件指令在每個時鐘都進行比較,只需要測試軟件用到的CPU資源,但這種架構不會對內存和總線進行檢測,需要增加單獨的檢測方法以避免兩個CPU的共模故障。
在Delphi Secured Microcontroller Architecture這篇關于鎖步MCU的論文中,這種架構的優勢有四方面:
由于減少了硬件元器件數量和連接,相比于使用兩個獨立的MCU,提高了硬件的可靠性;
電路板布局的小型化和復雜度降低,使得板級EMI性能提升和輻射發射降低;
故障診斷能力的提升,故障從源頭并且在第一次出現時就被檢測到,不會漏掉潛伏故障;
提高了軟件的可靠性,不需要雙CPU的通信和數據同步,減少數據比較和決策邏輯,降低了軟件驗證的復雜度。
典型的雙核鎖步芯片
各大芯片廠商都在積極開發雙核鎖步架構的芯片,以期望在功能安全芯片領域占有更多的市場,典型的芯片系列有:
TI Hercules系列
Hercules是TI公司以ARM Cortex核心構建的安全關鍵CPU,包括三個系列:RM4,TMS570和TMS470M,內部由鎖步雙核CPU組成,最高可滿足ISO26262 ASIL-D和IEC61508 SIL3功能安全標準的要求,并符合AEC-Q100車規級要求,雙核鎖步CPU架構、硬件BIST、MPU、ECC、片上時鐘和電壓監控可以滿足汽車、鐵路和航天航空關鍵功能安全應用。
英飛凌AURIX系列
AURIX多核微控制器具有高實時性和嵌入式安全和安保特性。可用于控制內燃機、電動汽車和混動汽車的ECU單元、底盤域、剎車系統,EPS,安全氣囊和ADAS系統,還可應用于鐵路、工業自動化等領域。最新一代的AURIX TC3xx系列搭載了多達6個TriCore嵌入式內核,每個內核的時鐘頻率最高可達300MHz。配備千兆以太網、信號處理單元等最新通信接口。
NXP S32、MPC57xx系列
NXP的S32系列基于ARM Cortex架構,包括:
S32K MCU用于一般的汽車和工業應用,達到ASIL B/D 的high safety和security;
S32G 車用網絡處理器,用于處理與面向服務的網關、域控制器和安全協處理器相關的高性能應用;
S32S 車輛安全動力學MCU,用于管理為未來的自動駕駛和電動汽車安全加速、制動和轉向;
S32R45 雷達處理器,用于遠距離雷達成像的高性能、安全和可靠的處理。
MPC57xx系列基于Power Architecture?,包括MPC5777C,MPC577xK,MPC5777M,MPC5744P等,應用于汽車動力學、ADAS、高級自動駕駛應用。
發展趨勢
從車用芯片的發展趨勢來看,呈現以下幾個趨勢:
鎖步芯片能支持的計算能力越來越強,目前最高的主頻已由原來200-300MHz上升到1GHz;
由雙核鎖步向多核鎖步發展,芯片內部可以實現多核,每2個核實現鎖步運算;
支持千兆以太網,CAN、FlexRay,滿足車內高速互聯需求;
在功能安全達到ASIL-B/D要求下,同時支持Security特性,硬件加密,可編程的硬件安全引擎支持公鑰和私鑰加密,防范 IP 失竊和惡意黑客入侵;
支持OTA空中在線升級特性。
NXP S32K MCU架構
這類芯片在應用中比起常規的CPU芯片,需要注意并不是使用了具有鎖步特性的芯片就達到了對應的安全等級要求,芯片會配套一系列完整的芯片安全使用要求需要遵循,一般會寫在芯片的safety manual中,包括:
操作和使用環境的約束限制;
防范系統性失效;
系統級安全功能與芯片安全功能的匹配性,安全狀態,安全時序要求,芯片不會實現特定的安全功能;
芯片安全診斷措施的正確配置和實施;
CPU芯片與外部芯片的匹配性,一般會搭配電源IC、看門狗IC、驅動IC共同實現安全要求;
common cause(共因)失效的防范。
這些要求都需要應用者逐項檢查后將要求加入到系統性的安全設計中。
雙核鎖步芯片作為芯片級功能安全技術的代表,當前的應用已非常廣泛,功能安全已不再局限于使用既有硬件元器件實現,已擴展到半導體領域,用于實現集成度更高、性能更優的安全產品,在ISO26262-11 2018中對半導體技術在汽車領域的應用進行了說明,IEC61508、EN50129也有相應條款說明了半導體技術在各自范圍內的功能安全要求。
審核編輯:黃飛
評論
查看更多