포털:고등학교/정보·통신 계열 전문 교과(2015)/컴퓨터 구조/주기억 장치

주기억 장치의 개요 편집

  • 주기억 장치는 초창기 컴퓨터에서 많이 사용한 자기 코어 방식의 기억 장치와 반도체형 기억 장치로 나눌 수 있다.
  • 주기억 장치는 실행될 프로그램과 데이터를 저장한다.
  • 주기억 장치에 기억되는 데이터는 프로그램 처리를 위하여 입력되는 내용, 실행 중간에 생성되는 자료, 처리가 끝난 후 출력해야 할 내용이다.
  • 주기억 장치에 들어오는 주소 선과 데이터 선은 여러 곳에서 들어올 수 있고, 또 여러 곳으로 나갈 수 있다.
  • 기억 장치의 주소 선은 중앙 처리 장치 안에 있는 기억 장치 주소 레지스터에 연결되어 있다.
  • 기억 장치와 기억 장치 외부와의 데이터 전송은 기억 장치 버퍼 레지스터를 통해서 이루어진다.
  • MAR와 MBR는 기억 장치와 기억장치의 외부에 데이터를 원활히 전달할 수 있도록 버퍼의 작용을 한다.
  • 기억 장치는 주소 선택 회로, 기억 매체 및 버퍼(기억 회로 및 판독 회로)로 구성되어 있다.

자기 코어 기억 장치 편집

  • 자기 코어 기억 장치는 페라이트(ferrite)라는 자성 물질로 만들어졌으며, 링 모양을 하고 있다.
  • 크기는 지름이 0.3~0.5mm 정도이며, 코어의 중앙에 여러 개의 선이 지나가도록 하여 코어의 자화 상태를 검출하도록 되어 있다.
- 전류가 오른쪽으로 흐를 때 '1'의 상태로 자화를 유지한다.
- 흐르지 않을 때 '1'의 상태를 유지한다.
- 전류가 왼쪽으로 흐를 때 '0'의 상태로 바뀐다.
- 흐르지 않을 때 '0'의 상태를 유지한다.
  • 1개의 자기 코어는 1비트의 데이터를 기억하는 기억 소자라고 할 수 있다.
  • 페라이트는 자화되기 쉽고, 한 번 자화되면 외부 영향을 받지 않는 한 현재의 상태를 유지하는 성질이 있으므로 기억 매체로서 매우 우수한 편이다.
  • 실제로 자기 코어 기억 장치는 코어를 가로, 세로 64개씩(4069) 또는 가로, 세로 128개씩(16384)의 자기 코어를 평면으로 된 기관에 배열한 것을 단위로 해서 사용하고 있는 것이 대부분이다.
  • 자기 코어 기억 장치를 자기 코어 매트릭스라고 하며, 이렇게 된 한 장의 자기 코어 매트릭스 면을 코어 플레인이라고 한다.
  • 코어 플레인을 필요한 매수만큼 겹쳐서 기억 장치의 한 단위로 한 것을 코어 스택(Core Stack)이라고 한다.

반도체 기억 장치 편집

전원이 꺼지면 자료가 없어지는 RAM(random access memory)과 전원이 꺼져도 자료가 보존되는 ROM(read only memory)으로 구분된다. 반도체 기억 장치는 IC(Integrated circuit)칩으로 되어있다. 임시로 데이터를 저장하는 레지스터가 기억 장치 안에 있다. MAR에 주소가 입력되고 읽기 제어 신호가 들어오면 기억 장치 내에서는 MAR에 저장된 주소에 해당하는 값을 MBR로 보내준다. 중앙 처리 장치는 이 MBR에 있는 값을 받아서 사용한다.

반도체 기억 장치의 종류 편집

크게 입의 접근 기억 자잋와 읽기 전용 기억 장치로 나눌 수 있다.

  • RAM(Ramdom Access Memory)

- 임의의 기억 장소에 사용자가 작성한 프로그램이나 데이터를 저장시킬 수 있고, 프로그램을 실행시키고 싶을 때 그 내용을 읽어 낼 뿐만 아니라, 자유롭게 변경시킬 수도 있는 기억장치이다.(RWM - read write memory라고 부르기도 함) - 램은 전원이 없으며 기억 내용이 사라지는 휘발성을 가진다. - 램의 값을 읽기 위해서는 n비트 크기의 주소를 램에 전달하고, 램은 해당 주소에 있는 8 bit, 즉 1 byte의 값을 되돌려 준다.

  • RAM의 종류

1) SRAM(Static RAM)

- 기억을 유지시키기 위해 플립플롭으로 만들어진다.전원을 끄지 않는 한 내용을 그대로 유지하고 액세스 타임도 고속이며, 용량도 여러 가지가 개발되고 있다.
- SRAM은 속도가 빠른 대신 가격이 비싸서 캐시 메모리로 많이 사용한다.

2) DRAM(Dynamic RAM)

- 기억 소자가 커패시터 형태로 이루어져 있기 때문에 전원을 끊으면 기억 내용이 사라진다.
- 전원이 공급되어도 커패시터 특성상 내용이 사라지므로 내용이 사라지기 전 수마다 다시 충전을 시켜 주는 동작이 필요하다. 이러한 동작을 회생(refresh)라고 하며, 자동적으로 실행되도록 메모리 주변에 회생 회로가있어야 한다.
- SRAM에 비해 기억 구조가 단순하여 가격이 저렴하다.
- DRAM은 FPMRAM → SDRAM → DRDRAM → DDR1 → DDR2→ DDR3→ DDR4 순으로 발전해 오고 있다.
  • RAM의 구성

램(RAM)은 장치를 선택하고 활성화할 수 있는 하나 이상의 제어 입력을 가짐으로써 프로세서와 정보를 주고받을 수 있다. 램과 데이터 버스 사이에는 외부 버스 버퍼가 필요 없도록 양방향 데이터 버스를 가지고 있다. - 64Byte×2개 램 칩의 구성 64Byte×2개인 램 칩의 기억 용량은 128Byte × 8bit로 7비트의 주소 버스와 8비트의 양방향 데이터 버스로 구성된다. - 64K DRAM 64K DRAM은 머리카락 굵기의 1/50 정도인 가는 선 800만 개가 2.6mm×5.7mm의 작은 실리콘 판 위에 집적되는 정밀 제품으로, 15만 개의 소자(cell)가 들어 있어 8,000자를 기억할 수 있는 초고밀도 집적 회로이다.

  • ROM(Read Only Memory)
- 한번 기록한 데이터를 빠른 속도로 읽을 수 있지만, 다시 기록할 수 없는 메모리를 말한다.
- 전원이 끊어져도 정보가 없어지지 않는 비휘발성 장치이다. 문자 패턴 발생기나 코드 변환기처럼 행하는 처리가 일정하고 다량으로 사용되는 것은 기억할 정보를 소자의 제조와 동시에 설정하기 때문이다. 따라서 롬은 정보를 소자의 구조로서 기억하고 있으므로 바꾸어 쓸 수가 없는 것이다.
  • ROM의 종류

1) 마스크 롬(Mask ROM)

- 사용자가 요청한 내용을 생산 단계에서 롬에 기록하여 생산한다. 같은 내용의 롬을 대량 생산할 때 적합하다.

2) PROM(Programmable ROM)

- 개인 사용자가 한 번은 데이터를 써 넣을 수 있는 프로그램이 가능한 롬이다. 단, 한 번 쓴 내용을 지울 수 있는 것과 지울 수 없는 것이 있다.

3) EPROM(Erasable and Programmable ROM)

- 롬 라이터(ROM writer)로 쓰고, 롬 이레이저(ROM Eraser)로 지울 수 있는 롬이다.

4) EEPROM

- 별도의 롬 라이터나 롬 이레이저 없이 전기 신호를 사용하여 자료를 기록하고 수정할 수 있으나 횟수가 한정되어 있는 롬이다.

5) Flash Memory

- 읽고 쓰기가 가능한 EEPROM을 변형한 것이다. 전원공급이 없어도 기록된 내용을 보존하는 ROM의 특성과 임의로 쓰고 지우기가 가능한 RAM의 특성을 가지고 있다. 속도는 RAM이나 EEPROM에 비해 느리다. 흔히 USB 메모리로 부르며, 우리가 사용하는 이동형 저장 장치가 플래시 메모리이다. 다만 특정 기억 공간에 10만 번 이상을 기록하면 그 공간이 파손되는 특성이 있어 기록할 때 특정 공간에만 집중적으로 쓰고 지우는 일이 발생되지 않도록 하는 것이 필요하다.
  • ROM의 구성
- 칩에 특정 주소(어드레스)가 입력되면 주소 해독기에 의해 주소가 해독되고 해당 주소의 자료가 출력 버퍼로 복사된다.
- 출력 버퍼의 자료는 칩 선택 신호에 따라 출력된다.
- 일반적인 롬은 임의 쓰기가 불가능하므로 쓰기를 위한 버퍼는 없다.

주기억 장치의 관리 편집

1) 기억 장소 분할 방식

- 고정 분할 방식(Fixed Partition) : 주기억 장치를 고정된 크기로 미리 분할하여 사용자 프로그램이 차지하는 실행방식
- 동적 분할 방식(Dynamic Partition) : 가변 크기로 필요한 공간만큼 할당하여 사용하는 방식으로, 작업이 빈번해지는 경우 공간의 재배치와 할당 알고리즘이 필요한 방식

2) 기억 장소 할당 방법

- 최초 적합 (First Fit) : 할당 가능한 공간 중 가장 먼저 발견한 공간을 할당하는 방법
- 최적 적합 (Best Fit) : 할당 가능한 공간 중 가장 작은 공간을 할당하는 방법
- 최악 적합 (worst Fit) : 할당 가능한 공간 중 가장 큰 공간을 할당하는 방법