Разработка функциональной схемы операционного автомата
Операнды разрядностью 32 байта поступают в операционный автомат (ОА) в ПК по входной шине. Первый операнд - множимое. Запись мантиссы множимого производится в RG1 и RG2. Знак числа записывается в Т1 и в 23-й разряд RG1. В RG4 происходит запись характеристики (со знаком) множимого. Выполняется проверка операнда на ноль, если операнд равен нулю, то на выходную шину подаем ноль. В счетчик СТ1 записывается значение регистра RG4. В счетчик циклов СТ2 записывается значение «001001». Вторым операндом приходит множитель. Запись знака и мантиссы множителя осуществляется в RG1, запись его характеристики в RG4. Выполняется проверка операнда на ноль, если операнд равен «0», то на выходную шину подается «0». В СТ1 записывается значение суммы характеристик. Если возникло ПРС характеристик, триггер Т2 устанавливаем в единицу. При этом может возникнуть временная ПРС, которая впоследствии может быть исправлена при нормализации мантиссы. Если же ПРС не возникло, то в цикле умножения производится анализ младшего разряда множителя, если он равен единице, то в RG3 заносим сумму множимого и частичной суммы. После этого производится сдвиг RG1 и RG3 вправо, а значение СТ2 увеличивается на 1. Цикл умножения заканчивается, когда в старшем разряде СТ2 появится «1». Если старший разряд RG3 равен нулю, производится нормализация. В противном случае необходимо проверить а было ли зафиксировано временное ПРС. Если да, то устанавливаем триггер Т2 в единицу. Если после нормализации возникло ПМР, то обнуляем RG3, RG1 и счетчик CT1 и выдаем на выходную шину ноль.
Для выдачи результата на выходную шину содержимое RG3, СТ1 подается на усилитель формирователь. Причем старший разряд СТ1 инвертируется.
Для организации работы операционной части из управляющей части автомата (УА) подаются следующие управляющие сигналы:
y0 – запись в RG1, RG4;
y1 – запись в RG2, T1, установка Т2 в положение «0», обнуление RG3 и CT1, запись СТ2;
y2 – запись в СТ1 значения выхода SM2;
y3 – сдвиг RG3 влево, СТ1:=СТ1-1;
y4 – запись в RG3 значения выхода SM1, запись в Т2 значения выхода переноса SM1;
y5 – сдвиг RG1 и RG3 вправо, СТ2:=СТ2+1;
y6 – обнуление Т1 и RG1;
y7 – установка Т2 в положение «1»;
y8 – выдача результата на выходную шину.
Из ОА в УА необходимо передавать осведомительные сигналы о состоянии ОА, которые определяются следующим списком логических условий:
Х – проверка наличия операндов на входной шине;
р1 – проверка на ноль;
р2 – проверка на временное ПРС;
р3 – младший разряд RG1 (проверка очередной цифры множителя);
р4 – старший разряд RG3 (проверка нормализации результата);
р5 – проверка на ПМР;
р6 – проверка на окончание операции умножения;
р7 – проверка на ПРС;
Z – проверка возможности выдачи результата на шину выхода.
Таким образом, УА должен вырабатывать 9 управляющих сигналов и посылать их в ОА в нужные такты машинного времени в соответствии с алгоритмом выполнения операции умножения, учитывая 8 осведомительных сигналов, поступающих из ОА. Функциональная схема (ФС) ОА изображена на рисунке 3.1.
Дата добавления: 2022-02-05; просмотров: 291;