본문 바로가기
자동차 임베디드 SW/Autosar

NVM Write All 그리고Changed State

by 존버매니아.임베디드 개발자 2023. 5. 4.
반응형

Nvm_WriteAll 이라는 함수는 ECU Shutdown 시퀀스에서 불리는 함수로, 제어기가 shutdown 되기전에 여러가지 nvm data를 write 한다.
이 때  모든 nvm을 싹 다 write 하는건 아니고
write all 대상에 포함되는 블록만 한다. 그리고 그 중에서도  블록의 state가 Changed 인것만 write 한다.

해당 state를 CHANGED 로 변경하는 함수가 SetRamBlockStatus 함수인데 이걸 호출해서 write 될지말지를 정한다.

근데 알고보니 SetRamBlockStatus 함수호출 이외에도 State를 Changed로 변경하는 case가 여럿있었다.
정확한 내용은 Autosar sws 표준문서에 나와있는데 그 중에 하나가,
nvm read 했을때 Default Rom 값이 동작하는 경우이다.
CRC가 깨졌거나 혹은 아직 한번도 값을 Write하지 않은 nvm 블록을 read 할 때 default rom 값이 사용되는데, 이것이 사용될 때도 블록의 state가 Changed가 된다.

반응형

'자동차 임베디드 SW > Autosar' 카테고리의 다른 글

진단관련 DEM,DCM 함수들  (0) 2023.09.12
Autosar DEM. Event Memory 개요  (0) 2023.08.02
오토사 OS 에러  (0) 2023.02.04
오토사 Fee , Ea 개념 정리  (0) 2023.01.31
Autosar DEM 모듈 개요  (0) 2022.11.29