Организация взаимодействия компонентов ЭВМ "Эл. 79". Часть 1.

Для эффективной работы быстродействующих устройств внешней памяти большой емкости в мини-ЭВМ «Электроника 79» введен быстродействующий 32-разрядный канал внешней памяти, обеспечивающий синхронный обмен данными с ОЗУ в режиме непосредственного доступа. Быстродействующие устройства внешней памяти большой емкости подключаются к мини-ЭВМ через устройства управления (контроллеры) внешней памятью, которые в свою очередь подключены к Каналу мини-ЭВМ. В данном случае Канал используется для обмена управляющей информацией с регистрами контроллеров внешней памяти и выработки запросов прерывания. Для организации обмена с устройствами внешней памяти в режиме непосредственного доступа к памяти сначала «заряжаются» регистры счета слов, начального адреса памяти и управления, затем вырабатывается команда начала обмена, и передача данных производится по 32-разрядному быстродействующему каналу без участия процессора. Синхронизация передачи данных и анализ запросов на захват этого канала осуществляется арбитром кэш-памяти. Запросы на захват канала внешней памяти поступают с контроллеров по отдельным шинам. Причем обмен данными осуществляется между выбранным устройством внешней памяти и ОЗУ, минуя кэш-память. Порядок приоритетов в мини-ЭВМ следующий:

  1. Канал мини-ЭВМ (через преобразователь адресов Канала);
  2. устройства управления внешней памятью;
  3. центральный процессор.

Кроме аппаратных прерываний, характерных для мини-ЭВМ «Электроника 100-25», в мини-ЭВМ «Электроника 79» введены программные прерыватели. Запрос программных прерываний может быть сделан на любом из семи приоритетных уровней (ЗПП7 ... ЗПП1) с помощью специального регистра программных прерываний (адрес 17777772). Запрос регистрируется установкой одного из разрядов (09 ... 15) этого регистра и удовлетворяется процессором между командами, если приоритет процессора ниже, чем уровень запрашиваемого прерывания. Содержимое разрядов активного программного прерывания (01 ... 03 и 05 ... 07) используется для установки приоритета процессора и указывает на вектор прерывания в таблице векторов программных прерываний для семи приоритетных уровней. При удовлетворении программного запроса происходит внутреннее прерывание процессора (адрес вектора 240). Программа обслуживания прерывания сама устанавливает очередность запросов внутри приоритетного уровня и перед окончанием обслуживания очищает установленный разряд ЗПП. Следует сказать, что запросы программного прерывания по приоритету выше равнозначных уровней запросов Канала внешними устройствами.

Усложнение процессора мини-ЭВМ. «Электроника 79» привело к увеличению (по сравнению с «Электроникой 100-25») количества внутренних прерываний. Поэтому, например, для определения источника прерывания с адресом вектора 4 введен регистр ошибок процессора (адрес 17777766), формат и назначение отдельных разрядов которого приведены на рис. 3.21.


Формат регистра ошибок процессора

Нарушение питания вызывает прерывание с адресом вектора 24, по которому подпрограмма обслуживания питания осуществляет перезапись информации с разрушаемой памяти в энергонезависимую или в память с автономным (аккумуляторным) питанием. Для этого ей отводится 2 мс. При восстановлении питания также происходит прерывание с этим же вектором, и выполняется подпрограмма восстановления состояния процессора, в котором он находился в момент нарушения питания. Внутренние прерывания возникают также при попытке выполнить команду с неправильной адресацией или команду, не входящую в систему команд ЭВМ (по резервной команде с адресом вектора 10), а также при ошибках, возникающих при работе ППТ, диспетчера памяти и системы памяти (ошибках паритета).

Диспетчер памяти обеспечивает: расширение емкости адресуемой памяти до 4 Мбайт; преобразование виртуального адреса в физический и защиту памяти в системах с разделением времени; использование различных областей адресов для всех трех режимов работы процессора (супервизора, пользователя и внутреннего). Для этого диспетчер памяти содержит три набора из 32 16-разрядных регистров страниц, по одному набору на каждый режим работы. Выбор набора осуществляется регистром состояния процессора (разрядами текущего режима). Каждый набор состоит из двух групп по 16 регистров. Одна используется при обращении к области команд, другая — к области данных. Каждая группа, в свою очередь, состоит из 8 регистров признака страницы (РПС) и 8 регистров адреса страницы (РАС). РПС и РАС образуют пару, которая выбирается тремя старшими разрядами виртуального адреса и содержит всю информацию, необходимую для описания и перераспределения страницы.