스킬캠퍼스

오늘 끝나면

칩이 하는 일

  • 칩이 하는 일의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 칩이이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

CPU·GPU·메모리가 한 클럭에 무엇을 하나 — 최종 목표 미리보기 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

반도체 설계 · 01

칩이
하는 일

칩 속에는 세 가지밖에 없다. 처리하는 곳, 보관하는 곳, 드나드는 곳이다.
입력을 받아 처리해서 출력을 낸다. 그 일이 한 클럭마다 반복된다.
이 코스의 끝은 내가 설계한 칩, MyChip이다.

P.01반도체 설계 · 01

칩은 세 가지 일만 한다

칩이라 하면 머리카락보다 가는 회로가 떠오른다. 그런데 하는 일은 셋뿐이다.

칩은 데이터를 처리하고, 보관하고, 바깥과 드나든다.
처리는 연산 장치가, 보관은 메모리가, 드나듦은 I/O가 맡는다.

처리 장치도 둘로 갈린다.
복잡한 일을 순서대로 하는 쪽이 CPU이고, 같은 일을 한꺼번에 하는 쪽이 GPU이다.
이 셋의 비율을 정하는 것이 칩 설계의 첫 결정이다.

처리 · 보관 · 드나듦
칩이 하는 일, 셋뿐
처리CPU · GPU
데이터를 굴린다
보관메모리
데이터를 잠깐 둔다
드나듦I/O
바깥과 주고받는다
이 셋의 비율을 정하는 게 설계의 첫 결정
P.02반도체 설계 · 01

CPU = 순차, GPU = 병렬

CPU와 GPU는 빠르고 느림의 차이가 아니다. 일하는 방식이 다르다.

CPU는 소수 정예다. 똑똑한 코어 몇 개가 복잡한 일을 한 줄씩 순서대로 처리한다.
분기와 조건, 예외가 많은 일에 강하다.

GPU는 대군이다. 단순한 코어 수천 개가 똑같은 일을 한꺼번에 처리한다.
화소 100만 개에 같은 계산을 거는 그래픽과 AI 연산에 강하다.

픽셀 16칸을 밝게 만드는 일을 보면 차이가 분명하다.
CPU는 한 칸씩 16번 처리하고, GPU는 4칸씩 한 번에 처리한다. lane이 동시에 움직이는 것이다.
이 코스의 기본 머신은 16비트 CPU에 4 lane GPU다. 이 lane 수가 나중에 MyChip의 GPU 폭이 된다.

한 명 vs 여럿에게 같은 일을 시킨다
픽셀 16칸 밝히기
CPU · 순차한 칸씩 · 16번
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

코어 1개가 1→16 순서대로

GPU · 병렬4 lane · 4번
1
2
3
4
1
2
3
4
1
2
3
4
1
2
3
4

lane 4개가 가로 한 줄을 한꺼번에

기본 머신 = 16비트 CPU + 4 lane GPU
P.03반도체 설계 · 01

한 클럭에 신호가 흐른다

칩 안에서는 모든 일이 박자에 맞춰 일어난다. 그 박자가 클럭이다.

클럭은 1초에 수십억 번 똑딱이는 메트로놈이다.
한 번 똑딱일 때마다 신호가 한 칸 앞으로 흐른다. 입력에서 처리로, 처리에서 보관으로 옮겨 간다.

그래서 칩은 한 박자에 모든 것을 끝내지 않는다.
작은 한 걸음을 수십억 번 빠르게 반복해서 큰 일을 끝낸다.
3GHz는 1초에 30억 박자라는 뜻이다. 빠르다는 것은 곧 박자가 잦다는 것이다.

똑, 한 박자에 한 칸씩
클럭, 한 박자에 한 칸
1234
박자 1입력
박자 2처리
박자 3보관
박자 4출력

3GHz = 1초에 30억 박자 · 작은 한 걸음을 무수히 반복

P.04반도체 설계 · 01

블록을 눌러 칩의 성격을 정한다

오른쪽 지도에서 CPU, GPU, 메모리, I/O 블록을 직접 눌러본다.

블록을 누르면 그 블록을 지나는 데이터 길만 진하게 보인다.
선택 안 된 길은 흐려진다. 활성 경로만 따라가며 데이터가 어디로 흐르는지 눈으로 잡는다.

그다음 칩의 최종 목표를 고른다. 계산기, 그래픽카드, 균형 SoC 중에서 정한다.
어느 블록이 가장 커질지 먼저 예측하고, 확정을 누르면 실제 면적 배분과 비교된다.
이 목표 선택이 최종 MyChip의 성격을 정한다. CPU 중심이 될지 GPU 중심이 될지가 여기서 갈린다.

SoC 지도, 예측 먼저 그다음 확정
SoC 지도 · 블록을 눌러 본다
I/O입력·출력CPU순서대로 처리GPU한꺼번에 처리메모리데이터 보관

CPU 를 지나는 데이터 길만 진하게 보인다. CPU는 명령을 하나씩 받아 순서대로 처리한다.

이 칩의 최종 목표를 고른다
예측, 어느 블록이 가장 커질까?
P.05반도체 설계 · 01

이 코스의 끝 = 내가 설계한 SoC

오늘 본 CPU와 GPU, 메모리는 완성된 그림이다. 코스는 이것을 바닥부터 다시 쌓는다.

비트 한 칸에서 시작한다. 게이트로 판단을 만들고, 가산기로 덧셈을 만들고, 레지스터로 기억을 만들고, 명령어로 CPU를 움직인다.

그다음 캐시로 속도를 올리고, lane을 늘려 GPU를 만들고, 마지막에 이 모두를 한 칩에 얹어 SoC로 묶는다.
그 칩이 MyChip이다. 강마다 고른 선택, 즉 연산과 ISA, 캐시와 lane이 전부 거기로 모인다.

Q. CPU와 GPU의 차이를 한 줄로?CPU는 순차 소수 정예, GPU는 병렬 대군.
CPU는 똑똑한 코어 몇 개가 복잡한 일을 순서대로 처리한다.
GPU는 단순한 코어 수천 개가 같은 일을 한꺼번에 처리한다.
빠르고 느림이 아니라 일하는 방식의 차이다.
비트에서 MyChip까지, 오늘은 첫 칸
코스 지도, 비트에서 MyChip
01비트 · 게이트← 오늘
02가산기 · ALU
03레지스터 · 메모리
04명령어 · CPU
05캐시 · GPU
06SoC · MyChip목표
강마다 고른 선택이 마지막 MyChip으로 모인다

3줄 요약

  1. 1CPU·GPU·메모리가 한 클럭에 무엇을 하나 — 최종 목표 미리보기
  2. 2칩이 하는 일은 비트·게이트 → ALU → 시간·메모리 → 나만의 CPU → 메모리·GPU·SoC 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

칩이

CPU·GPU·메모리가 한 클럭에 무엇을 하나 — 최종 목표 미리보기

ALU

산술·논리 연산을 하는 회로

ISA

CPU가 이해하는 명령어 집합과 인코딩