Итак, продолжение сериала... уж не знаю, драмы или комедии ))
Как отписывал выше, подал честные 5 Вольт на питание ПЗУ и продолжил "лабораторные работы". В общем, полноценное питание никак не изменило ситуацию, по-прежнему в считываемом дампе имеют место рандомные вкрапления.
Ещё раз измерил напруги в статике. Итак, питание 4,95 Вольт (с КРЕНок 7805 почему-то всегда так, ни разу не встречал экземпляры с напругой выше 4,95в). Уровень лог."1" на выходе ВВ55-ой, нагруженной на КМОП-аналог ИР23-ей и входы ПЗУ W27C512 = 3,75 Вольт. На выходе нагруженном только на вход ПЗУ (CE) уровень лог."1" = 3,95 Вольт. Уровни лог."1" на выходах ИРки и ПЗУ равны питанию, т.е. все 4,95 Вольт. Уровень лог."1" на входе OE - 4,3 Вольта.
Дальше я уже стал мучать программную сторону вопроса. Сделал вот что, убрал изменение старшего байта адреса, т.е. 128 раз считываю только первые 256 байт данных из ПЗУ. Т.е. ИРка только один раз защёлкивает все нули и на протяжении всей процедуры чтения её состояние не меняется. Т.о. ещё и исключаю возможные проблемы с уровнем лог."1". Считываю... вообще какая-то лажа! В первых 32..128 байтах (длина каждый раз разная) какая-то информация, а далее считываются все FFh. Я вообще в непонятках, как это такое возможно?!
Далее ввожу в алгоритм чтения отключение выхода ПЗУ с помощью OE между сменой адреса. Начинает считываться информация! Причём за несколько попыток даже полностью совпали к/с дампов. Я даже было дело обрадовался.. Но сделал ещё несколько попыток, в результате которых проблема таки проявилась - в некоторых блоках вновь возникали вкрапления "левого" кода, просто оно стало происходить реже.
Далее пробую ввести задержки между каждыми обращениями к порту, ситуация не меняется.
Затем реализовываю "параноидальный" алгоритм чтения, о котором выше говорил JV-Soft, т.е. при чтении каждого байта усыпляю ПЗУ (CE=OE="1"), выставляю адрес, пауза, пробуждаю ПЗУ (CE="0"), пауза, активирую выход ПЗУ (OE="0"), пауза, читаю байт, усыпляю ПЗУ (CE=OE="1") и т.д.. Картина никак не меняется. Напомню, читаю только первые 256 байт, на A8..A15 перманентно выставлено 00h. Примерно в 1 из 640 раз проскакивает вкрапление "левого" кода в дампе.
Убираю лочку старшего байта адреса, пробую параноидальным алгоритмом читать весь дамп ПЗУ - проблема на месте, у всех считываний к/с разная.
На всех итерациях пробовал подкидывать керамическую ПЗУ с УФ-стиранием M27512. С неё при любом аппаратно-программном варианте всегда считывается достоверная информация! Т.е. проблемы только с ВинБондом ((
Теперь, имхо, осталось только одно узкое место: TTL-выхлоп ВВ55-ой подаётся на CMOS-вход ДжеймсБонда. Сегодня еду в ЧиД покупать трушную ТТЛ ИР23 (за 59 руб, блин). Т.к. есть подозрение, что ВВ-хе нужна нагрузка в виде ТТЛ-входа, иначе она почему-то тупит, а два КМОП-входа за нагрузку не считает вовсе ((
ОФФ, а может и нет.. Вспомнил вот что. Сделан у меня на ОРИОНе RAM-диск на ОЗУшках SU6264, которые тоже КМОП. Так вот в своё время поимел я с ним некоторое кол-во "секса", и тоже по части считывания инфы.
Копнул исходники и вспомнил такую штуку. Если читать из этого RAM-диска блок не более 2 Кб, то всегда всё ок. Если же читать блок более 2 Кб, то возникают сюрпризы (далее 2 Кб считываются неверные рандомные данные). Решил тогда проблему усыплением/пробуждением RAM-диска через каждые 256 считываемых байт. С этим "костылём" считывание 100%-ное. Тогда списал на глюканат ОЗУшек, типа при чтении длинных блоков что-то там нагревается и "залипает" (была инфа, что русские аналоги КР537РУ17 не любят долго быть выбранными /СЕ=0/ - сильно разогреваются чипы). Сейчас понимаю, что скорее всего проблема со стороны ВВ55-ой... /-)
---------- Post added at 13:57 ---------- Previous post was at 12:30 ----------
К питанию? Каким номиналом, 10 ком или жощще?
Да, красиво. Всё прямо по учебнику, в смысле по даташиту. Один момент.. ZIF-кроватка стоит 1000 с лишним рубликов! Макетная плата 300 с лишним руб. Ради только стиралочки как-то жирновато получаетсяИнтегрировать данную фичу в программатор видится мне более логичным, что я и сделал в своём..
---------- Post added at 14:02 ---------- Previous post was at 13:57 ----------
Вангую, что не заработает ВинБонд в таком варианте. По ходу, проблема с выходом ВВ55-ой скорее всего. Току она хочет...
---------- Post added at 14:31 ---------- Previous post was at 14:02 ----------
Хм... интересно, с чего я взял, что ВВ55-ая ТТЛ?
Педевикия говорит, что она n-МОП...




). Т.к. есть подозрение, что ВВ-хе нужна нагрузка в виде ТТЛ-входа, иначе она почему-то тупит, а два КМОП-входа за нагрузку не считает вовсе ((
Ответить с цитированием