Vivado报错:[Runs 36-527] DCP does not exist_烦恼诗集#的博客-CSDN博客

先参考这个文档解决,

问题描述:综合工程时,某个IP文件被标红,出现[Runs 36-527] DCP does not exist...... 的报错

解决办法:如果是在windows系统上用Vivado打开工程,当工程路径过长时,可能会出现这样的问题。比如:

D:\BaiduNetdiskDownload\FPGA\DBF\fpga-filter-implementation-master\fpga-filter-implementation-master\LMS_Simulation\LMS_Adaptive_Filter.runs\clk_wiz_0_synth_1

只要把工程转移到短一点的路径,再打开综合就行了。

但我的工程路径很简单,根本就不长,所以和我的问题不一致,后来又查了一个解决方法解决了我的问题

编译后清除操作,generate Output Products MIG ddr3 IP核后报错DCP问题解决,Vivado工具–综合流程中的基础知识_nature_forest的博客-CSDN博客

在tcl窗口输入reset_project,然后重新编译,就通过了。下面是解释。

参考链接:http://www.360doc.com/content/16/0406/19/18252487_548393946.shtml

当我们提到'Implementation'时,我们通常都知道它是由以下几个步骤组成的:

-       opt_design

-       place_design

-       route_design

-       (and a number of others)

在工具中,每一个步骤都有其特定的功能,并且提供众多选项,用户可以控制。

而在我们的感觉中,“synthesis”好像是一个步骤,但实际上并非如此,它也是由好几个独立的步骤顺序组合而成的:

-       elaborate the design

-       apply constraints to the design

-       do high level optimizations of the design

-       technology map the design

-       do low level optimizations of the design

其中第一个步骤“elaboration”,很多人从字面上无法理解其准确含义。其实它是指读取rtl源代码,并且把代码翻译成硬件实现,就是所谓的“generic technology cells”,是一些硬件库单元的抽象描述,比如:寄存器,加法器,比较器,选择器,等等。

这个步骤非常有必要,因为接下来的high/lowlevel optimization是timing driving的,所以会需要constrains,但是约束不能被添加到rtl代码上,因为代码是text格式的,约束只能添加到网表netlist上,所以“elaboration”就做了这一步翻译工作,把rtl代码翻译成“generictechnology cells”。

在常规流程中,通常我们会把elaborate作为综合的一部分而忽略它(虽然在综合的log文件里有打印),但是我们其实可以告诉综合工具在elaborate后停止,并且给我们一个generictechnology cells格式的netlist这么做有2个原因(或者说好处):

1.     确认综合工具正确理解了rtl代码。通过generictechnology cells格式的网表,我们可以查看层次关系,检查悬空的输入或者输出,确认是否正确识别代码中的RAM描述,等。

2.     创建并检查约束constrains。

先明白下框架,后续再补充

补充1:参考:http://xilinx.eetrend.com/d6-xilinx/article/2018-11/13908.html

如何清理编译后的vivado工程

在tcl窗口输入reset_project

清理/压缩工程
实际使用vivado的过程中,由于vivado会自动产生一系列文件,有些是不必要时刻保存的中间文件,有些是加快效率的文件(比如编译IP核后产生的文件)。但是在上传svn或者自己做备份的时候希望备份占用尽量少的空间。然而由于vivado不会自动清理,所以这时候就需要我们做手动清理了,很多人采用的方法是根据经验删除没用的文件和文件夹,这种对于不熟悉的人很容易犯下不可挽回的错误。也有人写好了批处理文件可以直接帮助删除的,但是这都不太适合初学者。其实vivado是有tcl命令可以帮助清理的。

reset_project是vivado一个tcl命令,输入后会发现所有的IP全部清掉了编译后的文件,工程的综合和实现也被清理掉了,所以会减少空间。复位后是什么效果呢?其实复位就是把里面的综合和实现清空,包括ooc下面的IP核等都清掉,这样就只保留了最必要的文件,从而压缩了占用 空间。但是这样也带来一个问题,如果要重新产生一个可用的版本,需要的时间会更长,这个操作实际上也就是用空间换取了时间,所以大家使用前要衡量下,不要随便用,比较大的工程了跑一次可能一天就没了。

我这里之所以选择清除的原因是,vivado用的不熟,以为block design设计完成后要点击左边的generate block design 结果就报如下错误:

[Runs 36-527] DCP does not exist: c:/...../pcie_system_mig_7series_0_1.dcp

原始那句找不到了,大概就是找不到DDR控制器IP的dcp文件

我报的错和这位的基本一致。我是右键blockdesign 选择了generate block design

这里找到了原因 ,vivado暂时不支持MIG IP 所以无法生成。但做了以后就一直报错无法编译通过。所以只能清除重新来

在tcl 中敲入命令:reset_project 就清除了,然后重新编译综合就好了。

