최근 정말 다양한 SSD 제품이 출시하고 있는데요. 이 때 궁금한 것은 TLC/QLC 및 DRAM이 있는지 여부입니다.
DRAM이란?
쉽게 오해하고 있는 사실로 DRAM이 있는 이유는 데이터 속도를 완충시키는 버퍼 목적보다는 기본적으로는 NAND 플래시 메모리에 저장되어 있는 데이터의 매핑 테이블을 저장하기 위한 역할이락로 합니다.
매핑 테이블이 있는 이유는, 윈도우와 같은 운영체제의 파일 시스템들은 모두 HDD의 구성인 트랙과 섹터를 기반으로 작동하는데, SSD를 구성하는 NAND 플래시 메모리는 블록과 페이지로 구성되어 그냥 작동할 수가 없기 때문인데요.. 따라서 이 운영체제의 논리적 주소와 NAND 플래시 메모리의 물리적 주소를 서로 치환해주는 어드레스 매핑이 필요하게 됩니다. 이 어드레스 매핑을 관리하는 것이 FTL(Flash Translation Layer)이며 NAND 플래시 메모리의 장기적인 성능 유지와 수명 향상을 위한 마모 평준화외 쓰레기 수집 같은 기능도 담당하고 있습니다.
메모리 문단에 설명하듯 여러 개의 플래시 메모리를 병렬로 연결하기 사용하기 때문에 매핑 테이블은 어마어마하게 방대하여 일반적으로 NAND 플래시 메모리 용량과 DRAM 용량이 1000:1의 비율로 필요하다. 예를 들면 1TB의 SSD에는 1GB의 DRAM이 필요한 것으로 알려져 있습니다.
다만 DRAM를 빼면 단가가 많이 줄어들기 때문에 DRAM을 빼고 출시하는 제품이 있는데 흔히 DRAMless(DRAMLess)라고 불리며 이 경우에는 매핑 테이블을 NAND 플래시 메모리에 저장하고 그 위치를 컨트롤러 안의 SRAM에 캐시해두는데, NAND 플래시 메모리의 속도가 DRAM의 속도보다는 느리고 TLC인경우 더더욱 느리기 때문에 SLC 캐싱 구간을 넘어가면 엄청 느려지는 것이 그 이유입니다.
이를 해결하기 위해 시스템의 메모리를 일부 할당하여 매핑 테이블 저장 용도로 사용 하는 기술인 HMB(Host Memony Buffer)을 사용하여 어느정도 완화를 하는 SSD도 출시되고 있는데요.
쉽게 설명하자면 SSD라는 거대한 창고를 운영하기 위해 보관된 품목의 리스트가 적혀있는 거대한 책이 있는데 그걸 작업자(컨트롤러)가 배낭에 넣고 필요할 때마다 읽는 방법(DRAM)과 창고 어느 한 공간에 리스트를 두고 매번 읽으러 가는 방식(DRAMLess)으로 보면 됩니다.
컨트롤러로 구분하는 DRAMless
인터넷에 있는 컨트롤러로 구분하는 디램리스를 찾는 표인데요. 참고하시면 좋을 것 같습니다.
제조업체 | 컨트롤러 | 디램 | 설명 |
삼성전자 | MJX, Polaris, Phoenix | O | 삼성은 모두 디램존재 |
마벨 | 88NV1120 | X | |
88NV1140 | X | ||
88NV1160 | X | ||
88SS1074 | O | ||
88SS1084 | O | ||
88SS1088 | O | ||
88SS1092 | O | ||
88SS1093 | O | ||
88SS1098 | O | ||
88SS1100 | O | ||
88SS1321 | O | ||
88SS1322 | X | ||
88SS1323 | X | ||
88SS5000 | X | ||
실리콘모션 | SM2246 | O | 실리콘모션은 XT가 붙는 컨트롤러의 경우 디램리스 (SM3282 예외!) |
SM2246EN | O | ||
SM2246XT | X | ||
SM2258 | O | ||
SM2258XT | X | ||
SM2259 | O | ||
SM2259XT | X | ||
SM2260 | O | ||
SM2262 | O | ||
SM2262EN | O | ||
SM2263 | O | ||
SM2263EN | O | ||
SM2263XT | X | ||
SM2270 | O | ||
SM2271 | O | ||
SM3282 | X | ||
인텔 | PC29AS21BA0 | O | |
PC29AS21CA0 | O | ||
BF29AS41BB0 | O | ||
CH29AE41AB0 | O | ||
CH29AE41AB1 | O | ||
SF-2281 | O | ||
EAU01D76 | X | ||
파이슨 | PS3107-S7 | O/X | 파이슨은 뒤에 S11 또는 T가 붙는 컨트롤러의 경우 디램리스 |
PS3108-S8 | O | ||
PS3109-S9 | O | ||
PS31010-S10 | O | ||
PS31011-S11 | X | ||
PS31011-S11T | X | ||
PS31012-S12 | O | ||
PS31013-S13T | X | ||
PS5007-E7 | O | ||
PS5008-E8 | O | ||
PS5008-E8T | X | ||
PS5012-E12 | O | ||
PS5012-E12C | O | ||
PS5012-E12DC | O | ||
PS5012-E12S | O | ||
PS5013-E13T | X | ||
PS5016-E16 | O | ||
PS5018-E18 | O | ||
PS5019-E19T | X | ||
도시바 | TC58NC1000 | O | |
TC58NC1010 | X | ||
TC58NC1201 | O | ||
TC358790 | X | ||
리얼텍 | RTS5762 | O | |
RTS5763DL | X | ||
Asolid | AS2258 | X | |
Maxio | MAP1001 | O | |
MAP1002 | X | ||
MAP1003 | O | ||
MAS0802 | X | ||
MAS0902 | X | ||
MAS0902A | X | ||
MAP0901 | X | ||
MAP0902 | O |
SSD 정보 확인 사이트
아래의 사이트에서 각각 맞는 파일을 찾아서 SSD 정보를 확인할 수 있습니다. 먼저 인터넷을 통해 무슨 컨트롤러를 사용하는지 확인해보시기 바랍니다.
저는 해당 컨트롤러가 아니라 정보가 나오지 않지만 해당 프로그램을 통해 피어슨 컨트롤러라면 정보를 확인할 수 있습니다. 설치파일도 아니고 단순히 실행만 하면 되니 참고하시기 바랍니다.
SSD에서 TLC QLC
마지막으로 SSD에서 TLC/QLC라는 단어를 많이 듣게 되는데요. 이것은 메모리 한 셀에 몇 비트를 저장하는 지를 나타내는 수치입니다. TLC는 1셀에 3비트를 QLC는 한 셀에 4비트를 저장하게 되는 것이죠. 예전에는 MLC가 많이 사용되었으나, 최근에 리테일에서 판매되는 MLC는 거의 찾기 힘듭니다.
그리고 성능 차이를 급격하게 느끼는 경우는 캐시 크기를 넘어가는 경우에 특히 쓰기 속도가 현격하게 느려지게 됩니다. 또 큰 파일이 아니더라도 작은 파일을 자주 옮기는 경우 OS로 사용하는 경우에는 속도가 느려지기 때문에, 윈도우를 설치하는 제품은 디램이 있는 제품을 추천하는 것이죠.
이처럼 오늘은 SSD의 정보를 한번 알아보았는데요. 구매하실 때 참고하여 구매하시기 바랍니다.