4 장 . 컴퓨터 시스템의 구성과 기능

34
1 4 장 . 장장장 장장장장 장장장 장장 다다다 다다 다다다 다다다 다다 다다 다다다다 다다다 다다다다 다다다다 다다 다다다 다다 다다

Upload: isabelle-burt

Post on 03-Jan-2016

56 views

Category:

Documents


1 download

DESCRIPTION

4 장 . 컴퓨터 시스템의 구성과 기능. 다루는 내용 컴퓨터 분해를 통한 본체 살펴보기 컴퓨터 구성요소 컴퓨터의 기능 버스와 상호 연결. Section 01 컴퓨터 분해를 통한 본체 살펴보기. [그림 4-1] 컴퓨터의 분해와 연결. 주 회로기판 (main board) 의 구성. [그림 4-2] 메인보드의 구성. 컴퓨터 구성요소. 컴퓨터의 개념적 구성. [그림 4-3] 컴퓨터의 개념적 구성. 컴퓨터 구성요소. 하드웨어 (hardware) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 4 장 .  컴퓨터 시스템의 구성과 기능

1

4 장 . 컴퓨터 시스템의 구성과 기능

다루는 내용 컴퓨터 분해를 통한 본체 살펴보기

컴퓨터 구성요소

컴퓨터의 기능

버스와 상호 연결

Page 2: 4 장 .  컴퓨터 시스템의 구성과 기능

2

Section 01 컴퓨터 분해를 통한 본체 살펴보기

[ 그림 4-1] 컴퓨터의 분해와 연결

Page 3: 4 장 .  컴퓨터 시스템의 구성과 기능

3

주 회로기판 (main board) 의 구성

[ 그림 4-2] 메인보드의 구성

Page 4: 4 장 .  컴퓨터 시스템의 구성과 기능

4

컴퓨터 구성요소

컴퓨터의 개념적 구성

[ 그림 4-3] 컴퓨터의 개념적 구성

Page 5: 4 장 .  컴퓨터 시스템의 구성과 기능

5

컴퓨터 구성요소

하드웨어 (hardware)정보들의 전송 통로를 제공하고 , 그 정보에 대한 처리가 실제 일어나게 해주는 물리적인 실체 하드와이어 프로그램 (hardwired program) • 부품을 연결하여 필요 기능을 수행하는 프로그래밍의 한 형식• 특정 목적에만 사용 , 다른 목적을 위해서 부품의 재연결이 필요• 컴퓨터 시스템은 융통성이 없다 .

Page 6: 4 장 .  컴퓨터 시스템의 구성과 기능

6

컴퓨터 구성요소

소프트웨어 (software) 하드웨어가 특정 작업을 수행하도록 제어 신호들을 제공하는 일련의 코드들 (codes) 혹은 명령어들 (instructions) 의 집합

펌웨어 (Firmware)하드웨어와 소프트웨어의 중간단계에 해당소프트웨어를 하드웨어화 시킨 것

Page 7: 4 장 .  컴퓨터 시스템의 구성과 기능

7

소프트웨어

정보들의 이동 방향과 정보 처리의 종류를 지정동작들이 일어나는 시간을 지정하는 명령 (command) 들의 집합

[ 그림 4-4] 소프트웨어의 분류

Page 8: 4 장 .  컴퓨터 시스템의 구성과 기능

8

시스템 효율을 높이기 위한 ROM 에 들어 있는 기본 프로 그램ROM 에 프로그램이 고정되어 하드웨어의 특성도 가지고 있지만 실제로는 소프트웨어에 더 가깝다 .

소프트웨어를 하드웨어화 시킨 것으로 소프트웨어와 하드웨어의 중간에 해당전형적인 처리루틴 , 비휘발성 , 변경불가 등의 특징으로 특수한 영역에서 많이 사용

펌웨어 (Firmware)

Page 9: 4 장 .  컴퓨터 시스템의 구성과 기능

9

컴퓨터의 주요 하드웨어중앙처리장치 (Central Processing Unit: CPU)

• 프로세서 (processor)

• ' 프로그램 실행 ' 과 ' 데이터 처리 ' 라는 중추적인 기능 수행

