一种累积系统和方法技术方案

技术编号:34835291 阅读:15 留言:0更新日期:2022-09-08 07:29
本发明专利技术提供一种累积系统和方法。在一个实施方式中,所述方法包括:接收数据以进行处理,对所述接收到的数据执行乘法运算以生成相乘数据,对所述相乘数据执行加法运算以生成结果,将所述结果的至少一部分最低有效位存储在卷积核的累积缓冲器的第一区域中,以及,将所述结果的至少一部分剩余位存储在共享存储器中,其中,所述共享存储器与所述卷积核分离。所述共享存储器与所述卷积核分离。所述共享存储器与所述卷积核分离。

【技术实现步骤摘要】
一种累积系统和方法


[0001]本申请涉及一种执行乘法/累加运算的系统和方法。

技术介绍

[0002]有各种类型的系统可以执行乘法和累加运算。例如,神经网络和矩阵乘法系统可以执行一个或多个乘法或累加运算。这些乘法和累加运算可以应用于各种可用计算机方案解决的数学问题。其中一些计算机方案可包括支持将多组数据组合在一起的累积缓冲器。
[0003]本申请讨论的系统和方法提供了一种改进的方法来执行乘法/累加运算。
[0004]申请内容
[0005]鉴于以上所述现有技术的缺点,本申请的目的在于提供一种执行乘法/累加运算的装置和方法。其中,所述方法包括:
[0006]接收数据以进行处理;
[0007]对所述接收到的数据执行乘法运算以生成相乘数据;
[0008]对所述相乘数据执行加法运算以生成一个结果;
[0009]将所述结果的至少一部分最低有效位存储在第一卷积核的累积缓冲器的第一区域中;以及
[0010]将所述结果的至少一部分剩余位存储在共享存储器中,其中,所述共享存储器与所述第一卷积核分离。
[0011]其中,所述装置包括:
[0012]第一卷积核,其包括:
[0013]第一乘法器,用于生成第一相乘数据;
[0014]第一加法器,用于基于所述第一相乘数据生成第一结果;以及
[0015]第一累积缓冲器,用于存储所述第一结果的至少一部分最低有效位;以及
[0016]共享存储器,其耦合到所述第一卷积核,用于存储所述第一结果的至少一部分最高有效位。
附图说明
[0017]参考以下附图描述了本申请的非限制性和非穷尽性实施例,除非另有说明,否则相同或相似的附图标记在各个附图中指代相同或相似的部件。
[0018]图1示出了一种用于执行乘法/累积运算的系统的一个实施例。
[0019]图2示出了一种累积缓冲器的一个实施例。
[0020]图3示出了一系列卷积核和相关联的共享存储器的一个实施例。
[0021]图4示出了用于执行乘法/累加运算的方法的一个实施例的流程图。
[0022]图5示出了一种计算设备的示例性框图。
具体实施方式
[0023]以下公开内容参考了构成本申请一部分的附图,在附图中以图解的方式示出了可实践本申请的具体实施方式。可以理解的是,在不脱离本申请范围的情况下,可以采用其他实施方式,也可以进行结构上的改变。说明书中提到的“一个实施例”、“实施例”、“示例性实施例”等表明所描述的实施例可以包括特定的特征、结构或特性,但不一定每个可能的实施例都包括所述特定的特征、结构或特性。并且,这些短语在不同的地方出现时,不一定指相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,本申请认为无论是否明确描述,可在本领域技术人员的知识范围内通过结合其他实施例以达成这种特征、结构或特性。
[0024]本申请公开的系统、设备和方法的实施方式可包括或采用专用或通用计算机,包括例如一个或多个处理器和系统存储器等计算机硬件,如本申请所讨论的。本申请公开范围内的实施方式还可包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是能够由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是计算机存储介质(设备)。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本申请的实施方式可以包括至少两种截然不同的计算机可读介质:计算机存储介质(设备)和传输介质。
[0025]计算机存储介质(设备)包括随机存取内存(RAM)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、只读光盘(CD

ROM)、(例如,基于RAM的)固态驱动器(SSD)、闪存、相变存储器(PCM)、其他类型的存储器、其他光盘存储器、磁盘存储或其他磁性存储设备,或可用于以计算机可执行指令或数据结构形式存储所需程序代码方式并可由通用或专用计算机访问的任何其他介质。
[0026]本申请公开的设备、系统和方法的实施方式可以通过计算机网络进行通信。“网络”被定义为能够在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或其他通信连接(无论是硬线、无线、或是硬线和无线的组合)传输或提供给计算机时,计算机将该连接视为传输介质。传输介质可以包括网络和/或数据链路,其可以用来携带以计算机可执行指令或数据结构形式存在的所需程序代码方式,并且可以由通用或专用计算机访问。上述内容的组合也应包括在计算机可读介质的范围内。
[0027]计算机可执行指令包括指令和数据等,当在处理器处执行时,使得通用计算机、专用计算机或专用处理设备执行某个或某组功能。计算机可执行指令可以是例如二进制文件、汇编语言等中间格式指令、甚或是源代码。尽管说明书使用了特定于结构特征和/或方法行为的语言描述了相关内容,但是应理解的是,所附的权利要求中定义的主题不一定限于说明书描述的特征或动作。相反,说明书所描述的特征和动作是实施权利要求的示例。
[0028]本领域技术人员将理解,本申请可在具有多种类型的计算机系统配置的网络计算环境中实施,包括个人计算机、台式计算机、笔记本电脑、消息处理器、手持设备、多处理器系统、微处理器式或可编程消费电子产品、网络个人计算机、微型计算机、大型计算机、移动电话、掌上电脑、平板电脑、传呼机、路由器、交换机、各种存储设备等。本申请也可以在分布式系统环境中实践,其中本地和远程计算机系统通过网络连接(通过硬线数据链路、无线数据链路或通过硬线和无线数据链路的组合),均执行任务。在分布式系统环境中,程序模块
可以位于本地和远程内存存储设备中。
[0029]此外,在适当的情况下,本申请所述的功能可以在以下一项或多项中执行:硬件、软件、固件、数字组件或模拟组件。例如,可以对一个或多个专用集成电路(ASIC)进行编程以执行本申请所述的一个或多个系统和过程。在整个描述和权利要求中使用某些术语来指代特定的系统组件。如本领域技术人员所将理解的那样,组件可以用不同的名称指代。本申请档无意区分名称不同而非功能不同的组件。
[0030]本申请的至少一些实施例针对的是包括存储在任何计算机可用介质上的这种(软件形式等的)逻辑的计算机程序产品。当这样的软件在一个或多个数据处理设备中执行时,使得设备如本申请所述那样运行。
[0031]本申请讨论的系统和方法可用于各种计算环境和过程,例如机器学习环境、神经网络、矩阵乘法过程等。如本申请所述,该系统和方法可以减少设备(例如处理设备或存储设备)使用的功率,并且在系统运行期间需要更少的内存存储空间。
[0032]图1示出了用于执行乘法/累加运算的系统100的一个实施例。系统100在本申请中可称为“卷积核”。在一些实施例中,系统100可以在需要长累积序列的任何设备、系统或环境中实现。在一些实施例中,系统100使用乘法器102对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,其特征在于,包括:接收数据以进行处理;对所述接收到的数据执行乘法运算以生成相乘数据;对所述相乘数据执行加法运算以生成一个结果;将所述结果的至少一部分最低有效位存储在第一卷积核的累积缓冲器的第一区域中;以及将所述结果的至少一部分剩余位存储在共享存储器中,其中,所述共享存储器与所述第一卷积核分离。2.根据权利要求1所述的方法,其特征在于,所述累积缓冲器包括多个表项。3.根据权利要求2所述的方法,其特征在于,所述累积缓冲器的每个表项均与神经网络的通道相关联。4.根据权利要求3所述的方法,其特征在于,所述方法还包括同时从所述累积缓冲器中的多个通道读取数据。5.根据权利要求1所述的方法,其特征在于,所述结果的所述剩余位包括所述结果中的至少一部分最高有效位。6.根据权利要求1所述的方法,其特征在于,响应于确定所述第一卷积核的所述累积缓冲器生成了结转命令,将所述结果的至少一部分剩余位存储在共享存储器中。7.根据权利要求1所述的方法,其特征在于,将所述结果的至少一部分剩余位存储在共享存储器中这一步骤包括,将数据请求传输到先入先出缓冲器。8.根据权利要求1所述的方法,其特征在于,将所述结果的至少一部分剩余位存储在共享存储器中这一步骤包括,分配一个特定时间段给所述第一卷积核分配,其中,所述第一卷积核可以在所述特定时间段内传输数据。9.一种装置,其特征在于,包括:第一卷积核,其包括:第一乘法器,用于生成第一相乘数据;第一加法器,用于基于所述第一相乘数据生成第一结果;以及第一累积缓冲器,用于存储所述第一结果的至少一部分最低有效位;以及共享存储器,其耦合到所述第一卷积核,用于存储所述第一结果的至少一部分最高有效位。10.根据权利要求9所述的装置,其特征在于,所述装置还包括第二卷积核,其包括:第二乘法器,用于生成第二相乘数据;第二加法器,用于基于所述第二相乘数据生成第二结果;以及第二累积缓冲器,用于存储所述第二...

【专利技术属性】
技术研发人员:罗文杰
申请(专利权)人:芯原控股有限公司
类型:发明
国别省市:

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

1