網(wǎng)絡(luò)管理測(cè)試中會(huì)測(cè)試第一幀網(wǎng)絡(luò)管理報(bào)文的外發(fā)時(shí)間,即網(wǎng)絡(luò)的啟動(dòng)時(shí)間。一般需求會(huì)明確外發(fā)第一幀網(wǎng)絡(luò)管理報(bào)文的閾值時(shí)間(TPowerWakeUp),比如:150ms,容差10%,即最大165ms。1ECU啟動(dòng)流程
我們先明確這150ms要耗費(fèi)在哪里,ECU從被供電到程序穩(wěn)定運(yùn)行會(huì)經(jīng)過(guò)硬件啟動(dòng)->Boot啟動(dòng)->Boot運(yùn)行->App啟動(dòng)->App運(yùn)行這幾個(gè)階段,如下所示:
HW Startup:此階段完全由硬件特性決定,軟件層面沒(méi)有優(yōu)化余地。此階段包括VCC供電(比如:KL15上電),之后ECU對(duì)應(yīng)的5V、3.3V及1.25V電源管理模塊上電。5V一般給IO使用,3.3V一般給Flash使用,1.25V一般給CPU內(nèi)核使用。
Bootloader Startup:此階段一般是Bootloader使用外設(shè)資源的初始化,比如IO、System Timer、CAN等模塊的初始化。
Bootloader running:此階段,會(huì)判斷程序是否需要更新,如果沒(méi)有程序需要更新,Boot程序會(huì)停留一段時(shí)間,比如:20ms,這就是前面聊的
Stay In Boot
功能,可以回顧
UDS之刷寫(xiě):你真清楚Application和Bootloader如何溝通?
因此
Stay In Boot
耗費(fèi)的時(shí)間無(wú)法避免。
HW,OS,Application Startup:此階段包含應(yīng)用所需外設(shè)資源的初始化,OS的初始化以及各軟件模塊初始化。
提示:如果Boot程序是security boot,可能耗費(fèi)的時(shí)間更長(zhǎng),當(dāng)然需求也會(huì)明確security boot的啟動(dòng)時(shí)間。
2
TPowerWakeUp測(cè)試步驟
關(guān)閉網(wǎng)絡(luò)仿真(上位機(jī)不模擬網(wǎng)絡(luò)管理報(bào)文發(fā)送),關(guān)閉供電電源;
開(kāi)啟供電電源(一般指KL15上電),觸發(fā)DUT在該網(wǎng)段上通信(硬線喚醒或者網(wǎng)絡(luò)喚醒)。當(dāng)KL15電壓達(dá)到6V時(shí)作為起始時(shí)間,MCU通常為5V供電,將此刻記為T1;
等待DUT在該網(wǎng)段發(fā)送第一幀報(bào)文,將此刻記為T2;
檢查是否(T2-T1) < TPowerWakeUp。
3
工程實(shí)例
在這里分享一個(gè)工程Bug實(shí)例:測(cè)試TPowerWakeUp時(shí),在沒(méi)有security boot情況下,TPowerWakeUp高達(dá)200ms,遠(yuǎn)大于150ms。實(shí)際測(cè)試TPowerWakeUp<165ms即可,要考慮10%偏差。
問(wèn)題解決切入點(diǎn):
1、SPI速率使用不當(dāng)帶來(lái)的延時(shí)
CAN模塊對(duì)應(yīng)的收發(fā)器使用的是NXP TJA1145,該收發(fā)器需要通過(guò)SPI控制其模式切換。問(wèn)題出現(xiàn)前使用的波特率是100Kbps,通過(guò)提高通信速率,優(yōu)化了>30ms時(shí)間。NXPTJA1145速率提升到4Mbps,查閱其用戶手冊(cè)可以看出,NXPTJA1145在Normal/Standby模式下,其時(shí)鐘周期可以配置為4Mbps(1/250ns = 4000000Hz)。如果考慮Sleep Mode,至少也可以配置1Mbps,這樣也能提升10倍通信速率。
一般來(lái)說(shuō),ECU從被供電那一刻,即VCC(12V)供電,VCC會(huì)瞬間拉到穩(wěn)定,幾乎不耗費(fèi)時(shí)間。而5V、3.3V、1.25V一般在同一時(shí)間點(diǎn),電壓開(kāi)始爬升,耗費(fèi)的時(shí)間相差不大,一般會(huì)在幾個(gè)ms量級(jí),即T1時(shí)刻,比如3ms左右。這幾個(gè)電壓耗費(fèi)的時(shí)間是物理特性,沒(méi)有優(yōu)化余地。但是PowerOnPin這個(gè)電壓值可能由配置決定,通過(guò)修改外圍供電芯片可修改該P(yáng)in的供電時(shí)間。我在項(xiàng)目實(shí)際中確實(shí)碰到了這樣的設(shè)計(jì),通過(guò)配置外圍芯片配置,PowerOnPin的供電時(shí)間由十幾ms降低到3ms左右,又優(yōu)化了近10ms的啟動(dòng)時(shí)間,即優(yōu)化T2時(shí)間。
綜上所述,帶來(lái)的思考點(diǎn)有:
使用了SPI的外圍器件,先確定其最大支持的通信速率,橫向?qū)Ρ龋褂?a href="http://www.asorrir.com/tags/uart/" target="_blank">UART的地方是否也可以提高通信速率;
特定器件的配置是否設(shè)計(jì)時(shí)間配置。
最后說(shuō)一下,這些時(shí)間是如何測(cè)量的,本文在目標(biāo)代碼位置反轉(zhuǎn)IO電平狀態(tài),使用示波器測(cè)量,這樣即可知道代碼,函數(shù)耗費(fèi)時(shí)間情況,進(jìn)而針對(duì)性的優(yōu)化。
審核編輯:劉清
-
AUTOSAR
+關(guān)注
關(guān)注
10文章
371瀏覽量
22396 -
SPI接口
+關(guān)注
關(guān)注
0文章
262瀏覽量
35264 -
CAN模塊
+關(guān)注
關(guān)注
0文章
25瀏覽量
8966
發(fā)布評(píng)論請(qǐng)先 登錄
使用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行時(shí)間序列預(yù)測(cè)
旋轉(zhuǎn)測(cè)徑儀的測(cè)量精度如何提高?
怎樣提高三坐標(biāo)測(cè)量機(jī)的測(cè)量效率
汽車電子控制單元(ECU)簡(jiǎn)明指南

智能化汽車時(shí)代:ECU測(cè)試如何高效進(jìn)行?

理解ECU數(shù)據(jù)流的分析方法
ECU和OBD的區(qū)別
ECU調(diào)校對(duì)汽車性能的影響
如何提高激光芯片的閾值電流

MOS管的閾值電壓是什么
是德頻譜分析儀的預(yù)熱時(shí)間對(duì)測(cè)量的影響

ECU電控軟件開(kāi)發(fā)及測(cè)試介紹

電子控制單元(ecu)的作用有哪些?它是如何工作的?
優(yōu)化低功耗測(cè)量的技巧和竅門

VL53L4CD TOF開(kāi)發(fā)(3)----檢測(cè)閾值

評(píng)論