CN117806590A - 一种矩阵乘硬件架构 - Google Patents
一种矩阵乘硬件架构 Download PDFInfo
- Publication number
- CN117806590A CN117806590A CN202311738376.8A CN202311738376A CN117806590A CN 117806590 A CN117806590 A CN 117806590A CN 202311738376 A CN202311738376 A CN 202311738376A CN 117806590 A CN117806590 A CN 117806590A
- Authority
- CN
- China
- Prior art keywords
- dsp48
- signal processing
- digital signal
- processing unit
- hardware architecture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 45
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 230000009467 reduction Effects 0.000 claims abstract description 17
- 230000006870 function Effects 0.000 claims description 11
- 235000019800 disodium phosphate Nutrition 0.000 claims description 7
- 230000003044 adaptive effect Effects 0.000 abstract description 3
- 230000001502 supplementing effect Effects 0.000 abstract description 3
- 230000008859 change Effects 0.000 abstract description 2
- 241001442055 Vipera berus Species 0.000 description 19
- 238000000034 method Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 238000009825 accumulation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011773 genetically engineered mouse model Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Abstract
本发明提供了一种矩阵乘硬件架构,包括:规约网络,包括由多个规约网络节点形成的多级树形拓扑,所述规约网络节点包括数据选择器和两条计算通路;数字信号处理单元DSP48链,由多个数字信号处理单元DSP48级联,相邻所述数字信号处理单元DSP48的输出端分别接入首级树形拓扑中的同一规约网络节点的两条计算通路,两条计算通路的输出经数据选择器后连接至上一级树形拓扑中的规约网络节点;本申请将FSB的加法树改为适配DSP48结构的加法链,从而复用DSP48的后加法器,提高了硬件利用率;同时,本申请的硬件架构能够将高位的符号位扩展改为补0,从而大大节省资源和优化时序。
Description
技术领域
本发明属于数字信号处理技术领域,具体涉及一种矩阵乘硬件架构。
背景技术
在以Transformer算法为基础的大语言模型中,矩阵-矩阵乘法(General MatrixMultiplication,GEMM)广泛应用于解决复杂的物理系统、计算电路中的电流分布以及分析工程问题、多维数据处理、社交网络分析、电影推荐系统和交通规划和管理等技术领域,其是最主要且耗时最长的运算操作,为了减少计算负载、提高计算效率,需要采用稀疏化等优化计算方法并设计高效的硬件架构来加速矩阵乘法运算,稀疏化已成为广泛使用的GEMM加速方法,并且已经有相关的专用硬件架构实现。
针对具有以块为单位的灵活稀疏度的矩阵,现有的灵活稀疏块硬件计算架构(Flexible Sparse Block,FSB)是由多个乘法器和动态可扩展规约网络组成的,其中动态可扩展规约网络由加法器树和配置逻辑组成,如图1所示,图1(a)示出了灵活稀疏块硬件计算架构的从存储中读取阵列过程,其包括定义存储器地址、加载阵列数据、读取阵列数据和处理阵列数据等步骤,在定义存储器地址的步骤中采用寄存器用于存储二进制代码,图1(b)示出了灵活稀疏块硬件计算架构的解码输入过程,所述解码输入是指将输入的信号或数据进行解码,以提取其中的有用信息或数据,其包括接收输入数、解析数据格式、解码数据和通过选择器过滤或变换解码数据,图1(c)示出了灵活稀疏块硬件计算架构的配置规约网络过程,其基于预设的网络拓扑实现数据的传输和优化,图1(d)示出了灵活稀疏块硬件计算架构的传输数据过程,其同样基于预设的网络拓扑实现分级式多路分时传送数据,其需要考虑硬件资源的使用和能耗等因素,图1(e)示出了灵活稀疏块硬件计算架构的计算和规约过程,其采用向量-矩阵乘法以及基于树形结构的规约方式,图1(f)示出了灵活稀疏块硬件计算架构的累加求和过程。
根据当前块的稀疏度,每层规约节点被配置成执行加法或者前向传输功能,即选择器会在加法器结果和位拼接结果中择一输出。
而相关技术中的硬件计算架构如FSB存在以下缺点:
针对现场可编程门阵列(Field-Programmable GateArray,FPGA)的硬件优化不足,表现在:加法树结构计算效率低;FPGA资源消耗多。硬件并行度为p时,计算单元需要p个乘法器、(p/2^1+p/2^2+p/2^3+...+1)个加法器,为了加速大语言模型的推理过程,需要重复设置多个计算单元以达到较高的计算效率,这会耗费大量FPGA中有限的查找表(LookUpTable,LUT)资源。
发明内容
针对相关技术中存在的问题,本发明提供一种矩阵乘硬件架构,能够大大节省资源和优化时序。
本发明实施例提供了一种矩阵乘硬件架构,包括:
规约网络,包括由多个规约网络节点形成的多级树形拓扑,所述规约网络节点包括数据选择器和两条计算通路;
数字信号处理单元DSP48链,由多个数字信号处理单元DSP48级联,相邻所述数字信号处理单元DSP48的输出端分别接入首级树形拓扑中的同一规约网络节点的两条计算通路,两条计算通路的输出经数据选择器后连接至上一级树形拓扑中的规约网络节点。
进一步的,所述数字信号处理单元DSP48包括用于接收稀疏矩阵数据和密集矩阵数据的四个输入端口,以及输出端口,所述输出端口连接相邻级联的数字信号处理单元DSP48。
进一步的,所述四个输入端口分别为:
用于接收稀疏矩阵数据和密集矩阵数据的输入端口B、输入端口A和输入端口D;
用于连接数字信号处理单元DSP48链中上一级数字信号处理单元DSP48输出端的输入端口C;以及
用于连接数字信号处理单元DSP48链中下一级数字信号处理单元DSP48输入端的输出端口P。
进一步的,所述数字信号处理单元DSP48内部设置有前加法器和后加法器,以及设置于所述前加法器输入侧和输出侧的多组逻辑电路以及所述后加法器输入侧和输出侧的多组逻辑电路。
进一步的,所述多组逻辑电路包括:
用于连接数字信号处理单元DSP48的两个输出端口并接入前加法器的逻辑电路;
用于连接数字信号处理单元DSP48的另一个输出端口并接入后加法器,且后加法器同时接入有前加法器的输出端的逻辑电路;以及
用于该数字信号处理单元DSP48输出端的逻辑电路。
进一步的,所述数字信号处理单元DSP48被配置为能够同时计算多个8位乘法。
进一步的,所述数字信号处理单元DSP48链中的数字信号处理单元DSP48并行度为4的整数倍,且每一种并行度均支持多种稀疏度格式的矩阵乘法计算。
进一步的,所述两条计算通路分别用于该规约网络节点对输入数据的加法运算和拼接功能。
进一步的,所述数据选择器用于根据预设的选择信号选择两条计算通路中的一条进行输出。
进一步的,所述数据选择器的预设的选择信号基于输入矩阵稀疏度、数字信号处理单元DSP48的并行度以及该规约网络节点所在多级树形拓扑中的深度确定。
本发明实施例的其他可选特征和技术效果一部分在下文描述,一部分可通过阅读本文而明白。
与现有技术相比,本发明具有以下有益的技术效果:
本发明提供了一种矩阵乘硬件架构,包括:规约网络,包括由多个规约网络节点形成的多级树形拓扑,所述规约网络节点包括数据选择器和两条计算通路;数字信号处理单元DSP48链,由多个数字信号处理单元DSP48级联,相邻所述数字信号处理单元DSP48的输出端分别接入首级树形拓扑中的同一规约网络节点的两条计算通路,两条计算通路的输出经数据选择器后连接至上一级树形拓扑中的规约网络节点;本申请将FSB的加法树改为适配DSP48结构的加法链,从而复用DSP48的后加法器,提高了硬件利用率;同时,本申请的硬件架构能够将高位的符号位扩展改为补0,从而大大节省资源和优化时序。
附图说明
以下,结合附图来详细说明本发明的实施例,所示出的元件不受附图所显示的比例限制,附图中相同或相似的附图标记表示相同或类似的元件,其中:
图1示出了相关技术中的灵活稀疏块硬件计算架构示意图;
图2示出了本发明实施例中一种矩阵乘硬件架构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合具体实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
图2示出了本发明实施例中一种矩阵乘硬件架构,如图2所示,根据本发明的矩阵乘硬件架构包括:
规约网络,包括由多个规约网络节点形成的多级树形拓扑,所述规约网络节点包括数据选择器和两条计算通路;
数字信号处理单元DSP48链,由多个数字信号处理单元DSP48级联,相邻所述数字信号处理单元DSP48的输出端分别接入首级树形拓扑中的同一规约网络节点的两条计算通路,两条计算通路的输出经数据选择器后连接至上一级树形拓扑中的规约网络节点。
需要说明的是,在本实施例中所述的多级树形拓扑结构是一种类似于总线拓扑的局域网拓扑,由树形结构组成,具有树形结构的特点,在树形拓扑中,树形网络可以包含分支,每个分支又可包含多个规约网络节点,树形拓扑是总线拓扑的扩充形式,传输介质是不封闭的分支电路。
所述的树形拓扑具有根节点和各分支节点,适用于分层结构,非常适合于分主次、分等级的层次型管理系统,树形拓扑的特点与总线形拓扑相同,一个站点发送数据,其他站点都能接收,此外,树形拓扑具有较强的可折叠性,可以有效地保护布线投资。
在本实施例中多级树形拓扑结构以及数字信号处理单元DSP48级联中均存在多个多路复用器(MUX),如图2中所示,其用于上下级数字信号处理单元DSP48和规约网络节点之间的数据信号处理和传递;具体来说,多路复用器(MUX)是一种多路复用器,用于将多路信号的输入多路合并到一个输出线路来,多路复用器(MUX)有一组特定的输入端,每个输入端可以有一个或多个输入信号,也可以没有信号;一个选择端,且必须预先选择输入信号,以及一组输出端,多路复用器(MUX)只有一个输出端口,所有的信号都必须合并到这一个输出端口,而多路复用器(MUX)只会输出选择好的输入信号,其余都会被忽略;多路复用器(MUX)的主要工作原理是:当输入端有信号输入时,将依据输入的选择信号,把对应的输入信号合并到输出端,其它的输入端的信号都会被忽略,因此多路复用器(MUX)可以有效的合并多路信号,以节省输出线路的资源,降低系统的成本。
在本实施例中,所述数字信号处理单元DSP48包括用于接收稀疏矩阵数据和密集矩阵数据的四个输入端口,以及输出端口,所述输出端口连接相邻级联的数字信号处理单元DSP48;具体来说,所述四个输入端口分别为:
用于接收稀疏矩阵数据和密集矩阵数据的输入端口B、输入端口A和输入端口D;
用于连接数字信号处理单元DSP48链中上一级数字信号处理单元DSP48输出端的输入端口C;以及
用于连接数字信号处理单元DSP48链中下一级数字信号处理单元DSP48输入端的输出端口P。
进一步具体来说,在本实施例中采用DSP48,其输入端口B宽18位,输入端口A宽30位,输入端口D为预加器D数据端口宽25位。
在本实施例中,所述数字信号处理单元DSP48内部设置有前加法器(Pre-adder)和后加法器(Post-adder),以及设置于所述前加法器(Pre-adder)输入侧和输出侧的多组逻辑电路以及所述后加法器(Post-adder)输入侧和输出侧的多组逻辑电路;具体来说,所述多组逻辑电路包括:
用于连接数字信号处理单元DSP48的两个输出端口并接入前加法器(Pre-adder)的逻辑电路;
用于连接数字信号处理单元DSP48的另一个输出端口并接入后加法器(Post-adder),且后加法器(Post-adder)同时接入有前加法器(Pre-adder)的输出端的逻辑电路;以及
用于该数字信号处理单元DSP48输出端的逻辑电路。
具体来说,逻辑电路通常包括输入接口、运算单元、控制逻辑和输出接口等部分,所述的输入接口负责接收外部输入的数据信号,并将其转换为适合内部运算的格式;运算单元是数字信号处理单元DSP48的核心部分,包括乘法器、加法器、移位器等,用于执行各种数字信号处理算法;控制逻辑负责控制运算单元的工作流程,确保正确的运算顺序和结果输出;输出接口负责将处理后的数据信号输出到外部设备或存储器;此外,数字信号处理单元DSP48的逻辑电路还需要考虑与外部设备的接口和通信协议,以确保与外部设备的正确通信和数据传输。
在本实施例中,所述数字信号处理单元DSP48被配置为能够同时计算多个8位乘法;需要说明的是,数字信号处理单元DSP48内部通常会集成多个乘法器,这些乘法器可以同时进行多个8位乘法操作,在执行乘法运算时,数字信号处理单元DSP48会将输入数据分别与乘法器中的系数相乘,并将结果累加起来。由于乘法器是并行工作的,因此可以同时处理多个乘法操作,从而实现同时计算多个8位乘法。
在本实施例中,所述数字信号处理单元DSP48链中的数字信号处理单元DSP48并行度为4的整数倍,且每一种并行度均支持多种稀疏度格式的矩阵乘法计算;具体来说,所述的数字信号处理单元DSP48链中的数字信号处理单元DSP48可以由4、8或16个并行的DSP组成,即数字信号处理单元DSP48的并行度为4、8或16,而每种DSP并行度的计算单元都可以支持多种稀疏度格式的矩阵乘法计算,例如DSP并行度为16的计算单元一共可以支持1:16、2:16、4:16、8:16的稀疏矩阵计算,同时也可以完成密集矩阵的乘法。
在本实施例中,所述两条计算通路分别用于该规约网络节点对输入数据的加法运算和拼接功能;具体来说,所述计算通路的加法运算具有以下作用:
累加功能:在数字信号处理中,累加是一种常见的操作,用于计算信号的总和或平均值。通过加法运算,数字信号处理单元DSP48可以对输入数据进行累加操作,从而得到所需的结果;
滤波功能:加法运算在数字滤波器中起着关键作用。通过将输入数据与滤波器的系数进行加法运算,数字信号处理单元DSP48可以实现对信号的滤波处理,去除噪声或提取特定频率成分。
所述计算通路的拼接功能具有以下作用:
数据合并:拼接功能可以将多个输入数据合并成一个更大的数据块。这在处理分段信号或需要将多个信号合并为一个信号时非常有用。通过拼接操作,数字信号处理单元DSP48可以处理更长的数据序列,从而提高处理效率;
分辨率提升:通过拼接多个输入数据,可以增加数据的分辨率。这在图像处理、音频处理等应用中尤为重要。通过将多个8位数据拼接起来,可以得到更高位数的数据,从而提高处理的精度和质量。
具体来说,在本实施例中数据宽度在经过规约网络节点后会进行扩展;在数字信号处理单元DSP48进行矩阵乘法计算之前,会由选择信号根据矩阵的稀疏度对数字信号处理单元DSP48内部的数据流进行配置,因此本申请能够灵活支持多种稀疏度计算。
在本实施例中,所述数据选择器用于根据预设的选择信号选择两条计算通路中的一条进行输出;
所述数据选择器在数字信号处理单元DSP48中用于根据需要选择性地接收和处理多路数据,实现数据的多路分时传送和逻辑控制,从而提高了数字信号处理单元DSP48的处理效率和功能灵活性;具体来说其用于:
数据选择功能:数据选择器可以根据给定的输入地址代码,从一组输入信号中选择指定的一个送至输出端,这使得数字信号处理单元DSP48能够根据需要选择性地接收和处理多路数据;
数据分时传输:在多路数据传输过程中,数据选择器可以根据需要将其中任意一路选出来,这使得数字信号处理单元DSP48能够实现数据的多路分时传送,提高了数据处理效率;
逻辑控制:数据选择器可以作为逻辑控制的一部分,通过选择不同的输入信号,实现特定的逻辑功能,这在数字信号处理中非常有用,可以帮助数字信号处理单元DSP48实现各种复杂的逻辑运算和控制。
在本实施例中,所述数据选择器的预设的选择信号基于输入矩阵稀疏度、数字信号处理单元DSP48的并行度以及该规约网络节点所在多级树形拓扑中的深度确定;需要说明的是,所述多级树形拓扑中的深度指的是规约网络节点位于多级树形拓扑中的级数。
如图2所示,以由四个数字信号处理单元DSP48组成的计算单元为例,所述四个数字信号处理单元DSP48包括:数字信号处理单元DSP480、数字信号处理单元DSP481、数字信号处理单元DSP482和数字信号处理单元DSP483,其对于一组2:4稀疏度的4*4矩阵输入数据的计算行为如下:
来自稀疏矩阵的A、B、C、D四个8位数据分别被送至数字信号处理单元DSP480、数字信号处理单元DSP481、数字信号处理单元DSP482和数字信号处理单元DSP483的输入端口B,来自密集矩阵的a、b、c、d四个8位数据被分别送至数字信号处理单元DSP480、数字信号处理单元DSP481、数字信号处理单元DSP482和数字信号处理单元DSP483的输入端口A,同样来自密集矩阵的a’、b’、c’、d’四个8位数据被分别送至数字信号处理单元DSP480、数字信号处理单元DSP481、数字信号处理单元DSP482和数字信号处理单元DSP483的输入端口D;
由于一个数字信号处理单元DSP4848能够计算:
(A+D)*B+C=(A*B+C1)+(D*B+C2),即两个乘加运算,其中输入端口A和输入端口D的数据来自于不同的大模型输入序列长度(seq_len)维度。
来自上一级数字信号处理单元DSP48的输出端口P的输出结果被传至下一级数字信号处理单元DSP48的输入端口C;
数字信号处理单元DSP48的输出端口P输出结果由两部分组成,包括输出结果和0拼接组成,分别是(A*B+C1)和(D*B+C2)。每两个数字信号处理单元DSP48的这两路输出信号会被送入到第一级拼接器当中,拼接器对输入信号进行补零至32位结果,第一级拼接器的输出结果送入到第二级拼接器,拼接为64位输出结果。
本实施例中的可配置稀疏度的数字信号处理单元DSP48计算架构包括运行时可重构DSP级联链和可配置规约网络两部分;能够将FSB的加法树改为适配DSP48结构的加法链,从而复用DSP48的后加法器,提高硬件利用率;同时能够将高位的符号位扩展改为补0,从而大大节省资源和优化时序。
在本文中,针对本发明的多个实施例进行了描述,但为简明起见,各实施例的描述并不是详尽的,各个实施例之间相同或相似的特征或部分可能会被省略。在本文中,“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”意指适用于根据本发明的至少一个实施例或示例中,而非所有实施例。上述术语并不必然意味着指代相同的实施例或示例。在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
已参考上述实施例具体示出并描述了本发明的示例性系统及方法,其仅为实施本系统及方法的最佳模式的示例。本领域的技术人员可以理解的是可以在实施本系统及/或方法时对这里描述的系统及方法的实施例做各种改变而不脱离界定在所附权利要求中的本发明的精神及范围。
Claims (10)
1.一种矩阵乘硬件架构,其特征在于,包括:
规约网络,包括由多个规约网络节点形成的多级树形拓扑,所述规约网络节点包括数据选择器和两条计算通路;
数字信号处理单元DSP48链,由多个数字信号处理单元DSP48级联,相邻两个所述数字信号处理单元DSP48的输出端分别接入首级树形拓扑中的同一规约网络节点的两条计算通路,两条计算通路的输出经数据选择器后连接至上一级树形拓扑中的规约网络节点。
2.根据权利要求1所述一种矩阵乘硬件架构,其特征在于,所述数字信号处理单元DSP48包括用于接收稀疏矩阵数据和密集矩阵数据的四个输入端口,以及输出端口,所述输出端口连接相邻级联的数字信号处理单元DSP48。
3.根据权利要求2所述一种矩阵乘硬件架构,其特征在于,所述四个输入端口分别为:
用于接收稀疏矩阵数据和密集矩阵数据的输入端口B、输入端口A和输入端口D;
用于连接数字信号处理单元DSP48链中上一级数字信号处理单元DSP48输出端的输入端口C;以及
用于连接数字信号处理单元DSP48链中下一级数字信号处理单元DSP48输入端的输出端口P。
4.根据权利要求1-3中任一项所述一种矩阵乘硬件架构,其特征在于,所述数字信号处理单元DSP48内部设置有前加法器和后加法器,以及设置于所述前加法器输入侧和输出侧的多组逻辑电路以及所述后加法器输入侧和输出侧的多组逻辑电路。
5.根据权利要求4所述一种矩阵乘硬件架构,其特征在于,所述多组逻辑电路包括:
用于连接数字信号处理单元DSP48的两个输出端口并接入前加法器的逻辑电路;
用于连接数字信号处理单元DSP48的另一个输出端口并接入后加法器,且后加法器同时接入有前加法器的输出端的逻辑电路;以及
用于该数字信号处理单元DSP48输出端的逻辑电路。
6.根据权利要求1-3和5中任一项所述一种矩阵乘硬件架构,其特征在于,所述数字信号处理单元DSP48被配置为能够同时计算多个8位乘法。
7.根据权利要求1-3和5中任一项所述一种矩阵乘硬件架构,其特征在于,所述数字信号处理单元DSP48链中的数字信号处理单元DSP48并行度为4的整数倍,且每一种并行度均支持多种稀疏度格式的矩阵乘法计算。
8.根据权利要求1-3和5中任一项所述一种矩阵乘硬件架构,其特征在于,所述两条计算通路分别用于该规约网络节点对输入数据的加法运算和拼接功能。
9.根据权利要求1-3和5中任一项所述一种矩阵乘硬件架构,其特征在于,所述数据选择器用于根据预设的选择信号选择两条计算通路中的一条进行输出。
10.根据权利要求1-3和5中任一项所述一种矩阵乘硬件架构,其特征在于,所述数据选择器的预设的选择信号基于输入矩阵稀疏度、数字信号处理单元DSP48的并行度以及该规约网络节点所在多级树形拓扑中的深度确定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311738376.8A CN117806590B (zh) | 2023-12-18 | 2023-12-18 | 一种矩阵乘硬件架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311738376.8A CN117806590B (zh) | 2023-12-18 | 2023-12-18 | 一种矩阵乘硬件架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117806590A true CN117806590A (zh) | 2024-04-02 |
CN117806590B CN117806590B (zh) | 2024-06-14 |
Family
ID=90424284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311738376.8A Active CN117806590B (zh) | 2023-12-18 | 2023-12-18 | 一种矩阵乘硬件架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117806590B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070255855A1 (en) * | 2006-02-17 | 2007-11-01 | Standard Microsystems Corporation | System and Method for Transferring Different Types of Streaming and Packetized Data Across an Ethernet Transmission Line Using a Frame and Packet Structure Demarcated with Ethernet Coding Violations |
CN102073481A (zh) * | 2011-01-14 | 2011-05-25 | 上海交通大学 | 多核dsp可重构专用集成电路系统 |
CN102422259A (zh) * | 2009-03-03 | 2012-04-18 | 阿尔特拉公司 | 在电路的模块之间具有可选使用、专用连接的模块化数字信号处理电路 |
CN103955447A (zh) * | 2014-04-28 | 2014-07-30 | 中国人民解放军国防科学技术大学 | 基于dsp芯片的fft加速器 |
CN104407836A (zh) * | 2014-10-14 | 2015-03-11 | 中国航天科技集团公司第九研究院第七七一研究所 | 利用定点乘法器进行级联乘累加运算的装置和方法 |
CN104572011A (zh) * | 2014-12-22 | 2015-04-29 | 上海交通大学 | 基于fpga的通用矩阵定点乘法器及其计算方法 |
CN105830031A (zh) * | 2013-12-18 | 2016-08-03 | 瑞典爱立信有限公司 | 用于选择媒体处理单元的方法和网络节点 |
US20190102338A1 (en) * | 2017-09-30 | 2019-04-04 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
CN110852416A (zh) * | 2019-09-30 | 2020-02-28 | 成都恒创新星科技有限公司 | 基于低精度浮点数数据表现形式的cnn加速计算方法及系统 |
CN114327620A (zh) * | 2020-09-26 | 2022-04-12 | 英特尔公司 | 用于具有数据流执行电路的可配置加速器的装置、方法和系统 |
CN115310037A (zh) * | 2022-08-17 | 2022-11-08 | 平头哥(杭州)半导体有限公司 | 矩阵乘法计算单元、加速单元、计算系统和相关方法 |
CN117083614A (zh) * | 2021-07-21 | 2023-11-17 | 美高森美SoC公司 | 使用dsp块生成电路的rtl |
-
2023
- 2023-12-18 CN CN202311738376.8A patent/CN117806590B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070255855A1 (en) * | 2006-02-17 | 2007-11-01 | Standard Microsystems Corporation | System and Method for Transferring Different Types of Streaming and Packetized Data Across an Ethernet Transmission Line Using a Frame and Packet Structure Demarcated with Ethernet Coding Violations |
CN102422259A (zh) * | 2009-03-03 | 2012-04-18 | 阿尔特拉公司 | 在电路的模块之间具有可选使用、专用连接的模块化数字信号处理电路 |
CN102073481A (zh) * | 2011-01-14 | 2011-05-25 | 上海交通大学 | 多核dsp可重构专用集成电路系统 |
CN105830031A (zh) * | 2013-12-18 | 2016-08-03 | 瑞典爱立信有限公司 | 用于选择媒体处理单元的方法和网络节点 |
CN103955447A (zh) * | 2014-04-28 | 2014-07-30 | 中国人民解放军国防科学技术大学 | 基于dsp芯片的fft加速器 |
CN104407836A (zh) * | 2014-10-14 | 2015-03-11 | 中国航天科技集团公司第九研究院第七七一研究所 | 利用定点乘法器进行级联乘累加运算的装置和方法 |
CN104572011A (zh) * | 2014-12-22 | 2015-04-29 | 上海交通大学 | 基于fpga的通用矩阵定点乘法器及其计算方法 |
US20190102338A1 (en) * | 2017-09-30 | 2019-04-04 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
CN110852416A (zh) * | 2019-09-30 | 2020-02-28 | 成都恒创新星科技有限公司 | 基于低精度浮点数数据表现形式的cnn加速计算方法及系统 |
CN114327620A (zh) * | 2020-09-26 | 2022-04-12 | 英特尔公司 | 用于具有数据流执行电路的可配置加速器的装置、方法和系统 |
CN117083614A (zh) * | 2021-07-21 | 2023-11-17 | 美高森美SoC公司 | 使用dsp块生成电路的rtl |
CN115310037A (zh) * | 2022-08-17 | 2022-11-08 | 平头哥(杭州)半导体有限公司 | 矩阵乘法计算单元、加速单元、计算系统和相关方法 |
Non-Patent Citations (1)
Title |
---|
JOSEPH SZURLEY等: "Topology-Independent Distributed Adaptive Node-Specific Signal Estimation in Wireless Sensor Networks", IEEE, 28 October 2016 (2016-10-28), pages 130 - 144 * |
Also Published As
Publication number | Publication date |
---|---|
CN117806590B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909970B (zh) | 一种基于近似计算的二值权重卷积神经网络硬件加速器计算装置 | |
US6601077B1 (en) | DSP unit for multi-level global accumulation | |
US8069200B2 (en) | Apparatus and method for implementing floating point additive and shift operations | |
CN115344237A (zh) | 结合Karatsuba和蒙哥马利模乘的数据处理方法 | |
CN113064852B (zh) | 一种可重构处理器及配置方法 | |
US5133069A (en) | Technique for placement of pipelining stages in multi-stage datapath elements with an automated circuit design system | |
JP3213628B2 (ja) | Mを法として長い整数を乗算するための算術ユニット及びそのような乗算デバイスを具えるr.s.a.変換器 | |
CN113556101B (zh) | Iir滤波器及其数据处理方法 | |
CN101783688A (zh) | 一种64位并行多模式crc码生成电路的设计方法 | |
CN117806590B (zh) | 一种矩阵乘硬件架构 | |
CN116661734B (zh) | 支持多输入多格式的低精度乘加运算器 | |
US5212782A (en) | Automated method of inserting pipeline stages in a data path element to achieve a specified operating frequency | |
CN116974510A (zh) | 数据流式处理电路、电路模组、电子芯片、方法和装置 | |
CN106505971A (zh) | 一种基于结构加法器顺序重编排的低复杂度fir滤波器结构 | |
CN114089949A (zh) | 一种可直接支持多操作数加法运算的数字信号处理器 | |
US7047271B2 (en) | DSP execution unit for efficient alternate modes for processing multiple data sizes | |
CN113592067B (zh) | 一种用于卷积神经网络的可配置型卷积计算电路 | |
De et al. | Fast parallel algorithm for ternary multiplication using multivalued I/sup 2/L technology | |
WO2024124808A1 (zh) | 卷积计算单元、ai运算阵列、稀疏卷积运算方法及相关设备 | |
KR950010451B1 (ko) | 그룹 트리구조 알고리즘(GTSM ; Group Tree Structure Method)을 적용한 고속 승산기 | |
Sidahao et al. | Multiple restricted multiplication | |
JP2560990B2 (ja) | 論理回路最小化装置 | |
WO1990008362A2 (en) | Method for analyzing datapath elements | |
Artem et al. | Area&power optimized modulo (2 n±2 p±1) multiplier | |
CN117667011A (zh) | 一种数字信号处理模块中的后加器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |