英飞凌单片机知乎_AURIX学习篇——《英飞凌多核单片机应用技术(AURIX三天入门篇)》-第5章 GTM驱动波形合成...

本次开始第五章学习,GTM与驱动波形合成,GTM部分在电机控制或是传统发动机控制中有着举足轻重的位置,所以此部分为重点章节,但本书仅是大致的罗列了基本概念,如需对GTM部分详细学习,建议参考AURIX手册,进一步学习。继续放出原书链接,有兴趣可自行购买,原书中涵盖调试代码,可自行进行学习。

第五章 GTM与驱动波形合成

5.1 概述

在控制系统中,GTM模块主要用于复杂信号的输出与实时位置检测(对于汽油机而言),在复杂驱动设计中有很重要作用。

对于发动机位置判断驱动需要根据外部转速传感器输出和曲轴和凸轮轴位置信号,通过对上升沿及下降沿的边沿捕捉,进行凸轮轴特殊齿信号判断。并提供复杂信号输出驱动进行喷油和点火提前角的控制信号输出。

5.2 GTM模块结构介绍

GTM模块众多,子模块可配置成不同的组合,形成复杂定时器模块。由于其可扩展性和可配置性,通常该模块成为通用定时器模块。

GTM形成一个通用定时器平台,服务于不同应用程序,根据外部需求,灵活进行配置。

缩写 全称 中文描述

TIM Timer Input Module(24bit/8ch) 定时器输入模块

TOM Timer Output Module(16bit/16ch) 定时器输出模块

ATOM ARU-connected Timer Output Module ARU相连的定时器输出模块

MCS Multi Channel Sequencer(max 100Mhz/8ch) 多通道定序器

PSM Parameter Storage Module 参数存储模块

DPLL Digital PLL Module 数字锁相环模块

CMU Clock Management Unit 时钟管理单元

TBU Time Base Unit 时间基准单元

SPE Sensor Pattern Evaluation 传感器模式分析模块

MON Monitor Unit(Safety) 监测单元

CMP Output Compare Unit(Safety) 输出比较单元

BRC Broadcast Unit 广播单元

MAP TIM0 Input Mapping Module 输入映射模块

ICM Interrupt Concentrator Module 中断聚集模块

GTM的核心组件是高级路由单元(ARU),大多数模块都会连接至该模块,高级路由单元和广播单元/参数存储模块一起形成了GTM的基础部分,高级路由单元可将数据从连接的源子模块传递到连接的目标子模块。出书的数据字大小为53位,可分为三部分:两个24位数据长度通常保存GTM模块的操作寄存器数据,高5位数据长度可以控制信息从源子模块发送至目标子模块。

广播单元能够将数据从一个源模块分发到连接在ARU上的多个目标模块。参数存储包括三个子单元:AFD,F2A,FIFO。参数存储模块可以作为输入数据特征的数据存储或是作为输出数据的参数存储。AFD子单元是FIFO和GTM系统总线接口AEI之间的接口,F2A子单元是FIFO子单元和ARU之间的接口。???

外部信号通过定时器输入模块(TIM)传输至GTM,TIM模块可以过滤输入信号并附加信息,例如每个通道能够测量脉冲高低电平的时间以及PWM信号的周期、占空比信息。(这和DC有什么关系?ADC也采集信息)

时钟管理单元(CMU)为GTM内部提供13种不同频率的时钟信号,对外部硬件可以输出最多三种时钟信号。可以将其视为系统时钟的分频器,在其他子模块内部实现的计数器通常由该子模块驱动。

时间基准单元(TBU)为GTM提供了三个独立的通用时间基准,其中两个基准的来源可以配置为数字锁相环模块(DPLL)。

信号输出由定时器输出模块(TOM)和ARU相连的定时器输出模块(ATOM)产生,每个TOM通道能够在其输出端产生一个PWM信号,而且每个TOM子模块联合TIM模块及传感器模式评估模块(SPE),实现无刷直流电动机的驱动。ATOM模块在不需要CPU干预的情况下生成复杂的输出信号,这以功能可通过ARU相连的PSM模块或是MCS模块实现。

输出比较单元(CMP)和监测单元(MON)用来实现与安全相关的功能。

GTM的子模块中具有大量的中断源,可以通过中断聚集模块(ICM)进行分组和集中,以形成更加容易管理的一组中断。

5.3 时钟模块

GTM中,MAP、DPLL、CMU、TBU四个子单元参与整个GTM时钟和时基管理。

5.3.1 时钟管理单元

时钟管理单元(CMU)负责GTM的时钟生成,包括三个子单元:外部时钟生成单元(EGU)、可配置时钟生成单元(CFGU)、固定时钟生成单元(FXU)。

