TWI757645B - 用於記憶體內乘法及累加運算的電路及其方法 - Google Patents

用於記憶體內乘法及累加運算的電路及其方法 Download PDF

Info

Publication number
TWI757645B
TWI757645B TW108136445A TW108136445A TWI757645B TW I757645 B TWI757645 B TW I757645B TW 108136445 A TW108136445 A TW 108136445A TW 108136445 A TW108136445 A TW 108136445A TW I757645 B TWI757645 B TW I757645B
Authority
TW
Taiwan
Prior art keywords
nand
block
coupled
lines
line
Prior art date
Application number
TW108136445A
Other languages
English (en)
Other versions
TW202024898A (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 TW202024898A publication Critical patent/TW202024898A/zh
Application granted granted Critical
Publication of TWI757645B publication Critical patent/TWI757645B/zh

Links

Images

Classifications

    • 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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • 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/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/5621Digital 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 charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4818Threshold devices
    • G06F2207/4824Neural 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/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/048Activation functions
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

本發明提供一種用於記憶體內乘法及累加功能的電路,包括多個NAND區塊。NAND區塊包括NAND串陣列,NAND串陣列包括B個行及S個列以及L個位準的記憶體單元。W個字元線耦接至L個位準中的各別位準中的(B*S個)記憶體單元。源極線耦接至區塊中的(B*S個)NAND串。串選擇線驅動器提供電壓以使多個串選擇線上的NAND串同時連接至對應位元線。字元線驅動器經耦接以將字元線電壓施加於經選位準中的一或多個字元線。多個位元線驅動器同時將輸入資料施加於B個位元線。電流感測電路耦接至源極線。

Description

用於記憶體內乘法及累加運算的電路及其方法
本發明是關於一種用於進行乘積總和運算的電路。
在神經形態計算系統、機器學習系統以及用於基於線性代數的一些計算類型的電路中,乘積總和函數可為重要的部份。函數可表達如下:
Figure 02_image001
在此表達式中,每一乘積項是變量輸入Xi 及權重Wi 的乘積。權重Wi 可在項之間變化,例如對應於變量輸入Xi 的係數。
乘積總和函數可使用交叉點陣列架構實現為電路運算,在所述交叉點陣列架構中陣列單元的電性會影響所述函數。
對於高速實施方案而言,合乎期望的為具有極大陣列以便可並行執行諸多操作,或可進行極大的乘積總和系列。在一些系統中,可能有極大數目的輸入及輸出,因此總電流消耗可能較大。
此外,人工智慧AI(artificial intelligence;AI)函數包括大規模矩陣乘法,此涉及使用多位元權重的乘法及累加MAC步驟(即乘積總和),其需要極緻密的記憶體以及高頻寬資料通信。
AI硬體的最新進展已針對高效能及低功率解決方案。為了滿足此等需求,已提出「記憶體內計算」或「記憶體內處理器」實施方案。此等技術可減少資料移動要求以節省功率及延遲。
因此,期望能提供適於在大陣列中實施乘積總和運算且可為靈活、高容量以及高效能的結構。
基於使用多個NAND區塊的記憶體內運算來描述用於大規模乘積總和運算的乘法及累加技術。本文中所描述的實例中使用的NAND區塊可使用3D NAND快閃技術實施。
本文描述用於將輸入訊號施加於耦接至多個NAND區塊中的NAND區塊的多成員位元線集合的構件,用於將NAND區塊中的NAND串集合連接至位元線集合中的各別位元線的構件,以及用於感測源極線上的從位元線集合通過各別NAND串集合的電流總和的構件。藉由儲存於NAND串上的記憶體單元中的資料來判定NAND串集合的電導(或相反,判定電阻)。
對於本文所描述的實施例而言,多個NAND區塊中的NAND區塊包括多個NAND串,所述多個NAND串安置於多成員位元線集合中的位元線與NAND區塊的源極線之間。 NAND串具有串選擇開關以選擇性地將所述NAND串連接至對應位元線。 NAND串包括多個串聯配置在串選擇開關與接地選擇開關之間的記憶體單元,所述NAND串藉由所述接地選擇開關連接至源極線。字元線耦接至NAND區塊的對應字元線位準中的記憶體單元的閘極。類似地,串選擇線耦接至NAND串的對應列中的串選擇開關的閘極。
對於特定NAND區塊而言,多成員位元線集合可包括B個成員,且所述NAND區塊可包括具有至少S個成員的串選擇線集合。在此組態中,NAND區塊包括B*S個NAND串的陣列,其包括B個行及S個列的NAND串。在計算模式下串選擇驅動器集合可經操作以使一行NAND區塊中的S個NAND串(每一列一個)連接至多成員位元線集合中的每一位元線。以此方式,源極線上的計算模式的電流是B個乘積項的總和,且每一乘積項是多成員位元線集合中的位元線中的一者上的輸入訊號乘以連接至位元線的S個NAND串的電導的函數。
本文描述了一種電路,其包括多個NAND區塊,每一NAND區塊可在計算模式及記憶體模式下操作。匯流排系統連接至所述多個NAND區塊的輸入及輸出,由此可將乘積總和運算的輸入資料施加於NAND區塊,且乘積總和運算的係數可儲存於NAND區塊中。
在計算模式及記憶體模式下使用的輸入及輸出電路可共用,且在一些情況下,可針對不同的模式使用不同的電路。給定NAND區塊的計算模式輸入可包括位元線驅動器集合,以將輸入資料並行地施加於給定NAND區塊的位元線。給定NAND區塊的計算模式輸出可包括多位元感測放大器以感測給定NAND區塊的源極線上的輸出資料。給定NAND區塊的記憶體模式輸入可包括頁緩衝器電路,其可包括用於計算模式的輸入驅動器,或可以是單獨電路。
在技術的其他態樣中,描述了一種適合用於乘法及累加加速器中的NAND區塊的結構。此外,在技術的其他態樣中,積體電路包括多個乘法及累加拼塊,其中每一拼塊包括如上文所描述的多個NAND區塊。
描述了一種記憶體內計算乘積總和的方法,包括: a)將乘積項X(i)*W(i)的係數資料儲存於串選擇線SSL(j)上NAND串C(i)行中在NAND區塊中L(k)位準上的單元中,所述單元耦接至位元線BL(i),其中i為自1至B、j為自1至S且k等於經選字元線位準; b)將輸入X(i)施加於位元線BL(1)至位元線BL(B),且將串選擇電壓施加於串選擇線SSL(1)至串選擇線SSL(S),且將字元線計算電壓施加至經選字元線位準中的單元(同時或以組合方式疊加時間,以偏壓所述單元以進行感測); c)總和流經NAND串的C(1)行至C(B)行的電流,所述NAND串的C(1)行至C(B)行連接至NAND區塊的源極線上的位元線BL(1)至BL(B);以及 d)感測源極線上的電流大小,以產生表示乘積總和的輸出訊號。
如本文所描述來配置的NAND區塊陣列可用管線式(pipeline)操作,其支援高產出率運算,諸如可用於機器學習系統的推斷模式(inference mode)運算。
應用本文中所描述的技術,提供緻密及高效能的乘法及累加加速器。實施例可配置為以每瓦特一兆次操作(tera-operations),即1TOPS/Watt的數量級執行。
在審閱以下圖式、實施方式以及申請專利範圍之後可以看出本發明之其他態樣以及優點。
以下描述將通常參考具體結構實施例及方法。應理解,不存在將技術限制於具體揭露的實施例及方法的意圖,而是可使用其他特徵、元件、方法以及實施例來實踐所述技術。描述較佳實施例以示出本技術,而非限制其範圍,所述範圍由申請專利範圍限定。所屬技術領域具有通常知識者將認識到對以下說明書的各種等效變化。
如本文中所使用,術語「耦接」意謂可操作地耦接。在此意義上耦接的物件不一定是直接連接的,且耦接物件之間可存在中間物件。
圖1是乘積總和運算的圖,其中求和(summation)的項是輸入Xi 乘以權重Wi 的乘積,在此實例中,其中i為從1至7。權重Wi 可在求和的項上有所不同。在操作中,可將權重指定為係數集合,且接著施加輸入以計算隨輸入改變而變化的求和。此外,在執行學習過程的演算法中,當學習過程更改係數以從達成可用結果的求和中學習,可不時更改權重。
在所示出實例中,將求和的輸出應用至sigmoid函數以產生以非線性方式在最小值與最大值之間(諸如0與1之間)變化的輸出。亦可使用其他啟動函數(activation function),諸如羅吉特(logit)函數,或整流函數。乘積總和運算亦可應用於非神經形態的組態,或不用於模擬神經系統的組態。
神經網路包括卷積神經網路(convolutional neural networks)及其他類型的神經網路,通常包括以層(layer)組織的邏輯,其中每一層可接收前一層的輸出作為輸入,其可能受到啟動函數影響),且並行執行數百或數千個乘積總和運算,其輸出應用於隨後的啟動函數或其他邏輯單元。
圖2是包括配置成列及行的垂直NAND串陣列的NAND區塊的示意圖。為方便描述,NAND區塊中的一列是具有共同串選擇線及共同字元線的NAND串集合,且每一NAND串回應於共同串選擇線而耦接至不同的位元線,從而使得NAND串沿共同串選擇線及共同字元線邏輯地配置成一列。為方便描述,NAND區塊中的一行是具有共同位元線的NAND串集合,每一NAND串耦接至不同的串選擇線,從而使得NAND串沿共同位元線邏輯地配置成一行。在實體佈局中,根據所應用的製造方法,行或列可經扭曲,以蜂巢式模式或其他方式配置,以用於高密度或其他原因。在圖中,陣列的第一行中的NAND串200及NAND串201耦接至第一位元線BL(1)及區塊的源極線SL1。此外,陣列的第二行中的NAND串202及NAND串203耦接至第二位元線BL(2)及區塊的源極線SL1。在所示出的實例中,為簡化圖式,繪示兩個位元線。預期給定NAND區塊可耦接至諸多位元線BL(i)(i為從1至B),包括給定實施方案中的數十、數百或數千個位元線,以及NAND串陣列中的NAND串的對應行數。
NAND串陣列中的NAND串中的每一者包括耦接至對應串選擇線SSL(1)及串選擇線SSL(S)的串選擇開關,所述串選擇開關用於使對應NAND串與其位元線連接或斷開。陣列的第一列中的NAND串200及NAND串202耦接至區塊的第一串選擇線SSL(1)。 NAND串201及NAND串203以及陣列的第S個列耦接至第S個串選擇線SSL(S)。在所示出的實例中,為簡化圖式,繪示兩個串選擇線。預期在給定實施方案中,給定NAND區塊可耦接至諸多串選擇線,以及NAND串陣列中的NAND串的對應列數。
NAND串陣列中的NAND串中的每一者包括接地選擇開關,其耦接至區塊的接地選擇線GSL1,所述接地選擇開關用於使NAND串陣列中的對應NAND串連接至區塊的源極線SL1。在一些實施例中,對應NAND串上的接地選擇開關可藉由具有適當解碼電路的單獨接地選擇線來控制,以支援如本文中所描述的記憶體模式及計算模式。
NAND串陣列中的NAND串中的每一者包括串聯配置在串選擇開關與接地選擇開關之間的多個記憶體單元,其耦接至對應字元線。在此實例中,NAND區塊的給定位準中的所有字元線共同耦接至單個字元線導體,或耦接至共同由單個字元線解碼器控制的字元線導體(word line conductor),以便NAND區塊的給定位準中的所有或經選多個記憶體單元列可接收同一字元線訊號。在此實例中,NAND區塊的NAND串是垂直NAND串,其包括耦接至32個字元線WL0至字元線WL31的具32個位準的記憶體單元。
在操作的記憶體模式下,可使用由耦接至區塊的多個位元線的頁緩衝器(未繪示)支援的程式化(program)及抹除操作將資料寫入至單個記憶體單元中。在記憶體模式操作中,通常使用經選串選擇線選擇NAND串陣列中的NAND串列中的一者。在此情況下,NAND串陣列的每一行中的NAND串中的一者耦接至位元線中的一者。頁緩衝器可用於將資料模式程式化為NAND串陣列的經選列中的單個NAND串,所述NAND串在NAND區塊的每一位準下並聯耦接至多個位元線。此外,記憶體模式下的頁緩衝器可用於讀取在NAND區塊的每一位準下儲存於NAND串陣列中的經選列中的記憶體單元中的資料。
在記憶體模式下,可將乘積總和運算的係數儲存至NAND區塊中。 NAND區塊中的NAND單元可使用每單元單位元技術(single-bit-per-cell technology)或每單元多位元技術(multiple-bit-per-cell technology)來實施。在一些實施例中,由於係數以在整個多個NAND串中分佈的方式儲存(如下文所論述),因此每單元單位元技術可為較佳的。在其他實施例中,每單元多位元技術可用於在將係數程式化為NAND區塊時提供更高的精確度。
參考圖1中的圖示,輸入訊號X1及輸入訊號X2可由施加於位元線BL(1)及位元線BL(2)的電壓VBL(1)及電壓VBL2表示。係數W1可由一或多個經選NAND串的電導表示,所述經選NAND串由耦接至第一位元線BL(1)的串選擇開關的對應串選擇線選擇。係數W2可由一或多個經選NAND串的電導表示,所述經選NAND串由耦接至第二位元線BL(2)的串選擇開關的對應串選擇線選擇。
經選NAND串的電導藉由儲存於NAND區塊的經選位準下的記憶體單元中的資料來判定。在圖示中,選擇在字元線WL1的位準下的NAND串。因此,如圖所示,在所有S個串選擇線經驅動以使其對應NAND串連接至第一位元線BL(1)的情況下,乘積項W1*X1的第一係數W1對應於係數值w(1-1):w(1-S)的組合。在所有S個串選擇線經驅動以使其對應NAND串連接至第二位元線BL(2)的情況下,乘積項W2*X2的第二係數W2對應於係數值w(2-1):w(2-S)的組合。
在本文中所描述的操作的計算模式下,因在區塊的源極線SL1上提供NAND區塊的乘積總和運算而產生訊號OUTPUT Y1。在圖2中所示出的實例中,包括NAND串陣列中的兩個位元線及兩行NAND串,以及NAND串陣列中的N個串選擇線及N列NAND串,輸出OUTPUT Y1是藉由電流路徑290來積聚的電流,所述電流路徑290對應於NAND區塊中的NAND串中的電流總和。
如所示出,電流路徑290包括位元線BL(1)上的通過NAND串200至源極線SL1的電流,加上位元線BL(1)上的通過NAND串201至源極線SL1的電流,加上位元線BL2上的通過NAND串202至源極線SL1的電流,加上位元線BL2上的通過NAND串203至源極線SL1的電流。
從電流路徑290積聚的此電流對應於乘積項W1*X1及W2*X2的總和。係數W1是耦接至字元線WL1及位元線BL(1)的記憶體單元行中的資料值w(1-1):(1-S)的函數,且係數W2是耦接至字元線WL2及位元線BL(2)的記憶體單元行中的資料值w(2-1):w(2-S)的函數。使用耦接至給定位元線的記憶體單元的每一行中的S個記憶體單元表示乘積項的係數使得能夠使用高精確度資料(例如,具有多個有效數位)來表示係數。藉由在計算模式運算期間同時控制由串選擇線選擇的列數,且從而控制用於表示係數的記憶體單元的數目,係數的精確度可隨著滿足特定實施方案的需要而變化。因此,對於包括S數目個串選擇線的區塊而言,若輸入資料值由單個位元線上的電壓表示,則可由儲存於從1個至S個的若干記憶體單元中的資料來表示。
在計算模式運算期間,如本文中所描述的NAND區塊中的單個NAND串產生的電流可相對較小。因此,來自NAND區塊的NAND串陣列中的所有NAND串的電流的組合可保持在使用耦接至區塊的源極線SL1的電流感測感測放大器其有效感測的電流值範圍內。
如本文中所描述的NAND區塊可使用3D NAND記憶體技術來實施。在所屬技術領域中已知的各種替代方案中,包括垂直NAND串的NAND區塊的一些實例描述於下述者中:美國專利第9,698,156號由呂(Lue)發佈於2017年7月4日,其標題是垂直薄通道記憶體(VERTICAL THIN CHANNEL MEMORY),及美國專利第9,524,980號由盧發佈於 2016年12月20日,其標題是U形垂直薄通道記憶體(U-SHAPED VERTICAL THIN CHANNEL MEMORY)的;且如本文中充分闡述,此類專利以引用的方式併入。亦可使用2D NAND技術來進行實施,在所述2D NAND技術中NAND區塊在整個多個2D NAND陣列上邏輯地定義。
圖3是示出一個實例的示意圖,其中包括類似圖1的NAND區塊的多個NAND區塊的電路可互連至NAND區塊的單個陣列中,作為出於可用於神經網路的大規模乘積總和計算目的的乘積總和加速器。在圖3中,區塊1以上文相對於圖2所描述的方式實施。同樣,區塊2以同一方式實施。所述區塊共用位元線。因此,位元線BL(1)耦接至區塊1的NAND串陣列中的第一行NAND串,且耦接至區塊2中的NAND串陣列中的第一行NAND串。同樣,位元線BL(2)耦接至區塊1的NAND串陣列中的第二行NAND串,且耦接至區塊2中的NAND串陣列中的第二行NAND串。出於乘積總和計算的目的,NAND區塊可依次操作。因此,可將位元線BL(1)及位元線BL(2)上的輸入X1及輸入X2用於使用區塊1的乘積總和運算,如由串選擇線及接地選擇線啟用。隨後,可將位元線BL(1)及位元線BL(2)上的輸入X1及輸入X2用於使用區塊2的乘積總和運算。字元線可針對每一區塊單獨地操作及解碼。
在所示出的實例中,儲存於區塊1中的係數W1由資料值表示,所述資料值儲存於在區塊的經選位準下的NAND串行中的記憶體單元。因此,在區塊1中,對於在字元線WL1的位準下的經選位準而言,區塊1、位元線BL(1)以及串選擇線SSL(1):SSL(N)中的係數W1對應於資料值w(1-1,1):w(1-N,1)的組合。類似地,對於在字元線WL1的位準下的經選位準而言,區塊1、位元線BL(2)以及串選擇線SSL(1):SSL(N)中的係數W2對應於資料值w(2-1,1):w(2-N,1)的組合。在區塊2中,對於在字元線WL1的位準下的經選位準而言,區塊2、位元線BL(1)以及串選擇線SSL(1):SSL(N)中的係數W1對應於資料值w(1-1,2):w(1-N,2)的組合。類似地,對於在字元線WL1的位準下的經選位準而言,區塊2、位元線BL(2)以及串選擇線SSL(1):SSL(N)中的係數W2對應於資料值w(2-1,2):w(2-N,2)的組合。
圖3中所示出的NAND區塊的模式可沿任何實際數目的NAND區塊的位元線重複,且可沿任何實際數目的NAND區塊的字元線重複。以此方式,出於乘積總和運算的大規模計算的目的,可實施包括大量NAND區塊的電路。
圖4示出可用於如本文中所描述的NAND區塊中的替代性NAND串組態。在圖2及圖3中,NAND串是直式NAND串,其中串選擇閘極耦接至NAND串的頂部處的位元線,且接地選擇閘極耦接至NAND串的底部處的源極線。在圖4中所示出的替代方案中,繪示U形NAND串。使用U形NAND串,可在NAND串的3D區塊之上對源極線及位元線進行佈線。因此,如圖4中所繪示,位元線401由串選擇開關405耦接至U形NAND串的第一側。 U形NAND串的第一側的底部處的輔助閘極403耦接至U形NAND串的第二側。在U形NAND串的第二側的頂部處,接地選擇開關406使NAND串連接至源極線402。位元線及源極線可佈線於積體電路上的不同的圖案化金屬層(layers of patterned metal)上。
圖5是如本文中所描述的經組態為NAND區塊的概念圖示。表示了包括類似圖1中所繪示的垂直NAND串的NAND區塊BLOCK 1。記憶體單元的位準中的NAND區塊的深度對應於字元線位準WL(1:L)的數目L。NAND區塊中的NAND串的行數對應於位元線BL(1:B)的數目B。 NAND區塊中的NAND串的列數對應於串選擇線SSL(1:S)的數目S。
頁緩衝器及輸入驅動器510耦接至多個位元線BL(1:B)。頁緩衝器包括耦接至多個位元線中的位元線的位元線驅動器,及耦接至所述多個位元線中的位元線的感測放大器。在記憶體模式下使用頁緩衝器/輸入驅動器510以保存用於將係數寫入至區塊中的資料。在記憶體模式下,頁緩衝器用於在例如NAND快閃陣列中的程式化及抹除操作期間施加位元線電壓。在計算模式下,輸入驅動器用於施加對應於乘積總和運算的輸入資料的位元線電壓。在一些實施例中,頁緩衝器可在計算模式下用作定義輸入資料值的資料模式的構件。在其他實施例中,輸入資料可使用替代性記憶體路徑及解碼器來施加於輸入驅動器。類似地,在一些實施例中,用於計算模式下的輸入驅動器可包括於用於記憶體模式下的頁緩衝器中的位元線驅動器中。在其他實施例中,記憶體模式的位元線驅動器不同於計算模式的輸入驅動器。
字元線及串選擇線/接地選擇線解碼器512耦接至多個字元線,且耦接至NAND區塊的多個串選擇線及接地選擇線。解碼器512可經操作以選擇所述多個串選擇線中的一者或大於一者,用於使NAND串連接至對應位元線。此外,解碼器512可經操作以藉由驅動在區塊的特定位準下的經選字元線WL(SEL)來選擇記憶體單元的位準。在記憶體模式下,解碼器512通常為頁讀取或頁寫入操作選擇一個串選擇線及一個字元線。在計算模式下,解碼器512選擇包括所有串選擇線的多個串選擇線及一個字元線以供乘積總和運算,以在源極線515上產生對應於陣列中的經選NAND串的電導總和的電流。
源極線515耦接至感測放大器514,其將源極線515上的電流轉換成數位輸出值Y1。感測放大器514可在記憶體模式期間禁用。頁緩衝器/輸入驅動器510及感測放大器514可耦接至資料匯流排系統520,以在NAND區塊當中安排輸入及輸出資料來進行大規模乘積總和運算。定序控制器(未繪示)可用於協調解碼器512、頁緩衝器/輸入驅動器510以及感測放大器514的操作,以進行記憶體模式操作及計算模式操作。
頁緩衝器/輸入驅動器510、解碼器512以及感測放大器514及本文中所描述的各種實施例,包括用於將輸入訊號施加於耦接至多個NAND區塊中的NAND區塊的多個位元線中的多成員位元線集合、用於使NAND區塊中的NAND串集合連接至位元線集合中的各別位元線,以及用於感測從位元線集合通過各別NAND串集合的電流總和的構件。
圖5示出單個NAND區塊。圖6是包括NAND區塊的陣列600的電路拼塊650。在此實例中,NAND區塊的陣列600包括呈8 x 8陣列的64個區塊。字元線及串選擇線解碼器612安置於拼塊中。單個區塊的字元線解碼器及字元線可獨立地控制。此外,單個區塊的串選擇解碼器及串選擇線可實施為單獨的電路,且可獨立地控制。
在一些實施例中,字元線解碼器及字元線,以及串選擇線解碼器及串選擇線可配置在水平通道(lane)中,以便水平通道中的一些或所有NAND區塊共用相同字元線導體及字元線解碼器,以及同一串選擇線及串選擇線解碼器。舉例而言,在此8 x 8陣列中,可存在NAND區塊的8個水平通道。
拼塊的位元線耦接至電路集合,所述電路集合類似用於大規模NAND記憶體裝置中的彼等電路集合。電路集合包括耦接至位元線的高電壓開關622,用於支援位元線上的程式化及抹除操作。此外,電路集合包括用於計算模式期間的邏輯輸入的位元線輸入驅動器621,其經配置以將電壓施加於位元線,所述電壓包括對應於乘積總和運算的輸入值的位元線電壓。電路集合亦包括頁緩衝器620,其用於定義用於程式化操作的資料集合、用於在程式化驗證操作期間儲存資料,且用於讀取操作中以自記憶體陣列傳輸資料。此外,頁緩衝器620可作為邏輯路徑的部分,以選擇在計算模式期間被施加於給定乘積總和運算的所述多個位元線上的電壓位準。
頁緩衝器620、位元線輸入驅動器621以及高電壓開關622可配置在多個垂直通道中,以便垂直通道中的所有NAND區塊共用同一位元線及相關聯電路。在一個實施例中,NAND區塊的陣列600可包括在此實例中耦接至八個NAND區塊的行的8K位元線,其經配置為位元線的八個1K通道。
感測放大器614耦接至NAND區塊的陣列600。可存在例如64個電流感測感測放大器,每一所述電流感測感測放大器耦接至陣列600的多個NAND區塊中的64個NAND區塊中的一者。在其他實施例中,感測放大器614集合可包括針對陣列600的每一水平通道的一個感測放大器。在其他實施例中,感測放大器614集合可包括針對每一垂直通道的一個感測放大器。
如圖6中所示出,攜帶數位輸入輸出資料的資料路徑(X個數位IO)耦接至頁緩衝器620及位元線輸入驅動器621,且可連接至積體電路上的資料匯流排系統或輸入輸出電路,拼塊實施於所述積體電路上。類似地,攜帶來自感測放大器614的數位輸出(Y個n位元輸出)的資料路徑可連接至積體電路上的資料匯流排系統或輸入輸出電路,拼塊實施於所述積體電路上。
圖7示出包括類似圖6中所繪示的拼塊的多個拼塊的實施例。因此,示出積體電路700包括呈3 x 3網格配置的拼塊TILE1至拼塊TILE 9。積體電路700上的拼塊間匯流排系統750耦接至多個乘法及累加加速器拼塊上的資料路徑。定序控制器703經由匯流排系統750耦接至拼塊的網格,用於控制所述多個拼塊當中的資料流,且用於使用命令序列來配置拼塊的操作,例如針對由匯流排系統750發送的記憶體模式操作及計算模式操作。輸入輸出介面705耦接至定序控制器703,其可包括多個輸入介面710,包括例如大容量DDR DRAM介面、大容量串行介面、大容量PCIe介面以及用於將大數量資料移入及移出網格的其他業界標準或自定義介面。
圖8是包括MAC加速器記憶體陣列的積體電路裝置800的另一實施例的簡化晶片方區塊圖。所述MAC加速器記憶體陣列包括(如圖2中所繪示)例如實施於諸如圖6及圖9中所示出的各種實施例中的快閃記憶單元的NAND區塊陣列860。在此實例中的裝置800包括控制器810,所述控制器包括例如用於在記憶體模式下的記憶體操作的狀態機及在如上文所論述的計算模式下的MAC加速器或乘積總和運算。此外,在此實例中的控制器810包括定序器,用於控制裝置800在涉及NAND區塊陣列860的大規模AI功能中的使用,以及裝置內部及外部的資料流運算。
積體電路裝置800包括耦接至陣列860中的對應NAND區塊的源極線集合855,及耦接至陣列860中的對應NAND區塊的位元線集合865。
字元線集合耦接至在NAND區塊的對應位準下的記憶體單元的閘極,字元線集合中的字元線上的訊號選擇記憶體單元的各別位準。字元線驅動器840耦接至字元線集合845。
感測電路集合850耦接至源極線集合中的各別源極線。對於使用陣列的乘積總和運算而言,源極線感測電路850可感測來自記憶體陣列860的源極線855處的電流。在源極線集合中的特定源極線處所感測的電流可表示如上文所論述的乘積總和。來自源極線感測電路850的感測資料經由資料線853供應給輸入輸出電路891。
電路870中的位元線驅動器耦接至頁緩衝器875,且耦接至位元線865。對於使用陣列的乘積總和運算而言,電路870中的位元線驅動器可產生針對每一經選位元線的輸入x(m)。
在匯流排830上從控制邏輯即控制器810至電路870中的頁緩衝器875、位元線驅動器以及字元線驅動器840供應位址。電路870中的頁緩衝器875、位元線驅動器以及源極線感測電路850藉由線853、線885耦接至輸入輸出電路891。
輸入輸出電路891將資料驅動至積體電路裝置800外部的目的地。輸入輸出資料及控制訊號經由資料匯流排805在積體電路裝置800上的輸入輸出電路891、控制邏輯810及輸入輸出埠或積體電路裝置800內部或外部的其他資料源之間移動,所述資料源諸如通用處理器或專用應用電路,或提供由記憶體陣列860支援的系統單晶片(system-on-chip)功能性模組的組合。
在圖8中所繪示的實例中,使用偏壓配置狀態機的控制邏輯810控制經由區塊820中的一或多個電壓供應產生或提供的供電電壓的應用,以供計算模式下的乘積總和運算及記憶體模式下的讀取及寫入(程式化及抹除)操作。
控制邏輯810可使用所屬技術領域中已知的專用邏輯電路來實施。在替代性實施例中,控制邏輯包括可實施於同一積體電路上的通用處理器,所述通用處理器執行電腦程式來控制裝置的操作。在另外其他實施例中,可利用專用邏輯電路與通用處理器的組合來實施控制邏輯。
控制邏輯810亦可實施電路以支援裝置的計算模式下的管線式(pipeline)操作。舉例而言,下表繪示三個區塊的管線操作,所述三個區塊具有由邏輯支援的SRAM以接收及操作區塊的輸出。
次數 3D NAND 電路 邏輯電路(SRAM)
區塊0 區塊1 區塊2
1 感測電流及MAC運算 針對下一MAC預設陣列WL及HV’s 不活動 等待所接收的資料
2. 資料傳輸至邏輯電路 針對下一MAC預設陣列WL及HV’s 不活動 自區塊0接收資料
3 不活動 感測電流及MAC運算 針對下一MAC預設陣列WL及HV’s 針對來自區塊0的訊號的CMOS邏輯操作
4 不活動 資料傳輸至邏輯電路 針對下一個MAC預設陣列WL及HV’s 自區塊1接收資料
5 不活動 不活動 感測電流及MAC運算 針對來自區塊1的訊號的CMOS邏輯操作
6 不活動 不活動 資料傳輸至邏輯電路 自區塊2接收資料
圖9示出包括第一積體電路900的系統的組態,所述第一積體電路包括乘積總和加速器陣列901(或MAC加速器),所述乘積總和加速器陣列(或MAC加速器)藉由線911使用資料路徑控制器903互連至外部匯流排系統910。乘積總和加速器陣列901可使用如上文所論述的NAND區塊陣列或NAND區塊陣列的拼塊陣列來實施。第二積體電路950充當控制器,且包括緩衝器905及邏輯電路906,以與乘積總和加速器陣列901配合使用。第二積體電路950藉由線912耦接至匯流排系統910。第二積體電路950中的緩衝器905可包括SRAM陣列、DRAM陣列、NOR快閃陣列,或可與乘積總和加速器陣列901配合使用的其他類型的記憶體。邏輯電路906可包括用於管理神經網路的操作的定序邏輯。邏輯電路906亦可包括啟動函數邏輯及其他支援裝置的計算模式的邏輯。此外,邏輯電路906可包括形成數位乘積總和運算及支援大規模神經網路的其他運算的大規模處理器。
在一些實施例中,第一積體電路900及第二積體電路950可以堆疊晶片組態、以多晶片模組或以其他緊湊組態來安裝,其中匯流排系統910、匯流排系統911、匯流排系統912中的互連線包括晶片間連接,所述晶片間連接包括例如通過矽穿孔、球柵連接等。
圖10示出在單個積體電路1000上包括乘積總和加速器陣列1001與控制器的替代性實施例。在此實例中,資料路徑控制器1003與乘積總和加速器陣列1001實施於積體電路上。資料路徑1005使資料路徑控制器耦接至緩衝器1006,所述緩衝器繼而耦接至同一積體電路1000上的邏輯電路1008。如圖10中表示,使用可運用資料路徑控制器1003來控制的直接資料路徑,將來自緩衝器1006的資料傳輸至乘積總和加速器陣列1001。
圖11是示出用於使用如本文中所描述的NAND區塊來計算乘積總和的方法的流程圖。圖8的實例中的控制邏輯810可包括支援此方法的狀態機。將圖11的方法應用於單個NAND區塊。方法可擴展至如上文所論述的NAND區塊陣列及拼塊陣列以支援大規模乘法及累加運算。
因此,為了計算B數目個乘積項的乘積總和,方法包括選擇耦接至B個位元線的NAND區塊、S數目個串選擇線以及具有L數目個字元線位準(1100)。為了設定在記憶體模式下操作NAND區塊的計算,方法包括將乘積項W(i)*X(i)的係數資料w(i-j)儲存於耦接至位元線BL(i)的串選擇線SSL(j)上的NAND串的行C(i)的位準L(k)下的記憶體單元集合中,位元線的索引i為自1至B,且SSL線的索引j為自1至S,字元線位準的索引k保持在恆定的經選位準下。使用NAND頁程式化操作,係數資料可儲存於耦接至單個SSL線SSL(i)的NAND串上的記憶體單元中。針對SSL線SSL(1)至SSL線SSL(S)的集合中的SSL線中的每一者重複NAND頁程式化操作(1101)。
以此方式,係數W(i)由S數目個資料值(w(i-j)的j為自1至S)表示,所述資料值儲存於耦接至串選擇線SSL(1)至串選擇線(S)上的串選擇開關的NAND串的行C(i)中的字元線位準k下的記憶體單元集合中。
大體而言,數目S可等於串選擇線的實體數目。在一些實施例中,用於儲存特定係數的數目S可以是自1直至串選擇線的最大實體數目的任何數目。類似地,位元線的數目B對應於NAND區塊中要求和的乘積項的數目。數目B可等於耦接至區塊的位元線的最大實體數目,或等於針對特定數目的乘積項所選的位元線的數目。
一旦將資料儲存,則裝置可進入計算模式。在計算模式下,將由位元線電壓VBLi表示的輸入X(i)並行施加於位元線BL(i)(i為自1至B),且可同時施加於位元線。此外,將串選擇線選擇電壓(其設定為接通使位元線連接至對應NAND串的串選擇開關)同時並行施加於所有串選擇線SSL(j),j為自1至S。此外,將字元線電壓施加於對應於所計算的特定乘積項的字元線位準k中的一或多個字元線(1102)。
此具有以下效果:使S數目個NAND串並聯連接至位元線BL(i)中的每一者,且將計算位準字元線電壓施加於經選字元線位準k下的一或多個字元線。同時,將接地選擇線設定為選擇電壓位準以接通使NAND串連接至源極線的接地選擇開關。在經選字元線位準下的單元中的資料值具有根據儲存的係數來設定NAND串的電導的效果。
此外,在計算模式下,將通過NAND串的C(1)行至C(B)行中的S數目個NAND串的電流總和於NAND區塊的源極線上(1103),所述NAND串的C(1)行至C(B)行連接至位元線BL(1)至位元線BL(B)。
因此,源極線上的電流對應於所計算的B個乘積項的總和。
最後,在計算模式下,藉由感測源極線上的電流大小來產生乘積總和輸出(1104)。此輸出可以是多位元數位輸出,所述多位元數位輸出根據所執行的計算順序安排發送至匯流排系統。
流程圖示出如本文中所描述的由記憶體控制器或由記憶體裝置來執行的邏輯。邏輯可使用儲存於電腦系統可訪問記憶體內的電腦程式來程式化的處理器來實施,且可由處理器、由專用邏輯硬體(包括場可程式化積體電路)且由專用邏輯硬體與電腦程式的組合執行。應瞭解,步驟中的多者可組合、並行地進行或以不同順序進行,而不會影響所達成功能。在一些情況下,如讀者將瞭解,只要亦進行某些其他改變,重新配置步驟亦將達成同一結果。在其他情況下,如讀者將瞭解,只要符合某些條件,重新配置步驟亦將達成同一結果。此外,將瞭解,流程圖僅繪示相關於理解本技術的步驟,且將理解,可在所繪示的彼等步驟之前、之後以及之間進行用於實施其他功能的眾多額外步驟。
大體而言,已描述一種高效能、低功率的乘法及累加加速器電路。加速器電路的實施可包括3D NAND快閃區塊,其經配置以用於乘積總和運算的大容量計算。利用本文中所描述的結構,乘積總和計算所需的電流大小可為極小的且可以被嚴格控制。在本文中所描述的實施例中,可同時操作數千及數萬個單元以支援高產出率、低功率的乘積總和運算。
在本文中所描述的實例中,每一區塊具有單獨的源極線,其可同時自多個位元線及串選擇線上的諸多NAND串收集電流。源極線上的電流可耦接至電流感測感測放大器,所述電流感測感測放大器具有寬動態範圍(其中每區塊的平均電流從平均10µA至100µA變化),具有多位元感測(例如,2位元、3位元、4位元)。每串的電流可藉由設定適當的臨限電壓及將電壓驅動為儘可能小(諸如在每串小於50奈安範圍內)來微調,使得能夠在單個感測放大器中並行感測1000個至10,000個串。舉例而言,字元線可靠近程式化驗證與快閃記憶體單元的抹除狀態之間的中間值而偏壓,且位元線電壓可減小至0.3伏以下以使每串的電流較小。
用於並行輸入至NAND區塊的位元線及用於儲存係數的串選擇線的數目可按特定實施方案的需要來設定。此外,用於給定計算的位元線及串選擇線的數目可在操作的每一循環中邏輯地判定。
由於使用多個串選擇線,且從而使用串聯耦接至單個位元線的多個NAND串,故每一乘積項的係數或權重可分佈至NAND區塊中的多個記憶體單元中。此實現係數的高解析度,或有效地類比權重值,因為可使用NAND快閃程式化操作將單元中的每一者單獨微調至高準確度。因此,計算的可靠性可為極高的。
儘管參考上文詳述的較佳實施例及實例來揭露本發明,但應理解,此等實例意欲是示出性而非限制性意義。預期所屬技術領域中具有通常知識者將容易地想到各種修改及組合,所述修改及組合將在本發明的精神及以下申請專利範圍的範圍內。
200、201、202、203:NAND串 290:電流路徑 401:位元線 402、515、855、1104、SL、SL1、SL2:源極線 403:輔助閘極 405:串選擇開關 406:接地選擇開關 510:頁緩衝器及輸入驅動器 512:字元線及串選擇線/接地選擇線解碼器 514、614:感測放大器 520:資料匯流排系統 600:陣列 612:字元線及串選擇線解碼器 620:頁緩衝器 621:位元線輸入驅動器 622:高電壓開關 650:電路拼塊 700:積體電路 703:定序控制器 705:輸入/輸出介面 710:輸入介面 750:拼塊間匯流排系統 800:積體電路裝置 805:資料匯流排 810:控制器 820、BLOCK 1、BLOCK 2:區塊 830:匯流排 840:字元線驅動器 845:字元線集合 850:感測電路 853:資料線 860:陣列 865、BL、BL(1)、BL(2):位元線 870:電路 875:頁緩衝器 885:線 891:輸入輸出電路 900:第一積體電路 901、1001:乘積總和加速器陣列 903、1003:資料路徑控制器 905、1006:緩衝器 906:邏輯電路 910、911、912:匯流排系統 950:第二積體電路 1000:積體電路 1005、X digital IO:資料路徑 1008:邏輯電路 1100、1101、1102、1103、1104:步驟 GSL、GSL1:接地選擇線 OUTPUT Y1、OUTPUT Y2:輸出 SSL(1)、SSL(N)、SSL(S):串選擇線 WL、WL0、WL1(SEL)、WL30、W31:字元線 X1、X2、X3、X4、X5、X6、X7:輸入訊號 Y1:數位輸出值
圖1是乘積總和運算的圖。 圖2是如本文中所描述的配置為用於記憶體模式及用於計算模式的NAND區塊的電路圖。 圖3是示出類似圖2的多個NAND區塊的電路圖。 圖4示出適用於如本文中所描述的NAND區塊的替代性NAND串實施方案。 圖5是如本文中所描述的NAND區塊的簡化圖示。 圖6示出包括具有記憶體模式及計算模式的多個NAND區塊的積體電路。 圖7示出包括多個拼塊的大規模積體電路,每一拼塊包括如本文中所描述的NAND區塊陣列。 圖8是包括NAND區塊陣列MAC加速器的積體電路的簡化方區塊圖。 圖9是包括可包括如本文中所描述的NAND區塊陣列的乘積總和加速器陣列的系統配置圖示。 圖10是包括可包括如本文中所描述的NAND區塊陣列的乘積總和加速器陣列的系統的替代性組態的圖示。 圖11是如本文中所描述的用於記憶體內乘法及累加運算的方法的流程圖。
200、201、202、203:NAND串
290:電流路徑
GSL1:接地選擇線
OUTPUT Y1:輸出
SL1:源極線
SSL(1)、SSL(S):串選擇線
WL0、WL1(SEL)、WL30、W31:字元線

Claims (20)

  1. 一種用於記憶體內乘法與累加運算的電路,包括:多個NAND區塊,每個NAND區塊具有對應的源極線,所述多個NAND區塊中的特定NAND區塊包括配置於多成員位元線集合與所述特定NAND區塊對應的所述源極線之間的NAND串,其中所述每個NAND區塊包括多個行與多個列的NAND串;輸入電路,用以將輸入訊號施加於耦接至所述多個NAND區塊的所述多成員位元線集合;以及感測電路,耦接至所述NAND區塊中所述多個行與多個列的NAND串共用的所述源極線,所述感測電路感測從所述多成員位元線集合通過所述經選NAND區塊中的所述多個行與多個列的NAND串到經選NAND區塊中的所述源極線上的所述多個行與多個列的NAND串的電流總和。
  2. 如申請專利範圍第1項所述的電路,包括耦接至所述多個NAND區塊的多個位元線,所述多個NAND區塊包括所述多成員位元線集合,且其中所述輸入電路包括耦接至所述多個位元線中的位元線的頁緩衝器。
  3. 如申請專利範圍第2項所述的電路,包括用於對耦接至所述多個位元線中的各別位元線的NAND串進行程式化(program)的構件。
  4. 如申請專利範圍第1項所述的電路,其中所述多個NAND區塊中的NAND區塊包括:多個NAND串,位於所述多成員位元線集合與所述源極線之間,所述NAND串具有串選擇開關以選擇性地使所述NAND串連 接至所述多成員位元線集合中的對應位元線,且多個記憶體單元串聯配置,其中所述多成員位元線集合中的位元線耦接至所述多個NAND串中的各NAND串集合;字元線,耦接至所述NAND區塊的對應字元線位準中的記憶體單元的閘極;以及串選擇線,耦接至所述多個NAND串中NAND串對應列中的串選擇開關的閘極。
  5. 如申請專利範圍第4項所述的電路,對於所述NAND區塊而言,所述多成員位元線集合包括B個成員,且所述NAND區塊包括具有至少S個成員的串選擇線集合,其中串選擇驅動器可經操作以使NAND區塊的行中的S個NAND串連接至所述多成員位元線集合中的每一位元線,使得所述NAND區塊的所述源極線上的電流是B個乘積項的總和,其中每一乘積項是所述多成員位元線集合中的所述位元線中的一者上的輸入訊號乘以連接至所述一個位元線的S個NAND串的電導的函數。
  6. 如申請專利範圍第1項所述的電路,其中輸入電路包括位元線驅動器集合以將輸入資料並行地施加於給定NAND區塊的位元線,且所述感測電路包括多位元感測放大器以感測對應的所述源極線上的輸出資料。
  7. 如申請專利範圍第1項所述的電路,其中所述多個NAND區塊中的每一NAND區塊具有計算模式輸入及輸出,且各自具有記憶體模式輸入及輸出;且包括:匯流排系統,連接至所述計算模式輸入及輸出,且連接至所述多個NAND區塊的所述記憶體模式輸入及輸出。
  8. 如申請專利範圍第7項所述的電路,其中所述多個NAND區塊中的給定NAND區塊的所述記憶體模式輸入包括用以經由所述給定NAND區塊的位元線來讀取及寫入資料的頁緩衝器電路。
  9. 如申請專利範圍第1項所述的電路,其中所述多個NAND區塊中的區塊各自包括B*S個NAND串,所述B*S個NAND串包括B個行及S個列以及L個位準的記憶體單元,其中B、S以及L是整數,所述NAND串包括在所述L個位準中的各別位準中串聯的L個記憶體單元;所述B個行中的各別行中的S個NAND串的集合,耦接至B個位元線的集合中的對應位元線;所述S個列中的各別列中的B個NAND串的集合中的串選擇開關,耦接至S個串選擇線的集合中的對應串選擇線;所述L個位準中的各別位準中的B*S個記憶體單元的集合,可操作地耦接至所述L個位準中的對應一或多個字元線;以及所述源極線,可操作地耦接至所述區塊中的所述B*S個NAND串。
  10. 如申請專利範圍第1項所述的電路,包括控制器,所述控制器以管線式(pipeline)操作所述多個NAND區塊。
  11. 一種用於記憶體內乘法與累加運算的電路,包括:NAND區塊,包括B個行及S個列以及L個位準的記憶體單元,其中B、S以及L是整數,所述NAND串包括在所述L個位準中的各別位準中串聯的L個記憶體單元,其中所述NAND區塊包括多個行與多個列的NAND串; B個位元線,耦接至所述B個行中的各別行中的S個NAND串;S個串選擇線,耦接至所述S個列中的各別列中的B個NAND串;W個字元線,可操作地耦接至所述L個位準中的各別位準中的B*S個記憶體單元;源極線,可操作地耦接至所述區塊中的所述NAND串;串選擇線驅動器,耦接至所述S個串選擇線以供應串選擇電壓,以使多個串選擇線上的NAND串同時連接至對應位元線;字元線驅動器,耦接以將字元線電壓施加於經選位準中的一或多個字元線;多個位元線驅動器,耦接至所述B個位元線中的位元線以將輸入資料訊號施加於多個所述B個位元線;以及電流感測電路,耦接至所述NAND區塊中所述多個行與多個列的NAND串共用的所述源極線,所述電流感測電路感測從所述NAND區塊中所述多個行與多個列的NAND串流到所述源極線的所述多個行與多個列的NAND串的電流總和。
  12. 如申請專利範圍第11項所述的電路,包括頁緩衝器,所述頁緩衝器可操作地耦接至所述B個位元線中的位元線來施加輸入資料訊號,以在程式化模式下對所述區塊中的所述NAND串進行程式化。
  13. 一種用於記憶體內乘法與累加運算的方法,包括:將乘積項X(i)*W(i)的係數資料w(i,j)儲存於串選擇線SSL(j)上NAND串C(i)行中在NAND區塊中L(k)位準上 的單元,所述單元耦接至位元線BL(i),其中i為從1至B,j為從1至S且k等於經選字元線位準,其中所述NAND區塊包括多個行與多個列的NAND串;同時將輸入X(i)施加於位元線BL(1)至位元線BL(B),且將串選擇電壓施加於串選擇線SSL(1)至串選擇線SSL(S),且將字元線計算電壓施加於所述經選字元線位準中的單元;總和通過NAND串的C(1)行至C(B)行的電流,所述NAND串的C(1)行至C(B)行連接至所述NAND區塊的源極線上的位元線BL(1)至位元線BL(B);以及感測所述NAND區塊中所述多個行與多個列的NAND串共用的所述源極線上的所述多個行與多個列的NAND串的電流總和以產生表示乘積總和的輸出訊號。
  14. 一種用於記憶體內乘法與累加運算的電路,包括:多個乘法及累加加速器拼塊(tile),位於積體電路中,每一拼塊包括:多個NAND區塊,各自具有輸入及輸出,其中每個NAND區塊包括多個行與多個列的NAND串;多個源極線,分別耦接至對應的所述NAND區塊中的所述多個行與多個列的NAND串,其中所述NAND區塊中的所述多個行與多個列的NAND串共用的所述源極線上的所述多個行與多個列的NAND串的電流總和被所述拼塊所感測;以及資料路徑,連接至所述輸入及所述輸出;拼塊間匯流排系統,位於所述積體電路上,所述拼塊間匯流排系統耦接至所述多個乘法及累加加速器拼塊的所述資料路徑; 以及輸入輸出電路,位於所述積體電路上,所述輸入輸出電路耦接至所述拼塊間匯流排系統。
  15. 如申請專利範圍第14項所述的電路,包括用以控制所述多個拼塊之間的資料流的定序器邏輯。
  16. 如申請專利範圍第14項所述的電路,每一拼塊包括:多個位元線,耦接至所述多個NAND區塊;以及輸入驅動器,耦接至所述多個位元線中的位元線,感測放大器,耦接至所述多個源極線中的源極線;以及頁緩衝器,耦接至所述多個位元線中的位元線。
  17. 如申請專利範圍第14項所述的電路,每一拼塊包括:多個位元線,耦接至所述多個NAND區塊,其中所述多個位元線中的多成員位元線集合耦接至所述多個NAND區塊中的每一NAND區塊;以及所述多個NAND區塊中的NAND區塊,包括:所述多個NAND串,位於所述多成員位元線集合與所述源極線之間,所述NAND串具有串選擇單元以選擇性地使所述NAND串連接至所述多個NAND串的多成員位元線集合中的對應位元線,且多個記憶體單元串聯配置,其中所述多成員位元線集合中的位元線耦接至所述多個NAND串中各別NAND串的集合;字元線,耦接至所述NAND區塊的對應字元線位準中記憶體單元的閘極;以及串選擇線,耦接至所述多個NAND串中NAND串對應列中串選擇單元的閘極。
  18. 如申請專利範圍第17項所述的電路,其中對於所述NAND區塊而言,所述多成員位元線集合包括B個成員,且所述NAND區塊包括具有至少S個成員的串選擇線集合,且其中串選擇驅動器可經操作以使NAND區塊的行中的S個NAND串連接至所述多成員位元線集合中的每一位元線,使得所述源極線上的電流是B個乘積的總和,其中每一乘積是所述多成員位元線集合中的所述位元線中的一者上的輸入訊號乘以連接至所述位元線中的一者的S個NAND串的電導的函數。
  19. 如申請專利範圍第14項所述的電路,其中每一拼塊中的所述多個NAND區塊中的給定NAND區塊的所述輸入包括位元線驅動器集合,以將輸入資料並行地施加於所述給定NAND區塊的位元線,且所述多個NAND區塊中的所述給定NAND區塊的所述輸出包括多位元感測放大器以感測所述給定NAND區塊的所述源極線上的輸出資料。
  20. 如申請專利範圍第14項所述的電路,其中對於每一拼塊而言,所述多個NAND區塊中的區塊各自包括B*S個NAND串,所述B*S個NAND串包括B個行及S個列以及L個位準的記憶體單元,其中B、S以及L是整數,所述NAND串包括在所述L個位準中的各別位準中串聯的L個記憶體單元;所述B個行中的各別行中的S個NAND串的集合,耦接至B個位元線的集合中的對應位元線;所述S個列中的各別列中的B個NAND串的集合中的串選擇開關,耦接至S個串選擇線的集合中的對應串選擇線;所述L個位準中的各別位準中的B*S個記憶體單元的集合, 可操作地耦接至所述L個位準中的對應一或多個字元線;以及源極線,以操作方式耦接至所述區塊中的所述B*S個NAND串。
