Какую бесплатную файловую систему flash вы могли бы посоветовать для встроенной системы? - PullRequest
2 голосов
/ 22 июня 2010

У меня на плате DSP tms320vc5509a и NOR flash AT26DF321, и я собираюсь сохранить именованные данные на флэш-памяти.Мне не нужна иерархия каталогов, выравнивание износа (я надеюсь, что система будет записывать на флэш-память очень мало раз), но CRC крайне необходим.Спасибо

Ответы [ 2 ]

2 голосов
/ 23 июня 2010

На флеш-памяти NOR, особенно той, которая также содержит мой загрузочный код и приложение, я обычно избегаю накладных расходов на формальную файловую систему. Вместо этого я сохраняю каждый «интересный» объект, начиная с границы стираемого блока и начиная со структуры заголовка, которая как минимум содержит размер объекта и контрольную сумму. Добавление имени или идентификатора ресурса в заголовок является естественным расширением.

Загрузчик ищет допустимое приложение, проверяя контрольную сумму перед использованием блока. Аналогично, другие ресурсы могут быть подтверждены как действительные перед использованием.

Кроме того, утилита обновления встроенного программного обеспечения облегчает проверку объекта перед удалением и программированием его во FLASH.

Пул небольших ресурсов лучше всего обработать, поместив его в контейнер для перепрошивки. Если ресурсы поддержки поддерживают это, у меня возникнет соблазн использовать ZIP, чтобы обернуть файлы, обернуть изображение архива ZIP в заголовок размера и контрольной суммы и сохранить его на границе стираемого блока. Если вы не можете позволить себе время выполнения распаковки, все равно можно использовать ZIP с несжатыми файлами или использовать более простой формат, такой как tar.

Естественно, для NAND-вспышки ситуация совершенно иная. Там я настоятельно рекомендую выбрать установленную (коммерческую или открытую) файловую систему, разработанную для особенностей флэш-памяти NAND.

2 голосов
/ 22 июня 2010

Вы можете взглянуть на Модуль файловой системы ELM-Petit FAT для хорошей реализации небольшой файловой системы.Не уверен, что он имеет CRC, но вы можете добавить это к своим аппаратным драйверам низкого уровня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...