AGM AG32 MCU系列内部PLL使用入门指南(一)
AG32 MCU(或AGRV2K)的整个器件只有一个 PLL 倍频模块(mcu 和 cpld 共用) 。倍频分频操作是封装在系统内部的(用户无须也不能控制这个时钟树) 。
实现原理:
A. 系统会根据所有用到的频率项(mcu 和 cpld 要用到的全部频率) , 计算出他们的最小公倍数。 该数值就是要倍频到的目标值;
B. 以外部时钟作为输入, PLL 倍频到这个目标值, 然后再以这个目标值为基准, 分频给 mcu 各外设和 cpld 来使用。
C. 倍频和分频, 无须开发者关注。
开发者只要设置好自己需要的各个时钟频率即可。开发者可设置的频率分为 mcu 部分和 cpld 部分。
mcu 部分, 只需要关注系统主频。
主频是在 VE 里通过 SYSCLK 项配置, 该主频是 mcu 的工作频率。
外设频率则基于这个主频再分频(参考各个外设的驱动部分) 。
cpld 部分, cpld 最多可以输入 5 路不同频率的时钟。默认情况下, cpld 工程接口中输入到 cpld 的 sys_clock, 就是跟 mcu 同频的 SYSCLK系统时钟(由 VE 决定多少 M) 。
Bus_clock 则是在 SYSCLK 基础上进行分频的另一路时钟(其实就是后续的 PLLCLK3)。
Bus_clock 在 VE 中频率定义(必须是 SYSCLK 的整数倍分频) :
如果 ve 里没有定义 BUSCLK, 则 bus_clock 和 sys_clock 同频。
bus_clock 是为了防止 cpld 部分速度跟不上 sysclk 而设定的。
cpld 中除了这两路(其实就是 0 路和第 3 路) , 还有 3 路可以使用。
以下是AGM AG32系列MCU的选型指南,相关技术选型及需求,可以联系海振远科技提供相应的支持。
作者:HIZYUAN