模块设计步骤:
1)板卡开机上电。上电50ms延时。
2)开始启动PLL。PLL不能被复位,保证工作期间只有一次上电配置机会。
3)PLL之后综合锁相信号、外部复位信号,实现”异步复位,同步释放”的复位逻辑。
设计过程:
在每个FPGA–>src文件夹中有这样三个文件:
sys_pll中是锁相生成的pll时钟
system_init_delay是开机上电50ms
system_ctrl_pll是例化前两个文件,并对输出的pll时钟和外部复位信号实现“异步复位,同步释放”的复位逻辑。
最后的输入输出信号为:
`timescale 1 ns / 1 ns
module system_ctrl_pll
(
//global clock
input clk,
input rst_n,
//synced signal
output clk_c0, //clock output
output sys_rst_n //system reset
);
三个文件通常放在一起使用,在顶层文件中直接例化上述输入输出信号,其他文件中的时钟和复位信号用例化后的信号。