PDA

Просмотр полной версии : Тестер памяти 565РУ5, 565РУ7, 537РУ10 и др.



Tronix
20.09.2014, 14:40
Контроллер - PIC16F73 на частоте 20MHz. Возможны так-же похожие контроллеры PIC16F870 (пока прошивка влезает, но в будущем может не лезть), PIC16F873, PIC16F876, PIC16F876A.

Два режима - "простой светодиодный" и "расширенный UART".

"простой светодиодный": автоматическое распознавание вставленной микросхемы памяти, бесконечная череда тестов. При включении устройства оба светодиода моргают 4 раза во время автообнаружения микросхемы памяти. Далее начинается бесконечный цикл тестирования. Если на каком-то этапе обнаружена ошибка, загорается красный светодиод и не гаснет до отключения устройства. Поведение зеленого светодиода: выключен - идет запись тестового паттерна а ячейки памяти; включен - идет чтение и сверка с эталоном из ячеек памяти. Как раз в этот момент может зажечься красный светодиод.

"расширенный UART": возможность просматривать по какому адресу произошел сбой, возможность выбора типа микросхемы вручную, возможность выбирать тип теста (паттерны, бегущая единица), отладочная информация. Для согласования с COM-портом компьютера необходим кабель с преобразованием TTL уровней на MAX232 или аналогичный. Скорость 9600, 8N1.

В процессе отладки.... Информация будет собрана в этом сообщении.


UPD 04.10.2014:
1)Тест статической памяти (РУ10 и тд) пока отложен как неперспективный. Тест требует дополнительных компонентов на плате, модификацию схемы и дополнительное место в памяти контроллера. Возможно сделаю, но уже когда совсем разберемся с динамической памятью.
2) Набросал как мог схему, она в архиве. C3, C4 - керамика, 15pF.
3) Так же выкладываю пока альфа версию прошивки 1.31b: умеет автоматически различать РУ5 (4164) / РУ7 (41256), имеет простейший тест (заполнение ячеек собственным индексом). Тест бесконечный. Если на каком-то этапе обнаружена ошибка - загорается красный светодиод. Зеленый светодиод горит - идет запись в ячейки. Не горит - идет чтение из ячеек и сравнение с эталоном. При включении мигает 4 раза обоими светодиодами - идет автоопределения типа микросхемы. Кое-что выводит в UART, пока только в режиме вывода.

UPD 06.10.2014:
Скомпилировал по просьбам участников прошивки для разных микроконтроллеров.

Плата под "утюг": http://zx-pk.ru/showpost.php?p=752950&postcount=56

UPD 23.11.2014: Выложил исходники прошивки. Собирается PIC CCS.

UA(YPB
20.09.2014, 15:08
Нужная вещь. Буду следить.

1Ж24Б
20.09.2014, 15:27
Поддержка КР565РУ6 будет ?

CodeMaster
20.09.2014, 16:23
Контроллер - PIC16F73 на частоте 20MHz.

С АТМегой из тестера логики ничего не получилось или ПИКи просто "родней"?

Tronix
20.09.2014, 16:50
Поддержка КР565РУ6 будет ?

Пока нет, за неимением самой РУ6. При случае если попадется мож куплю штучку для тестов, тогда можно попробовать.


С АТМегой из тестера логики ничего не получилось или ПИКи просто "родней"?

а) ПИКи "родней" б) у тестера на атмеге как я понял закрытый код. Есть вроде какие-то древние куски, но.... Именно закрытый код меня и оттолкнул от этого проекта, хотя на базе него конечно было бы целесообразней поднять тестилку.

CodeMaster
20.09.2014, 17:01
Именно закрытый код меня и оттолкнул от этого проекта, хотя на базе него конечно было бы целесообразней поднять тестилку.

ИМХО, Евгений всегда предлагал исходники для доработки :-/

Ewgeny7
20.09.2014, 18:57
ИМХО, Евгений всегда предлагал исходники для доработки :-/
Мои исходники все открыты и выложены. Но я давно не поддерживаю тестер.
А Protomm исходы не выкладывает, но это его право.

CodeMaster
20.09.2014, 19:35
А Protomm исходы не выкладывает, но это его право.

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


Именно закрытый код меня и оттолкнул от этого проекта

А ты спрашивал его? Часто люди исходники не выкладывают просто по причине того, что не хотят что бы каждый проходящий рылся в личных вещах.

Ewgeny7
20.09.2014, 22:27
Задам еще один вопрос. Код написан на С или асме? Тоесть, имеет ли смысл пыжиться, если код тестера логики на С, а тестера ОЗУ - на асме...

fifan
21.09.2014, 06:53
А возможно ли использование одной ZIF панельки на 24 вывода или нужно ставить две на 24 и 16?

CodeMaster
21.09.2014, 07:20
А возможно ли использование одной ZIF панельки на 24 вывода или нужно ставить две на 24 и 16?

Думацо да, хотя, статика не так актуальна, её проверка есть в большинстве программаторов, даже в Виллеме.

Tronix
21.09.2014, 07:45
Код пишется на Си. Результат пока за день ковыряния отрицательный - не смог завести РУ5 с пол-пинка. Нужно ждать начала рабочей недели, когда я на работе доберусь до осциллографа. Сейчас отладка происходит в слепую, так как в протеусе нет даже данного PIC, не говоря уже о самой динамической памяти. Есть немного похожий PIC16C73B, но он не один в один с PIC16F73 - код приходится перекомпиливать, так как в лоб не совместим.

Сегодня попробую завысить на много частоту рефреша (почти до пошагового) и посмотреть с помощью моего самодельного лог анализатора до 1 MHz на сигналы. Возможно что-то проясниться.

Насчет статической памяти - воткнул по-скольку по-стольку. Как доп опция. Сам еще даже панельку не распаивал. Действительно, с ней проблем нет и можно тестить чем угодно. Возможно, ее придется совсем выпилить, это не главное.

fifan
21.09.2014, 17:57
Думацо да, хотя, статика не так актуальна, её проверка есть в большинстве программаторов, даже в Виллеме.
Но не у всех есть Виллем.

Viktor2312
21.09.2014, 18:04
Но не у всех есть Виллем.

Но, есть возможность, за копейки его приобрести.

CodeMaster
21.09.2014, 18:08
Но не у всех есть Виллем.

Ещё меньше тех у кого есть комп на статике в DIPе.

З.Ы. Но, я совсем не против проверки статики, а скорее за то что бы проверка памяти поместилась в тестер на АТМеге (места вроде там не много оставалось)

Viktor2312
21.09.2014, 18:51
Ещё меньше тех у кого есть комп на статике в DIPе.

Я например вообще статику не применяю, а вот РУ5 и РУ6 интенсивно и по многу, поэтому тест динамического ОЗУ очень актуален. Но вот данная разработка меня сильно смущает, так как есть хороший тестер для РУ6 и РУ5, при желании можно к нему добавить и РУ3, РУ7, и нужно там всего несколько микросхем обычной К555 логики, то есть тестер не требует программирования МС, мал, компактен, и дешёвый, но да ладно, этот раздел не об этом.

