具体是vhdl
语句很简单,就是在一个方波信号的过程中去检查并处理
if clk='1' then
$%^%$ --一些简单的处理
elsif clk='0' then
case *&$$ is
when ...... --同样是一些处理
end case;
end if;
这样的语句在vhdl中可以通过综合,但是综合的情况下,都不执行
不知道为啥?
而且在如果elsif clk='0' then这句话改成else的话,就好像会报错
不知道为什么,具体高人指点下,在下感激不尽。
(应该是fpga设计原理上的问题)
首先确定你做的是不是时序电路
上升沿还是下降沿触发
其次确认敏感变量有没有被包含
如果是时序问题,应该有触发沿,上升沿或下降沿,如果改成else就少了一个end if;
我要和VHDL永别
因为它太变态了
在这里警告楼主
不要把C语言等语言的习惯和思想带到VHDL中来,他真是个“硬件描述语言”!不是按照人的软件思维去写的。
注意VHDL的竞争冒险现象,毛刺产生的原因。
----------这些东西,VHDL。浪费了我大学的一些宝贵青春。唉。
硬件的描述和软件有完全不同的思想,在你用vhdl或者verilog描述前,你应该完全知道你的电路是什么样子。