AURIX-TC3xx-GTM详解八-DPLL(Digital PLL Module)

1、主要框图

2、主要信号说明

以下对各信号简单说明

注意TIM1 CH0使用的是TIEM测量模式

2.1、TRIGGER(49bit)

        来自TIM0_CH0或来自TSPP0处理TIM0_CH0后的信号TSPPO。本文只讨论来自TIM0_CH0的信号。

其中

bit0~bit23是时基,链接到ARU_OUT(23:0),即TBU_TS0存到GPR0;

bit47~bit24是时基,链接到ARU_OUT(47:24),即TBU_TS0存到GPR1;

bit49是信号值,链接到ARU_OUT(48),即TIM0 CH0采集的信号是上升沿还是下降沿。当也原始信号出现上升沿时,整个ECNT计数器值总是奇数,而当也原始信号出现下降沿时,它总是偶数,可以通过判断ECNT寄存器的bit0(即ARU_OUT(48))判断是上升沿还是下降沿。

总结:TRIGGER代表测量的来自TIM0_IN0(原始的信号)经过滤波等处理后TIM0_OUT0的信号。其中bit48代表上升沿(0)还是下降沿(1),bit47~24代表TBU_TS0,bit23~0代表TBU_TS0。

2.2、T_VALID

TRIGGER值的有效性,未理解含义,未理解实际怎么使用。

2.3、STATE

类似于TRIGGER,STATE代表测量的来自TIM0_IN1(原始的信号)经过滤波等处理后TIM0_OUT1的信号。

2.4、S_VALID

STATE值的有效性,未理解含义,未理解实际怎么使用。

2.5、PMTR_D

3、主要功能

3.1、DPLL RAM

        DPLL模块自带RAM模块,各子功能RAM的地址和大小如下图。主要有RAM1A,RAM1B,RAM1C,RAM2四块RAN区域。

注意:以下地址为相对地址。

以下为GTM模块的地址0xF0100000u。举例DPLL_RAM2的绝对地址是:

0xF0100000u+0x0002C000 = 0xF012C000

4、主要寄存器

4.1、TIM0 CH0主要寄存器

主要基于下图涉及的寄存器讲解

4.1.1、GPR0寄存器

包含了8bit的ECNT边沿检测和24bit的GPR0寄存器。

8bit ECNT只读,为奇数时表示上升沿,偶数时表示下降沿;

24bit GPR0寄存器的值可以来源于以下4种可能:

24bit CNTS寄存器(影子寄存器);

24bit TBU_TS0;

24bit TBU_TS1;

24bit TBU_TS2;

4.1.2、GPR1寄存器

包含了8bit的ECNT边沿检测和24bit的GPR1寄存器。

8bit ECNT只读,为奇数时表示上升沿,偶数时表示下降沿;

24bit GPR1寄存器的值可以来源于以下4种可能:

24bit SMU的CNT寄存器;

24bit TBU_TS0;

24bit TBU_TS1;

24bit TBU_TS2;

4.1.3、CNTS寄存器

包含了8bit的ECNT寄存器、24bit的CNTS影子寄存器

4.1.4、控制寄存器

bit0:TIM_EN,TIM channel x enable,通道使能

bit1~bit3:TIM_MODE,TIM channel x mode,通道模式,有6种模式,TPWM、TPIM、TIEM、TIPM、TBCM、TGPS和TSSM。

bit4:OSM,One-shot mode,连续采集模式还是一次采集模式

bit5:ARU_EN,GPR0 and GPR1 register values routed to ARU,GPR0和GPR1寄存器是否通过ARU传输

bit6:CICTRL,通道输入使用本通道还是上一个通道

bit7:TBU0_SEL,使用TBU_TS0(共27bit)的高24bit还是低24bit存储GPR0和GPR1寄存器的值

bit8~bit9:GPR0_SEL,选择GPR0来源。

来源可以是:

TBU_TS0(24bit)+ ECNT(8bit)组成32bit GPR0寄存器。使用EGPR0_SEL控制是否接到GPR0寄存器(EGPR0_SEL=0表示接,EGPR0_SEL=1表示断开)

