这个示例演示了如何自动将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™。在运行工作流之前,您必须:
安装Xilinx Vivado™Design Suite,支持的版本列在金宝appHDL编码文档
将JTAG MATLAB的Zynq板设置为AXI主IP插入。要学习如何设置ZedBoard,请参阅创建Zynq硬件和工具章节介绍了Xilinx Zynq平台的HW/SW协同设计工作流。
下载并安装Xilinx FPGA Boards的HDL Verifier硬件支持包。金宝app请参阅中的设置和配置部分Xilinx FPGA板的金宝appHDL验证器支持包.
使用hdlsetuptoolpath设置合成工具的路径。如下所示:
hdlsetuptoolpath (“ToolName”,“Xilinx Vivado”,“路径”,“C: \ Xilinx \ Vivado \ 2018.3 \ bin \ vivado.bat ');
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.点击运行这个任务运行设定目标参考设计的任务。
将DUT中的每个端口映射到一个IP核心目标接口。在本例中,输入端口Blink_frequency和Blink_direction映射到AXI4-Lite接口,因此HDL Coder为它们生成可访问axis接口的寄存器。的领导输出端口映射到外部接口,通用led [0:7],连接Zynq板上的LED硬件。
1.在设定目标>设置目标接口任务,选择AXI4-Lite
为Blink_frequency,Blink_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是由相同的频率作为目标频率驱动的。
为了使用该特性,您需要一个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作为AXI主(HDL验证器所需)”参考设计参数默认添加到您的自定义参考设计。该参数的默认值为“off”。
如果你想控制参考设计的这些默认行为,你可以使用以下两个可选的参考设计属性:
AddJTAGMATLABasAXIMasterParameter和JTAGMATLABasAXIMasterDefaultValue其中,参考设计作者可以设置这些属性,以关闭或甚至禁用参数选项,使其不出现在HDL Workflow Advisor中。
%在参考设计中插入JTAG MATLAB作为AXI MasterhRD。AddJTAGMATLABasAXIMasterParameter = true;hRD。JTAGMATLABasAXIMasterDefaultValue =“上”;
1.HDLWA参数可见性选项:如果你不想将JTAG MATLAB作为AXI主IP插入到你编写的参考设计中,禁用此属性:hRD。AddJTAGMATLABasAXIMasterParameter来假.
2.参数默认值:在您编写的参考设计中,可以控制属性hRD。JTAGMATLABasAXIMasterDefaultValue来“上”或“关闭”.