SSD 구조
컨트롤러·NAND·캐시와 호스트 인터페이스의 SSD 구성.
SSD는 NAND Flash, 컨트롤러, 펌웨어, 전원 관리와 선택적인 DRAM Cache로 구성된다. 운영체제가 보는 논리 블록 주소를 실제 NAND 페이지로 바꾸는 Flash Translation Layer(FTL)가 쓰기 위치와 수명을 관리한다.
NAND는 제자리 덮어쓰기가 되지 않는다. 페이지 단위로 기록하고 더 큰 블록 단위로 지우기 때문에 유효 데이터를 옮기는 가비지 컬렉션과 쓰기 증폭이 생긴다. Wear Leveling은 쓰기를 여러 블록에 분산하고, 오류 정정 코드는 셀 열화에서 생기는 비트 오류를 보정한다.
DRAM은 주소 매핑과 캐시에 쓰이며, DRAM이 없는 NVMe SSD는 Host Memory Buffer(HMB)로 시스템 메모리 일부를 사용할 수 있다. SLC Cache는 TLC·QLC 일부를 빠른 단일 비트 모드처럼 사용해 짧은 쓰기를 가속한다. 캐시가 소진된 뒤 지속 쓰기 속도는 NAND와 병렬성에 좌우된다.
관련: NAND Flash, SSD 성능과 수명, M.2와 NVMe