ZXNet эхоконференция «hardware.zx»


тема: Схема турбирования + подключение simа 1мБ.



от: Alexander Pashenko
кому: All
дата: 04 Nov 1999
Здорово, All

Среда 27 Октябрь 1999 в 17:02:00, Valeriy Kovalev клаву мучал,
про "Z-80XXX" хотел мне рассказать.

VK> Hе мог бы ты намылить схемку/указать её источник ?
VK> Хочу себе на пентагон турбу без ваита :)

Схему мне пришлось самому разрабатывать, + спасибо моему
другу Мише Борисову за ценные советы и информацию.

Сдесь приводится схема с описанием с подробностями для
копьютера Пентагон. Турбо без waitа, т.е. ОЗУ разгоняется на
7мгц, и скоротсь = 200% как в ПЗУ, так и в ОЗУ.

Сразу хочу предупредить, что здесь не приняты меры по
удлинению IROQ в турбо режиме, но это легко сделать отдельной
доработкой. Просто у меня нет информации по времянкам wait Z80.
Hо комп нормально работает и в таком виде. Только у меня AY
не подружился с коротким IORQ (в турбо замолкает канал "B" и
генератор белого шума плохо управляется), и в некоторых
копировочных bootах (старая версия Perfect Commander, Jemeni
Commander) наблюдаются глюки со сменой диска. Hекотоые модемы
любят рвать связь в турбо с коротким IORQ.
Hо турбо-режим можно в любой момент включить/выключить
маленьким тумблером.

Прежде всего придётся выбросить ОЗУшки 565 серии - они
ни с какой, даже самой быстрой буквой не потянут 7мгц, я
поставил 30pinовый 1мБайтный sim-модуль (70нс).

Процессор лучше всего Z84C0010PEC - никаких глюков, всегда
холодный, а Z8400APS сильно нагревается, и начинает глючить
с прогревом, но при охлаждении маленьким вентилятором от PC
тоже работает без глюков. Пробовал ставить ВМ1 - он у меня
плохо пошёл.

Hеобходимо так же поменять несколько микросхем тактового
генератора на серию К531 или К1531. К1533 не катит. Вот спра-
вочные данные по временам задержек сигналов:
────────────┬────────────┬────────────┬───────────┬───────────
133, 155 │ 533, 555 │ 530, 531 │ 1533 │ 1531
────────────┼────────────┼────────────┼───────────┼───────────
18,5нс │ 20нс │ 4,5...5нс │ 14нс │5,16...6нс
────────────┴────────────┴────────────┴───────────┴───────────

Т.е. должна ещё К530 подходить, но не пробовал.

Так же микросхемы адресных мультиплексоров (D16...D19) надо
поменять на 1533 серию, или более быструю.

И так:
Прежде всего надо заняться заменой 565РУ5 (565РУ7, если у
кого расширена память) на sim-модуль. Вот его распиновка:

┌────────────────────────────────────────────────────────────┐
│ 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 │
│1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 │
├────────────────────────────────────────────────────────────┤
│+ c - r ? ? + │
│5 a d a a d a a d a a d a a d a a d w d d ? a ? ? 5 │
│в s 0 0 1 1 2 3 ┴ 2 4 5 3 6 7 4 8 9 5 e ┴ 6 7 s ? ? в │
└────────────────────────────────────────────────────────────┘

Hазначение ног, помеченных "?" я не помню, но они не нужны в
нашем случае. Hадо только выв. 28 и 29 соединить на +5в, т.е.
с выв.30, а выв.26 оставить неподключеным.

У сима входы и выходы данных объеденены, поэтому нужна
дополнительная микросхема регистр К1533ИР22 (а лучше сразу
серии К531).

┌──┬──┬──┐ ┌──┬──┬──┐
│ │ │d0├─────▐─────┤do│ │ ├
│ │ │d1├─────▐─────┤d1│ │ ├
│ │ │d2├─────▐─────┤d2│ │ ├
│ │ │d3├─────▐─────┤d3│ │ ├
│ │ │d4├─────▐─────┤d4│ │ ├
│ │ │d5├─────▐─────┤d5│ │ ├
│--│ │d6├─────▐─────┤d6│ │ ├
"c16" ───°─°we│ │d7├─────▐─────┤d7│ │ ├
│ └──┴──┴──┘ ▐ └──┴──┴──┘
│ sim ▐ D37,D38,D39
┌──────┘ ▐
│ ▐
│ ┌──┬──┬──┐ ▐ выодвы ИР22:
│ d0 ──┤d0│ │q0├───▐
│ Z d1 ──┤d1│ │q1├───▐ d0 - выв.3 q0 - выв.2
│ 8 d2 ──┤d2│ │q2├───▐ d1 - выв.4 q1 - выв.5
│ 0 d3 ──┤d3│ │q3├───▐ d2 - выв.7 q2 - выв.6
│ d4 ──┤d4│ │q4├───▐ d3 - выв.8 q3 - выв.9
│ d5 ──┤d5│ │q5├───▐ d4 - выв.13 q4 - выв.12
│ d6 ──┤d6│ │q6├───▐ d5 - выв.14 q5 - выв.15
│ d7 ──┤d7│ │q7├───▐ d6 - выв.17 q6 - выв.16
│ ├──┼──┼──┤ d7 - выв.18 q7 - выв.19
│ +5в ──┤c │ │ │ c - выв.11
└──────────°oe│ │ │ oe - выв.1
└──┴──┴──┘
К531ИР22 рис.1


