ARM的pll
时间:11-21
来源:互联网
点击:
确定PLL 过程:
1.确定 cpu频率 Fcclk
2.确定晶振频率 Fosc ,Fcclk 一定是Fosc的整数倍。
3.计算M值 M = Fcclk/Fosc,M的取值范围为1~32。实际写入MSEL位的值为M-1的整数倍。
4.计算P值 选择P值以配置PSEL位。通过设置P值,使Fcco在定义的频率限制范围内。P必须是1, 2, 4或8其中的一个。
PLL :
Fcco为PLL电流控制振荡器的输出频率
Fcclk = M×Fosc
相位频率检测:把两个输入的时钟相位差值 ==》 电流值
流控震荡器:电流值 ==》 频率
当检测输入的两个一样时,稳定了
![](../img/eep/emb/emb-58859oehjjafokoz.jpg)
![](../img/eep/emb/emb-58860yllewu31lws.jpg)
![](../img/eep/emb/emb-58861ypuq2k5cos3.jpg)
PLL的锁定过程:
CCO的输出频率受到“相位频率检测”部件的控制,输出所需频率的过程不是一蹴而就的,而是一个拉锯反复的过程。
![](../img/eep/emb/emb-58862q4payb3r3qk.jpg)
举例:
系统要求Fosc=10MHz,Fcclk=60MHz。
根据这些要求: P取整数2,所以写入PLLCFG[6:5]=01
1.确定 cpu频率
2.确定晶振频率
3.计算M值
4.计算P值
![](../img/eep/emb/emb-58858ah5qyr5epbp.jpg)
PLL :
Fcco为PLL电流控制振荡器的输出频率
Fcclk = M×Fosc
相位频率检测:把两个输入的时钟相位差值 ==》
流控震荡器:电流值 ==》 频率
当检测输入的两个一样时,稳定了
![](../img/eep/emb/emb-58859oehjjafokoz.jpg)
![](../img/eep/emb/emb-58860yllewu31lws.jpg)
![](../img/eep/emb/emb-58861ypuq2k5cos3.jpg)
PLL的锁定过程:
CCO的输出频率受到“相位频率检测”部件的控制,输出所需频率的过程不是一蹴而就的,而是一个拉锯反复的过程。
![](../img/eep/emb/emb-58862q4payb3r3qk.jpg)
举例:
系统要求Fosc=10MHz,Fcclk=60MHz。
- 确定Fcclk=60MHz;
- 选择Fosc=10MHz;
- 计算M= Fcclk/Fosc=60MHz/10MHz=6。M-1=5,所以写入 PLLCFG[4:0]=00101;
- 计算P=Fcco/( Fcclk*2),其中Fcco为156~320 MHz。当Fcco=156MHz时,P=156MHz/(2*60MHz)=1.3当Fcco=320MHz时, P=2.67
ARMpl 相关文章:
- arm中的PLL,MPLL,UPLL,FCLK,HCLK,PCLK的作用概述(11-21)
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)