Bad Block Management

Bad Block Management

Bad Block Management

배드 블록 및 소스

솔리드 스테이트 드라이브의 NAND 플래시 입자는 작은 플래시 블록으로 구성되는데, 여기에는 양품 플래시 블록과 불량 플래시 블록이 있습니다. 솔리드 스테이트 드라이브에 대한 배드 블록의 주요 소스에는 다음과 같이 두 가지가 있습니다.

공장에서 생성된 배드 블록

웨이퍼는 NAND 플래시 입자(NAND 플래시 칩)로 패키징되기 전에 테스트, 커팅, 패키징 등 많은 공정을 거칩니다. 이러한 과정에서 NAND 플래시 입자 사이에 배드 블록이 생성될 수 있습니다. 이러한 유형의 배드 블록은 기술적인 요인으로 생성되므로 불가피합니다

나중에 생성된 배드 블록

솔리드 스테이트 드라이브를 사용한 기간에 따라 원래 양호했던 솔리드 스테이트 드라이브의 블록 중 일부가 마모 또는 기타 사고(예: 비정상적인 정전 등)로 인해 배드 블록이 되기

 

배드 블록을 식별하는 방법

ADATA는 NAND 플래시에서 배드 블록을 식별하기 위한 전용 테스트 장비, 소프트웨어 및 하드웨어를 보유하고 있으며 다음과 같이 특수 마크를 사용하여 배드 블록을 표시합니다. 

1. 배드 블록이 공장에서 생성된 경우 ADATA는 FFh가 아닌 데이터(예: 00h)를 배드 블록의 예비 영역(예비 열)이나 데이터 영역(메인 어레이)의 특정 주소에 기록합니다. 일반적으로 첫 번째 페이지(또는 두 번째 페이지 또는 마지막 페이지)의 첫 번째 바이트에 FFh가 아닌 데이터가 포함된 블록은 배드 블록입니다. 이 기준은 공장에서 출고될 때 굿 블록과 배드 블록을 식별하는 방법으로 이는 배드 블록 또는 무효 블록 마크라고 부릅니다. 

2. 지우기 및 쓰기 오류가 발생하거나 솔리드 스테이트 드라이브 사용 중에 UECC(Uncorrectable Error Correction Code, ECC 오류 수정을 통해 데이터를 복구할 수 없음)가 표시되면 이는 기본적으로 비정상적인 NAND 플래시 블록 때문입니다. 이러한 블록은 더 이상 사용되지 않도록 배드 블록 테이블에 추가해야 합니다.

배드 블록 관리의 두 가지 방법

블록 건너띄기 방법

사용자가 플래시에 데이트를 쓸 때, 생성된 배드 블록 테이블을 기준으로 배드 블록은 건너뛰고 다음 블록에 데이터를 씁니다. 

예약된 블록 영역 방법

ADATA에서 사용하는 방법을 통해 특정 영역에서 배드 블록이 발견되면 컨트롤러는 이를 예약된 배드 블록으로 교체하고 이 배드 블록은 배드 블록 테이블에 기록되어 더 이상 사용되지 않습니다. 나중에 사용자가 데이터를 쓰면 데이터는 교체된 해당 블록에 기록됩니다.

 

OTHER TECHNOLOGIES

문의