....
case st is
when 1=>
n<='1';
when 2=>
n<='0';
when 3=>
n<=pulse;
when others=>
null;
.......
m<=n;
...
VHDL描述大致如上,st具有255个可选值,且st 为脉冲信号。
希望功能:st脉冲信号能够控制n的值。
结果:
1. st脉冲等于1,2 时,功能正常,脉冲信号撤掉后,n的状态依然存在,且正确。
2. 3 脉冲却功能异常,当3 存在时,n的状态为pulse,当3信号撤销后,n的状态为随机定值。
问题:1.希望NULL实现“无操作”=“保持之前状态”,但是结果却异常,且和赋值信号有关。
改进测试:
添加并如下调整后
CASE st is
when 1=>
q<=1;
when 2=>
q<=2;
when 3=>
q<=3;
when others=>
null;
.......
case q is
when 1|2=>
m<=n;
when 3=>
m<=pulse;
when others=>
null;