Процессор с программным и микропрограммным управлением
Принцип программного управления впервые был реализован в ЭВМ “Марк-1”. Он
заключается в том, что алгоритм вычислений (например, вычисление некоторого
выражения) преобразуется в упорядоченную последовательность команд,
преобразующих исходные данные (операнды) в результат. Таким образом действия,
предписанные алгоритмами, закладываются в команды (например действия по
сложению, вычитанию, умножению и делению чисел, логическим операциям над ними
и т.д.). Последовательность команд называется программой. Программа управляет
ходом вычислительного процесса.
Пусть, например, необходимо вычислить выражение: .
Возможная программа его вычисления содержит следующие команды:
1-я команда: умножить операнд a на b;
2-я команда: сохранить результат умножения (a*b) в ОП;
3-я команда: сложить операнды a и b ;
4-я команда: умножить результат (a+b) на c;
5-я команда: считать из ОП (a*b);
6-я команда: разделить результат (a*b) на результат (a+b)* c.
Если числа представлены в двоичной системе счисления, и команды также
закодированы двоичным кодом, то для реализации программы можно ввести
следующую систему команд:
КОП | 1-й операнд | 2-й операнд |
где КОП-код операции, или закодированные в двоичной системе счисления
операции (+,-, /, * и т.д.), выполняемые процессором.
Такой подход к реализации команд приводил к очень длинным программам, так как
в перфоленточных устройствах, используемых в первых ЭВМ для ввода программ,
отсутствовала возможность возврата к ранее выполненным участкам программ.
Пусть, например, нам необходимо вычислить выражение:
Программа вычислений в предложенной системе команд будет следующей:
1-я команда: умножить a0 на b0;
2-я команда: умножить a1 на b1;
3-я команда: сложить результат 1-й команды с результатом 2-й команды;
4-я команда: умножить a2 на b2;
5-я команда: сложить результат 3-й команды с результатом 4-й
команды:
6-я команда: умножить a3 на b3;
7-я команда: сложить результат 3-й команды с результатом 4-й
команды и т.д.
При использовании предложенной системы команд программа будет состоять из n
- команд умножения и n - команд сложения, всего - из 2n-команд. Большое
количество команд обусловлено тем, что нет возможности оперативного возврата
к некоторым участкам программы, которые могли бы выполняться многократно.
Принцип микропрограммного управления УилксаИдея микропрограммного управления была высказана Уилксом в 1951 г. Оназаключается в том, что управляющие сигналы “прошиваются” в памяти (ПЗУ,ППЗУ). Схема блока микропрограммного управления БМУ Уилкса следующая (смотририсунок): Рисунок 4.4.1 – Упрощенная структура блока микропрограммного управленияСхема содержит две матрицы C и S, Матрица C – управляющая, вырабатываетуправляющие сигналы. Матрица S определяет последовательность выборкимикрокоманд. Точками указаны места прошивки ПЗУ. Функционирует схемаследующим образом.В момент действия синхросигнала, выдаваемого генератором тактовых импульсов ГТИ,дешифратор (Дш) выбирает одну из l вертикальных линий. Возбуждение передаетсяна те горизонтальные линии, которые соединены (электрически) с даннойвертикальной прошивкой. Выработанные управляющие сигналы по шине Y={y1, y2.ym} поступают в АЛУ и регистры процессора, а по шинеR={r0,r1.rl} передается адрес следующеймикрокоманды в регистр адреса микрокоманды РАМК.Микропрограммный способ управления удобен при разработке или дополнениилюбого набора команд, что достигается заменой одной “прошивки” ПЗУ надругое.30) Иерархическая структура организации цикла команда. Алгоритм выполнения машинного цикла
В основе работы микропроцессора лежит командный цикл — действия по выбору из памяти и выполнению одной команды.
Любой командный цикл (КЦ) начинается с извлечения из памяти первого слова команды по адресу, хранящемуся в счетчике команд (PC)
В зависимости от типа и формата команды, способов адресации и числа операндов командный цикл может включать в себя различное число обращений к памяти и ВУ, поскольку кроме чтения самой команды в КЦ может потребоваться чтение операндов и размещение результата.
Хотя обращения к ЗУ/ВУ располагаются в разных частях КЦ, выполняются они по единым правилам, соответствующим интерфейсу МПС, и реализованы на общем оборудовании управляющего автомата. Действия МПС по передаче в (из) МП одного слова команды (данных) называются машинным циклом. КЦ состоит из одного или нескольких машинных циклов (МЦ).
Машинный цикл включает выдачу процессором адреса памяти или внешнего устройства, по которому производится обращение, выдачу управляющих сигналов, характеризующих тип машинного цикла и направление передачи данных, выдачу синхронизирующих сигналов и собственно передачу данных.
31) Архитектура микропроцессора
Микропроцессор (МП) - это программно управляемое устройство, которое предназначено для обработки цифровой информации и управления процессом этой обработки и выполнено в виде одной или нескольких больших интегральных схем(БИС).
Разделяется на:
Микроархитектура микропроцессора - это аппаратная организация и логическая структура микропроцессора, регистры, управляющие схемы, арифметико-логические устройства, запоминающие устройства и связывающие их информационные магистрали.
Макроархитектура - это система команд, типы обрабатываемых данных, режимы адресации и принципы работы микропроцессора.
32) Микропроцессоры с фиксированной разрядностью и списком команд.
Однокристальные микропроцессоры получаются при реализации всех аппаратных средств процессора в виде одной БИС или СБИС (сверхбольшой интегральной схемы). По мере увеличения степени интеграции элементов в кристалле и числа выводов корпуса параметры однокристальных микропроцессоров улучшаются. Однако возможности однокристальных микропроцессоров ограничены аппаратными ресурсами кристалла и корпуса. Для получения многокристального микропроцессора необходимо провести разбиение его логической структуры на функционально законченные части и реализовать их в виде БИС (СБИС). Функциональная законченность БИС многокристального микропроцессора означает, что его части выполняют заранее определенные функции и могут работать автономно.
33) Секционированный МП позволяет построить процесс обработки данных произвольной разрядности с произвольной системой команд за счет использования нескольких БИС с микропрограммным уровнем управления и различной разрядностью. Секционированные МП допускают наращивание параметров (прежде всего разрядности обрабатываемых данных) и функциональных возможностей. Секционированные МП ориентированы в основном на применение в универсальных и специализированных ЭВМ, контроллерах и других средствах вычислительной техники высокой производительности. В настоящее время секционированные МП не используются.
В состав комплекта входили следующие БИС:
· разрядное секционное АЛУ;
· блок ускоренного переноса;
· разрядное секционное АЛУ с аппаратной поддержкой умножения;
· тип схем микропрограммного управления;
· контроллер состояния и сдвига;
· контроллер приоритетных прерываний.