• 중앙처리장치는 제어 장치 , 연산 장치 , 레지스터 등으로 구성

하드웨어

Page 10: 4 장 .  컴퓨터 시스템의 구성과 기능

10

컴퓨터의 주요 하드웨어기억장치 (memory)• 저장장치 (storage device)

• CPU 가 실행할 프로그램과 데이터를 저장• 주기억 장치와 보조기억 장치가 존재

입출력장치 (I/O device)• 사용자와 컴퓨터간의 대화를 위한 도구 • 입력 장치는 입력데이터를 컴퓨터가 이해하는 신호로 변환 • 출력 장치는 중앙처리장치가 처리한 결과를 출력하는 장치

하드웨어

Page 11: 4 장 .  컴퓨터 시스템의 구성과 기능

11

Section 03 컴퓨터의 기능

프로그램 실행CPU 가 주기억장치로부터 프로그램 코드를 읽어서 실행

데이터 저장프로그램 실행 결과로서 얻어진 데이터를 주기억장치에 저장

데이터 이동보조기억장치에 프로그램과 데이터 블록을 주기억장치로 이동

데이터 입력과 출력 기능사용자가 키보드를 통해 보내는 명령이나 데이터를 읽어 들인다 . CPU 가 처리한 결과 값이나 기억장치의 내용을 프린터 ( 혹은 모니터 ) 로 출력

제어프로그램이 순서대로 실행되도록 또는 필요에 따라 실행 순서를 변경하도록 조정 , 각종 제어 신호들을 발생하는 기능

Page 12: 4 장 .  컴퓨터 시스템의 구성과 기능

12

프로그램의 처리과정명령어 인출 (instruction fetch) 과 명령어 실행 (instruction execution) 반복

명령어의 수행 과정

[ 그림 4-7] 명령어의 단계적 수행

Page 13: 4 장 .  컴퓨터 시스템의 구성과 기능

13

플립플롭으로 구성된 장치

실행의 중간 결과나 적은 양의 자료를 임시로 저장

중앙처리장치 내의 임시 기억 장치역할

레지스터 (Register)

Page 14: 4 장 .  컴퓨터 시스템의 구성과 기능

14

레지스터 (Register)

[ 그림 4-8] 컴퓨터 내부 구성에서의 저장장치

Page 15: 4 장 .  컴퓨터 시스템의 구성과 기능

15

프로그램 카운터 (PC: Program Counter)다음에 실행할 명령어의 주소를 저장하는 레지스터

명령어 레지스터 (IR: Instruction Register)메모리로부터 읽어온 명령어를 수행하기 위하여 일시적으로 저장하는 레지스터

기억장치 주소 레지스터 (MAR: Memory Address Register)

다음에 읽기 동작이나 쓰기 동작을 수행할 기억장소의 주소를 저장하는 주소저장용 레지스터

CPU 내의 레지스터

Page 16: 4 장 .  컴퓨터 시스템의 구성과 기능

16

CPU 내의 레지스터

기억장치 버퍼 레지스터 (MBR: Memory buffer Register)기억장치에 저장될 데이터 혹은 기억장치로부터 읽은 데이터를 임시적으로 저장하는 버퍼

입 / 출력 주소 레지스터 (I/O AR: I/O Address Register)입 / 출력 장치의 주소를 저장하는 주소 레지스터이다 .

입 / 출력 버퍼 레지스터 (I/O BR: I/O Buffer Register)입 / 출력 모듈과 CPU 사이에 교환되는 데이터를 일시적으로 저장하는 레지스터

Page 17: 4 장 .  컴퓨터 시스템의 구성과 기능

17

정보의 표현과 컴퓨터 언어

프로그램 코드는 컴퓨터에서 사용하는 형태와 가까우면 저급 언어 , 인간이 사용하는 형태와 가까우면 고급 언어로 분류

저급 언어 (low-level language)기계어 (machine language) 는 기계 코드 (machine code) 들의 집합컴퓨터 하드웨어 부품들이 이해할 수 있는 언어2 진수 비트들로 구성된 코드

Page 18: 4 장 .  컴퓨터 시스템의 구성과 기능