Как мне кажется СОЗУ тестить лишнее будет. Лучше, чтобы он тестил РУ3, РУ6, РУ5, РУ7, РУ9, это основные МС ДОЗУ применяемые на практике. РУ6 от РУ5 так вообще по большей части отличаются только количеством разрядов шины адреса. И взаимозаменяются без проблем, поэтому добавить РУ6 думаю не составит особого труда. РУ3, с питанием там небольшой гемор, возможно её и не стоит добавлять в тестер.

HardWareMan
21.09.2014, 19:11
А какие алгоритмы применяются при тестировании ДОЗУ? Там же есть разные нюансы. Например, у меня в Орионе в 90х во второй банке холодная РУ5 сыпалась (прыгали синие черточки атрибутов каждые 4 блока) а с прогревом все нормализовывалось и РАМ диск не глючил. Минут 5-10 требовалось для прогрева. А был еще на моей памяти наоборот, в Специалисте на кружке память дохла после прогрева почти час. Выявили вообще случайно, очень повезло, что комп достался в тот раз мне с кентом и мы уже всю работу на тот момент сделали и просто баловались. В общем, было бы не плохо алгоритмы списком подбить.

Tronix
23.09.2014, 22:43
А какие алгоритмы применяются при тестировании ДОЗУ? Там же есть разные нюансы.
Точно, нюансов там выше крыши. Я пока ориентируюсь на забугорные 4164, 41256, так как там хоть даташиты вменяемые, в отличии от противоречивых справочников СССР. Насчет нюансов, то все начинается от банального времени рефреша, заканчивая различными режимами работы с памятью. Таких режимов на удивление много. Простой - это чтение или запись и параллельно идет рефреш. Есть еще чтение-модификация-запись. При этом она сразу и рефрешится. Еще есть страничный режим, когда читается или пишется сразу вся строка бит. Плюс ко всему можно еще отрефрешить память при записи бита, так называемый "скрытый рефреш". В идеале нужно проверять все эти режимы, играться с интервалом рефреша и другими временными параметрами, но...



Например, у меня в Орионе в 90х во второй банке холодная РУ5 сыпалась (прыгали синие черточки атрибутов каждые 4 блока) а с прогревом все нормализовывалось и РАМ диск не глючил. Минут 5-10 требовалось для прогрева. А был еще на моей памяти наоборот, в Специалисте на кружке память дохла после прогрева почти час. Выявили вообще случайно, очень повезло, что комп достался в тот раз мне с кентом и мы уже всю работу на тот момент сделали и просто баловались. В общем, было бы не плохо алгоритмы списком подбить.

Может быть в этих случаях не сами чипы памяти были причиной сбоев, а как вариант начинали с прогревом "плыть" управляющие сигналы.

PS: Седня было немного времени, потыкал в плату осциллографом. На осмысление увиденного пока времени не было, но сигналы записал, буду разбирать. Вообще, картинка мне понравилась, почти как в даташитах. Но где-то я промахнулся с интервалами. Будет свободное окно - буду посмотреть.

stealth_w
25.09.2014, 08:51
Когда у меня возникла необходимость проверить свои залежи разных рушек я сделал себе тестер. Он не сложный - но он на ПЛИС. Если интересно могу выложить и рассказать про его работу здесь или создать новую тему :)

dk_spb
25.09.2014, 09:02
stealth_w, Да, интересно.

Viktor2312
25.09.2014, 09:03
Если интересно могу выложить и рассказать про его работу

Выложите, очень интересно.


или создать новую тему

Лучше наверное новую, чтобы не было каши.

HardWareMan
25.09.2014, 10:23
Может быть в этих случаях не сами чипы памяти были причиной сбоев, а как вариант начинали с прогревом "плыть" управляющие сигналы.
Замена РУ5 в обоих случаях раз и на всегда решило проблему, но тут да, точит червячок сомнения: а может эта ОЗУ просто требовательна к времянкам. Но тут сработал принцип стадности: 7 против 1 (в случае с Орионом 15 против 1) не жаловались, так что вали нафиг с платы. :3

Ewgeny7
25.09.2014, 11:15
Нет лучше тестера, чем целевая плата с панелькой и зацикленным тестом...

Tronix
25.09.2014, 21:49
Ребят, а по случайности никто не может показать осцилограмму или лог анализатором живую картинку с РУ5 регенерации? У меня регенерация происходит в таймере: A0-A7 - это адрес, A8 - RAS, A9 - CAS


#int_timer1
void Refresh ( )
{
unsigned int16 i;
// to output, CAS must be high, then each row is output followed
// by an RAS cycle
output_high(RAS);
output_high(CAS);
for(i=0;i<0x100;i++)
{
addressByte(i); // здесь на ноги A0..A7 выставляется адрес (i)
output_low(RAS); // защелкивается
output_high(RAS); // поехали дальше
}
// set the timer up so that it will role over in 4ms
set_timer1(0xC800);
}

Вот так оно выглядит в протеусе в симуляции:

http://hsto.org/files/bb6/518/835/bb651883526e4140b3665b69f7b1c9da.png

Если развернуть поближе, то видно, как перебираются строки:

http://hsto.org/files/a0d/a27/f1a/a0da27f1ae794565ac621bff06ff5db5.png

Я там временные маркеры поставил, посмотрите на временные интервалы, кто шарит. Они нормальные или нет? Не знаю на сколько точная симуляция, но на осцилографе я примерно то же самое вижу вроде...

stealth_w
26.09.2014, 09:24
Вообще слишком часто. Стандартно регенерируется раз в 15.7 мкс. Я забыл один раз вообще регенерацию сделать - так некоторые микросхемы до 10 сек хранят :) особенно новые и буржуйские.

