一种多比特全数字存内计算电路、方法及存储器与流程
未命名
09-17
阅读:80
评论:0
1.本发明涉及人工智能技术领域,尤其涉及一种多比特全数字存内计算电路、方法及存储器。
背景技术:
2.在人工智能发展迅猛的今天,神经网络中的数据搬运成为了影响其性能的最主要问题。其中存在的存储墙和功耗墙的问题更是使冯诺依曼结构达到了瓶颈。而存内计算结构则能够很好的解决这一问题,并且开始迅猛发展。
3.但是在存内计算结构中也存在或多或少的问题。在存内计算发展的初期,模拟域的存内计算结构占据了主流地位。但是由于模拟信号固有的特征,收到pvt干扰较大,导致其本身就不能用于高精度的网络中。后期的数字域存内计算则不能达到较高的理论吞吐量。
技术实现要素:
4.本发明的目的在于提供一种多比特全数字存内计算电路、方法及存储器,提高计算精度以及存储模块的吞吐量。
5.为解决上述技术问题,本发明采用如下技术方案:
6.本发明实施例的一方面提供了一种多比特全数字存内计算电路,所述存内计算电路包括移位加法模块、至少两个存储模块以及与所述至少两个存储模块数量一致的至少两个乘法电路,所述至少两个乘法电路连接所述至少两个存储模块和所述移位加法模块,所述至少两个存储模块包括第一存储模块,所述至少两个乘法电路包括第一乘法电路,所述第一乘法电路包括:第一与门,所述第一与门的第一输入端用于接收待计算的二进制数字信号的单个电平信号,所述第一与门的第二输入端与所述第一存储模块的输出端连接;第一开关,所述第一开关的输入端与所述第一与门的输出端连接,所述第一开关的输出端与所述移位加法模块的第一输入端连接,所述移位加法模块的输出端输出乘累加结果,并与所述移位加法模块的第二输入端连接。
7.在一些实施例中,所述第一存储模块包括第一存储电路、第二存储电路和选择器,所述选择器的第一输入端连接所述第一存储电路的输出端,所述选择器的第二输入端连接所述第二存储电路的输出端,所述选择器的输出端连接所述第一与门的第二输入端,所述选择器的控制端接收控制信号,以用于控制选择器选择第一存储电路或第二存储电路的权重数据输出。
8.在一些实施例中,所述第一存储电路和第二存储电路结构相同,所述第一存储电路包括第一存储开关、第二存储开关、第一非门和第二非门,所述第一存储开关的一端连接第一非门的输入端和第二非门的输出端,所述第一非门的输出端连接所述第二非门的输入端、第二存储开关的一端和选择器的第一输入端,所述第一存储开关的另一端连接第一位线,所述第二存储开关的另一端连接第二位线。
9.在一些实施例中,所述移位加法模块包括移位加法器,所述移位加法器的输出端连接有八个第二开关,所述第一开关的输出端与所述移位加法器的第一输入端连接,所述八个第二开关的输出端相互连接,所述移位加法器的输出端通过所述八个第二开关输出乘累加结果,所述移位加法器的输出端通过所述八个第二开关连接所述移位加法器的第二输入端。
10.在一些实施例中,所述第一存储开关和第二存储开关均采用nmos管,所述第一开关和所述第二开关均采用触发器。
11.在一些实施例中,所述至少两个存储模块还包括第二存储模块、第三存储模块和第四存储模块,所述第二存储模块、第三存储模块和第四存储模块的结构与所述第一存储模块的结构一致;所述至少两个乘法电路包括第二乘法电路、第三乘法电路和第四乘法电路,所述第二乘法电路、第三乘法电路和第四乘法电路的结构与所述第一乘法电路的结构一致;所述第二乘法电路连接所述第二存储模块和所述移位加法器的第一输入端,所述第三乘法电路连接所述第三存储模块和所述移位加法器的第一输入端,所述第四乘法电路连接所述第四存储模块和所述移位加法器的第一输入端。
12.在一些实施例中,多个所述第一开关和所述第二开关的控制端均接收同一个时钟信号,以用于通过所述时钟信号控制所述第一开关和所述第二开关的开断。
13.本发明实施例的一方面提供了一种多比特全数字存内计算方法,应用于如上所述的存内计算电路,所述存内计算方法包括:第一乘法电路接收第一二进制数字信号的第一个电平信号以及第一存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第一个输出值;第二乘法电路接收第一二进制数字信号的第二个电平信号以及第二存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第二个输出值;第三乘法电路接收第一二进制数字信号的第三个电平信号以及第三存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第三个输出值;第四乘法电路接收第一二进制数字信号的第四个电平信号以及第四存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第四个输出值;所述移位加法模块的第一输入端接收第一乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块将第一乘结果与初始移位值相加后得到第一乘累加结果;所述移位加法模块将所述第一乘累加结果左移位后得到第一移位值;第一乘法电路接收第二二进制数字信号的第一个电平信号以及第一存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第一个输出值;第二乘法电路接收第二二进制数字信号的第二个电平信号以及第二存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第二个输出值;第三乘法电路接收第二二进制数字信号的第三个电平信号以及第三存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第三个输出值;第四乘法电路接收第二二进制数字信号的第四个电平信号以及第四存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第四个输出值;所述移位加法模块的第一输入端接收第二乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块将第二乘结果与第一移位值相加后得到第二乘累加结果;所述移位加法模块将所述第二乘累加结果左移位后得到第二移位值,所述第二移位值用于计算第三乘累加结果。
14.在一些实施例中,所述存内计算方法还包括:在所述第一存储模块中的第一存储
电路、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做计算时,则所述第一存储模块中的第二存储电路、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做权重数据的存储或更新;在所述第一存储模块中的第二存储电路、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做计算时,则所述第一存储模块中的第一存储电路、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做权重数据的存储或更新。
15.本发明实施例的一方面提供了一种存储器,所述存储器包括如上所述的存内计算电路。
16.根据本发明实施例的一种多比特全数字存内计算电路、方法及存储器,至少具有如下有益效果:本技术相对于模拟域的存内计算、数字域的存内计算结构输出结果都为准确值,因此在大规模和高精度的领域中的使用具有优势;本技术在计算时依然可以完成存储操作,即权重数据的更新不受影响,同时也提高了存储模块的吞吐率。
17.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
18.为了更清楚地说明本技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为根据实施例的存内计算电路原理图;
20.图2为根据实施例的存内计算电路原理简图。
21.附图标记说明如下:1、第一与门;2、第一开关;3、选择器;4、第一存储开关;5、第二存储开关;6、第一非门;7、第二非门;8、移位加法器;9、第二开关;10、第一存储电路;11、第二存储电路;12、第一存储模块;13、第一乘法电路;14、移位加法模块;100、存内计算电路。
具体实施方式
22.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
23.术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
24.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“连通”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,
可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
25.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些示例实施方式使得本公开的描述将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
26.下面对本技术实施例的多比特全数字存内计算电路100进行简单阐述:
27.根据一些实施例,如图1至图2所示,本技术提供了一种多比特全数字存内计算电路,所述存内计算电路100包括移位加法模块14、至少两个存储模块以及与所述至少两个存储模块数量一致的至少两个乘法电路,所述至少两个乘法电路连接所述至少两个存储模块和所述移位加法模块14,所述至少两个存储模块包括第一存储模块12,所述至少两个乘法电路包括第一乘法电路13,所述第一乘法电路13包括:
28.第一与门1,所述第一与门1的第一输入端用于接收待计算的二进制数字信号的单个电平信号,所述第一与门1的第二输入端与所述第一存储模块12的输出端连接;
29.第一开关2,所述第一开关2的输入端与所述第一与门1的输出端连接,所述第一开关2的输出端与所述移位加法模块14的第一输入端连接,所述移位加法模块14的输出端输出乘累加结果,并与所述移位加法模块14的第二输入端连接。
30.基于上述实施例,第一与门1将二进制数字信号的单个电平信号和第一存储模块12中的权重数据进行与操作后得到乘结果输出,第一开关2闭合使得第一与门1与操作后的乘结果输出给移位加法模块14,移位加法模块14将乘结果与初始移位值相加后得到乘累加结果,移位加法模块14将乘累加结果左移位后输出得到第一移位值,第一移位值用于计算第二乘累加结果,依次循环。本技术的多比特全数字存内计算电路100,相较于传统的模拟域的存内计算结构,提高了计算精度,相较于传统的冯诺依曼结构,提高了计算速度。
31.以下结合本说明书的附图1至图2,对本技术的多比特全数字存内计算电路100予以进一步地详尽阐述。
32.根据一些实施例,如图1所示,所述第一存储模块12包括第一存储电路10、第二存储电路11和选择器3。
33.第一存储模块12的连接结构为:所述选择器3的第一输入端连接所述第一存储电路10的输出端,所述选择器3的第二输入端连接所述第二存储电路11的输出端,所述选择器3的输出端连接所述第一与门1的第二输入端,所述选择器3的控制端接收控制信号sel,以用于控制选择器3选择第一存储电路10或第二存储电路11的权重数据输出。
34.其中,第一存储电路10存储1bit权重数据,第二存储电路11存储1bit权重数据,第一存储模块12总共存储2bit权重数据。
35.基于上述实施例的工作原理为,在第一个时段时,第一存储电路10中的权重数据输入第一乘法电路13做计算,第二存储电路11做权重数据的存储或更新;
36.在第二个时段时,第二存储电路11中的权重数据输入第一乘法电路13做计算,第一存储电路10做权重数据的存储或更新;
37.在第三个时段时,第一存储电路10中的权重数据输入第一乘法电路13做计算,第
二存储电路11做权重数据的存储或更新;
38.在第四个时段时,第二存储电路11中的权重数据输入第一乘法电路13做计算,第一存储电路10做权重数据的存储或更新。依次循环,直至将所有输入的二进制数字信号计算完毕后得到最终的乘累加结果。
39.其中,一个时段的时长可以根据实际需求设定,在一些实施例中,一个时段的时长为4秒。
40.选择器3的控制信号sel用于控制选择器3选择第一存储电路10输出权重数据或者选择第二存储电路11输出权重数据。
41.解决的技术问题为:在人工智能发展迅猛的今天,神经网络中的数据搬运成为了影响其性能的最主要问题。其中存在的存储墙和功耗墙的问题更是使冯诺依曼结构达到了瓶颈。而存内计算结构则能够很好的解决这一问题,并且开始迅猛发展。但是在存内计算结构中也存在或多或少的问题。在存内计算发展的初期,模拟域的存内计算结构占据了主流地位。但是由于模拟信号固有的特征,收到pvt干扰较大,导致其本身就不能用于高精度的网络中。后期的数字域存内计算则不能达到较高的理论吞吐量。因此,设计了本技术的多比特全数字存内计算电路100,本技术在计算时依然可以完成存储操作,即在计算时权重数据的存储或更新不受影响,提高了存储模块的吞吐率,而本技术为多比特全数字存内计算电路100,提高了计算精度。
42.根据一些实施例,如图1所示,所述第一存储电路10和第二存储电路11结构相同,所述第一存储电路10包括第一存储开关4、第二存储开关5、第一非门6和第二非门7,所述第一存储开关4的一端连接第一非门6的输入端和第二非门7的输出端,所述第一非门6的输出端连接所述第二非门7的输入端、第二存储开关5的一端和选择器3的第一输入端,所述第一存储开关4的另一端连接第一位线blp,所述第二存储开关5的另一端连接第二位线blbp。
43.根据一些实施例,如图1所示,所述移位加法模块14包括移位加法器8,所述移位加法器8的输出端连接有八个第二开关9,所述第一开关2的输出端与所述移位加法器8的第一输入端连接,所述八个第二开关9的输出端相互连接,所述移位加法器8的输出端通过所述八个第二开关9输出乘累加结果,所述移位加法器8的输出端通过所述八个第二开关9连接所述移位加法器8的第二输入端。
44.其中,移位加法模块14输入4bit乘结果,累加后输出8bit乘累加结果。
45.进一步的,所述第一存储开关4和第二存储开关5均采用nmos管,所述第一开关2和所述第二开关9均采用触发器。
46.根据一些实施例,如图1所示,所述至少两个存储模块还包括第二存储模块、第三存储模块和第四存储模块,所述第二存储模块、第三存储模块和第四存储模块的结构与所述第一存储模块12的结构一致;
47.所述至少两个乘法电路包括第二乘法电路、第三乘法电路和第四乘法电路,所述第二乘法电路、第三乘法电路和第四乘法电路的结构与所述第一乘法电路13的结构一致;
48.所述第二乘法电路连接所述第二存储模块和所述移位加法器8的第一输入端,所述第三乘法电路连接所述第三存储模块和所述移位加法器8的第一输入端,所述第四乘法电路连接所述第四存储模块和所述移位加法器8的第一输入端。
49.基于上述实施例的工作原理为,第一存储模块12、第二存储模块、第三存储模块和
第四存储模块中的每个存储模块结构都相同,每个存储模块均存储2bit权重数据。本技术的多比特全数字存内计算电路100有两种操作模式:存储模式和计算模式,而两种操作模式可以交替运行。在存储模式中,第一存储模块12、第二存储模块、第三存储模块和第四存储模块进行正常的存储操作,所有存储电路的存储操作均相同,如第一存储电路10进行存储操作时,第一存储开关4和第二存储开关5的控制端均连接字线,字线输入高电平,第一存储开关4和第二存储开关5打开,通过控制第一位线blp和第二位线blbp输入电平信号进行存储操作。
50.存储操作完毕后,可进行计算模式,在一些实施例中,在第一秒钟时,第一存储模块12的第一存储电路10中的权重数据输入第一乘法电路13做乘法计算,第一存储模块12的第二存储电路11做权重数据的存储或更新;
51.在第二秒钟时,第二存储模块的第一存储电路中的权重数据输入第二乘法电路做乘法计算,第二存储模块的第二存储电路做权重数据的存储或更新;
52.在第三秒钟时,第三存储模块的第一存储电路中的权重数据输入第三乘法电路做乘法计算,第三存储模块的第二存储电路做权重数据的存储或更新;
53.在第四秒钟时,第四存储模块的第一存储电路中的权重数据输入第四乘法电路做乘法计算,第四存储模块的第二存储电路做权重数据的存储或更新;
54.移位加法模块14的第一输入端接收计算好的第一乘结果,所述移位加法模块14将第一乘结果与初始移位值相加后得到第一乘累加结果,第一乘累加结果以8bit的结果输出,其中,初始移位值为0,所以第一乘累加结果的前四位数字为0000,移位加法模块14将第一乘累加结果左移位后得到第一移位值;
55.在第五秒钟时,第一存储模块12的第二存储电路11中的权重数据输入第一乘法电路13做乘法计算,第一存储模块12的第一存储电路10做权重数据的存储或更新;
56.在第二秒钟时,第二存储模块的第二存储电路中的权重数据输入第二乘法电路做乘法计算,第二存储模块的第一存储电路做权重数据的存储或更新;
57.在第三秒钟时,第三存储模块的第二存储电路中的权重数据输入第三乘法电路做乘法计算,第三存储模块的第一存储电路做权重数据的存储或更新;
58.在第四秒钟时,第四存储模块的第二存储电路中的权重数据输入第四乘法电路做乘法计算,第四存储模块的第一存储电路做权重数据的存储或更新;
59.移位加法模块14的第一输入端接收计算好的第二乘结果,所述移位加法模块14将第二乘结果与第一移位值相加后得到第二乘累加结果,第二乘累加结果以8bit的结果输出,移位加法模块14将第二乘累加结果左移位后得到第二移位值;
60.依次循环计算,每4秒时钟后得到一个8bit的乘累加结果,直至将所有输入的二进制数字信号计算完毕后得到最终的乘累加结果。其中,选择器3的控制信号sel用于控制选择器3选择第一存储电路输出权重数据或者选择第二存储电路输出权重数据。第一乘法电路13、第二乘法电路、第三乘法电路和第四乘法电路分别输入二进制数字信号的第一位电平信号、第二位电平信号、第三位电平信号和第四位电平信号。
61.在上述的第一存储模块12、第二存储模块、第三存储模块和第四存储模块以及第一乘法电路13、第二乘法电路、第三乘法电路和第四乘法电路的计算中,一个时段为4秒。
62.根据一些实施例,多个所述第一开关2和所述第二开关9的控制端均接收同一个时
钟信号clk,以用于通过所述时钟信号clk控制所述第一开关2和所述第二开关9的开断。防止不同的时钟产生时间误差,从而导致计算误差。
63.下面对本技术实施例的多比特全数字存内计算方法进行简单阐述:
64.根据一些实施例,如图1至图2所示,本技术提供了一种多比特全数字存内计算方法,应用于如上所述的存内计算电路100,所述存内计算方法包括:
65.步骤101,第一乘法电路13接收第一二进制数字信号的第一个电平信号以及第一存储模块12中的第一存储电路10输出的权重数据,以计算出第一乘结果的第一个输出值;
66.步骤102,第二乘法电路接收第一二进制数字信号的第二个电平信号以及第二存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第二个输出值;
67.步骤103,第三乘法电路接收第一二进制数字信号的第三个电平信号以及第三存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第三个输出值;
68.步骤104,第四乘法电路接收第一二进制数字信号的第四个电平信号以及第四存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第四个输出值;
69.步骤105,所述移位加法模块14的第一输入端接收第一乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块14将第一乘结果与初始移位值相加后得到第一乘累加结果;
70.步骤106,所述移位加法模块14将所述第一乘累加结果左移位后得到第一移位值;
71.步骤107,第一乘法电路13接收第二二进制数字信号的第一个电平信号以及第一存储模块12中的第二存储电路11输出的权重数据,以计算出第二乘结果的第一个输出值;
72.步骤108,第二乘法电路接收第二二进制数字信号的第二个电平信号以及第二存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第二个输出值;
73.步骤109,第三乘法电路接收第二二进制数字信号的第三个电平信号以及第三存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第三个输出值;
74.步骤110,第四乘法电路接收第二二进制数字信号的第四个电平信号以及第四存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第四个输出值;
75.步骤111,所述移位加法模块14的第一输入端接收第二乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块14将第二乘结果与第一移位值相加后得到第二乘累加结果;
76.步骤112,所述移位加法模块14将所述第二乘累加结果左移位后得到第二移位值,所述第二移位值用于计算第三乘累加结果。
77.步骤112后继续进入步骤101,第一二进制数字信号的第一个电平信号变更为第三二进制数字信号的第一个电平信号,第一存储模块12中的第一存储电路10输出的权重数据已重新更新。依次循环计算下去,直至将所有输入的二进制数字信号计算完毕后得到最终的乘累加结果。其中,初始移位值为0,所以第一乘累加结果的前四位数字为0000。
78.根据一些实施例,所述存内计算方法还包括:
79.在所述第一存储模块12中的第一存储电路10、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做计算时,则所述第一存储模块12中的第二存储电路11、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做权重数据的存储或更新;
80.在所述第一存储模块12中的第二存储电路11、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做计算时,则所述第一存储模块12中的第一存储电路10、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做权重数据的存储或更新。
81.根据一些实施例,本技术提供了一种存储器,所述存储器包括如上所述的存内计算电路100。
82.在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
83.虽然已参照几个典型实施方式描述了本公开,但应当理解,所用的术语是说明和示例性、而非限制性的术语。由于本公开能够以多种形式具体实施而不脱离本技术的精神或实质,所以应当理解,上述实施方式不限于任何前述的细节,而应在随附权利要求所限定的精神和范围内广泛地解释,因此落入权利要求或其等效范围内的全部变化和改型都应为随附权利要求所涵盖。
技术特征:
1.一种多比特全数字存内计算电路,其特征在于,所述存内计算电路包括移位加法模块、至少两个存储模块以及与所述至少两个存储模块数量一致的至少两个乘法电路,所述至少两个乘法电路连接所述至少两个存储模块和所述移位加法模块,所述至少两个存储模块包括第一存储模块,所述至少两个乘法电路包括第一乘法电路,所述第一乘法电路包括:第一与门,所述第一与门的第一输入端用于接收待计算的二进制数字信号的单个电平信号,所述第一与门的第二输入端与所述第一存储模块的输出端连接;第一开关,所述第一开关的输入端与所述第一与门的输出端连接,所述第一开关的输出端与所述移位加法模块的第一输入端连接,所述移位加法模块的输出端输出乘累加结果,并与所述移位加法模块的第二输入端连接。2.根据权利要求1所述的存内计算电路,其特征在于,所述第一存储模块包括第一存储电路、第二存储电路和选择器,所述选择器的第一输入端连接所述第一存储电路的输出端,所述选择器的第二输入端连接所述第二存储电路的输出端,所述选择器的输出端连接所述第一与门的第二输入端,所述选择器的控制端接收控制信号,以用于控制选择器选择第一存储电路或第二存储电路的权重数据输出。3.根据权利要求2所述的存内计算电路,其特征在于,所述第一存储电路和第二存储电路结构相同,所述第一存储电路包括第一存储开关、第二存储开关、第一非门和第二非门,所述第一存储开关的一端连接第一非门的输入端和第二非门的输出端,所述第一非门的输出端连接所述第二非门的输入端、第二存储开关的一端和选择器的第一输入端,所述第一存储开关的另一端连接第一位线,所述第二存储开关的另一端连接第二位线。4.根据权利要求3所述的存内计算电路,其特征在于,所述移位加法模块包括移位加法器,所述移位加法器的输出端连接有八个第二开关,所述第一开关的输出端与所述移位加法器的第一输入端连接,所述八个第二开关的输出端相互连接,所述移位加法器的输出端通过所述八个第二开关输出乘累加结果,所述移位加法器的输出端通过所述八个第二开关连接所述移位加法器的第二输入端。5.根据权利要求4所述的存内计算电路,其特征在于,所述第一存储开关和第二存储开关均采用nmos管,所述第一开关和所述第二开关均采用触发器。6.根据权利要求4所述的存内计算电路,其特征在于,所述至少两个存储模块还包括第二存储模块、第三存储模块和第四存储模块,所述第二存储模块、第三存储模块和第四存储模块的结构与所述第一存储模块的结构一致;所述至少两个乘法电路包括第二乘法电路、第三乘法电路和第四乘法电路,所述第二乘法电路、第三乘法电路和第四乘法电路的结构与所述第一乘法电路的结构一致;所述第二乘法电路连接所述第二存储模块和所述移位加法器的第一输入端,所述第三乘法电路连接所述第三存储模块和所述移位加法器的第一输入端,所述第四乘法电路连接所述第四存储模块和所述移位加法器的第一输入端。7.根据权利要求6所述的存内计算电路,其特征在于,多个所述第一开关和所述第二开关的控制端均接收同一个时钟信号,以用于通过所述时钟信号控制所述第一开关和所述第二开关的开断。8.一种多比特全数字存内计算方法,应用于权利要求7所述的存内计算电路,其特征在于,所述存内计算方法包括:
第一乘法电路接收第一二进制数字信号的第一个电平信号以及第一存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第一个输出值;第二乘法电路接收第一二进制数字信号的第二个电平信号以及第二存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第二个输出值;第三乘法电路接收第一二进制数字信号的第三个电平信号以及第三存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第三个输出值;第四乘法电路接收第一二进制数字信号的第四个电平信号以及第四存储模块中的第一存储电路输出的权重数据,以计算出第一乘结果的第四个输出值;所述移位加法模块的第一输入端接收第一乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块将第一乘结果与初始移位值相加后得到第一乘累加结果;所述移位加法模块将所述第一乘累加结果左移位后得到第一移位值;第一乘法电路接收第二二进制数字信号的第一个电平信号以及第一存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第一个输出值;第二乘法电路接收第二二进制数字信号的第二个电平信号以及第二存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第二个输出值;第三乘法电路接收第二二进制数字信号的第三个电平信号以及第三存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第三个输出值;第四乘法电路接收第二二进制数字信号的第四个电平信号以及第四存储模块中的第二存储电路输出的权重数据,以计算出第二乘结果的第四个输出值;所述移位加法模块的第一输入端接收第二乘结果的第一个输出值、第二个输出值、第三个输出值和第四个输出值,所述移位加法模块将第二乘结果与第一移位值相加后得到第二乘累加结果;所述移位加法模块将所述第二乘累加结果左移位后得到第二移位值,所述第二移位值用于计算第三乘累加结果。9.根据权利要求8所述的存内计算方法,其特征在于,所述存内计算方法还包括:在所述第一存储模块中的第一存储电路、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做计算时,则所述第一存储模块中的第二存储电路、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做权重数据的存储或更新;在所述第一存储模块中的第二存储电路、第二存储模块中的第二存储电路、第三存储模块中的第二存储电路和第四存储模块中的第二存储电路做计算时,则所述第一存储模块中的第一存储电路、第二存储模块中的第一存储电路、第三存储模块中的第一存储电路和第四存储模块中的第一存储电路做权重数据的存储或更新。10.一种存储器,其特征在于,所述存储器包括权利要求1至7任一项所述的存内计算电路。
技术总结
本发明公开了一种多比特全数字存内计算电路、方法及存储器,涉及人工智能技术领域,存内计算电路包括移位加法模块、至少两个存储模块以及至少两个乘法电路,至少两个存储模块包括第一存储模块,至少两个乘法电路包括第一乘法电路,第一乘法电路包括:第一与门,第一与门的第一输入端用于接收待计算的二进制数字信号的单个电平信号,第一与门的第二输入端与第一存储模块的输出端连接;第一开关,第一开关的输入端与第一与门的输出端连接,第一开关的输出端与移位加法模块的第一输入端连接,移位加法模块的输出端输出乘累加结果。本申请相较于传统的模拟域的存内计算结构和冯诺依曼结构,提高了计算精度和计算速度。提高了计算精度和计算速度。提高了计算精度和计算速度。
技术研发人员:乔树山 曹景楠 游恒 尚德龙 周玉梅
受保护的技术使用者:中科南京智能技术研究院
技术研发日:2023.04.20
技术公布日:2023/9/14
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
