存取设备及存取方法技术

技术编号:24119989 阅读:19 留言:0更新日期:2020-05-13 02:48
本申请公开了一种存取设备及存取方法。该存取设备中本地数据存储缓冲区用于存储目标硬件加速引擎计算出的至少一种数据类型的数据;与本地数据存储缓冲区中第一数量的基本写入端口连接的写入控制单元用于将目标硬件加速引擎对应的待写入的至少一种数据类型的数据并行写入本地数据存储缓冲区的相应数据存储区;与本地数据存储缓冲区中第一数量的基本读取端口连接的读取控制单元,用于从本地数据存储缓冲区的数据存储区并行读取目标硬件加速引擎待读取的目标数据类型的数据。该存取设备可以根据不同数据类型的数据量灵活配置本地数据存储缓冲区,且存取数据的长度不受限制。

【技术实现步骤摘要】
存取设备及存取方法
本申请涉及集成电路
,尤其涉及一种存取设备及存取方法。
技术介绍
随着物联网以及人工智能的发展,硬件的算力需求越来越高,大量的数据往往需要硬件加速模块处理。为了满足数据的快速存取,以及数据缓存等需求,硬件加速模块(或称“硬件加速引擎”)通常在本地加入一个片内数据存储缓冲区,即本地数据存储缓冲区。该数据缓冲区在数据通路中直接参与核心运算,并且受到硬件加速引擎中多个模块的存取访问,因此需要本地数据存储缓冲区能够提供多端口并行存取的操作功能。目前,对于主频(或称“时钟频率”)不高的处理器,可以在较短时间内分k次访问多端口共享存储器中不同存储单元的数据,即实现分时并行访问,以完成不同端口的并行访问。其次,该共享存储器需要采用足够高频率的存储芯片才能满足分时并行访问的要求,这类多端口分时并行存取的方式仅适用于吞吐量不高的数据传输需求,即该结构共享存储器的并不能实现多端口并行存取的操作。对于主频高的多核处理器访问多端口共享存储器时,k个端口的存储控制器采用k*n交叉开关或片上网络将n个不同存储单元连接在一起,k个端口通过交叉开关或片上网络,同时访问n个不同的存储单元,实现了多端口并行访问存储器。然而,此类多端口共享存储器中的交叉开关可以完成多个端口的交叉操作,但交叉开关仅支持固定长度数据的读写,即只能完成固定长数据缓冲区的读写操作,且固定长数据缓冲区内存储的数据类型也为固定类型,若要实现数据缓冲区内存储其他数据类型的数据,则需要预先配置相应数据类型的数据存储区,导致灵活度较低。<br>
技术实现思路
本申请实施例提供一种存取设备及存取方法,解决了现有技术存在的上述问题,提高了配置本地数据存储缓冲区中数据类型的灵活性,以及解决了现有技术中本地数据存储缓冲区仅对支持固定长度数据进行读写操作的限制问题。第一方面,提供了一种存取设备,该设备可以包括:本地数据存储缓冲区,用于存储目标硬件加速引擎对应的至少一种数据类型的数据;所述本地数据存储缓冲区是由具有统一地址编码的第一数量的基本存储模块组成的不同数据类型的数据存储区;其中,所述第一数量是根据所述目标硬件加速引擎计算所需的数据量确定的,每个基本存储模块具有基本读取端口和基本写入端口;与所述本地数据存储缓冲区中所述第一数量的基本写入端口连接的写入控制单元,用于将所述目标硬件加速引擎对应的待写入的至少一种数据类型的数据并行写入所述本地数据存储缓冲区的相应数据存储区;与所述本地数据存储缓冲区中所述第一数量的基本读取端口连接的读取控制单元,用于从所述本地数据存储缓冲区的数据存储区并行读取所述目标硬件加速引擎待读取的目标数据类型的数据。在一个可选的实现中,所述写入控制单元,还用于根据所述至少一种数据类型的类型数,确定所述写入控制单元的写入端口的数量;所述读取控制单元,还用于根据所述目标数据类型的类型数,确定所述读取控制单元的读取端口的数量。在一个可选的实现中,若所述写入控制单元写入端口的数量为第二数量N,则所述写入控制单元的第二数量N的写入端口与所述目标硬件加速引擎相连,所述写入控制单元的第一数量K的输出端口与所述第一数量K的基本写入端口一一对应相连;若所述读取控制单元读取端口的数量为第三数量M,则所述读取控制单元的第三数量M的读取端口与所述目标硬件加速引擎相连,所述读取控制单元的第一数量K的输入端口与所述第一数量K的基本读取端口一一对应连接。在一个可选的实现中,所述写入控制单元包括所述第二数量N的多路分配器和所述第一数量K的多路选择器;每个多路分配器包括一个输入端口和所述第一数量K的输出端口,每个多路选择器包括所述第二数量N的输入端口和一个输出端口;所述写入控制单元的第二数量N的写入端口与所述第二数量N的多路分配器的输入端一一对应连接;每个多路分配器的第一数量K的输出端与所述第一数量K的多路选择器的输入端一一对应连接;所述每个多路选择器的输出端与所述相应数据存储区中待写入的基本写入端口连接。在一个可选的实现中,所述读取控制单元包括第三数量M的多路选择器和所述第一数量K的多路分配器;每个多路选择器包括第一数量K的输入端口和一个输出端口,每个多路分配器包括一个输入端口和第三数量M的输出端口;所述读取控制单元的第三数量M的读取端口与所述第三数量M的多路选择器的输入端一一对应连接;每个多路选择器中第一数量K的输入端分别与所述第一数量K的多路分配器的输出端一一对应连接;所述每个多路分配器的输入端与所述相应数据存储区中待读取的基本读取端口连接。在一个可选的实现中,若所述目标硬件加速引擎为卷积神经网络引擎,则所述至少一种数据类型包括权值类型、特征值类型、卷积部分和类型。第二方面,提供了一种存取方法,应用在存取设备中,该方法可以包括:将目标硬件加速引擎对应的至少一种数据类型的数据,并行写入所述存取设备中本地数据存储缓冲区的数据存储区;存储所述目标硬件加速引擎对应的至少一种数据类型的数据;或者,从所述本地数据存储缓冲区的数据存储区并行读取所述目标硬件加速引擎待读取的目标数据类型的数据。在一个可选的实现中,根据所述目标硬件加速引擎对应的至少一种数据类型的类型数,确定所述存取设备中写入控制单元的写入端口的数量;以及,根据所述目标硬件加速引擎待读取的目标数据类型的类型数,确定所述存取设备中读取控制单元的读取端口的数量。第三方面,提供了一种电子设备,该电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述第二方面中任一项上所述的方法步骤。第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第二方面中任一所述的方法步骤。本专利技术实施例提供了一种存取设备,该存取设备中本地数据存储缓冲区用于存储目标硬件加速引擎对应的至少一种数据类型的数据;本地数据存储缓冲区是由具有统一地址编码的第一数量的基本存储模块组成的不同数据类型的数据存储区;其中,第一数量是根据目标硬件加速引擎计算所需的数据量确定的,每个基本存储模块具有基本读取端口和基本写入端口。与本地数据存储缓冲区中第一数量的基本写入端口连接的写入控制单元用于将目标硬件加速引擎对应的待写入的至少一种数据类型的数据并行写入本地数据存储缓冲区的相应数据存储区;与本地数据存储缓冲区中第一数量的基本读取端口连接的读取控制单元,用于从本地数据存储缓冲区的数据存储区并行读取目标硬件加速引擎待读取的目标数据类型的数据。该存取设备可以根据不同数据类型的数据量灵活配置本地数据存储缓冲区,且可以解决现有技术中本地数据存储缓冲区仅对支持固定长度数据进行读写操作的限制问题。附图说明图1为本专利技术实施例提供的一种存取设备的结构示意图;图2为本本文档来自技高网
...