Tronix
28.09.2014, 12:05
Обнаружил, что при монтаже подал на панельку для DRAM перевернутое питание :( А я удивляюсь, чего оно не работает....

Tronix
28.09.2014, 16:39
Есть! Завел наконец РУ5. Читаю - пишу нормально.

Tronix
28.09.2014, 21:30
Оставлю здесь, что бы не потерять, ну и так, на всякий случай: Аппаратный тестер DRAM DT-90 (на двух PAL): http://imgur.com/a/KBpuJ Прошивки PAL: http://arcarc.xmission.com/Test%20Equipment/StarTek%20DRAM%20tester%20DT-90/

Воюю с автодетектом 4164/41256... Ладно, утро вечера мудренее, завтра продолжу.

Tronix
29.09.2014, 08:09
Тест статической памяти (РУ10) пока отменяется, так как усложняет конструкцию - необходимо ставить регистр типа 555ИР22 для мультиплексирования шины, так как ног у контроллера для прямого соединения ессно не хватает. Плюс начинаю опасаться за размер прошивки, уже занято порядка ~30%, при том что фактически там только один паттерн теста, автодетект 4164/41256 (не рабочий пока) и вывод в UART пары-тройки отладочных сообщений. Но в теории прикрутить будет можно, главное чтоб места хватило.

Tronix
29.09.2014, 19:57
Чето невезет мне с этим девайсом. Сначала питание на панельке для РУ-шек перевернул, теперь вот убил весь день, пытаясь понять почему у меня 41256 работает не так как надо. Оказалось припаял сигнал A8 вместо 16 вывода PIC на 13 вывод (они друг напротив друга). Ппц невнимательность какая-то. Мог бы это время потратить с гораздо большей пользой... Но тем не менее, уже работают тесты 4164(РУ5) и 41256(РУ7Г). Проверял на микросхемах MN4164P-15A, K565РУ5, KM41256AP-12, К565РУ7Г. Последняя кстати из моего Поиска, правильно обнаруживает ошибки на ней. Что ж, маленькая но победа. Жаль впереди рабочая неделя, вернуться к девайсу придется только на следующих выходных....

Tronix
03.10.2014, 22:24
Нарисовал схему, выложил текущую прошивку. Кому нужно чтоб просто работало (красный - error, зеленый - ок) для РУ5 - РУ7, без выпендрежа с UART и сложными типами тестов - можно собирать. Оно работает на текущем этапе. Буду пилить потихоньку, но мои выходные неожиданно отложились до понедельника...

Yermak
04.10.2014, 10:30
А как насчет выкладывания исходников - чтобы можно было скомпилировать под свой PIC16F87x, совместимый по выводам с Вашим PIC16F7x?

Tronix
04.10.2014, 13:21
А как насчет выкладывания исходников - чтобы можно было скомпилировать под свой PIC16F87x, совместимый по выводам с Вашим PIC16F7x?

Пока наверно не буду выкладывать, так как немножко говнокод. Как чуть-чуть причешу, выложу.

АлександрПП
05.10.2014, 08:31
Как чуть-чуть причешу, выложу.
А если скомпилировать для 16f87х и выложить дополнительно? Как такой вармант?

Tronix
05.10.2014, 08:39
Как чуть-чуть причешу, выложу.
А если скомпилировать для 16f87х и выложить дополнительно? Как такой вармант?

Да пожалуйста, только скажите более точную модель PIC. Скомпилю и выложу.

АлександрПП
05.10.2014, 09:26
PIC16F870

1Ж24Б
05.10.2014, 13:03
Да пожалуйста, только скажите более точную модель PIC. Скомпилю и выложу.
А можно скомпилировать под более распространённые PIC16F873/876 ?

fifan
05.10.2014, 19:32
Для порядка: на схеме не указанны номиналы конденсаторов в цепи кварца, его значение тоже не указано.

Yermak
05.10.2014, 19:42
Вообще-то под каждый совместимый PIC перекомпилировать прошивку автору будет несколько неудобно в виду их количества - в той же PIC16F87x-серии есть близнецы-братья PIC16F87xA (с аналоговыми компараторами).

fifan, Вы пользуетесь устаревшей схемой, сегодня уже все подписано.
Что действительно не указано на схеме, так это положение джампера выбора режимов "простой" - "UART".

Tronix
05.10.2014, 20:46
Что действительно не указано на схеме, так это положение джампера выбора режимов "простой" - "UART".

А его и нету -) Решил при включении писать в UART что-то типа "Press any key for menu... 5.. 4.. 3.. 2.. 1.." и если за 5 сек нажата любая клавиша - вываливается в меню. В противном случае - режим "простой".

Tronix
06.10.2014, 14:58
Скомпилировал по просьбам прошивки для PIC16F870, PIC16F873, PIC16F876. У 870 занято 73%, в дальнейшем может прошивка не влезать. Все в первом сообщении.

Yermak
07.10.2014, 00:09
Ларису Ивановну хочу...прошивку под PIC16F876A :v2_dizzy_help:

Tronix
07.10.2014, 09:01
Ларису Ивановну хочу...прошивку под PIC16F876A :v2_dizzy_help:

Готово. Там же, в первом сообщении.

fifan
07.10.2014, 09:50
У 870 занято 73%, в дальнейшем может прошивка не влезать.
А чтоб было с запасом какой лучше PIC использовать?

Tronix
07.10.2014, 10:09
А чтоб было с запасом какой лучше PIC использовать?

Любой, из перечисленных в первом сообщении, исходя из соображений доступности в местном ларьке. Единственная разница - в железе я не проверял ничего кроме 16F73. Ждем отзывов от тех, кто возможно соберет на других МК. Но проблемы быть не должно, а если вдруг и будут, то думаю что без особого труда можно будет пофиксить.

Я когда начинал его делать исходил из соображений дешевизны. Сначала я вообще хотел взять за основу PIC16F819 dip18, тем более что он у меня уже был. Но, не хватило ног. Точнее, если без внешнего кварца - хватало в притык для светодиодов (без UART), но меня смутила частота внутренняя 8MHz - по моим прикидкам было маловато для необходимой частоты рефреша, мог не успевать. Поэтому взял самое дешевое с 28 ногами - PIC16F73 даже в нашем бутике шип и дип стоит 100 руб. Можно даже еще дешевле, взять из серии 16C что-то 28-пиновое, они вообще по ~40 руб, но они однократно-программируемые и для отладки мне точно не подошли бы.

Даже больше скажу - в принципе, можно любой PIC, с числом выводов не меньше 28, памяти не меньше 128 байт и памяти программ EEPROM не меньше 4К слов, хардварным UART и сам камень могущий работать на 20 MHz. Более там ничего из периферии не используется вроде.

fifan
07.10.2014, 13:55
в железе я не проверял ничего кроме 16F73.
Ну тады его и возьму.

Tronix
02.11.2014, 19:38
Какой-то глюк у меня был - при приеме символов из UART, я принимал какой-то мусор всегда, не зависимо от того, что я передаю в UART. Поборолось пулл-апом в 300 ом на RX пин контроллера. Не знаю - то ли в шнурке дело, то ли какую хитрую инициализацию забыл, то ли так и надо.. Шнурок UART у меня вообще из сименовского COM-кабеля для древних телефонов сименс, но вроде с ним раньше всякие роутеры/жесткие диски/девборды нормально работали. Хз короче, причину не понял, но устранил.

В связи с этим набросал небольшое подобие CLI, распарсиваются команды, аргументы, обрабатываются бекспейс, и др. управляющие клавиши. Памяти программ в 16f73 стало меньше (занято 77%)

http://habrastorage.org/files/310/3c1/4c5/3103c14c593b4f0eb4e4c3828d9e92a9.png

