我正在尝试使用 NOR 门模拟 EXOR。我为异或门编写了以下逻辑。现在,我的 nor2 定义为 4 ns 延迟。
ENTITY ex IS
PORT (a, b : IN BIT; c : OUT BIT);
END ex;
ARCHITECTURE structure OF ex IS
SIGNAL tmp1, tmp2, tmp3, tmp4: BIT;
COMPONENT nor2 PORT (x, y : IN BIT; z : OUT BIT); END COMPONENT;
BEGIN
u0: nor2 PORT MAP (a, a, tmp1);
u1: nor2 PORT MAP (b, b ,tmp2);
u2: nor2 PORT MAP (tmp1,tmp2,tmp3);
u3: nor2 PORT MAP (b, a, tmp4);
u4: nor2 PORT MAP (tmp3, tmp4, c);
END structure;
我知道tmp1
,tmp2
并且tmp4
会在 4 ns 后改变信号a
或b
改变。我也注意到了这一点tmp3
,因此c
在 4 ns 后发生了变化(因为nor2
有 4 ns 延迟[ c <= a nor b after 4ns
])。但我想tmp3
根据正确的逻辑和c
12 ns 后反映 8 ns 后的变化。这将为我提供正确的输出EXOR
。我的问题是如何在结构架构中引入延迟?有没有办法做到这一点?我试图搜索但没有找到任何东西并且等待不起作用,它一直给我语法错误(等待 8ns)。非常感谢您的帮助!