mirror of
https://github.com/olofk/serv.git
synced 2026-01-11 23:42:50 +00:00
35 lines
666 B
Verilog
35 lines
666 B
Verilog
`default_nettype none
|
|
module servis_clock_gen
|
|
(input wire i_clk,
|
|
output wire o_clk,
|
|
output reg o_rst);
|
|
|
|
wire clkfb;
|
|
wire locked;
|
|
reg locked_r;
|
|
|
|
PLL_BASE
|
|
#(.BANDWIDTH("OPTIMIZED"),
|
|
.CLKFBOUT_MULT(16),
|
|
.CLKIN_PERIOD(20.0), //50MHz
|
|
.CLKOUT1_DIVIDE(50), //16MHz
|
|
.DIVCLK_DIVIDE(1))
|
|
PLL_BASE_inst
|
|
(.CLKOUT1(o_clk),
|
|
.CLKOUT2(),
|
|
.CLKOUT3(),
|
|
.CLKOUT4(),
|
|
.CLKOUT5(),
|
|
.CLKFBOUT(clkfb),
|
|
.LOCKED(locked),
|
|
.CLKIN(i_clk),
|
|
.RST(1'b0),
|
|
.CLKFBIN(clkfb));
|
|
|
|
always @(posedge o_clk) begin
|
|
locked_r <= locked;
|
|
o_rst <= !locked_r;
|
|
end
|
|
|
|
endmodule
|