【技术保护点】
1.一种存取设备,其特征在于,所述设备包括:/n本地数据存储缓冲区,用于存储目标硬件加速引擎对应的至少一种数据类型的数据;所述本地数据存储缓冲区是由具有统一地址编码的第一数量的基本存储模块组成的不同数据类型的数据存储区;其中,所述第一数量是根据所述目标硬件加速引擎计算所需的数据量确定的,每个基本存储模块具有基本读取端口和基本写入端口;/n与所述本地数据存储缓冲区中所述第一数量的基本写入端口连接的写入控制单元,用于将所述目标硬件加速引擎对应的待写入的至少一种数据类型的数据并行写入所述本地数据存储缓冲区的相应数据存储区;/n与所述本地数据存储缓冲区中所述第一数量的基本读取端口连接的读取控制单元,用于从所述本地数据存储缓冲区的数据存储区并行读取所述目标硬件加速引擎待读取的目标数据类型的数据。/n

【技术特征摘要】
1.一种存取设备,其特征在于,所述设备包括:
本地数据存储缓冲区,用于存储目标硬件加速引擎对应的至少一种数据类型的数据;所述本地数据存储缓冲区是由具有统一地址编码的第一数量的基本存储模块组成的不同数据类型的数据存储区;其中,所述第一数量是根据所述目标硬件加速引擎计算所需的数据量确定的,每个基本存储模块具有基本读取端口和基本写入端口;
与所述本地数据存储缓冲区中所述第一数量的基本写入端口连接的写入控制单元,用于将所述目标硬件加速引擎对应的待写入的至少一种数据类型的数据并行写入所述本地数据存储缓冲区的相应数据存储区;
与所述本地数据存储缓冲区中所述第一数量的基本读取端口连接的读取控制单元,用于从所述本地数据存储缓冲区的数据存储区并行读取所述目标硬件加速引擎待读取的目标数据类型的数据。


2.如权利要求1所述的设备,其特征在于,
所述写入控制单元,还用于根据所述至少一种数据类型的类型数,确定所述写入控制单元的写入端口的数量;
所述读取控制单元,还用于根据所述目标硬件加速引擎待读取的目标数据类型的类型数,确定所述读取控制单元的读取端口的数量。


3.如权利要求2所述的设备,其特征在于,
若所述写入控制单元写入端口的数量为第二数量,则所述写入控制单元的第二数量的写入端口与所述目标硬件加速引擎相连,所述写入控制单元的第一数量的输出端口与所述第一数量的基本写入端口一一对应相连;
若所述读取控制单元读取端口的数量为第三数量,则所述读取控制单元的第三数量的读取端口与所述目标硬件加速引擎相连,所述读取控制单元的第一数量的输入端口与所述第一数量K的基本读取端口一一对应连接。


4.如权利要求2或3所述的设备,其特征在于,
所述写入控制单元包括所述第二数量的多路分配器和所述第一数量的多路选择器;每个多路分配器包括一个输入端口和所述第一数量的输出端口,每个多路选择器包括所述第二数量的输入端口和一个输出端口;
所述写入控制单元的第二数量的写入端口与所述第二数量的多路分配器的输入端一一对应连接;
每个多路分配器的第一数量的输出端与所述第一数量的多路选择器的输入端一一对应连...

【专利技术属性】
技术研发人员:王必胜栾国庆张弥
申请(专利权)人:浙江欣奕华智能科技有限公司
类型:发明
国别省市:浙江;33

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

1