TW108136445A 2018-12-18 2019-10-08 用於記憶體內乘法及累加運算的電路及其方法 TWI757645B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862780938P 2018-12-18 2018-12-18
US62/780,938 2018-12-18
US201962791037P 2019-01-11 2019-01-11
US62/791,037 2019-01-11
US16/508,189 2019-07-10
US16/508,189 US11934480B2 (en) 2018-12-18 2019-07-10 NAND block architecture for in-memory multiply-and-accumulate operations

Publications (2)

Publication Number Publication Date
TW202024898A TW202024898A (zh) 2020-07-01
TWI757645B true TWI757645B (zh) 2022-03-11

Family

ID=67742216

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108136445A TWI757645B (zh) 2018-12-18 2019-10-08 用於記憶體內乘法及累加運算的電路及其方法

Country Status (6)

Country Link
US (1) US11934480B2 (zh)
EP (1) EP3671433A1 (zh)
JP (1) JP7041654B2 (zh)
KR (1) KR20200076571A (zh)
CN (1) CN111338601B (zh)
TW (1) TWI757645B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112151095A (zh) * 2019-06-26 2020-12-29 北京知存科技有限公司 存算一体芯片、存储单元阵列结构
US11049586B2 (en) * 2019-11-26 2021-06-29 Mythic, Inc. Systems and methods for implementing redundancy for tile-based intelligence processing computing architecture
US11586900B2 (en) 2020-04-20 2023-02-21 Macronix International Co., Ltd. Training algorithm in artificial neural network (ANN) incorporating non-ideal memory device behavior
US11189339B1 (en) * 2020-05-29 2021-11-30 Macronix International Co., Ltd. Performing in-memory computing based on multiply-accumulate operations using non-volatile memory arrays
US11604645B2 (en) * 2020-07-22 2023-03-14 Flex Logix Technologies, Inc. MAC processing pipelines having programmable granularity, and methods of operating same
US11309028B2 (en) * 2020-09-03 2022-04-19 Macronix International Co., Ltd. Inference operation method and controlling circuit of 3D NAND artificial intelligence accelerator
CN112153139B (zh) * 2020-09-23 2022-06-14 成都市深思创芯科技有限公司 基于传感器网络和存内计算神经网络的控制系统及方法
WO2022165350A2 (en) * 2021-01-31 2022-08-04 Redpine Signals Inc Architecture for multiplier accumulator using unit elements for multiplication, bias, accumulation, and analog to digital conversion over a shared charge transfer bus
US11476866B2 (en) 2021-02-01 2022-10-18 Ceremorphic, Inc. Successive approximation register using switched unit elements
US11469770B2 (en) 2021-01-31 2022-10-11 Ceremorphic, Inc. Architecture for multiplier accumulator using unit elements for multiplication, bias, accumulation, and analog to digital conversion over a shared charge transfer bus
US11567730B2 (en) 2021-01-31 2023-01-31 Ceremorphic, Inc. Layout structure for shared analog bus in unit element multiplier
TWI788128B (zh) * 2021-04-16 2022-12-21 旺宏電子股份有限公司 記憶體裝置及其操作方法
US11996137B2 (en) * 2021-05-21 2024-05-28 Taiwan Semiconductor Manufacturing Company, Ltd. Compute in memory (CIM) memory array
WO2022256293A1 (en) * 2021-05-31 2022-12-08 Ceremorphic, Inc Architecture for analog multiplier-accumulator with binary weighted charge transfer capacitors
US11687738B2 (en) 2021-05-31 2023-06-27 Ceremorphic, Inc. Chopper stabilized bias unit element with binary weighted charge transfer capacitors
US20230022516A1 (en) * 2021-07-23 2023-01-26 Taiwan Semiconductor Manufacturing Company, Ltd. Compute-in-memory systems and methods with configurable input and summing units
KR20230023430A (ko) 2021-08-10 2023-02-17 백은지 블루투스 연동 장치가 포함된 손목시계
US11694733B2 (en) 2021-08-19 2023-07-04 Apple Inc. Acceleration of in-memory-compute arrays
US11789646B2 (en) * 2021-09-24 2023-10-17 Intel Corporation Methods, apparatus, and articles of manufacture to increase data reuse for multiply and accumulate (MAC) operations

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787087B2 (en) * 2011-09-20 2014-07-22 Kabushiki Kaisha Toshiba Semiconductor memory device controlling operation timing of the sense circuit
US9430735B1 (en) * 2012-02-23 2016-08-30 Micron Technology, Inc. Neural network in a memory device
US10073733B1 (en) * 2017-09-01 2018-09-11 Purdue Research Foundation System and method for in-memory computing
US10115457B2 (en) * 2014-10-03 2018-10-30 Micron Technology, Inc. Threshold voltage distribution determination by sensing common source line currents
WO2018201060A1 (en) * 2017-04-27 2018-11-01 The Regents Of The University Of California Mixed signal neuromorphic computing with nonvolatile memory devices

