Чтобы сгенерировать HDL-код для алгоритмов Simscape™, вы генерируете модель реализации HDL при помощи HDL Workflow Advisor Simscape. Если вы следуете определенным инструкциям при моделировании алгоритма Simscape, HDL Workflow Advisor Simscape заменяет подсистему Simscape на соответствующий HDL Subsystem
блокируйтесь в модели реализации HDL. HDL Subsystem
блок содержит алгоритм пространства состояний, который использует совместимые с HDL блоки Simulink® вместо блоков Simscape. Можно сгенерировать HDL-код для HDL Subsystem
блокируйте и разверните код на целевые устройства FPGA и FPGAs на борту модулей ввода-вывода FPGA Speedgoat. В этом случае, когда вы устанавливаете флажок Generate validation logic for the implementation model в задаче Generate implementation model HDL Workflow Advisor Simscape, Советник генерирует отдельную модель валидации пространства состояний. Эта модель сравнивает выходные параметры от HDL Subsystem
и исходная подсистема Simscape, чтобы проверить, что они функционально эквивалентны.
Если вы не следуете инструкциям, HDL Workflow Advisor Simscape не может смочь выполнить эту замену. В этом случае модель реализации HDL содержит алгоритм пространства состояний с исходной подсистемой Simscape около него. Прежде, чем сгенерировать код, вы изменяете модель реализации и перестраиваете блоки, таким образом, что это заменяет подсистему Simscape на алгоритм пространства состояний. В этом случае, когда вы устанавливаете флажок Generate validation logic for the implementation model, Советник помещает подсистему логики валидации в модели реализации, чтобы проверить функциональную эквивалентность.
В дополнение к этим инструкциям убедитесь, что модель Simscape сконфигурирована для совместимости с HDL Workflow Advisor Simscape. См. Инструкции для Моделирования Simscape для Совместимости HDL.
Заключите блоки Simscape, для которых вы генерируете модель реализации HDL в блоке Subsystem и обеспечиваете тестовые воздействия. В блоке Subsystem ваша модель может иметь несколько иерархий то использование блоки Simscape.
Не используйте замаскированные подсистемы. HDL Workflow Advisor Simscape не может заменить замаскированные подсистемы в модели реализации HDL.
В блоке Subsystem, который содержит блоки Simscape во входных портах, добавляет Simulink-PS Converter (Simscape) блоки. В выходных портах этой подсистемы добавьте PS-Simulink Converter (Simscape) блоки.
Используйте понятное имя для блоков PS-Simulink Converter и Simulink-PS Converter.
HDL Workflow Advisor Simscape использует имена Simulink-PS Converter и блоков PS-Simulink Converter для портов ввода и вывода HDL Subsystem
блок. Используя понятное имя облегчает идентифицировать то, чему соответствуют порты ввода и вывода в модели реализации HDL.
В диалоговом окне Block Parameters Simulink-PS Converter и блоков PS-Simulink Converter, на вкладке Input Handling, наборе Filtering and derivatives отпуска к Provide signals
и набор Provided signals к Input only
.
Например, откройте модель понижающего конвертера. Блок Simscape_system содержит блоки Simscape. Блоки вне этой подсистемы формируют тестовую среду.
open_system('sschdlexBuckConverterExample') sim('sschdlexBuckConverterExample')
В Simscape_system
подсистема, модель использует блоки Simscape и физические сигналы. Модель имеет Simulink-PS Converter и блоки PS-Simulink Converter в интерфейсах. Обеспечьте уникальные имена для этих блоков, таким образом, что они совпадают с соответствующими именами порта.
open_system('sschdlexBuckConverterExample/Simscape_system')
Если ваша модель Simscape содержит несколько сетей:
Заключите каждую сеть в подсистеме. Добавьте Simulink-PS Converter и блоки PS-Simulink Converter в интерфейсе подсистемы.
Используйте блок Solver Configuration (Simscape) для каждой сети. Используйте тот же шаг расчета через блоки Solver Configuration в различных сетях.
Например, эта модель содержит больше сетей Simscape, чем блоки Solver Configuration, сеть Simscape не заменяется подсистемой HDL.
HDL Workflow Advisor Simscape затем заменяет каждую подсистему Simscape на соответствующий HDL Subsystem
.
Для примера, который показывает, как сгенерировать HDL-код для модели, которая имеет несколько сетей, смотрите, Генерируют HDL-код для Моделей Simscape с Несколькими Сетями.
Чтобы сгенерировать модель реализации, которая заменяет подсистему Simscape на алгоритм пространства состояний в вашей исходной модели Simscape, не используют эти блоки из Simscape> Библиотека Utilities:
Simscape Bus (Simscape)
Connection Port (Simscape)
Connection Label (Simscape)
Например, эта модель содержит Connection Label и блоки Simscape Bus в двух различных подсистемах. HDL Workflow Advisor Simscape не может заменить эти подсистемы на алгоритм пространства состояний.