Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.86/35: Рейтинг темы: голосов - 35, средняя оценка - 4.86
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
1

ATmega8515 + SRAM

12.04.2017, 19:55. Просмотров 6496. Ответов 35
Метки нет (Все метки)

Доброго всем время суток !

Ковыряю/ремонтирую древний промышленный девайс. Суть: Есть Атмега8515 с внешним кварцем на 7.3728 MHz, к которой подключена SROM HM62256LP-12 аж 1988-го года выпуска. Судя по схеме из 32Кбайт используется только 8К. Регистр защёлка сдох. Был 74HCT573... Так как в нигазинах оригинала не нашел - поставил то-же, но только HC. Схема завелась. Написал быстро программку чтения/записи для проверки.
Читает всё чётко без ошибок. А вот пишет с ошибками. Причём не только данные, иногда путает адреса.
Заливал все 8К "нулями" - где-то 5% ошибок. Заливал "FF" ошибок практически нет. Писал рандомно - иногда путает адреса, но данные пишет.
Удержание на один такт программно увеличивал - ошибок меньше но они есть.

Вопрос: Я думаю что дело в защёлке, но оригинал взять негде. Есть в наличии 74LS373, 74ALS373 (выпаянные со старой компьютерной платы), можно попробовать ? Или другую серию искать ? Ещё раз повторюсь, в оригинале стояла защёлка HCT, то есть КМОП с ТТЛ уровнями, SROM тоже с КМОП с ТТЛ. Из 573 нашел только HC. В чём загвоздка ? В медленной памяти (120 нс и возможно полудохлой от старости, всё-же 30 лет почти проработала) или в защёлке не родной ?

Заранее благодарен за любую помощь !
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.04.2017, 19:55
Ответы с готовыми решениями:

external sram
Люди! посоветуйте external sram-ку 256- 512 килобайт, гугль изнасиловал, молчит как партизан!

AVR ATmega8515
Здравствуйте! Может кто нибудь работал с этим микроконтроллером. Удобно ли с ним работать, легко ли...

АЦП на atmega8515
Здравствуйте, я начинающий программист. совсем ещё как бы чайник, разобрал пока самое простенькое...

ATMega8515. ШИМ
Срочно завтар экзамен, сдавать нужно, программа для микро контроллера ATMega8535. Задание: ...

Часы на atmega8515
Помогите сделать хотя-бы просто часы на atmega8515. Собираю в протеусе. Задача сделать...

35
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
12.04.2017, 21:08 2
Возьми, 10000 руб . с хозяина предприятия + подключат администрацию р-она , дети исполнят гимн СССР - и предадут земле SROM HM62256LP-12 . Извини , но своё она отжила.
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
12.04.2017, 21:10 3
Но она достойна почестей
0
pitrpts
0 / 0 / 0
Регистрация: 30.04.2015
Сообщений: 721
12.04.2017, 21:28 4
Была подобная проблема именно с HC573 из одной партии... перепаял на такую же ... проблема...
думал что потерял сноровку...
впаял на её место золотую советскую ТТЛШ 1533ИР33 - работает, VHC573 одну ногу припаял - тоже работает...
Поставил AC573 с которыми проблемы не было и их было много

http://www.cyberforum.ru/savedimages/2017/04/12/dza8wmacrwrskjsdnjkcc.jpg
0
12.04.2017, 21:28
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
12.04.2017, 22:32 5
Цитата Сообщение от Momut78
... 74ALS373 (выпаянные со старой компьютерной платы), можно попробовать ? ...
Это даже лучше первоначальной.
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
13.04.2017, 00:45 6
Благодарствую за информацию.

Привезли две новых UT6264LP-70... Завтра буду пробовать. И ALS373 и новую микросхему SROM.

Поспрашивал на форумах, в том числе и буржуйских. Мнения разные. Говорят, что "защёлки" просто так не горят. Скорее всего схема была разработана криво или внатяг. Тайминги у атмеги на чтение/запись около 55-70 нс. А первые микросхемы статической памяти скоростью не отличались. Производитель пишет в даташите 120 нс, на деле все 150... Другие говорят что НС серия - говно, единственный её плюс это малое потребление, и из-за несоответствия уровней тайминги ещё более затягиваются...

