Миландр

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

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 7 сообщений ] 
Автор Сообщение
СообщениеДобавлено: 2021-май-28 13:30 
Не в сети

Зарегистрирован: 2012-апр-27 11:01
Сообщения: 25
Организация: ПАО "НПО "Алмаз"
Откуда: г.Зеленоград
Здравствуйте, коллеги!
1636РР2У включена на параллельную шину 1986ВЕ1Т. Провожу Autoselect как описано в таблице 5 на Стр. 11 , всё нормально, выдает ID производителя 0x01 и ID устройства 0хС8. Далее, читаю защищенность 32-х секторов, всё по 0х00 т.е. сектора не защищены. Далее, даю команду Reset из Табл. 5 и затем пытаюсь стереть микросхему последовательностью Chip Erase из Табл. 5. В результате, не вижу переключающихся битов и чтение памяти даёт данные отличные от 0xFF (ранее, до меня Заказчик записал произвольные данные в память, раньше она программировалась). Пробовал после команды Chip Erase просто ждать 3 секунды, результат тот же, память не стирается. Что может быть? Защита секторов? В каком состоянии должны быть сигналы OE_HV и A9_HV? Нужно ли после режима Autoselect давать аппаратный сброс с помощью MRST? Можно ли загнать микросхему в такое состояние, что она не сможет стерется и перепрограммироваться?


Вернуться к началу
СообщениеДобавлено: 2021-июн-02 17:53 
Не в сети
Support
Аватара пользователя

Зарегистрирован: 2018-авг-10 23:14
Сообщения: 306
Организация: АО «ПКК Миландр»
Откуда: Зеленоград
alexander писал(а): *
Здравствуйте, коллеги!
1636РР2У включена на параллельную шину 1986ВЕ1Т. Провожу Autoselect как описано в таблице 5 на Стр. 11 , всё нормально, выдает ID производителя 0x01 и ID устройства 0хС8. Далее, читаю защищенность 32-х секторов, всё по 0х00 т.е. сектора не защищены. Далее, даю команду Reset из Табл. 5 и затем пытаюсь стереть микросхему последовательностью Chip Erase из Табл. 5. В результате, не вижу переключающихся битов и чтение памяти даёт данные отличные от 0xFF (ранее, до меня Заказчик записал произвольные данные в память, раньше она программировалась). Пробовал после команды Chip Erase просто ждать 3 секунды, результат тот же, память не стирается. Что может быть? Защита секторов? В каком состоянии должны быть сигналы OE_HV и A9_HV? Нужно ли после режима Autoselect давать аппаратный сброс с помощью MRST? Можно ли загнать микросхему в такое состояние, что она не сможет стерется и перепрограммироваться?
Здравствуйте!

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

Для выполнения операций чтения/записи линии OE_HV и A9_HV должны находиться в логическом нуле, подскажите, пожалуйста, что у Вас фактически за напряжения на данных линиях в момент отработки операции "Chip Erase"? Ведь правильно ли я понимаю, что при работе с кодами режима "Autoselect", а именно "ID Производителя", "ID Устройства" и "Верификация защищенности сектора" на линии OE_HV логический ноль, а на линии A9_HV логическая единица? Если это так, поскольку Вы получаете корректные данные при вызове этих команд, то необходимо взвести обе линии OE_HV и A9_HV в логический ноль и вызвать команду "Reset" для возврата в режим чтения массива данных из режима "Autoselect", после чего попробовать обращаться с командами чтения/записи. Также в качестве диагностики попробуйте, пожалуйста, подать на линии OE_HV и A9_HV логические единицы и поставить на какие-нибудь сектора защиту соответствующей командой, после чего установить на линии OE_HV логический ноль, а на линии A9_HV логическую единицу, после чего проверить защищенность - и наоборот для снятия защиты. Спасибо.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
СообщениеДобавлено: 2021-июн-04 16:02 
Не в сети

Зарегистрирован: 2012-апр-27 11:01
Сообщения: 25
Организация: ПАО "НПО "Алмаз"
Откуда: г.Зеленоград
Lampadov писал(а): *
alexander писал(а): *
Здравствуйте, коллеги!
1636РР2У включена на параллельную шину 1986ВЕ1Т. Провожу Autoselect как описано в таблице 5 на Стр. 11 , всё нормально, выдает ID производителя 0x01 и ID устройства 0хС8. Далее, читаю защищенность 32-х секторов, всё по 0х00 т.е. сектора не защищены. Далее, даю команду Reset из Табл. 5 и затем пытаюсь стереть микросхему последовательностью Chip Erase из Табл. 5. В результате, не вижу переключающихся битов и чтение памяти даёт данные отличные от 0xFF (ранее, до меня Заказчик записал произвольные данные в память, раньше она программировалась). Пробовал после команды Chip Erase просто ждать 3 секунды, результат тот же, память не стирается. Что может быть? Защита секторов? В каком состоянии должны быть сигналы OE_HV и A9_HV? Нужно ли после режима Autoselect давать аппаратный сброс с помощью MRST? Можно ли загнать микросхему в такое состояние, что она не сможет стерется и перепрограммироваться?
Здравствуйте!

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

Для выполнения операций чтения/записи линии OE_HV и A9_HV должны находиться в логическом нуле, подскажите, пожалуйста, что у Вас фактически за напряжения на данных линиях в момент отработки операции "Chip Erase"? Ведь правильно ли я понимаю, что при работе с кодами режима "Autoselect", а именно "ID Производителя", "ID Устройства" и "Верификация защищенности сектора" на линии OE_HV логический ноль, а на линии A9_HV логическая единица? Если это так, поскольку Вы получаете корректные данные при вызове этих команд, то необходимо взвести обе линии OE_HV и A9_HV в логический ноль и вызвать команду "Reset" для возврата в режим чтения массива данных из режима "Autoselect", после чего попробовать обращаться с командами чтения/записи. Также в качестве диагностики попробуйте, пожалуйста, подать на линии OE_HV и A9_HV логические единицы и поставить на какие-нибудь сектора защиту соответствующей командой, после чего установить на линии OE_HV логический ноль, а на линии A9_HV логическую единицу, после чего проверить защищенность - и наоборот для снятия защиты. Спасибо.
Во время Chip Erase сигналы OE_HV и A9_HV находятся в "0", проверил осциллографом. Пробовал делать Reset и потом стирать, не работает. Попробовал установить защиту секторов, потом считать статус и снять защиту и считать статус. Статус защиты секторов всегда 0х00. Фрагмент схемы прилагаю.


Вложения:
For_Milandr.pdf [151.39 КБ]
16 скачиваний
Вернуться к началу
СообщениеДобавлено: 2021-июн-08 15:20 
Не в сети

Зарегистрирован: 2012-апр-27 11:01
Сообщения: 25
Организация: ПАО "НПО "Алмаз"
Откуда: г.Зеленоград
Lampadov писал(а): *
alexander писал(а): *
Здравствуйте, коллеги!
1636РР2У включена на параллельную шину 1986ВЕ1Т. Провожу Autoselect как описано в таблице 5 на Стр. 11 , всё нормально, выдает ID производителя 0x01 и ID устройства 0хС8. Далее, читаю защищенность 32-х секторов, всё по 0х00 т.е. сектора не защищены. Далее, даю команду Reset из Табл. 5 и затем пытаюсь стереть микросхему последовательностью Chip Erase из Табл. 5. В результате, не вижу переключающихся битов и чтение памяти даёт данные отличные от 0xFF (ранее, до меня Заказчик записал произвольные данные в память, раньше она программировалась). Пробовал после команды Chip Erase просто ждать 3 секунды, результат тот же, память не стирается. Что может быть? Защита секторов? В каком состоянии должны быть сигналы OE_HV и A9_HV? Нужно ли после режима Autoselect давать аппаратный сброс с помощью MRST? Можно ли загнать микросхему в такое состояние, что она не сможет стерется и перепрограммироваться?
Здравствуйте!

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

