关于S5pv210的 APLL,MPLL,EPLL以及VPLL的介绍

来源:互联网 发布:windows7开机优化 编辑:程序博客网 时间:2024/05/17 22:59

在S5pv210的手册里面有

PLL 
−  Four on-chip PLLs, APLL/MPLL/EPLL/VPLL 
−  APLL generates ARM core and MSYS clocks 
−  MPLL generates a system bus clock and special clocks 
−  EPLL generates special clocks 
−  VPLL generates clocks for video interface 


从这个上面看,这个锁相环三个的作用各不相同,都是由晶振(FIN)经过PLL 倍频而来的,没有太多必然的联系,

他们都是管理控制着一些时钟,这点S5pv210 比6410 分的更详细,以前2440 只有一个所谓的MPLL来控制所有的时钟,这个在S5pv210 有很大改变。

S5pv210 在这点上更加科学一些。


他们是类似的关系

#define GET_APLLCLK(pll_reg)    (vAPLL_MDIV(pll_reg) * (FIN / vAPLL_PDIV(pll_reg) / (1<<(vAPLL_SDIV(pll_reg)-1))))#define GET_MPLLCLK(pll_reg)    (vMPLL_MDIV(pll_reg) * (FIN / vMPLL_PDIV(pll_reg) / (1<<vMPLL_SDIV(pll_reg))))#define GET_EPLLCLK(pll_reg)    (vEPLL_MDIV(pll_reg) * (FIN / vEPLL_PDIV(pll_reg) / (1<<vEPLL_SDIV(pll_reg))))#define GET_VPLLCLK(pll_reg)    (vVPLL_MDIV(pll_reg) * (FIN / vVPLL_PDIV(pll_reg) / (1<<vVPLL_SDIV(pll_reg))))

 APLL,MPLL,EPLL以及VPL L和下面的关系又是这样

#define GET_ARMCLK(pll_reg, div_reg)        (GET_APLLCLK(pll_reg) / vDIV_APLL(div_reg))#define GET_HCLKMSYS(pll_reg, div_reg)      (GET_ARMCLK(pll_reg, div_reg) / vDIV_HCLKMSYS(div_reg))#define GET_PCLKMSYS(pll_reg, div_reg)      (GET_HCLKMSYS(pll_reg, div_reg) / vDIV_PCLKMSYS(div_reg))#define GET_HCLKDSYS(pll_reg, div_reg)      (GET_MPLLCLK(pll_reg) / vDIV_HCLKDSYS(div_reg))#define GET_PCLKDSYS(pll_reg, div_reg)      (GET_HCLKDSYS(pll_reg, div_reg) / vDIV_PCLKDSYS(div_reg))#define GET_HCLKPSYS(pll_reg, div_reg)      (GET_MPLLCLK(pll_reg) / vDIV_HCLKPSYS(div_reg))#define GET_PCLKPSYS(pll_reg, div_reg)      (GET_HCLKPSYS(pll_reg, div_reg) / vDIV_PCLKPSYS(div_reg))