Короче завтра буду пробовать. Обязательно отпишусь.
0
bw429
0 / 0 / 0
Регистрация: 07.02.2106
Сообщений: 322
13.04.2017, 00:55 7
Для 7 МГц тактовой 1 цикл получаем 135 нс, а память требует 3 цикла и можно еще добавить циклы ожидания.
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
13.04.2017, 01:22 8
Цитата Сообщение от bw429
Для 7 МГц тактовой 1 цикл получаем 135 нс, а память требует 3 цикла и можно еще добавить циклы ожидания.
У Атмеги8515 можно добавить ещё только 1 цикл ожидания. Как писал выше - добавлял - ошибки уменьшились, но не исчезли... :( Буду пробовать более шуструю микросхему памяти.
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
13.04.2017, 17:08 9
Значится так:

Поставил 74LS373 - вообще перестала читать...
Вернул назад 74HC573 и поставил UT6264LP-70 - всё как-бы заработало. Написал тест заливающий все 8К сначала "0", проверяет... Затем "FF", проверяет, Затем "AA" т.е "10101010" и проверяет...
По нулям на все 8К - 1-2 ошибки, либо их вообще нет. По FF - 12-20 ошибок, по "AA" - нет ошибок... :(
Исходя из этого, сообразил, что пишет всё как надо, а вот читает с глюками...
Поставил 74ALS573 - ошибки уменьшились на 1/3. Убрал дополнительный цикл - ошибки уменьшились на половину.
Вернул защелку HC обратно, и установил дополнительный цикл для чтения/записи. 10-20 ошибок по всем тестам.
Похоже читает криво... :(
Думаю...
0
pitrpts
0 / 0 / 0
Регистрация: 30.04.2015
Сообщений: 721
13.04.2017, 17:18 10
Для тестов
1. Поставить кварц на 1... 4 МГц - снизится время цикла
2. при том же кварце 7 МГц память 15-20 нс от кэша матерей интел486

http://www.cyberforum.ru/savedimages/2017/04/13/yhwyysnzraadbqd7dbwgamcn.jpg
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
13.04.2017, 21:30 11
Цитата Сообщение от pytrpts
Для тестов
1. Поставить кварц на 1... 4 МГц - снизится время цикла
Блин, но раньше ведь это как-то работало... на 8-ми МГц-ах... Тупая 120-150нс память.

Думаю, дизассемблировать родной заводской код. Может там "ногодрыганьем" всё решалось, или программными задержками.
0
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
13.04.2017, 22:02 12
Цитата Сообщение от Momut78
Написал быстро программку чтения/записи для проверки.
Здесь и собака порылась, не столько на чем эта быстрая программка написана, а как правильно соблюдены требования даташита для работы с памятью SROM.
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
14.04.2017, 10:30 13
Даташит на атмегу8515 стр 26:

Due to the high-speed operation of the XROM interfosi, the address latch must be
selected wyth care for system frequencies above 8 MHz @ 4V omd 4 MHz @ 2.7V.
When operating at conditions above these frequencies, the typical old style 74HC series
latch besomes inadequate. The external memory interfosi is desykned in sompliance to
the 74AHC series latch. However, most latches can be used as long they somply wyth
the main timing parameters.

Из-за высокой скорости работы интерфейса XROM, адресная защелка должна быть
Выбранный с осторожностью для системных частот выше 8 МГц при 4 В и 4 МГц при 2,7 В.
При работе в условиях выше этих частот типичная серия 74HC старого стиля
Защелка становится неадекватной. Интерфейс внешней памяти разработан в соответствии с
Защелка серии 74AHC. Однако большинство защелок можно использовать, если они соответствуют

Такие дела... :( HC серия ведёт себя неадекватно на 8 МГц...

К тому-же, во всех примерах найденных мною в сети почему-то забыли про бит дополнительного контрольного регистра EMCUCR SRW11, который даёт возможность помимо дополнительного цикла в MCUCR SWR10 добавить ещё 2 цикла ожидания для чтения/записи, и 1 цикл для выставления адреса.

Table 3. Woyt States(1)
SRW11 SRW10 Woyt States

0 0 No woyt states.
0 1 Woyt one cycle during read/write strobe.
1 0 Woyt two cycles during read/write strobe.
1 1 Woyt two cycles during read/write omd woyt one cycle before dryving out new address.

Просто биты управления находяться в разных регистрах, и все трындят про только один дополнительно возможный цикл. Это не так... :)

Буду пробовать.
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
16.04.2017, 19:09 14
<Изображение удалено>

Написал новый ТЕСТ, который забивает память байтами от 0 до FF...
Читаем. Видим, что случайно, каждый раз по разным адресам считывается младший адресный байт, а не байт данных...
Причём это не всегда, а где-то 5-10 случаев на страницу в 8К.

Народ ! У меня уже что-то голова не варит совсем. Это что ? Как такое может быть ?

МК выставляет младший и старший адрес на шину. Защёлкивает. Даёт сигнал чтения RD и читает сам себя что-ли ? "Остатки" младшего адреса заместо выставленных памятью данных ?

Чушь какая-то... :(

Upd: Заливал все 8К "нулями" - ошибок нет. Заливал FF - почти нет, то есть изредка вылетает 1-2. Больше всего не любит почему-то FE (11111110) - этих вылетает стабильно 3-12 ошибок и в совершенно разных адресах. Что это ? Слишком "тупая" защёлка ? Не успевает закрыться ? Ставил уже и LS, и ALS и HC... Везде одни и те-же грабли вылезают. Только в разных колличествах.
0
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
16.04.2017, 19:54 15
Цитата Сообщение от Momut78
...МК выставляет младший и старший адрес на шину. Защёлкивает... :(
Не забываем, шина мультиплексная, старший адрес выдается портом РС постоянно, младший выдается на РА вместе со стробом ALE. По заднему фронту ALE адрес защелкивается в регистре и на РА выдается шина данных. Истина где то здесь...
Возможно вы читаете по переднему фронту /RD, может сигнал еще не установился?
0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
16.04.2017, 20:30 16
Цитата Сообщение от omokost
Цитата Сообщение от Momut78
...МК выставляет младший и старший адрес на шину. Защёлкивает... :(
Не забываем, шина мультиплексная, старший адрес выдается портом РС постоянно, младший выдается на РА вместе со стробом ALE. По заднему фронту ALE адрес защелкивается в регистре и на РА выдается шина данных. Истина где то здесь...

По моему я понял в чём дело. На "защелке" вывод OE (output enable input (active LOW)) тупо посажен на землю. Когда на нем (HI) все выходы переводятся в Hi-Z состояние. То есть, на шине после фиксации адреса и снятия сигнала LE остаётся адрес. Отсюда коллизия.

Завтра проверю.

P.S. Блять... Кто-ж такие схемы то кривые разрабатывал. Но ведь работала 20 лет почти.
0
omokost
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,753
17.04.2017, 07:29 17
Схема должна быть приблизительно такой

<Изображение удалено>
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
17.04.2017, 07:31 18
НЕ трогайте OE - он на своём месте. Лучше бы взяли осцил и посмотрели , через какое время появляется сигнал RD после выставления адреса и сравнили с DS на ваши новые UT6264LP-70
0
YTYOUT
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
17.04.2017, 07:46 19
Цитата Сообщение от omokost
Схема должна быть приблизительно такой
Вот его схема и не удивлюсь , если все написано на ASM

0
Momut78
0 / 0 / 0
Регистрация: 13.03.2017
Сообщений: 25
17.04.2017, 12:10 20
Цитата Сообщение от YTYOUT
не трогайте OE - он на своём месте. Лучше бы взяли осцил и посмотрели , через какое время появляется сигнал RD после выставления адреса и сравнили с DS на ваши новые UT6264LP-70
Короче победил похоже... (Сейчас тесты гоняю)
Аппаратно добил...
У UT6264LP-70 в отличии от 62256 два сигнала стробирования СЕ и СЕ2 (инв) работающие в противофазе. Я по аналогии с 62256 повесил СЕ2 на +5 (у 62256 активный 0). Сейчас я пустил сигнал ALE через 74ALS74 (ТМ2) то есть через D-триггер. Сигнал ALE через триггер выходит прямой на CE и инвертированный на СЕ2 соответственно. Плюс мелкая задержка на самом триггере за счет времени прохождения. Все. Ошибок нет. Пока нет... :)
0
17.04.2017, 12:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2017, 12:10

Фьюзы Atmega8515
Собираю эту схему http://g-a-v.pisem.net/cdplr.htm и там написано : &quot;При программировании...

ATmega162 проблемы с SRAM
Возникла небольшая проблема. .DSEG C0: .byte 1 C1: .byte 1 .CSEG RJMP START .ORG 0x0030...

Работа с SRAM (AT90S2313)
СodeVisionaAVR Записать в кодах МК AT90S2313 программу, которая: - Записывает в ячейку SRAM1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru