So I'm building a tree in Verilog. The tree will assign element j of level i to the smaller of [j,j+1] of level i+1.
The issue here is I'm not sure how verilog treats the divide operator for genvar's:
genvar i,j; generate for(i = LEVELS; i > 0; i--) begin for(j = 0; j < 2**i; j = j + 2) begin // 0..7 for level 3, 0..3 for level 2, 0..1 for level 1 and 0 for level 0 assign tree[i-1][j/2] = tree[i][j] <operator> tree[i][j+1]; end end endgenerate The issue here is I'm not sure that j/2 above will be floored so that 1/2 == 0. Anyone know if this is true?