블로그 이미지
No pain, no gain!
lepoussin

Tag

Notice

Recent Post

Recent Comment

Recent Trackback

Archive

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
  • total
  • today
  • yesterday
05-05 12:20

'메모리 장치'에 해당되는 글 1건

  1. 2007.02.09 [ARM으로 배우는 임베디드 시스템] 메모리 장치
1. 메모리의 종류
  1) RAM(Random Access Memory) : 전원이 인가되는 상태에서만 데이터를 유지
    - SRAM(Static RAM) : 고속, 한 비트당 4~6개의 트랜지스터 사용
    - DRAM(Dynamic RAM) : SRAM 보다 저속, 한 비트당 1개의 트랜지스터 사용, 전원을 Refresh해줘야만 안정되게 데이터 저장
    - SDRAM(Synchronous DRAM) : DRAM을 고속으로 동작하도록 클록을 사용하여 데이터를 읽고 쓸 수 있는 인터페이스를 제공
  2) ROM(Read Only Memory)
    - ROM : 제품 생산 당시 프로그램이나 데이터가 기록되고 이후에는 변경 불가능
    - PROM(Programmable ROM) or OT-PROM (One Time PROM) : 제품 생산 당시에는 아무런 내용이 없으나 한 번만 프로그램이 가능
    - EPROM(Erasable and Programmable ROM) : 자외선 노출을 이용하여 지우고 다시 내용을 저장 가능
  3) 하이브리드 메모리
    - ROM 특성 + RAM 특성 : 전원이 없더라도 보관된 자료를 그대로 유지, 자유롭게 읽기, 지우기, 쓰기 가능
    - EEPROM (Electrically Erasable and Programmable ROM) : 내부적으로 EPROM과 비슷, 내용 삭제시 자외선 노출이 아닌 전기적인 방법으로 처리한다는 점이 다름
    - FLASH
      ⑴ NOR 타입 : 한 비트를 저장하기 위한 셀이 병렬로 연결
        - 데이터를 읽는 속도가 짧음
        - 우수한 안정성
      ⑵ NAND 타입 : 셀이 직렬로 연결
        - NOR에 비해 제조단가가 쌈
        - 대용량이 가능
    - NVRAM(Nonvolatile RAM) : SRAM + 배터리, 전원이 없는 상태에서는 배터리에 의해 데이터 저장

2. 메모리 시스템
  1) 캐시(Cache) : 프로세서에 근접하여 있는 고속의 메모리 장치
    - 프로세서에서 읽기 요청이 있을 때 최대한 빨리 명령이나 데이터를 전달해 주기 위한 고속 메모리 장치
    - 메인 메모리 액세스 감소, 프로세서에 의한 버스 사용량 감소
    ※ cache hit 비율 : 캐시메모리 내에 요구하는 명령이나 데이터가 있을 확률
    ※ cache miss : 프로세스가 요청한 명령이나 데이터가 캐시에 없을 때, 캐시 제어기가 메인 메모리에서 데이터를 읽어와 캐시의 업데이트와 함께 프로세서에 요구한 명령이나 데이터를 전달하는 것(한 번에 여러 워드의 내용을 같이 읽어옴)
    ※ 라인 사이즈(line size) : 한 번에 읽어오는 명령이나 데이터의 크기
    ※ 라인 필(line fill) : 라인 사이즈만큼 내용을 읽어 캐시에 저장하는 것
  2) MMU(Memory Management Unit)
    - 어드레스 변환 기능(가상 주소(Virtual Address) → 물리 주소(Physical Address)), 메모리 보호 기능
    ① 구동된 주소 정보가 메모리 장치로의 접근이 허용되는지를 검사
    ② 접근이 허용되면 물리 주소로 변환하여 메모리 제어기로 제어 정보와 함께 전달
  3) 메모리 제어기(Memory Controller)
    - 입력되는 주소 정보에 따라 어떤 메모리 장치를 액세스할 것인지를 결정(Address Decode)하고 각각의 메모리 장치의 특징에 따라 제어신호를 구동
    - 데이터 버스 : 프로세스와 메모리 간의 데이터 전송을 위한 선
    - 어드레스 버스 : 어떤 메모리를 대상으로 읽기 쓰기를 하는가를 나타내는 선, 프로세스 → 메모리로 일방통행
      ex) 2^10(1024) = 1KB, 어드레싱(주소의 각 영역을 구분하는 것)을 제대로 하기 위해서는 모두 10개의 신호선이 필요
    - 메모리칩 선택 신호 : CE(Chip Enable) 또는 CS(Chip Select) 신호
posted by lepoussin