Learning
토픽 9 / 21·과목별 관계도

컴퓨터구조 관계도

💡

이 관계도는 전체 토픽의 구조와 연결 관계를 보여줍니다. 학습 전에 전체 흐름을 파악하세요.

토픽 마인드맵
mindmap
  root((컴퓨터 구조<br/>103개 토픽))
    Part 1. 전체 구조
      구조 설계
        컴퓨터 구조
        폰 노이만 구조
        하버드 구조
      데이터 표현
        보수 연산
        부동소수점 표현
        Endianness
    Part 2. CPU
      CPU 기본
        CPU
        ALU
        레지스터
      명령어 처리
        마이크로연산
        명령어 사이클
        주소 지정 방식
      명령어 집합
        ISA
        CISC
        RISC
        ARM
        ARMv9
        RISC-V
      성능 향상 기법
        명령어 파이프라인
        파이프라인 해저드
        포워딩/바이패싱
        슈퍼스칼라
        VLIW
        비순차 실행
        분기 예측
        투기적 실행 & 보안 취약점
    Part 3. 메모리 계층
      메모리 기본
        메모리 계층 구조
        SRAM vs DRAM
        ROM
        FRAM
      캐시
        캐시 메모리
        캐시 매핑 방식
        캐시 교체 정책
        캐시 쓰기 정책
        캐시 일관성 프로토콜
      메모리 동기화
        메모리 배리어
        메모리 인터리빙
      가상 메모리
        가상 메모리
        요구 페이징
        MMU
        MPU
        TLB
        페이징
        세그멘테이션
      메모리 관리
        메모리 단편화
        페이지 교체 알고리즘
        스레싱
      플래시/스토리지
        NAND/NOR 플래시 메모리
        3D NAND
        SSD
        FTL
        웨어 레벨링
    Part 4. I/O·버스
      인터럽트/DMA
        인터럽트
        DMA
        IOMMU
        DMA 제어 신호
      입출력 제어
        입출력 제어 방식 비교
        워치독 타이머
      버스
        버스
        버스 중재
        PCIe
      스토리지 인터페이스
        NVMe
        RAID
        스토리지 유형
      상호연결
        CXL
        NVLink
        UCIe
    Part 5. 병렬 처리
      기본 이론
        병렬 처리
        Flynn's Taxonomy
        암달의 법칙과 구스타프손의 법칙
      멀티 처리
        멀티코어
        NUMA
        SMT
      데이터 병렬
        SIMD
        SIMT
      이기종/전문
        GPU
        Heterogeneous Computing
        DPU/SmartNIC
      신뢰성/동기화
        TMR
        Race Condition
        우선순위 역전
    Part 6. 프로세서·반도체 트렌드
      프로세서 설계
        SoC
        Chiplet
        CCD/IOD
        big.LITTLE
        MCU
      AI/특수 프로세서
        뉴로모픽 칩
        NPU/TPU
        Apple Silicon
      전력
        전력 관리
      메모리 기술
        HBM
        GDDR6/GDDR6X
        DDR5
        LPDDR
        PIM
        RowHammer
    Part 7. 코드 실행 체계
      컴파일/실행
        컴파일러
        인터프리터
        JIT 컴파일
        AOT 컴파일
      실행 환경
        바이트코드와 가상머신
        WebAssembly
        메모리 4영역

주요 카테고리별 토픽 수

카테고리토픽 수주요 기술
Part 1. 전체 구조6개폰 노이만, 하버드, 보수 연산, 부동소수점, Endianness
Part 2. CPU20개CPU, ALU, 레지스터, 마이크로연산, 명령어 사이클, 주소 지정 방식, ISA, CISC/RISC, ARM, RISC-V, 파이프라인, 해저드, VLIW, 비순차 실행, 분기 예측, 투기적 실행
Part 3. 메모리 계층25개메모리 계층, SRAM/DRAM, ROM, FRAM, 캐시(매핑/교체/쓰기/일관성), 메모리 배리어, 가상메모리, MMU, MPU, TLB, 페이징, 세그멘테이션, 스레싱, NAND, SSD, FTL
Part 4. I/O·버스15개인터럽트, DMA, IOMMU, 버스, 버스 중재, PCIe, NVMe, RAID, 스토리지 유형, CXL, NVLink, UCIe
Part 5. 병렬 처리14개병렬 처리, Flynn 분류, 암달의 법칙, 멀티코어, NUMA, SMT, SIMD, SIMT, GPU, 이기종컴퓨팅, DPU/SmartNIC, TMR, Race Condition, 우선순위 역전
Part 6. 프로세서·반도체 트렌드16개SoC, Chiplet, CCD/IOD, big.LITTLE, MCU, 뉴로모픽 칩, NPU/TPU, Apple Silicon, 전력 관리, HBM, GDDR6, DDR5, LPDDR, PIM, RowHammer
Part 7. 코드 실행 체계7개컴파일러, 인터프리터, JIT, AOT, 바이트코드/가상머신, WebAssembly, 메모리 4영역

