플래시 메모리

컴퓨터 메모리
휘발성 메모리
RAMDRAM · SRAM
개발중T-RAM · Z-RAM
비휘발성 메모리
ROMMask ROM · PROM · EPROM · EEPROM
NVRAM플래시 메모리 · 메모리 카드 · SSD · eMMC · UFS
초기 NVRAMnvSRAM · FeRAM · MRAM · PRAM
기계적자기테이프 · 자기필름판 · HDD · 광학 디스크
개발중3D XPoint · CBRAM · SONOS · RPAM ·
Racetrack Memory · NRAM · Millipede Memory · FJG

1 개요

flash memory.

플래시 메모리는 비휘발성 반도체 저장장치다. 전기적으로 자유롭게 재기록이 가능하다. ROM의 일종인 EEPROM으로부터 발전하여 현재의 모습으로 정착했다. 예전에는 PROM[1]이니, EPROM[2]이니 하는 것들이 있었고, 이들이 각종 펌웨어를 저장하고 있었지만, 요즘은 죄다 플래시 메모리로 대체되었다.

롬에서 나온 것이니 롬의 일종으로 봐야 할 것 같지만, 플래시메모리는 기록된 내용을 보존한다는 측면에서는 ROM과 유사한 특징이 있지만 메모리 어드레싱이 아닌 섹터 어드레싱을 한다는 특성으로 인해 주 기억 장치로 분류되는 ROM이 아닌 하드디스크와 유사한 보조 기억 장치로 분류된다.

2 특징

플래시 메모리는 비휘발성, 즉 전원을 꺼도 데이터가 남기 때문에, 데이터 저장이 필요한 온갖 전자 제품에 다 들어간다. 작고 가벼우면서도, 자기 매체나 광학 매체에 비해 기계적인 충격에도 강하고, 직사광선, 고온, 습기에도 강하다.

같은 반도체지만, 휘발성인 램과 속도 면에서 비교했을 때, 쓰기 속도가 매우 느린 편. 게다가 한 셀에 여러 단계의 값을 지정하는 MLC 타입은 한 셀에 한 단계의 값만 저장하는 SLC에 비해 더 더욱 쓰기가 느리다. 읽기 속도 역시 DRAM과 비교할 수 없이 느리고, SRAM과는 넘사벽. 하드디스크 같은 기계적 매체보다도 속도가 많이 뒤쳐지고, DVD-RW 같은 광학 매체보다도 많이 빠른 것은 아니다.

그렇다면 SSD는 하드디스크에 비해 왜 그렇게 빠르냐는 의문이 생길 수 있는데, 방법은 간단하다. 내용을 여러 플래시 메모리에 나눠서 읽고 쓰는 것. 메모리 속도에 곱하기가 되기 때문에 전체적으로는 매우 빠르게 이용할 수 있다. RAID 0와도 비슷하다. 게다가 플래시 메모리는 검색 시간이 매우 짧다. 물리적으로 무언가를 움직여서 데이터를 읽어 올 필요가 없기 때문이다.

참고로 디지털 캠코더는 아주 예전에는 테이프가 쓰였다가 DVD-RW로 바뀌더니, 하드디스크 장착이 유행했다. 이젠 플래시 메모리로 대체 중.

플래시 메모리는 이렇듯 장점이 많고, 기술 발전도 빠른 매체지만, 역시 단점도 있다.

  • 기록 횟수에 제한이 있다.
매체의 소재 자체의 한계로 인해 기록 가능 횟수에 한계가 있다. 이 횟수를 넘어가면 내용의 삭제 및 기록이 되지 않는다. 이 상태에 와도 읽기가 바로 안 되지는 않지만 일반적으로 읽기와 쓰기 모두를 해야 하기 때문에 더 이상 이용이 어려워진다.
일반적인 이용 환경에서는 모든 데이터 영역에 균일하게 쓰기보다는 특정 데이터 영역을 더 많이 이용하는 경우가 많으므로 수명 연장을 위해 특정 셀만 재기록 되지 않도록 특수한 알고리즘을 적용 시켜야 한다. 데이터가 있는 셀을 이리 저리 옮긴다든가 해서 특정 셀만 집중적으로 재기록 당하지 않고, 모든 셀이 평균적으로 비슷한 횟수로 재기록 되도록 컨트롤러를 제조해야 오래도록 쓸 수 있다. 이를 웨어 레벨링(wear leveling)이라 한다.
  • 블록 단위로만 재기록 할 수 있다.
