FPGA如何生成网表保护代码

科技   2024-06-07 10:04   湖南  



知识产权保护在国内是一个非常难搞的事情,做FPGA的我们也会遇到和同事,合作伙伴进行交互集成的情况,这种情况下如果不想给出源代码,又能保证对方可以验证自己提供代码的正确性,就需要把源代码编译成网表形式提供给对方,方便其进行测试验证,在尾款没有结清的情况下还可以在代码中加入一个看门狗,到一定时间就复位整个逻辑,在不影响测试的情况下最大程度保护自己。
那么如何在vivado中,将源代码生成网表文件呢,下面狼哥以vivado2019.1平台为例,说说生成步骤。
首先设置综合选项,需要设置两个地方,一个是flatten hierarchy,设置成full,将逻辑展平,这样网表就看不出逻辑架构层级了;另一个就是在more options后面增加 -mode out_of_context,增加这个的目的就是去掉io buffer,因为生成的网表大概率都是作为一个子模块存在,不需要插入iobuffer,设置方法如下,点击Setting,然后选择Synthesis,按前面说的设置好保存就行了。


按上面设置好之后就点击综合按钮,综合工程,综合完毕后会弹出一个对话框,选择open Synthesised design。

打开之后,在左下的Tcl console中输入两条指令,生成网表例化需要的stub文件和edif网表文件,指令分别为

生成stub文件指令
write_verilog -mode synth_stub pwd/stub_file_name.v
生成edif文件指令
write_edif -security_mode all pwd/edif_file_name.edf

指令中pwd指要保存文件的路径,后面stub_file_nameedif_file_name,就是stub和edif的名字,需要注意的是这两个名字需要保持一致。示例如下:


图像课程,开发板-->淘宝店铺:胡狼FPGA   

咨询微信:MyWork666888

*******往期精彩文章列表********

CLAHE算法课程上新

2024功利性学习目录合集

Zynq系统化入门进阶详细教程

基于Zynq的图像处理入门课程

FPGA图像Canny四图拼接显示项目

FPGA之Mpsoc的VCU压缩解压demo

FPGA图像无极缩放.Demo2
FPGA图像算法.无极缩放
FPGA图像算法.导向滤波
狼板001PLUS上线,首发优惠进行中
点击上面链接查看详情

胡狼FPGA交流社区致力于打造一个FPGA知识问答社区,狼哥和嘉宾们将会在星球回答星球成员提出的问题;除此之外,星球会分批次开源部分公众号文章代码,给有需要的人学习实用,星球规划将提供如下服务:

1、经验丰富的FPGAer回答问题 

2、开源ZCU106系列源代码 

3、公众号重构代码开源 

4、狼板001硬件原理图开源

5、分享FPGA学习资料 

6、其他待补充








胡狼FPGA
专注FPGA开发,图像接口和图像算法开发,技术之余扯扯家常,让FPGA服务生活,让生活更美好
 最新文章