. Логическая структура микропроцессорной системы на основе комплекта БИС секционного микропроцессора
Комплект БИС секционного микропроцессора.
Вследствие малой разрядности секций микропроцессора и определенности функционального наполнения их реализуют, как правило, в виде биполярных БИС в корпусе с 42-64 выводами. Большое количество выводов корпуса одной секции БИС и внутренняя логическая структура секции микропроцессора обеспечивают построение микро-ЭВМ различной разрядности с наращиваемым числом входов прерываний, различным количеством подключаемых УВВ и т. д.В состав комплекта БИС секционного микропроцессора входит значительное число секций. Рассмотрим наиболее важные из них.
Секции арифметическо-логических БИС используются для построения операционных блоков обработки информации. Они включают в себя несколько разрядов АЛБ,
Рис. 4.8. Структура программируемой матрицы
управляющих регистров, СОЗУ и узлов связи с информационными магистралями. Секции БИС опережающего параллельного переноса позволяют объединить арифме-тическо-логические секции в высокоскоростные блоки обработки информации за счет создания пирамидальных схем ускоренного переноса.
Секции БИС для задания последовательности микрокоманд, применяемые для построения блоков микропрограммного управления, дают возможность вырабатывать выходной код в зависимости от внешнего управляющего кода, кода состояния процессора, содержимого счетчика микрокоманд или содержимого внутреннего стека, а также внутреннего состояния самой секции.
При микропрограммном управлении каждой команде соответствует микропрограмма - последовательность микрокоманд, выполнение которых приводит к выполнению операций, заданных командой. Микрокоманда управляет выполнением одной или нескольких микроопераций.
БИС микропрограммного управления на основе программируемой логической матрицы (ПЛМ). Схема ПЛМ приведена на рис. 4.8, она содержит логические матрицы адресов И и данных ИЛИ, с помощью которых осуществляется преобразование входного га-разрядного кода в т-разрядный выходной код. Матрицы данных ПЗУ и ПЛМ совпадают. Различие ПЗУ и ПЛМ существует
только между матрицами адресов или дешифраторами адресов.При построении дешифратора адресов ПЗУ обязательна постановка коммутирующих элементов между входными шинами и шинами переходных функций. Поэтому в дешифраторе каждой комбинации входных сигналов соответствует одна и только одна переходная функция. Всего переходных функций 2я. В ПЛМ коммутирующие элементы для ряда входных переменных могут отсутствовать. Поэтому некоторые переменные не влияют на выбор переходной функции. Число переходных функций ПЛМ О < l<=
2n.На практике получили распространение ПЛМ с многоразрядными адресами, для которых число входных переменных равно 16, 24 разрядам и более. ПЗУ и ПЛМ различаются по системе адресации информационного поля данных, распределению информационных полей, возможности одновременного опроса нескольких переходных функций. Так как в ПЛМ осуществляется избыточная свободная адресация, а в ПЗУ - жесткая неизбыточная адресация, то в ПЛМ большому количеству входных комбинаций адресов соответствует малое количество адресуемых переходных функций. Разные адреса могут определять одну и ту же переходную функцию или не определять ни одной. Кроме того, возможны варианты, когда один адрес определяет более одной переходной функции.
Специфика внутреннего распределения информационных полей в ПЛМ заключается в том, что посредством двух (или более) различных адресов можно адресовать одну и ту же область данных матрицы, что позволяет обращаться к микропрограммам по различным адресам. Следовательно, появляется возможность микропрограммного перехода к микроподпрограммам из различных текущих условий без выполнения специальных микрокоманд перехода. Эта особенность адресации обеспечивается наличием безразличных разрядов в коде адреса
.Одновременность выбора двух (и более) выходных информационных слов и объединение их по ИЛИ на выходе ПЛМ определяются возможностью адресации различных переходных функций одним адресом. При этом сохраняется выбор каждого информационного слова своим специфичным адресом. Жесткая неизбыточная адресация ПЗУ позволяет иметь однозначное соответствие адресов и слов в информационном поле данных.Обычная ПЛМ-комбинационная логическая схема. Чтобы построить микропрограммный последовательност-ный автомат, необходимы регистры на входах и выходах ПЛМ и обратная связь для задания закона выработки последовательностных состояний. Встраивание входных и выходных регистров в блок управления с ПЛМ обеспечивает автономную функциональную законченность БИС.
Рис. 4.9. Схема БИС микропрограммного управления на основе программируемой логической матрицы
Управление приемом и выдачей информационных состояний регистров позволяет использовать такую БИС в любой асинхронной (а также синхронной) микро-ЭВМ и снимает проблему “гонок” (“состязаний”).
Схема БИС микропрограммного управления вертикального типа с информационным полем на основе ПЛМ приведена на рис. 4.9. Она содержит ПЛМ, регистр команд РгК, регистр состояния системы РгС, регистр следующего адреса микрокоманды РгАМК, буферный регистр следующего адреса микрокоманды БРгАМК., регистр внутренних состояний блока микропрограммного управления РгСМУ, выходной регистр микрокоманд РгМК, а также узел местного управления и синхронизации УМУиС. В качестве входной информации в ПЛМ подаются код команды (например, 16-разрядный), код следующего адреса (например, 4-разрядный) и несколько разрядов кода состояния системы, определяющих формирование условий переходов в микропрограммах и обработку сигналов прерывания.
Выходной код ПЛМ обычно содержит 20-30 разрядов, поскольку микрокоманды большей разрядности требуют применения корпусов БИС с большим количеством выводов. Часть выходных сигналов ПЛМ не выводится из БИС. Код следующего адреса микрокоманды записывается в регистр БРгАМК, а затем передается в регистр РгАМК,. Сигналы с регистра РгСМУ делятся на две группы, одна из которых передается внутри БИС в УМУиС, а вторая через контакты корпуса выводится из БИС и используется блоком БЦУиС. В каждом машинном такте микрокоманда выдается на информационную магистраль микрокоманд ИММК, а в РгАМК. заносится некоторый код, определяющий вместе с командами РгС и РгСМУ адрес следующей команды.
Свойство одновременности выбора нескольких выходных адресных шин ПЛМ увеличивает информационную насыщенность ПЛМ по сравнению с ПЗУ и позволяет выиграть в 3-10 раз в числе элементов, требуемых для построения информационных полей БИС.
Секции БИС приоритетного векторного прерывания включают в себя регистры приема внешних сигналов запросов прерывания, кода маскирования состояния, приоритетный шифратор, узел формирования кода приоритетного вектора, блоки местного микропрограммного управления и управления информационными магистралями.
Секции БИС триггерных регистров широкого назначения используются для организации разнообразных буферов хранения цифровой информации.
Секции БИС приемопередатчиков информации (с контролем правильности передачи или без него) содержат буферные регистры для хранения входной и выходной информации, усилители для работы на внешние информационные магистрали (как правило, с тремя внутренними состояниями: “Включено”, “Выключено”, “Отключено”) .
Комплект БИС для построения электронной системы.
В состав всех комплектов БИС (в том числе и секционных) входят БИС ОЗУ, ПЗУ, программируемого ПЗУ или ППЗУ, ПЛМ, программируемой ПЛМ или ППЛМ, имеющие разнообразную организацию информационных полей и управляющие интерфейсной логикой. Они позволяют создавать наращиваемые поля оперативной, постоянной и микропрограммной памяти, работать с прямыми и интерфейсными информа-
ционными сигналами, строить много-входовые системы адресной выборки, цепи контроля передаваемой и хранимой информации и т. д.
Рис. 4.10. Обобщенная структура процессора на основе БИС комплекта секционного микропроцессора
Логическая структура процессора на основе комплекта БИС секционного микропроцессора.
Развитая внутренняя структура секционных комплектов БИС микропроцессора обеспечивает возможность построения высокопроизводительных средств эффективной эмуляции развитых микро-ЭВМ и позволяет создаватьгибкие эффективные системы с адаптацией к области применения.
Обобщенная структура процессора на основе комплекта БИС приведена на рис.4.10. В основу процессора положены секции микропроцессоров МП и секции ускоренного опережающего переноса *. Для построения интерфейсных схем применены секции приемопередатчиков сигналов ППС, позволяющие организовать двунаправленные магистрали данных, адресов и сигналов управления.
* Рассматриваемые микропроцессоры могут быть построены на основе микропроцессорных комплектов серий КР582, К583, КР584, К589, К1800, КР1802, КР1804,
U83-K1883.Блок микропрограммного управления строится на основе ПЗУ или ППЗУ, а также БИС выработки последовательности управляющих сигналов. Последние применяются в качестве блока управления микрокомандами БУМК. Для управления приоритетными векторными прерываниями используются соответствующие секции БИС ПВП для построения регистров - секции БИС регистров универсального назначения. Блок местного управления БМУ управляет всей системой.
Поскольку секции микропроцессора имеют некоторый набор рабочих регистров общего назначения, любые из них могут быть выделены в качестве счетчика команд, регистра - указателя стека или других рабочих и управляющих регистров.
Рассмотрим взаимодействие основных блоков процессора. Команда извлекается из ОЗУ и по магистрали данных МД передается в регистр команд РгК- Код команды поступает через блок адресации БА и блок управления микрокомандами БУМК, чтобы преобразовать его в первый адрес микрокоманды в запоминающем устройстве микрокоманд ЗУМК. Затем выполняется несколько микроопераций для поиска данных в ОЗУ и передачи их в микропроцессор МП, выполнения операций в арифметическо-логическом блоке, контроля переполнения и запросов на прерывание и т. д.
Выходной код с ЗУМК. является микрокомандой, обычно содержащей около 40 разрядов, например 9 разрядов для определения операции арифметическо-логического блока, 8 разрядов для адресации двух исходных операндов СОЗУ; остальные разряды - для сигналов выдачи выходных результатов, управления ОЗУ, приемопередатчиками, стеком и т. д.
Наличие регистра микрокоманд РгМК дает возможность организовать конвейерную работу процессора. Пусть в регистре РгМК содержится код / выполняемой микрокоманды. Поле микрокоманды, управляющее последовательностью микрокоманд, анализируется блоком местного управления процессора БМУПр и направляется в виде управляющих сигналов
2 в БУМК для определения адреса следующей микрокоманды. Адрес микрокоманды в виде сигналов 3 посылается в ЗУМК и новая микрокоманда поступает на выход РгМК- Микропроцессор параллельно выполняет ранее полученную микрокоманду, поскольку на реализацию микрокоманд 1-4 требуется всего лишь один цикл работы процессора. За это время микропроцессор должен пройти состояния до 5 включительно, т. е. кроме выполнения действий внутри микропроцессора должен быть передан в регистр состояния РгС код состояния процессоров. Если он не вызывает ветвления в микропрограмме, что определяет БМУПр по сигналам 6 от регистра РгС, то начинает выполняться следующая микрокоманда, уже подготовленная в РгМК-Таким образом, наличие РгМК дает возможность извлекать следующую микрокоманду параллельно с работой микропроцессора МП, что удваивает скорость работы процессора из-за исключения последовательной работы его операционной и управляющей частей.Типичная команда в ЭВМ имеет такую последовательность исполнения отдельных тактов в процессе интерпретации: выборка команды; дешифрирование кода операции; выборка базового адреса; формирование исполнительного адреса; выборка операнда из ОЗУ; выполнение операции над операндом и содержимым рабочего регистра или регистра результата; засылка результата на хранение в регистр результата или рабочий регистр. Во время исполнения такой команды необходимы три обращения к ОЗУ.
Высокой пропускной способности микропроцессора позволяет достичь метод перекрытия (поточный или конвейерный) путем параллельных действий над потоком команд во времени по отдельным фазам их исполнения. Вышеприведенная последовательность шести тактов команды при поточном исполнении сокращает кажущееся время выполнения команд до трех тактов. При этом достигается максимально эффективное использование ресурсов ОЗУ, поскольку обращение к нему осуществляется в течение каждого такта.
Для простейшего перекрытия процесса выполнения двух команд необходим доступ к информационным полям команды, что требует отдельного регистра команд. Код команды заносится в этот регистр из буферного регистра команд ОЗУ, в который он поступил в предыдущем такте выборки команды из ОЗУ. На время выполнения микропроцессором
операции необходимо хранить операнд следующей команды в буферном регистре данных. Выбранный из ОЗУ базовый адрес помещается в выходной информационный регистр. Во время исполнения данной команды надо обеспечить единичное приращение содержимого счетчика команд. Поскольку арифметическо-логическое устройство занято выполнением операций, необходимо предусмотреть отдельный сумматор или инкрементный блок для единичного увеличения кода адреса команды.Микро-ЭВМ на основе секционного комплекта биполярных БИС, например серии К.1800, может иметь 16-32-разрядную сетку, 8-64-уровневую приоритетную систему прерывания (цикл 100-200нс). Это позволяет ЭВМ выполнять операции типа сложения за 100-200 нс, а операцию умножения четырехбайтовых слов - за 4- 16мкс. Система команд обеспечивает выполнение 100- 150 операций, использующих 8-16 режимов адресации информации.