지난 포스팅에 RTE Event 종류들을 살펴보았다.
오늘은 Port Interface와의 연관 관계에 대해 추가로 알아보도록 하자.
그리고 추가적으로 알아두자.
"RTE Event"는 "RunnableEntity"와 뗄래야 뗄 수 없는 1:1 관계이다.
(물론 BSW 일부 모듈의 경우 예외도 있지만...)
즉, "RTE Event"만 존재할 수도 없고, "RunnableEntity"만 존재할 수도 없다.
Sender-Receiver 인터페이스와 연관된 RTE Event
위 그림을 보면 Sender-Receiver 인터페이스와 연관된 RTE Event에는 4개의 Event들이 있다.
- Data Write Completed Event
- Data Send Completed Event
- Data Received Event
- Data Received Error Event
Client-Server 인터페이스와 연관된 RTE Event
위 그림을 보면 Client-Server 인터페이스와 연관된 RTE Event에는 2개의 Event가 있다.
- Asynchronous Server Call Return Event
- Operation Invoked Event
Mode communication과 연관된 RTE Event
위 그림을 보면 Mode Communication 인터페이스와 연관된 RTE Event에는 3개의 Event가 있다.
- SWC Mode Switch Event
- SWC Mode Manager Error Event
- Mode Switched Ack Event
인터페이스와는 크게 관련이 없는 RTE Event
위 그림을 보면 인터페이스와는 크게 관련이 없는 RTE Event에는 5개가 있다.
- External Trigger Occurred Event
- Timing Event
- InitEvent
- Background Event
- Internal Trigger Occurred Event
그렇다면, 우리는 어떤 종류의 Event를 선택하여 설계해야 할까? 하는 의문이 생길 것이다.
(물론, 인터페이스 선택의 기준과도 관련이 있다.)
우선, “RTE Event”는 “Runnable Entity”와 연관되어 있고,
“RTE Event”와 “Runnable Entity”는 AUTOSAR OS에서 제공하는 Task와 연관되어 있다.
일부 예외도 있지만, “Runnable Entity”는 Task Body에서 호출되기 때문이며,
Event 종류에 따라 Task Body의 코드도 달라질 수 있기 때문이다.
즉, 내가 설계한 “Runnable Entity”가 Polling 방식으로 주기적으로 호출되어 처리할 필요가 있는 로직인지 또는 Event-Driven 방식(=인터럽트 성격과 유사)으로 특정 Event가 발생했을 때에만 호출되어 처리할 필요가 있는 로직의 성격인지에 따라 Event 종류를 결정해야 한다.
끝.
'AUTOSAR, ASPICE' 카테고리의 다른 글
[ASPICE] SW산출물 Review 수행 방법 (0) | 2024.05.11 |
---|---|
[ASPICE] ISO26262의 V 사이클이란? SW SRS, SAD, SDD 가 뭔데?? (0) | 2024.05.05 |
[AUTOSAR] RTE Event Type 에는 무엇이 있을까? (0) | 2024.04.25 |
[AUTOSAR] CAN Stack 반영 방법 #하모나이징 (0) | 2024.04.22 |
[AUTOSAR] CAN(Controller Area Network) 통신 이란? (0) | 2024.04.20 |