基于数据流的数据缓存器、数据处理方法及人工智能芯片技术

技术编号:39067796 阅读:14 留言:0更新日期:2023-10-12 20:00
本公开提供了一种基于数据流的数据缓存器、数据处理方法及人工智能芯片,涉及人工智能技术领域,所述基于数据流的数据缓存器包括:多个存储体,不同存储体被配置为存储不同的数据;数据读取电路,被配置为接收计算任务对应的读控制信号和读地址,在所述读控制信号对应第一读取模式的情况下,基于所述读控制信号从所述多个存储体中确定n个存储体,并基于所述读地址从所述n个存储体中并行地读取执行所述计算任务所需的第一数据,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。为正整数。为正整数。

【技术实现步骤摘要】
基于数据流的数据缓存器、数据处理方法及人工智能芯片


[0001]本公开涉及人工智能
,尤其是一种基于数据流的数据缓存器、数据处理方法及人工智能芯片。

技术介绍

[0002]随着人工智能技术的发展,各种人工智能算法已经被广泛地应用于各行各业。人工智能算法的一个显著特点是需要使用大量的计算资源对大量的输入数据进行海量的计算以得到最后的结果,然而,完成这些计算的前提是存储计算所需数据的存储器能够持续输出大量的数据给计算电路用于计算。
[0003]相关技术中,通常采用基于指令集的数据缓存器存储并输出执行计算所需的大量数据。

技术实现思路