TBU_TS1(24bit)+ TIM_INP_VAL(8bit)组成32bit GPR0寄存器。使用EGPR0_SEL控制是否接到GPR0寄存器(EGPR0_SEL=0表示接,EGPR0_SEL=1表示断开)

TBU_TS2(24bit)+ 预留(8bit)组成32bit GPR0寄存器。使用EGPR0_SEL控制是否接到GPR0寄存器(EGPR0_SEL=0表示接,EGPR0_SEL=1表示断开)

CNTS寄存器(24bit)+ 预留(8bit)组成32bit GPR0寄存器。使用EGPR0_SEL控制是否接到GPR0寄存器(EGPR0_SEL=0表示接,EGPR0_SEL=1表示断开)

bit10~11:GPR1_SEL,选择GPR1来源。

来源可以是:

TBU_TS0(24bit)+ ECNT(8bit)组成32bit GPR1寄存器。使用EGPR1_SEL控制是否接到GPR1寄存器(EGPR1_SEL=0表示接,EGPR1_SEL=1表示断开)

TBU_TS1(24bit)+ TIM_INP_VAL(8bit)组成32bit GPR1寄存器。使用EGPR1_SEL控制是否接到GPR1寄存器(EGPR1_SEL=0表示接,EGPR1_SEL=1表示断开)

TBU_TS2(24bit)+ 预留(8bit)组成32bit GPR1寄存器。使用EGPR1_SEL控制是否接到GPR1寄存器(EGPR1_SEL=0表示接,EGPR1_SEL=1表示断开)

SMU的CNT寄存器(24bit)+ 预留(8bit)组成32bit GPR1寄存器。使用EGPR1_SEL控制是否接到GPR1寄存器(EGPR1_SEL=0表示接,EGPR1_SEL=1表示断开)

bit12:CNTS_SEL,选择影子寄存器CNTS。可来源于:TBU_TS0或SMU的CNT寄存器

