matlab中sr锁存器,VHDL中的简单SR锁存器仿真(带Xilinx)不会振荡

我已经了解到,当S和R在它们在下面的电路VHDL代码中仅为'1'时均为'0'时,SR锁存器会发生振荡。VHDL中的简单SR锁存器仿真(带Xilinx)不会振荡

这里是SRLATCH

library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

entity SRLATCH_VHDL is

port(

S : in STD_LOGIC;

R : in STD_LOGIC;

Q : inout STD_LOGIC;

NOTQ: inout STD_LOGIC);

end SRLATCH_VHDL;

architecture Behavioral of SRLATCH_VHDL is

begin

process(S,R,Q,NOTQ)

begin

Q <= R NOR NOTQ;

NOTQ<= S NOR Q;

end process;

end Behavioral;

的VHDL和以下的测试平台代码的过程,其仿真结果

-- Stimulus process

stim_proc: process

begin

S <= '1'; R <= '0'; WAIT FOR 100NS;

S <= '0'; R <= '0'; WAIT FOR 100NS;

S <= '0'; R <= '1'; WAIT FOR 100NS;

S <= '0'; R <= '0'; WAIT FOR 100NS;

S <= '1'; R <= '1'; WAIT FOR 500NS;

end process;

,完全我没有任何想法,为什么模拟不反映。 ..

2bf65cc9b595a89343579db5dc1514f4.png

(点击放大)

+0

您尚未提供展示振荡的[最小,完整和可验证示例](https://stackoverflow.com/help/mcve),您提供的刺激也不会这样做。治愈的办法是平衡延误,以赢得胜利。这相当于提供了共识。在钟控触发器中,这是设置和保持时间的源泉,也是使用主从触发器的动力。我们正在处理丢失的数字设计艺术以及零门延迟的抽象。 –

+0

如果您要为Q和NOTQ的赋值添加统一的延迟:1ns后的Q <= R NOR NOTQ;在1 ns后NOTQ <= S NOR Q;'并且在同一个增量周期内(不插入WAIT)在S和R上提供'0'到'1'的转换,您可以证明[振荡](https:// i .stack.imgur.com/d23rt.png“srlatch_vhdl_with_delay.png”),而不需要可以显示增量循环或导致超过增量循环的最大数量的波形显示。 –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值