Концепции фиксированной точки и терминология

Примечание

Глоссарий (DSP System Toolbox) задает большую часть словаря, используемого в этих разделах. Для получения дополнительной информации об этих предметах смотрите Fixed-Point Designer.

Типы данных с фиксированной точкой

В цифровом оборудовании числа хранятся в двоичных словах. Двоичное слово является последовательностью фиксированной длины битов (1's и 0). Как аппаратные компоненты или функции программного обеспечения интерпретируют эту последовательность 1's, и 0 задан по условию тип.

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

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

Например, бинарное представление обобщенного номера фиксированной точки (или подписанный или без знака) показывают ниже:

где

  • bi является ith двоичной цифрой.

  • wl является размером слова в битах.

  • b wl –1 является местоположением старшего значащего, или самый высокий, бит (MSB).

  • b0 является местоположением младшего значащего, или самый низкий, бит (LSB).

  • Двоичной точке показывают четыре места слева от LSB. В этом примере, поэтому, номер, как говорят, имеет четыре дробных бита или дробную длину четыре.

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

  • Знак/значение

  • Поразрядное дополнение до единицы

  • Дополнение Туо

Дополнение Туо является наиболее распространенным представлением чисел фиксированной точки со знаком и используется программным обеспечением System Toolbox. Смотрите Дополнение Туо для получения дополнительной информации.

Масштабирование

Числа фиксированной точки могут быть закодированы согласно схеме

real-world value=(slope×integer)+bias

где наклон может быть выражен как

slope=slope adjustment×2exponent

Целое число иногда называется сохраненным целым числом. Это - необработанное двоичное число, в котором двоичная точка приняла, чтобы быть в ультраправом из слова. В Системных Тулбоксах отрицание экспоненты часто упоминается как дробная длина.

Наклон и смещение вместе представляют масштабирование номера фиксированной точки. В номере с нулевым смещением только наклон влияет на масштабирование. Номер фиксированной точки, который только масштабируется положением двоичной точки, эквивалентен номеру в Fixed-Point Designer™ [Наклонное Смещение] представление, которое имеет равное нулю смещение и наклонная корректировка, равная одной. Это упоминается как бинарное масштабирование только для точки или масштабирование степени двойки:

real-world value=2exponent×integer

или

real-world value=2fraction length×integer

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

Все Системные блоки Тулбокса, которые поддерживают сигналы поддержки типов данных с фиксированной точкой с двоичной точкой, только масштабирующейся. Много блоков фиксированной точки, которые не выполняют арифметические операции, но просто перестраивают данные, такие как Задержка и Матрица, Транспонируют, также поддерживают сигналы с [Наклонное Смещение] масштабирование.

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

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

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

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

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

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

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

Программное обеспечение System Toolbox не позволяет вам добавлять "сторожевые" разряды в тип данных на лету во избежание переполнения. Любые "сторожевые" разряды должны быть выделены после образцовой инициализации. Однако программное обеспечение действительно позволяет вам или насыщать или переносить переполнение. Насыщение представляет положительное переполнение как самое большое положительное число в области значений, используемой и отрицательное переполнение как самое большое отрицательное число в используемой области значений. Перенос использования арифметика по модулю, чтобы бросить переполнение назад в представимую область значений типа данных. Смотрите Арифметику По модулю для получения дополнительной информации.

Точность

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

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

Округление Режимов.  Когда вы представляете числа с конечной точностью, не, каждый номер в доступной области значений может быть представлен точно. Если номер не может быть представлен точно заданным типом данных и масштабированием, это округлено к представимому номеру. Несмотря на то, что точность всегда теряется в округляющейся операции, стоимость операции и объем смещения, которое введено, зависят от самого округляющегося режима. Чтобы предоставить вам большую гибкость в компромиссе между стоимостью и смещением, программное обеспечение DSP System Toolbox™ в настоящее время поддерживает следующие режимы округления:

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

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

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

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

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

  • Simplest округляет результат вычисления с помощью округляющегося режима (Floor или Zero), который добавляет наименьшее количество суммы дополнительного кода округления к сгенерированному коду. Для получения дополнительной информации смотрите Округление Режима: Самый Простой (Fixed-Point Designer).

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

Чтобы узнать больше о каждом из этих режимов округления, смотрите Округление (Fixed-Point Designer).

Для прямого сравнения округляющихся режимов смотрите Выбор Rounding Method (Fixed-Point Designer).