bit13:DSL,测量上升沿或下降沿选择(仅

<think>嗯,用户想了解TC264单片机的架构细节,包括主频配置、时钟树结构和外设接口。这是个很专业的嵌入式系统问题,用户可能是电子工程师或汽车电子领域的学生。从提问方式看,用户对单片机应该有一定基础,但需要系统性的技术资料。 我注意到用户特别强调"架构详解",说明需要深度技术解析而非简单概述。TC264作为英飞凌Aurix系列的主力芯片,资料比较分散,需要整合多个来源。用户没有限定具体应用场景,但提到"主频配置",可能涉及实时性要求高的应用如电机控制。 先梳理核心模块:TC264采用三核TriCore架构,主频最高200MHz——这个数据需要确认手册是否支持超频。时钟树部分要重点解释PLL配置和时钟分配路径,特别是SCU(时钟控制单元)的作用。外设接口方面,用户可能关注CAN-FD、GTM等汽车电子专用模块。 安全机制是Aurix系列的特色,虽然用户没直接问,但架构中集成的SMU(安全管理单元)和内存保护功能值得说明。不过要控制篇幅,避免偏离主线。 用户提供的参考引用都是STM32内容,说明可能有ARM基础。在解释TC264时需要对比差异,比如TriCore的哈佛架构与Cortex-M的冯诺依曼架构区别,外设寄存器映射方式等。 最后考虑补充时钟配置代码片段,但必须标注"示例性质",因为实际开发要参照具体型号手册。问题生成环节要引导用户深入时钟校准、低功耗模式等实践细节。</think>TC264 是英飞凌(Infineon)Aurix™ 系列中广泛应用的高性能 32 位多核单片机,尤其在汽车电子领域(如发动机控制、底盘、电池管理等)占据重要地位。其架构设计强调高性能、高可靠性和功能安全(符合 ISO 26262 ASIL-D)。 ### 一、核心架构与主频 1. **多核 TriCore™ 架构:** * TC264 通常包含 **3 个独立的 TriCore™ 1.6P 处理器核**(如 TC26x 系列)。 * **主频:** 每个内核的最高运行频率可达 **200 MHz**。这是通过其内部锁相环(PLL)对外部时钟源倍频后达到的。 * **并行处理能力:** 多核设计允许并行执行任务,显著提升计算吞吐量,满足复杂实时控制需求。 * **锁步核(Lockstep Core):** 部分型号(如 TC26xB)的其中一个核(通常是 Core0)会配置一个物理上独立的“影子核”运行相同代码,进行结果比较,实现高等级的功能安全诊断(ASIL-D),检测随机硬件故障。 ### 二、时钟树结构 TC264 的时钟系统复杂且灵活,为不同外设和内核提供精确时钟源。关键组件和路径如下: 1. **外部时钟源:** * **主振荡器(Main Oscillator, OSC):** 通常连接外部 4-20 MHz 晶体或陶瓷谐振器(如 20 MHz),提供高精度主时钟源。 * **备用振荡器(Backup Oscillator, BKO):** 低速(如 100 kHz)内部或外部时钟源,在主振荡器失效时提供基本运行能力,用于安全监控或唤醒。 * **快速外部时钟(fEXT):** 可直接接入外部时钟信号(如来自其他芯片)。 2. **时钟控制单元(SCU - System Control Unit):** * 时钟树的核心控制枢纽。 * 包含 **PLLs(锁相环):** * **PLL0 (PLL_CPU):** 主要为主 CPU 内核(TriCore™)产生高频时钟(如 200 MHz)。输入通常是 OSC 或 fEXT。 * **PLL1 (PLL_PERIPH):** 为外设总线(如 SPI, ASCLIN, GPT12, ADC 等)产生时钟(如 100 MHz, 133 MHz)。输入源类似 PLL0。 * **PLL2 (PLL_EBU):** 为外部总线接口(EBU)产生时钟。 * 包含多个**分频器(Prescalers)**: 对 PLL 输出或直接时钟源进行分频,产生不同频率的时钟域。 * **时钟监控(Clock Monitoring):** 检测时钟源(如 OSC)是否存在故障,触发安全机制(如切换到 BKO)。 3. **主要时钟域:** * **fCPU (CPU Clock):** 内核工作时钟,由 PLL0 输出经分频得到(最高 200 MHz)。 * **fPBA (Peripheral Bridge A Clock):** 高速外设总线时钟,由 PLL1 输出分频得到(如 100 MHz)。连接 GPT12, MSC, DMA, SMU 等。 * **fPBB (Peripheral Bridge B Clock):** 中速外设总线时钟,通常由 fPBA 分频得到(如 50 MHz)。连接 SPI, I2C, ASCLIN, CAN 等。 * **fPBC (Peripheral Bridge C Clock):** 低速外设/监控总线时钟,通常由 fBACK 或 fPBA 分频得到(较低频率)。连接 STM, WDT, SCR, PMU 等。 * **fSPB (Safety Peripheral Bridge Clock):** 安全外设总线时钟,连接与安全强相关的模块(如 GTM 的某些部分)。 * **fGTM (Generic Timer Module Clock):** GTM 模块专用时钟,可由 PLL1 或专用输入(如外部时钟)提供,频率可独立配置。 * **fADC (ADC Clock):** ADC 模块的采样和转换时钟,由专用分频器产生(需满足 ADC 的特定频率范围要求)。 4. **时钟分配路径示例:** ``` OSC (20 MHz) --> SCU (PLL0 x10) --> fPLL0 (200 MHz) --> /1 --> fCPU (200 MHz) | --> SCU (PLL1 x5) --> fPLL1 (100 MHz) --> /1 --> fPBA (100 MHz) | --> /2 --> fPBB (50 MHz) | --> ADC Prescaler --> fADC (e.g., 80 MHz) ``` *配置过程涉及设置 PLL 的倍频因子(N)、分频因子(K1/K2/K3)以及各个时钟域的分频器(如 PBA, PBB, PBC 的分频值)。* ### 三、关键外设接口介绍 TC264 集成了丰富且强大的外设,满足汽车电子苛刻要求: 1. **通用定时器单元(GPT - General Purpose Timer):** * 12 位定时器模块(GPT12),包含多个捕获/比较通道,用于 PWM 生成、输入捕获、输出比较等。挂载在 fPBA 上。 2. **通用定时器模块(GTM - Generic Timer Module):** * TC264 的标志性超强外设,极其复杂灵活。 * 包含大量定时器单元(TOM, TIM, ATOM, MCS, TDU, MAP, DPLL, BRIDGE 等)。 * 支持高精度 PWM(ps 级分辨率)、复杂波形合成、位置解码(编码器接口)、脉冲序列处理、电机控制(FOC)、数字 PLL 等。 * 拥有自己的时钟域(fGTM),可实现与外设总线时钟异步运行。 3. **通信接口:** * **MultiCAN+:** 多个(通常 3+)全功能 CAN 节点(模块),支持 CAN FD(灵活数据速率),具有高带宽和低延迟特性,是汽车网络骨干。 * **ASCLIN (Asynchronous/Synchronous LIN Interface):** 支持 UART (异步), SPI (同步主/从), LIN (主/从) 协议。通常有多个通道。 * **I²C (Inter-Integrated Circuit):** 标准 I²C 接口,用于连接低速传感器、EEPROM 等。 * **SENT (Single Edge Nibble Transmission):** 专用于汽车传感器的高速、单线、单向串行通信协议。 * **PSI5 (Peripheral Sensor Interface 5):** 另一种汽车传感器接口标准。 * **以太网 (Ethernet):** 部分高端型号可能集成 MAC 层,需外接 PHY 芯片。 4. **模数转换器(ADC - Analog-to-Digital Converter):** * 高速、高精度 ADC 模块(如 HSSL - High Speed SAR with S&H and Queue)。 * 通常有多个通道(如 24+ 通道),支持多路复用采样。 * 支持同步采样(与 GTM 联动)。 * 高采样率(如 >1MSPS)。 * 12 位分辨率。 * 有专用的采样保持电路(S&H)和结果队列。 5. **数模转换器(DAC - Digital-to-Analog Converter):** * 部分型号可能集成 DAC,用于模拟量输出。 6. **外部总线接口(EBU - External Bus Unit):** * 用于连接片外存储器(SRAM, NOR Flash)或其他并行接口设备。 * 支持复用/非复用地址数据总线。 * 可配置时序参数。 7. **DMA 控制器(DMA - Direct Memory Access):** * 多个 DMA 通道,用于在外设与内存(Flash, RAM)之间高效传输数据,减轻 CPU 负担。 * 支持分散/聚集传输。 8. **安全与监控外设:** * **看门狗定时器(WDT - Watchdog Timer):** 多个(如 CPU WDT, Safety WDT),用于监控程序执行,防止跑飞。 * **系统定时器(STM - System Timer):** 提供全局时间基准。 * **安全监控单元(SMU - Safety Management Unit):** 集中管理和响应来自各种监控源(时钟监控、电压监控、温度监控、WDT 超时、内存 ECC 错误、外设自检错误等)的警报,触发预定义的安全动作(复位、中断、进入安全状态)。是实现 ASIL-D 的关键。 * **内存保护单元(MPU - Memory Protection Unit):** 限制各核或主控总线对内存区域的访问权限,防止非法访问。 * **内存 ECC (Error Correcting Code):** 对 Flash 和 RAM 提供 ECC 保护,检测并纠正单位错误,检测双位错误,提高数据可靠性。 9. **调试接口:** * **DAP (Debug Access Port):** 基于 JTAG 或 DAPmini 的高速调试接口。 * **Aurix™ Device Access Port (DAP):** 提供对内核、内存和外设的非侵入式调试和跟踪访问。 * **OCDS (On-Chip Debug Support):** 包含 ETM/EDM 等跟踪模块,支持指令和数据跟踪。 ### 总结 TC264 是一款基于高性能多核 TriCore™ 架构(最高 200MHz)的汽车级单片机。其复杂的时钟树(由 SCU 管理,包含多个 PLL 和分频器)为内核和众多外设提供灵活可配的时钟源。它集成了强大的外设,特别是用于复杂定时和控制的 GTM、用于汽车网络的 MultiCAN+ (FD)、高速 ADC、以及为满足 ISO 26262 ASIL-D 要求而设计的丰富安全机制(如锁步核、SMU、ECC、WDT)。这些特性使其成为汽车动力总成、底盘、电池管理系统等高要求应用的首选平台。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啃硬骨头

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值