Существует два способа совместно использовать 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