快资讯:DSP C2000系列EPWM模块间同步(TMS320F280039)

要闻 >
哔哩哔哩
分享

活动寄存器与影子寄存器

EPWM模块中很多寄存器都分为活动寄存器和影子寄存器。典型的,比如计数周期寄存器PRD,平时在中断里面更新PRD的值来改变PWM波的频率时,并不是立即生效,而是等到计数器计到0后在下一个计数周期中生效。


(资料图)

TBPRD寄存器的加载

在早期的ePWM模块设计中,PRD寄存器的加载与以下配置有关:

该位的解释如下:

Active Period Register Load From Shadow Register Select

0:The period register (TBPRD) is loaded from its shadow register when the time-base counter,TBCTR, is equal to zero.

A write or read to the TBPRD register accesses the shadow register.

1:Load the TBPRD register immediately without using a shadow register.

A write or read to the TBPRD register directly accesses the active register.

注:复位后PRDLD的值为0,即默认情况下使能了影子寄存器。

此设计可以解决TBPRD与比较值CMPA/CMPB之间的同步问题。

试想一下,如果没有影子寄存器的机制,在哪些应用场景下会出现问题?

在变频应用中,比如只改变频率,不改变占比空(比如维持在50%)的情况下,要想改变频率,必须在中断服务函数中同时更改PRD和CMP值。但是,软件给寄存器赋值和硬件计数器之间是不同步的,有可能刚好将PRD和CMP中的某一个寄存器更新了而另一个还没有来得及更新的时候,CC模块得出的比较信号出错了。

EPWM模块间的同步问题

上述影子寄存器的机制只解决了单个EPWM模块内部的同步加载。在移相应用中,涉及到多个EPWM模块之间的同步,需要考虑TBPRD和TBPHS的同步。

比如,下面这种情况,PWM1和PWM2的频率相同,PRD都是600,但是相位差了120度,PWM2的TBPHS等于PRD/3。但是,在某一个时刻,ISR程序中更新了频率,把TBPRD由600改为了1200,同时将PWM2的相位寄存器TBPHS由200改为了400.。接下来,PWM1的计数器归零,发出同步信号SYNCO。此时PWM2的计数值更新为400,但是PRD的值还没有从影子寄存器更新的活动寄存器,仍然是600。(要等到计数器归零时才更新)。等到PWM2的计数器计满归零后,TBPRD才从600更新为1200。此时时刻,PWM2和PWM1之间失去了同步。

为了解决这个问题,为PRD的加载新增加了一个同步机制。

TBPRD的同步加载

上述风险已在 2 型 ePWM 中得到解决,后者会额外启用同步事件,由 TBCTL2[PRDLDSYNC] 位确定,以使影子 到活动加载对 TBPRD 和 CMP 寄存器有效。这样就可以得到正确的相移,如下图所示。

当PWM2收到PWM1的同步信号时,PWM2的PRD也会同步加载。关于PRDLDSYNC的说明如下:

首先,当PRDLD位为0时(使能影子寄存器),TBPRD的加载不是简单地看TBCTR是否等于0,还要看PRDLDSYNC位。

Active Period Reg Load from Shadow Select

0: The period register (TBPRD) is loaded from its shadow register when the time-base counter, TBCTR, is equal to zero and/or a sync event as determined by the TBCTL2 PRDLDSYNC bit.

A write/read to the TBPRD register accesses the shadow register.

1: Immediate Mode (Shadow register bypassed): A write or read to the TBPRD register accesses the active register.

再来看TBCTL2寄存器中的PRDLDSYNC位:

当PRDLDSYNC配置为01时,当TBCTR=0或者SYNC信号发生时,都会触发TBPRD的加载。

全局加载

这么多影子寄存器,每个都受到一堆条件的限制,这时就需要一个动作将影子寄存器进行加载,这个就是“全局加载”。

When this feature is enabled, the transfer of contents from the shadow register to the active register, for all registers that have this mode enabled, occurs at the same event as defined by the configuration bits in Global Shadow to Active Load Control Register (GLDCTL[GLDMODE]). When GLDCTL[GLD] = ’1’, shadow to active load event selection bits for individual shadowed registers are ignored and global load mode takes effect for the corresponding registers enabled by GLDCFG[REGx].

全局加载模式的配置

首先,可以选择加载触发的条件:CTR=0/CTR=PRD及同步信号等。

其次,可以选择是否单次模式。在单次模式下,软件每向GLDCTL2[OSHTLD]中写入一个“1”,就触发一次加载。连续模式下,可配置触发条件满足N次才加载一次。

EPWM模块之的同步加载

