Pull to refresh

Comments 14

Подключать микросхему QSPI в 1-битном режиме - ну, такое. Многие STM32 позволяют читать такие микросхемы вообще в режиме прозрачного отображения на память, в 4-битном режиме. Есть и другие варианты.

100k erase cycles - главный минус этой памяти... ( Использовал как то в пет проекте fram ,цена конечно кусается, но можно было не опасаться что помрёт)

У FRAM тоже есть ограничение на количество циклов, кстати

Конечно есть, но оно существенно выше :

10^{14}

( Как подсказывает Википедия ).

Серьезно? Даже если брать по минимуму, 10^12 циклов (многие гарантируют еще больше), то это больше тридцати лет записи каждую миллисекунду. Там главное ограничение вовсе не в этом, а в цене за Мб и габаритах

Если циклически менять секторы, а не писать в один и тот же, то ресурс кратно возрастает. Судя по FRAM, у вас небольшие объёмы записываемых данных.

Я правтльно понял, что файловую систему LittleFS реализует сама микросхема flash своим контроллером? Сама распределяет файлы по секторам, очищает сектора перед записью. А вы уже из кода драйвера обращетесь а не к адресу памяти а работаете сразу с файлами?

Нет, это - обычная флешка, там в статье код есть чтобы прикрутить эту флешку к LittleFS, но не более

Не рекомендую LittleFS, она раскручена в среде ардуиещиков, но имеет кучу проблем. Как-то использовал, помучался, отказался. Также посмотрите issues на github. Еще вот как-то заскринил:

Имею опыт применения littlefs с первых релизов в коммерческом проекте (на текущий момент около 30к активных девайсов на этой фс). Проект имел сжатые сроки, Краснодарский бюджет (т.е. -> 0), требовал как заявленные "Power-loss resilience", так и "Wear leveling", а так же некоторую специфику, которая выяснились в процессе. Первой моей ошибкой оказалось то, что я решил что ARM и MBED это серьезные ребята, а не одинокий японский радиолюбитель. Нет, парни, ChaN крут по настоящему, но и у него бывают эчинейшие ляпы (в этом можно легко убедиться, если внимательно почитать историю версий FatFs). Но вернемся к littlefs. Выпустили ее не то что бы сильно оттестированной (да да, это опенсорс, детка, тут тебе никто ничего не должен). В общем в ветке 1.x при масштабировании на первые 1к девайсов она начала регулярно осыпаться в труху. Иногда настолько, что восстановить ее можно было только полным стиранием флеши. На гитхабе на это было много жалоб. Есть и мой ишью с подборочкой дампов после креша. Но автору было уже не до ветки 1.x. Он пилил ветку 2.x, которая должна была стать еще более быстрой, и более надежной. Перейти на ветку 2.x я не смог из потери примерно 40% производительности на моем кейсе, кроме того как показали мои немногочисленные тесты проблему крешей фс на тот момент так и не решили. А затем афтор и вовсе ушел в туман примерно на пол года без объявления войны. Через полгода правда выкатил версию 2.2 в которой вроде как полечил основные болячки, но я уже не смотрел что у него получилось. В итоге что могу сказать в сухом остатке о ней: 1) Круто, что есть такая библиотечка. Не круто, что маркетинг опять победил здравый смысл. Не было бы претензий к этой поделке, если бы ее не пиарили в определенных кругах, как панацею от всех болезней. 2) Когда MBED по своим теста получает рост производительности, я получаю ее потерю. К сожалению, это печаль конкретно моей аппаратной платформы на базе SIM868, EAT и софтового SPI, о котором китайцы тактично умолчали. 3) Не любит писать в начало или середину файлы. Только в конец. Иначе переписывает файл от места изменения до конца. Приходится писать ротацию файлов. Но каталоги живут по тем же правилам, и при большом количестве файлов тоже начинаем упираться в производительность. 4) Сама библиотека очень плохо проверяет входные параметры. Иногда вообще не проверят. Она ждет что это будет делать прослойка между ней и пользовательским кодом. В общем библиотеку рекомендую. В ней все как мы любим.

Не рекомендую LittleFS, она раскручена в среде ардуиещиков, но имеет кучу проблем. 

Спасибо, что еще можно попробовать где присутствует "Power-loss resilience" и "Wear leveling"?

Сейчас китайцев есть смысл изучать - GigaDevice, Zetta, и подобных. Хотя совсем недавно Winbond и Macronix больше 64 мбита тоже были доступны. Но не теперь.

пин холд это вход, отключает спи. но я так и не придумал в какой ситуацыи это можэт понадобица.

я использовал такую м/сх для кольцевого лога, как недостаток надо хранить последний адрес или тратить время на поиск стертой страницы.

Sign up to leave a comment.

Articles