AURIX TC3XX系列之时钟系统

本文详细介绍了TC3XX系列MCU的时钟系统构成,包括时钟源、PLL倍频、时钟分配器和实战演练。重点讲解了如何通过PLL实现高主频,以及如何配置锁相环和CCU以优化外设时钟。
摘要由CSDN通过智能技术生成

一、模块简介

        CPU的时钟频率和CPU的算力有很大关联,同一种类的芯片的时钟频率越高,算力越高,当然硬件上的功耗也会越严重,所以实际开发过程中,对于时钟频率的选择有一定的考究。时钟频率也是我们所说的主频,TC3XX系列MCU的主频最高支持300MHz。

        TC3XX时钟系统主要由时钟源、时钟倍频(PLL)、时钟分配器组成。

二、功能介绍

2.1 时钟源

        TC3XX有两种外部时钟源:一种是外部直接时钟源;另一种是采用石英或陶瓷晶振,再通过电路连接实现。软件层面,我们只需关注外部时钟源的频率fOSC。此外,TC3XX还提供了一种内置备用时钟,可以在主时钟异常时使用,但是精度相对不高。

        

2.2 时钟倍频(PLL)

        时钟源一般为20MHz,怎么达到最高的300MHz的主频?这是通过PLL来实现的。

        时钟系统中有两个PLL模块,一个是系统锁相环,产生的时钟提供给CPU,存储等模块使用;一个是外设锁相环,产生的时钟供GTM,ADC,CAN等外设模块使用。

2.2.1 系统锁相环

        如上图所示,输出频率fPLL0 = fOSC * N/ (P * K2)

  • P:预分频值P-DIV+1
  • N:反馈分频值NDIV+1
  • K2:输出分频值K2-DIV+1

        根据datasheet中DCO的输入范围[10,40MHz],且fDCO输入 fREF= fOSC/P,此时定P=1,则fREF = 20MHz。fDCO输出范围[400,800MHz],想要fLL0 = 300MHz,则fDCO = 600MHz,那么fDCO = fREF*N/K2,即600  = 20*N/K2,此时可以定N = 30,K2 = 1。

        从系统锁相环的图中可以看出还有个振荡器看门狗,可以通过SYSPLLCON0.INSEL = 01B选择OSC时钟源作为看门狗输入,该特性用于检测外部晶体/陶瓷谐振器的严重故障。可以检测时钟输入的丢失或输入频率过高,结合系统锁相环实现监控功能。注意:当设置锁相环时,应关闭SMU中的锁相环监控,否则会误报TICK丢失故障。

2.2.2 外设锁相环

fPLL1 = fOSC * N / (P * K2) 
fPLL2 = fOSC * N/ (P * K3 * 1.6)(DIVBY = 0时)

fPLL2 = fOSC * N/ (P * K3 * 2)(DIVBY = 1时)

fHSCT = fOSC * N / (P * 2) (专供HSSL使用)

        根据datasheet,外设DOC的输入输出频率范围如下:

        考虑EMC问题,外设时钟频率要尽量与系统 时钟保持非倍数关系,一般PLL1设置为160MHz,PLL2设置为200MHz,类比系统PLL,这里系数P也设置为1,N=32,K2=4,K3=2,DIVBY=0。

2.3 时钟分配单元(CCU)

        CCU的输入源为两个锁相环(fPLL0和fPLL1/2),备用时钟fBACK以及fOSC0,框图如下:

各模块的时钟源分配如下图:

时钟分频还存在如下图所示的限制

2.4 时钟产生单元

当外部时钟输入源为20MHz|25MHz时,时钟系统图如下:

三、实战演练

3.1 MCAL配置

System PLL
System PLL
Peripheral PLL

3.2 代码编写

        时钟的初始化一般在EcuM_AL_DriverInitOne中调用,但要注意,需要等到锁相环稳定后再进行时钟配置。

#define Mcu_InitClock()            Mcu_InitClock(0);\
                                   while(MCU_PLL_LOCKED != Mcu_GetPllStatus());\
                                   Mcu_DistributePllClock()


