임베디드기사
보이기
임베디드기사는 2011.11.23 발표된 고용노동부령 제35호에 따라 2013년부터 자격시험을 진행 중인 한국산업인력공단에서 인증하는 임베디드 시스템 관련 국가기술자격증이다.
매년 정기기사시험 4회차 시기(필기 9월 응시, 실기 11월 응시)에 한 번만 시행된다.
필기에서 4과목 20문제씩 각 하위 과목에서 과락 없이 평균 60점 이상, 실기에서 전부 60점을 넘겨야 자격을 취득한다.
주요 응시 과목 및 관련 개념
필기 시험 하위 과목 별로 구분하였다.
임베디드 하드웨어 과목
- 논리 회로
- 컴퓨터 구조와 마이크로프로세서
- CPU: 고성능 지향 CPU는 MPU라고 부르기도 한다.
- SoC(System On Chip): 단일한 칩에 마이크로컨트롤러(MCU)와 기타 제어용 칩을 모두 통합한 것
- 메모리 계층 구조
- 집적 회로
- 구조적 전자 회로 구분
- RTL(Resistor-Transistor Logic): 신호 입력부에 저항을 달고, 그 뒤에 스위치 역할의 트랜지스터를 단 로직, 트랜지스터를 최소로 쓰나 저항으로 인한 전력 소모와 발열이 높고 입력 신호의 잡음 처리와 베이스 전류 억제가 잘 안 되기에 신호의 팬인의 제약이 크다(많아야 3개 입력 수용 가능).
- DTL(Diode-Transistor Logic): 저항에 다이오드까지 추가하여 정류 및 베이스 전류/잡음 억제까지 수행하는 개선된 회로. 그에 따라 수용 가능한 입력 신호(팬인)이 증가하였다.
- TTL(Transistor-Transistor Logic): RTL 및 DTL의 단점이었던 전하 이동 지연으로 인한 신호 전달 지연을 다이오드 대신 트랜지스터를 써서 접지를 위한 스위칭으로 빠르게 전하를 빼내어 신호 지연을 줄인 전자 회로. 집적 회로의 시대가 개막한 이후 현재까지도 자주 쓰인다.
- ECL(Emitter-Coupled Logic): 전압차를 증폭하는 차동 증폭기를 이용해 TTL처럼 전하를 빠르게 빼내어 신호 전달 시간을 단축한 고속 동작 회로. TTL의 대안으로 쓸 수 있으나 TTL 대비 소자 배치가 상대적으로 복잡하다.
- Open Collector, CML(또는 SCL) 등 다른 유형의 전자 회로도 있다.
- 마이크로컨트롤러(MCU): 고성능을 지향하는 CPU(MPU라고도 한다)와 달리 저전력으로 동작하며 장치 제어를 목적으로 하는 마이크로프로세서
- I/O
- 각종 디지털 신호를 전달하는 버스
- I/O Mapped I/O(또는 Programmed I/O)과 Memory-Mapped I/O
- 폴링(IO)와 인터럽트(IO)
- DMA와 I/O 프로세서
- 데이지 체인
- 데이터시트
- 클럭 발진기: 석영 수정 발진기나 MEMS(미세 전자기계 시스템) 발진기를 사용한다.
- I/O 규격
- GPIO(General-Purpose Input/Output): 목적이 정해지지 않은 프로세서 상의 물리적 핀. 3.3V의 전기 신호 입출력이라면 전부 받고 내보낼 수 있어 같은 전압의 신호를 처리하는 모든 통신 규격을 수용할 수 있다. 전압 인가만 조심하면 그 외에 정해진 사용법이 없기 때문에 회로 설계자가 IC 칩에 GPIO를 통한 신호를 보낼 때 발생할 수 있는 모든 상황에 직접 대응해야 한다(통신 절차의 설계와 발생 가능한 예외 상황을 오로지 설계자가 전부 감안해야 한다).
- RS232 시리얼 포트
- UART
- I2C
- SPI
- USB
- LVDS: 고성능 ADC/FPGA와 DSP 인터페이스를 위해 2001년 발표된 통신 규격. 직렬 레인 개념을 사용하며 송신기로 1.20V 3.5mA 전류를 보내면 도선 하나당 수신기에 350mW의 전력으로 신호가 보내지는 구조다. 이 때 전위가 반전 관계인 두 개의 도선에 신호를 동시에 보내며 전위차 변화를 비교하여 디지털 데이터를 구분하기에 100옴의 저항을 두 도선 사이에 연결한다.
- JESD204: JEDEC[1]에서 발표한 ADC - 디지털 프로세서 간의 통신 규격이다. 단일 또는 다중 레인 간 차동 신호 쌍에 대한 동기화 기능 등을 지원하며 최대 32Gb/s의 데이터 통신 속도를 지원한다.
- 신호처리
- 네트워크 통신 규격
임베디드 펌웨어 과목
리눅스 채용 시스템을 주 기준으로 본다.
- 펌웨어
- 디바이스 드라이버 : 리눅스의 경우 파일 기반 문자 드라이버, 파일 시스템 기반 블록 드라이버, 네트워크 드라이버를 가진다.
- 커널 모듈 프로그래밍: SELinux(리눅스의 오픈 소스 보안 모듈, 방화벽 등의 기능을 제공한다) 등 커널에 부착할 모듈을 프로그래밍할 수 있다.
- API(운영 체제)
- 로더
- 리눅스 커널(저수준 시스템제어 파트)
- 전원 관리
- APM 전원 관리 규격
임베디드 플랫폼 과목
- 운영체제: 리눅스 고수준 시스템 제어 기능을 다룬다.
- 컴퓨터 네트워크 이론
- POSIX 소켓 구조
- OSI 7계층 구조
- 클라이언트(컴퓨터 네트워크)와 서버(컴퓨터 네트워크)
- DHCP, ARP
- TCP, UDP
- IP
- 임베디드 플랫폼 개발
임베디드 소프트웨어 과목
- 자료구조와 알고리즘
- 배열, 스택, 큐, 트리, 연결 리스트(링크드 리스트)와 그래프 이론
- C와 C++ 프로그래밍 언어 : C99와 C++11이 주로 쓰인다.
- JAVA 프로그래밍 언어와 객체 지향 프로그래밍
- 영상처리
- 이미지 포맷, 동영상 포맷, 음성 데이터 포맷
- 프로그램 개발 프로세스(소프트웨어공학)
- 시스템 장애 대응
- ↑ 보통 DDR SDRAM이나 HBM 같이 RAM의 데이터 통신 규격을 정하는 것으로도 대중에게 알려져 있지만 정확히는 IC 칩 간 통신 규격을 정하는 단체다.