Реализуйте дискретную передаточную функцию
Simulink / Дискретный
HDL Coder / Дискретный
HDL Coder / Операции Плавающей точки HDL
Блок Discrete Transfer Fcn реализует передаточную функцию z-преобразования можно следующим образом:
где m+1 и n+1 являются количеством числителя и коэффициентов знаменателя, соответственно. цифра и логово содержат коэффициенты числителя, и знаменатель в убывающих степенях z. цифры может быть вектором или матрицей, в то время как логово должно быть вектором. Порядок знаменателя должен быть больше или быть равен порядку числителя.
Задайте коэффициенты полинома числителя и полинома знаменателя в убывающих степенях z. Этот блок позволяет вам использовать полиномы в z, чтобы представлять дискретную систему, метод, которые управляют инженерами обычно, использует. С другой стороны блок Discrete Filter позволяет вам использовать полиномы в z-1 (оператор задержки), чтобы представлять дискретную систему, метод, который обычно используют инженеры обработки сигналов. Эти два метода идентичны, когда полином числителя и полином знаменателя имеет ту же длину.
Блок Discrete Transfer Fcn применяет передаточную функцию z-преобразования к каждому независимому каналу входа. Параметр Input processing позволяет вам задавать, обрабатывает ли блок каждый столбец входа как отдельный канал (основанная на системе координат обработка) или каждый элемент входа как отдельный канал (основанная на выборке обработка). Чтобы выполнить основанную на системе координат обработку, у вас должна быть лицензия DSP System Toolbox™.
Используйте параметр Initial states, чтобы задать начальные состояния фильтра. Чтобы определить количество начальных состояний, необходимо задать и как задать их, используйте следующие таблицы.
Основанная на системе координат обработка
Входной параметр | Количество каналов | Допустимые начальные состояния (диалоговое окно) | Допустимые начальные состояния (Input port) |
---|---|---|---|
| 1 |
|
|
| N |
|
|
Основанная на выборке обработка
Входной параметр | Количество каналов | Допустимые начальные состояния (диалоговое окно) | Допустимые начальные состояния (Input port) |
---|---|---|---|
| 1 |
|
|
| N |
|
|
| K × N |
|
|
Когда Initial states является скаляром, блок инициализирует все состояния фильтра к тому же скалярному значению. Чтобы инициализировать все состояния, чтобы обнулить, введите 0
. Когда Initial states является вектором или матрицей, каждый вектор или элемент матрицы задают уникальное начальное состояние для соответствующего элемента задержки в соответствующем канале:
Длина вектора должна равняться количеству элементов задержки в фильтре, M = max(number of zeros, number of poles)
.
Матрица должна иметь одинаковое число строк как количество элементов задержки в фильтре, M = max(number of zeros, number of poles)
. Матрица должна также иметь один столбец для каждого канала входного сигнала.
Следующий пример показывает отношение между начальным фильтром выход и начальным входом и состоянием. Учитывая начальный вход u1, первый выход y1 связан с начальным состоянием [x1, x2] и начальная буква, введенная можно следующим образом:
u
— Входной сигналВходной сигнал в виде скаляра, вектора или матрицы.
Типы данных: single
| double
| int8
| int16
| int32
| fixed point
Num
— Коэффициенты числителяКоэффициенты полинома числителя, заданного как вектор или матрица в убывающих степенях z. Используйте вектор-строку, чтобы задать коэффициенты для одного полинома числителя. Используйте матрицу, чтобы задать коэффициенты для нескольких фильтров, которые будут применены к тому же входу. Каждая строка матрицы представляет набор касаний фильтра. Порядок знаменателя должен быть больше или быть равен порядку числителя.
Чтобы включить этот порт, установите Numerator Source на Input port
.
Числитель и коэффициенты знаменателя должны иметь ту же сложность. Они могут иметь различные размеры слова и фракционировать длины.
Типы данных: single
| double
| int8
| int16
| int32
| fixed point
Den
— Коэффициенты знаменателяКоэффициенты полинома знаменателя, заданного как вектор в убывающих степенях z. Используйте вектор-строку, чтобы задать коэффициенты для одного полинома знаменателя. Используйте матрицу, чтобы задать коэффициенты для нескольких фильтров, которые будут применены к тому же входу. Каждая строка матрицы представляет набор касаний фильтра. Порядок знаменателя должен быть больше или быть равен порядку числителя.
Чтобы включить этот порт, установите Denominator Source на Input port
.
Числитель и коэффициенты знаменателя должны иметь ту же сложность. Они могут иметь различные размеры слова и фракционировать длины.
Типы данных: single
| double
| int8
| int16
| int32
| fixed point
External reset
— Внешний сигнал сбросаВнешний сигнал сброса в виде скаляра. Когда заданное триггерное событие имеет место, блок сбрасывает состояния к их начальным условиям.
Совет
Значок для этого порта изменяется на основе значения параметра External reset.
Чтобы включить этот порт, установите External reset на Rising
, Falling
, Either
, Level
, или Level hold
.
Сигнал сброса должен быть скаляром типа, одного, дважды, булева, или целочисленного. Типы данных с фиксированной точкой, за исключением ufix1
, не поддерживаются.
Типы данных: single
| double
| Boolean
| int8
| int16
| int32
| fixed point
x0
— Начальные состоянияНачальные состояния в виде скаляра, вектора или матрицы. Для получения дополнительной информации об определении состояний, смотрите начальные состояния Определения. Состояния являются комплексными, когда или вход или коэффициенты являются комплексными.
Чтобы включить этот порт, установите Initial states Source на Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| fixed point
Port_1
— Выходной сигналВыходной сигнал, заданный как скаляр, вектор или матрица.
Типы данных: single
| double
| int8
| int16
| int32
| fixed point
Numerator Source
— Источник коэффициентов числителяDialog
(значение по умолчанию) | Input port
Задайте источник коэффициентов числителя как Dialog
или Input port
.
Параметры блоков:
NumeratorSource |
Ввод: символьный вектор |
Значения:
'Dialog' | 'Input port' |
Значение по умолчанию:
'Dialog'
|
Numerator Value
— Коэффициенты числителя
(значение по умолчанию) | скаляр | вектор | матрицаКоэффициенты числителя дискретной передаточной функции. Чтобы задать коэффициенты, установите Source на Dialog
. Затем введите коэффициенты в Value как убывающие степени z. Используйте вектор-строку, чтобы задать коэффициенты для одного полинома числителя. Используйте матрицу, чтобы задать коэффициенты для нескольких фильтров, которые будут применены к тому же входу. Каждая строка матрицы представляет набор касаний фильтра.
Чтобы включить этот параметр, установите Numerator Source на Dialog
.
Параметры блоков:
Numerator |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию:
'[1]'
|
Denominator Source
— Источник коэффициентов знаменателяDialog
(значение по умолчанию) | Input port
Задайте источник коэффициентов знаменателя как Dialog
или Input port
.
Параметры блоков:
DenominatorSource |
Ввод: символьный вектор |
Значения:
'Dialog' | 'Input port' |
Значение по умолчанию:
'Dialog'
|
Denominator Value
— Коэффициенты знаменателя
(значение по умолчанию) | скаляр | вектор | матрицаКоэффициенты знаменателя дискретной передаточной функции. Чтобы задать коэффициенты, установите Source на Dialog
. Затем введите коэффициенты в Value как убывающие степени z. Используйте вектор-строку, чтобы задать коэффициенты для одного полинома знаменателя. Используйте матрицу, чтобы задать коэффициенты для нескольких фильтров, которые будут применены к тому же входу. Каждая строка матрицы представляет набор касаний фильтра.
Чтобы включить этот параметр, установите Denominator Source на Dialog
.
Параметры блоков:
Denominator |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию:
'[1 0.5]'
|
Initial states Source
— Источник начальных состоянийDialog
(значение по умолчанию) | Input port
Задайте источник начальных состояний как Dialog
или Input port
.
Параметры блоков:
InitialStatesSource |
Ввод: символьный вектор |
Значения:
'Dialog' | 'Input port' |
Значение по умолчанию:
'Dialog'
|
Initial states Value
— Начальные состояния фильтра
(значение по умолчанию) | скаляр | вектор | матрицаЗадайте начальные состояния фильтра как скаляр, вектор или матрицу. Чтобы изучить, как задать начальные состояния, смотрите начальные состояния Определения.
Чтобы включить этот параметр, установите Initial states Source на Dialog
.
Параметры блоков:
InitialStates |
Ввод: символьный вектор |
Значения: скаляр | вектор | матрица |
Значение по умолчанию:
'0'
|
External reset
— Внешний сброс состоянияNone
(значение по умолчанию) | Rising
| Falling
| Either
| Level
| Level hold
Задайте триггерное событие, чтобы использовать, чтобы сбросить состояния к начальным условиям.
Сбросьте режим | Поведение |
---|---|
None | Никакой сброс |
Rising | Сбросьте на возрастающем ребре |
Falling | Сбросьте на падающем ребре |
Either | Сбросьте или на повышении или на падающем ребре |
Level | Сбросьте в любом из этих случаев:
|
Level hold | Сбросьте, когда сигнал сброса будет ненулевым на шаге текущего времени |
Параметры блоков: ExternalReset |
Ввод: символьный вектор |
Значения: 'None' | 'Rising' | 'Falling' | 'Either' | 'Level' | 'Level hold' |
Значение по умолчанию: 'None' |
Input processing
— Выборка - или основанная на системе координат обработкаElements as channels (sample based)
(значение по умолчанию) | Columns as channels (frame based)
Задайте, выполняет ли блок выборку - или основанная на системе координат обработка.
Elements as channels (sample based)
— Процесс каждый элемент входа как независимый канал.
Columns as channels (frame based)
— Процесс каждый столбец входа как независимый канал.
Примечание
Основанная на системе координат обработка требует лицензии DSP System Toolbox.
Для получения дополнительной информации смотрите Выборку - и Основанные на системе координат Концепции (DSP System Toolbox).
Параметры блоков:
InputProcessing |
Ввод: символьный вектор |
Значения:
'Elements as channels (sample based)' | 'Columns as channels (frame based)' |
Значение по умолчанию:
'Elements as channels (sample based)' |
Optimize by skipping divide by leading denominator coefficient (a0)
— Пропустите делятся на a0off
(значение по умолчанию) | on
Выберите, когда ведущий коэффициент знаменателя, a0, будет равняться 1. Этот параметр оптимизирует ваш код.
Когда вы устанавливаете этот флажок, блок не выполняет divide-by-a0 или в симуляции или в сгенерированном коде. Ошибка происходит, если a0 не равен одному.
Когда вы снимаете этот флажок, блок является полностью настраиваемым в процессе моделирования и выполняет divide-by-a0 и в симуляции и в генерации кода.
Параметры блоков:
a0EqualsOne
|
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off'
|
Sample time (-1 for inherited)
— Интервал между выборками
(значение по умолчанию) | скаляр | векторЗадайте временной интервал между выборками. Чтобы наследовать шаг расчета, установите этот параметр на -1
. Для получения дополнительной информации см. Настройку времени выборки.
Параметры блоков:
SampleTime |
Ввод: символьный вектор |
Значения: скаляр | вектор |
Значение по умолчанию:
'-1' |
State
— Тип данных состоянияInherit: Same as input
(значение по умолчанию) | int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Задайте тип данных состояния. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as input
Встроенное целое число, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Numerator coefficients
— Содействующий тип данных числителяInherit: Inherit via internal rule
(значение по умолчанию) | int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Задайте содействующий тип данных числителя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенное целое число, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
NumCoeffDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via internal rule' |
Numerator coefficient minimum
— Минимальное значение коэффициентов числителя[]
(значение по умолчанию) | скалярЗадайте минимальное значение, которое может иметь коэффициент числителя. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink® использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
NumCoeffMin |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Numerator coefficient maximum
— Максимальное значение коэффициентов числителя[]
(значение по умолчанию) | скалярЗадайте максимальное значение, которое может иметь коэффициент числителя. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
NumCoeffMax |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Numerator product output
— Тип выходных данных продукта числителяInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Задайте тип выходных данных продукта для коэффициентов числителя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенный тип данных, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
NumProductDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as input' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via interal rule' |
Numerator accumulator
— Тип данных аккумулятора числителяInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as input
| Inherit: Same as product output
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Задайте тип данных аккумулятора для коэффициентов числителя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенный тип данных, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
NumAccumDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as input' | 'Inherit: Same as product output' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via interal rule' |
Denominator coefficients
— Содействующий тип данных знаменателяInherit: Inherit via internal rule
(значение по умолчанию) | int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Задайте содействующий тип данных знаменателя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенное целое число, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
DenCoeffDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Same wordlength as input' |
Denominator coefficient minimum
— Минимальное значение коэффициентов знаменателя[]
(значение по умолчанию) | скалярЗадайте минимальное значение, которое может иметь коэффициент знаменателя. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
DenCoeffMin |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Denominator coefficient maximum
— Максимальное значение коэффициентов знаменателя[]
(значение по умолчанию) | скалярЗадайте максимальное значение, которое может иметь коэффициент знаменателя. Значением по умолчанию является []
(незаданный). Программное обеспечение Simulink использует это значение, чтобы выполнить:
Проверка диапазона параметра (см., Задает Минимальные и Максимальные значения для Параметров блоков),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
DenCoeffMax |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Denominator product output
— Тип выходных данных продукта знаменателяInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Задайте тип выходных данных продукта для коэффициентов знаменателя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенный тип данных, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
DenProductDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as input' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via interal rule' |
Denominator accumulator
— Тип данных аккумулятора знаменателяInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as input
| Inherit: Same as product output
| int8
| int16
| int32
| int64
| fixdt(1,16,0)
| <data type expression>
Задайте тип данных аккумулятора для коэффициентов знаменателя. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенный тип данных, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
DenAccumDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as input' | 'Inherit: Same as product output' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via interal rule' |
Output
— Тип выходных данныхInherit: Inherit via internal rule
(значение по умолчанию) | Inherit: Same as input
| int8
| int16
| int32
| int64
| fixdt(1,16)
| fixdt(1,16,0)
| <data type expression>
Задайте тип выходных данных. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Inherit via internal rule
Встроенный тип данных, например, int8
Объект типа данных, например, Simulink.NumericType
объект
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
OutDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as input' | 'int8' | 'int16' | 'int32' | 'int64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via interal rule' |
Output minimum
— Минимальное значение выхода[]
(значение по умолчанию) | скалярЗадайте минимальное значение, которое может вывести блок. Значением по умолчанию является []
(незаданный). Simulink использует это значение, чтобы выполнить:
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
OutMin |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Output maximum
— Максимальное значение выхода[]
(значение по умолчанию) | скалярЗадайте максимальное значение, которое может вывести блок. Значением по умолчанию является []
(незаданный). Simulink использует это значение, чтобы выполнить:
Проверка диапазона симуляции (см., Указывает Диапазоны сигнала),
Автоматическое масштабирование типов данных с фиксированной точкой
Параметры блоков:
OutMax |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'[]' |
Lock data type settings against changes by the fixed-point tools
— Препятствуйте тому, чтобы Fixed-Point Tool заменили типы данныхoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на этом блоке. Для получения дополнительной информации смотрите Блокировку Установка Типа Выходных данных (Fixed-Point Designer).
Параметры блоков: LockScale |
Ввод: символьный вектор |
Значения: 'off' | 'on' |
Значение по умолчанию: 'off' |
Integer rounding mode
— Режим Rounding для операций фиксированной точкиFloor
(значение по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Задайте округляющийся режим для операций фиксированной точки. Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).
Параметры блоков всегда вокруг к самому близкому представимому значению. Чтобы управлять округлением параметров блоков, введите выражение с помощью функции округления MATLAB® в поле маски.
Параметры блоков:
RndMeth |
Ввод: символьный вектор |
Значения:
'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
Значение по умолчанию:
'Floor' |
Saturate on integer overflow
— Метод действия переполненияoff
(значение по умолчанию) | on
Задайте, насыщает ли переполнение или переносится.
Действие | Объяснение | Повлияйте на переполнение | Пример |
---|---|---|---|
Установите этот флажок ( |
Ваша модель имеет возможное переполнение, и вы хотите явную защиту насыщения в сгенерированном коде. |
Переполнение насыщает или к минимальному или к максимальному значению, которое может представлять тип данных. |
Максимальное значение, что |
Не устанавливайте этот флажок ( |
Вы хотите оптимизировать КПД своего сгенерированного кода. Вы не хотите чрезмерно определять, как блок обрабатывает сигналы из области значений. Для получения дополнительной информации смотрите Ошибки Диапазона сигнала Поиска и устранения неисправностей. |
Переполнение переносится к соответствующему значению, которое является представимым, по условию вводят. |
Максимальное значение, что |
Когда вы устанавливаете этот флажок, насыщение применяется к каждой внутренней операции на блоке, не только выходу или результату. Обычно, процесс генерации кода может обнаружить, когда переполнение не возможно. В этом случае генератор кода не производит код насыщения.
Параметры блоков: SaturateOnIntegerOverflow |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию: 'off' |
State name
— Уникальное имя для состояния блока''
(значение по умолчанию) | алфавитно-цифровая строкаИспользуйте этот параметр, чтобы присвоить уникальное имя состоянию блока. Значением по умолчанию является ' '
. Когда это поле является пробелом, никакое имя не присвоено. При использовании этого параметра помните эти факторы:
Допустимый идентификатор запускается с буквенного символа или символа подчеркивания, сопровождаемого алфавитно-цифровыми символами или символами подчеркивания.
Имя состояния применяется только к выбранному блоку.
Этот параметр включает State name must resolve to Simulink signal object, когда вы нажимаете Apply.
Для получения дополнительной информации смотрите Настройку генерации кода C для Элементов Интерфейса модели (Simulink Coder).
Параметры блоков: StateName |
Ввод: символьный вектор |
Значения: уникальное имя |
Значение по умолчанию: '' |
State name must resolve to Simulink signal object
— Потребуйте, чтобы имя состояния решило к объекту сигналаoff
(значение по умолчанию) | on
Установите этот флажок, чтобы потребовать, чтобы имя состояния решило к объекту Сигнала Simulink.
Чтобы включить этот параметр, задайте значение для State name. Этот параметр появляется, только если вы устанавливаете параметр конфигурации модели Signal resolution на значение кроме None
.
Установка этого флажка отключает Code generation storage class.
Параметры блоков: StateMustResolveToSignalObject |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию: 'off' |
Signal object class
— Пользовательское имя пакета класса памятиSimulink.Signal
(значение по умолчанию) | <StorageClass.PackageName>
Выберите пользовательский пакет класса памяти путем выбора класса объекта сигнала, который задает целевой пакет. Например, чтобы применить пользовательские классы памяти от встроенного пакета mpt
, выберите mpt.Signal
. Если вы не используете основанную на ERT цель генерации кода с Embedded Coder®, пользовательские классы памяти не влияют на сгенерированный код.
Чтобы использовать пакет класса памяти кроме пакета Simulink, необходимо загрузить пакет в Словарь Embedded Coder модели. Смотрите Пакеты Класса памяти Загрузки в Словарь Embedded Coder (Embedded Coder).
Для получения информации о конфигурировании данных модели при помощи классов памяти смотрите Настройку генерации кода C для Элементов Интерфейса модели (Embedded Coder). Для получения информации о пользовательских классах памяти смотрите, Организуют Данные в Структуры в Сгенерированном коде (Embedded Coder).
Параметры блоков: StateSignalObject |
Ввод: символьный вектор |
Значения:
'Simulink.Signal' | '<StorageClass.PackageName>' |
Значение по умолчанию: 'Simulink.Signal' |
Code generation storage class
— Класс памяти состояния для генерации кодаAuto
(значение по умолчанию) | Model default
| ExportedGlobal
| ImportedExtern
| ImportedExternPointer
| BitField (Custom)
| Model default
| ExportToFile (Custom)
| ImportFromFile (Custom)
| FileScope (Custom)
| AutoScope (Custom)
| Struct (Custom)
| GetSet (Custom)
| Reusable (Custom)
Выберите класс памяти состояния для генерации кода.
Auto
соответствующий класс памяти для состояний, с которыми вы не должны соединять интерфейсом к внешнему коду.
применяет класс памяти или пользовательский класс памяти, который вы выбираете из списка. Для получения информации о классах памяти смотрите Настройку генерации кода C для Элементов Интерфейса модели (Simulink Coder). Для получения информации о пользовательских классах памяти смотрите, Организуют Данные о Параметре в Структуру при помощи Класса памяти Struct (Embedded Coder).StorageClass
Используйте Signal object class, чтобы выбрать пользовательские классы памяти из пакета кроме Simulink
.
Чтобы включить этот параметр, задайте значение для State name.
Параметры блоков:
StateStorageClass |
Ввод: символьный вектор |
Значения:
'Auto' | 'Model default' | 'ExportedGlobal' | 'ImportedExtern' | 'ImportedExternPointer' | 'Custom' | ... |
Значение по умолчанию: 'Auto' |
TypeQualifier
— Спецификатор типа хранения''
(значение по умолчанию) | const
| volatile
| ...Задайте спецификатор типа хранения, такой как const
или volatile
.
Примечание
TypeQualifier будет удален в будущем релизе. Чтобы применить спецификаторы типа хранения к данным, используйте разделы custom storage classes и memory. Если вы не используете основанную на ERT цель генерации кода с Embedded Coder, разделы custom storage classes и memory не влияют на сгенерированный код.
В процессе моделирования блок использует следующие значения:
Начальное значение объекта сигнала, к которому разрешено имя состояния
Минимальные и Максимальные значения объекта сигнала
Для получения дополнительной информации смотрите Объекты данных.
Чтобы включить этот параметр, установите Code generation storage class на ExportedGlobal
, ImportedExtern
, ImportedExternPointer
, или Model default
. Этот параметр скрыт, если вы ранее не устанавливаете его значение.
Параметры блоков: RTWStateStorageTypeQualifier |
Ввод: символьный вектор |
Значения:
'' | 'const' | 'volatile' | ... |
Значение по умолчанию: '' |
HDL Coder™ обеспечивает дополнительные параметры конфигурации, которые влияют на реализацию HDL и синтезируемую логику.
Этот блок имеет одну, архитектуру HDL по умолчанию.
Общий | |
---|---|
ConstMultiplierOptimization | Каноническая цифра со знаком (CSD) или учтенная оптимизация CSD. Значением по умолчанию является |
ConstrainedOutputPipeline | Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. |
InputPipeline | Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
OutputPipeline | Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. |
Нативная плавающая точка | |
---|---|
HandleDenormals | Задайте, хотите ли вы, чтобы HDL Coder вставил дополнительную логику, чтобы обработать нестандартные числа в вашем проекте. Нестандартные числа являются числами, которые имеют величины меньше, чем самое маленькое число с плавающей запятой, которое может быть представлено без начальных нулей в мантиссе. Значением по умолчанию является |
LatencyStrategy | Задайте, сопоставить ли блоки в вашем проекте к |
MantissaMultiplyStrategy | Задайте, как реализовать операцию умножения мантиссы во время генерации кода. При помощи различных настроек можно управлять использованием DSP на целевом устройстве FPGA. Значением по умолчанию является |
Двойные типы данных не поддерживаются для этого блока. Используйте один типы данных вместо этого.
Система координат, матрица и векторные типы входных данных не поддерживаются.
Ведущий коэффициент знаменателя (a0) должен быть 1 или-1.
Блок Discrete Transfer Fcn исключен из следующей оптимизации:
Разделение ресурсов
Распределенная конвейеризация
Этот блок только поддерживает подписанные типы данных с фиксированной точкой.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.