W
woeichee
Guest
제가 교대 32 비트의 집합을 구현하는 것이 같은 genvar를 사용하여 등록합니다.그러나, 32 난 왜 그런지 궁금해요의 출력은 입력과 대신 나의 비트 전용입니다 항상 1 차단합니다.
인용구 :
shift_reg1 # (모듈 매개 변수 길이 = 3)
(입력 CLK,
입력에 31:0]에
출력) 31:0] 아웃 [;와이어 63:0] 시그마를 [;genvar n;
생성
n은 0; N 개의 <길이 (용; n은 n 1)
시작 : shift_reg_gen을
케이스 (N)을
0 : dffn1 U1 (
. 질문 (시그마 [((n 1) * 32) -1 : n]의),. CLK (CLK),. d 개 (에서)
);길이 - 1 : dffn U1 (
. 질문 (밖으로),. CLK (CLK),. d 개 (시그마 [((아 ~ 1) * 32) 31 : ((아 ~ 1) * 32)])
);기본값 : dffn U1 (
질문 (시그마 [(n * 32) 31 : (n * 32)]),. CLK (CLK),. d 개 (시그마 [((아 ~ 1) * 32) 31 : ((아 ~ 1) * 32)])
);endcase
끝
endgenerateendmodule모듈 dffn1 (입력 CLK,
입력 [31:0] d 개,
출력 [31:0] q를 교체);항상 @ (posedge CLK)
q를 <= d 개;endmodule
인용구 :
shift_reg1 # (모듈 매개 변수 길이 = 3)
(입력 CLK,
입력에 31:0]에
출력) 31:0] 아웃 [;와이어 63:0] 시그마를 [;genvar n;
생성
n은 0; N 개의 <길이 (용; n은 n 1)
시작 : shift_reg_gen을
케이스 (N)을
0 : dffn1 U1 (
. 질문 (시그마 [((n 1) * 32) -1 : n]의),. CLK (CLK),. d 개 (에서)
);길이 - 1 : dffn U1 (
. 질문 (밖으로),. CLK (CLK),. d 개 (시그마 [((아 ~ 1) * 32) 31 : ((아 ~ 1) * 32)])
);기본값 : dffn U1 (
질문 (시그마 [(n * 32) 31 : (n * 32)]),. CLK (CLK),. d 개 (시그마 [((아 ~ 1) * 32) 31 : ((아 ~ 1) * 32)])
);endcase
끝
endgenerateendmodule모듈 dffn1 (입력 CLK,
입력 [31:0] d 개,
출력 [31:0] q를 교체);항상 @ (posedge CLK)
q를 <= d 개;endmodule