谁能告诉我以下 vhdl 代码有什么问题吗?
我收到错误“ERROR:Xst:827 - “C:/1553/decoder_copy/decoder.vhd”第 265 行:信号 no_words 无法合成,同步描述错误”。
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);
elsif(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;
结束进程;
I am getting error as "ERROR:Xst:827 - "C:/1553/decoder_copy/decoder.vhd" line 265: Signal no_words cannot be synthesized, bad synchronous description".
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);
elsif(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;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我猜这是因为您正在一个进程中检查两个不同信号(
sync_csw_reg
和sync_dw_reg
)的边缘。如果您想综合代码,则不能这样做。您必须将其分成两个过程。I guess it's because you are checking for the edge of two different signals (
sync_csw_reg
andsync_dw_reg
) in one process. You cannot do that if you want to synthesize the code. You have to separate it into two processes.