前面
在EB里面配置TC275MCU时钟的时候,感觉对TC275的时钟树与时钟控制不是很了解,做个总结。
总体架构
Clocking and Clock Control Unit (CCU)
我觉得这是我见过最形象、最直接的时钟架构图:
总共就四部分:
也就是下图圈起来的部分:上面是后备时钟,下面XTAL是连接外部时钟输入和无源/有源晶振用的。
对于外部时钟输入和无源/有源晶振来讲,区别就在电路搭配上:
外部时钟输入
外部无源/有源晶振
有源就是自带谐振器的意思,不需要再在外边搭建电路了。
我这里使用的是无源晶振:20MHz
时钟倍频分频
提到时钟的倍频分频,最多的肯定是PLL锁相环了。
TC275给了两个不同类型的PLL模块:
- Phase-Locked Loop (PLL) Module
- ERAY Phase-Locked Loop (PLL_ERAY) Module
对于第二种我一直没太搞懂是什么意思?
下面是两者的对应框图:
没能抓住其中的重点,不知道两者本质区别在哪里?
两种工作模式
这两种类型的PLL,又分别有两种工作模式: Normal Mode、Prescaler Mode
也就是在配置EB的时候出现的,工作模式选择(终于说到重点了,就是为这个醋包的这个饺子)
就拿PLL_ERAY为例来说吧:
如果你配置了Normal Mode,你的时钟传递路径是这样的:
而如果你配置了Prescaler Mode,你的时钟路径是这样的:
说白了,就是Prescaler Mode只有一个分频的功能,而Normal Mode可以倍频可以分频,需要自己来搭配。
时钟分配
这个就没什么可以详细说的了,就是看图就行:靠着Clock Control Unit (CCU)来进行分配,具体看手册。