如何解决以下vhdl代码中发生的错误?

时间:2011-05-18 16:27:05

标签: vhdl

错误是:“错误:Xst:528 - 信号nfw中单位的多源”。

process(rst_n,dword_int,sync_csw_reg,sync_dw_reg)
begin
  if(rst_n='1')then
      noofwords<="00000";
      no_words<="00000";
      nfw<='1';
  elsif(falling_edge(sync_csw_reg) and dword_int(10)='0' and nfw='1' )then
      noofwords<=dword_int(0 to 4);
      check_nfw<=dword_int(0 to 4);
  end if;
end process;

process(sync_dw_reg,noofwords)
begin
  if(falling_edge(sync_dw_reg))then
    if(no_words = noofwords)then
      no_words<="00000";
      nfw<='1';
    else
      no_words<= no_words+'1';
      nfw<='0';
    end if;
  end if;
end process;

1 个答案:

答案 0 :(得分:4)

问题是您要从两个进程中分配信号nfw。那是不可能的。您将不得不使用两种不同的信号(如果您需要它们)并以某种方式将它们组合在一起。响应:您可以在第二个流程中添加if (rst_n='1'),并在其中指定重置值nfw