如何将 qsys 子模块设置为参数可调的方式给另外的qsys 调用
原创 by DeeZeng [ Intel FPGA笔记 ]
Intel FPGA Quartus 软件中的 Qsys工具 也就是 Platform Designer 系统集成工具,可以
- 图形化界面操作
- 使用系统自带ip,自定义ip
- 系统自动生成 ip 间的连接
- 设计好的 qsys 系统 可作为模块给其他qsys系统调用

如果我们不对 qsys子模块进行设置,那在新的qsys中整合的时候,将只能使用qsys子模块中固定的设置。
那我们如何将 qsys 子系统设置成像自定义ip 一样有参数传入呢?
我们可以通过 Instance Parameters 的方式实现,qsys子系统添加后效果如下图

具体的步骤如下:
- 打开需要设置参数传入的 qsys
- 在 View -> Instance Parameters 打开 Instance Parameters 窗口
在 Instance 窗口界面设置 参数传入
- 在第3步骤 图章1 Instance Parameters 中: 设置 传入参数 名称,类型,范围,解释等
- 在第3步骤 图章2 Instance Script 中: 将参数通过写脚本绑定的 qsys 中的各个 ip。 比如上图中 是将 qsys 的DATA_WIDTH 传给了 dma_write_master_0的 DATA_WIDTH
- 如下附录了 比较完整的 Script 代码:
# request a specific version of the scripting API
package require -exact qsys 16.1 # Set the name of the procedure to manipulate parameters
set_module_property COMPOSITION_CALLBACK compose proc compose {} {
set_instance_parameter_value dma_read_master_0 DATA_WIDTH [ get_parameter_value DATA_WIDTH ]
set_instance_parameter_value dma_read_master_0 LENGTH_WIDTH [ get_parameter_value LENGTH_WIDTH ]
set_instance_parameter_value dma_read_master_0 FIFO_DEPTH [ get_parameter_value FIFO_DEPTH ]
set_instance_parameter_value dma_read_master_0 GUI_MAX_BURST_COUNT [ get_parameter_value GUI_MAX_BURST_COUNT ]
set_instance_parameter_value modular_sgdma_dispatcher_0 DESCRIPTOR_FIFO_DEPTH [ get_parameter_value DESCRIPTOR_FIFO_DEPTH ] set_instance_parameter_value mm_clock_crossing_bridge_1 DATA_WIDTH [ get_parameter_value DATA_WIDTH ]
set_instance_parameter_value mm_clock_crossing_bridge_1 MAX_BURST_SIZE [ get_parameter_value GUI_MAX_BURST_COUNT ]
set_instance_parameter_value mm_clock_crossing_bridge_1 RESPONSE_FIFO_DEPTH [ get_parameter_value RESPONSE_FIFO_DEPTH]
set_instance_parameter_value mm_clock_crossing_bridge_1 ADDRESS_WIDTH [ get_parameter_value LENGTH_WIDTH] set_instance_parameter_value mm_bridge_0 DATA_WIDTH [ get_parameter_value DATA_WIDTH ]
set_instance_parameter_value mm_bridge_0 MAX_BURST_SIZE [ get_parameter_value GUI_MAX_BURST_COUNT ]
set_instance_parameter_value mm_bridge_0 ADDRESS_WIDTH [ get_parameter_value LENGTH_WIDTH]
}
操作完如上6个步骤,将qsys 子系统保存好。
在另外的qsys中调用的时候,我们将可以看到:

这样 我们的qsys 子系统,也能够进行参数设置了!类似于一个可设置参数的ip。
如何将 qsys 子模块设置为参数可调的方式给另外的qsys 调用的更多相关文章
- 设置JVM参数的几种方式解决java.lang.OutOfMemoryError:Java heap space
一.首先给出查询当前JVM内存的代码: 下面是查询当前JVM 内存大小的代码,可以测试设置后JVM 的内存是否会变化.增加JVM 内存的配置项后,无需重新启动eclipse .具体的代码如下: pub ...
- FastJSON 设置默认参数,全局配置方式 和 一些使用方式、坑
如果要被序列化的对象含有一个date属性或者多个date属性按照相同的格式序列化日期的话,那我们可以使用下面的语句实现: 在应用的的Main方法体里配置全局参数: JSONObject.DEFFAUL ...
- Eclipse设置jvm参数的三种方式
方式1. 修改Elipse运行JRE默认JVM参数打开Eclipse,选择Window--Preferences...在对话框左边的树上双击Java,再双击Installed JREs,在右边选择前面 ...
- myeclipse设置jvm参数的三种方式
方法一: 打开eclipse,选择Window--Preferences...在对话框左边的树上双击Java,再双击Installed JREs,在右边选择前面有对勾的JRE,再单击右边的“Edit” ...
- SpringBoot基础学习(三) 自定义配置、随机数设置及参数间引用
自定义配置 SpringBoot免除了项目中大部分手动配置,可以说,几乎所有的配置都可以写在全局配置文件application.peroperties中,SpringBoot会自动加载全局配置文件从而 ...
- tomcat,zookeeper,activeMQ,Kafka设置jvm参数
1,tomcat设置jvm参数 设置方法: 在tomcat bin 目录增加配置:setenv.sh #add tomcat pid CATALINA_PID="$CATALINA_ ...
- Scala命令设置JVM参数的规则
Scala下设置JVM参数简单分析 Scala 启动shell脚本,简化后的scala REPL 启动命令大致如下所示: java -Xmx256M -Xms32M \-Xbootclasspath/ ...
- 【Unity】13.2 通过Lighting Window设置相关参数
分类:Unity.C#.VS2015 创建日期:2016-05-19 一.简介 Unity 5.3.4的Lighting Window有3个选项卡:Object.Scene.Lightmaps. 二. ...
- 设置JVM参数,查看堆大小
1.在eclipse设置JVM参数 打开eclipse-窗口-首选项-Java-已安装的JRE(对在当前开发环境中运行的java程序皆生效,也就是在eclipse中运行的java程序)编辑当前 ...
随机推荐
- Beginner’s Tutorial: 3D Line and Border Effects in XAML
This mini-tutorial might be for you if you’re having troubles finding the right line colors to achie ...
- Apache和Tomcat的整合
1.web架构 首先上图,解释web通用架构 通常情况下分为三大块 : ★ Web server : 通常情况下由 Apache Http Server . IBM Http Server .I ...
- WPF教程002 - 实现Step步骤条控件
原文:WPF教程002 - 实现Step步骤条控件 在网上看到这么一个效果,刚好在用WPF做控件,就想着用WPF来实现一下 1.实现原理 1.1.该控件分为2个模块,类似ComboBox控件分为Ste ...
- PHP获取月末时间
用php获取月末 $a_date = "2009-11-23"; echo date("Y-m-t", strtotime($a_date)); //第二种 ( ...
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶(转)
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- 如何将svg转换为xaml
原文:如何将svg转换为xaml 1 下载Inkscape 2 用Inkscape打开svg,另存为xaml 注意:复杂的svg图转换完会出现类似下面的xaml,wpf/silverlight是无法解 ...
- linux安装脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- mysql自动化安装脚本(二进制安装)
为了日后安装数据库方便,遂写了一个自动安装MySQL的脚本: 测试可以安装mariadb和MySQL-5.7.X 安装前配置好对应的my.cnf文件放在/tmp路径下 将启动脚本mysql3306放在 ...
- Android零基础入门第20节:CheckBox和RadioButton使用大全
原文:Android零基础入门第20节:CheckBox和RadioButton使用大全 本期先来学习Button的两个子控件,无论是单选还是复选,在实际开发中都是使用的较多的控件,相信通过本期的学习 ...
- C#WebBroswer控件的使用
在WebBroswer中可以嵌入一个网页文件,通过Url属性绑定. URI,统一资源标识符,用来唯一的标识一个资源. URL,统一资源定位器,它是一种具体的URI,即URL可以用来标识一个资源. 它包 ...