在 LLC 等变频应用中,控制 ISR 将会更新周期和比较寄存器,该操作以固定频率运行,此频率与 PWM 开关频率异步。因此,可能会在切换周期即将结束的某一时间点触发执行 ISR。如果是这种情况,用于更新 ePWM 寄存器 的 ISR 代码的某些部分有可能在周期结束之前执行,而该代码的其余部分在下一个开关周期中执行。如图所示,ePWM1 的周期寄存器在开关周期结束前更新,而 ePWM2 的周期寄存器并未及时更新。因此,ePWM2 以旧 的 PWM 频率运行,而 ePWM1 以新频率运行。

为了解决这个问题,引入寄存器链接方案。

For variable frequency applications, there is a need for simultaneous writes of TBPRD and CMPx registers between ePWM modules. This prevents situations where a CTR = 0 or CTR = PRD pulse forces a shadow to active load of these registers before all registers are updated between ePWM modules (resulting in some registers being loaded from new shadow values while others are loaded from old shadow values). To support this, an ePWM register linking scheme for TBPRD:TBPRDHR, CMPA:CMPAHR, CMPB:CMPBHR, CMPC, and CMPD registers between PWM modules has been added.

对于变频应用,需要在ePWM模块之间同时写入TBPRD和CMPx寄存器。这可以防止在ePWM模块之间更新所有寄存器之前,CTR = 0或CTR = PRD脉冲强制影子对这些寄存器进行活动负载(导致某些寄存器从新的阴影值加载,而其他寄存器则从旧的阴影值加载)。为了支持这一点,在PWM模块之间添加了TBPRD:TBPRDHR,CMPA:CMPAHR,CMPB:CMPBHR,CMPC和CMPD寄存器的ePWM寄存器链接方案。

For a particular ePWM module # A , user code writes “B+1”, to the linked register bit-field in EPWMXLINK. “B” is the ePWM module # being linked to (that is, writes to the ePWM module “B” TBPRD:TBPRDHR, CMPA:CMPAHR, CMPB:CMPBHR, or CMPC will simultaneously be written to corresponding register in ePWM module “A”). For instance if ePWM3 EPWMXLINK register is configured so that CMPA:CMPAHR are linked to ePWM1, then a write to CMPA:CMPAHR in ePWM 1 will simultaneously write the same value to CMPA:CMPAHR in ePWM3. If ePWM4 also has its CMPA:CMPAHR registers linked to ePWM1, then a write to ePWM 1 will write the same value to the CMPA:CMPAHR registers in both ePWM3 and ePWM4.

对于特定的 ePWM 模块 # A,用户代码将"B+1"写入 EPWMXLINK 中链接的寄存器位字段。"B"是链接到的 ePWM 模块 # (即写入 ePWM 模块 "B" TBPRD:TBPRDHR、CMPA:CMPAHR、CMPB:CMPBHR 或 CMPC 将同时写入 ePWM 模块 "A" 中的相应寄存器)。例如,如果将 ePWM3 EPWMXLINK 寄存器配置为将 CMPA:CMPAHR 链接到 ePWM1,则在 ePWM 1 中写入 CMPA:CMPAHR 将同时向 ePWM3 中的 CMPA:CMPAHR 写入相同的值。如果 ePWM4 还具有链接到 ePWM1 的 CMPA:CMPAHR 寄存器,则写入 ePWM 1 将向 ePWM3 和 ePWM4 中的 CMPA:CMPAHR 寄存器写入相同的值。

The register description for EPWMXLINK clearly explains the linked register bit-field values for corresponding ePWM. An example of using the EPWMXLINK is linking ePWM2 CMPA with CMPA of ePWM1. In this case, a write to CMPA of ePWM1 will also change the CMPA value for ePWM2.

EPWMXLINK的寄存器描述清楚地解释了相应ePWM的链接寄存器位字段值。使用EPWMXLINK的一个例子是将ePWM2 CMPA与ePWM1的CMPA联系起来。在这种情况下,写入 ePWM1 的 CMPA 也会更改 ePWM2 的 CMPA 值。

如果控制 ISR 与 PWM 开关频率异步,则还需要使用一次性加载模式和全局加载模式,以确保多个 PWM 模块中 的所有寄存器在所选事件中都是最新的。 使用一次性加载模式,用户可在全局加载机制下设置 GLDCTL2[OSHTLD] =‘1’,以确保影子寄存器到活动寄存 器的传输只发生一次。换而言之,所有全局加载事件都被阻止,除非 GLDCTL2[OSHTLD] =‘1’。此外,也可以 跨多个 PWM 模块使用 EPWMXLINK[GLDCTL2LINK] 链接 GLDCTL2 寄存器。因此,借助 ePWM 链接方案,当 在所有寄存器更新后启用一次性加载模式时,一个或多个 PWM 模块中的多个 PWM 寄存器只会在第一次全局加 载事件中生效,后续事件将被忽略。

实例

