0
私はgenerateループを使用して、パラメータ化可能な数のモジュールをインスタンス化しています。ループ反復に基づいてモジュールの入力の一部を割り当てたいと思います。残念ながら、デザインコンパイラがポート幅が一致していないためにエラーがあると言う合成に関する問題が発生しています。ここで私は何をしようとしているのです:Verilog generateループ反復子の幅の不一致
genvar k;
generate
for(k = 0; k < `NUM/2; ++k) begin
cmp2 cmps(
.a (arr[k]),
.b (arr[k+1]),
.a_idx (k), //gives errors about port width mismatch
.b_idx (k+1), //but I can't get it to work any other way
.data_out(data[k]),
.idx_out (idx[k])
);
end
endgenerate
私もループ内でlocalparamsを使用してみましたし、localparamにA_IDXとB_IDXを割り当てるが、私はまだ合成の下で同じエラーを取得しました。
私は.a_idx((k)[bit_width-1:0]),
のようなものを試しましたが、どちらもうまくいきません。
アイデア?