0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用C2000™ DCC功能监控系统时钟

jf_pJlTbmA9 来源:e2echina.ti 作者:Emma Wang 2023-08-24 13:37 次阅读

Other Parts Discussed in Post: C2000WARE

作者:Emma Wang

简介:

MCU系统里,系统时钟的准确性及精度对于系统的安全运行非常重要,为保证系统可对时钟的准确性进行监控,从F28004X 系列开始,C2000 产品增加了一个新的功能模块Dual-Clock Comparator,简称DCC。DCC是一个可配置的,双时钟比较的模块,用于在应用程序的时间执行期间确定时钟信号的准确性。 DCC 使用另一个输入时钟作为参考来测量可选时钟源的频率。 时钟源以及精度由应用程序编程。可以实现对时钟信号提供时钟输入频率的自主、实时的监控,当输入时钟频率范围超出设定值时,DCC模块会触发错误,从而完成对输入时钟频率的监控。本文以F280049为例,介绍了DCC模块的工作原理和实际应用及相应的注意事项。

1.DCC工作原理介绍和配置方法:

顾名思义,DCC模块提供了两个时钟模块clock0 和clock1 按照设定比例及允许误差范围进行互相校验,用户可以自由选择两个时钟的输入源,如下图所示,同时也需要设定最大的允许误差。

Counter1 的时钟源有:

PLLRAWCLK

INTOSC1

INTOSC2

Counter0 的时钟源有:

XTAL

INTOSC1

INTOSC2

注:F280049是Type1 型的DCC,F28002x, F28003x, F280013x, F280015x, F2838x 均为Type2 型的DCC,clock0 和clock1都有更多的输入源,具体细节可以参考对应产品的datasheet。

wKgaomTm1nSABAZkAACZCBKgo84212.png

在DCC的设定过程中,除了选定的被检测的两个时钟外,还有两个重要的参数:tolerance 和frequency error。

1. Tolerance : Tolerance代表着DCC模块的颗粒细度,Tolerance越大,Clock0和Clock1的counter 越小,类似于ADC 的采样位数更小。但是当频率异常的时候,也可以反应的更快。我们一般设这个值为1%。

2. Frequency error:时钟误差的接受度,由于两个时钟的不同步和量化都会引入误差,所以本身就存在一个最小的误差。同时,时钟一定程度的偏差也是可以接受的,可以根据系统的需求输入,针对+/- total error 的时间偏差,都是可以被接受的。

根据系统需要,给出Tolerance和frequency error,计算方法在库函数中可以看到:

count0 = window - total_error;

valid = 2 * total_error;

count1 = window * freq1 / freq0;

配置好后,一旦DCC 被使能,counter0 和Valid0 会在每一次clock0 的时钟信号来一次减1,同样的,counter1 会在每一次clock1的时钟信号来一次减1。

我们先假设clock0 是个可靠的时钟,在clock1 的精度在允许最大误差内运行的时候,三个计数器应该按照下列顺序到达0:

Counter0 -> Counter1 -> Valid0

如果clock1的误差偏大,那么 有两种失效可能性:

一种是clock1 偏快,那么就会出现clock1 的counter1 先到达0。

一种是clock1 偏慢 ,那么就会出现clock0和valid0都到达0 之后, counter1 还没到达0。

2.实际应用:

在实际应用中,我们既可以用Clock0 来监测Clock1的精度,也可以用clock1 来监测Clock0的丢失(将Clock0设为XTAL)(因为Clock1输入只能选内部时钟)。DCC 的值的计算比较复杂,可以用TI 提供的driverlib 函数DCC_continuousMonitor()来完成计算,也可以参考C2000Ware中的例程,方便快速实现功能。DCC 相关例程的路径如下:C:tic2000C2000Ware_4_03_00_00driverlibf28004xexamplesdcc

需要注意的是:

DCC 还可以配置为在单次或连续模式下运行。 在单次模式下,DCC 执行一次性倒计时,当计数器达到 0 时 DCC 停止操作。引发完成中断并可以检查状态。

在连续模式下,因为需要锁住发生错误的时刻(即counter0 或counter1 的值),也会使得DCC 模块报错后,counter停止工作。会遇到只能进入一次DCC中断的情况,如果客户希望多次进入DCC 中断,则需要在DCC中断中重新使能DCC模块,可以通过调用这个函数来实现:DCC_enableModule(DCC0_BASE)。

3.总结:

使用DCC模块可以方便快捷地实现对两路时钟信号输入频率的自主、实时监控,通过对两路时钟计数器的比较,可以实现对时钟系统可靠的监控,从而保证整个系统的安全可靠运行。

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ti
    ti
    +关注

    关注

    111

    文章

    8188

    浏览量

    210930
收藏 人收藏

    评论

    相关推荐

    #硬声创作季 #DSP DSP从入门到编写-02 如何学好C2000

    dspC2000
    水管工
    发布于 :2022年10月25日 13:41:22

    #硬声创作季 #DSP DSP从入门到编写-06 C2000的中断机制-1

    dspC2000
    水管工
    发布于 :2022年10月25日 13:43:44

    C2000 系统设计(硬件部分)

    C2000 系统设计(硬件部分)
    发表于 08-19 21:02

    C2000 LAUNCHPAD 怎么unlock

     C2000 LAUNCHPAD  调试程序 ,芯片被锁了,debug  仿真 连不上了,我怎样才能解锁?
    发表于 05-14 03:54

    C2000资料

    自己最近刚开始入手STM32,以前都是做DSP C2000的,没什么可以给大家的,发一些C2000TMS320F28027的资料吧。F28027.rar (20.84 MB )
    发表于 04-30 02:06

    基于C2000的电池测试设备数字控制方案

    C2000数字控制方案,有效降低系统成本,并保证极高的电流、电压控制精度。1低成本采用TI的C2000数字控制方案的典型结构如图 1所示:电流/电压放大器对电池充放电的电流/电压进行采样,通过模数转换器ADC将模拟信号转化为数
    发表于 11-07 06:01

    基于C2000系列芯片的RAM在线诊断实现方法

    Software Package和C2000 SafeTI 60730 SW Packages软件库等,可以提供很多的诊断测试功能,例如CPU、时钟、外设、RAM等的诊断,已经可以满足一部分的需求…
    发表于 11-08 07:12

    C2000入门:C2000的基本知识介绍(1)

    C2000入门基础(一)—C2000概述(上)
    的头像 发表于 08-14 01:54 1.1w次阅读

    C2000的开发环境

    C2000入门基础(七)—C2000 开发环境
    的头像 发表于 08-10 01:01 3383次阅读

    C2000入门:C2000的复位系统介绍

    C2000入门基础(三)—C2000的复位系统
    的头像 发表于 08-06 00:55 4807次阅读

    C2000入门:时钟和中断系统的相关介绍(4)

    C2000入门基础(四)C2000时钟和中断系统
    的头像 发表于 04-15 06:31 3215次阅读
    <b class='flag-5'>C2000</b>入门:<b class='flag-5'>时钟</b>和中断<b class='flag-5'>系统</b>的相关介绍(4)

    C2000入门:C2000的外置电路的控制介绍(6)

    C2000入门基础(六)C2000的控制外设
    的头像 发表于 04-15 06:41 3633次阅读
    <b class='flag-5'>C2000</b>入门:<b class='flag-5'>C2000</b>的外置电路的控制介绍(6)

    C2000入门:C2000的基本知识介绍 (2)

    C2000入门基础(二)C2000概述(下)
    的头像 发表于 04-15 06:30 3821次阅读
    <b class='flag-5'>C2000</b>入门:<b class='flag-5'>C2000</b>的基本知识介绍 (2)

    C2000系列DSP移相功能缺陷的分析与解决方法(一)

      此前写过一篇文章,分析德州仪器C2000系列DSP移相同C2000系列DSP移相同步功能功能的一个缺陷,导致在大范围移相时出现的脉冲丢失问题。
    的头像 发表于 03-20 15:44 1966次阅读
    <b class='flag-5'>C2000</b>系列DSP移相<b class='flag-5'>功能</b>缺陷的分析与解决方法(一)

    DCC模块的工作原理,DCC模块的实际应用及注意事项

    在MCU系统里,系统时钟的准确性及精度对于系统的安全运行非常重要,为保证系统可对时钟的准确性进行
    的头像 发表于 07-04 10:50 3267次阅读
    <b class='flag-5'>DCC</b>模块的工作原理,<b class='flag-5'>DCC</b>模块的实际应用及注意事项