18

정보의 표현과 컴퓨터 언어

어셈블리 언어 (assembly language)어셈블리 코드 (assembly code) 들의 집합고급 언어와 기계어 사이의 중간 언어저급 언어인 기계어와 일대일 대응 관계로 기계어로의 변환과정이 쉽다 .

고급 언어 (high-level language)영문자와 숫자로 구성되어 사람이 이해하기 쉬운 언어C, PASCAL, FORTRAN, COBOL 프로그래머가 쉽게 작성할 수 있으나 컴퓨터가 이해 할 수 있게 번역하는 과정 필요

Page 19: 4 장 .  컴퓨터 시스템의 구성과 기능

19

컴파일러와 어셈블러

컴파일러 (compiler)인간이 작성하기 쉬운 고급 언어 프로그램을 하드웨어가 이해할 수 있는 기계어 프로그램으로 번역하는 소프트웨어

어셈블러 (assembler)어셈블리 프로그램을 이진수의 기계어 프로그램으로 번역하는 소프트웨어

Page 20: 4 장 .  컴퓨터 시스템의 구성과 기능

20

기계어 표현B

덧셈 연산을 수행하는 프로그램의 언어별 표현

[ 그림 4-9] 기계어로의 번역 과정

Page 21: 4 장 .  컴퓨터 시스템의 구성과 기능

21

연산 코드 (op code)CPU 가 수행할 연산을 지정해 주는 비트들

오퍼랜드 (operand)적재될 데이터가 저장된 기억장치 주소 혹은 연산에 사용될 데이터 비트

연산 코드의 비트 수가 3 이면 , 지정할 수 있는 연산의 최대 수는 23 = 8 이 된다 . 오퍼랜드의 비트의 수가 5 이면 , 주소 지정할 수 있는 기억장소의 최대 수는 25 = 32 가 된다 .

기계명령어 형식

[ 그림 4-10] 기계 명령어 형식

Page 22: 4 장 .  컴퓨터 시스템의 구성과 기능

22

단어 (word) 프로그램과 데이터가 기억장치에 저장되는 단위CPU 에 의해 한 번에 처리될 수 있는 비트들의 그룹

기억장치에 저장된 기계어

[ 그림 4-11] 기억장치에 저장된 기계어

Page 23: 4 장 .  컴퓨터 시스템의 구성과 기능

23

중앙처리 장치가 하나의 명령어를 실행하는 데 필요한 전체 처리 과정인출 사이클 (fetch cycle) 과 실행 사이클 (execution cycle)의 부 사이클 (sub-cycle) 두 개로 구성

명령어 사이클 (instruction cycle)

[ 그림 4-12] 명령어 부 사이클 (sub-cycle) 의 동작

Page 24: 4 장 .  컴퓨터 시스템의 구성과 기능

24

명령어 인출 (fetch cycle)주기억 장치에 기억되어 있는 프로그램 명령어를 호출하는 과정단계별 과정 • 프로세서는 PC 가 지정하는 기억장소로부터 명령어를 인출• PC 내용을 증가시키고 인출된 명령어가 명령어 레지스터 (IR) 로

적재• 프로세서는 명령어를 해석하고 , 요구된 동작을 수행

실행 사이클 (execution cycle)명령어를 실행하는 단계실행되는 동작 분류• 프로세서와 기억장치 간에 데이터가 전송• 프로세서와 I/O 모듈 간에 데이터가 전송• 데이터에 대하여 지정된 산술 혹은 논리 연산이 수행• 제어 (control) 동작 : 명령어의 순서가 변경될 때 사용된다 .

인출 사이클과 실행 사이클

Page 25: 4 장 .  컴퓨터 시스템의 구성과 기능

25

기본 명령어 사이클

[ 그림 4-13] 기본 명령어 사이클

Page 26: 4 장 .  컴퓨터 시스템의 구성과 기능

26

Section 04 버스와 상호 연결

버스 두 개 혹은 그 이상의 장치들을 연결하는 공유 전송 매체

