과목명 : 컴퓨터 구조(Computer Organization & Architecture)
수업일자 : 2022년 09월 08일 (목)
1. 컴퓨터 시스템의 조직
1-1. CPU(Central Processing Unit)
- CPU 또는 중앙 처리 장치는 컴퓨터 시스템을 통제하고 프로그램의 연산을 실행, 처리하는 가장 핵심적인 컴퓨터의 제어 장치입니다.
- 산술, 논리 연산 장치, 제어 장치, 레지스터(Register)로 구성됩니다.
1-2. RAM(Random Access Memory)
- RAM, 또는 메모리라고도 불리며 CPU에 의해 제어되는 컴퓨터의 주기억장치이며 주로 컴퓨터에서 프로그램이 실행될 때 필요한 명령, 데이터 등을 저장하는 역할을 수행합니다.
- 휘발성 메모리(Volatile memory)로써 컴퓨터의 전원이 꺼지면 모든 데이터가 소실됩니다.
- CPU와 직접적으로 통신하며 컴퓨터의 시스템을 제어할 수 있습니다.
1-3. 보조 기억 장치(Auxiliary memory)
- 주기억장치보다 속도는 현저히 떨어지지만, 컴퓨터의 전원이 꺼져도 모든 데이터가 보존되며 저장된 데이터가 사라지지 않고 영구적으로 보관할 수 있는 장치입니다.
- 대표적으로 하드 디스크(Hard Disk Drive, HDD), SSD(Solid State Drive) 등이 보조 기억 장치에 해당됩니다.
- CPU와 직접적인 통신이 불가능하므로 수행될 프로그램이나 데이터들이 RAM으로 적재된 이후에 CPU와 통신을 통해 적절한 처리가 이루어집니다.
- CPU, RAM에 비해 처리 속도가 느린 편이지만 용량이 큰 편이라 많은 데이터를 저장할 수 있습니다.
1-4. 입출력 장치(Input / Output Device)
- 컴퓨터와 사용자 사이의 정보를 교환할 수 있는 장치의 집합을 의미합니다.
(1) 입력 장치(Input device)
- 데이터를 컴퓨터가 인식할 수 있는 형태로 변환시켜 주기억장치로 읽어들이는 장치입니다.
- 대표적으로 마우스, 키보드 등이 있습니다.
(2) 출력 장치(Output device)
- 컴퓨터에서 처리된 내용을 사용자가 인식할 수 있는 형태로 바꾸어 출력해주는 장치입니다.
- 대표적으로 모니터, 프린터 등이 있습니다.
1-5. Software(소프트웨어)
- 컴퓨터 소프트웨어(computer software)는 컴퓨터에게 동작 방법을 지시하는 명령어 모임의 집합을 의미합니다.
(1) 시스템 소프트웨어(System software)
- 시스템 소프트웨어는 컴퓨터를 효율적으로 사용하기 위해 만들어진 소프트웨어를 의미하며 컴퓨터의 시스템을 제어하고 운영하는 프로그램으로 주로 운영체제(Operating system, OS)이 대표적인 시스템 소프트웨어입니다.
(2) 응용 소프트웨어(Application software)
- 시스템 소프트웨어의 상위 계층으로 특정한 상황이나 분야에서 사용되기 위해 개발된 소프트웨어를 의미합니다.
(3) 컴퓨터 구조(Computer architecture)와 컴퓨터 조직(Computer organization)의 비교
Computer Architecture | Computer Organization |
시스템의 기본적인 속성 중에서 개발자에게 보이는 부분 | 개발자에게는 보이지 않는 하드웨어 영역 |
프로그램의 논리적 수행에 직접적인 영향을 주는 시스템 특성 | 구조에서 정의한 사항들을 구현하기 위한 기능 유니트들 (Operational units)과 상호연결(Interconnection)을 말한다 |
Ex) 명령어 세트, 여러 가지 데이터들의 표현에 사용되는 비트들의 수, I/O 방식, 메모리의 주소 지정 방식 등 | Ex) 하드웨어의 세부사항인 제어 신호, 컴퓨터와 주변 기기들의 Interface, 메모리 Design 기술 |
어떤 컴퓨터가 곱셈 명령어를 가지게 할 것인지의 여부는 구조 설계 차원에서 결정되어야 할 사항 | - 해당 명령어를 특수 곱셈 유니트를 이용하여 구현할 것인지 또는 덧셈 유니트를 반복적으로 사용하여 곱셈을 하도록 할 것인지는 조직 설계의 차원에서 결정할 사항. - 조직 설계에 대한 결정은 곱셈 명령어의 예상 실행 빈도와 위의 두 방식 간의 상대적인 속도, 특수 곱셈 유니트의 가격과 크기 등을 고려 |
1-6. 컴퓨터 시스템의 기본 기능
- 데이터 처리
- 데이터 저장
- 데이터 이동
- 제어(Control)
(1) 컴퓨터의 동작 (좌측) : 외부 장치들간의 데이터 전달
(2) 컴퓨터의 동작 (우측) : 전송된 데이터 저장과 쓰기
(3) 컴퓨터의 동작(좌) : 저장된 데이터 처리
(4) 컴퓨터의 동작 (우) : 저장 장치와 외부 장치 간 데이터의 이동 및 처리
1-7. Internal structure of computer
2. 컴퓨터의 역사
컴퓨터의 세대별 기술 및 특징
세대 | 시기 | 기술 | 특징 | 속도 (초당 명령어, * 1000) |
1 | 1946 ~ 1957 | 진공관 | 일괄 처리 | 40 |
2 | 1958 ~ 1964 | 트랜지스터 | 다중 프로그래밍 실시간 처리 |
200 |
3 | 1965 ~ 1971 | 집적 회로 | 시분할 처리 | 1,000 |
4 | 1972 ~ 1977 | LSI(Large scale Intergration) | 인공지능 전문가 시스템 |
10,000 |
5 | 1978 ~ 1991 | VLSI(Very LSI) | 병렬처리 자연어 처리 |
100,000 |
6 | 1991 ~ | ULSI(Ultra LSI) | - | 1,000,000 |
2-1. 1세대 컴퓨터
- ENIAC(Electronic Numerical Integrator and Computer)
- John Mauchly and J. Presper Eckert가 설계하였습니다
- 진공관을 이용하여 제작된 컴퓨터로 크기가 매우 컸으며 열 발생량, 전력 소모가 심한 컴퓨터입니다.
- 기계어(Machine code), 어셈블리어(Assembly language)를 사용했습니다.
(1) ENIAC의 여러 가지 특징
- 10진법을 사용한 컴퓨터입니다.
- ENIAC은 주로 탄도를 계산하는 등의 군사 작전을 위해 설계되었습니다.
- 손으로 스위치를 조절하여 프로그래밍이 가능했습니다
- 무게 30t, 길이 24m, 높이 2.6m, 두께 0.9m의 사이즈를 가진 컴퓨터로 크기가 큰 편이었습니다.
- 약 18,000개의 진공관, 140kW의 전력 소비
- 1초에 5,000회의 덧셈 수행과 14회 곱셈 수행이 가능했습니다.
(2) 폰 노이만 구조(Von Neumann architecture)
- 폰 노이만 구조는 수학자이자 물리학자였던 존 폰 노이만과 다른 사람들이 서술했던 1945년 설명에 기반한 컴퓨터 아키텍쳐입니다.
- 프로그램 내장 방식의 최초 개념
- 프로그램이 데이터와 함께 메모리에 저장된다.
- 컴퓨터는 메모리에 적재된 데이터와 명령들을 읽어 계산을 수행한다.
- 폰 노이만 구조는 이후 범용 컴퓨터의 원형 모델이 되었다.
2-2. 2세대 컴퓨터
- 진공관을 트랜지스터로 대체한 컴퓨터입니다.
- 트랜지스터로 대체한 2세대 컴퓨터의 특징은 아래와 같습니다
(1) 기억 용량이 크게 증대
(2) 연산 속도 증가
(3) 컴퓨터의 크기 축소
(4) 열 발산, 전력 소모를 줄인 컴퓨터
- FORTRAN, ALGOL, COBOL등의 다양한 언어가 사용되었습니다.
- 운영체제(OS)의 개발이 이루어지며 다중 프로그래밍이 가능하게 되었습니다.
2-3. 3세대 컴퓨터
- 집적 회로(Integrated circuit)를 사용한 컴퓨터입니다.
- 집적 회로를 사용하여 컴퓨터의 가격이 저렴해졌으며 크기 또한 소형화되었습니다.
- 소프트웨어 산업의 비중이 크게 증가되었습니다.
- 시분할 처리를 통하여 멀티 프로그래밍을 지원했습니다
- Cache memory
- IBM 360 Series, UNIVAC 9000 Series , PDP - 11
(1) 무어의 법칙(Moore's law)
- 반도체칩의 기술의 발전 속도에 관한 법칙으로, 반도체칩에 집적할 수 있는 트랜지스터의 숫자가 18개월마다 2배씩 증가한다는 법칙입니다.
2-4. 4세대 컴퓨터
- 고밀도 집적 회로(Large Scale Integrated Circuit, LSI)를 기본 소자로 사용한 컴퓨터입니다.
- 칩 당 1,000개 이상의 부품을 IC에 집적한 회로이며 이로 인해 소형화와 저렴한 가격대가 형성되었습니다
- 4세대 컴퓨터의 등장으로 개인 컴퓨터(Personal Computer, PC)의 대중화가 진행되었습니다.
- IBM 4300, 3030 Model
2-5. 5세대 컴퓨터
- 초고밀도 집적 회로(Very Large Scale Integrated, VLSI)을 기본 소자로 사용했습니다.
- 칩 당 10,000개 이상의 부품을 IC에 집적한 회로입니다.
- 경영정보, 지식 정보 시스템, 인공지능 신경망, 퍼지, 멀티미디어 가상현실을 목표로 하여 제작되었습니다.
- PC 인터페이스를 사용자가 친숙하게 다룰 수 있도록 GUI(Graphic User Interface)를 기반으로 하여 구현되었습니다.
- 다중 프로세서를 사용한 병렬 처리 컴퓨터 시스템입니다.
2-6. Intel x86 구조의 발전 과정
제품 | 시기 | 클럭 속도 | 버스 폭 | 특징 |
8080 | 1974 | 2MHz | 8 bits | 첫 번째 범용 마이크로프로세서 |
8086 | 1978 | 5~10MHz | 16bits | 명령어 캐시, 프리 패치된 명령어 |
80286 | 1982 | 6~12.5MHz | 16bits | 메모리의 주소 지정을 16MB로 확장 |
80386 | 1985 | 16~33MHz | 32bits | 첫 번째 32비트 기계, 멀티태스킹 지원 |
80486 | 1989 | 25~50MHz | 32bits | 강력한 캐시 기술, 명렁어 파이프라이닝, 산술 보조 프로세서 내장 |
Pentium | 1993 | 60~166MHz | 32bits | 슈퍼 스칼라(다수의 명령어를 병렬로 실행) |
Pentium Pro | 1995 | 150~200MHz | 64bits | 슈퍼 스칼라, 레지스터 재명령, 분기 예측, 데이터 흐름 분석, 선행 실행 기능 |
Pentium II | 1997 | 200~300MHz | 64bits | MMX 기술(멀티미디어 처리용) |
Pentium III | 1999 | 450~660MHz | 64bits | 3차원 그래픽 SW 지원용 부동 소수점 명령어 추가 |
Pentium 4 | 2000 | 1.3~1.5GHz | 64bits | 부동 소수점 명령어 추가, 멀티미디어 기능 강화 |
Core 2 Duo | 2006 | 1.06~1.2GHz | 64bits | 하나의 칩에 2개 프로세서 포함 |
Core 2 Quad | 2008 | 3GHz | 64bits | 하나의 칩에 4개 프로세서 포함 |
2-7. 임베디드 시스템과 ARM(Advanced RISC Machine)
(1) 임베디드 시스템(Embedded System)
- 특정 기능을 수행하기 위해 설계된 컴퓨터 하드웨어, 소프트웨어 및 추가적인 기계 혹은 기타 부품들의 결합체를 의미합니다.
- 범용 컴퓨터와 달리 제품 내에서 사용되는 전자장치 및 소프트웨어를 말합니다.
(2) 임베디드 시스템의 예시
- 자동차의 엔진 제어 시스템, 브레이크 시스템
- 디지털 TV, STB, 이동전화 단말기 등의 가전
- 팩스, 스캐너, 프린터
- 제조용 로봇 및 제어 시스템 등
- 학부에서 수강했던 전공 수업 내용을 정리하는 포스팅입니다.
- 내용 중에서 오타 또는 잘못된 내용이 있을 시 지적해 주시기 바랍니다.
'전공 수업 > 컴퓨터 구조(Computer Architecture)' 카테고리의 다른 글
[6주 차] - 메모리(데이터) 참조 지역성, 캐시(Cache) 메모리 (1) (0) | 2022.10.18 |
---|---|
[5주 차] - 컴퓨터의 기능과 상호 연결 (2), 기억 장치 시스템의 특성 (0) | 2022.10.02 |
[4주 차] - 컴퓨터 시스템의 성능 (2), 컴퓨터의 기능과 상호 연결 (1) (4) | 2022.09.25 |
[3주 차] - 컴퓨터 시스템의 성능 (1) (0) | 2022.09.19 |
[1주 차] - 수업 개요 (0) | 2022.09.01 |
댓글