ROM
- 읽기 전용 저장장치
- SSD나 HDD는 여기에 속하지 않음 !!
- 주로 펌웨어나 BIOS에 사용
DMA
- 어떠한 디바이스가 스스로 읽기 또는 쓰기 버스 트랜잭션을 수행하는 과정
예시
- CPU가 디스크에게 읽기 명령을 내려 데이터를 메인 메모리에 적재할 때
- CPU가 디스크에 읽기 명령을 하달
- 디스크가 읽기 작업을 수행
- 이 때 CPU는 다른 작업을 수행
- 디스크가 CPU의 개입 없이 직접 메모리에 데이터 적재
- 데이터가 적재된 후 디스크 컨트롤러가 CPU에 인터럽트 신호 보냄
SSD
종류
|
NOR |
NAND |
| Speed |
빠름 |
느림 |
| Cost |
비쌈 |
저렴 |
| Density |
낮음 |
높음 |
| R/W level |
Byte 단위 |
각각 다름 |
| 용도 |
임베디드, 펌웨어 |
데이터 스토리지 |
특징
- SSD는 여러개의 블록으로 이루어져 있으며, 각 블록은 페이지라는 단위로 나누어짐
- 읽기와 쓰기는 페이지 단위로 가능함
- 각 페이지에서 셀이 연결되어 있다(전자가 없어서 전류 흐름이 원활하다)면 데이터가 없는 상태이다. 이 때 비트를 1이라함
- 셀이 끊어져 있다(전자가 있어서 전류 흐름이 방해된다)면 데이터가 있는 상태이다
- 데이터를 덮어쓰려면 셀 내의 전자를 없애줘야 하는데 이를 erase라고 한다
- erase 연산은 block 단위로만 가능하다
- erase 연산은 보통 수천번 정도 사용 후 해당 block의 수명이 다한다
- erase를 균등하게 해주기 위해 wear leveling 사용
SLC, MLC, TLC
하나의 셀에 비트 하나만 저장하는건 너무 비효율적인것 같다 !!
→ 전압을 2^k로 나누어서 k개의 비트를 나타내자!!