총 103개 토픽

핵심 연관 관계

CPU 진화 경로

폰 노이만 구조 → CISC (x86)
              → RISC → ARM → ARMv9
                    → RISC-V

명령어 처리 흐름

마이크로연산 → 명령어 사이클 (Fetch-Decode-Execute)
                    ↓
            주소 지정 방식 (피연산자 위치 결정)

성능 향상 기법 진화

단일 명령어 실행
    ↓
파이프라인 → 파이프라인 해저드 → 포워딩/바이패싱
         → 슈퍼스칼라 → 비순차 실행
         → VLIW
         → 분기 예측 → 투기적 실행 → Spectre/Meltdown

병렬 처리 계층

명령어 수준: 파이프라인, 슈퍼스칼라, VLIW
    ↓
데이터 수준: SIMD, SIMT
    ↓
스레드 수준: SMT, 멀티코어
    ↓
시스템 수준: NUMA, 이기종컴퓨팅
    ↓
동기화 문제: Race Condition, 우선순위 역전
    ↓
신뢰성: TMR

메모리 계층 (속도 ↓, 용량 ↑)

레지스터 (1사이클, KB 이하)
    ↓
L1 캐시 (2-4사이클, 수십 KB)
    ↓
L2 캐시 (10-20사이클, 수백 KB)
    ↓
L3 캐시 (40-70사이클, MB)
    ↓
DRAM (200-300사이클, GB)
    ↓
SSD/HDD (ms, TB)

캐시 메모리 체계

캐시 메모리
  ├─ 캐시 매핑 방식 (Direct/Set Associative/Fully Associative)
  ├─ 캐시 교체 정책 (LRU, FIFO, LFU)
  ├─ 캐시 쓰기 정책 (Write-Through vs Write-Back)
  └─ 캐시 일관성 프로토콜 (MESI, MOESI)
       └─ 메모리 배리어 (동기화 보장)

가상 메모리 체계

가상 메모리
  ├─ 페이징 → 요구 페이징 → 페이지 교체 알고리즘 → 스레싱
  ├─ 세그멘테이션
  ├─ MMU (주소 변환) → TLB (변환 캐시)
  ├─ MPU (메모리 보호)
  └─ 메모리 단편화 (내부/외부)

플래시/스토리지 진화

NAND/NOR 플래시 → 3D NAND (V-NAND)
                    ↓
                  SSD → FTL (주소 매핑)
                      → 웨어 레벨링 (수명 관리)
                      → NVMe (인터페이스)
                      → RAID (이중화)

ISA 생태계

CISC 계열
  └─ x86 (Intel/AMD) → x86-64

RISC 계열
  ├─ ARM → ARMv9 → Apple Silicon (M시리즈)
  │              → big.LITTLE
  └─ RISC-V (오픈소스)

I/O 제어 체계

입출력 제어 방식
  ├─ 프로그램 I/O (폴링)
  ├─ 인터럽트 I/O → 인터럽트
  └─ DMA → DMA 제어 신호 (DREQ/DACK)
       → IOMMU (I/O 주소 변환)
워치독 타이머 (시스템 감시)

AI/GPU 가속기 진화

CPU (범용)
  ↓
GPU (그래픽 → GPGPU)
  ↓
NPU/TPU (AI 전용)
  ↓
뉴로모픽 칩 (생물학적 뉴런 모사)

최신 메모리 기술

DDR5 (고속화) → LPDDR (저전력)
    ↓
GDDR6/GDDR6X (그래픽 전용)
    ↓
HBM (초고대역폭, GPU/AI)
    ↓
PIM (메모리 내 연산)

최신 상호연결 기술

PCIe 3.0 → PCIe 4.0 → PCIe 5.0/6.0
                   ↓
                 NVMe (SSD 최적화)
                   ↓
                 CXL (메모리 공유, 캐시 일관성)
                   ↓
                 NVLink (GPU 간 고속 연결)
                   ↓
                 UCIe (칩렛 간 표준 인터페이스)
                   ↓
                 DPU/SmartNIC (네트워크 데이터 처리 오프로드)

코드 실행 체계

소스 코드
  ├─ 컴파일러 → 기계어 (AOT 컴파일)
  ├─ 인터프리터 → 즉시 실행
  └─ 바이트코드 → 가상머신 → JIT 컴파일
                          → WebAssembly (Wasm)
실행 시 메모리 4영역 (Code/Data/Heap/Stack)

프로세서 설계 트렌드

모놀리식 다이
  ↓
SoC (System on Chip) → MCU (임베디드)
  ↓
Chiplet → CCD/IOD (AMD) → UCIe (표준화)

학습 순서 추천

1단계: 기초 (필수)

1. 컴퓨터 구조 개요

2. 폰 노이만 vs 하버드

3. 보수 연산, 부동소수점 표현, Endianness

4. CPU (ALU, 레지스터)

5. 마이크로연산, 명령어 사이클

6. ISA (CISC vs RISC)

