생명연장의 꿈
그렇다고 손놓고 있을 엔지니어들이 아니다. 대용량이라는 절대 무적의 메리트를 쉽게 포기할 수는 없다. 갖가지 수명연장 대책이 나오지만 여기서는 그 일부만 소개하겠다.
웨어레벨링
Wear-Leveling
각 셀의 산화막의 수명은 대부분 비슷하다. 이런 상황에서 특정 셀만 집중적으로 사용하면 그 셀의 산화막만 집중적으로 손상받게 되고, 그 셀만 먼저 수명을 다할것이다.
이러면 전체용량이 감소되는 것이기 때문에 달갑지 않다. 이런 사태를 예방하는 것이 웨어레벨링이다.
쉽게말하면, 각 셀을 골고루 사용해서 전체 셀의 수명을 일정하게 관리해주는 것이다. 전체적인 수명을 최대로 사용할 수 있는 것!
ECC
Error Check and Correct : 에러 수정 기능
Controller
의 에러 수정 기능을 강화한다.
공정이 작거나 TLC
인 경우 같이 수명이 짧을 수록 더 높은 정밀도의 ECC
가 필요해진다.
현재는 16~24bit ECC
를 사용하는 것으로 알려져있다.
SLC에서 MLC, TLC, QLC로 갈수록 각 데이터를 지정하고자 하는 그 간격이 좁아진다. 때문에 데이터를 저장하고 읽는 과정에서 생기는 오류도 많아지게 되는데, ECC
는 이런 데이터의 오류를 검출하고 수정하기 위해서 오류정보를 저장하는 것이다.
ECC
값은 여분의 공간에 입력하고 우리는 그 값과 비교를 하게 된다. 그렇지 않은 경우 error를 수정하거나 보정하여 출력하게 되는 것 그래서 더욱 정밀해질수록 복잡해진다.
저장해야할 ECC code
의 용량 또한 증가하게 되고 그만큼 오류가 많이 생기니 해당하는 것을 하나씩 해석하기 위한 시간또한 필요하게 된다..
디지털신호처리
DSP
기록전압에 따라 전자저장량이 달라지는 걸 감지해서 각 신호별 기록전압을 셀 상태에 맞춰 변화시켜주는 것이다.
산화막 손상으로 이전보다 전자가 더 많이 저장되면 기록전압을 낮춰서 저장되는 전자수를 줄여서 원래 수준으로 맞추는 식으로 쓰기/지우기 전압을 변화시킨다.
오버 프로비저닝
Over Provisioning
이 방법은 셀의 수명연장이라기보다 제품의 수명연장이라고 할 수 있다.
위의 방식들을 사용한다 해도 결국 메모리셀의 사망을 피할 수는 없다.
Over Provisioning
은 여분의 메모리셀을 확보해놓고 사망하는 셀을 대체하는 기술이다.
예비용량을 확보해뒀다가 수명이 다해서 Bad-Block
이 발생한 셀이 나타나면 예비 셀로 대체해서 전체 용량을 일정하게 유지하는 것이다.
'임베디드 > [ Nandflash ]' 카테고리의 다른 글
[ Nandflash ] 09. Nandflash_F59L2G81A의 상세 Config (0) | 2020.09.04 |
---|---|
[ Nandflash ] 08. Nandflash_F59L2G81A의 특징 (0) | 2020.09.04 |
[ Nandflash ] 06. SLC, MLC, TLC (0) | 2020.09.04 |
[ Nandflash ] 05. 낸드플래시의 작동원리와 수명 (0) | 2020.09.04 |
[ Nandflash ] 04. 낸드플래시와 메모리구조 (0) | 2020.09.04 |