(z)如何在SignalTAP II中保留特定节点

本文详细介绍了在使用SignalTAPII进行调试时遇到的问题,即调试用的逻辑(如计数器)被Quartus II软件优化而不在调试波形中出现。文中提供了通过在源HDL代码中添加'keep'或'preserve'属性来强制保留这些信号的方法,以确保调试过程的顺利进行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Original address: http://blog.ednchina.com/riple/74826/message.aspx

在使用SignalTAP II的过程中,我经常发现一些用于调试的逻辑(比如调试用的计数器)会被优化掉,不能出现在调试波形中。在Altera的一篇文档中,发现了以下关键信息: 

In the logic synthesis stage, the Quartus II software may optimize away signals that you are trying to analyze with the SignalTap II Embedded Logic Analyzer. If this occurs, you will see a compilation error. You can force the Quartus II software to preserve these signals by adding the keep or preserve attribute in the source HDL to the signals you want to monitor.

The keep attribute is used for a wire or net node. For example:
In Verilog:
    wire my_wire /* synthesis keep = 1 */:
In VHDL:
    signal my_signal: bit;
    attribute syn_keep : boolean;
    attribute syn_keep of my_signal: signal is true;

The preserve attribute is used for a register. For example:
In Verilog:
    reg my_reg /* synthesis preserve = 1 */:
In VHDL:
    signal my_reg: stdlogic;
    attribute preserve : boolean;
    attribute preserve of my_signal: signal is true;


谢谢, riple!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值