Статья из журналов “Радиолюбитель” 04,05-1991 г.

или “Вычислительная техника и её применение” 07-1991 г.

А. КОНЮШЕНКО (UCS2AAU)

220030. Минск-30, а/я 1

 

А.М. КОНЮШЕНКО (г. Минск)

Что может делать процессор 1801ВМ1

Самый массовый отечественный персональный компьютер, как ни странно, осмеивается и охаивается с первых дней своего существования. За что же он попал в немилость? Когда начинаешь знакомиться с аргументами критиков, то оказывается, что они и обычным-то калькулятором пользовались, лишь отдавая дань моде. А теперь, гоняя чаи в рабочих кабинетах, с изумлением вглядываются в блестящие кнопочки за большие деньги “добытого” заморского чуда - IBM PC...

Если кто-то полагает, что БК-0010 выношен отечественной инженерной мыслью, то он, мягко говоря, заблуждается... Машина эта без зазрения совести “содрана”. До винтика! Сам видел точно такую же шесть лет назад в комиссионке, только по вполне понятным причинам все надписи на ней были выполнены не по-русски. “Штучка” была импортная. С тех пор таких мне видеть больше не приходилось, зато появился отечественный аналог - БК. И я понял: это именно то, что нужно - и по цене, и по своим функциональным возможностям.

16-разрядный процессор! Пусть в справочниках пишут, что его разработали. Но мы то знаем, что “слизали”. Если бы действительно разработали те, кто об этом пишет, то уж сами-то они, наверное, знали возможности своего детища. Чего, к сожалению, не наблюдается...

В БК, как ни странно, предусмотрено все необходимое для того, чтобы с минимальными затратами перейти от простейшей машины для начинающих к машине, способной удовлетворить самого взыскательного “спеца”. Но попробуйте где-нибудь прочитать, как осуществить такой переход... Не сообщают об этом те, кто “разрабатывал” компьютер. Так что нет ничего удивительного в том, что большинство “БК-шников” живёт и не знает, каким мощным “инструментам” они обладают.

Наибольший вред БК наносится самодеятельностью наивных энтузиастов-рационализаторов. И сейчас уже сложно привести весь парк этих машин к согласованному состоянию так, чтобы все имеющиеся самоделки не превратились в памятники напрасно потраченных средств и здоровья. Тем не менее попробуем...

ЖЕЛАЮЩИХ писать программы для БК - более чем достаточно. УМЕЮЩИЕ это делать тоже горят желанием приложить свои знания и навыки к более солидному “железу”. Энтузиасты уже включили свои паяльники и ждут схемы этого долгожданного “железа”...

Итак, что же может процессор 1801ВМ1?

Если обратиться к справочникам и руководствам по эксплуатации; то можно обнаружить весьма интересные сведения: “...процессор 16-разрядный... адресное пространство 32К”. И это, пожалуй, самое непонятное для любителей. Потому что в любом учебнике по схемотехнике можно найти формулу, из которой следует, что 16 разрядов - это 64К различных состояний... Дело здесь в том, что с помощью 16-ти разрядов шины адреса процессор обращается как к 16-ти разрядам данных, так и к старшей половине этих же данных. Поэтому 16-разрядные данные (слова) имеют только чётные адреса (или только половину из 64К возможных), а нечётные адреса позволяют процессору обратиться только к 8-разрядным данным (старшей половине слова данных, или к старшему байту). Обращение к байтам необходимо процессору для того, чтобы работать с текстами, символы которых кодируются в ЭВМ 7- и 8-разрядными данными. Поэтому в процессоре предусмотрена ещё одна дополнительная линия адреса (17-я!), которая позволяет обращаться и к младшему байту данных. Эта линия называется WTBT (вывод 40). То есть, фактически, процессор 1801ВМ1 имеет 17-разрядную шину адреса, но два разряда этой шины (0-й разряд ША и WTBT) выполняют действия, существенно отличающиеся от действий остальных 15-ти разрядов (1- го ... 15-го ША), и мы имеем возможность обращения к 32К слов 16-разрядных данных, а побайтно - и к 64К 8-разрядных слов (байтов).

Основной режим процессора: работа с 16-разрядными данными, поэтому процессор изменяет на шине адреса только значения в разрядах 1...15, а изменения на линии WTBT и в нулевом разряде адреса происходят только при обнаружении в программе либо специальных команд работы с байтами (младшими), либо при требовании программы обратиться по нечётному адресу (то есть к старшему байту). Это основные особенности процессора 1801ВМ1, которые часто служат для любителей, знакомых по журналу “Радио” с процессором 580ВМ80, источником всяческих недоразумений.

Есть у процессора 1801ВМ1 ещё одна интересная особенность: он работает с общей шиной. То есть как адрес, так и данные передаются процессором другим микросхемам по одним и тем же линиям... А отличаются сигналы адреса от сигналов данных только тем, что первые дополнительно сопровождаются Сигналом синхронизации SYNC (SYNCronization, вывод 41), в то время как последние - сигналами DIN (Data IN - ввод данных, вывод 38) или DOUT (Data OUT - вывод данных, вывод 37) и при необходимости - сигналом WTBT. Ничем другим эти сигналы друг от друга не отличаются! И если мы найдём метод, который позволит некоторые данные тоже считать адресом, то шина адреса увеличится на 16 разрядов! (Повторная процедура - ещё на 16... и т.д.). Тем самым мы получим возможность адресоваться к 231 16-разрядных слов и к 232 байт или работать с ОЗУ объёмом 2 Гигабайта!!! (Тут даже мешком РУ7-х не обойдёшься!!!).

Разумеется, такое “гигабайтие” любителям, да и большинству профессионалов-надомников абсолютно ни к чему. Поэтому расширять шину адреса на 16 разрядов не будем. Если удовлетвориться расширением шины адреса на 8 дополнительных разрядов, то это даст нам возможность адресовать 4 Мегабайта.

Когда процессор выполняет программу, то он последовательно (при отсутствии ветвлений) выдаёт номера адресов, начиная с 0 (или с какого-либо другого = адресу начала программы). Если ничто не помешает, то, дойдя до самого последнего адреса 177777, он выйдет на 0 и далее вернётся к тому адресу, с которого начинал. То есть процессор обойдёт полный “КРУГ” адресов. Например, процессор 1810ВМ86 не может сам (без специальной программы) обойти полный круг 1 Мб адресуемой памяти - для него это те же самые 64 Кбайт, что и для процессора 1801. Часть такого адресного круга по аналогии с геометрическим кругом обычно называется СЕГМЕНТОМ. Однако, в самом процессоре ВМ1 такая сегментная адресация не предусмотрена (хотя существуют специальные микросхемы, контроллеры, арбитры и т.п., но эта экзотика малодоступна). Тем не менее, организовать “искусственную” (программно-аппаратную) сегментацию для 1801ВМ1 не представляет никаких трудностей. Тем более, что это, как ни странно, предусмотрено электрической схемой БК-0010! (Интересно, куда девался тот столь предусмотрительный “разработчик”, если вместо расширения начат выпуск БК-0011, совместимого с десятым только по сетевому шнуру!?)

Аппаратно шина адреса БК-0010 уже разбита на 8 сегментов по 8 Кбайт или по 4 Кбайта адресов в каждом. Два младших сегмента занимает ОЗУ пользователя (к которому больше всего претензий у критиков). Два следующих занимает экран. А в оставшихся четырёх размещаются микросхемы ПЗУ, из которых меньше всего испорчены рационализаторами только две: МОНИТОР и ТЕСТ ДИАГНОСТИКА (блока МСТД). К счастью владельцев БК-0010. “плоды рационализации” можно нейтрализовать через разъём системной магистрали XT3, а вот владельцам “усовершенствованных” БК-0010.01 не повезло, им придётся вскрыть машину, перерезать дорожки, идущие к выводам СЕ (вывод 23) микросхем ПЗУ БЕЙСИКА (микросхемы DS 18 и DS 19) и установить перемычку от освобождённых выводов к выводу 23 микросхемы DS 20, отключение которой рационализаторы были вынуждены оставить, иначе не работал бы МСТД. (Тем, кто вместо розеток под ПЗУ в БК-0010 уже впаял БЕЙСИК, придётся повторить описанную процедуру. Остальным достаточно вынуть ПЗУ из розетки). Хотя, если Ваш БК на гарантии или вам не хочется вступать в конфликт с “рационализаторской мыслью”, можно ничего этого не делать. Система “БК+” будет работать! Только операционная система определит отсутствие программного управления в соответствующем сегменте и самостоятельно “урежет” некоторые свои и Ваши возможности.

