2. C2000实时控制架构与GaN驱动外设映射
C2000系列之所以能直接驱动GaN功率级,核心在于它把“采样—计算—输出”这条控制链拆成了多个可并行、可硬件联动的外设单元。理解C28x内核、CLA、PWM、ADC、比较器、DAC各自负责哪一段,以及它们之间如何用触发信号串起来,是写出低延迟GaN驱动代码的前提。本节不孤立介绍每个模块,而是围绕“一次开关周期内信号如何流动”来建立外设映射关系。
一、控制链上的角色分工
C28x主核是控制算法的主体,负责环路计算、状态机管理和通信。它运行在较高的主频下,但中断响应、浮点运算和分支判断会带来微秒级的抖动。CLA(Control Law Accelerator)是一颗独立的32位浮点协处理器,不占用C28x的指令周期,专门处理确定性强、结构固定的控制律,例如电流环PI、电压环或斜坡补偿。它的价值在于把最紧的实时任务从主核剥离,使主核可以处理保护、通信和上层逻辑。
PWM模块是整条链的“时间基准”。它产生带死区的互补输出,同时通过EPWMxSOCA/SOCB发出ADC启动信号,通过EPWMxINT发出中断。ADC完成转换后,EOC信号可以触发CLA任务,也可以触发C28x中断。比较器(CMPSS)和DAC则构成一条独立的硬件保护路径:DAC提供阈值,比较器把采样值与阈值比较,输出可直接送入PWM的TZ(Trip Zone)或X-BAR,实现不经过CPU的快速关断。
二、外设映射关系图
三、触发链的时序对应关系
把上述模块串起来的关键是“触发源—触发目标”的映射。以最常见的峰值电流控制为例:EPWM的时基计数器在归零时产生SOCA,启动ADC采样。ADC转换结束后产生EOC,这个信号可以配置为触发CLA任务。CLA在固定周期内完成电流环计算,把结果写入EPWM的CMPA寄存器。由于EPWM采用影子寄存器加载机制,新占空比会在下一个周期生效,从而避免当前周期被中途修改。
这条链的延迟主要由三部分组成:ADC采样与转换时间、CLA任务执行时间、以及PWM影子寄存器加载的等待时间。以TI的典型配置为例,假设ADC采样窗口为100ns,12位转换约需300ns,CLA执行一次PI运算约需80个周期(在100MHz下约800ns),那么从采样到占空比更新大约在1.2μs量级。对于开关频率100kHz(周期10μs)的GaN变换器,这个延迟约占周期的12%,属于可接受范围;但如果开关频率提升到500kHz,就必须重新评估是否改用比较器直接保护或缩短CLA任务。
四、GaN驱动对时序的特殊要求
GaN器件的栅极电荷小、开关速度快,对死区时间和关断路径的要求比硅MOSFET更严格。死区过长会增大体二极管导通损耗,过短则可能直通。C2000的EPWM死区子模块可以独立设置上升沿和下降沿延迟,分辨率取决于系统时钟。例如在100MHz时钟下,死区寄存器每格10ns,可以设置20ns左右的死区,这对GaN半桥是合理的起点。
更关键的是保护路径。GaN器件过流耐受时间极短,如果依赖ADC采样—CPU判断—软件关断,延迟可能达到数微秒,不足以保护器件。因此必须使用CMPSS:DAC设定阈值(例如对应2倍额定电流的采样电压),比较器输出直接连到EPWM的TZ引脚或通过X-BAR路由。一旦超限,PWM输出在几十纳秒内被强制拉低,不经过任何软件环节。这条路径与ADC—CLA—PWM的常规控制路径是并行的,两者互不替代。
五、配置时的映射检查清单
在实际写初始化代码时,可以按以下顺序核对映射关系,避免触发源配错导致环路不运行:
- EPWM的SOCA/SOCB触发源是否选在计数器归零或峰值处,是否与ADC的SOC通道对应;
- ADC的EOC是否使能了正确的中断或CLA触发,中断向量是否指向目标任务;
- CLA任务是否配置了正确的触发源,任务末尾是否写回了CMPA/CMPB;
- CMPSS的DAC值是否与电流采样电路的增益、偏置匹配,比较器输出是否路由到TZ;
- TZ是否配置为一次性触发还是逐周期限流,故障后是否需要软件清除;
- EPWM的死区上升/下降延迟是否与GaN驱动器的传输延迟匹配。
理解这套映射关系的最终目的,是让每个外设出现在它该出现的时间点上:PWM定节拍,ADC取真实值,CLA算控制量,CMPSS守安全线,C28x管全局。GaN驱动级只是这条链的末端执行者,它的性能上限取决于前面每个环节是否按时、按序、按正确路径传递了信号。