HDL Coder

生成用于 FPGA 和 ASIC 设计的 VHDL 和 Verilog 代码

HDL Coder 从 MATLAB® 函数、Simulink® 模型和 Stateflow® 图表生成可移植、可合成的 Verilog® 和 VHDL® 代码。生成的 HDL 代码可用于 FPGA 编程或 ASIC 原型建立和设计。

HDL Coder 提供用于 Xilinx®、Microsemi® 和 Intel® FPGA 自动化编程的 Workflow Advisor。您可以控制 HDL 架构 和实现、突出显示关键路径,以及生成硬件资源利用率估算信息。HDL Coder 可在 Simulink 模型与生成的 Verilog 和 VHDL 代码之间建立 可追溯性,从而能够遵循 DO-254 及其他标准对高完整性应用进行代码验证。

开始:

HDL 代码生成

在高抽象级别上开发并验证硬件设计,自动为目标 FPGA、ASIC 或 SoC 设备生成可合成的 RTL 代码。

高级硬件设计

通过在 300 多个 HDL 就绪 Simulink 模块、MATLAB 函数和 Stateflow 图表中加以选择,自行设计子系统。针对设计进行硬件行为仿真、探索替代架构,以及生成可合成的 VHDL 或 Verilog。

脉冲检测算法的硬件架构。

独立于供应商的目标

生成可合成的 RTL 以用于各种实现工作流程以及 FPGA、ASIC 和 SoC 设备。为原型和生产代码的生成重用相同的模型。

生成可部署到任意 FPGA、ASIC 或 SoC 设备且独立于供应商的高效可合成的 RTL。

可读取、可追溯的 HDL 代码

通过保持要求、模型和 HDL 之间的可追溯性,遵守 DO-254ISO 26262IEC 61508 等功能安全标准。 生成的 HDL 符合行业标准规则并且可供代码审查读取。

生成的 HDL 代码链接到源模型和要求。

可预测的设计收敛

算法和硬件设计工程师可以在一个环境下协同工作,发挥各自的专长,同时消除依靠规范文档和手工编码 RTL 的传统工作流程固有的沟通隔阂。

加快硬件开发速度

通过将算法和硬件设计集成到同一环境,对高质量的系统设计实现更高效的收敛。在工作流程早期深入了解硬件实现可能对算法限制造成的影响。

在工作流程早期协同向算法中添加硬件实现详细信息。

设计更加优化

可在进行 RTL 实现之前探索各种硬件架构和定点量化可选方案。高级合成优化可有效映射到设备资源,如逻辑、DSP 和 RAM。

快速探索各种实现可选方案。

提前验证

在工作流程早期进行系统级数字、模拟和软件功能仿真,并在针对实现完善模型的同时持续集成。管理测试套件、测量测试覆盖率及生成启动 RTL 验证的组件。

验证并调试高级功能,然后生成 RTL 验证模型。

FPGA、ASIC 及 SoC 部署

部署到原型或生产硬件。自动查找各种设备和板。

基于 FPGA 的设备

生成可有效映射到 XilinxIntelMicrosemi FPGA 和 SoC 设备的 RTL。使用流行板的硬件支持包将输入和输出映射到设备级 I/O 和 AXI 寄存器,或者定义自己的自定义参考设计。

在 FPGA 原型板上测试无线通信算法。

ASIC 工作流程

在混合模拟、数字和软件系统环境下,设计并验证高级硬件功能和架构。然后,生成可读且符合规则的 RTL,使其基于 ASIC 硬件提供高质量结果 (QoR)。

实时仿真和测试

使用 HDL Workflow Advisor 查找 Speedgoat 中的可编程 FPGA I/O 模块,然后使用 Simulink Real-Time™ 进行仿真。本地浮点 HDL 代码生成可简化高精度原型建立的工作流程。

使用 HDL Workflow Advisor 查找 Speedgoat FPGA I/O 板。

特色应用

设计并生成需要具备自定义数字硬件性能和效能的信号处理和控件应用所用的代码。

无线通信

使用实时或捕捉的信号设计系统级算法,然后通过 LTE HDL Toolbox™ 添加硬件架构详细信息或重用子系统和模块。部署到预配置的软件无线电 (SDR) 平台或部署到自定义目标硬件。

实现针对无线通信算法的硬件架构。

电机和电源控制

针对 FPGA、ASIC 或 SoC 硬件实现复杂的低延迟控制系统,同时在必要时保持浮点准确性。使用对象模型进行仿真、部署到原型系统,然后重用生产部署模型。

使用浮点电机控制算法生成 HDL。

视频和图像处理

使用 Vision HDL Toolbox™ 模块和子系统生成高效 RTL,由此对视觉处理算法的流式硬件实现进行建模。使用 SoC Blockset™ 进行内存和软件事务延迟建模,从而改进算法。

针对 HDL 优化的视频和图像处理模块。

HIL 对象建模

对 FPGA 快速控制原型系统上运行的复杂 Simscape™ 硬件在环 (HIL) 对象模型进行实时仿真。使用 Simscape HDL Workflow Advisor 自动进行 Speedgoat FPGA I/O 模块编程。

转换要部署到 Speedgoat FPGA I/O 板的 Simscape 对象模型。

设计和验证工作流程

从算法设计连接到硬件实现的过程不只包括 HDL 代码生成。了解原型建立与生产工作流程中使用的最佳实践。

硬件设计

开发有效处理流式数据的算法。使用 HDL 就绪 Simulink 模块、自定义 MATLAB 函数模块和 Stateflow 图表添加硬件架构详细信息。

将浮点转换为定点

定点量化会折损实现效率的数值准确性。Fixed-Point Designer™ 有助于自动执行和管理此过程,同时通过生成原生浮点 HDL 代码实现各种动态操作的精度。

自定进行定点量化、使用原生浮点合成或使用定点和浮点组合。

原型和验证

应用左移验证提前消除错误,确保在系统环境下根据需要提供硬件函数。使用 HDL Verifier™ 从 MATLAB 和 Simulink 直接调试 FPGA 原型,生成组件以加快 RTL 验证速度。

验证高级功能、对 Simulink 所连接的 FPGA 上生成的 HDL 进行仿真,以及生成模型。

最新特性

MATLAB Function 模块优化

将 MATLAB Function 模块的资源共享和流水线优化与其他 Simulink 模块结合

Xilinx UltraRAM 映射

在支持 UltraRAM 内存的 Xilinx 设备上,将 HDL RAM 模块映射到 UltraRAM 内存资源

MATLAB Function 模块中的原生浮点

从 Simulink 内的自定义 MATLAB 模块生成独立于目标的浮点 HDL 代码

定点数学架构

ShiftAdd 架构实现更准确、更高频的除法和倒数运算

优化的层次扁平化

在生成非层次 HDL 代码时传递和共享资源,以减少生成文件的数量

关于这些特性和相应函数的详细信息,请参阅发行说明

使用 MATLAB 进行 FPGA 设计

观看这个由五部分组成的视频指南,了解如何使用 MATLAB 进行 FPGA 设计。探索在以 FPGA 或 ASIC 硬件为目标设计信号处理算法时要考虑的主要因素。

获取免费试用版

30 天探索触手可及。

马上下载

准备购买?

获取详细价格和并探索相关产品。

您是学生吗?

获得 MATLAB 和 Simulink 学生版软件。

了解更多