补充2:validate_bd_design 在tcl 控制台输入这个命令

IP integrator might auto-compute certain configuration values when validating or generating the design. To check whether the values do change, see the description of the parameter in this chapter. To view the parameter value you can run the
validate_bd_design command in the Tcl Console

Vivado报错:[Runs 36-527] DCP does not exist,generate Output Products MIG ddr3 IP核后报错DCP问题解决相关推荐

  1. Vivado定制DDR3 IP核注意事项

    1.1 Vivado定制DDR3 IP核注意事项 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)Vivado定制DDR3 IP核注意事项: 5)结束语. 1.1.2 本 ...

  2. 基于xilinx vivado 的DDR3 IP核扩展IP FDMA 的使用详解

    目录 1 概述 2 参考文档 3 FDMA的BD工程搭建 3.1 DDR IP的设置简介 3.2 FDMA的设置 3.3 FDMA的信号定义 4 上板测试示例 5 附件 1 概述 本文是关于FDMA ...

  3. VIVADO报错:[opt31-67]之MIG ip核综合失败

    VIVADO报错:[opt31-67]之MIG ip核综合失败 参考内容 报错原因 解决办法 参考内容 博客1:添加IP核的方法错误 博客2: 模块例化时有输入端口未连接 报错原因 平时我们我们正常生 ...

  4. 如何使用Synplify综合vivado带IP核的工程

    文章目录 使用Synplify综合的好处 synplify的教程 方法1(无效) 方法2 VIVODO工程 遇到的问题 使用Synplify综合的好处 下面的说法来自网上: 综合时间更好,综合出来所使 ...

  5. 手把手教你打包一个自己的Vivado IP核

    写在前面 模块复用是逻辑设计人员必须掌握的一个基本功,通过将成熟模块打包成IP核,可实现重复利用,避免重复造轮子,大幅提高我们的开发效率. 接下来将之前设计的串口接收模块和串口发送模块打包成IP核,再 ...

  6. 基于vivado DDS ip核的DDS信号发生器(可调频调相)

    基于Vivado DDS ip核的DDS信号发生器: 在Vivado软件中调出DDS ip核进行设置,很多参数可以参考xilinx官方手册,比较重要的是System Clock系统时钟和Phase W ...

  7. FPGA设计中,Vivado 调用IP核详细操作步骤

    FPGA设计中,Vivado 调用IP核详细操作步骤 今天给大侠带来了FPGA设计中,Vivado 调用IP核详细操作步骤,话不多说,手把手教学,请往下看. 首先咱们来了解一下vivado的IP核,I ...

  8. 基于Vivado MIG IP核的DDR3控制器(DDR3_CONTROL)

    一.前言 由于DDR3的控制时序相当复杂,为了方便用户开发DDR3的读写应用程序,Xilinx官方就提供了一个MIG(Memory Interface Generator) IP核,它可以为用户生成一 ...

  9. vivado调用IP核详细介绍

    大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分.大侠可以关注FPGA技术江湖,在"闯荡江湖"."行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢. ...

最新文章

  1. 导入第三方工程报错的处理方法
  2. 【高效使用】生产力提升
  3. 根据Android架构分层推荐开发书籍
  4. vmware下/mnt/hgfs下为空的问题
  5. 玩转Mixly – 7、Arduino AVR编程 之 数组
  6. 全自动化建立SSH信任
  7. 前端学习(1662):前端系列实战课程之div跟随鼠标移动
  8. 现代程序设计 作业4
  9. 3-3HDFS中文件的读写操作
  10. CCF201709-2 公共钥匙盒
  11. 别在我的坟前哭 脏了我轮回的路
  12. java 替换回车换行符
  13. Java代码页面显示报表_Web报表开发中使用快逸报表分页标签:显示第几页和共几页...
  14. 上海电信网关限制连接设备上限解决方法
  15. stream分组求和
  16. js判断页面第一次加载或者是否执行了刷新操作
  17. [生存志] 第6节 第一篇 以史为鉴 明朝事的读后心得
  18. 神器vimium:比同级程序员成长更快,我主要靠它
  19. html图片显示详情,纯CSS鼠标经过图片视差弹出层显示详情链接按钮特效代码.html...
  20. 5种小型设备上深度学习推理的高效算法

热门文章

  1. 扫描图片如何转换成文字
  2. 微信小程序使用NFC
  3. Python实现一个简单的自动评论,自动点赞,自动关注脚本
  4. 键盘事件实现文本框只能输入数字效果
  5. 不用中断实现嘀嗒计数器
  6. 转:决策,先想 先看 先做
  7. 显示器显示“不支持输入”
  8. PaddleSeg 分割模型介绍
  9. Beetl开源过程中那些事
  10. 关于共射放大电路的阻容耦合方式下稳定工作点的输出电阻的疑问