[0004]专利技术人注意到,相关技术中,数据处理的效率较低。
[0005]经分析,专利技术人发现,这种基于指令集的数据缓存器基于一条读取指令只能读取一份数据,因此,在执行一次计算任务所需要的数据是多份不同的数据的情况下,基于指令集的数据缓存器只有基于当前指令读取一份数据之后,才能基于下一条指令读取下一份数据。这种串行的数据读取方式导致数据处理的效率较低。
[0006]为了解决上述问题,本公开实施例提出了如下解决方案。
[0007]根据本公开实施例的一方面,提供一种基于数据流的数据缓存器,包括:多个存储体,不同存储体被配置为存储不同的数据;数据读取电路,被配置为接收计算任务对应的读控制信号和读地址,在所述读控制信号对应第一读取模式的情况下,基于所述读控制信号从所述多个存储体中确定n个存储体,并基于所述读地址从所述n个存储体中并行地读取执行所述计算任务所需的第一数据,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。
[0008]在一些实施例中,所述读地址包括寻址地址和片选地址,所述数据读取电路被配置为基于所述寻址地址读取所述第一数据。
[0009]在一些实施例中,所述数据读取电路还被配置为在所述读控制信号对应第二读取模式的情况下,基于所述片选地址从所述多个存储体中确定一个存储体,并基于所述寻址地址从所述一个存储体中读取执行所述计算任务所需的第二数据。
[0010]在一些实施例中,在所述计算任务为卷积计算的情况下,所述读控制信号对应所述第一读取模式。
[0011]在一些实施例中,在所述计算任务为神经网络算法中的标准卷积计算的情况下,每份数据包括一个卷积核中的部分数据。
[0012]在一些实施例中,在所述计算任务为神经网络算法中的深度可分卷积计算的情况下,每份数据包括一个通道的特征图中的部分数据。
[0013]在一些实施例中,在所述计算任务为神经网络算法中的双线性插值计算的情况下,所述读控制信号对应所述第二读取模式。
[0014]在一些实施例中,所述数据缓存器还包括:数据写入电路,被配置为接收所述计算任务对应的写控制信号和写地址,在所述写控制信号对应第一写入模式的情况下,基于所述写控制信号确定所述n个存储体,并基于所述写地址将所述第一数据并行地写入所述n个存储体。
[0015]根据本公开实施例的另一方面,提供另一种基于数据流的数据缓存器,包括:多个存储体,不同存储体被配置为存储不同的数据;数据写入电路,被配置为接收计算任务对应的写控制信号和写地址,在所述写控制信号对应第一写入模式的情况下,基于所述写控制信号从所述多个存储体中确定n个存储体,并基于所述写地址将执行所述计算任务所需的第一数据并行地写入所述n个存储体,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。
[0016]在一些实施例中,所述写地址包括寻址地址和片选地址,所述数据写入电路被配置为基于所述寻址地址写入所述第一数据。
[0017]在一些实施例中,所述数据写入电路还被配置为在所述写控制信号对应第二写入模式的情况下,基于所述片选地址从所述多个存储体中确定一个存储体,并基于所述寻址地址将执行所述计算任务所需的第二数据写入所述一个存储体。
[0018]在一些实施例中,在所述计算任务为卷积计算的情况下,所述写控制信号对应所述第一写入模式。
[0019]在一些实施例中,在所述计算任务为神经网络算法中的双线性插值计算的情况下,所述写控制信号对应所述第二写入模式。
[0020]根据本公开实施例的又一方面,提供一种人工智能芯片,包括:上述任意一个实施例所述的基于数据流的数据缓存器;地址生成单元,被配置为响应于所述计算任务对应的第一驱动信号,生成所述读地址,并将所述读地址发送至所述数据缓存器;以及控制寄存器,被配置为响应于所述计算任务对应的第一配置信号,向所述数据缓存器发送所述读控制信号,并向所述地址生成单元发送所述第一驱动信号。
[0021]在一些实施例中,所述人工智能芯片还包括:处理电路,被配置为响应于所述控制寄存器发送的所述计算任务对应的第二驱动信号,将所述n份数据中的多份数据发送至计算电路。
[0022]在一些实施例中,所述数据缓存器还包括数据写入电路,被配置为接收所述计算任务对应的写控制信号和写地址,在所述写控制信号对应第一写入模式的情况下,基于所述写控制信号确定所述n个存储体,并基于所述写地址将所述第一数据并行地写入所述n个存储体;所述地址生成单元还被配置为响应于所述计算任务对应的第三驱动信号,生成所述写地址,并将所述写地址发送至所述数据缓存器;所述控制寄存器还被配置为响应于所述计算任务对应的第二配置信号,向所述数据缓存器发送所述写控制信号,并向所述地址生成单元发送所述第三驱动信号。
[0023]根据本公开实施例的再一方面,提供另一种人工智能芯片,包括:上述任意一个实施例所述的基于数据流的数据缓存器;地址生成单元,被配置为响应于所述计算任务对应的第三驱动信号,生成所述写地址,并将所述写地址发送至所述数据缓存器;以及控制寄存
器,被配置为响应于所述计算任务对应的第二配置信号,向所述数据缓存器发送所述写控制信号,并向所述地址生成单元发送所述第三驱动信号。
[0024]在一些实施例中,所述人工智能芯片还包括:直接存储器访问模块,被配置为响应于所述控制寄存器发送的所述计算任务对应的第四驱动信号,从片外存储器获取执行所述计算任务所需的数据;其中,所述数据写入电路被配置为从所述所需的数据中获取所述第一数据,并将所述第一数据并行地写入所述n个存储体。
[0025]根据本公开实施例的还一方面,提供一种基于数据流的数据处理方法,包括:接收计算任务对应的读控制信号和读地址;在所述读控制信号对应第一读取模式的情况下,基于所述读控制信号从多个存储体中确定n个存储体,并基于所述读地址从所述n个存储体中并行地读取执行所述计算任务所需的第一数据,所述多个存储体中的不同存储体中存储有不同的数据,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。
[0026]在一些实施例中,所述读地址包括寻址地址和片选地址,所述基于所述读地址从所述n个存储体中并行地读取执行所述计算任务所需的第一数据包括:基于所述寻址地址读取所述第一数据。
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于数据流的数据缓存器,包括:多个存储体,不同存储体被配置为存储不同的数据;数据读取电路,被配置为接收计算任务对应的读控制信号和读地址,在所述读控制信号对应第一读取模式的情况下,基于所述读控制信号从所述多个存储体中确定n个存储体,并基于所述读地址从所述n个存储体中并行地读取执行所述计算任务所需的第一数据,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。2.根据权利要求1所述的数据缓存器,其中,所述读地址包括寻址地址和片选地址,所述数据读取电路被配置为基于所述寻址地址读取所述第一数据。3.根据权利要求2所述的数据缓存器,其中,所述数据读取电路还被配置为在所述读控制信号对应第二读取模式的情况下,基于所述片选地址从所述多个存储体中确定一个存储体,并基于所述寻址地址从所述一个存储体中读取执行所述计算任务所需的第二数据。4.根据权利要求1

