๐ ์ํํธ์จ์ด ํ๋ซํผ
์ํํธ์จ์ด ํ๋ซํผ์ ์ํํธ์จ์ด์ ํ๋์จ์ด๋ฅผ ์ฐ๊ฒฐํด์ฃผ๋ ์ค๊ฐ ๊ณ์ธต์ด๋ค.
์ปดํจํฐ์์๋ OS, ๋๋ผ์ด๋ฒ ๋ฑ์ ์ํํธ์จ์ด๋ฅผ ํตํด ํ๋์จ์ด์ ์ ๊ทผํ๊ณ
์๋์ฐจ์์๋ AUTOSAR, XENON, ODIN๊ณผ ๊ฐ์ ์ํํธ์จ์ด ํ๋ซํผ์ ํตํด ์ ๊ทผํ๋ค.
ํ์ฌ AUTOSAR์ ์ ์ ์จ์ ์ฝ 80% ์ ๋์ด๊ณ ๊ณ์ ์ฆ๊ฐํ๋ ์ถ์ธ์ด๋ค.
๊ตฌ๋ถ
|
์ ์ด๊ธฐ
|
์ปดํจํฐ
|
|
์ํํธ์จ์ด
|
์์ฉ SW
|
๊ฐ ์ ์ด๊ธฐ๋ณ ๊ธฐ๋ฅ SW
(ex. Auto Light, Wiper, Room Lamp, ...) |
์์ฉ SW
(ex. Excel, Outlook, ํ๋ฆฐํฐ ๊ธฐ๋ฅ, ...) |
SW ํ๋ซํผ
|
๊ณตํต ๊ธฐ๋ฅ ๋ชจ๋, ํ์ค ์ธํฐํ์ด์ค + Tool
(ex. XENON, ODIN) OSEK OS, AUTOSAR |
.NET ํ๋ ์์ํฌ, ์๋์ฐ 7, ๋ฆฌ๋
์ค
๊ทธ๋ํฝ ๋๋ผ์ด๋ฒ, ์ค๋์ค ๋๋ผ์ด๋ฒ |
|
ํ๋์จ์ด
|
ํ๋ก์ธ์
|
MCU (ex. S12X, V850, XC2K)
|
CPU (ex. Intel, AMD)
|
๋ณด๋
|
ECU ๋ณด๋
|
๋ฉ์ธ๋ณด๋
|
|
์ธ๋ถ ์ฅ์น
|
์์ดํผ, ์ค๋ด/์ธ๋ฑ, ๋ฉํฐ Function ์ค์์น
|
๋ชจ๋ํฐ, ํค๋ณด๋, ๋ง์ฐ์ค
|
๐ AutoSAR ๋?
AutoSAR(Automotive Open System Architecture)๋1998๋
๋
์ผ ์๋์ฐจ ์ ์กฐ์
์ฒด์ ๋ถํ ๊ณต๊ธ์
์ฒด๊ฐ ๊ณต๋์ผ๋ก ์ ์ํ
์ํํธ์จ์ด ํ๋ซํผ์ด๋ค.
์๋์ฐจ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๋ ๋ฐฉ์์ด ๋ค ๋ค๋ฅด๋ฉด ๊ฐ๋ฐํ๊ณ ์ฐ๊ตฌํ๋๋ฐ ์์ด ๋นํจ์จ ์ ์ด๋ค. ๋ฐ๋ผ์ ์๋์ฐจ ํ๋์จ์ด๋ฅผ ์๋์ํค๋๋ฐ ํ์ํ ์ฌ๋ฌ ์ํํธ์จ์ด๋ค์ ํ์คํ ํ ์ผ์ข
์ ์ํํธ์จ์ด ์งํฉ์ด๋ค.
์ ๋ขฐ์ฑ ์๋ ์ํํธ์จ์ด ํ๋ซํผ ์ฌ์ , ECU ์ํํธ์จ์ด ๊ตฌ์กฐ ํ์คํ, ์์ ์ฑ ๊ตฌ์ถ์ ๋ชฉ์ ์ ๋๊ณ ์๋ค.
AutoSAR ํน์ง
- ํ์ค ํ๋ซํผ ์ฌ์ฉ
AutoSAR์์๋ ํ์ค ํ๋ซํผ๊ณผ ํ์ค ์ธํฐํ์ด์ค ์ฌ์ฉ์ ํตํด ์๋์ฐจ ์ํํธ์จ์ด ๊ฐ๋ฐ ๋ฐ ์ ์ง๋ณด์๋ฅผ ํตํฉ์ํจ๋ค.
(โป ํ๋ซํผ : ์ํํธ์จ์ด๊ฐ ๋์ํ๋ ๊ณณ, e.g. BSW, RTE ..) - ํ๋์จ์ด ๋
๋ฆฝ์ฑ
AutoSAR๋ ํ๋์จ์ด์ ๋ ๋ฆฝ์ ์ผ๋ก ์ค๊ณ๋์ด ๋ค์ํ ํ๋์จ์ด์์ ์คํ ๊ฐ๋ฅํ๋ค.
์ด๋ ํน์ ํ๋์จ์ด์ ์ข ์๋์ง ์๊ณ ์์ ๋กญ๊ฒ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๊ณ ์ฌ์ฌ์ฉํ ์ ์์์ ์๋ฏธํ๋ค. - ๋น์ฉ ๋จ์ถ
ํ์คํ๋ ํ๋ซํผ์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฐ ๊ธฐ๊ฐ์ด ๋จ์ถ๋๊ณ , ๊ธฐ์กด์ ๊ฐ๋ฐํ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฌ์ฉํ ์ ์์ด
SW ๊ฐ๋ฐ ๋น์ฉ์ ์ ๊ฐํ ์ ์๋ค.
(โป ์ปดํฌ๋ํธ: ์๋์ฐจ์ ์ฌ์ฉ๋๋ ์ํํธ์จ์ด ๋ฐ ํ๋์จ์ด๋ฅผ ์์ ๊ธฐ๋ฅ ๋จ์๋ก ๋๋ ์ข ํฉ์ ์ธ ์ฉ์ด์ด๋ค.)
ํ๋์จ์ด ์ปดํฌ๋ํธ ์ํํธ์จ์ด ์ปดํฌ๋ํธ 1. ์์ง ์ปดํฌ๋ํธ 1. ์์ง ์ ์ด ์ ๋ (ECU) - ์ค๋ฆฐ๋, ํผ์คํค, ํฌ๋ญํฌ์คํํธ, ์บ ์คํํธ - ์์ง ์ ์ด ํ๋ก๊ทธ๋จ - ์ฐ๋ฃ ์ธ์ ํฐ, ์ค๋กํ ๋ฐธ๋ธ ๋ฑ - ์ฐ๋ฃ ๋ฐ ๊ณต๊ธฐ ํ๋ฆ ์ ์ด, ์ง๋จ ๋ฐ ์ผ์ ํตํฉ 2. ๋ธ๋ ์ดํฌ ์์คํ 2. ์ฐจ๋ ๋ด๋ถ ์์คํ - ๋ธ๋ ์ดํฌ ๋์คํฌ, ํจ๋, ์บ๋ฆฌํผ ๋ฑ - ์์ด๋ฐฑ ์ ์ด, ๋ฏธ๋์ด, ๋ด๋น๊ฒ์ด์ ์์คํ 3. ์ ์ ์ ์ด ์ ๋ (ECU) 3. ์์คํ์ ๋ฐ ์กฐํฅ ์ปดํฌ๋ํธ - ์์ง ์ปจํธ๋กค ์ ๋, ๋ธ๋ ์ดํฌ ์ปจํธ๋กค ์ ๋ - ์์คํ์ ์คํ๋ง, ์, ์ค์ ์ ๋ฑ - ์ฐจ๋ ์์คํ ๊ฐ์ ๋ฐ ์ ์ด - ์คํฐ์ด๋ง ํ , ์ปฌ๋ผ, ํ์ ์คํฐ์ด๋ง ํํ 4. ์กฐ๋ช ๋ฐ ์ ํธ ์์คํ 4. ์ ์กฐ๋ฑ ๋ฐ ํ๋ฏธ๋ฑ ์ปดํฌ๋ํธ - ํค๋๋จํ, ํ ์ผ๋จํ, ๋ฐฉํฅ ์ง์๋ฑ ๋ฑ - ์ ์กฐ๋ฑ, ํ๋ฏธ๋ฑ, ๋ฐฉํฅ ์ง์๋ฑ ๋ฑ 5. ์ฐจ์ฒด์ ๊ตฌ์กฐ ๋ถํ 5. ๊ธฐํ ์ ์ฅ ์์คํ - ์ฐจ์ฒด ํ๋ ์, ๋์ด, ํธ๋ ํฌ ๋ฑ - ์์ง ์ค์ผ, ๋๊ฐ์, ๋ณ์๊ธฐ ์ค์ผ ์ผ์ ๋ฑ
AutoSAR ์ด์ ์กฐ์ง
ํ์ฌ ์๋์ ๊ฐ์ ์กฐ์ง๋๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ ๊ณ์ํด์ ์ ๊ทธ๋ ์ด๋ ํด๋๊ฐ๊ณ ์๋ค.
- Core Partner (์ฝ์ด ํํธ๋)
- AUTOSAR์ ์กฐ์ง ๋ฐ ํ์ ์ ๋ด๋นํ๋ฉฐ, ์ ๋ฐ์ ์ธ ์ด์์ ๊ด๋ฆฌํ๋ ์ฃผ์ฒด
- AUTOSAR ํ์ค์ ์ฃผ๋์ ์ผ๋ก ๊ฐ๋ฐํ๊ณ ํ์ฅํ๋ฉฐ, ํ์ค์ ์ ๋ฐ์ ์ผ๋ก ์ด๋๋ ์ญํ ์ ์ํํ๋ค.
- ์์ ํ์ฌ : Continental, General Motors, Toyota, Volkswagen, Volvo Cars
- Premium Partner (ํ๋ฆฌ๋ฏธ์ ํํธ๋)
- Working Group์์ ์ ๋ ์ญํ ์ ์ํํ๊ณ , AUTOSAR ํ์ค์ ๊ฐ์ ํ๋ ๋ฐ ๊ธฐ์ฌํ๋ค.
- ๊ฐ์ ์ ์ ๋ฐ ํ์คํ ํ๋ก์ธ์ค์ ์ฐธ์ฌํ์ฌ ํ์ค์ ํ์ง์ ํฅ์์ํค๋ ์ญํ ์ ํ๋ค.
- ์์ ํ์ฌ : Hyundai, BMW, Daimler, Ford, Bosch, NVIDIA
- Development Partner (๊ฐ๋ฐ ํํธ๋)
- ์ ๋ฌธ ์ง์์ ์ ๊ณตํ๊ณ , ํน์ ๊ธฐ์ ์์ญ์ ๋ํ ์ ๋ฌธ์ฑ์ ํ์ฉํ์ฌ AUTOSAR ํ์ค์ ๊ฐ๋ฐํ๊ณ ๋ฐ์ ์ํด
- ๊ฐ๋ฐ๋ ํ์ค์ ๊ตฌํํ๊ณ ํ ์คํธํ์ฌ ์ค์ง์ ์ธ ๊ธฐ์ ์ ๊ธฐ์ฌ๋ฅผ ์ ๊ณต
- ์์ ํ์ฌ : Vector, Elektrobit, AVL, ETAS
- Associate Partner (์ด์์์์ดํธ ํํธ๋)
- AUTOSAR ํ์ค์ ์ฌ์ฉํ๋ ๋จ์ฒด ๋ฐ ๊ธฐ์ ์ผ๋ก, ํ์ค์ ์ ์ฉํ์ฌ ์ ํ์ ๊ฐ๋ฐํ๊ณ ์ฌ์ฉํ๋ ์ญํ ์ ํจ
- ํ์ค ์ฌ์ฉ ๊ฒฝํ์ ํผ๋๋ฐฑํ๊ณ ํ์ค์ ๊ฐ์ ํ๋ ๋ฐ ๊ธฐ์ฌ
- ์์ ํ์ฌ : KG Mobility, Aisin AW, Harman, Renesas, Toshiba
๐ AutoSAR ๊ตฌ์ฑ
AutoSAR๋ ํฌ๊ฒ ์ธ ๊ฐ์ง ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
Basic Software(BSW)
์์ง ์ ์ด, ๋ธ๋ ์ดํฌ ์ ์ด, ํต์ ์ ์ด ๋ฑ๊ณผ ๊ฐ์ ์๋์ฐจ์ ๊ธฐ๋ณธ์ ์ธ ์ํํธ์จ์ด ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ํํธ์จ์ด์ ์งํฉ
Service Layer, EAL, MCAL, CDD๋ก ๋๋์ด ๊ตฌ๋ถ๋๋ค.
-
- Service Layer
BSW์์ ๊ฐ์ฅ ์์ ์๋ ๊ณ์ธต์ผ๋ก ์ ๋ฐ์ ์ธ ์ ์ด๋ฅผ ์ํ ๋ค์ํ ๋ฐฑ๊ทธ๋ผ์ด๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
(e.g. ํต์ ์๋น์ค, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, ์๊ฐ ๊ด๋ฆฌ, ์ง๋จ ์๋น์ค ๋ฑ) - EAL(ECU Abstration Layer)
์๋น์ค ๋ ์ด์ด์ MCAL ๊ฐ์ ์ธํฐํ์ด์ค ์ญํ ์ ์ํ์ ํตํด BSW ์ํํธ์จ์ด๊ฐ ํน์ ECU์์ ๋์ํ๋๋ก
ํ๋ค. - MCAL(Microcontroller Abstration Layer)
MCAL์ BSW์ ๊ฐ์ฅ ํใ ์ ์์นํ๋ฉฐ ๊ฐ์ข ๋ด๋ถ ์ฅ์น๋ฅผ ์ด์ฉํ๊ธฐ ์ํ Driver๋ค๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
MCAL์ ํตํด HW์ ์ง์ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค. - CDD(Complex Device Driver)
MCAL ์์ ๊ตฌ์ถ๋๋ฉฐ Autosar ํ์ค์ ์ ์ ๋์ง ์์ ์ฌ๋ฌ๊ฐ์ง ๋ณต์กํ Driver๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- Service Layer
- Runtime Environment(RTE)
AutoSAR RTE๋ AUTOSAR์์ ์ ์ํ Run-Time Environment์ ์ฝ์๋ก, ECU ๋ด์์ ์ปดํฌ๋ํธ ๊ฐ ํต์ ๊ณผ ์ปดํฌ๋ํธ ์คํ์ ๊ด๋ฆฌํ๋ค. ๊ตฌ์ฒด์ ์ธ ๊ธฐ๋ฅ์ ์๋์ ๊ฐ๋ค.
- ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ๊ด๋ฆฌ
- ํฌํธ์ ์ธํฐํ์ด์ค ์ฐ๊ฒฐ
RTE๋ ์ปดํฌ๋ํธ์ ํฌํธ์ ์ธํฐํ์ด์ค๋ฅผ ์ฐ๊ฒฐํ์ฌ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค. - ๋ฉ์์ง ํ์ ๋ฐ ์ ์ก ๋ฐฉ๋ฒ ์ ์
RTE๋ ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ์ ํ์ํ ๋ฉ์์ง ํ์๊ณผ ์ ์ก ๋ฐฉ๋ฒ์ ์ ์ํ๋ค.
์๋ฅผ ๋ค์ด, JSON ํ์์ผ๋ก ๋ฉ์์ง๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ฉด ํค-๊ฐ ์์ ํํ๋ก ๊ตฌ์ฑ๋๊ณ
์ ์ก ๋ฐฉ๋ฒ์ Autosar์์ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ ์ค(e.g. TCP/UDP) ์ ํฉํ ์ ์ก ๋ฐฉ๋ฒ์ ์ ํํ ์ ์๋ค.
- ํฌํธ์ ์ธํฐํ์ด์ค ์ฐ๊ฒฐ
- ์ปดํฌ๋ํธ์ ์คํ ๊ด๋ฆฌ
์ค์ ํ ํน์ Event ๋ฐ์์ผ๋ก ์ธํ ์คํ, ์ฃผ๊ธฐ์ ์คํ, ์์ฒญ์ ์ํ ์คํ ๋ฑ RTE๋ ํ์ํ ๋์ ์ปดํฌ๋ํธ๊ฐ ์คํ๋๋๋ก ๊ด๋ฆฌํ๋ค. - ์์ ํ ๋น
์ปดํฌ๋ํธ์ ์คํ์ ํ์ํ ๊ฐ์ข ์์์ ํ ๋นํ๋ค. (e.g. ๋คํธ์ํฌ ์์, ์ผ์ ์ ๋ณด, ์ก์ธ์์ดํฐ ์ ๋ณด ๋ฑ) - ์๋ฌ ์ฒ๋ฆฌ
RTE๋ ๋ฐ์ํ ์๋ฌ๋ฅผ ๋ก๊ทธ์ ๊ธฐ๋ก, ๋ก๊ทธ์๋ ์๋ฌ์ ์ข ๋ฅ, ์์ธ, ๋ฐ์ ์์ ๋ฑ์ด ํฌํจ๋๋ค.
- ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ๊ด๋ฆฌ
- Application Software(ASW)
๋์ด ์ ๊ธ, ์์ด์ปจ ์ ์ด, ๋ด๋น๊ฒ์ด์ ๊ฐ์ ์ฌ์ฉ์๊ฐ ์ค์ ๋ก ๊ฒฝํํ๋ ์๋์ฐจ์ ํน์ ๊ธฐ๋ฅ์ ์ํํ๋ ์ํํธ์จ์ด์
์งํฉ์ด๋ฉฐ ๊ธฐ๋ฅ์ ๋ฐ๋ผ ์ดํ๋ฆฌ์ผ์ด์ , ์ก์ธ์์ดํฐ, ์ผ์๋ก ๊ตฌ๋ณ๋๋ค.
AutoSAR ์ธํฐํ์ด์ค
AutoSAR ํ๋ซํผ์์๋ ๋ชจ๋ ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ์ ๊ฐ ํฌํธ์์ ํ์ค ์ธํฐํ์ด์ค๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋ค.
ํฌํธ๊ฐ ์ํ ์ฐฝ๊ตฌ์ด๋ฉด ์ธํฐํ์ด์ค๋ ์ํ ์
๋ฌด์ด๋ค.
(โป ํฌํธ : ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ ๋คํธ์ํฌ ์ง์ , P-Port ๋ฐ์ดํฐ ์ ๊ณต ์ฐฝ๊ตฌ, R-Port ๋ฐ์ดํฐ ์์ฒญ ์ฐฝ๊ตฌ)
- AutoSAR Interface
์ฌ์ฉ์์ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ํ์ํ ๊ธฐ๋ฅ์ ์ ์ํ์ฌ ์์ฑ๋๋ ์ธํฐํ์ด์ค์ด๋ค.
์ํ์ผ๋ก ๋น์ ํ๋ฉด ํน์ ์ ๋ฌด์ด๋ค. ์ผ๋ฐ ์ ๋ฌด์ ๋ฌ๋ฆฌ ์ฌ์ฉ์๊ฐ ์ง์ ํ ํน์ ํ ์ฌ๋ฌ ์ ๋ฌด๋ฅผ ์ฒ๋ฆฌํ๋ค. - Standardized AUTOSAR Interface
AUTOSAR ํ์ค์ ์ ์๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ค.
์ํ์ ์ผ๋ฐ ์ ๋ฌด์ด๋ฉฐ CAN ํต์ ์ธํฐํ์ด์ค์ ๊ฐ์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ํ์ค ์ธํฐํ์ด์ค๊ฐ ํด๋น๋๋ค. - Standardized Interface
์ํ์ ํตํฉ ์ ๋ฌด์ด๋ฉฐ ๋ค์ํ ์ํํธ์จ์ด ์ปดํฌ๋ํธ ๊ฐ์ ์ฐ๊ฒฐ์ ํ์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ผ์ข ์ ํตํฉ ์ฐฝ๊ตฌ์ด๋ค.
AutoSAR ๊ฐ๋ฐ ์์
AUTOSAR ํ๋ซํผ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์๋์ฐจ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ํฌ๊ฒ ์ธ ๋จ๊ณ๋ก ์ด๋ฃจ์ด์ง๋ค.
- Configuration of the Overall System(์ ์ฒด ์์คํ
๊ตฌ์ฑ)
์๋์ฐจ์ ๊ธฐ๋ฅ์ ๋ถ์ -> ECU, ์์คํ ๋ฑ ์ํคํ ์ฒ ์ค๊ณ -> ECU ๊ฐ์ ํต์ ๋ฐฉ์ ์ค๊ณ
์์ผ๋ก ์ ์ฒด ์์คํ ์ ๊ตฌ์ฑ์(ECU, ๊ฐ์ข ์ปดํฌ๋ํธ)๋ฅผ ๊ธฐ๋ฅ์ ๋ง๊ฒ ๊ตฌ์ฑํ๋ ๋จ๊ณ์ด๋ค. - Configuration of the individual ECU(๊ฐ๋ณ ECU ๊ตฌ์ฑ)
ECU์ ์ปดํฌ๋ํธ ๋ฐฐ์น -> ์ปดํฌ๋ํธ ๊ฐ์ ํต์ ์ฐ๊ฒฐ -> ECU์ ๊ตฌ์ฑ ํ์ผ ์์ฑ
์์ผ๋ก ์ฃผ๋ก ECU์ ํ๋์จ์ด์ ์ํํธ์จ์ด๋ฅผ ๊ธฐ์ ์ ์ผ๋ก ์ฐ๊ฒฐํ๋ ๋จ๊ณ์ด๋ค. - Implementation of the Software Component (์ปดํฌ๋ํธ ๊ตฌํ)
์ปดํฌ๋ํธ ์๊ตฌ ์ฌํญ ๋ถ์ -> ์ปดํฌ๋ํธ ์ํคํ ์ณ ์ค๊ณ -> ์ปดํฌ๋ํธ ์ฝ๋ ์์ฑ -> ํ ์คํธ
์์ผ๋ก ์ปดํฌ๋ํธ์ ๋ํ ์ํํธ์จ์ด๋ฅผ ๊ตฌํํ๊ณ ํ ์คํธ ํ๋ ๋จ๊ณ์ด๋ค.
๐ AutoSAR OS
AUTOSAR OS๋ ์๋์ฐจ ์ ์ฅ ์์คํ
์ ํ์์ ์ธ ์ด์ ์ฒด์ (OS)๋ก, ๊ธฐ์กด์ ์ฌ์ฉ๋๋ ํ์ค OS์ธ OSEK OS๋ฅผ ๊ธฐ๋ฐ์ผ๋ก
๊ฐ๋ฐ๋์๋ค. ๋ฐ๋ผ์ OSEK OS์ API๋ฅผ ๊ณ์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, ์ถ๊ฐ๋ก ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
(โป OSEK OS : FREERTOS์ ๊ฐ์ ์ค์๊ฐ์ฑ OS์ด๋ฉฐ ์๋์ฐจ ์ ์ฅ ์์คํ
์์ ์ฐ์)
์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ OS์์ ์ ๊ณตํ๋ 4๊ฐ์ Scalability Class๋ฅผ ์ฌ์ฉํ๋ค.
- Scalability Class
Scalability Class๋ AUTOSAR OS์ ๊ธฐ๋ฅ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๊ตฌ ์ฌํญ์ ๋ง๊ฒ ์กฐ์ ํ ์ ์๋ ๊ธฐ๋ฅ์ด๋ค.
๊ธฐ๋ฅ์ด ๋ชจ๋ ํฌํจ๋ SC4๋ง ์ฌ์ฉํ๋ฉด ๋ ๊ฒ ๊ฐ์ง๋ง ์์ ์ต์ ํ๋ฅผ ์ํด ๊ธฐ๋ฅ์ ์กฐ์ ํ์ฌ ์ฌ์ฉํ๋ค. - SC1
SC1์ AUTOSAR OS์ ์๋์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
- OSEK OS์ ๊ธฐ๋ณธ ๊ธฐ๋ฅ
- SWFRT : OS์์ ์ฌ์ฉํ๋ ํ์ด๋จธ๋ฅผ ์ค์ ํ ์ ์๋ ๊ธฐ๋ฅ
- Counter : OSEK OS์ ์นด์ดํฐ๋ฅผ ์ง์ ์ ์ดํ ์ ์๋ ๊ธฐ๋ฅ
- Schedule Table : ์ฌ๋ฌ ๋์์ ์๊ฐ์ ๋ฐ๋ผ ์ํํ๊ฒ ํ๊ธฐ ์ํด OS์์ ์ ๊ณตํ๋ ๊ธฐ๋ฅ
- Stack Monitoring : ์คํ์ด ์ค์ ๋ ๊ฐ๋ณด๋ค ์ด๊ณผ๋์ด ์ฌ์ฉ๋๊ณ ์์ง ์์์ง ๊ฒ์ฌํ๋ ๊ธฐ๋ฅ
- SC2
SC2๋ SC1์ ๊ธฐ๋ฅ์ ํฌํจ, ์ถ๊ฐ๋ก Timing Protection ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
- Time Protection
ask์ ์ํ ์๊ฐ, resource ์ ์ ์๊ฐ, activation ์ฃผ๊ธฐ ๋ฑ์ ๊ฐ์ํ์ฌ ์ ์๊ฐ์ ๋์ํ๋๋ก ๋ณด์ฅํ๋ ๊ธฐ๋ฅ
์์จ์ฃผํ ์๋์ฐจ์ ECU์ ๊ฒฝ์ฐ, ์์จ์ฃผํ ๊ธฐ๋ฅ์ ์ํํ๋ Task๊ฐ ๋ชจ๋ ์ ์๊ฐ์ ๋์ํด์ผ ํ์ฌ SC2 ์ด์์
Scalability Class๋ฅผ ์ง์ํด์ผ ํ๋ค.
- Time Protection
- SC3
SC3๋ SC1์ ๊ธฐ๋ฅ์ ํฌํจํ๋ฉฐ, Memory Protection ๊ธฐ๋ฅ์ ์ถ๊ฐ๋ก ์ ๊ณตํ๋ค.
- Memory Protection
ํ๊ฐ๋์ง ์์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ์ ๊ทผ์ ๊ฐ์งํ์ฌ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ ๊ธฐ๋ฅ์ด๋ค.
์๋์ฐจ์ ์์ง ์ ์ด ์์คํ ์ ๊ฒฝ์ฐ, ์์ง ์ ์ด์ ์ค์ํ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๋ณดํธ๋์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ์์ง ์ ์ด ์์คํ ์ ECU๋ SC3 ์ด์์ Scalability Class๋ฅผ ์ง์ํด์ผ ํ๋ค
- Memory Protection
- SC4
SC4๋ SC1, SC2, SC3์ ๊ธฐ๋ฅ์ ๋ชจ๋ ์ ๊ณตํ๋ค. .
OS Application
OS ๊ฐ์ฒด๋ค(Task, ISR, Alarm, Schedule table. Counter ๋ฑ)์ ๋ชจ์
OS-Apllication์ ํน์ง
- ๋ชจ๋ OS ๊ฐ์ฒด๋ ๋ฐ๋์ OS-Application์ ์ํด์ผ ํจ
- Resource๋ ์ด๋ App์๋ ์ํด์์ง ์์ง๋ง ๋ช ์์ ์ผ๋ก ์ ๊ทผ์ด ํ์ฉ๋์ด์ผ ํจ
- ํ๋์ OS-Application ๋ด์ ๊ฐ์ฒด๋ ๋ชจ๋ ๋์ผํ core์ ์์ด์ผ ํจ
OS-Application์ ์ํ
- Appication_Accessible
Appication ๊ฐ์ฒด์ ์ ๊ทผ ๊ฐ๋ฅํ ์ํ, OS ์์ ์์ default ์ํ - Application_Restarting
Application ๊ฐ์ฒด์ ์ ๊ทผ ๋ถ๊ฐ๋ฅํ ์ํ, AllowAccess()์ ์ฌ์ฉํ์ฌ ์ ๊ทผ ๊ฐ๋ฅ ์ํ๋ก ๋ณ๊ฒฝ ๊ฐ๋ฅ - Appication_Terminated
Application์ด ์ข ๋ฃ๋์ด ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ ์ํ
OS-Application๊ฐ ์ ๊ทผ ๊ถํ
- ๋์ผ OS-Application ์ ์ํ ๋ชจ๋ ๊ฐ์ฒด ๊ฐ์๋ ์๋ก ์ ๊ทผ ๊ฐ๋ฅ
- ๋ค๋ฅธ OS-Application ์ ๊ฐ์ฒด์ ๋ํ ์ ๊ทผ์ ์ค์ ์ด ํ์
OS-Application์ ์ข ๋ฅ
- Trusted OS-Application
๋ค๋ฅธ Application ๋ค์๊ฒ ์๋น์ค ์ ๊ณต ๊ฐ๋ฅ
๋ชจ๋ํฐ๋ง ๋ฐ ๋ณด์กฐ ๋นํ์ฑํ๋ก ๋์ ๊ฐ๋ฅ
Memory, OS ๋ชจ๋ API์ ๋ฌด์ ํ์ ์ธ ์ ๊ทผ ๊ฐ๋ฅ - NoN-Trusted OS-Application
๋นํน๊ถ ๋ชจ๋์์ ๋์, ์ ํ๋ API ๋ฐ ํ๋์จ์ด ์์์ ์ ๊ทผ ๊ฐ๋ฅ
๐ AutoSAR IOC
IOC(Inter OS-Application communication)๋ ์๋ก ๋ค๋ฅธ OS-Application ๊ฐ์ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด๋ค.
1:1, N:1, N:M ํต์ ์ ์ง์ํ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ํ๋์ memory block์ผ๋ก ๋ง๋ค์ด ์ ๋ฌํ๋ค.
๋ํ MultiCore๋ฅผ ์ง์ํ์ฌ core๊ฐ ์ ๋ณด ๊ตํ๋ ๊ฐ๋ฅํ์ฌ ๋น ๋ฅธ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค.
์ ๋ฌ ๋ฐฉ๋ฒ
- Sender SWC๊ฐ IOC Send API๋ฅผ ํธ์ถ
์์ : ์ฃผํ ์ ์ด SWC์์ ์ฐจ๋ ์๋๋ฅผ ๋ณด๋ด๊ธฐ ์ํด IocSend_SpeedData() ํธ์ถ. - IOC Send API๋ ๋ฐ์ดํฐ๋ฅผ ํ๋์ memory block์ผ๋ก ๋ง๋ค์ด RTE(Runtime Environment)์ ์ ๋ฌ
์์ : IocSend_SpeedData()๋ ํ์ฌ ์๋ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ก์ ๋ด์์ RTE์ ์ ์ก - RTE๋ ๋ฐ์ดํฐ๋ฅผ receiver SWC๊ฐ ์ ์ฅ๋ core๋ก ์ ์ก
์์: RTE๋ ์ ์ก๋ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฐจ๋ ์ ์ด SWC๊ฐ ๋์ํ๋ Core๋ก ์ ์ก - receiver SWC๋ IOC Receive API๋ฅผ ํธ์ถํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์์
์์: ์ฐจ๋ ์ ์ด SWC์์ IocReceive_SpeedData() ํธ์ถํ์ฌ ์๋ ๋ฐ์ดํฐ ์์
๐ AutoSAR ์ง๋จ ๊ธฐ๋ฅ
AutoSAR ์ง๋จ ๊ธฐ๋ฅ์ ์๋์ฐจ์ ์ํ๋ฅผ ์ง๋จํ๊ธฐ ์ํ ๊ธฐ๋ฅ์ด๋ฉฐ ์ง๋จ๊ธฐ๋ CAN ํต์ ์ ํตํด ECU์ ํต์ ํ์ฌ ์ง๋จ ์ ๋ณด๋ฅผ ์์งํ๊ณ , ECU์์ํ๋ฅผ ๊ฒ์ฌํ๋ฉฐ ์๋ 3๊ฐ์ง ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์๋ค.
- DCM (Diagnostic Communication Manager)
์ง๋จ ํต์ ์ ์์ ๋ฐ ์ข ๋ฃ, ๋ฐ์ดํฐ ์ ์ก, ๊ฐ์ข ์ง๋จ ํต์ ์ ์ํ๋ฅผ ๊ด๋ฆฌํ๋ค. - DEM (Diagnostic Event Manager)
์ง๋จ ์ด๋ฒคํธ ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ์์ง, ์ ์ฅ, ๊ณต์ ์ญํ ์ ์ํํ๋ค. - DET (Diagnostic Event Translator)
์ง๋จ ์ด๋ฒคํธ ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ๋ถ์, DTC๋ก ๋ณํ, ์ ๋ณด ๊ณต์ ์ญํ ์ ์ํํ๋ค.
(โป DTC : ์๋์ฐจ์ ๊ณ ์ฅ ์ํ๋ฅผ ๋ํ๋ด๋ ์ฝ๋)
AutoSAR ์ง๋จ ์๋น์ค
AutoSAR ์ง๋จ ์๋น์ค๋ ISO 14229-1:2013์ ์ ์๋์ด ์์ผ๋ฉฐ ์๋์ ๊ฐ์ ์ข ๋ฅ๋ค์ด ์๋ค.
ID | ์๋น์ค | ์ค๋ช |
10 | Diagnostic Session Control | ์ง๋จ ์ธ์ ์ ์์ ๋ฐ ์ข ๋ฃ๋ฅผ ์์ฒญํฉ๋๋ค. |
11 | ECU Reset | ECU๋ฅผ ์ฌ์์ํฉ๋๋ค. |
27 | Security Access | ๋ณด์ ์์ค์ ํ๋ํฉ๋๋ค. |
28 | Communication Control | ์ ์ ๋ฉ์์ง์ ์ ์ก์ ํ์ฉํ๊ฑฐ๋ ์ต์ ํฉ๋๋ค. |
29 | Enable Normal Msg Transmission | ์ ์ ๋ฉ์์ง์ ์ ์ก์ ํ์ฉํฉ๋๋ค. |
3E | Tester Present | ์ง๋จ๊ธฐ๊ฐ ํ์ฌ์ ์ง๋จ ์ํ๋ฅผ ์ ์งํ๊ธฐ ์ํด ์์ฒญํฉ๋๋ค. |
85 | Control DTC Setting | ๊ณ ์ฅ ์ฝ๋์ ๊ธฐ๋ก ์ ๋ฌด๋ฅผ ์กฐ์ ํฉ๋๋ค. |
20 | Stop Diagnostic Session | ์ง๋จ ์ํ๋ฅผ ์ด๊ธฐํํฉ๋๋ค. |
22 | Read Data By Identifier | DID (Data Identifier)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ต๋๋ค. |
23 | Read Memory By Address | ์ฃผ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ์ฝ์ด์ต๋๋ค. |
2E | Write Data By Identifier | DID๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ์ ๊ฐ์ ์๋๋ค. |
3D | Write Memory By Address | ์ฃผ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๊ฐ์ ์๋๋ค. |
19 | Read DTC Information | ๊ณ ์ฅ ์ฝ๋ ์ ๋ณด๋ฅผ ์ฝ์ด์ต๋๋ค. |
14 | Clear Diagnostic Information | ๊ณ ์ฅ ์ฝ๋ ์ ๋ณด๋ฅผ ์ด๊ธฐํํฉ๋๋ค. |
2F | Input Output Control By Identifier | ๋ด๋ถ ๋ก์ง์ ์ ๋ ฅ, ์ถ๋ ฅ ์ ํธ๋ฅผ ๊ฐ์ ๋ก ๋ณ๊ฒฝํฉ๋๋ค. |
31 | Routine Control | ์ ์๋ ๋ก์ง์ ์ํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ป์ต๋๋ค. |
์ฐธ๊ณ
www.autosar.org
'embedded' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Flash Reprogramming ์ ๋ฆฌ (0) | 2024.03.21 |
---|---|
SOC(FPGA/ASIC) ์ ๋ฆฌ (0) | 2024.03.12 |
Simulink ์ ๋ฆฌ (0) | 2024.01.11 |
MATLAB ์ ๋ฆฌ (0) | 2024.01.08 |
[ubuntu] MySQL ํ์ฉ IoT ๋ฐ์ดํฐ ์ ์ด ์ค์ต (0) | 2023.11.23 |