SoC란 무엇인가 — 스마트폰과 라즈베리파이의 핵심 두뇌
단일 실리콘 칩에 CPU·GPU·NPU·메모리 컨트롤러를 통합한 SoC의 개념, 분리형 PC 및 MCU와의 차이점, 스마트폰과 엣지 기기에서 SoC를 쓰는 이유를 알아봅니다.
무료 공개 · 최근 수정
손톱만 한 실리콘 칩 하나가 운영체제와 4K 화면을 동시에 구동한다
스마트폰이나 신용카드 크기의 라즈베리파이를 분해해 보면 거대한 냉각팬이나 분리된 확장 카드 없이 손톱만 한 검은색 사각형 칩 하나가 기판 한가운데를 차지하고 있습니다. 두께 8 mm 안팎의 얇은 스마트폰이 3D 그래픽 게임을 매끄럽게 렌더링하고, 4K 카메라 영상을 실시간으로 압축하며, 5G 통신과 인공지능 안면 인식을 동시에 처리하는 광경은 거대한 데스크톱 본체에 익숙한 사람에게 놀라운 기술적 결과물입니다.
스마트폰, 태블릿, 차량용 인포테인먼트, 드론과 이동형 로봇의 엣지 컴퓨터는 모두 이 작은 통합 칩을 중심 두뇌로 삼아 동작합니다. 하지만 아두이노나 PC 조립 경험만 있는 개발자가 엣지 장치 개발에 입문하면 여러 의문에 부딪힙니다. 리눅스가 돌아가는데 왜 일반 PC처럼 RAM을 슬롯에 꽂아 증설할 수 없는지, 마이크로컨트롤러(MCU)와는 무엇이 다르기에 복잡한 디바이스 트리와 보드 지원 패키지(BSP)가 필요한지 혼란을 겪습니다.
단일 칩 시스템의 물리적 구조와 동작 원리를 파악하고 나면, 엣지 하드웨어의 설계 제약을 이해하고 프로젝트 요구 조건에 맞는 적절한 프로세서를 선택할 수 있습니다.
분리형 메인보드 구조는 배선 거리 때문에 모바일 기기에서 전력과 공간을 낭비한다
전통적인 데스크톱 컴퓨터는 마더보드라는 넓은 인쇄회로기판(PCB) 위에 중앙처리장치(CPU) 소켓, 메모리(RAM) 슬롯, 그래픽 카드용 PCIe 슬롯, 저장장치 인터페이스를 각각 독립된 부품으로 장착합니다. 이러한 조립식 PC 아키텍처는 고장 난 부품을 개별적으로 교체하거나 최신 그래픽 카드로 업그레이드할 수 있는 유연성을 제공합니다.
하지만 부품이 기판 위에 물리적으로 떨어져 있으면 부품 사이를 연결하는 구리 배선의 길이가 수 센티미터에서 수십 센티미터까지 길어집니다. 고주파 디지털 신호가 긴 도선을 통과할 때는 신호선 자체의 저항과 부유 정전용량(Parasitic Capacitance) 때문에 신호가 감쇠되고 형태가 일그러집니다. 이를 보상하고 정확한 신호를 전달하려면 신호 구동기의 전압과 전류를 높여야 하며, 이는 곧 수십에서 수백 와트(W)에 이르는 막대한 전력 소모와 심각한 발열로 이어집니다.
또한 전기 신호가 기판 선로를 이동하는 물리적 전송 속도의 한계 때문에 칩과 부품 간 통신 지연(Latency)이 필연적으로 발생합니다. 가벼운 배터리 하나로 하루 종일 동작해야 하고 바지 주머니에 들어갈 만큼 얇아야 하는 스마트폰이나 휴대용 단말기에는 이러한 분리형 부품 구조를 도저히 적용할 수 없습니다.
모바일 혁명과 초미세 공정이 단일 칩 컴퓨터를 탄생시켰다
1990년대 후반 개인 휴대 정보 단말기(PDA)와 초창기 휴대폰이 대중화되면서, 손바닥 크기의 기판 안에 컴퓨터 시스템 전체를 욱여넣어야 하는 엄격한 제약이 대두되었습니다. 당시의 분리형 칩셋 구조로는 배터리 사용 시간과 휴대성을 모두 만족하기 어려웠습니다.
동시에 반도체 제조 공정이 수백 나노미터 이하로 미세화되면서 실리콘 웨이퍼 한 장에 수억 개 이상의 트랜지스터를 집적할 수 있는 기술적 도약이 일어났습니다. 과거에는 별도의 독립된 칩으로 존재하던 CPU, 그래픽 가속기, 오디오 처리기, 메모리 제어 회로를 하나의 실리콘 조각(Die) 위에 한꺼번에 인쇄하는 공학적 혁신이 가능해졌습니다.
SoC는 컴퓨터의 모든 핵심 구성 요소를 단일 실리콘 다이에 집적한다
시스템 온 칩은 컴퓨터 시스템을 구성하는 연산 장치, 그래픽 처리기, 신경망 가속기, 입출력 인터페이스 및 메모리 제어 회로를 단 하나의 실리콘 조각에 집약한 통합 집적회로입니다.
이처럼 온전한 컴퓨터 한 대의 기능을 칩 하나에 통째로 집적한 형태를 시스템 온 칩(System on Chip; SoC)이라고 부릅니다.
SoC 내부에서는 부품 간 거리가 수 센티미터에서 수 마이크로미터(µm) 단위로 축소됩니다. 배선 길이가 수천 분의 일로 줄어들면서 신호를 전송할 때 충전해야 하는 선로 용량이 극적으로 작아집니다. 그 결과 훨씬 낮은 전압(1 V 미만)과 적은 전류만으로도 기가헤르츠(GHz) 단위의 초고속 데이터 통신이 가능해져 소비 전력이 획기적으로 줄어듭니다.
SoC는 단일 실리콘 위에 다음과 같은 핵심 기능 블록들을 단계적으로 결합합니다.
- 다중 코어 CPU: 복합 운영체제(Linux, Android)의 시스템 호출을 처리하고 범용 응용 소프트웨어를 실행합니다.
- 그래픽 처리 장치(GPU): 3D 게임 그래픽을 계산하고, 디스플레이 화면의 픽셀 합성과 고해상도 UI 출력을 전담합니다.
- 신경망 처리 장치(NPU): 이미지 분류, 음성 인식, 객체 탐지와 같은 딥러닝 텐서 행렬 연산을 CPU보다 수십 배 빠른 속도와 높은 전력 효율로 처리합니다.
- 이미지 신호 처리기(ISP): 카메라 렌즈를 통해 들어온 원시 이미지 센서의 노이즈를 제거하고 색상을 보정하여 선명한 사진과 영상을 만듭니다.
- 비디오 코덱 하드웨어: H.264, H.265, AV1 형식의 고화질 비디오를 CPU 부하 없이 하드웨어 가속기로 직접 인코딩하고 디코딩합니다.
- 통합 메모리 컨트롤러: CPU, GPU, NPU가 번거로운 데이터 복사 과정 없이 단일 물리 메모리를 고속으로 공유할 수 있도록 중재합니다.
이처럼 CPU와 GPU 등 다양한 연산 장치가 하나의 물리 메모리 풀(Pool)을 공유하여 메모리 간 불필요한 데이터 복사를 없애는 방식을 통합 메모리(Unified Memory) 구조라고 부릅니다. 일반 PC에서는 CPU가 연산한 데이터를 그래픽 카드로 보낼 때 PCIe 버스를 통해 비디오 RAM으로 복사해야 하지만, 통합 메모리 구조의 SoC에서는 메모리 주소 포인터만 넘겨주면 GPU나 NPU가 즉시 해당 데이터에 접근합니다.
내부 초고속 버스가 나노초 단위로 코어 간 데이터를 교환한다
SoC 내부에서는 외부 핀이나 메인보드 선로를 거치지 않고 실리콘 다이 안에 배치된 초고속 온칩 상호연결망을 통해 각 연산 블록이 데이터를 주고받습니다.
분리형 데스크톱 컴퓨터와 단일 칩 SoC의 물리적 연결 방식과 데이터 통신 경로의 차이를 도면으로 확인합니다.
그림: 분리형 PC의 메인보드 버스와 SoC 단일 칩 내부의 고속 상호연결 비교
도면 좌측의 분리형 컴퓨터 구조에서는 CPU와 분리형 확장 부품(RAM, 그래픽 카드)이 메인보드의 긴 버스 선로를 거쳐 신호를 전달합니다. 물리적 거리가 멀어 높은 구동 전류가 필요하고 신호 전달 지연이 발생합니다. 반면에 우측의 SoC 구조에서는 다중 연산 코어와 온칩 상호연결망이 하나의 칩 테두리 안에서 마이크로미터 단위의 초미세 내부 배선으로 직결되어 있습니다.
[참고] NoC와 온칩 상호연결망의 진화
초기 SoC는 모든 내부 블록이 하나의 공유 버스(예: ARM AMBA AHB/APB)에 매달려 신호를 주고받았습니다. 하지만 칩 안에 들어가는 코어 수가 수십 개로 늘어나면서 데이터 병목 현상이 심해졌습니다. 현대의 고성능 SoC는 컴퓨터 네트워크의 패킷 라우팅 개념을 실리콘 내부에 구현한 네트워크 온 칩(NoC; Network on Chip) 아키텍처를 사용합니다. 각 코어가 독점적인 가상 통로를 통해 다른 블록과 동시에 충돌 없이 데이터를 전송합니다.
MCU는 기기 제어에 특화되어 있고 SoC는 완전한 운영체제를 구동한다
아두이노 보드에 탑재되는 마이크로컨트롤러도 칩 하나에 부품을 모아 놓았다는 점에서는 비슷해 보이지만, 두 장치는 설계 목적과 아키텍처에서 근본적인 차이가 있습니다.
모터 구동이나 센서 신호 감지처럼 정해진 물리 장치를 실시간으로 제어하기 위해 연산 코어와 작은 메모리 및 주변장치를 통합한 칩을 마이크로컨트롤러(MCU)라고 부릅니다.
MCU는 수십에서 수백 MHz 클럭으로 동작하며 내장 메모리(SRAM)가 수십 킬로바이트(KB)에서 수 메가바이트(MB) 수준에 불과합니다. 가장 결정적인 차이는 가상 메모리를 지원하는 하드웨어 메모리 관리 장치(MMU; Memory Management Unit)의 유무입니다. MCU는 MMU가 없기 때문에 물리 메모리 주소에 직접 접근하며, 리눅스나 안드로이드처럼 프로세스 격리가 필요한 다중 사용자 운영체제를 구동할 수 없습니다. 대신 운영체제 없이 동작하는 베어메탈(Bare-metal) 코드나 실시간 운영체제(RTOS) 위에서 마이크로초(µs) 단위의 확정적 반응 속도를 제공합니다.
반면에 SoC는 1.5 GHz에서 3.5 GHz에 이르는 고성능 다중 코어 64비트 CPU와 고도화된 하드웨어 MMU를 기본 탑재하고 있습니다. 기가바이트(GB) 단위의 외부 고속 LPDDR DRAM과 통신하며, 수백 개의 프로세스가 메모리를 안전하게 격리된 채 실행되는 완전한 리눅스 커널을 구동합니다.
| 비교 항목 | 마이크로컨트롤러 (MCU) | 시스템 온 칩 (SoC) | 분리형 데스크톱 PC |
|---|---|---|---|
| 주요 목적 | 특정 물리 장치 제어 및 실시간 반응 | 복합 OS 구동 및 고성능 멀티미디어 연산 | 범용 고성능 연산 및 확장성 극대화 |
| CPU 클럭 | 대략 16 MHz ~ 480 MHz | 대략 1.5 GHz ~ 3.5 GHz | 대략 2.5 GHz ~ 5.5 GHz |
| MMU 탑재 | 없음 (물리 주소 직접 접근) | 필수 탑재 (가상 메모리 지원) | 필수 탑재 (가상 메모리 지원) |
| 주 메모리 | 칩 내장 SRAM (수 KB ~ 수 MB) | 외부 LPDDR DRAM (수 GB ~ 수십 GB) | 분리형 DDR DIMM (수십 GB ~ 수백 GB) |
| 운영체제 | 운영체제 없음(베어메탈) 또는 RTOS | Linux, Android, iOS, Windows on ARM | Windows, Linux, macOS |
| 부팅 시간 | 수 마이크로초 ~ 수 밀리초 (즉시 동작) | 수 초 ~ 수십 초 | 수 초 ~ 수십 초 |
| 소비 전력 | 수 밀리와트(mW) ~ 수백 mW | 대략 2 W ~ 30 W | 대략 65 W ~ 500 W 이상 |
| 부품 교체 | 불가능 | 불가능 | CPU, RAM, GPU 개별 교체 가능 |
| 대표 제품 | STM32, RP2040, ATmega328P | Raspberry Pi BCM2711, Apple M4, Snapdragon 8 | Intel Core i7 데스크톱, AMD Ryzen PC |
스마트폰과 라즈베리파이가 각기 다른 용도의 SoC를 탑재한다
상용 하드웨어 제품들은 사용 목적과 가격대에 맞춰 서로 다른 사양과 기능 블록으로 구성된 SoC를 탑재합니다.
대표적인 싱글보드 컴퓨터인 라즈베리파이 4B는 브로드컴(Broadcom) 사의 BCM2711 SoC를 심장으로 사용합니다. BCM2711 칩 내부에는 1.5 GHz로 동작하는 쿼드코어 ARM Cortex-A72 CPU, OpenGL ES 3.1을 지원하는 VideoCore VI 3D 그래픽 코어, 4K 60fps 비디오 하드웨어 디코더, 기가비트 이더넷 제어 회로 및 PCIe 2.0 버스가 집적되어 있습니다. 이 SoC는 기판 위에 납땜된 LPDDR4 SDRAM 칩과 고속 신호 버스로 직접 통신하며, 데스크톱 모니터 2대를 동시에 연결해 리눅스 데스크톱 환경을 부드럽게 구동합니다.
스마트폰에 들어가는 플래그십 SoC(예: Qualcomm Snapdragon, Apple A 및 M 시리즈)는 연산 집적도가 더욱 높습니다. 무거운 작업을 처리하는 고성능 코어와 백그라운드 작업을 처리하는 고효율 코어를 묶은 big.LITTLE 구조의 CPU를 사용합니다. 여기에 초당 수십조 회(TOPS)의 인공지능 연산을 전담하는 NPU, 5G 이동통신 모뎀 및 Wi-Fi 7 통신 모듈까지 단일 실리콘 패키지에 통합하여 배터리 소모를 극도로 억제합니다.
극대화된 통합 효율은 부품 업그레이드와 수리의 불가능성을 대가로 치른다
SoC의 압도적인 소형화와 높은 전력 효율 뒤에는 하드웨어 확장성과 유지보수성의 완전한 상실이라는 트레이드오프가 존재합니다.
첫째, 개별 부품의 교체와 사양 업그레이드가 불가능합니다. 조립식 PC에서는 메모리가 부족하면 RAM을 추가하고 고사양 게임이 버거우면 그래픽 카드만 바꿀 수 있습니다. 하지만 SoC 기반 장치는 CPU, GPU, 메모리 컨트롤러가 실리콘 수준에서 영구적으로 고정되어 있으므로 구매 후 성능을 업그레이드할 방법이 없습니다.
둘째, 열 밀집 현상에 따른 스로틀링(Throttling)입니다. 고성능 CPU, GPU, NPU가 불과 12제곱센티미터(cm²)의 좁은 실리콘 면적에 밀집되어 동시에 최대 부하로 가동되면 좁은 면적에서 막대한 열이 집중 발생합니다. 별도의 냉각팬을 달기 어려운 스마트폰이나 밀폐형 엣지 장비에서는 내부 온도가 8090°C를 넘어서면 칩 파손을 막기 위해 강제로 동작 클럭을 낮추는 서멀 스로틀링이 일어납니다.
셋째, 천문학적인 초기 칩 개발 비용입니다. 기성 반도체를 PCB 기판 위에서 조합하는 회로 설계와 달리, 새로운 커스텀 SoC를 설계하고 웨이퍼 노광용 포토마스크를 제작하는 테이프아웃(Tape-out) 단계에는 수백억 원에서 수천억 원의 초기 자본이 투입됩니다. 따라서 수천만 대 이상의 대량 생산이 보장되지 않는 산업용 소량 생산 프로젝트에서는 독자 SoC를 만드는 대신 기존에 양산된 기성 SoC나 시스템 온 모듈(SoM; System on Module)을 구매해 사용하는 것이 경제적입니다.
프로젝트 요구 사항에 맞는 컴퓨팅 계층을 선택한다
임베디드 시스템이나 하드웨어 연동 프로젝트를 기획할 때는 전력 예산, 연산 복잡도, 크기, 물리 장치 제어 주기를 종합적으로 검토하여 올바른 하드웨어 계층을 선택해야 합니다.
소형 배터리로 수개월 이상 동작해야 하거나, 센서 데이터를 마이크로초 단위로 정밀하게 읽고 모터 각도를 즉시 제어해야 한다면 마이크로컨트롤러를 도입하는 것이 알맞습니다.
라즈베리파이나 스마트폰처럼 화면에 고해상도 그래픽 UI를 띄우고, 파이썬이나 C++로 작성된 엣지 인공지능 모델을 실행하며, 리눅스 네트워크 스택을 온전히 활용해야 한다면 시스템 온 칩 기반 컴퓨터를 선택해야 합니다.
마지막으로 수백 와트의 전력을 소모하더라도 실시간 대형 모델 파인튜닝, 다중 고성능 GPU 연산, 자유로운 부품 증설과 지속적인 하드웨어 유지보수가 핵심이라면 조립식 PC나 워크스테이션 아키텍처를 구성하는 것이 적절합니다.
참고 문서
- ARM Architecture Reference Manual (System-on-Chip 아키텍처 공식 안내): https://developer.arm.com/documentation/ddi0487/latest/
- Raspberry Pi 4 BCM2711 SoC 하드웨어 문서: https://www.raspberrypi.com/documentation/computers/processors.html#bcm2711
- Texas Instruments (MCU와 프로세서 아키텍처 비교 가이드): https://www.ti.com/processors/overview.html
설명이 어렵거나 잘못된 부분을 발견하셨나요?
문서 수정 의견 보내기