前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >揭秘DCP

揭秘DCP

作者头像
Lauren的FPGA
发布2019-10-31 00:27:27
1.6K0
发布2019-10-31 00:27:27
举报
文章被收录于专栏:Lauren的FPGA

上期内容:一张图看懂Vivado设计流程

在上一篇文章中我们介绍了Vivado采用了同一的数据库模型,即DCP(Design Checkpoint)。在综合和实现的各个子步骤(opt_design、place_design和route_design)之后都会生成相应的.dcp文件。那么它和我们传统意义的网表文件有什么差异呢。

以Vivado自带的例子工程wavegen为例。这个设计中有两个IP:char_fifo和clk_gen,两者均采用OOC的综合方式。我们可以通过7-zip软件将synth_design、opt_design,、place_design和route_design生成的.dcp文件解压。首先对比一下synth_design和opt_design生成的.dcp文件,如下图所示。

从该图中可以看到,相比于综合后的.dcp,opt_design生成的.dcp内部包含了约束文件,这意味着,如果需要对.dcp进行策略扫描,最好直接提供opt_design生成的.dcp,因为这样不必再单独提供约束文件。两者的共同之处:都包含.edf文件,这是标准的网表文件。尽管这两个.edf文件名相同,但内容是不同的。在Vivado Tcl模式下,执行如下两条命令(命令中的.dcp文件为综合后的.dcp文件):

open_checkpoint wave_gen.dcp

opt_design

opt_design失败,并会显示如下错误信息,可以看到char_fifo和clk_gen是黑盒子。

进一步,打开综合后.dcp解压生成的.edf文件,从中可以找到如下信息:

可以看到综合后生成的网表文件把采用OOC综合的IP当做黑盒子处理了。

对比opt_design、place_design和route_design生成的.dcp,其解压后的结果如下图所示。可以看到文件类型是一致的。

如果需要综合后生成的.dcp文件包含采用OOC综合的IP而不是把这些IP当做黑盒子处理,可以首先打开Vivado工程,再选择Open Synthesized Design,然后在Tcl console中执行write_checkpoint wavegen_syn.dcp即可。此时生成的.dcp也包含了相应的约束文件,解压后的文件类型与opt_design生成.dcp解压后的结果一致。

结论:

-综合后生成的.dcp文件会把以OOC方式综合的IP当作黑盒子处理

-如果希望综合后生成的.dcp包含以OOC方式综合的IP以及工程中使用的约束文件,可以打开综合后的设计,通过write_checkpoint命令重新生成.dcp即可

如果文章对你有收获,欢迎转发赞赏~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档