产品级设计与验证 -凯发k8网页登录

使用 matlab 和 simulink 借助硬件架构完善算法,并生成代码和验证模型

在 fpga、asic 或 soc 项目中,不同成员可以共同制定高抽象级别的早期关键决策,然后生成代码和模型以推进实现。

借助 matlab®和 simulink®,您可以:

  • 对各种架构选项进行建模和仿真
  • 面向实现自上而下完善算法
  • 实现定点量化
  • 生成产品级 rtl 和嵌入式 c 代码
  • 生成可用于数字或模拟仿真环境的验证模型
  • 遵循功能安全认证工作流

“simulink 有助于系统架构师和硬件设计人员进行沟通。它就像一种共用的语言,我们通过它来交换知识、构想和设计。simulink 和 hdl coder 使我们能够专注于开发算法和通过仿真完善设计,而不是检查 vhdl 语法和编码规则。”

marcel van bakel, philips healthcare

使用 matlab 进行产品级设计和验证

soc 架构和自上而下的设计

算法开发人员可以与系统架构师、数字工程师、混合信号工程师以及验证工程师协作,在高抽象级别探索架构选项。这有助于您的团队采用分区策略开展试验,进而借助硬件微架构和定点量化等实现细节来逐步完善各分区。支持 hdl 代码生成的模块有 300 多个,包括经产品级验证的硬件 ip 模块和子系统。

采用这一自上而下的流程,您可以不断集成更多详细模型进行系统级仿真,从而尽早消除功能和性能问题。通过这一流程,您可以创建和管理系统级测试案例套件,并衡量模型覆盖率,从而为顺利实现再添砝码。

在高级层面探索实现方面的各项权衡,对照已知的良好版本验证每一次完善。


生成 systemverilog dpi 或 uvm 组件,以加快创建验证环境。

验证模型生成

您可以直接从支持 c 代码生成的 matlab 函数或 simulink 模型生成模型,以加快创建 rtl 验证环境。这可确保您准确地捕获参考模型的高级行为以及对 rtl 仿真的激励。如果出现高级设计变更,可以重新生成模型。

这些验证组件使用 systemverilog 直接编程接口 (dpi),可用于各种支持 systemverilog 的仿真器。如果您的 rtl 验证环境使用通用验证方法 (uvm),则您可以选择从 simulink 生成 uvm 组件。


产品级代码生成

在传统设计流程中,手动编写规范文档以及基于该文档写代码时,往往会引入 bug。使用 matlab 和 simulink 执行系统级验证后,您可以直接从这些已验证的实现模型生成 hdl 和 c 代码。

生成的 hdl 可读,可追溯至其源模型,并且不依赖于特定目标。您可以控制(例如流水线插入)、(例如资源共享),以及多种代码样式和结构选项。您可以通过代码生成菜单自动运行赛灵思 (xilinx®) 和英特尔 (intel®) 的综合工具,也可以生成脚本以运行任何 fpga 或 asic 综合工具。

可读的 hdl 代码,带有模型注释,并可从代码逐行追溯到模型。


了解更多

了解产品

检查硬件子系统是否符合 do-254 建模标准。

功能安全

如果您的项目要求功能安全标准合规,我们的 do-254iso 26262iec 61508 套件已包含 fpga、asic 以及 soc 开发工作流。这些工作流会运行模型顾问来执行内置检查,确保您的模型符合相应标准的要求。

所生成的 hdl 和 c 代码可读,并可追溯至模型和需求,以便代码审查。为满足验证需求,您可以采用多种方法,例如背对背测试、协同仿真或 fpga 在环。


网站地图