← Probeklausur overview

Aufgabe 1 · 15 Punkte · 개념 판별

Theorieaufgaben

용어를 외우기 전에 ‘무엇을 입력받아 무엇을 출력하는가’, ‘CPU 내부가 겹쳐 일하는가’, ‘memory에서 다음 접근이 얼마나 가까운가’를 묻는 습관을 만듭니다.

공식 시험지와 공식 Musterlösung을 기준으로 작성했습니다. 그림 문제는 렌더된 원본 페이지도 함께 대조합니다.

BEGINNER CONCEPT LESSON

문제 풀이 전에 개념부터 배우기

용어를 모르는 상태에서 답을 외우지 않도록, 비유·그림·작은 예제·시험용 풀이 알고리즘을 별도 수업으로 만들었습니다.

Aufgabe 1 개념 수업 열기 →

원본 그림과 공식 해설 그림

diagram 문제는 text만으로 대체하지 말고 아래 원본을 확대해 선·stage·field를 직접 확인하세요.

MICRO WORK UNITS

8개 작업 단위로 학습

각 카드는 요구사항 → zero-base 개념 → 손풀이 단계 → 공식 결론 → 함정 → active recall 순서입니다.

1aWerkzeugkette 4개 역할 매칭

문제가 요구하는 것

Compiler, Assembler, Linker, Loader를 정의에 연결하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1a 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

C 코드는 곧바로 CPU에서 실행되지 않습니다. Compiler가 C→Assembly, Assembler가 Assembly→Objektdatei, Linker가 여러 Objektdatei→Executable, Loader가 Executable→Hauptspeicher를 담당합니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. 정의의 입력을 찾습니다.
  2. 정의의 출력을 찾습니다.
  3. C → Assembly → Objekt → Executable → Memory 사슬에 놓습니다.
  4. 남는 ‘기계어를 hardware에서 emulieren’ 정의는 제외합니다.

4. 정답을 닫고 스스로 설명하기

Assembler의 입력과 출력은 각각 무엇인가요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1bEintakt·Mehrtakt·Pipeline 구분

문제가 요구하는 것

6개 Aussage에 E/M/P를 모두 표시하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1b 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

Eintakt는 instruction 하나를 한 긴 Takt에 끝냅니다. Mehrtakt는 한 instruction을 여러 짧은 Takt로 나눕니다. Pipeline은 서로 다른 instruction의 stage를 겹쳐 처리하므로 hazard 해결 hardware가 필요합니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. ‘한 instruction이 여러 cycle인가?’를 먼저 봅니다.
  2. ‘여러 instruction이 동시에 겹치는가?’를 봅니다.
  3. 겹친다면 Data Hazard와 Hazard Unit을 연결합니다.
  4. Instruction/Data memory를 공유하는 Von-Neumann 특징은 이 강의의 Mehrtakt datapath와 연결합니다.

4. 정답을 닫고 스스로 설명하기

Data Hazard가 Pipeline에서만 문제가 되는 핵심 이유는 무엇인가요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1cSpeicherhierarchie 정렬

문제가 요구하는 것

Register, Cache, DRAM, SSD/HDD를 빠른 순서로 정렬하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1c 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

CPU에 가까울수록 빠르고 작고 비쌉니다. Register는 CPU의 즉시 작업칸, Cache는 자주 쓸 data의 작은 복사본, DRAM은 Hauptspeicher, SSD/HDD는 영구 저장장치입니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. CPU 내부부터 바깥쪽으로 그립니다.
  2. Register→Cache→DRAM→SSD/HDD 순서로 놓습니다.
  3. 문제의 번호 1=가장 빠름을 다시 확인합니다.

4. 정답을 닫고 스스로 설명하기

Cache가 DRAM보다 빠른데도 DRAM이 필요한 이유는 무엇인가요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1d2차원 Array의 Lokalität

문제가 요구하는 것

`arr[j][i]` 접근이 spatial/temporal 중 무엇을 나쁘게 만드는지 설명하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1d 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

C의 2차원 array는 row-major라 `arr[0][0], arr[0][1], ...` 순서로 연속 배치됩니다. 안쪽 loop에서 j를 바꾸며 `arr[j][i]`를 읽으면 매번 100개 원소만큼 건너뜁니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. 안쪽 loop에서 실제로 변하는 index를 찾습니다.
  2. 연속된 두 접근 주소 차이를 계산합니다: 100 × 4 Byte.
  3. 같은 값을 반복하는 문제가 아니라 이웃 주소를 못 쓰는 문제임을 확인합니다.
  4. `arr[i][j]`와 비교해 답을 씁니다.

