[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-user: icarus for-generate support



I have the following code in a module:

   genvar    i;

   generate
      for (i=0;i<32;i=i+1)
	begin : gen_srl16
	   SRL16E
	     srl16e(.Q(dataout[i]),
		    .A0(a[0]),.A1(a[1]),.A2(a[2]),.A3(a[3]),
		    .CE(write),.CLK(clk),.D(datain[i]));
	end
   endgenerate


Icarus gives me the following compilation error:

shortfifo.v:18: error: Index of dataout needs to be constant in this context.
shortfifo.v:18:      : Index expression is: i
shortfifo.v:18: error: Output port expression must support continuous
assignment.
shortfifo.v:18:      : Port of SRL16E is Q

ISE from Xilinx doesn't balk at all, but I haven't verified that it
all works how I expect.  Is this outside the scope of the for-generate
support in icarus?  Or am I using this construct incorrectly?

Thanks,
Matt


_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user