Vivado—DCP复用

先看一个简单的example project,里面包含两个verilog文件:
在顶层top里,我们例化了一个adder模块,adder为一个简单的加法器。当我们把这两个文件导入vivado后即可进行正常的布局布线。
那么问题来了,假设adder是我的一个核心设计(加法器代表一下哈),当其他人想使用我这个adder ip时我不想交付给对方源代码,那么我应该如何做呢?
交付dcp!
何为dcp
在vivado的设计流程各个阶段里,采用统一的数据模型:dcp(design checkpoint),在vivado的设计流程里,无论是综合还是布局布线的各个阶段,工具都会生成dcp文件,每一步的执行设计输入均为上一阶段的dcp文件(综合阶段除外)。那么当我们想把adder以网表形式进行交付时,我们就可以生成对应的综合后的dcp文件,随后将dcp文件交付给合作方即可。
甲方:dcp制作流程
在我们的设计中,我们把adder这个模块作为设计的顶层:
随后进行综合,当完成后,我们会在对应的目录下看到生成了adder的dcp文件:
同时,我们准备一个我们adder对应的设计顶层:
这里的adder模块不包含任何设计代码,仅包含端口声明。同时我们将这个模块声明为“black_box”
随后,我们就可以把这个dcp文件和black box文件交付给别人使用了,而不用担心我们的源代码泄漏。
乙方:dcp的使用
当我们拿到别人的dcp文件和black box端口声明文件后,我们还需要准备一个tcl文件:
tcl文件中制定了adder.dcp的读取位置。
随后,我们将balck box文件和tcl文件导入到我们的设计中,top.v文件保持不变:
随后我们在implement setting中的opt_desing中的tcl.pre中关联导入的balck.tcl文件:
finally,我们就可以进行正常的综合及布局布线了,布局布线完成后我们得到的网表和正常工程一模一样。


杰普特乘风破浪,拥抱XR时代风潮
中国电信重点探索了网络切片和MEC对业务的支持能力
雷神911黑武士Ⅱ代评测 品牌机的售后组装机的价格
关于全自动驾驶点对点用车服务的介绍和发展
单穗玉米种子脱粒机的使用说明及参数的介绍
Vivado—DCP复用
世界最小的存储单元横截面面积只有一平方纳米
小米10T/Pro采用LCD显示屏,官方回应OLED会让部分用户眼睛疲劳
8段12位LED恒流驱动数显芯片VK16D32
蓝鹏全新测控软件平台可实现网络化的监控
机房动力环境监控云平台软件是什么
旭宇光电成功开发出UVC产品,可适用于空调等日常家电应用
爱普生发布最新可编程晶体SG-8200/8201CJ
运用可调谐射频元件 优化LTE天线性能与尺寸
弃用高通骁龙后,三星将代工820?
5G是将改变社会生活的通用技术,天线数量将增加贯穿5G进程
Q1季度中国平板出货量下滑,预计今年仍将保持同比50.1%的高速增长
高速率蓝牙透传ZX-D33模块的特点
单端甲类小胆机的制作经验总结
手机里的npu是什么意思?手机npu是干什么的?