Операции умножителя

Умножитель выполняет ФЗ- и ПЗ-умножение и ФЗ-умножение с накоплением. ПЗ-инструкции умножителя оперируют с 32- или 40-битными ПЗ-операндами и вырабатывают 32- или 40-битный ПЗ-результат. ФЗ-инструкции умножителя оперируют с 32-битными ФЗ-данными и производят 80-битный результат. Входные операнды обрабатываются как дробные или целые числа, беззнаковые числа или числа в дополнительном коде.

Умножитель берет два входных операнда (Х и У), которые могут быть любыми регистрами РФ. Результат ПЗ-операции всегда записывается в регистр РФ. ФЗ-операции могут накапливать ФЗ-результаты в любом из локальных регистров результата умножителя (MR) или записывать результаты обратно в РФ. Результаты, хранящиеся в MR-регистрах, могут также быть округлены или насыщены отдельными операциями.

Местоположение ФЗ-результата в 80-битном поле регистра MR зависит от того дробный или целый формат имеет результат (рис.3.2).

Рис.3.2. Размещение ФЗ-результата умножителя

Данные могут быть записаны в MR0, MR1, MR2 из старших 32-х разрядов ячейки РФ. При записи значения в MR1 происходит его знаковое расширение в MR2. При записи значения в MR0 знакового расширения не происходит. При записи в РФ значения из MR0, MR1, MR2 младшие 8 бит 40-битного слова заполняются нулями.

Два регистра умножителя MR называются регистрами переднего плана (MRF) и заднего плана (MRB) и имеют идентичный формат. В отличие от других блоков, для переключения к "теневым" наборам которых требуется переключение бита в регистре управления MODE1, регистры переднего и заднего плана умножителя доступны одновременно и выбираемый регистр указывается в команде. Например:

MR1F = R5;! записать в поле MR1 регистра MRF значение

! из R5

R2 = MR0B;! записать в R2 значение поля MR0 регистра

! MRB

MRF = MRF + R5*R0;! прибавить к содержимому регистра

! MRF результат произведения R5*R0

Умножитель управляется двумя битами состояния режима в регистре MODE1, (TRUNC и RND32), которые влияют на операции умножителя так же, как и на операции АЛУ.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: