이것에 대한 신뢰할만한 정보를 찾을 수 없습니다. SD / MMC 카드 하드웨어의 전체 사양이 없습니다.
사실인가요? 이 고급 카드로 작업 할 때웨어 레벨링에 대해 걱정할 필요가 없습니까?
편집하다
SD 사양에 따라 마모 레벨링 이 보장 되는지 확인할 수 있습니까? 대부분의 벤더가하는 것처럼 보이지만 사양에 필요하지는 않습니다.
이것에 대한 신뢰할만한 정보를 찾을 수 없습니다. SD / MMC 카드 하드웨어의 전체 사양이 없습니다.
사실인가요? 이 고급 카드로 작업 할 때웨어 레벨링에 대해 걱정할 필요가 없습니까?
편집하다
SD 사양에 따라 마모 레벨링 이 보장 되는지 확인할 수 있습니까? 대부분의 벤더가하는 것처럼 보이지만 사양에 필요하지는 않습니다.
답변:
저는 SD 협회의 회원이었던 회사에서 일하고 있으며 2.0 (SDHC) 사양에 익숙합니다. SD 카드 사양에는 마모 레벨링에 대한 항목이 없습니다. 그것은 그들이 선택한다면 그것을 처리하기 위해 SD 제조업체에 전적으로 의존합니다. 우리는 일부는 가능하지만 다른 일부는 그렇지 않습니다 (슈퍼 저렴한 녹아웃 SD 카드에주의하십시오). SDXC가 마모 레벨링을 포함하도록 변경했을 수도 있지만 확실하지 않습니다. 불행히도 그것을 실제로 보여주는 유일한 방법은 공식 사양을 얻는 것입니다. 온라인에서 가장 많이 찾을 수 있지만 SD 협회에서 실제로 지불하기를 원합니다.
참고로, 2GB 카드를 가져 와서 다시 시작하기 시작하는 것은 카드가 죽기 전에 더 이상 쓰기가 불가능하기 전에 평균 약 10TB입니다. 또한 SD 카드는 데이터가 나쁜시기를 알려주지 않습니다. 즉 PC 하드 드라이브처럼 I / O 오류를 반환하지 않습니다. 10TB는 많은 데이터이므로 임베디드 디자인에는 문제가되지 않지만 누군가에게 영향을 줄 수 있습니다.
사실이야! MicroSD 카드에는 검은 색 플라스틱으로 캡슐화 된 (ARM) 마이크로 컨트롤러에 본딩 된 NAND 플래시 칩이 포함되어 있습니다. http://www.bunniestudios.com/blog/?p=898 는 설명합니다.
후속 포스트의 끝에서 http://www.bunniestudios.com/blog/?p=918 컨트롤러를 통합하는 Bunnie는 아마도 플래시를 미리 테스트하는 것보다 비용이 적게 든다.
SanDisk의 SD 카드 제품 설명서 인용 : "1.9 마모 레벨링. 마모 레벨링은 NAND 메모리를 사용하는 SD 카드의 소거 풀링 기능의 본질적인 부분입니다." 데이터 시트에서 SanDisk 브랜드 카드에 대한 모든 내용을 읽을 수 있습니다 .
예, SD / MMC 카드에는 마모 수준을 조정하는 컨트롤러가 있습니다. 그렇지 않은 경우 몇 분 안에 잘못된 쓰기 패턴으로이를 파괴 할 수 있습니다.
그것은 실제로 일부 임베디드 프로젝트의 문제입니다. 어떤 섹터가 언제 마모 될지 알 수있는 방법은 (명백히) 없습니다. 따라서 잘못된 시간에 전원을 껐다 켜면 카드의 어느 곳에서든 데이터를 삭제할 수 있습니다. (내가 아는 방법을 묻지 마십시오 :))
SD 카드는 시스템을 완전히 종료 시키거나 최소한 쓰기가 완료되도록 보장하는 시스템과 함께 사용해야합니다. 그렇지 않으면 데이터가 손실 될 수 있습니다.
편집하다
문제는 마모 레벨링 프로세스가 완전히 숨겨져 있다는 것입니다. 디스크의 모든 섹터는 언제든지 이동할 수 있으며 (페이지가 기록 된 상태로 스왑 됨) 해당 프로세스 도중에 전원이 공급되지 않으면 임의의 섹터가 손상 될 수 있습니다.
이 동작을 구현하는 데는 합리적으로 안전한 방법이 있지만 어떤 사양도 아니므로 카드가 그렇게 할 것이라고 믿을 수 없습니다. 하나의 카드를 테스트하고 작동하게 한 다음 제조업체는 부품 번호를 변경하지 않고 구현을 변경할 수 있습니다.
테스트에서 내 SD 카드 컨트롤러는 안전한 방법으로이 작업을 수행하지 않습니다.
난 정전 허용을 위해 특별히 광고 된 "고 신뢰성"SD 카드를 볼 수 있습니다.하지만 제조업체가 올바르게 그렇게하려면 제조업체를 신뢰해야합니다. 페이지 지우기를 직접 제어하고 싶습니다. 나는 아직도 이것을 알아 내려고 노력하고있다.
기존의 NAND 플래시 메모리를 사용하는 모든 유형의 SD 카드는 일부 유형의 섹터 가상화를 사용해야합니다. 기존의 NAND 플래시 장치는 개별 512 바이트 섹터의 소거를 지원할 수 없으며 크기가 큰 기존의 NAND 플래시 장치는 없기 때문입니다. 섹터를 쓰려고 시도 할 때마다 장치가 해당 섹터의 지우기 블록 (RAM까지도)의 모든 섹터를 복사 한 다음 블록을 지우고 쓰기를 요구하는 경우, 허용 가능한 수준의 성능을 발휘할 수 있습니다. 모든 부문이 돌아 왔습니다. 대부분의 섹터 가상화 기술은 본질적으로 다소 마모 수준입니다. 품질 장치와 넉 오프 간의 가장 큰 문제는 장치가 블록 사이의 레벨링을 적극적으로 시도하는 정도, 단순히 의사-랜덤 블록 할당을 사용하고 거의 균일 한 결과를 얻을 수 있기를 바라고 있습니다. 실제로, 나는 무작위 / 최선의 최선의 할당조차도 대부분의 경우에 적합 할 것으로 기대한다.
Sandisk에는 카드의웨어 레벨링 로직을 설명하는 백서 가 있으며 여러 시나리오에서 카드 수명을 추정합니다. 행정상 개요 : 당신이 논스톱 카드를 망치지 않는 한, 수십 년 동안 지속될 것입니다.
이것에도 불구하고 많은 장치가 배터리가 부족하거나 전화가 충돌하거나 종료되는 경우 SD 및 microSD 카드, 특히 고밀도 카드를 손상시킵니다. 나는 문제가이 잘 일부 카드에 (기침 광고 알려진 바와 같이 전압 공급의 불충분 한 규제 것으로 의심 t 특정 외부 독자에 읽을 수없는 카드의 현상이 발생할 수 / 기침)하지만, 일부에서 제공하는 마이크로 다양한 잘 작동 컴퓨터 상점.
이 결함이있는 순간에 카드를 복구하는 중입니다. 이상하게도 대부분의 데이터를 복구 할 수 있지만 일부 섹터는 각 시도 에서이 변경 사항을 수행하지는 않습니다. 마모 레벨링 자체에 결함이있을 수 있습니까? (예, 여러 명의 독자를 시도했지만 동일한 오류가 발생했습니다.)
좀비 카드, 즉 형식을 완성하지 못하거나 읽기 전용 인 "nuking"좀비도 성공했습니다. 적은 비율로만 작동하지만 효과에 대한 대부분의 "공식적인"지침보다 훨씬 더 민감합니다.
따라서 처리 된 테스트 카드는 다시 실패하기 전에 4 개월 동안 지속되었으며, 시끄러운 전압을 공급하는 데 사용 된 장치가 아닌 경우 수명이 길어질 수 있습니다.