存储器装置及其控制方法制造方法及图纸

技术编号:25608967 阅读:37 留言:0更新日期:2020-09-12 00:03
本公开提供了一种存储器装置,包括第一组存储块,其在第一计算层中作为一组读存储块操作,并且在第二计算层中作为一组写存储块操作,其中,所述第二计算层在所述第一计算层之后。所述存储器装置还包括第二组存储块,其在所述第一计算层中作为一组写存储块操作,并且在所述第二计算层中作为一组读存储块操作。

【技术实现步骤摘要】
【国外来华专利技术】存储器装置及其控制方法相关申请的交叉引用本申请基于并要求2017年12月22日提交的题为“AnEfficientSRAMOrganizationtoEnableaWiderSingleInstructionMultipleDataMachineandSoftwarePipelining”的美国临时申请No.62/610,089的优先权,其全部内容通过引用合并于此。
技术介绍
深度神经网络算法涉及大量矩阵计算,这通常会导致涉及非常宽的单指令多数据(SIMD)处理单元和大型片上存储的硬件架构。由于深度学习的性质,不同的SIMD通道需要不时交换数据。存在许多提供跨通道数据处理和计算的存储器架构,但是这些架构由于若干原因而存在缺陷,原因例如为存储器访问延迟、存储体(bank)冲突问题、性能问题等不可接受的增加。
技术实现思路
本公开提供了包括在具有SIMD架构的计算设备中的静态随机存取存储器(SRAM)装置。一些示例实施例针对核的存储器装置。所述存储器装置包括第一组存储块,其被配置为在第一计算层中作为一组读存储块操作,在第二计算层中作为一组写入块本文档来自技高网...

【技术保护点】
1.一种至少一个核的存储器装置,所述存储器装置包括:/n第一组存储块,被配置为在第一计算层中作为一组读存储块操作,并在第二计算层中作为一组写存储块操作,其中,所述第二计算层在所述第一计算层之后;/n第二组存储块,被配置为在所述第一计算层中作为一组写存储块操作,并在所述第二计算层中作为一组读存储块操作;/n第一读端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为从所述一组读存储块中的第一读存储块接收操作数,并将接收到的操作数提供给所述至少一个核的至少一个处理单元;/n第二读端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为从所述一组读存...

【技术特征摘要】
【国外来华专利技术】20171222 US 62/610,0891.一种至少一个核的存储器装置,所述存储器装置包括:
第一组存储块,被配置为在第一计算层中作为一组读存储块操作,并在第二计算层中作为一组写存储块操作,其中,所述第二计算层在所述第一计算层之后;
第二组存储块,被配置为在所述第一计算层中作为一组写存储块操作,并在所述第二计算层中作为一组读存储块操作;
第一读端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为从所述一组读存储块中的第一读存储块接收操作数,并将接收到的操作数提供给所述至少一个核的至少一个处理单元;
第二读端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为从所述一组读存储块中的第二读存储块接收一个或多个操作数,并将接收到的一个或多个操作数提供给所述至少一个核的所述至少一个处理单元;以及
第一写端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为向所述一组写存储块中的第一写存储块提供一个或多个操作数以进行存储。


2.根据权利要求1所述的存储器装置,还包括:
第二写端口,通信地耦合到所述第一组存储块和所述第二组存储块中的每个存储块,并且被配置为向所述一组写存储块中的第二写存储块提供操作数以进行存储。


3.根据权利要求1-2中任一项所述的存储器装置,其中,所述第一组存储块包括第一存储块和第二存储块,并且在所述第一计算层内:
所述第一组存储块中的第一存储块和第二存储块被配置为以计算模式操作,使得所述第一组存储块中的第一存储块和第二存储块被配置为分别经由所述第一读端口和所述第二读端口将要在所述第一计算层中执行的计算中使用的操作数读取至所述至少一个处理单元。


4.根据权利要求1-3中任一项所述的存储器装置,其中,所述第二组存储块包括第一存储块和第二存储块,并且在所述第一计算层内:
所述第二组存储块中的第一存储块被配置为以结果模式操作,使得所述第二组存储块中的所述第一存储块被配置为在所述第一存储块内写入所述第一计算层中已执行计算的结果。


5.根据权利要求2-4中任一项所述的存储器装置,其中,在所述第一计算层内:
所述第一组存储块中的第二存储块被配置为以预加载模式操作,使得所述第二存储块被配置为在所述第二存储块内写入要在第二计算层中执行的计算中使用的预加载操作数。


6.根据权利要求3-5中任一项所述的存储器装置,其中,在每个计算层的开始处,计算模式、结果模式和预加载模式中的至少一个被动态分配给所述第一组存储块和所述第二组存储块中的第一存储块和第二存储块。


7.根据权利要求3-6中任一项所述的存储器装置,其中,在所述第二计算层期间:
所述第二组存储块被配置为以计算模式操作,使得所述第二组存储块被配置为将所述第一计算层内由所述第二组存储块写入的操作数读取到所述至少一个处理单元以执行所述第二计算层的计算。


8.根据权利要求3-7中任一项所述的存储器装置,其中,在所述第二计算层期间:
所述第一组存储块中的第一存储块被配置为以结果模式操作,使得所述第一存储块被配置为在所述第一存储块内写入所述第二计算层中已执行计算的结果。


9.根据权利要求3-8中任一项所述的存储器装置,其中,在所述第二计算层期间:
所述第一组存储块中的第二存储块被配置为以预加载模式操作,使得所述第二存储块被配置为在所述第二存储块内写入预加载操作数,其中,所述预加载操作数将用于要在第三计算层中执行的计算。


10.根据权利要求1-9中任一项所述的存储器装置,其中,所述第一组存储块和所述第二组存储块中的每个存储块是单个读/写静态随机存取存储器(1R/WSRAM)。


11.根据权利要求2-10中任一项所述的存储器装置,其中,所述第一组存储块和所述第二组存储块中的每个存储块经由相应的N对1多路复用器通信地耦合到所述第一写端口和所述第二写端口,并且经由相应的M对1多路复用器通信地耦合到所述第一读端口和所述第二读端口,其中,N是所述存储器装置内的存储块的数量,M是所述存储器装置中的写端口的数量。


12.根据权利要求1至11中任一项所述的存储器装置,其中,所述核包括单指令多数据(SIMD)架构。


13.一种用于控制存储器装置的方法,所述方法包括:
对于第一计算层:
选择第一组存储块以作为一组读存储块操作,所述一组读存储块使得能够经由所述存储器装置的读端口向至少一个处理单元提供操作数,并且
选择第二组存储块以作为一组写存储块操作,所述一组写存储块使得能够经由所述存储器装置的写端口接收操作数用于存储;以及
在所述第一计算层之后的第二计算层中:
选择所述第一组存储块以作为一组写存储块操作,并且
选择所述第二组存储块以作为一组读存储块操作。


14.根据权利要求13所述的方法,还包括:
生成指令以控制对于每个计算层所述存储器装置的所述第一组存储块和所述第二组存储块的操作模式,其中,所述指令设置所述第一组存储块和所述第二组存储块的操作模式。


15.根据权利要求14所述的方法,其中,所述指令进一步在每个计算层的开始处动态地设置所述第一组存储块和所述第二组存储块的操作模式。


16.根据权利要求14或15中任一项所述的方法,其中,用于设置操作模式的指令还包括:
将所述第一组存储块的操作模式设置为计算模式,使得所述第一组存储块被配置为经由所述至少一个处理单元读取要在计算中使用的操作数,以在所述第一计算层中执行。


17.根据权利要求14-16中任一项所述的方法,其中,所述第二组存储块包括第一存储块和第二存储块,并且其中,用于设置操作模式的指令还包括:
将所述第二组存储块中的第一存储块的操作模式设置为结果模式,使得所述第一存储块被配置为在所述第一存储块内写入所述第一计算层中已执行计算的结果。


18.根据权利要求14-17中任一项所述的方法,其中,所述第一组存储块包括第一存储块和第二存储块,并且其中,用于设置操作模式的指令还包括:
将所述第一组存储块中的第二存储块的操作模式设置为预加载模式,使得所述第二存储块被配置为在所述第二存储块内写入预加载操作数,用于要在所述第二计算层中执行的计算。


19.根据权利要求14-18中任一项所述的方法,其中,用于设置操作模式的指令还包括:
将所述第二组存储块设置为以计算模式操作,使得所述第二组存储块被配置为将所述第一计算层内由所述第二组存储块写入的操作数读取到所述至少一个处理单元以执行所述第二计算层的计算。


20.根据权利要求14-19中任一项所述的方法,其中,用于设置操作模式的指令还包括:
将所述第一组存储块中的第一存储块的操作模式设置为结果模式,使得所述第一存储块被配置为在所述第一存储块内写入所述第二计算层中已执行计算的结果。


21.根据权利要求14-20中任一项所述的方法,其中,用于设置操作模式的指令还包括...

【专利技术属性】
技术研发人员:韩亮蒋晓维陈健
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1