본 게시물은 프로그래머스 <시스템 소프트웨어 데브코스 미리보기> 세미나를 바탕으로 작성된 것입니다.
SoC 업체에 대해 설명해주셨다.
10배 이상 엔지니어 증가 예상
전기자동차 소프트웨어는 어떻게 개발할까?
인포테인먼트 시스템: 운전자와 관련된 UX
자율주행
마이컴: 엑셀과 브레이크와 직접적으로 연관
주요 요소 기술: CAN, Cyber Security, ISO26262
전기자동차 관련 시스템 소프트웨어 스택은?
Bootloader - Little Kernel, uboot
Linux kernel Driver (디바이스 드라이버)
HAL 라이브러리
각 분야에 따라 가중치만 다를 뿐이지 위의 요소 기술에서 크게 벗어나지 않는다! (특히나 위의 세 가지)
동작하지 않는 상태에서 동작하는 상태로 전이하는 브링업 > 하드웨어 제어하는 드라이버 구현 > (구현한 드라이버가 정상적으로 동작하는지 인증 시작) > Bug Fix > Factory > 사후관리
✅ 시스템 반도체의 이해
프로그래밍 언어 사용해 RTL 설계(IP 로직) > 설계한 결과를 검증하는 FPGA 검증 > 공정개발 > Packaging, Bring-Up(패키징 결과를 Bring up), 특성을 바꿔가며 특성평가 > 칩이 동작하면 Enginnering sample 을 customer 에게 넘김
IP란?: Intellectual Property 의 약자로 재사용 가능하도록 기능을 모듈화해 설게한 Core Design
SoC 구성 요소와 생태계
IP업체 (arm, synopsys, arasan)
SoC 업체: NVIDIA
파운드리 업체: Samsung
SoC 벤더 개발 프로세스 및 생태계
펩리스 업체에서 IP 설게, BSP 개발(드라이버)
안정화된 칩을 Customer(OEM) 에게 넘겨 최종 SW 개발.
자율주행 설계 플랫폼을 보자.
하이퍼바이저 - DRIVE OS(Linux, QNIX) - DriveWorks - 애플리케이션
따라서 Automotive 시스템 소프트웨어 개발에 대한 스택은 다음과 같다.
<시스템 SW의 특징>
1. 기본 Background 지식이 부족하면 개발이 어려움
2. 기본 구조가 크게 바뀌지 않음