Xilinx FPGA编译时间读取
各位小伙伴大家在项目中一定遇到过程序版本号管理的问题吧很多时候我们都会在程序中宏定义一个版本号但是有时候往往会忘记修改版本号这样就会导致版本管理错误。为了解决这一问题我们可以将bit文件编译时间读取然后作为版本号的一部分每次程序重新编译版本号自动更新这样就避免了版本号忘记修改的问题了。那么接下来我教会大家如何读取xilinx FPGA的版本号。xilinx为开发者提供了读取FPGA编译时间的原语USR_ACCESSE2 USR_ACCESSE2_inst (.CFGCLK (CFGCLK ), // 1-bit output: Configuration Clock output.DATA (DATA ), // 32-bit output: Configuration Data output.DATAVALID (DATAVALID ) // 1-bit output: Active high data valid output);CFGCLK配置时钟DATAVALID输出数据有效DATAbit文件编译生成时间含义如下所示ddddd_MMMM_yyyyyy_hhhhh_mmmmmm_ssssss(bit 31) ……………………………………………………..… (bit 0)dddddd位宽为5表示一个月的31天MMMM 位宽为4 表示一年的12月yyyyyy 位宽为6表示年份范围0到63即2000年到2063年hhhhh位宽位5表示一天的0-23小时mmmmmm 位宽为6表示0-59分钟ssssss 位宽为6表示0-59秒注意最终读取结果与文件夹内bit文件显示的时间在“秒”上存在误差。用户调用上述原语根据含义拆分编译时间即可。然后需要在约束文件中添加如下约束set_property BITSTREAM.CONFIG.USR_ACCESSabcd0123[current_design]其中abcd0123为原语调用时的例化名称用户根据自己需求修改即可。一下为我编写的程序例子大家可参考一下