一种可配置的乘累加运算单元及其构成的乘累加运算阵列制造技术

技术编号:9825755 阅读:141 留言:0更新日期:2014-04-01 13:47
一种可配置的乘累加运算单元及其构成的乘累加运算阵列,该乘累加运算单元包括用于接收并存储Ain和Bin的操作数寄存级、用于Ain和Bin相乘的乘法级、及用于使乘法级的运算结果与该乘累加运算单元前一拍的运算结果或上一级乘累加运算单元的运算结果相加的加法级;加法级还接收能将运算模式调整为进位累加模式或自累加模式的模式配置。该乘累加运算阵列由多个该乘累加运算单元构成。本发明专利技术提供的乘累加运算单元和乘累加运算阵列将进位累加模式和自累加模式合二为一,能通过编程模式配置来实现不同的运算模式,应用中能跟据需要灵活配置选择运算模式来完成乘累加计算,能获得更好的计算实时性能及更高的资源利用效率。

【技术实现步骤摘要】
【专利摘要】一种可配置的乘累加运算单元及其构成的乘累加运算阵列,该乘累加运算单元包括用于接收并存储Ain和Bin的操作数寄存级、用于Ain和Bin相乘的乘法级、及用于使乘法级的运算结果与该乘累加运算单元前一拍的运算结果或上一级乘累加运算单元的运算结果相加的加法级;加法级还接收能将运算模式调整为进位累加模式或自累加模式的模式配置。该乘累加运算阵列由多个该乘累加运算单元构成。本专利技术提供的乘累加运算单元和乘累加运算阵列将进位累加模式和自累加模式合二为一,能通过编程模式配置来实现不同的运算模式,应用中能跟据需要灵活配置选择运算模式来完成乘累加计算,能获得更好的计算实时性能及更高的资源利用效率。【专利说明】—种可配置的乘累加运算单元及其构成的乘累加运算阵列
本专利技术属于数字电路
,涉及一种可配置的乘累加运算单元及其构成的乘累加运算阵列。
技术介绍
归一化互相关匹配中涉及到大量的复杂运算,据统计,其中的定点乘累加计算能占到全部计算的80%以上。在过去很长时间里由于该种匹配方法计算量大,即便是采用高性能指令式传统DSP器件来完成这样的匹配计算,也很难达到应用中对实时性能的要求。如果完成匹配任务的图像尺寸再增大,计算量基本上会按图像尺寸的四次方增长,如果靠采用多DSP耦合来提高系统的实时性能,不仅会带来系统功耗的增加,可靠性降低,而且控制上更加复杂,还不利于设备的小型化。随着VLSI技术的飞速发展,越来越多的图像匹配计算直接采用硬件实现方式,这为提高图像匹配的实时性能提供了一种全新的方式。在VLSI技术广泛应用的今天,完成图像匹配多采用“DSP+协处理器”的模式,其中协处理器受到DSP的控制,在DSP给协处理器配置完参数和传送图像数据后,启动协处理器完成计算,同时DSP也并行完成一部分计算任务,协处理器一般采用专用集成电路或者直接靠FPGA实现,主要完成匹配中计算量大,且计算具有明显规律性的计算任务。在归一化互相关的匹配中,大量的乘累加运算具有很强的规律性,可以采用专门的协处理器来实现,协处理器实现时可以先设计出专门的乘累加单元(Cell),然后采用从时间和空间上资源重复技术,能够形成规模性大、规整性强、易于流水的阵列。这样的Cell具有内部结构简单,控制简单、端口数量少的优点,因此很适合用来做这样的扩展。但是值得提出的是在以往的Cell设计中,功能都显得单一,不可配置,这使得在完成乘累加计算时计算模式也显得单一,不能根据具体的匹配尺寸进行配置从而进一步提高灵活性,因此计算的实时性能还是受到了一定的限制。
技术实现思路
本专利技术的目的在于提供一种多功能的可配置的乘累加运算单元及由其构成的乘累加运算阵列,该乘累加运算单元及其构成的乘累加运算阵列具有由进位累加模式和自累加模式组成的双运算模式,适用于数字图像匹配中的乘累加快速计算,能够提高计算的实时性能。为达到上述目的,本专利技术采用的技术方案为:一种可配置的乘累加运算单元,包括用于接收并存储级联输入操作数和并发输入操作数的操作数寄存级、用于使操作数寄存级中储存的级联输入操作数和并发输入操作数相乘的乘法级、以及用于使乘法级的运算结果与该乘累加运算单元前一拍的运算结果或上一级乘累加运算单元的运算结果相加的加法级,加法级的运算结果通过进位输出操作数向下一级乘累加运算单元输出;加法级还接收能够将运算模式调整为进位累加模式或自累加模式的模式配置、以及用于控制输出最终运算结果的结果输出使能;加法级内设有用于存储运算结果的寄存器,在进位累加模式中,上一级乘累加运算单元的运算结果通过进位输入操作数输入到加法级中;操作数寄存级还向下一级乘累加运算单元输出级联输出操作数。所述的操作数寄存级内设有级联寄存器、并发寄存器和第一级寄存器;操作数寄存级同时接收级联输入操作数和级联输入操作数使能,使级联输入操作数存入级联寄存器中;然后同时接收并发输入操作数和并发输入操作数使能,使并发输入操作数存入并发寄存器中,并发输入操作数使能经过第一级寄存器延迟成为第一级使能,然后第一级使能、级联输入操作数和并发输入操作数同时到达乘法级;级联寄存器中存入的级联输入操作数延迟后作为级联输出操作数向上一级乘累加运算单元输出,输出的级联输出操作数作为上一级乘累加运算单元的级联输入操作数。所述的乘法级内设有乘法器和乘法寄存器;第一级使能使级联输入操作数和并发输入操作数进入乘法器进行乘法运算,乘法级的运算结果存入乘法寄存器中。所述的乘法级内还设有第二级寄存器,第一级使能经第二级寄存器延迟后成为第二级使能;在自累加模式中,第二级使能和乘法寄存器内存储的乘法级的运算结果同时到达加法级;而在进位累加模式中,仅有乘法寄存器内存储的乘法级的运算结果到达加法级。所述的加法级内设有加法器和进位使能寄存器;在自累加模式中,寄存器内存储有该乘累加运算单元前一拍的运算结果;第二级使能、乘法寄存器内存储的乘法级的运算结果和寄存器内存储的该乘累加运算单元前一拍的运算结果同时到达加法器,第二级使能使乘法寄存器内存储的乘法级的运算结果和寄存器内存储的该乘累加运算单元前一拍的运算结果进入加法器中进行加法运算,加法运算的结果再存入寄存器中,寄存器中存储的运算结果在该乘累加单元下一拍的加法运算时,作为该乘累加运算单元前一拍的运算结果,继续参与该乘累加单元下一拍的加法运算;输出最终运算结果时,由结果输出使能控制,使寄存器中的运算结果作为进位输出操作数向下一级乘累加运算单元输出,输出的进位输出操作数作为下一级乘累加运算单元的进位输入操作数;在进位累加模式中,加法级同时接收进位输入操作数使能、进位输入操作数和乘法寄存器内存储的乘法级的运算结果,进位输入操作数使能使乘法寄存器内存储的乘法级的运算结果和上一级乘累加运算单元的运算结果通过进位输入操作数同时进入加法器中进行加法运算,加法运算的结果存入寄存器中,并作为进位输出操作数向下一级乘累加运算单元输出,同时进位输入操作数使能经进位使能寄存器延迟后再作为进位输出操作数使能向下一级乘累加运算单元输出,且进位输出操作数和进位输出操作数使能同时输出,输出的进位输出操作数作为下一级乘累加运算单元的进位输入操作数,输出的进位输出操作数使能作为下一级乘累加运算单元的进位输入操作数使能。所述的加法级内设有第一多路选择器和第二多路选择器,模式配置通过控制第一多路选择器和第二多路选择器将运算模式调整为进位累加模式或自累加模式。在自累加模式中,模式配置控制第一多路选择器,使第二级使能到达加法器,断开进位输入操作数使能到达加法器的路径;同时模式配置控制第二多路选择器,使寄存器内存储的上一级的乘累加运算单元的运算结果到达加法器,断开进位输入操作数到达加法器的路径;在进位累加模式中,模式配置控制第一多路选择器,使进位输入操作数使能到达加法器,断开第二级使能到达加法器的路径;同时模式配置控制第二多路选择器,使进位输入操作数到达加法器,断开寄存器内存储的该乘累加运算单元前一拍的运算结果到达加法器的路径。所述的加法级内还设有第三多路选择器,加法器的运算结果通过第三多路选择器到达寄存器。在自累加模式中输出最终运算结果时,模式配置控制第二多路选择器,断开寄存器内存储的运算结果到达加法器的路径,使进位输入操作数通过第二多路选择器;本文档来自技高网
...

【技术保护点】
一种可配置的乘累加运算单元,其特征在于:包括用于接收并存储级联输入操作数(Ain)和并发输入操作数(Bin)的操作数寄存级、用于使操作数寄存级中储存的级联输入操作数(Ain)和并发输入操作数(Bin)相乘的乘法级、以及用于使乘法级的运算结果与该乘累加运算单元前一拍的运算结果或上一级乘累加运算单元的运算结果相加的加法级,加法级的运算结果通过进位输出操作数(Cout)向下一级乘累加运算单元输出;加法级还接收能够将运算模式调整为进位累加模式或自累加模式的模式配置(LoopEn)、以及用于控制输出最终运算结果的结果输出使能(RSOEn);加法级内设有用于存储运算结果的寄存器(R),在进位累加模式中,上一级乘累加运算单元的运算结果通过进位输入操作数(Cin)输入到加法级中;操作数寄存级还向下一级乘累加运算单元输出级联输出操作数(Aout)。

【技术特征摘要】

【专利技术属性】
技术研发人员:杨靓周泉曹辉
申请(专利权)人:中国航天科技集团公司第九研究院第七七一研究所
类型:发明
国别省市:陕西;61

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

1