Для выполнения операций чтения/записи линии OE_HV и A9_HV должны находиться в логическом нуле, подскажите, пожалуйста, что у Вас фактически за напряжения на данных линиях в момент отработки операции "Chip Erase"? Ведь правильно ли я понимаю, что при работе с кодами режима "Autoselect", а именно "ID Производителя", "ID Устройства" и "Верификация защищенности сектора" на линии OE_HV логический ноль, а на линии A9_HV логическая единица? Если это так, поскольку Вы получаете корректные данные при вызове этих команд, то необходимо взвести обе линии OE_HV и A9_HV в логический ноль и вызвать команду "Reset" для возврата в режим чтения массива данных из режима "Autoselect", после чего попробовать обращаться с командами чтения/записи. Также в качестве диагностики попробуйте, пожалуйста, подать на линии OE_HV и A9_HV логические единицы и поставить на какие-нибудь сектора защиту соответствующей командой, после чего установить на линии OE_HV логический ноль, а на линии A9_HV логическую единицу, после чего проверить защищенность - и наоборот для снятия защиты. Спасибо.
В Табл. 2 на Стр.7 спецификации на 1636РР2У в операциях защиты сектора и снятия защиты с сектора в адресе ПЗУ присутствует адрес сектора, но явно не указано в каких разрядах. Наверное в A20-A16, по аналогии с Табл. 5.?


Вернуться к началу
СообщениеДобавлено: 2021-июн-08 17:55 
Не в сети
Support
Аватара пользователя

Зарегистрирован: 2018-авг-10 23:14
Сообщения: 306
Организация: АО «ПКК Миландр»
Откуда: Зеленоград
alexander писал(а): *
Lampadov писал(а): *
alexander писал(а): *
Здравствуйте, коллеги!
1636РР2У включена на параллельную шину 1986ВЕ1Т. Провожу Autoselect как описано в таблице 5 на Стр. 11 , всё нормально, выдает ID производителя 0x01 и ID устройства 0хС8. Далее, читаю защищенность 32-х секторов, всё по 0х00 т.е. сектора не защищены. Далее, даю команду Reset из Табл. 5 и затем пытаюсь стереть микросхему последовательностью Chip Erase из Табл. 5. В результате, не вижу переключающихся битов и чтение памяти даёт данные отличные от 0xFF (ранее, до меня Заказчик записал произвольные данные в память, раньше она программировалась). Пробовал после команды Chip Erase просто ждать 3 секунды, результат тот же, память не стирается. Что может быть? Защита секторов? В каком состоянии должны быть сигналы OE_HV и A9_HV? Нужно ли после режима Autoselect давать аппаратный сброс с помощью MRST? Можно ли загнать микросхему в такое состояние, что она не сможет стерется и перепрограммироваться?
Здравствуйте!

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

Для выполнения операций чтения/записи линии OE_HV и A9_HV должны находиться в логическом нуле, подскажите, пожалуйста, что у Вас фактически за напряжения на данных линиях в момент отработки операции "Chip Erase"? Ведь правильно ли я понимаю, что при работе с кодами режима "Autoselect", а именно "ID Производителя", "ID Устройства" и "Верификация защищенности сектора" на линии OE_HV логический ноль, а на линии A9_HV логическая единица? Если это так, поскольку Вы получаете корректные данные при вызове этих команд, то необходимо взвести обе линии OE_HV и A9_HV в логический ноль и вызвать команду "Reset" для возврата в режим чтения массива данных из режима "Autoselect", после чего попробовать обращаться с командами чтения/записи. Также в качестве диагностики попробуйте, пожалуйста, подать на линии OE_HV и A9_HV логические единицы и поставить на какие-нибудь сектора защиту соответствующей командой, после чего установить на линии OE_HV логический ноль, а на линии A9_HV логическую единицу, после чего проверить защищенность - и наоборот для снятия защиты. Спасибо.
В Табл. 2 на Стр.7 спецификации на 1636РР2У в операциях защиты сектора и снятия защиты с сектора в адресе ПЗУ присутствует адрес сектора, но явно не указано в каких разрядах. Наверное в A20-A16, по аналогии с Табл. 5.?
Здравствуйте!

