이 장에서 다룰 내용
- MCU와 MPU 선택 기준
- Cortex-M, Cortex-A 계열의 역할 차이
- Flash, RAM, 주변장치, 패키지 선택
- 개발환경과 장기 공급성
- 비용, 성능, 리스크 균형
3.1 MCU와 MPU의 경계
MCU는 장비 제어에 필요한 CPU, Flash, RAM, Timer, ADC, UART, SPI, I2C, CAN 같은 주변장치를 하나의 칩 안에 담고 있다. 전원이 들어오면 비교적 짧은 시간 안에 부팅되고, 펌웨어가 정해진 순서대로 I/O를 초기화하며 장비 상태를 제어한다. Loadport나 Pre-Aligner의 센서 입력, Solenoid 출력, Vacuum 상태 확인, 인터락 처리처럼 빠르고 결정적인 제어에는 MCU가 적합하다.
MPU는 외부 DDR, eMMC, PMIC, Ethernet PHY 같은 주변 회로와 함께 사용되는 고성능 프로세서다. Linux 같은 운영체제를 올릴 수 있고, UI, 파일시스템, 네트워크, 영상 처리, 복잡한 프로토콜 처리에 강하다. 하지만 전원 시퀀스와 부팅 시간이 길고 회로가 복잡해지므로 단순 I/O 제어보드에 무리하게 쓰면 개발과 검증 부담이 커진다.
좋은 기준은 제어의 성격을 보는 것이다. 수 ms 이하의 응답, 정해진 상태 전이, 안전 출력 유지, 단순 통신은 MCU가 유리하다. 화면 표시, 데이터 저장, Web UI, 고속 네트워크, AI 추론, 복잡한 사용자 인터페이스는 MPU가 유리하다. EFEM 장비에서는 상위 Controller나 Vision PC가 MPU/PC 역할을 맡고, Loadport나 Pre-Aligner 내부 보드는 MCU 중심으로 구성되는 경우가 많다.
3.2 필요한 주변장치부터 세기
MCU를 고를 때 가장 먼저 해야 할 일은 클럭이나 코어 이름을 보는 것이 아니라 필요한 주변장치를 세는 것이다. Digital Input 몇 점, Digital Output 몇 점, ADC 몇 채널, PWM 몇 채널, UART 몇 개, CAN이나 Ethernet이 필요한지부터 정리해야 한다.
예를 들어 Loadport 제어보드라면 FOUP 감지, Door Open/Close, Clamp 상태, Docking 상태, Mapping Sensor, Interlock 입력이 필요할 수 있다. 출력으로는 Clamp Solenoid, Door Motor Enable, Lamp, Buzzer, Sensor Power 제어가 필요하다. 통신은 상위 EFEM Controller와 RS-485 또는 Ethernet으로 연결될 수 있고, 개발과 현장 진단을 위해 UART Debug Console이 필요할 수 있다. 이 목록을 만들면 필요한 GPIO와 통신 포트 수가 자연스럽게 나온다.
Pre-Aligner 보드라면 회전축 원점 센서, Wafer 감지, Chuck Vacuum, Edge Sensor 결과, Motor Driver Alarm 입력이 필요하고, Motor Enable, Vacuum Valve, Illumination Control 출력이 필요할 수 있다. 여기에 Encoder, ADC, SPI Sensor, FPGA 인터페이스가 추가되면 Timer, Capture, DMA, SPI 속도도 함께 확인해야 한다.
실무에서는 필요한 수량보다 여유를 두어야 한다. GPIO는 설계 중 LED, Debug Pin, 생산 검사 Pin, 예비 입력으로 늘어나는 경우가 많다. 통신 포트도 제품화 단계에서 생산 Jig, 서비스 Tool, 고객 장비 연결이 추가될 수 있다. 최소 요구사항만 딱 맞는 MCU는 Rev2에서 발목을 잡는다.
3.3 Flash와 RAM 산정
Flash는 펌웨어 코드가 들어가는 공간이고 RAM은 실행 중 변수, Buffer, Stack, Queue, Log 임시 데이터가 들어가는 공간이다. 작은 예제 펌웨어에서는 Flash와 RAM이 거의 문제 되지 않지만 제품 펌웨어에서는 Bootloader, 통신 Stack, Error Log, Firmware Update, 생산 Test Mode가 추가되면서 사용량이 빠르게 늘어난다.
Flash 산정 시에는 Main Firmware만 보지 말고 Bootloader와 업데이트 영역을 함께 고려해야 한다. 이중 이미지 구조를 사용할 경우 현재 실행 이미지와 새로 받을 이미지가 모두 들어갈 공간이 필요하다. CRC, Version, Board Revision 정보, Calibration Data, 설정 저장 영역도 따로 잡아야 한다.
RAM은 통신 Buffer와 Stack에서 문제가 많이 생긴다. RS-485 한 채널만 있을 때는 작아 보여도 Ethernet, CAN, 여러 Sensor Buffer, Event Queue, 로그 Buffer가 들어가면 부족해질 수 있다. RTOS를 사용하는 경우 Task마다 Stack이 필요하므로 Bare-metal보다 RAM 여유를 더 크게 잡아야 한다.
초기 선정에서는 예상 사용량의 2배 이상을 목표로 잡는 것이 좋다. 특히 현장 로그와 진단 기능을 넣을 계획이라면 Flash와 RAM 여유가 제품 유지보수성을 좌우한다.
3.4 Timer, DMA, Interrupt 구조 확인
장비 제어에서 Timer는 단순 Delay용 주변장치가 아니다. 주기 Task, PWM 출력, 입력 Capture, Timeout, Debounce, 통신 방향 제어, Watchdog 주기 관리에 사용된다. MCU 선정 시 Timer 개수와 기능을 반드시 확인해야 한다.
DMA는 CPU가 모든 데이터를 직접 옮기지 않아도 되게 해준다. ADC 연속 샘플링, UART 수신, SPI 센서 읽기, Ethernet Buffer 처리에서는 DMA가 있으면 펌웨어 구조가 안정된다. 특히 Pre-Aligner처럼 Sensor Data와 Motor 상태를 동시에 다루는 보드에서는 DMA와 Interrupt 우선순위가 중요하다.
Interrupt는 빠른 반응을 가능하게 하지만 남용하면 시스템이 불안정해진다. 중요한 입력은 Interrupt로 받을 수 있지만, Interrupt 안에서 긴 처리를 하면 통신과 주기 Task가 흔들린다. MCU 선정 단계에서 Interrupt 우선순위 개수, NVIC 구조, DMA와 Interrupt 충돌 가능성을 확인해야 한다.
3.5 패키지, 납땜성, 생산성
개발자는 성능이 좋은 MCU를 고르고 싶어 하지만 생산에서는 패키지가 더 중요할 때가 많다. BGA 패키지는 핀 수와 성능에서 유리하지만 X-ray 검사, Rework, PCB 층수, 생산 비용이 증가한다. QFP나 QFN은 비교적 생산과 수리가 쉽지만 핀 수와 고속 신호에서 제한이 있다.
산업용 장비 보드는 대량 소비재처럼 수십만 대 생산되는 경우보다, 수십 대에서 수천 대 사이로 오래 생산되는 경우가 많다. 이 경우 납땜성, 수리 가능성, 부품 수급, 대체 부품 가능성이 매우 중요하다. 초기 개발 편의만 보고 구하기 어려운 패키지를 선택하면 양산과 유지보수에서 비용이 커진다.
커넥터, 크리스탈, 전원 IC, 통신 IC와의 배치도 패키지 선택에 영향을 준다. 핀 수가 부족해 외부 I/O 확장 IC를 추가해야 한다면 MCU 가격은 낮아도 전체 BOM과 PCB 면적은 늘어날 수 있다. 반대로 너무 큰 MCU를 쓰면 전원, Layout, 검증 부담이 불필요하게 커진다.
3.6 장기 공급성과 대체 부품 전략
장비용 Embedded Board는 한 번 출하한 뒤 오랫동안 유지보수된다. 따라서 MCU나 MPU는 개발 당시의 성능뿐 아니라 장기 공급성을 확인해야 한다. 제조사의 Product Longevity 정책, 대리점 공급 상황, 대체 가능한 Pin-compatible 제품, 개발환경 유지 여부를 검토해야 한다.
대체 부품 전략은 회로 설계 단계에서 시작된다. 같은 Footprint에서 Flash/RAM 용량만 다른 제품을 사용할 수 있는지, 통신 기능이 빠진 하위 모델로 대체 가능한지, 전원 Pin과 Boot Pin이 호환되는지 확인한다. 펌웨어도 Device ID를 읽어 기능을 제한하거나 설정을 다르게 적용할 수 있도록 만들면 Rev 변경에 유리하다.
부품 선정표에는 가격과 성능뿐 아니라 공급 리스크를 함께 적어야 한다. 특히 특정 고객 장비에 장기간 납품되는 보드는 단종과 Lead Time이 제품 리스크가 된다.
체크리스트
- 필요한 통신 포트 수와 핀 수를 먼저 계산했는가?
- 펌웨어 업데이트와 로그 저장에 필요한 Flash 여유를 확보했는가?
- RAM 사용량을 Stack, Buffer, Queue까지 포함해 산정했는가?
- Timer, DMA, Interrupt 구조가 장비 제어에 충분한가?
- 생산 가능한 패키지와 검사 방법을 고려했는가?
- 장기 공급성과 대체 부품 전략을 선정표에 반영했는가?