가변 비트 수는 하드웨어에서 실용적이지는 않습니다. 몇 가지 코드를 보여 주면 좀 더 적절하거나 실용적 일 수 있습니다. 이것을 해결
두 가지 방법
패드 0
의 MSB를 추가 홀수 검출의 수는 패딩 1 개 또는 2 비트를 선택적으로 선택 반복에서 if else
유무 LSB.
코드 예제 1.
parameter DATA_W = 11;
parameter odd = DATA_W % 2;
input [DATA_W-1:0] data;
reg [DATA_W-1+odd:0] data_int;
always @* begin
if (odd)
data_int = {1'b0, data};
else
data_int = data;
end
코드 예제이 정적 odd
으로 언 롤링 할 수 있어야한다 2.
// Iteration for(loop=0; loop<max; loop=loop+1) begin
if ((loop == 0) && (odd)) begin
sel = {data[0], 1'b0};
end
else begin
sel = data[loop*2+1:loop*2];
end
// end
에 대한 매개 변수를 기반으로 반복은 고정 된 수의 반복을 갖는다. 루프를 정적으로 풀면 합성이 가능합니다.