关于Bitstream Encryption的相关文章

关于Bitstream Encryption的相关文章

最近在编译远古代码的时候发现约束文件里面有这样几句

set_property BITSTREAM.ENCRYPTION.ENCRYPT Yes [current_design]
set_property BITSTREAM.ENCRYPTION.ENCRYPTKEYSELECT bbram [current_design]
set_property BITSTREAM.ENCRYPTION.KEYFILE E:\zsl\prj\c006_415t.nky [current_design]

查了一下资料,原来是部分FPGA在出厂时有加密的专用设计,在生成bit文件的时候指定此加密文件,然后在下载到FPGA之前先用工具将此xxx.nky文件下载到FPGA中去,然后再下载bit文件时FPGA才能正确解析此bit文件,但是对于硬件没有做此设置的FPGA来说,下载任何版本的bit文件都不受影响,此xxx.nky文件可以是自己写的一串加密规则(?不知道什么内容),也可以是vivado按其规则自己生成的一个文件,不知道我理解的对不对,下面是查到的资料的链接。

原文链接:http://wiki.ztex.de/doku.php?id=en:ztex_boards:ztex_fpga_boards:bitstream_encryption
Bitstream Encryption

Several ZTEX FPGA Boards support Bitstream encryption, e.g. USB-FPGA Modules 2.16, 2.13, 2.14 and 2.18.

The key which is used to decrypt the bitstream is stored in special low power memory of the FPGA which is powered by a battery. This battery is an option and not installed by default.

Using encrypted bitstreams is quite simple:

1、Generate an encrypted bitstream either (ISE) using the bitgen option -g Encypt:Yes and -g KeyFile:<.nky file> or (Vivado) using the constraints

set_property BITSTREAM.ENCRYPTION.ENCRYPT Yes [current_design]
set_property BITSTREAM.ENCRYPTION.ENCRYPTKEYSELECT bbram [current_design]
set_property BITSTREAM.ENCRYPTION.KEYFILE <.nky file> [current_design]

If no key file (.nky file) is given a new one with random key is created.

2、Upload the key (.nky file) to the FPGA through JTAG using Xilinx tools
3、FPGA now accepts the encrypted bitstream (no special load technique is required but some options like bitstream compression may not work)

https://www.xilinx.com/support/answers/52881.html
AR# 52881
Configuration - BitStream Encryption - How to create and program an encrypted bitstream

https://www.xilinx.com/support/answers/61258.html
AR# 61258
Vivado 2014.x - Regenerate different key file for Encryption on Linux

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值