ukpyr 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Стирание - одно на сектор. А не одно на каждую запись. Так что выигрыш есть и он немал. При размере записи 20 байт, грубо говоря, ресурс увеличивается в 25 раз (это если 45ка с блоком в 512 байт).а кто запрещает сделать буфер в памяти ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба а кто запрещает сделать буфер в памяти ? И датчик падения питания, дабы в пожарном порядке слить незаполненный буфер? Можно, но зачем усложнять жизнь? Проще писать данные по факту прихода. Конечно, такое возможно только при применении 45DB. С MMC фокус не прокатит, к сожалению, нет у нее отдельной команды стирания и отдельной команды записи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
galjoen 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Повторюсь. Стирание - одно на блок. Запись используется без стирания. Те данные, которые не надо трогать заполняются 0xFF. В результате по AND'у они накладываются. Я тоже повторюсь. Пишется блоками, поэтому, что 1 байт записать, что весь блок - времени совершенно одинаковое кол-во уйдёт. Кстати пишутся они медленнее, чем в ДШ написано, по крайней мере у меня так почему-то. У AT45DB642D не быстрее чем за 12 милисекунд блок записывается. Завышена. Хотя, на том же дигикее 100 штук 45DB642 по $4. 29.01.2009 покупали AT45DB642D по 146,82 руб. (это без НДС). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Rst7 5 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Я тоже повторюсь. Пишется блоками, поэтому, что 1 байт записать, что весь блок - времени совершенно одинаковое кол-во уйдёт. Вы совсем не читаете мои посты. Я про ресурс, а не про время. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
-=TRO=- 0 1 марта, 2009 Опубликовано 1 марта, 2009 (изменено) · Жалоба А что? У MMC есть какой-то тайм-аут при записи одного сектора? Почему в этот сектор нельзя писать данные по их приходу пока не запишем весь сектор? может ну её эту буферизацию полного сектора? Я поимаю, что если мы не успеем добить сектор и вырубим питание то данные которые мы в него пихали тю-тю. Но в определённых условиях последним сектором с данными можно и пожертвовать. Ну и мониторить на всяк случай просадку питания самим контроллером чтобы быстренько успеть добить сектор на максимальной скорости (понимая что надёжность так себе и внешний супервизор лучше). Изменено 1 марта, 2009 пользователем -=TRO=- Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VaaG 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Ещё один маленький вопрос... u32 sector=300; u08 buffer[0x200]; //буфер размера 512, в каждом байте значение 0xAA for (q=0x0;q<0x201;q++) { buffer[q]=0xAA; } Блок нормально пишется, в winHEXе 300 сектор полностью в AA u32 sector=300; u08 buffer[0x200]; //буфер размера 512, в каждом байте значение 0x1A for (q=0x0;q<0x201;q++) { buffer[q]=0x1A; } Тут проблема, сектор не полностью 0x1A Нормально пишет (AA,BB,CC,DD,EE,FF,A1,B1...) Кажется я неправильно число задаю. Никак во всём секторе не получу например (11, ...34) Как правильно пишутся эти значения hex чисел??? Спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 67 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба for (q=0x0;q<0x201;q++) Вы заполняете 513 байт. Возможно, при этом перетирается что-то ценное. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VaaG 0 1 марта, 2009 Опубликовано 1 марта, 2009 (изменено) · Жалоба Вы заполняете 513 байт. Возможно, при этом перетирается что-то ценное. Да... от нуля до 0x201 , будет 513...не заметил Первый байт -0 конечный 511 Неа, не сработало При попытке записать 0x34 u32 sector=300; u08 buffer[0x200]; for (q=0x0;q<=0x1FF;q++) { buffer[q]=0x34; } В итоге получилось (с 0-ого) 34 9A 4D 26 93 49 A4 D2 69 и так повторяется до 512 бит на сектор... Изменено 1 марта, 2009 пользователем VaaG Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Hmm 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Дык форматировать все равно надо. Или, если несколько секторов окажутся "битыми", это не важно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 67 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба Дык форматировать все равно надо. Или, если несколько секторов окажутся "битыми", это не важно? Что форматировать? Битые сектора внутренней NAND MMC - её внутренние проблемы, если речь об этом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Hmm 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба "Она" сама будет обходить сбойные сектора что-ли? AT45 не имеет последних, а при низкоуровневой "работе" с MMC, например, некую таблицу сбойных "участков", придется организовывать самому. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ukpyr 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба А что? У MMC есть какой-то тайм-аут при записи одного сектора?есть, к сожалению :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rx3apf 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба "Она" сама будет обходить сбойные сектора что-ли? AT45 не имеет последних, а при низкоуровневой "работе" с MMC, например, некую таблицу сбойных "участков", придется организовывать самому. Вот как раз у AT45 они могут появиться (а, помнится, у Toshiba вообще были такие флешаки, в которых сбойные могли быть изначально - вот уж в самом деле геморрой !), и их придется обходить. А у SD/MMC механизм замещения сбойных секторов встроенный, и об этой проблеме можно не думать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 67 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба а, помнится, у Toshiba вообще были такие флешаки, в которых сбойные могли быть изначально - вот уж в самом деле геморрой Да это у любого NAND'а так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Hmm 0 1 марта, 2009 Опубликовано 1 марта, 2009 · Жалоба ... у SD/MMC механизм замещения сбойных секторов встроенный ... Тэкс... т.е. это есть на технологическом уровне. Бум знать :) А на индустриальный температурный диапазон такие "флешаки" существуют? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться