gpt4 book ai didi

vhdl - 敏感列表中的哪个信号触发进程

转载 作者:行者123 更新时间:2023-12-05 01:21:22 27 4
gpt4 key购买 nike

在 VHDL 中,当模拟测试台时,我有一个过程和一个敏感度列表。是否可以查看敏感列表中的哪个信号触发了该过程?我知道这可能取决于工具。我正在使用 Xilinx ISE。模拟器是否提供此信息?

最佳答案

您可以使用 'transaction属性与 'event 结合使用确定哪些信号在当前增量周期中有交易:

process(a, b) is
begin
if a'transaction'event then
report "Transaction on a";
end if;

if b'transaction'event then
report "Transaction on b";
end if;
end process;

'transaction属性创建一个新的位类型信号,在每次交易时切换。 'event该信号上的属性标识父信号上何时发生任何事务。

您还可以使用 not <signal name>'quiet(0 ns)确定自上次时间步以来敏感列表中的哪些信号有交易:

process(a, b) is
begin
if not a'quiet(0 ns) then
report "Transaction on a";
end if;

if not b'quiet(0 ns) then
report "Transaction on b";
end if;
end process;

如果您不想处理在不同增量周期上发生的事件的顺序,后者可能更有用。

关于vhdl - 敏感列表中的哪个信号触发进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25770387/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com