0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Vivado怎么避免信号被优化掉

FPGA之家 来源:FPGA之家 2023-01-31 18:03 次阅读

刚写了一段 Verilog代码,辛辛苦苦花了很长时间综合,在debug的过程中,却找不到需要debug的信号了,查看网表发现没有?

这种情况是因为我们的某些中间信号被优化掉了。

被优化掉的原因有可能是你这个信号确实对后面的输出没用,我写的这个项目由于还在中间过程,功能还没有完善,所以不想把大量的中间信号作为输出,所以被优化掉了,以至于在debug过程中找不到这些信号。

如何解决这个问题呢?

很简单,最常用的就是在变量定义的时候添加语句:

(* keep = "true" *)

例如:

8a15322a-9679-11ed-bfe3-dac502259ad0.png

这样即可,从网表中可以找到这些变量了。

8a38ab6a-9679-11ed-bfe3-dac502259ad0.png

当然还有其他办法,例如:

1、 信号前面将keep hierarchy选择yes ,或者选择soft(在综合时保持层次),这样有利于你从模块中找到你想抓取的信号和信号名不被更改。

(* keep_hierarchy = "yes" *)module fre( a, b, c, d);

or

(* keep_hierarchy = "yes" *)fre fre_inst( a, b, c, d);

2、 信号前面使用(* DONT_TOUCH= “{TRUE|FALSE}” *),可以防止信号在综合,以及布局布线的时候被优化掉。

(* dont_touch = "true" *) wire a;

不在话下。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 信号
    +关注

    关注

    11

    文章

    2780

    浏览量

    76629
  • DEBUG
    +关注

    关注

    3

    文章

    90

    浏览量

    19886
  • Vivado
    +关注

    关注

    19

    文章

    808

    浏览量

    66328

原文标题:Vivado中如何避免信号被优化掉?

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    vivado导入旧版本的项目,IP核心锁。

    vivado导入其他版本的项目的时候,IP核锁,无法解开,请问该如何解决。 使用软件:vivado 2019.2 导入项目使用版本:vivado 2018
    发表于 11-08 21:29

    如何应对UWB室内定位信号遮挡

    定位。面对这一问题,我们可以采取以下几种策略:优化基站布局:在部署UWB基站时,应尽量选择信号传播较好的位置,避免信号大型障碍物遮挡。同时
    的头像 发表于 11-01 11:25 152次阅读
    如何应对UWB室内定位<b class='flag-5'>信号</b><b class='flag-5'>被</b>遮挡

    Vivado使用小技巧

    有时我们对时序约束进行了一些调整,希望能够快速看到对应的时序报告,而又不希望重新布局布线。这时,我们可以打开布线后的dcp,直接在Vivado Tcl Console里输入更新后的时序约束。如果调整
    的头像 发表于 10-24 15:08 212次阅读
    <b class='flag-5'>Vivado</b>使用小技巧

    如何避免自动初始化组件截断的情况?

    大小const数组用来占用这个区域,避免链接时将执行代码链接到此区域。 但编译的时候,链接脚本会把合适大小的执行代码填补0x08000000 ~ 0x08003FFF 区域,导致链接时把自动初始化组件给截断了。 请教各位大神,有没有解决方法。避免自动初始化组件
    发表于 09-13 08:06

    优化 FPGA HLS 设计

    优化 FPGA HLS 设计 用工具用 C 生成 RTL 的代码基本不可读。以下是如何在不更改任何 RTL 的情况下提高设计性能。 介绍 高级设计能够以简洁的方式捕获设计,从而
    发表于 08-16 19:56

    日常使用中如何避免信号发生器出现故障

    如何避免信号发生器出现故障的方法,对于提高设备使用效率和延长设备寿命具有重要意义。本文将从信号发生器的使用、维护、保养以及安全操作等方面,详细阐述如何避免
    的头像 发表于 05-15 11:53 351次阅读

    Vivado 使用Simulink设计FIR滤波器

    设计的滤波器性能相同。 xilinx在新版本的vivado中将simulink中的WaveScope删掉了,信号观测方式换为和vivado debug相同的窗口,更为灵活和人性化。添加信号
    发表于 04-17 17:29

    Vivado编译常见错误与关键警告梳理与解析

    Xilinx Vivado开发环境编译HDL时,对时钟信号设置了编译规则,如果时钟由于硬件设计原因分配到了普通IO上,而非_SRCC或者_MRCC专用时钟管脚上时,编译器就会提示错误。
    的头像 发表于 04-15 11:38 4802次阅读

    怎样检测测电路的差分信号和单端信号?

    在检测电路信号之前,首先要知道什么是测电路,什么是信号。盲目测试或使用不正确的测量方法可能会导致错误的波形甚至损坏仪器,危及安全。 1、差分
    的头像 发表于 03-26 11:00 733次阅读
    怎样检测<b class='flag-5'>被</b>测电路的差分<b class='flag-5'>信号</b>和单端<b class='flag-5'>信号</b>?

    普通探头对差分信号测量的危害有哪些?如何避免呢?

    普通探头对差分信号测量的危害有哪些?如何避免呢? 普通探头对差分信号测量的危害主要包括共模噪声、信号间干扰以及接地问题。为了避免这些问题,需
    的头像 发表于 01-08 15:40 612次阅读

    如何禁止vivado自动生成 bufg

    Vivado中禁止自动生成BUFG(Buffered Clock Gate)可以通过以下步骤实现。 首先,让我们简要了解一下什么是BUFG。BUFG是一个时钟缓冲器,用于缓冲输入时钟信号,使其更稳
    的头像 发表于 01-05 14:31 1978次阅读

    Vivado时序问题分析

    有些时候在写完代码之后呢,Vivado时序报红,Timing一栏有很多时序问题。
    的头像 发表于 01-05 10:18 1927次阅读

    VIVADO软件使用问题总结

    【关键问题!!!!重要!!!】VIVADO会在MESSAGE窗口出提示很多错误和警告信息!
    的头像 发表于 12-15 10:11 1790次阅读
    <b class='flag-5'>VIVADO</b>软件使用问题总结

    FPGA程序的一种调试方案解读

    从这个例子可以看到,如果一个信号自动移除了,应当首先应当考虑它是否没有在别处用到。不过,在下一个例子里马上可以看到这并不是信号
    发表于 12-07 11:06 440次阅读
    FPGA程序的一种调试方案解读

    Vivado中DONT TOUCH该如何使用?

    在FPGA编码中,经常会遇到一些信号、模块等综合工具优化,而有些信号恰恰是我们需要的,或者需要观测的,针对这种情况,DONT TOUCH可以满足我们的需求,该属性的使用频率也较高。
    的头像 发表于 11-30 09:56 1743次阅读