Спасибо за дополнительную информацию. Сообщите, пожалуйста, может ли быть такое, что до Вашего использования на микросхеме памяти израсходовали весь ресурс циклов записи/стирания данных? Вы уверены, что корректно формируете все обращения в соответствии с информацией из спецификации? Опять же, важно понимать, что если работа ведется с установкой/снятием защиты сектора, то необходимо подать логическую единицу на входы OE_HV и A9_HV, при этом всё верно, в качестве адреса сектора должны выставляться линии адреса A16-A20 согласно таблице 3 "Адресное пространство секторов" - строгое соответствие логике из таблицы 2 "Таблица истинности микросхемы. Операции на шине устройства" спецификации. В случае с верификацией защищенности секторов, конечно же, необходимо не только обеспечить на линии OE_HV логический ноль, а на A9_HV логическую единицу, но и выбрать сектор, для которого выполняется проверка, посредством линий A16-A20, при этом важны уровни и по линиям nCE, nOE, nWE, A6, A1, A0 - Вы обеспечиваете нужные уровни при верификации защищенности секторов, объявленные в таблице 4 "Autoselect - коды" актуальной версии спецификации? Имеет смысл детально проанализировать код обращения со стороны микроконтроллера, а также не полениться детально изучить осциллографом все задействованные линии параллельного подключения, ведь микросхема памяти всего лишь отвечает на входные воздействия, которые она ожидает получить в рамках работы своей машины состояний. Контроль каждой линии также поможет, в случае чего, исключить версию с обрывами на плате, то есть, плавающими входами. Спасибо.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
СообщениеДобавлено: 2021-июн-11 11:59 
Не в сети

Зарегистрирован: 2012-апр-27 11:01
Сообщения: 25
Организация: ПАО "НПО "Алмаз"
Откуда: г.Зеленоград
Lampadov писал(а): *
alexander писал(а): *
Lampadov писал(а): *


Здравствуйте!

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

Для выполнения операций чтения/записи линии OE_HV и A9_HV должны находиться в логическом нуле, подскажите, пожалуйста, что у Вас фактически за напряжения на данных линиях в момент отработки операции "Chip Erase"? Ведь правильно ли я понимаю, что при работе с кодами режима "Autoselect", а именно "ID Производителя", "ID Устройства" и "Верификация защищенности сектора" на линии OE_HV логический ноль, а на линии A9_HV логическая единица? Если это так, поскольку Вы получаете корректные данные при вызове этих команд, то необходимо взвести обе линии OE_HV и A9_HV в логический ноль и вызвать команду "Reset" для возврата в режим чтения массива данных из режима "Autoselect", после чего попробовать обращаться с командами чтения/записи. Также в качестве диагностики попробуйте, пожалуйста, подать на линии OE_HV и A9_HV логические единицы и поставить на какие-нибудь сектора защиту соответствующей командой, после чего установить на линии OE_HV логический ноль, а на линии A9_HV логическую единицу, после чего проверить защищенность - и наоборот для снятия защиты. Спасибо.
В Табл. 2 на Стр.7 спецификации на 1636РР2У в операциях защиты сектора и снятия защиты с сектора в адресе ПЗУ присутствует адрес сектора, но явно не указано в каких разрядах. Наверное в A20-A16, по аналогии с Табл. 5.?
Здравствуйте!

