1. SSD의 핵심기술 FTL의 개요
가. FTL(Flash Translation Layer)의 개념
플래시 메모리와 파일시스템 사이에 위치하면서, 플래시 메모리를 디스크처럼 사용할 수 있게 해주는 사상(Mapping) 기술
나. FTL의 필요성
- 플래시 메모리 섹터들의 최대 지우기 횟수의 유한한 결점을 보완하는 역할
- DISK I/O를 플래시 메모리에서 동작할 수 있도록 지원
- NAND 플래시 한계 : 쓰기보다 지우기가 느린 특성
2. FTL의 계층 구조 및 구성요소, 핵심기술
가. FTL의 계층 구조
FTL은, File System과 NAND Flash Device 사이에서 Mapping 수행
GC와 Wear Leveling을 포함하는 구성도
나. FTL의 구성요소
1) STL(Sector Translation Layer)
- Address Mapping, Garbage Collection, Wear Leveling 등 담당
- Address Mapping : 파일 시스템으로부터 논리적 주소를 NAND Flash Memory의 물리적 주소로 연결
2) BML(Bad-Block Management Layer)
- 무효화된 페이지를 많이 가지고 있는 블록을 선택후, 유효 페이지를 다른 블록에 복사하여 블록을 삭제하여 재사용 해주는 기법
3) LLD(Low Level Driver)
- NAND Flash를 사용하기 위한 Driver
다. FTL의 핵심기술
1) Wear Leveling
- 블록당 Writer 횟수를 모니터 하여, 균등하게 분배
- 특정 블록에만 Write 되는 것을 방지하여, 수명연장
2) Garbage Collection
- 블록을 실제로 삭제하지 않고, 표기 후 적절한 시점에 일괄 삭제 처리하는 기술
- Java의 GC와 유사한 기술, 삭제 효율화
3) Over Provisioning
- Wear Leveling, GC를 작업하기 위한 여유공간
3. FTL의 매핑방식
1) Sector Mapping
- read, write 단위인 섹터 단위로 사상테이블 생성
- 장점 : upate 시, 정보만 변경한 data를 쓸 수 있음. erase 연산 최소화
- 단점 : 사상테이블 크기가 커질 수 있음
2) Block Mapping
- Erase 단위인 블록 단위로 사상테이블 생성
- 장점 : 사상테이블의 크기 최소화 가능
- 단점 : 같은 논리 주소에 쓰기 연산이 많이 요청되는 경우 성능저하
3) Hybrid Mapping
- Sector와 Block을 혼합한 기법
- 장점 : Sector와 Block의 장점 혼합
- 단점 : 구현의 복잡한 문제 존재
'정보처리기술사 > 컴퓨터구조,OS' 카테고리의 다른 글
메모리를 분리한 폰노이만 개선 구조, 하버드 아키텍처 (0) | 2019.12.10 |
---|---|
프로그램 내장 방식의 폰노이만 구조(Von Neumann Architecture) (0) | 2019.12.02 |
지능형반도체 PIM(Process In Memory) (0) | 2016.03.06 |
하이퍼스레딩(Hyper-Threading) (0) | 2015.07.26 |
무어의 법칙(Moore's Law)과 황의법칙(Hwang's Law) (0) | 2015.07.18 |