对片上缓存友好的维度变换装置及神经网络处理器制造方法及图纸

技术编号:34387897 阅读:19 留言:0更新日期:2022-08-03 21:12
本申请提供了对片上缓存友好的维度变换装置,其包括控制模块、由多个存储块构成的数据缓存模块、写入控制模块和读出控制模块。控制模块在接收待处理的数据搬运指令的同时获取与该指令相关的配置信息,响应于确定配置信息中输入数据维度和输出数据维度不匹配,根据配置信息生成相应的输入地址以按照输出数据维度信息从低维到高维的顺序从外部存储单元读取相应数据,通过写入控制模块将来自外部存储单元的输入数据写入至数据缓存模块中,并通过读出控制模块从数据缓存模块中读取数据以进行输出。该维度变换装置能在不降低片上缓存访问效率的前提下有效地完成数据维度变换。访问效率的前提下有效地完成数据维度变换。访问效率的前提下有效地完成数据维度变换。

【技术实现步骤摘要】
对片上缓存友好的维度变换装置及神经网络处理器


[0001]本申请涉及神经网络中的数据处理技术,尤其涉及适用于神经网络处理器中数据维度变换装置。

技术介绍

[0002]本部分的陈述仅仅是为了提供与本申请的技术方案有关的背景信息,以帮助理解,其对于本申请的技术方案而言并不一定构成现有技术。
[0003]人工智能(AI)技术在近些年来得到了迅猛的发展,已经渗透至视觉感知、语音识别、辅助驾驶、智能家居、交通调度等各个领域。很多AI算法都涉及到基于神经网络的学习和计算,例如卷积神经网络CNN、循环神经网络RNN、深度神经网络DNN等等。这些AI算法经常涉及多层结构的神经网络和由多个神经网络构成的学习模型,要求较强的并行计算能力以处理海量数据,因此通常采用诸如GPU、GPGPU、AI加速芯片之类的能支持多核心并行计算的处理器来执行相关的神经网络运算。这些处理器中经常需要将同一批数据提供给神经网络的不同层或提供给不同的神经网络,而这些神经网络的不同层或不同神经网络之间所需数据的格式和维度往往有所不同。
[0004]以卷积神经网络为例,该神经网本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种对片上缓存友好的维度变换装置,包括控制模块、由多个存储块构成的数据缓存模块、写入控制模块和读出控制模块,其中:所述控制模块被配置为在接收待处理的数据搬运指令的同时获取与该指令相关的配置信息,所述配置信息至少包括输入数据和输出数据的基地址信息、输入数据和输出数据的维度信息、输入数据和输出数据各维度的数据大小和数据步长;所述控制模块被配置为利用收到的所述配置信息生成相应输入地址,以按照输出数据维度从低维到高维的顺序读取相应数据;所述写入控制模块被配置为将来自外部存储单元的输入数据写入至所述数据缓存模块中;所述读出控制模块被配置为根据所述控制模块的指示从所述数据缓存模块中读取数据并进行输出。2.根据权利要求1所述的装置,其中所述数据缓存模块中每个存储块为片上随机存取存储器,所述存储块的数量至少应满足能够整除预设的输入数据的位宽和输出数据的位宽,其中所述输入数据的位宽与所述输出数据的位宽相同。3.根据权利要求1所述的装置,其中所述装置包括多个输出通道,所述输出通道的数量至少应满足能整除预设的所述输入数据的位宽和所述输出数据的位宽。4.根据权利要求3所述的装置,其中每个所述输出通道对应一个输出地址,每个所述输出通道内的数据是连续的,以及其中每个所述存储块的深度至少等于或大于每个所述输出通道的数据位宽与单个数据的位宽的比值。5.根据权利要求1所述的装置,其中所述输入数据和输出数据的各维度数据按照从低维至高维依次线性排列存储,所述输入地址是根据所述输入数据的基地址信息、各维度数据大小信息、各维度数据步长信息以及各维度的输入计数器的计数值计算得到的。6.根据权利要求5所述的装置,所述控制模块还被配置为在检测到输入数据维度和输出数据维度的最低维度发生变化时,调整输入计数器以按照输出数据维度从低维到高维顺序读取数据,包括:每笔输入数据请求后,输出数据对应的最低维度的输入计数器增加1;当输出数据的最低维度对应的输入计数器的计数值达到该维度的数据大小时,将...

【专利技术属性】
技术研发人员:谢耀李智
申请(专利权)人:上海登临科技有限公司
类型:发明
国别省市:

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

1