Woxem, в первом сообщении. Могу и платкой поделиться.
Вид для печати
Woxem, в первом сообщении. Могу и платкой поделиться.
Было бы замечательно
Woxem, мы с вами рядом живём. Будет возможность - приезжайте.
Есть в схеме небольшой недочет. Во время адресного обмена формируются сигналы _RAMCS и _ROMCS. Как я понимаю они останутся и после завершения адресного обмена. И нехорошая ситуация может произойти, если следующий обмен не адресный, т.е. без сигнала SYNC, но с использованием DIN. Это чтение безадресного регистра или чтение вектора прерывания. В данном варианте легко выставленное значение складывается по ИЛИ со значением ОЗУ или ПЗУ (W27C512). Сигнал _DIN через буфер преобразуется в _RD. Но так как обмен адресный, то необходимо через ИЛИ пустить _DIN и _SYNC.
Alex_K, учту замечание.
- - - Добавлено - - -
Сейчас пытаюсь избавиться в схеме от второй EEPROM. Примерно как у MM d музыкальном звонке.
Фронт сигнала _AR использую для управления регистром, а AR (инвертированный _AR) для управления нулевым разрядом адреса EEPROM.
https://pic.maxiol.com/thumbs2/16560...181782.rom.png
Вроде даже что-то получается: считываются из ПЗУ код C0C0H, а дальше снова что-то идет не так...
https://pic.maxiol.com/thumbs2/16560...2.oneeprom.png
Проверил еще раз схему, устранил пару ошибок. Чтобы убедиться, что считывание из ПЗУ происходит правильно, залил тестовую прошивку. С адреса C000H (140000) записал: AAH, 55H, 00H, FFH.
В результате получается такая картинка:
https://pic.maxiol.com/thumbs2/16560...eprom55aa1.png
Вроде все пока правильно.
Но когда вставляю ПЗУ с 055 прошивкой - не запускается.
https://pic.maxiol.com/thumbs2/16561...eepromdata.png
https://pic.maxiol.com/thumbs2/16561...eepromaddr.png
Виснет обычно и терминал молчит.
В другой, известной мне реализации, используются SYNC, WTBT и DIN.
Ну, например, здесь https://github.com/1801VM3/1801VM3-Board
Ещё у меня, но я не люблю схемный дизайн, так что всё это было давно переписано на VHDL