Ковалев Александр Александрович

Сегодня аппаратная составляющая современных компьютеров оперирует всевозможными операциями над числами, которые могут быть представлены в двух форматах – в целом и числа с плавающей запятой. Возникновение и накопление погрешности вычислений при выполнении арифметических операций с плавающей запятой является неотъемлемой частью современного компьютинга, так как числа в формате IEEE754 представляют конечное множество, на которое отображается бесконечное множество вещественных чисел и шаг чисел равен величине наименьшего разряда: h = 2 E-m-off . Таким образом график ошибки представления и выглядит как показано на рисунке 1. Поэтому актуальным и востребованным является решение проблемы точности и достоверности компьютерных вычислений путем минимизации погрешностей, их учета и контроля при работе с числами в формате с плавающей запятой.

В работе [ 1 , с. 196–210] рассмотрены проблемы компьютерных вычислений, вызванных использованием стандарта IEEE 754, а также приведена классификация ошибок с примерами получения «неожиданных» результатов. Анализ материала показал, что к формату числа с плавающей запятой невозможно точно привести вещественное число в виду того, что формат содержит множество конечных значений (точек разрядной сетки) которыми невозможно представить бесконечное множество действительных чисел. Этот фактор является основным и самым важным недостатком стандартного плавающего формата, что подтверждается и исследуется в целом сегменте научных публикаций, например в [2 ; 3 ].

Среди прочих решений данной проблемы можно выделить возможность перехода от числа «точки на числовой оси» к числу интервальному, что подтверждается развитием интервального анализа [ 4 ] и распространением интервальных подходов при решении широкого круга задач [5 ]. Интервальный подход позволяет учитывать ошибки вычислений, а также решает проблему компьютерного представления и обработки иррациональных (в том числе и трансцендентных) чисел. В исследованиях [6 ; 7 ] выделен недостаток перехода к машинным интервалам, поскольку при занесении значений границ интервального числа в память ЭВМ возникает необходимость вновь использовать вещественные форматы чисел, являющиеся стандартными форматами чисел с плавающей запятой одинарной или двойной точности. Также к недостаткам можно отнести возможное разрастание интервала.

8 стр., 3682 слов

Мощность множества

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

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

Поэтому целью данной работы является проведение анализа возможностей постбинарного представления чисел. Выявление и анализ целесообразности применения постбинарных чисел в интервальной арифметике. В рамках обозначенного анализа необходимо предложить конфигурацию арифметико–логического устройства (АЛУ) как основной части специализированного математического сопроцессора [ 8 ].

1. Актуальность темы

Сегодня, для представления числовой информации с плавающей запятой используют стандарт IEEE 754. Данный стандарт используется как в аппаратных, так и в программных реализациях арифметических действий. Первый стандарт был принят в 1985 году, последний же вариант принят в 2008 году. В редакции стандарта от 2008 года сохранены все бинарные форматы из первоначального стандарта и добавлены еще три базовых стандарта (один бинарный и два десятичных).

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

Стандарт чисел IEEE 754 определяет представление чисел в виде степени и мантиссы. Стандартное представление имеет мантиссу и степень, указывающую двоичный показатель степени крайне левого разряда мантиссы. При этом стандарт устанавливает форматы представления по длинам, представленные в таблице 1.

Таблица 1 – Форматы по длинам

Name Common name BaseDigit E min E max E max Emax Dec
binary 16 Half precision 2 -14 +15 3.31 4.51
binary 32 Single precision 2 -126 +127 7.22 38.23
binary 64 Double precision 2 -1022 +1023 15.95 307.95
binary 128 Quadruple precision 2 -16382 +16383 34.02 4931.77
decimal 32 10 -95 +96 7 96
decimal 64 10 -383 +384 16 384
decimal 128 10 -6143 +6144 34 6144

Первое, что выделяется в этой таблице – длины мантисс.

Десятки точных знаков после запятой являются излишними. В наши дни метрология может измерить время и скорость света пока лишь с десятизначной точностью. В технике же используются числа, как правило, не превышающие пяти знаков после запятой. Потому большая часть мантисс чисел стандарта IEEE754, особенно в форматах двойной и расширенной точности, фактически бессмысленна и представляет собой так называемый информационный шум. Можно сделать вывод, что современный компьютинг, основанный на стандарте чисел с плавающей запятой IEEE754 является просто обработкой шумов. И как следствие выходные данные этого компьютинга не являются достоверными и зашумленными. Выделение содержательной части из этих шумов чисел с плавающей запятой осуществляется человеком (например, программистом при планировании вывода результатов) по интуиции, а не на основе твердых математических правил и алгоритмов.

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

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

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

2. Постбинарное представление данных

В этом случае целесообразно использовать постбинарные интервальные форматы одинарной (pbinary128/32ip) и двойной (pbinary256/64ip) точности [ 7 , c. 216]. Структура формата одинарной точности приведена на рисунке 2.

