域控制器的四大支柱分別是車載以太網、自適應Autosar、高性能處理器和集中式E/E架構。
? 1.車載以太網之物理層
? 車載以太網有兩個核心,一個是車載以太網物理層,另一個是車載以太網協議棧。前者讓車載以太網不同于傳統PC以太網,具備較低的重量和成本、較好的EMI性能和簡單布線。后者讓車載以太網達到車規級的可確定性、高可靠性、低延遲和時鐘一致。?? ?
? ?車載以太網OSI模型,資料來源:Marvell ? 車載以太網標準分兩部分,一部分是最底層的PHY標準,另一部分是鏈路層標準。這兩個標準都以IEEE的標準應用最廣泛。 ? 車載以太網PHY標準主要是制定單對雙絞線標準,傳統以太網與車載以太網最大不同是傳統以太網需要2-4對線,車載以太網只需要一對,且是非屏蔽的,僅僅此一項,可以減少70-80%的連接器成本,可以減少30%的重量。這是車載以太網誕生的最主要原因。同時也是為了滿足車內的EMC電磁干擾。 ?
車載以太網PHY標準分布,資料來源:Marvell ? 車載以太網野心勃勃,10Base-T1S是試圖取代傳統的CAN網絡的。10BASE-T1S即IEEE802.3cg也就是 OPEN Alliance 的TC14 ,100BASE-T1即IEEE802.3bw也就是OPEN Alliance TC1,100/1000BASE-T1 ECU測試標準即OPEN Alliance的TC8, 1000BASE-T1即IEEE802.3bp也就是OPEN Alliance 的TC12 ,2.5/5/10GBASE-T1即IEEE802.3ch也就是OPEN Alliance 的TC15標準。 ? 車載以太網物理層IC,100Mbps的大約3-4美元,德州儀器、NXP傳統汽車芯片大廠市場占有率高,傳統網絡芯片廠家博通也略強。1Gbps的大約15-20美元,Marvell在此領域實力超強,博通和Microchip也有一席之地。1Gbps以上基本只有Aquantia,Aquantia已經被Marvell以4.52億美元收購。10Gbps有Aquantia的AQV107,大約40美元一片。 ?
? PHY在發送數據的時候,收到MAC過來的數據(對PHY來說,沒有幀的概念,對它來說,都是數據而不管什么地址,數據還是CRC),每4bit就增加1bit的檢錯碼,然后把并行數據轉化為串行流數據,再按照物理層的編碼規則(10Based-T的NRZ編碼或100based-T的曼徹斯特編碼)把數據編碼,再變為模擬信號把數據送出去。網線上的到底是模擬信號還是數字信號呢?答案是模擬信號,因為它傳出和接收是采用的模擬的技術。雖然它傳送的信息是數字的,并不是傳送的信號是數字的。?? ?
通常交換器IC和MCU會集成低端(如CAN網絡)的物理層,高端(如以太、Flexray網絡)物理層一般都是單獨的芯片。
? 2.車載以太網協議棧標準集:TSN
以太網是由鮑勃梅特卡夫(Bob Metcalfe)于1973年提出的,以太網絡使用CSMA/CD(載波監聽多路訪問及沖突檢測)技術,目前通常使用雙絞線(UTP線纜)進行組網。包括標準的以太網(10Mbit/s)、快速以太網(100Mbit/s)、千兆網(1Gbit/s)和10G(10Gbit/s)以太網。它們都符合IEEE802.3。(注:bps=bit/s) 。以太網中所有的傳輸都是串行傳輸,就是說在網卡的物理端口會在每一個單位時間內“寫入”或是“讀取”一個電位值(0或1)。那么這個單位時間對于1Gbps帶寬來說就是1÷1000,000,000=1ns,每8個位(bit)相當于1個字節(Byte)。多個字節(Byte)可以組成一個數據幀。以太網傳輸數據是以幀為單位的。 ? 以太網規定每一個數據幀的最小字節是64byte,最大字節是1518byte。實際上每個數據幀之間還會有一個12字節的間隔。由于帶寬通常是由多個設備共享的,這也是以太網的優勢所在。但是所有的發送端沒有基于時間的流量控制,并且這些發送端永遠是盡最大可能發送數據幀。這樣來自不同設備的數據流就會在時間上產生重疊,即我們通常所說的沖突。因為所有數據流重疊/沖突的部分會遵循QoS優先機制進行轉發,一部分的數據包肯定會被丟棄。在IT專業里有一個不成文的規定。 ?
當某個交換機的帶寬占用率超過40%時就必須得擴容,其目的就是通過提高網絡帶寬來避免擁堵的產生。 ? 由于以太網的發明時間太早,并沒有考慮實時信息的傳輸問題。盡管RTP(Realtime Transport Protocol)能在一定程度上保證實時數據的傳輸,但并不能為按順序傳送數據包提供可靠的傳送機制。因此,想要對所有的數據包進行排序,就離不開對數據的緩沖(Buffer)。但一旦采用緩沖的機制就又會帶來新的問題—極大的“延時”。
換句話說,當數據包在以太網中傳輸的時候從不考慮延時、排序和可靠交付。傳統以太網最大的缺點是不確定性或者說非實時性,由于Ethernet采用CSMA/CD方式,網絡負荷較大時,網絡傳輸的不確定性不能滿足工業控制的實時要求,故傳統以太網技術難以滿足控制系統要求準確定時通信的實時性要求,一直被視為“非確定性”的網絡。盡管傳統二層網絡已經引入了優先級(Priority)機制,三層網絡也已內置了服務質量(QoS)機制,仍然無法滿足實時性數據的傳輸。此外,在傳統以太網中,只有當現有的包都處理完后才會處理新到的包,即使是在Gbit/s的速率下也需要幾百微秒的延遲,滿足不了車內應用的需求。更何況目前是Mbit/s的速率,延遲最多可能達上百毫秒,這肯定是無法接受的。
普通以太網采用的是事件觸發傳輸模式,在該模式下端系統可以隨時訪問網絡,對于端系統的服務也是先到先服務。事件觸發模式的一個明顯的缺點是當幾個端系統需要在同一傳輸媒介上進行數據通訊時,所產生的傳輸時延和時間抖動會累積。 ? 隨著音視頻娛樂大量進入汽車座艙,IEEE開始著手開發用于音視頻傳輸的以太網,這就是EAVB。AVB——以太網音視頻橋接技術(Ethernet Audio Video Bridging)是IEEE的802.1任務組于2005開始制定的一套基于新的以太網架構的用于實時音視頻的傳輸協議集。 ?
EAVB主要在針對多媒體數據,適用面太窄,2012年11月,EAVB工作小組改名TSN工作小組。TSN是一系列標準的集和。TSN的核心應用是異構性網絡的實時、高可靠性,高時鐘同步性數據交換。也就是說主要用于骨干傳輸網,而非節點。汽車、工業自動化是主要應用場合,這些場合至少有兩種以上的傳輸總線,通常是CAN和以太網,汽車則還有MOST、Flexray、LIN、PSI5、CAN-FD等,這些是用戶習慣、成本和研發成果復用性決定的,不可能改變。如果非異構性網絡,TSN優勢不明顯。TSN也可用于5G,5G的前傳Fronthaul采用的就是TSN 802.1CM標準。 ?
? TSN標準包括時鐘同步、超高可靠性、低延遲、資源管理四大類,紫色字體為尚未完成,截至2020年1月,2020年6月19日,802.1AS-2020版已經完成。
? 下面介紹TSN的關鍵標準 ? 時間同步??? ? ? ? ? ? ?
? ? ? ? ? 所有通信問題均基于時鐘,確保時鐘同步精度是最為基礎的問題,TSN工作組開發基于IEEE1588的時鐘,并制定新的標準IEEE802.1AS-Rev。它用于實現高精度的時鐘同步。對于TSN而言,其最為重要的不是“最快的傳輸”和“平均延時”,而是“最差狀態下的延時”—這如同“木桶理論”,系統的能力取決于最短的那塊板,即對于確定性網絡而言,最差的延時才是系統的延時定義。 ? IEEE1588 協議,又稱 PTP( precise time protocol,精確時間協議),可以達到亞微秒級別時間同步精度,于 2002 年發布 version 1,2008年發布 version 2。它的主要原理是通過一個同步信號周期性地對網絡中所有節點的時鐘進行校正同步,可以使基于以太網的分布式系統達到精確同步,IEEE?1588PTP時鐘同步技術也可以應用于任何組播網絡中。 ?
? IEEE1588 協議的同步原理,所提出的 Delay Request-Response Mechanism(延時響應機制)如上圖,IEEE1588 把所涉及到的報文分為 事件報文 和 通用報文,分類依據是:是否在收發報文時需要記錄精確時間戳,根據上文中所描述的幾種報文,可以進行如下分類: ?
事件報文(event message) :sync /Delay_Req/Pdelay_Req/Pdelay_Resp。 ?
通用報文 (generalmessage) :Announce/Follow_up/Delay_resp/Pdelay_Resp_Follow_Up/Magnament/Siganling。Pdelay_Req /Pdelay_Resp/Pdelay_Resp_Follow_Up通過peer延遲機制測量兩個時鐘端口之間的鏈接延時,鏈接延時被用來更正Sync和Follow_Up報文中的時間信息。 ?
? IEEE802.1AS-Rev是為以太網第二層所定義的1588規范加以擴展,它的擴展包括了所有域常用peer延遲服務,支持精細時間測量FTM,對鏈路聚合(802.1AX)的支持,改善的使用范圍-包括1步時間戳標準化處理以及針對長鏈、環的支持,更好的響應能力,這包括了更快的主站交互、降低BMCA收斂時間。另外IEEE802.1AS-Rev支持了多域的同步信息傳輸以及冗余支持能力(可配置冗余路徑和冗余主站)。對無線網絡采用時間測量提供更好的支持。IEEE802.1AS-Rev的制定得到了AVNU聯盟的大力支持,AVNU聯盟由英特爾、思科和三星哈曼發起,是EAVB協議的主要提供者,AVNU聯盟為IEEE802.1AS-Rev的實施提供協助,能夠提供完整的協議棧和測試認證。
? 低延遲
? 汽車控制數據可以分為三種,Scheduled Traffic、Reserved Traffic、Best-effort Traffic,Scheduled Traffic如底盤控制數據,沒有任何的妥協余地,必須按照嚴格的時間要求送達,有些是只需要盡力而為的如娛樂系統數據,可以靈活掌握。汽車行業一般要求底盤系統延遲不超過5毫秒,最好是2.5毫秒或1毫秒,這也是車載以太網與通用以太網最大不同之處,要求低延遲。 ?
? 在TSN標準里,數據則被分為4級,最高的預計延遲時間僅為100微秒。 ? 低延遲的核心標準是IEEE802.1Qbv時間感知隊列。 ?
? 通過時間感知整形器(Time Aware Shaper)使TSN交換機能夠來控制隊列流量(queued traffic),以太網幀被標識并指派給基于優先級的VLAN Tag,每個隊列在一個時間表中定義,然后這些數據隊列報文的在預定時間窗口在出口執行傳輸。其它隊列將被鎖定在規定時間窗口里。因此消除了周期性數據被非周期性數據所影響的結果。這意味著每個交換機的延遲是確定的,可知的。而在TSN網絡的數據報文延時被得到保障。TAS介紹了一個傳輸門概念,這個門有“開”、“關”兩個狀態。傳輸的選擇過程-僅選擇那些數據隊列的門是“開”狀態的信息。而這些門的狀態由網絡時間進度表network schedule進行定義。對沒有進入network schedule的隊列流量關閉,這樣就能保障那些對傳輸時間要求嚴格的隊列的帶寬和延遲時間。TAS保障時間要求嚴苛的隊列免受其它網絡信息的干擾,它未必帶來最佳的帶寬使用和最小通信延遲。當優先級非常高時,搶占機制可以被使用。 ?
? 在網絡進行配置時隊列分為Scheduled Traffic、Reserved Traffic、Best-effort Traffic三種,對于Schedule而言則直接按照原定的時間規劃通過,其它則按優先級,Best-effort通常排在最后。Qbv主要為那些時間嚴苛型應用而設計,其必須確保非常低的抖動和延時。Qbv確保了實時數據的傳輸,以及其它非實時數據的交換。 ?
? 對于特別重要的數據,TSN規定了一個搶占機制,它由802.1Qbu/802.3br共同構成。對于IEEE802.1Qbu的搶占而言,正在進行的傳輸可以被中斷,報文按等級可被分為可被搶占和搶占幀,搶占生成框架,最小以太網幀受到保護的,127字節的數據幀(或剩余幀)不能被搶占。IEEE802.1br定義了,設計了快速幀的MAC數據通道,可以搶占Preemptable MAC的數據傳輸。IEEE802.3br也同樣可以與IEEE802.1Qbv配合進行增強型的數據轉發。 ?
? 高可靠性
? TSN中保證高可靠性主要依靠802.1CB標準。這也是無人駕駛必須用TSN的主要原因,也只有TSN能讓整個系統達到功能安全的最高等級ASIL D級。同樣,與自適應AUTOSAR的捆綁程度也比較高。 ?
? 眾所周知,L4級無人駕駛需要一個冗余處理器,但是主處理系統和冗余處理系統之間的通訊機制如何建立?這就是802.1CB的用武之地了。802.1CB是兩套系統間的冗余,芯片之間的冗余還是多采用PCIE交換機的多主機fail-operational機制,兩者有相似之處。 ?
? 對于非常重要的數據,802.1CB會多發送一個數據備份,這個備份會沿著最遠離主數據路徑交集的路徑傳輸。如果兩個數據都接收到,在接收端把冗余幀消除,如果只接受到一幀數據,那么就進入后備模式。在ISO/IEC 62439-3中已經定義了PRP和HSR兩種冗余,這種屬于全局冗余,成本較高,802.1CB只針對關鍵幀做冗余,降低了成本。802.1CB標準的制定主要依靠思科和博通。 ?
? 802.1CB也可以縮寫為FRER。 ?
? FRER不僅能提供雙失效冗余,也可以提供多失效冗余。 ?
? 802.1CB也有簡單的失效原因分析機制 ?
? 域控制器階段,TSN的必要性還不是太突出,但是ADAS領域的域控制器,TSN或者說802.1CB的優勢明顯,未來進入到SOA架構階段,即混合域和Zonal階段,TSN交換機和物理層IC都是不可或缺的。一旦轉進到SOA架構,TSN很快將取代EAVB成為主流。 ? ? ? ? ? ?
3.自適應Autosar
AUTOSAR只是一個軟件框架,不具備實操意義(務虛)。必須購購買第三方的軟件系統或二次開發,全球主要有三家商業化的Autosar軟件供應商,分別是Vector、EB和ETAS。EB屬于德國大陸汽車軟件子公司,獨立性略差,硬件方方面與瑞薩和英飛凌捆綁稍明顯,ETAS規模比較小,ETAS鋪蓋面最廣,獨立性最強,規模最大,因此Vector市市場占有率最高,大約有70%。 ? AUTOSAR結構比較臃腫,想定義一切,靈活性不高,新興造車通通常不感興趣。開發AUTOSAR和硬件也捆綁得有點緊,比如國內普華基礎軟件就跟意法半導體捆綁的緊。 ? 國內有東軟、恒潤、普華和華為在做,需要芯片廠家配合提供MCAL抽象層,但芯片廠家地位超然,不屑于和小公司合作。普華汽車電子事業部國內唯一通過ASIPICE三級和ASIL D級認證的公司,隸屬中中國電子科技集團,國企背景。主要客戶包括一汽、東風、長安、奇瑞、江淮等國企。 ?
? 即便是大公司如奔馳寶馬也是購買Vector的Autosar工具MICROSAR。 ?
奔馳的Vector Microsar ? 為什么要搞自適應Autosar,因為經典Autosar只能對應OSEK這樣復雜程度很低的嵌入式操作系統,無法適應Linux這樣的大型操作系統,而自動駕駛和部分智能駕駛操作系統都是Linux,因此催生了自適應Autosar。 ? Adaptive Autosar,自適應Autosar第一版誕生自2017年3月,目前已經有6版,最新版本是2019年11月。據說第一版的自適應Autosar的英文規格書用A4紙打印出來摞起來有7米高。 ?
? 經典Autosar與自適應Autosar對比,目前Autosar有284個會員,9個核心會員,分別是寶馬、奔馳、大陸汽車、福特、戴姆勒、PSA、通用汽車、豐田和大眾。兩個戰略會員,電裝和LG電子。55個高級會員,其中中國企業有長城、華為、百度、香港英恒。另外說一句,這4家企業是近兩年才成為高級會員的,2017年高級會員沒有中國企業。 ?
? ?Autosar組織結構,主要工作由Working組完成。 ?
? Working組架構如上圖。用戶組下面再分三個小組,分別是中國組,負責演示開發和基礎軟件集成。北美組,負責一般性培訓(OEM-Tier1 Workflows/ Security),安全和以太網。增強利用ImprovedExploitation組,負責命題(Thesis)優化。 ?
? 自適應Autosar路線圖,版本是不能混用的,比如你買了R19-03的部分模塊,剩下的模塊想用R19-11版是不可能的。Adaptive AUTOSAR中,主要包含兩種Application: ? 1)Application-Level的Application 2)Platform-Level的Application ? Application-Level的Application會生成源代碼和目標代碼,這部分與 “用戶”有關。Platform-Level的Application會生成目標代碼,這部分與 "工具供應商" 有關。不是所有工具供應商都能提供完整的Platform-Level的Application,通常只能提供部分,某些領域,標準未確定,如V2X,工具供應商幾乎完全無能為力。 ?
? 自適應Autosar與經典Autosar計劃增加的特色有23個,例如針對中國特色的V2X。 ?
? 自適應Autosar是針對自動駕駛的,2021年11月版計劃對應L3級自動駕駛,不過這個L3級換到中國或者馬斯克口中,估計是L5了,目前一般推薦19-03版,比較穩定。 ?
自適應Autosar典型應用場景如上圖 ?
? 自適應Autosar的層架構如上圖。基礎服務層中,主要服務包括,通信服務(COM)、加密服務(crypto)、日志記錄服務(Log)、診斷服務(Diag)、存儲服務(Per)、狀態管理(SM)、執行管理(Exec)、時間同步(Tsync)、升級配置管理(UCM)等。 ?
非Autosar、經典Autosar和自適應Autosar對比 ?
ARA的COM架構,還是Autosar定義的ARXML文件格式為核心 ?
ARA工具鏈如上圖 ?
? 自適應Autosar關鍵點一:Everything is a process .. as in “OS process”,一切都是一個進程,OS中的進程。 ?
? 關鍵點二:面向服務的進程間通訊。
? 每個AA(自適應應用或者說APP)都作為一個獨立的進程來實現,具有自己的邏輯內存空間和名稱空間。一個AA可以包含多個進程,并且可以應用到一個AP(自適應平臺)實例上,或者分布在多個AP實例上。從模塊組織的角度來看,每個進程都是由操作系統在可執行文件中去實現的。可以從單個可執行文件實現多個進程。AA可以構成多個可執行文件。從操作系統的角度上看,一個AP模塊只形成一組進程,每個進程包含一個或多個線程。這些進程通過IPC或任何其他可用的操作系統功能相互作用。但是,AA進程不能直接使用IPC,只能通過ARA(AUTOSAR Runtime for Adaptive applications) 的進行通信。 ? 為了與AA交互,還需要使用IPC。要實現這一點,有兩種可選設計。一種是“基于庫”的設計,其中接口庫由功能集群提供并鏈接到AA,直接調用IPC。另一種是“基于服務”的設計,流程使用通信管理功能,并有一個鏈接到AA的服務器代理庫。代理庫調用通信管理接口,該接口協調AA進程和服務器進程之間的IPC。實現定義決定了AA是只執行帶有通信管理的IPC,還是通過代理庫與服務器混合使用IPC。 ?
? ? Application就是OS的一個一個進程,Autosar 采用一個Manifest用來配置管理這些進程信息,包含平臺相關的信息,恢復操作以及與服務或庫相關的依賴關系,Instance 配置文件主要包含靜態的信息,這里會配合執行管理Exec、升級與配置管理UCM以及狀態管理SM等來配合管理進程。自適應Autosar采用Proxy/Skeleton的通信架構,同時采用中間件SOME/IP ?
? 目前明確使用自適應Autosar的量產車就是大眾的MEB平臺。 ?
? 大眾MEB的軟件架構,POSIX可以是Linux、VxWorks、QNX、Integrity等。 ?
? 經典Autosar是將MCU硬件與軟件層分離,提高軟件復用率,減少工作量。自適應Autosar是將POSIX操作系統與上層API分離,讓軟件開發變成APP開發。一般情況下,POSIX系統的應用程序通過應用編程接口(API)而不是直接通過系統調用來編程(即并不需要和內核提供的系統調用來編程)。一個API定義了一組應用程序使用的編程接口。它們可以實現成調用一個系統,也可以通過調用多個系統來實現,而完全不使用任何系統調用也不存在問題。實際上,API可以在各種不同的操作系統上實現給應用程序提供完全相同的接口,而它們本身在這些系統上的實現卻可能迥異。如下圖,當應用程序調用printf()函數時,printf函數會調用C庫中的printf,繼而調用C庫中的write,C庫最后調用內核的write()。而經典Autosar的前身OSEK是不可能的。 ? 從程序員的角度看,系統調用無關緊要,只需要跟API打交道。相反,內核只跟系統調用打交道,庫函數及應用程序是怎么系統調用不是內核所關心的。 ? 那個大眾API就是大眾所說的VW.OS。大眾定義輸入輸出,第三方軟件開發商基于這個定義開發APP。 ?
? PPE是奧迪的下一代電動車平臺,大眾在2023年開始全部使用VW.OS。 ?
? 上圖以WindRiver的操作系統為例,顯示出Autosar的另一個優勢,靈活架構。對于安全性和實時性要求高的領域采用VxWorks,對于要求不高也達不到高安全性的如深度學習(無功能安全要求)等采用Linux。在虛擬機上實現兩個操作系統。順便說一句Windriver是全球最大的商業RTOS供應商,最大的嵌入式商業Linux供應商。Windriver已經在2018年脫離英特爾獨立。 ?
? 多種操作系統等于自適應Autosar可以構建時間分區架構。避免各個CPU核心之間的干擾。保證ADAS的安全性。 ?
? 以Windriver產品為例L4級無人駕駛的自適應Autosar軟件架構。對V2X 5G和高精度地圖非常友好。 ?
?大陸汽車子公司Elektrobit的Corbos自適應Autosar架構 ? 自適應Autosar將運行的硬件視為一臺機器,實現一致的平臺視圖,而不考慮所使用的虛擬化技術。這臺機器可能是一臺真正的物理機器、一臺完全虛擬化的機器、一個準虛擬化的操作系統、一個操作系統級的虛擬化容器或任何其他虛擬化環境。 ? 在硬件上,可以有一臺或多臺機器,并且只有一個自適應Autosar服務在機器上運行。這種“硬件”上一般會有一個芯片,并承載著一臺或多臺機器。然而,如果自適應Autosar服務允許的話,多個芯片也可能形成一臺機器。 ?
?
自適應Autosar也使得車內電子架構得以大幅度躍進,進入中央化和區域化時代 ?
自適應Autosar平臺與經典Autosar網關連接 ? 自適應Autosar、車載TSN以太網、Zonal架構是三位一體的,也是未來汽車電子的核心。不過自適應Autosar目前對中小企業來說恐怕不合適,標準未完善,一次性投入過高,開發難度過高,開發周期長。 ?
上圖為Vector的自適應Autosar產品Adaptice MICROSAR 配置開發工具和工作流。 ?
? 上圖為Vector推薦的自適應Autosar開發流程圖,與經典Autosar不同,自適應Autosar要求最好和整車電子架構一起開發,因為自適應Auotsar是整車電子架構的核心底層。因此自適應Autosar常常與整車電子設計架構軟件PREEvision捆綁。 ?
PREEvision分4層 ? 需求層(Requirements Layer):該層需要導入需求開發的輸出物:需求說明書,作為工程設計的指導文件。需求層一般由三部分組成:Requirement、Customer Feature、FFN。
? 功能邏輯層:該層用于描述系統的邏輯功能關系,即系統功能的模塊框架以及各模塊之間的接口關系。主要包括兩個層面的內容:系統邏輯架構層和軟件架構層。前者關注系統功能實現的所有邏輯關系;后者關注系統實現過程中的軟件相關的邏輯關系。內容包括邏輯傳感器、功能塊、邏輯執行器等功能模塊,以及各功能模塊之間的信息交互接口(Port)。當各模塊之間的端口通過信息交互接口連接后,相應模塊就能進行數據和控制信息的交換。在功能邏輯架構中,開發人員可以方便的查看各個功能模塊之間的邏輯關系。
? 硬件架構層(Hardware Architecture Layer):該層主要包括網絡層(Network Layer)、部件層(Components Layer)和線路原理層(Schematic/Circuit Layer)。網絡層主要描述各個部件之間的邏輯鏈接方式,如總線系統、傳統連接、電源供應和地線連接等(還會在線路原理層進行進一步細化);部件層描述每個部件內部構成及其對外接口的詳細信息;線路原理層描述網絡層中邏輯連接的具體實現情況,如:具體導線、線纜連接方式、保險繼電器盒內部結構等。
4.E/E架構 ? 先進E/E架構實際就是車載以太網和自適應Autosar的具體應用。無論是軟件定義汽車還是服務架構導向,其最核心的支柱也是車載以太網和自適應Autosar。 ?
上圖為汽車E/E架構演進路線圖,資料來源:博世 ? Vehicle Computer階段實際就是Zonal架構,Centralization中央化就是域控制器架構。這都離不開TSN。 ?
TSN為骨干網的Zonal架構 ? Zonal架構可算是SOA架構的典型代表,可以說SOA架構離不開TSN。ADAS/座艙/車身三個運算單元類似大眾MEB里的ICAS。 ?
大眾的MEB架構 ?
網關中最核心的則是對應TSN的交換機 ?
Zonal網關的內部框架圖 ?
? CAN到以太網,即SOME/IP-UDP-IP-MAC,或TCP-IP-MAC。這也意味著經典Autosar或自適應Autosar不可或缺。TSN、Autosar是SOA不可或缺的成分。 ?
幀的分組,包括目的地,優先級,截至周期等 ? ? ? ? ? ? ? ? ? ? ? ?? 5.高性能處理器
上圖為ARM在2017年投資者大會上發布的內容,ARM預計2020年頂級座艙的算力是50K DMIPS ?
?? 智能座艙典型功能,資料來源:IHS Markit ? 對于座艙來說,決定其功能和性能的關鍵是主SoC的算力,衡量CPU算力的單位主要是DMI。 ? PS,DMIPS是DhrystoneMillion Instructions Per Second的縮寫,每秒處理的百萬級的機器語言指令數。基本上SoC高于20000DMIPS才能流暢地運行智能座艙的主要功能(AR導航或云導航、360全景、播放流媒體、AR-HUD、多操作系統虛擬機等),GPU方面,只需要100GFLOPS的算力就可以支持3個720P屏幕,因此簡單定義一下,CPU高于20000DMIPS,GPU高于100GFLOPS的SoC的座艙就是智能座艙。
? 程序編譯和運行過程中,代碼會經過編譯器轉化成機器可以理解的指令。CPU每個指令周期分為取指令、指令譯碼、指令執行三個過程,只有在指令執行時才真正有效,在取指令和指令譯碼時,CPU時間是白白浪費的,而同樣的運算在不同架構不同指令集需要的指令數也不一樣。 ?
不同的CPU指令集不同、硬件加速器不同、CPU架構不同,導致不能簡單的用核心數和CPU主頻來評估性能,所以出了一個跑分算法叫Dhrystone:程序用來測試CPU整數計算性能,其輸出結果為每秒鐘運行Dhrystone的次數,即每秒鐘迭代主循環的次數。
? Dhrystone所代表的處理器分數比MIPS(million instructionsper second 每秒鐘執行的指令數)更有意義,因為在不同的指令系統中,比如RISC(Reduced Instruction Set Computer精簡指令集計算機)系統和CISC(ComplexInstruction Set Computer復雜指令集計算機)系統,Dhrystone的得分更能表現其真正性能。由于在一個高級任務中,RISC可能需要更多的指令,但是其執行的時間可能會比在CISC中的一條指令還要快。由于Dhrystone僅將每秒鐘程序執行次數作為指標,所以可以讓不同的機器用其自身的方式去完成任務。另一項基于Dhrystone的分數為DMIPS(DhrystoneMIPS),其含義為每秒鐘執行Dhrystone的次數除以1757(這一數值來自于VAX 11/780機器,此機器在名義上為1MIPS機器,它每秒運行Dhrystone次數為1757次)。 ? 影響CPU算力最關鍵的參數是Decode Wide譯碼寬度,譯碼寬度可簡單等同于每周期指令數量即IPC,即每個周期完成多少個指令。 ?
? 譯碼寬度的增加是非常困難的,不是想多少就多少的,簡單來說每增加一位寬度,系統復雜度會提高15%左右,裸晶面積也就是成本會增加15-20%左右。如果簡單地增加譯碼寬度,那么成本也會增加,廠家就缺乏更新的動力,所以ARM的做法是配合臺積電和三星的先進工藝,利用晶體管密度的提高來減少裸晶面積降低成本,因此ARM的每一次譯碼寬度升級都需要先進制造工藝的配合,否則成本增加比較多。同時ARM也從商業角度考慮,每年小升級一次,年年都有提升空間。8位寬度是目前的極限,蘋果一次到位使用8位寬度,缺點是必須使用臺積電最先進的制造工藝,但蘋果依然使用的是ARM的指令集。 ?
此外,RISC和CISC還有區別,CISC增加寬度更難,但CISC的1位寬度基本可頂RISC的1.2-1.5位。英特爾是有實力壓制蘋果的,就是制造工藝不如臺積電。CISC指令的長度不固定,RISC則是固定的。因為長度固定,可以分割為8個并行指令進入8個解碼器,但CISC就不能,它不知道指令的長度。因此CISC的分支預測器比RISC要復雜很多,當然目前RISC也有長度可變的指令。遇到有些長指令,CISC可以一次完成,RISC因為長度固定,就像公交車站,一定要在某個站停留一下,肯定不如CISC快。也就是說,RISC一定要跟指令集,操作系統做優化,RISC是以軟件為核心,針對某些特定軟件做的硬件,而CISC相反,他以硬件為核心,針對所有類型的軟件開發的。 ? 目前與未來常見座艙與智能駕駛SoC算力統計 ?
編輯:黃飛
?
評論
查看更多