0
paramaterizable 모듈을 인스턴스화하기 위해 generate 루프를 사용하고 있고 루프 반복을 기반으로 모듈에 입력을 할당하고 싶습니다. 불행히도 디자인 컴파일러가 포트 폭이 일치하지 않아 오류가 있다고 말하는 합성 문제가 있습니다.Verilog 생성 루프 반복자에 할당 width 너비가 일치하지 않습니다.
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
나는 또한 localparam에 a_idx 및 b_idx을 루프에 localparams를 사용하여 할당 시도했다하지만, 난 여전히 합성에서 같은 오류가 발생합니다 : 여기에 내가 할 노력하고있어 무슨.
나는 .a_idx((k)[bit_width-1:0]),
과 같은 것을 시도했지만 작동하지 않습니다.
아이디어가 있으십니까?