Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2018-янв-18 16:59

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




Начать новую тему Ответить на тему  [ Сообщений: 149 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8 ... 10  След.
Автор Сообщение
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2012-июн-13 12:39 
Не в сети

Зарегистрирован: 2012-июн-13 07:04
Сообщения: 2
Здравствуйте, впервые работаю с памятью и спецификация (ТСКЯ.431214.002СП) не дает мне полного понимания того, как общаться с 1636РР2АУ. Подскажите:

Предположим, мы хотим записать значение 0xFF в блок 2 по адресу 1000 по последовательному интерфейсу. Команда для памяти 16Мбит (1636РР2) будет выглядеть так:

Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...1 |....0 |....0 |....0 |...1 |....1 |...1 |...1 |....0 |.....0 |.....0 |


В Таблице 8 говорится о наличии 4х циклов:
00 - Полный цикл
01 - Командный цикл
10 - Цикл чтения
11 - Повтор цикла

Судя по Таблице 7 для записи данных необходимо передать 4 цикла: 0й,1й,2й - командные циклы и 3й - полный цикл.

Код:
0й (командный, Addr 555, Data AA)
01 10001111000 010101010101 10101010

1й (командный, Addr AAA, Data 55)
01 10001111000 101010101010 01010101

2й (командный, Addr 555, Data A0)
01 10001111000 010101010101 10100000

3й (полный, Addr 1000, Data FF)
00 10001111000 0001000000000000 11111111


1) Верно ли я составил команду для записи?
2) Так ли будут выглядеть циклы?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2012-июн-13 13:50 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Kerze писал(а):
Здравствуйте, впервые работаю с памятью и спецификация (ТСКЯ.431214.002СП) не дает мне полного понимания того, как общаться с 1636РР2АУ. Подскажите:

Предположим, мы хотим записать значение 0xFF в блок 2 по адресу 1000 по последовательному интерфейсу. Команда для памяти 16Мбит (1636РР2) будет выглядеть так:

Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...1 |....0 |....0 |....0 |...1 |....1 |...1 |...1 |....0 |.....0 |.....0 |


В Таблице 8 говорится о наличии 4х циклов:
00 - Полный цикл
01 - Командный цикл
10 - Цикл чтения
11 - Повтор цикла

Судя по Таблице 7 для записи данных необходимо передать 4 цикла: 0й,1й,2й - командные циклы и 3й - полный цикл.

Код:
0й (командный, Addr 555, Data AA)
01 10001111000 010101010101 10101010

1й (командный, Addr AAA, Data 55)
01 10001111000 101010101010 01010101

2й (командный, Addr 555, Data A0)
01 10001111000 010101010101 10100000

3й (полный, Addr 1000, Data FF)
00 10001111000 0001000000000000 11111111


1) Верно ли я составил команду для записи?
2) Так ли будут выглядеть циклы?


Команда составлена неверно, CEB и WEB должны быть в нуле.
Для доступа в блок 2 используется Num[3:0] = b’0001


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2012-июн-13 14:51 
Не в сети

Зарегистрирован: 2012-июн-13 07:04
Сообщения: 2
Andrey писал(а):
Команда составлена неверно, CEB и WEB должны быть в нуле.
Для доступа в блок 2 используется Num[3:0] = b’0001

Спасибо, Andrey, что откликнулись. Команда для записи по вашим словам должна выглядеть так?
Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...0 |....0 |....0 |....1 |...0 |....1 |...1 |...0 |....0 |.....0 |.....0 |

В спецификации (ТСКЯ.431214.002СП) указано, что...
Цитата:
CEB - сигнал разрешения выбранного с помощью Num блока флеш-памяти.
WEB - сигнал разрешения записи (или стирания памяти и битов защиты) для всех блоков флеш-памяти.