可配置时钟(CFGU)为GTM子模块TIM、ATOM、TBU和MON提供八个专用时钟源。固定时钟生成(FXU)子单元为TOM和MON生成预定义的不可配置时钟,时钟分频因子固定为20,24,28,212,216。外部时钟生成(EGU)子单元能够生成多达三个GTM外部时钟信号。

5.3.2 时间基准单元

时间基准单元(TBU)为GTM提供时间基准,以通道作为最小工作单位,其中通道数量和芯片的型号有关,最多有三个通道。时间基准通道可以独立运行,并通过全局通道使能寄存器中的控制位同步使能与禁止。

通过独立时间基准通道的配置,每个TBU通道可以选择来自CMU子模块中的一路。

DPLL倍频功能。

5.3.3 数字锁相环模块

数字锁相环(DPLL)主要用于信号的倍频。目的是在具有快速变化输入频率的情况下获得更高的位置信息精度。对于发动机系统来说,DPLL可以产生一个取决于曲轴的微齿信号,一个取决于凸轮轴的微齿信号。两个信号批次之间存在着某种关系。DPLL内部执行很多的计算,需要大量的局部变量,局部变量的寄存器存在于RAM内部,因此DPLL需要在计算过程中访问RAM。

有几个信号传输至DPLL,就有几个独立的数据传输路径和ALU子单元。局部变量、动作参数和系统特征位于三个独立的RAM模块中。

1.RAM1a:保存动作计算所需要的数据

2.RAM1bc:保存局部变量和凸轮轴信号特征的数据

3.RAM2:保存曲轴输入信号特征的数据。

当用于发动机管理应用时,DPLL可以在两种不同的模式下运行:正常模式和紧急模式。

5.4 GTM输入模块

定时器模块(TIM)主要为GTM提供输入信号,并具有滤波功能,TIM有先进的数据处理能力,能够通过ARU连接到其他的模块,传递信号。TIM能够在信号的上升沿和下降沿打时间戳,测量波形的频率(周期)和占空比。

每个TIM模块有8个通道,每个通道和滤波器相连。输入信号需要与GTM内部的时钟模块进行同步,故GTM获得的输入信号会延迟2个时钟周期。输入信号经过滤波进入TIM模块的某个通道,然后经过ARU模块,最终达到GTM的其他模块。

5.4.1 TIM通道

每个TIM通道由输入边沿计数器(ECNT)、带计数器的信号测量单元(SMU)、计数器影子寄存器(CNTS)和2个数据寄存器(GPR0和GPR1)组成。外部信号经过滤波产生了三个输出:REDGE_DET和FEDGE_DET,其分别用于记录上升沿和下降沿,F_OUT是外部信号经过滤波后的结果。

5.4.2 测量模式

1.PWM测量模式

测量输入信号PWM的占空比和周期。DSL定义PWM信号的极性,即低电平为主还是高电平为主。DSL为1时,高电平为高优先级,通道在检测到上升沿时开始测量,计数器开始计数,知道检测到下降沿;计数器的值保存至影子寄存器CNTS中,计数器继续计数,直到下一个上升沿;下一个上升沿到来时,CNTS寄存器的值就会保存至GPR0,CNT寄存器的值会保存至GPR1。GPR0就记录了占空比的长度,GPR1就记录了信号的周期,通过GPR0和GPR1的数值,结合时钟源的信息就可计算出PWM信号的周期和占空比。

2.脉冲计时模式

主要用于测量高电平脉冲或是低电平脉冲的持续时间。计数器CNT以CMU模块的输出频率工作,当外部信号的电平与配置的测量电平相同时,CNT开始累加;当电平与配置的测量电平相反的时候、CNT停止累加。当计数器停止时,寄存器CNTS、GPR0和GPR1中的值将会更新。当ARU_EN位使能时,寄存器GPR0和GPR1的测量结果发送到ARU模块中。

3.边沿检测模式

该模式主要用于检测信号的上升沿和下降沿。

5.4.3 TIM中断类型

TIM每个通道提供6种中断的类型

5.4.4 TIM主要寄存器

GTM中有4个TIM模块,每个TIM模块含有8路通道,为实现每一路通道的独立设计,涉及通道控制寄存器GTM_TIMi_CHx_CTRL

5.5 GTM输出模块

5.5.1 ATOM基本结构

ATOM是连接至ARU的定时器输出模块,在没有CPU干预的情况下,能够产生复杂的输出信号。经典应用是MCS、DPLL、或是PSM模块位ATOM提供输出信号,每个ATOM模块有8个相互独立的输出通道。

每个ATOM通道提供4种工作模式。

