Типовая структура управляющей части
В качестве основного интегрального средства при организации УЧ (рис. 24) задействован блок микропрограммного управления (БМУ), в функции которого входит формирование адреса микрокоманды (АМК). По своей шине данных (ШД) он может воспринимать начальные адреса (НА) и логические условия (ЛУ), по шине логических условий – ЛУ. Если число условий велико, то возможен внешний коммутатор логических условий (КЛУ).
Управление БМУ осуществляется по МИ БМУ, которая может задавать способ адресации, источники адресной информации, определять источники возможных ЛУ и прочее. КЛУ должен синхронизироваться с работой БМУ, и логика его работы определяется МИ КЛУ. В ряде комплектов БМУ обеспечивает реакцию на запросы прерывания (ЗПР) микропрограммного уровня. В этом случае воспринимается вектор прерывания (ВП) как основа адреса прерывающей процедуры.
Сформированный адрес может фиксироваться при необходимости временной задержки в регистре адреса микрокоманды (РАМК), в частности, при конвейерной организации наличие его обязательно (позволяет хранить в нем текущий адрес МКi, формируя адрес МК(i+1)). Второй обязательный блок – УП. В нем размещаются коды МП. Считываемые МК фиксируются в выходном регистре МК (РМК). В частном случае он может отсутствовать, если не требуется временной задержки. При организации управляющего конвейера наличие его обязательно (позволяет хранить МК(i-1), когда из УП будет считываться МКi).
При полном наборе регистров РАМК и РМК возможна реализация двухуровневого конвейера. МК, хранимая в РМК, разбивается на два основных поля (внутреннее управление УЧ – МИ БМУ, МИ КЛУ и поле МИ внешнего управления – МИ к ОЧ).
Пример структурной реализации БМУ серии К584 ВУ1
В состав БМУ (рис. 25) входит 2-х уровневый регистровый стек адреса микрокоманды (РАМК1, РАМК2). Регистры могут функционально меняться местами (переключаться) – второй становится первым, первый – вторым. РАМК1 называется рабочим, и его содержимое выводится на шину адреса микрокоманды
(ШАМК). Разрядность шины – 10 бит, что обеспечивает адресацию к 1024 микрокомандам. РАМК связаны со схемой контроля питания (СКП), схемой модификации адреса (СМА) и обеспечивают реакцию на запрос прерывания (ЗПР).
СКП реагирует на ситуации включения и сбоя питания. Питание СКП осуществляется от двух источников (Е1, Е2), один из которых может быть сетевым, второй – батарейным либо сетевым. Под сбоем понимается исчезновение сетевого питания на кратковременный промежуток. Питание с входов Е1 и Е2 подключается через внешние интегрирующие цепочки RC1 и RC2, дающие различные задержки нарастания напряжения на входах, что позволяет СКП различать ситуации включения и сбоя.
По включению на ШАМК всегда формируется нулевой адрес 00...0 (адрес пуска).
По сбою формируется адрес 110...0, что позволяет разместить по этому адресу начало МП обработки сбойной ситуации. Эта процедура должна обеспечить сохранение в системе среды процессора в энергонезависимой памяти с целью дальнейшего её восстановления после появления питания. Длительность обработки данной процедуры не должна превышать времени разряда емкостных фильтров в блоках питания.
По запросу прерывания (ЗПР) ШАМК переводится в состояние 111...1, и источник запроса может подавать вектор прерывания (ВП), маскирующий семь младших разрядов (обнуление определенных битов). Возможное число двоичных наборов при маскировании – 27, из которых исключается адрес сбойной ситуации. Это позволяет иметь (27-1) возможных источников ЗПР, каждый из которых будет выставлять свой вектор при подаче запроса и вызывать соответствующую процедуру по сформированному адресу.
Распределение адресного пространства УП осуществляется в соответствии с рис. 26.
Адрес микрокоманды (АМК), загружаемый в РАМК1, формируется на основании выходной функции С блока СФА. В зависимости от текущих (незадержанных) условий М0 и М1 АМК может принимать следующие значения: АМК = С, АМК = С + 1, АМК = С – 1, АМК = С + 2. Подобный способ формирования адреса называется автоинкрементной адресацией, если “+”, и декрементной, если “–”. Эта адресация выполняется в сочетании с одним из четырёх режимов формирования адреса, задаваемых полями Ф1,Ф0 (табл. 5).
Режим Сч может использоваться на линейных участках МП (рис. 27 а). Входы М1, М0 требуется коммутировать на «0» или «1» в зависимости от желаемого
Таблица 5