CN113947199A - 用于执行深度神经网络运算的存储器及其操作方法 - Google Patents

用于执行深度神经网络运算的存储器及其操作方法 Download PDF

Info

Publication number
CN113947199A
CN113947199A CN202110677570.4A CN202110677570A CN113947199A CN 113947199 A CN113947199 A CN 113947199A CN 202110677570 A CN202110677570 A CN 202110677570A CN 113947199 A CN113947199 A CN 113947199A
Authority
CN
China
Prior art keywords
data
weight
memory
representative
encoded data
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
Application number
CN202110677570.4A
Other languages
English (en)
Inventor
林泰吉
丁意轩
沈皓轩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Winbond Electronics Corp filed Critical Winbond Electronics Corp
Publication of CN113947199A publication Critical patent/CN113947199A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Quality & Reliability (AREA)
  • Neurology (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提供一种用于执行深度神经网络运算的存储器及其操作方法。存储器包括:处理单元以及权重单元。处理单元具有数据输入端与数据输出端。权重单元经配置以耦接处理单元的数据输入端。权重单元包括索引存储器与映射表。索引存储器经配置以存储多个权重索引。映射表经配置以将多个权重索引分别对应至多个代表权重数据。

Description

用于执行深度神经网络运算的存储器及其操作方法
技术领域
本发明涉及一种用于执行深度神经网络运算的存储器及其操作方法。
背景技术
随着人工智能(Artificial Intelligence,AI)运算的演进,AI运算的应用范围越来越广泛。例如,经由神经网络模型来进行图像分析、语音分析、自然语言处理等神经网络运算。因此,各技术领域持续地投入AI的研发与应用,适用于深度神经网络(Deep NeuralNetworks,DNN)、卷积神经网络(Convolutional Neural Network,CNN)等等的各种算法也不断推陈出新。
然而,无论是哪一种神经网络运算所使用的算法,在隐藏层(Hidden layer)中所使用的数据量非常庞大,才能达成机器学习的功能。具体而言,深度神经网络的运算基础实际上是来自于神经元与权重之间的矩阵运算。在此情况下,在执行深度神经网络运算时,需要花费大量的存储器空间来存储权重。倘若存储权重的存储器出现卡住错误(stuck-at-faults)的现象,将会导致深度神经网络的运算有误。因此,如何提供一种存储器及其操作方法可降低卡住错误的现象并提高深度神经网络运算的正确率将成为重要的一门课题。
发明内容
本发明提供一种适用于执行深度神经网络运算的存储器及其操作方法,其可找出具有最少卡住错误的编码数据来表示权重索引与代表权重数据之间的映射关系,进而减少索引存储器的卡住错误。
本发明提供一种存储器适用于执行深度神经网络运算。上述的存储器包括:处理单元以及权重单元。处理单元具有数据输入端与数据输出端。权重单元经配置以耦接处理单元的数据输入端。权重单元包括索引存储器与映射表。索引存储器经配置以存储多个权重索引。映射表经配置以将多个权重索引分别对应至多个代表权重数据。
本发明提供一种存储器的操作方法,适用于执行深度神经网络运算。上述的存储器的操作方法包括映射方法。上述的映射方法包括:将权重单元耦接至处理单元的数据输入端,其中权重单元包括存储有多个权重索引的索引存储器以及将多个权重索引分别对应至多个代表权重数据的映射表;检测索引存储器,以产生错误映射图(fault map),其中错误映射图包括多个卡住错误;依据错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量;以及依序挑选最少卡住错误的编码数据来建立多个代表权重数据与多个权重索引之间的映射表。
基于上述,本发明实施例可通过将多个权重值分群为多个代表权重数据,并通过映射表将多个权重索引分别对应至多个代表权重数据,以大幅降低存储器存储多个权重值的空间。另外,本发明实施例可通过检测索引存储器来产生错误映射图、依据错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量以及依序挑选最少卡住错误的编码数据来建立上述的映射表。如此一来,本发明实施例可有效地减少索引存储器的卡住错误,进而提高深度神经网络运算的正确率。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。
附图说明
图1是依照本发明一实施例所示出的一种存储器的架构示意图;
图2是依照本发明一实施例所示出的索引存储器与映射表之间的关系图;
图3是依照本发明一实施例所示出的映射表;
图4是依照本发明一实施例所示出的一种存储器的操作方法的流程图;
图5是依照本发明一实施例所示出的错误映射图;
图6A至图6C是图4的步骤404的流程图;
图7是依照本发明一实施例所示出的代表权重数据与编码数据的关系表。
具体实施方式
为了使本发明的内容可以被更容易理解,以下特举实施例作为本发明确实能够据以实施的范例。另外,凡可能的地方,在附图及实施方式中使用相同标号的组件/构件/步骤,是代表相同或类似部件。
请参照图1,本发明实施例提供一种存储器100包括处理单元110、数据输入单元120、权重单元130、反馈单元140以及数据输出单元150。具体来说,处理单元110具有数据输入端112与数据输出端114。在一些实施例中,处理单元110可以是人工智能引擎,例如是由控制逻辑、运算逻辑以及高速缓存(cache)存储器等诸如此类的电路组件所建构而成的存储器内运算(Processing In Memory,PIM)架构或近存储器运算(Near MemoryProcessing,NMP)架构。在本实施例中,处理单元110是设计以具有执行深度神经网络运算的功能。在此情况下,本实施例的存储器100可为一种动态随机存取存储器(DynamicRandom Access Memory,DRAM)芯片、电阻式随机存取存储器(resistive random accessmemory,RRAM)、相变随机存取存储器(phase-change random access memory,PCRAM)、磁阻随机存取存储器(Magnetoresistive random-access memory,MRAM)等等,但本发明不以此为限。
在一些实施例中,数据输入单元120与权重单元130经配置以分别耦接至处理单元110的数据输入端112,且反馈单元140经配置以耦接处理单元110的数据输入端112与数据输出端114。举例来说,当处理单元110执行深度神经网络运算时,处理单元110可存取数据输入单元120中的运算输入数据(或运算输入值)D1以及权重单元130中的权重数据136,并且依据输入数据D1以及权重数据136来执行深度神经网络运算。在本实施例中,处理单元110可视为深度神经网络中的隐藏层,其由多个前后相互连结的层116所构成,其中每一层116具有多个神经元118。当输入数据D1与权重数据136通过处理单元110运算并得到一运算结果值R1时,此运算结果值R1会通过反馈单元140重新输入处理单元110以作为新的运算输入数据(或运算输入值)D2,以此完成一次隐藏层的运算。依此类推,直到完成所有隐藏层计算,并将输出层的最终运算结果R2传送给数据输出单元150。
值得注意的是,在现有技术中,权重数据通常以浮点数(floating point)表示并存储在权重存储器中。在此情况下,在执行深度神经网络运算时,需要花费大量的存储器空间来存储权重数据。基于此,本发明实施例将权重单元130来取代现有的权重存储器,由此降低存储器的存储空间。具体而言,权重单元130包括索引存储器132与映射表134。如图2所示,索引存储器132经配置以存储多个权重索引I0、I1、I2…In(以下统称为权重索引I)。权重索引I的数量相当于现有的权重数据的数量,其与隐藏层中相互连结的层数以及每一层中的神经元的数量有关,应为神经网络领域中的技术人员所熟知,于此便不再详述。另外,映射表134经配置以将多个权重索引I分别对应至多个代表权重数据RW0、RW1、RW2…RWk-1(以下统称为代表权重数据RW)。在一些实施例中,可将多个权重值(例如已知的权重数据)分群为代表权重数据RW,由此减少代表权重数据RW的数量。在此情况下,代表权重数据RW的权重变化可小于权重值的权重变化,以降低深度神经网络运算错误率。此外,权重索引I的数量可多于代表权重数据RW的数量。如图2所示,一或多个权重索引I可同时对应同一个代表权重数据RW。
在一些实施例中,如图3所示,映射表134具有多个编码数据E,以表示多个权重索引I与多个代表权重数据RW之间的映射关系。举例来说,如图2与图3所示,权重索引I中的I0可通过编码数据E中的“0000”对应至代表权重数据RW0中的代表权重值W“-0.7602”。然而,当存储权重索引I的索引存储器132出现卡住错误的现象,仍会导致深度神经网络的运算有误。在此情况下,以下实施例提供一种映射方法,其可找出具有最少卡住错误的编码数据E来表示权重索引I与代表权重数据RW之间的映射关系,进而减少索引存储器132的卡住错误。
请参照图4,本发明实施例提供一种存储器的操作方法400适用于执行深度神经网络运算。存储器的操作方法400包括映射方法,如下所示。首先,进行步骤402,检测索引存储器,以产生错误映射图500,如图5所示。在一些实施例中,错误映射图500包括多个卡住错误502。于此,所谓的卡住错误(stuck-at-faults)是指存储单元的状态电平(status level)总是为0,或者总是为1。举例来说,如图5所示,存储有权重索引I的每一个存储单元的状态电平可使用四个位来表示。每一位位置为二的幂。存储有权重索引I1的存储单元的状态电平可以是“X1XX”,也就是说,此存储单元的第二位位置总是为1,其他位位置则可以是1或是0(以X来表示)。在此情况下,若是以“X0XX”的编码数据来对应权重索引I1便会发生卡住错误。相似地,存储有权重索引I2的存储单元的状态电平可以是“XX11”;而存储有权重索引I3的存储单元的状态电平可以是“0XXX”。此外,存储有权重索引I0的存储单元的状态电平可以是“XXXX”,也就是说,可以任意编码数据来对应权重索引I0。应理解,上述的存储单元亦可以两个位来表示四个状态电平,或是更多个位来表示更多个状态电平。
接着,进行步骤404,依据错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量。举例来说,如图5所示,当权重索引I1对应代表权重数据RW3时,存储有权重索引I1的存储单元的状态电平为“X1XX”。也就是说,具有“X0XX”的编码数据会出现卡住错误,其以+1的符号来表示,如图6A所示。相似地,如图5所示,当权重索引I2对应代表权重数据RW1时,存储有权重索引I2的存储单元的状态电平为“XX11”。也就是说,具有“XX00”的编码数据会出现卡住错误,其以+1的符号来表示,如图6B所示。接着,如图5所示,当权重索引I3对应代表权重数据RW3时,存储有权重索引I3的存储单元的状态电平为“0XXX”。也就是说,具有“1XXX”的编码数据会出现卡住错误,其以+1的符号来表示,如图6C所示。依此类推,直到统计完每一个代表权重数据RW与其对应的权重索引I之间的编码数据E的卡住错误的数量。
然后,进行步骤406,依序挑选最少卡住错误的编码数据来建立多个代表权重数据与多个权重索引之间的映射表。图7示出代表权重数据RW与编码数据E的关系表700。虽然上述实施例中的编码数据是以四个位来表示十六个状态电平,为了便于解释,图7改以两个位来表示四个状态电平。
详细地说,当代表权重数据RW以代表权重数据RW0、RW1、RW2、RW3依序排列,可以此顺序来挑选对应其的编码数据E。举例来说,如图7所示,由于在代表权重数据RW0的列中,编码数据“01”具有最少卡住错误(亦即0个),因此可挑选多个编码数据E中的编码数据“01”来对应代表权重数据RW0。也就是说,编码数据“01”的卡住错误数量小于其他编码数据“11”、“10”、“00”的卡住错误数量。接着,在代表权重数据RW1的列中,编码数据“10”具有最少卡住错误(亦即0个),因此可挑选多个编码数据E中的编码数据“10”来对应代表权重数据RW1。值得注意的是,虽然在代表权重数据RW2的列中,编码数据“01”或“10”具有较少卡住错误(亦即1个或2个),但由于编码数据“01”或“10”已被挑选以对应代表权重数据RW0或RW1,因此,可改挑选多个编码数据E中的编码数据“11”来对应代表权重数据RW2。也就是说,每一个权重数据RW可对应于不同的编码数据E。最后,在代表权重数据RW3的列中,编码数据“00”具有最少卡住错误(亦即2个),因此可挑选多个编码数据E中的编码数据“00”来对应代表权重数据RW3。在进行上述存储器的操作方法400的步骤402、404、406之后,可找出具有最少卡住错误的编码数据E来表示权重索引I与代表权重数据RW之间的映射关系,以有效地减少索引存储器132(如图1所示)的卡住错误,进而提高深度神经网络运算的正确率。
在一些实施例中,在执行深度神经网络运算时,如图1所示,可从索引存储器132读取所需的权重索引并通过上述的映射表映射出对应的代表权重数据(或代表权重值)。然后,将对应的代表权重数据输入处理单元110来执行深度神经网络运算。
综上所述,本发明实施例可通过将多个权重值分群为多个代表权重数据,并通过映射表将多个权重索引分别对应至多个代表权重数据,以大幅降低存储器存储多个权重值的空间。另外,本发明实施例可通过检测索引存储器来产生错误映射图、依据错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量以及依序挑选最少卡住错误的编码数据来建立上述的映射表。如此一来,本发明实施例可有效地减少索引存储器的卡住错误,进而提高深度神经网络运算的正确率。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定的为准。

Claims (10)

1.一种存储器,适用于执行深度神经网络运算,其特征在于,所述存储器包括:
处理单元,具有数据输入端与数据输出端;以及
权重单元,经配置以耦接所述处理单元的所述数据输入端,其中所述权重单元包括:
索引存储器,经配置以存储多个权重索引;以及
映射表,经配置以将所述多个权重索引分别对应至多个代表权重数据。
2.根据权利要求1所述的存储器,其特征在于,其中所述映射表具有多个编码数据,以表示所述多个权重索引与所述多个代表权重数据之间的映射关系。
3.根据权利要求1所述的存储器,其特征在于,其中所述映射表是通过检测所述索引存储器以产生错误映射图、根据所述错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量以及依序挑选最少卡住错误的编码数据所建立的。
4.根据权利要求1所述的存储器,其特征在于,其中所述多个代表权重数据是将多个权重值分群所得到,且所述多个代表权重数据的权重变化小于所述多个权重值的权重变化。
5.根据权利要求1所述的存储器,其特征在于,还包括:
数据输入单元,经配置以耦接所述处理单元的所述数据输入端,并用以输入运算输入值至所述处理单元;以及
反馈单元,经配置以耦接所述数据输入端与所述数据输出端,其中所述反馈单元将所述处理单元所输出的运算结果值重新输入所述处理单元以作为新的运算输入值。
6.一种存储器的操作方法,适用于执行深度神经网络运算,其特征在于,所述存储器的操作方法包括映射方法,所述映射方法包括:
将权重单元耦接至处理单元的数据输入端,其中所述权重单元包括存储有多个权重索引的索引存储器以及将所述多个权重索引分别对应至多个代表权重数据的映射表;
检测所述索引存储器,以产生错误映射图,其中所述错误映射图包括多个卡住错误;
依据所述错误映射图来统计每一个代表权重数据与其对应的权重索引之间的编码数据的卡住错误的数量;以及
依序挑选最少卡住错误的编码数据来建立所述多个代表权重数据与所述多个权重索引之间的所述映射表。
7.根据权利要求6所述的存储器的操作方法,其特征在于,其中所述依序挑选最少卡住错误的编码数据的步骤包括:
挑选所述多个编码数据中的第一编码数据来对应所述多个代表权重数据中的第一代表权重数据,
其中以所述第一编码数据来对应所述第一代表权重数据的卡住错误的数量小于以所述多个编码数据中的其他编码数据来对应所述第一代表权重数据的卡住错误的数量。
8.根据权利要求7所述的存储器的操作方法,其特征在于,还包括:
挑选所述多个编码数据中的第二编码数据来对应所述多个代表权重数据中的第二代表权重数据;
挑选所述多个编码数据中的第三编码数据来对应所述多个代表权重数据中的第三代表权重数据;以及
挑选所述多个编码数据中的第四编码数据来对应所述多个代表权重数据中的第四代表权重数据,其中所述第一编码数据、所述第二编码数据、所述第三编码数据以及所述第四编码数据具有不同编码数据。
9.根据权利要求6所述的存储器的操作方法,其特征在于,还包括读取方法,其中所述读取方法包括:
从所述索引存储器读取所需的权重索引并通过所述映射表映射出对应的代表权重数据;以及
将所述对应的代表权重数据输入所述处理单元来执行所述深度神经网络运算。
10.根据权利要求6所述的存储器的操作方法,其特征在于,其中所述映射方法还包括:将多个权重值分群为所述多个代表权重数据,且所述多个代表权重数据的权重变化小于所述多个权重值的权重变化。
CN202110677570.4A 2020-07-17 2021-06-18 用于执行深度神经网络运算的存储器及其操作方法 Pending CN113947199A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW109124237A TWI759799B (zh) 2020-07-17 2020-07-17 用於執行深度神經網路運算的記憶體及其操作方法
TW109124237 2020-07-17

Publications (1)

Publication Number Publication Date
CN113947199A true CN113947199A (zh) 2022-01-18

Family

ID=79292639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110677570.4A Pending CN113947199A (zh) 2020-07-17 2021-06-18 用于执行深度神经网络运算的存储器及其操作方法

Country Status (3)

Country Link
US (1) US20220019881A1 (zh)
CN (1) CN113947199A (zh)
TW (1) TWI759799B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI838797B (zh) * 2022-07-22 2024-04-11 臺灣發展軟體科技股份有限公司 記憶體裝置及用於記憶體內運算的資料重排方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108196799B (zh) * 2013-11-22 2021-03-30 华为技术有限公司 存储设备的写入方法及写入装置
US11080611B2 (en) * 2017-12-22 2021-08-03 Intel Corporation Compression for deep learning in case of sparse values mapped to non-zero value
US11676371B2 (en) * 2018-08-17 2023-06-13 Fotonation Limited Apparatus for processing a neural network
US11625584B2 (en) * 2019-06-17 2023-04-11 Intel Corporation Reconfigurable memory compression techniques for deep neural networks

Also Published As

Publication number Publication date
TWI759799B (zh) 2022-04-01
TW202205269A (zh) 2022-02-01
US20220019881A1 (en) 2022-01-20

Similar Documents

Publication Publication Date Title
CN108475522B (zh) 内存设备及基于多层rram交叉阵列的数据处理方法
EP2776988B1 (en) Method and apparatus for using memory in probabilistic manner to store synaptic weights of neural network
Cassuto et al. Information-theoretic sneak-path mitigation in memristor crossbar arrays
EP3671748A1 (en) In-memory computing for machine learning
CN102893529B (zh) 用于ldpc码的解码的方法和系统
Liu et al. Fault tolerance in neuromorphic computing systems
Ma et al. Go unary: A novel synapse coding and mapping scheme for reliable ReRAM-based neuromorphic computing
CN113947199A (zh) 用于执行深度神经网络运算的存储器及其操作方法
CN115858235A (zh) 循环冗余检验处理方法及装置、电路、电子设备和介质
Guo et al. Att: A fault-tolerant reram accelerator for attention-based neural networks
Alam et al. Stochastic computing in beyond von-neumann era: Processing bit-streams in memristive memory
CN113222159A (zh) 一种量子态的确定方法及装置
Lanzi et al. Optimal classifier system performance in non-Markov environments
JP5283989B2 (ja) メモリシステム及びメモリアクセス方法
KR102565005B1 (ko) 저항 변화 메모리의 수명 연장 방법 및 그 방법을 이용하는 데이터 저장 시스템
KR20210013397A (ko) 스토리지 장치
CN103151078A (zh) 一种存储器检错纠错码生成方法
CN114153420A (zh) 存储器内运算方法及装置
CN104364773B (zh) 存储器编程状态与数据模式之间的映射方法
Lee et al. Reducing power in error correcting code using genetic algorithm
Rumsey Capacity considerations for data storage in memristor arrays
CN106569906A (zh) 基于稀疏矩阵的编码写入方法及装置
Lee et al. A Symbiotic Evolutionary Design of Error‐Correcting Code with Minimal Power Consumption
CN113222154B (zh) 一种量子态的振幅的确定方法及装置
Anton et al. Usage Of Associatvive Memories Based on Hopfield networks in An Error Detection and Correction System

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