verilog源码如何加密 ???

[复制链接]
10672|24
 楼主| hsw_21 发表于 2012-10-9 09:30 | 显示全部楼层 |阅读模式
如何加密成可编译,但是不能阅读的状态
  
看到terasic给altera做的开发板配套代码里边就有这种,*.v文件,但是打开发现是二
进制。
  
多谢!
 楼主| hsw_21 发表于 2012-10-9 09:30 | 显示全部楼层
terasic给altera做的开发板,可以编译,可以看到顶层,但是点击显示license不支持
;ue查看是二进制。
  
这么说quartusII有内部隐藏功能,不放开而已?
 楼主| hsw_21 发表于 2012-10-9 09:30 | 显示全部楼层
altera给的某些参考设计也是这样的
GoldSunMonkey 发表于 2012-10-9 21:10 | 显示全部楼层
altera给的某些参考设计也是这样的
hsw_21 发表于 2012-10-9 09:30
他们的软件里面有机制,但是不会公开给你。
类似AES加密。你有它的钥匙,就能开他的锁。
没有就不能。
 楼主| hsw_21 发表于 2012-10-10 09:46 | 显示全部楼层
本帖最后由 hsw_21 于 2012-10-10 09:49 编辑
他们的软件里面有机制,但是不会公开给你。
类似AES加密。你有它的钥匙,就能开他的锁。
没有就不能。
GoldSunMonkey 发表于 2012-10-9 21:10



那怎么实现VERILOG源代码保护呢?
GoldSunMonkey[在线],sinetech,engelbert,jameswangchip[在线],Backkom80
GoldSunMonkey 发表于 2012-10-10 09:52 | 显示全部楼层
那怎么实现VERILOG源代码保护呢?
GoldSunMonkey[在线],sinetech,engelbert,jameswangchip[在线],Backkom80
hsw_21 发表于 2012-10-10 09:46
目前只能针对不同的器件生成网表。没有其他办法。
 楼主| hsw_21 发表于 2012-10-10 09:57 | 显示全部楼层
目前只能针对不同的器件生成网表。没有其他办法。
GoldSunMonkey 发表于 2012-10-10 09:52


您是指生成下载文件吗?比如 Quartus II 的 pof 文件。
 楼主| hsw_21 发表于 2012-10-10 10:22 | 显示全部楼层
本帖最后由 hsw_21 于 2012-10-10 10:24 编辑

看来只有 ALTERA 厂家的人知道了。

请问如何做成中间件形式?提供给用户的是什么呢?我对此很感兴趣
 楼主| hsw_21 发表于 2012-10-10 10:27 | 显示全部楼层
dragonba (2007-9-17 17:43:52)想加密,顾名思义,就是不让别人看到源代码。 直接加密verilog,但又不影响综合和仿真,同时支持各种工具,可能不太好实现。 方便的话,可以作成中间件的格式,用java来实现,国外很多IP都是这样提供的。 或者仿照Designware形式,将仿真代码和综合代码分开,也能将IP加密。
GoldSunMonkey 发表于 2012-10-10 10:37 | 显示全部楼层
看来只有 ALTERA 厂家的人知道了。

请问如何做成中间件形式?提供给用户的是什么呢?我对此很感兴趣
hsw_21 发表于 2012-10-10 10:22
XILINX的ngc, Altera的不知道。
 楼主| hsw_21 发表于 2012-10-10 11:10 | 显示全部楼层
有个在研究所的朋友(做雷达的)有个项目要跟另外一个研究所合作,也就是共同在同一块FPGA上进行开发,各自设计功能模块都很独立,向我询问如何将他的设计安全转移给兄弟所。

        给他介绍了两种方法,现在在这里也做简单的介绍:

        1、第一种方法是使用增量编译,将自己的设计作为一个子模块或者分区(partition),设计完成以后生成一个QXP文件传递给合作单位。具体的操作方法,有时间可以专门弄一篇介绍增量编译的**。

         2、第二种方法是将自己的设计编译生成VQM网表文件传递给合作单位。具体做法首先在sttings里按照下图选中生成VQM选项,这样我这位朋友的设计就是生成一个叫做*.vqm的网表文件



其次是对于使用网表者,可以把当作一般的子模块来调用,如果是VHDL,则进行component例化以及调用,当然网表提供方要提供网表顶层的管脚定义说明,如果没有,直接打开vqm文件也可以看得到。另外,使用网表文件方还要将网表文件加入到工程。

       3,第三种方法跟第二种方法类似,就是通过第三方综合工具生成网表文件,所以工程中对于需要保密的部分就做成黑盒子(black box).第三方综合工具生成的网表文件一般是EDF文件,使用的时候将EDF文件放到工程目录即可,工程中安装第二种方法在设计中调用黑盒子即可.

       在QII工程中还应指定产生网表的第三方综合工具,可以在settings->EDA Tool Settings->Design Entry/Synthesis->Specify options for processing input files created other EDA tools中指定Tool name,如下图所示:
forrest11 发表于 2012-10-10 11:16 | 显示全部楼层
根据我的经验,生成VQM是最简单的解决方案。
 楼主| hsw_21 发表于 2012-10-10 11:23 | 显示全部楼层
好,生成VQM试试。感谢各位大侠的热心解答。
GoldSunMonkey 发表于 2012-10-10 21:17 | 显示全部楼层
以后提问,请悬赏点分数。
estelle0801 发表于 2012-10-10 21:26 | 显示全部楼层
谢谢分享~~~~~
forrest11 发表于 2012-10-10 21:54 | 显示全部楼层
15# GoldSunMonkey
今日猴是虔诚的要分族。嘿嘿。
qaz8891 发表于 2012-10-16 00:16 | 显示全部楼层
学习了,参考参考
david-xia 发表于 2012-11-2 09:04 | 显示全部楼层
谢谢分享~~~~~
GoldSunMonkey 发表于 2012-11-10 22:07 | 显示全部楼层
谢谢分享~~~~~
david-xia 发表于 2012-11-2 09:04
看来学习的人很多啊。
 楼主| hsw_21 发表于 2012-11-22 14:06 | 显示全部楼层
源代码加密起来好啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

417

主题

2675

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部