在可编程的芯片(如
单片机),可编程控制器(PLC),微机等
电子设备的运行中,会出现程序跑飞的情况或程序跳转,可用手动或自动的方法发给硬件特定接口使软件的运行恢复到特定的
程序段运行,这一过程就是复位过程;而在这一过程中,手动或自动的方法发给硬件特定接口的信号,就是复位信号。
分类
复位信号主要分为两大类同步复位信号与异步复位信号。同步复位信号是指时钟有效沿到来时对触发器进行复位所产生的信号;异步复位信号不依赖于时钟信号,只在系统复位有效是产生的复位信号。
同步复位信号
优点
1)利于静态时序分析工具的分析
2)可以滤除复位信号中有效持续时间短于时钟周期的毛刺,有很高的抗干扰性
3)有利于基于周期的仿真工具的仿真
缺点
1)复位信号的有效时长必须大于时钟周期,否则可能会采不上复位信号
2)复位行为依赖于时钟信号,如果时钟信号存在问题,无法正确完成复位行为
3)存在复位延时和组合逻辑延时
4)由于器件库中只有异步复位端口,倘若采用同步异步复位的话,综合时会插入额外的组合逻辑,占用更多的逻辑资源
异步复位信号
优点
1)识别方法简单,可用于全局复位
2)设计相对简单,不需要额外的逻辑资源,易于实现
3)大多数器件库中的器件都有异步复位端口,可节省资源
缺点
1)在复位信号释放的时候容易出现问题,若复位刚好在时钟有效沿附近释放,很容易使寄存器输出端出现亚稳态
2)异步复位易触发,容易受到毛刺的影响,所以对异步复位源要求较高
3)难以进行静态时序分析,难以仿真
复位信号重要性
随着集成电路设计技术的发展,单芯片电路的设计规模越来越大,设计复杂度也相应地越来越高。
目前,在集成电路设计中,特别是以SoC芯片(System on chip片上系统)为代表的大规模集成电路设计中,通常都采用同步时序设计方法。即芯片内部的所有触发器都工作于相同的时钟信号,而且触发器状态的翻转也都发生在同一时刻。
同步时序设计方法要求芯片内部时钟信号到达芯片内部各个触发器的时间一致。实际上,由于时钟信号到达各个触发器所经历路径的不同,将会导致各个触发器上时钟信号的延时都不太一致。为了保证时钟沿到达各个触发器的时间相同,设计人员通常需要对时钟经历的各个路径时进行补偿,即进行时钟树的平衡。
同样的,在芯片复位电路的设计中,复位信号的延时也将会对电路的数字逻辑产生影响。如图1所示的电路,由于三个不同的电路模块的复位信号输入端(Rst)与整个芯片的复位信号源(Reset)的电路
连接路径不同,就有可能造成如图2所示的复位信号延时。当复位信号不同步时,由于各模块的输出还有后续的逻辑运算,就有可能造成在模块1的复位信号消失并开始运转的时刻,模块2和模块3的复位操作仍然没有完成,其输出还处于不确定状态,从而导致系统逻辑状态混乱的不良结果。