Дальше в планах сделать тест 1mbit ных микросхем, которые DIP-20, типа 82C4256, 324256. Панельки такой нету, а специально ехать за ней влом. Ну и допилить наконец всякие режимы тестирования, задаваемые параметры рефреша и выбора типа микросхем из CLI.

CodeMaster
02.11.2014, 20:58
Нет лучше тестера, чем целевая плата с панелькой и зацикленным тестом...

Габаритно, однако.


Дальше в планах сделать тест 1mbit ных микросхем, которые DIP-20, типа 82C4256, 324256.

А РУ7 сделана, что-то на экзотику потянуло?

Tronix
02.11.2014, 21:05
А РУ7 сделана, что-то на экзотику потянуло?

РУ7 сделана. 4256 - почему экзотика? Обычное явление в XT, 286 матплатах. Их есть у меня и на платах, и просто когда-то давно давно надерганные откуда-то. Проверить последние было бы не плохо.

CodeMaster
02.11.2014, 21:21
4256 - почему экзотика?

Ни разу не встречал желающих их протестировать.

Tronix
06.11.2014, 00:35
Вообщем, как и ожидалось с самого начала, CCS C - такой же бейсик как и Mikro C, то есть мурзилочный язык программирования. Конечно привлекает тем, что не надо вкуривать даташит на контроллер от и до, а достаточно пролистать по диагонали. Я думал, что для простой задачи сойдет. Но - шаг в сторону и все. В частности указатели на функции в структурах. Просто тупо компилятор виснет, даже с созданными своими типами данных и другими обходными путями. Из-за этого обработка CLI превращается в быдлокодинг. Можно конечно и забить, ибо работает и так, но красивей все-таки переписать на XC 8. С другой стороны тогда потеряется некая мнимая кросс-платформенность, то есть простая перекомпиляция для различных PIC. Не знаю...

dosikus
06.11.2014, 21:09
CCS C - такой же бейсик как и Mikro C, то есть мурзилочный язык программирования.
Однозначно...



Из-за этого обработка CLI превращается в быдлокодинг.

microrl не пробовал?

Error404
06.11.2014, 21:46
Дальше в планах сделать тест 1mbit ных микросхем, которые DIP-20, типа 82C4256, 324256. Панельки такой нету, а специально ехать за ней влом. Ну и допилить наконец всякие режимы тестирования, задаваемые параметры рефреша и выбора типа микросхем из CLI.

А 4х-битные ДОЗУ добавишь? Например такие: M514256B (4х256кбит) или GM71C4403CJ (4х1024кбит) и их аналоги. Тож в 20-ногих корпусах. Их богато бывает на модулях SIM.

---------- Post added at 21:46 ---------- Previous post was at 21:41 ----------

А конструктивно, прям бы на плате тестера параллельно панельке ОЗУ иметь доп.разъем и проверять целый модуль SIM - выбирать какие биты из него тестировать механическим или электронным коммутатором.

Tronix
06.11.2014, 21:55
microrl не пробовал?

Не пробовал, ибо первый раз слышу. Щаз бегло глянул:
1) слишком избыточно (поддержка VT-100, автозаполнение и тд). Понимаю, что отключается кое чего, но все равно для маленького PIC слишком. А 16f73 маленький в плане памяти для прошивки.

2) Вот с этим в CCS C однозначно будут проблемы:

// microrl struct, contain internal library data
typedef struct {
#ifdef _USE_ESC_SEQ
char escape_seq;
char escape;
#endif
#if (defined(_ENDL_CRLF) || defined(_ENDL_LFCR))
char tmpch;
#endif
#ifdef _USE_HISTORY
ring_history_t ring_hist; // history object
#endif
char * prompt_str; // pointer to prompt string
char cmdline [_COMMAND_LINE_LEN]; // cmdline buffer
int cmdlen; // last position in command line
int cursor; // input cursor
int (*execute) (int argc, const char * const * argv ); // ptr to 'execute' callback
char ** (*get_completion) (int argc, const char * const * argv ); // ptr to 'completion' callback
void (*print) (const char *); // ptr to 'print' callback
#ifdef _USE_CTLR_C
void (*sigint) (void);
#endif
} microrl_t;

И тд...

---------- Post added at 21:55 ---------- Previous post was at 21:53 ----------


А 4х-битные ДОЗУ добавишь?

Дада, есть в планах. Встречный вопрос - а бывают такие микрухи битыми? Кто хоть раз видел?

Anubis_OD
07.11.2014, 18:17
А может кто-то платку одностороннюю " под ютуг" развести?.

Mrpin
11.11.2014, 16:13
Вот платка, проверяйте

Mrpin
14.11.2014, 08:15
Собрал на pic16f876a, все работает. хотелось бы прошивку под pic16f873а

palsw
14.11.2014, 09:27
Mrpin, спасибо за печатку.на выходных попробую залутить .проблема будет только пик прошить - раньше сними не особо имел дело.но как раз есть pic16f876a лишний

CodeMaster
15.11.2014, 13:27
Далее начинается бесконечный цикл тестирования. Если на каком-то этапе обнаружена ошибка, загорается красный светодиод и не гаснет до отключения устройства.

Желательно добавить какую-то индикацию, что цикл по все адресам пройден. Например, моргнуть обоими светодиодами.


Для согласования с COM-портом компьютера необходим кабель с преобразованием TTL уровней на MAX232 или аналогичный.

А какой софт нужен на компьютере?

James DiGreze
15.11.2014, 19:46
А какой софт нужен на компьютере?

В посте #47 (у меня на 10 странице) используется PuTTY на COM-порт, что есть по сути любой терминал, в том числе стандартные терминалы windows или linux.

Vasily
22.11.2014, 23:04
Добрый вечер.

Пробую шить 16f73, программатор пишет, что не найдена конфигурация в hex-файле. Подскажите пожалуйста, она там вообще есть, и как выставлять биты. И еще, какая скорость COM-порта, остальное 8N1?

Спасибо.

dosikus
22.11.2014, 23:14
Vasily, что за прогер ? Небось какой нибудь экстрапук или того хуже ЖДМ и оболочка icprog ? :)))))))
Такой хренью только пЫки палить ...