3任意一项所述的数据缓存器,其中,在所述计算任务为卷积计算的情况下,所述读控制信号对应所述第一读取模式。5.根据权利要求4所述的数据缓存器,其中,在所述计算任务为神经网络算法中的标准卷积计算的情况下,每份数据包括一个卷积核中的部分数据。6.根据权利要求4所述的数据缓存器,其中,在所述计算任务为神经网络算法中的深度可分卷积计算的情况下,每份数据包括一个通道的特征图中的部分数据。7.根据权利要求3所述的数据缓存器,其中,在所述计算任务为神经网络算法中的双线性插值计算的情况下,所述读控制信号对应所述第二读取模式。8.根据权利要求1所述的数据缓存器,还包括:数据写入电路,被配置为接收所述计算任务对应的写控制信号和写地址,在所述写控制信号对应第一写入模式的情况下,基于所述写控制信号确定所述n个存储体,并基于所述写地址将所述第一数据并行地写入所述n个存储体。9.一种基于数据流的数据缓存器,包括:多个存储体,不同存储体被配置为存储不同的数据;数据写入电路,被配置为接收计算任务对应的写控制信号和写地址,在所述写控制信号对应第一写入模式的情况下,基于所述写控制信号从所述多个存储体中确定n个存储体,并基于所述写地址将执行所述计算任务所需的第一数据并行地写入所述n个存储体,所述第一数据包括与所述n个存储体一一对应的n份数据,n≥2,n为正整数。10.根据权利要求8或9所述的数据缓存器,其中,所述写地址包括寻址地址和片选地址,所述数据写入电路被配置为基于所述寻址地址写入所述第一数据。11.根据权利要求10所述的数据缓存器,其中,所述数据写入电路还被配置为在所述写控制信号对应第二写入模式的情况下,基于所述片选地址从所述多个存储体中确定一个存储体,并基于所述寻址地址将执行所述计算任务所需的第二数据写入所述一个存储体。12.根据权利要求8或9所述的数据缓存器,其中,在所述计算任务为卷积计算的情况下,所述写控制信号对应所述第一写入模式。13.根据权利要求11所述的数据缓存器,其中,在所述计算任务为神经网络算法中的双线性插值计算的情况下,所述写控制信号对应所述第二写入模式。14.一种人工智能芯片,包括:
权利要求1

7任意一项所述的基于数据流的数据缓存器;地址生成单元,被配置为响应于所述计算任务对应的第一驱动信号,生成所述读地址,并将所述读地址发送至所述数据缓存器;以及控制寄存器,被配置为响应于所述计算任务对应的第一配置信号,向所述数据缓存器发送所述读控制信号,并向所述地址生成单元发送所述第一驱动信号。15.根据权利要求14所述的人工智能芯片,还包括:处理电路,被配置为响应于所述控制寄存器发送的所述计算任务对应的第二驱动信号,将所述n份...

【专利技术属性】
技术研发人员:曾成龙蔡权雄牛昕宇
申请(专利权)人:深圳鲲云信息科技有限公司
类型:发明
国别省市:

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

1