Спасибо за дополнительную информацию. Сообщите, пожалуйста, может ли быть такое, что до Вашего использования на микросхеме памяти израсходовали весь ресурс циклов записи/стирания данных? Вы уверены, что корректно формируете все обращения в соответствии с информацией из спецификации? Опять же, важно понимать, что если работа ведется с установкой/снятием защиты сектора, то необходимо подать логическую единицу на входы OE_HV и A9_HV, при этом всё верно, в качестве адреса сектора должны выставляться линии адреса A16-A20 согласно таблице 3 "Адресное пространство секторов" - строгое соответствие логике из таблицы 2 "Таблица истинности микросхемы. Операции на шине устройства" спецификации. В случае с верификацией защищенности секторов, конечно же, необходимо не только обеспечить на линии OE_HV логический ноль, а на A9_HV логическую единицу, но и выбрать сектор, для которого выполняется проверка, посредством линий A16-A20, при этом важны уровни и по линиям nCE, nOE, nWE, A6, A1, A0 - Вы обеспечиваете нужные уровни при верификации защищенности секторов, объявленные в таблице 4 "Autoselect - коды" актуальной версии спецификации? Имеет смысл детально проанализировать код обращения со стороны микроконтроллера, а также не полениться детально изучить осциллографом все задействованные линии параллельного подключения, ведь микросхема памяти всего лишь отвечает на входные воздействия, которые она ожидает получить в рамках работы своей машины состояний. Контроль каждой линии также поможет, в случае чего, исключить версию с обрывами на плате, то есть, плавающими входами. Спасибо.
При исследовании платы обнаружилось замыкание внутри ПЗУ по выводу ADDR9. Будем менять микросхему. Может быть после этого всё будет нормально. Спасибо за помощь!


Вернуться к началу
СообщениеДобавлено: 2021-июн-15 17:00 
Не в сети
Support
Аватара пользователя

Зарегистрирован: 2018-авг-10 23:14
Сообщения: 306
Организация: АО «ПКК Миландр»
Откуда: Зеленоград
alexander писал(а): *
Lampadov писал(а): *
alexander писал(а): *


В Табл. 2 на Стр.7 спецификации на 1636РР2У в операциях защиты сектора и снятия защиты с сектора в адресе ПЗУ присутствует адрес сектора, но явно не указано в каких разрядах. Наверное в A20-A16, по аналогии с Табл. 5.?
Здравствуйте!

Спасибо за дополнительную информацию. Сообщите, пожалуйста, может ли быть такое, что до Вашего использования на микросхеме памяти израсходовали весь ресурс циклов записи/стирания данных? Вы уверены, что корректно формируете все обращения в соответствии с информацией из спецификации? Опять же, важно понимать, что если работа ведется с установкой/снятием защиты сектора, то необходимо подать логическую единицу на входы OE_HV и A9_HV, при этом всё верно, в качестве адреса сектора должны выставляться линии адреса A16-A20 согласно таблице 3 "Адресное пространство секторов" - строгое соответствие логике из таблицы 2 "Таблица истинности микросхемы. Операции на шине устройства" спецификации. В случае с верификацией защищенности секторов, конечно же, необходимо не только обеспечить на линии OE_HV логический ноль, а на A9_HV логическую единицу, но и выбрать сектор, для которого выполняется проверка, посредством линий A16-A20, при этом важны уровни и по линиям nCE, nOE, nWE, A6, A1, A0 - Вы обеспечиваете нужные уровни при верификации защищенности секторов, объявленные в таблице 4 "Autoselect - коды" актуальной версии спецификации? Имеет смысл детально проанализировать код обращения со стороны микроконтроллера, а также не полениться детально изучить осциллографом все задействованные линии параллельного подключения, ведь микросхема памяти всего лишь отвечает на входные воздействия, которые она ожидает получить в рамках работы своей машины состояний. Контроль каждой линии также поможет, в случае чего, исключить версию с обрывами на плате, то есть, плавающими входами. Спасибо.
При исследовании платы обнаружилось замыкание внутри ПЗУ по выводу ADDR9. Будем менять микросхему. Может быть после этого всё будет нормально. Спасибо за помощь!
Здравствуйте!

Спасибо за информацию. Будем ожидать дополнительные новости.

_________________
Отдел технической поддержки support@milandr.ru


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

Часовой пояс: UTC+03:00


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

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


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

Перейти: 

cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB