Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Вашкевич Н.П., Захаров А.П. Проектирование и моделирование микропрограммных цифровых устройств с помощью PCAD

.pdf
Скачиваний:
56
Добавлен:
02.05.2014
Размер:
461.01 Кб
Скачать

21

Продолжение табл. 4

Наименование МО, условия ее

Признаки,

вырабатываемые

в

 

п/п

выполнения

и

представление

в

результате

выполнения

МО

и

 

 

операторах присваивания

 

комментарии

 

 

 

 

 

2

Проверка

исходных чисел

на

Осуществляется так же как и

 

 

нуль

 

 

 

для чисел

с

фиксированной

 

 

 

 

 

 

точкой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

Установка регистров РСм и

 

 

 

 

 

 

 

 

 

РСМм в нуль

 

 

 

 

 

 

 

 

 

 

 

 

РСм:=0; РСМм:=0

 

 

 

 

 

 

 

 

 

4

Другие

 

микрооперации,

Мантисса

произведения Mz

 

 

связанные с умножением мантисс

может

быть

 

получена

с

 

 

сомножителей,

выполняются

так

нарушением

 

 

нормализации

 

 

же как и для чисел с

вправо.

Сигнал

нарушения

 

 

фиксированной точкой для p=0

 

нормализации

вправо

HR=1

 

 

 

 

 

 

вырабатывается при z0=z1

 

 

5

Определение порядка результата

Возможны особые случаи:

 

 

 

умножения Pz=Px+Py

 

-

при

 

Pz>Pmax.доп.

 

 

РСМp:=РСМp+Р1p

 

вырабатывается

 

сигнал

пере-

 

 

 

 

 

 

полнения порядка OV=1;

 

 

 

 

 

 

 

 

-

при

 

Pz<Pmin.доп.

 

 

 

 

 

 

вырабатывается

 

сигнал

анти-

 

 

 

 

 

 

переполнения, Uп=1

 

 

 

 

 

 

 

 

 

6

Нормализация

 

результата

Возможны особые случаи, как

 

 

умножения влево при HR=1:

 

в п.5

 

 

 

 

 

 

 

 

Mz:=ALS (Mz,1);

 

 

 

 

 

 

 

 

 

 

Pz:=Pz-1;

 

 

 

 

 

 

 

 

 

 

 

 

РСМм:=ALS(РСМм,1);

 

 

 

 

 

 

 

 

 

 

Р2м:=LS(Р2м,1);

 

 

 

 

 

 

 

 

 

 

 

РСМp:=РСМp+(2n-1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 5

 

 

Деление чисел с фиксированной точкой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

 

 

 

 

 

Наименование МО, условия ее

Признаки, вырабатываемые

в

п/п

выполнения

и представление

в

результате

выполнения

МО

и

 

операторах присваивания

 

комментарии

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

Запись

исходных

чисел

в

Для

целых

чисел

 

делимое

 

регистры ОА:

 

 

располагается

так,

 

чтобы

 

- числа в прямом коде (модули

младший разряд делимого был в

 

чисел)

 

 

 

(n-1)-м разряде Р2.

 

 

 

 

 

 

 

 

Для

простых

дробей

делимое

 

РСМ(0/n):=|x(0/n)|;

 

 

 

 

 

располагается так, чтобы старший

 

Р2(0/n-1):=|x(n+1/2n)|;

 

 

 

 

 

разряд

делимого

располагался

в

 

Р1:=|y|;

 

 

 

старшем разряде РСМ после кода

 

- числа в дополнительном коде

знака делимого.

 

 

 

 

 

 

РСМ(0/n):=[x(0/n)]2;

 

 

Для чисел в прямом коде в

 

 

 

знаковом

разряде

регистров

 

Р2(0/n-1):=[x(n+1/2n)]2;

 

устанавливаются нули

 

 

 

 

 

Р1:=[y]2

 

 

 

 

 

 

 

 

 

 

 

 

2

Проверка

исходных

чисел

на

В

результате

проверки

 

 

нуль

 

 

 

исходных

чисел

на

нуль

 

 

 

 

 

вырабатываются сигналы:

 

 

 

 

 

 

 

-

сигнал

нулевого

результата

 

 

 

 

 

при x=0, y

0;

 

 

 

 

 

 

 

 

 

 

- сигнал деления на нуль при

 

 

 

 

 

x

0, y=0;

 

 

 

 

 

 

- сигнал вещественной неопределенности при x=y=0

3 Запись в счетчик тактов числа тактов деления

СчТ:=n

23

Продолжение табл. 5

Наименование МО, условия ее

Признаки,

вырабатываемые

в

п/п

выполнения и представление в

результате

выполнения

МО

и

 

операторах присваивания

комментарии

 

 

 

4

Пробное вычитание (сложение)

Сигнал

переполнения вы-

 

для анализа на переполнение:

рабатывается:

 

 

 

 

- для чисел в прямом коде

- для чисел в прямом коде при

 

анализ на переполнение вы-

С=1 (остаток положительный);

 

 

полняется вычитанием делителя из

- для чисел в дополнительном

 

делимого

коде при РСМ(0)1=x0.

 

 

 

РСМ:= РСМ +

 

 

 

 

 

Р1+1;

При

наличии

переполнения

 

- для чисел в дополнительном

операция деления прекращается.

 

 

коде для этой цели выполняется

При

отсутствии переполнения

 

вычитание при x0=y0

осуществляется

сдвиг

влево

в

 

РСМ:= РСМ +

 

 

РСМ и Р2 после чего начинаются

 

Р1+1, а при

 

x0 y0 сложение в сумматоре

такты

деления,

для

чисел

в

 

дополнительном

 

коде

 

РСМ:=РСМ+Р1

 

 

формируется код знака частного

 

 

 

 

 

z0 (см. п.5)

 

 

 

 

24

Продолжение табл. 5

Наименование МО,

условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения

и

представление

в

результате выполнения

МО

и

 

операторах присваивания

 

 

комментарии

 

 

 

 

5

Определение

 

 

кода

знака

Для чисел в прямом коде код

 

частного и его запись в регистр

знака

частного

формируется

 

частного:

 

 

 

 

 

 

 

комбинационной

 

схемой,

 

- для чисел в прямом коде код

реализующей

 

сложение

по

 

знака

частного

определяется

по

модулю 2 кодов знаков делимого

 

формуле z0=x0 y0. Р2(n):=z0;

 

и делителя.

 

 

 

 

 

 

Для

чисел

в

дополнительном

 

- для чисел в дополнительном

 

коде

код

 

знака

 

частного

коде

код

знака

частного

 

определяется

по

результату

формируется

автоматически

в

 

пробного вычитания

(сложения)

результате

анализа

 

на

 

таким образом:

 

 

 

 

 

 

переполнение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

для y0=1

zо =

 

о;

 

 

 

 

 

 

 

 

 

 

C

 

 

 

 

 

 

 

 

 

 

для y0=0 z0=C0;

 

 

 

 

 

 

 

 

 

 

- код знака частного заносится в

 

 

 

 

 

 

 

младший разряд регистра Р2 перед

 

 

 

 

 

 

 

выполнением тактов деления

 

 

 

 

 

 

 

P2(n):= yo Co yo Co

6 Сдвиг влево в регистрах РСМ и Р2 выполняется:

-после пробного вычитания (сложения) в сумматоре;

-после вычитания или сложения

всумматоре в каждом такте деления

РСМ:=ALS(РСМ,1); Р2:=ALS(Р2,1)

25

Продолжение табл. 5

Наименование

МО, условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения

и

представление

в

результате

выполнения МО

и

 

операторах присваивания

 

комментарии

 

 

 

7

Сложение

или

вычитание

в

После каждого сложения или

 

сумматоре

после

анализа

на

вычитания

 

вырабатывается

 

переполнение для чисел в прямом

сигнал

С,

по

которому

 

коде:

 

 

 

 

 

определяется значение очередной

 

- при С=0 выполняется сложение

цифры частного:

 

 

 

РСМ:=РСМ+Р1;

 

 

zi=Ci

 

 

 

 

 

-

при

С=1

выполняется

 

 

 

 

 

 

вычитание

 

 

 

 

 

 

 

 

 

РСМ:= Р1+1

8

Сложение

или вычитание

в

После

каждого сложения или

 

сумматоре после

анализа

на

вычитания

вырабатывается

 

переполнение

для

чисел

в

сигнал

С,

по

которому

 

дополнительном коде:

 

 

определяется в

зависимости от

 

- при РСМ(0)=y0

выполняется

знака делителя очередная цифра

 

вычитание

 

 

 

частного:

 

 

 

 

 

 

 

zi=Ci при y0 =0;

 

 

 

 

 

 

 

 

РСМ:= РСМ +

 

 

zi =

 

при y0=1

 

 

Р1+1;

Ci

 

 

- при РСМ(0)

y0 выполняется

 

 

 

 

 

 

 

сложение

 

 

 

 

 

 

 

 

 

 

РСМ:=РСМ+Р1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

Вычитание из

счетчика тактов

Вычитание

единицы

из

 

единицы

 

 

 

счетчика

 

тактов выполняется

 

СчТ:=СчТ-1

 

 

 

после каждого такта деления.

 

 

 

 

 

При

СчТ=0

вырабатывается

 

 

 

 

 

 

 

 

 

 

сигнал окончания тактов деления

26

Продолжение табл. 5

Наименование

МО, условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения и

представление

в

результате выполнения

МО

и

 

операторах присваивания

 

 

комментарии

 

 

 

10

Коррекция

частного

при

Коррекция

частного

при

 

делении

чисел в

дополнительном

делении чисел в прямом коде не

 

коде

производится

после

требуется

 

 

 

 

окончания тактов деления

путем

 

 

 

 

 

прибавления

единицы

 

к

 

 

 

 

 

содержимому регистра частного в

 

 

 

 

 

следующих случаях:

 

 

 

 

 

 

-при делении ненацело для z0=1;

-при делении нацело для y0 = 1

P2 := P2 + 1

27

Продолжение табл. 5

Наименование

МО,

условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения и представление

в

результате выполнения

МО

и

 

операторах присваивания

 

комментарии

 

 

 

11

Восстановление

 

последнего

Признаком

отрицательного

 

остатка делимого для чисел в

остатка делимого для

прямого

 

дополнительном

коде

произво-

кода является появление нуля в

 

дится, если знаки остатка и

регистре C

 

 

 

 

делимого не совпадают. Для этой

 

 

 

 

 

цели:

 

 

 

 

 

 

 

 

- при РСМ(0)

y0 выполняется

 

 

 

 

 

сложение в сумматоре

 

 

 

 

 

 

 

РСМ:=РСМ+Р1;

 

 

 

 

 

 

 

- при РСМ(0)=y0 выполняется вычитание в сумматоре

РСМ:= РСМ + Р1+1.

Для чисел в прямом коде восстановление последнего остатка производится, если он отрицательный, выполнением операции сложения в сумматоре

РСМ:=РСМ+Р1

28

Таблица 6

Деление чисел c плавающей точкой

Наименование МО, условия ее

Признаки,

вырабатываемые

в

п/п

выполнения

и представление

в

результате

выполнения

МО

и

 

операторах присваивания

 

комментарии

 

 

 

1

Запись

исходных

чисел

в

Мантиссы

делимого

распо-

 

регистры мантисс и порядков ОА:

лагаются так, чтобы старший

 

- числа в прямом коде (модули

разряд

мантиссы

располагался

в

 

чисел)

 

 

 

 

старшем разряде РСМ после кода

 

 

 

 

 

знака делимого.

 

 

 

 

РСМм(0/n):=|Mx(0/n)|,

 

 

 

 

 

 

 

 

Для чисел в прямом коде в

 

Р2м(0/n-1):=|Mx(n+1/2n)|,

 

знаковые

разряды регистров

 

Р1м:=[My],

 

 

 

устанавливаются нули

 

 

 

РСМp:=[Px]2, Р1p:=[Py]2;

 

 

 

 

 

 

 

 

- числа в дополнительном коде

 

 

 

 

 

 

 

РСМм(0/n):=[Mx(0/n)]2,

 

 

 

 

 

 

 

 

Р2м(0/n-1):=[Mx(n+1/2n)]2,

 

 

 

 

 

 

 

 

Р1м:=[My]2,

 

 

 

 

 

 

 

 

 

РСМn:=[Px]2 ,Р1n:=[Py]2

 

 

 

 

 

 

 

2

Проверка

исходных

чисел

на

Осуществляется так же как и

 

нуль

 

 

 

 

для чисел

с

фиксированной

 

 

 

 

 

 

точкой

 

 

 

 

 

 

 

 

3

Пробное вычитание (сложение)

При наличии переполнения для

 

для анализа

на переполнение

чисел

с

плавающей

точкой

 

выполняется так же как и для

осуществляется

восстановление

 

деления

двоичных

чисел

с

мантиссы

делимого

 

с

 

фиксированной точкой

 

 

последующей

 

 

ее

 

 

 

 

 

 

денормализацией

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

29

Продолжение табл. 6

Наименование

МО,

условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения

и

представление

в

результате

выполнения МО

и

 

операторах присваивания

 

 

комментарии

 

4

Восстановление

мантиссы

При отсутствии переполнения

 

делимого

после

пробного

формируется код знака частного

 

вычитания

(сложения)

при

для чисел в дополнительном коде

 

РСМ(0)1=x0.

 

 

 

 

 

и осуществляется сдвиг в РСМ и

 

Для этой

цели в

сумматоре

Р2 после чего начинаются такты

 

выполняется:

 

 

 

 

 

деления чисел обоих кодов

 

 

 

 

 

 

 

 

 

 

- сложение, если при анализе на переполнение выполнялось вычитание

РСМм:=РСМ(0)1+P1м;

- вычитание, если при анализе на переполнение выполнялось сложение

 

РСМ :=

РСМ(0)

+

 

+2n

 

 

Р1

 

 

м

1

 

м

 

 

5

Денормализация

 

мантиссы

Знак мантиссы делимого после

 

делимого

после анализа

на

сдвига сохраняется, так как сдвиг

 

переполнение производится

при

арифметический

 

РСМ(0)1=x0

сдвигом мантиссы Mx

 

 

вправо на 1 разряд и увеличением

 

 

порядка Px на единицу

 

 

 

 

 

 

Px=Px+1;

 

 

 

 

 

 

 

Mx:=ARS(Mx,1);

 

 

 

 

 

 

РСМp:=РСМp+1

 

 

 

 

 

30

Продолжение табл. 6

Наименование

МО, условия

ее

Признаки,

вырабатываемые

в

п/п

выполнения и

представление

в

результате

выполнения

МО

и

 

операторах присваивания

 

 

комментарии

 

 

 

6

Деление мантисс после анализа

Если

переполнение

имело

 

на переполнение осуществляется

место, то код знака частного для

 

по алгоритму деления чисел с

мантисс в

дополнительном коде

 

фиксированной точкой (для p=0);

может сформироваться

только

в

 

при этом необходимо иметь в

результате первого такта деления,

 

виду, что при наличии перепол-

выполняемого

после

денор-

 

нения деление

мантисс

может

мализации делимого.

 

 

 

производиться

только

после

В результате деления нор-

 

восстановления

мантиссы

мализованных мантисс и в случае

 

делимого и ее денормализации

 

деления

денормали-зованных

 

 

 

 

 

 

Mz:=Mx/My

 

 

 

мантисс

результат

деления

 

 

 

 

 

представляется

 

в

 

 

 

 

 

нормализованном виде