Итак, выделю отдельным постом, может кому пригодится
Итак, по данной схеме можно собрать расширение ОЗУ до 128 (256) кБайт на РУ7 или на импорте xx1x256 ("1" это ОЗУ с организацией 1х256кбит). Для 128кБайт триггер V4/1 можно не устанавливать.
Первым делом соединяем все н.1 у РУ7 вместе и подаем на них GND (лог. 0, он же "общий", он же "земля"). Проверяем, в таком включении они должны работать в 48кБ режиме без проблем, если что то не так ищем битую микросхему (мне попалась одна в линейке свежекупленных РУ7К).
Теперь по порядку:
1-ый вариант 128кБайт:
-> A1, A8, A14, A15, D0...D7, /WR, /IORQ, /M1, /RESET берем с соответствующих ног процессора. Если установлен контроллер дисковода, то /IORQ берем оттуда - /IORQOUT (вообщем тот, который блокируется при обращении к портам BDI)
-> H1 - н.15 DD16 или н.2 DD3
-> H2 - н. 14 DD13 или н.6 DD3
-> RAS - н. 1 DD16
-> V0 - н. 3 DD7
-> V6 - н. 6 DD8
Режем:
DD13 - отрезать н.4 и н.3 от V0 и V6 соотв. и подать на них GND
DD15 - отрезать н.13 от GND и подать A15VIDEO
DD16 - отрезать н.3 от A8 и подать на нее GND
DD17 - отрезать н.10 и н.13 от A14 и A15 соотв. и подать вместо них A14RAM и A15RAM
Отпаиваем GND от н.1 РУ7 (если подпаивали для проверки) и подаем на них MA8.
Обязательно собираем блокировку /WE при записи в 0-ю страницу. Запустится все и без нее, но работать будет все с глюками и тесты будут выдавать ошибку.
Режем дорожку от н.8 DD22. В схеме нумерация ног указана для удобства - м/с можно аккуратно напаять н.7,8,14 на DD22, A14 и A15 взять с соседней ИД7, а /WE' подпаять с обратной стороны платы (там есть переходное отверстие).
ROMCS можно пока не трогать, он нужен для переключения страниц ПЗУ. Если стоит 27c256 с Basic48 и TR-DOS этого вполне хватит на первое время
Включаем, если все собрано правильно то получим Ленинград-2 со 128кБайт памятиТестим, играемся, радуемся жизни и если сильно начинает не хватать памяти, то
2-ой вариант 256кБайт
Если не паяли, ставим триггер V4/1.
Отпаиваем от н.3 DD16 GND и подаем на нее A17RAM.
Все ! Теперь получится Ленинград-2 с 256кБайт ОЗУ по стандарту Scorpion 256, можно попробовать подать D6 вместо D4 и запись по /WR#7FFD - должен получится аля Пентагон-256, но как на такое отреагируют менеджеры памяти сказать трудно
p.s. Теоретически могут возникнуть проблемы с РУ7 и регенерацией. Тут надо будет поиграться с задержкой RAS кондером малой емкости либо буфером из нескольких корпусов ЛЛ1 или ЛН1. У меня с прогревом начинали появляться артефакты, но мучать RAS не стал, просто заменил всю линейку на импорт и все заработало без проблем.
p.p.s. Аналоги м/с указанных на схеме:
74LS00 - 555ЛА3
74LS02 - 555ЛЕ1
7432N - 555ЛЛ1
7474N - 555ТМ2
74LS138N - 555ИД7
74LS174N - 555ТМ9
74LS253N - 555КП12
74LS257N - 555КП11
555 серию можно менять на 1533 (а для КП11 даже рекомендуется)
Уф !! Вообщем где то так. В архиве схема в png (300dpi) и для Eagle 5-ой версии.
lenin2_256kb.zip
Подключение SIMM 256KB/1MB
ПродолжимSIMM подключается по типовой схеме (в данном случае учитывается что уже была собрана схема расширения до 256кБ на РУ7, если хочется сразу подключить SIMM то все манипулации по замене РУ5 на РУ7 пропускаются, а сигналы берутся с соответствующих ног РУ5 , сигнал A8 SIMM берется со схемы расширения - МА8) в остальном процедура расширения остается такой же):
Старое ОЗУ вытаскиваем или если оно впаяно, то отрезаем /CAS и подаем на него +5В, чтобы заблокировать ОЗУ на плате.Код:k3нD3<──┐ │ ┌──┐ ИР22 └──┤ 1o─┐ ┌──┬──┐ │ │ │ ╔─13┤D0│Q0├12╗ └──┘ │ SIMM 30pin-1Mb ║─17┤D1│Q1├16║ │ ╔══╦═══════╗ ║─18┤D2│Q2├19║ │ +5В ║ 1│ Vcc ║ D0..D7 с Z80 ║──7┤D3│Q3├6─║ └───────║ 2│ /CAS ║ ═══════════╣──3┤D4│Q4├2─╠══════╦─────────║ 3│ D0 ║ ║─14┤D5│Q5├15║ ║ PY7:7 ║ 4│ A0 ║ ║──4┤D6│Q6├5─║ ║ PY7:6 ║ 5│ A1 ║ ╚──8┤D7│Q7├9─╝ ╠─────────║ 6│ D1 ║ ├──┤ │ ║ PY7:5 ║ 7│ A2 ║ │ │ │ ║ PY7:9 ║ 8│ A3 ║ +5Bo─11┤C │ ├1─────┐ ║ общий ║ 9│ Gnd ║ └──┴──┘ │ ╠─────────║10│ D2 ║ │ ║ PY7:10║11│ A4 ║ │ ║ PY7:11║12│ A5 ║ │ ╠─────────║13│ D3 ║ │ ║ PY7:12║14│ A6 ║ │ ║ PY7:13║15│ A7 ║ │ ╠─────────║16│ D4 ║ │ ║ PY7:1 ║17│ A8 ║ GND ────┼────────────║18│ A9 ║ │ ║ ничего ║19│ A10 ║ │ ╠─────────║20│ D5 ║ o──╫─────────║21│ /we ║ ║ общий ║22│ Gnd ║ │ ╠─────────║23│ D6 ║ │ ║ ничего ║24│ NC ║ │ ╠─────────║25│ D7 ║ │ ║ ничего ║26│ ParOut║ │ ║ PY7:4 ║27│ /RAS ║ │ ║ ничего ║28│/ParCAS║ │ ║ ничего ║29│ ParIn ║ │ ║ +5B ║30│ Vcc ║ │ ║ ╚══╧═══════╝ k8нD22<───┘ ║ ║ ╙─────> Сигналы D0-D7 kD35 соотв. к 3, 4, 7, 8, 13, 14, 17, 18
Этот модуль можно сделать на отдельной маленькой плате , как раз рядом с ОЗУ и D35, так как все необходимые сигналы там есть, и длина проводов будет минимальной. Включаем, если все ок, то теперь у нас есть Ленинград-2 256KB на SIMM
Как теперь получить 1МБ будет позже ...
Ленинград 2 1MB
Начинаем получать Ленинград 2 с 1Мб памяти, для тех кто будет делать с нуля , ниже полная схема расширения (но в любом случае доработки, которые делались для расширения до 256кБ надо будет проделать). Для тех у кого есть, достаточно будет добавить еще по одной ТМ2, КП11 и КП12.
Полная схема расширения до 512кБ/1MБ:
Теперь дополнения по тому что надо сделать (после того как сделаны все доработки для режима 256кБ), чтобы заработал метр:
-> A9 берем с соответствующей ноги процессора
-> V1 - н. 2 DD7
-> V7 - н. 7 DD8
Режем:
DD13 - отрезать н.12 и н.13 от V1 и V7 соотв. и подать на них GND
DD16 - отрезать н.6 от A9 и подать на нее A18RAM со схемы расширения.
A9 на SIMM отпаиваем от GND и подаем на него MA9 со схемы расширения. Собственно и все доработки![]()
Теперь по поводу /WR#xxFD (запись в порт) и Dx (разряд шины данных), самих стандартов на 1Мб существует много, поэтому здесь остается поле для творчества. Ниже табличка режимов, которые потестировал сам и которые нормально должны восприниматься программами:
Архив с картинкой и схемой (png и Eagle 5): lenin_1Mb.zipКод:D5/1 | D6/1 Scorpion 1024 /WR#1FFD D6 | /WR#1FFD D7 Pentagon 512 /WR#7FFD D6 | /WR#7FFD D7
УффНапоследок останется расширение с помощью CPLD XC9536XL, для нетерпеливых в аттаче схема для ISE Schematic: 1Mb_AY_Xillinx.zip





) и подаем на них MA8.
Ленинград-2 + 256кБ + BDI (FDD Teac 5.25 + 3.5) + YM2149 + PS/2 Keyb(Caro)
Ответить с цитированием