您的位置:首页 > 热点 >

家电设计——安全至关重要!

无比较的双通道是一种比较昂贵的控制功能实施方法,特别对小家电而言更是如此。这种方法也会带来额外的固件开销,如处理器间通信等。这种方法是B类控制功能最不倾向采用的方法。不过,C类控制功能必须采用这种方法。

下面我们看看单通道阶段性自检的有关软件要求。根据规范要求,许多电子控制组件必须经过测试。以下给出了必须测试以满足规范要求的组件列表:

· CPU· 中断处理和执行  · 时钟  · 不变存储器  · 可变存储器  · 寻址  · 内部数据路径数据  · 内部数据路径寻址  · 外部通信  · 数字I/O  · 模数转换器和数模转换器  · 模拟MUX

寻址、内部数据路径数据和内部数据路径寻址在MCU使用外部存储器时都应进行测试。本文后续部分不讨论这三种组件。

CPU:这项测试明确CPU及其相关寄存器是否正确工作。举例来说,应对累加器、状态寄存器等进行测试以确保其不会在特定值锁死。该测试也可直接进行,即将已知值写入寄存器并回读,随后比较检查写入和读取值是否相同。对不支持直接写入的状态寄存器来说,可执行特定指令将寄存器带入已知状态。举例来说,通过对两个数字做加法并让累加器溢出,可以设置carry标记。程序计数器的损坏将改变程序执行流程,这就必须终止器件。该寄存器的检测不像上述其他寄存器那样直接明了。如程序计数器锁死在某个值上,可使用监视计时器来重置器件。

中断处理和执行:这项测试检查两个因素:是不是没有生成中断,或中断是不是生成得太频繁了。中断没有固定的最小和最大数量,这很大程度上取决于系统实施。这项测试可用计数变量来检查给定时间内中断生成的次数。时间戳可用计时器生成。此外,监视计时器可用来检查中断是否生成太过频繁并影响系统性能。如果监视计时器无法在中断触发频率下清空,就会导致系统重启。

时钟:这项测试检查系统时钟是否准确。测试时需要利用参考时钟源生成固定的频率测量时间间隔。外部晶体振荡器(ECO)是最佳实施方案。大多数MCU/混合信号器件都包含一个ECO,只需一个外部晶体与负载电容进行连接就能生成准确的低频时钟。如果器件不支持ECO功能,那就需要外部时钟生成器。一旦获得了准确的参照时钟,就能用来生成时间戳,并可利用计数器来检测系统频率。

标签: MCU CPU

相关阅读