Точность и область значений

Примечание

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

Область значений

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

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

Например, в дополнении two, отрицательные числа должны быть представлены, а также нуль, таким образом, максимальное значение равняется 2wl -1 – 1. Поскольку существует только одно представление для нуля, существует неравное количество положительных и отрицательных чисел. Это означает, что существует представление для 2wl1 но не для 2wl1:

Обработка переполнения

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

Программное обеспечение Fixed-Point Designer™ позволяет вам или насыщать или переносить переполнение. Насыщение представляет положительное переполнение как самое большое положительное число в области значений, используемой и отрицательное переполнение как самое большое отрицательное число в используемой области значений. Перенос использования арифметика по модулю, чтобы бросить переполнение назад в представимую область значений типа данных.

Когда вы создаете fi объект, любое переполнение насыщается. OverflowAction свойством значения по умолчанию fimath является saturate. Можно регистрировать переполнение и потери значимости путем установки LoggingMode свойство fipref возразите против on.

Точность

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

Например, представление фиксированной точки с четырьмя битами справа от двоичной точки имеет точность 2-4 или 0.0625, который является значением его младшего значащего бита. Любой номер в области значений этого типа данных и масштабирования может быть представлен в (2-4)/2 или 0.03125, который является половиной точности. Это - пример представления номера с конечной точностью.

Округление методов

Когда вы представляете числа конечной точностью, не, каждый номер в доступной области значений может быть представлен точно. Если номер не может быть представлен точно заданным типом данных и масштабированием, метод округления используется, чтобы бросить значение к представимому номеру. Несмотря на то, что точность всегда теряется в округляющейся операции, стоимость операции и объем смещения, которое введено, зависят от самого метода округления. Чтобы предоставить вам большую гибкость в компромиссе между стоимостью и смещением, программное обеспечение Fixed-Point Designer в настоящее время поддерживает следующие методы округления:

  • Ceiling раунды к самому близкому представимому номеру в направлении положительной бесконечности.

  • Convergent раунды к самому близкому представимому номеру. В случае ничьей, convergent раунды к самому близкому четному числу. Это - наименее смещенный метод округления, предоставленный тулбоксом.

  • Zero раунды к самому близкому представимому номеру в направлении нуля.

  • Floor, то, которое эквивалентно дополнительному усечению two, округляется к самому близкому представимому номеру в направлении отрицательной бесконечности.

  • Nearest раунды к самому близкому представимому номеру. В случае ничьей, nearest раунды к самому близкому представимому номеру в направлении положительной бесконечности. Этот метод округления является значением по умолчанию для fi создание объекта и fi арифметика.

  • Round раунды к самому близкому представимому номеру. В случае ничьей, round раунды метода:

    • Положительные числа к самому близкому представимому номеру в направлении положительной бесконечности.

    • Отрицательные числа к самому близкому представимому номеру в направлении отрицательной бесконечности.

Выбор Округления Метода.  Каждый метод округления имеет набор неотъемлемых свойств. В зависимости от требований вашего проекта эти свойства могли сделать метод округления более или менее желательным вам. Путем знания требований проекта и понимания свойств каждого метода округления, можно определить, который является лучшим пригодным для потребностей. Самые важные свойства рассмотреть:

  • Стойте — Независимый от используемого оборудования, какого количества обработки расхода метод округления требует?

    • Низко — метод требует немногих циклов обработки.

    • Умеренный — метод требует умеренного количества обработки циклов.

    • Высоко — метод требует большего количества циклов обработки.

    Примечание

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

  • Смещение — Что является ожидаемым значением округленных значений минус исходные значения: Ε(θ^θ)?

    • Ε(θ^θ)<0 — Метод округления вводит отрицательное смещение.

    • Ε(θ^θ)=0 — Метод округления является несмещенным.

    • Ε(θ^θ)>0 — Метод округления вводит положительное смещение.

Следующая таблица показывает сравнение различных методов округления, доступных в продукте Fixed-Point Designer.

Режим округления Fixed-Point DesignerСтоимостьСмещение
CeilingНизкоБольшой положительный
ConvergentВысокоНесмещенный
ZeroНизко
  • Большой положительный для отрицательных выборок

  • Несмещенный для выборок с равномерно распределенными положительными и отрицательными величинами

  • Большое отрицание для положительных выборок

FloorНизкоБольшое отрицание
NearestУмеренныйМаленький положительный
RoundВысоко
  • Маленькое отрицание для отрицательных выборок

  • Несмещенный для выборок с равномерно распределенными положительными и отрицательными величинами

  • Маленький положительный для положительных выборок

Simplest
(Simulink® только)
НизкоЗависит от операции