ATOM通道操作寄存器位24位宽度,时钟来自于子模块CMU的信号,能够自由选择ATOM通道计数器的时钟频率。ATOM能够通过对寄存器的值进行移位,输出串行信号。如果配置成为SOMS模式,则CMU的时钟决定了移位的频率。

每个ATOM通道提供一个操作寄存器集合和影子寄存器集合。在该架构下,ATOM通道工作于操作寄存器集合下,影子寄存器集合作为重载值,被CPU或是ARU更新。

当选择通过ARU更新时,可以配置在SOMP模式下,选择影子寄存器是否通过ARU更新或是只有一个影子寄存器通过ARU更新。

当ATOM内部比较单元一个或全部被使用时,影子寄存器能够用于向ARU提供数据,该功能只能在SOMC模式下。

ATOM连接到了ARU,但CPU可以通过AEI接口向ATOM通道的影子寄存器写值。影子寄存器是ARU到通道操作寄存器之间的一个缓冲,因此PWM信号的一个新参数能够经股票ARU重载入影子寄存器,操作寄存器按实际参数工作。

5.5.2 ATOM工作原理

分为四种:

1.SOMI

2.SOMC:这种模式下信号的输出依赖于关键寄存器的比较策略。通道内部结构包括两个比较单元:CCU0和CCU1。CCU0模块中,以时间基准单元(TBU)输出的时钟戳(TBU_TS0)进行比较,值大于或等于CM0时,CCU0会触发SOU,产生输出信号。CCU1中,以时间基准单元TBU输出的时间戳(TBU_TS1/2)进行比较,当其值大于或等于CM1时,CCU1会触发SOU,产生输出信号。TBU_TS0和TBU_TS1分别来自于倍频的自然时钟和角度时钟,因此通过合理的比较策略可以实现角度出发时间结束,角度触发角度结束,时间触发时间结束,时间触发角度结束等多种信号输出组合,发顶级控制应用中很灵活。

3.SOMP:该模式下ATOM通道可以输出周期和占空比灵活可变的脉冲调制信号。通过比较寄存器和内部计数器的值,ATOM通道可以产生简单和复杂的PWM输出。脉宽调制中,CM0和CM1分别控制可输出信号的周期和占空比参数,同时SL位影响输出电平。

4.SOMS:ATOM通道能够根据移位寄存器的值,产生一个串行信号,移位数量和移位方向可配置,移位时钟由CMU模块的时钟决定。

5.5.3 ATOM主要寄存器

GTM中共有5个ATOM模块,每个ATOM模块有8路通道,为实现每一路通道独立的控制,有通道控制寄存器。

5.5.4 TOM基本结构

TOM时GTM主要的输出模块,和ATOM的SOMC工作模式类似,可输出周期和占空比可调的脉宽调制信号。TOM模块包括16路独立的通道,可由全局通道控制单元(TOM Global Channel Control,TGC)实现通道的使能和禁止,及每个通道对应周期和占空比寄存器的更新。时钟管理单元(CMU)为每一个通道提供5种固定频率的时钟源,用于脉宽调制信号的技术频次。

5.5.5 TOM工作原理

AURIX 7系单片机有3个TOM子模块,每个模块有16路可对立配置的通道。主要包括三个组件:比较单元0(CCU0)、比较单元1(CCU1)和信号输出单元(SOU)。比较单元0涉及有一个计数器CN0,该计数器以时钟管理单元(CMU)输出的时钟频率进行累加。计数器CN0可进行复位策略的控制,即是否在CN0与CM0数值相等时将CN0置0,当计数器CN0大于或等于CM0时,CCU0会触发SOU。

比较单元1与0有相同的CN0,与CM1进行比较。如CN0大于或等于CM1,CCU1同样会触发SOU。

5.5.6 TOM主要寄存器

5.7 复杂驱动设计概述

以发动机控制为例,GTM模块主要承担发动机位置判断和复杂信号输出两个任务。复杂驱动设计中起着至关重要的作用。发动机位置判断需要依据外部曲轴和凸轮轴位置的信号,通过DPLL模块中的两个中断源TAS和SAS分别捕捉有效沿(上升沿或是下降沿),在中断服务程序中进行判断。发动机正常运转需要GTM模块在制定曲轴转角输出一定时常的喷油驱动,需要ATOM模块的支持。外部同步信号经过TIM进入GTM内,经过MAP模块映射进入DPLL用于倍频的微齿信号,传递至CMU模块,由CMU模块同意输出自然时钟信号和角度时钟信号至TBU,最终在ATOM模块中选择TBU模块通道实现基于角度始终系统的喷油起始和基于自然时钟系统的喷油持续期。

你可能感兴趣的:(英飞凌单片机知乎)