Vasily
22.11.2014, 23:26
Китайский G540 (http://www.ebay.com/itm/G540-USB-Universal-EPROM-FLASH-GAL-AVR-PIC-Programmer-/250772922626). Вроде память, Atmel нормально шьёт.

Tronix
22.11.2014, 23:33
Добрый вечер.

Пробую шить 16f73, программатор пишет, что не найдена конфигурация в hex-файле. Подскажите пожалуйста, она там вообще есть, и как выставлять биты. И еще, какая скорость COM-порта, остальное 8N1?

Спасибо.

Конфигурация там (в hex-файле) есть. Но если программатор тупой, можно самому выставить биты, в частности:

#FUSES NOWDT //No Watch Dog Timer
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOPUT
#FUSES NOPROTECT

Скорость com-порта 9600 8N1, но туда пока мало что выводится.. Скорее больше развлечение, нежели реальная необходимость.

dosikus
22.11.2014, 23:41
Tronix, а кварц ? Конфиг генератора ...

Tronix
23.11.2014, 11:37
Tronix, а кварц ? Конфиг генератора ...

20MHz, High Speed

---------- Post added at 11:37 ---------- Previous post was at 09:48 ----------

Выложил исходники, как есть (говнокодес). Нормальная обработка CLI команд уже не лезет в прошивку, поэтому UART скорее остается только для вывода отладочной информации, CLI можно вообще выпилить, или придумать формат покомпактнее, убрать длинные сообщения, сделать команды просто буквами D (dump), S (start) и тд.

Vasily
23.11.2014, 12:49
Достал с полки willem, аккуратно сдул пыль. Подключил PIC через ISP, биты конфигурации определились нормально, правда все-равно ругается на ошибку контрольной суммы. Но в целом заработал, при включении мигает 4 раза светодиодами и приступает к тестированию. Как правильно тестировать память? Вставили в панельку память, включили питание - дождались зеленого светодиода, выключили питание, вставили следующую?

Спасибо.

Tronix
23.11.2014, 13:42
Достал с полки willem, аккуратно сдул пыль. Подключил PIC через ISP, биты конфигурации определились нормально, правда все-равно ругается на ошибку контрольной суммы.
Да, CCS C дописывает в конец hex-файла строку вида
;CRC=81AC CREATED="23-ноя-14 11:26" которая виляму не нравится. Если ее просто удалить из hex-файла, то ругаться перестанет. У меня то же самое. В то же время IC-prog программа работает нормально с вилямом и с этими hex. В целом, да, можно игнорировать эту ошибку просто.


Но в целом заработал, при включении мигает 4 раза светодиодами и приступает к тестированию. Как правильно тестировать память? Вставили в панельку память, включили питание - дождались зеленого светодиода, выключили питание, вставили следующую?

Спасибо.

Полный цикл теста: 1) зеленый выключен (в память пишутся тестовые значения) - 2) зеленый включен (из памяти читаются данные и сверяются с тестовыми значениями). Дальше по новой (выключен, включен и тд) Если в это время красный не зажегся, то память нормальная.

Vasily
23.11.2014, 14:07
Да, спасибо за тестер, попробовал потестить чипы - заработало как нужно.
Подкину пару идеек на усмотрение:
добавить кнопку старт/стоп тест,
в питание памяти mosfet(когда тест не бежит-снимаем питание с памяти, нет необходимости отключать питание целиком),
вместо UART подцепить 1602 по I2C lcd (http://ru.aliexpress.com/item/IIC-I2C-1602-blue-LCD-module-provides-libraries-For-Arduino/1062018842.html) - по ногам тоже самое.

Ewgeny7
26.11.2014, 12:46
Тема приобрела вполне законченный вид, поехали в раздел "Память".

Alex_Vac
14.12.2014, 18:04
Достались по случаю интересные микросхемы, КР565РУ5 с пометкой - "спецотбор Т=100нс"

Вроде самые быстрые отечественные микросхемы памяти КР565РУ5Б имеют время выборки 120нс, а самые быстрые КР565РУ7В - 150нс.

Как и чем можно проверить время выборки этих микросхем?

MM
15.12.2014, 16:42
Достались по случаю интересные микросхемы, КР565РУ5 с пометкой - "спецотбор Т=100нс"

Вроде самые быстрые отечественные микросхемы памяти КР565РУ5Б имеют время выборки 120нс, а самые быстрые КР565РУ7В - 150нс.

Как и чем можно проверить время выборки этих микросхем?
Универсальные профессиональные стенды ОЗУ чудовищно дороги, даже б/у. Реально проверить тайминги можно только на самодельной схеме контроллера ДОЗУ - подбирая кварчик. К такому устройству необходим внешний управляющий комп - например, порт LPT ИБМ ЭВМ. Софт пишется на подходящем языке высокого уровня, например - Кубасик :cool:
*
Предполагаю, 100 нс чипы - это из партии для вояк - когда эксперементировали с травлением областей пластины. Припоминаю, были даже "А" - 80 нс , в конце 1980-х. Их хотели ставить в поделки типа "Хромкерамика" - но это вести с головного предприятия были, я особо не в курсах.

http://storage7.static.itmages.ru/i/14/1215/s_1418653358_9880742_f3d7c97204.png (http://itmages.ru/image/view/2118277/f3d7c972)http://storage5.static.itmages.ru/i/14/1215/s_1418653607_5111147_e7127ad208.png (http://itmages.ru/image/view/2118290/e7127ad2)

Alex_Vac
15.12.2014, 17:52
На фото вообще то гражданские КН565РУ5Д, тут Тras=100нс и не пахнет.

А вот "спецотбор" на Т=100, думаю и есть "А", которые серийно не производились а отбирались, поэтому и в справочниках РУ5 начинаются с "Б", причем маркировка КР565РУ5 (без точек) - это именно "Б", хотя многие конторы путают и пишут что это "А", и соответственно одна точка - "В", две точки - "Г", три точки - "Д" и четыре точки - "Е"

MM
15.12.2014, 18:59
На фото вообще то гражданские КН565РУ5Д, тут Тras=100нс и не пахнет.

А вот "спецотбор" на Т=100, думаю и есть "А", которые серийно не производились а отбирались, поэтому и в справочниках РУ5 начинаются с "Б", причем маркировка КР565РУ5 (без точек) - это именно "Б", хотя многие конторы путают и пишут что это "А", и соответственно одна точка - "В", две точки - "Г", три точки - "Д" и четыре точки - "Е"

На фото - макеты, в серию не пошли. Но примерно аналогичные изделия для безвоздушного режима эксплуатации были, и там как раз и была выборка 100 нс или менее. Были так же гибридки с этими ядрами и кучей РУ5.

Alex_Vac
15.12.2014, 19:09
А нельзя ли как нибудь проверить ру5 используя спектрум, установив их на панельки? Есть ли какие нибудь тесты памяти под спектрум, позволяющие определить T_RAS и T_CAS? Может есть какие нибудь другие способы.

Случайность
15.12.2014, 19:10
на фото что это такое? процессор? или вообще процессорная плата в сборе? и какой архитектуры эта поделка?

MM
15.12.2014, 19:26
на фото что это такое? процессор? или вообще процессорная плата в сборе? и какой архитектуры эта поделка?

МС1201.02 исполнение "Х" :v2_dizzy_punk:

( Вероятно, матрицы 013, 034, 035 )

Все вопросы к уважаемому Юрию Леонидовичу Отрохову.

Случайность
15.12.2014, 20:34
а в центре 1806ВМ2.

жаль что такая железка не пошла в серию.

но судя по маркировке на ОЗУ КН должна быть гражданская железка.
по вот почему другие ИС без какой либо маркировки

James DiGreze
16.12.2014, 09:20
Достались по случаю интересные микросхемы, КР565РУ5 с пометкой - "спецотбор Т=100нс"

Вроде самые быстрые отечественные микросхемы памяти КР565РУ5Б имеют время выборки 120нс, а самые быстрые КР565РУ7В - 150нс.

Как и чем можно проверить время выборки этих микросхем?

"Нарисовать" свой стресс-тестер с двумя счетчиками типа ие7, переставляемым кварцем и м/к (чтоб огород в виде XOR схемы сравнения на мелочёвке не городить). Для 100нс ставим кварц на 10МГц (для больших еще и делитель до 10 предусмотреть), включаем и гоняем пока сизый не пойдёт ;)

