Преобразуйте сигнал в новый тип, не изменяя значения сигналов
Simulink / Атрибуты Сигнала
HDL Coder / Атрибуты Сигнала
Блок Signal Conversion преобразует сигнал от одного типа до другого. Чтобы выбрать тип преобразования, чтобы выполнить, используйте параметр Output, или один из них предварительно сконфигурировал блоки Signal Conversion:
Блок Signal Copy
Блок To Virtual Bus
Блок To Nonvirtual Bus
Port_1
— Входной сигнал, чтобы преобразоватьВходной сигнал, чтобы преобразовать в виде скаляра, вектора, матрицы или массива N-D.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Port_1
— Конвертированный сигналВыходной сигнал является входным сигналом, преобразованным в заданный тип.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
Output
— Тип преобразованияSignal copy
(значение по умолчанию) | Virtual bus
| Nonvirtual bus
Задайте тип преобразования, чтобы выполнить. Тип преобразования, которое вы используете, зависит от вашей цели моделирования.
Моделирование цели | Выведите опцию |
---|---|
Уменьшайте сгенерированный код для мультиплексированного сигнала. Для примера включающее программное обеспечение Simulink® Coder™ смотрите, Генерируют Повторно используемый Код от Подсистем (Simulink Coder). | Signal copy |
Соедините блок с постоянным шагом расчета к выходному порту активированной подсистемы. | Signal copy |
Сохраните память путем преобразования невиртуальной шины в виртуальную шину. | Virtual bus |
Передайте виртуальную шину построению моделирования, которое требует невиртуальной шины, такой как блок Model. | Nonvirtual bus |
Signal copy
опция является значением по умолчанию. Тип преобразования, что блок Signal Conversion выполняет использование Signal copy
опция зависит от типа входного сигнала.
Тип входного сигнала | Преобразование, которое выполняет опция копии сигнала |
---|---|
Мультиплексированный (нешина) сигнал | Преобразует мультиплексированный сигнал, элементы которого занимают несмежные области памяти к векторному сигналу, элементы которого занимают непрерывные области памяти. Преобразование выделяет непрерывную область памяти для элементов мультиплексированного сигнала и копирует значения с несмежных областей (представленный входом блока) к непрерывным областям (представленный блоком выход) на каждом временном шаге. |
Шина | Выводит непрерывную копию шины, которая является входом с блоком Signal Conversion. |
Для массива входного сигнала шин используйте Signal copy
опция.
Virtual bus
опция преобразует невиртуальную шину в виртуальную шину.
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, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Чтобы включить этот параметр, установите 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.