Существует два способа совместно использовать fimath свойства в программном обеспечении Fixed-Point Designer™:
Совместное использование fimath свойства через fi объекты гарантируют что fi объекты используют те же арифметические правила, и помогает, вы избежать “не соответствовали fimath” ошибки.
Можно гарантировать что fi объекты все используют тот же fimath свойства, не задавая локального fimath. Не гарантировать локальный fimath сопоставлен с fi объект, вы можете:
Создайте fi объект с помощью fi конструктор, не задавая fimath свойства в вызове конструктора. Например:
a = fi(pi)
Создайте fi объект с помощью sfi или ufi конструктор. Весь fi объекты, созданные с этими конструкторами, не имеют никакого локального fimath.
b = sfi(pi)
Использование removefimath удалить локальный fimath объект от существующего fi объект.
Можно также использовать fimath объект задать общую арифметику постановляет, что требуется использовать для нескольких fi объекты. Можно затем создать fi объекты, с помощью того же fimath объект для каждого. Для этого необходимо также создать numerictype объект задать тип общих данных и масштабирование. Обратитесь к Конструкции Объекта numerictype для получения дополнительной информации о numerictype объекты. Следующий пример показывает создание numerictype объект и fimath объект, и затем использует те объекты создать два fi объекты с тем же numerictype и fimath атрибуты:
T = numerictype('WordLength',32,'FractionLength',30)
T =
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 32
FractionLength: 30
F = fimath('RoundingMethod','Floor',... 'OverflowAction','Wrap')
F =
RoundingMethod: Floor
OverflowAction: Wrap
ProductMode: FullPrecision
SumMode: FullPrecision
a = fi(pi, T, F)
a =
-0.8584
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 32
FractionLength: 30
RoundingMethod: Floor
OverflowAction: Wrap
ProductMode: FullPrecision
SumMode: FullPrecision
b = fi(pi/2, T, F)
b =
1.5708
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 32
FractionLength: 30
RoundingMethod: Floor
OverflowAction: Wrap
ProductMode: FullPrecision
SumMode: FullPrecision