我使用VHDL几个月,有时我希望按顺序评估某些条件时,有时会使用非嵌套 if语句来构建这种过程:
process(clk)
begin
if rising_edge(clk) then
if CONDITION1 then
(some instructions)
end if;
if CONDITION2 then
(some instructions)
end if;
end if;
end process;
它在模拟和综合中似乎都很好用,但是当我在网上寻找示例时,我几乎看不到这种结构。我对这些语句的顺序执行有疑问,但是IEEE标准VHDL语言参考手册Std 1076-2008指出:
顺序语句用于定义执行算法子程序或过程;他们按照他们执行的顺序执行出现。
并且如果该语句在顺序语句列表中。
为什么我找不到更多示例?这是不好的做法吗?
if
“获胜”。因此以下两个代码在功能上是相同的。