主要内容

用JTAG MATLAB作为AXI Master控制HDL编码器生成IP核

这个示例演示了如何自动将JTAG MATLAB作为axis主IP插入到您的参考设计中,并使用MATLAB来原型您的HDL编码器生成的FPGA IP核。

介绍和先决条件

为了访问板载内存位置和快速探测或控制MATLAB的FPGA逻辑,使用JTAG MATLAB作为AXI主IP。该对象通过物理JTAG电缆连接到IP,并允许从MATLAB命令行读取和写入命令到从内存位置。

您可以插入JTAG MATLAB作为AXI主IP运行设定目标参考设计的任务IP核心代工作流。

要使用此功能:

  • 您必须安装并下载HDL验证器™硬件支持包。金宝app

  • 不能以没有hRD的独立板为目标。addAXI4SlaveInterface或基于Xilinx ISE的单板。

本例使用ZedBoard™。在运行工作流之前,您必须:

  1. 安装Xilinx Vivado™Design Suite,支持的版本列在金宝appHDL编码文档

  2. 将JTAG MATLAB的Zynq板设置为AXI主IP插入。要学习如何设置ZedBoard,请参阅创建Zynq硬件和工具章节介绍了Xilinx Zynq平台的HW/SW协同设计工作流。

  3. 下载并安装Xilinx FPGA Boards的HDL Verifier硬件支持包。金宝app请参阅中的设置和配置部分Xilinx FPGA板的金宝appHDL验证器支持包

  4. 使用hdlsetuptoolpath设置合成工具的路径。如下所示:

hdlsetuptoolpath (“ToolName”“Xilinx Vivado”“路径”“C: \ Xilinx \ Vivado \ 2018.3 \ bin \ vivado.bat ');

启用插入JTAG MATLAB作为AXI Master

1.使用以下命令打开hdlcoder_led_blink demo:

open_system (“hdlcoder_led_blinking”

2.从。打开HDL工作流顾问hdlcoder_led_blinking / led_counter通过右键单击led_counter子系统,并选择HDL代码>高密度脂蛋白工作流顾问

3.在设定目标>设置目标设备和合成工具任务,为目标工作流程中,选择IP核心代

4.为目标平台中,选择ZedBoard.如果您没有这个选项,请选择得到更多的打开支持包安装程序。金宝app在支持包安装程金宝app序中,选择Xilinx Zynq™Platform,并按照支持包安装程序提供的说明完成安装。

5.点击运行这个任务运行设置目标设备和合成工具的任务。

6.在设定目标>设定目标参考设计任务,选择默认的系统并设置插入JTAG MATLAB作为AXI Master下拉选择在参考设计参数选项中。

7.点击运行这个任务运行设定目标参考设计的任务。

用AXI Master IP生成HDL IP核并创建项目

将DUT中的每个端口映射到一个IP核心目标接口。在本例中,输入端口Blink_frequencyBlink_direction映射到AXI4-Lite接口,因此HDL Coder为它们生成可访问axis接口的寄存器。的领导输出端口映射到外部接口,通用led [0:7],连接Zynq板上的LED硬件。

1.在设定目标>设置目标接口任务,选择AXI4-LiteBlink_frequencyBlink_direction,Read_back

2.选择通用led [0:7]领导

3.创建包含JTAG MATLAB作为AXI Master的参考设计方案。

要创建项目,右键单击创建项目任务和选择运行到选定任务

“在Vivado项目中,您可以看到JTAG MATLAB作为axis主IP插入参考设计”。

上面的项目显示了在Task 1.4中设置目标频率时的参考设计设置目标频率小于或等于100mhz。如果您的设计目标频率大于100 MHz,则创建以下参考设计。

为了避免在高频设计中出现定时故障,MATLAB JTAG作为AXI Master由50 MHz的固定时钟驱动clk_wizIP如上述参考设计所示。

如果在任务1.4中您的设计目标频率大于100mhz设置目标频率, MATLAB JTAG as AXI Master总是由50 MHz固定时钟频率驱动,如果您的设计目标频率小于或等于100 MHz,那么MATLAB JTAG as AXI Master是由相同的频率作为目标频率驱动的。

利用JTAG MATLAB作为axis Master控制HDL编码器IP核

为了使用该特性,您需要一个HDL验证器许可证。之后,一个简单的MATLAB®命令行接口可以用来访问由HDL Coder生成的IP核。

在MATLAB命令窗口中:

1.创建AXI主对象

h = aximaster (“Xilinx”

2.输入写命令修改LED闪烁频率

h.writememory (400 d0100, 0)

观察LED闪烁频率过低。尝试将AXI Master写命令中的值从0修改为15,以增加LED的闪烁频率。

h.writememory (400 d010015)

3.输入read命令读取当前计数器值

h.readmemory (400 d0108, 1)

4.删除对象时,释放JTAG资源。如果不删除该对象,其他JTAG操作(如FPGA编程)将失败。

删除(h)

这个演示演示了如何从MATLAB轻松地原型您的FPGA IP核。

JTAG MATLAB as AXI Master in Custom Reference Designs

“插入JTAG MATLAB作为AXI主(HDL验证器所需)”参考设计参数默认添加到您的自定义参考设计。该参数的默认值为“off”。

如果你想控制参考设计的这些默认行为,你可以使用以下两个可选的参考设计属性:

AddJTAGMATLABasAXIMasterParameterJTAGMATLABasAXIMasterDefaultValue其中,参考设计作者可以设置这些属性,以关闭或甚至禁用参数选项,使其不出现在HDL Workflow Advisor中。

%在参考设计中插入JTAG MATLAB作为AXI MasterhRD。AddJTAGMATLABasAXIMasterParameter = true;hRD。JTAGMATLABasAXIMasterDefaultValue =“上”

1.HDLWA参数可见性选项:如果你不想将JTAG MATLAB作为AXI主IP插入到你编写的参考设计中,禁用此属性:hRD。AddJTAGMATLABasAXIMasterParameter

2.参数默认值:在您编写的参考设计中,可以控制属性hRD。JTAGMATLABasAXIMasterDefaultValue“上”“关闭”