1.前言
當前,車內(nèi)通信技術(shù)越來越復雜,協(xié)議類型更加多樣,不同總線及協(xié)議間的轉(zhuǎn)換和路由等也更為復雜,網(wǎng)關(guān)作為通信樞紐的載體,其測試的復雜程度和重要性也越來越高。本文將分享網(wǎng)關(guān)路由測試開發(fā)過程中的經(jīng)驗和遇到的問題。
2.網(wǎng)關(guān)功能簡介
網(wǎng)關(guān)主要功能是通過報文路由轉(zhuǎn)發(fā)、報文過濾與信號重組等工作實現(xiàn)信息的交換,包括不同通信協(xié)議間的交互,如Ethernet、FlexRay、CAN、CAN FD、LIN。傳統(tǒng)的網(wǎng)關(guān)按照實現(xiàn)方式可分為獨立網(wǎng)關(guān)和集成網(wǎng)關(guān), 集成網(wǎng)關(guān)指集成路由功能的儀表或車身控制器,使用集成網(wǎng)關(guān)時,其網(wǎng)絡(luò)拓撲相對簡單;獨立網(wǎng)關(guān)主要實現(xiàn)路由功能,網(wǎng)絡(luò)拓撲相對復雜。近幾年E/E架構(gòu)逐漸向域控方向發(fā)展,新的域控制器,通常也具備網(wǎng)關(guān)路由的功能。
目前,典型的網(wǎng)絡(luò)拓撲主要有以下三種:
1)傳統(tǒng)的EE架構(gòu),Central Gateway與所有ECU直連,獨立完成整車所有的信息交互任務。
圖1傳統(tǒng)網(wǎng)絡(luò)架構(gòu)及網(wǎng)關(guān)
2)基于Domain的EE架構(gòu),整車拓撲中除了Central Gateway還存在Domain Gateway,Domain Gateway參與下屬節(jié)點間的信息交互,也承載了網(wǎng)關(guān)的功能。
圖2基于域控制器的網(wǎng)絡(luò)架構(gòu)及網(wǎng)關(guān)
3)混合的E/E架構(gòu),在從傳統(tǒng)網(wǎng)絡(luò)架構(gòu)到基于域控制器的網(wǎng)絡(luò)架構(gòu)的過渡階段存在的網(wǎng)絡(luò)架構(gòu),兼具兩種網(wǎng)絡(luò)架構(gòu)的特點。
圖3混合網(wǎng)絡(luò)架構(gòu)及網(wǎng)關(guān)
以上基于域節(jié)點的網(wǎng)絡(luò)架構(gòu)的Central Gateway和Domain Gateway直接通過以太網(wǎng)點對點連接,域節(jié)點間的信息交互通過L2的Switch和L3的IP Router實現(xiàn)。
除了基本的路由功能,網(wǎng)關(guān)通常還具有以下屬性和功能:
1)各功能域物理隔離:網(wǎng)關(guān)區(qū)分各個功能域,將不同的功能域區(qū)分開
2)外部溝通媒介與網(wǎng)絡(luò)安全防護:網(wǎng)關(guān)是整車與外部信息交互的媒介,因此網(wǎng)關(guān)需要過濾外部信息,避免整車內(nèi)部網(wǎng)絡(luò)被攻擊
3)網(wǎng)絡(luò)休眠喚醒管理:網(wǎng)關(guān)依據(jù)整車休眠喚醒條件,協(xié)調(diào)各個網(wǎng)段間的休眠喚醒
4)OTA Master功能:實現(xiàn)整車遠程刷寫功能,獲取ECU升級數(shù)據(jù)包并存儲在本地,當滿足刷寫條件時,網(wǎng)關(guān)可作為刷寫機,以既定的刷寫流程將刷寫數(shù)據(jù)傳輸給待升級ECU
5)整車狀態(tài)管理和能量管理:管理整車模式和用戶使用模式
由于網(wǎng)關(guān)功能多樣和復雜,且部分功能具有功能安全要求,需要通過測試來保證最終軟件的成熟度。針對網(wǎng)關(guān)的不同功能需要做相應的測試,本文重點探討基本的路由功能測試。
3.網(wǎng)關(guān)路由類型介紹
網(wǎng)關(guān)路由的類型可以分為3種:信號路由、報文路由、TP路由(診斷路由)。以下針對這三種路由類型分別做介紹。
1)信號路由:從源網(wǎng)段接收到的一條或多條報文中的部分信號(或信號組)打包在新報文中,然后在目標網(wǎng)段上按照定義的方式發(fā)送出來。 信號從源網(wǎng)段到目標網(wǎng)段的路由過程中,信號所在報文的發(fā)送方式、信號在報文中的位置、信號所在報文的ID和信號所在報文的周期都可以改變,另外源網(wǎng)段和目標網(wǎng)段的通信協(xié)議也可以不一致。
AUTOSAR架構(gòu)下定義了信號和信號組的Update bit,對于有Update bit的信號和信號組,只有在其Update bit置位的情況下網(wǎng)關(guān)才對其進行轉(zhuǎn)發(fā),并在目標網(wǎng)段更新Update bit,當源網(wǎng)段信號丟失時網(wǎng)關(guān)轉(zhuǎn)發(fā)的信號的Update bit持續(xù)不置位,指示接受該信號的控制器信號超時。而針對非AUTOSAR架構(gòu) ,部分OEM定義了Timeout flag,指示源網(wǎng)段信號超時。
圖4信號路由
2)報文路由:從源網(wǎng)段接收到報文后轉(zhuǎn)發(fā)到目標網(wǎng)段。根據(jù)目標網(wǎng)段的發(fā)送形式,報文路由又可以分為事件型報文路由和周期型報文路由。事件型報文路由在源網(wǎng)段收到報文后立即觸發(fā)目標網(wǎng)段的發(fā)送;周期型報文路由在源網(wǎng)段和目標網(wǎng)段都有固定的周期,源網(wǎng)段接收到報文的周期和目標網(wǎng)段發(fā)送的報文周期沒有必然關(guān)系。
圖5報文路由
3)TP路由:帶有傳輸協(xié)議報文的路由稱為TP路由。TP路由又可分為兩種:不帶協(xié)議轉(zhuǎn)換的TP路由(一般稱為報文透傳)和帶有協(xié)議轉(zhuǎn)換的TP路由。前者在部分OEM的定義中和事件型報文路由未作區(qū)分,但實際兩種路由的應用場景是不同的,事件型報文路由針對應用報文,要求轉(zhuǎn)發(fā)延時低且最新的信號值最具重要性(latest value is the most important);報文透傳對速率的要求不高,但要求先入先出(first in first out)和不丟幀。帶有協(xié)議轉(zhuǎn)換的TP路由主要特點是:可以實現(xiàn)協(xié)議轉(zhuǎn)換(源網(wǎng)段和目標網(wǎng)段的協(xié)議可以不一致),且網(wǎng)關(guān)作為傳輸連接的一部分,在源網(wǎng)段的接收和轉(zhuǎn)發(fā)均須符合傳輸層協(xié)議,不符合傳輸協(xié)議的不轉(zhuǎn)發(fā)。
圖6 TP路由
下圖以CAN-LIN的TP路由為例介紹帶協(xié)議轉(zhuǎn)換的TP路由,由于CAN和LIN的傳輸協(xié)議不一致,網(wǎng)關(guān)在源網(wǎng)段以CAN的傳輸層協(xié)議接收數(shù)據(jù)后,在LIN的網(wǎng)段按照LIN傳輸層協(xié)議發(fā)送數(shù)據(jù)。CAN和LIN的報文雖然都是8字節(jié),但由于傳輸層協(xié)議不同, CAN和LIN網(wǎng)段的每幀報文傳輸?shù)臄?shù)據(jù)內(nèi)容都是不一致的。此外,由于CAN和LIN的傳輸速率不一樣,CAN網(wǎng)段接收數(shù)據(jù)后存儲在緩存中,在LIN網(wǎng)段按順序發(fā)出。
圖7 CAN-LIN2.1 TP路由
由于帶協(xié)議轉(zhuǎn)換的TP路由需要在源網(wǎng)段接收到數(shù)據(jù)后先存儲到緩存中,因此需要占用較多的內(nèi)存資源,但同時這也是并行刷寫的實現(xiàn)基礎(chǔ),網(wǎng)關(guān)在高帶寬的網(wǎng)段接收到診斷數(shù)據(jù)后先行存儲,然后按照低帶寬網(wǎng)段的傳輸協(xié)議,并行分發(fā)到各個低帶寬網(wǎng)段,在此過程中最大效率的利用了高帶寬網(wǎng)段的帶寬,提高整車的刷寫效率。
4.網(wǎng)關(guān)路由測試實踐
對于具備多種路由形式的網(wǎng)關(guān),為了驗證是否滿足設(shè)計需求,應該根據(jù)每種路由類型設(shè)計測試規(guī)范和測試場景,本節(jié)將探討路由測試的痛點與積累的經(jīng)驗。
信號路由測試
信號路由測試的難點在于信號路由的數(shù)量眾多并且路由信息的提取困難。根據(jù)北匯過往項目經(jīng)驗來看,基于非域控架構(gòu)(所有控制器都和中央網(wǎng)關(guān)直連)的信號路由數(shù)量大約有800+;基于域控的網(wǎng)絡(luò)架構(gòu)則更加復雜,每個域控制器都具有網(wǎng)關(guān)行為。在信號路由數(shù)量如此龐大的情況下手動驗證已幾乎不可能。此外,基于AUTOSAR架構(gòu)的信號路由和信號組路由,通過人工方式更難獲取相關(guān)的信息。
為了實現(xiàn)信號路由自動化測試,北匯通過定制開發(fā),實現(xiàn)了從ARXML文件中提取信號路由信息并將信號路由和信號組路由加以區(qū)分,定義了標準的路由表模板,也可基于OEM給定的通信矩陣或路由模板進行定制適配。下圖為支持Update bit的信號路由的自動化測試報告。
圖8信號路由自動化測試報告
報文路由測試
報文路由測試與信號路由測試一樣,都面臨路由條目眾多的問題,此外針對于事件型報文路由和周期型報文路由,由于路由機制不同,對應的測試策略需要分別制定。
圖9路由自動化測試工
TP路由測試
針對報文透傳,除了測試路由一致性外,還需要考慮在各種應用場景(EOL、刷寫、標定等)下,網(wǎng)關(guān)需保證不丟幀不亂序。
針對帶有協(xié)議轉(zhuǎn)換的TP路由測試,測試難點在于針對各個通信協(xié)議其傳輸層機制不同,測試中需要按照各網(wǎng)段對應的傳輸層協(xié)議發(fā)送和接收數(shù)據(jù)。在支持并行刷寫的TP路由測試中,需要考慮多個傳輸連接同時發(fā)送和接收數(shù)據(jù)。這種路由方式需同步關(guān)注緩存數(shù)量、緩存大小以及Upper_Link和Lower_Link網(wǎng)段傳輸層機制和參數(shù)。
圖10帶有協(xié)議轉(zhuǎn)換的TP路由測試
5.總結(jié)
隨著以太網(wǎng)通信技術(shù)的應用、OTA的推廣以及電子電器架構(gòu)的更新?lián)Q代,網(wǎng)關(guān)的“形態(tài)”和功能都呈現(xiàn)了新的變化。
北匯信息緊跟網(wǎng)關(guān)技術(shù)發(fā)展態(tài)勢,專注于汽車電子測試,通過與各OEM的合作,從源頭掌握了各類型網(wǎng)關(guān)路由的策略和設(shè)計需求,積累了豐富的測試實踐經(jīng)驗,覆蓋了第一代和第二代架構(gòu)下的網(wǎng)關(guān)。后續(xù)文章我們將針對新一代“網(wǎng)關(guān)”,其新的功能特點、構(gòu)成形態(tài)以及測試方案與大家繼續(xù)探討和分享。
參考文獻
[1] AUTOSAR_SRS_Gateway
-
網(wǎng)關(guān)
+關(guān)注
關(guān)注
9文章
4251瀏覽量
50853
發(fā)布評論請先 登錄
相關(guān)推薦
評論