Всеукраїнська науково-практична конференція



Сторінка28/60
Дата конвертації11.05.2018
Розмір3.74 Mb.
1   ...   24   25   26   27   28   29   30   31   ...   60

ЖАБИНА В.В.


НТУУ «КПИ» (Украина)

ДЕЛЕНИЕ ЧИСЕЛ С ПЛАВАЮЩЕЙ ЗАПЯТОЙ В НЕАВТОНОМНОМ РЕЖИМЕ



Предложен алгоритм деления чисел с плавающей запятой, позволяющий совмещать поразрядный ввод мантисс с поразрядным формированием результата, что дает возможность использовать его для выполнения зависимых операций в режиме совмещения.
При решении задач управления в реальном времени часто возникает необходимость быстрого вычисления функциональных зависимостей с помощью суперпозиции двухместных операций. Для этого требуется выполнять последовательности зависимых по данным операций, которые нельзя распараллелить на уровне алгоритмов обработки машинных слов. Эффективным способом ускорения вычислений является применение неавтономного режима выполнения операций с использованием цепочки операционных устройств (ОУ), работающих в избыточной системе счисления [1, 2]. На каждом шаге вычислений в ОУ вводится по одному разряду операндов, и с задержкой на небольшое число шагов формируется один разряд результата, начиная со старших разрядов. В связи с этим зависимые операции выполняются в режиме частичного совмещения, что создает предпосылки для уменьшения общего времени вычислений по сравнению с ОУ параллельного типа.

Обработка чисел, представленных в форме с фиксированной запятой, приводит к следующим недостаткам: существенно ограничивается диапазон представления чисел, накапливается погрешность при выполнении последовательности операций из-за отбрасывания младших разрядов.

Рассмотрим возможность устранения указанных недостатков при реализации неавтономных вычислений с плавающей запятой на примере операции деления, которая необходима, например, при вычислении функций методом разложения в цепную дробь.

Будем считать, что числа с плавающей запятой имеют вид , где - основание системы счисления, – порядок (целое число), а - мантисса, находящаяся в пределах . Значение определяется величиной основания системы счисления и диапазоном изменения значений цифр.

Пусть мантисса числа представлена в форме , где . Тогда будет иметь вид . Исследуя предел суммы, найдем диапазон представления мантисс в виде . Следовательно мантисса частного от деления изменяется в диапазоне .

Из диапазона изменения чисел следует, что нарушение нормализации при делении может происходить как влево, так и вправо, что усложняет алгоритмы выполнения операции по сравнению с обработкой чисел с фиксированной запятой.

Считаем, что вычисления выполняются в вычислительной системе с непосредственными связями между вычислительными узлами, которые соединены между собой в соответствии с графом потоков данных.

Вычислительные узлы содержат блоки для обработки мантисс и порядков, которые взаимодействуют между собой. При выполнении цепочки операций цифры мантисс принимаются в модуль из предыдущего модуля, начиная со старших разрядов, и поразрядно выдаются в последующий. Алгоритмы обработки мантисс известны [2, 3].

При выполнении арифметических операций над мантиссами возможна ситуация нарушения нормализации. В канонических системах эта проблема решается сдвигом мантиссы влево или вправо. При неавтономных вычислениях в избыточных системах можно осуществить только относительный сдвиг мантисы вправо путем задержки разрядов при приеме в вычислительный модуль. Сдвиг влево таким же образом осуществить невозможно. Все это требует специальных алгоритмов обработки чисел в избыточных системах.

Порядки операндов могут обрабатываться в соответствии с приведенным ниже алгоритмом.



Алгоритм деления .

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

1. Принять порядки и .

2. Получить предварительный порядок результата и разность порядков .

3. В первых двух циклах, пока , принять очередную цифру делителя и 0 в качестве цифры делимого. Получить . В последующих циклах принимать и . Сформировать цифру мантиссы результата .

4. Если цифра , то выдать ее в качестве цифры результата. В противном случае скорректировать порядок , цифру не выдавать.

5. После первой ненулевой цифры результата выдать окончательный порядок .

Возможность переполнения разрядной сетки учитывается в п. 2. Нормализацию результата влево обеспечивает п. 4.

Если для записи порядка используется разрядов, а для записи мантиссы – разрядов, то число в избыточной системе с основанием может находиться в пределах , что превышает диапазон представления чисел с фиксированной запятой при одинаковом количестве используемых разрядов.

Выводы. Таким образом, применение формы представления чисел с плавающей запятой при выполнении операций в избыточных системах счисления при одинаковой длине разрядной сетки расширяет диапазон представления чисел и повышает точность неавтономных вычислений по сравнению с фиксированной запятой. Обработка порядков может быть совмещена во времени с обработкой мантисс, то есть не вносит задержки в процесс вычислений.

За счет поразрядной обработки данных создаются предпосылки сокращения времени вычислений за счет совмещения выполнения зависимых по данным операций.

Благодаря последовательной передачи данных сокращается число связей между узлами системы, что снижает энергопотребление и повышает надежность систем.
СПИСОК ЛИТЕРАТУРЫ

1. Дичка И.А. Жабина В.В. Совмещение зависимых операций на уровне обработки разрядов операндов // Искусственный интеллект. – 2008. – №3. – С. 649-654.

2. Жабин В.И., Корнейчук В.И., Тарасенко В.П. Некоторые машинные методы вычисления рациональных функций многих аргументов // Автоматика и телемеханика. – 1977. – №2. – С. 145-154.

3. Жабин В.И., Корнейчук В.И., Тарасенко В.П. Метод деления чисел в избыточном представлении // Автоматика и вычислительная техника. – 1977. – №3. – С. 81-85.



УДК 004.932.4


Поділіться з Вашими друзьями:
1   ...   24   25   26   27   28   29   30   31   ...   60


База даних захищена авторським правом ©wishenko.org 2017
звернутися до адміністрації

    Головна сторінка