[发明专利]一种位宽可变的求模运算方法及求模运算电路在审
申请号: | 202110839603.0 | 申请日: | 2021-07-23 |
公开(公告)号: | CN113723035A | 公开(公告)日: | 2021-11-30 |
发明(设计)人: | 杨晨;刘依维;杨泽鹏;苏阳 | 申请(专利权)人: | 西安交通大学 |
主分类号: | G06F30/34 | 分类号: | G06F30/34;G06F7/498 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 马贵香 |
地址: | 710049 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 可变 运算 方法 电路 | ||
1.一种位宽可变的求模运算方法,其特征在于,包括如下步骤:
步骤1,对模数进行左移操作,获得N个左移的结果,用这些左移的结果和模数结合被操作数的位宽,按照由大到小的顺序形成N+1个区间,将第i个区间的最小值记为Mi,i=1、2、3…n或n+1;
步骤2,当对模数左移一位时,进行步骤2a,当对模数左移两位或两位以上时,对被操作数所在的区间进行判断,然后将被操作数跳转到对应区间,根据所在区间的Mi,结合之后步骤中出现的Mi,跳转到之后对应的步骤中;
步骤2a,用被操作数减去M1,所得结果与M1进行比较;
步骤2b,若所述结果小于M1时,进行步骤3,若所述结果大于M1时,用该结果替换被操作数继续进行步骤2a,直到所得结果小于M1,然后进行步骤3;
步骤3,将步骤2得到的结果替换被操作数,将M1替换为M2,将继续进行步骤2a和步骤2b,然后进行步骤4;
步骤4,将步骤3得到的结果替换被操作数,将M1替换为M3,将继续进行步骤2a和步骤2b,然后进行步骤5;
步骤5,按照步骤3和步骤4所描述的重复过程,不断地对步骤4得到的结果进行减法和比较操作,直到完成与Mn+1的减法和比较,输出运算结果,完成求模运算。
2.根据权利要求1所述的一种位宽可变的求模运算方法,其特征在于,步骤1中所述被操作数的位宽是模数位宽的2倍。
3.根据权利要求1所述的一种位宽可变的求模运算方法,其特征在于,所述模数的位宽为10bit或15bit。
4.根据权利要求1所述的一种位宽可变的求模运算方法,其特征在于,步骤1中模数左移的位数能被模数的位宽数整除。
5.根据权利要求1所述的一种位宽可变的求模运算方法,其特征在于,当n≥2时,从步骤2开始,在操作数最多的情况下,需要进行2n-1次步骤2所描述的比较操作和2n-1次步骤2所描述的减法操作。
6.一种位宽可变的求模运算电路,其特征在于,包括若干个移位器、若干个寄存器、若干个减法器和若干个选择器,其中:
所述的若干个移位器,用于分别对模数进行左移操作,得到N个左移的结果;
所述若干个寄存器中的第1级寄存器用于缓存被操作数和若干个移位器得到的N个左移的结果,若干个寄存器中剩余的寄存器分别为第2级寄存器、第3级寄存器、…、第N级寄存器和第N+1级寄存器;
所述的若干个减法器包括第1级减法器、第2级减法器、…、第N级减法器和第N+1级减法器,若干个选择器包括第1级选择器、第2级选择器、…、第N级选择器和第N+1级选择器;
所述第1级寄存器的第一个输出端分别与第2级寄存器、第3级寄存器、…、第N级寄存器和第N+1级寄存器的输入端连接,第1级寄存器的第二个输出端与第1级选择器的输入端连接,第1级寄存器的第三个输出端和第四个输出端均与第1级减法器的输入端连接,第1级减法器的输出端与第1级选择器的输入端连接,第1级选择器的输出端与第2级寄存器的输入端连接,第1级寄存器、第1级减法器和第1级选择器形成第1级操作单元;
所述的第i级寄存器、第i级减法器和第i级选择器按照第1级寄存器、第1级减法器和第1级选择器的连接方式形成第i级操作单元,i分别为2、3…N和N+1,第i级选择器的输出端与第i+1级寄存器的输入端连接,i分别为2、3…和N;
当对模数左移两位或两位以上时,所述的第1级寄存器还设置有第五个输出端和第六个输出端,若干个选择器还包括初级选择器;第1级寄存器通过第五个输出端将被操作数输入到初级选择器中,通过第六个输出端将N个左移的结果输入到初级选择器中,初级选择器通过若干个使能信号分别控制第2级寄存器、第3级寄存器、…、第N级寄存器和第N+1级寄存器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110839603.0/1.html,转载请声明来源钻瓜专利网。