1. 在初始化期间

// Sync source ePWM1 settings 

EPWM_enableGlobalLoadRegisters(base1, EPWM_GL_REGISTER_CMPA_CMPAHR| EPWM_GL_REGISTER_TBPRD_TBPRDHR|EPWM_GL_REGISTER_DBRED_DBREDHR| EPWM_GL_REGISTER_DBFED_DBFEDHR|EPWM_GL_REGISTER_CMPC); 

EPWM_setGlobalLoadTrigger(base1, EPWM_GL_LOAD_PULSE_CNTR_PERIOD);

EPWM_enableGlobalLoadOneShotMode(base1); 

EPWM_enableGlobalLoad(base1);

// Sync receiver ePWM2 settings 

EPWM_enableGlobalLoadRegisters(base2, EPWM_GL_REGISTER_CMPA_CMPAHR| PWM_GL_REGISTER_TBPRD_TBPRDHR|EPWM_GL_REGISTER_DBRED_DBREDHR| EPWM_GL_REGISTER_DBFED_DBFEDHR); 

EPWM_setGlobalLoadTrigger(base2, EPWM_GL_LOAD_PULSE_SYNC);

EPWM_enableGlobalLoadOneShotMode(base2); 

EPWM_enableGlobalLoad(base2); 

EPWM_setupEPWMLinks(base2, EPWM_LINK_WITH_EPWM_2, EPWM_LINK_GLDCTL2);

2. 在执行控制 ISR 期间

EPWM_setGlobalLoadOneShotLatch(HIGH_FREQ_PWM1_BASE);

标签:

THE END
广告、内容合作请点击这里 寻求合作
免责声明:本文系转载,版权归原作者所有;旨在传递信息,不代表中国财投网的观点和立场。

相关热点

资讯播报

