并行处理的可分割的乘法累加单元的制作方法

文档序号:6375758阅读:409来源:国知局
专利名称:并行处理的可分割的乘法累加单元的制作方法
技术领域
本发明涉及数字信号处理器领域。具体的说,涉及一种可分割的数字信号处理器数据通道—并行处理的可分割的乘法累加单元。
背景技术
数字信号处理中需要用到大量的乘法累加运算,因此乘法累加单元是数字信号处理器的重要组成部分。目前的数字信号处理要求处理多媒体数据,多媒体数据处理要求提高16位和8位的数据的吞吐量及位宽的灵活性。而一般数字信号处理器中,乘法累加单元只进行固定位宽的运算,这给多媒体处理应用带来很大的不方便。例如MPEG-4中,运算要求位宽从8位到64位的灵活性。另外,目前的处理器,位宽越做越宽,做到32位、64位甚至更宽。而实际应用中,往往只用到16位的运算,例如目前广泛应用的数字语音通信,采用16位。而在图像处理中,一般只应用8位的运算。如果采用一个32位的处理器进行16位甚至8位的运算,会带来功耗和面积的浪费。
多媒体增强微处理器及DSP中,要求大的16位和8位处理的吞吐。目前文献上报导较多的流水线乘法器,利用两个16位的乘法器,可以在两个周期内完成一次32位的乘法累加运算吞吐,一个周期内完成两次16位的乘法累加运算。例如Intel公司的IntelRXScaleTM的协处理器,为了增强多媒体处理功能,采用了两个16位乘法累加器,增加16位处理时的吞吐。这种结构能很好的实现16位运算,但进行32位运算时,吞吐量降低了。而且,这种流水线结构只能实现两种位数的运算,灵活性还不够。另外,这种结构运用到处理器中时,32位和16位运算的周期不一样,必须采用不同的编码,这带来了额外的开销。
一般可分割乘法器是一种采用基于Baugh-Wooley算法的串—并行乘法器,被乘数并行输入,而乘数串行输入。该方法实现可分割功能方面模块化较好,但采用了串行输入,完成一个16位的运算,需要32个周期。这在DSP应用中是不可想象的。而且这种方法采用小乘法器拼大乘法器的途径,这降低了大乘法器的性能。

发明内容
本发明的目的在于,提供一种并行处理的可分割的乘法累加单元,可以在一个周期内完成一次32位、两次16位、四次8位的运算。
本发明一种并行处理的可分割的乘法累加单元,其特征在于,其中包括一个部分积生成单元,一个部分积累加阵列,一个可分割累加器构成;其中部分积生成单元的输出端连接于部分积累加阵列的输入端;部分积累加阵列的输出端连接于可分割累加器的输入端;利用该结构实现32位、16位和8位乘法累加运算。
其中可分割的部分积生成单元是由32个子生成单元构成,其中子生成单元由一个与门和一个两输入的选通器构成,其中该选通器的输出端接与门的一个输入端;可分割的部分积生成单元根据不同的模式控制信号产生32位乘法运算,两个16位乘法运算,四个8位乘法运算的部分积。
其中可分割的累加器单元由4个20位的累加器构成,20位累加器由19个全加器单元和一个可分割全加器单元构成,全加器单元由一个全加器和一个多选器构成,该多选器的输出端接全加器的输入端;可分割的乘法累加单元在模式信号控制下,可以工作在32位,16位,8位工作模式。分别完成一次80位累加运算,两次40位累加运算及四次20位累加运算。
采用本发明的乘法累加单元,可以在一个时钟周期内完成一次32位的乘法累加运算,两次16位的乘法累加运算,4次8位的乘法累加运算,增加了DSP数据通道的灵活性。这种结构增加了16位和8位乘法运算的吞吐量。这种结构可以采用模式控制位的方法,实现不同位数运算的转换,这样可以不改变运算指令的编码,提高处理器的编码效率。这种结构在进行8位和16位运算时,采用多余信号置零的方式实现资源,资源复用率高,复用了同一个加法器阵列,节省了面积。这种结构增加了32位乘法器的功能,对性能的影响也很小。
以下结合附图通过对具体实施例子的描述,进一步详细说明本发明可分割的乘法累加单元的结构、优点和性能,其中


图1是本发明并行可分割的乘法累加单元的总体结构图。
图2是本发明并行可分割的乘法累加单元的内部框图。
图3是本发明并行可分割的乘法累加单元的部分积示意图。
图4是本发明并行可分割的乘法累加单元的部分积结构图。
图5是本发明并行可分割的乘法累加单元的部分积内部单元。
图6是本发明并行可分割的乘法累加单元可分割累加器框图。
图7是本发明并行可分割的乘法累加单元20位累加器结构图。
图8是本发明并行可分割的乘法累加单元可分割累加器内部单元。
具体实施例方式
请参阅图1,本发明一种并行处理的可分割的乘法累加单元,其中包括一个部分积生成单元21,一个部分积累加阵列22,一个可分割累加器23构成;其中部分积生成单元21的输出端连接于部分积累加阵列22的输入端;部分积累加阵列22的输出端连接于可分割累加器23的输入端;利用该结构实现32位、16位和8位乘法累加运算。
其中可分割的部分积生成单元21是由32个子生成单元41构成(如图4),其中子生成单元由一个与门51和一个两输入的选通器52构成,其中该选通器52的输出端接与51的一个输入端;可分割的部分积生成单元根据不同的模式控制信号产生32位乘法运算,两个16位乘法运算,四个8位乘法运算的部分积。
其中可分割的累加器单元23由4个20位的累加器61构成(图6中),20位累加器61由19个全加器单元71和一个可分割全加器单元72构成,全加器单元71由一个全加器81和一个多选器82构成(图8中),该多选器82的输出端接全加器81的输入端;可分割的乘法累加单元在模式信号控制下,可以工作在32位,16位,8位工作模式。分别完成一次80位累加运算,两次40位累加运算及四次20位累加运算。
请再参阅图1,图1给出一种实施可分割乘法累加单元的总体结构图。其中11是乘法累加单元。12和13是32位的输入端口,输入乘数和被乘数;32位工作模式下,是一个32位的输入;16位工作模式下,由两个16位数拼成;8位工作模式下,由四个8位数拼成。14是一个32位的累加数输入端口;32位工作模式下,是一个32位的输入;16位工作模式下,由两个16位数拼成;8位工作模式下,由四个8位数拼成。15是模式控制信号输入端口,控制乘法累加单元是工作在32位模式、16位模式或8位模式。16是80位的结果输出端口,32位工作模式下,输出一个80位的乘法累加结果;16位工作模式下,输出两个40位乘法累加结果;8位工作模式下,输出四个20位的乘法累加结果。
请参阅图2,图2是并行可分割的乘法累加单元的内部框图。由一个部分积生成单元21,一个部分积累加阵列22,一个可分割累加器单元23构成。其中21是部分积生成单元,产生部分积,该部分积生成单元和传统的部分积生成单元不同。部分积生成单元21在不同的工作模式下产生相应的部分积。22是部分积累加阵列,它的输入是部分积生成单元的输出。把21生成的部分积累加起来,可以采用WALLCE树压缩或其它方式实现。23是可分割累加器单元,它的输入是部分积累加阵列22的输出。24和25是32位是乘数和被乘数输入。26是模式控制信号。27是累加输入。28是乘法累加结果。
图3是并行可分割的乘法累加单元的部分积示意图。它是部分积生成单元21的输出。工作在32位模式下,所有的部分积是根据输入32位数译码出来的值。工作在16位模式下,部分积生成单元把示意图中未填充部分31置零,填充部分32、33生成两个16×16的部分积。工作在8位模式下,除了蓝色填充部分32,部分积生成单元把其他部分31和33置零。部分积生成译码可以采用BOOTH译码或其它任何译码方法。
图4是本发明并行可分割的乘法累加单元的部分积生成单元结构图,它是由32个子生成单元41构成。单元结构见图5。
图5是并行可分割的乘法累加单元的部分积生成单元内部子单元。它由一个与门51和一个两输入的选通器52构成。53是被乘数的一位输入。5是乘数的一位输入。55是0输入。57是选择信号,由模式控制信号生成。58是部分积。由57控制部分积是XiYj还是零。
图6是并行可分割的乘法累加单元可分割累加器框图。它由4个20位的累加器61构成。在8位、16位和32位工作模式下,分别可以获得四个20位的累加结果,两个40位的累加结果及一个80位的累加结果。累加器可以是超前进位累加器或其它累加器。
图7是本发明并行可分割的乘法累加单元20位累加器结构图。它由19个全加器单元71和一个可分割全加器单元72构成。可分割全加器单元结构见图8。
图8是并行可分割的乘法累加单元可分割累加器单元。它由一个全加器81和一个多选器82构成。83、84是全加器的输入。85、86分别是全加器输出的和位和进位位。87是上一级全加器输入的进位位,88是零输入。810是模式选择信号。这个单元放在20位累加器的第一个单元,通过它可以实现控制进位链的作用,实现可分割累加的功能。
权利要求
1.一种并行处理的可分割的乘法累加单元,其特征在于,其中包括一个部分积生成单元,一个部分积累加阵列,一个可分割累加器构成;其中部分积生成单元的输出端连接于部分积累加阵列的输入端;部分积累加阵列的输出端连接于可分割累加器的输入端;利用该结构实现32位、16位和8位乘法累加运算。
2.根据权利要求1所述的并行处理的可分割的乘法累加单元,其特征在于,其中可分割的部分积生成单元是由32个子生成单元构成,其中子生成单元由一个与门和一个两输入的选通器构成,其中该选通器的输出端接与门的一个输入端;可分割的部分积生成单元根据不同的模式控制信号产生32位乘法运算,两个16位乘法运算,四个8位乘法运算的部分积。
3.根据权利要求1所述的并行处理的可分割的乘法累加单元,其特征在于,其中可分割的累加器单元由4个20位的累加器构成,20位累加器由19个全加器单元和一个可分割全加器单元构成,全加器单元由一个全加器和一个多选器构成,该多选器的输出端接全加器的输入端;可分割的乘法累加单元在模式信号控制下,可以工作在32位,16位,8位工作模式。分别完成一次80位累加运算,两次40位累加运算及四次20位累加运算。
全文摘要
本发明一种并行处理的可分割的乘法累加单元,其特征在于,其中包括一个部分积生成单元,一个部分积累加阵列,一个可分割累加器构成;其中部分积生成单元的输出端连接于部分积累加阵列的输入端;部分积累加阵列的输出端连接于可分割累加器的输入端;利用该结构实现32位、16位和8位乘法累加运算。
文档编号G06F7/38GK1584821SQ03153649
公开日2005年2月23日 申请日期2003年8月19日 优先权日2003年8月19日
发明者姜小波, 陈杰 申请人:中国科学院微电子中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1