ㅤ
А вот мажет ли сама флешка - вопрос
Sergey
Да, но ты же не знаешь что там внутри. Лисина надо попросить растворить
Ну я проверял, они тупые, что им скажешь то они и делают. Если писать рандомные цифры по одному и тому же адресу, вскоре получишь там все нули
ㅤ
Возможно во флешке контроллер умнее чем мы думаем
Чешипузик
Опять же вопрос: какой тип ячеек у штатной флеш памяти, SLC, QLC или какой-то ещё?
Sergey
Опять же вопрос: какой тип ячеек у штатной флеш памяти, SLC, QLC или какой-то ещё?
Не думаю что найдется такая задача где это имеет значение, ты же не будешь писать свои 4 байта постоянно по одному адресу, а будешь писать со смещением пока страница не закончится
Sergey
Ну загляни в исходники nvs, ради прикола
А зачем, проще прочитать флешку и посмотреть что происходит. А происходит там ровно то что написано в документации
ㅤ
Опять же. Циклов у нас сколько?
Чешипузик
ㅤ
10 тысяч
ㅤ
Ему надо писать раз в день. То есть 365 записей страниц в году
Чешипузик
У TLC NAND ячейки 1000 циклов. Не хватит на три года при ежедневной записи.
ㅤ
Значит одна страница умрет
Чешипузик
У SLC NOR 100 тысяч циклов. Ещё куда ни шло!
Evgeniy
Подобный архив делал так: каждой записи присваивается 32 бит номер, во время инита ищем по памяти запись с наибольшим номером, чтобы понять куда дальше записывать. Размер записей фиксированный.
Evgeniy
В итоге ресурс вряд-ли закончится, т.к. используется несколько страниц памяти
Evgeniy
По циклам стирания считается ресурс, а этих циклов весьма немного при такой логике
Чешипузик
Сколько страниц у флеш памяти есп?
ㅤ
ㅤ
Это?
Sergey
Ему надо писать раз в день. То есть 365 записей страниц в году
Так ему всего 4 байта надо, а на странице сколько таких поместится? Достаточно много
ㅤ
Ну так он будет страницу 100 тысяч раз переписывать.
ㅤ
Это на дохера лет
Evgeniy
Так ему всего 4 байта надо, а на странице сколько таких поместится? Достаточно много
Помимо этого CRC, и прочие вещи понадобятся. Чтобы потом суметь считать. Задачка типичная - архив показаний.
ㅤ
Да не. Слухи о смерти сильно преувеличены (с)
ㅤ
Почему?
А как?
Чешипузик
Почему?
Так надо! 😁
Sergey
А как?
Ну я не думаю что тебя нужно тыкать в даташит spi flash и в доку нвс, сам почитай как
ㅤ
Это не еепром
ㅤ
Так или иначе страница переписывается полностью
Sergey
Фо влешку можно писать хоть по одному байту друг за другом
Evgeniy
Если раз в день по 4 байта, то какая разница... Когда больше или меньше потребление потребуется - можно думать уже
ㅤ
Да пиши хоть по байту. Но оно обновляет всю страницу
Sergey
Никто не обновляет страницу, так ни на что флешки не хватит
ㅤ
Мля это не еепром, это флеш
Sergey
Ладно, думаю сами разберётесь что к чему, чай не новички
ㅤ
Там страница
Чешипузик
Фо влешку можно писать хоть по одному байту друг за другом
Нет, один байт запишется на страницу и потом записать другой байт можно только после затирания всей страницы.
ㅤ
Никто не обновляет страницу, так ни на что флешки не хватит
Ты путаешь программную логику и физику процессов
Sergey
https://www.macronix.com/Lists/Datasheet/Attachments/8800/MX25L25773G,%203V,%20256Mb,%20v1.0.pdf
ㅤ
Ну и?
Sergey
Ресурс тратится на стирание флешки, а записывать можно сколько хочешь раз
ㅤ
Да нет же
Чешипузик
Я думал, что тут чат опытных разработчиков на ESP32! 😁
ㅤ
Я думал, что тут чат опытных разработчиков на ESP32! 😁
Опытные в разделе новичков и болталке
Sergey
Ну вы гоните, ребят. Ладно, исследуйте дальше
ㅤ
Для этого на тех же ссд есть кеш, чтоб не портить страницы
ㅤ
Даже в смарте разные параметры они считают. Total writes, NAND writes
ㅤ
Ну вы гоните, ребят. Ладно, исследуйте дальше
Давай доведем до логического конца. Может мы не правы. Объясни
Чешипузик
Ну вы гоните, ребят. Ладно, исследуйте дальше
В даташите написано, что посекторное стирание.
Ilia M
А запись - разве не подразумевает стирание?
Чешипузик
Не стоит путать NOR и NAND память: у первой побайтный доступ на запись, у второй - постраничный.
Чешипузик
Ilia M
Запись нет, перезапись - да
Ну это уже "буквальность" пошла.
Ilia M
Запись тогда возможна только 1 раз 🤷‍♂
Ilia M
Ей вообще можно принебречь
Чешипузик
Ну это уже "буквальность" пошла.
Вовсе нет. Запись ведётся только на FF ячейки.
Чешипузик
Почитайте здесь, очень хорошо расписана про организацию последовательной FLASH памяти и все сопутствующие процессы. https://narodstream.ru/stm-urok-214-hal-stm32f4-flash-pamyat-w25q-poluchenie-informacii-iz-mikrosxemy/
Max
https://vkvideo.ru/video-229052399_456239232 https://rutube.ru/video/f67485b5fea3717d0e8bd3787c00421e/ https://dzen.ru/video/watch/67d41422c250fd6855ac31e5
Sergey
Вовсе нет. Запись ведётся только на FF ячейки.
Это не так, можно записывать в уже записанную ячейку, только получишь в результате а&b
ok-home
Я думал, что тут чат опытных разработчиков на ESP32! 😁
ну тебе же посчитали сколько лет до исчерпания ресурса в самом хреновом случае, не считая того что либа NVS себя так не ведет, там по честному выравнивание ресурса, т-е умножай еще грубо на 128 +-
ok-home
Так у него и не было вопроса
ну значит промахнулся в пятницу вечером - уже сколько копий поломали на оф. форуме. раз в день хоть байт хоть 4 байта, там в NVS служебной информации key/value с перебором пишется и что то там 10-50 лет, за это время или "ишак сдохнет или эмир помрет"
ㅤ
Я сразу про это и сказал
Vladimir
Тогда на сколько хватит флеша, если 20 раз в день перезаписывать файл длиной 400 символов через LittleFS?
Evgeniy
Там же wear leveling есть, надо понять как он работает
Ruslan
https://vkvideo.ru/video-229052399_456239230 https://rutube.ru/video/4ee1d8022aff4c570ee9e94251e1a857/ https://dzen.ru/video/watch/67d022e11a38f475f99fe0da
Краткое резюме: Обсирает вещь, работая с венды на клацающей клаве. Не осилил свои параметры в sdkconfig. Культура оформления проекта так себе.
Ruslan
https://vkvideo.ru/video-229052399_456239231 https://rutube.ru/video/79c2b7682f0917bdf9838b849a6059aa/ https://dzen.ru/video/watch/67d2cb745a7ec8332740dc9a
Краткое резюме: Использует простейший HTTTD сервер из поставке и жалуется, что нет дополнительных фич.
Ruslan
У меня есть пачка плат с эзернетом, от олимекса
Чешипузик
У меня есть пачка плат с эзернетом, от олимекса
Что за платы? Не поделитесь информацией?
Ruslan
С эзернетом
Чешипузик
С эзернетом
Как называются ваши платы?