Перейти к содержанию
    

надежная файловая система для SD (чтоб не появлялись bad blocks или чтоб была малочуствительна к ним)

га гитхабе лежат сорсы spiffs - выглядит достаточно примитивно для микроконтроллеров. есть даже дрова для линя.

кто пробовал - что скажете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, AlexRayne said:

га гитхабе лежат сорсы spiffs - выглядит достаточно примитивно для микроконтроллеров. есть даже дрова для линя.

кто пробовал - что скажете?

Как Вы представляете себе "wear levelling" на SD карточке, если общаетесь не с микросхемой флеша, а с микроконнтроллером карточки?

Я уже прочуствовал это все, думаю до меня таки дошла истина: Не поможет никакая система, если карточка сама выбирает куда именно писать. Если это делается хорошо самой карточкой то никакие костыли не нужны, а если это делается плохо- то не поможет, потому что непонятно что именно выравнивать нужно. Если бы можно было все функции выключить и иметь адресацию физических страниц флеша- тогда да, заменяем неизвестно как работающее выравнивание карточки своим, известно как работающим. А если они там будут друг друга выравнивать- результат непредсказуемый.

Ну и стандарт это стандарт. Спецуха (spiffs, например) должна быть сильно аргументирована.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 часов назад, Ruslan1 сказал:

Какая именно серия у них заявлена как SLC/pSLC? 

MLC Micron

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

2 hours ago, mantech said:

MLC Micron

да, посмотрел, спасибо!

Плюс в том что официально пишут тип памяти и наличие S.M.A.R.T

Для MLC ресурс у них получается 120TBW/64GB = 1875, неплохо но не фонтан. Но есть и карточки с указанием "3K P/E"

 

Есть еще SuperMLC, обещают 300TBW/16GB= 18750, это уже заявка. Но цена: за 4 GB вижу 25 евро. 

Но зато: доступ к  S.M.A.R.T описан в даташите, это огромный плюс. Кстати, может эта же команда CMD56 и для других карточек подойдет....

 

Upd:

как я понял, CMD56 и есть стандарт для S.M.A.R.T. Так что можно просто брать карточки, которые это поддерживают и будет уже не индпошив, а вполне красивое решение. И карточек таких много.

И если вдруг Сентинел такие карточки читает, даже если они на в списке поддерживаемых- значит Сентинел именно так и работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

19 часов назад, Ruslan1 сказал:

Как Вы представляете себе "wear levelling" на SD карточке, если общаетесь не с микросхемой флеша, а с микроконнтроллером карточки?

так то конечно да. но если фс сама расчитана на работу на флеше, и е занимается повторной записью в один и тотже кластер, а марает потихоньку новые, то имхо, это всё же даст эфект - флеш будет писать в новые сектора, и чтобы повторно попасть в уже ранее замараный сектор - ей придется как минимум поменять карту секторов. если вы расчитываете на "плохую" флеш, наверно она будет лениво это делать?

стирание секторов флеши - операция жоркая, пожтому фс будет стараться это делать реже - когда уж совсем кончатся пустые. соответственно и флеш будет вынуждена держать ранее записанные сектора занятыми, и записи в новые сектора по идее не должны перетирать уже занятые.

так или иначе, только эксперимент даст ответ

Изменено пользователем AlexRayne

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 часов назад, Ruslan1 сказал:

как я понял, CMD56 и есть стандарт для S.M.A.R.T.

Да х.з.  Кингстон ее не документирует, хотя в списке есть  https://www.kingston.com/datasheets/SDCIT-specsheet-8gb-32gb_ru.pdf

Может это и стандарт, но ограниченный и необязательный для всех членов SD альянса, но кто-то поддерживает...

 

Ну и даташит SD specification тоже описывает CMD56, как application specific.

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В-общем Кингстон еще тот случай. Карточки у них сравнительно дешевые и может даже хорошие. Но саппорт како-то странный: уже предложили мне под НДА их SDK потд винду-линукс, вместо чтоб просто рассказать что и как. Вот уж не знаю, смогу ли я из их линукс СДК понять как оно там внизу устроено. В линуксе тоже либы закрытые бывают или все в исходниках? Подозреваю, что они к ридеру обращаются, а не к карточке, и толку от их СДК мне мало будет- нифига не вытащить полезного

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, Ruslan1 said:

В линуксе тоже либы закрытые бывают или все в исходниках?

Бывают и закрытые либы и обфусцированные исходники.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, aaarrr said:

обфусцированные исходники.

Спасибо, понял.

Новый термин для меня, сколько программлю- никогда не встречал. Буду знать как это называется. Я думаю, есть много людей, которые по умолчанию пишут "обфусцированные исходники.", не специально , а просто по другому не умеют :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

54 минуты назад, Ruslan1 сказал:

Я думаю, есть много людей, которые по умолчанию пишут "обфусцированные исходники.", не специально , а просто по другому не умеют :)

Писать программу можно как угодно, можно лишь бы работало и черт с ним, можно делать осмысленные названия функций и переменных, можно писать комментарии "для себя", а можно комментировать, чтоб поняли другие люди. Но с каждым уровнем тратится больше времени, да и смысла описывать исходник "для всех желающих" тоже иногда смысла нет. Ну и обфускация с помощью спец программ, используют для инет-программирования и т.п. Это уж чисто с коммерческой т.з.

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот ту кое что есть, но в основном по микрону и ссылки на линуховые сырцы где мониторинг организован.

https://elinux.org/images/2/2c/Wear_Estimation_for_Devices_with_eMMC_Flash_Memory.pdf

https://media-www.micron.com/-/media/client/global/documents/products/technical-note/sd-cards/tnsd02_enable_sd_health_monitor_system.pdf

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 9/7/2021 at 2:06 PM, arhiv6 said:

LittleFS выравнивание износа и поддержку горячего отключения поддерживает.

Да, фичи заявлены красивые. Только уже вторая версия со сменой метаданных вышла, а количество глюков только растет. Разработчик зарылся. Реальное использование к сожалению невозможно. Ну и список проблем это тоже подтверждает.

 

Отсюда:
 

Quote

Имею опыт применения 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) Сама библиотека очень плохо проверяет входные параметры. Иногда вообще не проверят. Она ждет что это будет делать прослойка между ней и пользовательским кодом. В общем библиотеку рекомендую. В ней все как мы любим.

Тоже потратил кучу времени на этот литтлфс. Перспектив не вижу, список багов растет, их описание пугает. Автор опять "ушел в туман".  Начал искать другие варианты. Нашел два: filex/levelx из Azure RTOS и uS-FS от Micrium, в обеих заявлено и выравнивания износа и устойчивость к сбоям. Сейчас портировал оба варианта, тесты на симуляторе проходят оба варинта, осталось испытать в реале. uS FS выглядит намного качественнее, внутри все очень документировано, не видно говнокода.

 

Azure_RTOS_FileX_User_Guide.pdf

uC-FS Documentation V40700.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

05.11.2021 в 17:56, khach сказал:

Вот ту кое что есть, но в основном по микрону

Ну дак они тоже через CMD56 все это выколупывают...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

06.11.2021 в 15:38, turnon сказал:

насколько я вижу уС-ФС - это стек флещи с фс FAT. а левелх - оож самое толькл с ехФАТ.

spiffs выше упоминал - это именно фс.

Изменено пользователем AlexRayne

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 minutes ago, AlexRayne said:

насколько я вижу уС-ФС - это стек флещи с фс FAT. а левелх - оож самое толькл с ехФАТ.

spiffs выше упоминал - это именно фс.

 

spiffs, как и LittleFS не вызывает доверия, куча issues. К тому же в spiffs не заявлено устойчивости к сбоям питания. Ну и похоже автор тоже "ушел в туман", версия 0.4.0 уже наверное года два как в ожидании.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...