Научная статья на тему 'Крейт-контроллер для персональных компьютеров'

Крейт-контроллер для персональных компьютеров Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
343
48
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Булатов Е. Д., Даниленко А. А., Казьмина В. В., Отливанчик Е. А., Отливанчик М. А.

Описывается крейт-контроллер для персональных компьютеров, совместимых с популярным компьютером Apple II, возможности которого увеличиваются за счет подключения дополнительных плат. Специальное ПЗУ содержит набор подпрограмм обращения к модулям КАМАК из программ, написанных на языке Applesoft BASIC, что позволяет работать в минимальной конфигурации компьютера.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Булатов Е. Д., Даниленко А. А., Казьмина В. В., Отливанчик Е. А., Отливанчик М. А.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Крейт-контроллер для персональных компьютеров»

Е. Д. Булатов, А. А. Даниленко, В. В. Казьмина, Е. А. Отливанчик,

М. А. Отливанчик, В. А. Суворов

КРЕЙТ-КОНТРОЛЛЕР ДЛЯ ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ

Крейт-контроллер для персонального компьютера (ПК) должен обладать некоторыми особенностями, которые определяются особенностями ПК как таковых. К этим особенностям относятся:

- простота организации;

— относительно низкая цена, то есть крейт-контроллер должен иметь стоимость меньше, чем стоимость используемого ПК;

- развиваемость, то есть минимальная конфигурация крейт-контроллера должна быть простой и дешевой. По мере повышения требований со стороны эксперимента возможности крейт-контроллера должны наращиваться;

— простота взаимодействия с компьютером, особенно в его минимальной конфигурации.

Нами был создан крейт-контроллер для ПК типов Правец-8/Apple II/АГАТ, удовлетворяющий поставленным выше требованиям. Блок-схема крейт-контроллера приведена на рис. 1. Функционально крейт-контроллер состоит из двух частей, соединенных друг с другом кабелем, одна из которых — собственно крейт-контроллер — выполнена в виде блока КАМАК двойной ширины и вставляется в две крайних правых позиции крейта КАМАК, а вторая - интерфейсная плата - вставляется в любой разъем шины ввода-вывода компьютера. Причем интерфейсная плата выполняет лишь функцию согласования с шиной ввода-вывода компьютера и содержит малое количество микросхем (13). Такая организация позволяет использовать этот крейт-

контроллер и для других типов ПК, имеющих 8-разрядную шину ввода-вывода, например, IBM/PC и совместимых с ним. При этом необходимо разработать вновь только интерфейсную плату.

Минимально необходимая часть крейт-контроллера обведена на рис. 1 пунктирной линией. Она содержит два 24-разрядных регистра данных записи (W) и чтения (R), три регистра для хранения команд (N, A, F), декодировщик номера станции, кодировщик и регистр хранения номера LAM-запроса, регистр режима для управления сигналами С, I, Z и маской прерываний, регистр статуса для проверки состояния сигналов X, Q, I, маски и запроса на прерывание, генератор цикла КАМАК и логику управления.

Логика

пдп

Регистр статуса

Регистр режима

Г

Регистр L

IRQ X Q MASK I Z С

7\

Ll-24

Регистр N

Кодер Декодер

L N

V

N1-24

Регистр A

I/O BUS

ИНД 1

N и L 1 Интерфейс

л

Регистр F

Г

Регистр шины R

A

V V

Al-8 Fl-16 Rl-24

1_LL

Регистр шины W

V

Wl-24

Логика 1 Управле- Генератор

SRS Г I ние

_В S2_S1_

Рис. 1

Все платы крейт-контроллера выполнены на широко распространенных микросхемах серий 155,531 и 555. В качестве большинства регистров используются микросхемы КР589ИР12, имеющие достаточно большой выходной ток, что позволило исключить из схемы мощные шинные формирователи. В логике управления широко используются микросхемы постоянных запоминающих устройств (ПЗУ). Последние два фактора позволили сократить количество микросхем и тем самым максимально упростить и удешевить крейт-контроллер.

Элементы минимальной конфигурации размещены на печатных платах самого крейт-контроллера, одна из которых (укороченная) вставляется в управляющую позицию крейта и содержит декоди-

ровщик N и кодировщик LAM, а другая (полноразмерная) содержит все остальные элементы.