Вы могли бы иными словами описать что такое CEB? (:
А WEB (сигнал разрешения записи) при записи почему должен быть в нуле? Или именно нулем мы и разрешаем запись?

На странице 19 в спецификации (ТСКЯ.431214.002СП) написано:
Цитата:
Команды, адрес и данные передаются младшими разрядами вперед.

Означает ли это, что вместо адреса 0101.0101.0101 (в HEX - AA) следует писать в циклах адрес 1010.1010.1010? И аналогичным образом "разворачивать" данные?

---

Ага, сигналы CEB, NVRB, OEB и WEB инверсные!

CEB - это /CE, сигнал выбора памяти (активный низкий уровень); через /CE мы сообщаем микросхеме что будем обращаться именно к ней, если у нас в параллельном режиме подключено несколько микросхем.

WEB - это /WE, сигнал разрешения записи (активный низкий уровень); опустили в 0 и можем писать, видимо, и стирать тоже.

Адрес передается младшими разрядами вперед. Данные тоже, но это, наверное, не важно - главное их потом прочитать не перепутав зад с передом.

Возможно, даже так выглядит команда... передавать её слева направо (Num3, Num2, ...)?
Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...0 |....0 |....0 |....1 |...0 |....0 |...1 |...0 |....0 |.....0 |.....0 |


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2012-сен-25 16:07 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Kerze писал(а):
Andrey писал(а):
Команда составлена неверно, CEB и WEB должны быть в нуле.
Для доступа в блок 2 используется Num[3:0] = b’0001

Спасибо, Andrey, что откликнулись. Команда для записи по вашим словам должна выглядеть так?
Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...0 |....0 |....0 |....1 |...0 |....1 |...1 |...0 |....0 |.....0 |.....0 |

В спецификации (ТСКЯ.431214.002СП) указано, что...
Цитата:
CEB - сигнал разрешения выбранного с помощью Num блока флеш-памяти.
WEB - сигнал разрешения записи (или стирания памяти и битов защиты) для всех блоков флеш-памяти.


Вы могли бы иными словами описать что такое CEB? (:
А WEB (сигнал разрешения записи) при записи почему должен быть в нуле? Или именно нулем мы и разрешаем запись?

На странице 19 в спецификации (ТСКЯ.431214.002СП) написано:
Цитата:
Команды, адрес и данные передаются младшими разрядами вперед.

Означает ли это, что вместо адреса 0101.0101.0101 (в HEX - AA) следует писать в циклах адрес 1010.1010.1010? И аналогичным образом "разворачивать" данные?

---

Ага, сигналы CEB, NVRB, OEB и WEB инверсные!

CEB - это /CE, сигнал выбора памяти (активный низкий уровень); через /CE мы сообщаем микросхеме что будем обращаться именно к ней, если у нас в параллельном режиме подключено несколько микросхем.

WEB - это /WE, сигнал разрешения записи (активный низкий уровень); опустили в 0 и можем писать, видимо, и стирать тоже.

Адрес передается младшими разрядами вперед. Данные тоже, но это, наверное, не важно - главное их потом прочитать не перепутав зад с передом.

Возможно, даже так выглядит команда... передавать её слева направо (Num3, Num2, ...)?
Код:
Num3 | Num2 | Num1 | Num0 | CEB | NVRB | OEB | WEB | TMEN | BYTEB | VREAD |
...0 |....0 |....0 |....1 |...0 |....0 |...1 |...0 |....0 |.....0 |.....0 |

Биты CEB и NVRB одновременно в активное состояние выставлять нельзя, это две разные области памяти.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-фев-21 10:15 
Не в сети

Зарегистрирован: 2011-окт-31 18:26
Сообщения: 10
Добрый день! Столкнулись с проблемой при работе с памятью. Подробное описание в приложенном файле


Вложения:
Миландр_вопрос.zip [81.4 КБ]
Скачиваний: 266
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-фев-21 14:15 
Не в сети
Аватара пользователя

Зарегистрирован: 2012-авг-07 09:58
Сообщения: 132
Alexandr20101983 писал(а):
Добрый день! Столкнулись с проблемой при работе с памятью. Подробное описание в приложенном файле

Здравствуйте.
Указанная Вами проблема подтвердилась как для микросхемы 1636РР1, так и для 1636РР2.
Рекомендуем использовать для сбойной ячейки памяти (0xAAC) полную командную последовательность или записывать данные в двухбайтовом режиме.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-апр-25 10:10 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Сбои при работе по последовательному интерфейсу:
в 16 разрядном режиме запись следующих комбинаций
адрес данные
0хAAA 0х0055
0х555 0х00A0
0х555 0х00AA

В 8 разрядном режиме запись следующих комбинаций
адрес данные
0хAAA 0хAA
0хAAB 0хAA
0хAAA 0хA0
0хAAB 0хA0
0х1555 0х55

При записи по любому из этих адресов соотвествующих данных в режиме повтора
приводит к залипанию, следующая ячейка не пишется.

Поэтому либо не использовать режим повтора для всех ячеек, либо в эти ячейки
писать не в режиме повтора.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-май-18 12:55 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 2009-янв-20 10:05
Сообщения: 778
Вышла новая версия программы (v.2.0) (обойдена ошибка микросхем, приводящая к зависанию при записи некоторых комбинаций адресов и данных)

_________________
Правила форума!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-май-31 08:42 
Не в сети

Зарегистрирован: 2013-фев-01 13:54
Сообщения: 2
Откуда: Северодвинск
Добрый день.
Мы закупили у вас большую партию данных микросхем и планируется работать с ними только в последовательном режиме, но в процессе ознакомления со спецификацией возникло много вопросов. Некоторые особенности интерфейса есть только на форуме, но не в спецификации. По параллельному интерфейсу, наоборот, всё хорошо, потому что он переведен с оригинала почти дословно, но он нас не интересует, и возможности работать с ним нет. Господа, которые обращались к вам в этом топике и работающие с последовательным интерфейсом, очевидно тоже встретились с подобными проблемами. На данный момент спецификация последовательного интерфейса изобилует ляпами, неточностями и пространными фразами, и мы будем признательны если вы дополните и уточните информацию по нему. Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-01 15:38 
Не в сети

Зарегистрирован: 2013-июн-01 15:18
Сообщения: 8
Здравствуйте!
Пытаюсь программировать память по последовательному интерфейсу.
Согласно спецификации подаю три командных цикла, 4 - полный цикл, а затем пытаюсь перейдти в режим повтора записи! Так вот: записываются только данные, указанные в полном цикле, при повторе цикла записи данные не записываются (Таким же алгоритмом считываю данные - данные из разных адресов (записанные в полном цикле) считываются нормально!)

В следствие чего, у меня вопрос: может я не учитываю какие-то временные задержки между полным циклом и циклом повтора записи?

Стандартно я новый цикл начинаю через 4 периода ТСК, частота ТСК 5 МГц
Команда на запись:
NUM[3..0] = Ah (к примеру)
CEB = 0;
NVRB = 1;
OEB = 1; (нужно ли поднимать ОЕВ в 1 при записи или можно оставлять в 0, как при чтении?)
WEB =0;
TMEN = 0;
BYTEB = 1;
VREAD = 0;

Команда на чтение:
NUM[3..0] = Ah (к примеру)
CEB = 0;
NVRB = 1;
OEB = 0;
WEB =1;
TMEN = 1;
BYTEB = 1;
VREAD = 1;

Поясните, что значат сигналы VREAD и TMEN!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-03 10:10 
Не в сети

Зарегистрирован: 2009-май-25 16:41
Сообщения: 206
Откуда: АО "ПКК Миландр"
Alfa писал(а):
Здравствуйте!
Пытаюсь программировать память по последовательному интерфейсу.
Согласно спецификации подаю три командных цикла, 4 - полный цикл, а затем пытаюсь перейдти в режим повтора записи! Так вот: записываются только данные, указанные в полном цикле, при повторе цикла записи данные не записываются (Таким же алгоритмом считываю данные - данные из разных адресов (записанные в полном цикле) считываются нормально!)

В следствие чего, у меня вопрос: может я не учитываю какие-то временные задержки между полным циклом и циклом повтора записи?

Стандартно я новый цикл начинаю через 4 периода ТСК, частота ТСК 5 МГц


Нужно контролировать сигнал BUSY. Цитата из документации:

"После этого вывод TDI переключается на выход и на него выводится состояние
сигнала BUSY (занятости). В случае инициирования внутреннего алгоритма
программирования или стирания этот сигнал переключается в ноль через 3
импульса TCK, а по завершению операции переключается в единицу. Синхросигнал
TCK необходимо подавать постоянно до окончания операции (для режима
программирования TCK=5 МГц, для режима стирания TCK=2 МГц). Для
гарантированного считывания сигнала BUSY необходимо производить не менее 4-х
последовательных выборок с объединением результата по «И»."

Alfa писал(а):
Команда на запись:
NUM[3..0] = Ah (к примеру)
CEB = 0;
NVRB = 1;
OEB = 1; (нужно ли поднимать ОЕВ в 1 при записи или можно оставлять в 0, как при чтении?)
WEB =0;
TMEN = 0;
BYTEB = 1;
VREAD = 0;


Для команды записи бит OEB должен быть в единице, это сигнал разрешения чтения.

Alfa писал(а):
Команда на чтение:
NUM[3..0] = Ah (к примеру)
CEB = 0;
NVRB = 1;
OEB = 0;
WEB =1;
TMEN = 1;
BYTEB = 1;
VREAD = 1;

Поясните, что значат сигналы VREAD и TMEN!


TMEN и VREAD всегда должны быть в нуле!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-17 15:37 
Не в сети

Зарегистрирован: 2013-июн-01 15:18
Сообщения: 8
Andrey писал(а):
Сбои при работе по последовательному интерфейсу:
в 16 разрядном режиме запись следующих комбинаций
адрес данные
0хAAA 0х0055
0х555 0х00A0
0х555 0х00AA


При записи по любому из этих адресов соотвествующих данных в режиме повтора
приводит к залипанию, следующая ячейка не пишется.

Поэтому либо не использовать режим повтора для всех ячеек, либо в эти ячейки
писать не в режиме повтора.


Но подождите, ведь в ЭТИ адреса пишутся ЭТИ данные (цикл 1,2,3) для инициирования цикла программирования (таблица 7 настоящей спецификации)! ИЛИ такая ошибка возникает только при записи ЭТИХ данных в режиме повтора, то есть после записи адреса "АА9" идет инкремент адреса и при записи в "ААА" данных "55" происходит залипание, так?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-24 10:14 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
Alfa писал(а):
Andrey писал(а):
Сбои при работе по последовательному интерфейсу:
в 16 разрядном режиме запись следующих комбинаций
адрес данные
0хAAA 0х0055
0х555 0х00A0
0х555 0х00AA


При записи по любому из этих адресов соотвествующих данных в режиме повтора
приводит к залипанию, следующая ячейка не пишется.

Поэтому либо не использовать режим повтора для всех ячеек, либо в эти ячейки
писать не в режиме повтора.


Но подождите, ведь в ЭТИ адреса пишутся ЭТИ данные (цикл 1,2,3) для инициирования цикла программирования (таблица 7 настоящей спецификации)! ИЛИ такая ошибка возникает только при записи ЭТИХ данных в режиме повтора, то есть после записи адреса "АА9" идет инкремент адреса и при записи в "ААА" данных "55" происходит залипание, так?

Только в режиме повтора!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-24 10:17 
Не в сети

Зарегистрирован: 2009-май-29 16:09
Сообщения: 590
Откуда: АО "ПКК Миландр"
askival писал(а):
Добрый день.
Мы закупили у вас большую партию данных микросхем и планируется работать с ними только в последовательном режиме, но в процессе ознакомления со спецификацией возникло много вопросов. Некоторые особенности интерфейса есть только на форуме, но не в спецификации. По параллельному интерфейсу, наоборот, всё хорошо, потому что он переведен с оригинала почти дословно, но он нас не интересует, и возможности работать с ним нет. Господа, которые обращались к вам в этом топике и работающие с последовательным интерфейсом, очевидно тоже встретились с подобными проблемами. На данный момент спецификация последовательного интерфейса изобилует ляпами, неточностями и пространными фразами, и мы будем признательны если вы дополните и уточните информацию по нему. Спасибо.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: 1636РР2У (ПЗУ Flash-типа)
СообщениеДобавлено: 2013-июн-24 13:26 
Не в сети

Зарегистрирован: 2013-фев-01 13:54
Сообщения: 2
Откуда: Северодвинск
Andrey писал(а):
Так как последовательный интерфейс является технологическим и разрабатывался с этой целью, то описание и применение его связано с проблемами. Поэтому выбор его применения остаётся полностью за разработчиком, да такой режим есть, но не для пользовательских целей, неудобен в использовании.

Желательно эту информацию отобразить в документации.

После долгих и монотонных блужданий в потемках мне удалось взломать последовательный интерфейс. Вот некоторые полезные вещи, которые могут в будущем кому-нибудь понадобиться( многие вопросы поднимались уже на форуме, но ответы на них либо противоречат друг другу, либо не полные).

пример объявления команды для цикла чтения(VHDL):
Код:
fcmd (29 downto 0) <= faddr & fblock & "0101000" &"01";

fcmd - вектор[30], который затем выводится после строба на tdi младшими битами вперед
fblcok - вектор[4], которым выбирается блок
"0101000" - биты для чтения и однобайтного режима
после этой команды я жду бит готовности и читаю байт данных. 0xff в пустой флешке.
паузы между циклами записи или стирания я сделал в 5 тактов, так как на 3 флеш не реагировала совсем.

Первый цикл для записи:
Код:
fcmd (32 downto 0) <= x"aa" & x"555" & fblock & "0110000" & "10";

Последний цикл для стирания:
Код:
fсmd (37 downto 0) <= x"10" & x"0555" & "0" & fblock & "0110000" & "00";


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 149 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7, 8 ... 10  След.

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


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

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


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

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB