vivado下FPGA的version control实现

2016-09-15 22:58 阅读 597 次 评论 0 条

为什么是vivado下?因为在vivado开发环境中,支持了tcl脚本,而以前的ISE不支持tcl(quartus早就支持tcl了)。version control需要通过tcl脚本自动读取pc主机的系统时间信息转换为版本字符信息。效果和c语言中的__DATE__,__TIME__相同。

原理就是将版本信息存储到FPGA的ROM,通过bram生成rom(参考vivado生成BRAM ROM表),然后将rom配置接口,通过ARM、DSP等处理器芯片读取rom中的数据,即可以显示版本信息。

1222

将生成版本信息的tcl文件,与综合前的脚本绑定,这在综合时就可以自动执行,生成rom初始化的.coe文件,如上图所示。

version control的目的是在每次重新综合、实现生成bit文件的时候,记录生成时刻,作为每个版本的区别。但在上述设置后,并不能保证每次综合都调用pre.tcl,所以可能出现无法更新.coe,进而无法更新.mif文件的情况(参考xilinxcoe与mif的关系)。

解决办法在每次需要重新生成bit文件时,将bd设计“reset output products”,然后再“generate bitstream”,tcl脚本已经包含了重新生成output products的内容,但需要根据你的工程修改部分内容。

version.tcl文件下载https://yunpan.cn/ckEHcSAcAT5Np (提取码:faa6)

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:vivado下FPGA的version control实现 | 起点博客
分类:应用笔记 标签:, , , , ,

发表评论


表情