一种支持混洗操作的静态随机存储系统
- 国知局
- 2024-07-31 19:14:51
本发明涉及芯片研发,尤其涉及一种支持混洗操作的静态随机存储系统。
背景技术:
1、随着神经网络和信号处理算法的发展,向量单指令多数据(simd)体系结构在处理器中得到了广泛的应用。向量simd体系结构可以通过并发处理多个数据通道来有效地利用数据级并行性(dlp)。例如,诸如brainwave、imagine和nx27v、davinci、vt、maven等向量处理器。soda、ft-matrix和anysp等信号处理器也采用了这种方案。近年来,深度神经网络的发展提供了与向量simd结构的完美匹配,具有更大向量宽度的向量simd结构有望很好地满足深度神经网络中的密集计算。虽然向量simd体系结构已被广泛应用,但数据混洗操作极大的限制了它的效率,混洗操作是为任意重新排列向量元素而设计的。混洗操作的主要目的是,对齐向量simd体系结构中的处理单元和向量寄存器中的对应数据,这样才能有效地同时处理多个数据通道,提升计算的并行性。当向量元素与计算通道未对齐时,必须执行额外的数据混洗操作。例如,卷积神经网络(cnns),混洗操作的平均延迟占整个卷积操作90%的执行时间。为了优化数据混洗操作,传统的处理器中设计了定制的混洗单元。一般情况下,混洗单元采用交叉开关的结构,以满足应用中混洗操作的多样性。例如,ft-matrix和davinci架构都添加了一个基于交叉开关的混洗单元。然而,现有的基于交叉开关的混洗单元占用了较大的硬件开销,且可伸缩性较差,随着未来向量宽度的增加,这个问题将变得更加严重。因此,有必要提供一种支持混洗操作的静态随机存储系统,以实现高水平的并行混洗数据,从而提高计算效率和降低能耗。
技术实现思路
1、本发明所要解决的技术问题在于,提供一种支持混洗操作的静态随机存储系统,以实现高水平的并行混洗数据,从而提高计算效率和降低能耗。
2、为了解决上述技术问题,本发明第一方面公开了一种支持混洗操作的静态随机存储系统,包括:
3、k个混洗模块,m个开关组、指令缓冲区、控制器、行解码器、列解码器、n个水平正位线和所述n个水平反位线;所述k为不小于2,不大于8的正整数;所述m为比所述n小1的正整数;所述n为不小1的正整数;
4、所述混洗模块是沿水平方向依次排列分布,用于对数据进行混洗操作;
5、所述水平正位线和所述水平反位线,连通所述混洗模块,用于沿水平方向进行跨位点阵列的数据传输;
6、所述开关组设置于连接相邻两个所述混洗模块的所述水平正位线和所述水平反位线上,以控制连接所述混洗模块的所述水平正位线和所述水平反位线的通断;
7、所述指令缓冲区,用于缓冲来自处理器的控制指令,并顺序输入到所述控制器;
8、所述控制器用于对所述控制指令进行信号转化为控制指令信号,将所述控制指令信号中的地址信号转发至所述行解码器和所述列解码,并利用所述控制指令信号中的部件控制信号控制所述混洗模块和所述开关组;
9、所述行解码器和所述列解码器,用于解码所述地址信号,以产生所述地址信号对应的激活信号。
10、作为一种可选的实施方式,每个所述混洗模块包括4个位点阵列模块、1个逻辑模块、4个垂直正位线和4个垂直反位线、4个垂直字线和所述n个水平字线;所述垂直字线电连接于所述列解码器;所述水平字线电连接于所述行解码器;
11、所述位点阵列模块沿水平方向依次分布;
12、所述逻辑模块位于4个所述位点阵列中间,由所述水平正位线和所述水平反位线连通所述逻辑模块和所述位点阵列;
13、所述垂直正位线和所述垂直反位线连通所述位点阵列模块内的位点阵列单元,用于沿铅锤方向进行跨位点阵列的数据传输;
14、所述垂直字线用于根据所述激活信号,在所述位点阵列内沿铅锤方向控制数据传输;
15、所述水平字线用于根据所述激活信号,在所述位点阵列内沿水平方向控制数据传输。
16、作为一种可选的实施方式,每个所述混洗模块包括所述n个混洗行;每个所述混洗行包括每个所述位点阵列模块中的1个所述位点阵列单元、所述逻辑模块中的数据交换单元、所述位点阵列单元对应的所述水平字线和所述位点阵列单元对应的垂直字线;
17、所述水平正位线和所述水平反位线由左至右依次连接2个所述位点阵列单元、所述数据交换单元和2个所述位点阵列单元;
18、所述垂直字线连接不同所述混洗行对应的所述位点阵列单元,以在铅锤方向进行数据传输;
19、所述水平字线连接同一所述混洗行对应的所述位点阵列单元,以在水平方向进行数据传输。
20、作为一种可选的实施方式,所述位点阵列单元包括第一位点阵列单元、第二位点阵列单元、第三位点阵列单元和第四位点阵列单元;所述垂直字线包括第一垂直字线、第二垂直字线、第三垂直字线和第四垂直字线;所述垂直正位线包括第一垂直正位线、第二垂直正位线、第三垂直正位线和第四垂直正位线;所述垂直反位线包括第一垂直反位线、第二垂直反位线、第三垂直反位线和第四垂直反位线;所述第一位点阵列单元、所述第一垂直正位线、所述第一垂直反位线和所述第一垂直字线、所述第二位点阵列单元、所述第二垂直正位线、所述第二垂直反位线和所述第二垂直字线、所述第三位点阵列单元、所述第三垂直正位线、所述第三垂直反位线和所述第三垂直字线、所述第四位点阵列单元、所述第四垂直正位线、所述第四垂直反位线和所述第四垂直字线分别属于相同的所述位点阵列模块;
21、所述水平正位线由左至右依次连接所述第一位点阵列单元、所述第二位点阵列单元、所述数据交换单元、所述第三位点阵列单元和所述第四位点阵列单元;所述水平反位线由左至右依次连接所述第一位点阵列单元、所述第二位点阵列单元、所述数据交换单元、所述第三位点阵列单元和所述第四位点阵列单元;所述水平字线由左至右依次连接所述第一位点阵列单元、所述第二位点阵列单元、所述第三位点阵列单元和所述第四位点阵列单元;所述第一垂直字线、所述第一垂直正位线和所述第一垂直反位线均连接所述述第一位点阵列单元;所述第二垂直字线、所述第二垂直正位线和所述第二垂直反位均线连接所述述第二位点阵列单元;所述第三垂直字线、所述第三垂直正位线和所述第三垂直反位均连接所述述第三位点阵列单元;所述第四垂直字线、所述第四垂直正位线和所述第四垂直反位均连接所述述第四位点阵列单元;所述数据交换单元的还与所述控制器相连接。
22、作为一种可选的实施方式,所述数据交换单元包括第一锁存器、第二锁存器、第一差分灵敏放大器、第二灵敏放大器、第一写回开关、第二写回开关、第一非门控制单元、第二非门控制单元、异或控制单元、第一选择器和第二选择器;其中,
23、所述第一锁存器的r端、en端,所述第二锁存器的r端、en端,第一差分灵敏放大器的sae端、所述第二灵敏放大器的sae端、所述第一写回开关的wen端和所述第二写回开关的wen端均电连接所述控制器;所述第一锁存器的d端分别电连接所述第一写回开关的第一端、所述异或控制单元的第三端、所述第一非门控制单元的第二端和所述第一选择器的第四端,所述第一锁存器的q端电连接所述第二选择器的第二端;所述第二锁存器的d端电连接所述异或控制单元的第一端,所述第二锁存器的q端电连接所述第一选择器的第二端;所述第一选择器的第一端电连接所述第二选择器的第四端,所述第一选择器的第三端电连接所述第一非门控制单元的第一端;所述第二选择器的第一端分别电连接所述第二非门控制单元的第二端和所述第一写回开关的第二端,所述第二选择器的第三端电连接0值;所述异或控制单元的第二端电连接所述第二灵敏放大器的第一端;所述第二灵敏放大器的第二端和所述第一差分灵敏放大器的第二端均电连接电源;所述第二灵敏放大器的第三端分别电连接所述第一写回开关的第一端和所述水平反位线;所述第一写回开关的第二端电连接所述第二非门控制单元的第一端;所述第一差分灵敏放大器的第三端分别电连接所述第二写回开关的第一端和所述水平反位线。
24、作为一种可选的实施方式,所述位点阵列单元包括第一p型mos管、第二p型mos管、第一n型mos管、第二n型mos管、第三n型mos管、第四n型mos管、第五n型mos管和第六n型mos管;其中,
25、所述垂直字线分别电连接所述第四n型mos管的第一端和所述第五n型mos管的第一端;所述水平字线分别电连接所述第三n型mos管的第一端和所述第六n型mos管的第一端;所述垂直正位线电连接所述第六n型mos管的第二端;所述垂直反位线电连接所述第三n型mos管的第二端;所述水平正位线电连接所述第五n型mos管的第二端;所述水平反位线电连接所述第四n型mos管的第二端;所述第一p型mos管的第一端分别电连接所述第二p型mos管的第三端、所述第一n型mos管的第一端、所述第二n型mos管的第三端、所述第六n型mos管的第三端,所述第一p型mos管的第三端分别电连接所述第二p型mos管的第一端、所述第一n型mos管的第三端、所述第二n型mos管的第一端、所述第三n型mos管的第三端、所述第四n型mos管的第三端;所述第一p型mos管的第二端、所述第二p型mos管的第二端、所述第一n型mos管的第二端和所述第二n型mos管的第二端均接地;
26、所述垂直字线根据所述激活信号对所述第四n型mos管和所述第五n型mos管进行通断电控制;
27、所述水平字线根据所述激活信号对所述第三n型mos管和所述第六n型mos管进行通断电控制;
28、所述垂直正位线在铅锤方向对同一所述位点阵列模块中不同所述位点阵列单元的所述第六n型mos管进行数据传输;
29、所述垂直反位线在铅锤方向对同一所述位点阵列模块中不同所述位点阵列单元的第三n型mos管进行数据传输;
30、所述水平正位线在水平方向对同一混洗行中不同所述位点阵列模块中的所述位点阵列单元的所述第五n型mos管进行数据传输;
31、所述水平反位线在水平方向对同一混洗行中不同所述位点阵列模块中的所述位点阵列单元的所述第四n型mos管进行数据传输。
32、作为一种可选的实施方式,所述控制指令包括读取指令、写回指令、复制指令和信号位设置指令中的至少一种;
33、所述读取指令和所述写回指令用于控制产生水平字线对应的激活信号,以使数据在垂直正位线或垂直反位线上传输;
34、所述复制指令和所述信号位设置指令用于控制产生垂直字线对应的激活信号,以使数据在所述水平正位线或所述水平反位线上传输。
35、作为一种可选的实施方式,所述控制指令为32位机器指令;所述控制指令的第三十一位和三十二位表征所述机器指令的操作码,以识别所述控制指令的指令类型;
36、所述读取指令和所述写回指令的第二十位到第三十位表征行地址,以利用所述行解码器解码所述地址信号产生对应的激活信号;所述读取指令和所述写回指令的第十二位到十九位表征列地址,以利用所述列解码器解码所述地址信号产生对应的激活信号;所述读取指令和所述写回指令的第一位到第十一位表征地址寄存器,以产生对应的所述部件控制信号来控制所述逻辑模块;
37、所述复制指令和所述信号位设置指令的第二十位到第三十位和第九位到第十九位均表征列地址,以利用所述列解码器解码所述地址信号产生对应的激活信号;所述复制指令和所述信号位设置指令的第五位到第八位表征使能信号,以产生对应的所述部件控制信号来控制位点阵列单元的混洗操作;所述复制指令的第一位到第四位表征复位信号,以产生对应的所述部件控制信号来控制所述锁存器的复位操作;所述信号位设置指令的第一位到第四位表征启用信号,以产生对应的所述部件控制信号来控制第一锁存器或第二锁存器的启用操作。
38、本发明第二方面公开了一种计算机可读存储介质,所述计算机可读存储介质包括第一方面中任一种所述的支持混洗操作的静态随机存储系统。
39、本发明第三方面公开了一种电子设备,所述电子设备包括第一方面中任一种所述的支持混洗操作的静态随机存储系统。
40、与现有技术相比,本发明具有以下有益效果:
41、本发明实施例公开了一种支持混洗操作的静态随机存储系统,包括k个混洗模块,m个开关组、指令缓冲区、控制器、行解码器、列解码器、n个水平正位线和n个水平反位线;k为不小于2,不大于8的正整数;m为比n小1的正整数;n为不小1的正整数;混洗模块是沿水平方向依次排列分布,用于对数据进行混洗操作;水平正位线和水平反位线,连通混洗模块,用于沿水平方向进行跨位点阵列的数据传输;开关组设置于连接相邻两个混洗模块的水平正位线和水平反位线上,以控制连接混洗模块的水平正位线和水平反位线的通断;指令缓冲区,用于缓冲来自处理器的控制指令,并顺序输入到控制器;控制器用于对控制指令进行信号转化为控制指令信号,将控制指令信号中的地址信号转发至行解码器和列解码,并利用控制指令信号中的部件控制信号控制混洗模块和开关组;行解码器和列解码器,用于解码地址信号,以产生地址信号对应的激活信号。可见,本技术有利于实现高水平的并行混洗数据,从而提高计算效率和降低能耗。
本文地址:https://www.jishuxx.com/zhuanli/20240731/182016.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表