- 若该文为原创文章,未经允许不得转载
- 风释雪
- QQ:627833006
- E-mail:[email protected]
- ****博客地址:https://blog.****.net/weixin_46718879
- Gitee:https://gitee.com/abnerwork
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
3.3 设置属性
左键选中目标源文件->右键打开功能列表-> 选择 Set as Out-of-Context for Synthesis,
接下来会看到 目标文件变成了 一个IP核的样式
3.4.工程综合,获取dcp文件
综合完成后,打开工程目录下 <project_name>.runs, 拷贝对应目标源文件生成的目录之下的 dcp文件。
3.5.dcp调用
将目标dcp文件添加到工程,并替换原有代码下的IP对应的所有代码和官方ip。执行综合、实现、生成bitstream。
4. 验证
工程编译通过,运行正常
5.总结
同网上其他方法相比,该方法主要使用GUI来对流程进行操作,避免了手动设置 综合属性等要求。
注意事项:DCP文件总,对应的顶层IO 不能悬空,非常调用dcp实现会报错。