CN101587433A - 一种基于多级查表的压缩伽罗华域的执行方法及系统 - Google Patents

一种基于多级查表的压缩伽罗华域的执行方法及系统 Download PDF

Info

Publication number
CN101587433A
CN101587433A CNA2008101001171A CN200810100117A CN101587433A CN 101587433 A CN101587433 A CN 101587433A CN A2008101001171 A CNA2008101001171 A CN A2008101001171A CN 200810100117 A CN200810100117 A CN 200810100117A CN 101587433 A CN101587433 A CN 101587433A
Authority
CN
China
Prior art keywords
module
look
classification
galois field
multistage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2008101001171A
Other languages
English (en)
Other versions
CN101587433B (zh
Inventor
程作仁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Shenzhen ZTE Microelectronics Technology Co Ltd
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN2008101001171A priority Critical patent/CN101587433B/zh
Publication of CN101587433A publication Critical patent/CN101587433A/zh
Application granted granted Critical
Publication of CN101587433B publication Critical patent/CN101587433B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明公开了一种基于多级查表的压缩伽罗华域的执行方法及系统,用于通讯系统,包括,多项式乘法器模块:用于在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值,输入多级查表模块;多级查表模块:用于将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式将获得的数值输入域加模块;域加模块:用于根据多级查表模块中分级比特位和分级层次的不同,将多级查表模块输入的数值进行位异或操作获得最终值。应用本发明,有效地降低查找表的占用空间,提高了系统的效率。

Description

一种基于多级查表的压缩伽罗华域的执行方法及系统
技术领域
本发明涉及集成电路设计领域、FPGA(现场可编程门阵列)设计领域以及通讯领域,尤其涉及一种基于多级查表的压缩伽罗华域的执行方法及系统。
背景技术
通讯系统中进行RS(里德-所罗门)编码和高级加密都广泛采用了伽罗华域中的具有系数的多项式乘法。传统方法采用采用先乘后取模的方式或者单级乘取模的方式实现,传统方法占用周期较多且实现较复杂,为了避免传统方法的这种缺点,专利CN200580045323.1提出一种利用查找表代替求模的方法,可以大幅减少运算周期,但是其查找表会随着伽罗华域的增大而指数级增大,例如对于伽罗华域GF(28)来说,所需查找表空间为27=128,而对于伽罗华域GF(216)来说,其查找表空间将达到215=32768,该专利的方法在伽罗华域空间较大时使用将会受限,因此需要一种新的方法以降低查找表占用空间的问题。
发明内容
本发明所要解决的技术问题是提供一种基于多级查表的压缩伽罗华域的执行方法及系统,有效地降低查找表的占用空间,提高了系统的效率。
为了解决上述问题,本发明提供了一种基于多级查表的压缩伽罗华域的执行系统,用于通讯系统,
包括多项式乘法器模块、多级查表模块、域加模块,其中,
多项式乘法器模块:用于在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值,输入多级查表模块;
多级查表模块:用于将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式将获得的数值输入域加模块;
域加模块:用于根据多级查表模块中分级比特位和分级层次的不同,将多级查表模块输入的数值进行位异或操作获得最终值。
进一步地,上述执行系统还可包括,所述多项式乘法器模块是通过与门、异或门来实现硬件的构建。
进一步地,上述执行系统还可包括,所述多级查表模块的多级查表中的表是指同一个表,每一级查表只是对应地址的变化。
进一步地,上述执行系统还可包括,所述多级查表模块中所述分级的方式包括以4比特、8比特、3比特、或5比特作为分级的分级方式。
进一步地,上述执行系统还可包括,所述多级查表模块中,所述分级查表的方式包括两级查表的方式。
本发明还提供了一种基于多级查表的压缩伽罗华域的执行方法,用于通讯系统,包括,
在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值;
将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式获得数值,并根据分级比特位和分级层次的不同,将该获得的数值进行位异或操作获得最终值。
进一步地,上述执行方法还可包括,所述多级查表中的表是指同一个表,每一级查表只是对应地址的变化。
进一步地,上述执行方法还可包括,所述将多项式乘法器模块输入的多项式的乘积值进行分级中所述分级的方式,包括以4比特、8比特、3比特、或5比特作为分级的分级方式。
进一步地,上述执行方法还可包括,所述分级查表的方式包括两级查表的方式。
与现有技术相比,应用本发明,有效地降低查找表的占用空间,提高了系统的效率。
附图说明
图1是本发明的基于多级查表的压缩伽罗华域的执行系统的结构示意图;
图2是本发明的基于多级查表的压缩伽罗华域的执行方法的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步说明。
本发明的主要构思是:本发明是在专利CN200580045323.1基础上作的进一步改进,因而两者基本结构相同,不同之处主要在于,当域的空间增大时,其查找表的空间呈指数级增长,因此在查表中本发明通过分级查表的方式,大幅度的减少了查表的空间,节省了资源,提高了效率,通常分级以4比特或8比特为基本单位。
本发明的压缩伽罗华域的执行系统可以分为以下几个部分,包括多项式乘法器模块、多级查表模块、域加模块,用于通讯系统中编码和加密,其装置结构见图1。
多项式乘法器模块:用于在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值,输入多级查表模块;
本模块的目的是计算两个输入域内数的乘积,以GF(28)计算为例,其输入为8个比特数据,假设分别为:
m1={a7a6a5a4a3a2a1a0}
m2={b7b6b5b4b3b2b1b0}
则m1×m2={a7a6a5a4a3a2a1a0}×{b7b6b5b4b3b2b1b0}
根据域定义m1和m2可以分别表示为:
m1=a7x7+a6x6+a5x5+a4x4+a3x3+a2x2+a1x+a0
m2=b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0
则其乘积可以表示为:
c(x)=m1×m2=c14x14+c13x13+c12x12+c11x11+c10x10
+c9x9+c8x8+c7x7+c6x6+c5x5+c4x4+c3x3+c2x2+c1x+c0
注:乘积项中不包含x15
其中乘积项系数表为:
c14=a7*b7
c 13 = a 7 * b 6 ⊕ a 6 * b 7
c 12 = a 7 * b 5 ⊕ a 6 * b 6 ⊕ a 5 * b 7
c 11 = a 7 * b 4 ⊕ a 6 * b 5 ⊕ a 5 * b 6 ⊕ a 4 * b 7
c 10 = a 7 * b 3 ⊕ a 6 * b 4 ⊕ a 5 * b 5 ⊕ a 4 * b 6 ⊕ a 3 * b 7
c 9 = a 7 * b 2 ⊕ a 6 * b 3 ⊕ a 5 * b 4 ⊕ a 4 * b 5 ⊕ a 3 * b 6 ⊕ a 2 * b 7
c 8 = a 7 * b 1 ⊕ a 6 * b 2 ⊕ a 5 * b 3 ⊕ a 4 * b 4 ⊕ a 3 * b 5 ⊕ a 2 * b 6 ⊕ a 1 * b 7
c 7 = a 7 * b 0 ⊕ a 6 * b 1 ⊕ a 5 * b 2 ⊕ a 4 * b 3 ⊕ a 3 * b 4 ⊕ a 2 * b 5 ⊕ a 1 * b 6 ⊕ a 0 * b 7
c 6 = a 6 * b 0 ⊕ a 5 * b 1 ⊕ a 4 * b 2 ⊕ a 3 * b 3 ⊕ a 2 * b 4 ⊕ a 1 * b 5 ⊕ a 0 * b 6
c 5 = a 5 * b 0 ⊕ a 4 * b 1 ⊕ a 3 * b 2 ⊕ a 2 * b 3 ⊕ a 1 * b 4 ⊕ a 0 * b 5
c 4 = a 4 * b 0 ⊕ a 3 * b 1 ⊕ a 2 * b 2 ⊕ a 1 * b 3 ⊕ a 0 * b 4
c 3 = a 3 * b 0 ⊕ a 2 * b 1 ⊕ a 1 * b 2 ⊕ a 0 * b 3
c 2 = a 2 * b 0 ⊕ a 1 * b 1 ⊕ a 0 * b 2
c 1 = a 1 * b 0 ⊕ a 0 * b 1
c0=a0*b0
根据上边计算公式可以求得
c=m1×m2={c14c13c12c11c10c9c8c7c6c5c4c3c2c1c0}
多项式乘法器模块针对硬件的实现,其系数公式中的*可以用“与门”来实现,
Figure A200810100117000714
用“异或门”来实现。
多级查表模块:用于将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式将获得的数值输入域加模块,其中,通常分级以4比特或8比特为基本单位;
专利CN200580045323.1中相对应本模块是一个查找表,其输入为多项式乘法器的高位,以GF(28)为例,其输入为高7位,即c14-c8,通过查找地址{c14c13c12c11c10c9c8},求出一组数值,求出的数值用于最后的域加模块。
前边提到当域的空间增大时,其查找表空间指数级增长,为了避免这种缺陷,在本发明中,采用分级查找的方式,通常分级以4比特或8比特为基本单位,例如对于GF(28),如果以4比特分,则可以将地址分成3比特和4比特。首先用c14-c12作为地址第一次查表,其生成8比特数据,将生成数据与{c11c10c9c8c7c6c5c4}作位异或操作,生成新的8比特数据{c11′c10′c9′c8′c7′c6′c5′c4′},然后将{c11′c10′c9′c8′}作为第二次查找表的地址查找相对应的8比特数据,{c7′c6′c5′c4′}与{c7c6c5c4}进行异或操作生成新的4比特数据{e7e6e5e4},最后将第二个查找表输出的8比特数据{d7d6d5d4d3d2d1d0}和{e7e6e5e4}输出到域加模块。
如果采用专利CN200580045323.1的方法实现GF(28)的域乘法,需要查找表空间为128*8比特,而采用两级查找表所需查找表空间为16*8比特,可以看出节省的空间比例是非常大的。
在GF(28)的两级查表中使用的是同一个表,每一级查表只是对应地址的变化,对多级查表而言,其使用的也是一个表。
需要注意的是虽然通常分级以4比特或者8比特可以满足需求,但是本发明也包含其它分级方式(例如以3比特或5比特等的衍生分级方式)。本发明以GF(28)为例并不意味着本发明只应用于GF(28),它可以广泛地应用到几乎所有伽罗华域(不包含GF(20)、GF(21))。虽然此处只说明了两级查表,但本发明根据应用环境的变化也包含其它多级查表方式,其中,多级查表方式与两级类似。
域加模块:用于根据多级查表模块中分级比特位和分级层次的不同,将多级查表模块输入的数值进行位异或操作获得最终值。
本模块实现的就是最后的位异或操作,以前边所述的两级GF(28)为例,其计算为:
c = { d 7 d 6 d 5 d 4 d 3 d 2 d 1 d 0 } ⊕ { e 7e6e5e4 c 3 c 2 c 1 c 0 }
根据分级比特位的不同和分级层次多少的不同,域加模块具体的参与操作的比特位会略有区别,但基本操作都是两个8比特数据的位异或操作。
如图2所示,基于多级查表的压缩伽罗华域的执行方法,用于通讯系统中编码和加密,包括以下步骤,
步骤100、在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值;
步骤200、将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式获得数值,并根据分级比特位和分级层次的不同,将该获得的数值进行位异或操作获得最终值。
下面结合具体实例对本发明作进一步说明。
在AES(先进加密标准)加解密算法中使用倒GF(28)的域乘法,其不可约多项式为:x8+x4+x3+x+1。
输入数据为两路8比特数据,其实现就是前边描述系数表的实现,即用与和异或操作实现第一步乘法(多项式乘法器模块),以系数c7为例,如果采用硬件实现,其硬件描述为:
Assign c[7]=
(a7&b0)^(a6&b1)^(a5&b2)^(a4&b3)^(a3&b4)^(a2&b5)^(a1&b6)^(a0&b7);
这是阻塞赋值描述方式,也可以采用非阻塞赋值描述方式。
多级查表模块采用2级查表,先进行3比特查表后,再进行4比特查表。其表的内容如下:
  地址   数据
  0   00
  1   1b
  2   36
  3   2d
  4   6c
  5   77
  6   5a
  7   41
  8   d8
  9   c3
  a   ee
  b   f5
  c   b4
  d   af
  e   82
  f   99
其中,地址和数据都是十六进制数据。
域加模块实现按位异或操作,如果采用硬件描述语言,其阻塞赋值方式可以表示为:
Assign dout[7:0]=din1[7:0]^din2[7:0];
也可以用非阻塞赋值方式描述。
假设输入的数据为16进制,m1=57,m2=83。则经过多项式乘法模块操作后其输出为:2b79,将高三位作为地址查表,2对应36,则将36与2b79的中间8位做位异或操作, 36 ⊕ b 7 = 81 , 取结果的高4位作为地址,即将8作为地址进行第二次查表,8对应d8,将d8与81的后4位和2b79的后4位拼成的8位数据做位异或操作,则最后将 d 8 ⊕ 19 = c 1 . C1即最后计算结果。
本实例采用硬件描述语言实现并不表示本发明仅限于硬件,也可以是其它方式,包含基于各种硬件的软件等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (9)

1、一种基于多级查表的压缩伽罗华域的执行系统,用于通讯系统,其特征在于,
包括多项式乘法器模块、多级查表模块、域加模块,其中,
多项式乘法器模块:用于在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值,输入多级查表模块;
多级查表模块:用于将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式将获得的数值输入域加模块;
域加模块:用于根据多级查表模块中分级比特位和分级层次的不同,将多级查表模块输入的数值进行位异或操作获得最终值。
2、如权利要求1所述的压缩伽罗华域的执行系统,其特征在于,
所述多项式乘法器模块是通过与门、异或门来实现硬件的构建。
3、如权利要求1所述的压缩伽罗华域的执行系统,其特征在于,
所述多级查表模块的多级查表中的表是指同一个表,每一级查表只是对应地址的变化。
4、如权利要求1所述的压缩伽罗华域的执行系统,其特征在于,
所述多级查表模块中所述分级的方式包括以4比特、8比特、3比特、或5比特作为分级的分级方式。
5、如权利要求1所述的压缩伽罗华域的执行系统,其特征在于,
所述多级查表模块中,所述分级查表的方式包括两级查表的方式。
6、一种基于多级查表的压缩伽罗华域的执行方法,用于通讯系统,其特征在于,包括,
在伽罗华域上将带有系数的第一和第二多项式相乘来获得它们的乘积值;
将多项式乘法器模块输入的多项式的乘积值进行分级,通过分级查表的方式获得数值,并根据分级比特位和分级层次的不同,将该获得的数值进行位异或操作获得最终值。
7、如权利要求6所述的压缩伽罗华域的执行方法,其特征在于,
所述多级查表中的表是指同一个表,每一级查表只是对应地址的变化。
8、如权利要求6所述的压缩伽罗华域的执行方法,其特征在于,
所述将多项式乘法器模块输入的多项式的乘积值进行分级中所述分级的方式,包括以4比特、8比特、3比特、或5比特作为分级的分级方式。
9、如权利要求6所述的压缩伽罗华域的执行方法,其特征在于,
所述分级查表的方式包括两级查表的方式。
CN2008101001171A 2008-05-22 2008-05-22 一种基于多级查表的压缩伽罗华域的执行方法及系统 Expired - Fee Related CN101587433B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101001171A CN101587433B (zh) 2008-05-22 2008-05-22 一种基于多级查表的压缩伽罗华域的执行方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101001171A CN101587433B (zh) 2008-05-22 2008-05-22 一种基于多级查表的压缩伽罗华域的执行方法及系统

Publications (2)

Publication Number Publication Date
CN101587433A true CN101587433A (zh) 2009-11-25
CN101587433B CN101587433B (zh) 2011-09-21

Family

ID=41371690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101001171A Expired - Fee Related CN101587433B (zh) 2008-05-22 2008-05-22 一种基于多级查表的压缩伽罗华域的执行方法及系统

Country Status (1)

Country Link
CN (1) CN101587433B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957739A (zh) * 2010-09-10 2011-01-26 清华大学 基于分治的亚二次多项式乘法器
CN106533452A (zh) * 2016-11-14 2017-03-22 中国电子科技集团公司第五十四研究所 一种多进制ldpc编码方法及编码器
WO2023197506A1 (zh) * 2022-04-11 2023-10-19 苏州浪潮智能科技有限公司 一种数据存储方法、系统、设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5854759A (en) * 1997-05-05 1998-12-29 Rsa Data Security, Inc. Methods and apparatus for efficient finite field basis conversion
US7512647B2 (en) * 2004-11-22 2009-03-31 Analog Devices, Inc. Condensed Galois field computing system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957739A (zh) * 2010-09-10 2011-01-26 清华大学 基于分治的亚二次多项式乘法器
CN101957739B (zh) * 2010-09-10 2012-02-08 清华大学 基于分治的亚二次多项式乘法器
CN106533452A (zh) * 2016-11-14 2017-03-22 中国电子科技集团公司第五十四研究所 一种多进制ldpc编码方法及编码器
CN106533452B (zh) * 2016-11-14 2019-05-07 中国电子科技集团公司第五十四研究所 一种多进制ldpc编码方法及编码器
WO2023197506A1 (zh) * 2022-04-11 2023-10-19 苏州浪潮智能科技有限公司 一种数据存储方法、系统、设备及存储介质

Also Published As

Publication number Publication date
CN101587433B (zh) 2011-09-21

Similar Documents

Publication Publication Date Title
Farashahi et al. FPGA based fast and high-throughput 2-slow retiming 128-bit AES encryption algorithm
CN105024960B (zh) 一种dpd系统
CN101848081A (zh) 一种s盒构造方法及s盒
CN102801769A (zh) 短链接生成方法及系统
CN101587433B (zh) 一种基于多级查表的压缩伽罗华域的执行方法及系统
CN101625634A (zh) 一种可重构的乘法器
CN109165006B (zh) Softmax函数的设计优化及硬件实现方法及系统
CN103378968B (zh) 一种g1类s盒构造方法及其电路
CN103106144B (zh) 一种内存索引压缩方法和装置
Sasao Row-shift decompositions for index generation functions
Karaahmetoğlu et al. A new method to determine algebraic expression of power mapping based S-boxes
US20230118570A1 (en) Parallel finite field multiplication device
Selimis et al. Applying low power techniques in aes mixcolumn/invmixcolumn transformations
Peng et al. Designing key-dependent S-boxes using hyperchaotic chen system
Ashmawy et al. A Faster Hardware Implementation of the AES S-box
Jiang et al. Toward Lower Repair Bandwidth and Optimal Repair Complexity of Piggybacking Codes with Small Sub-packetization
CN103729162A (zh) 伽罗瓦域运算系统和方法
CN102929705B (zh) 一种在嵌入式系统中快速生成坐标点的方法
CN104407837A (zh) 一种实现伽罗瓦域乘法的装置及其应用方法
Balaji et al. Low power multiplier using approximate compressor for error tolerant applications
CN110598165B (zh) 一种基于矩阵等价的布尔函数仿射等价判定方法
KR102665675B1 (ko) 뉴럴 네트워크 장치 및 뉴럴 네트워크 장치의 동작 방법
CN102143490A (zh) 一种lte系统中生成消息验证码的方法及装置
Kouretas et al. Residue arithmetic bases for reducing delay variation
CN100594729C (zh) 一种mpeg-2包同步校验字节产生器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151127

Address after: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee after: ZTE Corporation

Patentee after: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Address before: 518057 Nanshan District high tech Industrial Park, Guangdong, South Road, science and technology, ZTE building, legal department

Patentee before: ZTE Corporation

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110921

Termination date: 20170522