4. 정답을 닫고 스스로 설명하기

`arr[i][j]`로 바꾸면 왜 Cache line을 더 잘 활용하나요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1eAlignment와 misaligned word

문제가 요구하는 것

4의 배수가 아닌 주소에 32-bit word를 쓸 수 있는지 설명하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1e 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

Aligned word는 시작 주소가 word 크기 4 Byte의 배수입니다. 강의/공식 해설의 RISC-V 문맥에서는 misaligned word access가 exception을 일으킵니다. 한 word가 두 정렬 block에 걸치면 hardware와 memory access가 복잡해집니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. word=4 Byte를 적습니다.
  2. 주소 mod 4가 0인지 확인합니다.
  3. 이 시험의 RISC-V 가정을 적용합니다.
  4. 두 block에 걸치는 경우의 추가 비용을 이유로 설명합니다.

4. 정답을 닫고 스스로 설명하기

주소 0x1002에서 4 Byte를 읽으면 어떤 byte 범위를 건드리나요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1fSigned Immediate의 이유와 비용

문제가 요구하는 것

Store·Branch·Jump immediate를 Zweierkomplement로 표현하는 이유와 단점을 말하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1f 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

Signed immediate는 base/PC 기준 앞과 뒤를 모두 가리킬 수 있게 합니다. Zweierkomplement는 음수와 양수의 덧셈을 같은 adder로 처리하기 좋지만, 같은 bit 수의 unsigned보다 최대 양수 범위가 절반가량 작습니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. offset이 어느 기준에 더해지는지 찾습니다.
  2. 뒤로 가는 loop/jump에 음수가 필요한지 확인합니다.
  3. 아래 수식에 따라 n-bit signed 범위를 적습니다.
  4. unsigned 양수 범위와 비교합니다.

4. 정답을 닫고 스스로 설명하기

12-bit signed immediate의 범위는 무엇인가요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1gOperand 값과 ALU 시간

문제가 요구하는 것

작은 두 수의 addition이 큰 두 수보다 빠른지 판정하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1g 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

Digital ALU는 operand의 ‘크기감’을 보고 반복 덧셈하지 않습니다. 고정된 combinational circuit가 모든 bit를 처리하며 processor clock은 worst-case path를 만족하도록 정해집니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. 두 instruction의 opcode/datapath가 같은지 봅니다.
  2. 둘 다 같은 ALU add path를 쓰는지 확인합니다.
  3. clock period가 operand 값이 아니라 circuit delay로 정해짐을 씁니다.

4. 정답을 닫고 스스로 설명하기

왜 multiplication은 addition과 다른 latency일 수 있지만 같은 add 안의 값 크기는 보통 영향을 주지 않나요?

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6

1hWahr/Falsch 5문장

문제가 요구하는 것

다섯 문장의 참/거짓을 이유와 함께 판정하세요.

이 카드는 빠른 복습용입니다. 처음 학습한다면 아래 독립 페이지에서 용어·비유·수식·작은 예제부터 읽으세요.

📖 1h 독립 개념·풀이 페이지 열기 →

0. 이 소문제에 필요한 핵심 개념

문장 전체를 판정합니다. `for`와 `while`은 같은 branch/label 구조로 번역될 수 있고, `nop`은 `addi x0,x0,0`의 pseudo 표기입니다. RV32 instruction은 보통 32-bit이며 endian 선택 자체가 보편적 성능 우위를 만들지 않습니다.

✎ 작은 예로 먼저 손풀기
문장을 생활 언어로 다시 쓰고, 맞는 구조와 틀린 구조를 하나씩 떠올리세요.
✓ 무엇을 확인해야 하나
답안에는 판정만 쓰지 말고 판단 기준을 한 문장 덧붙이세요.

1. 이번 시험 문제에서 실제로 밟는 단계

  1. 절대 표현을 표시합니다.
  2. while/for는 machine-level control flow를 비교합니다.
  3. nop을 base instruction으로 펼칩니다.
  4. instruction width와 data width를 분리합니다.
  5. Big/Little endian은 byte order임을 확인합니다.

4. 정답을 닫고 스스로 설명하기

`nop`이 architectural state를 바꾸지 않는 이유를 x0 특성과 함께 말해 보세요.

Source: Probeklausur.pdf / Probeklausur Musterlösung und Hinweise.pdf · 시험 p3–5 · 공식 해설 p3–6