关于for loop循环

[复制链接]
2141|10
 楼主| entepino 发表于 2012-11-27 10:55 | 显示全部楼层 |阅读模式

if nload='0' then
    q<=data_in;
   elsif clk'event and clk='1' then
    q(1)<=q(0);
    for i in 1 to 7 loop
     q(i)<=q(i-1);
    end loop;
   end if;


请问此语句中,q(1)<=q(0);是不是执行了两次?因为前面执行了q(1)<=q(0);后面for i in 1 to 7 loop,又执行了q(1)<=q(0)q(2)<=q(1)q(3)<=q(2)q(4)<=q(3)q(5)<=q(4)q(6)<=q(5)q(7)<=q(6),为何要执行两次q(1)<=q(0)
 楼主| entepino 发表于 2012-11-27 10:56 | 显示全部楼层
请熟悉for loop的人指点一二,谢谢啦。
drentsi 发表于 2012-11-27 11:47 | 显示全部楼层
这个for loop用得不合适,这个场合没必要用for loop,写这代码的人对VHDL还没入门
 楼主| entepino 发表于 2012-11-27 13:29 | 显示全部楼层
3# drentsi
请您指点一下,谢谢了。
sgh2 发表于 2012-11-27 17:03 | 显示全部楼层
3# drentsi
我也想知道,请您指点。。。。谢谢
EandE 发表于 2012-11-27 17:30 | 显示全部楼层
坐等猴哥指点
GoldSunMonkey 发表于 2012-11-27 17:44 | 显示全部楼层
只赋值一次。
但是不要用for
gygp 发表于 2012-11-27 19:54 | 显示全部楼层
本帖最后由 gygp 于 2012-11-27 19:56 编辑

楼主移位的话 使用7:1 <=6:0 不是更好一些
 楼主| entepino 发表于 2012-11-27 22:22 | 显示全部楼层
7# GoldSunMonkey
猴哥,为何“但是不要用for”?能说的清楚一点吗,谢谢!不用for,用什么好?另外为何不要用for?谢谢。
 楼主| entepino 发表于 2012-11-27 22:23 | 显示全部楼层
移位,使用7:1 <=6:0就可以,但为何不要用for?请猴哥指点。
mentoscui 发表于 2012-11-28 16:35 | 显示全部楼层
为何不要用for啊 帮顶
您需要登录后才可以回帖 登录 | 注册

本版积分规则

214

主题

653

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部