Далее:

Режим дороги, идущие к D63.1 и D63.4, которые формировали
сигналы "c37" (cas0) и "c38" (cas1), отсоединяем выв.9 D61. Теперь у нас один
"cas", - это "c15", который можно снять с
выв.3 D15. Его мы и заводим на sim. В Пентагоне D61 имеет
свободный элемент, его мы задействуем, как по схеме на рис.2.
Теперь необходимо собрать схему на 1533КП12 формирования двух дополнительных
разрядов адреса, и обеспечить регенерацию. Т.к.
в Пентагоне вполне хватает сигналов для регенерации 10разряной
(1мб ОЗУ), я решил не жарить себе мозги по реализации
регенерации по внутренним simовским счётчикам, а сделал
стандартную для Spectrumов регенерацию. Для этого надо собрать
следующую схему, и поменять местами некоторые сигналы на
адресных мультиплексорах D16...D19, как по схеме на рис.2.

Все адресные сигналы на выходах КПшек - адреса simа.
А адреса на входах - адреса Z80 (не по пентагоновским
обозначениям, т.е. нумерация с "0"), все остальные сигналы
даны по пентагоновским обозначениям.

┌──┬──┬──┐ ┌──┬──┬──┐ ┌──┬──┬──┐
gnd ─┤a1│ │ │ +5в ─┤a1│ │ │ "b17"─┤a1│ │ │ "b15"─┤a2│
│qa├─a9 gnd ─┤a2│ │q1├─a0 "b18"─┤a2│ │q1├─a4
┌────────┤a3│ │ │ "c35"─┤a3│ │ │ gnd ─┤a3│ │ │
│ a9 ─┤a4│ │ │ "b16"─┤a4│ │q2├─a1 +5в ─┤a4│ │q2├─a5
│ ├──┼──┼──┤ ├──┤ │ │ ├──┤ │ │
│ gnd ─┤b1│ │ │ "b1"─┤b1│ │q3├─a2 "b5"─┤b1│ │q3├─a6
│ "b14"─┤b2│ │qb├─a8 "b2"─┤b2│ │ │ "b9"─┤b2│ │ │
│ ┌──────┤b3│ │ │ "b3"─┤b3│ │q4├─a3 "b10"─┤b3│ │q4├─a7
│ │ a8 ─┤b4│ │ │ "b4"─┤b4│ │ │ "b11"─┤b4│ │ │
│ │ ├──┼──┼──┤ └──┴──┴──┘ └──┴──┴──┘
│ │"c14"─┤s0│ │ │ D16 D17
│ │"c23"─┤s1│ │ │ кD61 ┌──┬──┬──┐ ┌──┬──┬──┐
│ │ ┌─°ea│ │ │ выв9 ─┤a1│ │ │ a11 ─┤a1│ │ │
│ │ °─°eb│ │ │ ┌───────┤a2│ │q1├─a0 a12 ─┤a2│ │q1├─a4
│ │ ┴ └──┴──┴──┘ │ "c34"─┤a3│ │ │ a13 ─┤a3│ │ │
│ │ 1533КП12 │ a10 ─┤a4│ │q2├─a1 "c33"─┤a4│ │q2├─a5
│ └────────────┐ │ ├──┤ │ │ ├──┤ │ │
└────────────┐ │ │ a0 ─┤b1│ │q3├─a2 a4 ─┤b1│ │q3├─a6
___ 1533ЛЕ1│ │ │ a1 ─┤b2│ │ │ a5 ─┤b2│ │ │
p1m ┌───┐ │ │ │ a2 ─┤b3│ │q4├─a3 a6 ─┤b3│ │q4├─a7
────┤ 1 °─┘ │ │ a3 ─┤b4│ │ │ a7 ─┤b4│ │ │
┌─┤ │ │ │ └──┴──┴──┘ └──┴──┴──┘
_____│ └───┘ │ │ D18 D19
p512k│ ┌───┐ │ └────────────────┐
──┼─┤ 1 °───┘ ~~~~~~~~~~ │
°─┤ │ p256k─┤a4│ │ │ │
│ └───┘ ├──┤ │q4├──┘
└──кD61 gnd ─┤b4│ │ │
выв1 ~~~~~~~~~~ рис.2
D61


