Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: NAND Flash cache program не отрабатывает
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
semibug
Микроконтроллер SAM3SU посредством GPIO работает с NAND Flash K9F2G08U0B (8-ми битная флэшка на 256 мегабайт).
Пока запись страницы выполнялась с помощью пары 0x80 - 0x10 (обычная операция записи) все шло хорошо, решил попробовать ускорить командой Cache Program. Пишу все страницы одного блока кроме последней парой команд 0x80 - 0x15, и последнюю страницу обычной командой программирования страницы (0x80 - 0x10), после каждой комадны ожидаю готовности по пину RDY/BSY.
В коде разница для страниц буквально выглядит так:
if ( page == 63 )
{ NAND_WRITE_CLE( NAND_CMD_PAGEPROG2 ); }
else
{ NAND_WRITE_CLE( NAND_CMD_CACHEPROG ); }

Нормально записывается только последняя страница блока (63), остальные при чтении показывают сплошные 0xFF.
Если в обоих ветка условия поставить команду обычного программирования страницы, то все страницы пишутся нормально.
В Datasheets нашел только одно требование к работе Cache Program - все страницы должны распологаться в одном блоке, для надежности прописал жестко в виде константы.
Какие ещё могут быть различия в условиях выполнения обычной команды программирования страницы и с кэшированием?
Alex11
А Вы уверены, что команда write cash есть в этой детали? У меня нет datasheet'а от нее. В флэшке с буквой m на конце она есть, но в старших деталях такой команды нет. Ее могли легко отрезать. Samsung очень вольно обходится со своими флэшами.
semibug
Цитата(Alex11 @ Jul 23 2012, 20:49) *
А Вы уверены, что команда write cash есть в этой детали? У меня нет datasheet'а от нее. В флэшке с буквой m на конце она есть, но в старших деталях такой команды нет. Ее могли легко отрезать. Samsung очень вольно обходится со своими флэшами.

Вот вот, у меня такой же Datasheet (с буквой m), буду копать в эту сторону, спасибо!

Вы оказались правы, в Datasheet на букву B пишут что команды Cache Program нет, есть как альтернатива Two-Plane Page Program.
А казалось бы буква - номер ревизии..
Спасибо за наводку!

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.