微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > if语句的执行顺序问题

if语句的执行顺序问题

时间:10-02 整理:3721RD 点击:
if clk ='1' and clk'event then
   q1 <= d ;
   q2 <= q1;
end if ;

if clk ='1' and clk'event then
  q2 <= d;
end if ;  

为什么有区别?

if语句的执行顺序问题
从功能上没有什么区别,取决于你的q1是什么类型的东东!具体找书看,自己仿真看看

if语句的执行顺序问题
有区别,前一个相当于
if clk ='1' and clk'event then
  q1 <= d ;
end if ;
if clk ='1' and clk'event then
  q2 <= q1;
end if ;
就是说第一个中的q2会比d延时两个时钟
第二个q2比d延时一个时钟

if语句的执行顺序问题
是延迟了一个时钟,我还以为我弄错了!谢谢!

if语句的执行顺序问题
注意signal和variable赋值的不同

if语句的执行顺序问题
这样做延时不同,也许在一些情况下,你会需要对于信号进行延时处理,就这样做啊
^_^
还是有用的延时方法啊

if语句的执行顺序问题
要看q1是variable还是signal
variable的话两者是一样的
signal就时延迟一个时钟的

if语句的执行顺序问题
同意!

if语句的执行顺序问题
variable 不能用<=赋值,显然小编问的是signal。

if语句的执行顺序问题
说的好.

学习...

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top