选择DSP系统监控芯片及其使用DSP芯片要点

2019-07-14 22:40发布

选择DSP系统监控芯片及其使用DSP芯片要点




摘要:在数字信号处理器的应用系统设计中,复位处理是一个最基本又极为关键的问题。阐述DSP系统监控芯片的选择与使用要点,讨论如何保证DSP系统运行的实时性。
    关键词:数字信号处理器 复位 看门狗 实时性

引 言
  硬件监控芯片作为提高系统可靠性的一种重要手段,在单片机和数字信号处理器(DSP)的应用系统设计中得到了广泛的应用。对于有一定单片机应用经验的设计人员来说,在开始进行DSP系统的设计时,往往会根据经验使用在单片机系统中常用的监控芯片,如MAX706、MAX1232等。但是,由于DSP自身一些有别于单片机的特点,特别是在实时性要求比较高的情况下,完全照搬单片机系统中使用监控芯片的经验是不合适的。
  下面结合使用德州仪器公司出品的定点DSP芯片TMS320F206(简称F206)在电力故障录波器中的设计体会,详细探讨DSP系统硬件监控芯片的选择、对系统运行实时性的影响和需要注意的问题。

       1 DSP复位的特点以及对监控芯片的要求
  在进行讨论之前,有必要简单介绍F206的复位特点。对于F206而言,复位是不可屏蔽的外部中断(中断矢量地址0000H),随时可用它将F206置于一种已知状态。复位是优先级别最高的中断,一般在加电后芯片处于未知状态时对其复位。因为复位信号中止存储器操作并初始化各硬件状态位,所以每次复位后系统应重新运行初始化程序。
  在严格的意义上,F206的复位源只有1个,即复位引脚RS产生1个低电平脉冲信号,使芯片复位。为使系统在加电后能正确工作,RS端的低电平有效时间至少需要6个时钟周期。F206锁存复位脉冲并产生足够长的内部复位脉冲以确保芯片复位。在RS上升沿后16个周期,芯片完成对硬件的初始化并从0000H 单元开始执行第1条指令,通常这里是一条分支到系统初始化程序的跳转指令。
  由于F206的工作时钟频率较高,加之电力故障录波器运行环境的电磁干扰比较严重,为保证设备的正常运行,必须设置硬件监控功能。

  与主要用于控制领域的TMS320F24X系列芯片不同,F206芯片中并没有内置看门狗功能,所以只能使用外部硬件监控电路。在一些DPS的相关设计资料中经常使用MAX706或MAX1232硬件监控芯片,其中MAX706具有时间长达1.6 s的看门狗定时器功能,MAX1232的看门狗定时器时间则为0.2~ 1.6 s可调;此外,还具备上电复位和电源监控功能。

  但是,根据我们的设计经验和对系统运行的仔细分析,使用MAX706等类似的许多硬件监控芯片存在2个需要注意的问题:第一,看门狗定时器的时间过长,MAX706的典型时间为1.6 s,也就是说,当DSP中的程序运行产生错误时,MAX706要在 1.6 s(相当于80个工频周期)后才能发出复位信号。第二,监控芯片输出的复位信号脉冲宽度过大,MAX706的典型值为200 ms(相当于10个工频周期),这主要是为了兼顾上电复位时对晶振100~300 ms稳定期的要求。

  因此,从程序运行产生错误到DSP芯片完成复位,将有共计1.8 s的非受控时间,这对于对实时性要求很高的电力故障录波器来说是不能忍受的。如果在此期间电网发生故障,录波器将无法作出正确的反应。很显然,必须寻找一种具有适合看门狗定时器时间和复位脉冲宽度的硬件监控芯片。
  在这里,必须明确对看门狗定时器时间的选择条件。在程序设计中,为了保证硬件监控效果,不宜过多地设置对看门狗芯片的操作,一般应在程序循环的关键部位设置1~2处对看门狗芯片的触发操作。所以,看门狗定时器的时间只要大于一个需时最长的程序循环即可。在基于F206的故障录波器中,需时最长的程序循环包含1个16点的FFT运算,整个程序循环的总时间小于2 ms。

  由此看来,硬件监控电路的看门狗时间只要大于2 ms即可满足要求,过长的看门狗时间是不必要的,对保证装置的实时性也是十分不利的。

       2 MAX6369~MAX6374监控芯片的原理及应用
  根据以上标准,我们选用了MAXIM公司出品的MAX6374监控芯片。MAX6374是MAX6369~ MAX6374系列监控芯片中的一员。该系列芯片的看门狗定时器时间可以通过外部引脚SET2、SET1、SET0的逻辑电平进行精确调节,其引脚电平与看门狗定时器时间的关系如表1所列。
  表1中的tWD 就是看门狗定时器时间,tDELAY是看门狗定时器启动延迟时间。
表1
逻辑电平输入MAX6369/MAX6370MAX6371/MAX6372MAX6373/MAX6374SET2SET1SET0tDELAY,tWDtDELAY=60s,tWDtDELAYtWD0001ms1ms3ms3ms00110ms3ms3s3s01030ms10ms60s1s011禁止禁止禁止禁止100100ms100ms200μs30μs1011s300ms01s11010s3s010s11160s60s60s10s
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
smilingangel
1楼-- · 2019-07-15 10:46
这个系统复位电路设计还是蛮复杂的
smilingangel
2楼-- · 2019-07-15 13:03
复位是优先级别最高的中断,一般在加电后芯片处于未知状态时对其复位。因为复位信号中止存储器操作并初始化各硬件状态位,所以每次复位后系统应重新运行初始化程序。

一周热门 更多>