主要内容

从SoC模型导出自定义参考设计

您可以使用socExportReferenceDesign功能,从SoC Blockset™模型生成参考设计,并避免生成和注册自定义参考设计所需的手动步骤。该函数生成这些工件。

  • 董事会注册文件

  • 参考设计注册文件

  • IP存储库

  • 设计文件

  • 约束文件

SoC模型可以是这些类型之一。

  • 具有FPGA、内存和可选I/O(无处理器)的SoC模型

  • 一个SoC模型,具有处理器、FPGA、内存和可选I/O

创建系统SoC模型

当从SoC模型导出自定义参考设计时,参考设计不包括待测设计(DUT),并且暴露到DUT的接口。生成参考设计后,可以使用HDL工作流顾问工具。您的自定义IP必须具有与FPGA算法块相同的接口。

要导出自定义参考设计,首先创建一个SoC模型来建模系统和板上可用的I/O。要创建SoC块集模型,请使用以下方法之一。

在模型中包含一个DUT子系统。该子系统必须具有与您正在开发的IP核相同的接口。因为生成的参考设计不包括DUT子系统,所以DUT可以是一个简单的模型,也可以只是一个传递块。

为参考设计导出准备SoC模型

您可以在导出的参考设计中使用MATLAB作为AXI主特性来与来自主机的SoC设备交互。在仿真金宝app软件®,单击,打开“配置参数”对话框模型设置建模选项卡,并在左侧窗格中选择硬件实现.然后,扩大目标硬件资源中,选择FPGA设计(顶层),然后选择包括'MATLAB AXI Master' IP,用于基于主机的交互

IP核心时钟频率(MHz)框中,指定IP核时钟频率,单位为MHz。

为确保您的SoC模型支持代码生成,请使用金宝appSoC建设者生成可执行文件和部署模型的工具。有关的更多信息SoC建设者工具,看到生成SoC设计

有关仅在fpga情况下显示此工作流的示例,请参见导出自定义参考设计

SoC型号包含处理器时的额外准备

设备树(DT)是一种向操作系统描述硬件的数据结构。在向设计中添加IP时,应该生成一个新的设备树,以便操作系统可以访问该IP。

如果您的模型同时包含FPGA和处理器子系统,则在导出参考设计之前需要执行这些附加步骤。

  1. 在配置参数中,单击硬件实现在左边。然后,扩大目标硬件资源,并选择包括处理系统FPGA设计(顶层)

  2. 运行SoC建设者工具,按照指导步骤进行代码生成,然后将二进制文件加载到FPGA。执行此步骤的原因是SoC建设者自动生成设备树文件(.dtb)储存在命名为hdlcoder_rd / soc_prj.output.dtb以及带有匹配设备名称的软件模型。

  3. 从文件夹中复制设备树文件hdlcoder_rd到SD卡的根文件夹。在生成的plugin_rd.m文件,自定义设备树文件被指定为:

    hRD。DeviceTreeName = 'soc_prj.output.dtb';

执行socExportReferenceDesign函数

方法导出模型的自定义参考设计socExportReferenceDesign函数。例如,对于一个名为soc_image旋转,在MATLAB中输入此代码®命令提示符。

socExportReferenceDesign(“soc_image_rotation”)

该函数在当前文件夹中生成这些工件。

  • 董事会注册文件

  • 参考设计注册文件

  • IP存储库

  • 设计文件

  • 约束文件

将IP核集成到生成的参考设计中

将生成的文件夹添加到MATLAB路径中。使用HDL工作流顾问工具指导您完成集成IP和生成部署在SoC设备上的硬件和软件可执行文件的步骤。

有关仅在fpga情况下显示完整工作流程的示例,请参见导出自定义参考设计.的处理系统时,需要执行这些附加步骤HDL工作流顾问工具。

  1. 在Si金宝appmulink中,右键单击要集成到参考设计中的DUT块,然后选择HDL代码>HDL工作流顾问打开HDL工作流顾问工具。或者,使用hdladvisor(高密度脂蛋白编码器)函数。

  2. 在步骤1.1中,设置目标工作流程IP核生成而且目标平台生成的平台socExportReferenceDesign函数。

  3. 点击运行此任务运行设置目标设备和合成工具的任务。

  4. 在步骤1.3中,通过将IP中的每个端口连接到参考设计中的相应端口来设置目标接口。

  5. 点击运行此任务运行设置目标接口的任务。

  6. 步骤的其余步骤HDL工作流顾问工具。

  7. 可选:在步骤4.2中,您可以选择生成带有IP核驱动程序块的软件接口模型(需要一个嵌入式编码器®许可证)。如果选择生成此软件接口模型,则清除跳过这个任务生成一个带有IP核驱动程序块的软件接口模型,用于C代码生成

    有关更多信息,请参见中“生成软件接口模型”一节着眼于Xilinx Zynq平台(高密度脂蛋白编码器)

    生成的软件接口模型包含与DUT子系统接口匹配的AXI驱动程序块。设置设备名称为“/ dev / mwipcore”默认情况下。更改这些AXI驱动程序块中的设备名称,以匹配SD卡映像使用的设备树文件中的设备名称。

    有几种方法可以找到设备名称:

    • 设备名称来源于SoC模型的DUT名称。如果您使用DUT名称指定为的SoC模型导出参考设计soc_hwsw_stream_fpga/FPGA算法包装器,在AXI驱动块中生成的设备名为“/ dev / mwfpga_algorithm_wrapper_ip0”

    • 在启动SoC设备后,在操作系统(OS)映像中查找设备名称。要做到这一点,请使用UART或SSH协议登录到单板,并执行:

      ls / dev
      例如:

      ls/dev命令执行结果。Mwfpga_algorithm_wrapper_ip0突出显示。

  8. 在步骤4.4中,设置编程方法下载

  9. HDL工作流顾问工具完成构建,它返回一个生成的位流文件。用生成的比特流文件编程FPGA。

  10. 您现在可以在独立模式下部署软件接口模型,或在外部模式下使用它与SoC设备交互。例如,请参阅“在Zynq ZC702硬件上运行软件接口模型”一节着眼于Xilinx Zynq平台(高密度脂蛋白编码器)

另请参阅

相关的话题