HardWareMan
16.12.2014, 15:12
"Нарисовать" свой стресс-тестер с двумя счетчиками типа ие7, переставляемым кварцем и м/к (чтоб огород в виде XOR схемы сравнения на мелочёвке не городить). Для 100нс ставим кварц на 10МГц (для больших еще и делитель до 10 предусмотреть), включаем и гоняем пока сизый не пойдёт ;)
Проще собрать схему однобитного ревера (например, "Радио" N 1 - 86, стр.47 хотя я встречал и попроще). Там как раз ДРАМ в режиме RMW используется. И оценить качество работы можно будет. Вот этот (http://litcey.ru/jurnalistika/97075/index.html) я собирал.

James DiGreze
16.12.2014, 17:02
HWM, не уверен что проще.
Если "проще" в смысле готовой схемы, то вполне может быть, но ревер всё-таки, на мой взгляд, несколько сложнее, чем просто тестер одной м/с памяти.

Я вот, на самделе, не могу понять, зачем какое-то стресс-тестирование м/с памяти проводить... Есть от производителя заявленные характеристики, маркированные на корпусе, их и надо придерживаться.
Конечно, за счёт стресс-тестирования можно выявить м/с с заведомо лучшими хар-ками, нежели маркированы, но, имхо, далеко не всегда это оправдано.

alvis
17.12.2014, 00:38
Я вот, на самделе, не могу понять, зачем какое-то стресс-тестирование м/с памяти проводить... Есть от производителя заявленные характеристики, маркированные на корпусе, их и надо придерживаться.
Можно узнать насколько они вписываются в заявленные характеристики, еле-еле или с запасом.

James DiGreze
17.12.2014, 08:47
В каждом конкретном случае это описывается в ДШ. Есть и еле-еле, есть и с запасом.

Все наверно слышали про "разгон", в том числе и памяти в современных компах - в каждом конкретном случае нужно подбирать комплектуху. А есть фирмы, типа Корсара, которые закупаютт чипы по ОЕМ, делают стресс тестирование и подбирают на одну планку м/с с близкими параметрами, специально для "гонщиков", а за это берут добавочную стоимость. Меж тем, можно самому подбирать планки NONAME с хорошими характеристиками.

Тоже самое и с обычной DRAM.

CodeMaster
17.12.2014, 10:30
Меж тем, можно самому подбирать планки NONAME с хорошими характеристиками.

Типа вот так (http://www.xtremesystems.org/forums/showthread.php?286414-How-to-bin-a-DDR3-4000-Memory-!-AVEXIR-Computex-2013)? ;-)

Где бы только AMT64 найти, что бы прошить её в бутром сетевухи?

Ewgeny7
17.12.2014, 11:38
А давайте не будем выходить за пределы темы "тестер памяти для 565РУ"?

13joe
21.12.2014, 20:42
Интересно, а прошивку тестера можно перекомпилировать под pic16c63a ?

fifan
17.02.2015, 18:56
Вот собрал данный девайс. Пока проверил десяток РУ6 и парочку РУ5. Проверка РУ6 проходит так же как и РУ5, но в конце засвечивается красный светодиод. Так и должно быть?
При пустой кроватке сначала моргает зелёный, потом горит зелёный, гаснет зелёный, загорается красный. А сразу красный почему не включать или нет проверки на наличие тестируемой микросхемы?
Огромное спасибо автору прибора Tronix'у!

Tronix
20.02.2015, 22:36
Вот собрал данный девайс. Пока проверил десяток РУ6 и парочку РУ5. Проверка РУ6 проходит так же как и РУ5, но в конце засвечивается красный светодиод. Так и должно быть?
При пустой кроватке сначала моргает зелёный, потом горит зелёный, гаснет зелёный, загорается красный. А сразу красный почему не включать или нет проверки на наличие тестируемой микросхемы?
Огромное спасибо автору прибора Tronix'у!

РУ6 я не делал даже, у меня ее нет, и поддержки в прошивке нет. Поэтому вести она себя может непредсказуемо.
При пустой кроватке должен определится тип микросхемы как "UNKNOWN" (неизвестная) и начнется тестирование для 0x200 строк, как для РУ7. Вообще, да, надо бы индикацию получше проработать....
Может когда куплю РУ6 штучку, тогда и ее можно в тестер включить. Пока нету.

CodeMaster
21.02.2015, 06:21
Может когда куплю РУ6 штучку, тогда и ее можно в тестер включить.

Ждём-с вместе с индикатором 1602 ;-)

fifan
21.02.2015, 20:25
По COM порту отлично работает. Подключал вот так.

Tronix
22.02.2015, 11:47
Ждём-с вместе с индикатором 1602 ;-)

Индикатор то я подключил, но тогда отпадает надобность в RS-232, и можно эти две ноги заюзать для тестирования TTL-логики DIP-20. Еще нужно 5 кнопок добавить (влево-вправо-вверх-вниз-энтер) на резисторном делителе, подключить к одной ноге ADC контроллера. У 16F73 AN5, которая щаз торчит в воздухе, к сожалению не может юзаться как ADC, поэтому придется вешать на любую AN0-AN4, а ее функционал переводить на AN5. Светодиоды тоже получается не нужны, это еще две ноги высвобождаются.

Плохо, что у ру5-ру7 питание "перевернуто" относительно 74-логики, поэтому либо ставить dip-переключатель, либо подавать питание ногами микроконтроллера, в зависимости от того, чего хотят тестировать....

Минус всего этого - меняется первоначальная схема. А в целом - экран этот (1602) мне понравился. Крутая вещь :smile:

CodeMaster
22.02.2015, 12:42
Индикатор то я подключил, но тогда отпадает надобность в RS-232

Суперско! Тестирование памяти в тестере мелкой логики мы видимо не дождёмся :-( т.ч. хотелось бы портативный вариант и для памяти.

З.Ы. А вообще, оба варианта в одном флаконе да с дисплеем и нормальной индикацией вообще мечта

Tronix
23.02.2015, 13:46
Да не хочется плодить сущности... Идея то простая была - зеленый иди, красный - стой. Все. Под дисплей кнопки нужны, схему менять.... А народ уже вон плату стравил, это значит переделывать плату придется...

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

Сделать экран, кнопашки у этого проекта.

Сделать просто USB-приставку к компьютеру, а на компе краисвый софт с графиками там и тд...

И то и то и то реально, токма лень и времени нет ))

fifan
28.02.2015, 11:16
Tronix, а нельзя ли дополнить прошивку проверкой РУ6?

Tronix
28.03.2015, 12:43
Tronix, а нельзя ли дополнить прошивку проверкой РУ6?

Пока не купил ее. Как куплю хотя бы штуку - так и сделаем.

А в целом, переделал все устройство:

Убрал UART, убрал диоды. Поставлен новый диод для индикации подачи питания на микросхему. Питание теперь подается только во время тестирования через транзисторный ключ. После тестирования микросхему можно свободно менять на другую, без включения-выключения устройства, не боясь нечаянно спалить.
Во-первых, экран 1602 с интегрированным i2c (на микрухе pcf8574). Вещь бесспорно удобная, отнимает всего две ноги микроконтроллера.
Во-вторых, кнопачки для навигации 5 штук. Подключены через резисторный делитель на аналоговый вход, итого минус одна нога.
В третьих, поставлен dip-переключатель для выбора DRAM/TTL logic, так как у РУ5-РУ7 питание перевернуто относительно всей другой обычной логики. Полярность меняется переключателями с первого по четвертый. Оставшиеся 4 переключателя дают питание (или землю) на 7,8,9 или 10 ноги, в зависимости от типа тестируемой микросхемы. Перед началом каждого теста выводится изображение правильно установленных переключателей и ожидается подтверждение. Затем осуществляется автоматическая проверка наличия правильного питания для данного типа микросхемы (кратковременно подается питание и проверяется наличие высокого или низкого уровня на 7,8,9 или 10 ноге). Если ошибка - питание тут же выключается и выводится сообщение на экран о неправильно установленной конфигурации DIP-переключателя.


И, самое главное - прошивка уже конкретно не лезет в 16F73. Сначала хотел переписать все на xc8, потом хотел вообще на асме все переписать. Потом думал сменить контроллер на 16F76, в нем 8 Кб против 4Кб у 16F73. А потом хорошенько подумал, и решил не мелочится, а поставить вообще PIC18F2520 с 32Кб флеша. Да, немножко он подороже, ну и фиг с ним. Один раз живем :) Задумок много, и втискивать потом со скрипом в 8 Кб какую-нибудь новую фичу, при этом искусственно себя ограничивая, очень не хочется. Поэтому решено - 18F2520. Да, и еще его можно тактировать от встроенного генератора, с PLL до 32MHz вроде. Так что кварц скорее всего не нужен.

Пока отлаживаюсь кусками на 16F73, жду прибытия 18F2520.

vazman
07.06.2015, 08:37
Доброго дня.. И чем закончилось создание устройства на 18F2520?
Хотелось бы повторить если можно.. схему, прошивку.....

Дмитрий2012
07.12.2015, 22:58
Сообщение от fifan
Tronix, а нельзя ли дополнить прошивку проверкой РУ6?


"Сообщение от Tronix"
Пока не купил ее. Как куплю хотя бы штуку - так и сделаем.

Столкнулся с необходимостью проверки РУ6. Tronix, удалось ли приобрести РУ6, будет ли их поддержка в данном тестере?

Tronix
08.12.2015, 07:52
Увы, проект заморозился. РУ6 так и не достал. Интерес пропал.... Осознал, что реальный тестер можно построить только на FPGA...

perestoronin
08.12.2015, 09:09
С РУ6 постараюсь помочь, хотя кроме РУ5 и редко РУ7 ничего не использую.

Тестер интересный, ПЛИС или микроконтроллер по большому счету разницы нет. На ПЛИС дороже. Как вариант попробовать микроконтроллеры STM32. Их цена менее 250 руб. Если интересно, как получу -пришлю вместе с РУ6.

Ewgeny7
08.12.2015, 18:04
Питание "трехполярное" у РУ6. Автодетект как будете делать? ;)

- - - Добавлено - - -


Осознал, что реальный тестер можно построить только на FPGA...
Вот, наконец-то!
МК тут не помощник, никакой.
Проверить, что ОЗУ "вообще работает" - не интересно и неправильно ИМХО.

АлександрПП
08.12.2015, 18:23
Питание "трехполярное" у РУ6
Почему? Это у РУ3 Gnd, +5 и -5. И, по-моему, еще +12.

dk_spb
08.12.2015, 19:33
Питание "трехполярное" у РУ6.
Это как это?????

CodeMaster
08.12.2015, 20:12
Это как это?????

+, - и 0

dk_spb
08.12.2015, 20:29
CodeMaster, угу, троичная система..... ;-)

Ewgeny7
08.12.2015, 21:33
Это как это?????
Да, прошу пардону, балда :)
Это РУ3 были куртуазные, РУ6 - вполне себе пролетарские.

fifan
09.12.2015, 05:05
Всё же будет ли поддержка РУ6? И желательно под версию без ЖКИ.

perestoronin
09.12.2015, 07:14
А чем ЖКИ плох? Что более информативен? Конечно сенсорный LED был бы полезнее.

HardWareMan
09.12.2015, 08:46
Нужно просто идти в ногу со временем: сейчас эра цветных TFT с пальцетыком. Кому нужны эти LCD и лампочки? :3

Viktor2312
09.12.2015, 09:32
Кому нужны эти LCD и лампочки? :3

Мне, но и с первым про TFT полностью согласен.

blackmirror
09.12.2015, 17:35
Если переходить на STM32, то возможно стоит обратить внимание на вот эту плату:
https://www.terraelectronica.ru/catalog_info.php?CODE=1318218
отладчик там уже встроен, частота контроллера до 48МГц, USB тоже в наличии.
Программное чтение или запись в порт скорее всего займут 2 такта, НО(!) у данного микроконтроллера есть 7 таймеров, суммарно имеющие 17 каналов Input/Output Capture, что в теории позволяет выдать до 7 управляющих сигналов с точностью до такта (перевести сигнал в 0 или 1, а потом вернуть обратно, если конечно нужно) или захватить до 17 сигналов с такой же точностью (если конечно ноги у таймеров не пересекаются и удастся синхронизировать работу таймеров и программы). Еще внутри имеется два RC генератора на 8 и 48 МГц, которые при помощи PLL можно умножить на PLLMUL от 2 до 16 и поделить на PLLDIV от 1 до 16, или можно поставить кварц от 4 до 32 МГц. Конечно 5 или 1 нс как обещают для ПЛИС мы здесь не получим, но меняя частоту работы, возможно достаточно точно оценивать интервалы длительностью от 21 нс.

fifan
09.12.2015, 18:07
Спросил про поддержку РУ6, а в результате флуд про разные экраны. Где автор?
Тут мы обсуждаемых готовый девайс, а не мечтаем за большие деньги об STM32 - давайте не отходить от темы!

