Организация центрального процессора ЭВМ "Электроника 100-25"

Центральный процессор можно представить в виде следующих функциональных блоков (рис 3.3):
  • блока микропрограммного управления (МПУ), обеспечивающего выработку необходимых управляющих сигналов для всех блоков ЦП;
  • блока обработки данных, который совместно с блоком МПУ выполняет арифметические и логические операции, управляет Каналом мини-ЭВМ при обмене данными, осуществляет арбитраж запросов Канала от периферийных устройств на приоритетной основе и предоставление Канала устройству с наивысшим приоритетом;
  • блока управления Каналом, осуществляющего совместно с блоком обработки данных синхронизацию обмена информацией с ОЗУ и периферийными устройствами;
  • блока расширенной арифметики (БРА), выполняющего вместе с блоком обработки данных операции умножения, деления и арифметического сдвига на несколько разрядов;
  • блока плавающей точки (БПТ), используемого совместно с блоками обработки данных и расширенной арифметики для выполнения операций с плавающей точкой;
  • диспетчера памяти, обеспечивающего возможность адресации памяти до 248 Кбайт и распределения ее между программами пользователей для защиты программ от взаимного вмешательства;
  • регистра границы стека (РГС), позволяющего программно устанавливать нижнюю границу для защиты от переполнения стека;
  • таймера, предназначенного для деления машинного времени и организации более эффективной работы процессора с периферийными устройствами;
  • пульта управления, с помощью которого осуществляется запуск и непосредственная работа с процессором;
  • блока отладки, используемого для настройки процессора.

Структурная схема центрального процессора

Элементы процессора, осуществляющие преобразования и хранение данных, управляются логикой управления. В процессоре используется микропрограммное управление — каждый управляющий сигнал заранее определен для каждого машинного состояния. Логика процессора, которая выбирает требуемые управляющие сигналы, реализована в виде постоянного запоминающего устройства (ПЗУ). Для каждого машинного состояния в ПЗУ отведено отдельное слово, которое определяет элементарную операцию (или группу операций), выполняемую в данном машинном, состоянии,— микропрограммное слово (микрослово). Адрес ячейки ПЗУ, по которому находится данное микрослово, называется микроадресом. Последовательность микрослов образует микропрограмму, которую можно рассматривать как группу аппаратных подпрограмм, реализующих систему команд процессора и постоянно хранимых в ПЗУ.

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

Система прерывания в процессоре многоуровневая с аппаратным распознаванием причин прерывания и программно управляемым приоритетом.

Центральной частью блока обработки данных является АЛУ, выполняющее 16 логических и 16 арифметических операций над 16-разрядными словами. Операндами АЛУ снабжает блок из 16 регистров. Восемь программно доступных регистров являются регистрами общего назначения (РОН), два из которых используются как указатель стека (УС) и счетчик команд (СК). Восемь программно недоступных регистров используются для выполнения следующих функций: временного хранения входной информации, операндов источника и приемника, содержимого регистра команд ЦП, указателя стека, адреса вектора прерывания, счетчика пульта управления и временного хранения адреса при ручных операциях. Эти регистры доступны с пульта управления. Для хранения информации о текущем состоянии процессора используется регистр состояния (адрес 777776), расположенный между двумя магистралями процессора. Формат РСП приведен на рис. 3.4.


Формат регистра состояния процессора

Блоки расширенной арифметики (БРА) и плавающей точки (БПТ) предназначены для аппаратного выполнения команд расширенной арифметики (ASH, ASHC, MUL, DIV) и плавающей точки (FADD, FSUB, FMUL, FDIV). Следует сказать, что все арифметические операции при выполнении этих команд производятся в АЛУ блока обработки данных, а БРА и БПТ берут на себя управление последовательностью выполнения этих операций, производят операции сдвига, хранения промежуточных результатов вычислений и устанавливают признаки. В БРА и БПТ нет адресуемых регистров. При выполнении команд расширенной арифметики операнды извлекаются из памяти или РОН, а результаты вновь записываются в РОН; при выполнении команд плавающей точки операнды выбираются только из памяти и записываются в нее. При неправильном результате выполнения команды плавающей точки и расширенной арифметики происходит прерывание с адресом вектора 2448.