什么是经济型数控系统之指令冗余技术?
发布者:锐峰五金机械 发布时间:2019-4-19 14:41:36
MCS-51 的指令由操作码和操作数组成。单字节指令仅有操作码;双字节指令第一个字节是操作码,第二个字节是操作数; 3字节指令第一个字节为操作码,后两 个字节为操作数。CPU 取指时,先取操作码,后取操作数。如何区别某个数据是操作码还是操作数,这完全由取指的顺序来决定。CPU 复位后,首先取出指令的操作码,然后取出操作数。当一条指令执 行完毕,紧接着又去取下一条指令的操作码与操作数。这些操作的时序完全由程序计数器PC 来控制。
因此,一旦PC 因干扰而出现错误,程序便脱离正常的运行轨道,出现“乱飞”的现象,导致操作数的数值改变或者将操作数当成操作码的错误产生。当程序“乱 飞”到某个单字节指令上时,可以自动纳入正轨;当“乱飞”到某双字节指令上时,若恰恰在取指令的时刻落在操作数上,就会将该操作数当成操作码,程序将出错;当程序“乱飞”到某个3 字节指令 上时,因为有两个操作数,误将操作数当成操作码的几率将会更大。用单字节指令,并在关键地方人为地插入一些单字节指令NOP,或将有效的单字节指令重复写几次。
这种方式称之为指令冗余。可在双字节指令和3 字节指令之后插入两个NOP,这可保证其后的指令不被拆散。因为“乱飞”的程序即使落到操作数上,由于NOP 的 存在,不会将其后的指令当成操作数来执行,从而使程序纳入正轨。对程序流向起决定作用的指令(如RET、RETI、ACALL、LCALL、LJMP、JZ、JNZ、JC、JNC、DJNZ 等)和某些对系统工作状态起重要作 用的指令(如SETB EA 等),可在之前插入两个NOP,以保证“乱飞”的程序迅速落入正轨;对于某些子程序必要时可以连续多次重复调用,某些状态的查询也可多次进行。采用冗余技术使PC 纳入正轨 的条件是:跑飞的PC必须指向程序运行区,并且有可能执行到冗余指令。
因此,一旦PC 因干扰而出现错误,程序便脱离正常的运行轨道,出现“乱飞”的现象,导致操作数的数值改变或者将操作数当成操作码的错误产生。当程序“乱 飞”到某个单字节指令上时,可以自动纳入正轨;当“乱飞”到某双字节指令上时,若恰恰在取指令的时刻落在操作数上,就会将该操作数当成操作码,程序将出错;当程序“乱飞”到某个3 字节指令 上时,因为有两个操作数,误将操作数当成操作码的几率将会更大。用单字节指令,并在关键地方人为地插入一些单字节指令NOP,或将有效的单字节指令重复写几次。
这种方式称之为指令冗余。可在双字节指令和3 字节指令之后插入两个NOP,这可保证其后的指令不被拆散。因为“乱飞”的程序即使落到操作数上,由于NOP 的 存在,不会将其后的指令当成操作数来执行,从而使程序纳入正轨。对程序流向起决定作用的指令(如RET、RETI、ACALL、LCALL、LJMP、JZ、JNZ、JC、JNC、DJNZ 等)和某些对系统工作状态起重要作 用的指令(如SETB EA 等),可在之前插入两个NOP,以保证“乱飞”的程序迅速落入正轨;对于某些子程序必要时可以连续多次重复调用,某些状态的查询也可多次进行。采用冗余技术使PC 纳入正轨 的条件是:跑飞的PC必须指向程序运行区,并且有可能执行到冗余指令。
相关新闻
- [2019.11.16]数控车床坐标系的确定
- [2020.11.26]如何防止立式数控车床变形呢?
- [2019.01.24]温度升高对铣床等机床产生的影响…
- [2021.04.13]数控车床的首要组成部分有哪些
- [2019.06.22]数控车床上下料机械手的优势
- [2017.12.25]数控车床加工工件不稳定的九大原…
- [2017.03.15]数控车床加工时出现震纹怎么回事…
- [2019.11.15]什么是走芯式数控车床的双主轴车…
- [2015.10.16]数控车床配置的滚动导轨
- [2020.11.24]数控车床如何减少主轴热变形
- [2019.01.24]金属切削机床零件热处理特点有哪…
- [2021.04.08]数控车床修理时的根本要求有哪些…
- [2015.11.02]数控车床的不同导轨
- [2016.01.08]数控车床引领工业新时代
- [2019.06.21]数控车床工作中的变频器使用
- [2017.12.22]数控车床加工与工艺应注意的六个…
- [2019.11.15]走心式车床特性
- [2020.11.21]数控车床主轴装置结构
- [2019.01.24]提高生产效率 机床夹具促使机床“…
- [2021.04.01]数控车床加工的防磕碰技巧