Memory (기억장치)

aisle333·2024년 4월 19일

컴퓨터 공학

목록 보기
13/19

Memory (기억장치)

computer에서 데이터를 기억하기 위해 사용하는 device의 총칭

기억장치의 구성

Memory Component

보다 많은 bit를 기억하기 위해서는 register들을 많이 사용해야하는데,
이 경우 어느 register에 저장할지를 지정해야 하고, 이를 다시 load할 때도 어느 register에서 load할지를 지정해야 한다. 이로인해 도입된 address는 memory의 특정 위치를 가르키며 실제 data가 memory의 어디에 저장되어있는지를 나타낸다.


Decoder (이진수를 one-hot code로)를 통해, address를 이용하여 실제 저장된 register를 선택.
Selector (Mux)를 이용하여 여럿 연결된 register의 출력 중 address에 해당하는 register의 출력을 출력.
tri-state output을 선택하여 여러 memory component들을 묶음.

주기억장치

CPU 가 직접 참조하는 고속의 메모리 (DRAM임)로 프로그램이 실행될 때 필요한 프로그램이나 자료를 보조 기억 장치로부터 이동시켜 실행시킬 수 있는 기억 장소이다
프로그램을 기억하는 프로그램 영역과 입력 자료를 기억하는 영역, 출력 자료를 기억하는 영역, 작업을 실행하여 중간 계산 결과를 기억하는 작업 영역으로 구성된다.

  • 저장된 내용이 변경될 때까지 그대로 유지시켜야 하며 새로운 내용으로 바뀔 수 있어야 함.
  • 주기억장치의 데이터는 저장된 순서에 관계없이 (가급적) 같은 시간에 접근할 수 있어야 함.
  • 원하는내용에 쉽게 접근가능해야함.
  • access time이 짧을수록 유리
  • 가능한 많은 양의 데이터 저장할수록 유리
  • 실행이 완료된 명령이 다른 명령으로 교체되어 신속하게 실행됨
  • 전원이 꺼지면 빠르게 실행할 일이 없기 때문에 기억된 모든 명령이 주기억장치에서 삭제됨

Random Access Memory (RAM)

Address를 통해 위치를 지정하여 읽고 쓰는 방식의 memory

Static RAM (SRAM)

SRAM은 flip-flop, register 처럼 (transistor로 이루어진)gate로 만들어진 Memory 로 구성되기 때문에, Transistor를 다량으로 집적(1bit 기억하는 D Flip-Flop에 보통 6개의 NAND가 들어감)시켜야 저장용량이 커진다.그러므로 대용량 memory로 만들기가 어렵다.

  • 그래서 용량당 들어가는 비용이 매우 큰 편이다. 하지만 속도가 빠르고 전력 소비가 적다.
  • 전원이 꺼지면 데이터가 사라지나, 전원이 켜있는 한 refresh(또는 충전)가 필요 없다

Dynamic RAM (DRAM)

capacitor를 이용 하여 필요한 transistor의 수를 대폭 줄인 memory

  • 기생 capacitor(Transistor 제조시 생기는 capacitor)를 활용하는 기술 등의 발전은 집적도가 매우 높은 DRAM 구현(1셀당 1개 tr, 1개 c)을 가능 하게 함.

  • 오늘날 대용량의 memory를 위해 주로 채택되는 방식 이다.

  • Capacitor를 사용하기 때문에 누설전류로 인한 데이터 소실을 막기 위한 주기적인 충전이 필요해 전력소모가 크고 SRAM에 비해 속도가 느리다

  • computer의 main memory로 사용됨.

  • 용량별 단가가 SRAM 대비 압도적으로 낮고, 고밀도 집적화 가 가능함.

Synchronous DRAM (SDRAM)

SDRAM은 Synchronous Dynamic RAM 을 가르키며, Single Data Rate SDRAM (SDR SDRAM, SDR)에서 시작하여 Double Data Rate SDRAM (DDR SDRAM, DDR)으로 발전했으며, DDR의 경우 DDR5까지 개발된 상태임.

  • Single Data Rate (SDR) SDRAM
    clock cycle 하나당하나의 데이터를 전송, rising edge만 사용
  • Double Data Rate (DDR) SDRAM
    clock cycle 하나당 2개의 데이터를 전송, rising and falling edge 모두 사용.

Read Only Memory(ROM)

한 번 기록한 정보에 대해 오직 읽기만을 허용하도록 설계된 비휘발성 기억 장치

  • 수정이 자주 필요 없는 기본 입출력 프로그램(BIOS)이나 펌웨어 (Firmware)를 저장하기 위해 주로 사용됨.

masked ROM

  • 어떤 특정 내용을 생산단계에서 ROM에 write해서 출하하고 이후 사용자의 의도에 의해 임의적으로 변경시킬 수 없음.
  • 메모리 중 bit당 가격이 제일 저렴 (대량생산의 경우 한정으로 소량생산에는 너무 비용이 많이 들어감)

rogrammable ROM (PROM)

  • 생산 단계에서 write되지 않고, PROM writer를 이용하여 사용자에 의해 한번 write가 가능함.
  • OTP ROM (One Time Programmable ROM) 이라고 불림.
  • write할 때, 버그가 있으면 수정이 불가함

Erasable PROM (EPROM)

자외선(UV)을 사용하여 기억된 내용을 임의적으로 소거시킨 후 다시 write할 수 있는 소자

  • EPROM Eraser를 이용하여 (역시, 자외선을 이용) 내용을 소거
  • EPROM Writer를 사용하여 데이터를 write
  • 사용할 때 EPROM의 Window (UV가 비춰지는 창)에 차단용 Tape를 붙임

Electrically Erasable PROM (EEPROM)

전기적인 방법으로 기억된 내용을 소거한 후 다시 write할 수 있게 한 소자이지만 write하는데 시간이 길어서 RAM을 대체하지 못한다

Flash Memory

read 의 경우에는 Random Access Memory (RAM)같이 동작하며, write 의 경우에는 block-access를 수행하는 RAM 같은 EEPROM 유형의 기억장치.
Solid State Disk (SSD)는 Flash memory를 Disk Drive 형태로 패키징하면서, Wear Leveling Processor등을 추가하여 HDD처럼 Flash memory를 사용하게 한 것.

  • 전기적으로 내용 변경 및 일괄 소거도 가능한 EEPROM의 일종이다
  • RAM 같은 ROM으로 read의 경우 random access가능
  • 전원이 나가도 기억 유지
  • 쓰고 지울때 0과1이 서로 변할때 데이터가 기록된 block 전체를 지우고 다시 기재 해야함.

보조기억장치

컴퓨터의 전원을 꺼도 데이터를 저장해놓는 프로그램들이나 OS등을 저장해놓는 장치

  • 주기억 장치에 비해 속도는 느리지만 대량의 자료를 영구적으로 저장.
  • 자료 접근 방법에 따라 SASD 방식과 DASD 방식으로 구분.
    Sequential Access Storage Device & media (SASD)
    Direct Access Storage Device & media (DASD)

0개의 댓글