|
汽车零部件采购、销售通信录 填写你的培训需求,我们帮你找 招募汽车专业培训老师
一、GTM概述
图1.GTM体系结构图
通用定时器GTM模块包括时钟管理单元CMU,公共时基单元TBU,定时器输入模块TIM,定时器输出模块TOM,以及死区时间模块DTM。各个子模块都有不同的功能,而且这些子模块可以以一种可配置的方式组合在一起,形成一个复杂的计时器模块,为不同的应用程序域和一个应用程序域中的不同类服务。
信号通过定时器输入模块 (TIM) 传输到 GTM。 这些模块能够过滤输入信号并注释附加信息。 例如,每个通道都能够并行测量脉冲高电平或低电平时间以及 PWM 信号的周期。 TIM 子模块的内部操作寄存器为 24 位宽。
时钟管理单元 (CMU) 为 GTM 提供多达 13 个不同的时钟【8个固定时钟,5个固定的时钟信号】和多达三个外部时钟引脚 GTM_ECLK0…2。 它充当系统时钟的时钟分频器。 在其他子模块中实现的计数器通常由该子模块驱动。 请注意,当整个系统使用 GTM 全局时钟 SYS_CLK 运行时,CMU 时钟作为计数器的使能信号实现。 该全局时钟通常对应于 GTM 所连接的微控制器总线时钟。
TBU 为 GTM 提供最多三个独立的公共时基,用于协调和同步各个子模块。
信号输出 由 死区模块 (DTM) 和定时器输出模块 (TOM) 生成。定时器输出模块TOM用于产生多路可配置周期和占空比的PWM信号,此外,可使用此模块产生PWM波对三相电机进行控制,支持多个PWM信号中心对齐的功能。死区时间DTM模块用于在同一桥臂上的上桥PWM信号和下桥PWM信号之间加载死区时间,避免了上下桥同时导通,导致大电流经过MOSFET,超出了MOSFET的电流安全极限,进而产生击穿MOSFET的结果。
由于集成了影子寄存器,甚至可以通过为 CPU 提供参数来使用 TOM 通道生成复杂的 PWM 输出。 可以通过 TOM(x)_CH(15) 和 TOM(x+1)_CH(0) 之间的触发线触发后续 TOM 子模块的 TOM 通道。 但是为了避免长触发路径,触发信号被寄存在 TOM 子模块输出,导致触发信号的一个 SYS_CLK 周期延迟。
在所描述的实现中,GTM 的子模块具有大量不同的中断源。 这些中断源由中断集中器模块 (ICM) 分组和集中,以形成一个更容易管理的中断群,这些中断在 GTM 之外可见。
在 GTM 顶层有一些可配置的信号连接,从 DTM 模块的信号输出到 TIM 模块的输入信号。
数据路由与存储
ARU与广播(BRC)和参数存储模块(PSM)一起组成GTM的路由与存储基础设施部分。
ARU( Advanced Routing Unit )
ARU即高级路由单元是GTM的核心组件,大多数子模块位于该单元周围并与之相连。 高级路由单元(ARU)是一个灵活的基础设施组件,能够将数据从已连接的源子模块路由到已连接的目标子模块,在GTM核心的几个子模块之间以可配置的方式传输53位宽的数据(5个控制位和2个24位值)。
在连接ARU接受ARU数据的通道中,路由是以一种采用轮询调度的方案并且具有最坏情况下的往返时间的确定性的方式完成。
Broadcast Module (BRC)
由于GTM每一个子模块通道的写地址都能写入ARU且只能被单个模块读取,因此ARU不可能同时向不同的模块提供数据流。为了解决常规模块的这个问题,子模块Broadcast (BRC)允许多次复制数据流。BRC能够将数据从一个源模块分发到多个连接到ARU的目标模块。
**BRC子模块提供12个输入通道和22个输出通道。**为了克隆一个输入数据流,可以将相应的输入通道映射为零个或多个输出通道。输入通道可以读取任意的ARU地址位置,输出通道将广播数据提供给固定的ARU写地址位置。
Parameter Storage Module(PSM)
**PSM子模块由三个子单元组成:AEI-to-FIFO数据接口(AFD)、FIFO-to-ARU接口(F2A)和FIFO本身。PSM可以用作传入数据特征的数据存储器,也可以用作传出数据的参数存储器。**该数据存储在逻辑上位于FIFO子单元内部的RAM中。
First In First Out Module (FIFO)
FIFO单元是FIFO子模块的存储部分,每个FIFO单元嵌入8个逻辑FIFO。每个逻辑FIFO表示GTM子模块和连接到AFD子模块的微控制器之间的数据流。FIFO RAM计数1K个单词,其中单词大小为29位。这样就可以自由地编程或接收24位数据以及一个ARU数据字内的5个控制位。
AEI-to-FIFO Data Interface (AFD)
AFD子模块实现AEI总线和FIFO子模块之间的数据接口,该接口由8个逻辑FIFO通道组成。AFD子模块提供一个缓冲区寄存器,专用于FIFO的逻辑通道。
FIFO to ARU Unit (F2A)
F2A是ARU和FIFO子模块之间的接口。由于ARU的数据宽度是53位(两个24位值和5个控制位),而FIFO的数据宽度只有29位,F2A必须以可配置的方式将数据从FIFO通道分发到FIFO通道。FIFO和ARU之间的数据传输由8个不同的数据流组织起来,这些流连接到相应的FIFO模块的8个不同的通道。
如下为数据流在ARU、F2A和FIFO的一种数据流通构图:
时钟和时间基准管理 GTM Clock and Time Base Management (CTBM)
在GTM内部,有几个子单元参与整个GTM的时钟和时基管理,他们分别是MAP、DPLL、CMU、TBU。
如下图为CTBM的结构框图:
Clock Management Unit (CMU)
CTBM的一个重要模块是时钟管理单元(CMU),时钟管理单元(CMU)负责生成计数器和GTM的时钟。CMU由三个子单元组成,它们为整个GTM产生不同的时钟源。它为GTM的子模块产生多达14个时钟,以及多达3个GTM外部时钟CMU_ECLK[z] (z: 0…2)。5个CMU_FXCLK[y] (y: 0…4)时钟被TOM子模块用于产生PWM。
CMU由三个字模块组成,分别为EGU、CFGU和FXU。
CMU结构框图如下所示:
Configurable Clock Generation sub-unit(CFGU)
CFGU即可配置时钟生成子单元为以下GTM模块提供了8个专用时钟源:TIM、ATOM、TBU和MON。该模块的每个实例可以选择任意的时钟源,以指定广泛的时间基准。
Fixed Clock Generation sub-unit (FXU)
固定时钟生成(FXU)子单元为TOM模块和MON模块生成预定义的不可配置时钟,时钟分频因子固定为20,24,28,212,216。
External Clock Generation sub-unit (EGU)
外部时钟产生(EGU)子单元能够产生多达三个芯片外部时钟信号。外部时钟生成(EGU)子单元能够生成CMU_CLK8时钟来为模块CCM管理2个时钟域。
Time Base Unit (TBU)
时间基准单元TBU为GTM提供常用的时间基准。在TBU内部有多达四个通道,每个通道使用一个CMU_CLK[x] (x: 0…7)时钟来为GTM生成一个公共的时间基准。TBU子模块产生TBU_TS0、TBU_TS1和TBU_TS2三个时基信号,这三个信号是GTM内部广泛使用的常用时基信号,用于信号的表征和生成。
时间基值在TBU时间基通道内以两种独立和一种依赖的操作模式生成。
1. Free Running Counter Mode(自由运行计数器模式)
TBU通道0以自由运行计数器模式提供27位计数器,TBU通道1和2在空闲运行计数器模式下提供24位计数器。
2. Forward/Backward Counter Mode(向前/向后计数模式)
TBU通道1和2提供了一个24位的向前/向后计数器.
3. Modulo Counter Mode(按模计数器模式)(依赖模式)
TBU通道3提供24位正向/反向按模的计数器。
TIM0 Input Mapping Module (MAP)
MAP子模块通过计算子模块TIM0通道0到5通道的输出信号,**为子模块DPLL生成两个输入信号TRIGGER和STATE。**通过使用TIM作为输入子模块,可以在TIM通道内部对输入信号进行滤波。
Digital PLL Module (DPLL)
数字锁相环(DPLL)子模块用于倍频。该模块的目的是在输入频率快速变化的应用中获得更高精度的位置或值信息通过DPLL, CPU的负载可以从本质上减少重复或周期性的标准任务。其输入有两个信号TRIGGER和STATE,它们处理周期性事件。两个输入信号TRIGGER和STATE可以是来自同一设备的传感器信号,也可以是来自两个独立设备的传感器信号。当它们来自同一个设备时,TRIGGER输入通常是一个更频繁的信号,而STATE是一个频率较低的信号。
当用于发动机管理应用时,DPLL可以在两种不同的模式下运行:正常模式和紧急模式。
GTM输入输出模块
GTM输入输出主要有三个子模块TIM、TOM和ATOM。
Timer Input Module (TIM)
**Timer Input Module (TIM)负责过滤和捕获GTM的输入信号。**在TIM通道内可以测量输入信号的几种特性。对于高级数据处理,可以将检测到的TIM模块输入特征通过ARU路由到GTM的后续处理单元。
每个TIM通道由一个输入边计数器ECNT、一个带计数器CNT的信号测量单元(SMU)、一个用于SMU计数器的计数器阴影寄存器CNTS和两个用于值存储的通用寄存器GPR0和GPR1组成。
上图概述了子单元的通道内部连接。下面列出了具有主要功能的子单元:
INPUT_SRCx:选择信号以由过滤器单元处理FLTx
FLTx:过滤器单元,提供了多种不同的过滤器机制。
TDUx:超时(在指定时间内没有检测到后续的边缘)检测单元
TIM_CHx:测量单元,本地中断控制器(使能,状态…)
EXT_CAP_SRCx:选择某些函数需要的本地信号
测量模式:
TIM提供了七种不同的测量模式,可以配置寄存器TIM_CH[x]_CTRL的位字段TIM_MODE。
TIMPWM测量模式:在TIM PWM测量模式中,TIM通道测量输入PWM信号的占空比和周期。DSL位定义了被测量PWM信号的极性。
TIM脉冲集成模式:在TIM脉冲积分模式中,每个TIM通道都能够测量输入信号上脉冲高或低时间的总和,这取决于寄存器TIM_CH[x]_CTRL寄存器所选的信号电平位DSL。
TIM输入事件模式:在TIM输入事件模式下,TIM通道可以计数边缘。
TIM输入预分频模式
TIM位压缩模式:TIM位压缩模式可用于将TIM子模块的所有滤波输入信号组合成一个并行的m位数据字,该数据字可路由到ARU,其中m为TIM子模块的可用信道数。
TIM门控周期采样模式
TIM串行切换模式
Timer Output Module (TOM)
**定时器输出模块(TOM)提供多达16个独立通道(索引x),在每个输出脚TOM_CH[x]_OUT产生简单的PWM信号。**此外,在TOM输出TOM_CH15_OUT可以产生脉冲计数调制信号。
存在两个全局通道控制单元(TGC0和TGC1),通过外部或内部事件同步地驱动多个单独的TOM通道。每个TGC[y]可以驱动多达8个TOM通道,其中TGC0控制TOM通道0到7,TGC1控制TOM通道8到15。
每一个单独的TOM通道包括一个计数器比较单元0 (CCU0),它包含计数器寄存器CN0和周期寄存器CM0,计数器比较单元1 (CCU1)包含占空比寄存器CM1和信号输出产生单元SOU (SOU)包含输出寄存器SOUR。
ARU-connected Timer Output Module (ATOM)
ARU连接的定时器输出模块ATOM (Timer Output Module)由于与ARU连接,可以在不与CPU交互的情况下产生复杂的输出信号。每个ATOM子模块包含8个输出通道,可以在几种可配置的操作模式下独立运行。
每个ATOM通道提供五种操作模式:
ATOM立即输出模式(SOMI)
ATOM输出模式比较(SOMC)
ATOM PWM输出模式(SOMP)
ATOM串行输出模式(SOMS)
ATOM缓冲比较输出模式(SOMB)
SOMI
在ATOM信号输出模式立即(SOMI)中,ATOM通道在链路上产生输出信号在寄存器ATOM_CH[x]_STAT的位ACBI(0)更新后,立即使用ATOM_CH[x]_OUT输出端口。
SOMC
在ATOM信号输出模式比较(SOMC)中,输出动作的执行依赖于位于CM0和/或CM1寄存器中的输入值与两个(三个)时间基值TBU_TS0或之间的比较。
SOMP
在ATOM信号输出模式PWM (SOMP)中,ATOM子模块通道能够产生不同占空比和周期的复杂PWM信号。占空比和周期可以同步和异步更改。
SOMS
在ATOM信号输出模式串行(SOMS)中,ATOM通道能够根据移位寄存器的值,产生一个串行信号,移位数量和移位方向可配置,移位时钟由CMU模块的时钟决定。
SOMB
在ATOM信号输出模式缓冲比较(SOMB)中,输出动作是根据位于CM0和/或CM1寄存器中的输入值和两个(三个)时间基值的比较结果执行的TBU_TS0或TBU_TS1(或TBU_TS2)由TBU提供。
————————————————
版权声明:本文为CSDN博主「君丿莫悔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_45212020/article/details/125345763数据路由与存储
ARU与广播(BRC)和参数存储模块(PSM)一起组成GTM的路由与存储基础设施部分。
ARU( Advanced Routing Unit )
ARU即高级路由单元是GTM的核心组件,大多数子模块位于该单元周围并与之相连。 高级路由单元(ARU)是一个灵活的基础设施组件,能够将数据从已连接的源子模块路由到已连接的目标子模块,在GTM核心的几个子模块之间以可配置的方式传输53位宽的数据(5个控制位和2个24位值)。
在连接ARU接受ARU数据的通道中,路由是以一种采用轮询调度的方案并且具有最坏情况下的往返时间的确定性的方式完成。
Broadcast Module (BRC)
由于GTM每一个子模块通道的写地址都能写入ARU且只能被单个模块读取,因此ARU不可能同时向不同的模块提供数据流。为了解决常规模块的这个问题,子模块Broadcast (BRC)允许多次复制数据流。BRC能够将数据从一个源模块分发到多个连接到ARU的目标模块。
**BRC子模块提供12个输入通道和22个输出通道。**为了克隆一个输入数据流,可以将相应的输入通道映射为零个或多个输出通道。输入通道可以读取任意的ARU地址位置,输出通道将广播数据提供给固定的ARU写地址位置。
Parameter Storage Module(PSM)
**PSM子模块由三个子单元组成:AEI-to-FIFO数据接口(AFD)、FIFO-to-ARU接口(F2A)和FIFO本身。PSM可以用作传入数据特征的数据存储器,也可以用作传出数据的参数存储器。**该数据存储在逻辑上位于FIFO子单元内部的RAM中。
First In First Out Module (FIFO)
FIFO单元是FIFO子模块的存储部分,每个FIFO单元嵌入8个逻辑FIFO。每个逻辑FIFO表示GTM子模块和连接到AFD子模块的微控制器之间的数据流。FIFO RAM计数1K个单词,其中单词大小为29位。这样就可以自由地编程或接收24位数据以及一个ARU数据字内的5个控制位。
AEI-to-FIFO Data Interface (AFD)
AFD子模块实现AEI总线和FIFO子模块之间的数据接口,该接口由8个逻辑FIFO通道组成。AFD子模块提供一个缓冲区寄存器,专用于FIFO的逻辑通道。
FIFO to ARU Unit (F2A)
F2A是ARU和FIFO子模块之间的接口。由于ARU的数据宽度是53位(两个24位值和5个控制位),而FIFO的数据宽度只有29位,F2A必须以可配置的方式将数据从FIFO通道分发到FIFO通道。FIFO和ARU之间的数据传输由8个不同的数据流组织起来,这些流连接到相应的FIFO模块的8个不同的通道。
如下为数据流在ARU、F2A和FIFO的一种数据流通构图:
时钟和时间基准管理 GTM Clock and Time Base Management (CTBM)
在GTM内部,有几个子单元参与整个GTM的时钟和时基管理,他们分别是MAP、DPLL、CMU、TBU。
如下图为CTBM的结构框图:
Clock Management Unit (CMU)
CTBM的一个重要模块是时钟管理单元(CMU),时钟管理单元(CMU)负责生成计数器和GTM的时钟。CMU由三个子单元组成,它们为整个GTM产生不同的时钟源。它为GTM的子模块产生多达14个时钟,以及多达3个GTM外部时钟CMU_ECLK[z] (z: 0…2)。5个CMU_FXCLK[y] (y: 0…4)时钟被TOM子模块用于产生PWM。
CMU由三个字模块组成,分别为EGU、CFGU和FXU。
CMU结构框图如下所示:
Configurable Clock Generation sub-unit(CFGU)
CFGU即可配置时钟生成子单元为以下GTM模块提供了8个专用时钟源:TIM、ATOM、TBU和MON。该模块的每个实例可以选择任意的时钟源,以指定广泛的时间基准。
Fixed Clock Generation sub-unit (FXU)
固定时钟生成(FXU)子单元为TOM模块和MON模块生成预定义的不可配置时钟,时钟分频因子固定为20,24,28,212,216。
External Clock Generation sub-unit (EGU)
外部时钟产生(EGU)子单元能够产生多达三个芯片外部时钟信号。外部时钟生成(EGU)子单元能够生成CMU_CLK8时钟来为模块CCM管理2个时钟域。
Time Base Unit (TBU)
时间基准单元TBU为GTM提供常用的时间基准。在TBU内部有多达四个通道,每个通道使用一个CMU_CLK[x] (x: 0…7)时钟来为GTM生成一个公共的时间基准。TBU子模块产生TBU_TS0、TBU_TS1和TBU_TS2三个时基信号,这三个信号是GTM内部广泛使用的常用时基信号,用于信号的表征和生成。
时间基值在TBU时间基通道内以两种独立和一种依赖的操作模式生成。
1. Free Running Counter Mode(自由运行计数器模式)
TBU通道0以自由运行计数器模式提供27位计数器,TBU通道1和2在空闲运行计数器模式下提供24位计数器。
2. Forward/Backward Counter Mode(向前/向后计数模式)
TBU通道1和2提供了一个24位的向前/向后计数器.
3. Modulo Counter Mode(按模计数器模式)(依赖模式)
TBU通道3提供24位正向/反向按模的计数器。
TIM0 Input Mapping Module (MAP)
MAP子模块通过计算子模块TIM0通道0到5通道的输出信号,**为子模块DPLL生成两个输入信号TRIGGER和STATE。**通过使用TIM作为输入子模块,可以在TIM通道内部对输入信号进行滤波。
Digital PLL Module (DPLL)
数字锁相环(DPLL)子模块用于倍频。该模块的目的是在输入频率快速变化的应用中获得更高精度的位置或值信息通过DPLL, CPU的负载可以从本质上减少重复或周期性的标准任务。其输入有两个信号TRIGGER和STATE,它们处理周期性事件。两个输入信号TRIGGER和STATE可以是来自同一设备的传感器信号,也可以是来自两个独立设备的传感器信号。当它们来自同一个设备时,TRIGGER输入通常是一个更频繁的信号,而STATE是一个频率较低的信号。
当用于发动机管理应用时,DPLL可以在两种不同的模式下运行:正常模式和紧急模式。
GTM输入输出模块
GTM输入输出主要有三个子模块TIM、TOM和ATOM。
Timer Input Module (TIM)
**Timer Input Module (TIM)负责过滤和捕获GTM的输入信号。**在TIM通道内可以测量输入信号的几种特性。对于高级数据处理,可以将检测到的TIM模块输入特征通过ARU路由到GTM的后续处理单元。
每个TIM通道由一个输入边计数器ECNT、一个带计数器CNT的信号测量单元(SMU)、一个用于SMU计数器的计数器阴影寄存器CNTS和两个用于值存储的通用寄存器GPR0和GPR1组成。
上图概述了子单元的通道内部连接。下面列出了具有主要功能的子单元:
INPUT_SRCx:选择信号以由过滤器单元处理FLTx
FLTx:过滤器单元,提供了多种不同的过滤器机制。
TDUx:超时(在指定时间内没有检测到后续的边缘)检测单元
TIM_CHx:测量单元,本地中断控制器(使能,状态…)
EXT_CAP_SRCx:选择某些函数需要的本地信号
测量模式:
TIM提供了七种不同的测量模式,可以配置寄存器TIM_CH[x]_CTRL的位字段TIM_MODE。
TIMPWM测量模式:在TIM PWM测量模式中,TIM通道测量输入PWM信号的占空比和周期。DSL位定义了被测量PWM信号的极性。
TIM脉冲集成模式:在TIM脉冲积分模式中,每个TIM通道都能够测量输入信号上脉冲高或低时间的总和,这取决于寄存器TIM_CH[x]_CTRL寄存器所选的信号电平位DSL。
TIM输入事件模式:在TIM输入事件模式下,TIM通道可以计数边缘。
TIM输入预分频模式
TIM位压缩模式:TIM位压缩模式可用于将TIM子模块的所有滤波输入信号组合成一个并行的m位数据字,该数据字可路由到ARU,其中m为TIM子模块的可用信道数。
TIM门控周期采样模式
TIM串行切换模式
Timer Output Module (TOM)
**定时器输出模块(TOM)提供多达16个独立通道(索引x),在每个输出脚TOM_CH[x]_OUT产生简单的PWM信号。**此外,在TOM输出TOM_CH15_OUT可以产生脉冲计数调制信号。
存在两个全局通道控制单元(TGC0和TGC1),通过外部或内部事件同步地驱动多个单独的TOM通道。每个TGC[y]可以驱动多达8个TOM通道,其中TGC0控制TOM通道0到7,TGC1控制TOM通道8到15。
每一个单独的TOM通道包括一个计数器比较单元0 (CCU0),它包含计数器寄存器CN0和周期寄存器CM0,计数器比较单元1 (CCU1)包含占空比寄存器CM1和信号输出产生单元SOU (SOU)包含输出寄存器SOUR。
ARU-connected Timer Output Module (ATOM)
ARU连接的定时器输出模块ATOM (Timer Output Module)由于与ARU连接,可以在不与CPU交互的情况下产生复杂的输出信号。每个ATOM子模块包含8个输出通道,可以在几种可配置的操作模式下独立运行。
每个ATOM通道提供五种操作模式:
ATOM立即输出模式(SOMI)
ATOM输出模式比较(SOMC)
ATOM PWM输出模式(SOMP)
ATOM串行输出模式(SOMS)
ATOM缓冲比较输出模式(SOMB)
SOMI
在ATOM信号输出模式立即(SOMI)中,ATOM通道在链路上产生输出信号在寄存器ATOM_CH[x]_STAT的位ACBI(0)更新后,立即使用ATOM_CH[x]_OUT输出端口。
SOMC
在ATOM信号输出模式比较(SOMC)中,输出动作的执行依赖于位于CM0和/或CM1寄存器中的输入值与两个(三个)时间基值TBU_TS0或之间的比较。
SOMP
在ATOM信号输出模式PWM (SOMP)中,ATOM子模块通道能够产生不同占空比和周期的复杂PWM信号。占空比和周期可以同步和异步更改。
SOMS
在ATOM信号输出模式串行(SOMS)中,ATOM通道能够根据移位寄存器的值,产生一个串行信号,移位数量和移位方向可配置,移位时钟由CMU模块的时钟决定。
SOMB
在ATOM信号输出模式缓冲比较(SOMB)中,输出动作是根据位于CM0和/或CM1寄存器中的输入值和两个(三个)时间基值的比较结果执行的TBU_TS0或TBU_TS1(或TBU_TS2)由TBU提供。
————————————————
版权声明:本文为CSDN博主「君丿莫悔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_45212020/article/details/125345763数据路由与存储
ARU与广播(BRC)和参数存储模块(PSM)一起组成GTM的路由与存储基础设施部分。
ARU( Advanced Routing Unit )
ARU即高级路由单元是GTM的核心组件,大多数子模块位于该单元周围并与之相连。 高级路由单元(ARU)是一个灵活的基础设施组件,能够将数据从已连接的源子模块路由到已连接的目标子模块,在GTM核心的几个子模块之间以可配置的方式传输53位宽的数据(5个控制位和2个24位值)。
在连接ARU接受ARU数据的通道中,路由是以一种采用轮询调度的方案并且具有最坏情况下的往返时间的确定性的方式完成。
Broadcast Module (BRC)
由于GTM每一个子模块通道的写地址都能写入ARU且只能被单个模块读取,因此ARU不可能同时向不同的模块提供数据流。为了解决常规模块的这个问题,子模块Broadcast (BRC)允许多次复制数据流。BRC能够将数据从一个源模块分发到多个连接到ARU的目标模块。
**BRC子模块提供12个输入通道和22个输出通道。**为了克隆一个输入数据流,可以将相应的输入通道映射为零个或多个输出通道。输入通道可以读取任意的ARU地址位置,输出通道将广播数据提供给固定的ARU写地址位置。
Parameter Storage Module(PSM)
**PSM子模块由三个子单元组成:AEI-to-FIFO数据接口(AFD)、FIFO-to-ARU接口(F2A)和FIFO本身。PSM可以用作传入数据特征的数据存储器,也可以用作传出数据的参数存储器。**该数据存储在逻辑上位于FIFO子单元内部的RAM中。
First In First Out Module (FIFO)
FIFO单元是FIFO子模块的存储部分,每个FIFO单元嵌入8个逻辑FIFO。每个逻辑FIFO表示GTM子模块和连接到AFD子模块的微控制器之间的数据流。FIFO RAM计数1K个单词,其中单词大小为29位。这样就可以自由地编程或接收24位数据以及一个ARU数据字内的5个控制位。
AEI-to-FIFO Data Interface (AFD)
AFD子模块实现AEI总线和FIFO子模块之间的数据接口,该接口由8个逻辑FIFO通道组成。AFD子模块提供一个缓冲区寄存器,专用于FIFO的逻辑通道。
FIFO to ARU Unit (F2A)
F2A是ARU和FIFO子模块之间的接口。由于ARU的数据宽度是53位(两个24位值和5个控制位),而FIFO的数据宽度只有29位,F2A必须以可配置的方式将数据从FIFO通道分发到FIFO通道。FIFO和ARU之间的数据传输由8个不同的数据流组织起来,这些流连接到相应的FIFO模块的8个不同的通道。
如下为数据流在ARU、F2A和FIFO的一种数据流通构图:
时钟和时间基准管理 GTM Clock and Time Base Management (CTBM)
在GTM内部,有几个子单元参与整个GTM的时钟和时基管理,他们分别是MAP、DPLL、CMU、TBU。
如下图为CTBM的结构框图:
Clock Management Unit (CMU)
CTBM的一个重要模块是时钟管理单元(CMU),时钟管理单元(CMU)负责生成计数器和GTM的时钟。CMU由三个子单元组成,它们为整个GTM产生不同的时钟源。它为GTM的子模块产生多达14个时钟,以及多达3个GTM外部时钟CMU_ECLK[z] (z: 0…2)。5个CMU_FXCLK[y] (y: 0…4)时钟被TOM子模块用于产生PWM。
CMU由三个字模块组成,分别为EGU、CFGU和FXU。
CMU结构框图如下所示:
Configurable Clock Generation sub-unit(CFGU)
CFGU即可配置时钟生成子单元为以下GTM模块提供了8个专用时钟源:TIM、ATOM、TBU和MON。该模块的每个实例可以选择任意的时钟源,以指定广泛的时间基准。
Fixed Clock Generation sub-unit (FXU)
固定时钟生成(FXU)子单元为TOM模块和MON模块生成预定义的不可配置时钟,时钟分频因子固定为20,24,28,212,216。
External Clock Generation sub-unit (EGU)
外部时钟产生(EGU)子单元能够产生多达三个芯片外部时钟信号。外部时钟生成(EGU)子单元能够生成CMU_CLK8时钟来为模块CCM管理2个时钟域。
Time Base Unit (TBU)
时间基准单元TBU为GTM提供常用的时间基准。在TBU内部有多达四个通道,每个通道使用一个CMU_CLK[x] (x: 0…7)时钟来为GTM生成一个公共的时间基准。TBU子模块产生TBU_TS0、TBU_TS1和TBU_TS2三个时基信号,这三个信号是GTM内部广泛使用的常用时基信号,用于信号的表征和生成。
时间基值在TBU时间基通道内以两种独立和一种依赖的操作模式生成。
1. Free Running Counter Mode(自由运行计数器模式)
TBU通道0以自由运行计数器模式提供27位计数器,TBU通道1和2在空闲运行计数器模式下提供24位计数器。
2. Forward/Backward Counter Mode(向前/向后计数模式)
TBU通道1和2提供了一个24位的向前/向后计数器.
3. Modulo Counter Mode(按模计数器模式)(依赖模式)
TBU通道3提供24位正向/反向按模的计数器。
TIM0 Input Mapping Module (MAP)
MAP子模块通过计算子模块TIM0通道0到5通道的输出信号,**为子模块DPLL生成两个输入信号TRIGGER和STATE。**通过使用TIM作为输入子模块,可以在TIM通道内部对输入信号进行滤波。
Digital PLL Module (DPLL)
数字锁相环(DPLL)子模块用于倍频。该模块的目的是在输入频率快速变化的应用中获得更高精度的位置或值信息通过DPLL, CPU的负载可以从本质上减少重复或周期性的标准任务。其输入有两个信号TRIGGER和STATE,它们处理周期性事件。两个输入信号TRIGGER和STATE可以是来自同一设备的传感器信号,也可以是来自两个独立设备的传感器信号。当它们来自同一个设备时,TRIGGER输入通常是一个更频繁的信号,而STATE是一个频率较低的信号。
当用于发动机管理应用时,DPLL可以在两种不同的模式下运行:正常模式和紧急模式。
GTM输入输出模块
GTM输入输出主要有三个子模块TIM、TOM和ATOM。
Timer Input Module (TIM)
**Timer Input Module (TIM)负责过滤和捕获GTM的输入信号。**在TIM通道内可以测量输入信号的几种特性。对于高级数据处理,可以将检测到的TIM模块输入特征通过ARU路由到GTM的后续处理单元。
每个TIM通道由一个输入边计数器ECNT、一个带计数器CNT的信号测量单元(SMU)、一个用于SMU计数器的计数器阴影寄存器CNTS和两个用于值存储的通用寄存器GPR0和GPR1组成。
上图概述了子单元的通道内部连接。下面列出了具有主要功能的子单元:
INPUT_SRCx:选择信号以由过滤器单元处理FLTx
FLTx:过滤器单元,提供了多种不同的过滤器机制。
TDUx:超时(在指定时间内没有检测到后续的边缘)检测单元
TIM_CHx:测量单元,本地中断控制器(使能,状态…)
EXT_CAP_SRCx:选择某些函数需要的本地信号
测量模式:
TIM提供了七种不同的测量模式,可以配置寄存器TIM_CH[x]_CTRL的位字段TIM_MODE。
TIMPWM测量模式:在TIM PWM测量模式中,TIM通道测量输入PWM信号的占空比和周期。DSL位定义了被测量PWM信号的极性。
TIM脉冲集成模式:在TIM脉冲积分模式中,每个TIM通道都能够测量输入信号上脉冲高或低时间的总和,这取决于寄存器TIM_CH[x]_CTRL寄存器所选的信号电平位DSL。
TIM输入事件模式:在TIM输入事件模式下,TIM通道可以计数边缘。
TIM输入预分频模式
TIM位压缩模式:TIM位压缩模式可用于将TIM子模块的所有滤波输入信号组合成一个并行的m位数据字,该数据字可路由到ARU,其中m为TIM子模块的可用信道数。
TIM门控周期采样模式
TIM串行切换模式
Timer Output Module (TOM)
**定时器输出模块(TOM)提供多达16个独立通道(索引x),在每个输出脚TOM_CH[x]_OUT产生简单的PWM信号。**此外,在TOM输出TOM_CH15_OUT可以产生脉冲计数调制信号。
存在两个全局通道控制单元(TGC0和TGC1),通过外部或内部事件同步地驱动多个单独的TOM通道。每个TGC[y]可以驱动多达8个TOM通道,其中TGC0控制TOM通道0到7,TGC1控制TOM通道8到15。
每一个单独的TOM通道包括一个计数器比较单元0 (CCU0),它包含计数器寄存器CN0和周期寄存器CM0,计数器比较单元1 (CCU1)包含占空比寄存器CM1和信号输出产生单元SOU (SOU)包含输出寄存器SOUR。
ARU-connected Timer Output Module (ATOM)
ARU连接的定时器输出模块ATOM (Timer Output Module)由于与ARU连接,可以在不与CPU交互的情况下产生复杂的输出信号。每个ATOM子模块包含8个输出通道,可以在几种可配置的操作模式下独立运行。
每个ATOM通道提供五种操作模式:
ATOM立即输出模式(SOMI)
ATOM输出模式比较(SOMC)
ATOM PWM输出模式(SOMP)
ATOM串行输出模式(SOMS)
ATOM缓冲比较输出模式(SOMB)
SOMI
在ATOM信号输出模式立即(SOMI)中,ATOM通道在链路上产生输出信号在寄存器ATOM_CH[x]_STAT的位ACBI(0)更新后,立即使用ATOM_CH[x]_OUT输出端口。
SOMC
在ATOM信号输出模式比较(SOMC)中,输出动作的执行依赖于位于CM0和/或CM1寄存器中的输入值与两个(三个)时间基值TBU_TS0或之间的比较。
SOMP
在ATOM信号输出模式PWM (SOMP)中,ATOM子模块通道能够产生不同占空比和周期的复杂PWM信号。占空比和周期可以同步和异步更改。
SOMS
在ATOM信号输出模式串行(SOMS)中,ATOM通道能够根据移位寄存器的值,产生一个串行信号,移位数量和移位方向可配置,移位时钟由CMU模块的时钟决定。
SOMB
在ATOM信号输出模式缓冲比较(SOMB)中,输出动作是根据位于CM0和/或CM1寄存器中的输入值和两个(三个)时间基值的比较结果执行的TBU_TS0或TBU_TS1(或TBU_TS2)由TBU提供。
————————————————
版权声明:本文为CSDN博主「君丿莫悔」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_45212020/article/details/125345763数据路由与存储
ARU与广播(BRC)和参数存储模块(PSM)一起组成GTM的路由与存储基础设施部分。
ARU( Advanced Routing Unit )
ARU即高级路由单元是GTM的核心组件,大多数子模块位于该单元周围并与之相连。 高级路由单元(ARU)是一个灵活的基础设施组件,能够将数据从已连接的源子模块路由到已连接的目标子模块,在GTM核心的几个子模块之间以可配置的方式传输53位宽的数据(5个控制位和2个24位值)。
在连接ARU接受ARU数据的通道中,路由是以一种采用轮询调度的方案并且具有最坏情况下的往返时间的确定性的方式完成。
Broadcast Module (BRC)
由于GTM每一个子模块通道的写地址都能写入ARU且只能被单个模块读取,因此ARU不可能同时向不同的模块提供数据流。为了解决常规模块的这个问题,子模块Broadcast (BRC)允许多次复制数据流。BRC能够将数据从一个源模块分发到多个连接到ARU的目标模块。
**BRC子模块提供12个输入通道和22个输出通道。**为了克隆一个输入数据流,可以将相应的输入通道映射为零个或多个输出通道。输入通道可以读取任意的ARU地址位置,输出通道将广播数据提供给固定的ARU写地址位置。
Parameter Storage Module(PSM)
**PSM子模块由三个子单元组成:AEI-to-FIFO数据接口(AFD)、FIFO-to-ARU接口(F2A)和FIFO本身。PSM可以用作传入数据特征的数据存储器,也可以用作传出数据的参数存储器。**该数据存储在逻辑上位于FIFO子单元内部的RAM中。
First In First Out Module (FIFO)
FIFO单元是FIFO子模块的存储部分,每个FIFO单元嵌入8个逻辑FIFO。每个逻辑FIFO表示GTM子模块和连接到AFD子模块的微控制器之间的数据流。FIFO RAM计数1K个单词,其中单词大小为29位。这样就可以自由地编程或接收24位数据以及一个ARU数据字内的5个控制位。
AEI-to-FIFO Data Interface (AFD)
AFD子模块实现AEI总线和FIFO子模块之间的数据接口,该接口由8个逻辑FIFO通道组成。AFD子模块提供一个缓冲区寄存器,专用于FIFO的逻辑通道。
FIFO to ARU Unit (F2A)
F2A是ARU和FIFO子模块之间的接口。由于ARU的数据宽度是53位(两个24位值和5个控制位),而FIFO的数据宽度只有29位,F2A必须以可配置的方式将数据从FIFO通道分发到FIFO通道。FIFO和ARU之间的数据传输由8个不同的数据流组织起来,这些流连接到相应的FIFO模块的8个不同的通道。
如下为数据流在ARU、F2A和FIFO的一种数据流通构图:
时钟和时间基准管理 GTM Clock and Time Base Management (CTBM)
在GTM内部,有几个子单元参与整个GTM的时钟和时基管理,他们分别是MAP、DPLL、CMU、TBU。
如下图为CTBM的结构框图:
Clock Management Unit (CMU)
CTBM的一个重要模块是时钟管理单元(CMU),时钟管理单元(CMU)负责生成计数器和GTM的时钟。CMU由三个子单元组成,它们为整个GTM产生不同的时钟源。它为GTM的子模块产生多达14个时钟,以及多达3个GTM外部时钟CMU_ECLK[z] (z: 0…2)。5个CMU_FXCLK[y] (y: 0…4)时钟被TOM子模块用于产生PWM。
CMU由三个字模块组成,分别为EGU、CFGU和FXU。
CMU结构框图如下所示:
Configurable Clock Generation sub-unit(CFGU)
CFGU即可配置时钟生成子单元为以下GTM模块提供了8个专用时钟源:TIM、ATOM、TBU和MON。该模块的每个实例可以选择任意的时钟源,以指定广泛的时间基准。
Fixed Clock Generation sub-unit (FXU)
固定时钟生成(FXU)子单元为TOM模块和MON模块生成预定义的不可配置时钟,时钟分频因子固定为20,24,28,212,216。
External Clock Generation sub-unit (EGU)
外部时钟产生(EGU)子单元能够产生多达三个芯片外部时钟信号。外部时钟生成(EGU)子单元能够生成CMU_CLK8时钟来为模块CCM管理2个时钟域。
Time Base Unit (TBU)
时间基准单元TBU为GTM提供常用的时间基准。在TBU内部有多达四个通道,每个通道使用一个CMU_CLK[x] (x: 0…7)时钟来为GTM生成一个公共的时间基准。TBU子模块产生TBU_TS0、TBU_TS1和TBU_TS2三个时基信号,这三个信号是GTM内部广泛使用的常用时基信号,用于信号的表征和生成。
时间基值在TBU时间基通道内以两种独立和一种依赖的操作模式生成。
1. Free Running Counter Mode(自由运行计数器模式)
TBU通道0以自由运行计数器模式提供27位计数器,TBU通道1和2在空闲运行计数器模式下提供24位计数器。
2. Forward/Backward Counter Mode(向前/向后计数模式)
TBU通道1和2提供了一个24位的向前/向后计数器.
3. Modulo Counter Mode(按模计数器模式)(依赖模式)
TBU通道3提供24位正向/反向按模的计数器。
TIM0 Input Mapping Module (MAP)
MAP子模块通过计算子模块TIM0通道0到5通道的输出信号,**为子模块DPLL生成两个输入信号TRIGGER和STATE。**通过使用TIM作为输入子模块,可以在TIM通道内部对输入信号进行滤波。
Digital PLL Module (DPLL)
数字锁相环(DPLL)子模块用于倍频。该模块的目的是在输入频率快速变化的应用中获得更高精度的位置或值信息通过DPLL, CPU的负载可以从本质上减少重复或周期性的标准任务。其输入有两个信号TRIGGER和STATE,它们处理周期性事件。两个输入信号TRIGGER和STATE可以是来自同一设备的传感器信号,也可以是来自两个独立设备的传感器信号。当它们来自同一个设备时,TRIGGER输入通常是一个更频繁的信号,而STATE是一个频率较低的信号。
当用于发动机管理应用时,DPLL可以在两种不同的模式下运行:正常模式和紧急模式。
GTM输入输出模块
GTM输入输出主要有三个子模块TIM、TOM和ATOM。
Timer Input Module (TIM)
**Timer Input Module (TIM)负责过滤和捕获GTM的输入信号。**在TIM通道内可以测量输入信号的几种特性。对于高级数据处理,可以将检测到的TIM模块输入特征通过ARU路由到GTM的后续处理单元。
每个TIM通道由一个输入边计数器ECNT、一个带计数器CNT的信号测量单元(SMU)、一个用于SMU计数器的计数器阴影寄存器CNTS和两个用于值存储的通用寄存器GPR0和GPR1组成。
上图概述了子单元的通道内部连接。下面列出了具有主要功能的子单元:
INPUT_SRCx:选择信号以由过滤器单元处理FLTx
FLTx:过滤器单元,提供了多种不同的过滤器机制。
TDUx:超时(在指定时间内没有检测到后续的边缘)检测单元
TIM_CHx:测量单元,本地中断控制器(使能,状态…)
EXT_CAP_SRCx:选择某些函数需要的本地信号
测量模式:
TIM提供了七种不同的测量模式,可以配置寄存器TIM_CH[x]_CTRL的位字段TIM_MODE。
TIMPWM测量模式:在TIM PWM测量模式中,TIM通道测量输入PWM信号的占空比和周期。DSL位定义了被测量PWM信号的极性。
TIM脉冲集成模式:在TIM脉冲积分模式中,每个TIM通道都能够测量输入信号上脉冲高或低时间的总和,这取决于寄存器TIM_CH[x]_CTRL寄存器所选的信号电平位DSL。
TIM输入事件模式:在TIM输入事件模式下,TIM通道可以计数边缘。
TIM输入预分频模式
TIM位压缩模式:TIM位压缩模式可用于将TIM子模块的所有滤波输入信号组合成一个并行的m位数据字,该数据字可路由到ARU,其中m为TIM子模块的可用信道数。
TIM门控周期采样模式
TIM串行切换模式
Timer Output Module (TOM)
**定时器输出模块(TOM)提供多达16个独立通道(索引x),在每个输出脚TOM_CH[x]_OUT产生简单的PWM信号。**此外,在TOM输出TOM_CH15_OUT可以产生脉冲计数调制信号。
存在两个全局通道控制单元(TGC0和TGC1),通过外部或内部事件同步地驱动多个单独的TOM通道。每个TGC[y]可以驱动多达8个TOM通道,其中TGC0控制TOM通道0到7,TGC1控制TOM通道8到15。
每一个单独的TOM通道包括一个计数器比较单元0 (CCU0),它包含计数器寄存器CN0和周期寄存器CM0,计数器比较单元1 (CCU1)包含占空比寄存器CM1和信号输出产生单元SOU (SOU)包含输出寄存器SOUR。
ARU-connected Timer Output Module (ATOM)
ARU连接的定时器输出模块ATOM (Timer Output Module)由于与ARU连接,可以在不与CPU交互的情况下产生复杂的输出信号。每个ATOM子模块包含8个输出通道,可以在几种可配置的操作模式下独立运行。
每个ATOM通道提供五种操作模式:
ATOM立即输出模式(SOMI)
ATOM输出模式比较(SOMC)
ATOM PWM输出模式(SOMP)
ATOM串行输出模式(SOMS)
ATOM缓冲比较输出模式(SOMB)
SOMI
在ATOM信号输出模式立即(SOMI)中,ATOM通道在链路上产生输出信号在寄存器ATOM_CH[x]_STAT的位ACBI(0)更新后,立即使用ATOM_CH[x]_OUT输出端口。
SOMC
在ATOM信号输出模式比较(SOMC)中,输出动作的执行依赖于位于CM0和/或CM1寄存器中的输入值与两个(三个)时间基值TBU_TS0或之间的比较。
SOMP
在ATOM信号输出模式PWM (SOMP)中,ATOM子模块通道能够产生不同占空比和周期的复杂PWM信号。占空比和周期可以同步和异步更改。
SOMS
在ATOM信号输出模式串行(SOMS)中,ATOM通道能够根据移位寄存器的值,产生一个串行信号,移位数量和移位方向可配置,移位时钟由CMU模块的时钟决定。
SOMB
在ATOM信号输出模式缓冲比较(SOMB)中,输出动作是根据位于CM0和/或CM1寄存器中的输入值和两个(三个)时间基值的比较结果执行的TBU_TS0或TBU_TS1(或TBU_TS2)由TBU提供。 |
|