quaruts/vivado 执行tcl自动添加编译版本信息

1.新建一个set_version.tcl文件,执行该tcl就可以新建一个version.h文件。

#!/usr/bin/tclsh
set d [clock format [clock seconds] -format {%Y-%m-%d %H:%M:%S}]
puts stdout $d
#post_message -type critical_warning "compile time is: $d"
puts "compile time is: $d"

set dat [clock format [clock seconds] -format {%Y%m%d}]
set tim [clock format [clock seconds] -format {%H%M%S}]

set file "../src/include/version.h"
set fileid [open $file w+]
seek $fileid 0 start

puts $fileid "`define REVISION      32'h00000000"
puts $fileid "`define REVISION_DATE 32'h20200617"
puts $fileid "`define COMPILE_DATA  32'h$dat"
puts $fileid "`define COMPILE_TIME  32'h00$tim"
close $fileid

2.生成的version文件

`define REVISION      32'h00000000
`define REVISION_DATE 32'h20200617
`define COMPILE_DATA  32'h20210304
`define COMPILE_TIME  32'h00232900

3.在代码中引用头文件即可。

`include "version.h"

4.注意version.h的位置,可以引用相对工程文件的路径,也可以添加全局搜索路径,例如quartus中设置如下。

set_global_assignment -name PRE_FLOW_SCRIPT_FILE "quartus_sh:../build_lib/set_version.tcl"
set_global_assignment -name SEARCH_PATH ../build_lib

5.quartus工具中,加入PRE_FLOW_SCRIPT_FILE约束,即表示在编译前先执行该脚本。该脚本生成了一个version.h的文件,该文件中有宏定义,访问该寄存器即可以知道该版本是何时编译的。

6.在vivado中,打开setting,找到synthesis的tcl.pre,表示运行综合前先执行该脚本。

7.值得注意的是,vivado中tcl中的路径比较怪异,根路径并不是xpr的路径。比如:

---> prj
        --->set_version.tcl
---> src
     --->include
             version.h

set_version.tcl的路径是set file "./../../../../src/include/version.h"

8.添加文件 C:\Xilinx\Vivado\2019.2\scripts\vivado_init.tcl  默认编译最多线程8

set_param general.maxThreads 8

get_param  general.maxThreads

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要安装Quartus II,你可以按照以下步骤进行操作: 1. 首先,你需要下载Quartus II软件。你可以从Altera官方网站上下载最新版本的Quartus II软件。根据引用提供的链接,你可以进入该网页并选择适用于你的操作系统的版本进行下载。 2. 下载完成后,双击安装程序并按照提示完成软件的安装过程。在安装过程中,你可能需要选择一些选项和提供一些必要的信息。 3. 安装完成后,你可以启动Quartus II软件。你可以使用桌面上的快捷方式或在开始菜单中找到Quartus II的图标来启动软件。 4. 一旦Quartus II启动,在软件界面中,你可以开始创建或打开项目,并进行电路设计和仿真等操作。 请注意,为了保证Quartus II与Matlab的版本匹配,你需要确保下载的Quartus II版本与你的Matlab版本兼容。根据引用提供的信息,你可以找到适用于你的版本的版本匹配软件。这样,你就可以使用Quartus II与Matlab进行集成和交互操作了。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [quartusIIISE与matlab的版本匹配-eetop.cn_altera quarutsii接口软件版本匹配matlab.zip](https://download.csdn.net/download/weixin_39840387/11533900)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [Quaruts II 软件和器件的下载网站](https://blog.csdn.net/helloasimo/article/details/81092503)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值