Преобразуйте сигнал в новый тип без изменения значений сигналов
Атрибуты Simulink/Signal
Атрибуты HDL-кодера/сигнала
Блок Signal Conversion преобразует сигнал от одного типа к другому. Чтобы выбрать тип преобразования для выполнения, используйте параметр Output или один из следующих предварительно сконфигурированных блоков Signal Conversion:
Signal Copy блок
To Virtual Bus блок
To Nonvirtual Bus блок
Port_1
- Входной сигнал для преобразованияВходной сигнал для преобразования, заданный как скаляр, вектор, матрица или N-D массив.
Типы данных: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| string
| Boolean
| fixed point
| enumerated
| bus
Port_1
- Преобразованный сигналВыходной сигнал - это входной сигнал, преобразованный в заданный тип.
Типы данных: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Output
- Тип преобразованияSignal copy
(по умолчанию) | Virtual bus
| Nonvirtual bus
Укажите тип преобразования для выполнения. Тип преобразования, которое вы используете, зависит от цели моделирования.
Цель моделирования | Выход |
---|---|
Уменьшите сгенерированный код для сигнала muxed. Для примера с участием Simulink® Coder™ программного обеспечения см. «Генерация повторного кода из подсистем» (Simulink Coder). | Signal copy |
Соедините блок с постоянным шагом расчета с выходом портом включенной подсистемы. | Signal copy |
Сохраните память путем преобразования невиртуальной шины в виртуальную шину. | Virtual bus |
Передайте виртуальную шину в конструкцию моделирования, которая требует невиртуальной шины, такой как блок Model. | Nonvirtual bus |
The Signal copy
опция по умолчанию. Тип преобразования, которое выполняет блок Signal Conversion с помощью Signal copy
опция зависит от типа входного сигнала.
Тип входного сигнала | Преобразование, которое выполняет опция копирования сигнала |
---|---|
Muxed (nonbus) сигнал | Преобразует имитированный сигнал, элементы которого занимают разъединенные области памяти, в сигнал вектора, элементы которого занимают смежные области памяти. Преобразование выделяет смежную область памяти для элементов имитированного сигнала и копирует значения из несмежных областей (представленных входным блокам) в смежные области (представленные выходным блокам) на каждом временном шаге. |
Автобус | Выводит смежную копию шины, которая является входом в блок Signal Conversion. |
Для массива входных сигналов шин используйте Signal copy
опция.
The Virtual bus
опция преобразует невиртуальную шину в виртуальную шину.
The Nonvirtual bus
опция преобразует виртуальную шину в невиртуальную.
Параметры блоков:
ConversionOutput |
Тип: Вектор символов |
Значения:
'Signal copy' | 'Virtual bus' | 'Nonvirtual bus' |
По умолчанию:
'Signal copy' |
Data type
- Невиртуальный тип данных шиныInherit: auto
(по умолчанию) | Bus: <object name>
| <data type expression>
Задайте тип выходных данных невиртуальной шины, которую создает блок Signal Conversion.
Эта опция доступна только, когда вы устанавливаете параметр Output равным Nonvirtual bus
.
Опция по умолчанию Inherit: auto
, который использует правило, которое наследует тип данных.
Задайте Simulink.Bus
объект в параметре Data type для одного или обоих следующих блоков:
Signal Conversion блок
Блок Bus Creator в восходящем направлении
Если вы задаете объект шины для блока Signal Conversion, но не для его восходящего блока Bus Creator, то используйте объект шины, который соответствует иерархии шины, которая в восходящем направлении Bus Creator выходов блока.
Если вы задаете объект шины для блока Signal Conversion и его восходящего Bus Creator блока, используйте один и тот же объект шины для обоих блоков.
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, которая помогает вам задать атрибуты type данных. Для получения дополнительной информации смотрите Задать типы данных Используя Data Type Assistant.
Чтобы включить этот параметр, установите Output равным Nonvirtual bus
.
Параметры блоков:
OutDataTypeStr |
Тип: Вектор символов |
Значения:
'Inherit: auto' | 'Bus: <object name>' | '<data type expression>' |
По умолчанию:
'Inherit: auto' |
Exclude this block from 'Block reduction' optimization
- Исключить из оптимизации сокращения блоковoff
(по умолчанию) | on
Эта опция доступна только, когда вы устанавливаете параметр Output равным Signal copy
. Если элементы входного сигнала занимают смежные области памяти, то в качестве оптимизации программное обеспечение Simulink устраняет блок из скомпилированной модели. Если вы устанавливаете флажок Exclude this block from 'Block reduction' optimization, оптимизация происходит при следующем компиляции модели. Для получения дополнительной информации см. Раздел «Сокращение блоков».
Параметры блоков:
OverrideOpt |
Тип: Вектор символов |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
HDL Coder™ предоставляет дополнительные опции строения, которые влияют на реализацию HDL и синтезированную логику.
Этот блок имеет сквозную реализацию.
ConstrainedOutputPipeline | Количество регистров для размещения на выходах путем перемещения существующих задержек в рамках вашего проекта. Распределённая конвейеризация не перераспределяет эти регистры. Значение по умолчанию является |
InputPipeline | Количество входных этапов конвейера для вставки в сгенерированный код. Распределённая конвейеризация и ограниченная выходная конвейеризация могут перемещать эти регистры. Значение по умолчанию является |
OutputPipeline | Количество выходных этапов конвейера для вставки в сгенерированный код. Распределённая конвейеризация и ограниченная выходная конвейеризация могут перемещать эти регистры. Значение по умолчанию является |
Этот блок поддерживает генерацию кода для сложных сигналов.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.