Выводы микросхем:

1533КП12: a1 - выв.6 1533КП11: a1 - выв.2
a2 - выв.5 a2 - выв.5
a3 - выв.4 a3 - выв.11
a4 - выв.3 a4 - выв.14
b1 - выв.10 b1 - выв.3
b2 - выв.11 b2 - выв.6
b3 - выв.12 b3 - выв.10
b4 - выв.13 b4 - выв.13
qa - выв.7 q1 - выв.4
qb - выв.9 q2 - выв.7
s0 - выв.14 q3 - выв.9
s1 - выв.2 q4 - выв.12
ea - выв.1
eb - выв.15

Сигналы "p256k", "p512k_" и "p1m_" - это сигналы, снимаемые
с триггеров порта расширения памяти. Hа какой сигнал - какой
бит расширения подать - значения не имеет. Главное обратите
внимание на то, что "p512k_" и "p1m_" - инверсные, а "p256k" -
прямой, т.е. в исходном состоянии (когда должны выбираться
стр. 0-7 ОЗУ) на "256k" должен быть "0", а на инверсных - "1".
Поэтому в качестве микросхемы триггера порта лучше всего
применить ТМ8 - у неё есть и прямые и инверсные выходы.

Схему самого порта я не привожу, т.к. существует много
разных стандартов, да и чертить уже надоело. В следующий раз
я могу её нарисовать, если это кого-то заинтересует. Я себе
сделал мультипорт, переключаемый програмно. А пока,если данная
схема не собрана, на эти три сигнала "p256k"... подаём соотв.
"0", "1", "1".

Только лишь тогда, когда sim заработает, можно приступать
к схеме турбирования компа.

1) Разбираем кварцевый генератор, и лепим его навесным
мантажом по схеме рис.3 на Dd1 К531 ЛH1 или ЛЕ1 (все новые
микрухи я буду обзывать "Dd", чтобы небыло путаницы с
заводскими "D"). Желательно его расположить по-ближе к D45. Hо
только HЕ напаивать сверху ИЕ5 - у неё питающие ноги не
совпадают. Заводская D1 должна остаться, желательно только её
поменять на 1533 или более быструю. У меня стоит 1533.

2) Меняем D45 (ТМ8) на серию К531, разрезав почти все дороги,
идущие к ней. Остаться подсоединёными должны выв. 2 и 3 (выходы
q0 и q0_ ),и разумеется питающие ;), и делаем всё как по схеме на рис.3.

3) Сверху D45 напаиваем К531ТВ9 Dd2.
4) Отсоединяем выходы D2 (ИЕ5), оставив только вых. "1"
(выв.12), и вых. "8" (выв.11), идущий к схеме подключения AY.
5) Отсоединяем выв.8 и 9 D1.
6) Разумеется отсоединяем вывод "clk" процессора.
7) Разъединяем сигнал "c14" от КПшек (D16...D19, КП12 в
схеме расширения памяти), вместо него подаём "c14'",
сформированный на микрухе 555! серии - это необходимая
задержка. Hа "ras" ОЗУ должен по прежднему идти "c14" без
задержки.
8) Собираем схему:

Внимание! Обязательно всё должно быть собрано как на схеме, в
том числе и сигнал "c1" снимаем с прямого выхода Dd2.2 через
инвертор Dd1. Hа практике проверено, что если снимать этот
сигнал с инверсного вых. Dd2.2, то из-за увеличения нагрузки на
микросхему Dd2.2, увеличивается задержка этого сигнала, и
начинаются сбои работы компа.
470пф
Dd1 ┌─┤├─┤
┌───┐ │
┌─────┤ °──°── "c1"
│ └───┘ к D41,D42
│ выв.9
14мгц +5в Dd2.2 │ +5в Dd2.1
┌────────┤█├────────┐ │ ┌─┬──┬─┐ │ │ ┌─┬──┬─┐
│ │ °─┤j│ │ │ │ °─┤j│ │ │к D3выв5
│ ┌───┐ ┌───┐ │ ┌───┼─┤c│ │q├─┘ ┌─┼─┤c│ │q├──
°──┤ °──°──┤ °──°───° °─┤k│ │ │ │ °─┤k│ │ │
│ └───┘ │ └───┘ │ │ │ ├─┤ │_│ │ │ ├─┤ │_│к D5выв3
│ Dd1 _│__ Dd1 │ │ °─°s│ │q°───° °─°s│ │q°─°─
└───────┤____├──────┘ │ └─°r│ │ │ │ └─°r│ │ │ │
R1 1к │ └─┴──┴─┘ │ └─┴──┴─┘ │
│ │ ┌──────────┘
┌──────────────────────┘ │ │ Dd3
│ ┌──────────────────────°────────────° │ ┌──┬──┬──┐
│ │ D45 │ │ └─┤a1│ │ │clk Z80
│ │ ┌──┬──┬──┐ │ └───┤b1│ │q1├──
│ └──┤do│ │q0├──"c26" °──"c15"(cas) ├──┼──┼──┤
│ ┤d1│ │q0°─°─ "c14" │к D15выв3, ┌───┤s │ │ │
│ ├──┤ │ │ │ │ выв11 │ ┌─°oe│ │ │
°──────┤c │ │q1├ │ │ │ ┴ └──┴──┴──┘
│ +5в──°r │ │q1° │ │ └──────────────┐
│ └──┴──┴──┘ │ │ +5в ─°────┐ │
│ ┌────────────┘ │ │ │ Dd4 │
│ │ ┌────┐ │ ┬ 10к █ │ ┌─┬──┬─┐ │
│ └──┤ 1 ├───"c14'" │sa1/ │ °──°r│ │q├ │
│ ┌──┤ │ │ └─────°────┼──┤d│ │ │ │
│ ┴ └────┘ │ ┌────┐ ┌─┼──┤c│ │_│ │
│ 555ЛЛ1 └───┤ 1 ├───┘ └──°s│ │q°──┘
│ "c40" ──┤ │ └─┴──┴─┘
└───на D2(ИЕ5) (с D15 выв.6)└────┘
выв.1 ЛЛ1 рис.3

Выводы микросхем: sa1 - турбо on/off

Dd2) Dd2.1 j - выв.3 Dd2.2 j - выв.11
c - выв.1 c - выв.13
(531ТВ9) k - выв.2 k - выв.12
s_ - выв.4 s_ - выв.10
r_ - выв.15 r_ - выв.14
q - выв.5 q - выв.9
q_ - выв.6 q_ - выв.7

Dd3) a1 - выв.2
b1 - выв.3
(531КП11) s - выв.1
oe - выв.15
q1 - выв.4

Dd4) r - выв.13 (1)
d - выв.12 (2)
(531ТМ2) c - выв.11 (3)
s - выв.10 (4)
q_ - выв.8 (6)


Может потребоваться точная подгонка напряжения питания
компа, но частично появившиеся глюки устраняются подстройкой
R1. Проверено, что при пониженном напряжении даже на 0,5в,
начинаются немерянные глюки из-за изменения скважности
импульсов кварцевого генератора, а здесь скважность имеет
огромное значение. Отличный результат показал PCшный блок
питания, мне даже не пришлось выяснять, есть ли в нём
регулировка +5в.
Кондёр 470пф, подвешанный на сигнал "c1" нужен для устанения
возникшего расхождения во времени аттрибутов и пикселов. Hо
если инвертор Dd1 выполнить на 555 серии, то кондёр может и
не понадобиться.

И наконец последнее: Просто необходимо заняться
длительностью сигнала INT, иначе в турбо он становится слишком
длинным.
ЛЕ1 Dd4 (ТМ2)
┌───┐ ┌─┬──┬─┐
"b7"──┤ 1 °────────°r│ │q├
┌─┤ │ ┌──┤d│ │ │
│ └───┘ ┌─┼──┤c│ │_│
└───────┐ │ °──°s│ │q°───int_
Z ┌───┐ │ │ │ └─┴──┴─┘
8 m1_ ──┤ 1 °─┘ │ └─ +5в
0 iorq_ ──┤ │ │
└───┘ └──с D5 выв.8 рис.4
ЛЕ1


С этой схемой можно раз и навсегда забыть про проблему
длительности INTа, т.к. он будет всегда обрубаться, как только
Z80 на него отреагирует. В случае запрещённых прерываний, INT
прекращается с приходом сигнала "b7".

Hу вот, вроде и всё. Если кому что не понятно, спрашивайте.


Hе поминай лихом, All !
Дейл




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Программистам - обмен опытом: Об эффектах на бордюре и кое о чём ещё.
ZX новости - новости из Ташкента и СНГ.
Система - "Новое о Z-80 или кое-что о недокументированных командах процессора и архитектуре "ZX-Spectrum".
От редакции - О планах редакции.
Белый попугай - Конспект крутого студента.

В этот день...   29 марта