exponenta event banner

Данные с фиксированной точкой в MATLAB и Simulink

Данные с фиксированной точкой в Simulink

Вы можете использовать fixdt в Simulink ® для указания типа данных с фиксированной точкой. fixdt функция создает Simulink.NumericType объект.

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

Имена типов данных Simulink должны быть допустимыми идентификаторами MATLAB ® с длиной менее 128 символов. Имя типа данных содержит информацию о типе контейнера, кодировке номеров и масштабировании.

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

Символ

Описание

Пример

Тип контейнера

ufix

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

ufix8 - 8-битный неподписанный тип данных с фиксированной точкой

sfix

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

sfix128 - 128-битный подписанный тип данных с фиксированной точкой

fltu

Масштабированное двойное переопределение неподписанного типа данных с фиксированной точкой (ufix)

fltu32 является масштабированным двойным переопределением ufix32

flts

Масштабированное двойное переопределение подписанного типа данных с фиксированной точкой (sfix)

flts64 является масштабированным двойным переопределением sfix64

Кодировка номера

e

10^

125e8 равняется 125*(10^(8))

n

Отрицательный

n31 равняется -31

p

Десятичная точка

1p5 равняется 1.5

p2 равняется 0.2

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

S

Наклон

ufix16_S5_B7 - 16-разрядный неподписанный тип данных с фиксированной точкой с Slope из 5 и Bias из 7

B

Уклон

ufix16_S5_B7 - 16-разрядный неподписанный тип данных с фиксированной точкой с Slope из 5 и Bias из 7

E

Фиксированная степень (2 ^)

Отрицательная фиксированная экспонента описывает длину дроби

sfix32_En31 - 32-разрядный подписанный тип данных с фиксированной точкой с длиной дроби 31

F

Коэффициент регулировки уклона

ufix16_F1p5_En50 - 16-битный неподписанный тип данных с фиксированной точкой с SlopeAdjustmentFactor из 1.5 и FixedExponent из -50

C, c, D или d

Сжатое кодирование для смещения

Примечание

Если передать этот вектор символов в slDataTypeAndScale функция, она возвращает допустимый fixdt тип данных.

Пример недоступен. Только для обратной совместимости.

Идентификация и замена вызовов для slDataTypeAndScaleиспользуйте проверку вызовов slDataTypeAndScale Model Advisor.

Т или т

Сжатая кодировка для уклона

Примечание

Если передать этот вектор символов в slDataTypeAndScale, возвращает допустимое значение fixdt тип данных.

Пример недоступен. Только для обратной совместимости.

Идентификация и замена вызовов для slDataTypeAndScaleиспользуйте проверку вызовов slDataTypeAndScale Model Advisor.

Данные с фиксированной точкой в MATLAB

Для назначения типа данных с фиксированной точкой номеру или переменной в MATLAB используйте fi Конструктор (Конструктор фиксированных точек). Результирующее значение с фиксированной точкой называется fi объект. Например, создается следующее: fi объекты a и b с атрибутами, показанными на экране, которые можно указать при построении переменных. Обратите внимание, что при FractionLength свойство не указано, оно автоматически устанавливается на «наилучшую точность» для заданной длины слова, сохраняя наиболее значащие биты значения. Когда WordLength не указано свойство, по умолчанию оно имеет значение 16 бит.

a = fi(pi)
a = 

              3.1416015625

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 13
b = fi(0.1)
b = 

        0.0999984741210938

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

Считывание данных с фиксированной точкой из рабочей области

Блок «Из рабочего пространства» используется для считывания данных с фиксированной точкой из рабочего пространства MATLAB в модель Simulink. Для этого данные должны быть в структурном формате с fi объект в values поле. В формате массива блок «Из рабочей области» принимает только реальные данные с двойной точностью.

Запись данных с фиксированной точкой в рабочую область

Вывод с фиксированной точкой из модели можно записать в рабочую область MATLAB через  блок «В рабочую область» в формате массива или структуры. Данные фиксированной точки, написанные К блоку Рабочего пространства к рабочему пространству в формате структуры, могут быть прочитаны назад в модель Simulink в формате структуры От блока Рабочего пространства.

Масштабированные двойники

Масштабированные двойники - это гибрид между числами с плавающей и фиксированной точками. Designer™ Fixed-Point сохраняет их как двойные с сохранением информации о масштабировании, знаке и длине слова. Например, контейнер хранения для типа данных с фиксированной точкой sfix16_En14 является int16. Контейнер хранения эквивалентного масштабированного типа данных удваивается, flts16_En14 является плавающей точкой double. Fixed-Point Designer применяет информацию масштабирования к сохраненной двойке с плавающей запятой для получения реального значения. Сохранение значения в двойном формате почти всегда устраняет проблемы переполнения и точности.

См. также

Функции

  • | | (Конструктор фиксированных точек) | (Конструктор фиксированных точек)