基于输入微调的余数校验容错低通滤波处理方法

文档序号:6399056阅读:113来源:国知局
专利名称:基于输入微调的余数校验容错低通滤波处理方法
技术领域
本发明涉及可靠计算及容错信号处理技术领域,特别涉及一种基于输入微调的余数校验容错低通滤波处理方法。
背景技术
辐射会对数字信号处理器的运行造成影响,进而可以导致输出数据出现错误。例如,一些卫星上装载的数字信号处理设备,常会受到太空辐射的影响而导致信号处理出现错误。为了解决这个问题出现了容错信号处理技术。三模冗余(Triple Modular Redundancy,TMR)技术在福射环境下的容错信号处理中得到广泛应用。针对滤波器的容错设计来说,TMR使用三个相同的滤波模块对输入数据进行相同的滤波操作,并在输出端通过多数选择器决定最终的输出,完全消除了单支路故障对信号处理输出的影响。但在三模冗余技术中,所有的运算、存储及功率资源消耗都增加到原来的三倍,这使得三模冗余技术在很多资源受限的应用中无法使用,如星载计算平台上的容错信号处理等。为此产生基于余数校验的容错信号处理技术,进一步的降低了容错信号处理技术中的资源需求。基本思路是将三模冗余中的一条支路变成基于余数处理的滤波支路,当其他两个支路处理结果不一致时,将两个支路的处理结果取余后,与余数滤波支路的结果进行比较,经过一次判断就选择正确的处理结果,并判断出现了故障的支路。但是这种方法有一个缺陷,即当滤波器的移位寄存器或者滤波器系数发生单粒子翻转时,可能使故障支路的错误输出刚好与正确输出同余,此时余数滤波支路无法判断哪个支路出现了故障,即发生了故障漏检问题。而通过理论分析发现,由滤波器系数发生单粒子翻转所导致的故障漏检都发生在输入数据取模为零的时刻。