Расширения крейт-контроллера обеспечивают выполнение следующих функций:

- поддержку режимов сканирования, остановки и повторения (SRS), элементы которой устанавливаются на полноразмерной плате;

- индикацию текущего номера станции N и номера LAM-запроса, элементы которой размешаются на отдельной плате;

- управление прямым доступом в память (ПДП) на основе микросхемы КР580ИК57, элементы которой размешены на отдельной плате.

Расширения увеличивают функциональные возможности крейт-контроллера и скорость обмена

данными. Подсоединение дополнительных плат к основным производится простейшим способом с помощью разъемов.

Запуск цикла КАМАК может производиться любым из трех способов:

- обращением к специальному регистру;

- записью стартового бита в регистр режима;

- записью в регистры N, А, F, если в записываемом байте установлен старший бит. Это увеличивает гибкость в использовании крейт-контроллера.

Крейт-контроллер в любой конфигурации удовлетворяет стандарту EUR-6500 на многоконтроллерные системы.

С точки зрения программиста крейт-контроллер представляется в виде 13 8-разрядных регист-

ды типа NAF, возможно, с передачей одного слова данных. Кроме того, данный набор подпрограмм позволяет достаточно просто обрабатывать прерывания по LAM-запросам от модулей КАМАК при помощи написанных пользователем дополнительных подпрограмм на языке ассемблера или Applesoft BASIC.

Поскольку подпрограммы записаны в ПЗУ, они не требуют от программиста какой-либо подго-

ров. для одних из них разрешены операции чтения и записи, а для других - только чтения или только записи. Распределение регистров по адресам для компьютеров Правец-8/Apple II приведено на рис. 2 (п - номер разъема шины ввода-вывода компьютера, в который вставлена интерфейсная плата). Оно задается картой адресного ПЗУ и. следовательно, может легко изменяться по желанию пользователя.

На интерфейсной плате крейт-контроллера находится ПЗУ, в котором записан набор подпрограмм, позволяющий выполнять простые операции КАМАК в программах, написанных на языке Applesoft BASIC. Под простыми операциями КАМАК подразумеваются безадресные команды выдачи сигналов Z и С и установки и сброса I, а также одиночные коман-

товки к работе (например, загрузки с диска или связывания с программой) и могут быть использованы даже в минимальной (бездисковой) конфигурации компьютера.

Данный набор подпрограмм может быть использован для автоматизации экспериментов и технологических процессов, невысокая сложность и небольшие информационные потоки которых позволяют использовать интерпретирующий язык типа BASIC,

Адрес Запись Чтение

10*п+С080Н DO DO

10»п+С081Н Dl D1

10*п+С082Н D2 D2

10*п+С083Н Mode Status

10*п+С084Н DMA Addr. DMA Addr.

10*n+ С085Н DMA TC DMA TC

10*п+С006Н DMA Control DMA Control

10*п+С087Н N LAM

10*п+С088Н A

10*n+ С089Н F

10«h+C08AH NEnd

10*п+С08ВН A End

10*п+С08СН START

Рис. 2.

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

Обращение ко всем подпрограммам пакета осуществляется оператором CALL по одному и тому же (для данного крейт-контроллера) адресу, зависящему от п — номера разъема шины ввода-вывода компьютера, в котором установлена интерфейсная плата. Этот адрес вычисляется по формуле 49280+п*16 (С0В0+п*10 в шестнадцатеричной системе). Рекомендуется присваивать это значение какой-либо переменной в начале программы и затем использовать ее в обращениях к модулям КАМАК. Тип выполняемой операции, а также ее параметры, если они необходимы, задаются после адреса в операторе CALL через запятую.

Имеются следующие подпрограммы:

Ъ Выдача сигнала Ъ

С Выдача сигнала С

I, Б Установка сигнала I

I, К Сброс сигнала I

S, n, a, qj Адресная команда КАМАК с

передачей 16-битных данных S, n, a, Адресная команда КАМАК с

передачей 24-битных данных R, Е Разрешить прерывания от

крейта КАМАК R, D Запретить прерывания от крей-

та КАМАК

L, а Подготовиться к обработке

прерываний

М Подготовиться к обработке

прерываний программой на языке BASIC

i Надоели баннеры? Вы всегда можете отключить рекламу.