使用vivado加密用户ip

时间:2024-05-18 21:02:25

1. 概述

本文主要使用xilinx vivado 工具对软件进行加密,
通过该方法,可以将自己的源文件进行保护。

2. 工具

vivado 2018.2
重点操作:

Synthesis Options:Global
Set as Out-of-Context for Synthesis

3. 流程

3.1.明确目标源

明确工程代码中想要保护的源代码文件,该源代码文件不能是工程的最顶层,但是可以包含多个内部分支和IP核

3.2 更改官方IP核的生成方式

如图所示,修改IP核的output Product方式为:Global
使用vivado加密用户ip

3.3 设置属性

左键选中目标源文件->右键打开功能列表-> 选择 Set as Out-of-Context for Synthesis,
使用vivado加密用户ip

接下来会看到 目标文件变成了 一个IP核的样式
使用vivado加密用户ip

3.4.工程综合,获取dcp文件

综合完成后,打开工程目录下 <project_name>.runs, 拷贝对应目标源文件生成的目录之下的 dcp文件。
使用vivado加密用户ip

3.5.dcp调用

将目标dcp文件添加到工程,并替换原有代码下的IP对应的所有代码和官方ip。执行综合、实现、生成bitstream。

4. 验证

工程编译通过,运行正常

5.总结

同网上其他方法相比,该方法主要使用GUI来对流程进行操作,避免了手动设置 综合属性等要求。
注意事项:
DCP文件总,对应的顶层IO 不能悬空,非常调用dcp实现会报错。