TWI753532B - 神經網絡中用於權重更新的記憶體元件 - Google Patents

神經網絡中用於權重更新的記憶體元件 Download PDF

Info

Publication number
TWI753532B
TWI753532B TW109127673A TW109127673A TWI753532B TW I753532 B TWI753532 B TW I753532B TW 109127673 A TW109127673 A TW 109127673A TW 109127673 A TW109127673 A TW 109127673A TW I753532 B TWI753532 B TW I753532B
Authority
TW
Taiwan
Prior art keywords
memory elements
memory
output
controller
random number
Prior art date
Application number
TW109127673A
Other languages
English (en)
Other versions
TW202117727A (zh
Inventor
卡西 薩帕瓦里
法比歐 佩里茲
Original Assignee
美商美光科技公司
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 美商美光科技公司 filed Critical 美商美光科技公司
Publication of TW202117727A publication Critical patent/TW202117727A/zh
Application granted granted Critical
Publication of TWI753532B publication Critical patent/TWI753532B/zh

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/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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • 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/045Combinations of networks
    • 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/047Probabilistic or stochastic networks
    • 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/061Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using biological neurons, e.g. biological neurons connected to an integrated circuit
    • 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
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • G11C11/1675Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5607Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using magnetic storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • G11C2013/0054Read is performed on a reference element, e.g. cell, and the reference sensed value is used to compare the sensed value of the selected cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/71Three dimensional array
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/77Array wherein the memory element being directly connected to the bit lines and word lines without any access device being used

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Computer Hardware Design (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Probability & Statistics with Applications (AREA)
  • Semiconductor Memories (AREA)

Abstract

可從第一記憶體元件接收表示一神經網路之突觸權重之一輸出。可比較該輸出與一已知正確輸出。可經由第二記憶體元件以一經調諧偏置產生一隨機數。可基於該隨機數及該輸出與該已知正確輸出之間之一差而更新該等權重。

Description

神經網絡中用於權重更新的記憶體元件
本發明大體上係關於半導體記憶體及方法,且更特定言之係關於在一神經網路中用於權重更新之一記憶體元件。
記憶體裝置通常提供為電腦或其他電子裝置中之內部半導體積體電路。存在許多不同類型之記憶體,包含揮發性記憶體及非揮發性記憶體。揮發性記憶體可需要電力來維持其資料(例如,主機資料、錯誤資料等)且其包含隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)及靜態隨機存取記憶體(SRAM)等等。非揮發性記憶體可藉由在未供電時留存所儲存資料而提供持久性資料且其可包含NAND快閃記憶體、NOR快閃記憶體、唯讀記憶體(ROM)、電可擦除可程式化ROM (EEPROM)、可擦除可程式化ROM (EPROM)及電阻可變記憶體(諸如相變隨機存取記憶體(PCRAM)、三維交叉點記憶體(例如,3D XPointTM )、電阻式隨機存取記憶體(RRAM)、鐵電隨機存取記憶體(FeRAM)、磁阻式隨機存取記憶體(MRAM)及可程式化導電記憶體)以及其他類型之記憶體。
一電阻可變記憶體裝置之一實體佈局可能類似於一DRAM裝置之實體佈局,其中由一相變材料(例如,鍺-銻-碲化物(GST)或其他硫族化物材料)替換DRAM單元之電容器。諸如一二極體或金屬氧化物半導體場效電晶體(MOSFET)之一存取裝置可與相變材料串聯連接。硫族化物材料可包含硫化物、硒化物及碲化物之化合物等等。一RRAM裝置之一實體佈局可包含記憶體單元,包含一電阻可變薄膜(例如,一巨大磁阻材料)。薄膜可連接至一存取裝置,諸如一二極體、一場效電晶體(FET)或一雙極接面電晶體(BJT)。
記憶體單元可程式化至一程式化位準。可藉由將能量脈衝施加至電阻可變材料而更改一電阻可變記憶體裝置之電阻。舉例而言,可藉由運用一程式化電流加熱一相變材料而更改其材料性質。通常,一較高電阻位準可與相變材料之一更非晶狀態(例如,一重設狀態)相關聯,且一較低電阻位準可與相變材料之一更結晶狀態(例如,一設定狀態)相關聯。可藉由跨膜施加正及/或負電脈衝而增大及/或減小一薄膜RRAM裝置之電阻。
神經網路係藉由模型化神經元(諸如一人腦中之神經元)之一網路而處理資訊以處理已在一特定環境中感測到之資訊(例如,刺激)的網路。類似於人腦,神經網路通常包含用以處理資訊的多個神經元模型,其等可被稱為人造神經元。
本發明之一實施例係關於一種方法,其包括:從第一複數個記憶體元件接收表示一神經網路之複數個突觸權重之一輸出;比較該輸出與一已知正確輸出;經由第二複數個記憶體元件以一經調諧偏置產生一隨機數;及基於該隨機數及該輸出與該已知正確輸出之間之一差而更新該複數個突觸權重。
本發明之另一實施例係關於一種設備,其包括:第一複數個記憶體元件;第二複數個記憶體元件,其等包括電阻可變記憶體元件;及一控制器,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件。該控制器經組態以:比較該第一複數個記憶體元件之表示一神經網路之複數個突觸權重之一輸出與一已知正確輸出;引起該第二複數個記憶體元件基於該第一複數個記憶體元件之該輸出與該已知正確輸出之間之一差而以一經調諧偏置產生一隨機數;且基於該隨機數程式化該第一複數個記憶體元件以儲存複數個經更新突觸權重。
本發明之一進一步實施例係關於一種設備,其包括:第一複數個記憶體元件;第二複數個記憶體元件,其等包括電阻可變記憶體元件;一控制器,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件;及一權重更新電路,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件。該控制器經組態以:比較該第一複數個記憶體元件之表示一神經網路之複數個突觸權重之一輸出與一已知正確輸出;且引起該第二複數個記憶體元件基於該第一複數個記憶體元件之該輸出與該已知正確輸出之間之一差而以一經調諧偏置產生一隨機數。該權重更新電路經組態以:回應於該輸出與該已知正確輸出之間之一差之一增大而基於該隨機數將複數個經隨機更新之突觸權重儲存於該第一複數個記憶體元件中。
已進行各種嘗試以在記憶體裝置中實施神經網路。舉例而言,在神經網路之一些先前實施方案中,記憶體單元已操作以模擬神經模型以促進一記憶體中之一或多個神經網路操作特性。
本文中揭示之實施例藉由包含神經元模型之加權輸入以考量輸入對神經元之相對影響而改良先前方法,涉及記憶體以促進神經網路操作。一權重(其亦可被稱為一突觸權重)可舉例而言對應於一人腦中之一突觸之一強度。此外,可隨機改變權重,且改變之隨機性可經偏置以改良學習,而無需額外電路。
舉例而言,可從第一記憶體元件接收表示一神經網路之突觸權重之一輸出。可比較輸出與一已知正確輸出。可經由第二記憶體元件以一經調諧偏置產生一隨機數。可基於隨機數及輸出與已知正確輸出之間之一差而更新權重。
在本發明之以下詳細描述中,參考形成本發明之一部分且其中藉由圖解展示可如何實踐本發明之若干實施例的隨附圖式。足夠詳細地描述此等實施例以使一般技術者能夠實踐本發明之實施例,且應瞭解,可利用其他實施例且可進行程序、電氣及/或結構改變而不脫離本發明之範疇。
如本文中使用,「若干」特定事項可係指此等事項之一或多者(例如,若干記憶體裝置可係指一或多個記憶體裝置)。如本文中使用,術語「第一」及「第二」用於區分一個特徵與另一特徵且不一定意味如此指定之特徵之間之一順序。舉例而言,「一第一實體位址」不一定意味第一實體位址在「一第二實體位址」之前。如本文中使用,「隨機」係指關於隨機資料產生之各種程度之無法預測性,包含(不限於)偽隨機、隨機、表面隨機性、真實隨機性及類似者。
如本文中使用,單數形式「一(a)」、「一個(an)」及「該」包含單數及複數個指涉物,除非內容另有清楚規定。此外,字詞「可」在本申請案各處以一允許意義(即,可能、能夠)而非以一強制意義(即,必須)使用。術語「包含」及其派生詞意謂「包含但不限於」。術語「耦合」意謂直接或間接連接。
本文中之圖遵循一編號慣例,其中首位數字或前幾位數字對應於圖式圖號且其餘數字識別圖式中之一元件或組件。可藉由使用類似數字識別不同圖之間之類似元件或組件。舉例而言,410可指涉圖4中之元件「10」,且一類似元件在圖5中可指涉為510。可用一連字符及額外數字或字母指涉一圖內之類比元件。參見舉例而言圖2中之元件210-1、210-2及210-N。通常可在無連字符及額外數字或字母之情況下指涉此等類比元件。舉例而言,元件210-1、210-2及210-N可共同或大體上指涉為210。如本文中使用,標示符「N」、「M」及「P」尤其關於圖式中之元件符號指示可包含如此指定之若干特定特徵。如將瞭解,可添加、交換及/或消除本文中之各項實施例中展示之元件以便提供本發明之若干額外實施例。另外,如將瞭解,圖中提供之元件之比例及相對尺度意欲繪示本發明之特定實施例且不應被視為限制意義。
圖1係根據本發明之若干實施例之呈包含一記憶體裝置128之一運算系統100之形式之一設備的一方塊圖。如本文中使用,一記憶體裝置128、控制器140及記憶體130亦可單獨視為一「設備」。
在此實例中,系統100包含耦合至包含一記憶體130之記憶體裝置128的一主機126。記憶體130可表示一或多個記憶體陣列。主機126可為一主機系統,諸如一個人膝上型電腦、一桌上型電腦、一數位相機、一智慧型電話或一記憶卡讀取器,以及各種其他類型之主機。主機126可包含一系統母板及/或背板且可包含若干處理資源(例如,一或多個處理器、微處理器或一些其他類型之控制電路)。系統100可包含單獨積體電路或主機126及記憶體裝置128兩者可處於相同積體電路上。系統100可為(例如)一伺服器系統及/或一高效能運算(HPC)系統及/或其之一部分。儘管圖1中展示之實例繪示具有一馮諾依曼架構之一系統,然可在可不包含通常與一馮諾依曼架構相關聯之一或多個組件(例如,CPU、ALU等)之非馮諾依曼架構中實施本發明之實施例。
為清楚起見,系統100已經簡化以集中於與本發明特別相關之特徵。記憶體130可包含一第一部分122及一第二部分124。第一部分122可包含第一複數個記憶體元件且第二部分124可包含第二複數個記憶體元件。如本文中使用,一記憶體元件係一記憶體單元或一記憶體單元之一部分,諸如一記憶體單元之一儲存組件。第一部分122可為任何類型之記憶體,諸如(例如)一DRAM陣列、一自選擇記憶體(SSM)陣列、一三維(3D)交叉點記憶體陣列、SRAM陣列、STT RAM陣列、PCRAM陣列、TRAM陣列、RRAM陣列、NAND快閃陣列、及/或NOR快閃陣列。第二部分124可為任何類型之可變電阻記憶體。舉例而言,第二部分124之記憶體元件可包含一相變材料。在至少一項實施例中,第一部分122及第二部分124包括一單一記憶體元件陣列之部分。記憶體130之任一部分可包括配置成藉由存取線(其等可被稱為字線或選擇線)耦合之列及藉由感測線(其等可被稱為位元線、資料線或數位線)耦合之行的記憶體單元。
記憶體裝置128包含位址電路142以鎖存透過I/O電路144經由一匯流排135 (例如,一I/O匯流排)提供之位址信號。位址信號透過位址電路142接收且藉由一列解碼器146及一行解碼器137解碼以存取記憶體130。亦可將位址信號提供至控制器140 (例如,經由位址電路142及/或經由一控制匯流排131、133)。可藉由使用感測電路(未繪示)感測資料線上之電壓及/或電流變化而從記憶體130讀取資料。感測電路可從記憶體130讀取並鎖存一頁(例如,列)資料。I/O電路144可用於經由I/O匯流排135與主機126進行雙向資料通信。使用寫入電路148以將資料寫入至記憶體130。
可被稱為記憶體庫控制邏輯及/或一定序器之控制器140 (例如,記憶體控制器)對由控制匯流排131、133從主機126提供之信號進行解碼。此等信號可包含用於控制對記憶體130執行之操作(包含資料讀取、資料寫入、及資料擦除操作)的晶片啟用信號、寫入啟用信號、及位址鎖存信號。在各項實施例中,控制器140負責執行來自主機126之指令且定序對陣列130之存取。控制器140可為一狀態機、一定序器、或某一其他類型之控制器。
控制器140可透過各種組件控制記憶體單元之操作(例如,讀取、寫入、重寫、再新、放電)。在一些情況中,列解碼器146及行解碼器137之一或多者可與控制器140共置。控制器140可產生列及行位址信號以便啟動一所要存取線及感測線。控制器140亦可產生並控制在一記憶體陣列之操作期間使用之各種電壓及電流。一般而言,本文中論述之一施加電壓或電流之振幅、形狀、極性及/或持續時間可經調整或變化且可針對在操作記憶體130中論述之各種操作而不同。
控制器140可經組態以執行如本文中描述之額外功能。舉例而言,控制器140可經組態以比較(記憶體130之第一部分122之)第一複數個記憶體元件之表示一神經網路之突觸權重之一輸出與一已知正確輸出。舉例而言,控制器140可經組態以在與記憶體裝置128相關聯(例如,由記憶體裝置128實施)之一神經網路之一學習階段期間執行比較。控制器140可經組態以引起(記憶體130之第二部分124之)第二複數個記憶體元件基於第一複數個記憶體元件之輸出與已知正確輸出之間之一差而以一經調諧偏置產生一隨機數。控制器140可經組態以基於該隨機數程式化第一複數個記憶體元件以儲存經更新突觸權重。
圖2繪示根據本發明之若干實施例之一交叉點架構中之一記憶體單元陣列201之一部分。在一些實施例中,陣列201可類比於圖1中繪示之記憶體130之第一部分122及/或第二部分124。在圖2中繪示之實例中,陣列201係包含存取線210-1、210-2、…、210-N及感測線215-1、215-2、…、215-M的一交叉點陣列。一記憶體單元205定位於字線210及位元線215之交叉點之各者處且記憶體單元205可在一兩端子架構中起作用,舉例而言,其中一特定存取線210及感測線215用作記憶體單元205之電極。記憶體單元205通常繪示為方塊。關於圖4至圖5繪示且描述具有所展示之額外細節之記憶體單元之實例。
記憶體單元205可為電阻可變記憶體單元。記憶體單元205可包含可程式化至不同資料狀態的一電阻可變材料(例如,硫族化物)。例如,可回應於例如所施加之寫入電壓及/或電流脈衝而寫入記憶體單元205以儲存對應於特定資料狀態之特定位準。實施例不限於一或若干特定材料。例如,材料可為由各種摻雜或未摻雜材料形成之硫族化物。可用於形成儲存元件之材料之其他實例包含二元金屬氧化物材料、巨大磁阻材料及/或各種基於聚合物之電阻可變材料等等。
在操作中,可藉由經由選定存取線210及感測線215跨記憶體單元205施加一程式化脈衝(例如,一寫入電壓)而寫入陣列201之記憶體單元205。一感測(例如,讀取)操作可用於藉由回應於施加至各自單元耦合至之選定存取線之一特定電壓而感測舉例而言對應於各自記憶體單元之一感測線215上之電流來判定一記憶體單元205之資料狀態。
圖3繪示根據本發明之若干實施例之一三維記憶體單元陣列302之一部分。在一些實施例中,陣列302可類比於圖1中繪示之記憶體130之第一部分122及/或第二部分124。在圖3中繪示之實例中,以一交叉點記憶體陣列架構(例如,一三維(3D)交叉點記憶體陣列架構)組態陣列302。多層疊交叉點記憶體陣列302包含若干連續記憶體單元(例如,305-1、305-2、305-3),其等經安置於沿一第一方向延伸之存取線3101 -1、3101 -2、…、3101 -N及3102 -1、3102 -2、…、3102 -N及沿一第二方向延伸之感測線3151 -1、3151 -2、…、3151 -M及3152 -1、3152 -2、…、3152 -M之交替(例如,交錯)層疊之間。層疊之數目可在數目上擴大或可在數目上減小。可將記憶體單元305之各者配置於存取線310與感測線315之間,使得一單一記憶體單元305與其各自感測線及存取線直接電耦合且與其等串聯電耦合。舉例而言,陣列302可包含可以小至一單一儲存組件或多個儲存組件之一粒度經存取以進行操作的可個別定址(例如,可隨機存取)記憶體單元之一三維矩陣。
圖4繪示根據本發明之若干實施例之包含具有一選擇組件409之一記憶體單元405之一記憶體陣列之一部分。可使用關於圖4描述之記憶體陣列之部分作為關於圖1描述之記憶體130之第一部分122及/或第二部分124。圖解包含一存取線410及一感測線415。存取線410平行於頁面之平面延伸,且感測線415垂直於存取線410延伸至頁面之平面中。一選擇組件409可定位於存取線410及感測線415之一交叉點處。選擇組件409可藉由一第一電極408耦合至存取線410且耦合至一第二電極412。第二電極412可將選擇組件409耦合至一儲存組件414。儲存組件414可藉由一第三電極416耦合至感測線415。儲存組件414可包含一電阻可變材料層。
在一些實施例中,電阻可變材料可為硫族化物材料及/或相變材料,但可使用其他材料。相變材料可包含若干鍺-銻-碲(GST)材料,例如,Ge-Sb-Te,諸如Ge2 Sb2 Te5 、Ge1 Sb2 Te4 、Ge1 Sb4 Te7 等。如本文中使用,帶有連字符之化學組合物符號指示包含於一特定混合物或化合物中之元素,且意欲表示涉及所指示元素之全部理想配比。其他相變材料可包含GeTe、In-Se、Sb2 Te3 、GaSb、InSb、As-Te及Al-Te。額外相變材料可包含Ge-Sb-Te、Te-Ge-As、In-Sb-Te、Te-Sn-Se、Ge-Se-Ga、Bi-Se-Sb、Ga-Se-Te、Sn-Sb-Te及In-Sb-Ge。一些相變記憶體可包含相變材料,諸如Te-Ge-Sb-S、Te-Ge-Sn-O、Te-Ge-Sn-Au、Pd-Te-Ge-Sn、In-Se-Ti-Co、Ge-Sb-Te-Pd、Ge-Sb-Te-Co、Sb-Te-Bi-Se、Ag-In-Sb-Te、Ge-Sb-Se-Te、Ge-Sn-Sb-Te、Ge-Te-Sn-Ni、Ge-Te-Sn-Pd及Ge-Te-Sn-Pt等等。如本文中使用,一「記憶體元件」可係指記憶體單元405或係指記憶體單元之一或多個組件(諸如儲存組件414及/或選擇組件409),但至少係指儲存組件414。
在一些架構中,儲存組件414 (例如,一CBRAM單元中之一電阻組件、一FeRAM單元中之一電容組件、一PCRAM單元中之一相變組件)可藉由一選擇組件409與存取線410電隔離。術語「隔離」係指電子當前無法在其間流動之組件之間的一關係。若組件之間存在一開路,則該等組件彼此隔離。舉例而言,藉由一開關實體上連接之兩個組件可在該開關斷開時彼此隔離。儘管未明確繪示,然選擇組件409可為舉例而言一三端子電晶體且存取線410可連接至電晶體之閘極,其中電晶體耦合至一共同源極線。替代地,選擇組件可為一可變電阻組件,其可包括硫族化物材料。一選擇組件之另一實例係一二極體。
可將用於操作一記憶體單元405之信號施加至一選擇組件409及/或施加至一儲存組件414,如圖4中展示。可舉例而言結合第一電極408、第二電極412及/或第三電極416之操作舉例而言經由存取線410及/或感測線415施加信號。記憶體元件(例如,包含選擇組件409及儲存組件414)可使其之一臨限電壓改變以表示如本文中描述之不同突觸權重。在一些實施例中,不同讀取及寫入極性之臨限電壓效應可跨選擇組件409及儲存組件414加成。
對於其中儲存組件414包括一相變材料的該等實施例,記憶體元件之臨限電壓可基於相變材料之一狀態(例如,非晶、結晶等)。舉例而言,可基於將材料加熱及/或冷卻至固化狀態的方式將硫族化物材料從一非晶狀態重複地更改為一結晶狀態。因此,取決於影響加熱及/或冷卻之各種電流特性,可使用一電流將硫族化物材料固定成一非晶狀態或一結晶狀態。舉例而言,較高位準電流通常用於將硫族化物材料重設為一高電阻率(低導電率)或非晶狀態,而較低位準電流通常用於將硫族化物材料設定為一低電阻率(高導電率)或結晶狀態。因此,維持材料之此等非揮發性狀態之任一者直至一後續電流更改硫族化物之結構。此外,在一些情況中,硫族化物材料亦可沿從非晶至結晶之範圍固化成不同狀態。
圖5繪示根據本發明之若干實施例之包含一自選擇記憶體單元505之一記憶體陣列之一部分。可使用關於圖5描述之記憶體陣列之部分作為關於圖1描述之記憶體130之第一部分122及/或第二部分124。圖解包含一存取線510及一感測線515。存取線510垂直於感測線515。如圖5中展示,存取線510平行於頁面延伸且感測線515延伸至頁面中。記憶體單元505可包含包括一可變電阻材料(諸如相變材料(例如,硫族化物))的一記憶體元件513。記憶體元件513可充當一選擇組件及一儲存組件兩者。記憶體元件513可定位於存取線510及感測線515之一交叉點處。記憶體元件513可藉由一第一電極511耦合至存取線510且藉由一第二電極517耦合至感測線515。在一些實施例中,記憶體元件513可包含一三元組合物,其可包含硒(Se)、砷(As)及鍺(Ge)。在一些實施例中,記憶體元件513可包含一四元組合物,其可包含矽(Si)、Se、As及Ge。亦可使用其他材料。
可藉由一寫入操作寫入記憶體單元505以儲存至少兩個不同資料狀態(例如,「1」、「0」)之一者。兩個資料狀態亦可被稱為設定及重設。在一些實施例中,可藉由記憶體單元505之不同臨限電壓表示不同資料狀態。舉例而言,可藉由一第一臨限電壓表示一「1」資料狀態且可藉由一第二臨限電壓表示一「0」資料狀態。記憶體單元505展現之臨限電壓可基於在一寫入操作期間施加至記憶體單元505之一寫入脈衝之一極性及在一讀取操作期間施加至記憶體單元505之一讀取脈衝之一極性。可使用存取線510及感測線515將寫入脈衝及讀取脈衝施加至記憶體單元505。
在一些實施例中,記憶體單元505可經組態為感測線515與存取線510之間之一兩端子裝置。可藉由跨記憶體單元505施加呈一第一極性之一電壓(例如,一寫入脈衝)而將一第一資料狀態寫入至記憶體單元505。可藉由跨記憶體單元505施加呈可與第一極性相反之一第二極性之一電壓(例如,一寫入脈衝)而將一第二資料狀態寫入至記憶體單元505。藉由跨端子施加一電壓(例如,一讀取脈衝)而讀取記憶體單元505。在一些實施例中,藉由跨記憶體單元505施加呈第一極性之一電壓而讀取記憶體單元505。在其他實施例中,藉由跨記憶體單元505施加呈第二極性之一電壓而讀取記憶體單元505。可始終以相同極性讀取記憶體單元505。當用呈寫入記憶體單元505之相同電壓極性之一電壓讀取記憶體單元505時,記憶體單元505可展現一第一臨限電壓。當用呈寫入記憶體單元505之相反電壓極性之一電壓讀取記憶體單元505時,記憶體單元可展現一第二臨限電壓。可使用不同臨限電壓來表示不同資料狀態。
當記憶體單元505係一兩端子裝置時,端子之間之電壓之相對值判定跨記憶體單元505施加之電壓之量值及極性。舉例而言,將3伏特之一電壓提供至感測線515且將0伏特提供至存取線510導致與在感測線515處提供6伏特之一電壓且在存取線510處提供3伏特相同的電壓量值及極性。在一些實施例中,可將其他非負(例如,0伏特或更大)、負及/或正電壓提供至存取線510及/或感測線515。如本文中使用,正向極性指示將感測線515設定成比存取線510高之一電壓且反向極性指示將感測線515設定成比存取線510低之一電壓。然而,「正向」及「反向」極性之使用係藉由實例,且本發明之實施例不限於本文中描述之特定極性方向之該等實施例。
圖6繪示根據本發明之若干實施例之用於產生隨機資料之電阻相對於程式化電流之一正規化表示。圖6中表示之電阻可為與圖1中繪示之記憶體130之第二部分124之記憶體元件相關聯之電阻。在一個實例中,可藉由首先將一程式化或重設信號施加至具有足以將硫族化物材料設定為一高電阻狀態(例如,一非晶狀態或可偵測為非晶狀態之一狀態)之一電流之裝置而利用諸如硫族化物材料之一相變材料作為一隨機數產生器。接著,將一後續脈衝(例如,一程式化或隨機數產生電流)施加至處於重設狀態之硫族化物材料,其中脈衝具有小於與重設狀態相關聯之脈衝(例如,高電流),但大於與設定狀態相關聯之脈衝(例如,通常用於將材料設定為低狀態之低電流)的一值。脈衝可引起硫族化物材料熔化且重新固化成重設狀態或設定狀態,其中一給定狀態之概率實際上係隨機的。藉由將硫族化物材料之一或多個單元設定為一重設狀態且隨後將此一脈衝施加至材料,可達成一有效基於硬體之隨機數產生器。
就電流之電氣性質及/或時間特性而言,用於在硫族化物材料中產生隨機狀態波動之脈衝可為任何電流,此可引起材料隨機達成不同狀態。在圖6之實例中,虛線(A)表示最初固化為設定狀態之硫族化物材料,其中以增加電流值施加一中間或隨機數產生電流。在此情況中,硫族化物之狀態重新固化為設定狀態直至電流增加至藉此材料固化為重設狀態之一點。針對此特定資料集未見隨機波動,此可在沿圖表之y軸之正規化電阻中看見。設定狀態係結晶,且因此具有一低電阻,而重設狀態係非晶,且因此具有一高電阻。然而,表示最初固化為重設狀態之硫族化物材料之實線(B)展示在電流增加時材料在重設狀態與設定狀態之間之隨機波動。當實線歸因於處於不同狀態之材料之電阻變化而在圖表之頂部與底部之間來回移動時,以圖表表示此等隨機波動。
圖7繪示根據本發明之若干實施例之一神經元模型750之一圖形實例。舉例而言,可使用一神經元模型來嘗試模仿一人腦之一神經元。神經網路之一典型結構係藉由利用小建置組塊(例如,神經元模型)來嘗試模擬一神經網路之神經元而模擬諸如一人腦中找到之神經元網路。此等神經元模型有時被稱為感知元。神經元模型750包含若干輸入752-1、752-2、…、752-P。舉例而言,可回應於感測某一形式之刺激(諸如一電壓、一電流或一特定資料值(例如,二進位數位))而產生施加至輸入752之信號。神經元模型750包含一函數(諸如一加總函數754)以處理在輸入752上接收之信號。舉例而言,加總函數754可對在輸入752處接收之信號執行一加法運算。神經元模型750進一步包括一函數758以回應於對應於加總輸入756之一值且在輸出760處產生一特定回應。
函數758之一實例係用以判定加總值756與一已知正確輸出之間之一差的一函數。舉例而言,此一函數可產生包括差之一輸出760。函數758之其他實例包含非線性函數,諸如一S形函數。可將輸出760處之所產生輸出值施加至一或多個額外神經元模型(例如,諸如施加至不同神經元模型之輸入752),其包括根據本發明之各項實施例之神經元模型之一神經網路。在一些實施例中,可將輸出760發送至一控制器,諸如圖1中繪示之控制器140。
圖8繪示根據本發明之若干實施例之一神經網路862之一圖形表示。神經網路862包括一輸入級864、神經元模型(N1、N2)之一第一層級866-1、神經元模型(N3、N4)之一第二層級866-2及一輸出級868。根據各項實施例之神經網路可包含遠多於兩個輸入、兩個輸出及兩個層級。神經元模型N1、N2、N3、N4之任一者可類比於圖7中繪示之神經元模型750。在852處指示之箭頭對應於圖7中之第一輸入752-1及第二輸入752-2,而輸出860對應於圖7中展示之輸出760。可將神經元模型N1之輸出施加至諸如藉由箭頭870指示之網路之一或多個不同神經元模型。因此,舉例而言,將第一層級866-1之各神經元模型之輸出施加至神經網路862之第二層級866-2之各神經元模型之一輸入。
可由併入神經網路之一電子系統之額外電路供應包括至神經網路862之初始輸入信號(VIN1、VIN2)之輸入級864。舉例而言,各輸入節點872可包含諸如暫存器及/或驅動器電路的電路。輸出級868經組態以將神經網路輸出值傳送至電子系統之額外電路。舉例而言,輸出節點874可包含諸如暫存器及/或驅動器電路的電路。
在根據本發明之一神經網路之一例示性實施方案中,各神經元可基於一電流刺激而觸發。來自一記憶體陣列之一位址集可表示一突觸。可用表示突觸權重之值程式化一或多個記憶體元件。可讀取與位址集相關聯之記憶體元件且可透過一數位轉類比轉換器將輸出轉換為一信號。可在一學習階段中使用一權重改變演算法(諸如隨機權重改變),其中已知正確輸出。在一權重改變之後,若神經網路之輸出與已知正確輸出之間之一差減小,則權重可改變達與先前改變相同的量(例如,線性地)。此亦可被稱為搜尋空間中之一鄰域中之一短搜尋。在一權重改變之後,若神經網路之輸出與已知正確輸出之間之差增大,則權重可隨機改變。此亦可被稱為至搜尋空間中之一完全隨機鄰域之一跳躍。一神經網路之一個功能組件係透過神經網路之訓練進行圖案辨識。啟發式搜尋演算法可在一多維搜尋空間上方使用一隨機漫步。權重調整可使用任何方法,諸如或類似於一隨機梯度下降,諸如模擬退火或一基因演算法,其最小化輸出與已知正確輸出之間之差。在一些實施例中,神經網路可使用一啟發式搜尋來偵測傳入資料中之圖案。
圖9係根據本發明之若干實施例之一神經網路中之權重更新之一方法流程圖。在至少一項實施例中,可由圖1中繪示之控制器140執行方法。方法可包含從第一複數個記憶體元件接收表示一神經網路之突觸權重之一輸出。第一複數個記憶體元件可為記憶體之一第一部分922。方法可包含從第一部分922接收輸出(例如,權重),如在976繪示。在一些實施例中,接收輸出可包含讀取與第一部分922相關聯之記憶體元件。方法可包含比較輸出與一已知正確輸出978,如在980指示。方法可包含經由第二複數個記憶體元件以一經調諧偏置982產生一隨機數983。第二複數個記憶體元件可為記憶體之一第二部分924。方法可包含基於隨機數983及輸出與已知正確輸出978之間之一差981而更新權重,如在989指示。更新權重可包含程式化第一複數個記憶體元件以儲存經更新權重,如在986指示。
產生隨機數983可包含將一脈衝施加至一定數量之第二複數個記憶體元件,該脈衝具有在相關聯於一重設狀態之脈衝與相關聯於記憶體之第二部分924中之第二複數個記憶體元件之一設定狀態之一脈衝之間的一量值。產生隨機數983可包含在施加脈衝之後讀取第二複數個記憶體元件。以經調諧偏置產生隨機數可包含基於差來定義數量。
舉例而言,可回應於差981之減小而定義第二部分924之第二複數個記憶體元件之一較小數量且可回應於差981之增大而定義一較大數量。從第二部分924定義用於使脈衝施加至其之記憶體元件之數量愈大,從記憶體之第二部分924輸出之所得隨機數983之隨機性將愈大。此係因為使脈衝施加至其之較大數量意謂第二部分924之一較大百分比之記憶體元件將有效地使其等狀態在設定與重設之間隨機化。回應於輸出與已知正確輸出之間之差981之增大而增大隨機數983之隨機性允許搜尋演算法跳躍至一不同搜尋空間,此係因為當前搜尋進一步遠離正確結果。回應於輸出與已知正確輸出之間之差981之減小而降低隨機數983之隨機性允許搜尋演算法縮小正確結果之範圍。此可促進搜尋演算法安定於一局部或全域最小差。
作為另一實例,可回應於在多次迭代之後差981之收斂而定義第二複數個記憶體元件之較大數量。此可有益於在搜尋演算法安定於一局部最小值之後增大搜尋空間。舉例而言,此可允許搜尋演算法逃避局部最小值以搜尋另一局部最小值,此可藉由比較多個保存局部最小值而促進判定一全域最小值。可針對在多次迭代之後差981之複數個收斂之各者儲存第一部分922之第一複數個記憶體元件之表示突觸權重之輸出。此可實現多個保存局部最小值之比較以判定一全域最小值(例如,比較一最佳擬合輸出與已知正確輸出)。可選擇所儲存輸出之一者作為最佳擬合輸出。可基於對應於複數個收斂之輸出之值之一形貌而選擇一較大或較小數量。
圖10係根據本發明之若干實施例之一神經網路中之權重更新之一功能方塊圖。記憶體之一第一部分1022可包含第一複數個記憶體元件且記憶體之一第二部分1024可包含包括電阻可變記憶體元件的第二複數個記憶體元件。在至少一項實施例中,第一複數個記憶體元件係除電阻可變記憶體元件以外的記憶體元件。第一部分1022及第二部分1024可耦合至一控制器(未明確繪示,但類比於圖1中繪示之控制器140)。控制器可經組態以比較第一複數個記憶體元件之表示一神經網路之突觸權重之一輸出與一已知正確輸出。控制器可經組態以引起第二複數個記憶體元件基於第一複數個記憶體元件之輸出與已知正確輸出之間之一差而以一經調諧偏置產生一隨機數。
一權重更新電路1090可耦合至記憶體之包含第一複數個記憶體元件之第一部分1022且耦合至記憶體之包含第二複數個記憶體元件之第二部分1024。在至少一項實施例中,權重更新電路1090可為控制器之一組件。在至少一項實施例中,權重更新電路1090可包括與控制器分離的硬體邏輯。
權重更新電路1090可經組態以回應於輸出與已知正確輸出之間之差之增大而基於隨機數將經隨機更新之突觸權重儲存於第一複數個記憶體元件中。經隨機更新之突觸權重對於其中差增大之例項可為有益的,此係因為經隨機更新之突觸權重實質上引起神經網路擴展其對正確輸出之搜尋。權重更新電路1090可經組態以回應於輸出與已知正確輸出之間之差之減小而將經線性更新之突觸權重儲存於第一複數個記憶體元件中。經線性更新之突觸權重對於其中差減小之例項可為有益的,此係因為經線性更新之突觸權重實質上引起神經網路縮小其對正確輸出之搜尋。權重更新電路1090可包括一加法器及/或一乘法器電路以更新突觸權重。
在一些實施例中,權重更新電路1090可直接連接至記憶體之第二部分1024且從其接收隨機數。權重更新電路1090可經由一信號延遲產生器1088耦合至第一部分1022。信號延遲產生器可經組態以延遲(例如,根據突觸權重產生之)輸出從第一部分1022至權重更新電路1090之傳遞。在一些實施例中,在隨機數之產生可能花費一些時間的情況下,延遲可為有用的。信號延遲產生器1088可經組態以延遲第一複數個記憶體元件之輸出直至由第二複數個記憶體元件產生隨機數。
圖11係根據本發明之若干實施例之一神經網路之一例示性實施方案之一方塊圖。神經網路包含一第一輸入1152-1及一第二輸入1152-2,然而,實施例不限於特定數目個輸入1152。第一輸入1152-1係至記憶體元件之一第一子集1192-1且第二輸入1152-2係至記憶體元件之一第二子集1192-2。記憶體元件之第一子集1192-1輸出至一第一數位轉類比轉換器1194-1且記憶體元件之第二子集1192-2輸出至一第二類比轉數位轉換器1194-2。類比轉數位轉換器1194提供一輸出1156。儘管本身未明確繪示,然輸出1156可從類比轉數位轉換器1194多工化。記憶體元件之子集1192可表示神經網路之一突觸。
圖11中繪示之記憶體元件之子集1192可為圖1中繪示之記憶體130之第一部分122中之第一複數個記憶體元件。子集1192可為包含額外子集之一第一陣列之部分。可在圖1中繪示之第二部分124中之第二複數個記憶體元件可為一第二陣列之至少一部分。然而,在一些實施例中,子集1192及第二複數個記憶體單元可為一相同陣列之部分。控制器(例如,圖1中繪示之控制器140)可經組態以將各自突觸權重儲存於額外子集中且操作子集1192及額外子集作為神經網路。
儘管本文中已繪示且描述特定實施例,然一般技術者將明白,經計算以達成相同結果之一配置可取代所展示之特定實施例。本發明意欲涵蓋本發明之若干實施例之調適或變動。應瞭解,已依一闡釋性方式而非一限制性方式進行上文描述。一般技術者在檢視上文描述後將明白上文實施例及本文中未明確描述之其他實施例之組合。本發明之若干實施例之範疇包含其中使用上文結構及方法之其他應用。因此,應參考隨附發明申請專利範圍連同此等發明申請專利範圍所授權之等效物之完整範圍來判定本發明之若干實施例之範疇。
在前述[實施方式]中,為簡化本發明之目的,將一些特徵在一起群組於一單一實施例中。本發明之此方法不應解釋為反映本發明之所揭示實施例必須使用比各請求項中明確敘述更多之特徵的意圖。實情係,如以下發明申請專利範圍反映,本發明標的在於少於一單一所揭示實施例之全部特徵。因此,以下發明申請專利範圍特此併入至[實施方式]中,其中各請求項獨立作為一單獨實施例。
100:運算系統 122:第一部分 124:第二部分 126:主機 128:記憶體裝置 130:記憶體 131:控制匯流排 133:控制匯流排 135:I/O匯流排 137:行解碼器 140:控制器 142:位址電路 144:I/O電路 146:列解碼器 148:寫入電路 201:記憶體單元陣列 205:記憶體單元 210-1至210-N:元件/存取線 215-1至215-M:感測線 302:三維記憶體單元陣列 305-1:記憶體單元 305-2:記憶體單元 305-3:記憶體單元 3101 -1至3101 -N:存取線 3102 -1至3102 -N:存取線 3151 -1至3151 -M:感測線 3152 -1至3152 -M:感測線 405:記憶體單元 408:第一電極 409:選擇組件 410:存取線 412:第二電極 414:儲存組件 415:感測線 416:第三電極 505:記憶體單元 510:存取線 511:第一電極 513:記憶體元件 515:感測線 517:第二電極 750:神經元模型 752-1至752-P:輸入 754:加總函數 756:加總輸入/加總值 758:函數 760:輸出 852:步驟 860:輸出 862:神經網路 864:輸入級 866-1:第一層級 866-2:第二層級 868:輸出級 870:箭頭 872:輸入節點 874:輸出節點 922:第一部分 924:第二部分 976:步驟 978:已知正確輸出 980:步驟 981:差 982:經調諧偏置 983:隨機數 986:步驟 989:步驟 1022:第一部分 1024:第二部分 1088:信號延遲產生器 1090:權重更新電路 1152-1:第一輸入 1152-2:第二輸入 1156:輸出 1192-1:第一子集 1192-2:第二子集 1194-1:第一數位轉類比轉換器 1194-2:第二類比轉數位轉換器 N1:神經元模型 N2:神經元模型 N3:神經元模型 N4:神經元模型 VIN1:初始輸入信號 VIN2:初始輸入信號
圖1係根據本發明之若干實施例之呈包含一記憶體裝置之一運算系統之形式之一設備的一方塊圖。
圖2繪示根據本發明之若干實施例之一交叉點架構中之一記憶體單元陣列之一部分。
圖3繪示根據本發明之若干實施例之一三維記憶體單元陣列之一部分。
圖4繪示根據本發明之若干實施例之包含具有一選擇組件之一記憶體單元之一記憶體陣列之一部分。
圖5繪示根據本發明之若干實施例之包含一自選擇記憶體單元之一記憶體陣列之一部分。
圖6繪示根據本發明之若干實施例之用於產生隨機資料之電阻相對於程式化電流之一正規化表示。
圖7繪示根據本發明之若干實施例之一神經元模型之一圖形實例。
圖8繪示根據本發明之若干實施例之一神經網路之一圖形表示。
圖9係根據本發明之若干實施例之一神經網路中之權重更新之一方法流程圖。
圖10係根據本發明之若干實施例之一神經網路中之權重更新之一功能方塊圖。
圖11係根據本發明之若干實施例之一神經網路之一例示性實施方案之一方塊圖。
922:第一部分
924:第二部分
976:步驟
978:已知正確輸出
980:步驟
981:差
982:經調諧偏置
983:隨機數
986:步驟

Claims (20)

  1. 一種用於記憶體操作之方法,其包括:從第一複數個記憶體元件接收表示一神經網路之複數個突觸權重之一輸出;比較該輸出與一已知正確輸出;經由包含電阻可變記憶體單元或電阻可變記憶體單元之多個部分的第二複數個記憶體元件以一經調諧偏置產生一隨機數;及基於該隨機數及該輸出與該已知正確輸出之間之一差而更新該複數個突觸權重。
  2. 如請求項1之方法,其中更新該複數個突觸權重包括程式化該第一複數個記憶體元件以儲存該複數個經更新突觸權重。
  3. 如請求項1至2中任一項之方法,其中產生該隨機數包括:將一脈衝施加至一定數量之該第二複數個記憶體元件,該脈衝具有在相關聯於一重設狀態之脈衝與相關聯於該第二複數個記憶體元件之一設定狀態之一脈衝之間的一量值;及在施加該脈衝之後讀取該第二複數個記憶體元件。
  4. 如請求項3之方法,其中以該經調諧偏置產生該隨機數包括基於該差來定義該數量。
  5. 一種用於記憶體操作之設備,其包括:第一複數個記憶體元件;第二複數個記憶體元件,其等包括電阻可變記憶體單元或電阻可變記憶體單元之多個部分;及一控制器,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件,其中該控制器經組態以:比較該第一複數個記憶體元件之表示一神經網路之複數個突觸權重之一輸出與一已知正確輸出;引起該第二複數個記憶體元件基於該第一複數個記憶體元件之該輸出與該已知正確輸出之間之一差而以一經調諧偏置產生一隨機數;且基於該隨機數程式化該第一複數個記憶體元件以儲存複數個經更新突觸權重。
  6. 如請求項5之設備,其中該控制器經組態以引起該第二複數個記憶體元件產生一隨機數包括該控制器經組態以:重設一定數量之該第二複數個記憶體元件;且將一脈衝施加至該一定數量之該第二複數個記憶體元件,該脈衝具有在相關聯於一重設狀態之脈衝與相關聯於一設定狀態之一脈衝之間的一量值。
  7. 如請求項5之設備,其中該隨機數包括該第二複數個記憶體元件之一輸出;且 其中該控制器經組態以定義該第二複數個記憶體元件之一數量以調諧該偏置。
  8. 如請求項7之設備,其中該控制器經組態以回應於該差之一減小而定義一較小數量。
  9. 如請求項7之設備,其中該控制器經組態以回應於該差之一增大而定義一較大數量。
  10. 如請求項7之設備,其中該控制器經組態以回應於在多次迭代之後該差之一收斂而定義一較大數量。
  11. 如請求項10之設備,其中該控制器經組態以引起針對在多次迭代之後該差之複數個收斂之各者儲存該第一複數個記憶體元件之表示該複數個突觸權重之該輸出。
  12. 如請求項11之設備,其中該控制器經組態以選擇該等所儲存輸出之一者作為一最佳擬合輸出。
  13. 如請求項11之設備,其中該控制器經組態以基於對應於該複數個收斂之輸出之值之一形貌而定義該較大數量。
  14. 如請求項5至13中任一項之設備,其中該第一複數個記憶體元件包括 一第一記憶體陣列之一子集,該第一記憶體陣列包含記憶體元件之額外子集;其中該控制器經組態以:將額外突觸權重儲存於該等額外子集中;且操作該子集及該等額外子集作為該神經網路;且其中該第二複數個記憶體元件包括一第二記憶體陣列之至少一部分。
  15. 如請求項5至13中任一項之設備,其中該第一複數個記憶體元件包括一記憶體陣列之一子集,該記憶體陣列進一步包含記憶體元件及該第二複數個記憶體元件之額外子集。
  16. 一種用於記憶體操作之設備,其包括:第一複數個記憶體元件;第二複數個記憶體元件,其等包括電阻可變記憶體單元或電阻可變記憶體單元之多個部分;一控制器,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件,其中該控制器經組態以:比較該第一複數個記憶體元件之表示一神經網路之複數個突觸權重之一輸出與一已知正確輸出;且引起該第二複數個記憶體元件基於該第一複數個記憶體元件之該輸出與該已知正確輸出之間之一差而以一經調諧偏置產生一隨機數;及 一權重更新電路,其耦合至該第一複數個記憶體元件及該第二複數個記憶體元件,其中該權重更新電路經組態以:回應於該輸出與該已知正確輸出之間之一差之一增大而基於該隨機數將複數個經隨機更新之突觸權重儲存於該第一複數個記憶體元件中。
  17. 如請求項16之設備,其中該權重更新電路經組態以回應於該輸出與該已知正確輸出之間之差之一減小而將複數個經線性更新之突觸權重儲存於該第一複數個記憶體元件中。
  18. 如請求項16之設備,其中該權重更新電路經組態以:從該第二複數個記憶體元件接收該隨機數;且接收該第一複數個記憶體元件之該輸出。
  19. 如請求項18之設備,其進一步包括耦合在該第一複數個記憶體元件與該權重更新電路之間的一信號延遲產生器;其中該信號延遲產生器經組態以延遲該第一複數個記憶體元件之該輸出直至由該第二複數個記憶體元件產生該隨機數。
  20. 如請求項16至19中任一項之設備,其中:該第一複數個記憶體元件包括一第一子集及一第二子集;該第一子集耦合至一第一數位轉類比轉換器;該第二子集耦合至一第二數位轉類比轉換器; 該第一DAC及該第二DAC耦合至多工器;該多工器經組態以提供該第一複數個記憶體元件之該輸出;且該第一子集及該第二子集表示該神經網路之一突觸。
TW109127673A 2019-08-16 2020-08-14 神經網絡中用於權重更新的記憶體元件 TWI753532B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/542,975 US11538513B2 (en) 2019-08-16 2019-08-16 Memory element for weight update in a neural network
US16/542,975 2019-08-16

Publications (2)

Publication Number Publication Date
TW202117727A TW202117727A (zh) 2021-05-01
TWI753532B true TWI753532B (zh) 2022-01-21

Family

ID=74567917

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109127673A TWI753532B (zh) 2019-08-16 2020-08-14 神經網絡中用於權重更新的記憶體元件

Country Status (7)

Country Link
US (1) US11538513B2 (zh)
EP (1) EP4014170A4 (zh)
JP (1) JP2022544790A (zh)
KR (1) KR20220045981A (zh)
CN (1) CN114222999A (zh)
TW (1) TWI753532B (zh)
WO (1) WO2021034500A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI803234B (zh) * 2022-03-09 2023-05-21 國立清華大學 類神經網路系統、高效率內嵌式人工突觸元件及其操作方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11355554B2 (en) * 2020-05-08 2022-06-07 Micron Technology, Inc. Sense lines in three-dimensional memory arrays, and methods of forming the same
CN113971144B (zh) * 2021-10-27 2024-04-16 合肥学院 一种用于多处理器优先级仲裁的动态混合彩票方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083202A1 (en) * 2007-09-26 2009-03-26 Kabushiki Kaisha Toshiba Semiconductor storage device
US20150278682A1 (en) * 2014-04-01 2015-10-01 Boise State University Memory controlled circuit system and apparatus
US20170068885A1 (en) * 2013-08-02 2017-03-09 International Business Machines Corporation Dual deterministic and stochastic neurosynaptic core circuit
US20170193363A1 (en) * 2015-12-30 2017-07-06 SK Hynix Inc. Method for updating weights of synapses of a neuromorphic device

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9430735B1 (en) 2012-02-23 2016-08-30 Micron Technology, Inc. Neural network in a memory device
US9189729B2 (en) 2012-07-30 2015-11-17 International Business Machines Corporation Scalable neural hardware for the noisy-OR model of Bayesian networks
US8990130B2 (en) 2012-11-21 2015-03-24 International Business Machines Corporation Consolidating multiple neurosynaptic cores into one memory
US9575727B2 (en) 2014-09-26 2017-02-21 Intel Corporation Methods for generating random data using phase change materials and related devices and systems
US10134470B2 (en) 2015-11-04 2018-11-20 Micron Technology, Inc. Apparatuses and methods including memory and operation of same
US9910639B2 (en) * 2015-11-30 2018-03-06 International Business Machines Corporation Random number generation using threshold switching mechanism
KR102519809B1 (ko) 2015-12-30 2023-04-11 에스케이하이닉스 주식회사 뉴로모픽 소자의 시냅스들의 가중치를 업데이트하는 방법들
US11100385B2 (en) * 2016-12-30 2021-08-24 Intel Corporation Scalable free-running neuromorphic computer
US10366747B2 (en) 2017-11-30 2019-07-30 Micron Technology, Inc. Comparing input data to stored data
US10424376B2 (en) 2017-12-24 2019-09-24 Micron Technology, Inc. Material implication operations in memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083202A1 (en) * 2007-09-26 2009-03-26 Kabushiki Kaisha Toshiba Semiconductor storage device
US20170068885A1 (en) * 2013-08-02 2017-03-09 International Business Machines Corporation Dual deterministic and stochastic neurosynaptic core circuit
US20150278682A1 (en) * 2014-04-01 2015-10-01 Boise State University Memory controlled circuit system and apparatus
US20170193363A1 (en) * 2015-12-30 2017-07-06 SK Hynix Inc. Method for updating weights of synapses of a neuromorphic device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI803234B (zh) * 2022-03-09 2023-05-21 國立清華大學 類神經網路系統、高效率內嵌式人工突觸元件及其操作方法

Also Published As

Publication number Publication date
US20210050045A1 (en) 2021-02-18
TW202117727A (zh) 2021-05-01
JP2022544790A (ja) 2022-10-21
CN114222999A (zh) 2022-03-22
EP4014170A4 (en) 2023-09-13
EP4014170A1 (en) 2022-06-22
WO2021034500A1 (en) 2021-02-25
US11538513B2 (en) 2022-12-27
KR20220045981A (ko) 2022-04-13

Similar Documents

Publication Publication Date Title
US10643705B2 (en) Configurable precision neural network with differential binary non-volatile memory cell structure
US10643119B2 (en) Differential non-volatile memory cell for artificial neural network
US10534840B1 (en) Multiplication using non-volatile memory cells
TWI753532B (zh) 神經網絡中用於權重更新的記憶體元件
Zhang et al. Memristive model for synaptic circuits
Zidan et al. Memristive computing devices and applications
Strukov et al. Resistive switching phenomena in thin films: Materials, devices, and applications
Mannocci et al. In-memory computing with emerging memory devices: Status and outlook
US20230058092A1 (en) Neural network memory
US11347999B2 (en) Closed loop programming of phase-change memory
TWI783538B (zh) 多階超低功率推理引擎加速器
Pedretti et al. Conductance variations and their impact on the precision of in-memory computing with resistive switching memory (RRAM)
Mbarek et al. On the design and analysis of a compact array with 1T1R RRAM memory element
US20220366211A1 (en) Dropout in neutral networks using threshold switching selectors in non-volatile memories
US11170852B1 (en) Cross-bar arrays having steering element with diode
Pedretti et al. Computing with nonvolatile memories for artificial intelligence
US11183238B2 (en) Suppressing outlier drift coefficients while programming phase change memory synapses
KR20220048017A (ko) 자기 선택 메모리 셀 기반 인공 시냅스
Zidan et al. Memristive Computing Devices and Applications
Syed et al. Non von neumann computing concepts
Govli et al. 1-transistor-1-memristor multilevel memory cell
Eryilmaz et al. Training and Inference in Hopfield Network Using 10× 10 Phase Change Synaptic Array
Menzel et al. Reliability Aspects of Memristive Devices for Computation-in-Memory Applications
Chen et al. Neuromorphic Devices Based on Chalcogenide Materials
ANZALONE Statistical models of program/verify algorithm in resistive memory arrays for neural network accelerators