CYUSB3014 的 SlaveFIFO 代码中给的 PLL_BASE 的例子:
参数设置:
PLL_BASE
#(
.BANDWIDTH ("OPTIMIZED"),
.CLK_FEEDBACK ("CLKFBOUT"),
.COMPENSATION ("SYSTEM_SYNCHRONOUS"),
.DIVCLK_DIVIDE (1),
.CLKFBOUT_MULT (20),
.CLKFBOUT_PHASE (0.000),
.CLKOUT0_DIVIDE (10),
.CLKOUT0_PHASE (0.000),
.CLKOUT0_DUTY_CYCLE (0.500),
.CLKIN_PERIOD (20),
.REF_JITTER (0.010)
)
DIVCLK_DIVIDE、CLKFBOUT_MULT、CLKFBOUT_PHASE 表示对 CLKBOUT 的设置。
CLKOUT0_DIVIDE、CLKOUT0_PHASE、CLKOUT0_DUTY_CYCLE 表示对 CLKOUT0 的设置,其中频率由 DIVCLK_DIVIDE、CLKFBOUT_MULT、CLKOUT0_DIVIDE 共同决定。
输入输出连接
pll_base_inst
// Output clocks
(
.CLKFBOUT (clkfbout),
.CLKOUT0 (clkout0),
.CLKOUT1 (clkout1_unused),
.CLKOUT2 (clkout2_unused),
.CLKOUT3 (clkout3_unused),
.CLKOUT4 (clkout4_unused),
.CLKOUT5 (clkout5_unused),
// Status and control signals
.LOCKED (LOCKED),
.RST (RESET),
// Input clock control
.CLKFBIN (clkfbout_buf),
.CLKIN (clkin1)
);
CLKIN 为原始时钟输入。
CLKBIN 为反馈输入时钟,通常连接到 CLKFBOUT。
CLKOUT# 为输出时钟。
LOCKED 为输出,表示 PLL 是否设置(achieved phase alien)完成。1 为完成,0 为未完成。
RST 为输入,表示初始化锁相环,通常在锁相环参数发生变化时调用。1 为开始初始化,0 为不需要初始化。
网友评论