Mcu_InitClock();

  • 26
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 英飞凌的AURIX TC3xx系列用户手册是一本关于AURIX TC3xx系列微控制器的详细说明书。这个系列的微控制器是英飞凌公司专门针对高性能应用而设计的产品,具有强大的处理能力和丰富的外设功能。 这本用户手册主要包含了AURIX TC3xx系列微控制器的硬件架构、软件编程模型以及各种外设的使用方法。首先,它介绍了微控制器的整体架构,包括处理器核心和相关的总线、内存和外设等。然后,它详细讲解了如何使用集成的外设模块,例如ADC、PWM、CAN等,以及如何配置和控制它们。 除了外设的使用,这本手册还涵盖了微控制器的软件编程模型。它介绍了AURIX TC3xx系列微控制器的指令集和寻址模式,并提供了大量的代码示例和编程指南,帮助用户快速上手和开发应用程序。 此外,用户手册还包含了关于调试和诊断的内容,介绍了如何使用调试接口和工具进行调试和性能优化。它还提供了错误处理和故障排除的建议,帮助用户解决可能出现的问题。 总之,英飞凌的AURIX TC3xx系列用户手册提供了丰富的信息和指导,帮助用户充分发挥AURIX TC3xx系列微控制器的功能和性能。无论是初学者还是有经验的开发者,都可以通过这本手册快速学习和使用AURIX TC3xx系列微控制器,开发出高性能的应用。 ### 回答2: 英飞凌的AURIX TC3xx系列用户手册是一份详细的文档,旨在帮助用户了解和操作这一系列处理器。该系列处理器针对汽车和工业应用而设计,具有高度的可靠性和性能。 用户手册的主要内容包括处理器的概述、器件特性、引脚功能和电气特性等。它还提供了关于处理器的外设和存储器配置的详细说明,帮助用户了解如何正确地连接和配置外部设备。 此外,用户手册还提供了关于处理器启动和复位的信息,帮助用户正确地启动和重置处理器。它还包括关于处理器的时钟和电源管理的详细说明,以确保处理器在工作过程中保持稳定和高效。 用户手册还介绍了处理器的性能优化和功耗优化技术,帮助用户了解如何最大限度地利用处理器的性能,并尽可能节省能源。此外,它还提供了关于处理器的故障排除和错误处理的指南,帮助用户在遇到问题时进行快速解决。 总之,英飞凌AURIX TC3xx系列用户手册是一份非常有用和全面的文档,它提供了使用和操作这一系列处理器所需的所有重要信息。无论是初学者还是有经验的用户,都可以从中获得帮助和指导,以确保正确地使用和维护处理器。 ### 回答3: 英飞凌aurix tc3xx系列用户手册是一本详细介绍aurix tc3xx系列微控制器的使用指南。aurix tc3xx系列微控制器是英飞凌公司专为汽车电子应用而设计的高性能处理器,广泛应用于汽车电子控制单元(ECU)中。 该用户手册从基础概念和硬件介绍开始,逐步引导用户了解aurix tc3xx系列微控制器的各个方面。手册中详细说明了微控制器的架构、接口、内存和外围设备,让用户对其整体结构有一个清晰的理解。 手册还为用户提供了软件开发的指南,包括编程环境的搭建、编译器、调试工具和仿真器的使用方法。用户可以学习如何编写基于aurix tc3xx系列微控制器的应用程序,并通过调试工具对程序进行调试和优化。 此外,手册还提供了各种应用示例,涵盖了各种汽车电子系统,如引擎管理系统、传感器控制、车身电子等。用户可以通过这些示例了解如何使用aurix tc3xx系列微控制器来实现不同的功能和应用。 总之,英飞凌aurix tc3xx系列用户手册全面而详细地介绍了aurix tc3xx系列微控制器的功能和使用方法。对于从事汽车电子开发的工程师和技术人员来说,这本手册是一本宝贵的参考资料,可以帮助他们更好地理解和应用aurix tc3xx系列微控制器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值