Family Cites Families (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2619663C3 (de) 1976-05-04 1982-07-22 Siemens AG, 1000 Berlin und 8000 München Feldeffekttransistor, Verfahren zu seinem Betrieb und Verwendung als schneller Schalter sowie in einer integrierten Schaltung
US4987090A (en) 1987-07-02 1991-01-22 Integrated Device Technology, Inc. Static ram cell with trench pull-down transistors and buried-layer ground plate
US5029130A (en) 1990-01-22 1991-07-02 Silicon Storage Technology, Inc. Single transistor non-valatile electrically alterable semiconductor memory device
JPH0451382A (ja) 1990-06-20 1992-02-19 Hitachi Ltd 情報処理装置
JP3073645B2 (ja) 1993-12-27 2000-08-07 株式会社東芝 不揮発性半導体記憶装置およびその動作方法
US7089218B1 (en) 2004-01-06 2006-08-08 Neuric Technologies, Llc Method for inclusion of psychological temperament in an electronic emulation of the human brain
US6107882A (en) 1997-12-11 2000-08-22 Lucent Technologies Inc. Amplifier having improved common mode voltage range
US6960499B2 (en) 1998-02-24 2005-11-01 Texas Instruments Incorporated Dual-counterdoped channel field effect transistor and method
US6313486B1 (en) 2000-06-15 2001-11-06 Board Of Regents, The University Of Texas System Floating gate transistor having buried strained silicon germanium channel layer
US6829598B2 (en) 2000-10-02 2004-12-07 Texas Instruments Incorporated Method and apparatus for modeling a neural synapse function by utilizing a single conventional MOSFET
US6703661B2 (en) 2001-12-27 2004-03-09 Ching-Yuan Wu Contactless NOR-type memory array and its fabrication methods
US6856542B2 (en) * 2002-06-04 2005-02-15 Stmicroelectronics, Inc. Programmable logic device circuit and method of fabricating same
JP4620943B2 (ja) 2003-10-16 2011-01-26 キヤノン株式会社 積和演算回路及びその方法
US6937523B2 (en) * 2003-10-27 2005-08-30 Tower Semiconductor Ltd. Neighbor effect cancellation in memory array architecture
US7057216B2 (en) 2003-10-31 2006-06-06 International Business Machines Corporation High mobility heterojunction complementary field effect transistors and methods thereof
US6906940B1 (en) 2004-02-12 2005-06-14 Macronix International Co., Ltd. Plane decoding method and device for three dimensional memories
US20050287793A1 (en) 2004-06-29 2005-12-29 Micron Technology, Inc. Diffusion barrier process for routing polysilicon contacts to a metallization layer
JP2006127623A (ja) 2004-10-28 2006-05-18 Sony Corp 半導体記憶装置とそのアクセス方法
US7400533B2 (en) 2006-05-04 2008-07-15 Micron Technology, Inc. Mimicking program verify drain resistance in a memory device
US7688635B2 (en) * 2006-07-14 2010-03-30 Micron Technology, Inc. Current sensing for Flash
US7372753B1 (en) 2006-10-19 2008-05-13 Unity Semiconductor Corporation Two-cycle sensing in a two-terminal memory array having leakage current
US8058636B2 (en) 2007-03-29 2011-11-15 Panasonic Corporation Variable resistance nonvolatile memory apparatus
JP2009080892A (ja) 2007-09-26 2009-04-16 Toshiba Corp 半導体記憶装置
KR20090037690A (ko) 2007-10-12 2009-04-16 삼성전자주식회사 비휘발성 메모리 소자, 그 동작 방법 및 그 제조 방법
US8000151B2 (en) 2008-01-10 2011-08-16 Micron Technology, Inc. Semiconductor memory column decoder device and method
JP5275052B2 (ja) * 2009-01-08 2013-08-28 株式会社東芝 不揮発性半導体記憶装置
US8860124B2 (en) 2009-01-15 2014-10-14 Macronix International Co., Ltd. Depletion-mode charge-trapping flash device
JP5462490B2 (ja) 2009-01-19 2014-04-02 株式会社日立製作所 半導体記憶装置
JP5317742B2 (ja) 2009-02-06 2013-10-16 株式会社東芝 半導体装置
US8203187B2 (en) 2009-03-03 2012-06-19 Macronix International Co., Ltd. 3D memory array arranged for FN tunneling program and erase
TWI433153B (zh) 2009-08-17 2014-04-01 Ind Tech Res Inst 記憶體單元之讀取方法
US9099181B2 (en) 2009-08-19 2015-08-04 Grandis, Inc. Non-volatile static ram cell circuit and timing method
JP2011065693A (ja) 2009-09-16 2011-03-31 Toshiba Corp 不揮発性半導体記憶装置
US8275728B2 (en) 2009-11-05 2012-09-25 The United States Of America As Represented By The Secretary Of The Air Force Neuromorphic computer
US8311965B2 (en) 2009-11-18 2012-11-13 International Business Machines Corporation Area efficient neuromorphic circuits using field effect transistors (FET) and variable resistance material
TWI427636B (zh) 2009-11-27 2014-02-21 Macronix Int Co Ltd 於一記憶積體電路上進行抹除操作之方法與裝置
SG10201700467UA (en) 2010-02-07 2017-02-27 Zeno Semiconductor Inc Semiconductor memory device having electrically floating body transistor, and having both volatile and non-volatile functionality and method
KR101658479B1 (ko) 2010-02-09 2016-09-21 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8331127B2 (en) 2010-05-24 2012-12-11 Macronix International Co., Ltd. Nonvolatile memory device having a transistor connected in parallel with a resistance switching device
US20110297912A1 (en) 2010-06-08 2011-12-08 George Samachisa Non-Volatile Memory Having 3d Array of Read/Write Elements with Vertical Bit Lines and Laterally Aligned Active Elements and Methods Thereof
US8890233B2 (en) 2010-07-06 2014-11-18 Macronix International Co., Ltd. 3D memory array with improved SSL and BL contact layout
US9342780B2 (en) 2010-07-30 2016-05-17 Hewlett Packard Enterprise Development Lp Systems and methods for modeling binary synapses
US20120044742A1 (en) 2010-08-20 2012-02-23 Micron Technology, Inc. Variable resistance memory array architecture
US8432719B2 (en) 2011-01-18 2013-04-30 Macronix International Co., Ltd. Three-dimensional stacked and-type flash memory structure and methods of manufacturing and operating the same hydride
US8630114B2 (en) 2011-01-19 2014-01-14 Macronix International Co., Ltd. Memory architecture of 3D NOR array
US8759895B2 (en) 2011-02-25 2014-06-24 Micron Technology, Inc. Semiconductor charge storage apparatus and methods
JP5722180B2 (ja) 2011-09-26 2015-05-20 株式会社日立製作所 不揮発性記憶装置
US9698185B2 (en) 2011-10-13 2017-07-04 Omnivision Technologies, Inc. Partial buried channel transfer device for image sensors
JP5998521B2 (ja) 2012-02-28 2016-09-28 セイコーエプソン株式会社 不揮発性半導体メモリー及び不揮発性半導体メモリーの製造方法
US8981445B2 (en) 2012-02-28 2015-03-17 Texas Instruments Incorporated Analog floating-gate memory with N-channel and P-channel MOS transistors
US8730724B2 (en) * 2012-08-07 2014-05-20 Sandisk Technologies Inc. Common line current for program level determination in flash memory
JP2014053056A (ja) 2012-09-06 2014-03-20 Toshiba Corp 半導体記憶装置
US9747230B2 (en) 2012-10-15 2017-08-29 Rambus Inc. Memory rank and ODT configuration in a memory system
US9019771B2 (en) 2012-10-26 2015-04-28 Macronix International Co., Ltd. Dielectric charge trapping memory cells with redundancy
US20140149773A1 (en) 2012-11-29 2014-05-29 Agency For Science, Technology And Research Latch circuit and data processing system
KR20140113024A (ko) 2013-03-15 2014-09-24 에스케이하이닉스 주식회사 저항 변화 메모리 장치 및 그 구동방법
KR102179899B1 (ko) 2013-08-05 2020-11-18 삼성전자주식회사 뉴로모픽 시스템 및 그 구현 방법
US9502133B2 (en) 2013-10-11 2016-11-22 Sharp Kabushiki Kaisha Semiconductor device
KR102139944B1 (ko) 2013-11-26 2020-08-03 삼성전자주식회사 3차원 반도체 메모리 장치
KR20150070819A (ko) 2013-12-17 2015-06-25 에스케이하이닉스 주식회사 반도체 메모리 소자 및 그 제조방법
US9535831B2 (en) 2014-01-10 2017-01-03 Advanced Micro Devices, Inc. Page migration in a 3D stacked hybrid memory
CN103778468B (zh) 2014-01-16 2016-09-07 北京大学 一种基于rram的新型神经网络电路
US9698156B2 (en) 2015-03-03 2017-07-04 Macronix International Co., Ltd. Vertical thin-channel memory
US9147468B1 (en) 2014-05-21 2015-09-29 Macronix International Co., Ltd. Multiple-bit-per-cell, independent double gate, vertical channel memory
US9391084B2 (en) 2014-06-19 2016-07-12 Macronix International Co., Ltd. Bandgap-engineered memory with multiple charge trapping layers storing charge
US9536969B2 (en) 2014-09-23 2017-01-03 Taiwan Semiconductor Manufacturing Co., Ltd. Self-aligned split gate flash memory
SG11201702791TA (en) 2014-10-15 2017-05-30 Agency Science Tech & Res Flip-flop circuit, method of controlling a flip-flop circuit and memory device
US9460792B2 (en) 2014-10-20 2016-10-04 Micron Technology, Inc. Apparatuses and methods for segmented SGS lines
US9431099B2 (en) 2014-11-11 2016-08-30 Snu R&Db Foundation Neuromorphic device with excitatory and inhibitory functionalities
US9356074B1 (en) 2014-11-17 2016-05-31 Sandisk Technologies Inc. Memory array having divided apart bit lines and partially divided bit line selector switches
KR20160073847A (ko) 2014-12-17 2016-06-27 에스케이하이닉스 주식회사 전자 장치 및 그 제조 방법
US10403363B2 (en) 2015-02-11 2019-09-03 Samsung Electronics Co., Ltd. Nonvolatile memory and storage device including nonvolatile memory
KR102396422B1 (ko) 2015-02-11 2022-05-11 삼성전자주식회사 불휘발성 메모리 및 불휘발성 메모리를 포함하는 스토리지 장치
US9524980B2 (en) 2015-03-03 2016-12-20 Macronix International Co., Ltd. U-shaped vertical thin-channel memory
US9379129B1 (en) 2015-04-13 2016-06-28 Macronix International Co., Ltd. Assist gate structures for three-dimensional (3D) vertical gate array memory structure
KR20160122531A (ko) 2015-04-14 2016-10-24 에스케이하이닉스 주식회사 전자 장치
TWI580087B (zh) 2015-04-28 2017-04-21 旺宏電子股份有限公司 記憶裝置及其製造方法
US10074661B2 (en) 2015-05-08 2018-09-11 Sandisk Technologies Llc Three-dimensional junction memory device and method reading thereof using hole current detection
US9934463B2 (en) 2015-05-15 2018-04-03 Arizona Board Of Regents On Behalf Of Arizona State University Neuromorphic computational system(s) using resistive synaptic devices
US9805303B2 (en) 2015-05-21 2017-10-31 Google Inc. Rotating data for neural network computations
US10049322B2 (en) 2015-05-21 2018-08-14 Google Llc Prefetching weights for use in a neural network processor
US10438117B1 (en) 2015-05-21 2019-10-08 Google Llc Computing convolutions using a neural network processor
KR102445662B1 (ko) 2015-07-01 2022-09-22 삼성전자주식회사 스토리지 장치
CN105718994B (zh) 2015-07-29 2019-02-19 上海磁宇信息科技有限公司 细胞阵列计算系统
KR101701250B1 (ko) 2015-08-03 2017-02-01 서울대학교산학협력단 딥 빌리프 네트워크를 위한 복수 레이어가 적층된 뉴런 어레이 및 뉴런 어레이 동작 방법
KR102311916B1 (ko) 2015-08-17 2021-10-15 삼성전자주식회사 스토리지 장치
US10020317B2 (en) 2015-08-31 2018-07-10 Cypress Semiconductor Corporation Memory device with multi-layer channel and charge trapping layer
US10037167B2 (en) 2015-09-11 2018-07-31 Sandisk Technologies Llc Multiple scheduling schemes for handling read requests
US9589982B1 (en) 2015-09-15 2017-03-07 Macronix International Co., Ltd. Structure and method of operation for improved gate capacity for 3D NOR flash memory
US10157012B2 (en) 2015-09-29 2018-12-18 Sandisk Technologies Llc Zero read on trimmed blocks in a non-volatile memory system
US9892800B2 (en) 2015-09-30 2018-02-13 Sunrise Memory Corporation Multi-gate NOR flash thin-film transistor strings arranged in stacked horizontal active strips with vertical control gates
US9842651B2 (en) 2015-11-25 2017-12-12 Sunrise Memory Corporation Three-dimensional vertical NOR flash thin film transistor strings
US10418369B2 (en) 2015-10-24 2019-09-17 Monolithic 3D Inc. Multi-level semiconductor memory device and structure
US9767028B2 (en) 2015-10-30 2017-09-19 Advanced Micro Devices, Inc. In-memory interconnect protocol configuration registers
TWI571875B (zh) 2015-10-30 2017-02-21 華邦電子股份有限公司 電阻式記憶體裝置及其寫入方法
KR102412781B1 (ko) 2015-11-03 2022-06-24 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 독출 방법
CN108701475B (zh) 2015-11-25 2022-04-26 日升存储公司 三维垂直nor闪速薄膜晶体管串
US9983829B2 (en) 2016-01-13 2018-05-29 Sandisk Technologies Llc Physical addressing schemes for non-volatile memory systems employing multi-die interleave schemes
EP3389051B1 (en) 2016-01-18 2020-09-09 Huawei Technologies Co., Ltd. Memory device and data-processing method based on multi-layer rram crossbar array
US10725860B2 (en) 2016-03-04 2020-07-28 Sandisk Technologies Llc Storage system and method for handling a burst of errors
WO2017158466A1 (en) 2016-03-18 2017-09-21 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and system using the same
CN105789139B (zh) 2016-03-31 2018-08-28 上海新储集成电路有限公司 一种神经网络芯片的制备方法
WO2017171771A1 (en) 2016-03-31 2017-10-05 Hewlett Packard Enterprise Development Lp Data processing using resistive memory arrays
JP2017195275A (ja) 2016-04-20 2017-10-26 東芝メモリ株式会社 半導体記憶装置およびその製造方法
KR102508532B1 (ko) 2016-05-02 2023-03-09 삼성전자주식회사 감지 증폭기 및 이를 포함하는 메모리 장치
WO2017200883A1 (en) 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep learning neural network classifier using non-volatile memory array
US9773553B1 (en) 2016-08-19 2017-09-26 Micron Technology, Inc. Segmented memory and operation
US10381094B2 (en) * 2016-10-11 2019-08-13 Macronix International Co., Ltd. 3D memory with staged-level multibit programming
CN106530210B (zh) 2016-10-31 2019-09-06 北京大学 基于阻变存储器件阵列实现并行卷积计算的设备和方法
US10649665B2 (en) 2016-11-08 2020-05-12 Micron Technology, Inc. Data relocation in hybrid memory
US10733505B2 (en) 2016-11-10 2020-08-04 Google Llc Performing kernel striding in hardware
EP3373304A3 (en) 2016-11-21 2018-12-05 IMEC vzw Semiconductor cell for performing a logic xnor or xor operation
US10860318B2 (en) 2016-12-06 2020-12-08 Gsi Technology, Inc. Computational memory cell and processing array device using memory cells
US10985777B2 (en) 2016-12-09 2021-04-20 William Marsh Rice University Signal recovery via deep convolutional networks
US10296224B2 (en) 2016-12-21 2019-05-21 Intel Corporation Apparatus, system and method for increasing the capacity of a storage device available to store user data
US10565494B2 (en) 2016-12-31 2020-02-18 Via Alliance Semiconductor Co., Ltd. Neural network unit with segmentable array width rotator
US10360499B2 (en) 2017-02-28 2019-07-23 Anixa Diagnostics Corporation Methods for using artificial neural network analysis on flow cytometry data for cancer diagnosis
US10269824B2 (en) 2017-04-01 2019-04-23 Intel Corporation Non-volatile memory structures having multi-layer conductive channels
US11556771B2 (en) 2017-04-10 2023-01-17 Semiconductor Energy Laboratory Co., Ltd. Semiconductor neural network device including a synapse circuit comprising memory cells and an activation function circuit
US10460817B2 (en) 2017-07-13 2019-10-29 Qualcomm Incorporated Multiple (multi-) level cell (MLC) non-volatile (NV) memory (NVM) matrix circuits for performing matrix computations with multi-bit input vectors
US10482929B2 (en) * 2017-07-13 2019-11-19 Qualcomm Incorporated Non-volative (NV) memory (NVM) matrix circuits employing NVM matrix circuits for performing matrix computations
US10790828B1 (en) * 2017-07-21 2020-09-29 X Development Llc Application specific integrated circuit accelerators
JP2019028569A (ja) 2017-07-26 2019-02-21 株式会社東芝 メモリシステム、半導体記憶装置及び信号処理システム
US10580492B2 (en) 2017-09-15 2020-03-03 Silicon Storage Technology, Inc. System and method for implementing configurable convoluted neural networks with flash memories
US11410028B2 (en) 2017-09-20 2022-08-09 Look Dynamics, Inc. Photonic neural network system
US11521046B2 (en) 2017-11-08 2022-12-06 Samsung Electronics Co., Ltd. Time-delayed convolutions for neural network device and method
US10777566B2 (en) 2017-11-10 2020-09-15 Macronix International Co., Ltd. 3D array arranged for memory and in-memory sum-of-products operations
US11361215B2 (en) 2017-11-29 2022-06-14 Anaflash Inc. Neural network circuits having non-volatile synapse arrays
US10748630B2 (en) 2017-11-29 2020-08-18 Silicon Storage Technology, Inc. High precision and highly efficient tuning mechanisms and algorithms for analog neuromorphic memory in artificial neural networks
US10552510B2 (en) 2018-01-11 2020-02-04 Mentium Technologies Inc. Vector-by-matrix multiplier modules based on non-volatile 2D and 3D memory arrays
US20190244662A1 (en) 2018-02-02 2019-08-08 Macronix International Co., Ltd. Sum-of-products array for neuromorphic computing system
US10719296B2 (en) 2018-01-17 2020-07-21 Macronix International Co., Ltd. Sum-of-products accelerator array
US10957392B2 (en) 2018-01-17 2021-03-23 Macronix International Co., Ltd. 2D and 3D sum-of-products array for neuromorphic computing system
US10242737B1 (en) 2018-02-13 2019-03-26 Macronix International Co., Ltd. Device structure for neuromorphic computing system
US10635398B2 (en) 2018-03-15 2020-04-28 Macronix International Co., Ltd. Voltage sensing type of matrix multiplication method for neuromorphic computing system
US11429348B2 (en) 2018-03-16 2022-08-30 Tdk Corporation Multiply and accumulate calculation device, neuromorphic device, and method for using multiply and accumulate calculation device
US11188814B2 (en) 2018-04-05 2021-11-30 Arm Limited Systolic convolutional neural network
US20190311749A1 (en) 2018-04-09 2019-10-10 Anaflash Inc. Logic Compatible Embedded Flash Memory
US10741246B2 (en) 2018-04-23 2020-08-11 Arm Limited Method, system and device for integration of volatile and non-volatile memory bitcells
CN111971662A (zh) 2018-04-30 2020-11-20 慧与发展有限责任合伙企业 电阻及数字处理核心
US20190363131A1 (en) 2018-05-25 2019-11-28 Gyrfalcon Technology Inc. Memory architecture having different type of memory devices and logic circuit disposed over a semiconductor substrate
US20200160165A1 (en) 2018-06-26 2020-05-21 Vishal Sarin Methods and systems of operating a neural circuit in a non-volatile memory based neural-array
JP7070190B2 (ja) 2018-07-18 2022-05-18 株式会社デンソー ニューラルネットワーク回路
US10528643B1 (en) 2018-08-01 2020-01-07 Sandisk Technologies Llc Vector-matrix multiplication using non-volatile memory cells
US10534840B1 (en) 2018-08-08 2020-01-14 Sandisk Technologies Llc Multiplication using non-volatile memory cells
US10860918B2 (en) 2018-08-21 2020-12-08 Silicon Storage Technology, Inc. Analog neural memory system for deep learning neural network comprising multiple vector-by-matrix multiplication arrays and shared components
US10877752B2 (en) 2018-09-28 2020-12-29 Intel Corporation Techniques for current-sensing circuit design for compute-in-memory
US10642922B2 (en) 2018-09-28 2020-05-05 Intel Corporation Binary, ternary and bit serial compute-in-memory circuits
US10748603B2 (en) 2018-09-28 2020-08-18 Intel Corporation In-memory multiply and accumulate with global charge-sharing
US10831446B2 (en) 2018-09-28 2020-11-10 Intel Corporation Digital bit-serial multi-multiply-and-accumulate compute in memory
US11574694B2 (en) 2018-10-11 2023-02-07 International Business Machines Corporation Kernel sets normalization with capacitor charge sharing
US20200117986A1 (en) 2018-10-12 2020-04-16 International Business Machines Corporation Efficient processing of convolutional neural network layers using analog-memory-based hardware
US10643713B1 (en) 2019-02-08 2020-05-05 Sandisk Technologies Llc Toggling power supply for faster bit line settling during sensing
US10825510B2 (en) 2019-02-09 2020-11-03 Purdue Research Foundation Multi-bit dot product engine
US10783963B1 (en) 2019-03-08 2020-09-22 Macronix International Co., Ltd. In-memory computation device with inter-page and intra-page data circuits

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787087B2 (en) * 2011-09-20 2014-07-22 Kabushiki Kaisha Toshiba Semiconductor memory device controlling operation timing of the sense circuit
US9430735B1 (en) * 2012-02-23 2016-08-30 Micron Technology, Inc. Neural network in a memory device
US10115457B2 (en) * 2014-10-03 2018-10-30 Micron Technology, Inc. Threshold voltage distribution determination by sensing common source line currents
WO2018201060A1 (en) * 2017-04-27 2018-11-01 The Regents Of The University Of California Mixed signal neuromorphic computing with nonvolatile memory devices
US10073733B1 (en) * 2017-09-01 2018-09-11 Purdue Research Foundation System and method for in-memory computing

Also Published As

Publication number Publication date
US11934480B2 (en) 2024-03-19
CN111338601A (zh) 2020-06-26
JP7041654B2 (ja) 2022-03-24
US20200192971A1 (en) 2020-06-18
EP3671433A1 (en) 2020-06-24
TW202024898A (zh) 2020-07-01
JP2020098658A (ja) 2020-06-25
KR20200076571A (ko) 2020-06-29
CN111338601B (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
TWI757645B (zh) 用於記憶體內乘法及累加運算的電路及其方法
US20200311512A1 (en) Realization of binary neural networks in nand memory arrays
US11568200B2 (en) Accelerating sparse matrix multiplication in storage class memory-based convolutional neural network inference
US11507808B2 (en) Multi-layer vector-matrix multiplication apparatus for a deep neural network
US11164632B2 (en) Nonvolatile memory device and method of processing in memory (PIM) using the same
US11501141B2 (en) Shifting architecture for data reuse in a neural network
CN110782028A (zh) 具有差分二进制非易失性存储器单元结构的可配置精密神经网络
US20200034697A1 (en) Realization of binary neural networks in nand memory arrays
TW201816592A (zh) 動態隨機存取記憶體處理單元架構
US11397886B2 (en) Vertical mapping and computing for deep neural networks in non-volatile memory
CN110729011B (zh) 用于类神经网路的存储器内运算装置
KR20210075542A (ko) 스위칭 소자와 저항 소자를 포함하는 3차원 뉴로모픽 장치
JP2022060143A (ja) 外部磁場プログラミング支援を有する超小型電力推論エンジン
US11526285B2 (en) Memory device for neural networks
TWI783538B (zh) 多階超低功率推理引擎加速器
CN108154227B (zh) 一种使用模拟计算的神经网络芯片
Liu et al. Era-bs: Boosting the efficiency of reram-based pim accelerator with fine-grained bit-level sparsity
CN113553028B (zh) 基于概率比特电路的问题求解优化方法及系统
CN115831185A (zh) 存算一体芯片、操作方法、制作方法和电子设备
CN114171087A (zh) 忆阻器阵列结构及其操作方法、神经网络稀疏化装置
US11663471B2 (en) Compute-in-memory deep neural network inference engine using low-rank approximation technique
TWI836661B (zh) 記憶體
US20240021224A1 (en) Content addressable memory for large search words
TW202145504A (zh) 記憶體系統以及操作記憶體系統的方法
Wu et al. A Kernel Unfolding Approach to Trade Data Movement with Computation Power for CNN Acceleration