用戶對特性和功能的要求仿佛永不滿足,這迫使汽車制造商在汽車中安裝越來越多的電控裝置(ECU),以至于汽車電子網絡已復雜到無以復加的地步。一些特性純粹是為了提高舒適性或便捷性(如導航、高級音響、自動空調等系統),而其他系統則是法律強制要求的(如胎壓監測、高級氣囊、車輛穩定性控制等系統)。為了管理這種與日俱增的復雜度,汽車電氣架構(Boardnetz)被劃分為具體的域,包括:動力系、車身、底盤、安全系統和信息娛樂系統。每個子域都通過信息網關連接至高速主干總線,實現不同電子控制裝置集群之間的信息共享。(圖1)目前采用的主干總線通常是FlexRay技術,不過未來也有可能采用以太網技術。下一步發展計劃是通過提供“域控制器”來替代子域中的一系列電子控制裝置,從而大幅減少各個子域中的電控裝置的數量。這些域控制電控裝置提供了高性能的計算平臺,能夠并行托管諸多應用,從而取代大量小型電子控制裝置和簡化系統。這種方法具有許多誘人的優點,如節省安裝空間、縮短裝配時間、降低線束復雜度、降低網絡復雜度和降低功耗等。就系統成本和研發投資而言,這種方法也能節省大筆資金。不過,隨之而來的是對計算平臺提出了許多新的要求,以支持在域控制電控裝置中的一顆單片機上,同時托管不同廠商提供的軟件和應用。
圖1:用于簡化網絡連接的域控制器“Boardnetz”,可將若干有關應用集成到高性能域控制電子控制裝置中
不同應用之間的干擾免除
一個關鍵問題是,確保平臺上運行的所有不同應用之間的“干擾免除”。這意味著,對各個進程在資源使用上強制執行預先定義的限定,包括CPU處理時間、中斷時延、代碼執行范圍、RAM占用量、外設訪問和服務使用(如操作系統功能、EEPROM處理程序、總線網絡驅動程序和類似的共享功能)等。這些保障措施在采用多核單片機上需要審慎地考慮。這些多核單片機將具備若干個CPU,以運行多個AUTOSAR操作系統(操作系統應用)實例,并分享同一套硬件資源。傳統的分享共用計算資源方法涉及利用“管理程序”層來抽象化硬件。這種管理程序避免了操作系統直接訪問物理硬件,代之以收集這些訪問,排列整理確定其優先級和權限,從而拒絕或同意訪問請求。將這一思路引入汽車領域,則意味著在每個CPU上運行若干個“AUTOSAR虛擬機”,并由特定管理程序層來管理使用共享資源的權限和沖突。然而,汽車電控裝置尚不可支持這種程度的抽象,因為這種深度嵌套的實時系統的主要缺點是會大幅延長所有外設訪問的時延的。為了成功實現資源共享,AUTOSAR版本4提供了一種合作共享模式,它規定了一種操作系統應用間通信(IOC)機制,借以將某個特定內核上不能服務的基本軟件模塊(BSW),重新定向至可提供服務的內核。這種機制依賴于內核之間的協作,其不足之處是有可能某個內核收到大量IOC請求,因而影響其執行其他任務的能力。必須審慎地檢查通過這種合作機制實現的不同內核上的應用之間的“干擾免除”,并且必須對可能造成的潛在附加負荷加以限制。
要將域控制器理念付諸實踐,更為務實的第一步是直接將兩個電控裝置合二為一。即便這個小小之舉,也能在封裝、電控裝置基礎結構(電路板、接頭、電源、總線轉發器、貼裝和測試)以及線束等方面帶來大幅節省。最簡單的解決方案是將兩顆原裝單片機并排貼裝在一張電路板上,然而,最好能有一顆多核單片機為兩個應用分別提供專用資源,以進一步降低復雜度和節省元件成本。不過,如果有一個或多個涉及安全問題的應用(即,在意外運行中可能造成人身傷害的應用),那么,必須按照最近發布的《ISO26262功能安全標準》的規定,進行嚴格的分析、工程設計、考量和論證。《ISO26262功能安全標準》要求硬件必須具備足夠的故障檢測能力,并且將違背任何安全目標的可能性降到極低,才能用于這樣的安全系統。汽車安全完整性等級D(ASILD)的最高要求對經濟和能耗方案是一個有趣的挑戰。要實現99%以上的單點故障(SPF)指標,通常要求冗余計算能力、數據失效檢測邏輯、定時器和內存保護單元、時鐘監測、電壓監測和專用自檢機制。如果要靠應用程序員來解決所有這些與硬件有關的問題,那么在運行時執行真實性檢查和測試就要消耗大量處理能力。如果單片機上具備多個處理內核,則必須采取額外的措施來檢測其他CPU以及諸如DMA引擎和任何其他內部總線主控器等其他器件對某個CPU造成的干擾。
當安全遇上性能
通過與市場領先的一流廠商密切合作,英飛凌推出了一個全新的多核TriCore處理器家族,以滿足在計算性能、更高內存容量、安全性和汽車質量等方面日益增長的需求。這個命名為AURIX的全新處理器家族,是繼大獲成功的AUDO和AUDOMAX家族的后起之秀。全新設計的AURIX家族旨在以高能效、高性能的方式,提供最先進的處理能力。TriCore內核被重新設計為兩種不同的版本:一個是超標量版本,可實現行業領先的300Mz性能;另一個是標量版本,在200MHz頻率上,可實現最低電流消耗和最小尺寸空間,是適用于中端應用的最高效的解決方案。這兩個版本的TriCore CPU都可實現鎖步,為ASIL D安全系統提供卓越的故障檢測能力和快速響應時間。AURIX家族在性能、內存容量和封裝方面的靈活擴展性支持在不同器件之間共享一套共用安全實例,既允許在較小的器件上托管單個應用,也允許在較大的器件上同時托管多個應用,而無需更改軟件架構或安全策略。這在一定程度上是由于在每個外設和每個內部總線受控器中集成了一個獨一無二的功能,使之僅接受來自規定資源的訪問。這種機制(被稱為寄存器訪問保護)(圖2)能夠永久地阻斷或允許任何CPU、DMA或其他總線主控器訪問(或可能破壞)任何內部共享資源(SRAM、外設、IO)的狀態。這樣,用戶就可以將任何外設和內存組合,專用于各個CPU和DMA。許多外設也實現了雙配置,以便托管的各個應用擁有自己的專用資源,確保“干擾免除”,而不受任何內存保護機制或其他與操作系統有關的封裝機制的影響。對主控制器軟件工程和集成分析而言,節省空間的潛力很大(~30%),因為混合型臨界系統可以在一個內核上為ASILD應用托管一個AUTOSAR OS,并同時在另一個核上托管一個不啟用本地內存或定時保護的非AUTOSAR OS,該,使得非安全應用不可能干擾單片機的與安全有關的行為。如果想要實現多個ASIL D應用,那么AURIX也可托管多個AUTOSAR操作系統應用,并完全支持合作模式。全新臨時保護系統在CPU內核上執行任務時間預算監管和中斷率監測上提供了輔助。這樣一來,ASIL C和ASIL D系統也可以實現AUTOSAR IOC,因為硬件可以監測內核之間的任何相互作用,并將之限制在預先規定的限度內。硬件強制執行封裝邊界,允許在將監測功能集成到現有系統中時,進行直截了當的安全論證,因為可以直接推斷出“干擾免除度”。這些機制共同提供了實現“半虛擬化”所需的切入點。“半虛擬化”是朝著全“虛擬化”和管理程序邁出的務實的第一步。因為如今的汽車應用事實上并不能提供,也不嚴格要求運行“虛擬機”的能力。
圖2:寄存器訪問保護系統允許向特定CPU和DMA靈活分配外設和系統資源,強制封裝好后而不受操作系統內存保護機制的影響
現在,英飛凌最新推出的AURIX家族控制器實現了許多創新技術和機制,(圖3)是一個可靈活擴展的解決方案,既能滿足最高性能計算應用的要求,同時又為硬件帶來了諸多安全特性,而不再依賴于應用級軟件。隨著汽車電子控制功能和特性不斷呈指數級增長,在一顆單片機上托管多個產自不同廠商、具備不同安全危險程度的應用的能力,將開啟通往新的域控制器架構的大門,在提高系統可靠性的同時,降低復雜度。
圖3:AURIX超集框圖顯示了兩對鎖步TriCore CPU和一個高性能TriCore,可在統一片上系統架構中實現最優性能和安全性
關于作者
Dipl. Ing. (BSc) Simon Brewerton是英飛凌科技負責汽車用單片機功能安全的高級首席工程師,工作地點在英國布里斯托爾
責任編輯:gt
-
處理器
+關注
關注
68文章
19384瀏覽量
230506 -
控制器
+關注
關注
112文章
16418瀏覽量
178790 -
汽車電子
+關注
關注
3027文章
7992瀏覽量
167445 -
Aurix
+關注
關注
1文章
71瀏覽量
10936
發布評論請先 登錄
相關推薦
評論