KR20140066531A - A component architecture based on autosar(automotive open system architecture) - Google Patents
A component architecture based on autosar(automotive open system architecture) Download PDFInfo
- Publication number
- KR20140066531A KR20140066531A KR1020120133894A KR20120133894A KR20140066531A KR 20140066531 A KR20140066531 A KR 20140066531A KR 1020120133894 A KR1020120133894 A KR 1020120133894A KR 20120133894 A KR20120133894 A KR 20120133894A KR 20140066531 A KR20140066531 A KR 20140066531A
- Authority
- KR
- South Korea
- Prior art keywords
- component
- autosar
- software
- application
- layer
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 6
- 238000004891 communication Methods 0.000 description 19
- 230000015654 memory Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Mechanical Engineering (AREA)
- Communication Control (AREA)
Abstract
본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조는 복수의 애플리케이션 컴포넌트(application component)와 상기 복수의 애플리케이션 컴포넌트와 연동하는 복수의 런어블(runable) 및, 상기 복수의 런어블과 데이터를 송수신하는 허브 런어블을 포함하는 제1 컴포넌트를 포함한다. 이에 따라, 부하의 발생을 줄이고, 데이터 처리 속도를 높이며, 효울적인 리소스(resource) 활용이 가능하다.An AUTOSAR-based component structure according to an embodiment of the present invention includes a plurality of application components, a plurality of runables interlocked with the plurality of application components, and a plurality of run- And a first component including a hub runlevel. Accordingly, it is possible to reduce the occurrence of load, increase data processing speed, and utilize efficient resources.
Description
본 발명은 AUTOSAR 표준을 기반으로 하는 컴포넌트 구조에 관한 것으로서, 보다 상세하게는, 컴포넌트 사이의 입출력 증가에 따른 부하를 효율적으로 처리할 수 있는 컴포넌트 및 인터페이스를 가지는 AUTOSAR 기반의 컴포넌트 구조에 관한 것이다.BACKGROUND OF THE
최근 자동차에는 엔진, 자동변속기, 제동장치(ABS), 조향 계통 등의 장치들과, 이러한 장치들의 제어를 위한 ECU(Electronic Control Unit)를 구비하고 있다. 또한, 지능형 서비스들의 증가에 따라 더욱 많은 ECU가 연결되고, 연결된 ECU 간의 연동을 통해 서비스들이 결합되고 있는 추세이다BACKGROUND ART [0002] In recent years, automobiles include devices such as an engine, an automatic transmission, a braking device (ABS), a steering system, and an ECU (Electronic Control Unit) for controlling these devices. Also, as the number of intelligent services increases, more ECUs are connected, and services are connected through interworking of connected ECUs
이에 따라, 최근 자동차 ECU들의 개방된 산업 표준을 설정하고 개발하기 위해서, 관련 업체들이 합작하여 자동차 전장 소프트웨어 구조(AUTomotive Open System ARchitecture : AUTOSAR) 등 소프트웨어 아키텍처 표준을 제시하고 있다.Accordingly, in order to set up and develop open industry standards for automotive ECUs, related companies have jointly proposed software architecture standards such as AUTomotive Open System ARchitecture (AUTOSAR).
이러한, AUTOSAR는 자동차용 소프트웨어 규격과 실행 환경에 관한 것으로, 차량 전장 소프트웨어에 대한 아키텍처, 전장응용별 API(application programming interface) 등을 제공한다.AUTOSAR is concerned with automotive software specifications and execution environment. It provides architecture for vehicle field software, and application programming interface (API) for each field application.
최근 들어서, 소프트웨어는 탑재되는 기능이 많아짐에 따라 점차 복잡하게 구현되고 있으며, 이에 따라 구조가 복잡화되고, 컴포넌트 사이의 입출력이 증가하고 있다.In recent years, software has become increasingly complicated as the functions to be mounted become more and more complicated, and the input / output between the components is increasing.
따라서, 부하를 더욱 효율적으로 처리할 수 있는 컴포넌트 및 인터페이스 설계가 요구된다.
Thus, there is a need for a component and interface design that can handle loads more efficiently.
본 발명의 목적은, 더욱 향상된 성능을 가지는 컴포넌트 구조, 및 인터페이스 설계에 따른 AUTOSAR 표준 기반의 컴포넌트 구조를 제공하는 것이다.It is an object of the present invention to provide a component structure having a further improved performance and a component structure based on the AUTOSAR standard according to an interface design.
본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조는 복수의 애플리케이션 컴포넌트(application component)와 상기 복수의 애플리케이션 컴포넌트와 연동하는 복수의 런어블(runable) 및, 상기 복수의 런어블과 데이터를 송수신하는 허브 런어블을 포함하는 제1 컴포넌트를 포함한다.An AUTOSAR-based component structure according to an embodiment of the present invention includes a plurality of application components, a plurality of runables interlocked with the plurality of application components, and a plurality of run- And a first component including a hub runlevel.
본 발명의 실시예에 따르면, 부하의 발생을 줄이고, 데이터 처리 속도를 높이며, 효율적인 리소스(resource) 활용이 가능하다.According to the embodiment of the present invention, it is possible to reduce the occurrence of load, increase data processing speed, and utilize efficient resources.
도 1은 AUTOSAR의 계층화 소프트웨어 아키텍처를 설명하기 위한 블록도이다.
도 2는 본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조를 나타내는 도면이다.
도 3은 본 발명의 일실시예에 따른 인터페이스를 나타내는 도면이다.Figure 1 is a block diagram illustrating the layered software architecture of AUTOSAR.
FIG. 2 is a diagram illustrating an AUTOSAR-based component structure according to an embodiment of the present invention.
3 is a diagram illustrating an interface according to an embodiment of the present invention.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.The suffix "module" and " part "for components used in the following description are given merely for convenience of description, and do not give special significance or role in themselves. Accordingly, the terms "module" and "part" may be used interchangeably.
도 1은 AUTOSAR의 계층화 소프트웨어 아키텍처를 설명하기 위한 블록도이다.Figure 1 is a block diagram illustrating the layered software architecture of AUTOSAR.
도 1을 참조하면, AUTOSAR의 계층화 소프트웨어 아키텍처는 크게 기본 소프트웨어 계층인 BSW(Basic Software) 계층(110), 응용 소프트웨어 계층(130), 및 런-타임 환경(Run Time Environment : RTE , 140)으로 구분된 계층화 구조를 가진다. Referring to FIG. 1, the layered software architecture of AUTOSAR is divided into a basic software layer (BSW) 110, an
AUTOSAR의 기본 설계는 RTE 개념을 도입하여 응용 SW-C(Software Component)와 하드웨어(120) 관련 소프트웨어 계층인 BSW 계층(110)을 분리함으로써, 하드웨어(120)에 독립적인 응용 서비스를 개발할 수 있도록 하는 것이다. The basic design of the AUTOSAR is to introduce an RTE concept to separate the application SW-C (software component) and the
한편, BSW(110)는 소프트웨어 컴포넌트가 필요한 작업을 수행하는데, 필요로 하는 서비스를 제공하는 표준화된 소프트웨어 계층으로써 AUTOSAR Software 컴포넌트에게 입출력, 메모리, 통신 등과 관련된 서비스를 제공한다. BSW(110)는 서비스 계층(Services Layer), ECU 추상화 계층(ECU Abstraction Layer: EAL), 마이크로컨트롤러 추상화 계층(Microcontroller Abstraction Layer: MCAL) 및 복합 드라이버로 세분화되어 구성된다.Meanwhile, the BSW 110 is a standardized software layer that provides a service required by a software component to perform necessary tasks, and provides services related to input / output, memory, communication, and the like to AUTOSAR Software components. The BSW 110 is subdivided into a service layer, an ECU abstraction layer (EAL), a microcontroller abstraction layer (MCAL), and a composite driver.
서비스 계층은 통신, 서비스, OS 블록을 포함하고 있는 계층으로 ECU와 하드웨어를 추상화하여 응용 프로그램과 BSW(110) 모듈을 위한 서비스를 자신의 상위 계층에 제공하는 역할을 담당한다. 메모리, 통신 네트워크, 시스템 등의 서비스 기능을 수행한다. The service layer is a layer that includes communication, service, and OS blocks, and abstracts the ECU and hardware to provide services for the application program and the BSW (110) module to its upper layer. Memory, communication network, and system.
서비스 계층의 통신 네트워크 서비스는 하부 통신 장치에 의존성을 제거한 통일된 인터페이스를 제공하기 위한 계층으로 RTE(140)에 통일된 통신 방식을 제공한다. 통신 네트워크 서비스는 CAN, LIN, FlexRay 등과 같은 차량 네트워크 통신, 통신 하드웨어 추상화와 같은 통신 드라이버 인터페이스, 서로 다른 응용 프로그램 사이의 통신을 위한 차량 네트워크 인터페이스 제공 등과 같은 기능을 하는 SW-C로 구성된다.The communication network service of the service layer provides a unified communication method to the RTE 140 as a layer for providing a unified interface that removes the dependency on the lower communication device. Communication network services consist of SW-C functions such as vehicle network communication such as CAN, LIN, FlexRay, etc., communication driver interface such as communication hardware abstraction, vehicle network interface for communication between different applications.
서비스 계층의 메모리 서비스는 다양한 기록 메모리에 읽고 쓰기 위한 기능을 제공하며, 메모리 서비스에서는 다른 메모리 서비스로부터의 일기/쓰기를 위한 비휘발성 메모리에 대한 관리, 메모리 위치 및 성질 추상화 등과 같은 기능을 하는 SW-C로 구성된다The memory service of the service layer provides the function to read and write to various recording memories. In the memory service, the SW-SW functions to manage nonvolatile memory for diary / writing from other memory service, memory location and property abstraction, C
하편, EAL/MCAL 부분은 하드웨어(140)에 종속적으로 변경되는 부분으로 하드웨어(120)가 변경될 때마다 적합한 소프트웨어로 함께 변경되어야 한다. 즉, EAL은 ECU 회로에 따라, MCAL은 사용하는 마이크로컨트롤러(MCU)에 따라서 달라질 수 있다. And the EAL / MCAL part is a part that is changed depending on the
한편, MCAL 부분은 실제 하드웨어에 포함된 주변장치들과 내 외부 장치, 메모리 등에 대한 직접적인 액세스를 처리하는 부분이다. 따라서,하드웨어를 직접 접근하므로 타이밍 등의 문제에서 중요한 역할을 담당한다. On the other hand, the MCAL portion is a portion that handles direct access to peripherals, internal / external devices, memory, etc. included in the actual hardware. Therefore, it plays an important role in problems such as timing because it accesses hardware directly.
MCAL 계층에서는 하드웨어 의존성이 있는 부분으로 OSI의 데이터 링크 계층의 통신 드라이버, ADC, PWM, DIO 등의 아날로그 디지털 I/O 드라이버, EEPROM, Flash 등의 메모리 드라이버, 주변장치 마이크로 컨트롤러의 장치 드라이버 영역으로 구성이 된다. MCAL layer has hardware dependency. It is composed of communication driver of OSI data link layer, analog digital I / O driver such as ADC, PWM, DIO, memory driver such as EEPROM, Flash and device driver area of peripheral microcontroller. .
HAL(Hardware Abstraction Layer) 계층은 하부 각 장치별 MCAL 상위에서 MCAL을 사용할 수 있는 트랜시버나 인터페이스 드라이버들을 제공하는 계층이다. 이는 마이크로 컨트롤러에 독립적이지만 사용하는 ECU 보드별 의존적이며, 외부 통신장치나 IO 장치, 및 메모리 등에 의존적인 계층이다.The HAL (Hardware Abstraction Layer) layer is a layer that provides transceivers or interface drivers that can use the MCAL at the MCAL top of each device. This is independent of the microcontroller, but it depends on the ECU board to be used, and is a hierarchy dependent on external communication devices, IO devices, and memories.
한편, 특별한 기능을 개발할 시에는 응용 소프트웨어 계층에서 하드웨어를 직접 접근할 필요가 있는 경우에 복합 드라이버가 사용될 수 있다.On the other hand, when developing a special function, a compound driver can be used when it is necessary to directly access the hardware in the application software layer.
RTE(140)는 데이터교환을 관리하는 통신의 중추적인 역할을 한다. RTE(140)를 기반으로 수행되는 소프트웨어 컴포넌트는 응용 프로그램의 종류에 따라 고유한 통신 제약 조건을 가지기 때문에 RTE 역시 그러한 제약에 맞게 구성되어야 한다. The RTE 140 plays a pivotal role in communication for managing data exchange. Since the software components based on the RTE 140 have unique communication constraints depending on the type of the application program, the RTE must also be configured to such a constraint.
각 SW-C는 응용 SW 기능의 일부를 구현하며, ECU에 매핑되는 기본 단위로서 포트와 인터페이스를 통하여 상호 데이터를 교환한다. Sensor/Actuator SW-C는 SW-C의 한 종류로써 ECU의 센서 및 액츄에이터의 구현을 위한 SW-C이다.Each SW-C implements a part of the application SW function and exchanges mutual data through port and interface as a basic unit which is mapped to ECU. Sensor / Actuator SW-C is a kind of SW-C, which is SW-C for the implementation of ECU sensor and actuator.
RTE(140)는 각 SW-C 사이 및 SW-C와 BSW 사이의 정보 교환을 위한 중추적인 역할을 하며 SW와 HW를 분리시키는 핵심역할을 한다. 즉 RTE(140)는 응용 SW-C로부터 HW의 독립성을 제거하기 위한 계층으로 응용 계층과 하부 SW 컴포넌트 모듈간의 통신 브리지 역할을 하며, SW-C의 요구로부터 ECU에 다양한 매핑 과정을 통하여 SW-C와 타 컴포넌트간의 통신을 담당한다.The RTE 140 plays a pivotal role in exchanging information between SW-Cs and between SW-C and BSW, and plays a key role in separating SW and HW. That is, the RTE 140 serves as a communication bridge between the application layer and the lower SW component module to remove the independence of the HW from the application SW-C. The RTE 140 performs various mapping processes to the ECU from the SW- And other components.
한편, 이들 컴포넌트들은 설계단계에서 VFB(Virtual Function Bus)라는 가상의 네트워크를 통해서 통신을 수행할 수 있고, ECU에 할당된 컴포넌트들은 런타임에 각 ECU마다 존재하는 RTE(140)를 통해 서로 정보를 교환하며 필요한 작업을 수행할 수 있다.Meanwhile, these components can perform communication through a virtual network called VFB (Virtual Function Bus) at the design stage, and the components allocated to the ECU can exchange information with each other through the
응용 소프트웨어 계층, 즉, 애플리케이션 계층(130)은 특정 ECU에 매핑된 AUTOSAR 소프트웨어 컴포넌트들로 구성되어 있는 계층이다. 하편, 응용 소프트웨어 계층(130)은 마이크로컨트롤러 등의 하드웨어 계층에는 비의존적으로 구현되어, 하위 계층의 모든 자원들(resources)과 RTE(140)를 통해서 통신한다. 이때 각 컴포넌트 모듈은 RTE를 통해 필요한 데이터를 전송하고 수신할 수 있도록 AUTOSAR 인터페이스를 이용한다. The application software layer, i.e., the
응용 소프트웨어 컴포넌트, 액츄에이터 소프트웨어 컴포넌트는 시스템의 제어로직을 처리하고, 센서 컴포넌트는 입력부의 하드웨어 종속적인 인터페이스를 역할을 하며, 액츄에이터 컴포넌트는 하드웨어 종속적인 출력부를 관장한다. 이에 따라, 각각의 소프트웨어 컴포넌트가 해당되는 응용 소프트웨어 기능을 구현하는 ECU에 매핑되는 기본단위로서 포트와 인터페이스를 통하여 상호 데이터를 교환한다. The application software component and the actuator software component process the control logic of the system, the sensor component acts as a hardware-dependent interface of the input part, and the actuator component controls the hardware dependent output part. Accordingly, each software component exchanges mutual data through a port and an interface as a basic unit mapped to an ECU that implements the corresponding application software function.
AUTOSAR 규격에서는 이러한 계층화된 소프트웨어 아키텍처를 통해서 응용 소프트웨어와 RTE를 엄밀하게 규정하여, 이를 통해 소프트웨어의 재사용성, 확장성을 유지하고, 소프트웨어의 빠르고 신뢰성 있는 개발을 지원하는 측면이 강하다.The AUTOSAR specification stipulates that application software and RTE are strictly defined through this layered software architecture, thereby maintaining software reusability and scalability, and supporting rapid and reliable development of software.
그러나, AUTOSAR의 표준규격에서는 MCAL, 소프트웨어 컴포넌트의 요구사항이나 설계 방법론에 대해서는 구체적으로 규정하고 있지 않아, 최적화된 설계가 요구된다.However, in the standard specification of AUTOSAR, the MCAL, the requirements of the software components and the design methodology are not specifically defined, and an optimized design is required.
도 2는 본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조를 나타내는 도면이고, 도 3은 본 발명의 일실시예에 따른 인터페이스를 나타내는 도면이다.FIG. 2 is a diagram illustrating an AUTOSAR-based component structure according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating an interface according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조는 복수의 애플리케이션 컴포넌트(application component 1, 2, ... n)와Referring to FIG. 2, an AUTOSAR-based component structure according to an embodiment of the present invention includes a plurality of
상기 복수의 애플리케이션 컴포넌트와 연동하는 복수의 런어블(runable 1, 2,3, ... n) 및, 상기 복수의 런어블과 데이터를 송수신하는 허브 런어블(A)을 포함하는 제1 컴포넌트를 포함한다.A first component including a plurality of runables (runable 1, 2, 3, ... n) interlocked with the plurality of application components, and a hub runable (A) for transmitting and receiving data with the plurality of runables, .
여기서, 상기 복수의 애플리케이션 컴포넌트는 소프트웨어 컴포넌트(SW-C)일 수 있다.Here, the plurality of application components may be software components (SW-C).
AUTOSAR의 기본 단위가 되는 컴포넌트 중에서 응용 프로그램의 기본 단위가 되는 컴포넌트를 소프트웨어 컴포넌트(SW-C)라고 한다. SW-C는 응용 프로그램의 실행 단위가 된다. 인프라스트럭쳐(infrastructure)에 독립적이고 하나의 ECU에 맵핑될 수 있다. Among the components that are the basic unit of AUTOSAR, the component that becomes the basic unit of the application program is called the software component (SW-C). SW-C becomes the execution unit of the application program. It is infrastructure independent and can be mapped to one ECU.
한편, 제1 컴포넌트는 센싱(sensing) 정보를 입력받는 센서 컴포넌트(Sensor Software Component)일 수 있다.Meanwhile, the first component may be a sensor software component that receives sensing information.
또한, 상기 제1 컴포넌트는 소정 동작을 위한 제어값을 출력하는 액츄에이터 컴포넌트(Actuator Software Component)일 수 있다. 센서/액츄에이터 SW-C는 SW-C의 특별한 케이스로 특정 센서와 액츄에이터의 의존성을 캡슐화한 정보를 담고 있다.In addition, the first component may be an Actuator Software Component that outputs a control value for a predetermined operation. Sensor / actuator SW-C is a special case of SW-C that contains information encapsulating the dependence of specific sensors and actuators.
액츄에이터 소프트웨어 컴포넌트는 시스템의 제어로직을 처리하고, 센서 컴포넌트는 입력부의 하드웨어 종속적인 인터페이스를 역할을 하며, 액츄에이터 컴포넌트는 하드웨어 종속적인 출력부를 관장한다. 이에 따라, 각각의 소프트웨어 컴포넌트가 해당되는 응용 소프트웨어 기능을 구현하는 ECU에 매핑되는 기본단위로서 포트와 인터페이스를 통하여 상호 데이터를 교환한다.The actuator software component processes the control logic of the system, the sensor component acts as a hardware-dependent interface of the input, and the actuator component controls the hardware-dependent output. Accordingly, each software component exchanges mutual data through a port and an interface as a basic unit mapped to an ECU that implements the corresponding application software function.
한편, 상기 컴포넌트들의 논리적 상호연결은 하나의 컴포넌트로 패키지 될 수 있고 이 패키지를 컴포지션(compositon)이라고 한다. On the other hand, the logical interconnection of the components can be packaged as one component, and this package is called a composition.
센서/액츄에이터 컴포넌트(Sensor/Actuator Component)는 MCAL에서 제공되는 API를 이용하여 H/W 제어가 가능하다. 애플리케이션(Application) 컴포넌트는 RTE(140)를 통해 BSW(110) 또는 다른 컴포넌트와 연결되고 애플리케이션이 구현되는 컴포넌트 특징을 가질 수 있다. The Sensor / Actuator Component can be H / W controlled using the API provided by MCAL. Application components may have component features that are connected to the
각 컴포넌트는 인터페이스(interface) 속성에 따라 포트(Port)를 통해 데이터를 주고 받게 된다. 이때 인터페이스의 속성이 같은 포트끼리 연결이 가능하고 상기 인터페이스 속성은 송신자-수신자(sender-receiver) 방식 또는 클라이언트-서버(client-server)의 AUTOSAR의 표준 인터페이스일 수 있다. Each component sends and receives data through a port according to interface attributes. At this time, the ports of the same interface can be connected to each other, and the interface attribute can be a standard interface of AUTOSAR of a sender-receiver or a client-server.
RTE(140)를 통해 런어블(Runnable)은 동작하게 되고 런어블(Runnable) 간의 데이터 전달은 인터 런어블 변수(Inter Runnable Variable)를 통해 이루어질 수 있다. The runnable is operated through the
MCAL의 API는 센서/액츄에이터 컴포넌트(Sensor/Actuator Component)의 런어블(Runnable)에서 사용될 수 있다.The API of MCAL can be used in Runnable of Sensor / Actuator Component.
본 발명에 따르면, 부하의 발생을 줄이고, 데이터 처리 속도를 높이며, 효율적인 리소스(resource) 활용이 가능하다.According to the present invention, it is possible to reduce the occurrence of loads, increase data processing speed, and utilize resources efficiently.
특히, 본 발명은 애플리케이션 컴포넌트(Application Component)와 센서/액츄에이터 컴포넌트 간의 인터페이스를 더 효율적으로 연결할 수 있다.In particular, the present invention can more efficiently connect the interface between the application component and the sensor / actuator component.
또한, 본 발명은 AUTOSAR 표준 기반의 컴포넌트 개발에 있어 센서/액츄에이터 컴포넌트(Sensor/Actuator Component)와 애플리케이션 컴포넌트(Application Component) 간의 입출력 관계가 늘어나면서 발생할 수 있는 부하의 발생을 줄여 효율적인 리소스(Resource) 사용 설계를 제공한다.In addition, the present invention reduces the occurrence of load that can occur due to an increase in input / output relationship between a sensor / actuator component and an application component in the development of a component based on the AUTOSAR standard, Design.
한편, 상기 복수의 런어블(runable)과 상기 허브 런어블(A)은 인터 런어블 변수(inter runable variable)로 통신할 수 있다.Meanwhile, the plurality of runables and the hub runle A may communicate with each other through an inter-runable variable.
본 발명의 일실시예에 따른 복수의 애플리케이션 컴포넌트(Application Component) 각각은 센서/액츄에이터 컴포넌트(Sensor/Actuator Component)와 클라이언트-서버 인터페이스(client-server interface)로 연결될 수 있다.Each of a plurality of application components according to an embodiment of the present invention may be connected to a sensor / actuator component and a client-server interface.
또한, 컴포넌트들은 하나 이상의 런어블(Runnable)을 포함할 수 있고, 각 런어블은 포트(port) 또는 서비스 포트(service port) 등을 통해 다른 소프트웨어 컴포넌트들과 연동할 수 있다. 또한, 하나의 소프트웨어 컴포넌트 내에서도, 각 런어블은 인터 런어블 변수(Inter Runnable Variable)를 통해 데이터를 송수신할 수 있다.In addition, the components may include one or more runnables, and each runlevel may interwork with other software components, such as through a port or a service port. Also, even within one software component, each runable can send and receive data via an Inter Runnable Variable.
한편, 각 포트는 하나 이상의 데이터 엘리먼트(Data Element) 또는 오퍼레이션(operation)으로 구성될 수 있다.On the other hand, each port may be composed of one or more data elements or operations.
도 2를 참조하면, 허브 런어블 A는 복수의 런어블 1, 2, 3 .. n과 연결되어 통신할 수 있다.Referring to FIG. 2, the hub run A is connected to a plurality of
허브 런어블 A는 periodic 속성의 타이밍 이벤트(Timing Event)로 주기적으로 MCAL API를 이용해서 외부 Port의 입력을 읽거나 출력값을 전달할 수 있다.The hub run A can periodically read the input of the external port or transmit the output value using the MCAL API as a timing event of the periodic attribute.
허브 런어블 A와 런어블 1, 2, 3 .. n 사이는 인터 런어블 변수(Inter Runnable Variable)로 연결될 수 있다.The hub runnable A and the runnable 1, 2, 3 .. n can be connected by an inter-runnable variable.
상기 허브 런어블(A)은 MCAL(Microcontroller Abstraction Layer) 계층과 데이터를 송수신할 수 있다.The hub runable (A) can transmit and receive data to and from a MCAL (Microcontroller Abstraction Layer) layer.
한편, 런어블(Runnable) 1, 2, 3 .. n은 클라이언트-서버 인터페이스(client-server interface)에 의한 이벤트 런어블(Event Runnable)일 수 있다.
또한, 상기 복수의 애플리케이션 컴포넌트와 상기 제1 컴포넌트는 상기 클라이언트-서버 인터페이스로 연결될 수 있다.In addition, the plurality of application components and the first component may be connected to the client-server interface.
도 3은 VFS 관점에서의 클라이언드-서버 통신을 예시한다.Figure 3 illustrates client-server communication from a VFS perspective.
응용 프로그램의 재배치성을 위해 AUTOSAR SW-C는 하드웨어에 독립적으로 구현된다. 하드웨어 구조에 독립적인 구현은 바로 virtual functional bus(VFB)를 사용함으로써 가능하다. VFB는 가상 하드웨어와 독립적 시스템 통합을 맵핑하는 도구가 된다. For application relocation, AUTOSAR SW-C is hardware-independent. A hardware-independent implementation is possible by using a virtual functional bus (VFB). VFB is a tool for mapping virtual hardware and independent system integration.
모든 컴포넌트들은 잘 정의된 포트를 가지고 있는데 컴포넌트들은 바로 이 포트를 통해서 다른 컴포넌트들과 통신을 한다. 컴포넌트의 통신의 기본이 되는 포트와 포트 사이의 인터페이스는 AUTOSAR 인터페이스를 제공하는 포트인 PPort와 AUTOSAR 인터페이스를 요구하는 포트인 RPort일 수 있다.Every component has a well-defined port, which communicates with other components through this port. The interface between the port and the port that is the basis of the communication of the component may be PPort which is the port providing the AUTOSAR interface and RPort which is the port which requires the AUTOSAR interface.
도 3에서와 같이 클라이언트는 하나의 서버에 하나 이상 존재할 수 있다. 클라이언트의 포트는 RPort이고 서버의 포트는 PPort 이기 때문에 서버는 클라이언트가 요구하는 서비스를 제공하게 된다. As shown in FIG. 3, one or more clients may exist in one server. Since the port of the client is RPort and the port of the server is PPort, the server provides the service requested by the client.
도 2를 참조하면, 애플리케이션 컴포넌트(Application Component)의 쓰기(Write) 동작 조건에 의해서 런어블(Runnable) 1, 2, 3 ... n의 이벤트(Event)가 발생하게 되면 인터 런어블 변수(Inter Runnable Variable)에 그 값이 전달된다.Referring to FIG. 2, when an event of
주기적인 속성의 허브 런어블(Runnable A)는 상기 인터 런어블 변수(Inter Runnable Variable)을 읽어서 포트(Port) 쓰길를 위한 MCAL API를 호출하게 된다. The runnable A of the periodic attribute reads the Inter Runnable Variable and calls the MCAL API for writing the port.
이 경우에, 애플리케이션 컴포넌트(Application Component)에서 센서/액츄에이터 컴포넌트(Sensor/Actuator Component)를 호출할 때 인터페이스의 파라미터(parameter)는 제어하고자하는 해당 포트(Port)의 값을 나타낼 수 있다.In this case, when a sensor / actuator component is called from an application component, a parameter of an interface may indicate a value of a corresponding port to be controlled.
애플리케이션 컴포넌트(Application Component)의 읽기(Read) 동작 조건에 의해서 런어블에서의 이벤트(Event)가 발생한 경우에는, 주기적인 속성의 허브 런어블(Runnable A)에서 MCAL API를 이용하여 읽어둔 포트(Port)값, 즉 인터 런어블 변수(Inter Runnable Variable)에 저장이 되어져 있는 그 값을 읽는 동작을 런어블(Runnable) 1, 2, 3 ... n에서 하게 된다. When an event in a runable occurs due to a read operation condition of an application component, a port (Port) read using a MCAL API in a run-time-attribute runnable A, ), That is, the value stored in the Inter Runnable Variable is read from
이 때 애플리케이션 컴포넌트(Application Component)에서 센서/액츄에이터 컴포넌트(Sensor/Actuator Component)를 호출 시 인터페이스의 리턴(return)은 인터 런어블 변수(Inter Runnable Variable)에 저장되어 있는 포트(Port)의 값이 된다.At this time, when the sensor / actuator component is called from the application component, the return of the interface is the value of the port stored in the inter-runnable variable .
본 발명의 일실시예에 따른 AUTOSAR 기반의 컴포넌트 구조는 상기 복수의 애플리케이션 컴포넌트와 연동하는 복수의 런어블(runable) 및, 상기 복수의 런어블과 데이터를 송수신하는 허브 런어블을 포함한다.The AUTOSAR-based component structure according to an embodiment of the present invention includes a plurality of runables interlocked with the plurality of application components, and a hub run-able to transmit and receive data with the plurality of run-ins.
또한, MCAL과는 허브 런어블(A)을 통하여 한번에 입출력할 수 있어, 복수의 런어블들이 개별적으로 호출할 때보다, 부하를 줄이고, 처리 속도를 높일 수 있다. Also, the MCAL can be input / output at once through the hub run A, so that the load can be reduced and the processing speed can be increased as compared with a case where a plurality of runables are called individually.
본 발명의 실시예에 따르면, 부하의 발생을 줄이고, 데이터 처리 속도를 높이며, 효율적인 리소스(resource) 활용이 가능하다.According to the embodiment of the present invention, it is possible to reduce the occurrence of load, increase data processing speed, and utilize efficient resources.
특히, 본 발명은 애플리케이션 컴포넌트(Application Component)와 센서/액츄에이터 컴포넌트 간의 인터페이스를 더 효율적으로 연결할 수 있다.In particular, the present invention can more efficiently connect the interface between the application component and the sensor / actuator component.
또한, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안 될 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the present invention.
110 : BSE
120 : 하드웨어 계층
130 : 응용 소프트웨어 계층
140 : RTE 110: BSE
120: Hardware layer
130: application software layer
140: RTE
Claims (6)
상기 복수의 애플리케이션 컴포넌트와 연동하는 복수의 런어블(runable) 및, 상기 복수의 런어블과 데이터를 송수신하는 허브 런어블을 포함하는 제1 컴포넌트;를 포함하는 AUTOSAR 기반의 컴포넌트 구조.A plurality of application components;
And a first component including a plurality of runables interworking with the plurality of application components and a hub runlable for transmitting and receiving data between the plurality of runlables and the plurality of runtables.
상기 제1 컴포넌트는 센싱(sensing) 정보를 입력받는 센서 컴포넌트인 것을 특징으로 하는 AUTOSAR 기반의 컴포넌트 구조.The method according to claim 1,
Wherein the first component is a sensor component that receives sensing information.
상기 제1 컴포넌트는 소정 동작을 위한 제어값을 출력하는 액츄에이터(actuator) 컴포넌트인 것을 특징으로 하는 AUTOSAR 기반의 컴포넌트 구조.The method according to claim 1,
Wherein the first component is an actuator component that outputs a control value for a predetermined operation.
상기 복수의 애플리케이션 컴포넌트와 상기 제1 컴포넌트는 상기 클라이언트-서버 인터페이스로 연결되는 것을 특징으로 하는 AUTOSAR 기반의 컴포넌트 구조.The method according to claim 1,
Wherein the plurality of application components and the first component are connected to the client-server interface.
상기 복수의 런어블(runable)과 상기 허브 런어블은 인터 런어블 변수(inter runable variable)로 통신하는 것을 특징으로 하는 AUTOSAR 기반의 컴포넌트 구조.The method according to claim 1,
Wherein the plurality of runables communicate with the hub runle with an inter runable variable.
The AUTOSAR-based component structure according to claim 1, wherein the hub runlable transmits and receives data to and from a microcontroller abstraction layer (MCAL) layer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120133894A KR20140066531A (en) | 2012-11-23 | 2012-11-23 | A component architecture based on autosar(automotive open system architecture) |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120133894A KR20140066531A (en) | 2012-11-23 | 2012-11-23 | A component architecture based on autosar(automotive open system architecture) |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20140066531A true KR20140066531A (en) | 2014-06-02 |
Family
ID=51123232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120133894A KR20140066531A (en) | 2012-11-23 | 2012-11-23 | A component architecture based on autosar(automotive open system architecture) |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20140066531A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105137943A (en) * | 2015-09-06 | 2015-12-09 | 同济大学 | Micro hybrid power system integrated control software framework |
KR20160071260A (en) * | 2014-12-11 | 2016-06-21 | 현대자동차주식회사 | Method for managing state of ECU in vehicle based on automotive open system architecture |
KR20160081508A (en) * | 2014-12-31 | 2016-07-08 | 현대모비스 주식회사 | Interface apparatus for AUTOSAR setup |
KR20160087274A (en) * | 2015-01-13 | 2016-07-21 | 현대모비스 주식회사 | An Electronic Control Unit multi-core architecture based on AUTOSAR(AUTomotive Open System Architecture) and Vehicle including the same |
KR20170114521A (en) * | 2016-04-05 | 2017-10-16 | 현대모비스 주식회사 | Apparatus and method for MDPS MCU core fault detection |
WO2021047970A1 (en) | 2019-09-10 | 2021-03-18 | Volkswagen Aktiengesellschaft | Software components for a software architecture |
CN112783736A (en) * | 2021-03-01 | 2021-05-11 | 苏州挚途科技有限公司 | Method and device for monitoring running body time of software component and electronic equipment |
-
2012
- 2012-11-23 KR KR1020120133894A patent/KR20140066531A/en not_active Application Discontinuation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160071260A (en) * | 2014-12-11 | 2016-06-21 | 현대자동차주식회사 | Method for managing state of ECU in vehicle based on automotive open system architecture |
KR20160081508A (en) * | 2014-12-31 | 2016-07-08 | 현대모비스 주식회사 | Interface apparatus for AUTOSAR setup |
KR20160087274A (en) * | 2015-01-13 | 2016-07-21 | 현대모비스 주식회사 | An Electronic Control Unit multi-core architecture based on AUTOSAR(AUTomotive Open System Architecture) and Vehicle including the same |
CN105137943A (en) * | 2015-09-06 | 2015-12-09 | 同济大学 | Micro hybrid power system integrated control software framework |
CN105137943B (en) * | 2015-09-06 | 2018-06-26 | 同济大学 | A kind of micro-hybrid system integration control device |
KR20170114521A (en) * | 2016-04-05 | 2017-10-16 | 현대모비스 주식회사 | Apparatus and method for MDPS MCU core fault detection |
WO2021047970A1 (en) | 2019-09-10 | 2021-03-18 | Volkswagen Aktiengesellschaft | Software components for a software architecture |
CN112783736A (en) * | 2021-03-01 | 2021-05-11 | 苏州挚途科技有限公司 | Method and device for monitoring running body time of software component and electronic equipment |
CN112783736B (en) * | 2021-03-01 | 2024-04-19 | 苏州挚途科技有限公司 | Method and device for monitoring running body time of software component and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20140066531A (en) | A component architecture based on autosar(automotive open system architecture) | |
EP2123517B1 (en) | Vehicle control system | |
Kum et al. | AUTOSAR migration from existing automotive software | |
KR100958303B1 (en) | Load balancing system and method through dynamic loading and execution of module device using internal core communication channel in multi-core system environment | |
CN113939805A (en) | Method and system for interprocess communication | |
US20100292867A1 (en) | Motor Vehicle Control Device | |
US9235456B2 (en) | Configuration technique for an electronic control unit with intercommunicating applications | |
US10452432B2 (en) | Method and apparatus for distributing tasks of AUTOSAR operating system | |
CN111338315B (en) | Virtual Electronic Control Unit in AUTOSAR | |
JP5967927B2 (en) | Method for bypassing AUTOSAR software elements of an AUTOSAR software system | |
WO2010026836A1 (en) | Control software for distributed control, and electronic control device | |
KR101138674B1 (en) | Usb controller and buffer memory control method | |
US11494221B2 (en) | Hardware control core controlling operation of hardware devices by executing device drivers within the hardware control core used by virtual machine cores via shared memory having an uplink and downlink memory | |
CN102073549B (en) | Communication method between assemblies on basis of resource sharing | |
Bucaioni et al. | Modelling multi-criticality vehicular software systems: evolution of an industrial component model | |
KR20170059685A (en) | Apparatus for communicating diagnostic vehicle based on autosar and method thereof | |
Vu et al. | Enabling partial reconfiguration for coprocessors in mixed criticality multicore systems using PCI Express Single-Root I/O Virtualization | |
CN114691234B (en) | Program configuration method, system, equipment and media based on AUTOSAR | |
CN115203679A (en) | Method, system and domain for providing a secure execution environment for security-related applications | |
KR20160039824A (en) | Control method of motor pulse width based on AUTOSAR | |
US20080134157A1 (en) | Approach and System for Process Execution of an Integrated Telecom Platform | |
CN111630496B (en) | Method for designing application task architecture of electronic control unit with one or more virtual cores | |
CN115412394B (en) | Heterogeneous domain controller inter-core communication method based on AutoSar | |
US10958472B2 (en) | Direct access to bus signals in a motor vehicle | |
US20220357973A1 (en) | Processing system, related integrated circuit, device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20121123 |
|
N231 | Notification of change of applicant | ||
PN2301 | Change of applicant |
Patent event date: 20131204 Comment text: Notification of Change of Applicant Patent event code: PN23011R01D |
|
PG1501 | Laying open of application | ||
PC1203 | Withdrawal of no request for examination | ||
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |