CN112365912A - 一种存储器、神经形态芯片及数据处理方法 - Google Patents
一种存储器、神经形态芯片及数据处理方法 Download PDFInfo
- Publication number
- CN112365912A CN112365912A CN202011212421.2A CN202011212421A CN112365912A CN 112365912 A CN112365912 A CN 112365912A CN 202011212421 A CN202011212421 A CN 202011212421A CN 112365912 A CN112365912 A CN 112365912A
- Authority
- CN
- China
- Prior art keywords
- data
- circuit
- storage
- module
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 title claims abstract description 270
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 210000002569 neuron Anatomy 0.000 claims abstract description 77
- 230000036316 preload Effects 0.000 claims abstract description 51
- 210000004027 cell Anatomy 0.000 claims description 61
- 238000000034 method Methods 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 10
- 238000013500 data storage Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000012528 membrane Substances 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/402—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration individual to each memory cell, i.e. internal refresh
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Neurology (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Read Only Memory (AREA)
Abstract
本发明实施例公开了一种存储器、神经形态芯片及数据处理方法。该存储器包括:非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路;其中,所述预载电路用于读取所述非易失性存储模块中的存储数据进行预载,所述易失性存储模块用于读取所述预载电路中预载的存储数据并传送给神经元计算核心。上述存储器,解决了非易失性存储模块与神经元计算核心的读写速率不匹配的问题。
Description
技术领域
本发明实施例涉及芯片技术领域,尤其涉及一种存储器、神经形态芯片及数据处理方法。
背景技术
非易失性存储器(Non-Volatile memory,缩写为NVM),指的是指当电流关掉后,所存储的数据不会消失的存储器。通常,非易失性存储器的读写速率是比较慢的,但神经形态芯片中的神经元计算核心的读写速率是比较快的。因此,将非易失性存储器应用于神经形态芯片中会存在读写速度不匹配的现象,进而影响神经元计算核心的处理效率,导致神经形态芯片出现功耗增加等问题。
发明内容
本发明实施例提供一种存储器、神经形态芯片及数据处理方法,以解决非易失性存储器与神经元计算核心的读写速率不匹配的问题。
第一方面,本发明实施例还提供了一种存储器,包括:非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路;
其中,所述预载电路用于读取所述非易失性存储模块中的存储数据进行预载,所述易失性存储模块用于读取所述预载电路中预载的存储数据并传送给神经元计算核心。
进一步的,还包括接收模块,
所述接收模块,用于接收数据读取指令,所述数据读取指令包括待预载的目标存储数据的信息;
所述易失性存储模块,用于根据所述数据读取指令,读取所述预载电路中已预载的存储数据并传送给神经元计算核心;
所述预载电路,用于根据所述目标存储数据的信息,读取所述非易失性存储模块中的目标存储数据进行预载。
进一步的,所述非易失性存储模块中包括:相连的非易失性存储单元和刷新电路;
其中,所述刷新电路用于读取所述非易失性存储单元中的存储数据,并将所述存储数据写回所述非易失性存储单元。
进一步的,所述非易失性存储模块中包括:控制单元;
所述控制单元与所述刷新电路相连,用于控制所述刷新电路的工作状态;
其中,所述工作状态至少包括刷新频率。
进一步的,所述刷新电路的刷新频率为分钟级别或者小时级别。
进一步的,所述控制单元还用于控制所述刷新电路读取所述非易失性存储单元中目标存储区域中的存储数据,并将所述存储数据写回所述非易失性存储单元中所述目标存储区域。
进一步的,所述非易失性存储模块中还包括:仲裁器,连接于所述非易失性存储单元和所述刷新电路之间,以及连接于所述非易失性存储单元和所述预载电路之间;
所述仲裁器用于在所述非易失性存储单元中的存储数据被读取之后,判断所述存储数据是需要通过所述刷新电路写回所述非易失性存储单元,还是需要写入所述预载电路进行预载。
进一步的,所述非易失性存储单元包括:磁存储器,所述易失性存储模块包括:静态随机存取存储器。
第二方面,本发明实施例还提供了一种神经形态芯片,包括:至少一个本发明任意实施例所述的存储器。
第三方面,本发明实施例还提供了一种数据处理方法,应用于本发明任意实施例所述的存储器中,包括:
通过预载电路读取所述非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取;
通过所述易失性存储模块读取所述预载电路中预载的存储数据并传送给神经元计算核心。
进一步的,所述数据处理方法还包括:
接收数据读取指令,所述数据读取指令包括待预载的目标存储数据的信息;
通过所述易失性存储模块读取所述预载电路中预载的存储数据并传送给神经元计算核心,包括:
通过所述易失性存储模块根据所述数据读取指令,读取所述预载电路中已预载的存储数据并传送给神经元计算核心;
通过预载电路读取所述非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取,包括:
通过预载电路根据所述待预载的目标存储数据的信息,读取所述非易失性存储模块中的目标存储数据进行预载。
进一步的,所述数据处理方法还包括:
通过刷新电路读取非易失性存储单元中的存储数据,并将所述存储数据写回所述非易失性存储单元。
进一步的,所述数据处理方法还包括:
通过仲裁器在所述非易失性存储单元中的存储数据被读取之后,判断所述存储数据是需要通过所述刷新电路写回所述非易失性存储单元,还是需要写入所述预载电路进行预载。
本发明实施例提供的存储器,包括非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路,预载电路读取非易失性存储模块中的存储数据进行预载,易失性存储模块读取预载电路中预载的存储数据并传送给神经元计算核心,以此解决了非易失性存储模块与神经元计算核心的读写速率不匹配的问题,减少对神经元计算核心的处理效率产生影响、导致芯片功耗增加等问题。
附图说明
图1是本发明实施例一中的一种存储器的结构示意图;
图2是本发明实施例一中的一种非易失性存储模块的结构示意图;
图3是本发明实施例一中的一种非易失性存储单元的结构示意图;
图4是本发明实施例一中的一种存储器的结构示意图;
图5是本发明实施例二中的一种神经形态芯片的结构示意图;
图6是本发明实施例二中的一种神经形态芯片的结构示意图;
图7是本发明实施例二中的一种神经形态芯片的结构示意图;
图8是本发明实施例二中的一种神经形态芯片的结构示意图;
图9是本发明实施例三中的一种数据处理方法的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种存储器的结构示意图,可适用于神经形态芯片中。如图1所示,本实施例提供的存储器10,非易失性存储模块100、易失性存储模块200,以及连接于非易失性存储模块100与易失性存储模块200之间的预载电路300;
其中,预载电路300用于读取非易失性存储模块100中的存储数据进行预载,易失性存储模块200用于读取预载电路300中预载的存储数据并传送给神经元计算核心400。
非易失性存储模块100,是由非易失性存储阵列组成的,其接口的读写速率通常比较低,而神经元计算核心400的数据读写速率通常比较高,将非易失性存储模块100应用于神经形态芯片中,与神经元计算核心400直接对接时,无法为神经元计算核心400及时传送数据。故在非易失性存储模块100与神经元计算核心400之间连接预载电路300和易失性存储模块200。
易失性存储模块200,是由易失性存储阵列组成的,其接口的读写速率通常比较高,能够与神经元计算核心400的数据读写速率相匹配,进而为神经元计算核心400及时传送数据。
预载电路300在读取非易失性存储模块100中的存储数据后首先存储起来,等待易失性存储模块200来读取,易失性存储模块200在预载电路300中读取提前预载好的数据再传送给神经元计算核心400。
本发明实施例提供的存储器,通过预载电路读取非易失性存储模块中的存储数据进行预载,易失性存储模块读取预载电路中预载的存储数据传送给神经元计算核心的技术手段,解决了非易失性存储模块与神经元计算核心的读写速率不匹配的问题,减少对神经元计算核心的处理效率产生影响、导致芯片功耗增加等问题。
在一种可选的实施方式中,存储器还包括接收模块,
所述接收模块,用于接收数据读取指令,所述数据读取指令包括待预载的目标存储数据的信息;
所述易失性存储模块,用于根据所述数据读取指令,读取所述预载电路中已预载的存储数据并传送给神经元计算核心;
所述预载电路,用于根据所述目标存储数据的信息,读取所述非易失性存储模块中的目标存储数据进行预载。
举例来说,存储器接收来自神经元计算核心的数据读取指令之后,易失性存储模块根据该数据读取指令读取预载电路中已预载的数据传送给神经元计算核心,预载电路根据该数据读取指令中的待预载的目标存储数据的信息,读取非易失性存储模块中的目标存储数据进行预载。其中,易失性存储模块在预载电路中读取的已预载的数据是预载电路在前一时刻预载的数据。
神经元计算核心发送的数据读取指令既指示易失性存储模块在预载电路中读取数据并传送给神经元计算核心,又指示预载电路读取非易失性存储模块中的存储数据进行预载。可选的,神经元计算核心发送的数据读取指令中包括用于指示易失性存储模块在预载电路中读取数据的第一寻址地址,以及用于指示预载电路读取非易失性存储模块中的存储数据进行预载的第二寻址地址。
需要指出的是,预载电路首次读取非易失性存储模块中的存储数据进行预载的操作可以由芯片上电触发执行的,本实施例对此不作具体限定,预载电路只要在易失性存储模块读取前预载好即可。
可选的,如图2所示,非易失性存储模块100中包括:相连的非易失性存储单元101和刷新电路102;
其中,刷新电路102用于读取非易失性存储单元101中的存储数据,并将存储数据写回非易失性存储单元101。
非易失性存储单元101,可以包括但不限于FLASH闪存、相变存储器、铁电存储器FRAM、阻变存储器RRAM、磁存储器MRAM、自旋存储器STT-RAM及光存储器中的一种或多种。
在一种可选的实施方式中,非易失性存储单元101为磁存储器MRAM,易失性存储模块200为静态随机存取存储器SRAM。
在神经网络计算场景中,非易失性存储单元101中可以存储神经元计算核心的性对稳定数据,例如可以存储神经元计算核心的连接权重、网络连接方式、神经元激活函数和初始化信息等中的一种或多种。
刷新电路102,用于对非易失性存储单元101中的存储数据进行刷新,定时读取非易失性存储单元101中的存储数据,并将读取的存储数据写回非易失性存储单元101中,以延长非易失性存储单元101存储所述存储数据的存储时长。
可选的,刷新电路102的刷新频率为分钟级别或者小时级别,也即每几分钟或每几小时将非易失性存储单元101中存储数据的刷新一次。
以非易失性存储单元101为MRAM为例,MARM的数据存储时长与其材料和面积有关。假设,MRAM的数据存储时长为10分钟,那么可以将刷新电路102的刷新频率设置为每10分钟一次,刷新电路102每10分钟执行一次如下操作:将非易失性存储单元101中的存储数据读取出来,并将读取的存储数据写回非易失性存储单元101中。
可选的,刷新电路102的刷新频率也可以设置为秒级别或者天级别,具体可视非易失性存储单元101的数据存储时长而定,本实施例对此不作具体限定。
相比较于刷新频率为毫秒级别的DRAM(Dynamic Random Access Memory,动态随机存取存储器),本实施例提供的存储器由于数据刷新而消耗的功率会更低。
本发明实施例提供的存储器中的非易失性存储模块包括相连的非易失性存储单元和刷新电路,刷新电路读取非易失性存储单元中的存储数据之后并将所述存储数据写回非易失性存储单元中,在非易失性存储单元面积固定的情况下,有效增加了非易失性存储单元中存储数据的存储时长,达到了灵活调整数据存储时长的技术效果。
在实际应用中,当非易失性存储单元的面积固定时,非易失性存储单元的存储时长也是固定的,例如是几分钟或者几小时。通过刷新电路对非易失性存储单元中数据进行刷新,灵活调整了非易失性存储单元中存储数据的存储时长,进而能够以较小的存储面积实现较长的存储效果,提升了存储器“非易失”的效果。同时,鉴于非易失性存储单元的存储数据是通过刷新电路进行刷新的,并非一成不变地长期存储,在一定程度上来讲也是“易失”的,也即本实施例提供的存储器可以基于“非易失性单元”和刷新电路来实现“易失性”的效果。
在一种可选的实施方式中,如图2所示,非易失性存储模块100中还包括:控制单元103,控制单元103与刷新电路102相连,用于控制刷新电路102的工作状态;其中,所述工作状态至少包括刷新频率。
在本实施方式中,可以通过控制单元103对刷新电路102的刷新频率进行控制。可选的,控制单元103以软件和/或硬件的形式实现。
当控制刷新电路102的刷新频率为零时,刷新电路102停止工作,也即不会对非易失性存储单元101中的存储数据进行更新。当控制刷新电路102的刷新频率非零时,刷新电路102开始工作,按照刷新频率对非易失性存储单元101中的存储数据进行更新。
在一种特殊的应用场景中,举例来讲,存储器所在芯片用于处理简单神经网络时,权重数据量较小或者权重更新比较频繁时,可以通过控制单元103将刷新电路102的刷新频率设置为零,刷新电路停止工作。当权重需要更新时,通过芯片中的读电路在芯片外DDRSDRAM(Double Data Rate Synchronous Dynamic Random Access Memory,双倍数据率同步动态随机存取存储器)中读取更新后的权重并写入非易失性存储单元101即可。
在一种可选的实施方式中,如图2所示,非易失性存储模块100中还包括:计时器104,计时器104分别与控制单元103、刷新电路102相连;相应的,控制单元103,还用于控制计时器104的计时周期,以触发刷新电路102以与计时周期匹配的刷新频率读取非易失性存储单元101中的存储数据,并将所述存储数据写回非易失性存储单元101。
控制单元103可以调整计时器104的计时周期,以实现对刷新电路102的刷新频率的调整。例如,当控制单元103将计时器104的计时周期设置为2分钟时,则刷新电路102的刷新频率为每2分钟刷新一下。
可选的,计时器104每次计时到设置的计时周期时,向刷新电路102发送刷新触发信号,刷新电路102接收到该刷新触发信号之后,执行对非易失性存储单元101中的存储数据进行更新的操作。
在一种可选的实施方式中,控制单元103还用于控制刷新电路102读取非易失性存储单元101中目标存储区域中的存储数据,并将所述存储数据写回非易失性存储单元101中所述目标存储区域。
控制单元103发送给刷新电路102的控制指令中可以包括目标寻址地址,以使刷新电路102根据目标寻址地址读取非易失性存储单元101中的存储数据,也即读取非易失性存储单元101中与目标寻址地址对应的存储区域中的存储数据,并读取到的存储数据写回非易失性存储单元101中对应的存储区域中。其中,控制单元103发送给刷新电路102的控制指令中的目标寻址地址可以动态设置。
在上述实施方式中,根据控制单元的控制,刷新电路可以选取非易失性存储单元中的部分存储数据进行更新,以提升这部分存储数据的存储时长,对于不需要长时存储的数据则不进行更新处理,灵活性较高,也在一定程度上降低了刷新功耗。
在一种可选的实施方式中,如图3所示,非易失性存储单元101包括非易失性存储器阵列1011和预设类型控制器1012;其中,预设类型控制器1012用于提供预设协议类型的接口。
进一步的,所述预设协议类型至少包括下述之一:静态随机存取存储器(StaticRandom-Access Memory,SRAM)接口协议和增强动态随机存取存储器(EDRAM,enhanceddynamic random access memory)接口协议。
在本实施方式中,非易失性存储单元101的对外接口是通过其包括预设类型控制器1012实现的,用于实现与芯片内其他器件的对接。
例如,非易失性存储单元101中包括的预设类型控制器1012为类SRAM控制器,由类SRAM控制器提供非易失性存储单元101的对外接口,也即非易失性存储单元101的对外接口为SRAM接口。
又例如,非易失性存储单元101中包括的预设类型控制器1012为类EDRAM控制器,由类EDRAM控制器提供非易失性存储单元101的对外接口,也即非易失性存储单元101的对外接口为EDRAM接口。
鉴于预设类型控制器1012提供的接口通常为通用型接口,进而非易失性存储单元101的对外接口的协议为通用的接口协议,如SRAM接口协议或EDRAM接口协议等,因此,开发人员在进行芯片开发时无需对非易失性存储单元101的接口进行特殊处理,以此降低了开发人员在芯片进行功能性开发时的工作复杂度。
进一步的,在一种可选的实施方式中,如图4所示,非易失性存储模块100中还包括:仲裁器105,连接于非易失性存储单元101和刷新电路102之间,以及连接于非易失性存储单元101和预载电路300之间;
仲裁器105用于在非易失性存储单元101中的存储数据被读取之后,判断所述存储数据是需要通过刷新电路102写回非易失性存储单元101,还是需要写入预载电路300进行预载。
在本实施方式中,非易失性存储模块100中的刷新电路102和预载电路300可以共用同一个读(read)电路,并通过这个读电路读取非易失性存储单元101中的存储数据。当通过该读电路在非易失性存储单元101中读取数据之后,仲裁器105可以判定读出的数据是应当被写回非易失性存储单元101中实现对非易失性存储单元101的数据刷新,还是应当被写入预载电路300进行预载。
示例性的,仲裁器105可以根据读电路的寻址地址判断读出的数据是应当被写回非易失性存储单元101中实现对非易失性存储单元101的数据刷新,还是应当被写入预载电路300进行预载。例如,若读电路的寻址地址与神经元计算核心发送的数据读取指令中用于指示预载电路读取非易失性存储模块中的存储数据进行预载的第二寻址地址相同,则确定读出的数据应当被写入预载电路进行预载。
示例性的,仲裁器105还可以根据读电路接收的控制指令判断读出的数据是应当被写回非易失性存储单元101中实现对非易失性存储单元101的数据刷新,还是应当被写入预载电路300进行预载。例如,若读电路接收的控制指令是由刷新电路触发的,则确定读出的数据应当被写回非易失性存储单元中。
在上述实施方式中,设置仲裁器对在非易失性存储单元中读取的存储数据的数据流向进行判断,协助刷新电路对非易失性存储单元中的存储数据进行刷新,以及协助预载电路对非易失性存储单元中的存储数据进行预载,以确保数据流的准确性。
实施例二
图5是本发明实施例二中的一种神经形态芯片的结构示意图,适用于神经网络计算的情况。如图5所示,本实施例提供的神经形态芯片1,包括:至少一个本发明任意实施例所述的存储器10(图中以一个存储器10示出)。
需要注意的是,图5所示的神经形态芯片仅是示例性地示出神经形态芯片包括存储器10和神经元计算核心400,并非是对神经形态芯片的结构进行具体限定。
可选的,一个神经形态芯片1中可以包括一个或多个存储器10。当一个神经形态芯片1中只包括一个存储器10时,该存储器10中的存储数据可以被多个神经元计算核心共同使用;当一个神经形态芯片1中只包括多个存储器10时,每个存储器10中的存储数据可以被一个神经元计算核心单独使用,也可以被多个神经元计算核心共同使用。
在一种可选的实施方式中,如图6所示,当神经形态芯片1中包括的存储器10的数量为一个时,存储器10以总线连接形式与神经形态芯片1中的每个神经元计算核心400连接。
在上述实施方式中,存储器10的数量只有一个,故其存储数据是芯片全局性的,供神经形态芯片1中的所有神经元计算核心400(神经元众核)共用。进而,针对各神经元计算核心都需要使用的数据无需多次重复存储,以此减小了神经形态芯片中的数据存储面积,也减小了神经形态芯片的尺寸。
进一步的,如图6所示,神经形态芯片1中还包括易失性存储器500,也可以以总线连接形式与神经形态芯片1中的每个神经元计算核心400连接。其中,易失性存储器500和存储器10用于存储述神经元计算核心不同运算阶段的数据。
可选的,存储器10用于存储神经元计算核心的相对稳定数据,易失性存储器500用于存储神经元计算核心的相对动态数据。其中,相对稳定数据可以定义为需要重复使用的数据,例如连接权重、网络连接方式、神经元激活函数和初始化信息中的一种或多种;相对动态数据可以定义为不需要重复使用的数据,例如外部数据源(上位机或者外部只读存储器)输入的数据或网络计算的中间值等。
在一种可选的实施方式中,如图7所示,当神经形态芯片1中包括的存储器10的数量为多个时,存储器10与神经形态芯片1中的多个神经元计算核心400呈分布式对应连接。可以理解的是,神经元计算核心400中包括用于数据处理的计算单元401。
对于计算量较大的神经元计算核心,也可以将数据对应存储在一个或者多个分布式的存储器10中。相应的,使每个神经元计算核心对应连接一个或者有限的多个分布式的存储器10。
在一种可选的实施方式中,如图8所示的神经形态芯片,一个存储器10嵌入式地分布在一个或者指定的多个神经元计算核心400区域。其中,在如图8中,示例性地分别示出了一个存储器10嵌入式地分布在一个、两个、三个以及四个指定的多个神经元计算核心400区域的情形。
其中,每个存储器10和与之连接的神经元计算核心间具有独立的数据通道。
本实施方式中,将存储器10分布式地引入到神经形态芯片中,作为内部神经元计算核心的功能单元,使每个神经元计算核心与对应的存储器10具有独立的数据通道,以此解决了在线学习时频繁更新权重带来的数据通信瓶颈问题。
进一步的,如图8所示,所述芯片构架还包括分别与每个所述神经元计算核心对应的易失性存储器500,其中,易失性存储器500和存储器10用于存储神经元计算核心不同运算阶段的数据。
可选的,易失性存储器500用于存储神经元计算核心的计算缓存和当前神经元状态中的一种或多种。为了进行合理地数据分配,对于内部的易失性存储器500,神经元计算核心会存储其计算缓存、当前神经元状态(膜电位)等运行时产生的中间变量,其特点是数据量大、数据频繁变化但不需要长时间保存。
上述神经形态芯片中,包括一个或多个本发明任意实施例所提供的包括非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路的存储器,具备与该存储器相应的有效效果。未在本实施例中详尽描述的技术细节,可参见前述实施例。
实施例三
图9是本发明实施例三中的一种数据处理方法的流程图,适用于神经元计算核心在存储器中读取数据以进行相应数据处理的情况。
如图9所示,本实施提供的数据处理方法,应用于本发明任意实施例所述的包括非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路的存储器中,包括:
S310、通过预载电路读取非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取。
S320、通过易失性存储模块读取预载电路中预载的存储数据并传送给神经元计算核心。
预载电路在读取非易失性存储模块中的存储数据后首先存储起来,等待易失性存储模块来读取,易失性存储模块在预载电路中读取提前预载好的数据再传送给神经元计算核心。
上述技术方案解决了非易失性存储模块与神经元计算核心的读写速率不匹配的问题,避免对神经元计算核心的处理效率产生影响、导致芯片功耗增加等问题。
作为一种可选的实施方式,上述数据处理方法还包括:接收数据读取指令;相应的,通过所述易失性存储模块读取所述预载电路中预载的存储数据并传送给神经元计算核心,可以具体为:通过所述易失性存储模块根据所述数据读取指令,读取所述预载电路中预载的存储数据并传送给神经元计算核心;通过预载电路读取所述非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取,可以具体为:通过预载电路根据所述数据读取指令,读取所述非易失性存储模块中的存储数据进行预载。
存储器接收来自神经元计算核心的数据读取指令之后,易失性存储模块根据该数据读取指令读取预载电路中预载的数据传送给神经元计算核心,同时,预载电路根据该数据读取指令读取非易失性存储模块中的存储数据进行预载。其中,易失性存储模块在预载电路中读取的数据是预载电路在前一时刻预载的数据。
神经元计算核心发送的数据读取指令既指示易失性存储模块在预载电路中读取数据并传送给神经元计算核心,又指示预载电路读取非易失性存储模块中的存储数据进行预载。可选的,神经元计算核心发送的数据读取指令中包括用于指示易失性存储模块在预载电路中读取数据的第一寻址地址,以及用于指示预载电路读取非易失性存储模块中的存储数据进行预载的第二寻址地址。
需要指出的是,预载电路首次读取非易失性存储模块中的存储数据进行预载的操作可以由芯片上电触发执行的,本实施例对此不作具体限定,预载电路只要在易失性存储模块读取前预载好即可。
进一步的,上述数据处理方法还包括:通过刷新电路读取非易失性存储单元中的存储数据,并将所述存储数据写回所述非易失性存储单元。
刷新电路定时读取非易失性存储单元中的存储数据,并将读取的存储数据写回非易失性存储单元中,以延长非易失性存储单元存储所述存储数据的存储时长。
可选的,刷新电路的刷新频率为分钟级别或者小时级别,也即每几分钟或每几小时将非易失性存储单元中存储数据的刷新一次。相比较于刷新频率为毫秒级别的DRAM,本实施例提供的存储器由于数据刷新而消耗的功率会更低。
进一步的,上述数据处理方法还包括:通过仲裁器在所述非易失性存储单元中的存储数据被读取之后,判断所述存储数据是需要通过所述刷新电路写回所述非易失性存储单元,还是需要写入所述预载电路进行预载。
在本实施方式中,非易失性存储模块中的刷新电路和预载电路可以共用同一个读电路,并通过这个读电路读取非易失性存储单元中的存储数据。当通过该读电路在非易失性存储单元中读取数据之后,仲裁器可以判定读出的数据是应当被写回非易失性存储单元中实现对非易失性存储单元的数据刷新,还是应当被写入预载电路进行预载。
在上述实施方式中,设置仲裁器对在非易失性存储单元中读取的存储数据的数据流向进行判断,协助刷新电路对非易失性存储单元中的存储数据进行刷新,以及协助预载电路对非易失性存储单元中的存储数据进行预载,以确保数据流的准确性。
本实施例未尽详细解释之处请参见前述实施例,在此不再赘述。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (13)
1.一种存储器,其特征在于,包括:非易失性存储模块、易失性存储模块,以及连接于所述非易失性存储模块与所述易失性存储模块之间的预载电路;
其中,所述预载电路用于读取所述非易失性存储模块中的存储数据进行预载,所述易失性存储模块用于读取所述预载电路中预载的存储数据并传送给神经元计算核心。
2.根据权利要求1所述的存储器,其特征在于,还包括接收模块,
所述接收模块,用于接收数据读取指令,所述数据读取指令包括待预载的目标存储数据的信息;
所述易失性存储模块,用于根据所述数据读取指令,读取所述预载电路中已预载的存储数据并传送给神经元计算核心;
所述预载电路,用于根据所述目标存储数据的信息,读取所述非易失性存储模块中的目标存储数据进行预载。
3.根据权利要求1所述的存储器,其特征在于,所述非易失性存储模块中包括:相连的非易失性存储单元和刷新电路;
其中,所述刷新电路用于读取所述非易失性存储单元中的存储数据,并将所述存储数据写回所述非易失性存储单元。
4.根据权利要求3所述的存储器,其特征在于,所述非易失性存储模块中包括:控制单元;
所述控制单元与所述刷新电路相连,用于控制所述刷新电路的工作状态;
其中,所述工作状态至少包括刷新频率。
5.根据权利要求3所述的存储器,其特征在于,所述刷新电路的刷新频率为分钟级别或者小时级别。
6.根据权利要求4所述的存储器,其特征在于,所述控制单元还用于控制所述刷新电路读取所述非易失性存储单元中目标存储区域中的存储数据,并将所述存储数据写回所述非易失性存储单元中所述目标存储区域。
7.根据权利要求3所述的存储器,其特征在于,所述非易失性存储模块中还包括:仲裁器,连接于所述非易失性存储单元和所述刷新电路之间,以及连接于所述非易失性存储单元和所述预载电路之间;
所述仲裁器用于在所述非易失性存储单元中的存储数据被读取之后,判断所述存储数据是需要通过所述刷新电路写回所述非易失性存储单元,还是需要写入所述预载电路进行预载。
8.根据权利要求3所述的存储器,其特征在于,所述非易失性存储单元包括:磁存储器,所述易失性存储模块包括:静态随机存取存储器。
9.一种神经形态芯片,其特征在于,包括:至少一个如权利要求1-8任一项所述的存储器。
10.一种数据处理方法,其特征在于,应用于如权利要求1-8任一项所述的存储器中,包括:
通过预载电路读取所述非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取;
通过所述易失性存储模块读取所述预载电路中预载的存储数据并传送给神经元计算核心。
11.根据权利要求10所述的方法,其特征在于,还包括:
接收数据读取指令,所述数据读取指令包括待预载的目标存储数据的信息;
通过所述易失性存储模块读取所述预载电路中预载的存储数据并传送给神经元计算核心,包括:
通过所述易失性存储模块根据所述数据读取指令,读取所述预载电路中已预载的存储数据并传送给神经元计算核心;
通过预载电路读取所述非易失性存储模块中的存储数据进行预载,以供易失性存储模块读取,包括:
通过预载电路根据所述数据读取指令,读取所述非易失性存储模块中的目标存储数据进行预载。
12.根据权利要求10所述的方法,其特征在于,还包括:
通过刷新电路读取非易失性存储单元中的存储数据,并将所述存储数据写回所述非易失性存储单元。
13.根据权利要求12所述的方法,其特征在于,还包括:
通过仲裁器在所述非易失性存储单元中的存储数据被读取之后,判断所述存储数据是需要通过所述刷新电路写回所述非易失性存储单元,还是需要写入所述预载电路进行预载。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212421.2A CN112365912A (zh) | 2020-11-03 | 2020-11-03 | 一种存储器、神经形态芯片及数据处理方法 |
PCT/CN2021/127080 WO2022095786A1 (zh) | 2020-11-03 | 2021-10-28 | 存储器及神经形态芯片、数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011212421.2A CN112365912A (zh) | 2020-11-03 | 2020-11-03 | 一种存储器、神经形态芯片及数据处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112365912A true CN112365912A (zh) | 2021-02-12 |
Family
ID=74512750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011212421.2A Pending CN112365912A (zh) | 2020-11-03 | 2020-11-03 | 一种存储器、神经形态芯片及数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112365912A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022095786A1 (zh) * | 2020-11-03 | 2022-05-12 | 北京灵汐科技有限公司 | 存储器及神经形态芯片、数据处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446764A (zh) * | 2018-03-12 | 2018-08-24 | 清华大学 | 一种新型神经形态芯片架构 |
CN111164687A (zh) * | 2017-08-17 | 2020-05-15 | 森田公司 | 数字支持的闪存刷新 |
-
2020
- 2020-11-03 CN CN202011212421.2A patent/CN112365912A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111164687A (zh) * | 2017-08-17 | 2020-05-15 | 森田公司 | 数字支持的闪存刷新 |
CN108446764A (zh) * | 2018-03-12 | 2018-08-24 | 清华大学 | 一种新型神经形态芯片架构 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022095786A1 (zh) * | 2020-11-03 | 2022-05-12 | 北京灵汐科技有限公司 | 存储器及神经形态芯片、数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240177761A1 (en) | Memory with partial array refresh | |
TWI700585B (zh) | 半導體裝置及包含該半導體裝置的記憶體系統 | |
US10846220B2 (en) | Memory system and operation method thereof | |
KR20040054936A (ko) | 복합형 메모리 장치 | |
US11581031B2 (en) | Memory with partial bank refresh | |
JP7382678B2 (ja) | コンピューティングメモリシステム | |
KR20170093053A (ko) | 리프레시 정보 생성기를 포함하는 휘발성 메모리 장치 및 전자 장치, 그것의 정보 제공 방법, 그리고 그것의 리프레시 제어 방법 | |
CN112365912A (zh) | 一种存储器、神经形态芯片及数据处理方法 | |
US11152053B2 (en) | Memory devices including an operation mode supporting virtual bank access, and operating methods of the memory devices | |
CN111462793B (zh) | 数据存储系统及其预充电策略设置方法 | |
CN112365910A (zh) | 一种存储器及神经形态芯片 | |
KR20150020477A (ko) | 메모리 장치, 이를 포함하는 메모리 시스템 및 그 동작 방법 | |
US9082466B2 (en) | Apparatuses and methods for adjusting deactivation voltages | |
CN110675902B (zh) | 存储系统和存储系统的操作方法 | |
CN115374030A (zh) | 具有存储器发起的命令插入的存储器以及相关联系统、装置和方法 | |
KR20080090665A (ko) | 독립적으로 뱅크의 모드를 선택하는 반도체 메모리 장치,메모리 컨트롤러 및 그 제어 방법 | |
WO2022095786A1 (zh) | 存储器及神经形态芯片、数据处理方法 | |
US20080080284A1 (en) | Method and apparatus for refreshing memory cells of a memory | |
EP4213150A1 (en) | Memory and data migration method | |
WO2016126264A1 (en) | Refreshing an identified partial array | |
US12079491B2 (en) | Memory system including memory device and memory controller, and operating method thereof | |
US20240021234A1 (en) | Memory device performing refresh operation | |
US11922031B1 (en) | Apparatus with directed refresh management mechanism | |
US20230221871A1 (en) | Memory device and operating method thereof | |
KR20230108676A (ko) | 메모리 장치 및 그것의 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |