[go: up one dir, main page]

TWI721431B - 一種用於執行乘法累加(mac)運算與計算向量矩陣乘法之記憶體內計算系統與方法 - Google Patents

一種用於執行乘法累加(mac)運算與計算向量矩陣乘法之記憶體內計算系統與方法 Download PDF

Info

Publication number
TWI721431B
TWI721431B TW108117512A TW108117512A TWI721431B TW I721431 B TWI721431 B TW I721431B TW 108117512 A TW108117512 A TW 108117512A TW 108117512 A TW108117512 A TW 108117512A TW I721431 B TWI721431 B TW I721431B
Authority
TW
Taiwan
Prior art keywords
resistive memory
array
line
vector
memory device
Prior art date
Application number
TW108117512A
Other languages
English (en)
Other versions
TW202013213A (zh
Inventor
偉 盧
穆罕默德 A 子丹
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 TW202013213A publication Critical patent/TW202013213A/zh
Application granted granted Critical
Publication of TWI721431B publication Critical patent/TWI721431B/zh

Links

Images

Classifications

    • 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/0023Address circuits or decoders
    • G11C13/0026Bit-line or column circuits
    • 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/0023Address circuits or decoders
    • G11C13/0028Word-line or row circuits
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06EOPTICAL COMPUTING DEVICES; COMPUTING DEVICES USING OTHER RADIATIONS WITH SIMILAR PROPERTIES
    • G06E1/00Devices for processing exclusively digital data
    • G06E1/02Devices for processing exclusively digital data operating upon the order or content of the data handled
    • G06E1/04Devices for processing exclusively digital data operating upon the order or content of the data handled for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06E1/045Matrix or vector computation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06COMPUTING OR CALCULATING; 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
    • 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
    • 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/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/4814Non-logic devices, e.g. operational amplifiers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/4828Negative resistance devices, e.g. tunnel diodes, gunn effect devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Memories (AREA)

Abstract

一種用於計算向量矩陣乘法的記憶體內計算系統包含一電阻式記憶體裝置陣列,該陣列以列與行排列,使得該陣列每一行中的電阻式記憶體裝置藉由一各別的字線互連,並且該陣列每一列中的電阻式記憶體裝置藉由一各別的位元線互連。該記憶體內計算系統亦包含一介面電路,該介面電路電性耦接到該電阻式記憶體裝置陣列的每一位元線,並計算施於一組給定字線的一輸入向量與儲存於該陣列中的數據值之間的向量矩陣乘法。對於每一位元線,該介面電路接收一輸出以回應施於該給定字線的輸入;比較該輸出與一閾值;以及當該輸出超過該閾值時,增加對每一位元線所維持的一計數。對一給定位元線的計數表示一點積。

Description

一種用於執行乘法累加(MAC)運算與計算向量矩陣乘法之記憶體內計 算系統與方法 【政府資助】
本發明是在國家科學基金會授予的批准號CCF-1617315下由政府支持完成。政府對本發明享有一定的權利。
本發明係有關於利用電阻式記憶體裝置陣列執行計算。
本段落提供與本發明相關的背景資訊,其未必是先前技術。
歷史上,計算的進步主要是遵循摩爾定律的互補式金氧半導體(Complementary Metal-Oxide-Semiconductor,CMOS)電晶體的微縮所推動,新世代裝置更小、更快、更便宜,從而產生更強大的電路與系統。然而,傳統的微縮正面臨重大的技術挑戰與基本限制。此外,傳統計算架構最初並非設計用於處理現代應用,例如:認知處理、人工智能、大數據分析與邊緣計算。最近,正在尋求新的裝置、電路與架構來滿足當前與未來的計算需求,其中記憶體與邏輯及並行處理的緊密整合更是被高度期望的。為此,新興的電阻式記憶體技術,諸如:電阻式隨機存取記憶體(Resistive random-access memory,RRAM)、自旋力矩轉移磁性隨機存取記憶體(Spin torque transfer magnetic random-access memory,STT-MRAM)與相變隨機存取記憶體(Phase-change random-access memory,PCRAM)已引起廣泛關注,而成為未來記憶體與計算應用的理想候選。除了在數據儲存應用中的巨大吸引力之外,電阻式裝置提供了實現不同於傳統計算系統的高效能記憶體內計算架構的可能性。
對於典型的記憶體/儲存應用,電阻式記憶體(Resistive memory,RM)裝置以電阻的形式儲存數據,例如:0由高電阻狀態(High resistance state,HRS)表示,而1由低電阻狀態(Low resistance state,LRS)表示。在本申請案中,電阻式記憶體裝置指的是電阻式隨機存取記憶體(RRAM)、磁性隨機存取記憶體(MRAM)與相變隨機存取記憶體(PCRAM)、或依賴於電阻變化來儲存數據的其他記憶體技術。該些裝置可以採用一交叉式結構,其可提供高儲存密度與隨機存取能力。在低電阻狀態與高電阻狀態之間編程一電阻式記憶體裝置通常透過振幅高於特定閾值的偏壓或偏流來實現。讀取該裝置狀態通常由低於一閾值的一低壓偏來實現。由於它們的電阻特性,電阻式記憶體裝置可作為一雙端開關,其可基於電阻值直接調變通過它的電流。因此,通過該等裝置的電流是等於所施加的電壓乘以所儲存的電導值,而不需從一個單獨的記憶體中擷取數據,更不需在一個單獨的處理器中處理乘法運算。此特性原則上允許電阻式記憶體系統在記憶體內可直接執行向量矩陣乘法(包括向量-向量點積運算),其中乘法累加(Multiply-accumulate,MAC)運算可以並行處理。記憶體與邏輯的共置(co-location),以及交叉式結構可提供的高並行性,已經引起了市場對電阻式記憶體為主的計算系統之興趣。
焦點目前已經是放在人工神經網絡等任務,該些任務通常旨在獲得近似或定性的解決方案,儘管更一般以矩陣為主的任務也可被實現。然而,由於該些新興的電阻式記憶體技術的限制,包括精度有限、裝置變異性大與開/關比有限,該些系統的實際實現仍是困難的。此外,對於類比運算的結果進行採樣,則需要基於類比至數位轉換器(Analog-to-digital,ADC)的龐大介面電路來完成,其將會顯著影響整個系統的性能。
本段落提供了對本發明的總體概述,並未全面揭露其全部範圍或其所有特徵。
一種記憶體內計算系統包括一電阻式記憶體(RM)裝置陣列與一介面電路,用於執行乘法累加(MAC)運算與計算向量矩陣乘法。該電阻式記憶體裝置陣列以列與行排列,使得該陣列每一行中的電阻式記憶體 裝置藉由一各別的字線互連,並且該陣列每一列中的電阻式記憶體裝置藉由一各別的位元線互連。每一電阻式記憶體裝置在該電阻式記憶體裝置陣列中具有一相關聯的閾值電壓,並配置用以將一數據值儲存成一電阻值。該介面電路電性耦接到該電阻式記憶體裝置陣列的每一位元線,並與該電阻式記憶體裝置陣列協同運作,以計算施於該等字線的一輸入向量與儲存於該電阻式記憶體裝置陣列中的數據值之間的一向量矩陣乘法。對於每一位元線,該介面電路接收一輸出以回應施於一給定字線的一輸入,比較該輸出與一閾值,及當該輸出超過該閾值時,增加對每一位元線所維持的一計數。該計數表示該給定字線上的輸入與一電導之間所執行的數位化乘法累加(MAC)運算,其中該電導為該給定位元線與該給定字線所互連的電阻式記憶體裝置之一電導。在所有相關字線被處理之後,對一給定位元線的累積計數表示該輸入向量與沿該給定位元線的電阻式記憶體裝置上的值表示的儲存向量兩者之間的數位化點積。
在各種實作例中,施於該給定字線的輸入是施於該給定字線作為一脈衝的一電壓,並且其中每一位元線的輸出在到達該介面電路之前是一電流值。此外,該輸入可以是一系列脈衝,並且該一系列脈衝的一總數表示該輸入值。該輸入可依序施於每一字線。
在另一方面,一解碼器電性耦接到每一字線。該解碼器配置用以將該輸入施於每一字線。該介面電路可包括複數個比較器,其中該等複數個比較器之每一比較器電性耦接到一相對應的位元線,且一各別的比較器從該相對應的位元線接收該輸出,並比較該輸出與相關聯於該各別的比較器的一閾值。
在另一方面,該介面電路包括複數個計數器,其中該等複數個計數器之每一計數器電性耦接到一相對應的比較器,並且增加一各別的計數器之一計數,以回應於超過相關聯於該各別的比較器之該閾值的該輸出。
在各種實作例中,該電阻式記憶體裝置陣列中的每一裝置儲存一電阻值與一電導值中的至少一者,並且該電阻值與該電導值中的至少一者是表示在該電阻式記憶體裝置陣列的一列中的一潛在特徵(或權重、 或係數)向量的一元素。
一種用於計算乘法累加與向量矩陣乘法的記憶體內計算方法包含:將一輸入施於以列與行排列的一電阻式記憶體裝置陣列,其中該陣列的排列使得該陣列每一行中的電阻式記憶體裝置藉由一各別的字線互連,並且該陣列每一列中的電阻式記憶體裝置藉由一各別的位元線互連。每一電阻式記憶體裝置在該電阻式記憶體裝置陣列中具有一相關聯的閾值電壓,並配置用以在其上將一數據值儲存成一電阻值。該方法包含:計算施於一給定字線的一輸入與儲存於該電阻式記憶體裝置陣列中的數據值之間的乘法與累加。
該乘法累加(MAC)運算是藉由執行以下步驟完成:產生一輸出以回應施於一給定字線的輸入,比較該輸出與一個閾值,及當該輸出超過該閾值時,增加對該位元線的一計數。該計數表示該給定字線上的輸入與一電導之間所執行的數位乘法運算,其中該電導為該給定位元線與該給定字線所互連的電阻式記憶體裝置之一電導。在所有相關字線已被處理之後,對一給定位元線的累積計數表示該輸入向量與沿該給定位元線的電阻式記憶體裝置上的值表示的儲存向量兩者之間的數位化點積。
在各種實作例中,施於該給定字線的輸入是施於該給定字線作為一脈衝的一電壓,並且每一位元線的輸出在到達該介面電路之前是一電流值。此外,該輸入可以是一系列脈衝,並且該一系列脈衝的一總數表示一輸入值。該方法包含:將該輸入依序施於每一字線。該方法更包含:使用一解碼器將該輸入施於每一字線。
在另一方面,該方法更包含:從一各別的比較器上的給定位元線接收該輸出,並比較該輸出與相關聯於該各別的比較器的一閾值。該方法更包含:增加一各別的計數器之一計數,以回應於超過相關聯於該各別的比較器之該閾值的該輸出。在各種實作例中,該電阻式記憶體裝置陣列中的每一裝置儲存一電阻值與一電導值中的至少一者,並且該電阻值與該電導值中的至少一者是表示在該電阻式記憶體裝置陣列的一列中的一潛在特徵(或權重、或係數)向量的一元素。
根據在此提供的描述,其他適用領域將變得顯而易見。本發 明內容中的描述與具體範例僅用於例示的目的,並不旨在限制本發明的範圍。
100:記憶體內計算系統
104:第一字線
108:第一電阻式記憶體裝置
112:第一位元線
116:第一比較器
120:第一計數器
124:介面電路
200:介面電路
204:矩陣
208-1:列計數器
208-2:列計數器
208-3:列計數器
208-4:列計數器
208-5:列計數器
212:解碼器
216:位址引腳
220:輸入引腳
224:W/R引腳
228:致能(EN)引腳
232:位址計數器
300:列計數器
304:比較器
308:異步漣波計數器
320:多位元列計數器
324:比較器
328:解多工器
332:截斷位址計數器
404:第一多位元值
408:第二多位元值
412:第三多位元值
500:電晶體閘控電阻式記憶體陣列;閘極陣列
504:第一源極線
508:第二源極線
520:電晶體閘控電阻式記憶體陣列
524:第一源極線
528:第二源極線
604:步驟
608:步驟
612:步驟
616:步驟
620:步驟
624:步驟
在此描述的附圖僅用於所選具體實施例的例示性目的,而非所有可能的實作例,並且不旨在限制本發明的範圍。
第一圖是顯示包含一電阻式記憶體(RM)裝置陣列的一記憶體內計算系統的一示意圖;第二圖是顯示電性耦接到一電阻式記憶體裝置陣列的一示例介面電路的一示意圖;第三A圖是顯示電性耦接到一電阻式記憶體裝置陣列的一列計數器的一實作例的示意圖;第三B圖是描繪電性耦接到一電阻式記憶體裝置陣列的一多位元列計數器的一示意圖;第四A圖是描繪在同一位元線中由複數個電阻式記憶體裝置表示的一多位元值的一示意圖;第四B圖是描繪在同一字線中由複數個電阻式記憶體裝置表示的一多位元值的一示意圖;第四C圖是描繪由複數個電阻式記憶體裝置陣列表示的一多位元值的一示意圖;第五A圖是描繪一電晶體閘控電阻式記憶體陣列的一示意圖,該陣列包含用於無類比至數位轉換器的乘法累加與矩陣乘法運算的一第一類型源極線;第五B圖是描繪一電晶體閘控電阻式記憶體陣列的一示意圖,該陣列包含用於無類比至數位轉換器的乘法累加與矩陣乘法運算的一第二類源極線;以及第六圖是描繪由電性耦接到一電阻式記憶體裝置陣列的一介面電路所控制的向量矩陣乘法過程計算之流程圖。
在附圖的幾個視圖中,相對應的參考數字表示相對應的部件。
現在將參考附圖更全面地描述範例具體實施例。
本發明的系統設計克服了上述與電阻式記憶體裝置及類比至數位轉換器相關的限制,並且產生了一有效的記憶體內計算系統,例如:可明顯優於用在數據密集型任務的當前中央處理器與圖形處理器計算架構的一記憶體處理單元(Memory processing unit,MPU)。該方法是基於無類比至數位轉換器的記憶體內計算方法,其可使用晶載(on-chip)記憶體(如電阻式隨機存取記憶體、磁性隨機存取記憶體、相變隨機存取記憶體或靜態隨機存取記憶體)直接執行,並且可支持軟計算和精確計算任務。該記憶體內系統容許高裝置變異性與低開/關比。此外,相較於其類比與多階對應系統(counterparts)而言,佔面積的類比至數位轉換器和後處理電路的消除使系統能夠使用更小的電路區域,而以更高速度操作。
一典型的類比(多階)向量矩陣乘法運算可被考慮在兩個非管線階段中:一類比階段與一疊代採樣階段。在第一部分中,在一電阻式記憶體裝置陣列中的所有相關字線被啟動,允許電流根據電阻式記憶體裝置的電導與施於輸入的電壓而流經該陣列。在第二階段中,在位元線上的輸出電流利用類比至數位轉換器電路進行數位化,該類比至數位轉換器電路自然是疊代類型,例如:循續漸近式或斜坡式類比至數位轉換器。在本發明中,描述了一種記憶體內計算系統,該系統與一電阻式記憶體裝置陣列執行向量矩陣乘法,而無需傳統的類比至數位轉換器。第一圖是顯示包含一電阻式記憶體裝置陣列的一記憶體內計算系統100的一示意圖。該陣列描繪了五條字線與五條位元線。有關此示例硬體系統的進一步細節可以在2017年10月3日申請標題為「用於可重新配置計算的場域可編程交叉式陣列」的美國專利申請案案號15/723,668中找到,其在此整體併入做為參考。
每一字線具有一相對應的輸入。例如:一第一字線104具有脈衝形式的一輸入電壓(V1)。在每一字線與每一位元線的交叉處是一電阻式記憶體裝置。例如:一第一電阻式記憶體裝置108位於第一字線104與一第一位元線112的交叉處。
由於類比至數位轉換器不再耦合到該陣列,比較器係耦接到每一位元線的輸出,以判斷一個位元線的輸出是否超過一閾值。也就是說,該等比較器是以二進制方式辨別輸出是高電位或低電位,而非直接測量該輸出電流或電荷的類比值。該比較器方法依賴於該閾值,並且對電流的精確值不敏感,因此允許更佳的裝置變異性與開/關容許度。
每一字線的輸入可以是時間上離散的。亦即,在任何給定時間,一個輸入脈衝被施於一條字線,儘管一些演算法可以容許同時將多個輸入施於複數條字線。在各種實作例中,一介面電路124可配置用以控制對每一字線的輸入之施加,並且可在任何給定時間下監控哪條字線正在接收輸入。一比較器連接到每一位元線。例如:一第一比較器116連接到一第一位元線112。
在各種應用中,在字線上的輸入值可以是二進制的。輸入「1」是在字線上由一電壓脈衝表示,而輸入「0」是在字線上無脈衝(或具有0幅度的脈衝)表示。該陣列的字線可依序地或以一系列方式啟動,如第一圖所示。該結果是在該位元線側上的一系列電流脈衝,該等電流脈衝的每一者表示在該字線電壓與該相對應的位元線裝置電導之間的一類比乘法,使得:
Figure 108117512-A0305-02-0010-1
其中
Figure 108117512-A0305-02-0010-5
是位元線i的輸出電流,
Figure 108117512-A0305-02-0010-6
是字線j的輸入電壓,G(i,j)是電阻式記憶體裝置在位元線i與字線j的交叉處之電導。在這種情況下,
Figure 108117512-A0305-02-0010-7
{V READ ,0}與G (i,j)
Figure 108117512-A0305-02-0010-8
{HRS,LRS}。此外,在位元線側的一簡單比較器係足以偵測每一輸入脈衝的輸出信號,其中該比較器輸出係定義為:
Figure 108117512-A0305-02-0010-2
其中
Figure 108117512-A0305-02-0010-9
是在位元線i的二進制比較器輸出,而θ是比較器閾值。該比較器的二進制輸出接著被饋送到一計數器,例如:第一計數器120(如第一圖所示),其中該計數的數值是基於比較器的二進制輸出來增加1或0。該計數表示在給定的字線之輸入與該給定位元線與該給定字線所互連 的電阻式記憶體裝置的電導之間所執行的乘法累加運算。
然後,下一條字線被啟動,並重複該些過程,直到所有相關字線被處理為止。該計數器輸出定義如下:
Figure 108117512-A0305-02-0011-4
其中D (i)是位元線i的計數器輸出,m是相關字線的數量。在所有字線輸入都已處理後,在該位元線i上的累積計數的數表示該輸入向量與沿位元線i上的電阻式記憶體裝置的電導值所表示的特徵(例如:權重)向量之間的點積。
一計數器連接到每一比較器。例如:一第一計數器120連接到一第一比較器116。每一計數器維持發生的一計數,其中該發生係指在相對應位元線上的輸出電流高於比較器閾值。例如:第一計數器120增加,以回應於超過第一比較器116的閾值之第一位元線112的輸出電流。在各種實作例中,每一計數器與比較器包含在一介面電路124中。例如:介面電路124可進一步處理該輸入與電阻式記憶體裝置的電導向量的點積。亦即,介面電路124可接收每一計數器的輸出。在各種實作例中,介面電路124亦可電性耦接到每一字線(未顯示),並且包含一裝置來控制對該陣列字線的輸入之施加。
在各種實作例中,施於該陣列的輸入是非二進制的,即多位元或類比。當該輸入為非二進制時,一系列電壓脈衝被施於一字線,例如:第一字線104。施於每一字線的此系列脈衝表示該輸入的大小。另外,如上所述,施於每一字線的輸入可在時間上是離散的。亦即,一字線的每一輸入脈衝與一單獨字線的輸入脈衝是不重疊的。施於每一字線的脈衝是以一預定順序施加,例如:按一順序排列施加,並由該介面電路中的解碼器所控制。在各種實作例中,該等脈衝可用於表示多位元輸入或順序輸入。
以上實作例將每一電阻式記憶體裝置視為二進制,例如:該裝置電導是處於高電阻狀態或低電阻狀態。在各種實作例中,可能需要使用非二進制(即多位元數據)。該多位元數據可使用相同位元線內的多個二進制電阻式記憶體裝置來表示,或使用相同字線內的多個二進制電阻式 記憶體裝置來表示,如第四A圖與第四B圖所示。此外,多位元數據可在複數個電阻式記憶體陣列上來表示,如第四C圖所示。
施於該陣列的輸入可表示一圖像的像素。例如:每一輸入可表示圖像的像素之強度。另外,每一電阻式記憶體裝置儲存一數據值。例如:該電阻式記憶體裝置陣列中的每一數據值儲存一電阻、一電導或兩者。此外,該儲存的電阻或該儲存的電導表示在該陣列的各別列中所表示的一潛在特徵的元素。亦即,該陣列可接收該輸入,並比較該輸入與該列(例如:第一位元線112)中表示的一儲存潛在特徵。因此,第一位元線112上的輸出可指示第一字線104的輸入與第一電阻式記憶體裝置108之間的相似性,且第一電阻式記憶體裝置108係在第一位元線112上表示的該潛在特徵的一元素。然後,第一比較器116判斷第一位元線112的輸出是否大於相關聯於第一比較器116的閾值。如上所提及,當每一比較器的閾值超過時,該各別的計數器(在此為第一計數器120)的計數會增加,以執行在該輸入與該電阻式記憶體裝置的電導間所執行的數位化乘法累加(MAC)運算。
在各種實作例中,介面電路124可包含一顯示裝置(未顯示)以向一操作員顯示該計數。此外,介面電路124可對所接收的計數執行額外的處理,亦即,該輸入與該各別的電阻式記憶體裝置的電導向量的點積。
第二圖是顯示電性耦接到一電阻式記憶體裝置陣列的一示例介面電路200的一示意圖。該示例介面電路200排除一類比至數位轉換器。如上所提及,為了在不使用一類比至數位轉換器的情況下計算一點積,以脈衝形式的輸入施於一矩陣204的每一字線。介面電路200可包含複數個列計數器208-1到208-5。列計數器208-1到208-5對各別位元線上超過各別閾值的輸出脈衝進行計數。在各種實作例中,介面電路200也包含一解碼器212。顯示為一行脈衝解碼器(Row Pulse Decoder,RPD)的解碼器212係用於以一連續的順序來啟動字線。該解碼器透過位址引腳216來接收該預期字線的位址,並透過一輸入引腳220來接收該輸入而施加。若透過輸入引腳220將「1」施於解碼器輸入,則解碼器212啟動一相對應的字線。例如:電壓被施於該啟動字線,且V_READ或V_WRITE取決於W/R引腳 224的狀態。解碼器212亦可使用一致能(EN)引腳228而去能。對於一個典型的點積運算中,該解碼器位址是經由一位址計數器232所饋入,其中位址計數器232簡單地循環字線的位址。
第三A圖是顯示電性耦接到一電阻式記憶體裝置陣列的一列計數器300的一實作例的示意圖。如相對於第二圖所述,每一位元線係連接到一列計數器,例如:第三A圖中的列計數器300。於此範例中,列計數器300包含一比較器304與一異步漣波計數器308。該異步計數器對於單一位元數表示、或在多個列(位元線)或陣列上儲存的多位元數非常有用。
第三B圖是描繪電性耦接到一電阻式記憶體裝置陣列的一多位元列計數器320的範例之一示意圖。在各種實作例中,每一位元線的比較器324的一輸出被引導到相對應的計數器位元,以透過一解多工器328增加。該解多工器的選擇線是透過一截斷位址計數器332所提供。截斷位址計數器332是字線位址計數器(第二圖)的低有效位元。例如:一64×64陣列使用一6位元位址計數器,並且在採用8位元字組的情況下,只有位址計數器的低3位元被引導到該解多工器選擇線。因此,點積在64位元的位元線上執行,而每一連續的8位被認為是具有位元位置權重的一個字組。在一個例子中,該多位元列計數器判斷一計數,並在計數的同時考慮了字組內的位元位置。例如:一啟動的最低有效位元(LSB)應該使該計數增加一,而第二個最低有效位元應該使該計數增加二。因此,每一字組的位元應該在該列計數器增加一相對應的位元。此計數器對於多行(字線)上儲存的多位元數是有用的。
請參考第四A圖,其顯示描繪在同一位元線中由複數個電阻式記憶體裝置表示的一第一多位元值404的一示意圖。第一多位元值404由橫越複數個字線、但在相同位元線上的複數個電阻式記憶體裝置表示。
在各種實作例中,第二多位元值408由同一字線中的複數個電阻式記憶體裝置表示,如第四B圖所描繪。第二多位元值408跨越多條位元線並維持在相同的字線中。
現請參考第四C圖,其顯示描繪由複數個電阻式記憶體裝 置陣列表示的一第三多位元值412的一示意圖。亦即,第三多位元值412跨越多個陣列並保持在每一陣列的相同位置。
第五A圖是描繪一電晶體閘控電阻式記憶體陣列500的一示意圖,該陣列包含用於無類比至數位轉換器的向量矩陣乘法運算的一第一類型源極線。電晶體閘極控制係犧牲了系統面積,但允許對電阻式記憶體陣列有更佳地控制與電源管理。在一電晶體閘控陣列實作例中,一第三線,例如:一源極線係與該等字線及該等位元線一起包含在該陣列中。例如:一第一源極線504與一第二源極線508係顯示於第五A圖中。該等源極線係用以提供源極電壓給閘極電晶體,並且可透過該字線或該位元線方向來提供。在第一種情況下,閘極陣列500介接在針對被動交叉式結構所描述的相同技術中,且該等源極線平行於該等字線。然而,該行脈衝解碼器需要提供輸入作為該源極線電壓,而該字線係用於啟動所需的行上的電晶體。
第五B圖是描繪一電晶體閘控電阻式記憶體陣列520的一示意圖,該陣列包含用於無類比至數位轉換器的向量矩陣乘法運算的一第二類型源極線。在第二類型源極線的各種實作例中,一第一源極線524與一第二源極線528的方向平行於該等位元線。當該第二類型源極線被使用時,一改進的列計數器被實施以提供輸入串流給該等源極線。
第六圖是描繪由電性耦接到一電阻式記憶體裝置陣列的一介面電路所控制的向量矩陣乘法計算的一範例流程圖。控制開始於604,其中該介面電路施加輸入到該電阻式記憶體裝置陣列的一第一字線。如前所述,該輸入可以是施於該陣列的一電壓。如第一圖所示,該輸入被依序施於該陣列的該等字線,且該輸入是一個脈衝波形。該控制繼續到608,其中該介面電路接收來自所有位元線的輸出。
該控制前進到612,其中附接到一選定位元線的比較器比較該輸出與該比較器的一各別閾值。回應於超過該比較器的閾值之所選位元線的輸出,該控制繼續到616,增加一計數器的計數,其中該計數器耦合到該相對應位元線的比較器。否則,若所選位元線的輸出未超過閾值,則該控制進行到620。所有位元線上的操作可藉由步驟612-620的控制而並行執 行。然後,該控制判斷該輸入是否包含另一字線。若該控制判斷該輸入包含另一字線,則該控制進行到624,其中該輸入被施於下一字線。然後,該控制返回到608,以判斷位元線的輸出。否則,若該控制判斷在620處沒有另一字線,則控制結束。由於該介面電路包含該電阻式裝置陣列中的每一計數器,所以該介面電路可儲存並維持與該輸入向量及每一位元線表示的向量之點積有關的數據。
前述具體實施例的說明已出於例示與說明的目的而提供。其並非旨在窮舉或限制本發明。特定具體實施例的各個元件或特徵通常不限於該特定具體實施例,而是在適用的情況下為可互換的,即使沒有具體示出或描述,同樣是可以在所選具體實施例中使用。同樣亦可以多種方式變化。不應將該些變化視為脫離本發明,並且所有此類修改旨在包含在本發明的範圍內。
100:記憶體內計算系統
104:第一字線
108:第一電阻式記憶體裝置
112:第一位元線
116:第一比較器
120:第一計數器
124:介面電路

Claims (20)

  1. 一種記憶體內計算系統,用於執行乘法累加(MAC)運算與計算向量矩陣乘法,包括:一電阻式記憶體裝置陣列,其以列與行排列,使得該陣列每一行中的電阻式記憶體裝置藉由一各別的字線互連,並且該陣列每一列中的電阻式記憶體裝置藉由一各別的位元線互連,每一電阻式記憶體裝置在該電阻式記憶體裝置陣列中具有一相關聯的閾值電壓,並配置用以在其上將一數據值儲存成一電阻值;以及一介面電路,其電性耦接到該電阻式記憶體裝置陣列的每一位元線,並與該電阻式記憶體裝置陣列協同運作,以計算施於一組字線的一第一向量的數據值做為複數個輸入與儲存於該電阻式記憶體裝置陣列中的一第二向量的數據值之間的一向量矩陣乘法,其中對於每一給定的位元線,該介面電路:接收在給定位元線上的複數個輸出,以回應施於該組字線的複數個輸入;比較從該給定位元線上接收的該複數個輸出與一閾值;以及當比較用於該給定位元線的該輸出超過該閾值時,增加對該給定位元線所維持的一計數,使得對該給定位元線的該計數表示施於該組字線的該第一向量的數據值做為該複數個輸入與儲存於該電阻式記憶體裝置陣列內的該第二向量之間所執行的該乘法累加運算。
  2. 如申請專利範圍第1項的記憶體內計算系統,其中施於一給定字線的一給定輸入是施於該給定字線作為一脈衝的一電壓,並且其中在該給定位元線上的輸出是一電流值。
  3. 如申請專利範圍第2項的記憶體內計算系統,其中該給定輸入是一系列脈衝,並且其中該一系列脈衝的一總數表示一非二進制值。
  4. 如申請專利範圍第1項的記憶體內計算系統,其中該複數個輸入被依序施於該組字線。
  5. 如申請專利範圍第1項的記憶體內計算系統,更包括一解碼器,其電 性耦接到每一字線,其中該解碼器配置用以將該複數個輸入施於該複數個字線。
  6. 如申請專利範圍第1項的記憶體內計算系統,更包括複數個比較器,其中該等複數個比較器之每一比較器電性耦接到一相對應的位元線,並且其中一各別的比較器從該相對應的位元線接收該複數個輸出,並比較該複數個輸出與相關聯於該各別的比較器的一閾值。
  7. 請專利範圍第6項的記憶體內計算系統,更包括複數個計數器,其中該等複數個計數器之每一計數器電性耦接到一相對應的比較器,並且增加一各別的計數器之該計數,以回應於超過相關聯於該各別的比較器的該閾值之該輸出。
  8. 如申請專利範圍第1項的記憶體內計算系統,其中儲存於該電阻式記憶體裝置陣列中的該第二向量包括一特徵向量。
  9. 如申請專利範圍第1項的記憶體內計算系統,其中多數個電阻式記憶體裝置儲存多位元值在該電阻式記憶體裝置陣列中的一識別的位元線中。
  10. 如申請專利範圍第1項的記憶體內計算系統,其中多數個電阻式記憶體裝置儲存多位元值在該電阻式記憶體裝置陣列中的一識別的字線中。
  11. 如申請專利範圍第1項的記憶體內計算系統,其中多數個電阻式記憶體裝置陣列儲存多位元值。
  12. 如申請專利範圍第1項的記憶體內計算系統,其中該介面電路由一類比至數位轉換器實現。
  13. 一種用於執行乘法累加(MAC)運算與計算向量矩陣乘法的記憶體內計算方法,包括:將一第一向量的數據值做為複數個輸入施於以列與行排列的一電阻式記憶體裝置陣列的一組字線,其中該陣列的排列使得該陣列每一行中的電阻式記憶體裝置藉由一各別的字線互連,並且該陣列每一列中的電阻式記憶體裝置藉由一各別的位元線互連,且其中每一電阻式記憶體裝置在該電阻式記憶體裝置陣列中具有一相關聯的閾值電壓, 並配置用以儲存一數據值;藉由下列對於每一給定位元線的步驟,計算施於該組給定字線的該第一向量的該數據值做為該複數個輸入與儲存於該電阻式記憶體裝置陣列中的一第二向量的該數據值之間的一向量矩陣乘法:接收在給定位元線上的複數個輸出,以回應施於該組字線的該複數個輸入;比較從該給定位元線上接收的該複數個輸出與一閾值;以及當比較用於該給定位元線的該輸出超過該閾值時,增加對每該給定位元線的一計數,使得該給定位元線的該計數在施於該組字線的該第一向量的數據值做為該複數個輸入與儲存於該電阻式記憶體裝置陣列內的該第二向量之間執行該乘法累加運算。
  14. 如申請專利範圍第13項的記憶體內計算方法,其中施於一給定字線的一給定輸入是一電壓脈衝,並且其中每在該給定位元線上的該輸出是一電流值。
  15. 如申請專利範圍第14項的記憶體內計算方法,其中該給定輸入是一系列脈衝,並且其中該一系列脈衝的一總數表示一非二進制值。
  16. 如申請專利範圍第13項的記憶體內計算方法,更包括:將該複數個輸入依序施於該組字線。
  17. 如申請專利範圍第13項的記憶體內計算方法,更包括:使用一解碼器將該複數個輸入施於該組字線。
  18. 如申請專利範圍第13項的記憶體內計算方法,更包括:從一各別的比較器上的給定位元線接收該複數個輸出,並比較該複數個輸出與相關聯於該各別的比較器的一閾值。
  19. 如申請專利範圍第18項的記憶體內計算方法,進一步包括:增加一各別的計數器之該計數,以回應於超過相關聯於該各別的比較器的該閾值之該複數個輸出。
  20. 如申請專利範圍第13項的記憶體內計算方法,其中該電阻式記憶體裝置陣列中的每一裝置儲存該第二向量的該數據值做為一電阻值與一電導值中的至少一者。
TW108117512A 2018-05-22 2019-05-21 一種用於執行乘法累加(mac)運算與計算向量矩陣乘法之記憶體內計算系統與方法 TWI721431B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/986347 2018-05-22
US15/986,347 US10943652B2 (en) 2018-05-22 2018-05-22 Memory processing unit

Publications (2)

Publication Number Publication Date
TW202013213A TW202013213A (zh) 2020-04-01
TWI721431B true TWI721431B (zh) 2021-03-11

Family

ID=68614814

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108117512A TWI721431B (zh) 2018-05-22 2019-05-21 一種用於執行乘法累加(mac)運算與計算向量矩陣乘法之記憶體內計算系統與方法

Country Status (6)

Country Link
US (2) US10943652B2 (zh)
EP (1) EP3797416A4 (zh)
KR (1) KR20210000313A (zh)
CN (1) CN112154506A (zh)
TW (1) TWI721431B (zh)
WO (1) WO2019226289A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI867438B (zh) * 2022-03-13 2024-12-21 華邦電子股份有限公司 記憶體裝置及其資料運算方法

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10943652B2 (en) 2018-05-22 2021-03-09 The Regents Of The University Of Michigan Memory processing unit
US10440341B1 (en) * 2018-06-07 2019-10-08 Micron Technology, Inc. Image processor formed in an array of memory cells
US10642922B2 (en) 2018-09-28 2020-05-05 Intel Corporation Binary, ternary and bit serial compute-in-memory circuits
JP2020160888A (ja) * 2019-03-27 2020-10-01 ソニー株式会社 演算装置及び積和演算システム
CN113391788B (zh) * 2020-03-11 2024-01-26 芯立嘉集成电路(杭州)有限公司 存储器内算术处理器及存储器内算术处理方法
US11934798B2 (en) 2020-03-31 2024-03-19 Micron Technology, Inc. Counter-based multiplication using processing in memory
TWI792247B (zh) * 2020-04-15 2023-02-11 旺宏電子股份有限公司 記憶體內運算方法及裝置
US20210336414A1 (en) 2020-04-27 2021-10-28 Lightmatter, Inc. Photonics processor architecture
TWI782288B (zh) * 2020-06-29 2022-11-01 大陸商珠海興芯存儲科技有限公司 仿類比記憶體運算電路
KR102861763B1 (ko) 2020-07-03 2025-09-17 삼성전자주식회사 인-메모리 프로세싱을 수행하는 장치 및 이를 포함하는 컴퓨팅 장치
US20220027130A1 (en) * 2020-07-27 2022-01-27 Robert Bosch Gmbh Time domain ratiometric readout interfaces for analog mixed-signal in memory compute crossbar networks
CN115803811A (zh) * 2020-08-31 2023-03-14 麦姆瑞克斯公司 用于存储器处理单元架构的层间通信技术
US12147784B2 (en) * 2021-01-29 2024-11-19 Taiwan Semiconductor Manufacturing Company, Ltd. Compute in memory
US11989531B2 (en) 2021-04-13 2024-05-21 Samsung Electronics Co., Ltd. Device and method with multi-bit operation
KR102868994B1 (ko) 2021-04-21 2025-10-10 삼성전자주식회사 뉴럴 네트워크 장치 및 그의 동작 방법
CN115310030A (zh) * 2021-05-07 2022-11-08 脸萌有限公司 一种矩阵乘法电路模块及方法
CN113380296A (zh) * 2021-05-07 2021-09-10 中国科学院上海微系统与信息技术研究所 一种相变存储单元布尔逻辑的图像处理装置及方法
CN115344528A (zh) * 2021-05-13 2022-11-15 联咏科技股份有限公司 存储器内计算宏装置及电子装置
CN113703718B (zh) * 2021-10-14 2022-02-22 中科南京智能技术研究院 一种可变权重的多位存内计算装置
KR20230070753A (ko) * 2021-11-15 2023-05-23 삼성전자주식회사 디지털 펄스 기반 크로스바 연산을 수행하는 연산 장치 및 그 동작 방법
US11811416B2 (en) * 2021-12-14 2023-11-07 International Business Machines Corporation Energy-efficient analog-to-digital conversion in mixed signal circuitry
US11942144B2 (en) 2022-01-24 2024-03-26 Stmicroelectronics S.R.L. In-memory computation system with drift compensation circuit
US12211582B2 (en) 2022-04-12 2025-01-28 Stmicroelectronics S.R.L. Signed and binary weighted computation for an in-memory computation system
US11894052B2 (en) 2022-04-12 2024-02-06 Stmicroelectronics S.R.L. Compensated analog computation for an in-memory computation system
FR3135808B1 (fr) 2022-05-23 2024-05-31 Commissariat Energie Atomique METHODE de calcul d’une opération MAC dans une mémoire RRAM de type 1S1R
US12444467B2 (en) * 2022-07-07 2025-10-14 SK Hynix Inc. Semiconductor memory device performing a multiplication and accumulation operation
KR102813514B1 (ko) * 2022-08-22 2025-05-26 연세대학교 산학협력단 멀티비트 연산을 수행하는 로컬 컴퓨팅 셀 및 이를 구비하는 cim
US20240231623A9 (en) * 2022-10-25 2024-07-11 Macronix International Co., Ltd. In-memory computing (imc) memory device and imc method thereof
IT202200026760A1 (it) 2022-12-23 2024-06-23 St Microelectronics Srl Dispositivo di computazione in-memoria avente migliorata compensazione di deriva
CN116579392B (zh) * 2023-02-21 2026-01-23 鹏城实验室 一种基于电导可调器件的神经网络训练操作系统及方法
US12355443B2 (en) * 2023-09-01 2025-07-08 Stmicroelectronics International N.V. In-memory computation system with built-in subtraction mode for handling matrix vector multiplication of signed feature data and signed computational weight data
US12525290B2 (en) * 2024-02-26 2026-01-13 Tetramem Inc. Read-out circuits for RRAM-based crossbar circuits

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100085826A1 (en) * 2008-10-08 2010-04-08 Sang Beom Kang Test circuit for measuring resistance distribution of Memory cells and semiconductor system including the same
TW201432678A (zh) * 2012-10-15 2014-08-16 Marvell World Trade Ltd 用於讀取電阻式隨機存取記憶體(rram)單元的系統和方法
CN107533668A (zh) * 2016-03-11 2018-01-02 慧与发展有限责任合伙企业 用于计算神经网络的节点值的硬件加速器

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06314264A (ja) 1993-05-06 1994-11-08 Nec Corp セルフ・ルーティング・クロスバー・スイッチ
US6759869B1 (en) 2002-06-05 2004-07-06 Xilinx, Inc. Large crossbar switch implemented in FPGA
EP1443417A1 (en) 2003-01-31 2004-08-04 STMicroelectronics S.r.l. A reconfigurable signal processor with embedded flash memory device
KR100812225B1 (ko) 2005-12-07 2008-03-13 한국전자통신연구원 멀티프로세서 SoC 플랫폼에 적합한 크로스바 스위치구조
US8082526B2 (en) 2006-03-08 2011-12-20 Altera Corporation Dedicated crossbar and barrel shifter block on programmable logic resources
US7609086B2 (en) * 2006-04-03 2009-10-27 Blaise Laurent Mouttet Crossbar control circuit
US7564262B2 (en) 2006-04-03 2009-07-21 Blaise Laurent Mouttet Crossbar comparator
US7733262B2 (en) * 2007-06-15 2010-06-08 Micron Technology, Inc. Quantizing circuits with variable reference signals
US7830729B2 (en) * 2007-06-15 2010-11-09 Micron Technology, Inc. Digital filters with memory
WO2010019441A1 (en) * 2008-08-14 2010-02-18 Nantero, Inc. Nonvolatile nanotube programmable logic devices and field programmable gate array
EP2159799A1 (en) 2008-08-27 2010-03-03 Panasonic Corporation Semiconductor memory with shared global busses for reconfigurable logic device
US20120254541A1 (en) 2011-04-04 2012-10-04 Advanced Micro Devices, Inc. Methods and apparatus for updating data in passive variable resistive memory
US8542521B2 (en) * 2011-09-12 2013-09-24 Kabushiki Kaisha Toshiba Semiconductor storage device including memory cells capable of holding data
KR101939234B1 (ko) * 2012-07-23 2019-01-16 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 상기 메모리 장치의 독출 전압의 제어 방법
US9026719B2 (en) 2012-11-15 2015-05-05 Elwha, Llc Intelligent monitoring for computation in memory
US9442854B2 (en) 2012-11-15 2016-09-13 Elwha Llc Memory circuitry including computational circuitry for performing supplemental functions
US9152827B2 (en) 2012-12-19 2015-10-06 The United States Of America As Represented By The Secretary Of The Air Force Apparatus for performing matrix vector multiplication approximation using crossbar arrays of resistive memory devices
KR102081757B1 (ko) * 2013-06-26 2020-02-26 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
CN106462798A (zh) 2014-04-15 2017-02-22 英特尔公司 用于使用关联存储器的神经形态图压缩的方法、系统和计算机程序产品
US9466362B2 (en) 2014-08-12 2016-10-11 Arizona Board Of Regents On Behalf Of Arizona State University Resistive cross-point architecture for robust data representation with arbitrary precision
US10068652B2 (en) * 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9697877B2 (en) * 2015-02-05 2017-07-04 The Board Of Trustees Of The University Of Illinois Compute memory
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
US10885429B2 (en) * 2015-07-06 2021-01-05 University Of Dayton On-chip training of memristor crossbar neuromorphic processing systems
US9627052B1 (en) * 2015-11-24 2017-04-18 Micron Technology, Inc. Apparatuses and methods for current limitation in threshold switching memories
EP3289477B1 (en) * 2016-01-30 2021-08-25 Hewlett Packard Enterprise Development LP Dot product engine with negation indicator
US10529418B2 (en) * 2016-02-19 2020-01-07 Hewlett Packard Enterprise Development Lp Linear transformation accelerators
US9754668B1 (en) 2016-03-03 2017-09-05 Flashsilicon Incorporation Digital perceptron
JP6794297B2 (ja) * 2016-05-25 2020-12-02 ヌヴォトンテクノロジージャパン株式会社 認証装置および認証方法
US10176425B2 (en) * 2016-07-14 2019-01-08 University Of Dayton Analog neuromorphic circuits for dot-product operation implementing resistive memories
US10114613B2 (en) 2016-09-07 2018-10-30 International Business Machines Corporation Mixed-precision memcomputing system
US10346347B2 (en) * 2016-10-03 2019-07-09 The Regents Of The University Of Michigan Field-programmable crossbar array for reconfigurable computing
US9852790B1 (en) 2016-10-26 2017-12-26 International Business Machines Corporation Circuit methodology for highly linear and symmetric resistive processing unit
US11043535B2 (en) 2017-01-12 2021-06-22 International Business Machines Corporation High-resistance memory devices
US10171084B2 (en) 2017-04-24 2019-01-01 The Regents Of The University Of Michigan Sparse coding with Memristor networks
US10699778B2 (en) * 2017-04-28 2020-06-30 Arizona Board Of Regents On Behalf Of Arizona State University Static random access memory (SRAM) cell and related SRAM array for deep neural network and machine learning applications
US10261977B2 (en) 2017-05-04 2019-04-16 University Of Rochester Resistive memory accelerator
JP7339723B2 (ja) 2017-07-04 2023-09-06 アークレイ株式会社 変異型シトクロムタンパク質およびその利用
US10073733B1 (en) 2017-09-01 2018-09-11 Purdue Research Foundation System and method for in-memory computing
US10943652B2 (en) 2018-05-22 2021-03-09 The Regents Of The University Of Michigan Memory processing unit
US10692570B2 (en) * 2018-07-11 2020-06-23 Sandisk Technologies Llc Neural network matrix multiplication in memory cells

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100085826A1 (en) * 2008-10-08 2010-04-08 Sang Beom Kang Test circuit for measuring resistance distribution of Memory cells and semiconductor system including the same
TW201432678A (zh) * 2012-10-15 2014-08-16 Marvell World Trade Ltd 用於讀取電阻式隨機存取記憶體(rram)單元的系統和方法
CN107533668A (zh) * 2016-03-11 2018-01-02 慧与发展有限责任合伙企业 用于计算神经网络的节点值的硬件加速器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI867438B (zh) * 2022-03-13 2024-12-21 華邦電子股份有限公司 記憶體裝置及其資料運算方法

Also Published As

Publication number Publication date
EP3797416A4 (en) 2022-03-02
US11562788B2 (en) 2023-01-24
EP3797416A1 (en) 2021-03-31
CN112154506A (zh) 2020-12-29
US20210210138A1 (en) 2021-07-08
US20190362787A1 (en) 2019-11-28
TW202013213A (zh) 2020-04-01
WO2019226289A1 (en) 2019-11-28
KR20210000313A (ko) 2021-01-04
US10943652B2 (en) 2021-03-09

Similar Documents

Publication Publication Date Title
TWI721431B (zh) 一種用於執行乘法累加(mac)運算與計算向量矩陣乘法之記憶體內計算系統與方法
Mao et al. Experimentally validated memristive memory augmented neural network with efficient hashing and similarity search
CN110807519B (zh) 基于忆阻器的神经网络的并行加速方法及处理器、装置
US11348002B2 (en) Training of artificial neural networks
US20210192325A1 (en) Kernel transformation techniques to reduce power consumption of binary input, binary weight in-memory convolutional neural network inference engine
US11226763B2 (en) Device for high dimensional computing comprising an associative memory module
US20250094126A1 (en) In-memory computation circuit and method
JP2019502225A (ja) 多層rramクロスバー・アレイに基づくメモリデバイス、およびデータ処理方法
US11756610B2 (en) Apparatus and method with in-memory delay dependent processing
TWI858535B (zh) 記憶體系統及記憶體陣列的操作方法
KR20220044643A (ko) 외부 자기장 프로그래밍 보조가 있는 초저전력 추론 엔진
Yan et al. iCELIA: A full-stack framework for STT-MRAM-based deep learning acceleration
US10777253B1 (en) Memory array for processing an N-bit word
US11200948B1 (en) System for a flexible conductance crossbar
Channamadhavuni et al. Accelerating AI applications using analog in-memory computing: Challenges and opportunities
CN111488966A (zh) 用于求解np难/np完全问题的分级神经网络
CN111859261B (zh) 计算电路及其操作方法
Bishnoi et al. Energy-efficient computation-in-memory architecture using emerging technologies
US20230161557A1 (en) Compute-in-memory devices and methods of operating the same
Verma et al. Energy-Efficient CNN Accelerator Using Voltage-Gated DSHE-MRAM
CN117789789A (zh) 电流输入模拟内容可寻址存储器
Liu et al. ReRAM-based Circuit and System Design for Future Storage and Computing
US12517657B1 (en) Implementing sparse distributed memory
US20250124102A1 (en) Vector element multiplication in nand memory
TWI897269B (zh) 多模式的記憶體內運算系統及其操作方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees