您的位置:控制工程论坛网论坛 » 嵌入式系统 » 单片机编程经验 3

binchen1120

binchen1120   |   当前状态:离线

总积分:705  2024年可用积分:0

注册时间: 2008-10-26

最后登录时间: 2012-10-09

空间 发短消息加为好友

单片机编程经验 3

binchen1120  发表于 2008/11/22 17:00:32      666 查看 0 回复  [上一主题]  [下一主题]

手机阅读

经验之三、话说RAM冗余技术

       所谓的RAM冗余,就是:

       1、将重要的数据信息备份2份(或以上)并存放在RAM中不同的区域(指地址不相连)。

       2、当平时对这些数据进行修改时,同时也更新备份。

       3、当干扰发生并被拦截到“程序错误处理段”中时,
将数据与备份做比较,采用表决方式(少数服从多数)选出正确(或可能正确?)的那个。

       4、备份越多,效果越好。(当然,你得有足够的存储空间)。

       5、只备份最最原始的数据。中间变量(指那些可以从原始数据重新推导出来的数据)不必备份,

       注:

      
1、这种思路的理论依据,据说是源于一种“概率论”,即一个人被老婆打肿脸的概率是很大的,但如果他捂着脸去上班却发现全公司每个已婚男人的脸都青了,这种概率是很小的。同理,一个RAM寄存器数据被冲毁的概率是很大的,但地址不相连的多个RAM同时被冲毁的概率是很小的。

       2、前两年,小匠学徒时,用过一次这种方法,但效果不太理想。当时感觉可能是概率论在我这失效了?现在回想起来,可能是备份的时机选的不好。结果将已经冲毁的数据又备份进去了。这样以来,恢复出来的数据自然也就不对了。
1楼 0 0 回复