inventor 0 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба есть миландровский контроллер 1986ВЕ3 мне нужно повесить 2 микросхемы SRAM на шину адреса микросхемы такие: 1645РУ4 1x16 Мбит делаю такой схематик 2 микрухи параллельно - одня для 2х младших разрядов, другая для 2х старших теперь с адресами проблема сами адреса сделал как в миладнровской мезонинной плате адреса микрухи A0...A19 подсоединяются к шине на адреса A2...A21 то есть со смещением, чтобы я с каждой адресной линии читал 32 бита данных (4 байта) сигналы ~WE ~OE и ~BHE ~BLE подцепил к соответсвующим выводам контроллера осталось 2 вывода ~CE1 и CE2 я хочу чтобы моя память попала в регион 0x60000000 и выбирать память адресными выводами контроллера ~CE1 и CE2 на ~CE1 должен быть 0 а на CE2 единица я подцепил выводы памяти ~CE1 к выводу A31 а вывод CE2 к контроллерному A30 но хотелось бы сделать так, чтобы я управлял 2-мя единицами и сделать так: A30 напрямую к CE2 а A29 через инвертор на ~CE1 то есть если приходит адрес 0x60000000 я выбираю микросхемы памяти и работаю с ними. можно ли так делать или есть какие то другие решения? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Если вешаете два 16-разрядных ОЗУ на 32-разрядную шину, то у них входы CE должны быть соединены вместе. Разве это не очевидно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inventor 0 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Если вешаете два 16-разрядных ОЗУ на 32-разрядную шину, то у них входы CE должны быть соединены вместе. Разве это не очевидно? я так и сделал ~CE1 с ~CE1 CE2 с CE2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Ничего не понимаю. Короче, на м/с ОЗУ входы CE2 соединяем с питанием 3,3В, а входы nCE1 - к выходу МК nCE1. Зачем там нужны A30, A31 - ума не приложу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inventor 0 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Ничего не понимаю. Короче, на м/с ОЗУ входы CE2 соединяем с питанием 3,3В, а входы nCE1 - к выходу МК nCE1. Зачем там нужны A30, A31 - ума не приложу. у менЯ еще устройства будут на этих шинах висеть поэтому нужно их будет разделять. и чтобы не было повторения на других адресах которые попадают Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Ну, тогда советую повнимательнее посмотреть на старшие линии адреса. Сомнительно, что A31 можно активизировать в диапазоне адресов, приписанном к nCE1. А активизировать м/с ОЗУ раздельно, когда они сидят на одной 32-разрядной шине и должны уметь работать с 32-разрядным словом вместе одновременно, - это ошибка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inventor 0 4 августа, 2017 Опубликовано 4 августа, 2017 · Жалоба Ну, тогда советую повнимательнее посмотреть на старшие линии адреса. Сомнительно, что A31 можно активизировать в диапазоне адресов, приписанном к nCE1. А активизировать м/с ОЗУ раздельно, когда они сидят на одной 32-разрядной шине и должны уметь работать с 32-разрядным словом вместе одновременно, - это ошибка. они вместе работают - все правильно у меня похоже вас ввело в заблуждение названия пинов у каждой микрухи по 2 вывода ~CS1 и CS2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inventor 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба память чтение заработали - не было сигнналов адреса A19 и A20 , которые были на ногах PORTI - я не протактировал его правильно щас исправил. но появилась доругая пробема. данные пишутся по 4 слова за раз то есть пишу по адресу 0x60200000 число оно повторяется на адресах 0x60200004 0x60200008 0x6020000C не понятно, почему такое происходит Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться