#1楼主:求助: 一个综合的问题
文章发表于:2008-02-03 05:50
这几天花了不少时间, 终于把Synplify pro (8.6.2)安装好了. 当我把自己写的可以在ModelSim中编译的rs触发器代码放到Synplify中编译时, 有warning出现.
以下是我写的VHDL rs_latch 代码:
library ieee;
use ieee.std_logic_1164.all;
entity rs_latch is
port ( r : in std_logic;
s : in std_logic;
q : out std_logic;
iq : out std_logic);
end rs_latch;
architecture bhv_rslatch of rs_latch is
begin
process(r, s)
begin
if r'event and r = '1' then
q <= '0';
iq <= '1';
elsif s'event and s = '1' then
q <= '1';
iq <= '0';
else
null;
end if;
end process;
end bhv_rslatch;
这段代码在ModelSim中的编译没有任何问题, 而且以它为component的模块的行为也符合预期.
Synplify给出的warning是:
@W: CL116 :The input data for signal q contains references to signal edges. An async-reset may be missing from the sensitivity list.
我的理解是提示我在process 的敏感信号中加上一个reset 信号. 但是如果加上这个信号, rs_latch就和原来的设想不太一样了. (原来的r 就可以起到异步复位作用)
请问Synplify为什么要求加一Async_Reset, 有什么规律可寻吗? 为什么在ModelSim中就没问题?
谢谢.