|
|
  |
ATmega8515 + SRAM, Читает чисто, пишет с ошибками и путает адреса... |
|
|
|
Apr 18 2017, 18:27
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(zombi @ Apr 18 2017, 20:37)  т.е. Ваши тесты идут. Осталось еще на оригинальной прошивке проверить Завтра проверю.  Кстати, по поводу того как работает 74HC573...  Вы это имели в виду, что "мусорные" значения остаются на входах до полного перехода LE в "ноль" ? И что мне это даст ? Используя интерфейс внешней памяти 8515 я могу оперировать только дополнительными циклами удержания RD RW, ну Bus Keeper ещё...
Сообщение отредактировал manul78 - Apr 18 2017, 18:54
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Apr 18 2017, 19:28
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(rx3apf @ Apr 18 2017, 22:13)  Я бы в такой ситуации, прежде чем играться с тестированием всего массива, зациклил бы одну пару операций запись-чтение и скопом ее родимую, скопом. Все времянки, как и что. И для полного счастья шину данных (один бит хотя бы) на полпитания притянул бы, чтобы отличать реальный вывод данных от Z-состояния.
Да, и о SRAM - быструю статику можно поискать на старых ненужных "четверках".  Я уже приводил скрин в чём была проблема. Причём каждый раз в совершенно разных адресах. МК читал с шины младший адрес вместо данных. Устранил я это подключением дополнительного D-триггера, который принудительно каждую процедуру чтения/записи в момент выставления на защёлку младшего адреса переводит входы/выходы микросхемы памяти в Z состояние и туда ничего не попадает. Активируется память только тогда когда на A0-A7 и A8-A15 нходится всё что надо. Никаких переходных процессов ни на шине данных ни на адресной шине память не "чует".
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Apr 18 2017, 20:12
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Вовсе не факт, что читался младший байт адреса. Вполне может быть, что этот байт ЗАПИСЫВАЛСЯ в SRAM (вместо данных), а потом уже читался из SRAM совершенно корректно. И, если бы у меня была задача разобраться, как и что - я сказал, как сделал бы. Чтобы все ж понять, в чем причина, а не шаманить с бубном...
|
|
|
|
|
Apr 18 2017, 20:41
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Upd: Вот за что я уважаю буржуйские форумы, так это то что там посетители максимально кратко и по делу отвечают на поставленные вопросы. Конкретно об ATmega8515. " If you do go with the external ram , be careful of the clock speed. Using a 4 MHz crystal , will require a SRAM with 70 nS access time or less. Also the data latch (74HC573) will have to be from a faster family such as a 74FHC573 if you go beyond 4 MHz. " Т.е. уже для 4 МГц уже нужна 70нс (и менее) память и быстрая "защёлка" серии FHC... Я при помощи "говна и палок" умудрился добиться стабильной работы 70нс памяти на 8 МГц-ах, то есть в 2 раза быстрее. Биты SRW10 и SRW11 у меня на максимуме уже. Дальше некуда. Теперь вопрос к полякам, у которых всё работало на 120нс-ой памяти и 8 МГц-ах... 1 машинный такт на 8 МГц-ах = 125нс... "Ногодрыганье" ? Буржуи так прямо и ответили: что это - невозможно. У меня уже чёт одно объяснение напрашивается, что кварц на 7.3728 подключен чисто для отладки,настройки по USART. А на самом деле МК работает от внутреннего генератора на более низких частотах 1 , 2 или 4 МГц... Завтра фьюзы посмотрю. Вот это будет номер... Цитата(rx3apf @ Apr 18 2017, 23:12)  Вовсе не факт, что читался младший байт адреса. Вполне может быть, что этот байт ЗАПИСЫВАЛСЯ в SRAM (вместо данных), а потом уже читался из SRAM совершенно корректно. И, если бы у меня была задача разобраться, как и что - я сказал, как сделал бы. Чтобы все ж понять, в чем причина, а не шаманить с бубном... Пишет всё чисто. Изначально. Кучу тестов прогнал... Читал криво. Причём в совершенно разных местах каждый прогон теста. Иногда даже вообще без ошибок.
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Apr 18 2017, 20:57
|

Гуру
     
Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106

|
Цитата(manul78 @ Apr 18 2017, 23:41)  Upd: Вот за что я уважаю буржуйские форумы, так это то что там посетители максимально кратко и по делу отвечают на поставленные вопросы. Ну конечно буржуйские только правильно всегда говорят. Это ж не наши теоретики, паяльника никогда не державшие! Цитата(manul78 @ Apr 18 2017, 23:41)  Т.е. уже для 4 МГц уже нужна 70нс (и менее) память и быстрая "защёлка" серии FHC... Скорее всего Вас там просто тролят. Цитата(manul78 @ Apr 18 2017, 23:41)  Теперь вопрос к полякам, у которых всё работало на 120нс-ой памяти и 8 МГц-ах...  Фантастика судя по буржуйскому форуму. Я Вам еще раз повторяю : при тактовой частоте 7.372.800Hz должна работать даже 240-нс память без всяких SRW10 и SRW11. А что за буржуйский форум? просто интересно.
|
|
|
|
|
Apr 18 2017, 21:46
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(Baser @ Apr 19 2017, 00:23)  Так что дело у вас не в регистре защелки. Это я понял уже...  Замечу, что это как у меня сейчас через триггер и в момент сигнала ALE вход ~CE2 переводит IO памяти в Z состояние. Просто CE1- тупо подтянут к земле. Ошибок нет. Базовая схема подразумевает что CE1 тупо посажен на землю, а ~CE2 на шину питания.То есть IO памяти всё время открыты. Что там на них в процессе перехода на шине - одному Богу известно...
Сообщение отредактировал manul78 - Apr 18 2017, 21:48
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Apr 19 2017, 05:28
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(zombi @ Apr 19 2017, 00:57)  Во жесть! Уточните, для себя, каким сигналом открываются IO памяти. Под "открыты" я имел в виду что они не в высокоомном состоянии, и их входные цепи могут как-то держать заряды. За счет внутреней емкости входов например. Как я еще могу объяснить нахождение на мультиплексированной шине маладшего адреса в момент когда МК уже перевел их с выхода на вход и читает данные? По поводу "уточните", "прочтите", "узнайте" и пр - не надо пожалуйста. Вы считаете что буржуи троллят меня? А по моему троллите меня Вы! Я создал топик чтобы узнать конкретные соображения по поводу своей проблемы, а не хлебать чей-то снобизм и ответы типа "Где находится Пекин?" - "На Земле... Географический справочник почитайте..."
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Apr 19 2017, 06:20
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
QUOTE (manul78 @ Apr 19 2017, 08:28)  По поводу "уточните", "прочтите", "узнайте" и пр - не надо пожалуйста. Вы считаете что буржуи троллят меня? А по моему троллите меня Вы! Простите, но нога ~OE работает одинаково у всех микросхем - ОЗУ, ПЗУ, регистров, шинных формирователей, дешифраторов (что еще забыл?). И ее описание занимает две-три строчки. Это примерно как 2+2 = 4. Какой реакции на форуме математиков вы ожидаете на вопрос "сколько будет 2+2"?
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|