┌────────────────────────────────────────┐
│ КОНТРОЛЛЕР АЛЬТЕРНАТИВНОЙ ПАМЯТИ │
└────────────────────────────────────────┘
(C) Криницын Сергей
(Пользователям ПК "БАЙТ" посвящается)
Являясь пользователем ПК "БАЙТ" я уже
привык к тому, что отдельные проги рабо-
тают на нем тормознуто. Но если раньше 90%
таких прог составляли демы, то в настоящее
время этот глюк встречается повсеместно:
от BEST VIEW до BORN DEAD.
Как выход из положения обычно исполь-
зуется турбирование. Так например один из
вариантов схемы разгона был опубликован в
газете ПОЛЕСЬЕ. Схема состояла из двух
частей: 1-фактически разгоном не является,
а просто устраняет ошибку разработчиков
"БАЙТА". (Эта ошибка заключается в оста-
новке CPU при попытке регенерации им мед-
ленной памяти. Эта доработка весьма эффек-
тивна в загрузчиках, но она не спасает от
торможений связанных с рассположением об-
работчиков прерываний в медленной памяти,
что встречается весьма часто.)
Вторая схема и была турбированием как
таковым, но... Меня сразу насторожило что
сигнал INT сразу отрубает турбирование.
Как же так, ведь INT асинхронен сигналу
M1, и переключение тактовой частоты во
время выполнения команды приводят к сбоям
CPU. Но так как автор утверждал что схема
рабочая, я решил попробовать. Для издева-
тельств был изьят комп моего знакомого
(почему скажу после) на коем и была испро-
бована схема (на компе конечно :) ). Как и
ожидалось, комп сразу завис. После синхро-
низации переключения тактовой частоты сиг-
налом M1 все вроде заработало. И вот за-
пускаю TEST 4.22. Ну тактов добавилось,
но надпись о тормозящей памяти никуда не
делась, просто сообщается, что мол турба
включена. Запускаю другие проги - кое что
пошло, но отнюдь не все. Кстати оцифровки
звучат весьма ерундово. Ну и выясняется
интересная деталь - некоторые проги на ту-
рбе сбрасываются, не сразу, а через 15-30
минут работы. К таким прогам например от-
носится и ZASM 3.10, где и набивается
данная статья. Почему зто происходит, ос-
талось для меня загадкой, но вывод был од-
нозназначен: такая турба мне нафиг нужна.
Комп был приведен в первоначальный вид и
возвращен владельцу.
Кстати комп был выбран потому, что там
стоял Z80B, если у вас в компе стоит Z80,
Z80A, либо их аналоги ( часто встречаются
ИНТЕГРАЛОВСКИЙ, а также аналоги произ-
водства бывшего ГДР ) то даже не пытайтесь
делать разгон до 7Мгц - ничего не получит-
ся. Замена проца на Z80B или Z80H удо-
вольствие малое, т. к. после таких издева-
тельств материнской плате может прийти ...
ну думаю, сами догадалиь что. Как выход
из положения, предлагаю схему ентого само-
го контроллера альтернативной памяти. Ста-
вить его можно на любой комп с раздельными
полями памяти, при этом ковырять материнку
почти не надо. Естественно способ требует
большего количества корпусов, чем турбиро-
вание, но на мой взгляд он этого стоит.
И так вам нужно:
К1533ЛИ1-1шт.
К1533ЛЛ1-2шт.
К1533ЛА3-1шт.
К555КП12-1шт.
КР565РУ5-8шт.
Микрухи как видете весьма распостранен-
ные, только не советую заменять их анало-
гами 155 и прочих тормозных серий, а также
изменять предлагаемую ниже схему - это мо-
жет вызвать тормоза. Это проявляется в
появлении во время работы программ, на эк-
ране, черточек и атрибутов. Если все соб-
рано правильно, должно заработать сразу и
без всяких глюков.
Теперь немного о работе схемы. Принцип
действия основан на подмене медленной па-
мяти дополнительной (альтернативной) ли-
нейкой быстрой памяти при обращении к
аресам #5B00-7FFF, а также дополнительным
банкам медленной памяти.
При этом в каждом банке медленной памя-
ти остается кусок незаменяемой памяти раз-
мером в экран. Это сделано специально, т.
к. у меня стоит прибамбас позволяющий
просматривать их все, т. е. 4 экрана, а не
два (для реализации аппаратного триколо-
ра).
Ну я думаю я вас достаточно загрузил, и
вы поняли, весь этот бред. Поэтому зак-
ругляюсь и привожу схему девайса.
CS>──────────────────────────┬─x
┌─┐ ┌─┐ ┌─┐ │ ┌─┐
A15'>─┬┤&o──┤&o───────┐ ┌┤&o───┤1├>CS1
└┤ │ ┌┤ │ │ ├┤ │ ├─┤ │
└─┘ │└─┘ │ │└─┘ │ └─┘
A14'>──────┘ │ └──┐ │
┌─┐ ┌─┐ │ ┌─┐│ │ ┌─┐
A11>───┤&├──────┤&├┐ └─┤1├┤ └─┤1├>CS2
A12>───┤ │ ┌┤ ││ ┌─┤ │└───┤ │
└─┘ │└─┘│ │ └─┘ └─┘
A10>───────┐┌─┐│ │ │
┌─┐ └┤1├┘ │ └────────────┐
A8>────┤&├──┤ │ │ │
A9>────┤ │ └─┘ │ ┌─┐ ┌─┐ │
└─┘ └────┤1├───┬┤&o─┤
A13>────────────────────┤ │ ├┤ │ │
└─┘ │└─┘ │
│ │
┌────────────────────┘ │
│ ┌─────────────────────┘
│ │ КП12
│ │ 6┌──┬──┐
│ │ ├──┤A1│ │
│ │ 5│ │ │
│ └──────┤A2│ │7
│ 4│ │ A├───┐
│ ├──┤A3│ │ │
│ 3│ │ │ │
│ +>──┤A4│ │ │
│ 14├──┤ │ │
│ ┌────────┤S1│ │ │
│ │ 2│ ├──┤ │
│ │ ┌──────┤S2│ │ │
│ │ │ 10├──┤ │ │
│ │ │ ├──┤B1│ │ │
│ │ │ 11│ │ │ │
└──────────┤B2│ │9 │
│ │ 12│ │ B├──┐│
│ │ +>┬──┤B3│ │ ││
│ │ │13│ │ │ ││
│ │ └──┤B4│ │ ││
│ │ 1├──┤ │ ││
│ │ ┌──oE1│ │ ││
│ │ │15│ │ │ ││
│ │ ├──oE2│ │ ││
│ │ ┴ └──┴──┘ ││
КП11 │ │ ││
┌┬──┐4 │ │ ││
││00├────────────────────────────
││ │7 │ │ ││
││01├────────────────────────────
││ │9(A14')│ │ ││
││02├───────┴──────X───────────┴─
││ │12(A15') │ │
││03├─────────┴────X──────────┴──
└┴──┘
Адреса A8-A13 желательно брать с буффе-
ра клавиатуры. Микросхема КП11 установлена
в контроллере 128-й памяти (схема контрол-
лера согласно журналу "Радиолюбитель. Ваш
компьютер." N5/97) Линейка альтернативной
памяти подключается параллельно линейке
быстрой памяти, за исключением сигнала CS.
Затем разрываем цепь сигнала CS быстрой
памяти. Сигнал подается на одноименный
вход контроллера, на линейку быстрой памя-
ти подаем CS1, на линейку альтернативной-
CS2. Осталное смотри по схеме.
Данная схема естественно не является
панацеей и не позволяет 100% избавиться от
всех тормозов. Но все программы заработав-
шие на турбе заработали и с данным девай-
сом, и при этом без вышеописанных глюков
со сбросом программ и воспроизведением
оцифровок.