Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Nnnnnnnnn

MDE 본문

AUTOSAR

MDE

와이제인 2018. 1. 17. 21:11

MDE


 MDE(Model Driven Engineering) is a set of well defined practices based on tools that use at the same time metamodeling and model transformaitons, to achieve some automated goals in the production, maintenance or operation of software intensive systems.


 Model Transformaions의 기본적인 전제 조건은 meta model, 즉 규칙을 공유하는 것이다. 만약 사용하고 있는 ETAS Tool과 다른 Tool을 이용한다고 해도, 서로 호환이 가능하다. Transformation rules는 XML Schema를 기본으로 한다. meta model 과 model transformations를 예를 들자면, 설계 단계는 UML로 구성하는데 이 UML의 meta model이 있다. 구현 단계에서 C로 프로그래밍이 돼있는 것에도 meta model이 있다. UML의 meta model에서 model transformations를 거쳐 UML에서 C로 바뀔 수 있는 것이다. 



 Component Model(UML)


  제일 윗단인 Application Layer의 SW-C를 살펴보면 Component는 2가지로 나눌 수 있는데, 첫번째는 Composite Component이다. 이는 여러개의 컴포넌트 모든 것을 하나의 컴포넌트로 보는 것이다. 두번째는 Atomic Component이다. 이는 하나 하나의 컴포넌트를 말한다.

  컴포넌트에서 port, 그리고 interface가 필요하다. intetface는 provide 와 required가 있다. interface의 종류를 보면 sender-receiver 관계가 있는데, 이 경우 Integer값 Data를 주고 받는 것을 예로 들 수 있다. client-server는 port를 통해서 함수를 호출하는 것이다. 컴포넌트 간에 서로 정보를 주고 받기 위해선 서로간의 required와 provide가 맞아떨어져야 한다. 그 경우 interface를 통해 연결할 수 있다. 하지만 컴포넌트간의 독립성 유지가 필요하다. 따라서, 각 컴포넌트마다 port를 두어 각 컴포넌트는 port에 정보를 주고 port끼리 통신을 하는 것이다. 


  Software components의 종류 중, parameter software component는 상수값 같은 것들을 저장해주기 위한 용도이다. Service Proxy software component는 BSW 관련인 컴포넌트이다. 어떤 한 컴포넌트에서 다른 ECU의 RTE 아래 단인 BSW에 접근하기 위해서는 service proxy가 필요하다.  ECU abstraction software component는, 쉽게 말해 ECU의 축소판이라고 할 수 있다.  MCAL은 보드회사가 제공해주는 드라이버같은 것인데, ECU abstraction은 하드웨어값을 주고받을 수 있다.




 VFB Concept

  

  Component 에는 무엇을 할지 정의한 Internal Behavior(IB) 내에 Runnable이 있다.  Runnable이란 Component안에 있는 실행단위이다. IB에 RE_SWc1 , RE_Server가 있다고 가정하면 각 RE_SWc1 runnable entity는 pointer를 통해 port와 연결될 것이고, RE_Server의 경우는 operation invoke가 일어날 것이다. RE_SWc1의 내용은 100mm timing event이다. runnable entity가 나중에 .c 파일로 나올 때,  FUNC(void.....) 함수가 있을 것이다. 이렇게 도출된 함수가 돌아가면 OS Task에 맵핑이 된다. 즉 Task 1인 RE_SWc1이 OS Scheduling에 의해 100mm timing event가 작동하다가 나중에 RE_Server인 Task2도 작동할 것이다. Task2도 함수가 있기 때문에, OS가 함수를 부르는 것이고 이는 OS Task에 맵핑될 것이다.





 Interface


  AUTOSAR의 interface는 크게 세 가지인데, 우선 Standardized Interface가 있다. 이 Interface는 C 언어나 OS 함수로 이루어져있다. 다음은 Standardized AUTOSAR Interface 인데, 이는 Service와 관련된 Interface라고 할 수 있다. 이를 제외한 port간의 연결 등의 경우는 AUTOSAR Interface이다.

  



'AUTOSAR' 카테고리의 다른 글

AUTOSAR OS-1  (0) 2018.01.31
Communication Specifications  (0) 2018.01.24
RTE & Internal behavior  (0) 2018.01.24
AUTOSAR SW Architecture  (0) 2018.01.17
AUTOSAR  (0) 2018.01.15