mirror of
https://github.com/aolofsson/oh.git
synced 2025-01-17 20:02:53 +08:00
de63dfd907
-stdcells moved to asiclib, doesn't make sense to be vectorized -common is a stupid name, renamed as stdlib
27 lines
1.1 KiB
Verilog
27 lines
1.1 KiB
Verilog
//#############################################################################
|
|
//# Function: Phase Locked Loop #
|
|
//#############################################################################
|
|
//# Author: Andreas Olofsson #
|
|
//# License: MIT (see LICENSE file in OH! repository) #
|
|
//#############################################################################
|
|
|
|
module oh_pll #(parameter N = 8) // number of clocks
|
|
( input clkin, // primary clock input
|
|
input nreset, // async active low reset
|
|
input clkfb, // feedback clock
|
|
input pll_en, // enable pll
|
|
input [N*8-1:0] clkdiv, // clock divider settings (per clock)
|
|
input [N*16-1:0] clkphase, // clock phase setting (rise/fall edge)
|
|
input [7:0] clkmult, // feedback clock multiplier
|
|
output [N-1:0] clkout, // output clocks
|
|
output locked // PLL locked status
|
|
);
|
|
|
|
`ifdef TARGET_SIM
|
|
|
|
//insert PLL simulation model
|
|
|
|
`endif
|
|
|
|
endmodule // oh_pll
|