입력 클럭을 2로 나누려고합니다. 즉 출력 클록이 입력 클럭의 절반 주파수 여야합니다.Verilog에서 두 개의 시계 나누기
module clk_div(in_clk, out_clk, rst);
input in_clk;
input rst;
output out_clk;
reg out_clk;
always @(posedge in_clk) begin
if (!rst) begin
out_clk <= 1'b0;
end
else
out_clk <= ~out_clk;
end
endmodule
테스트 벤치는 출력 파형 만 입력 클럭이 발생되는 것을 보여준다
module dd;
// Inputs
reg clk_in;
reg reset;
// Outputs
wire clk_out;
// Instantiate the Unit Under Test (UUT)
clk_div uut (
.clk_in(clk_in),
.reset(reset),
.clk_out(clk_out)
);
always #10 clk_in =~clk_in ;
initial begin
// Initialize Inputs
clk_in = 0;
reset = 0;
#100;
reset = 1;
end
endmodule
이다. 무슨 일이 있어도 출력 클록 파형은 오지 않을 것입니다. 이 코드가 2 로의 클럭 분할에 맞습니까?
를 사용하여, 2 개 개의 통신 사업자가 동일하다. – toolic