|
|
  |
TrueFFS - Файловая система для Flash, ищу SDK |
|
|
|
May 12 2008, 00:24
|

Участник

Группа: Свой
Сообщений: 55
Регистрация: 9-04-05
Из: г. Минск
Пользователь №: 3 984

|
Цитата(AlexandrY @ May 9 2008, 20:52)  Сами то пробовали? Там просто мусор лежит. Точнее нечто невменяемое и абсолютно без всяких драйверов. А самому внимательно посмотреть лень? - ФС активно используется уже 3 года без нареканий в 4-х видах изделий, релизы конца 2006 г. вполне работоспособны и надежны (у меня работает под АРМом). - Там не мусор лежит, а полный комплект нормальных исходников с тестовыми примерами, в т.ч. и в режиме эмуляции флеша, с небольшими изменениями за 1-3 часа запускается под MSVS - для отладки/изучения. - Примеры написания драйверов есть, тем более если без ОС или под ОС типа uCOS достаточно написать пару примитивных аппаратно-зависимых подпрограмм записи сектора/чтения сектора/стирание блока флеш-памяти и вперед  .
|
|
|
|
|
May 12 2008, 06:48
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Alex11 @ May 11 2008, 07:57)  Там проц стоит не с сотнями килобайт, а некая деталь на базе 51 контроллера, довольно дохленькая, и справляется. 1. Она справляется с частью необходимой Вам работы 2. Там, где объемы Flash гигабайтами измеряются, там и RAM не килобайтами измеряется. 3. 51 на 4x проводнои 25Mhz SD интерфейсе явно ловить нечего - нету там его. Специализированные "железные" контроллеры там 4. Габаритных размеров у SD аж три варианта. Самый маленький ну очень маленький
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
May 12 2008, 07:58
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Насколько смотрел контроллеры FLASH USB накопителей, там действительно стоят дохлые чипы типа 51-го мегагерц на 20-ть. Но никто и не говорил что на этих чипах хороший wear leveling. Дисков на них не сделаешь и никто не позиционирует их как диски. Я уже пару штук выкинул. Перестали писаться когда пытался использовать для очень частой перезаписи файлов. С другой строны в профиле USB Mass Storage используется SCSI transparent command set, т.е. от USB флеши требуется только тупо по DMA отдавать блоки из NAND в PC, а трансляция адресов физических в логические делается уже драйвером на PC, соответственно и здоровая таблица мапинга может находится на PC. Эффективный wear leveling должен базироваться на верхнеуровневых связях с FAT как это говорится в мануале на TrueFFS, значит тупой USB FLASH не может содержать в себе TrueFFS. Ну и как вариант для пытливых умов рекомендую посмотреть как сделан драйвер SMC (он же для NAND) в файловой системе от Micrium-а. Wear leveling там зачаточный но тем не менее с десяток килобайт для мапинга все равно требует. Цитата(zltigo @ May 12 2008, 10:18)  1. Она справляется с частью необходимой Вам работы 2. Там, где объемы Flash гигабайтами измеряются, там и RAM не килобайтами измеряется. 3. 51 на 4x проводнои 25Mhz SD интерфейсе явно ловить нечего - нету там его. Специализированные "железные" контроллеры там 4. Габаритных размеров у SD аж три варианта. Самый маленький ну очень маленький 
|
|
|
|
|
Oct 5 2008, 12:44
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 12-03-08
Из: Краснодар
Пользователь №: 35 832

|
Можно ли в подробностях изучить реализацию FS в микроС/FS триальной версии? Есть у кого-нибудь в распоряжнии микроС/FS не триал-версии?
Сообщение отредактировал bigmaxtor - Oct 5 2008, 12:47
|
|
|
|
|
Oct 6 2008, 05:15
|
Участник

Группа: Свой
Сообщений: 45
Регистрация: 7-11-05
Пользователь №: 10 537

|
Цитата(bigmaxtor @ Oct 5 2008, 16:44)  Можно ли в подробностях изучить реализацию FS в микроС/FS триальной версии? Есть у кого-нибудь в распоряжнии микроС/FS не триал-версии? Попробуйте поизучать...
Прикрепленные файлы
uC_FS.7z ( 53.08 килобайт )
Кол-во скачиваний: 91
|
|
|
|
|
Oct 6 2008, 16:20
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 12-03-08
Из: Краснодар
Пользователь №: 35 832

|
Цитата(маша @ Oct 6 2008, 11:15)  Попробуйте поизучать...  Какая это версия? Это нужно для изучения соответствующего описания. Судя по иронии, за этим кроется какая-то засада?
|
|
|
|
|
Oct 12 2008, 09:46
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 12-03-08
Из: Краснодар
Пользователь №: 35 832

|
Цитата(yuri_t @ Oct 12 2008, 15:19)  Сильно не рекомендую связываться с NAND FLASH chip - кроме чисто технических проблем(wear-leveling, error-correction), есть и другие - производители часто меняют номенклатуру и, что важнее, критические параметры(мах число стираний, например) причем в сторону ухудшения(!)
Для файловых же систем общего назначения FLASH card - оптимальное решение (IMHO) Но ведь внутри этих SD стоят теже самые NAND Flash чипы, которые управляются специализированным микроконтроллером или микроконтроллером общего назначения. В чем же разница - использовать чипы памяти напрямую или через разъем-ламели карточки-контроллер? Безусловно, часть работы по обслуживнию файловой системы берет на себя контроллер карточки, но мы здесь как раз собрались для того, чтобы выяснить все аспекты реализации этой же задачи. Все как раз наоборот: SD - для мелких и быстрых проектов, где можно поступиться надежностью контактов и отдать часть работы на откуп контроллеру в карточке и где с конструктивом есть свобода действий.
|
|
|
|
|
Oct 12 2008, 13:04
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 12-03-08
Из: Краснодар
Пользователь №: 35 832

