Optron
#33
20 ноября 1999 |
|
Железо - К вопросу об адресации портов ZX Spectrum.
К вопросу об адресации {}С.Филимонов, 1999 Эти короткие заметки навеяны статьёй "О подключении внешних устройств к ZX SPECTRUM", опубликованной в "Полесье" |13. Действительно, как пишет SSSR, автор этой статьи, - при подключении нового внешнего устройства (ВУ) к компьютеру пользователя иной раз ждёт большой облом. Причину этого автор видит в том, что каж- дое устройство ввода-вывода в компьютере при активизации сигнала -IORQ считает сво- им долгом засунуть на шину данных всякую отсебятину. Должен заметить, что это утверждение не вполне корректно, поскольку процессор, об- ращаясь к любому "устройству ввода-выво- да", активизирует не только сигнал -IORQ, что, собственно, свидетельствует о работе с ВУ, и, даже, не только адрес этого само- го устройства, но и ещё один из сигналов -RD или -WR, говорящих о чтении из устройства или записи в него, соот- ветственно. На основании вышеизложенного можно ска- зать, что указанных конфликтов, по идее, возникать и не должно было бы, но (из- вестно, как у нас всё делается), экономя на каком-нибудь корпусе микросхемы, наши "славные" разработчики зачастую делают настолько грубую дешифрацию портов, что добавление к такому компьютеру любого ВУ сопряжено с переделками, иногда значи- тельными, самого этого компьютера. И вот, - продолжает SSSR, - победа в этом конфликте между ВУ зависит от их при- оритета, обусловленного, в свою очередь, схемной реализацией конкретных моделей компьютеров и ВУ. Но как прикажете понимать это выражение - "приоритет"? Что, Sound Drive - более важное устройство, чем, скажем, ZX Lprint? Или, может быть, имелось в виду, что "бо- лее высокий приоритет" имеет ВУ, у которо- го на выходе стоит более мощная микросхе- ма? А может, то, у которого наиболее "кри- вая" дешифрация адреса выборки?.. В одном из компьютеров заводского (!) производства я видел настолько грубую де- шифрацию Kempston Joystck'а, что при оной компьютер вообще не должен был бы рабо- тать. Но он работал! Как? А очень просто - данные с порта на шину данных шли через резисторы, "гасящие" конфликты. (Прямо-та- ки напрашивается аналогия с попавшим как-то ко мне в ремонт китайским плейером, в котором горомкость регулировалась пере- менным резистором, стоявшим последователь- но с элементами питания). Ещё один пример такого подхода связан с упопинанием в статье схемы контроллера kempston-mouse, опубликованной в "Оптро- не" |13 (за что SSSR'у, конечно, спасибо). Ведь то, что SSSR вынужден был "позаимс- твовать" из нашей схемы два входных триг- гера, как раз и было вызвано недобросо- вестностью "фирменных" разработчиков! Весь корень зла - именно в подобном на- плевательском отношении "фирмачей" к своим детищам. В качестве пути решения проблемы SSSR предлагает при выборке одного из ВУ блоки- ровать все остальные, чтобы они не "пута- лись под ногами". Выгоду от этого он видит в том, что, в отличие от корректной дешиф- рации ВУ, здесь не требуется лепить на не- го десяток-другой диодов или несколько корпусов мелкой логики, да к тому же - вести широкий шлейф, перегружая адресную шину. Означенную блокировку портов ввода-выво- да предлагается осуществлять сигналом IORQGE. Что ж, в каком-то частном случае, это, может быть, и поможет. Но! Если сигнал IORQGE берётся с каждого из подключённых к компьютеру ВУ, то возникновения конфликта не избежать: при грубой дешифрации адреса этот сигнал будет активен одновременно от нескольких ВУ. Поэтому, на мой взгляд, совершенно не надо ничего блокировать! Каждое ВУ имеет свой адрес, который должен корректно выби- раться. Только лишь исключительно правильная, подробная дешифрация адреса может решить эту проблему. ──══════════──
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября