이 책의 내용
제1장 컴퓨터시스템 개요: 컴퓨터의 기본 구조와 동작 원리에 대하여 분석하고, CPU, 기억장치 및 I/O 장치들을 포함하는 전체 컴퓨터시스템의 구성 방법에 대하여 개괄적으로 설명한다. 그리고 컴퓨터 구조의 발전 경위를 간략히 살펴본 다음에, 모바일용 소형 컴퓨터부터 슈퍼컴퓨터에 이르기까지 각종 컴퓨터 분류들에 대한 최근 발전 동향을 분석해본다.
제2장 CPU의 구조와 기능: CPU의 내부 구조와 명령어 실행 과정 및 파이프라이닝 기술에 대하여 자세히 설명한다. 그리고 CPU의 프로그램 처리 속도를 높이기 위한 첨단 구조인 슈퍼스칼라 및 멀티-코어 프로세서의 설계 개념과 그에 따른 속도 향상에 대하여 세부적으로 분석하며, 동적 실행 기법의 원리와 그를 위한 하드웨어 구조를 살펴본다. 마지막으로, 명령어 세트의 구성 요소와 설계 방법에 대하여 설명하는데, 여기에는 RISC 프로세서의 명령어 특성에 대한 분석도 포함된다.
제3장 컴퓨터 산술과 논리 연산: 컴퓨터 산술 및 논리 연산장치인 ALU의 내부 구성을 살펴본다. 그리고 논리 연산의 원리를 공부한 다음에, 정수 및 부동소수점 수의 표현 방법과 산술 연산에 대하여 설명한다.
제4장 제어 유니트: CPU의 주요 구성요소인 제어 유니트의 내부 구조와 동작 원리를 분석하고, 마이크로프로그래밍 기법을 이용한 명령어 세트의 설계 방법에 대하여 설명한다.
제5장 기억장치: 기억장치 계층을 분석함으로써 기억장치시스템을 전체적으로 이해하도록 한다. 그런 다음에 반도체 기억장치의 내부 조직을 살펴보고, 그들을 이용하여 기억장치 모듈을 설계하는 방법에 대하여 설명한다. 그리고 주기억장치의 속도를 보완하기 위한 캐시 메모리의 구조와 설계 원리에 대하여 공부한 다음에. 기억장치 대역폭 향상을 위한 기술인 DDR SDRAM 및 기억장치 랭크의 개념에 대해서도 분석한다. 마지막으로는 차세대 반도체 기억장치 유형들인 PRAM, FRAM 및 MRAM의 원리에 대하여 간략히 살펴보기로 한다.
제6장 보조저장장치: 하드 디스크의 구조와 동작 원리를 살펴보고, 용량과 신뢰도를 높이기 위한 디스크 배열인 RAID의 설계 개념과 구조를 분석한다. 그리고 최근 보조저장장치로 널리 사용되고 있는 플래시 메모리와 SSD의 내부 구조 및 동작 원리에 대하여 자세히 설명한다. 특히 3D NAND 플래시의 구조를 심층 분석하며, 그들을 이용하여 구성되는 SSD의 성능 개선을 위한 제반 기술들도 살펴본다.
제7장 시스템 버스, I/O 및 인터럽트: 컴퓨터 구성요소들 간의 정보 교환을 위한 통로인 시스템 버스의 구성과 중재 방법에 대하여 분석하며, I/O 장치의 접속 방법과 인터럽트 메커니즘 및 DMA의 동작 원리에 대하여 설명한다.
제8장 고성능 컴퓨터시스템 구조: 컴퓨터시스템의 성능 향상을 위한 핵심 기술인 병렬처리의 개념에 대하여 설명하고, 병렬컴퓨터시스템에 사용되는 각종 시스템 구조 및 상호연결망들을 소개한다. 그리고 서버급 다중프로세서시스템 구현에서 캐시 일관성 유지를 위하여 사용되는 MESI 프로토콜에 대하여 분석한다. 또한 최근 슈퍼컴퓨터를 비롯한 거의 모든 컴퓨터시스템에서 수치적 계산속도 향상을 위해 널리 사용되고 있는 GPU(Graphic Processign Unit) 및 CUDA 프로그래밍 모델에 대해서도 설명한다. 마지막으로는 대형 언어 모델(LLM)을 포함한 각종 AI 응용 처리를 고속화시키기 위한 고대역폭 기억장치(HBM) 기술에 대해서도 자세히 살펴본다.
[부록 A] 광 저장장치: 다목적 보조저장장치로 유용하게 사용되는 CD-ROM, DVD 및 블루-레이 디스크(BD)와 같은 광 저장장치들의 원리와 성능 및 특성에 대하여 설명한다.
[부록 B] 컴퓨터 클러스터링: 최근 서버급 시스템 및 슈퍼컴퓨터의 구성을 위하여 가장 널리 사용되고 있는 시스템통합 기술인 컴퓨터 클러스터링(computer clustering)의 원리에 대하여 분석한다.