System on Chip(SoC)이란?

System on a chip (SoC)

Introduction

컴퓨터 공학이나 전자공학을 공부하지 않았어도 한 번쯤은 들어봤을법한 단어입니다. 처음 들었을 때는 무슨 단어인지 낯설 수도 있을 텐데요, 최대한 쉽게 설명해 보겠습니다. 😆

먼저 시작하기 전에.. 다들 칩이 무엇인지 아시나요? 어떻게 생겼는지 볼까요?

컴퓨터를 열어보면 보이는 CPU에서부터 각종 전자기기를 뜯어보면 저렇게 네모난 반도체 칩들이 들어가 있습니다.

그렇다면 시스템 온 칩(SoC)는 어떻게 생겼는지 볼까요? 애플과 퀄컴의 SoC를 봅시다.

앗.. 똑같군요.. 그도 그럴 것이 시스템 온 칩도 결국은 칩이니까요. 😂

그렇다면 중요한 건! 칩과 SoC의 차이가 무엇인지 아는 것입니다. 어떤 차이가 있는 걸까요?

Chip

먼저 칩에 대해 이야기해볼까요?

여러 종류의 칩이 있겠지만, 대표적으로 CPU를 떠올릴 수 있습니다. 그런데 아시다시피 CPU는 혼자서 무언가를 할 수가 없어요. 잘 생각해 보면 우리가 데스크톱 컴퓨터를 살 때 CPU만 사지 않습니다. CPU는 물론이고 메모리와 그래픽 카드 등 CPU와 함께 일하기 위한 여러 가지 부품들을 같이 사서 하나로 조립합니다. 각 부품들이 모여서 데스크톱이라는 시스템을 완성합니다.

System on a Chip (SoC)

그런데 여기서 드는 의문이 있습니다. 생각해 보면 CPU, 메모리, 그래픽카드 모두 반도체입니다. 그냥 하나의 반도체 칩으로 만들어버리면 안 되는 걸까요? 🤔

이러한 생각으로 프로세서(CPU) 뿐만 아니라 그에 필요한 여러 부품들을 하나의 칩으로 만든 게 시스템 온 칩, SoC입니다. 시스템을 구성하는 대부분 또는 모든 구성 요소들을 하나의 칩으로 만든 것이죠.

Advantages and Disadvantages

여러 개의 부품으로 시스템을 구성하지 않고 하나의 칩으로 만들어버리면 어떤 이익이 있을까요? 왜 요새 SoC를 많이 쓰는 걸까요?

Advantages

SoC로 시스템을 구현하게 되면 아래와 같은 장점이 있습니다.

  • 저전력
  • 더 높은 퍼포먼스
  • 경량화
  • 작은 크기

각 부품들은 서로 데이터를 주 받아야 합니다. 그런데 부품들이 따로따로 멀리 떨어져 있으면 데이터를 주고받기 위해 전기적인 신호, 즉 전류가 멀리멀리 이동해야 합니다. 이 과정에서 전력도 많이 사용하고, 데이터가 오가는 시간도 많이 듭니다. 그런데 시스템을 하나의 칩으로 만들어 버리면 어떨까요? 그냥 하나의 칩에 부품들이 모여있으니 불필요한 데이터 전송도 줄일 수 있고, 따라서 데이터가 이동하는 시간도 줄어드니 계산하는데 걸리는 시간도 줄어들겠죠? 더불어 전체 시스템을 작은 하나의 칩으로 만들어버리니 크기도 작아지고 가벼워집니다.

Disadvantages

아래와 같은 단점들도 있습니다.

첫 번째는 아무래도 개발 비용이죠. 부품 하나하나만 보더라도 설계하고 검증하는데 엄청난 노력이 필요하다는 것은 분명합니다. 그런데 저 부품들을 하나로 묶어서 전체 시스템이 잘 동작하나 확인하려면 더 어렵겠죠. 또, 면적이 큰 칩을 만들면 수율에 문제가 있을 수도 있고요. 결론적으로 시스템이 복잡해지면 개발은 더 어려워집니다.

두 번째는 발열입니다. 전력을 적게 쓰니 전체 시스템의 발열은 줄겠지만, 문제는 그 발열이 작은 하나의 칩에서 발생한다는 것입니다. SoC 설계의 중요한 고려 사항 중 하나가 발열입니다.

세 번째는 시스템 사양 변경이 안됩니다. 부품들이 따로 있을 때는 그때그때 개인의 필요에 따라 각 부품을 원하는 사양으로 구성할 수 있습니다. 그러나 SoC는 소비자가 마음에 안 든다고 부품 일부를 바꿀 수 없습니다. 그냥 주는 대로 사용해야 하는 거죠. 이렇게 시스템 사양을 마음대로 바꾸지 못한다는 게 단점일 수 있습니다.

Leave a comment