개발자 노트
우리는 몇 년전과 다르게 SD 카드, USB 메모리스틱과 같은 대용량 저장 장치를 저가에 구매가 가능해 졌습니다. 시간이 자나면서 근간 저장 장치의 주 칩셋인 NAND 플래쉬에 발전이 었겠죠
근래 들어 MLC NAND 플래쉬가 나오면서 대용량, 소형화가 가능해지게된것이지요. 기존의 NAND 플래쉬는 SLC 타잎이라고 합니다.
SLC : Single Level Cell
MLC: Multi Level Cell
위와 같이 용어가 정리되어져 있습니다. Single , Multi 는 무엇을까요?? ( 왠지 Multi 가 좋아 보이죠^^ )
여기서 디지털 공학 얘기를 잠깐할까 합니다.
1Bit 로 표현이 가능한 상태는 0, 1 입니다. ( 아래의 표와 같이요 )
|
첫번째 비트 |
상태 1 |
0 |
상태 2 |
1 |
이렇게 2 가지 상태를 표현 할 수 있습니다.
그럼 2Bit 로 표현 할 수 있는 상태는 몇 개 일까요?? 네!! 4개 입니다.
|
첫번째 비트 |
두번째 비트 |
상태 1 |
0 |
0 |
상태 2 |
0 |
1 |
상태 3 |
1 |
0 |
상태 4 |
1 |
1 |
여기까지 디지털 공학은 그만 얘기하고 다시 본론으로 돌아겠습니다.
NAND 를 구성하는 최소한의 단위를 Cell 이라고 합니다. SLC( Single Level Cell ) 은 한 개의 Cell 이 1bit 로 구성이 되어져 있습니다. 1Bit 는 앞서 설명한 바와 같이 2개의 상태를 가질 수 있지요. 0, 1 이면 충분할 것으로 생각이 듭니다. 그러나 MLC( Multi Level Cell ) 은 여러개의 Bit 로 구성 되어있습니다. 현재 사용되어지는 MLC 는 2Bit Cell 이며, 총 4가지 상태를 표현 할 수 있습니다. 예를 들면 0, 0.25, 0.5, 1 이렇게 말입니다.
|
첫번째 비트 |
두번째 비트 |
Cell 상태 |
상태 1 |
0 |
0 |
0 |
상태 2 |
0 |
1 |
0.25 |
상태 3 |
1 |
0 |
0.5 |
상태 4 |
1 |
1 |
1 |
이렇게 1이라는 숫자를 좀 더 세밀하게 표현하여 4가지 상태를 만들 수 있으나 2가지 상태를 만든 것보다는 훨씬 어려운 일 일것입니다. MLC 는 여러 비트 Bit 가 표현가능한 Cell 입니다. 현재까지는 2Bit 가 상용화 되어진것으로 알고 있습니다만 향후 TLC( Tripple Level Cell ) 와 같은 더 많은 Bit 표현이 가능한 Cell 도 나올 전망이라고 합니다.
대단하죠??ㅎㅎ 같은 크기의 Cell 을 여러 비트로 표현을 하고 있으니 같은 사이즈의 NAND 플래쉬가 고용량이 가능해진 것이지요
그러나 문제는 다 있습니다. 머 잘 알려진데로 SLC 가 MLC 보다 약간 빠릅니다. 보통 20~30% 정도 되어지는 것 같습니다. 사실 저는 이것에 대해서 크게 문제가 되어지지 않는다고 생각합니다. 이것보다 더 큰 문제는 수명이라고 생각하고 있습니다. SLC 보다 MLC 는 10배가량 수명이 짧습니다. 제조사 마다 다르지만 MLC 는 약 1만번 정도라고 합니다. 사람이 쓸때는 문제가 되어지지 않을 수 있지만 기계가 쓴다고 하면 문제가 될 수 있을 것입니다. 이것은 하드웨어서 설계서부터 고려가 되어져야할 사항입니다.
여기까지 NAND 플래쉬 SLC 와 MLC 에 대한 설명 이었습니다.^^