안녕하세요, 컴퓨터구조 연재를 시작하게 된 재두루미입니다. 이 글에서는 앞으로의 연재에 관한 대략적인 사항에 대해 다뤄 보고자 합니다.
무엇에 대해 다루는가?
이 연재는 컴퓨터구조 시리즈의 첫 번째(Alpha) 연재로서 학부 컴퓨터구조 커리큘럼 상의 내용 및 관련 지식들에 대해 다룰 예정입니다. 각 글의 번호는 X.xx와 같이 소수 형태로 표현되는데, 1.xx에서는 컴퓨터란 무엇이고 어떻게 구성되어 있는지를, 2.xx에서는 컴퓨터가 어떻게 동작하는지에 대해 다룹니다. 여기까지의 내용을 통해 컴퓨터의 기본적인 동작과 간단한 어셈블리 코드에 대해 이해할 수 있습니다. 3.xx에서는 컴퓨터를 어떻게 만드는지와 이때 어떤 점을 고려하여야 하는지에 대해 다루고, 성능에 관한 몇 가지 식을 소개합니다. 4.xx에서는 실제 컴퓨터의 다양한 기능에 대해 다룹니다. 여기까지의 내용을 통해 학부 수준의 컴퓨터구조 관련 지식을 습득할 수 있습니다. 5.xx 및 그 이후 글에서는 실제 컴퓨터의 더 복잡한 구현 및 성능에 대해 다룰 예정입니다.
누구를 위한 글인가?
이 연재는 컴퓨터구조에 대한 지식이 없거나 컴퓨터구조 관련 지식을 학습하는 데 어려움을 겪는 분들을 독자로 상정하고 기획되었습니다.
배경지식
[필요] 간단한 코딩 지식 (Python, Java, C/C++ 등)
[권장] 논리회로 관련 지식
참고자료
Various slides from various courses
Computer Systems: A Programmer's Perspective, 3rd Edition
Computer Organization and Design RISC-V Edition: The Hardware Software Interface, 2nd Edition
Computer Architecture: A Quantitative Approach, 6th Edition
연재의 구성
0.xx) 서론 및 부록
* 0.00: 들어가며 (6/4)
* 0.01: TBD
* 0.10: TBD
1.xx) 컴퓨터구조의 기초
* 1.00: 컴퓨터 시스템의 추상화 (6/7)
* 1.01: 컴퓨터의 역사 [1] (7/3)
* 1.02: 컴퓨터의 역사 [2] (7/4)
* 1.05: Overview (TBD)
* 1.0x: Great Ideas in Computer Architecture (TBD)
* 1.0y: 컴퓨터의 구조: 폰노이만 아키텍처와 하버드 아키텍처 (TBD)
* 1.10: 데이터의 표현 – 2진수, 10진수, 16진수 (TBD)
* 1.11: 데이터의 표현 – 정수, 1의 보수와 2의 보수 (TBD)
* 1.12: 데이터의 표현 – 부동소수점(IEEE 754) (TBD)
* 1.15: 데이터의 연산 – 덧셈과 뺄셈 (TBD)
* 1.16: 데이터의 연산 – 곱셈과 나눗셈 (TBD)
* 1.17: 데이터의 연산 – 부동소수점 (TBD)
* 1.20: 논리설계 (TBD)
* 1.50: 시스템프로그래밍 (TBD)
2.xx) 컴퓨터의 문법: ISA & ABI
* 2.00: TBD
* 2.01: TBD
* 2.10: RISC-V ISA
* 2.11: RV32I (& RV64I)
* 2.12: "M" extension
* 2.1x: Customize the RISC-V: pushpop, sv (TBD)
* 2.20: TBD
2.yy) x86 및 x86-64 ISA의 이해
* 2.50: CISC ISA – 4004 ~ 8080
* 2.60: CISC ISA – 8086
* 2.70: CISC ISA – 80386(i386)
* 2.80: CISC ISA – AMD64, Intel 64
3.xx) 간단한 컴퓨터의 구현
* 3.xx: 1-cycle CPU
* 3.xx: Multi-cycle CPU
* 3.xx: Microcode & Microprogram
* 3.xx: Iron law & Amdahl's law
3.yy) 더 빠르게: 파이프라인과 캐시
* 3.yy: 파이프라이닝
* 3.yy: Hazard (RAW data, control)
* 3.yy: 분기예측
* 3.yy: 캐시
4.xx) 입출력과 가상메모리, 인터럽트 및 예외 처리
5.xx) 더 빠르게: 슈퍼스칼라와 멀티프로세싱
감사합니다.
'컴퓨터공학 > 컴퓨터구조' 카테고리의 다른 글
A 1.05: 둘러보기 & 위대한 발상들 (0) | 2023.07.20 |
---|---|
A 1.02: 컴퓨터의 역사 [2] (0) | 2023.07.04 |
A 1.01: 컴퓨터의 역사 [1] (0) | 2023.07.03 |
A 1.00: 컴퓨터 시스템의 추상화 (0) | 2023.06.07 |