软性错误是电子学及电脑运算中的错误,是因为一个信号或数据不正确造成的错误。
定义软性错误是电子学及电脑运算中的错误,是因为一个信号或数据不正确造成的错误。软性错误可能是因为缺陷而造成,多半认为是因为设计或是架构上的错误,或者是因零件损坏而产生。软性错误也是指信号或数据有错,但没有造成系统的异常动作。在确认软性错误及其影响后,无法得到有软性错误后的系统比原系统来的不可靠的结论。在航太领域中,这类错误称为单粒子翻转。1
在电脑的存储器中,软性错误会造成程序一个指令或是一个数据的改变。若将电脑冷启动后,软性错误造成的影响就会消失。软性错误不会破坏系统的硬件,唯一破坏的是当时正在处理的数据。
分类软性错误有两种:集成电路层级的软性错误,以及系统层级的软性错误。集成电路层级的软性错误一般是因为有高能粒子撞击到集成电路,例如集成电路本身材料中放射性原子的衰变,会放出α粒子撞击集成电路,因为α粒子带有正电荷以及能量,因此若撞击到某个存储器单元,存储器单元中的数值就可能会变化。上述例子中的原子反应非常小,不会影响到集成电路的硬件结构。系统层级的软性错误多半是在要处理的数据被噪声所影响,多半是在数据在总线时发生此情形,电脑会将噪声解读为数据比特,因此会造成程序定址或是处理代码的错误。而有错的数据也可能会存到存储器中,因此造成后续的问题。
若软性错误立刻就侦测到,可以直接重写正确的数据即可消除软性错误的影响。高可靠度的系统会用错误修正机制,直接在运作中修正错误。不过在大部分系统中,无法确定哪一个数据是正确的,甚至完全无法侦测软性错误。而且在修正软性错误前,系统可能已经死机,因此撤消程序需包括重新启动。软性错误包括存储电路中数据的变化(例如存储电路中的电子),但没有影响到实际电路(原子)。只要重写正确的数据,电路就会恢复正常工作。软性错误可能发生在传输线、数字逻辑、类比电路、磁性存储媒介等,不过最常见的还是在集成电路中的软性错误。
相关条目单粒子翻转
抗辐射
本词条内容贡献者为:
李嘉骞 - 博士 - 同济大学