高速低功耗乘法器的对称分割算法及电路结构制造技术

技术编号:2867670 阅读:181 留言:0更新日期:2012-04-11 18:40
一种高速低功耗乘法器的对称分割算法,其特征在于,包括如下步骤:    步骤S1:N位的两个乘法运算操作数送入乘法器的两个输入端;    步骤S2:两个N位乘法运算操作数对称分割为原位宽的一半,即N位的操作数分割成N/2位高位和N/2位低位进行运算;    步骤S3:两个乘数的高N/2位与高N/2位相乘、低N/2位与低N/2位相乘;    步骤S4:按照从左到右的顺序,高位乘积的结果之后拼接低位乘积结果,形成2N位的初步运算结果,并保存备用;    步骤S5:两个乘数的高N/2位与低N/2位交叉相乘;    步骤S6:交叉相乘得到的两个N位部分积结果相加;    步骤S7:两个N位部分积加运算结果的最低位,与步骤S4得到的拼接结果右起第N/2位对齐,两数相加,得到最终的乘法结果;    步骤S8:在时钟控制下,最终的乘法运算结果输出;    本发明专利技术的算法采用操作数对称分割之后,再进行小位数乘法的运算方式,使用多步骤实现高位数的乘法运算,本发明专利技术对应的电路结构可以在一个全局时钟周期内完成所有步骤的操作。(*该技术在2023年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术属于微电子学领域的高速低功耗集成电路设计,特别是指一种高速低功耗乘法器的对称分割算法及电路结构
技术介绍
乘法运算在数字信号处理过程中使用非常频繁,乘法器在专用集成电路(ASIC)、通用数字信号处理器(DSP)和先进的微处理器(CPU)中均有广泛使用。用硬件来实现乘法运算通常有移位累加的阵列乘法器和采用Booth算法、Wallace树型压缩结构的快速乘法器等几种类型。并且为了达到更快的速度,通常都使用多级流水线技术在多个时钟周期内完成乘法运算。乘法运算在流水线指令处理器中(DSP、CPU)中,通常位于时序的关键路径上,是流水线平衡的瓶颈。通过多级同步时钟流水线来实现乘法运算,可以大大提高乘法运算的速度,平衡各级流水线,提高流水线效率,但同时,一个乘法运算需要在多个时钟周期内完成,在流水线指令处理机中造成很多冲突,包括数据相关和结构相关冲突。由此,一方面,对于处在关键路径上的乘法运算,要求执行速度越快越好;另一方面,为了提高整个流水线处理机的执行效率,要求乘法运算尽可能少的占用流水线级,最好在一个时钟周期内完成,减少冲突;这两方面是一对矛盾。随着市场对数字化产品需求的不断增加,不光对数字信号处理的速度提出了更高的要求,同时对数据的处理能力也提出了更高的要求。新开发的CPU已达到64位水平,其中包括64位的乘法电路。未来的数字处理必将要求更高位数处理能力的乘法器。现有的基于Booth和Wallace Tree快速算法的乘法器要达到64位以上的运算非常困难,速度、功耗和面积各方面都无法满足未来技术的要求。
技术实现思路
本专利技术的目的在于,提供一种高速低功耗乘法器的对称分割算法及电路结构,其可实现高位数甚至超高位数乘法的快速运算。本专利技术一种高速低功耗乘法器的对称分割算法,其特征在于,包括如下步骤步骤S1N位的两个乘法运算操作数送入乘法器的两个输入端;步骤S2两个N位乘法运算操作数对称分割为原位宽的一半,即N位的操作数分割成N/2位高位和N/2位低位进行运算;步骤S3两个乘数的高N/2位与高N/2位相乘、低N/2位与低N/2位相乘;步骤S4按照从左到右的顺序,高位乘积的结果之后拼接低位乘积结果,形成2N位的初步运算结果,并保存备用;步骤S5两个乘数的高N/2位与低N/2位交叉相乘; 步骤S6交叉相乘得到的两个N位部分积结果相加;步骤S7两个N位部分积加运算结果的最低位,与步骤S4得到的拼接结果右起第N/2位对齐,两数相加,得到最终的乘法结果;步骤S8在时钟控制下,最终的乘法运算结果输出;本专利技术的算法采用操作数对称分割之后,再进行小位数乘法的运算方式,使用多步骤实现高位数的乘法运算,本专利技术对应的电路结构可以在一个全局时钟周期内完成所有步骤的操作。本专利技术一种高速低功耗对称分割算法乘法器的电路结构,其特征在于,其中包括一自定时控制系统,该自定时控制系统是高速低功耗对称分割算法乘法器电路所需的外部端口为时钟信号、复位信号和两个N位乘法操作数输入端口;一N位自定时对称分割算法乘法器电路,该N位自定时对称分割算法乘法器电路与自定时控制系统的时钟信号及控制信号连接。其中N位自定时对称分割算法乘法器电路包括乘法运算模块、部分积重组模块、部分积求和模块,该乘法运算模块、部分积重组模块、部分积求和模块之间用多选器连接。其中N位自定时对称分割算法乘法器电路中有两个N/2位乘法器,对称分割算法运算所需的乘法器位数是普通乘法器操作数位数的一半;在运算的两个流水线级中,由多选器选择不同的两套N/2位的乘数分别送入两个N/2位乘法器中运算,来完成分割后的操作数高位与高位、低位与低位及高位与低位交叉相乘运算; 乘法器包括各种电路结构形式实现的有符号数/无符号数乘法器,其输出端与多选器相连,由多选器选择送入部分积重组模块。其中部分积重组模块电路包括N位的拼接电路,其完成的功能是在流水线第一级,将两个乘法器高位与高位、低位与低位乘积的N位结果拼接成2N位,送入2N位的加法器运算;其输出通过多选器与2N位的加法器相连;在流水线第二级,拼接电路不工作;N位的加法器,在流水线第二级,用来完成分割的操作数高位与低位交叉相乘后得到的部分积的累加运算;在流水线第一级,该加法器不工作;部分积重组模块输出包括2N位拼接电路输出和N+1位加法器输出,与多选器相连,作为 部分积求和模块的输入信号。其中部分积求和模块电路包括2N位传输总线,用来将拼接电路的输出结果直接送入结果寄存器,在流水线的第一级,多选器选择2N位拼接电路的结果直接送入结果寄存器中保存,流水线第二级,该总线不使用;2N位加法器,用来完成最终部分积求和运算,以得到最终的乘法运算结果;流水线第二级,多选器选择结果寄存器的反馈值,送入2N位加法器一个输入端,选择N位加法器的结果拼接N/2位常数零送入2N位加法器的另一端完成加运算,并得出最终结果;部分积求和模块的输出与结果寄存器通过多选器相连。其中自定时控制系统电路包括两相时钟产生电路,外部输入的时钟经过两相时钟产生电路产生互不交叠的同频率两相时钟,两个时钟输出信号与控制信号产生电路输入端相连;控制信号产生电路,两相时钟信号的上升沿先后到达控制信号产生电路,触发控制信号状态的翻转;其输出的控制信号连接乘法器内各个模块输入端所连接的多选器,控制多选器选择不同的信号送入模块中进行运算。附图说明为进一步说明本专利技术的技术特征,以下结合实施例及附图对本专利技术作一详细的描述,其中图1是高速低功耗乘法器对称分割算法流程图。图2是N位自定时高速低功耗对称分割算法乘法器电路结构图。图3是N位自定时高速低功耗对称分割算法乘法器局部自定时流水线控制部分电路结构框图。具体实施例方式请参阅图2和图3,本专利技术一种高速低功耗对称分割算法乘法器的电路结构,其中包括一自定时控制系统30,该自定时控制系统30是高速低功耗对称分割算法乘法器电路所需的外部端口为时钟信号、复位信号和两个N位乘法操作数输入端口;一N位自定时对称分割算法乘法器电路20,该N位自定时对称分割算法乘法器电路20与自定时控制系统30的时钟信号及控制信号连接。其中N位自定时对称分割算法乘法器电路20包括乘法运算模块21、部分积重组模块22、部分积求和模块23,该乘法运算模块21、部分积重组模块22、部分积求和模块23之间用多选器24连接。其中N位自定时对称分割算法乘法器电路20中有两个N/2位乘法器211,对称分割算法运算所需的乘法器位数是普通乘法器操作数位数的一半;在运算的两个流水线级中,由多选器24选择不同的两套N/2位的乘数分别送入两个N/2位乘法器211中运算,来完成分割后的操作数高位与高位、低位与低位及高位与低位交叉相乘运算;乘法器211包括各种电路结构形式实现的有符号数/无符号数乘法器,其输出端与多选器24相连,由多选器24选择送入部分积重组模块22。其中部分积重组模块22电路包括N位的拼接电路221,其完成的功能是在流水线第一级,将两个乘法器高位与高位、低位与低位乘积的N位结果拼接成2N位,送入2N位的加法器运算;其输出通过多选器与2N位的加法器相连;在流水线第二级,拼接电路不工作;N位的加法器222,在流水线第二级,用来完成分割的操作数高位与低位交叉相乘后得到的部分积的累加运算;在流本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:李莺陈杰
申请(专利权)人:中国科学院微电子中心
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利