一种自纠正多位错误的有限状态机电路的制作方法

文档序号:10944712阅读:257来源:国知局
一种自纠正多位错误的有限状态机电路的制作方法
【专利摘要】本实用新型一种自纠正多位错误的有限状态机电路,对译码纠错的开销低,纠错率高。其包括依次连接的次态产生电路、现态寄存器组、状态校验电路和状态机输出产生电路;次态产生电路的输入端分别连接状态机控制信号,以及状态校验电路输出的校验后的状态机现态编码;输出端经输出的次态编码信号与现态寄存器组的输入端连接;现态寄存器组的时钟端和复位端分别连接时钟信号、复位信号,输出端经输出的状态机现态与状态校验电路输入端连接;状态校验电路的输出端经校验后的状态机现态编码与状态机输出产生电路的输入端连接;状态机输出产生电路的输入端还连接状态机控制信号,输出端输出状态机标志信号作为该有限状态机电路的输出。
【专利说明】
一种自纠正多位错误的有限状态机电路
技术领域
[0001] 本实用新型属于可靠性领域,涉及容错型有限状态机电路,具体涉及一种自纠正 多位错误的有限状态机电路。
【背景技术】
[0002] 有限状态机(FSM,Finite_state machine)表示有限多个状态以及在这些状态之 间转移和动作的数学模型,常用于实现电路的时序、响应和控制等关键行为,是数字电路设 计的核心,因此其容错能力严重影响着数字电路的可靠性。目前,主要从以下几个方面提高 有限状态机的可靠性。
[0003] -、利用令牌(Token)或者分组将有限状态机分成若干个子状态机,并且保证状态 转移依照某种次序在各个子状态机之间进行,从而利用子状态机记录多个连续转换的状 态,若检测到当前状态存在错误,则回退到上一个子状态机记录的状态重新执行。该技术虽 然可以保证FSM恢复为正确状态重新执行,但不可避免的打断了 FSM的正常执行。
[0004] 二、基于存储器构造有限状态机,以输入和当前状态编码为地址,对应地址的存储 器单元保存FSM次态的编码和输出,然后以存储器多模冗余的方式实现FSM的加固。该技术 的硬件消耗较大,且一般用于加固基于FPGA的FSM。
[0005] 三、确定FSM各状态的编码,然后对各状态的编码按照某种纠错码规则重新编码 (编码后称之为核心编码),从而保证FSM各状态的核心编码之间存在汉明距离d,若FSM某一 个状态的核心编码发生错误的位数小于等于(d-l)/2,则认为该状态依然正确,即每个FSM 状态(核心编码)映射为一群状态,这一群状态均被认为核心编码对应的FSM状态。该技术虽 然保证了 FSM的容错能力,但是大大增加了次态产生电路和输出产生电路的开销。 【实用新型内容】
[0006] 针对现有技术中存在的问题,本实用新型提供一种自纠正多位错误的有限状态机 电路,对译码纠错的开销低,纠错率高,结构简单,设计合理。
[0007] 本实用新型是通过以下技术方案来实现:
[0008] -种自纠正多位错误的有限状态机电路,包括依次连接的次态产生电路、现态寄 存器组、状态校验电路和状态机输出产生电路;次态产生电路的输入端分别连接状态机控 制信号input,以及状态校验电路输出的校验后的状态机现态编码?_8七;输出端经输出的次 态编码信号n_st与现态寄存器组的输入端连接;现态寄存器组的时钟端和复位端分别连接 时钟信号elk、复位信号reset,输出端经输出的状态机现态c_st与状态校验电路输入端连 接;状态校验电路的输出端经校验后的状态机现态编码口_81与状态机输出产生电路的输入 端连接;状态机输出产生电路的输入端还连接状态机控制信号input,输出端输出状态机标 志信号output作为该有限状态机电路的输出。
[0009] 优选的,次态产生电路包括依次连接的次态判断电路和次态编码电路;次态判断 电路用于根据状态机控制信号input和校验后的状态机现态编码p_st生成状态机的k位次 态编码s_code;次态编码电路用于根据次态编码s_code得到并输出次态编码信号n_st;其 中k为正整数,代表有限状态机电路的状态位数。
[0010]进一步,次态编码电路包含k个两输入异或门,每个异或门包含A、B两个输入端;次 态编码s_code的第i位分别与第i个异或门的A输入端对应相连;次态编码8_〇〇(16的第i+s位 分别与第i个异或门的B输入端相连,k个两输入异或门的输出和k位次态编码输As_ C〇de组 合成为2k位次态编码输出11_^;其中1^(〇氺-1),5为正整数,指有限状态机电路可以自纠 正的状态中的连续错误位数,其取值不超过k的1/3。
[0011]优选的,状态校验电路包含第一组异或门、第二组异或门、第三组异或门和第四组 与门,其中第一组、第二组和第三组异或门均包含k个两输入异或门,第四组与门包含k个两 输入与门;每个异或门和与门均包含A、B两个输入端,该电路的输入为2k位的状态机现态(:_ st,包含k位状态机现态编码[do di…dk-i]和k位状态机现态编码校验位[ρο pi…pk-i], 其中现态编码的第i位分别与第一组和第三组异或门第i个异或门的A输入端相连,现态编 码的第i+s位分别与第一组异或门第i个异或门的B输入端相连;第一组异或门第i个异或门 的输出连接至第二组异或门第i个异或门的A输入端,现态编码校验位的第i位连接至第二 组异或门第i个异或门的B输入端;第二组异或门第i个异或门输出驱动第四组与门第i个与 门的A输入端,第二组异或门第i-s个异或门输出驱动第四组与门第i个与门的B输入端;第 四组与门第i个与门的输出端连接至第三组异或门第i个异或门的B输入端;第三组异或门 第i个异或门输出即为校验后的状态机现态编码口_8七的第i位;其中1^(〇氺-1),8为正整 数,指有限状态机电路可以自纠正的状态中的连续错误位数,其取值不超过k的1/3。
[0012]与现有技术相比,本实用新型具有以下有益的技术效果:
[0013]本实用新型所述的电路通过增加的状态校验电路保证预先编码当前状态的正确 性,并将正确的当前状态输出至次态生成电路和状态机输出产生电路。通过低开销、高纠错 能力的状态校验电路,保证了状态机对错误状态的自纠正能力。且并未增加次态判断电路 和状态机输出产生电路的开销。
[0014] 进一步的,通过次态编码电路中由多组逻辑门电路依次级联组成的低开销和高纠 错能力的编码电路,实现对译码的低开销、高纠错的纠错能力。
【附图说明】
[0015] 图1为本实用新型的自纠正多位错误的有限状态机电路结构原理图。
[0016] 图2为本实用新型中次态产生电路的电路结构原理图。
[0017]图3为本实用新型实例中8位状态位时次态编码电路的电路原理图。
[0018]图4为本实用新型实例中8位状态位时状态校验电路的电路原理图。
[0019] 图中:次态产生电路101、现态寄存器组102、状态校验电路103和状态机输出产生 电路104、次态判断电路1011、次态编码电路1012。
【具体实施方式】
[0020] 下面结合附图对本实用新型做进一步的详细说明,所述是对本实用新型的解释而 不是限定。
[0021] 本实用新型基于一种低开销、高纠错能力的状态校验电路,保证预先编码当前状 态的正确性,并将正确的当前状态输出至次态生成电路和状态机输出产生电路,实现了有 限状态机对多位错误状态的自纠正,且并未增加次态判断电路和输出产生电路的开销。
[0022] 具体的,如图1所示,一种自纠正多位错误的有限状态机电路,包括次态产生电路 101、现态寄存器组102、状态校验电路103和状态机输出产生电路104。有限状态机电路的输 入包括时钟信号elk、复位信号re set和状态机控制信号input,输出为状态机标志信号 output。其中时钟信号elk和复位信号reset连接至现态寄存器组102;状态机控制信号 input连接至次态生成电路101和状态机输出产生电路104。
[0023] 次态生成电路101根据状态机控制信号input和经状态校验电路校验后的状态机 现态编码?_#决定状态机次态编码n_st,并将其送至现态寄存器组102的数据输入端D;现 态寄存器组102将其保存的状态机现态(:_8〖输出至状态校验电路103;状态校验电路103对 状态机现态c_st进行校验,并将校验后的状态机现态编码p_st连接至次态生成电路101和 状态机输出产生电路104;状态机输出产生电路104根据其输入校验后的状态机现态编码?_ st和状态机控制信号input产生有限状态机电路的最终输出,作为状态机标志信号output。
[0024] 其中,如图2所示,次态产生电路101包括次态判断电路1011和次态编码电路1012, 次态判断电路1011根据状态机控制信号input、校验后的状态机现态编码p_st和状态机设 置的具体功能,生成状态机的k位次态编码s_code,并连接至次态编码电路1012,次态编码 电路1012采用逻辑门对以下编码进行硬件实现,其根据P, =4 生成k位校验码[p0 pi…Pk-1],其中[do di…dk-1]为次态编码8_(3〇(16,;[£(0,1^-1)。本优选实例中以8位状态 位为例,次态编码电路1012的原理连接如图3所示。
[0025] 次态编码电路1012包含k个两输入异或门,每个异或门包含A、B两个输入端;次态 编码s_code的第i位分别与第i个异或门的A输入端对应相连;次态编码8_〇〇(16的第i+s位分 别与第i个异或门的B输入端相连,k个两输入异或门的输出和k位次态编码输As_ C〇de组合 成为2k位次态编码输出11_^;其中1^(〇氺-1),8为正整数,指有限状态机电路可以自纠正 的状态中的连续错误位数,其取值不超过k的1/3。
[0026] 其中现态寄存器组102由若干寄存器组成,其内部数据排列为[4 A…办-I, k为状态机各状态的编码位宽,[do cU…dk-1]为状态机现态的编码,[po pi…pk-1]为现 态编码的校验位,2k位输出c_st连接至状态校验电路103。
[0027] 其中,状态校验电路103采用逻辑门对以下编码进行硬件实现,其对2k位的状态机现 ?c_st进行错误校验和纠正,首先由逻辑门电路的前半部分计算校验子A = R φ4 φ毛。, 然后由逻辑门电路的后半部分得到校验后的k位状态机现态编码p_st=[d'Q ch'…d Vi],由逻辑电路的关系能够得到,其中4 e (〇,k_l),如图4所示为对 应图3编码电路的解码和校验电路原理图。
[0028]状态校验电路103包含第一组异或门、第二组异或门、第三组异或门和第四组与 门,其中第一组、第二组和第三组异或门均包含k个两输入异或门,第四组与门包含k个两 输入与门;每个异或门和与门均包含A、B两个输入端,该电路的输入为2k位的状态机现态(:_ st,包含k位状态机现态编码[do di…dk-i]和k位状态机现态编码校验位[ρο pi…pk-i], 其中现态编码的第i位分别与第一组和第三组异或门第i个异或门的A输入端相连,现态编 码的第i+s位分别与第一组异或门第i个异或门的B输入端相连;第一组异或门第i个异或门 的输出连接至第二组异或门第i个异或门的A输入端,现态编码校验位的第i位连接至第二 组异或门第i个异或门的B输入端;第二组异或门第i个异或门输出驱动第四组与门第i个与 门的A输入端,第二组异或门第i-s个异或门输出驱动第四组与门第i个与门的B输入端;第 四组与门第i个与门的输出端连接至第三组异或门第i个异或门的B输入端;第三组异或门 第i个异或门输出即为校验后的状态机现态编码口_8七的第i位;其中1^(〇氺-1),8为正整 数,指有限状态机电路可以自纠正的状态中的连续错误位数,其取值不超过k的1/3。
[0029]其中,状态机输出产生电路104,根据状态机现态编码p_st、状态机控制信号input 和状态机设置的具体功能,决定有限状态机电路的最终输出。
[0030]以上在确定编码位数和逻辑门电路的连接时,其中i+s和i_s的加减运算均为k进 制运算,且运算符号取正,运算结果均取最低位,对编码的位数和连接位置进行确定,对其 对应的逻辑门电路进行级联。
【主权项】
1. 一种自纠正多位错误的有限状态机电路,其特征在于,包括依次连接的次态产生电 路(101)、现态寄存器组(102)、状态校验电路(103)和状态机输出产生电路(104); 次态产生电路(101)的输入端分别连接状态机控制信号input,以及状态校验电路 (103) 输出的校验后的状态机现态编码p_St;输出端经输出的次态编码信号11_8七与现态寄 存器组(102)的输入端连接; 现态寄存器组(102)的时钟端和复位端分别连接时钟信号clk、复位信号reset,输出端 经输出的状态机现态c_s t与状态校验电路(103)输入端连接; 状态校验电路(103)的输出端经校验后的状态机现态编码?_8七与状态机输出产生电路 (104) 的输入端连接; 状态机输出产生电路(104)的输入端还连接状态机控制信号input,输出端输出状态机 标志信号output作为该有限状态机电路的输出。2. 根据权利要求1所述的一种自纠正多位错误的有限状态机电路,其特征在于,所述的 次态产生电路(101)包括依次连接的次态判断电路(1011)和次态编码电路(1012);次态判 断电路(1011)用于根据状态机控制信号input和校验后的状态机现态编码p_st生成状态机 的k位次态编码s_code;次态编码电路(1012)用于根据次态编码s_code得到并输出次态编 码信号n_st;其中k为正整数,代表有限状态机电路的状态位数。3. 根据权利要求2所述的一种自纠正多位错误的有限状态机电路,其特征在于,所述的 次态编码电路(1012)包含k个两输入异或门,每个异或门包含A、B两个输入端;次态编码8_ code的第i位分别与第i个异或门的A输入端对应相连;次态编码8_〇〇(16的第i+s位分别与第 i个异或门的B输入端相连,k个两输入异或门的输出和k位次态编码输As_code组合成为2k 位次态编码输出11_^;其中1^(〇氺-1),8为正整数,指有限状态机电路可以自纠正的状态 中的连续错误位数,其取值不超过k的1/3。4. 根据权利要求1所述的一种自纠正多位错误的有限状态机电路,其特征在于,所述的 状态校验电路(103)包含第一组异或门、第二组异或门、第三组异或门和第四组与门,其中 第一组、第二组和第三组异或门均包含k个两输入异或门,第四组与门包含k个两输入与门; 每个异或门和与门均包含A、B两个输入端,该电路的输入为2k位的状态机现态(:_8七,包含k 位状态机现态编码[dodr-dk-i]和k位状态机现态编码校验位[popr-pk-i],其中现态编码的 第i位分别与第一组和第三组异或门第i个异或门的A输入端相连,现态编码的第i+s位分别 与第一组异或门第i个异或门的B输入端相连;第一组异或门第i个异或门的输出连接至第 二组异或门第i个异或门的A输入端,现态编码校验位的第i位连接至第二组异或门第i个异 或门的B输入端;第二组异或门第i个异或门输出驱动第四组与门第i个与门的A输入端,第 二组异或门第i-s个异或门输出驱动第四组与门第i个与门的B输入端;第四组与门第i个与 门的输出端连接至第三组异或门第i个异或门的B输入端;第三组异或门第i个异或门输出 即为校验后的状态机现态编码口_ 8〖的第i位;其中1^(〇少-1),8为正整数,指有限状态机电 路可以自纠正的状态中的连续错误位数,其取值不超过k的1 /3。
【文档编号】H03K19/20GK205647493SQ201620320486
【公开日】2016年10月12日
【申请日】2016年4月15日
【发明人】艾刁, 马徐瀚, 石文侠, 陈庆宇, 吴龙胜
【申请人】中国航天科技集团公司第九研究院第七七研究所, 中国航天科技集团公司第九研究院第七七一研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1