vhdl 仿真问题
时间:10-02
整理:3721RD
点击:
今天在编写程序,仿真时遇到下面的问题始终不能得解,请各位指点指点,谢谢! 问题如下:
要求: 当DTAS或者trigger 为1 时,trigr 就输出一个正脉冲
部分程序如下:
process(dtas,trigger)
begin
if(dtas'even and dtas='1' )then
TRIG1<='1';
end if;
end process;
process(trigger)
begin
if(trigger'even and trigger='1')then
trig2<='1';
end if;
end process;
trig<=trig1 or trig2;
可是仿真是会出现
Warning: Reduced register "TRIG" with stuck data_in port to stuck value VCC
在波形图中trig 就一直为1了
要求: 当DTAS或者trigger 为1 时,trigr 就输出一个正脉冲
部分程序如下:
process(dtas,trigger)
begin
if(dtas'even and dtas='1' )then
TRIG1<='1';
end if;
end process;
process(trigger)
begin
if(trigger'even and trigger='1')then
trig2<='1';
end if;
end process;
trig<=trig1 or trig2;
可是仿真是会出现
Warning: Reduced register "TRIG" with stuck data_in port to stuck value VCC
在波形图中trig 就一直为1了
把dtas'even and dtas='1' 改成dtas='1'
trigger'even and trigger='1' 也同理
综合工具可能发现你的trig 其实等效与接了高电平。
你的其他模块里的逻辑设计肯定有问题