本发明涉及计算机,尤其涉及一种线性反馈移位寄存器、资源分配方法、电子设备及存储介质。
背景技术:
1、线性反馈移位寄存器(lfsr,linear feedback shift registers)具有可重构特性,现有的可重构计算装置在支持序列算法时,可以将算法需要使用的移位数据链存放在lfsr内部,其中,移位数据链长度、宽度、反馈输入位置及抽头位置等均设置为可重构配置以适应不同的算法的需求。
2、但是现有技术中,一个lfsr仅能单独对应负责一个算核的算法实现,当无需实现该算法,也即该算核不进行工作时将会导致该lfsr得不到有效利用,同时,不同的算法对于lfsr使用不一样,甚至有些算法不需要使用lfsr,因此现有lfsr利用率较低。
技术实现思路
1、本发明的主要目的在于提供一种线性反馈移位寄存器、资源分配方法电子设备及存储介质,旨在解决现有lfsr利用率较低的技术问题。
2、为实现上述目的,本发明实施例第一方面提供一种线性反馈移位寄存器,与多个算核相连,至少一所述算核用于实现一待处理算法,包括:
3、可重构配置模块,用于接收所述待处理算法需要使用的移位数据链的配置信息,并基于所述配置信息生成配置指令,将所述配置指令发送给移位寄存器阵列;
4、所述移位寄存器阵列,包括多个移位寄存器,所述移位寄存器阵列用于按照所述配置指令,在所述多个移位寄存器中存放所述移位数据链;
5、其中,所述移位数据链的配置信息包括所述移位数据链的数目信息、每条所述移位数据链的长度信息和每条所述移位数据链的宽度信息。
6、在本发明一实施例中,所述可重构配置模块,还用于获取当前所述移位寄存器阵列中所有移位寄存器的使用状态,从所述使用状态为当前没有使用的移位寄存器中确定符合所述移位数据链的配置信息的至少一个目标移位寄存器;
7、所述线性反馈移位寄存器还包括互联模块,所述互联模块用于打开所述至少一个目标移位寄存器之间的数据通路。
8、在本发明一实施例中,所述线性反馈移位寄存器还包括:
9、数据缓存模块,用于在实现一所述待处理算法的移位过程中,对生成的反馈数据进行缓存,并在对所有所述反馈数据缓存完成的情况下,将所述反馈数据发送给所述移位寄存器阵列。
10、在本发明一实施例中,所述移位寄存器阵列满足以下至少一项:
11、所述多个移位寄存器的移位宽度可以相同或者不同;
12、同一条所述移位数据链使用的所有所述移位寄存器的移位宽度均相同;
13、所述移位寄存器包括多个寄存器,所述多个寄存器的移位宽度均相同。
14、在本发明一实施例中,存放同一条移位数据链的所有移位寄存器之间的数据通路为打开状态,存放不同移位数据链的移位寄存器之间的数据通路为关闭状态。
15、在本发明一实施例中,所述互联模块,还用于将所述待处理算法对应的算核与所述目标移位寄存器进行数据连接。
16、本发明实施例第二方面提供一种基于第一方面所述的线性反馈移位寄存器的资源分配方法,所述方法包括:
17、根据待处理算法确定需要使用的移位数据链的配置信息,所述移位数据链的配置信息包括所述移位数据链的数目信息、每条所述移位数据链的长度信息和每条所述移位数据链的宽度信息;
18、获取所述线性反馈移位寄存器中所有移位寄存器的使用状态,所述使用状态包括当前正在使用和当前没有使用;
19、从所述使用状态为当前没有使用的移位寄存器中确定符合所述移位数据链的配置信息的至少一个目标移位寄存器,所述目标移位寄存器用于执行所述待处理算法。
20、在本发明一实施例中,所述方法还包括:
21、在执行所述待处理算法的过程中,若所述目标移位寄存器的数量为多个,则保持所有所述至少一个目标移位寄存器之间的数据通路打开;
22、在所述待处理算法执行完成的情况下,断开所述至少一个目标移位寄存器之间的所有的数据通路。
23、本发明实施例第三方面提供了一种电子设备,包括:
24、一个或多个处理器;
25、存储装置,用于存储一个或多个程序,
26、其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据本发明实施例第二方面提供的资源分配方法。
27、本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行本发明实施例第二方面提供的资源分配方法。
28、从上述本发明实施例可知,本发明提供的线性反馈移位寄存器,与多个算核相连,至少一该算核用于实现一待处理算法,该线性反馈移位寄存器包括:可重构配置模块,用于接收该待处理算法需要使用的移位数据链的配置信息,并基于该配置信息生成配置指令,将该配置指令发送给移位寄存器阵列,该移位寄存器阵列,包括多个移位寄存器,该移位寄存器阵列用于按照该配置指令,在该多个移位寄存器中存放该移位数据链,其中,该移位数据链的配置信息包括该移位数据链的数目信息、每条该移位数据链的长度信息和每条该移位数据链的宽度信息。在线性反馈移位寄存器需要处理多种算法的情况下,通过可重构配置模块,将算法需要使用的移位数据链存放于移位寄存器阵列,仅使用一个资源可分配的线性反馈移位寄存器即可支持多种算法,提高资源利用率。
1.一种线性反馈移位寄存器,其特征在于,与多个算核相连,至少一所述算核用于实现一待处理算法,包括:
2.根据权利要求1所述的线性反馈移位寄存器,其特征在于,所述可重构配置模块,还用于获取当前所述移位寄存器阵列中所有移位寄存器的使用状态,从所述使用状态为当前没有使用的移位寄存器中确定符合所述移位数据链的配置信息的至少一个目标移位寄存器;
3.根据权利要求1所述的线性反馈移位寄存器,其特征在于,所述线性反馈移位寄存器还包括:
4.根据权利要求1所述的线性反馈移位寄存器,其特征在于,所述移位寄存器阵列满足以下至少一项:
5.根据权利要求1所述的线性反馈移位寄存器,其特征在于,存放同一条移位数据链的所有移位寄存器之间的数据通路为打开状态,存放不同移位数据链的移位寄存器之间的数据通路为关闭状态。
6.根据权利要求2所述的线性反馈移位寄存器,其特征在于,所述互联模块,还用于将所述待处理算法对应的算核与所述目标移位寄存器进行数据连接。
7.一种基于权利要求1至6任一项所述的线性反馈移位寄存器的资源分配方法,其特征在于,所述方法包括:
8.根据权利要求7所述的资源分配方法,其特征在于,所述方法还包括:
9.一种电子设备,包括:
10.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求7或8所述的方法。