02.Architecture.ppt [호환 모드] - Welcome to SNU Biointelligence...
Transcript of 02.Architecture.ppt [호환 모드] - Welcome to SNU Biointelligence...
컴퓨터의구조
CompanyCompanyLogo
@@
2010년 2학기 컴퓨터의 개념 및 실습
서울대학교 통계학과
(http://dcom10.ez.ro)
컴퓨터 = 하드웨어 + 소프트웨어
하드웨어전자회로및 기계장치전자회로및 기계장치
입출력장치, 중앙처리장치, 기억장치
버스(Bus): 각 구성요소들을연결하는데이터의통로
소프트웨어하 웨어 제어하여작업 수행하 램하드웨어를제어하여작업을수행하는프로그램
명령문과데이터로구성
사람이이해하기쉬운고급언어로작성사람이이해하기쉬운고급언어로작성
C, Java, … 작성된프로그램은컴파일러에의해기계어로바뀜
컴퓨터의기본구성요소
입력장치
가 있 데이컴퓨터가처리할수 있는형태로데이터/명령을받아들임
프로세서(Central Processing Unit, CPU)실제적으로컴퓨터명령어들을수행실제적으로컴퓨터명령어들을수행
출력장치
처리된데이터를사람이이해할수있는형태로 출력
저장장치(보조기억장치)데이터나프로그램을 보관하기위한디스크등
주기억장치를주기억장치를보조
입출력(I/O) 장치 보조기억장치 멀티미디어장치입출력(I/O) 장치, 보조기억장치, 멀티미디어장치
주변장치 (Peripheral equipment)
PC Hardware: 기본구성도
컴퓨터의기본구성요소컴퓨터의기본구성요소
1. 입력 장치 (Input)
2. 중앙처리장치 (CPU)
3. 주기억 장치 (Memory, Primary Storage)
4. 출력 장치 (Output)
5 보조 기억 장치 (Secondary Storage)5. 보조 기억 장치 (Secondary Storage)
1. 입력장치
타이핑(typing): 키보드
포인팅(pointing): 마우스
스캐닝(scanning): 스캐너스캐닝(scanning): 스캐너레이저광선을이용하여문서, 기호, 사진등의인쇄물을직접읽어들임
Barcode reader, handheld/flatbed scanner
단말기(terminal)입력장치 + 화면 + 대형컴퓨터와의연결장치
다양한입력장치
2. 중앙처리장치
프로세서 (processor)프로그램을실행
입력, 출력, 저장장치제어
중앙처리장치 (C l P i U i CPU)중앙처리장치 (Central Processing Unit, CPU)
GPU
GPU (Graphic Processing Unit)2D/3D 그래픽 처리에특화된마이크로프로세서2D/3D 그래픽 처리에특화된마이크로프로세서
GPGPU (General Purpose GPU)GPU를 CPU 처럼 ‘범용’ 처리장치로활용GPU를 CPU 처럼 ‘범용’ 처리장치로활용
애플 A4: CPU와 GPU를결합한프로세서 iPad iPod 4G 애플 A4: CPU와 GPU를결합한프로세서. iPad, iPod 4G, 애플TV 등에장착
그래픽카드 마더보드
중앙처리장치
CPU = ALU + CU + Register산술 논리연산장치 (A ith ti /L i U it ALU)산술, 논리연산장치 (Arithmetic/Logic Unit, ALU)
산술연산과논리연산을수행하는디지털회로
제어장치 (Control Unit, CU)제어장치 (Co t o U t, CU)프로그램에따라명령과제어신호를생성
정보와데이터의흐름을결정하고, 각종장치의동작을제어어
임시기억장소 (Register)CPU에서사용하는데이터를일시적으로저장CPU에서사용하는데이터를일시적으로저장
프로그램에의한중앙처리장치동작과정
주변장치주기억장치의기계어코드 중앙처리장치중앙처리장치
레지스터
ADD R2, R3, R5 제어장치(CU)R1R2
제어신호제어장치(CU) R2
R3ADD
R4R5
ADD
산술논리연산장치(ALU) R6R7
데이터값데이터값
PC의성능및용량
정보처리성능8 비트 M hi 동시에 1바이트(8비트) 처리8-비트 Machine: 동시에 1바이트(8비트) 처리
64-비트 Machine: 동시에 8바이트(64비트) 처리
컴퓨터처리속도MHz/GHz: 초당처리되는 machine cycle의 수/ yMIPS: Million Instruction Per SecondMFLOPS: Million Floating-point Operation Per SecondGFLOPS, TFLOPS
Intel Pentium: 10 GFLOPSIBM Cell (PS3): ~200 GFLOPS( )Cray X1E: 2.4 TFLOPS,Cray Baker: 340 TFLOPS
PC의성능및용량
기억용량의표현(2진법, digital)KB 1 kil b t 210 b t 1024 b tKB: 1 kilobytes = 210 bytes = 1024 bytesMB: 1 megabytes = 1024KB = 220 bytesGB: 1 gigabytes = 1024 MB = 230 bytesGB: 1 gigabytes 1024 MB 2 bytes
숫자단위 (10진수)
- Kilo Mega Giga Tera Peta Exa Zetta Yotta103 106 109 1012 1015 1018
숫자단위 (10진수)
- Googol
10 106 109 1012 1015 1018
10100
참고: 한국의숫자단위 일 십 백 천 만 억 조 경
해 자 양 구 간 정 재 극 항하사 …
3. 메모리
주기억장치 (일차기억장치)주기억장치 (일차기억장치)
프로그램과데이터는메모리에저장이되어있어야프프로그램과데이터는메모리에저장이되어있어야프로세서에의해처리될수있음.
기억용량주기억장치가기억할수있는자료의양주기억장치가기억할수있는자료의양
주기억장치
프로그램수행을위해필요한정보에비해 ‘레지스터’의용량은너무작음의용량은너무작음
정보를저장해두었다가필요할때읽어들이는저장소로이용됨 명령어(프로그램)와 데이터를저장로이용됨 명령어(프로그램)와 데이터를저장
주소(address)를통해자료의위치를지정주소(address)를통해자료의위치를지정8/16/32/64 비트단위로읽고씀 워드(word)읽기/쓰기/연산단위인워드의길이에따라성능이달라짐/ /접근시간(Access time) : 읽고쓰는데걸리는시간
주기억장치의종류 RAM + ROM
주기억장치의종류
RAM (Random Access Memory)전원이끊어지면내용이지워진다
보조저장장치가반드시필요함
RAM의크기는프로그램의수행속도에영향을줌RAM의크기는프로그램의수행속도에영향을줌
CPU에서직접접근이가능한유일한저장장치
(cf. 하드디스크)(cf. 하 디스크)
주기억장치의종류
SRAM (Static RAM)리프레쉬( f h)가필요없음리프레쉬(refresh)가필요없음
충전된전하를정기적으로재충전
전력소모가적다. 비싸다.전력 가적다. 비싸다.
DRAM (Dynamic RAM)리프레쉬(refresh)가필요
SRAM 보다저가, 많이사용됨
SDRAM (S h DRAM) DDR (D bl D R ) SDRAM (Synchronous DRAM), DDR (Double Data Rate) SDRAM, RDRAM (Rambus DRAM)
주기억장치의종류
ROM (Read Only Memory)대부분읽을수만있는장치대부분읽을수만있는장치
전원이끊겨도내용이보존됨
컴퓨터부팅시자동으로수행되는명령어저장컴퓨터부팅시자동 수행되는명령어저장
PROM(Programmable ROM)한번 램가한번프로그램가능
EPROM(Erasable PROM)EPROM(Erasable PROM)내용변경가능
캐시(cache) 메모리
자주사용되는내용을일시적으로저장하여프로그램실행속도를향
레지스터
로그램실행속도를향상시키기위해사용하는메모리
Cache memory
속도가빠르고 가격저렴 메 리
CPU 캐시, 디스크캐시, 웹캐시등다양한종류
주기억장치속도가빠르고용량이작다
가격저렴
가있다.보조기억장치
참고: 최근 CPU 캐시는 L1 cache와 L2 cache로구성
<기억장치의계층적 구조>
4. 출력장치
모니터니터
프린터
출력장치: 모니터
컴퓨터에서나오는글자, 그림등의결과를화면에보여주는장치
크기 ‘인치’로나타냄 (예 19인치 21인치)크기: ‘인치’로나타냄 (예: 19인치, 21인치)해상도(resolution)
화면에나타나는그림이나글자의선명도를결정하는요소화면에나타나는그림이나글자의선명도를결정하는요소
화면에서가로와세로로각각몇 개의 점(pixel)을 나타낼수
있는가를의미
예) 800×600 : 800개의점으로구성된가로줄이 600개실제화면의해상도: 모니터 + 그래픽카드에의해서결정됨
출력장치: 모니터
그래픽카드주기억장치에서만들어진글자나그림을모니터에나타내기위한전자신호로변환하는카드
사용하는카드의종류에따라최대해상도 재생주기 표현할사용하는카드의종류에따라최대해상도, 재생주기, 표현할수있는색상의수가결정됨
비디오메모리
그래픽카드가가지고있는자체기억장치
모니터에나타낼자료를미리만드는데사용됨
최소한 4MB가 있어야 1600만색상(24비트)을 1280 ×최소한 4MB가 있어야 1600만색상(24비트)을 1280 ×1024의해상도로표현가능
출력장치: 프린터
전자장비에저장되어있는문서를입력받아종이등에인쇄하는장치입력받아종이등에인쇄하는장치
종류
내용물의색상: 흑백, 컬러
인쇄방식: 레이저, 잉크젯, 도트매트릭스매트릭스
5. 보조기억장치
보조기억장치프로그램이나자료를영구적으로기억할수 있는기억장치프로그램이나자료를영구적으로기억할수 있는기억장치
주기억장치에비해기억된내용을읽는속도는느리지만대용량기억이가능
현재사용하지않는프로그램은보조기억장치에저장
작업이수행될때, 보조기억장치에서주 기억장치로정보를이동함 (program loading)함 (program loading)
보조기억장치의종류기억장치의종류자기디스크 - FDD, HDD광디스크 - CD, DVD플래쉬메모리 – USB flash drive, CF (compact flash), SSD (solid state drive)
자기디스크
원반표면의철입자의방향원반표면의철입자의방향(N/S극)으로 0/1을표현
디스크드라이브: 자기디스기크로부터데이터를읽는주변장치
플로피디스크(FDD) 3.5인치, 5.25인치
하드디스크(HDD)하드디스크(HDD)
하드디스크(HDD)
하드디스크 (HDD, Hard Disk Drive)하 디 ( , )원판(디스크) 표면에입힌자성체의극성
(N, S극)을이용하여 0과 1을표현
물리적구성스핀들(중심축) 플래터(원판) 암(arm) 스핀들(중심축), 플래터(원판), 암(arm), 헤드(head) 등으로구성
성능좌우요소성능좌우요소회전속도(예: 7200 rpm)용량 (예: 1 5 테라바이트(TB) 500 기가바이용량 (예: 1.5 테라바이트(TB), 500 기가바이트 (GB))버퍼용량 (예: 8 메가바이트(MB))
CD-ROM
C t Di R d O l Compact-Disc, Read-Only Memory120mm 또는 80mm 크기의120mm 또는 80mm 크기의광디스크
용량: 650/700/800/900 MB데이터전송속도데이터전송속도
1/2/4/8 … /72 배속
DVD-ROM
Digital Video Disc Read Only MemoryDigital Video Disc, Read Only Memory4.7GB~8.5GB멀티미디어용으로많이사용
(참고)(참 )HD DVD: 15~30GB
lBlu-ray Disc: 25~50GB
플래쉬메모리, SSD
플래쉬(flash) 메모리전자적으로데이터를지우고쓸 수있는비휘발성메모리 전자적으로데이터를지우고쓸 수있는비휘발성메모리. 움직임충격에강하여휴대용기기에널리쓰인다
플래쉬메모리의종류플래쉬메 리의종류USB flash drive – USB 인터페이스를장착한 NAND타입의메모리
SD (Secure Digital), microSDCF (CompactFlash)
SSD (Solid State Drive)HDD와는달리디스크/헤더와같은기계적장치가빠짐
HDD와비교하여저전력 저소음 저중량HDD와비교하여저전력, 저소음, 저중량
버스 (BUS)
데이터의통로역할을함 버스의구성예데이터의통 역할을함
칩내부의연결통로
칩외부의연결통로 CPU I/OMEM
버스의폭(동시에보낼수 있는정보의양)은 ALU Register의정보의양)은 ALU, Register의워드단위와일치함
CPU I/OMEMCPU I/OMEM
참고: USB = universal serial bus
컴퓨터및 CPU의구현방식컴퓨터및 CPU의구현방식
데이터의 표현(문자, 숫자)
명령어의 표현
버스
중앙처리 장치(CPU)의 구현
컴퓨터의동작방식 (revisited)
Von Neumann 구조내장형 램방식내장형프로그램방식 (명령어와데이터를동등하게기억장치에저장)중앙처리장치앙
컴퓨터의모든구성요소를관리하고, 프로그램을실행시키는역할
기억장치기억장치
프로그램과데이터를저장
프로그램의실행프로그램의실행중앙처리장치는기억장치에저장된명령어를기억장치에서순서대로읽고, 해석하여명령어가지시하는동작을수행
기억장치
기억장치 주소 저장 내용 기억장치 주소 저장 내용
…
16 변수 X 에 3 을 저장한다.
20 변수 Y 에 1 을 저장한다 프로그램
24 변수 X 와 Y 를 더해 Z 에 저장한다
…
32 X : 3
36 Y : 1 데이터 36 Y : 1
40 Z : 4
컴퓨터내부의데이터표현
컴퓨터에서의정보단위꺼짐 과켜짐 의전기적상태 과 간주하기 약속함꺼짐(off)과켜짐(on)의전기적상태를 0과 1로 간주하기로약속함
1 bit8 bits = 1 byte 28=256가지의정보를표현8 bits 1 byte 2 256가지의정 를표현
워드(word): 컴퓨터의데이터처리단위
숫자의표현
정수의표현정수의 현
2진수로표현됨
3 bit로 표현할수있는숫자: 0 ~ 7 (8개)3 bit로 표현할수있는숫자: 0 7 (8개)보통 32 bit 또는 64 bit로 숫자를표시
소수의표현소수의표현
문자의표현
문자하나를숫자하나에대응시킴 코드테이블을문자하나를숫자하나에대응시킴 테이블을이용
ASCII (American Standard Code for Information (Interchange)Unicode
UTF (Unicode Transformation Format) encodings UCS (Universal Character Set) encodings
ASCII Table
한글문자의표현
조합형코드 완성형코드
초성, 중성, 종성을각각5bit로 표현
약 3000자의글자를순서대로배열한후 번호를매김김
1 0 0 0 1 0 0 0 0 1 1 1 0 1 1 1 숫자
(16 진수 )문자
영어 = 0한글 = 1
초성 ‘ㄱ’ 중성 ‘ㅏ’ 종성 ‘ㅇ’ B0A1 가
B0A2 각
B0A3 간B0A3 간
... ...
유니코드유니코드
조판시스템에서표현하는가능한모든글자를부호화함
현재 107,000 이상의글자를표현
명령어의표현
컴퓨터마다이진수로표현되는명령어(instructor) 집컴퓨터마다이진수 현되 명령어( ) 집합이존재
예) A1 A2 + A3)Load A2, 3 : (hexadecimal) 05 02 00 03Load A3, 1 : 50 03 00 01ADD A1, A2, A3 : 70 01 02 03
CPU의구현 - 마이크로프로세서
마이크로프로세서CPU의기능을하나의전자칩에올린형태의프로세서
구현방식: CISC / RISC EDVAC구현방식: CISC / RISC성능향상의기법
Pipelining Pipelining 멀티코어
무어의법칙
DEC PDP-8/I
무어의법칙Intel 8742
80486DX2
Pentium MMXPentium 4
CPU 명령어구현방식
CISC Complex Instruction Set Computer복잡한내부명령어를많이가짐
필 에따라여러명령어집합 제필요에따라여러명령어집합을제공
예: x86 계열의모든 CPU
RISC Reduced Instruction Set Computerp필수적인명령어만제공함 (CISC의 30%)명령어의조합을통해복잡한작업수행
을 통해속 향상을꾀함Pipeline을 통해속도향상을꾀함
참고: Apple A4는 RISC 계열의 ARM 구조의프로세서임
Pipeline
명령어를몇개의수행단계로나누어서각단계를명령어를몇개의수행단계 나누어서각단계를하나의클럭사이클에수행
명령어의수행단계들을동시에처리
일종의병렬처리
명령어의수행시간이균등할수록효과적임
5 단계 Pipeline IF
1 단계 : Instruction FetchIFID
단계명령어를메모리에서가져옴
2 단계 : Instruction DecodeID IFEX
명령어를해석
3 단계 : ExecutionEX
M
ID
EX
IF
ID IF
M
WB명령어실행
4 단계 : Memory access
M
WB
EX
M
ID
EX
IF
ID
WB
읽거나쓸 메모리특정위치에접근
5 단계 : Write Back레지스터에다시씀
WB M EX레지스터에다시씀
WB M
WB
멀티코어프로세서
하나의 IC칩에여러개의독립적인프로세서(코어, 하나의 칩에여러개의독립적인 세서( 어,core)를둔프로세싱시스템
배경배경개별칩의성능이물리적한계에
다다름에따라시장의업그레이드다다름에따라시장의업그레이드
수요를맞추기위해(참고: 무어의법칙) 등장
종류Dual-core: 두 개의코어
듀얼코어프로세서구조의예Dual-core: 두 개의코어
Quad-core: 네 개의 코어
Hexa-core: 여섯개의코어
인텔칩의역사
Intel CPU (IBM PC에도입)초기의 8086과호환성을유지하면서성능을향상시킨것이계속적인성공의열쇠
4bit CPU: 4004 (1971), 40408bit CPU 8008 8080 80858bit CPU: 8008, 8080, 808516bit CPU: 8086/8088 (1978~79), 8028632bit CPU: 80386, 8048632bit CPU: 80386, 80486Pentium (1993)Pentium Pro (1995)Pentium II (1997): Pentium Pro + MMXPentium III, Pentium IV64bit CPU P ti M P ti D C 264bit CPU: Pentium M, Pentium D, Core 2
무어의법칙(Moore’s Law)
CPU 내트랜지스터의수가 18~24개월만에두배가된다는법칙 (기하급수적증가 ti l th)다는법칙 (기하급수적증가, exponential growth)
(그림출처: Wikipedia, Moore’s Law)