Trol73
09.12.2015, 22:18
Плисы, STM32, ловля единичных тактов на частотах в десятки мегагерц.. И все ради проверки древних микросхем, которые с каждым днем все труднее достать.
Если РУ-шки предполагается использовать в ретрокомпьютере, то лучший тест - тест, запущенный на этом ретрокомпьютере. Иначе надо городить аппаратного монстра непонятно для чего, тестирование памяти с полной проверкой всех таймингов на соответствие паспортным значениям - та еще задача.
Кмк, от тестера достаточно грубой проверки микросхемы на работоспособность.
Исходники тестера автор выложил, адаптировать под РУ6 не должно быть сложным

HardWareMan
10.12.2015, 06:07
Если РУ-шки предполагается использовать в ретрокомпьютере, то лучший тест - тест, запущенный на этом ретрокомпьютере.
Тем более качественные сокеты сейчас не проблема. Это вам не перепаять микросхему на кооперативной плате низкого качества в 80х.

ZXFanat
10.12.2015, 16:19
Плисы, STM32, ловля единичных тактов на частотах в десятки мегагерц.. И все ради проверки древних микросхем, которые с каждым днем все труднее достать.
Если РУ-шки предполагается использовать в ретрокомпьютере, то лучший тест - тест, запущенный на этом ретрокомпьютере. Иначе надо городить аппаратного монстра непонятно для чего, тестирование памяти с полной проверкой всех таймингов на соответствие паспортным значениям - та еще задача.
Кмк, от тестера достаточно грубой проверки микросхемы на работоспособность.
Исходники тестера автор выложил, адаптировать под РУ6 не должно быть сложным
Согласен с этим мнением. "Аппарат" наверно и нужен, но уж точно не "в массы". В любом случае, "РУ-проверятель" будет работать по упрощённой схеме, и ошибки памяти, после установки микросхем памяти в плату компьютера будут. Я вот поддерживаю "fifan", поменьше " трындеть" не по теме, побольше говорить в тему.

blackmirror
10.12.2015, 18:40
Если посмотреть на используемый микроконтроллер, то можно увидеть, что цикл у него 4х фазный, при частоте 20МГц переключать сигналы он будет как минимум за 200нс, а при частоте 32МГц за 125нс. А к примеру atmega при частоте 16МГц позволяет дёргать ноги с интервалом 62.5 нс. Если посмотреть на характеристики микросхем памяти (http://dplm2008.narod.ru/str/komplects/ozy_din.html), то ближе к концу странички можно увидеть диаграммы и табличку, в которой есть цифры менее 125нс, и даже цифры порядка 10-20нс. В данной задаче у STM32 самый существенный недостаток это питание от 3.3В, но подавать ему на входы(кроме некоторых) 5В вполне можно. Если еще посмотреть в табличку, то можно увидеть, что полное время цикла чтения или записи 230-510на, а на диаграмме переходы сигналов RAS/CAS/WR по времени нифига не совпадают, а 6 переходов через 125нс это уже 750, и стоит ли ради этого включать паяльник и утюг?!

siemensC35
04.08.2018, 14:26
Здраствуйте, еще актуально даное устройство или процес заглох ? Имею в загашнике данную пику . Схема простая, думаю повторить чтобы не валялась без дела

dk_spb
09.08.2018, 12:32
Надо мне оперативно оттестировать некоторое количество РУ7. Собрал себе такую штуку.
Первый мой опыт с PIC. Ощущение полной убогости как PICа, так и компилятора.
Например:
int16 func(void);
if (func()) printf("F") else printf("E");
Если функция вернула 0 - отработает нормально.
Но если функция вернула, например, 5 - if отработает, но дальше программа подвиснет в произвольном месте (как если бы в стеке осталось что-то лишнее). Естественно никаких warning при компиляции нет... Приходится писать if(func()==0) чтобы не висло.

Да, еще из забавного, топикстартер использует исправленные функции из файлика d41256.c, который идёт в комлекте с компилятором. Так вот в оригинальном файлике есть косяки типа:
addressByte(rowAddress); // вывод младших 8-ми бит адреса
output_bit(A9,rowAddress>>2); /// вывод старшего бита адреса; должно быть, естественно >>8
что лишний раз говорит о качестве компилятора. А ведь его продают уже давно, и еще и денег за него хотят..... Мрак....

Главная же убогость в том, что для РУ7 надо работать с 9-ти битными адресами, что для PIC16 с его 8-ми битными портами даёт такие тормоза по производительности, что непонятно кто кого тестирует ;-) Ну и странно то, что в компе РУшка глючит сразу же (не вся, а в 1-2 местах), а на PICе я ей:
- заливку нулями
- заливку 1
- заливку 10101....
- заливку 010101...
- заливку индексом (пишу слово равное адресу слова)
и всё без ошибок.

В общем плюнул на потраченные ресурсы и время, сделаю "дочку" к своей stm32f4-discovery.

dk_spb
10.08.2018, 22:03
Переписал все на stm32f4-discovery. То что на пике тестировалось около 60 секунд - сейчас 2 секунды. Цикл чтения 160ns (чтобы и -150 микросхемы тестировать), с записью похуже (tCAC~72ns tRAC~224ns), но дальше оптимизировать уже не стал.
Добавил тест наличия PageMode и NibbleMode.
Добавил тест рефреша.
Задачу свою решил. Может быть еще добавлю РУ5 и РУ6 и менюшку сделаю (COM порт через USB сейчас только лог выводит и позволяет долгий рефреш-тест пропускать).

- - - Добавлено - - -

А, ну да, еще надо с refresh поиграться. Для буржуйских 41256 для многих не надо рефрешь всех 512 строк делать, достаточно только 256.
А для РУ7 вроде не надо каждые 4 мс.
Но это уже после менюшки.
Хотя NECовская D41256-10 у меня без рефреша 20-30 секунд не сбоит (записали, прочитали, посчитали 30 секунд, прочитали).

Tronix
11.08.2018, 06:47
Переписал все на stm32f4-discovery

А уровни 3.3V-5V согласовывали? Чем? Или память на 3.3V завелась?
Просто интересно.

dk_spb
11.08.2018, 10:51
Нет, на память подаю 5В с той же discovery.
Уровни не согласовывал.
Используемые пины по даташиту помечены как FT (5V I/O tolerant)

siemensC35
24.08.2018, 09:24
Я тебя собрал из того что было на кухне....
Кстати моя первая поделка на РICах , жаль что нету теста РУ6, еще бы жменю сгоревшего мусора отсортировал ;)
https://s19.postimg.cc/pzm5ikwdb/SDC10132.jpg (https://postimg.cc/image/pzm5ikwdb/) https://s19.postimg.cc/en9k0uden/SDC10136.jpg (https://postimg.cc/image/en9k0uden/)