[컴퓨터 구조] 기본 개념과 발전

이강희·2021년 9월 1일
1

컴퓨터구조

목록 보기
1/1
post-thumbnail

1.컴퓨터 Architecture 와 컴퓨터 Organization

1.1 컴퓨터 Architecture

컴퓨터의 Architecture(아키텍쳐) 라 함은, 컴퓨터의 눈의 보이는 특성, 즉 기능적 특성을 이야기하는 것으로 구조적인 특성을 포함함과 동시에 눈에 보이는 특성을 이야기 한다.

1.2 컴퓨터 Organization

이와 반해 컴퓨터의 Organization이라 함은, 눈에 보이지 않는 특성, 즉 구조적인 특성에 대한 컴퓨터의 동작의 특성을 나타내는 것이다.

일반적으로 Arcitecture에서 Oraganization으로 갈 수록 low level -> high level이며 software -> hardware이다.

2.컴퓨터의 발전

2.1 IBM System과 370 Architecture

  • 1970년에 처음 소개
  • 하나의 Architecture에 대한 다양한 Organization의 사용을 가능케 함으로써,
    성능이 낮은 하드웨어부터 높은 하드웨어까지 선택의 폭을 넓힘으로써 하드웨어의 발전을 이끌어냈다.
    -이는 새로운 모델의 하드웨어가 기술적으로 발전하더라도 같은 Architecture를 사용함으로써
    소비자에게 Organization에 대한 부담을 줄일 수 있다.

2.2 구조 및 기능

  • Hierarchical system (계층 구조)
    계층구조로 나눔으로써 설계자는 자신의 계층만을 심도적으로 다루면 되기 때문에 다루기 쉽다.
    각 계층의 구조와 기능만을 설명함으로써 각 계층의 역할을 설명할 수 있다.

2.2.1 기능

  • Data processing
    데이터를 계산하고 사고함으로써 다양한 형태로, 다양한 범위에서 사용될 수 있도록 한다.

  • Data storage
    데이터의 저장

    -Long term : 하드웨어, 플로피 디스크 따위의 보조 기억 장치에서의 데이터 저장으로, 전원이 끊기더라도 오래도록 기억된다.
    -Short term : 메인 메모리에서의 데이터 저장. 전원의 공급이 끊길 시 사라진다.

  • Data movement
    Input과 Output을 통해 계산되거나 저장되어있는 정보를 사용자에게 출력, 또는 이를 입력받는 역할을 한다. 멀리 떨어져 있는 단말기 사이의 데이터 통신또한 이루어진다.

  • Control
    각 Control Unit이 컴퓨터의 리소스를 다루거나 활용한다.

2.3 Multicore Computer Structure

  • Central Processing Unit (CPU)
    -명령어의 전달과 실행 등을 담당하는 부분
    -ALU, Control Unit, 레지스터로 이루어져있다.

  • Core
    -개별적으로 Processing Unit의 역할을 한다. 근래에는 이 Core가 여러개가 모여 CPU를 구성한다.
    -Core마다 모두 똑같은 역할을 하는 것이 아닌, Core마다 어느 부분에 특화되어있는 기능을 가지는 경우가 있다.

  • Processor
    -하나 또는 두개 이상의 코어를 가지고 있는 물리적인, 실리콘으로 이루어진 파츠
    -명령어를 실제로 실행하고 해석하는 실질적인 구성요소
    -Multicore Processor란 여러개의 Core를 가지고 있는 것을 얘기한다.

2.4 Cache Memory

  • Processor와 메인 메모리 사이의 여러 계층을 가진 메모리 구조로, 메인 메모리보다 크기가 작아 저장 공간은 작지만 속도가 빠르다.
  • Processor는 순서대로 일을 처리하기 때문에 바로 다음에 사용되기 높은 메모리를 cache에 임시 저장하는데, 이를 Hit라 하고 반대의 경우는 Miss라고 한다. (보통 Cache의 Hit 적중률은 95%)
  • 규모가 큰 작업을 위해서는 여러 계층의 Cache를 사용함으로써 이에 대한 성능을 높힐 수 있다. Level1부터 Level3, 또는 그 이상의 계층을 가짐으로써 Level이 낮을수록 작고 빠르며 Core에 가까이 붙어있다.

2.5 컴퓨터 발전의 역사

2.5.1 1세대 : 진공관 컴퓨터

진공관이 디지털 로직과 메모리에 사용되었다.

  • IAS 컴퓨터
    -공통 개념은 1945년 EDVAC을 위해 설립되었고 수학자 John von Neumann에 의해 제시되었다.
    -1952년에 완성되었고 일반적인 목적의 컴퓨터의 프로토타입이 되었다.

2.5.2 2세대 : 트랜지스터

작고, 가격이 저렴하고, 진공관에 비해 열 발생이 적으며 실리콘으로 만들어진 고체 상태의 부품을 통해 신호를 전달한다.
Bell Labs에서 1947년에 개발되었으며 1950년대 후반까지는 모든 컴퓨터가 상업화되지 않았다.

  • 1세대 컴퓨터에 비해 복잡한 계산과 논리연산이 가능했으며 Control Unit또한 복잡했다.
  • High-level Programming Language(Fortran, Algol, etc)가 등장해 사용되었다.
  • 다음의 기능을 갖고 있는 시스템 소프트웨어를 제공했다.
    -프로그램 로드
    -타 기기로의 데이터 이동
    -계산과 관련된 공통 라이브러리

2.5.3 3세대 : Intergrated Circuits

1958년 IC(Intergrated Circuit-집적회로, 즉 여러가지 독립적인 요소를 집적하여 하나의 회로로 만든 것)
2세대 컴퓨터의 트랜지스터는 독립적인 트랜지스터로 존재했기 때문에 공정이 복잡하여 가격이 비쌌으며, 사람이 직접 회로 하나하나를 연결해야 했다.
3세대 컴퓨터의 대표주자로 IBM systemp/360, DEC PDP-8이 있다.

3세대 컴퓨터부터 앞서 소개한 4가지의 기능을 가지기 시작했으며 GatesMemory cells가 서로 연결된 구조로 이루어져있다.

하나의 웨이퍼로 여러개의 트랜지스터 제작이 가능했다.

제작되는 DIE의 크기를 줄일수록 가격은 줄어든다.
이때, 크기가 줄어들수록 DIE에 탑재되는 트랜지스터의 숫자가 줄어드는데,
이를 위해서는 트랜지스터의 크기를 줄여 탑재한다면 제조비용이 절감되는 효과가 발생한다.

Wafer의 순도를 높히는 방법도 있겠지만,
이는 제조공정에서 비롯된 것으로 발전이 쉽지 않으므로
DIE와 트랜지스터의 크기를 줄이는 것이 비용 절감에 더욱 효과적이다.

2.5.4 *Moore's Law

  • 1965년 Intel의 공동 설립자 Gordan Moore의 Moore's Law(무어의 법칙)
    -1970년대에는 18개월마다 트랜지스터의 숫자가 2배씩 증가
    -이후에는 매년 2배씩 증가
  • 이를 바탕으로 한 효과로
    -제작 비용 절감(기하급수적인 비용 절감)
    -트랜지스터와 트랜지스터 사이의 거리가 가까워짐으로써 전류가 흐르는 통로가 짧아져 작동 성능이 상승
    -컴퓨터의 크기가 작아짐으로써 다양한 환경에서의 사용이 편리
    -크기가 줄어들수록 전력 소모가 줄어듦으로써 Cooling이 편리
    -하나에 여러 트랜지스터를 탑재함으로써 Chip 사이의 연결이 줄어들어 구성이 간단

2.5.5 *Dennard scaling

  • 현대 트랜지스터를 만드는 방식인 MOSFET scaling 방식에서는 한 칩에 몇개의 트랜지스터가 들어가는지와는 상관 없이 소모되는 칩의 면적당 전력은 동일하다는 이론

-> 이 이론이 성립한다는 가정 하에 무어의 법칙과 Dennard scaling에 따른 컴퓨터의 기하급수적인 성능 발전이 가능하다.

2.5.6 Dennard Scaling이론의 붕괴

2006년 이전 까지는 해당 이론이 성립하였으나, 이후 트랜지스터의 개수에 따른 소모 전력이 증가

컴퓨터의 소모 전력은 Dynamic Power와 Static Power에 의해 결정된다.

Dynamic Power : 메모리가 0에서 1 또는 1에서 0으로 갈 때 소모되는 전력(대부분의 전력소모)
Static Power : 메모리가 0또는 1을 유지하고 있을 때 소모되는 전력

  • 컴퓨터의 성능이 발전함에 따라 쿨럭 수가 증가, Dynamic power은 해당 쿨럭 수(Frequency switched)와 전압에 비례한다. 따라서 Dynamic power가 증가
  • 트랜지스터의 크기가 작아지고 이에 따른 전압의 크기가 줄어들며 Dynamic power은 감소하였으나 트랜지스터의 개수가 늘어나면서 Static power의 크기에 영향을 미치는 leakage current가 증가하며 전력 소모가 증가했다.
    • 이 Static power을 줄이는 방안으로 빠른 쿨럭으로 작업을 처리하고 멈추는 방안이 있다.

2.5.7 대안

Dynamic power의 증가를 막기 위해서 더 이상의 쿨럭 수 증가는 불가
-> 컴퓨터 성능 발전에 제한이 발생

이를 해결하기 위한 방안으로 Multicore 가 등장했다.

  • 이를 통해 대부분의 Application의 성능 발전을 커버할 수 있다.
  • 하지만 이 또한 Static power의 증가를 야기한다.
    • 이를 해결하기 위해 작업에 필요한 Core만 사용하고 이 외의 Core는 동작하지 않게하여 전력 소모를 감소하는 방안이 고안되었다.
    • 이를 Dark silicon 이라고 한다.

3. 다양한 컴퓨터 요소

이 내용은 솔직히 크게 중요하지 않은 것 같아 URL을 남겨 놓겠다. 해당 벨로그의 4절 부분이다.
이후내용(From TECTEC Velog, 작성자의 허락을 받음)

~9/6 컴퓨터구조 by Dongguk Univ. Computer Science Engineering

profile
Dongguk Univ. Computer Science Engieneering👋

0개의 댓글