提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

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 自动日期版本号相关推荐

  1. FPGA开发技巧备忘录——目录

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--目录 前言 规划内容 前言 之所以要弄这么一个专题,是因为有些技巧工作中用的时候很熟悉,但隔了很久没有接触的 ...

  2. FPGA开发技巧备忘录——Xilinx JTAG to AXI Master IP的使用

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--Xilinx JTAG to AXI Master IP的使用 前言 用法 Tcl指令 展望 前言 无意间发 ...

  3. FPGA开发技巧备忘录——verilog系统函数做数学运算

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--verilog系统函数做数学运算 前言 $clog2 Real math functions $random ...

  4. FPGA开发技巧备忘录——大量相同类型IP核仿真时tcl简化写法

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 FPGA开发技巧备忘录--大量相同类型IP核仿真时tcl简化写法 前言 通配符* 前言 之前在<modelsim独立仿真quar ...

  5. FPGA开发技巧:Modelsim仿真.do文件详细解析 原创 特权同学

    FPGA开发技巧:Modelsim仿真.do文件详细解析 原创 特权同学 FPGA快乐学习 以<FPGA边码边学 视频教程>"Lesson06 分频计数器设计"中的si ...

  6. FPGA的设计艺术(9)FPGA开发技巧与工程管理

    文章目录 前言 设计技巧和常见错误 PCB设计 数字设计 同步设计计数器示例:纹波计数器 减少编码时的不确定性. Verilog/VHDL编码 仿真 为什么仿真? 工程管理 管理工程师 前言 阅读一段 ...

  7. 1.FPGA开发软件安装——Vivado

    FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...

  8. FPGA开发软件(vivado + modelsim)环境搭建(附详细安装步骤+软件下载)

    本文详细介绍了vivado软件和modelsim软件的安装,以及vivado中配置modelsim仿真设置,每一步都加文字说明和图片. 一.软件安装包下载 1.vivado vivado版本很多,目前 ...

  9. 【正点原子FPGA连载】第四章 Vivado软件的安装和使用 -摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0

    1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...

最新文章

  1. ios开发人员mac空间不够用的解决办法
  2. 串口服务器接入232显示乱码,串口服务器出现乱码时如何处理,解决方案
  3. 苹果mac休眠快捷键_Mac技巧|如何高效使用苹果便笺?用便笺快捷键快速完成操作...
  4. 搜索2.0:利用用户点击记录改善搜索结果
  5. 《你的灯亮着吗》读书笔记Ⅲ
  6. Django中使用Pagination的分页范例源码
  7. 历年高考报考人数和录取人数
  8. python如何输入多行数据合并_关于Python中的合并字典,这些问题必须搞清楚!
  9. AcWing 240. 食物链
  10. shiro—登录拦截
  11. 网络编程_手写聊天室_群聊过渡板
  12. 淘宝flexible.js源码分析
  13. 数学史上的三次数学危机
  14. matlab光线追击,MATLAB在追迹光线计算中的应用
  15. RTP协议解析及H264/H265 音视频RTP打包分析
  16. MybatisPlus 通用CRUD操作
  17. PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。
  18. vue 快速入门、常用指令(1)
  19. 太阳神三国杀学习第一步--编译并运行(qt5.7.0+vs2015)
  20. Matlab 矩阵的LU分解矩阵(公开代码)

热门文章

  1. 什么是 Java 的反射机制
  2. 关于SSM发送手机验证码
  3. 中职计算机应用专业课程有哪些,中职计算机应用专业课程设置及考核方式改革...
  4. BigQuant策略做量化真的能赚钱吗?
  5. WXML---微信开发文档
  6. python炮弹发射_python - Python OO-pygame大炮游戏。 无法使炮弹移动 - 堆栈内存溢出...
  7. ISO27001体系认证的优势
  8. Python3全栈之random模块
  9. 2-1若变量已正确定义并且指针p已经指向某个变量x,则(*p)++相当于____。(1分)A.p++B.x++C.*(p++)D.x++作者往年试卷单位
  10. ASM _asm_hbeatiowait