提高FPGA的片上乘加器资源使用率的方法和装置制造方法及图纸

技术编号:31819999 阅读:31 留言:0更新日期:2022-01-12 12:09
提供一种提高FPGA的片上乘加器资源使用率的方法和装置。针对FPGA的由预定数量的乘加电路构成的矩阵乘法器中的每个乘加电路,其输入端连接一个多路复用器,且输出端连接一个多路分路器,并执行以下操作:将k路输入发送到所述多路复用器;在k个时钟周期中,通过所述多路复用器将所述k路输入发送到所述乘加电路,其中,在每个时钟周期选择一路输入发送;在所述k个时钟周期中的每个时钟周期,通过乘加电路将相应的一路输出发送到所述多路分路器;在所述k个时钟周期中,通过所述多路分路器来输出相应的k路输出,其中,所述k路输出被发送到后续乘加电路所连接的多路复用器,其中,k为所述乘加电路的复用参数,其中,每个乘加电路包括一个乘加器。个乘加器。个乘加器。

【技术实现步骤摘要】
提高FPGA的片上乘加器资源使用率的方法和装置


[0001]本申请涉及硬件结构优化的
,更具体地说,涉及通过基于FPGA芯片的特性优化矩阵计算器的硬件结构来提高FPGA的片上乘加器资源使用率的方法和装置。

技术介绍

[0002]在需要规则的矩阵乘法计算的实现中,例如,在深度神经网络硬件加速器实现中,乘加器资源的使用量往往直接决定了加速器的性能优劣。而由于FPGA的片上可用乘加器资源固定有限,如何提高片上乘加器资源的使用效率是一个非常关键的优化热点。由于矩阵乘法器规则形状的限制,现有的解决方案往往无法高效利用FPGA的片上可用的乘加器资源,或者需要在软件层面引入了大量的额外计算开销。

技术实现思路

[0003]本专利技术的示例性实施例旨在克服上述无法高效利用FPGA的片上可用的乘加器资源或具有大量额外软件计算开销的缺点。
[0004]根据本专利技术的一方面,提供一种提高FPGA的片上乘加器资源使用率的方法,其中,针对所述FPGA的由预定数量的乘加电路构成的矩阵乘法器中的每个乘加电路,其输入端连接一个多路复用器,且输出本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种提高FPGA的片上乘加器资源使用率的方法,其中,针对所述FPGA的由预定数量的乘加电路构成的矩阵乘法器中的每个乘加电路,其输入端连接一个多路复用器,且输出端连接一个多路分路器,所述方法包括:针对所述FPGA的由预定数量的乘加电路构成的矩阵乘法器中的每个乘加电路执行以下操作:将k路输入发送到所述多路复用器;在k个时钟周期中,通过所述多路复用器将所述k路输入发送到所述乘加电路,其中,在每个时钟周期选择一路输入发送;在所述k个时钟周期中的每个时钟周期,通过乘加电路将相应的一路输出发送到所述多路分路器;在所述k个时钟周期中,通过所述多路分路器来输出相应的k路输出,其中,所述k路输出被发送到后续乘加电路所连接的多路复用器,其中,k为所述乘加电路的复用参数,其中,每个乘加电路包括一个乘加器。2.一种提高FPGA的片上乘加器资源使用率的装置,包括:预定数量的多路复用器;所述预定数量的多路分路器,其中,针对所述FPGA的由所述预定数量的乘加电路构成的矩阵乘法器中的每个乘加电路,其输入端连接一个多路复用器,且输出端连接一个多路分路器,其中,所述多路复用器被配置为接收k路输入,并在k个时钟周期中,将所述k路输入发送到所述乘加电路,其中,在每个时钟周期选择一路输入发送,其中,在所述k个时钟周期中的每个时钟周期,所述乘加电路将相应的一路输出发送到所述多路分路器,所述多路分路器被配置为在所述k个时钟周期中,通过所述多路分路器来输出相应的k路输出,其中,所述k路输出被发送到后续乘加电路所连接的多路复用器,其中,k为所述乘加电路的复用参数,其中,每个乘加电路包括一个乘加器。3.如权利要求2所述的装置,其中,所述FPGA用于实现深度神经网络硬件加速器。4.如权利要求2所述的装置,其中,所述FPGA的片上矩阵乘法器包括(2
M
×...

【专利技术属性】
技术研发人员:李嘉树张浩卢冕
申请(专利权)人:第四范式北京技术有限公司
类型:发明
国别省市:

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

1