CN103699357A - 一种用于模乘和模平方的快速模约简算法电路 - Google Patents

一种用于模乘和模平方的快速模约简算法电路 Download PDF

Info

Publication number
CN103699357A
CN103699357A CN201310655820.XA CN201310655820A CN103699357A CN 103699357 A CN103699357 A CN 103699357A CN 201310655820 A CN201310655820 A CN 201310655820A CN 103699357 A CN103699357 A CN 103699357A
Authority
CN
China
Prior art keywords
modular
input gate
gate array
circuit
input
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
CN201310655820.XA
Other languages
English (en)
Other versions
CN103699357B (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.)
Xian Jiaotong University
Original Assignee
Xian Jiaotong University
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 Xian Jiaotong University filed Critical Xian Jiaotong University
Priority to CN201310655820.XA priority Critical patent/CN103699357B/zh
Publication of CN103699357A publication Critical patent/CN103699357A/zh
Application granted granted Critical
Publication of CN103699357B publication Critical patent/CN103699357B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明公开了一种用于模乘和模平方的快速模约简算法电路,该电路结构包括乘法或平方的部分积产生电路,2个m+1位的二输入与门阵列,m+1个两级CSA加法单元,m+2个FA全加器单元,以及m+3个扫描触发器。本发明针对m位大素数P可以采取从高位到低位约简的方法,可以在乘法和平方运算的同时对其结果进行约简,从而避免了对乘法和平方结果单独进行约简的过程,减少了模乘和模平方的时间;同时,省去了专门的模约简电路模块,降低了电路面积。

Description

一种用于模乘和模平方的快速模约简算法电路
技术领域
本发明涉及集成电路设计领域,具体涉及一种用于模乘和模平方的快速模约简算法电路。
背景技术
目前,对于大数模乘和模平方的模约简过程,通常采用的方案是先计算出乘法和平方的结果,再采用专门的模约简电路进行约简,该方案需要耗费专门的模约简模块和模约简时间。有鉴于此,有必要设计一种新型模约简算法,在乘法和平方运算的同时对其结果进行约简,解决上述问题。
发明内容
本发明的目的在于提供一种用于模乘和模平方的快速模约简算法电路,该电路能够针对m位大素数P从高位到低位约简,在乘法和平方运算的同时对其结果进行约简,从而避免了对乘法和平方结果单独进行约简的过程,减少了模乘和模平方的时间;同时,省去了专门的模约简电路模块,降低了电路面积。
为了达到上述目的,本发明所采用的技术方案是:包括乘法或平方的部分积产生电路、2个m+1位的二输入与门阵列、m+2位的全加器单元FA以及m+3位的扫描触发器;2个m+1位的二输入与门阵列的输出端上连接有用于将4个多位加数压缩成2个加数的m+1位的4-2压缩器;二输入与门阵列的一个输入端分别与扫描触发器的第m+1位和第m+2位的输出端相连,另一个输入端与m位的大素数P的补码Pb相连;2个m+1位的二输入与门阵列的输出端、部分积产生电路的输出端以及扫描触发器前m+1位的输出端均连接到4-2压缩器的输入端上;4-2压缩器的输出端与全加器单元FA的输入端相连,全加器单元FA的结果输出端与扫描触发器的输入端相连;其中,160≤m≤15360。
所述的4-2压缩器为m+1位的两级加法单元CSA。
所述两级加法单元CSA的4个加数分别来自于:部分积产生电路的部分积、扫描触发器累加和的前m+1位以及2个二输入与门阵列的输出。
所述的二输入与门阵列包括m+1位的第一二输入与门阵列、m+1位的第二二输入与门阵列;扫描触发器的第m+1位的输出连接到第一二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第一二输入与门阵列的第0位至第m-1位的另一个输入端上,第一二输入与门阵列的第m位的另一个输入端接“0”;扫描触发器的第m+2位的输出连接到第二二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第二二输入与门阵列的第1位至第m位的另一个输入端上,第二二输入与门阵列的第0位的另一个输入端接“0”。
与现有技术相比,本发明具有以下有益效果:
在本发明中,该电路每经过一个时钟周期就可以累加一行部分积,同时约简掉上一次部分积累加和的最高位,输出结果左移。本发明针对m位大素数P采取从高位到低位约简的方法,可以在乘法和平方运算的同时对其结果进行约简,从而避免了对乘法和平方结果单独进行约简的过程,减少了模乘和模平方的时间;同时,省去了专门的模约简电路模块,降低了电路面积。
附图说明
图1为本发明的电路结构示意图;
图2为本发明的具体电路图。
具体实施方式
下面结合附图对本发明作进一步详细的说明:
参见图1和图2,本发明包括乘法或平方的部分积产生电路、2个m+1位的二输入与门阵列、m+2位的全加器单元FA以及m+3位的扫描触发器;2个m+1位的二输入与门阵列的输出端上连接有用于将4个多位加数压缩成2个加数的m+1位的4-2压缩器,4-2压缩器为m+1位的两级加法单元CSA。两级加法单元CSA的4个加数分别来自于:部分积产生电路的部分积、扫描触发器累加和的前m+1位以及2个二输入与门阵列的输出。二输入与门阵列的一个输入端分别与扫描触发器的第m+1位和第m+2位的输出端相连,另一个输入端与m位的大素数P的补码Pb相连;2个m+1位的二输入与门阵列的输出端、部分积产生电路的输出端以及扫描触发器前m+1位的输出端均连接到4-2压缩器的输入端上;二输入与门阵列包括m+1位的第一二输入与门阵列、m+1位的第二二输入与门阵列;扫描触发器的第m+1位的输出连接到第一二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第一二输入与门阵列的第0位至第m-1位的另一个输入端上,第一二输入与门阵列的第m位的另一个输入端接“0”;扫描触发器的第m+2位的输出连接到第二二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第二二输入与门阵列的第1位至第m位的另一个输入端上,第二二输入与门阵列的第0位的另一个输入端接“0”。4-2压缩器的输出端与全加器单元FA的输入端相连,全加器单元FA的结果输出端与扫描触发器的输入端相连;其中,160≤m≤15360。
在本发明中,该电路每经过一个时钟周期就可以累加一行部分积,同时约简掉上一次部分积累加和的最高位,输出结果左移。
参见图2,初始化时RS=0,将m+3位寄存器全部置为0;输出Q[m+2:0]=000…00…000。工作时,RS=1,SE=1,Q[m+2]和Q[m+1]均为零,第一个有效时钟沿时,来自与门阵列的加数均为0,即第一次不需要约简,部分积累加和左移存入寄存器中;第二个有效时钟沿后,由最高两位的输出Q[m+2]和Q[m+1]控制两个与门阵列是否输出2Pb或Pb,从而进行约简。直到第m个时钟沿,最后一行乘法或平方的部分积累加完成。第m+2个时钟沿到来之前,将SE置为0,最多再经过两个时钟沿,乘法或平方的运算结果被约简至m位。

Claims (4)

1.一种用于模乘和模平方的快速模约简算法电路,其特征在于:包括乘法或平方的部分积产生电路、2个m+1位的二输入与门阵列、m+2位的全加器单元FA以及m+3位的扫描触发器;2个m+1位的二输入与门阵列的输出端上连接有用于将4个多位加数压缩成2个加数的m+1位的4-2压缩器;二输入与门阵列的一个输入端分别与扫描触发器的第m+1位和第m+2位的输出端相连,另一个输入端与m位的大素数P的补码Pb相连;2个m+1位的二输入与门阵列的输出端、部分积产生电路的输出端以及扫描触发器前m+1位的输出端均连接到4-2压缩器的输入端上;4-2压缩器的输出端与全加器单元FA的输入端相连,全加器单元FA的结果输出端与扫描触发器的输入端相连;其中,160≤m≤15360。
2.根据权利要求1所述的用于模乘和模平方的快速模约简算法电路,其特征在于:所述的4-2压缩器为m+1位的两级加法单元CSA。
3.根据权利要求2所述的用于模乘和模平方的快速模约简算法电路,其特征在于:所述两级加法单元CSA的4个加数分别来自于:部分积产生电路的部分积、扫描触发器累加和的前m+1位以及2个二输入与门阵列的输出。
4.根据权利要求1所述的用于模乘和模平方的快速模约简算法电路,其特征在于:所述的二输入与门阵列包括m+1位的第一二输入与门阵列、m+1位的第二二输入与门阵列;扫描触发器的第m+1位的输出连接到第一二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第一二输入与门阵列的第0位至第m-1位的另一个输入端上,第一二输入与门阵列的第m位的另一个输入端接“0”;扫描触发器的第m+2位的输出连接到第二二输入与门阵列的一个输入端上,m位的大素数P的补码Pb的第0位至第m-1位分别连接到第二二输入与门阵列的第1位至第m位的另一个输入端上,第二二输入与门阵列的第0位的另一个输入端接“0”。
CN201310655820.XA 2013-12-05 2013-12-05 一种用于模乘和模平方的快速模约简算法电路 Expired - Fee Related CN103699357B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310655820.XA CN103699357B (zh) 2013-12-05 2013-12-05 一种用于模乘和模平方的快速模约简算法电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310655820.XA CN103699357B (zh) 2013-12-05 2013-12-05 一种用于模乘和模平方的快速模约简算法电路

Publications (2)

Publication Number Publication Date
CN103699357A true CN103699357A (zh) 2014-04-02
CN103699357B CN103699357B (zh) 2016-11-23

Family

ID=50360898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310655820.XA Expired - Fee Related CN103699357B (zh) 2013-12-05 2013-12-05 一种用于模乘和模平方的快速模约简算法电路

Country Status (1)

Country Link
CN (1) CN103699357B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106873941A (zh) * 2017-01-19 2017-06-20 西安交通大学 一种快速模乘和模平方电路及其实现方法
CN114879934A (zh) * 2021-12-14 2022-08-09 中国科学院深圳先进技术研究院 一种高效的零知识证明加速器及方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5426743A (en) * 1991-03-29 1995-06-20 International Business Machines Corporation 3-1 Arithmetic logic unit for simultaneous execution of an independent or dependent add/logic instruction pair
US5436574A (en) * 1993-11-12 1995-07-25 Altera Corporation Universal logic module with arithmetic capabilities
CN1449519A (zh) * 2000-05-15 2003-10-15 艾蒙系统股份有限公司 扩展整数的计算域的范围
CN1883155A (zh) * 2003-11-18 2006-12-20 爱特梅尔股份有限公司 随机化模数约简方法以及用于该方法的硬件
CN101000538A (zh) * 2007-01-05 2007-07-18 东南大学 椭圆曲线密码体制协处理器的实现方法
CN101194457A (zh) * 2005-05-12 2008-06-04 爱特梅尔公司 随机模数化多项式约简方法及其硬件

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5426743A (en) * 1991-03-29 1995-06-20 International Business Machines Corporation 3-1 Arithmetic logic unit for simultaneous execution of an independent or dependent add/logic instruction pair
US5436574A (en) * 1993-11-12 1995-07-25 Altera Corporation Universal logic module with arithmetic capabilities
CN1449519A (zh) * 2000-05-15 2003-10-15 艾蒙系统股份有限公司 扩展整数的计算域的范围
CN1883155A (zh) * 2003-11-18 2006-12-20 爱特梅尔股份有限公司 随机化模数约简方法以及用于该方法的硬件
CN101194457A (zh) * 2005-05-12 2008-06-04 爱特梅尔公司 随机模数化多项式约简方法及其硬件
CN101000538A (zh) * 2007-01-05 2007-07-18 东南大学 椭圆曲线密码体制协处理器的实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
戴紫彬 等: "GF(2m)域上可配置 ECC 算术模块的设计与实现", 《计算机工程》 *
袁丹寿: "一种快速有限域乘法器结构及其VLSI实现", 《微电子学》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106873941A (zh) * 2017-01-19 2017-06-20 西安交通大学 一种快速模乘和模平方电路及其实现方法
CN106873941B (zh) * 2017-01-19 2019-05-21 西安交通大学 一种快速模乘和模平方电路及其实现方法
CN114879934A (zh) * 2021-12-14 2022-08-09 中国科学院深圳先进技术研究院 一种高效的零知识证明加速器及方法
CN114879934B (zh) * 2021-12-14 2023-01-10 中国科学院深圳先进技术研究院 一种高效的零知识证明加速器及方法

Also Published As

Publication number Publication date
CN103699357B (zh) 2016-11-23

Similar Documents

Publication Publication Date Title
CN103176767B (zh) 一种低功耗高吞吐的浮点数乘累加单元的实现方法
CN104603744B (zh) 用于高效浮点运算的方法和设备
CN104899182A (zh) 一种支持可变分块的矩阵乘加速方法
EP4321993A3 (en) Programmable matrix processing engine
US20140379774A1 (en) Systems, methods, and computer program products for performing mathematical operations
CN103699357A (zh) 一种用于模乘和模平方的快速模约简算法电路
SE0201756D0 (sv) A method and a system for improved trading of combinations and baits generated thereof
Singh et al. A review on various multipliers designs in VLSI
CN102063284B (zh) 一种除法运算方法及装置
CN103888246A (zh) 低功耗小面积的数据处理方法及其数据处理装置
CN103176949A (zh) 实现fft/ifft变换的电路及方法
Varshney et al. Design and Execution of Enhanced Carry Increment Adder using Han-Carlson and Kogge-Stone adder Technique: Han-Carlson and Kogge-Stone adder is used to increase speed of adder circuitry
CN203250306U (zh) 一种高效硬件crc校验装置
Khan et al. Comparative analysis of different algorithm for design of high-speed multiplier accumulator unit (MAC)
CN104750455A (zh) 一种基于蒙哥马利模乘的数据处理方法和装置
CN104731551B (zh) 基于fpga进行除法操作的方法及装置
CN104536807B (zh) 基于fpga的dc/dc实时仿真器及方法
CN103164185A (zh) 用纯组合电路实现除法计算的电路
Zacharias et al. Study of approximate multiplier with different adders
CN103944714A (zh) 基于ecc实现抗dpa攻击的标量乘算法的方法及装置
CN106873941B (zh) 一种快速模乘和模平方电路及其实现方法
CN100458452C (zh) 一种电能计量芯片中的数频转换电路
Sharma Fpga implementation of a high speed multiplier employing carry lookahead adders in reduction phase
CN110968938A (zh) 一种用于电磁暂态仿真的理想开关过程分析方法及系统
Nouri et al. Design and evaluation of correlation accelerator in IEEE-802.11 a/g receiver using a template-based coarse-grained reconfigurable array

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161123

Termination date: 20201205

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