SaintRicky 发表于 2011-1-23 23:40:51

小菜鸟提的第一个问题。。。

才学了不久,准备虚心跟着论坛各位大神学习。。。

在看夏宇闻老师的那本书,看到生成块那个地方有点不清楚,求解

看了VERILOG的生成块那一节,没怎么看懂,然后上网搜了一下生成块的问题,结果搜出来一个人问的东西,但没人解答,求达人解答!

//错误的程序
   module try(out,i0,i1);
       parameter N=32;
       中间声明变量省略掉,定义输出是out,输入是i0,i1
      for(i=0;i<N;i=i+1)
         begin
                xor (out,i1,i0);
            end
   endmodule

上面是错误的,一定要用生成块才行

程序重写就省略了,只写循环部分:
    genvar i;
    generate for(i=0;i<N;i=i+1)
      begin
         xor(out,i1,i0);
         end
   endgenerate
endmodule
   

请问为什么必须用生成块,不能直接用循环呢?生成块的作用是什么?

另外,需不需要报一个辅导班一类的学习啊?

SaintRicky 发表于 2011-2-20 22:55:22

大家太不热心了。。。

fpgaw 发表于 2011-2-21 11:12:55

夏老师的书上也是有错误的
页: [1]
查看完整版本: 小菜鸟提的第一个问题。。。