버스를 통해 전송되는 유형들프로세서가 기억장치로부터 명령어와 데이터를 읽는 유형프로세서가 기억장치에 데이터를 저장하는 유형프로세서는 I/O 모듈을 통해 I/O 장치로부터 데이터를 읽는 유형프로세서가 I/O 장치로 데이터를 전송하는 유형 I/O 모듈이 DMA 를 통하여 기억장치와 직접 데이터를 교환하는 전송 유형

시스템 버스 (system bus)프로세서 , 기억장치 및 I/O 장치간의 통신을 위한 상호 연결

Page 27: 4 장 .  컴퓨터 시스템의 구성과 기능

27

시스템 버스는 주소 버스 (address bus), 데이터 버스 (data bus), 제어 버스 (control bus) 로 분류

주소 버스데이터가 읽혀지거나 쓰여질 기억장소의 주소를 전송하는 통로CPU 가 외부로 발생하는 주소 정보를 전송하는 신호 선들의 집합주소 선들의 수 ( 주소 버스 폭 ) 에 의해 CPU 와 접속될 수 있는 최대 기억장치 용량이 결정주소 버스의 비트 수가 16 비트라면 , 최대 216 = 64K 개의 기억 장소들의 주소를 지정 가능• 최대 기억장치 용량이 64K

시스템 버스

Page 28: 4 장 .  컴퓨터 시스템의 구성과 기능

28

데이터 버스모듈들 사이의 데이터 전송 통로CPU 가 기억장치 혹은 I/O 장치와의 사이에 데이터를 전송하기 위한 신호 선들의 집합데이터 선들의 수는 CPU 가 한 번에 전송할 수 있는 비트 수를 결정한다 .

시스템 버스

Page 29: 4 장 .  컴퓨터 시스템의 구성과 기능

29

제어 버스데이터 버스와 주소 버스의 사용을 제어하는 신호들을 전송하는 통로CPU 가 시스템 내의 각종 요소들의 동작을 제어하기 위한 신호 선들의 집합기억장치 읽기 / 쓰기 신호 , I/O 읽기 / 쓰기 신호 , 전송 확인 , 버스 요구 , 버스 승인 , 인터럽트 요구 , 인터럽트 확인 , 클럭(clock), 리셋 (reset) 들이 전송

시스템 버스

Page 30: 4 장 .  컴퓨터 시스템의 구성과 기능

30

읽기 쓰기 동작을 모두 수행해야 하기 때문에 데이터 버스는 양방향성 (bi-directional)

요구와 확인 신호를 사용하므로 제어 버스는 양방향성 (bi-directional)

주소 버스는 주소가 CPU 로부터 기억장치 혹은 I/O 장치들로 전송되므로 단방향성 (uni-directional bus)

CPU 와 기억장치간의 데이터 이동

Page 31: 4 장 .  컴퓨터 시스템의 구성과 기능

31

입출력 장치 제어기 (I/O device controller)입출력 모듈

CPU 와 입출력 장치의 속도의 차이를 극복하기 위해 , 시스템 버스와 입출력 장치 사이에 존재

CPU 로부터 입출력 명령을 받아서 , 해당 입출력 장치를 제어하고 데이터를 이동시키는 명령을 수행

CPU 와 외부장치들과의 데이터 송수신

Page 32: 4 장 .  컴퓨터 시스템의 구성과 기능

32

입출력 장치 제어기 (I/O device controller)상태 레지스터• 입출력장치의 현재 상태를 나타내는 비트들을 저장한 레지스터• 준비상태 (RDY) 비트 , 데이터전송확인 (ACK) 비트가 해당 상태 표시

데이터 레지스터• CPU 로부터 입출력 장치간에 이동되는 데이터를 일시적으로 저장

CPU 와 입출력 장치간의 데이터 흐름

CPU 와 외부장치들과의 데이터 송수신

CPU ↔ 시스템 버스 ↔ 입출력 장치 제어기 ↔ 입출력 장치

Page 33: 4 장 .  컴퓨터 시스템의 구성과 기능

33

시스템 버스를 통한 구성장치의 연결

[ 그림 4-19] CPU 와 입출력장치간의 버스 연결

Page 34: 4 장 .  컴퓨터 시스템의 구성과 기능

Thank you