31 Схемная и микропрограммная реализация БУУ (1006356), страница 2
Текст из файла (страница 2)
Обсуждение схемной реализации блока устройства управления начнем с рассмотрения частного случая микропрограммной реализации.
Рис. 1.18
Пусть формирование адреса микрокоманды осуществляется при помощи сдвигового регистра. Микропрограмма, которая реализует выполнение какой-то команды, имеет (для простоты) последовательную структуру и состоит из трех микрокоманд: 1100, 10I0 и I0II, а машина управляется посредством четырех управляющих вентилей BI-B4 (рис. I.I8). Управление вентилями при микропрограммной реализации УУ осуществляется за счет считывания в каждом цикле информации из соответствующего слова (ячейки) в регистр РД МПП.
В первом цикле будет считана микрокоманда 1100, во втором - I0I0 и в третьем
I0II, поэтому, например, в третьем цикле будут открыты вентили BI, ВЗ и В4.
Понятно, что управление вентилями останется тем же, если заменить память и регистр РДМПП связями, непосредственно соединяющими соответствующие выходы триггеров сдвигового регистра и управляющие вентили, на которые должны быть поданы управляющие сигналы в данном цикле (в соответствии с двоичной последовательностью микрокоманды).
Поэтому (рис. 1.19) выход триггера Д1 подсоединяется к вентилям I и 2 (1100), выход Д2 - к вентилям I и 3 (1010) и выход ДЗ - к вентилям I, 3 и 4. Естественно при этом появление схем ИЛИ, выполняющих функцию сборки.
Такое построение блока УУ является его схемной реализацией при выполнении одной команды (микропрограммы).
Рис. 1.19
Таким образом, в общем случае схемная реализация блока устройства управления может быть представлена в виде структурной схемы (рис.1.21).
Число тактов (микрокоманд), которые необходимы для выполнения команды'(микропрограммы), часто является достаточно большим. Чтобы уменьшить оборудование, требуемое для формирования тактовых импульсов, обычно вместо сдвигающего счетчика используют счетчик с дешифратором (рис. 1.22).
Рис.1.21 Рис.1.22
Дополнительно (для общего развития):
Временные соотношения при микропрограммной реализации УУ
Время цикла АЛУ - tАЛУ определяется временем, равным сумме временных задержек при реализации операции, имеющей наибольший логический путь. В рассмотренном выше примере это был путь от установки информации в регистры Р2 и Р3 до получения результата в регистре сумматора РС.
Достаточно часто (без претензии на точность) под циклам центрального процессора понимают цикл АЛУ.
Скорость микропрограммной памяти оказывает существенное влияние на производительность процессора. В каждом цикле процессора эта память должна обеспечить выдачу сигналов для управления управляющими вентилями. Поэтому обращение к постоянной памяти синхронизируются с циклом процессора. Если длительность цикла микропрограммной памяти больше цикла процессора, то цикл работы машины будет иметь цикл больший, чем цикл процессора.
В лучшем случае при перекрытии работы процессора и микропрограммной памяти он будет равен циклу памяти МПП. Вариант, когда цикл микропрограммной памяти значительно меньше цикла процессора, обычно представляется малореальным. Таким образом, следует выбрать такую техническую реализацию памяти МПП, которая может обеспечить длительность цикла машины, равную длительности цикла процессора.
Временная производительность работы машины при микропрограммной реализации образуется выполнением следующих этапов:
-
установка адреса в регистре адреса МПП, включая принятие решения о переходе (время tА);
-
обращение к микропрограммной памяти, в результате которого в регистр данных РД МПП устанавливается микрокоманда (время tМПП);
-
время декодирования содержимого регистра РДПММ (время tD);
-
выполнение операции в АЛУ (время tАЛУ).
Длительность цикла машины Т при последовательном выполнении этапов определяется сумой:
Т= tА +tМПП +tD +tАЛУ .
Это суммарное время определено из тех соображений, что при формировании адреса следующей микрокоманды используются результаты проверки, зависящие от работы АЛУ под действием текущей микрокоманды (рис. 1.14). Если адрес следующей микрокоманды не зависит от данных, с которымси в данный момент работает АЛУ, то возможно перекрытие (совмещение) работы АЛУ иМПП (рис. 1.15), что приводит к уменьшению машинного цикла до Т=tD+tАЛУ.
Использование совмещения работы АЛУ и МПП является достаточно эффективным, такт как многие выполняемые микрокоманды являются последовательными и не связаны с переходом.
Дополнительного улучшения условий совмещения работы АЛУ и МПП можно добиться с помощью метода, когда при одном обращении к ячейке МПП возможно считывание одной и двух микрокоманд. Причем окончательный выбор микрокоманды, записываемой в регистр данных МПП, откладывается до возможно позднего момента времени, чтобы определить по результатам текущего цикла АЛУ нужную микрокоманду.
6














