Важная информация

User Tag List

Страница 1 из 10 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 99

Тема: Проблема с программированием W27C512

  1. #1
    Veteran Аватар для Denn
    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    1,064
    Благодарностей: 357
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Thumbs up Проблема с программированием W27C512 (solved)

    Всем доброго.

    Изобретаю самодельный программатор для ПЗУ 27x512. Столкнулся с проблемой прочтения микросхем EEPROM от Winbond: W27C512-45Z

    Система следующая: хост - ПРК "Орион-128", микросхема подключается через порт юзера (КР580ВВ55А), через линию "А" выставляется адрес (сначала старший байт - защёлкивается в регистр ИР23, затем младший), через линию "В" производится считывание данных, через линию "С" на ПЗУ поступают управляющие сигналы OE и CE.

    Суть проблемы в следующем. Информация из ПЗУ считывется, но каждый раз разная! Двух одинаковых дампов прочитать невозможно. Считываемая информация не полностью рандомная, по текстовым сообщениям видно, что они всегда присутствуют в том или ином виде. Заметил, что иногда один и тот же текст несколько раз дублируется в считанном дампе!
    Попытки анализа различий показали, что каждый раз в случайных местах считываются совершенно левые куски (видимо, из других областей), причём начинаются куски в произвольных местах, а заканчиваются всегда адресами кратными 16, т.е. 0xxxxh-0xxxFh.

    Сначала я экспериментировал с одной микросхемой, в которой уже была прошита информация. Потом решил, что она может быть неисправна и глюки именно от этой неисправности.
    Затем купил (в двух разных магазинах) ещё две микросхемы W27C512-45Z. Из новой (чистой) стабильно считываются все 0FFh. Попробовал прошить и вновь та же проблема - считывается информация "на тему" прошитой, но контрольная сумма дампа каждый раз разная

    Далее пробую прошить все байты 00h, т.е. запрограммировать все ячейки матрицы. В результате из ПЗУ стабильно считываются нулевые дампы.

    Затем беру микросхему того же объёма, но другого типа - M27512 (старинная, с УФ-стиранием). В неё информация исправно прошивается и стабильно считывается! Т.е. с ней никаких проблем на данной системе.

    Что ещё пробовал сделать. Хоть W27C512-45Z имеет большее быстродействие, чем старинная M27512, всё равно пробую в программе чтения вставить ощутимые задержки между выставлением адреса и чтением информации - картина не меняется, всё равно читается рандомно-неверная информация. Пробовал также между чтением каждого байта "усыплять" ПЗУ переводом CE в лог. "1", а затем обратно - бесполезно, всё равно каждый раз считываются разные дампы.

    Краткий итог. На "проблеммных" ПЗУ W27C512-45Z стабильно считываются только все 0FFh (чистая микросхема) и 00h (прошиты все ячейки), информация отличная от этих значений считывается ошибочно. Информация из ПЗУ M27512 каждый раз считывается одинаковая и корректная (соответствует прошитой).

    Честно говоря, у меня все мысли закончились (( Что это может быть и куда копать?

    П.С. Если это поможет делу, то:

    схема - http://www.denn.ru/orion/hardware/prog512.jpg

    реализация - http://www.denn.ru/orion/hardware/my_prog%20(1).jpg
    Последний раз редактировалось Denn; 14.07.2015 в 10:00. Причина: Проблема решена!
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru Аватар для Vladimir_S
    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,367
    Благодарностей: 746
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Denn, Попробуй первую ногу ИР23 посадить на землю.

  4. #3
    Veteran Аватар для Denn
    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    1,064
    Благодарностей: 357
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Vladimir_S, у меня тогда адрес не будет меняться. Ирка защёлкивает старший байт адреса.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  5. #4
    Activist
    Регистрация
    27.11.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    285
    Благодарностей: 83
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Лично я бы делал бы на "рассыпухе" типа ЛА3. дабы были "чёткие" по уроню "0" и "1". как миниму ещё и на 24 и 30 ноге ПЗУ (ну и как было сказано на 1 ноге ир23). докучи фронты сигналов могут "затягиваться" на разных ПЗУ по разному - так что нужны "чёткие" "0" и "1"

  6. #5
    Guru Аватар для Vladimir_S
    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,367
    Благодарностей: 746
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Denn, Защелкивают 11 ногой.

  7. #6
    Guru Аватар для Vladimir_S
    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,367
    Благодарностей: 746
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вот.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	ddd.jpg 
Просмотров:	364 
Размер:	46.1 Кб 
ID:	52582  

  8. #7
    Activist
    Регистрация
    27.11.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    285
    Благодарностей: 83
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    При том что 22 работает по уровню, а 23 по фронту - так что есть ньюансы. А 1 вывод это только управление третьим состоянием на выходе, что в данной схеме судя по всему не требуется. ИМХО.

  9. #8
    Member
    Регистрация
    28.03.2009
    Адрес
    г. Березовский КО
    Сообщений
    62
    Благодарностей: 35
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Программатор для w27c512

    Добрый день, Denn!
    В схемотехнике я не очень, поэтому посоветовать не могу.
    Но года три назад делал программатор для w27c512 под Орион-128,
    схему немного подсмотрел у программатора PRUF.
    На мой взгляд получилось неплохо - стирает, пишет, читает без ошибок,
    правда только первые 32 килобайта, мне больше не надо было.
    Данные порт А, адрес порт В (плюс регистр ир82), порт С управление.
    Микросхема понравилась надежностью и простотой использования она ж
    вроде и разрабатывалась для управления ДВС.
    Делал для себя компьютер на Z80 удалось разогнать до 25 мГц в качестве
    ПЗУ ставил эту микросхему, работала прекрасно, а вот для ОЗУ пошли
    далеко не все микросхемы - перебрал наверное больше десятка, так и не
    понял почему.
    Моя схема http://sderni.ru/278947
    Вставить на этом сайте у меня так и не получилось...
    С уважением, Владимир.

  10. #9
    Guru Аватар для Vladimir_S
    Регистрация
    12.12.2011
    Адрес
    г. Иркутск
    Сообщений
    2,367
    Благодарностей: 746
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AlexG Посмотреть сообщение
    в данной схеме судя по всему не требуется.
    Ну, а я о чем.

  11. #10
    Veteran Аватар для Denn
    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    1,064
    Благодарностей: 357
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Unhappy

    Прошу прощения, насчёт первого вывода я неправильно прокомментировал. Действительно, защёлка адреса делается 11-ой ногой.

    Нога у меня №1 используется для перевода старших адресных линий в Z-состояние. Заземлять я её не могу, т.к. у меня практикуется горячая замена ПЗУ без выключения питания, поэтому все контакты панельки должны обесточиваться.

    ---------- Post added at 17:09 ---------- Previous post was at 17:05 ----------

    Цитата Сообщение от AlexG Посмотреть сообщение
    Лично я бы делал бы на "рассыпухе" типа ЛА3. дабы были "чёткие" по уроню "0" и "1". как миниму ещё и на 24 и 30 ноге ПЗУ (ну и как было сказано на 1 ноге ир23). докучи фронты сигналов могут "затягиваться" на разных ПЗУ по разному - так что нужны "чёткие" "0" и "1"
    Я пробовал так: меняю адрес -> неприлично долго жду -> считываю данные. В таком варианте затягивание фронтов не играет никакой роли, т.к. считываются 100%-но устаканившиеся данные на выходах ПЗУ.

    И второй момент: с керамико-стеклянной ПЗУ всё ок. Этот момент меня и смущает. Пластмасска КМОП, а стекляшка ТТЛ... пёс его знает, где тут собака зарыта?
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

Страница 1 из 10 12345 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. РК-86 - проблема
    от BYTEMAN в разделе Радио-86РК
    Ответов: 25
    Последнее: 14.01.2015, 12:36
  2. NEC в чём проблема?
    от Biozoom в разделе Внешние накопители
    Ответов: 21
    Последнее: 19.01.2012, 19:36
  3. проблема с SID
    от breeze в разделе Commodore 16/64/128
    Ответов: 23
    Последнее: 17.03.2009, 12:24

Ваши права

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