eMMC 사용자 영역에 여러 SLC 영역을 만드는 방법은 무엇입니까?

eMMC 사용자 영역에 여러 SLC 영역을 만드는 방법은 무엇입니까?

eMMC(즉, 하드웨어 파티션)의 UDA(사용자 데이터 영역)를 다음과 같이 파티션해야 합니다.

  1. 첫 번째 336MB 영역은 pSLC에 위치해야 합니다.
  2. 다음 2GB 영역은 MLC 파티션으로 사용됩니다.
  3. 나머지 영역은 다시 pSLC 모드에 있어야 합니다.

전체 eMMC 영역을 pSLC로 만들고 다음을 사용하여 작동하게 했습니다.

mmc hwpartition user enh <start> <size> wrrel on complete

그런데 위의 MLC와 pSLC 조합을 동일한 명령으로 어떻게 구현하는지 모르겠습니다.

다음 명령을 시도했지만 그 중 어느 것도 예상대로 작동하지 않습니다.

  1. 두 지역 모두 연관되어 있습니다.충분히배너:

    mmc hwpartition 사용자 enh "first_region_start" "first_region_size" wrrel on충분히

    mmc hwpartition 사용자 enh "second_region_start" "second_region_size" wrrel on충분히

이 경우 첫 번째 완료 플래그가 두 번째 pSLC 영역 업데이트를 허용하지 않기 때문에 실패합니다.

  1. 첫 번째 지역놓다로고 및 두 번째 영역충분히배너:

    mmc hwpartition 사용자 enh "first_region_start" "first_region_size" wrrel on놓다

    mmc hwpartition 사용자 enh "second_region_start" "second_region_size" wrrel on충분히

효과가 없으며 향상되지 않습니다! 전원을 껐다가 켜면 전체 eMMC 영역이 MLC 자체로 표시됩니다.

위의 파티션 조합을 수행하는 방법을 알아내는 데 도움을 줄 수 있는 사람이 있습니까?

답변1

u-boot에서 eMMC를 분할하려면 3단계(예: 설정, 확인, 완료)를 수행한 후 재부팅해야 합니다.

=> mmc hwpartition (user | gp1 | gp2) "region_size" [enh wrrel on] set
=> mmc hwpartition (user | gp1 | gp2) [enh] "region_size" [wrrel on] check
=> mmc hwpartition (user | gp1 | gp2) [enh] "region_size" [wrrel on] complete

선택적 매개변수:

  • wrrel on: 쓰기 안정성을 켭니다.
  • enh: 향상된 파티셔닝(파티션을 SLC로 구성).
    이 매개변수가 없으면 파티션은 기본적으로 pSLC로 설정됩니다.

하나의 "set" 명령, 하나의 "check" 명령 및 하나의 "complete" 명령을 사용하여 세 개의 파티션을 모두 구성해야 합니다.

귀하의 경우 명령은 대략 다음과 같습니다.

=> mmc hwpartition user 688128 enh wrrel on user 4194304 wrrel on user wrrel on set
=> mmc hwpartition user 688128 enh wrrel on user 4194304 wrrel on user wrrel on set
=> mmc hwpartition user 688128 enh wrrel on user 4194304 wrrel on user wrrel on set

노트:

하드웨어 파티셔닝은 OTP(일회성 프로그래밍 가능)입니다. 일단 이렇게 하면'mmc hw파티션...완료'전원을 껐다 켜면 카드는 설정한 파티션에 프로그래밍됩니다.

관련 정보