您的位置:首页 > 其它

PLL详细设计方案

2014-04-26 19:45 295 查看

1. PLL简介:

PLL(Phase Locked Loop):为锁相回路或锁相环,用来统一整合时脉讯号,使内存能正确的存取资料。PLL用于振荡器中的反馈技术。
锁相环是一种反馈电路,其作用是使得电路上的时钟和某一外部时钟的相位同步。PLL通过比较外部信号的相位和由压控晶振(VCXO)的相位来实现同步的,在比较的过程中,锁相环电路会不断根据外部信号的相位来调整本地晶振的时钟相位,直到两个信号的相位同步。

2. PLL规格:

输出
100M
20M
80M

3个时钟频率

3. 实现原理

使用ALTERA PLL例化得到。

4. Verilog HDL源代码

Verilog HDL代码为:

modulePLL_Inst (

//input

sys_clk ,

sys_rst_n ,

//output

clk_100M ,

clk_20M ,

clk_80M

// data_out

);

//inputports

input sys_clk ; //system clock;

input sys_rst_n ; //system reset, low is active;

//outputports

output clk_100M ; //output clock 100M;

output clk_20M ; //output clock 20M;

output clk_80M ; //output clock 80M;

//output clock_enbale ;

//regdefine

//wiredefine

wire clk_100M_tmp ; //wire clock 100M;

wire clk_80M_tmp ; //wire clock 20M;

wire clk_20M_tmp ; //wire clock 80M;

wire clk_100M ; //wire clock 100M;

wire clk_80M ; //wire clock 20M;

wire clk_20M ; //wire clock 80M;

//parameterdefine

parameterWIDTH = 8;

parameterSIZE = 8;

/*******************************************************************************************************

** Main Program

**

********************************************************************************************************/

//instancethe PLL

PLL PLL_U0 (

.areset (sys_rst_n ) ,

.inclk0 (sys_clk ) ,

.c0 (clk_100M_tmp ) ,

.c1 (clk_20M_tmp ) ,

.c2 (clk_80M_tmp ) ,

.locked (clock_enbale )

);

//enbalethe clock when the pll is locked

assignclk_100M = (clock_enbale == 1'b1)? clk_100M_tmp : 1'b0;

assignclk_80M = (clock_enbale == 1'b1)?clk_80M_tmp : 1'b0;

assignclk_20M = (clock_enbale == 1'b1)?clk_20M_tmp : 1'b0;

endmodule

//endof RTL code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