필요한 데이터가 위치한 셀만 지우고 새로운 값을 쓰면 좋겠지만 인접 위치에 있는 것까지 다 지우고 새로 써야 한다. NOR의 경우 NAND에 비해서 약간 나은데, 지우기(1을 쓰기)는 블록 단위로 해야 하지만, 기록하기(0을 쓰기)는 셀 단위로 가능하다. 다만, 양쪽 다 읽는 것은 한 바이트 단위로 할 수 있다.

3 구분

3.1 게이트

플래시 메모리는 크게 나누어 NAND 타입과 NOR 타입 두 종류가 있다.

구분NAND 타입NOR 타입
용도USB 메모리, SSD 등 저장 매체RAM처럼 실행 가능한 코드 저장
읽기랜덤 액세스이나 한 블록이 모두 동작함. 비교적 느림셀 단위 랜덤 액세스. 빠름
쓰기한 번에 한 블록을 통째로 기록하여 빠름한 셀씩 기록하여 느림
밀도고밀도저밀도
가격(용량 대비)저가고가

외계인 고문으로 유명한 인텔이 NOR 플래시 메모리의 최강자이며, NAND 타입은 D램과 마찬가지로 삼성전자, 하이닉스, 도시바 등등에서 생산하고 있다. 참고로 현재 99.9%의 USB 메모리는 NAND 타입이다.

3.2 셀 레벨

한 셀에 몇 단계의 데이터를 담는가에 따라 SLC와 MLC로 나누기도 한다. 그리고 MLC의 하위 분류(?)로 TLC#-s5와 QLC가 있다.

구분SLC(Single Level Cell)MLC(Multi Level Cell)TLC#-s5(Triple Level Cell)QLC(Quad Level Cell)
용도저장 속도와 내구성 위주적절한 용량과 속도, 내구성 위주대용량 위주보급 및 판촉용
읽기NOR에 비해 느림SLC보다 느림MLC보다 느림TLC보다 느림
쓰기단일 비트 저장으로 빠름2비트 동시 기록으로 느림3비트 동시 기록으로 매우 느림4비트 동시 기록으로 미친듯이 느림
수명약 최대 10만회약 최대 1만회약 최대 1천회약 최대 100회
가격(용량 대비)고가보통저가[3]최저가

현재 기술 발달로 메모리 종류 별 절대적인 읽기/쓰기 속도 차이가 줄어들었다. 단적으로 SLC인 메모리보다 MLC인지 TLC인지 헷갈리는 Sandisk Z80이 더 빠른 쓰기와 4k속도를 자랑한다. MLC보다 빠른 쓰기 읽기의 TLC 메모리가 나오고 있고, 읽기 속도 만큼은 TLC도 100MB/s가 넘어가는 게 보통이 되어 가고 있다. 다만 읽기 속도는 제한을 걸어 놓은 게 많다. 보통 이럴 때에는 최대 130MB/s라고 써 놓고 쓰기 속도를 알려주지 않는다.[4]

SLC는 셀당 1비트를 담는 것이고, MLC는 한 셀에 2비트를 담는 것이다. 당연히 용량 대비 가격은 MLC가 싸지만, 쓰기 속도가 매우 느리다. 다행이라면 읽는 속도는 별 차이 없다는 것이다. 싼 가격 때문에 대부분의 소비자용 제품이 MLC다. SLC 제품은 보통 전문가용이라고 광고를 하고 있는데 가격이 바로 몇 배로 올라간다. MLC의 또 하나의 단점은 기록 허용 횟수가 SLC에 비해 작다는 것이다.

TLC와 MLC의 차이를 알기 쉽게 설명한 글이 있다. 위의 설명을 잘 모르겠다면 여기서 보자.

TLC라고 새로운 마케팅 용어가 등장하면서 MLC의 뜻이 바뀌고 있다. MLC의 원래 의미는 2비트 이상의 레벨을 가진 셀이라는 뜻인데, 3비트 짜리는 TLC라고 부르기 시작하면서 MLC는 2비트 전용으로 잘못 굳어지는 추세. 올바른 표기는 DLC(Dual Level Cell)이다. 하지만 대부분의 제조사가 2비트를 MLC로 부르기 때문에 그냥 MLC라고 부르자. DLC라고 하면 못 알아듣거나 이걸로 알아듣는 경우도 있다.(...)

2012년부터는 QLC(Quad Level Cell)라는 괴악한 물건도 등장한 듯하다. 말로만 듣던 QLC SLC, MLC, TLC로 이어지는 쓰기 횟수의 감소를 감안하면 QLC의 괴악함을 상상할 수 있다.