Для кодирования тетралогики в современной бинарной логике были предложены соответствия:

  • 01 – Логический «0»
  • 10 – Логическая «1»
  • 00 – состояние «А» – абсолютная неопределенность (неизвестно, или «истина» или «ложь»), что можно представить в виде объединения данных множеств
  • 11 – состояние «М» – множественность, многозначность (и «истина» и «ложь» одновременно

Согласно рисунку 2, рассматриваемый формат имеет две части (условно «левую» – left border, диапазон [127:68] и «правую» – right border, диапазон [67:8]) для описания соответствующих границ интервала. Для преставления данных в этом формате используются принципы постбинарного кодирования, а в качестве кодовой системы применяется тетракод [ 7 , c. 53–59].

Поскольку структура постбинарного интервального формата для каждой границы одинакова, то вычислительный блок АЛУ для поддержки этого формата может быть спроектирован так, чтобы в единый момент времени производить выборку одной границы каждого из двух операндов для выполнения арифметических (или, точнее, интервальных) и логических операций. Такой подход соответствует выполнению классических интервальных операций [ 4 , с. 31–32]. И обеспечивает сокращение аппаратных затрат на построение данного постбинарного итервального арифметическо–логического устройства, так как фактически количество возможно используемых блоов сокращается вдвое.

3. Аппаратная модель

Для разработки аппаратной модели постбинарного интервального АЛУ (в дальнейшем ПИАЛУ, PIALU) был выбран язык проектирования VHDL – язык описания аппаратуры интегральных схем, который является базовым языком при разработке аппаратуры современных вычислительных систем. В дальнейшем использование VHDL для рассматриваемого блока позволит спроектировать FPGA–решения, что на начальном этапе сделает продуктивными исследования модели устройства (получение временных диаграмм, моделирование нестандартных ситуаций), а в последующих – выполнить его физическую реализацию.

Текущий вариант ПИАЛУ предполагает реализацию четырех основных интервальных операций: сложения, вычитания, умножения и деления. Схема ПИАЛУ изображена на рисунке 3.

Структурная схема на рисунке 3 имеет обобщенный характер, но дает отчетливое представление о некоторых количественных и качественных показателей разрабатываемого вычислительного устройства. В ПИАЛУ все регистровые блоки («First Operand», «Second Operand», «ACC») имеют полное структурное соответствие формату pbinary128/32ip. Блок «Compare» – компаратор, способный сравнивать два тетракодовых слова, а блок «Rounder» – блок, в котором выполняется постбинарное округление [ 1 , с. 211–219]. Блок «ChOperation» позволяет выбрать тип операции (сложние, вычитание, умножение, деление), а мультиплексоры MX, в зависимости от операции и знаков операндов, позволяют подать на сумматор «Sum» операнды в нужном порядке. В схеме также используются сдвигатель «Shifter», регистр флагов «Flags», счетчик «CT». Аккумулятор ACC используется для реализации постбинарного умножения [1 , с. 254–255].

Работа однотетритного сумматора с полным перебором исходных данных изображена на рисунке 4, которая полностью соответствует таблице постбинарного сложения [ 1 , с. 103]. Где:

  • «А» – первый операнд
  • «B» – второй операнд;
  • ie – входной перенос (в нашем случае зафиксирован в значении «01», что соответствует бинарному 0);
  • oe – выходной перенос;
  • S – сумма

4. Ожидаемые результаты

Финальным этапом работы является получение полноценной аппаратной модели ПИАЛУ, которое позволит выполнять элементарные арифметические действия (сложение, вычитание, деление, умножение) с числами, представленными в постбинарном интервальном формате 128/32ip, и дальнейшая реализация на FPGA плате, так как реализация на заказной БИС является очень дорогостоящей.

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

Так как, для построения аппаратной модели используется язык VHDL, это позволит с легкостью реализовать данный проект на FPGA-решениях, доступных в лабораториях ДонНТУ (Xilinx Spartan–3E Starter Kit).

Тестирование и отладка на FPGA–плате, позволит приблизится к следующему этапу разработки – физической реализации ПИАЛУ.

Выводы

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

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

Список источников

[Электронный ресурс]//URL: https://drprom.ru/referat/tochnost-vyichisleniy/

  1. Аноприенко А. Я. Тетралогика, тетравычисления и ноокомпьютинг. Исследования 2010–2012. / А. Я. Аноприенко, С. В. Иваница — Донецк: ДонНТУ, Технопарк ДонНТУ УНИТЕХ, 2012. — 308 с.
  2. Юровицкий В. М. IEEE754–тика угрожает человечеству МФТИ, РГСУ, Москва. — Интернет–ресурс. — Режим доступа: http://www.yur.ru.
  3. IEEE 754 – стандарт двоичной арифметики с плавающей точкой. — Интернет–ресурс. — Режим доступа: http://www.softelectro.ru/teoriy.html .
  4. Добронец Б. С. Интервальная математика: Учеб. пособие / Б. С. Добронец; Краснояр. гос. ун–т — Красноярск, 2004. — 216 с.
  5. Moore R. E. Introduction to interval analysis. / R.E. Moore, R.B. Kearfott, M.J. Cloud — Philadelphia: SIAM, 2009. — p. 223.
  6. Аноприенко А. Я., Иваница С. В. Интервальные вычисления и перспективы их развития в контексте кодо–логической эволюции. / А. Я. Аноприенко, С. В. Иваница. // Научные труды Донецкого национального технического университета. Серия «Проблемы моделирования и автоматизации проектирования динамических систем» (МАП–2010).

    Выпуск 8 (168): Донецк: ДонНТУ, 2010. — С. 150–160.

  7. Аноприенко А. Я. Постбинарный компьютинг и интервальные вычисления в контексте кодо–логической эволюции. / А. Я. Аноприенко, С. В. Иваница — Донецк: ДонНТУ, УНИТЕХ, 2011. — 248 с.
  8. Анопрієнко О. Я. Принцип роботи, структура і моделювання блоку перетворювача форматів у складі постбінарного співпроцесора. / О. Я. Анопрієнко, С. В. Іваниця, С. В. Кулібаба // Міжнародний науково–технічний журнал «Інформаційні технології та комп’ютерна інженерія», № 1 (26).

    — Вінниця, 2013. — С. 59–65.

  9. Kahan W. Lecture Notes on the Status of IEEE Standard 754 for Binary Floating–Point Arithmetic / W. Prof. W. Kahan — Elect. Eng. & Computer Science, Berkeley, 1997 — р. 30.