В программном обеспечении Fixed-Point Designer™ fipref объект определяет графические свойства fi объекты. Примеры кода обычно показывают fi объекты как они появляются со следующими fipref свойства объекта:
NumberDisplay — 'RealWorldValue'
NumericTypeDisplay — 'full'
FimathDisplay — 'full'
Настройка 'FimathDisplay' на 'full' обеспечивает быстрый и легкий способ различения fi объекты с локальным fimath и те, которые связаны с fimath по умолчанию. Когда 'FimathDisplay' установлено в 'full', MATLAB® отображает fimath свойства объекта для fi объекты с локальным fimath. MATLAB никогда не отображает fimath свойства объекта для fi объекты, которые связаны с fimath по умолчанию. Из-за этого различия в отображении можно сказать, когда fi связывается с fimath по умолчанию путем просмотра выходов.
Кроме того, если не указано иное, в примерах документации Fixed-Point Designer используется следующее строение fimath по умолчанию:
RoundingMethod: Nearest
OverflowAction: Saturate
ProductMode: FullPrecision
SumMode: FullPrecision
Дополнительные сведения о настройках отображения см. в разделе Установка настроек отображения объектов FI Использование fipref.
Чтобы увидеть выход, как она появляется в большинстве примеров кода Fixed-Point Designer, установите свои fipref свойства следующим образом и создать два fi объекты:
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','full','FimathDisplay','full'); a = fi(pi,'RoundingMethod','Floor','OverflowAction','Wrap') b = fi(pi)
MATLAB возвращает следующее:
a =
3.1415
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13
RoundingMethod: Floor
OverflowAction: Wrap
ProductMode: FullPrecision
SumMode: FullPrecision
b =
3.1416
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13MATLAB отображает fimath свойства объекта в выходах fi a объекта потому что a имеет локальный фимат.
MATLAB не отображает никаких fimath свойства объекта в выходах fi b объекта потому что b связывается с fimath по умолчанию.
Если вы работаете с несколькими fi объекты, которые имеют локальные fimath, можно хотеть выключить fimath отображение объектов:
NumberDisplay — 'RealWorldValue'
NumericTypeDisplay — 'full'
FimathDisplay — 'none'
Для примера,
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','full','FimathDisplay','none')
p =
NumberDisplay: 'RealWorldValue'
NumericTypeDisplay: 'full'
FimathDisplay: 'none'
LoggingMode: 'Off'
DataTypeOverride: 'ForceOff'F = fimath('RoundingMethod','Floor','OverflowAction','Wrap'); a = fi(pi, F)
a =
3.1415
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 16
FractionLength: 13Несмотря на то, что эта настройка помогает уменьшить количество произведенного выхода, она также делает невозможным определить из выхода, является ли fi объект использует fimath по умолчанию. Для этого можно использовать isfimathlocal функция. Для примера,
isfimathlocal(a)
ans = logical 1
Когда isfimathlocal функция возвращает 1, а fi объект имеет локальный fimath. Если функция возвращается 0, а fi объект использует fimath по умолчанию.
Чтобы уменьшить количество выхода еще больше, можно задать NumericTypeDisplay на 'short'. Для примера,
p = fipref('NumberDisplay','RealWorldValue',... 'NumericTypeDisplay','short','FimathDisplay','full'); a = fi(pi)
a =
3.1416
numerictype(1,16,13)