数字信号处理

平台

DSP 设计支持

入门

数字信号控制器的增强型事件管理器

作者:Andreas Georgner,德州仪器

基于德州仪器 (TI) F24xTM 与 F28xTM 数字信号处理器 (DSP) 的控制器事件管理器模块在 DSP 中采用可编程逻辑形式,以生成脉宽调制 (PWM) 信号,并主要满足三相系统的设计要求;不过,由于具有一定灵活性,因此在添加一些软件之后也可以轻松用于具有更多相位或特殊要求的应用。事件管理器的功能已经在几代处理器产品中得到测试,只进行了某些细节上的改进。

TI 决定开发一种全新架构:增强型事件管理器 (eEVM)。它将用于最新的 F28x 衍生品系列,即:TMS320F2801、320F2806 与F2808 数字信号控制器(已经在TMS320F2801 控制器中实现了受限版本)。与前代相比,新事件管理器中的 PWM 生成原理有很大不同。如图 1 所示(右侧),事件管理器包含 6 个增强型 PWM (EPWM) 模块,每个模块都能生成 2 个独立的 PWM 信号。6 个模块全部具有相同功能并且采用相同的编程模型。因此,每个模块都可独立于其它模块生成中断并且可以在不同时间触发模拟/数字转换器 (ADC)。


图1:F2808 控制器的增强型事件管理器具有 6 个 EPWM 模块

不过,如图所示,这些模块可以相互同步,因此能够在相同时基产生 PWM 信号。如果某种应用具有 2 台相同的三相电动马达,则 EPWM1 模块的时基可以与 EPWM2 及 EPWM3 的时基同步,同时 EPWM4 的时基也可与 EPWM5 及 EPWM6 同步,从而使马达相互独立运行。另外,EWPM1 的时基可以与所有其它数个模块的时基同步,以便准确地同时起动马达。

那么,EPWM 模块是什么样子呢?如图2 所示,一个模块又包含多个子模块。为了生成 PWM 信号,我们至少需要一个计数器和与其相关的逻辑器件,以便在独立的可编程时间内生成事件。计数器(16 位)位于时基 (TB) 模块中,并把时间信息发送到计数器比较 (CC) 模块与动作限定 (AQ) 模块。时基模块还包含可与后续或先导 EPWM 模块同步的逻辑器件,同时包含一个相移寄存器 —— 将在下文介绍其作用。

计数器比较模块包含相应寄存器,通过这些寄存器可以相互独立地对EPWM 模块的两个 PWM 信号—— EPWMA 与 EPWMB 信号的脉宽(占空比)进行编程。因此,PWM 信号取决于时基模块中的计数器设置,尤其是周期值(最大计数值)及其计数模式 —— 其可以仅递增、仅递减、或者重复递增与递减。不过,PWM 信号是由动作限定 (AQ) 模块生成 —— 其根据时基模块计数器比较 (CC) 模块的信息生成实际信号。动作限定模块同样可以自由编程,而且可以在四个独立的时间计数值上(0、最大计数器值、比较寄存器 A 的内容、以及比较寄存器 B 的内容)迫使引脚与逻辑 1 或 0 关联,或者仅仅进行切换。另外,还可以采用 2 个比较寄存器在 PWM 引脚生成事件。当然,也可以利用软件,通过动作限定模块中的相应寄存器项目(entry) 把引脚设定到预期的逻辑电平。此外,利用另一个模块(事件触发器与中断模块)还可以在上述时间生成用于模数转换器的触发信号(ADC SOC、开始转换)或者中断信号(或者同时生成二者)。