每一片芯片内部存有一个设备标识符,xilinx把它叫做DNA,这个DNA是不可更改的,永久存在芯片里面的。根据文档介绍,一个系列最多有32块芯片的DNA一样。下面简单介绍一下xilinx FPGA的DNA,及怎么读取出来。
Xilinx的FPGA芯片,在7系列和7系列之前的产品,DNA是一个57Bit的数据,而在7系列之后,如Ultraslace等新型号,DNA是96Bit。下面介绍两种读取方式。
1.通过jtag方式读取
以vivado为例,连接好下载器后,打开hardware manager,芯片上电连接到芯片后,在hardware device properties选项框里面找到REGISTER-EFUSE-DNA_PORT,就可以看到芯片DNA的值,如下图所示:
2.通过调用原语读取
我们可以通过代码读取出芯片的DNA来使用,以vivado为例,首先根据自己选用的芯片型号找到相应的DNA_PORT原语。如下图示,
7系列的DNA_PORT原语:
Ultrascale系列原语,原语名称有一点点改变,大家注意一下
查看UG470文档,原语的使用,以7系列为例:
例化原语
读取代码如下:
先拉高read信号,寄存器加载DNA值,加载完后在拉低read信号,然后使能shift信号,DOUT开始输出DNA数据,通过57个时钟移位后,在取消shift使能。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !