1.一种在卷积神经网络中分层构造多级存储器的方法,包括:
将存储器划分为多个部分;
将所述多个部分划分为多个条带;
在mac阵列中利用来自所述多个条带的输入数据;
将中间结果从所述mac阵列输出到结果缓冲器的所述多个条带中的至少一个条带;
将所述中间结果从所述结果缓冲器的所述多个条带中的至少一个条带回送到输入数据缓冲器的所述多个条带中的至少一个条带;和
将最终结果从所述结果缓冲器的所述多个条带中的至少一个条带输出到输出缓冲器的所述多个条带中的至少一个条带。
2.根据权利要求1所述的分层构造多级存储器的方法,还包括:
划分出mac权重缓冲器部分;
划分出输入数据缓冲器部分;
划分出结果缓冲器部分;
划分出输出缓冲器部分;
划分出共享数据缓冲器部分;
划分出位测试权重存储器部分;
划分出位测试数据存储器部分;和
划分出外部随机存取存储器部分。
3.根据权利要求2所述的分层构造多级存储器的方法,还包括:
将所述输入数据缓冲器部分划分为多个输入缓冲数据条带;
将所述结果缓冲器部分划分为多个结果缓冲器条带;
将所述输出缓冲器部分划分为多个输出缓冲器条带;
将所述共享数据缓冲器部分划分为多个共享数据条带;和
将所述位测试数据存储器部分划分为多个位测试数据存储器条带。
4.根据权利要求3所述的分层构造多级存储器的方法,还包括:
从所述外部随机存取存储器部分接收权重和输入数据;
对来自所述位测试权重存储器部分的权重进行解压缩;和
将解压缩的权重存储在所述mac权重缓冲器部分中。
5.根据权利要求4所述的分层构造多级存储器的方法,还包括:
将输入数据从所述位测试数据存储器部分导入到所述共享数据缓冲器部分的所述多个条带中的至少一个条带;
将所述输入数据从所述共享数据缓冲器部分的所述多个条带中的至少一个条带导入到所述输入数据缓冲器部分的所述多个条带中的至少一个条带;和
在所述mac阵列处从所述mac权重缓冲器部分和所述输入数据缓冲器部分接收权重。
6.根据权利要求5所述的分层构造多级存储器的方法,还包括:
将所述最终结果从所述输出缓冲器部分的所述多个条带中的至少一个条带输出到所述共享数据缓冲器部分的所述多个条带中的至少一个条带;
将所述最终结果从所述共享数据缓冲器部分的所述多个条带中的至少一个条带输出到所述位测试数据存储器部分的所述多个条带中的至少一个条带;和
将所述最终结果从所述位测试数据存储器部分的所述多个条带中的至少一个条带输出到所述外部随机存取存储器部分。
7.根据权利要求6所述的分层构造多级存储器的方法,还包括:
将所述最终结果从所述输出缓冲器部分的所述多个条带中的至少一个条带输出到所述共享数据缓冲器部分的所述多个条带中的至少一个条带;
将所述最终结果从所述共享数据缓冲器部分的所述多个条带中的至少一个条带输出到所述位测试数据存储器部分的所述多个条带中的至少一个条带;和
将所述最终结果从所述位测试数据存储器部分的所述多个条带中的至少一个条带输出到所述外部随机存取存储器部分。
8.根据权利要求7所述的分层构造多级存储器的方法,还包括:
存储数据集的宽度分量,使得宽度分量在存储器阵列中沿第一地址方向线性增加;
存储所述数据集的高度分量,使得高度分量在所述存储器阵列中沿与所述第一地址方向正交的第二地址方向线性增加;和
存储所述数据集的深度分量,使得深度分量在所述存储器阵列中沿与所述第一地址方向和所述第二地址方向对称的第三地址方向线性增加。
9.根据权利要求3所述的分层构造多级存储器的方法,还包括:
将所述多个输入缓冲数据条带划分为多个输入缓冲数据块;
将所述多个结果缓冲器条带划分为多个结果缓冲器块;
将所述多个输出缓冲器条带划分为多个输出缓冲器块;
将所述多个输出缓冲器条带划分为多个共享数据块;和
将所述多个输出缓冲器条带划分为多个位测试数据存储器块。
10.根据权利要求9所述的分层构造多级存储器的方法,还包括:
将输入数据从所述位测试数据存储器部分导入到所述共享数据缓冲器部分的所述多个块中的至少一个块;
将所述输入数据从所述共享数据缓冲器部分的所述多个块中的至少一个块导入到所述输入数据缓冲器部分的所述多个块中的至少一个块;和
在所述mac阵列处从所述mac权重缓冲器部分和所述输入数据缓冲器部分接收权重。
11.根据权利要求10所述的分层构造多级存储器的方法,还包括:
将所述最终结果从所述输出缓冲器部分的所述多个块中的至少一个块输出到所述共享数据缓冲器部分的所述多个块中的至少一个块;
将所述最终结果从所述共享数据缓冲器部分的所述多个块中的至少一个块输出到所述位测试数据存储器部分的所述多个块中的至少一个块;和
将所述最终结果从所述位测试数据存储器部分的所述多个块中的至少一个块输出到所述外部随机存取存储器部分。
12.根据权利要求11所述的分层构造多级存储器的方法,还包括:
存储数据集的宽度分量,使得宽度分量在存储器阵列中沿第一地址方向线性增加;
存储所述数据集的高度分量,使得高度分量在所述存储器阵列中沿与所述第一地址方向正交的第二地址方向线性增加;和
存储所述数据集的深度分量,使得深度分量在所述存储器阵列中沿与所述第一地址方向和所述第二地址方向对称的第三地址方向线性增加。
13.根据权利要求11所述的分层构造多级存储器的方法,还包括:
存储数据集的宽度分量,使得宽度分量在存储器阵列中沿第一地址方向线性增加;
存储所述数据集的高度分量,使得高度分量在所述存储器阵列中沿与所述第一地址方向正交的第二地址方向线性增加;和
存储所述数据集的深度分量,使得深度分量在所述存储器阵列中沿与所述第一地址方向和所述第二地址方向对称的第三地址方向线性增加。
14.一种在卷积神经网络中分层构造多级存储器的方法,包括:
存储数据集的宽度分量,使得宽度分量在存储器阵列中沿第一地址方向线性增加;
存储所述数据集的高度分量,使得高度分量在所述存储器阵列中沿与所述第一地址方向正交的第二地址方向线性增加;和
存储所述数据集的深度分量,使得深度分量在所述存储器阵列中沿与所述第一地址方向和所述第二地址方向对称的第三地址方向线性增加。
15.一种在卷积神经网络中分层构造多级存储器的方法,包括:
在第一存储器中存储三维数据集的宽度分量,使得所述宽度分量通过第一存储器地址空间线性增加;
在第二存储器中存储所述三维数据集的高度分量,使得所述高度分量通过第二存储器地址空间线性增加;以及
在第三存储器中存储所述三维数据集的深度分量,使得所述深度分量通过第三存储器地址空间线性增加。