Easyelectronics.ru

Электроника для всех
Текущее время: 21 сен 2017, 22:54

Часовой пояс: UTC + 5 часов



    • JLCPCB for PCB Prototyping: 10 шт. 2-слоя 100*100mm 2$(около 140rub), изготовление за 24 часа.
    • Создание принципиальных схем и проектирование печатных плат
    • Крупнейший китайский онлайн магазин радиодеталей. Скидка 50%
    • Просмотр GERBER файлов

Начать новую тему Ответить на тему  [ Сообщений: 17 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 14:22 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
В данной флеш существует сигнал готовноыти RY#/BY# - который показывает выполнила ли микросхема требуемые действия.
А именно, когда сигнал RY#/BY# находится в состоянии лог 1, значит микросхемы выполнила свой внутренний алгоритм и готова к следующим действиям.
Если же сигнал RY#/BY# находится в состоянии лог 0, то микросхема занята, находится в процессе выполнения требуемой от нее операции (запись, стирание, блокировка, разблокировка)

Суть проблемы. Наша фирма получила одну такую флеш... вроде как бывшую в употреблении.
Нами была собрана схема, в которой данная флеш-память управляется с ПЛИС.
После подачи питания на плис - все необходимые сигналы находятся нужном состоянии (WE# = 1, OE# = 1, CE# = 1, RST = 1).
Т.е. сигнал RY#/BY# должен находится в состоянии ожидания (лог 1). а наша микросхема выдает лог 0, как буд-то бы микросхема занята.

Сооветственно все попытки работы с флеш не увенчались успехом.
Следует уточнить что микросхема снабжена алгоритмом блокировки и разблокировки. Но даже в заблокированном состоянии сигнал RY#/BY# должен быть находить в состоянии лог 1.

Может у кого был опыт работы с данной флеш памятью WF2M16 от Microsemi?...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 14:40 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
RST = 1
Это что за сигнал - Reset? И он активный высоким уровнем? Проверьте, может быть, из-за этого микросхема в состоянии Busy.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 14:47 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
AlexPM писал(а):
RST = 1
Это что за сигнал - Reset? И он активный высоким уровнем? Проверьте, может быть, из-за этого микросхема в состоянии Busy.


Когда RESET = 0 - микросхема сброшена
Когда RESET = 5В - микросхема в рабочем состоянии
Когда RESET = 12В -временная разблокировка микросхемы (есть такая функция - если микросхема была заблокирована - стереть и или перезаписать ее можно только так)

Когда я пишу RST = 1, значит что RESET = 5В :) Т.е. все должно быть ОК


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 14:57 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
Следует также добавить что это аналог микросхемы Am29F016D от AMD


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 14:58 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
dde29 писал(а):
Когда я пишу RST = 1, значит что RESET = 5В :) Т.е. все должно быть ОК
Понял :-) Меня смутило отсутствие решётки в обозначении сигнала. Очевидно, опечатка. Должно быть: "RST# = 1".

А Вы не забыли присоединить внешний pull-up резистор на вывод Ready/Busy? Без него всегда будет показывать ноль.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 15:03 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
AlexPM писал(а):
dde29 писал(а):
Когда я пишу RST = 1, значит что RESET = 5В :) Т.е. все должно быть ОК
Понял :-) Меня смутило отсутствие решётки в обозначении сигнала. Очевидно, опечатка. Должно быть: "RST# = 1".

А Вы не забыли присоединить внешний pull-up резистор на вывод Ready/Busy? Без него всегда будет показывать ноль.


Конечно, за кого вы меня принимаете :) вывод Ready/Busy подтянут 5 кОмами до 5В :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 06 авг 2013, 15:10 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
Просто чтение работает? Для чтения NOR вообще никаких хитростей не требуется, должно работать как часы. RY/BY# при чтении не используется.
С AMD-шными NOR работал, всё просто было. Правда, я не использовал опрос пина RY/BY#.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 08:27 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
AlexPM писал(а):
Просто чтение работает? Для чтения NOR вообще никаких хитростей не требуется, должно работать как часы. RY/BY# при чтении не используется.
С AMD-шными NOR работал, всё просто было. Правда, я не использовал опрос пина RY/BY#.


Алгоритм чтения, да, простой. При попытке чтения выдает 0. Но это не значит что этот ноль там реально был записан :)
А раз вы не делали опрос RY/BY#, то по какому принципу выясняли - окончен алгоритм записи/стирания/блокировки или нет. А так же если флеш зависла?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 14:05 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
dde29 писал(а):
Алгоритм чтения, да, простой. При попытке чтения выдает 0. Но это не значит что этот ноль там реально был записан :)
Не нравится мне этот ноль :-( Вы сколько адресов прочитали - первые несколько или все 2 Мегабайта? Обычно из Flash читаются или разные байты, или 0xFF (где стёрто). Если везде ноль - то или флэшку неправильно использовали (писали не стирая - вот и заполнили всё нулевыми битами), или чтение у Вас неправильное. Попробуйте поставить на шину данных pull-up резисторы в чётные биты и pull-down резисторы в нечётные биты. Будет тогда читаться ноль или 0x55?

dde29 писал(а):
А раз вы не делали опрос RY/BY#, то по какому принципу выясняли - окончен алгоритм записи/стирания/блокировки или нет. А так же если флеш зависла?
Вот стандартный способ для NOR Flash: "Data# Polling and Toggle Bit feature for detection of program or erase cycle completion" (это из datasheet'а на Вашу микросхему, у AMD аналогично).
А можно и просто на таймингах работать. Байт данных записывается очень быстро, в некоторых системах (не суперпупербыстрых) можно вообще не ждать после его вывода во Flash.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 14:27 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
AlexPM писал(а):
dde29 писал(а):
А раз вы не делали опрос RY/BY#, то по какому принципу выясняли - окончен алгоритм записи/стирания/блокировки или нет. А так же если флеш зависла?
Вот стандартный способ для NOR Flash: "Data# Polling and Toggle Bit feature for detection of program or erase cycle completion" (это из datasheet'а на Вашу микросхему, у AMD аналогично).
А можно и просто на таймингах работать. Байт данных записывается очень быстро, в некоторых системах (не суперпупербыстрых) можно вообще не ждать после его вывода во Flash.


У меня вопрос по поводу Data# Polling. При условии когда бит D7 будет всегда отличатся от записываемого бита 7, а также бит D5 всегда будет выдавать 0. Тогда цикл замкнется в бесконечность...

В даташите записано что время записи как правило 7 мкс, но максимум 300 мкс.
Нам следует именно проверять состояние внутреннего автомата флешки при записи, так как данная микруха - милитари, и планируется ее использование в условиях далеко не нормальных, при которых время записи может существенно увеличиться...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 15:06 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
dde29 писал(а):
Нам следует именно проверять состояние внутреннего автомата флешки при записи, так как данная микруха - милитари, и планируется ее использование в условиях далеко не нормальных, при которых время записи может существенно увеличиться...
Ну тогда - конечно, надо data polling или Busy# использовать. А что там с чтением подозрительных нулей, не проверяли ещё? А то вдруг флэшка дохлая, а мы тут копья ломаем...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 15:14 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
AlexPM писал(а):
dde29 писал(а):
Нам следует именно проверять состояние внутреннего автомата флешки при записи, так как данная микруха - милитари, и планируется ее использование в условиях далеко не нормальных, при которых время записи может существенно увеличиться...
Ну тогда - конечно, надо data polling или Busy# использовать. А что там с чтением подозрительных нулей, не проверяли ещё? А то вдруг флэшка дохлая, а мы тут копья ломаем...


В том то и дело что флеха юзанная - после испытаний - поэтому всякое может быть. Пока, значит, берем тайм аут :) После эксперимента с Data# Polling обязательно отпишусь


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 07 авг 2013, 15:14 
Старожил

Зарегистрирован: 15 янв 2013, 13:24
Сообщения: 5665
dde29 писал(а):
У меня вопрос по поводу Data# Polling. При условии когда бит D7 будет всегда отличатся от записываемого бита 7, а также бит D5 всегда будет выдавать 0. Тогда цикл замкнется в бесконечность...
Я думаю, такая ситуация исключена (аппаратно, в автомате флэш-микросхемы). Если бит D7 слишком долго не переключается, то бит D5 по прошествии внутреннего таймаута переключится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 20 авг 2013, 09:10 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
Вобщем, провел дополнительные манипуляции с флеш WF2M16
Данная сборка имеет в своем составе два кристала по WF2M8 - т.е. младшие 8 бит данный на один кристалл и старшие 8 бит на второй кристал.
шины адреса и сигналы WE#, OE# и RST# запараллелены на оба кристалла.
А вот CS# существует два CS1# и CS2# - соответственно на каждый кристалл.
Таким образом, я могу обращаться к каждому кристаллу отдельно.

Так вот - судя по даташит я могу с помощью последовательностей команд (режим Autoselect Command Sequence) считать следующую информацию
Manufacturer ID (должно возвращаться значение 01h)
Device ID (должно возвращаться значение ADh)

В моем же случае:
- первый кристалл возвращает:
Manufacturer ID = 01h
Device ID 03h

- второй кристалл возвращает:
Manufacturer ID = 00h
Device ID 00h

Также с помощью этого же режима можно проверить заблокирован сектор или нет:
если заблокирован то возвращает 01h
если же нет, то 00h

В моем же случае кристаллы возвращают мне либо 05h либо FFh

Уже голова кругом идет :) То ли флешку перед тем как она к нам пришла кто-то изнасиловал, то ли, как говориться, лыжи не едут у меня :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 24 сен 2013, 11:32 
Только пришел

Зарегистрирован: 06 авг 2013, 13:46
Сообщения: 10
Вобщем, данная флеш оказалась просто дохлой.
Потому как попробовал поуправлять коммерческим аналогом данной флеш - все прошло успешно, начиная простым записью/чтением и заканчивая блокировкой/разблокировкой, а также временной разблокировкой...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 08 сен 2017, 13:35 
Заглядывает иногда

Зарегистрирован: 24 июн 2012, 22:45
Сообщения: 148
Чтобы не плодить темы продолжу.
Имею следующую проблему:
NOR флешка m28w320fct http://www.farnell.com/datasheets/40273.pdf
ноги 13 и 14 (Vpp и WP#) на 3.3В (напаяны жестко).
при попытке писать в массив (команда 0x10) или в Protection Register (команда 0xc0) ничего не пишет, статус (по команде 0х70) возвращает 0х92 (ошибка программирования, попытка записи в залоченный блок). И это в общем логично.
при попытке разлочить (команда 0x60 -> 0xd0), статус (по команде 0х70) возвращает 0хb0 (ошибка программирования, ошибка стирания).
подозреваю, что где-то что-то я упустил, вот только где...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с NOR флеш-памятью WF2M16 от Microsemi
СообщениеДобавлено: 11 сен 2017, 18:56 
Заглядывает иногда

Зарегистрирован: 24 июн 2012, 22:45
Сообщения: 148
Решилось.
проблема была не с флешкой, дело было вот в чём:
компилятор для контроллера накомпилировал код так, что обращение к области памяти (флешка висит на внешней шине) признавал за "полюбому" 32-битное,
а контроллер соответственно для 16-битной шины вывел в 2 операции записи с инкрементом адреса.
Для операций чтения подошел костыль с дублированием команды в старшее слово (проходит команда, потом еще раз), а вот с записью такое не прокатило: первую запись флешка понимает, как команду, со второй у неё "срывает крышу".
Решилось ассемблерной вставкой с записью размером в слово.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ] 

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB