Flash#
16MiB Flash
ESP32-S3-WROOM-1U-N16R2
4KiB 섹터
100,000 회 endurance
20년 retention
erase, write 속도는 사양을 못 찾음. 사용한 칩 문의 필요
GD25Q32 칩을 사용할 경우
4KiB erase: 100ms typical, 300ms max
page write: 0.7ms typical, 2.4ms max
256-바이트 페이지이기 때문에 4KiB 쓰기시 0.7 * 16 = 11.2ms
2.4 * 16 = 38.4ms
LFS에 8MiB 할당
앱 데이터는 LFS에 저장
8MiB / 4KiB = 2048 섹터
아래 계산은 모두 4KiB 이하 데이터 저장 기준
1초 주기 데이터 저장
1일 86,400개 데이터
1년 31,536,000개 데이터
100,000 회 endurance 를 가정할 경우, 약 3.2일
60초 주기 데이터 저장
1일 1440개 데이터
1년 525,600개 데이터
100,000 회 endurance 를 가정할 경우, 약 190일
15분 주기 데이터 저장
1일 96개 데이터
1년 35,040개 데이터
100,000 회 endurance 를 가정할 경우, 약 2.9년
Wear leveling
LFS는 wear leveling을 지원
6MiB / 4KiB = 1536 섹터
100,000 * 1536 = 153,600,000 회 endurance
1초 주기 데이터 저장
153,600,000 / 31,536,000 = 4.9년
60초 주기 데이터 저장
153,600,000 / 525,600 = 292년
15분 주기 데이터 저장
153,600,000 / 35,040 = 4,380년
데이터 저장 주기 최소값은 10초로 하자
마진과 erase, write 연산 속도 고려