임베디드 시스템은 특정 기능을 수행하도록 설계된 전자 장치 안에 포함된 컴퓨팅 시스템을 의미한다. 일반적인 범용 컴퓨터와 달리, 임베디드 시스템은 제한된 하드웨어 자원(예: 프로세서 속도, 메모리 용량, 전력 소비) 내에서 안정적이고 실시간으로 동작하도록 최적화된다.
정의 및 주요 특징
- 전용 목적: 하나 혹은 소수의 특정 작업을 수행하기 위해 설계된다.
- 제한된 자원: 저전력, 소형 폼팩터, 제한된 메모리·저장소를 갖는다.
- 실시간성: 작업 수행 시 정해진 시간 내에 응답해야 하는 경우가 많다(실시간 임베디드 시스템).
- 고신뢰성·안정성: 장기간 가동 및 오류에 대한 내성이 요구된다.
- 하드웨어·소프트웨어 통합: 마이크로컨트롤러·마이크로프로세서, 센서·액추에이터, 그리고 해당 하드웨어를 제어하는 펌웨어·임베디드 소프트웨어가 결합된 형태로 구현된다.
구성 요소
| 구분 | 설명 |
|---|---|
| 프로세서 | 마이크로컨트롤러(MCU)·마이크로프로세서(MPU) 등. ARM Cortex‑M, AVR, PIC 등 다양한 아키텍처가 사용된다. |
| 메모리 | 플래시(프로그램 저장), RAM(실행 중 데이터 저장) 등. 용량은 수십 KB부터 수 MB 수준까지 다양하다. |
| 입출력 인터페이스 | GPIO, UART, SPI, I²C, CAN, Ethernet, USB 등 다양한 통신 프로토콜을 지원한다. |
| 센서·액추에이터 | 온도·압력·가속도 센서, 모터·밸브·LED 등 실제 물리적 동작을 수행한다. |
| 전원 공급 | 배터리, 전압 레귤레이터, 전력 관리 회로 등. 저전력 설계가 중요하다. |
| 소프트웨어 | 펌웨어, 실시간 운영체제(RTOS), 드라이버, 미들웨어·앱 로직 등. C, C++, 어셈블리, Rust 등이 주로 사용된다. |
적용 분야
- 가전제품: 스마트 TV, 세탁기, 냉장고 등
- 자동차: 엔진 제어 모듈(ECU), 차선 유지 보조, 에어백 시스템
- 산업 자동화: PLC, 로봇 제어, 공정 모니터링
- 통신: 라우터, 모뎀, IoT 게이트웨이
- 의료: 심박 모니터, 인슐린 펌프, 휴대형 진단기기
- 소형 전자기기: 스마트워치, 드론, 웨어러블 센서
개발 흐름
- 요구사항 정의 – 실시간성, 전력·공간 제약, 안전/인증 요구사항 등 명시.
- 하드웨어 설계 – 프로세서 선택, 회로도·PCB 설계, 부품 배치.
- 소프트웨어 설계 – 부트 로더·펌웨어, RTOS 선택·구성, 애플리케이션 로직 구현.
- 시뮬레이션·프로토타이핑 – 회로 시뮬레이터, 하드웨어 디버거, 통합 테스트.
- 검증·인증 – 기능 테스트, 전자파 적합성(EMC), 안전 규격(예: ISO 26262) 등.
- 양산·지원 – 생산 라인 이전, 펌웨어 업데이트·보안 관리.
역사적 배경
- 초기 사례는 1960~1970년대의 우주 항법 컴퓨터(예: 아폴로 유도 컴퓨터)와 1970년대의 자동차 전자 제어장치에 해당한다.
- 1980년대부터 마이크로컨트롤러 비용이 낮아지면서 가전·산업 분야에 광범위하게 도입되었으며, 1990년대 이후에는 인터넷·통신 기술과 결합해 “IoT(Internet of Things)”라는 새로운 패러다임을 형성하였다.
표준 및 규격
- IEEE 1149.1 (JTAG) – 디버깅·테스트 인터페이스
- MISRA C – 자동차·산업용 안전 코딩 규칙
- ISO/IEC 61508, ISO 26262 – 기능 안전(시스템 수준) 규격
- POSIX 기반 RTOS(FreeRTOS, VxWorks, QNX) 등은 임베디드 환경에서도 표준 API를 제공한다.
참고 문헌(공신력 있는 출처)
- Embedded Systems: Design and Applications – Jonathan W. Valvano (2020)
- Real-Time Embedded Systems – Qing Li, Caroline Yao (2005)
- Wikipedia “Embedded system” (2024년 8월 기준)
(본 내용은 현재까지 공인된 기술·학술 자료에 근거한 객관적인 서술이며, 확인되지 않은 정보는 포함하지 않았다.)