快资讯:DSP C2000系列EPWM模块间同步(TMS320F280039)
天华新能(300390):5月10日北向资金减持37.73万股
适时四驱什么时候用 适时四驱什么时候介入-世界观速讯
曾搭档易会满,“70后”李云泽履新金融监管总局
12天8板、5天4板!传媒“人气牛”再度涌现 每日消息
环球快看:vba instr函数用法_vba instr
环球头条:2023成都养老保险一个月可以领多少钱?
全球看点:二季度内上市 全新凯迪拉克CT6实车曝光
天天最资讯丨罗永浩背后的MCN借壳上市?世纪睿科拟更名为“交个朋友控股有限公司”
2023秀山招生片区划分 热点在线
少年简谱c调_少年简谱
“元宇宙第一股”Roblox 一季度营收 6.55 亿美元,同比增长 22% _时讯
全球资讯:广言|解禁路边摊 考验城市治理“绣花功”
2023年4月住房租赁品牌影响力100强榜单
圣农发展4月份收入超14亿元,“手枪腿”月销破千万
上市钜惠1万元,如此“含金量”十足的2023款瑞虎5x你爱了吗?
普天科技: 第六届监事会第十四次会议决议公告
全球即时看!广西大学将新办一所公办学校!西大附中高中部继续办学!
经络按揭:料香港第二季楼按市场或放缓 按保数字亦会相应回调|世界通讯
以色列蓝皮书建议:推进中以在创新人才领域交流合作 环球今头条
小海兔怎么做好吃_爆炒海兔的做法
南雅双语实验中学:开展男生专题教育活动,做温暖的血性男孩 最新
青岛母亲节期间赏花去哪好?|世界观速讯
民航局:2022年全行业累计实现营业收入6328.9亿元 同比下降15.8%
每日快播:聚合科技北交所过会:多项核心技术处国内先进水平 拥有发明专利18项
绩溪旅游必去的景点_绩溪景点大全 环球观热点
天天视讯!中国汽车流通协会:4月汽车经销商综合库存系数为1.51 同比下降20.9%
realme发布真我11系列 照片支持2亿像素 头条焦点
Roblox(RBLX.US)Q1营收、利润均逊预期 预定额略超预期
热门看点:描写银杏黄叶的成语_形容银杏叶黄的词语
建霖家居:5月9日公司高管吕理镇增持公司股份合计5万股
焦点热议:车企销量分化:理想领跑、蔚来下滑、小鹏挣扎
拉加德:通胀依旧面临上行风险 欧央行将继续加息 精彩看点
快看!广西这43所学校上了全国首批名单
世界今热点:椰族域名的含义_椰族
重磅!西大附中初中部、西大君武小学停止办学!
气排球、羽毛球、健身瑜伽都能玩……又一个体育公园来了! 选址就在这里-天天视讯
河水暴涨!广西发布灾害预警,大暴雨即将来临 最新资讯
榴莲价格“腰斩”!这趟专列“立功”了
注意!昊华能源将于5月31日召开股东大会
千年古刹云居寺:“双山叠翠”名家书画作品展开幕 报道
天猫618商家订购送货上门服务,平台将全额补贴-今日精选
西安中院举行“强化府院联动 促进金融纠纷协同治理”签约仪式
原油供应减少 亚欧买家被迫高价购买低质原油 每日速讯
5月10日上海期货交易所沪铜期货持仓情况
世界快讯:中辉期货原油日报20230510:市场暂缺主导驱动,关注OPEC月报产能数据
全球快讯:一位付费API工程师如何制造了推特今年第七次崩溃?
焦点滚动:“融势·启新”公共资源交易大数据论坛即将亮相2023数博会
天天视讯!小学六年级英语作文范文10篇带翻译_myfamily作文带翻译50子
【天天播资讯】福建3名落水基层干部遇难 包括一名25岁女基层干部
审计立项是什么意思_浅谈投资立项审计作用和意义|速看料
建行宜春市分行:“金融春雨”助力农民增收|当前热议
新能源车ETF华安(516660)5月10日上涨2.1%,成分股特锐德领涨16.39%-当前速读
天天新资讯:隧蜂主要内容概括_隧蜂
仲量联行:香港第一季商业地产投资环比跌10%至16亿美元
春招就业形势同比向好,“求稳”成毕业生最优选-快播
今日讯!上海锦江乐园门票多少钱?(购票入口)
全球最新:邢台天河山_关于邢台天河山的介绍
全球速讯:中原经纪人指数CSI(住宅售价)向下迫近50点 预计香港楼价调整压力增加
创新设计,演绎广告“视觉专柜”
Jmoon极萌夏季营销碰撞「心动五一」,为高效拓圈给出新解法-环球焦点
董明珠“接班人”孟羽童离职,格力回应:人员流动很正常_今日视点
【播资讯】中国人寿:前4月原保险保费收入3573亿元 同比增4%
女副区长“白色发型”引关注,官方回应:不是染的
超越锂电指日可待!这一新工艺有望解决锂空气电池关键瓶颈……_全球观天下
成都惠蓉保生过病住过院的人可以买吗?|全球快报
焦点热议:学习丰田好榜样 有问题现场解决
欧洲央行管委内格尔:即将进入加息周期的最后阶段
引领品质新生活 海信8K激光电视亮相中国自主品牌日
客户流失率的含义-如何计算客户流失率
山西发生偷排不明液体案件致3死:两嫌疑人被控制|全球新消息
《京张铁路图》:百年前的京张铁路与现代地图测绘丨京华物语
塞尔达传说王国之泪黄昏之弓的位置一览|微资讯
国家野生稻种质资源圃主体建成 精选
沪尚茗居:让老房子变身梦想家?看我们怎么做!
摩托罗拉MotoRazr40可折叠手机渲染图曝光:3种颜色、
房地产对生活家电助力持续减弱,2022年市场规模同比下降6.4%
在线浏览器QQ聊天 资讯推荐
每日看点!董明珠失势,格力空调撞上了南墙
光启技术:目前709二期的施工方已经进场
世界短讯!淘天集团首次公开亮相!戴珊:自我变革不是选择题而是必答题
设计时速350公里!贵南高铁开始全线联调联试
硅业分会:本周硅料市场价格大幅下跌 二线企业签单节奏明显谨慎成交量不大
债市行情速递丨10年期国债期货主力合约收涨0.14% 环球快看
港元拆息全线上升 供楼相关1个月拆息升穿4.1厘创今年新高 热议
环球消息!华东重机:与中能装备签署战略合作框架协议
新手宝爸宝妈别担心!专家称新生儿肺超声检查安全无创无辐射
超燃混剪丨太空“快递小哥”成长记
东莞割包皮的男科医院
开家政怎么赚钱(开家政公司怎么接生意) 全球视点
【快播报】罗马诺:施马特克接近成为利物浦新任体育总监
梦到厕所堵了看到粪便是什么意思 梦到厕所堵了看到粪便是什么兆头 微资讯
【世界新视野】从用户实际体验出发,鲁大师2023评测沟通会发布全新久用流畅测试
许正宇:考虑适度运用市场资金 为大型基建项目融资 微资讯
苹果概念港股异动高伟电子涨超5% 供应链称苹果MR已冲刺拉货 环球微动态
锁定目标 | 全力冲刺——2023年第一季度总结暨表彰大会圆满举行!
“股神”又买对了!巴菲特所投日企的业绩与股价齐飞_当前热门
南山中英文港籍班入学考试结束!回顾考情,这些事情值得留意……_播资讯
魔法偶像剧_魔法偶像
世界观天下!前脸造型升级/马力大幅提升 曝新款BMW X5申报图

相关推荐

精彩推送

3