FPGA开发技巧备忘录——Vivado 自动日期版本号
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
FPGA开发技巧备忘录——Vivado 自动日期版本号
- 前言
- 创建.v文件
- 设定tcl文件路径
- tcl内容
- 总结
前言
我们在编译FPGA工程的时候一般需要对版本号的更新,一般来说都会有一个日期或者时间的版本标识,在上板调试的时候用于表征当前版本确实已经更新成功,或者作为FPGA发布版本的标识等等。但有时候我们有时候会忘记更新版本号,从而导致时间的浪费。
下面我们就是要解决这个痛点,利用vivado的tcl功能自动进行日期版本号的更新
创建.v文件
例如创建 一个version_date.v
里面就包含两句话 ,分别表示当前的年月日 和 时分秒
parameter [31:0] FPGA_VERSION_A = 32'h20221006 ;
parameter [31:0] FPGA_VERSION_B = 32'h000000 ;
在正式的工程文件,例如top.v中
assign AAA_reg = FPGA_VERSION_A;
assign BBB_reg = FPGA_VERSION_B;
设定tcl文件路径
点击synthesis Settings
选中tcl的路径
tcl内容
set file_addr "../../version_date.v"set time_now [clock seconds]
set time0 [clock format $time_now -format "%Y%m%d"]
set time1 [clock format $time_now -format "%H%M%S"]set f [open $file_addr w]set str "parameter [31:0] FPGA_VERSION_A = 32'h$time0 ;"
puts $f $strset str "parameter [31:0] FPGA_VERSION_B = 32'h$time1 ;"
puts $f $strclose $f
注意tcl中的第一句话,因为 对于这个tcl而言 ,当前文件夹是 constrs_1 文件夹,而我们的version_date.v 放到了.xpr工程所在的路径中
总结
这个小技巧解决了每次编译需要手动更新编译日期的问题。
FPGA开发技巧备忘录——Vivado 自动日期版本号相关推荐
- FPGA开发技巧备忘录——目录
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--目录 前言 规划内容 前言 之所以要弄这么一个专题,是因为有些技巧工作中用的时候很熟悉,但隔了很久没有接触的 ...
- FPGA开发技巧备忘录——Xilinx JTAG to AXI Master IP的使用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--Xilinx JTAG to AXI Master IP的使用 前言 用法 Tcl指令 展望 前言 无意间发 ...
- FPGA开发技巧备忘录——verilog系统函数做数学运算
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--verilog系统函数做数学运算 前言 $clog2 Real math functions $random ...
- FPGA开发技巧备忘录——大量相同类型IP核仿真时tcl简化写法
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--大量相同类型IP核仿真时tcl简化写法 前言 通配符* 前言 之前在<modelsim独立仿真quar ...
- FPGA开发技巧:Modelsim仿真.do文件详细解析 原创 特权同学
FPGA开发技巧:Modelsim仿真.do文件详细解析 原创 特权同学 FPGA快乐学习 以<FPGA边码边学 视频教程>"Lesson06 分频计数器设计"中的si ...
- FPGA的设计艺术(9)FPGA开发技巧与工程管理
文章目录 前言 设计技巧和常见错误 PCB设计 数字设计 同步设计计数器示例:纹波计数器 减少编码时的不确定性. Verilog/VHDL编码 仿真 为什么仿真? 工程管理 管理工程师 前言 阅读一段 ...
- 1.FPGA开发软件安装——Vivado
FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...
- FPGA开发软件(vivado + modelsim)环境搭建(附详细安装步骤+软件下载)
本文详细介绍了vivado软件和modelsim软件的安装,以及vivado中配置modelsim仿真设置,每一步都加文字说明和图片. 一.软件安装包下载 1.vivado vivado版本很多,目前 ...
- 【正点原子FPGA连载】第四章 Vivado软件的安装和使用 -摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0
1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...
最新文章
- ios开发人员mac空间不够用的解决办法
- 串口服务器接入232显示乱码,串口服务器出现乱码时如何处理,解决方案
- 苹果mac休眠快捷键_Mac技巧|如何高效使用苹果便笺?用便笺快捷键快速完成操作...
- 搜索2.0:利用用户点击记录改善搜索结果
- 《你的灯亮着吗》读书笔记Ⅲ
- Django中使用Pagination的分页范例源码
- 历年高考报考人数和录取人数
- python如何输入多行数据合并_关于Python中的合并字典,这些问题必须搞清楚!
- AcWing 240. 食物链
- shiro—登录拦截
- 网络编程_手写聊天室_群聊过渡板
- 淘宝flexible.js源码分析
- 数学史上的三次数学危机
- matlab光线追击,MATLAB在追迹光线计算中的应用
- RTP协议解析及H264/H265 音视频RTP打包分析
- MybatisPlus 通用CRUD操作
- PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。
- vue 快速入门、常用指令(1)
- 太阳神三国杀学习第一步--编译并运行(qt5.7.0+vs2015)
- Matlab 矩阵的LU分解矩阵(公开代码)
热门文章
- 什么是 Java 的反射机制
- 关于SSM发送手机验证码
- 中职计算机应用专业课程有哪些,中职计算机应用专业课程设置及考核方式改革...
- BigQuant策略做量化真的能赚钱吗?
- WXML---微信开发文档
- python炮弹发射_python - Python OO-pygame大炮游戏。 无法使炮弹移动 - 堆栈内存溢出...
- ISO27001体系认证的优势
- Python3全栈之random模块
- 2-1若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于____。(1分)A.p++B.x++C.*(p++)D.x++作者往年试卷单位
- ASM _asm_hbeatiowait