Настройки Переопределения Типа данных Используя fipref

Переопределение Типа данных Объектов fi

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

p = fipref('DataTypeOverride', 'TrueDoubles')
 
p =
 
         NumberDisplay: 'RealWorldValue'
    NumericTypeDisplay: 'full'
         FimathDisplay: 'full'
           LoggingMode: 'Off'
      DataTypeOverride: 'TrueDoubles'

a = fi(pi)
 
a =
 
    3.1416

          DataTypeMode: Double

p = fipref('DataTypeOverride', 'ForceOff')
 
p =
 
         NumberDisplay: 'RealWorldValue'
    NumericTypeDisplay: 'full'
         FimathDisplay: 'full'
           LoggingMode: 'Off'
      DataTypeOverride: 'ForceOff'

a
 
a =
 
    3.1416

          DataTypeMode: Double

b = fi(pi)
 
b =
 
    3.1416

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 13

Совет

Сбрасывать fipref возразите против его использования значений по умолчанию reset(fipref) или reset(p), где p fipref объект. Это полезно, чтобы гарантировать, что переопределение типа данных и логгирование выключены.

Переопределение типа данных для масштабирования фиксированной точки

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

  1. Реализуйте свой алгоритм с помощью фиксированной точки fi объекты, с помощью начальной буквы “лучше всего предполагают” для размеров слова и масштабирований.

  2. Установите fipref DataTypeOverride свойство к ScaledDoubles, TrueSingles, или TrueDoubles.

  3. Установите fipref LoggingMode свойство к on.

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

  5. Установите fipref DataTypeOverride свойство к ForceOff.

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

Подробный пример этого процесса показывают в Fixed-Point Designer Поданные Типы данных Используя пример Инструментирования Min/Max.