需求说明:IC设计基础

内容       :代码保密设计

来自       :时间的诗


原文:http://blog.csdn.net/da895/article/details/7948318

在Quartus II下产生无源代码网表设计文件方法

从安全角度考虑,我们常希望保证我们设计的私有性。一个有效的方法就是利用QuartusII Exported Partitionfile(.qxp)创建用于综合或布局布线网表文件(不包括源代码。这种增量编译的特点需要一个完整QuartusII 许可的支持(比如免费的web版本的许可不支持的)。

把原始设计作为一个.qxp文件发送的过程在QuartusII 手册的Quartus II IncrementalCompilation for Hierarchical & Team-BasedDesign 章 节"Using an Exported Partition to Send aDesign without Including Source Files"部分被描述。

为了输出你的完整的设计,或部分设计,或被别人重复使用的设计,可以创建一个design partition输出它。然后需要者把这个partition 导入到一个新的project。为了使用this simple aspect of anincremental flow,你不必对项目创建别的design partition 或添加floorplanassignments.关于使用增量编译commands更详细的细节,请参考手册相关章节!

为了输出一个设计模块并且发送给别人使用,需要完成下面的步骤:

1.  提供器件系列名字给接收人(比如CYCLONE II EP2C35 ,EP2C20等等)。如果你要发送带综合网表的布局布线信息,也需要提供准确的器件选择,以便接收者能正确设置他们的项目。

2.  创建一个文件或一个简单例化来定义这个设计模块的端口接口,并且把这个文件或实例化提供给接收人,以便在顶层设计中作为一个空partition来实例化这个模块。

特别说明: 在Quartus II 7.2 SP3 或更早的版本中, 必须发送一个空黑盒模块/实体定义,该空黑盒模块/实体列出端口宽度和方向。 在Quartus II 8.0后不需要这样的文件。

3. 输出the appropriate level of hierarchy 到一个.qxp文件。 如果在Projectmenu,使用Quartus II GUI,请chooseExport Design Partition andselect the Partition hierarchy to export

4.  如果不需要发送布局布线信息,请仅选择选项Post-synthesisnetlist。 如果接收人需要重新生成你的准确的布局布线结果,你需要选择项Post-fitnetlist,同时也可选Export routing 选项包括布局布线信息。

5. 提供.qxp文件给接收人,记住你不需要发送你源代码给接收者!

接收者收到这个.qxp文件, 需要集成这个设计模块到顶层设计中,需要完成下面的步骤:

1.  需要创建一个Quartus II 顶层设计项目并且确保该项目目标器件与该.qxp文件目标器件相同(或者说至少相同器件系列(在不包括布局布线信息前提下)。

2.  使用提供的端口信息实例这个设计模块;将相应的.qxp文件添加到ProjectNavigator中。

3.  在Porcessing Menu 上, 点击Start/PerformAnalysis & Elaboration, 验证该设计的层次。

4.  为这个设计模块实例创建一个design partition。 Right-click theinstance name in the Project Navigator, and choose Set as designpartition

5.  导入这个.qxp文件到相关的partitionhierarchy。 如果你使用the Quartus II GUI, 则在Project menu,选择ImportDesign Partition,select the partition for the design block, andbrowse to the .qxp file provided。

6.  如果发送者还提供布局布线信息,也能控制是否保存输入网表,布局或布局布线信息。Onthe Assignments menu, choose Design Partitions Window, andadjust the settings as required。现在,拥有一个包含原始设计网表的完整设计,但不包括源文件。项目包括输入指定,其他综合信息都包括在.qxp文件中。在RTL中只能看到相应的模块例化,但是里面是空的;在ChipPlanner中可以看到模块的一些节点。

附件:(原始英文)

(链接:http://www.altera.com/support/kdb/solutions/rd06242008_7.html)

How_can_I create a design netlist without including my sourcedesign files?

Description

If you want to keep your design files private forsecurity reasons, one option is to use a Quartus® II ExportedPartition file (.qxp) to create a post-synthesis orpost-fitting netlist without including any source design files.These incremental compilation features require a full Quartus IIsubscription license (and are not included with the free webedition license). Refer to the Related Solutions below for anotheralternative and other relation information.

The procedure to send your design as a .qxpfile is documented in the section "Using an Exported Partition toSend a Design without Including Source Files" in the QuartusII Incremental Compilation for Hierarchical &Team-Based Design chapter of the Quartus II Handbook, and isincluded here for convenience.

To export your complete design, or part of yourdesign, to be re-used by someone else, you createa design partition, export it, and then the recipient imports thepartition into a new project.  To use this simpleaspect of an incremental flow, you do not have to create any otherdesign partitions or add floorplan assignments to your project. Formore details about using the incremental compilation commands,refer to the handbook chapter.

Perform the following steps to export a designblock and send it to someone else:

1.Provide the device family name to the recipient.If you send placement information with the synthesized netlist,also provide the exact device selection so they can set up theirproject to match.

2.Create documentation or a sampleinstantiation that defines the port interface forthe design block and provide it to the recipient so he orshe can instantiate the block as an emptypartition in the top-level design.

o  In Quartus II software versions7.2 SP3 and earlier, you must send an empty black box module/entitydefinition that lists the port widths and directions for the designblock. Such a file is not needed beginning with version 8.0.

3.Export the appropriate level of hierarchy into asingle .qxp file. If you use the Quartus II GUI, on theProject menu, choose Export Design Partition and select thePartition hierarchy to export.

4.Select the option to include just thePost-synthesis netlist if you do not need to send placementinformation. If the recipient wants to reproduce your exact Fitterresults, you can select the Post-fit netlist option, andoptionally enable Export routing to include routinginformation as well.

5.Provide the .qxp file to the recipient.Note that you do not have to send any of your design sourcecode.

As the recipient of a .qxp file, incorporatethe design block into a top-level design by performing thefollowing steps:

1.Create a Quartus II project for the top-leveldesign and ensure that your project targets the same device (or atleast the same device family if the .qxp file does notinclude placement information), as specified by the sender.

2.Instantiate the design block using the portinformation provided.

3.On the Processing menu, point to Start andclick Perform Analysis & Elaboration toidentify the design hierarchy.

4.Create a design partition for the design blockinstance. Right-click the instance name in the Project Navigator,and choose Set as design partition.

5.Import the .qxp file for the appropriatepartition hierarchy. If you use the Quartus II GUI, on the Projectmenu, choose Import Design Partition, select the partitionfor the design block, and browse to the .qxp fileprovided.

6.If the sender provided fitter information, youcan control whether to preserve the imported netlist only,placement, or placement and routing, with the Fitter PreservationLevel. On the Assignments menu, choose Design PartitionsWindow, and adjust the settings as required.

You now have a complete design that uses theoriginal design netlist but does not include the source designfiles. The project includesimported assignments and any post-compilationinformation that was included in the .qxp file.

FPGA基础知识18(在Quartus II下产生无源代码网表设计文件方法 QXP VQM 加密文件)相关推荐

  1. 初学者必须要知道的FPGA基础知识

    初学者必须要知道的FPGA基础知识 一.FPGA是什么? 在<FPGA至简设计原理与应用>一书里是这样描述的:『FPGA的全称为Field-Programmable Gate Array, ...

  2. FPGA基础知识极简教程(10)二进制到BCD转换算法

    文章目录 写在前面 正文 快速认识 实现方式一 实现方式二 写在最后 写在前面 FPGA基础知识极简教程(9)讲到了七段数码管的显示Verilog设计,我们都知道,要在数码管上显示的数字,使用BCD编 ...

  3. FPGA基础知识|芯片设计基础知识

    FPGA 基础知识 可查看原文:FPGA基础知识 1.查找表 LUT 和编程方式第一部分: 查找表 LUT FPGA 是在 PAL.GAL.EPLD.CPLD 等可编程器件的基础上进一步发展的产物.它 ...

  4. FPGA基础知识极简教程(7)详解亚稳态与跨时钟域传输

    博文目录 写在前面 正文 FPGA或ASIC中的传播延迟 建立和保持时间是什么? 建立和保持时间与传播延迟和时钟频率有何关系? 如果违反建立和保持时间会发生什么? FPGA中的亚稳定是什么? 亚稳态何 ...

  5. FPGA基础知识极简教程(4)从FIFO设计讲起之异步FIFO篇

    博文目录 写在前面 正文 同步FIFO回顾 $clog2()系统函数使用 综合属性控制资源使用 异步FIFO设计 FIFO用途回顾 异步FIFO原理回顾 异步FIFO设计 异步FIFO仿真 参考资料 ...

  6. 使用Quartus将用户模块封装成网表文件:Quartus17.0及之前版本.qxp文件、Quartus17.1及之后版本.qdb文件(下)

    Xilinx FPGA平台下如何封装用户的源代码,形成网表文件的操作教程,具体见: 使用Vivado将包含Xilinx IP的用户模块封装成网表文件(也适用不包含Xilinx IP的用户模块) Alt ...

  7. 使用Quartus将用户模块封装成网表文件:Quartus17.0及之前版本.qxp文件、Quartus17.1及之后版本.qdb文件(上)

    前面一篇文章介绍了Xilinx FPGA平台下如何封装用户的源代码,形成网表文件的操作教程,具体见: 使用Vivado将包含Xilinx IP的用户模块封装成网表文件(也适用不包含Xilinx IP的 ...

  8. 我的 FPGA 学习历程(01)—— FPGA 基础知识和 Quartus 的安装

    高级的嵌入式市场主要分为以下三类:ARM.DSP 和 FPGA. 其中 ARM 是行业内的佼佼者,目前几乎所有的安卓智能手机都使用 ARM 授权的 CPU架构:而 DSP(数字信号处理器) 早年就被大 ...

  9. 详解服务器异构计算FPGA基础知识

    随着云计算,大数据和人工智能技术应用,单靠CPU已经无法满足各行各业的算力需求.海量数据分析.机器学习和边缘计算等场景需要计算架构多样化,需要不同的处理器架构和GPU,NPU和FPGA等异构计算技术协 ...

最新文章

  1. 80%以上Javaer可能不知道的一个Spring知识点
  2. python list 去重_Python中对列表list去重
  3. SpringBoot中访问Thymeleaf提示:元素类型 meta 必须由匹配的结束标记终止。
  4. VTK修炼之道24:图像基本操作_单颜色通道图像合成彩色
  5. 异常与锁的释放(synchronized )
  6. c++面试常考的知识点汇总
  7. 轮询锁使用时遇到的问题与解决方案!
  8. java按钮陷下去_付费?广告?捐款?如何让开源软件活下去?
  9. springBoot+mybatisPlus小demo
  10. idea maven dependencies 总是报红
  11. html5 dzzxjbd cn,UEditor实现单张图片上传至腾讯云(对象存储服务)功能(html5
  12. dbeaver 视图有一个x_《工程制图》——视图、剖视图、断面图、局部放大图
  13. 最新仿企业发卡源码,自动发卡平台
  14. BOOST升压电路PCB布局布线
  15. 智能汽车路径规划学习-Dijkstra、蚁群算法
  16. UEFI安装win10+manjaro双系统
  17. 二维码扫描枪中文开发指导
  18. 电脑 蓝屏报错:SYSTMEM SCAN AT RAISED IRQL CAUGHT IMPROPER DRIVER UNLOAD
  19. web项目的getContextPath()
  20. Cocos2D教程:使用SpriteBuilder和Cocos2D 3.x开发横版动作游戏——Part 1

热门文章

  1. kafak 简单概念
  2. 使用tftp32软件对思科交换机导入导出配置【思科交换机技能进阶2】
  3. 中级职称聘用计算机模块,中级职称计算机模块有关问题
  4. PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) 凌宸1642
  5. 海伦公式用计算机语言怎么写,C语言:用海伦公式求三角形面积
  6. 获取ACCESS2000密码 [C#]
  7. QQ中强制和他人聊天的代码
  8. [分享]PHP多城市版-房产系统源码,仿贝壳房产。
  9. Android 导航栏虚拟按键
  10. 响铃:DR钻戒神曲有毒?谁才是品牌借势的解药?