플래시 메모리는 비트 수에 따라 수명이 많이 차이가 난다. SLC는 50,000~100,000회의 쓰기가 가능하고, MLC는 3,000~10,000회, TLC는 500~1,000회의 쓰기가 가능하다. 이 수명은 공정에 따라서도 차이가 나는데, 제작 공정이 작을수록 수명은 줄어든다. MLC의 경우 50나노 공정일 경우는 쓰기 10000회, 32나노 공정일 경우 쓰기 5000회, 25나노 공정일 경우 쓰기 3000회로 줄어든다.

사실 단위 셀당 비트 수를 늘릴수록 대용량을 쉽게 구현할 수 있어 가격 경쟁력이 올라가지만, 문제는 용량만 증가하고 성능이 크게 저하된다는 사실이다. 오류가 많아지고 데이터 신뢰도와 재기록 횟수가 눈에 띄게 떨어지는 것이다. USB 메모리의 주력인 TLC마저도 재기록 횟수가 고작 수백회 정도에 불과한데 QLC의 수명은 과연 어떨지(...). 사실상 QLC까지 가면 몇 번 사용한 후엔 쓰기가 더 이상 안되므로 내다 버리는 소모품이 돼버린다.

그것도 문제지만 갈수록 용량 증가폭이 줄어드는 데다가, 그냥 읽기만 할 때도 에러가 늘어서 ECC 등 오버헤드가 늘기 때문에 기술력이 부족하면 오히려 용량을 까먹는 수가 있다.

그리고 QLC 같은 물건이 등장하면서 SLC 같이 신뢰성이 높고 수명이 긴 물건은 아예 생산되지 않거나 특수 목적용으로 상당한 고가에만 판매되는 부작용이 생겼다. 사실 2013년의 기준에서 본다면 시중에서 SLC 방식의 플래시 메모리를 구입하기는 매우 어렵고, 고급형이라고 선전하는 값비싼 플래시 메모리는 MLC 방식이며, 보급형 플래시 메모리는 TLC 방식을 사용하고, 판촉용이나 저가형은 QLC 방식이 장악한 상태다. 덕분에 장기간의 데이터 저장용으로 플래시 메모리를 사용하는 것은 부적당해졌고, 다수의 플래시 메모리를 구입한 후, 백업 형식으로 2개 이상의 동일한 복제본을 미리 만들어 놓은 다음, 사용하던 플래시 메모리가 수명을 다하면 교체하는 방식으로 사용하는 등의 귀찮은 과정이 필요하다.

특히 2014년에 들어와선 MLC 낸드를 사용하는 USB 메모리는 점점 천연 기념물화 되어가고 있는데 이마저도 트랜센드 JetFlash 고급형 시리즈를 제외하고는 MLC, TLC 여부조차도 표기하지 않고 있어 안정성 문제로 SLC, MLC를 찾는 애호가들(?)의 속을 태우고 있다.[5] 일반인들은 용량 많고 값도 싸다는 이유로 TLC 방식의 USB 메모리를 많이 찾고 있지만, MLC 메모리를 찾는 매니아들은 속도나 쓰기 횟수 문제는 둘째 치더라도 TLC 메모리가 안정성에서 문제가 있다고 생각하는 부류이기 때문에 TLC 메모리가 넘쳐나는 지금의 현 상황에 대해 시선이 결코 곱지 못할 것이다. 하지만 요즘 USB 메모리에 쓰인 MLC 낸드의 품질이 영 아니라서 차라리 좋은 품질의 TLC 낸드를 사용한 USB 메모리를 쓰는 게 더 나을 수도 있다는 의견도 있긴 하다.(...)

2016년 2월 구글은 자사 데이터센터에서 6년간 축적한 데이터를 가지고 SSD에 관한 보고서를 내는데 결과는 다음과 같다.

1. 시장에서 널리 사용되는 UBER(Uncorrectable Bit Error Rate)는 SSD 의 신뢰성을 평가하기에 적합하지 않다. RBER(Raw Bit Error Rate)가 더 중요하다.

2. 반드시 하이엔드 제품인 SLC 가 MLC 보다 내구성이 좋은 건 아니다.

3. SSD 의 불량율이 HDD 보다 낮았다. 하지만 UBER 가 높았다.

4. SSD 의 사용량보다 사용 기간이 신뢰성에 더 영향을 많이 미쳤다.

5. 새 NAND 에도 배드블록이 많았다. NAND 의 초기 품질이 낮다.

6. SSD 의 사용 시점부터 4 년 이내에 30~80% 확률로 배드블록이 발생했다. 2~7% 확률로 1 개 이상의 불량 칩이 발생했다.


이러한 결과를 통해 결론을 내리자면

1. 현시점에서 SSD 는 서버 시장에서 주요 저장 매체로 사용될 수 있을 정도로 안정적이다. 가격 하락만 지속된다면 서버 시장에서 HDD 를 빠르게 대체해 나갈 것이다. 하지만 아직 HDD 를 완전히 대체할 수 있는 수준까지 신뢰성이 올라오지는 못했다. HDD 백업이 필요하다.

2. MLC 보다 TLC 가 주로 사용될 것이다. 이론적으로는 SLC 가 MLC 보다 내구성이 높아야 하지만, 구글의 테스트 결과 상으로는 SLC 와 MLC 의 차이가 거의 없었다. 데이터 저장 방식에 따른 내구성 수준이 실제 데이터센터 운용에 영향을 거의 끼치지 않는다면, MLC 와 TLC 사이의 차이도 거의 없을 것이다. 현재 이미 데이터센터에서 SLC 는 거의 사용되고 있지 않다. 대부분 MLC 와 TLC 가 사용 중인데, 향후 TLC 의 비중 증가가 더 가속화될 것으로 전망된다.

3. 저가형 범용 NAND 칩과 SSD 의 판매가 크게 늘어날 것이다. 구글의 테스트 결과로는 기업용 고가의 SSD 와 일반 소비자용 SSD 의 내구성이 큰 차이가 없었다. 기업용 SSD 는 오버 프로비져닝의 수준이 크게 높다. 이는 위에서도 언급한 것처럼 웨어 레벨링과 가비지 컬렉션이 원활히 작동하게 하기 위함이다. 하지만 실제로는 두 제품간 큰 차이가 없었다. SSD 의 사용량보다 사용 시간이 더 내구성에 미치는 영향이 컸다는 점도 저가형 SSD 판매를 가속화 시킬 것으로 보인다. SLC 의 쓰기 한계 횟수는 10 만회, MLC는 3 천회이다. 하지만 구글에서 실제로 사용한 NAND 의 쓰기 한계 횟수는 SLC, MLC 가 큰 차이를 보이지 않았다.

4. HDD 는 향후에도 여전히 서버 시장에서 주요 스토리지로 사용될 것이다. 단 백업용 위주로 사용될 것이다. SSD 의 고장률은 HDD 보다 낮았지만, UBER 는 높았다. 이는 SSD 가 고장났을 때, 데이터가 사라질 확률이 HDD 보다 높다는 뜻이다. 서버 시장에서 SSD 가 HDD 를 대체하고, HDD 가 사라지는 것이 아니라, HDD 는 SSD 를 백업하는 용도로 많이 사용될 것이다.

4 사용처

많이 사용되는 곳은 기계 내부에 eMMC와 같은 NAND 플래시 저장소이다. 특히 저용량의 설정 값 등을 기억하는 용도로 산업용에 많이 쓰이며, 휴대폰에도 널리 쓰였다. 스마트폰이 널리 보급되면서 이제는 고용량의 eMMC가 많이 쓰인다.

사용자가 직접 구매하는 플래시 메모리 제품이라면 역시 USB 메모리, 메모리 카드다. USB 메모리는 USB 단자에 삽입해서 외장 디스크처럼 데이터를 저장하는 것이고, 메모리 카드는 전자기기에 삽입하는 형태로 만들어진 저장 매체. 고속 및 고용량 구현이 쉬운 컴팩트 플래시(CF), 사실상 표준처럼 사용되는 표준/미니/마이크로 SD카드가 널리 사용되고, 한 때 이들과 경쟁했었던 소니메모리스틱후지필름/올림푸스xD 픽처카드, 그리고 지금은 멸종한 MMC, 역시 멸종한 SMC 등등이 있다.

PC 하드디스크 인터페이스를 가진 플래시메모리인 SSD도 2010년대 중반부터 널리 쓰이기 시작한다. SSD, USB 메모리의 득세로 인해 플래시 메모리 특성에 최적화된 단자 규격과 파일 시스템이 개발-활성화되기 시작한다.

과거에는 용량 당 가격이 비싸고, 쓰기 속도가 현저히 낮아 쓰기 애매했지만, 가격이 내려가고 성능이 현저하게 상승하면서 빠른 속도로 기존 저장장치를 대체하고 있다. 2015년 기준으로 가성비를 따져보자면,

  • 내장 디스크
    • PC의 운영체제 드라이브(C:\): 가급적 SSD - 5만원 예산에 128GB, 그 이상 예산에 256GB나 MLC 제품 선택. 돈이 문제가 안된다면 2TB 제품까지 있다.
  • 이동식 디스크
    • 공통: 컴퓨터간 파일을 옮길 때 썼었다. 요즘은 파일은 인터넷으로 전송하고, SSDeMMC의 용량 부족 때문에 용량 확장용으로 기기 내부에 심어서 쓰는 경향이 늘어났다. 사실 플래시 메모리는 파일 쓰기 속도가 꽤 느리기 때문에 파일 옮기는 용도로는 외장 하드디스크를 사용하는 것이 효율적이다.
    • USB 메모리: 운영체제 설치용으로 8GB, USB 메모리 중 가성비는 64GB제품, 살만한 고용량은 256GB, 창렬한 초고용량은 512GB제품까지 고를 수 있다. 다만 고용량 제품은 SSD를 구매하여 외장 하드 케이스를 씌우는 것이 가성비가 낫다. 과거에 썼던 저용량 USB는 공인인증서 저장용, 작은 파일 전송용 등으로 두고두고 쓸 수 있다.
    • 외장 SSD: mSATA 크기의 작은 외장 SSD와 외장 하드 케이스를 씌운 외장 SSD가 있다. 모두 주머니에 들어가지만, 작은 것이 휴대하기 좋고, 큰 것이 가성비가 나은 편이다. 물론 넓게 보면 모두 외장 하드디스크에 비해 가성비 똥이고, 256GB가 그나마 가성비가 좋다. 낙하가 두렵거나, 컴퓨터의 내장 SSD를 도저히 업그레이드 할 수 없을 때 구매한다.
    • microSD 카드: 디지털 카메라(블랙박스)의 저장소로도 쓰이지만, 주로 스마트폰(노트북)에 심어 쓰면서 용량 확장을 꾀한다. 가성비는 32GB제품, 살만한 고용량은 128GB, 창렬한 초고용량으로는 200GB까지 확장할 수 있다. 느리고 안정성은 좀 떨어지는 경향이 있지만 작은 크기 덕분에 웬만한 전자기기는 이를 쓴다.
    • 표준 SD 카드: microSD가 너무나 널리 쓰여서 표준 SD 카드를 쓰는 곳은 과거와 달리 지금은 많지 않다. 규모의 경제도 만들지 못해 싸지도 않다. 대신 쓰기 속도가 microSD보다 빠르고, 안정적이기 때문에 고화질 사진,영상을 찍는 카메라, 캠코더에 주로 사용된다. 가성비는 128GB가 좋지만, 한번 촬영 나갈 때 그리 많이 찍지 않는다면 64GB 선에서 타협한다. 업무용이라면 법인카드로 다다익선
    • CF 카드: 플래그십 디지털 카메라에 쓰인다. 쓰기 속도가 빠르고 안정적인 저장이 가능하기도 하지만, 초고가였던 구형 디지털 카메라를 쓴다면 선택의 여지가 없는 규격이기도 하며, 마이크로 드라이브 이래로 전문가용 인터페이스의 하위 호환 때문에 여전히 채용 되는 규격이기도 하다. IDE 인터페이스 저장장치이므로 산업용 기기의 구형 하드디스크가 망가졌을 때 이를 대체할 수 있다. 64GB가 가성비가 좋은데, 옛 카메라가 인식을 못한다면 32GB를 쓰기도 한다(...)

5 관련 항목

  1. Programmable ROM. 한 번만 기록 가능한 롬으로, 내용을 기록할 때 하드웨어 적으로 내부의 배선을 끊기 때문에 재기록이 불가능하다.
  2. Erasable PROM. 삭제가 가능하다. 삭제 방식에 따라 자외선을 쬐어야 하는 UV-EPROM과 전기적으로 가능한 EEPROM 등으로 나뉜다. 후자는 전술했듯 플래시 메모리로 발전했다는 것이고, 전자는 매우 번거롭기 때문에 현재는 거의 안 쓰인다.
  3. 그런데 삼성 840 EVO 는 MLC에서 TLC로 전환되었음에도 가격이 전작과 똑같았다. 이 어이없는 상황을 두고 상당히 말이 많았는데 Pro 라인업은 MLC로 나오고 있고 2015년 현재 가격대가 안정화 되었다.
  4. 10MB/s 이하의 쓰기 속도가 나오기도 한다. 조심해서 고르자. 읽기 속도는 평준화 되었다.
  5. MLC라고 써 있지 않은 메모리들은 99.9% 확률로 TLC라고 보면 된다. 기업 입장에서 장점을 표기하지 않을 리가 없다.