2018년 11월 23일
Wear-Leveling
I. 쓰기 균등분배 기법, Wear-Leveling의 개념
반복 쓰기로 인한 메모리 셀 수명 단축 방지를 위해 FTL에서 모든 메모리 셀에 쓰기를 균등 분배하는 기술
II. Wear-Leveling의 과정과 유형
가. Wear-Leveling의 과정
- 각 셀에 쓰기 후 삭제 시 Invalid 표시, 블록이 Full 되면 컨트롤러 제어에 의해 Garbage Collection 실행, Data는 이동
나. Wear-Leveling의 유형
항목 | 정적 Wear-Leveling | 동적 Wear-Leveling |
---|---|---|
개념 | – 블록 쓰기 횟수 감시 – 낮은 사용 블록 기록 | – 쓰여진 블록 제외 – 빈 블록 검색/기록 |
영역 | – 전체 Data영역 수행 | – 정적 WL 제외 영역 |
링크맵 | – 물리적 LBA 링크맵 | – 논리적 LBA 링크맵 |
성능 | – Leveling 속도 느림 | – Levelling 속도 빠름 |
내구성 | – 내구성 상대적 높음 | – 내구성 상대적 낮음 |
복잡성 | – 비교적 복잡함 | – 비교적 단순함 |
용도 | – Solid State Drive(SSD) | – Flash USB Drive |
III. Wear-Leveling 데이터 삭제 기술
항목 | 정적 Wear-Leveling |
---|---|
Garbage Collection | – Wear-Leveling 후 미사용 블록 모음 삭제 – 블록 내 사용 페이지는 다른 블록 이동 |
TRIM | – OS 차원에서 자동으로 GC 수행 – TRIM 기능 지원 OS만 기능 수행 가능 |