7. 메모리 계층 구조

2단계: 성능 최적화

8. 주소 지정 방식

9. 명령어 파이프라인, 파이프라인 해저드, 포워딩/바이패싱

10. 캐시 메모리 (매핑, 교체, 쓰기, 일관성)

11. 메모리 배리어

12. 가상 메모리 (MMU, MPU, TLB, 페이징, 세그멘테이션)

13. 메모리 단편화, 페이지 교체 알고리즘, 스레싱

14. 슈퍼스칼라, VLIW

15. 비순차 실행, 분기 예측, 투기적 실행

3단계: I/O와 병렬 처리

16. 인터럽트, DMA, IOMMU, 입출력 제어 방식

17. 버스, 버스 중재

18. 멀티코어, SMT, NUMA

19. SIMD, SIMT

20. GPU

21. Flynn's Taxonomy, 암달의 법칙

22. Race Condition, 우선순위 역전, TMR

4단계: 스토리지와 인터페이스

23. SRAM/DRAM, ROM, FRAM

24. NAND/NOR 플래시, 3D NAND, SSD, FTL, 웨어 레벨링

25. PCIe, NVMe, RAID, 스토리지 유형

26. CXL, NVLink, UCIe

5단계: 최신 기술 트렌드

27. ARM, ARMv9, RISC-V

28. SoC, Chiplet, CCD/IOD, MCU

29. big.LITTLE, Heterogeneous Computing

30. NPU/TPU, 뉴로모픽 칩

31. HBM, GDDR6, DDR5, LPDDR, PIM

32. DPU/SmartNIC

33. Apple Silicon

34. 전력 관리, RowHammer

6단계: 코드 실행 체계

35. 컴파일러, 인터프리터

36. JIT 컴파일, AOT 컴파일

37. 바이트코드와 가상머신, WebAssembly

38. 메모리 4영역

시험 출제 포인트

고빈도 주제

  • 폰 노이만 vs 하버드: 차이점, 장단점, 응용 분야
  • 보수 연산: 1의 보수, 2의 보수, 감산 원리
  • 부동소수점 표현: IEEE 754, 정밀도, 오차
  • CISC vs RISC: 설계 철학, 명령어 특성, 파이프라인
  • 명령어 사이클: Fetch-Decode-Execute 단계
  • 주소 지정 방식: 즉치, 직접, 간접, 레지스터, 변위
  • 캐시 메모리: 지역성 원리, 매핑 방식, 교체 정책, 쓰기 정책
  • 가상 메모리: 페이징, 세그멘테이션, TLB, MMU 동작 과정
  • 페이지 교체 알고리즘: FIFO, LRU, LFU, Optimal
  • 파이프라인: 해저드(Hazard) 종류, 포워딩, 분기 예측
  • 병렬 처리: Flynn 분류, SIMD, 멀티코어, SMT 차이
  • 인터럽트: 종류, 처리 과정, 우선순위
  • DMA: 동작 원리, 입출력 제어 방식 비교
  • 메모리 단편화: 내부/외부, 해결 방법
  • 스레싱: 원인, 해결 방법 (워킹셋, PFF)

최신 트렌드

  • ARM vs x86 (ARMv9): 전력 효율, 성능, 생태계
  • RISC-V: 오픈소스 ISA, 장점
  • AI 가속기: NPU/TPU 구조, GPU와 차이, 뉴로모픽 칩
  • 이기종 컴퓨팅: big.LITTLE, Heterogeneous
  • CXL/NVLink/UCIe: 목적, 기존 기술과 차이
  • DPU/SmartNIC: 네트워크 오프로드, CPU 부하 분산
  • Chiplet/CCD/IOD: 설계 방식, 장점
  • 투기적 실행: Spectre/Meltdown 취약점
  • PIM: 메모리 내 연산, 대역폭 병목 해결
  • 3D NAND/SSD/FTL: 스토리지 기술 진화
  • WebAssembly: 웹 환경 네이티브 성능

코드 실행 체계

  • 컴파일러 vs 인터프리터: 차이점, 장단점
  • JIT vs AOT: 실행 시점, 성능 특성
  • 바이트코드와 가상머신: JVM, CLR 구조
  • 메모리 4영역: Code/Data/Heap/Stack 역할

마인드맵 활용 팁:

  • ISA(CISC/RISC)부터 시작해 CPU 구조 이해
  • 메모리 계층을 속도-용량 트레이드오프로 암기
  • 병렬 처리는 수준별(명령어/데이터/스레드/시스템)로 구분
  • ARM 생태계(ARMv9, Apple Silicon, big.LITTLE) 연결
  • 최신 기술(CXL, HBM, Chiplet)은 기존 기술의 한계와 연결
  • 캐시는 매핑→교체→쓰기→일관성 순서로 체계적 학습
  • 가상 메모리는 페이징→요구 페이징→교체 알고리즘→스레싱 흐름으로 이해
  • 코드 실행 체계는 컴파일→실행→메모리 적재 흐름으로 연결