主要内容

基本 HDL 代码生成工作流

您可以使用 HDL Coder™ 从 Simulink® 模型或 MATLAB® 算法生成可综合的 VHDL®、Verilog®SystemVerilog 代码。您可以将生成的 HDL 代码用于 FPGA 编程、ASIC 原型构建和生产设计。使用 HDL 工作流顾问,您可以将生成的 HDL 代码部署到 Xilinx®、Intel®Microchip 板上。您可以针对速度和面积优化设计,突出显示关键路径,并在综合之前生成资源使用量估计值。

Workflow illustrating how to start from an HDL-compatible algorithm to HDL code deployed on the target.

开发 MATLAB 或 Simulink 设计

您可以在 MATLAB 和 Simulink 中开发用于 HDL 代码生成的设计。您可以使用 HDL Coder 从 Simulink 模型或 MATLAB 算法生成代码。使用与 HDL 代码生成兼容的语法和函数编写 MATLAB 算法。使用兼容 HDL 的 Simulink 模块,通过 Simulink 创建设计。要了解详细信息,请参阅创建 HDL 兼容的 Simulink 模型

设置 HDL Coder 工程

要从 MATLAB 算法生成 HDL 代码,请为您的 MATLAB 设计创建并设置 HDL Coder 工程。将 MATLAB 文件添加到您要为其生成 HDL 代码的 HDL Coder 工程中。

使用 HDL 代码顾问检查 HDL 兼容性

您可以使用 HDL 代码顾问检查 Simulink 模型的 HDL 兼容性。HDL 代码顾问工具验证并更新您的 Simulink 模型或子系统,以确保与 HDL 代码生成的兼容性。模型顾问工具检查模型配置设置、端口和子系统设置、模块设置、对原生浮点的支持,以及是否符合行业标准规则。有关详细信息,请参阅 Check HDL Compatibility of Simulink Model Using HDL Code Advisor

生成 HDL 代码

在您设计兼容 HDL 的 Simulink 模型或 MATLAB 算法后,您可以使用 HDL Coder 生成 HDL 代码。您可以选择所需的目标语言,例如 VHDL、Verilog 或 SystemVerilog。HDL Coder 会在生成代码之前编译模型。HDL Coder 在 MATLAB 命令行窗口中显示进度消息,其中包含指向配置集和生成的 HDL 文件的链接。

另请参阅

验证生成的 HDL 代码

生成 HDL 代码后,您可以使用针对您的 Simulink 模型或 MATLAB 算法的 HDL 测试平台来测试和验证您的设计。测试平台包括由信号源生成的激励数据、组件实例化以及用于驱动在测实体的时钟、复位和时钟使能输入。

在测试平台运行期间,软件将生成的输出数据与 HDL 模型的输出进行比较以进行验证。您可以使用 Siemens® ModelSim™ 仿真器对生成的测试平台和脚本文件进行仿真。要了解详细信息,请参阅验证生成的 HDL 代码

将生成代码部署到目标硬件

HDL Coder 包含工作流顾问。此工具在 Xilinx、Intel 和 Microchip 板上通过生成的代码自动进行原型构建,并为 ASIC 和 FPGA 工作流生成 IP 核。使用 HDL Coder,您可以部署您的 MATLAB 或 Simulink 设计:

  • 在独立 FPGA 板(如 Intel FPGA 或 Xilinx FPGA 板)上。

  • 在具有单独 FPGA 和处理器的平台(如 Simulink Real-Time 目标机与 FPGA I/O 板)上。

  • 作为片上系统 (SoC) 平台(如 Xilinx Zynq®、Intel SoC 或 Microchip SoC)上的硬件和软件。

另请参阅

针对速度和面积优化设计

您可以使用速度和面积优化方法来满足设计需求,例如资源使用量、关键路径估计和时序需求。应用优化以生成更加硬件高效的 HDL 代码。在 HDL Coder 中使用面积和速度优化,以节省资源并改进设计在目标设备上的时序。这些优化不会更改算法的功能性行为。

您可以首先在不启用优化的情况下生成 HDL 代码并在目标平台上综合您的设计。如果设计不满足时序需求,您可以启用优化并重新运行工作流,直到您的设计满足面积和速度需求。要了解有关优化类型的更多信息,请参阅Introduction to Optimizations in HDL Coder

另请参阅

主题