Теперь, если Вы запаслись десятком микросхем любых триггеров, счётчиков, мультиплексоров и логики, а к ним имеете 16 корпусов памяти любого типа, можно включать паяльник!

Вся конструкция будет подключаться к разъёму системной магистрали, поэтому, разумеется, нужен разъём СН063-64/95-24-2, который входит в комплект поставки БК (если вы его уже использовали для подключения принтера, то можно полностью распаять блок МСТД, а микросхемы из него запаять “вторым этажом” прямо на любые ПЗУ основной платы, отогнув выводы 23 и установив дополнительный переключатель, как на схеме, приведённой в журнале “Информатика и образование” (90/4, стр. 72) Кстати, тянуть жгут, как там рекомендуется, нет никакой необходимости....

Лучше всего использовать микросхемы серий 1533, 555, 176 и 561. При наличии микросхем только 155 серии придётся найти два шинных формирователя типа 1533АП6 (555АП6) или серии 580, чтобы не пере­грузить шину А/Д. (Все системные управляющие сигналы обязательно “буферируются”, например, микросхемами 1533ЛН1, 555ЛН1 или любой логикой). Выводы разъёма XT3 для А/Д00...А/Д15 соответственно: А31, В31, В29, В30, В28, А28, В27, В32, В26, А27, В25, А26, В24, А25, В23, В7. На эти линии необходимо установить защёлку адреса. Для этого можно использовать два корпуса ИР22, ИР23, ИР27 (можно два корпуса ТМ9 и один ТМ8 или четыре корпуса ТМ8 и т.п.). Адрес защёлкивает системный сигнал SYNC (вывод В22 XT3). Он же выключает третье состояние на выходе регистров защёлки адреса. (Если в защёлке используется ТМ8-9, то они сбрасываются системным сигналом R при включении БК.)

Защёлка адреса необходима для того, чтобы зафиксировать сегмент, к которому обращается процессор, сформировать все необходимые сигналы и их последовательности для взаимодействия процессора с расширением и для организации “внутренней” работы самого расширения.

Поскольку в БК аппаратно имеется 8 сегментов, которыми нам нужно управлять программно, то для этого необходимо использовать три старших разряда адреса: А13, А14 и А15 (остальные разряды управляют расширением в пределах сегмента).

“+БК” - КОНТРОЛЛЕР РАСШИРЕНИЯ 4 Мбайта

Рис. 1

 

Рис. 2

 

Рис. 3

 

Сегменты с ОЗУ пользователя и экрана лучше не трогать. Сегмент с ПЗУ монитора тоже... Надо помнить, что без монитора БК превращается в “well-to-do'hard only”!..

Но этот сегмент используется в половину своих возможностей - только для чтения. Это не рационально.

Микросхемы ПЗУ 1801РЕ2 устроены таким образом, что когда происходит обращение процессора в их сегмент и при этом активен сигнал чтения (DIN), то микросхема выдаёт на шину данные, а затем и сигнал для процессора RPLY (RePLY - отзыв). При отсутствии же сигнала DIN микросхема никак не реагирует на адрес своего сегмента, а при отсутствии сигнала RPLY реакция процессора жёстко определена: он отсчитывает 64 такта синхрогенератора и действует далее по специальной программе ОШИБКИ ОБРАЩЕНИЯ или ЗАВИСАНИЯ. То есть сегмент ПЗУ МОНИТОРА полностью свободен для записи: ПЗУ никак и ничем не мешает и не может быть как-либо “испорчено” сигналами на общей шине. Поэтому установим в этот сегмент ещё одну защёлку - защёлку данных, которые будут служить (программно) командным словом “искусственной” сегментации или СЛОВОМ УПРАВЛЕНИЯ другими сегментами для их использования, подобно сегменту монитора, - и, для чтения, и для записи. Эта защёлка аналогична защёлке адреса и отличается только тем, что сигнал для её защёлкивания формируется из сигнала дешифрации обращения на запись в сегмент монитора, то есть при наличии уровней 100 на старших битах защёлки адреса и активном уровне сигнала DOUT (вывод В21 разъёма XT3). После чего (не позже, чем за 60 тактов синхрогенератора) схема управления должна выдать сигнал RPLY на вывод В20 разъёма XT3, иначе процессор зависнет.

Для чего же нужна 16-разрядная защёлка слова, если мы уже договорились использовать расширение адреса только на 8 разрядов? Дело в том, что следующие за монитором два сегмента имеет смысл использовать каждый в отдельности. А данные-то ведь всё равно 16-разрядные. Поэтому младший байт данных будем использовать для управления ближайшим к монитору сегментом, а старший байт - для управления следующим сегментом. (Самый последний сегмент 111 лучше ничем, кроме ПЗУ МСТД или БЕЙСИКА, не занимать, так как в этих микросхемах предусмотрена автоматическая блокировка в области адресов системных регистров 177600... 177777 - всякая самодеятельность здесь, как говорится, чревата...).

Сегменты 101 и 110 образуют два СЕГМЕНТА ДОСТУПА к расширению, управляемому процессором с помощью оставшихся 13-ти линий адреса и системных сигналов. Каждый из байтов слова управления позволяет включать в каждый из сегментов доступа любой из 256 (2 в степени 8 = 256) восьмикилобайтных сегментов расширения. (В отличие от процессора 1810ВМ86, здесь сегменты доступа никак не перекрываются, поэтому передача данных из одной части программы в другую должна осуществляться по-иному). Если каждый из сегментов доступа будет пользоваться собственным банком, то мы получим расширение объёмом в 4 Мбайта (8 Кб х 256 сегментов х 2 банка = 4 Мб), но если удовлетвориться одним банком для обоих сегментов доступа, то мы теряя половину объёма, получаем возможность произвольной манипуляции восьмикилобайтными блоками этого банка, что гораздо более привлекательно, так как и 2 Мбайта заполнить какими-то полезными данными при “бедной” периферии не представляется возможным, да и вряд ли это кому-нибудь потребуется для “домашних” целей.

Теперь посмотрим, что же мы можем вставить в этот 2 Мбайтный банк?.. Даже имея 16 штук 565РУ7, мы используем только четверть объёма этого банка. Но это весьма интересная четверть! Она составляет ровно 2 разряда слова управления. То есть, если банк выбирать этими четвертями, то мы будем иметь в банке четыре СЕГМЕНТА ВЫБОРКИ по 512 Кб каждый. А в каждом из них мы можем произвольно выбирать блоки по 8 Кб или ОКНА. Выбор окон будет осуществляться с помощью 6-ти битов каждого байта слова управления для каждого из сегментов доступа в любом сегменте выборки.

Куда же следует вставить эти два бита управления сегментами выборки? Их придётся разместить в самом младшем и в самом старшем битах каждого байта слова управления. Такое размещение хорошо согласуется с логикой работы счётчика команд, т.е. при его использовании для сканирования данных в соседних окнах не будет происходить переключений сегментов выборки. А использование для тех же целей другого регистра позволит осуществить сканирование с переключением сегментов выборки или без него, в зависимости от желания программиста.

Осталось распределить обязанности между этими сегментами.

В сегменте 11 разместим ОЗУ расширения. Если там РУ7, то сегмент полон и, как говорится, никаких вопросов. Ну а если у Вас только РУ 6-ые? Договоримся заполнять окна сегментов выборки, начиная со старших адресов окон. То есть 16 штук РУ6-ых следует подключить так, чтобы они откликались при обращении к окнам 111111...111100 (всего 4 окна). Но лучше не мудрить со схемотехникой и городить сложные дешифраторы, достаточно подключить биты 1 и 2 защёлки слова управления, а старшие биты (3...6) вообще никуда не подключать. Если дальнейшего расширения не предвидится, то в защёлке слова управления можно сэкономить два корпуса ТМ8. Правда, при этом возникает эффект “заполнения” всего объёма, так как одни и те же блоки памяти будут периодически появляться в каждом четвёртом окне сегмента доступа, но эта задача проще решается программно, чем схемотехнически. (Это задача либо конкретной программы, либо операционной системы).

Аналогичная ситуация возникает при использовании 16 штук 565РУ5. Остаётся только добавить, что сигналы стона управления и защёлки адреса передаются на адресные входы микросхем ОЗУ через мультиплексоры типа 1533КП11, КП13, КП14. КП16, КП18 или любые другие любых серий. Управление мультиплексорами на выборку старшего или младшего байтов слова управления снимается с дешифратора сегмента доступа, к которому в конкретном цикле обратился процессор. Для РУ7 по шине адреса более ничего не потребуется, так как они имеют внутреннюю регенерацию за счёт манипуляций на линиях RAS и CAS. А вот для РУ5 и РУ6 придётся использовать дополнительные мультиплексоры типа КП2, КП12 или КП17 и внешний счётчик регенерации, например, 561ИЕ10, 1533ИЕ18 или два 1533ИЕ7 и т.п. Если в защёлках использована серия 1533, то вход данных ОЗУ можно подключать без буфера. Но на выходе данных ОЗУ необходим не только буферный реестр, а и регистр с третьим состоянием. (Впрочем, можно после обычных триггеров подключить, например, мультиплексоры КП11А или иные с третьим состоянием. КП11А даже предпочтительнее, если имеется необходимость организации синхронного приёма 16 разрядов от внешнего источника). В крайнем случае, можно обойтись традиционными 589ИР12.

В сегменте выборки 10 разместим статическое ОЗУ с сохранением данных при выключении питания. Это может быть, например, всего пара микросхем 537РУ10, которые будут управляться дешифратором старшего и младшего бита байта управления после мультиплексора по линии CS (выбор кристалла). Назначение этого сегмента - временное хранение программ, которые после отработки могут быть зашиты в ПЗУ, или оперативных данных, потеря которых не желательна при сбоях питания.

В сегменте 01 разместим ПЗУ с операционной системой, пакетами программ пользователя и различного сервиса для компенсации отсутствия дисковода. Заполнение сегментов аналогично сегменту 11 и никаких затруднений не вызывает.

Остаётся последний сегмент - 00, в который вроде бы и поместить-то нечего... Но именно в этом сегменте и поместятся как штатное ПЗУ бейсика, так и любые уже имеющиеся самоделки! Тогда они будут восприниматься расширенной системой “БК+” как произвольные внешние устройства, где одно другому мешать не будет. Дешифратор сегмента должен подать высокий потенциал на вывод А14 разъёма XT3 для отключения встроенных ПЗУ (вывод 23) при обращении к сегменту, отличному от 00, и произвести те же действия, если в этом сегменте будут размещены иные из 256 возможных устройств ([64 устройства ввода + 64 устройства вывода] х 2 сегмента доступа = 256). Это могут быть как контроллеры дисководов, так и контроллеры дистанционного управления магнитофоном и т.д. Такое включение более удобно, чем через штатный порт ввода/вывода, так как позволяет обращаться к ВУ как к ячейкам памяти.

Теперь кратко опишем, как всё это должно работать и что не обходимо для обеспечения работоспособности.

Для перехода в “БК+” загружается пусковая программа с магнитофона или через монитор из ПЗУ или ППЗУ. Эта программа тестирует младшие слова в дополнительном ОЗУ (сегмента 11) и заносит в них метки номеров окон, начиная с 0. Затем считывает номер разметки в окне 0 - этим и определяется объём подключённого дополнительного ОЗУ, так как, например, при памяти на РУ6 в каждом четвёртом (считая от 0-го) окне появится номер 77 (или 111111); для РУ5 - в шестнадцатом. Далее проверяется, включён ли сегмент доступа 110 (то есть проверяется отключение “плодов рационализации”). Если сегмент доступа 110 работает в системе, то через него можно считать разметку окна, в противном случае будет считан код соответствующей ячейки ПЗУ бейсика, так как словом управления не выполнится отключение этого ПЗУ, а в сегменте 101 такое управление выполнимо на всех вариантах БК. (Для дополнительного ОЗУ объёмом 32...128 Кб работоспособность сегмента 110 не является остро необходимой.). Следующий этап - тест работоспособности всего дополнительного ОЗУ, но по алгоритму, который не портит содержимого памяти: считывается слово данных, инвертируется и записывается по тому же адресу, снова считывается побитно, сравнивается с исходным, инвертируется и записывается на прежнее место. То есть сохраняется содержимое даже дефектных ячеек памяти, но их дефектность опознается. Соответственно определяется объём подключённого ППЗУ и наличие ПЗУ. Остальной сервис - в руках программистов, которые обещают написать лучшую в мире операционную систему для “БК+”. (Аналогично тестируются дополнительные банки).

Организация работы программ в таком расширенном режиме тоже имеет свои особенности. В последних байтах каждого окна при их разметке и тестировании во время инициализации системы “БК+” или при пуске программы необходимо записать команду EMT (EMulalor Trap - программное прерывание по вектору 30) или команду TRAP (программное прерывание общего назначения по вектору 34) для организации перехода на выполнение программы следующего окна на тот случай, если размеры программы превышают объём окна. (Это задачи программной части “искусственной” сегментации для ВМ1). Саму программу перехвата и обработки такого прерывания необходимо загрузить в область штатного ОЗУ пользователя. Если используется EMT, то необходима программа процессора, которая EMT с номерами 4-110 передаёт на обработку штатному EMT - диспетчеру, а остальные обрабатывает сама. Для обеспечения работоспособности системы требуется ещё хотя бы одна команда: перехода к подпрограмме другого окна произвольных сегментов выборки и доступа (EMT или TRAP).

На этом можно было бы и закончить, если бы не аргументы критиков БК. Но у них в запасе ещё трёхцветный дисплей и масса всякой всячины, о которой они, похоже, имеют весьма смутное представление...

Вспомним, что у нас делает сегмент монитора при записи слова управления? Он записывает это слова. И только! Но тогда зачем для этого целый сегмент? Ведь достаточно одного единственного адреса... А что же делать с остальными адресами сегмента? Да ничего не надо делать, если вас удовлетворит описанное выше расширение...

Впрочем, мы, радиолюбители, народ беспокойный, на достигнутом и постигнутом, как правило, не успокаиваемся, вечно нам чего-то не хватает - порой даже сами не отдаём себе отчёта, чего же именно... Предвидя вопросы, продолжаю...

Итак, в адресе сегмента монитора используются только биты 13-й, 14-й и 15-й для формирования сигнала защёлкивания слова управления. Можно в защёлку слова управления добавить ещё два корпуса ТМ9, пусть они копируют биты 1...12 адреса обращения к защёлке (бит 0 не имеет смысла, так как при его активизации процессор выдаёт на ШД только старший байт, то есть восьмиразрядные данные. Их мы используем в дальнейшем для системных регистров “+SR” при управлении палитрами, экранами и прочим сервисом для более развитой системы “БК+”). Копия позволит нам подключать в сегменты доступа не один банк, а целых 64 по 2 Мб каждый! Причём с произвольным доступом! Конечно, все эти 128 Мб вряд ли когда-нибудь и кому-нибудь удастся освоить на дому... (Впрочем, всякое бывает, мы очень часто недооцениваем желания и возможности своих коллег по увлечению).

Разумеется, каждый из этих банков окажется, как и уже описанный нулевой, разделённым на четыре сегмента выборки. Договоримся сегменты 00 и 01 этих банков ничем не загружать (тогда сегменты ВУ и ПЗУ банка 0 будут доступны в любом банке), а в сегментах 10 и 11 можем размещать дополнительное ОЗУ. Это будет очень удобно, так как с этими банками может работать и другой (внешний) процессор, если это потребуется. В шестом банке (110) в сегменте 10 можем разместить многоцветный дисплей на 16-ти 565РУ5, а самые изысканные гурманы могут поместить Super многоцветный дисплей на РУ7 и седьмой банк (111) в аналогичный сегмент 10. (В старшем байте слова разметки ОЗУ предусмотрено место для номера банка: хххххх. Так что у операционной системы не возникнет затруднений в определении количества подключённых банков, их объёмов и конфигурации всей системы).

Оставшиеся 56 банков весьма эффективно могут быть использованы для эмулятора жёсткого диска. Например, на ЦМД.

Вот и всё, что я могу рассказать о самом дешёвом, самом массовом, самом доступном и самом обруганном из БК-0010.

Приводить полную схему всего возможного расширения не имеет смысла, да это и неосуществимо по объёму. К тому же невозможно учесть желаемые конфигурации системы, умения и навыки самостоятельного изготовления и отладки, финансовые возможности, доступ к комплектующей базе каждого конкретного БК’шника. Полагаю, что на основе этой публикации появится достаточное количество вариантов схем на любой вкус, и все они смогут работать с одним и тем же SOFTWARE...

Система обозначений вариантов конфигурации расширения:

“+ОЗУ.ЭППЗУ.ПЗУ, ВУ ВВ/ВУ ВЫВ.х СИСТ ВЫХ”

Например: “+32” - 32 Кб ОЗУ; “+0.24” - 24 Кб ЭППЗУ; “+0.0.8” - 8 Кб ПЗУ; “+32.0.(4)” - 32 Кб ОЗУ с возможной установкой ПЗУ 4 Кб с программами пользователя; “+32.0.0.2/4” - 32 Кб ОЗУ два ввода и четыре ВУ вывода “+128.0.0.2” - 128 Кб ОЗУ и два устройства вывода/вывода по одним и тем же адресам; в графе ВУ возможно перечисление через двоеточие - “+0.0.0.ЖД:2ГД:ПРН:ЦАП” - жёсткий диск, два гибких диска, порт принтера, порт цифро-аналоговый преобразователя; и последнее, “+0.0.0.0.х4” - блок буфера системной магистрали на четыре гнезда различных устройств расширения.

Сейчас в Минске идет разработка печатных плат под расширения на РУ5 и РФ5 (“+128.0.(4)”) и на РУ7 и РФ6 (“+512.0.(16)”), но возможна высылка наложенным платежом комплектов микросхем (без печатной платы, ПЗУ и СН0) для самостоятельной, сборки. Изучается спрос для организации такой комплектации и производства блоков расширения на базе малого предприятия. Схемы этих блоков готовятся к публикации в следующих статьях.

P.S. Благодарю всех, кто откликнулся на мой призыв в журналах “ИНФО и ВТ”. Правда, некоторым из откликнувшихся ничем помочь не могу, так как текст типа “... студент МАИ просит выслать схему...” без обратного адреса ставит меня в затруднительное положение. Поэтому убедительно прошу: если у кого-то возникнет желание написать автору и получить ответ, пожалуйста, приложите к письму чётко подписанный конверт с обратным адресом... Кстати, уже получена стопка писем высотой в полметра и корреспонденция всё продолжает поступать. Есть программисты с серьёзными намерениями написать операционную систему под “БК+” ...Но есть и такие, которые поняли, что написать хорошую ОС не так-то просто Легче “содрать” готовую...

Литература

  1. PDP11 04/34/45/55/60. Processor Handbook. Digital Equipment Corporation. 1978.
  2. Michael Singer. PDP-11. Assembler Language Programming and Machine Organization. 1980. (Имеется русский перевод 84 г. - Издательство "Мир”).
  3. Шевкопляс В.В. Микропроцессорные структуры. Инженерные решения. 1986. (В 1990 г. вышло второе издание).
  4. Осетинские Л.Г. и М.Г., Писаревский АН. Фокал для микро- и мини-компьютеров. 1988.

Эта статья написана и подготовлена к печати на самом ПЕРСОНАЛЬНОМ в мире компьютере БК-0010.01 в редакторе МИКРО14. Всем, кто причастен к появлению этих Hard & Software, автор выражает искреннюю признательность и благодарность.

 

Данный текст восстановлен и подготовлен для печати на принтер А.С. Русаковым
© 2007 DELTA group.

Performed by © gid, 2012-2024.