发明内容
本发明旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商业选择。为此,本发明的一个目的在于提出一种基于输入微调的余数校验容错低通滤波处理方法,该方法可以有效的避免由滤波器系数发生单粒子翻转所引起的故障漏检问题。为了实现上述目的,根据本发明实施例的基于输入微调的余数校验容错低通滤波处理方法,其特征在于,包括以下步骤:A:将采集数据X分别传输给第一支路、第二支路和余数支路,其中,所述第一支路和第二支路为两个完全相同的低通滤波器支路,所述余数支路为一个基于余数处理的低通滤波器支路:在所述余数支路中,对所述X进行取模处理(X)m,其中模数m为正整数,取模结果为Xm;C:当所述Xm第奇数次等于零时执行步骤Cl,当所述Xm第偶数次等于零时执行步骤C2,当所述Xm不等于零时执行步骤C3 ;C1:将所述第一支路和第二支路的输入数据加1,并将所述余数支路的取模结果加1,随后所述第一支路、第二支路以及余数支路对微调加I后的新输入数据进行一般的基于余数校验的容错滤波处理;C2:将所述第一支路和第二支路的输入数据减I,并将所述余数支路的取模结果减1,随后所述第一支路、第二支路以及余数支路对微调减I后的新输入数据进行一般的基于余数校验的容错滤波处理;C3:直接对所述第一支路、第二支路以及余数支路的输入数据进行一般的基于余数校验的容错滤波处理。根据本发明的方法进行输入数据微调,可避免由滤波器系数发生单粒子翻转所引起的故障漏检问题,具有操作简单,结果准确率高的优点。在本发明的一个实施例中,所述低通滤波器为直接型或转置型FIR滤波器。在本发明的一个实施例中,所述余数支路中的滤波器滤波过程中的乘法和加法运算为:P和q是两个操作数且为正整数,则乘法运算为((P)mX (q) Jm,加法运算为((p)m+(q)
Iii^ m °在本发明的一个实施例中,所述模数m优选为3。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明所述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1是现有的基于余数校验的容错滤波处理方法的原理图;图2是本发明的基于输入微调`的余数校验容错低通滤波处理方法的流程图;图3是本发明一个具体实施例的基于输入微调的余数校验容错低通滤波处理方法的流程图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。为使本领域技术人员更好地理解本发明的技术背景,先结合图1对现有的基于余数校验的容错滤波处理方法进行阐述。如图1所示,将相同的输入数据分别传输给第一支路、第二支路和基于余数处理的低通滤波器支路。其中,在第一支路中X经过低通滤波器I滤波处理,滤波结果变为yi,随后对Y1在取模子模块I中进行取模求余得到r10类似地,在第二支路中X经过低通滤波器2滤波处理,滤波结果变为12,随后对y2在取模子模块2中进行取模求余得到r2。在第三条支路中,输入数据首先经过取模子模块3进行取模处理,然后通过基于余数处理的低通滤波器支路,得到r。最后对y:、y2、r2和r进行比较检验,如果yfyy说明第一支路和第二支路的结果一致,选择任一路输出即可,I=Ii=I2 ;如果Y1幸y2,说明第一支路和第二支路的结果不一致,其中有一条支路出错,需要使用第三条支路的结果进行比较处理,如果rfr,说明第一支路是正确的,J=J1 ;反之,如果r2=r,说明第二支路是正确的,y=y2。上述传统基于余数校验的容错滤波方法在多数情况下是可以对抗单粒子翻转的,但是在少数情况下,单粒子翻转有可能导致出现7工幸y2但是的情况,即本文背景技术中提到的“输出同余、故障源难辨”问题。由于理论分析发现,由滤波器系数发生单粒子翻转所导致的故障漏检都发生在输入数据取模为零的时刻,本发明的核心思想是,在原本取模结果为零的输入数据进行滤波处理之前,对该输入数据进行微调加I,使得输入数据取模结果不再为零,对再次取模结果为零的输入数据进行滤波处理之前,对该输入数据进行微调减I,使得输入数据取模结果不再为零,即可避免由于滤波系数发生单粒子翻转所导致的故障漏检,从而提高电路处理结构的准确率。对取模为零的输入数据进行交替加减I操作,统计意义上等效为在低通滤波器输入端加入了一个小幅度高频信号,而其大部分能量将被低通滤波器滤除。因此本发明的特点是,利用低通滤波器自身的滤波特性,在通过输入数据修改避免滤波器系数引起的故障漏检的同时,最大程度地消除了输入数据改变对输出数据的影响。图2是本发明实施例的基于输入数据微调的余数校验容错滤波处理方法的流程图。如图2所述,本发明的方法包括以下步骤:A:将采集数据X分别传输给第一支路、第二支路和余数支路。其中,第一支路和第二支路为两个完全相同的低通滤波器支路,余数支路为一个基于余数处理的低通滤波器支路。其中,低通滤波器为直接型或转置型FIR滤波器。B:在余数支路中,对X进行取模处理(X)m,其中模数m为正整数,取模结果为xm。在本发明的一个实施例中,余数支路中的滤波器滤波过程中的乘法和加法运算为:P和q是两个操作数且为正整数,则乘法运算为,力卩法运算为((p)m+(q)m)
Ill0在本发明的一个实施例中,模数m为3。因为在消除故障漏检的基础上,将模值设置为最小,如m=3,便可以获得最低的容错开销。C:当所述Xm第奇数次等于零时执行步骤Cl,当所述Xm第偶数次等于零时执行步骤C2,当所述Xm不等于零时执行步骤C3。Cl:将第一支路和第二支路的输入数据加1,并将余数支路的取模结果加1,随后第一支路、第二支路以及余数支路对微调加I后的新输入数据进行一般的基于余数校验的容错滤波处理。需要说明的是,在此情况中,“将余数支路的取模结果加I”等同于“将余数支路的输入数据加1”,也等同于“将余数支路的取模结果等于I”。以及,输入数据微调后进行的基于余数校验的容错滤波处理的具体形式并不限定,可以参照图1中的后半部分进行。C2:将第一支路和第二支路的输入数据减1,并将余数支路的取模结果减1,随后第一支路、第二支路以及余数支路对微调减I后的新输入数据进行一般的基于余数校验的容错滤波处理。
需要说明的是,在此情况中,“将余数支路的取模结果减I”等同于“将余数支路的输入数据减1”,也等同于“将余数支路的取模结果等于m-1”。以及,输入数据微调后进行的基于余数校验的容错滤波处理的具体形式并不限定,可以参照图1中的后半部分进行。C3:直接对第一支路、第二支路以及余数支路的输入数据进行一般的基于余数校验的容错滤波处理。同样地,此处的基于余数校验的容错滤波处理的具体形式并不限定,可以参照图1中的后半部分进行。为使本领域技术人员更好地理解本发明,现结合图3做详细介绍。图3是本发明一个具体实施例的基于输入微调的余数校验容错滤波处理方法的流程图。该实施例中,当模数m=3,滤波器为16阶FIR低通滤波器时,滤波器系数为hp 1=0,2,..,15。假设输入数据流x[n] = {l、4、9、10、15、3、7、8、6…},其中n为正整数(n=0, I,…,°o ),表示数据流中各数据序号,该数据流中的至少一个数据将被逐个依次进行处理。步骤S301:将该数据流输送给两个相同的16阶FIR低通滤波器和一个基于模3处理的16阶FIR低通滤波器,其中输入第一个数据时,i=0。步骤S302:基于余数处理的低通滤波器支路中,输入数据X [n]先经过取模处理得到{x[n]}3={l、l、0、l、0、0、l、2、(>..}。具体地:x
=l,对其进行取模处理,模数m为3,则{x
}3=l。同理,x[l]=4,{x[l]}3=l ;x[2]=9, {x[2]}3=0 ;x[3]=10, {x [3]} 3=1 ;x [4] =15, {x [4]} 3=0 ;x[5]=3,{x[5]}3=0 ;x[6]=7, {x[6]}3=1 ;x[7]=8, {x[7]}3=2 ;x[8]=6, {x[8]}3=0 ;即输入数据 x[n]中的各个数据逐个经过取模处理得到{x[n]}3= {1、1、0、1、0、0、1、2、0…} (n=0, 1,…,°° )。此时把取模不等于零的输入数据直接执行步骤S306,进行一般的基于余数校验的容错滤波处理;把取模等于零的输入数据执行步骤S303,进行根据本发明实施例的基于输入微调的余数校验容错低通滤波处理,此时,每次进入步骤S303—个输入数据,则i的数值自动加I。步骤S303:如果当前输入数据为第奇数次取模为零,则执行步骤S304,否则执行步骤S305,即如果此时输入数据取模为零,i值为奇数,则执行步骤S304 ;如果此时输入数据取模为零,i值为偶数,则执行步骤S305。步骤S304 (包括 S304a、S304b、S304c):当 Xni=O 时,例如首先{x[2]}3=0,则将两路低通滤波器的输入数据加1,即x[2]=10,同时,将余数校验支路得出的Xm进行加I操作,即{x [2]}3=1o步骤S305 (包括S305a、S305b、S305c):因为{x [4]} 3=0,则将两路低通滤波器的输入数据减1,即原来x[4]=15,进行减I操作后x[4]=14,同时,将余数校验支路得出的Xm进行减I操作,即lx[4]}3=2。由于{x [5]} 3=0和Ix [8]} 3=0,则根据步骤S304和步骤S305的操作,分别对其进行加 1和减I操作,使得X [5]从3变为4,X [8]从6变成5。相应地,{x[5]}3=1,{ [8]}3=2。此时,x[n]= {l、4、10、10、14、4、7、8、5...} (n=0, 1,…,00 )、{x[n]}3={l、l、l、l、2、
1、1、2、2-} (n=0, 1,…,oo )。步骤S306 (包括S306a、S306b、S306c)则是三条支路对输入其中的数据进行低通滤波处理,该输入数据一部分为原取模结果不为零、无需微调的初始数据,另一部分为原取模结果为零、进行加减I的微调后数据。步骤S307是对三条支路的滤波结果进行容错处理的校验选择,并输出最终数据。申请人:将本发明的方法在Virtex-4FPGA上进行仿真测试,测试结果如下:针对输入采样数据为8比特,滤波系数也为8比特的16阶FIR低通滤波器,当模数为3时,由于第三支路滤波器处理的输入采样数据和滤波系数均为2比特,第三支路处理资源消耗大大降低,使得基于余数校验的容错信号处理技术相对于三模冗余技术可节省大约28%的FPGA资源,已逼近双模的开销。如果使用传统基于余数校验的方案,一旦滤波系数发生单粒子翻转,则有33%的概率无法检测到故障。而如果使用本发明提出的输入数据微调技术,则可以使故障漏检率为O。所付出的代价是引入了微量噪声。通过理论分析和仿真结果证明,当低通带宽为Pi/2时,输入数据改变量总能量的95%都被低通滤波器滤除了,只有5%留在了带内。这表明,通过加I和减I的交替操作,输入数据改变量的绝大部分能量被集中到了高频区域,从而被低通滤波器自然滤除了。上述实施例只是用于具体说明本发明的基于输入数据微调的滤波器容错设计方法,其中的具体数据只是为了说明而随意设置的,不能用以限定本发明的保护范围,即只要按本权利要求所述的步骤实施,其中数据的任意变化均应属于本发明的保护范畴。综上所述,根据本发明的方法进行输入数据微调,可避免由滤波器系数发生单粒子翻转所引起的故障漏检问题,并使输入数据的变化对输出数据的影响降到最小,具有操作简单,结果准确率高的优点。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(R0M),可擦除可编辑只读存储器(EPR0M或闪速存储器),光纤装置,以及便携式光盘只读存储器(⑶ROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
权利要求
1.一种基于输入微调的余数校验容错低通滤波处理方法,其特征在于,包括以下步骤: A:将采集数据X分别传输给第一支路、第二支路和余数支路,其中,所述第一支路和第二支路为两个完全相同的低通滤波器支路,所述余数支路为一个基于余数处理的低通滤波器支路; B:在所述余数支路中,对所述X进行取模处理(X) m,其中模数m为正整数,取模结果为Xm ; C:当所述Xm第奇数次等于零时执行步骤Cl,当所述Xm第偶数次等于零时执行步骤C2,当所述xm不等于零时执行步骤C3 ; Cl:将所述第一支路和第二支路的输入数据加1,并将所述余数支路的取模结果加1,随后所述第一支路、第二支路以及余数支路对微调加I后的新输入数据进行一般的基于余数校验的容错滤波处理; C2:将所述第一支路和第二支路的输入数据减1,并将所述余数支路的取模结果减1,随后所述第一支路、第二支路以及余数支路对微调减I后的新输入数据进行一般的基于余数校验的容错滤波处理。
C3:直接对所述第一支路、第二支路以及余数支路的输入数据进行一般的基于余数校验的容错滤波处理。
2.根据权利要求1所述的方法,其特征在于,所述低通滤波器为直接型或转置型FIR滤波器。
3.根据权利要求1所述的方法,其特征在于,所述余数支路中的滤波器滤波过程中的乘法和加法运算为:P和q是两个操作数且为正整数,则乘法运算为((P)mX (q) Jm,加法运算为((p)m+(q)m)m。
4.根据权利要求1所述的方法,其特征在于,所述模数m优选为3。
全文摘要
本发明提出一种基于输入微调的余数校验容错低通滤波处理方法,包括将采集数据x分别传输给第一支路、第二支路和余数支路,第一支路和第二支路为两个完全相同的低通滤波器支路,余数支路为一个基于余数处理的低通滤波器支路;对x进行取模处理;当取模结果第奇数/偶数次等于零时,分别将第一支路、第二支路和余数支路的输入数据加/减1,随后对微调加/减1后的新输入数据进行基于余数校验的容错滤波处理;当取模结果不等于零时,直接对第一支路、第二支路以及余数支路的输入数据进行一般的基于余数校验的容错滤波处理。本发明可避免由滤波器系数发生单粒子翻转所引起的故障漏检问题,具有操作简单,结果准确率高的优点。
文档编号G06F11/14GK103092731SQ201310042828
公开日2013年5月8日 申请日期2013年2月1日 优先权日2013年2月1日
发明者高镇, 赵明, 王京, 潘文 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1