Преобразуйте сигнал в новый тип, не изменяя значения сигналов
Simulink / Атрибуты Сигнала
HDL Coder / Атрибуты Сигнала
Блок Signal Conversion преобразовывает сигнал от одного типа до другого. Чтобы выбрать тип преобразования, чтобы выполнить, используйте параметр Output или один из этих предварительно сконфигурированных блоков Преобразования Сигнала:
Блок Copy сигнала
К блоку Virtual Bus
К блоку Nonvirtual Bus
Port_1
— Входной сигнал, чтобы преобразоватьВходной сигнал, чтобы преобразовать, заданный как скаляр, вектор, матрица или массив N-D.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
Port_1
— Конвертированный сигналВыходной сигнал является входным сигналом, преобразованным в заданный тип.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
Вывод
Тип преобразованияSignal copy
(значение по умолчанию) | Virtual bus
| Nonvirtual bus
Задайте тип преобразования, чтобы выполнить. Тип преобразования, которое вы используете, зависит от вашей цели моделирования.
Моделирование цели | Выведите опцию |
---|---|
Уменьшайте сгенерированный код для мультиплексированного сигнала. Для примера включающее программное обеспечение Simulink® Coder™ смотрите, Генерируют Повторно используемый Код от Подсистем (Simulink Coder). | Signal copy |
Соедините блок с постоянным шагом расчета к выходному порту активированной подсистемы. | Signal copy |
Передайте шину или массив шин, компоненты которых имеют различные типы данных к невиртуальному блоку Inport в атомарной подсистеме, которая имеет прямое сквозное соединение. Для получения дополнительной информации смотрите Шины Использования с Атомарной подсистемой Невиртуальные Блоки Inport. | 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' |
Тип данных
Невиртуальный тип данных шиныInherit: auto
(значение по умолчанию) | Bus: <object name>
| <data type expression>
Задайте тип выходных данных невиртуальной шины, которую производит блок Signal Conversion.
Эта опция доступна только, когда вы устанавливаете параметр Output на Nonvirtual bus
.
Опцией по умолчанию является Inherit: auto
, который использует правило, которое наследовало тип данных.
Задайте объект Simulink.Bus
в параметре Data type для одного или обоих из следующих блоков:
Блок 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-кода, смотрите Преобразование Сигнала.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.