Объединение нескольких сигналов в один сигнал
Simulink/Часто используемые блоки
Одновременная маршрутизация/маршрутизация сигналов
Кодер HDL/обычно используемые блоки
Кодер HDL/маршрутизация сигналов
Блок переключателя проходит через первый вход или третий входной сигнал на основе значения второго входа. Первый и третий входы являются вводом данных. Второй вход является управляющим входом. Укажите условие, при котором блок передает первый ввод, используя критерии для передачи первого ввода и пороговые параметры.
Блок коммутатора является блоком с поддержкой шины. Входы данных могут быть виртуальными или невиртуальными сигналами шины с учетом следующих ограничений:
Все шины должны быть эквивалентными (одинаковая иерархия с одинаковыми именами и атрибутами для всех элементов).
Все сигналы на входе невиртуальной шины в блок коммутатора должны иметь одинаковое время выборки. Требование сохраняется, даже если элементы связанного объекта шины задают наследуемое время выборки.
Для изменения времени выборки отдельного сигнала или всех сигналов на шине можно использовать блок Rate Transition. Дополнительные сведения см. в разделе Изменение времени выборки для невиртуальных шин и блоков с поддержкой шины.
В качестве входного сигнала блока коммутатора можно использовать массив шин. Дополнительные сведения об определении и использовании массива шин см. в разделе Группирование невиртуальных шин в массивах шин. При использовании массива шин задайте для параметра Threshold скалярное значение.
Если входные данные блока Switch являются шинами, имена элементов обеих шин должны быть одинаковыми. Использование одинаковых имен элементов гарантирует, что выходная шина будет иметь одинаковые имена элементов независимо от того, какую входную шину выберет блок. Чтобы убедиться, что модель соответствует этому требованию, используйте объект шины для определения шин и установите диагностику несоответствия имен элементов в значение error. Дополнительные сведения см. в разделе Обзор диагностики подключения.
Port_1 - Первый входной сигнал данныхПервый из двух входов данных. Блок распространяет либо первый, либо второй ввод данных на выход. Блок выбирает, какой вход должен пройти, на основе управляющего входа. Укажите условие, при котором управляющий ввод должен проходить первый ввод с помощью критериев для передачи первого ввода и пороговых параметров.
Типы данных: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Port_2 - Управляющий входной сигналУправляющий сигнал, используемый блоком для определения, передавать ли первый или второй входные данные на выход. Если управляющий вход соответствует условию, заданному в Критериях для передачи первого входного параметра, то блок передает первый ввод данных. В противном случае блок пропускает второй вход данных.
Типы данных: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Port_3 - Второй сигнал ввода данныхВторой из двух входов данных. Блок распространяет либо первый, либо второй ввод данных на выход. Блок выбирает, какой вход должен пройти, на основе управляющего входа. Укажите условие прохождения управляющим входом первого или второго ввода с помощью критериев для передачи первого ввода и пороговых параметров.
Типы данных: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Port_1 - Выходной сигналВыходной сигнал распространяется либо от первого, либо от второго входного сигнала на основе значения управляющего сигнала.
Типы данных: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Criteria for passing first input - Критерии выбора для передачи первого ввода данныхu2 >= Threshold (по умолчанию) | u2 > Threshold | u2 ~= 0Выберите условие, при котором блок передает первый ввод данных. Если управляющий вход соответствует условию, заданному в Критериях для передачи первого входного параметра, блок передает первый вход. В противном случае блок пропускает второй входной сигнал данных с входа Port_3.
u2 >= Threshold
Проверяет, превышает ли управляющий вход пороговое значение или равно ему.
u2 > Threshold
Проверяет, превышает ли входной управляющий сигнал пороговое значение.
u2 ~=0
Проверяет, не является ли управляющий вход ненулевым.
Примечание
Блок коммутатора не поддерживает u2 ~=0 режим для перечисляемых типов данных.
Если управляющий вход является логическим сигналом, используйте одну из следующих комбинаций условия и порогового значения:
u2 >= Threshold, где пороговое значение равно 1
u2 > Threshold, где пороговое значение равно 0
u2 ~=0
В противном случае блок Switch игнорирует пороговые значения и использует логическое значение для маршрутизации сигнала. При значении 1 блок проходит первый вход, а при значении 0 блок проходит третий вход. Предупреждающее сообщение, описывающее это поведение, также появляется в окне команд MATLAB ®.
Параметр блока:
Criteria |
| Текст: символьный вектор |
Значение:
'u2 >= Threshold' | 'u2 > Threshold' | 'u2 ~=0' |
По умолчанию:
'u2 >= Threshold' |
Threshold - Порог, используемый в критериях0 (по умолчанию) | scalarНазначьте порог, используемый в критериях для передачи первого входа, который определяет, какой вход блок передает на выход. Порог должен быть больше минимума вывода и меньше максимума вывода.
Чтобы задать нескалярный порог, используйте скобки. Например, допустимы следующие записи:
[1 4 8 12]
[MyColors.Red, MyColors.Blue]
Установка критериев для передачи первого ввода u2 ~=0 отключает этот параметр.
Параметр блока:
Threshold |
| Текст: символьный вектор |
Значение:
'off' | 'on' |
По умолчанию:
'off'
|
Enable zero-crossing detection - Включить обнаружение пересечения нулейon (по умолчанию) | Логическое значениеВыберите этот параметр, чтобы включить обнаружение пересечения нулей. Дополнительные сведения см. в разделе Обнаружение пересечения нулей.
Параметр блока: ZeroCross |
| Тип: символьный вектор, строка |
Значения: 'off' | 'on' |
По умолчанию: 'on' |
Нажмите кнопку Показать помощник по типам данных
, чтобы отобразить помощник по типам данных, который помогает задать атрибуты типов данных. Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных.
Require all data port inputs to have the same data type - Требовать, чтобы порты данных имели один и тот же тип данныхoff (по умолчанию) | onТребовать, чтобы все входные данные имели одинаковый тип данных.
Параметр блока:
InputSameDT |
| Текст: символьный вектор |
| Значение: |
По умолчанию:
'0' |
Output minimum - Минимальное выходное значение для проверки дальности[] (по умолчанию) | скалярМеньшее значение диапазона вывода, которое проверяет Simulink ®.
Simulink использует минимум для выполнения:
Проверка диапазона параметров (см. раздел Задание минимальных и максимальных значений для параметров блока) для некоторых блоков.
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов и Включение проверки диапазона моделирования).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, создаваемого на основе модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов моделирования, таких как SIL или внешний режим. Дополнительные сведения см. в разделе Оптимизация с использованием указанных минимального и максимального значений (встроенный кодер).
Примечание
Минимальный выходной сигнал не насыщает и не отсекает фактический выходной сигнал. Вместо этого используйте блок «Насыщенность».
Параметр блока: OutMin |
| Текст: символьный вектор |
Значения: '[ ]'| скаляр |
По умолчанию: '[ ]' |
Output maximum - Максимальное выходное значение для проверки дальности[] (по умолчанию) | скалярВерхнее значение диапазона вывода, которое проверяет Simulink.
Simulink использует максимальное значение для выполнения:
Проверка диапазона параметров (см. раздел Задание минимальных и максимальных значений для параметров блока) для некоторых блоков.
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов и Включение проверки диапазона моделирования).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, создаваемого на основе модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов моделирования, таких как SIL или внешний режим. Дополнительные сведения см. в разделе Оптимизация с использованием указанных минимального и максимального значений (встроенный кодер).
Примечание
Выходной максимум не насыщает и не отсекает фактический выходной сигнал. Вместо этого используйте блок «Насыщенность».
Параметр блока: OutMax |
| Текст: символьный вектор |
Значения: '[ ]'| скаляр |
По умолчанию: '[ ]' |
Output data type - Тип выходных данныхInherit: Inherit via internal rule (по умолчанию) | Inherit: Inherit via back propagation | Inherit: Same as first input | double | single | half | int8 | uint8 | int16 | uint16 | int32 | uint32 | int64 | uint64 | fixdt(1,16) | fixdt(1,16,0) | fixdt(1,16,2^0,0) | string | Enum: <class name> | <data type expression>Укажите тип выходных данных.
Inherit: Inherit via internal rule
Для определения типа выходных данных используются следующие правила.
| Тип данных первого входного порта | Тип выходных данных |
|---|---|
| Имеет больший положительный диапазон, чем третий входной порт | Унаследовано от первого входного порта |
| Имеет тот же положительный диапазон, что и третий входной порт | Унаследовано от третьего входного порта |
| Имеет меньший положительный диапазон, чем третий входной порт |
Inherit: Inherit via back propagation
Использует тип данных управляющего блока.
Inherit: Inherit same as first input
Использует тип данных первого порта ввода данных.
double
Указывает тип выходных данных: double.
single
Указывает тип выходных данных: single.
half
Указывает тип выходных данных: half.
int8
Указывает тип выходных данных: int8.
uint8
Указывает тип выходных данных: uint8.
int16
Указывает тип выходных данных: int16.
uint16
Указывает тип выходных данных: uint16.
int32
Указывает тип выходных данных: int32.
uint32
Указывает тип выходных данных: uint32.
int64
Указывает тип выходных данных: int64.
uint64
Указывает тип выходных данных: uint64.
fixdt(1,16,0)
Указывает тип выходных данных - фиксированная точка fixdt(1,16,0).
fixdt(1,16,2^0,0)
Указывает тип выходных данных - фиксированная точка fixdt(1,16,2^0,0).
Enum: <class name>
Использует перечисляемый тип данных, например: Enum: BasicColors.
string
Указывает, что тип выходных данных - строка.
<data type expression>
Использует объект типа данных, например: Simulink.NumericType.
Если выходные данные имеют перечисляемый тип, то оба входных данных должны использовать тот же перечисляемый тип, что и выходные данные.
Параметр блока: OutDataTypeStr |
| Текст: символьный вектор |
Значения: 'Inherit: Inherit via internal rule | 'Inherit: Inherit via back propagation' | 'Inherit: Same as first input' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16', 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | Enum: <class name> | 'string' | '<data type expression>' |
По умолчанию: 'Inherit: Inherit via internal rule' |
Lock data type settings against changes by the fixed-point tools - Предотвращение переопределения типов данных инструментами с фиксированной точкойoff (по умолчанию) | onВыберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в этом блоке. Дополнительные сведения см. в разделе Блокировка параметров типа выходных данных (конструктор фиксированных точек).
Параметр блока: LockScale |
| Текст: символьный вектор |
Значения: 'off' | 'on' |
По умолчанию: 'off' |
Integer rounding mode - Укажите режим округления для операций с фиксированной точкойFloor (по умолчанию) | Ceiling | Convergent | Nearest | Round | Simplest | ZeroВыберите один из этих режимов округления.
CeilingОкругляет как положительные, так и отрицательные числа в сторону положительной бесконечности. Эквивалентно MATLAB ceil функция.
ConvergentОкругляет число до ближайшего представимого значения. Если возникает связь, округляется до ближайшего чётного целого числа. Эквивалентно Designer™ фиксированной точки convergent функция.
FloorОкругляет как положительные, так и отрицательные числа в сторону отрицательной бесконечности. Эквивалентно MATLAB floor функция.
NearestОкругляет число до ближайшего представимого значения. Если возникает галстук, округляется до положительной бесконечности. Эквивалентно конструктору фиксированных точек nearest функция.
RoundОкругляет число до ближайшего представимого значения. Если возникает связь, округляет положительные числа в сторону положительной бесконечности и округляет отрицательные числа в сторону отрицательной бесконечности. Эквивалентно конструктору фиксированных точек round функция.
SimplestАвтоматический выбор между скруглением по направлению к полу и скруглением по направлению к нулю для создания кода округления, который является максимально эффективным.
ZeroОкругляет число до нуля. Эквивалентно MATLAB fix функция.
Параметр блока: RndMeth |
| Текст: символьный вектор |
Значения: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
По умолчанию: 'Floor' |
Дополнительные сведения см. в разделе Округление (конструктор фиксированных точек).
Saturate on integer overflow - Метод действия переполненияoff (по умолчанию) | onУкажите, будут ли переполнения насыщаться или переноситься.
off - переполнение до соответствующего значения, которое может представлять тип данных.
Например, число 130 не помещается в знаковое 8-битовое целое число и переносится в -126.
on - Переполнения насыщаются минимальным или максимальным значением, которое может представлять тип данных.
Например, переполнение, связанное со значащим 8-битным целым числом, может насытиться до -128 или 127.
Совет
Рекомендуется установить этот флажок, если модель имеет возможное переполнение и требуется явная защита от насыщения в сгенерированном коде.
Рекомендуется снять этот флажок, если требуется оптимизировать эффективность созданного кода.
Снятие этого флажка также позволяет избежать чрезмерного указания того, как блок обрабатывает сигналы вне диапазона. Дополнительные сведения см. в разделе Устранение ошибок диапазона сигналов.
Если этот флажок установлен, насыщение применяется ко всем внутренним операциям блока, а не только к выводу или результату.
В общем, процесс генерации кода может обнаруживать, когда переполнение невозможно. В этом случае генератор кода не создает код насыщения.
Параметр блока: SaturateOnIntegerOverflow |
| Текст: символьный вектор |
Значения: 'off' | 'on' |
По умолчанию: 'off' |
Allow different data input sizes - Разрешить различные размеры ввода данныхoff (по умолчанию) | onУстановите этот флажок, чтобы разрешить ввод сигналов различных размеров. Блок распространяет размер входного сигнала на выходной сигнал. Если два входных сигнала данных являются сигналами переменного размера, максимальный размер сигналов может быть равным или разным.
Параметр блока:
AllowDiffInputSizes
|
| Текст: символьный вектор |
Значение:
'on' | 'off' |
По умолчанию:
'off'
|
Типы данных |
|
Прямой проход |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулей |
|
Созданный код зависит от memcpy или memset функции (string.h) при определенных условиях.
HDL Coder™ предоставляет дополнительные опции конфигурации, которые влияют на реализацию HDL и синтезированную логику.
Этот блок имеет единую архитектуру HDL по умолчанию.
| ConstrainedOutputPipeline | Количество регистров для размещения на выходах путем перемещения существующих задержек в рамках проекта. Распределенная конвейерная обработка не перераспределяет эти регистры. Значение по умолчанию: |
| InputPipeline | Количество входных ступеней трубопровода для вставки в сформированный код. Распределенная конвейерная обработка и конвейерная обработка с ограниченным выходом могут перемещать эти регистры. Значение по умолчанию: |
| OutputPipeline | Количество выходных ступеней трубопровода для вставки в сформированный код. Распределенная конвейерная обработка и конвейерная обработка с ограниченным выходом могут перемещать эти регистры. Значение по умолчанию: |
Этот блок поддерживает генерацию кода для сложных сигналов.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.