|
Цитата(yuri_t @ Oct 12 2008, 16:43)  Давайте рассмотрим драйвер NAND FLASH chip -...
... для достижения ВЫСОКОГО быстродействия нужен или процессор уровня ARM9 ... Есть ряд применений, где выдающегося быстродействия не требуется. В таких случаях можно все эти функции возложить на Файловую Систему с Драйвером NAND-Flash. Они могут делать все необходимое в фоновом режиме, буферизируя запись/чтение. Я сейчас пытаюсь понять, делают ли это uC/FS+NAND Driver, emFile FAT Bundle + emFile NAND и пр. Если кто подскажет, буду рад.
|
|
|
|
|
Oct 12 2008, 13:13
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(bigmaxtor @ Oct 12 2008, 15:04)  Есть ряд применений, где выдающегося быстродействия не требуется. Еще кроме быстродействия, место на плате не имеет значения, разводка не имеет значения, затраты RAM/ROM не имеют значения, цена не имеет значения.... Использование ставших абсолютно ширпотребными, компактными и дешевыми SD карточек для файловой системы оправдано в подавляющем числе случаев, а голых Nand соответственно нет.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Oct 12 2008, 15:36
|
Участник

Группа: Участник
Сообщений: 51
Регистрация: 12-03-08
Из: Краснодар
Пользователь №: 35 832

|
Цитата ...ставших абсолютно ширпотребными ... и дешевыми SD карточек В этом причина невысокого качества/надежности.
|
|
|
|
|
Oct 12 2008, 19:27
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Последние ARM-ы все идут с контроллерами NAND с аппаратными корректорами ошибок. Считывание из NAND ведется быстрее чем из SD. Под сотню килобайт памяти должна иметь любая уважающая себя платформа на ARM которой нужна FS NAND-ы делают стабильно по паре лет, их параметры четко специфицированы. А вот SD карты меняются в асортименте каждый квартал стопроцентно. Их единственный плюс только в переносимости. Вытащил - скачал, воткнул другую - проапгрейдился. Но и выходят из строя они тоже очень часто. А спецификаций на эти карты вообще никогда не найти. В realtime приложениях с записью или считыванием видео или аудио на карту каждый раз надо делать пробную закупку и проверять тянут ли они по скорости ваш поток. Дурдом словом. Я решил вообще по два слота ставить для SD, на случай выхода из строя одной из карт. Настолько велика вероятность выхода их из строя. Вообщем NAND на борту, эт признак хорошего тона. Именно на NAND надо делать диск. А SD использовать только как хранилище постоянных данных или монотонный накопитель данных. Цитата(yuri_t @ Oct 12 2008, 14:13)  Давайте рассмотрим драйвер NAND FLASH chip - эта та часть software, которая скрывает внутренние проблемы NAND FLASH и делает из него нормальный block device. Так вот, для нормального функционирования этот драйвер должен хранить и использовать значительное число так назыв метаданных: - таблицу адресов(адрес блока <-> физический адрес (где этот блок нынче в памяти) ) - счетчики числа стираний для wear-leveling 1 го уровня - таблицу плохих блоков - etc.
Вся (или частично) эта информация при старте системы переписывается в RAM. При размерах NAND FLASH больше нескольких Gbytes размеры RAM становятся сотни КВуtеs. Далее - для нормальной работы с NAND FLASH совершенно необходим error-correction coding/decoding. Желательно еще иметь и wear-leveling 2 го уровня(статические блоки) ( какой-то background процесс, что также отнимает часть ресурсов процессора.)
Отсюда - для достижения ВЫСОКОГО быстродействия нужен или процессор уровня ARM9 или некий специализированный hardware controller(особенно для error-correction coding/decoding). В любом случае надо иметь достаточно RAM.
На практике, hardware controller в FLASH card не только делает вышеуказанные операции, но и реализует параллельный (!) доступ к нескольким NAND FLASH chip для повышения быстродействия.
|
|
|
|
|
Oct 12 2008, 19:42
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(AlexandrY @ Oct 12 2008, 21:27)  В realtime приложениях с записью или считыванием видео или аудио на карту каждый раз надо делать пробную закупку и проверять тянут ли они по скорости ваш поток. Если не брать совершенно левые noname вместо нормально маркированных по быстродействию, то все вполне стабильно, ожидаемо и надежно. И... по прежднему недорого. Контроллер, как и положено  должен иметь SD контроллер на борту, что встречается много более часто, чем навороченные NAND контроллеры. Цитата(AlexandrY @ Oct 12 2008, 21:27)  Считывание из NAND ведется быстрее чем из SD. А запись  Цитата Под сотню килобайт памяти должна иметь... Или не должна..., как не обязяна иметь и нехилое количество ног. Цитата NAND-ы делают стабильно по паре лет, их параметры четко специфицированы. Пару лет их конечно делают, только сначала они не доступны, поскольку "новые", а потом дорогие, поскольку "cтарые".
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|