钱式搜索装置、存储装置以及钱式搜索方法_3

文档序号:9330190阅读:来源:国知局
— I以及寄存器35 — I的运算处理中,到错误位置判定为止的运算路线的长度根据求取α的幂时的异或运算级数来确定。在该情况下,相对于向α的幂的运算输入的8位的S [7:0],在进行较多的异或运算的情况下运算路线变长。例如,在图4中,在为了求取Ll[7:0]中的L1[0]而对输入位S[7:0]全部进行异或运算的情况下,经由L1[0]的运算路线变为最长的路线。
[0043]在钱式搜索部263,为了在每个循环都判定错误位置,需要在I个循环以内进行所有的异或运算。另外,在钱式搜索部263,随着电路的工作频率变快,异或运算变得难以集中在I个循环内。如果工作频率变快,则在逻辑合成时使用驱动能力较高的逻辑单元进行进行逻辑合成的最佳化以使得异或运算集中在I个循环以内,具有电路规模增加的倾向。所谓逻辑单元为寄存器、XOR部等满足逻辑运算功能的最小的电路。
[0044]在本实施方式中,为了缩短该运算路线,对各运算部31 — 11?31 — 18,经由寄存器35 — I输入与在XOR部34 — I运算所得的全部8位有关的异或运算结果。
[0045]XOR部34 — I,对于返回到寄存器32 — I的L8[7:0]对全部8位进行异或运算。寄存器35 -1保持XOR部34 — I中的运算结果。
[0046]在运算部31 — 11?31 — 18,在α的幂的运算中,对输入位S[7:0]中的、过半数即5位以上进行异或运算所得的运算部分,通过未进行异或运算的输入位与来自对L8[7:O]全部进行了异或运算并保持的寄存器35 -1的输出FLX的异或运算来进行。
[0047]由此,在运算部31 — 11?31 — 18中,能够将5位以上的异或运算转换成4位以下的异或运算,能够减少异或运算的运算级数以缩短运算路线。以下,说明该构成在逻辑上等价的情况。
[0048]在图4 中,如果不使用 FLX = S[0] ^ S[l]八 S[2] ^ S[3]八 S[4] ^ S[5]八 S[6]八S[7],则运算部31 - 11中的α的幂的运算(异或运算)能够如下表示。
[0049]LI [O] =S [O]八 S [I] " S [2]八 S [3] " S [4]八 S [5] " S [6]八 S [7]
[0050]LI [I] =S [O]八 S [I] a s [2]八 S [3]八 S [4]
[0051]在这里,如果使用上述的FLX,则LI [O]与FLX相同,所以变为LI [O] =FLX0同样,如果使用FLX则能够如以下那样转换LI [I]。
[0052]LI [I] =FLX " S [5]八 S [6]八 S [7]
[0053]LI [I] =S [O]八 S [I] " S [2]八 S [3] " S [4]八 S [5] " S [6]八 S [7] " S [5]八S[6]八 S[7] = S[O]八 S[l]八 S[2]八 S[3]八 S[4]
[0054]在图4中,对于其他的运算部31 — 12?31 — 18的异或运算,通过使用FLX也同样能够减少运算级数。
[0055]S卩,在本实施方式中,利用如果对相同位进行2次异或运算则变为O、所以与没有进行异或运算等价这一异或运算的性质。由此,在各运算部31 — 11?31 — 18中,对于5位以上的运算,使用没有进行运算的3位以下的输入和事先进行了运算后的I位,压缩至4位以下的运算。在XOR部34 — I中,作为事先运算进行8位的异或运算,但使用该运算结果的是下一个循环,所以对进行错误位置判定的运算级数没有影响。在各运算部31 — 11?31 — 18中,使用的运算式是已知的,所以能够与XOR部34 — I内的运算内容相应地预先设定降低了异或运算的级数的运算式。
[0056]在图4中,具体地说,对与错误位置多项式σ (X)的系数σ I相当的部分的运算进行了说明,但通过对与图3所示的其他的系数相当的部分的运算也进行同样的运算,能够降低异或运算的级数。
[0057]这样,在本实施方式的钱式搜索部263中,对于能够进行基本的钱式搜索的运算的构成,追加用于通过事先运算而缩短异或运算路线的构成。所谓用于缩短异或运算路线的构成,是对返回到寄存器32 — I?32 — t的全部m位信号分别进行异或运算的t个XOR部34 — I?34 — t以及分别保持XOR部34 — I?34 — t的运算结果的t个寄存器35 —
I?35 — t0
[0058]可以认为,通过用于缩短该异或运算路线的构成(电路)的追加,在钱式搜索部263中,在图3所示的构成中电路规模增加,但在伽罗瓦体的位数和/或错误位置多项式的次数t变大的情况下,还有电路的工作频率快的情况下,电路规模不增加。相反地,在钱式搜索部263,也能够得到使整体的电路规模减小的效果。其原因如下所述。
[0059]一般地说,在钱式搜索电路中,如果伽罗瓦体的位数和/或错误位置多项式的次数t变大,则在I个循环内进行的异或运算级数增加。另外,如果电路的工作频率快,则用于进行全部的异或运算的时间变短。其结果,处理可能在I循环以内没有结束、发生违背定时的情况。为了消除违背定时,有效的是在逻辑合成时使用驱动能力高的逻辑单元并缩短异或运算的运算时间。然而,驱动能力高的逻辑单元与驱动能力低的逻辑单元相比,栅(gate,门)规模较大。因此,越大量使用驱动能力高的逻辑单元,钱式搜索电路整体的电路规模变得越大。
[0060]然而,在本实施方式的钱式搜索部263,将异或运算路线缩短,在I个循环内进行的异或运算级数减少,所以在定时上产生余量、不需要较多地使用驱动能力高的逻辑单元。因此,在由于使用驱动能力高的逻辑单元而引起的电路规模的增加比由于追加了异或运算与寄存器而引起的电路规模的增加大的情况下,在本实施方式所示的钱式搜索部263,可得到能够减小整体的电路规模的效果。另外,钱式搜索部263即使在电路规模变大的情况下,也是用于消除违背定时的有效构成。
[0061]在本实施方式的钱式搜索部263,与以往比较能够提高电路的工作频率。另外,在钱式搜索部263中,在能够使用驱动能力低的逻辑单元的情况下,能够降低消耗电流。一般地说,驱动能力低的逻辑单元自身比驱动能力高的逻辑单元小,所以在钱式搜索部263中能够减小电路规模。
[0062]图5是表示第I实施方式的钱式搜索方法的流程图。首先,在钱式搜索部263,寄存器(第I寄存器)32 — I?32 — t以及XOR部34 — I?34 — t在钱式搜索的初次运算中输入错误位置多项式σ (χ)的对应的各系数(步骤SI)。寄存器(第I寄存器)32 -1?32 — t按输入的系数初始化(步骤S2)。XOR部34 — I?34 — t按输入的系数进行异或运算(步骤S3)。
[0063]寄存器(第2寄存器)35 — I?35 — t分别保持XOR部34 — I?34 — t内的异或运算的运算结果(步骤S4)。运算部31 — 11?31 — tn从对应的寄存器(第I寄存器)32 — I?32 — t以及寄存器(第2寄存器)35 — I?35 — t输入寄存器值,进行异或运算(步骤S5)。作为高次运算部的运算部31 — In?31 — tn经由选择部33 — I?
33— t将运算结果向寄存器(第I寄存器)32— I?32 —t以及XOR部34 — I?34 —t输出(步骤S6)。寄存器(第I寄存器)32 — I?32 — t保持输入的运算结果(步骤S7)。XOR部34 — I?34 — t通过输入的运算结果进行异或运算(步骤S8)。在钱式搜索部263中,随后返回到步骤S4对同样的运算反复实施预定的次数。
[0064]根据第I实施方式,在钱式搜索部263中,在要求较快的工作频率且高速处理的并联化了的钱式搜索电路,进行在α的幂的运算中使用的输入位中全部输入位的异或运算的事先运算,保持该运算结果,使用保持的异或运算的运算结果来进行钱式搜索中的与α的幂的运算相当的异或运算。其结果,通过对适用了本实
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1