TWI671744B - 用於在記憶體中資料切換網路的裝置及方法 - Google Patents

用於在記憶體中資料切換網路的裝置及方法 Download PDF

Info

Publication number
TWI671744B
TWI671744B TW107109409A TW107109409A TWI671744B TW I671744 B TWI671744 B TW I671744B TW 107109409 A TW107109409 A TW 107109409A TW 107109409 A TW107109409 A TW 107109409A TW I671744 B TWI671744 B TW I671744B
Authority
TW
Taiwan
Prior art keywords
data
switching
array
memory
shared
Prior art date
Application number
TW107109409A
Other languages
English (en)
Other versions
TW201903769A (zh
Inventor
佩瑞 V 李
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 TW201903769A publication Critical patent/TW201903769A/zh
Application granted granted Critical
Publication of TWI671744B publication Critical patent/TWI671744B/zh

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4091Sense or sense/refresh amplifiers, or associated sense circuitry, e.g. for coupled bit-line precharging, equalising or isolating
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4097Bit-line organisation, e.g. bit-line layout, folded bit lines
    • 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; 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)
  • Computer Networks & Wireless Communication (AREA)

Abstract

本發明包含用於在記憶體中資料切換網路之裝置及方法。一例示性裝置包含一記憶體胞陣列。感測電路經可選擇地耦合至該記憶體胞陣列。一輸入/輸出(I/O)線係共用為與該陣列相關聯之用於在記憶體中資料切換之一資料路徑。一在記憶體中資料切換網路經可選擇地耦合至該各自共用I/O線。一控制器經組態以耦合至該在記憶體中資料切換網路,且引導一切換協定之啟用。

Description

用於在記憶體中資料切換網路的裝置及方法
本發明大體上係關於半導體記憶體及方法,且更特定言之係關於用於在記憶體中資料切換網路之裝置及方法。
記憶體器件通常係提供為電腦或其他電子系統中之內部半導體積體電路。存在數個不同類型之記憶體,包含揮發性記憶體及非揮發性記憶體。揮發性記憶體可需要電力來維持其資料(例如,主機資料、錯誤資料等),且包含隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、同步動態隨機存取記憶體(SDRAM)及閘流體隨機存取記憶體(TRAM)等。非揮發性記憶體可在未供電時藉由留存儲存資料而提供永久性資料,且可包含NAND快閃記憶體、NOR快閃記憶體及電阻可變記憶體(諸如相變隨機存取記憶體(PCRAM))、電阻性隨機存取記憶體(RRAM)及磁阻性隨機存取記憶體(MRAM),諸如自旋力矩轉移隨機存取記憶體(STT RAM)等。
電子系統通常包含數個處理資源(例如,一或多個處理器),該等處理資源可擷取及執行指令且將該等經執行指令之結果儲存至一合適位置。一處理器可包括數個功能單元(諸如算術邏輯單元(ALU)電路、浮點單元 (FPU)電路及一組合邏輯區塊),例如,該等功能單元可用於藉由對資料(例如,一或多個運算元)執行一運算而執行指令。如本文中所使用,運算可為(例如)一布林(Boolean)運算(諸如AND、OR、NOT、NAND、NOR及XOR),及/或其他運算(例如,反相、移位、算術、統計以及許多其他可能運算)。例如,功能單元電路可用於經由數個運算對運算元執行算術運算,諸如加法、減法、乘法及除法。
在提供指令至功能單元電路以供執行時可涉及一電子系統中之數個組件。可(例如)藉由一處理資源(諸如一控制器及/或主機處理器)執行該等指令。可將資料(例如,將對其執行指令之運算元)儲存於可藉由功能單元電路存取之一記憶體陣列中。可自該記憶體陣列擷取指令及/或資料,且可在功能單元電路開始對該資料執行指令之前序列化及/或緩衝該等指令及/或資料。此外,由於可透過功能單元電路以一或多個時脈循環執行不同類型之運算,所以亦可序列化及/或緩衝該等指令及/或資料之中間結果。在一或多個時脈循環中完成一運算之一序列可被稱為一運算循環。在一計算裝置及/或系統之處理及計算效能及電力消耗方面,完成一運算循環所消耗之時間成本高。
在許多例項中,處理資源(例如,處理器及相關聯功能單元電路)可在記憶體陣列外部,且可經由該等處理資源與該記憶體陣列之間的一匯流排存取資料以執行一指令集。可改良其中可在一記憶體內部及/或附近(例如,直接在與記憶體陣列相同之一晶片上)實施一處理及/或邏輯資源之一在記憶體中處理(PIM)器件中的處理效能。一在記憶體中處理(PIM)器件可藉由減小及消除外部通信而節省時間且亦可節約電力。
本發明之一態樣係關於一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列;一輸入/輸出(I/O)線,其經共用為與該陣列相關聯之用於在記憶體中資料切換之一資料路徑;一在記憶體中資料切換網路,其經可選擇地耦合至該各自共用I/O線,其中該記憶體中資料切換網路包括複數個計算組件,該複數個計算組件經組態以在該共用I/O線之一資料路徑中執行邏輯運算;及一控制器,其經組態以:耦合至該在記憶體中資料切換網路;及引導一切換協定之啟用。
本發明之另一態樣係關於一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列,該感測電路包含一感測放大器;複數個輸入/輸出(I/O)線,其等經可選擇地共用為與該陣列相關聯之用於在記憶體中資料切換及將一資料值自該陣列中之一源位置移動至一目的地位置之一資料路徑;一在記憶體中資料切換網路;及一控制器,其經組態以:將該各自複數個共用I/O線可選擇地耦合至該在記憶體中資料切換網路;及引導該在記憶體中資料切換網路之一切換協定之啟用,以將經由該複數個共用I/O線移動之資料值之一序列中之一資料值之一位置自該陣列切換至該在記憶體中資料切換網路,其中該資料值經切換至序列中另一位置。
本發明之另一態樣係關於一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列,該感測電路包含一感測放大器;一輸入/輸出(I/O)線,其經共用為與該陣列相關聯之用於在記憶體中資料切換之一資料路徑,其中該共用I/O線將該感測電路可選擇地耦合至該等共用I/O線之該資料路徑中之一切換節點;該資料路徑中之複數個邏輯條,其等包含一第一邏輯條,該第一邏輯條包括對應於該陣列之一列 之一第一子列之複數個記憶體胞之一數目之數目的複數個第一切換節點;及與該陣列相關聯之一控制器,該控制器經組態以:經由該感測電路,引導一第一資料值經由該共用I/O線自該陣列之一第一列之一第一子列移動至該資料路徑中之該第一邏輯條之一第一切換節點;引導使用該第一切換節點對來自該第一子列之該第一資料值執行一切換協定之一第一切換操作;及引導源自該第一切換操作之執行之一第一經切換資料值,經由連接電路,自該第一邏輯條移動至該資料路徑中之一第二邏輯條之一第二切換節點。
本發明之另一態樣係關於一種用於操作一記憶體器件之方法,其包括:藉由一第一邏輯條對一資料值執行複數個切換操作之一第一子集之一第一切換操作,該資料值係經由由一陣列及該第一邏輯條共用之一輸入/輸出線(I/O)自該陣列之一記憶體胞移動;經由自該第一邏輯條至一最後邏輯條經可選擇地耦合邏輯條之連接電路,將對其執行該複數個切換操作之該第一子集之該資料值循序移動至該最後邏輯條;藉由該最後邏輯條,執行該第一子集之一最後切換操作;及藉由該最後邏輯條,對源自完成該複數個切換操作之該第一子集之執行之一資料值執行該複數個切換操作之一第二子集之一第一切換操作。
100‧‧‧計算系統/系統
109-0至109-N-1‧‧‧邏輯條
110‧‧‧主機
118‧‧‧列
119‧‧‧列
120‧‧‧記憶體器件/器件
121‧‧‧庫
121-1‧‧‧庫
122‧‧‧記憶體行/行
123‧‧‧庫區段/區段
123-0至123-N-1‧‧‧庫區段
124-0至124-N-1‧‧‧放大區域/感測組件條
125-0至125-N-1‧‧‧子陣列/第一子集
126-0至126-N-1‧‧‧子陣列/長數位線子陣列/第二子集
128‧‧‧分割區
128-0至128-M-1‧‧‧分割區
130‧‧‧記憶體陣列/陣列/記憶體胞陣列
131-1至131-M‧‧‧計算組件
140‧‧‧控制器
141‧‧‧資料
142‧‧‧位址電路
143‧‧‧通道控制器
144‧‧‧輸入/輸出(I/O)電路
146‧‧‧列解碼器
148‧‧‧寫入電路
149‧‧‧寫入路徑
150‧‧‧感測電路
151‧‧‧控制及資料暫存器
152‧‧‧行解碼器
153‧‧‧位址/控制(A/C)路徑
154‧‧‧控制匯流排
155‧‧‧共用輸入/輸出(I/O)線
156‧‧‧資料匯流排
157‧‧‧頻帶外(OOB)匯流排
161‧‧‧指令讀取路徑/指令及/或資料讀取路徑
170‧‧‧鎖存器/邏輯
171‧‧‧切換組件
172‧‧‧在記憶體中資料切換網路/資料切換網路
202-1‧‧‧電晶體
202-2‧‧‧電晶體
203-1‧‧‧電容器
203-2‧‧‧電容器
204-X‧‧‧存取線/字線
204-Y‧‧‧存取線/字線
205-1‧‧‧數位線
205-2‧‧‧數位線
206‧‧‧感測放大器
207-1‧‧‧傳遞閘
207-2‧‧‧傳遞閘
212-1‧‧‧接地
212-2‧‧‧VDD
213‧‧‧運算選擇邏輯/邏輯運算選擇邏輯
214‧‧‧平衡電路
215‧‧‧鎖存器/交叉耦合鎖存器/主要鎖存器
224‧‧‧電晶體
225-1‧‧‧電晶體
225-2‧‧‧電晶體
226‧‧‧平衡(EQ)控制信號線
227-1‧‧‧n通道電晶體/電晶體/NMOS電晶體/交叉耦合NMOS電晶體
227-2‧‧‧n通道電晶體/電晶體/NMOS電晶體/交叉耦合NMOS電晶體
229-1‧‧‧p通道電晶體/電晶體/PMOS電晶體/交叉耦合PMOS電晶體
229-2‧‧‧p通道電晶體/電晶體/PMOS電晶體/交叉耦合PMOS電晶體
230‧‧‧記憶體陣列/陣列
231‧‧‧計算組件
232-1‧‧‧連接電路
232-2‧‧‧連接電路
250‧‧‧感測電路
264‧‧‧次要鎖存器
305-1‧‧‧數位線
305-2‧‧‧數位線
306-0至306-7‧‧‧感測放大器
307-1‧‧‧傳遞閘
307-2‧‧‧傳遞閘
319‧‧‧列
322-0‧‧‧行
325‧‧‧動態隨機存取記憶體(DRAM)記憶體子陣列/子陣列
331-0至331-7‧‧‧計算組件
350-0至350-7‧‧‧感測電路
355‧‧‧共用輸入/輸出(I/O)線
358-1‧‧‧行選擇電路
358-2‧‧‧行選擇電路
359-1‧‧‧選擇電晶體
359-2‧‧‧選擇電晶體
360‧‧‧計算單元
372‧‧‧在記憶體中資料切換網路/資料切換網路
409-0至409-N-1‧‧‧資料切換網路之層級/邏輯條
423‧‧‧庫區段
425-1至425-32‧‧‧子陣列
431-1至431-Z‧‧‧計算組件
455‧‧‧共用輸入/輸出(I/O)線
460‧‧‧計算單元
465-1至465-16‧‧‧子列
472‧‧‧在記憶體中資料切換網路/資料切換網路
520‧‧‧記憶體器件/具備在記憶體中處理(PIM)能力之器件/具備在記憶體中處理(PIM)能力之記憶體器件
521-0至521-7‧‧‧庫
531-0至531-7‧‧‧控制邏輯
532-0至532-7‧‧‧定序器
533-0至533-7‧‧‧時序電路
540-0至540-7‧‧‧控制器
541‧‧‧高速介面(HSI)/介面
545‧‧‧庫仲裁器
555-0至555-7‧‧‧共用輸入/輸出(I/O)線
550/570-1至550/570-7‧‧‧感測電路及邏輯
631-1至631-Z‧‧‧計算組件
641‧‧‧遮罩條
642‧‧‧控制器
655‧‧‧共用輸入/輸出(I/O)線
660‧‧‧計算單元
672‧‧‧資料切換網路
706‧‧‧鎖存器/感測放大器
707-1‧‧‧傳遞閘
707-2‧‧‧傳遞閘
713‧‧‧邏輯電路/邏輯運算選擇邏輯
731‧‧‧計算組件
742‧‧‧交換電晶體
750-1‧‧‧隔離電晶體
750-2‧‧‧隔離電晶體
752‧‧‧邏輯選擇電晶體
754‧‧‧邏輯選擇電晶體
755-1‧‧‧共用輸入/輸出(I/O)線
755-2‧‧‧共用輸入/輸出(I/O)線
762‧‧‧邏輯選擇電晶體
764‧‧‧邏輯選擇電晶體
781‧‧‧右移位電晶體
782‧‧‧控制線
783‧‧‧控制線
786‧‧‧右移位電晶體
787‧‧‧反相器
788‧‧‧反相器
789‧‧‧左移位電晶體
790‧‧‧左移位電晶體
791‧‧‧控制線
792‧‧‧控制線
844‧‧‧欄
845‧‧‧欄
847‧‧‧列
856‧‧‧「Not Open」欄
870‧‧‧「Open True」欄
871‧‧‧「Open Invert」欄
875‧‧‧連接路徑
876‧‧‧列
877‧‧‧列
878‧‧‧列
879‧‧‧列
880‧‧‧標頭
963‧‧‧切換器
966‧‧‧切換節點
966-0至966-M-1‧‧‧切換節點
967-0至967-N-1‧‧‧資料切換網路之層級/邏輯條
968-0至968-M-1‧‧‧鎖存器
969-1至969-M‧‧‧切換操作序列之部分
970‧‧‧鎖存器
972-1‧‧‧資料切換網路/在記憶體中資料切換網路
972-2‧‧‧資料切換網路/在記憶體中資料切換網路
FF‧‧‧控制信號
FT‧‧‧控制信號
ISO‧‧‧控制信號
Pass‧‧‧邏輯運算選擇邏輯信號
Pass*‧‧‧邏輯運算選擇邏輯信號
PHASE 1R‧‧‧信號
PHASE 2R‧‧‧信號
PHASE 1L‧‧‧信號
PHASE 2L‧‧‧信號
TF‧‧‧控制信號
TT‧‧‧控制信號
圖1A係根據本發明之數項實施例之呈包含一記憶體器件之一計算系統之形式之一裝置的一方塊圖。
圖1B及圖1C係根據本發明之數項實施例之一記憶體器件之庫區段的方塊圖。
圖1D及圖1E係根據本發明之數項實施例之分別對應於圖1B及圖1C 之一記憶體器件之庫的方塊圖。
圖1F係根據本發明之數項實施例之具有在一陣列之庫區段本地之一資料路徑中之一共用輸入/輸出(I/O)線之一記憶體器件的另一方塊圖。
圖2係繪示根據本發明之數項實施例之一記憶體器件之電路的一示意圖,該電路包含可包含於感測電路及/或邏輯條中之一感測放大器及一計算組件。
圖3係繪示根據本發明之數項實施例之用於與一在記憶體中資料切換網路相關聯之一陣列之一資料路徑中之複數個共用I/O線之電路的一示意圖。
圖4係繪示根據本發明之數項實施例之藉由複數個共用I/O線耦合至具有經組態為一在記憶體中資料切換網路之複數個邏輯條之一計算單元的一陣列之複數個區段之一方塊圖。
圖5係繪示根據本發明之數項實施例之一記憶體器件之一控制器之一實例的一方塊圖。
圖6係繪示根據本發明之數項實施例之一記憶體器件之一控制器之另一實例的一方塊圖,該控制器用以控制資料切換協定之操作及選擇。
圖7係繪示根據本發明之數項實施例之用於執行邏輯運算之電路的一示意圖。
圖8係繪示根據本發明之數項實施例之藉由圖7中所展示之電路實施之可選擇邏輯運算結果的一邏輯表。
圖9A及圖9B係繪示根據本發明之數項實施例之在記憶體中資料切換網路之示意圖。
本發明包含用於在記憶體中資料切換網路之裝置及方法。在至少一項實施例中,一裝置包含一記憶體胞陣列及可選擇地耦合至該記憶體胞陣列之感測電路。一輸入/輸出(I/O)線係共用為與該陣列相關聯之用於記憶體內資料切換之一資料路徑。一在記憶體中資料切換網路可選擇地耦合至各自共用I/O線。例如,感測電路可選擇地耦合至記憶體胞行及共用I/O線且記憶體中資料切換網路亦可選擇地耦合至該等共用I/O線。一控制器經組態以耦合至該在記憶體中資料切換網路且引導一切換協定之啟用。
如本文中所描述,一在記憶體中資料切換網路意謂用於重組及/或重新組織(例如,調整(swizzle))資料值以便切換一序列(例如,複數個)資料值中之至少一個資料值(例如,所有資料值)之一位置之(例如,在一固定組態中及/或如選自複數個替代可程式化組態之)電路。如本文中所描述自其等在序列中之先前位置調整資料值可提供數個優點。各種操作之效能可依靠相對於其等原始序列調整該等資料值及/或可藉由相對於其等原始序列調整該等資料值而改良。此等操作可(例如)包含序列中之資料之快速傅立葉(Fourier)變換、分散集中功能、分類功能、切換端序(例如,最高有效位元至最低有效位元)以及其中資料切換可有用之其他可能操作,以將位元組壓縮成向量(例如,壓縮向量以用於成像)、使序列中之位元組及/或位元自一個位置移位及/或移動至另一位置。
序數(諸如第一及第二)在本文中用於幫助使類似及/或可選擇耦合之組件相互關聯及/或區分類似及/或可選擇耦合之組件(例如,記憶體胞之子陣列與相關聯感測電路、資料值與相關聯計算組件、記憶體胞之子列與相關聯計算組件、邏輯條與相關聯計算組件、連接電路與相關聯計算組件及/或邏輯條等)。除非上下文另有明確規定(例如,藉由使用諸如相鄰之術語 等),否則該等序數並不用於指示該等組件之間的一特定排序及/或關係。
一共用I/O線(例如,如以155所展示且結合圖1D至圖1F及本文中別處所描述)用作與記憶體陣列(例如,如以130所展示且結合圖1A及本文中別處所描述)相關聯之用於資料移動之一資料路徑。在一些實施例中,該共用I/O線可將感測電路(例如,如以150所展示且結合圖1A及本文中別處所描述)及/或其中之一感測放大器及/或計算組件(例如,如分別以206及231所展示,且結合圖2及本文中別處所描述)耦合至一在記憶體中資料切換網路(例如,如以172及372所展示且結合圖1A及圖3及本文中別處所描述)。在一些實施例中,共用I/O線可將一邏輯條中之一計算組件(例如,如以431及409所展示且結合圖4及本文中別處所描述)耦合至感測電路及/或耦合至共用I/O線之資料路徑中之在記憶體中資料切換網路。與共用I/O線之資料路徑相關聯之邏輯條之計算組件具有等於資料路徑之間距之一間距且該間距依據記憶體胞陣列之數位線(例如,如以205所展示且結合圖2及本文中別處所描述)之一間距而變化。例如,邏輯條之計算組件具有記憶體胞陣列之數位線之間距的整數倍之一間距。
如本文中所使用,一「共用I/O線」意謂在一資料路徑中陣列本地之一I/O線,該資料路徑具有依據記憶體胞陣列之一間距而變化之一間距。該共用I/O線可定位於記憶體陣列之一庫(例如,如以121所展示且結合圖1D至圖1F及本文中別處所描述)上且可經多工化至該陣列之複數個行(例如,一DRAM陣列之互補數位/感測線)及/或耦合至該等行之感測電路。如本文中所描述,共用I/O線可選擇地耦合(例如,如藉由控制器140控制及/或引導)至陣列之複數個子陣列(例如,如以125及/或126所展示且結合圖1B及圖1C及本文中別處所描述)、一計算單元(例如,如以460所展示且結 合圖4及本文中別處所描述)、及/或本文中所描述之在記憶體中資料切換網路。因為單數形式「一」、「一個」及「該」在本文中可包含單數及複數個參考物兩者,所以除非上下文另有明確規定,否則「一共用I/O線」可用於指代「一對互補共用I/O線」。此外,「一共用I/O線」或「若干共用I/O線」可用作「複數個共用I/O線」之一縮寫。該共用I/O線不同且相異於與陣列相關聯之I/O電路,其意欲根據一陣列協定(諸如DDR4)將資料移動至陣列及自陣列移動資料及/或結合一主機(例如,如以110所展示且結合圖1A及本文中別處所描述)將資料移至及移出一記憶體器件(例如,如以120所展示且結合圖1A及本文中別處所描述)。
如本文中所使用,資料移動係一包含性術語,其包含(例如)將資料值自一源位置複製、傳送及/或輸送至一目的地位置。例如,資料可自一子陣列之感測電路之一感測放大器移動至陣列本地之一共用I/O線之一資料路徑中之一邏輯條中的一計算組件。複製資料值可指示儲存(快取)於感測放大器中之資料值經複製及移動至陣列本地之共用I/O線之資料路徑中之一邏輯條中的一計算組件且儲存於列之子列中之原始資料值可保持不變。傳送資料值可指示儲存(快取)於感測放大器中之資料值經複製及移動至陣列本地之共用I/O線之資料路徑中之一邏輯條中的一計算組件且儲存於列之子列中之原始資料值之至少一者可改變(例如,藉由擦除及/或藉由一後續寫入操作,如本文中所描述)。輸送資料值可用於指示使經複製及/或經傳送之資料值移動(例如,藉由將資料值自源位置放置於共用I/O線上且輸送至目的地位置)之程序。
如下文更詳細描述,實施例可容許一主機系統分配一或多個DRAM庫中之數個位置(例如,陣列、子陣列及/或子陣列之部分,諸如列及其子 列)以保持(例如,儲存)及/或處理資料。一主機系統及一控制器可對整個區塊之程式指令(例如,PIM命令指令)及資料執行位址解析且引導(例如,控制)資料及命令分配、儲存及/或移動(例如,流動)至一目的地(例如,目標)庫內之經分配位置(例如,子陣列及子陣列之部分)中。在DRAM陣列中寫入及/或讀取資料及/或執行命令(例如,藉由一邏輯條移動資料值以用於執行操作,如本文中所描述)可利用DRAM器件之一正常DRAM讀取/寫入路徑。如讀者將瞭解,雖然關於本文中所提呈之在資料路徑中計算操作之實例論述一PIM器件之一DRAM型記憶體陣列,但實施例並不限於一PIM DRAM實施方案。
本文中所描述之記憶體器件可使用針對子陣列之一庫之數個控制器、針對個別子陣列之控制器及/或針對鎖存器組件之控制器(例如,各控制器為一定序器、一狀態機、一微控制器、一子處理器、ALU電路或某一其他類型之控制器)來執行一指令集以對資料(例如,一或多個運算元)執行一運算。如本文中所使用,運算可為(例如)一布林邏輯運算(諸如AND、OR、NOT、NAND、NOR及XOR),及/或其他運算(例如,反相、移位、算術、統計以及許多其他可能運算)。例如,功能單元電路可用於經由數個邏輯運算對運算元執行算術運算,諸如加法、減法、乘法及除法。
在本發明之以下詳細描述中,參考形成本發明之一部分之隨附圖式,且在隨附圖式中藉由圖解展示可如何實踐本發明之一或多項實施例。此等實施例經足夠詳細描述以使一般技術者能夠實踐本發明之實施例,且應理解,可利用其他實施例且可在不脫離本發明之範疇之情況下作出程序、電及結構改變。
如本文中所使用,指定符諸如「X」、「Y」、「Z」、「N」、「M」等(尤其關於圖式中之元件符號)指示可包含如此指定之數個特定特徵。亦應理解,本文中所使用之術語僅出於描述特定實施例之目的,且並不意欲限制。如本文中所使用,除非上下文另有明確規定,否則單數形式「一」、「一個」及「該」可包含單數及複數個參考物兩者。此外,「數個」、「至少一個」及「一或多個」(例如,數個記憶體陣列)可係指一或多個記憶體陣列,而「複數個」意指一個以上此等事物。此外,貫穿此申請案在一容許意義上(亦即,在本文中所描述之至少一些實施例中有可能及/或能夠)而非在一強制意義上(亦即,必須)使用字詞「可(can及may)」。術語「包含」及其衍生詞意謂「包含(但不限於)」。術語「耦合(couple/coupled及coupling)」意謂直接或間接實體連接或用於命令及/或資料之存取及移動(傳輸),視內容脈絡情況而定。術語「資料」及「資料值」在本文中可互換使用且可具有相同含義,視內容脈絡情況而定。
本文中之圖遵循一編號慣例,其中首位數字或前幾位數字對應於圖號且剩餘數字識別圖中之一元件或組件。可藉由使用類似數字識別不同圖之間的類似元件或組件。例如,108可指代圖1A中之元件「08」,且一類似元件可在圖2中指代為208。如將瞭解,可添加、交換及/或消除本文中之各項實施例中所展示之元件,以便提供本發明之數項額外實施例。此外,圖中所提供之元件之比例及/或相對標度旨在繪示本發明之某些實施例,且不應被視作限制意義。
圖1A係根據本發明之數項實施例之呈包含一記憶體器件120(其包含一記憶體陣列130)之一計算系統100之形式之一裝置的一方塊圖。如本文中所使用,一記憶體器件120、控制器140、切換組件171、記憶體陣列 130、感測電路150及/或一在記憶體中資料切換網路172亦可被單獨視作一「裝置」。
如本文中所使用,在一些實施例中,額外「鎖存器」可意謂感測、耦合、儲存及/或移動(例如,讀取、儲存、快取)一陣列中之記憶體胞之資料值且相異於與圖3至圖4及圖6至圖7中所展示之複數個共用I/O線455之一資料路徑中的一計算單元460中之複數個計算組件431-1、…、431-Z及/或邏輯條409-0、…、409-N-1相關聯之鎖存器(例如,如以706所展示且結合圖7及本文中別處所描述)之額外功能性(例如,放大器、記憶體胞、選擇邏輯)。例如,在一些實施例中,鎖存器可與一切換節點相關聯(例如,圖9A中所展示且結合圖9A及本文中別處所描述之切換節點966之鎖存器970)。在陣列本地之複數個共用I/O線155之一資料路徑中的邏輯條(例如,如以109-0、…、109-N-1所展示且結合圖1F及本文中別處所描述)可與庫121-1中之記憶體胞之各種庫區段123-0、…、123-N-1相關聯。庫121-1可為記憶體器件120上之複數個庫之一者。
圖1A中之系統100包含耦合(例如,連接)至記憶體器件120之一主機110。主機110可為一主機系統,諸如一個人膝上型電腦、一桌上型電腦、一數位相機、一智慧型電話或一記憶體卡讀取器以及各種其他類型之主機。主機110可包含一系統主機板及/或底板,且可包含數個處理資源(例如,一或多個處理器、微處理器或某一其他類型之控制電路)。系統100可包含單獨積體電路,或主機110及記憶體器件120兩者可在相同積體電路上。系統100可為(例如)一伺服器系統及/或一高效能計算(HPC)系統及/或其之一部分。儘管圖1A中所展示之實例繪示具有馮.諾伊曼(Von Neumann)架構之一系統,然本發明之實施例亦可實施於非馮.諾伊曼架構 中,其可不包含通常與馮.諾伊曼架構相關聯之一或多個組件(例如,CPU、ALU等)。
為清楚起見,系統100已經簡化以集中於與本發明特定相關之特徵。記憶體陣列130可為一DRAM陣列、SRAM陣列、STT RAM陣列、PCRAM陣列、TRAM陣列、RRAM陣列、NAND快閃陣列及/或NOR快閃陣列以及其他類型之陣列。陣列130可包含配置成藉由存取線(其等在本文中可稱為字線或選擇線)耦合之列及藉由感測線(其等在本文中可稱為資料線或數位線)耦合之行之記憶體胞。儘管圖1A中展示一單個陣列130,然實施例並不受限於此。例如,記憶體器件120可包含數個陣列130(例如,DRAM胞、NAND快閃胞之數個庫等)。
記憶體器件120可包含位址電路142以鎖存藉由I/O電路144經由一資料匯流排156(例如,連接至主機110之一I/O匯流排)提供之位址信號(例如,經由本地I/O線及全域I/O線提供至外部ALU電路及/或DRAM DQ)。如本文中所使用,DRAM DQ可能夠經由一匯流排(例如,資料匯流排156)將資料輸入至一庫及/或自一庫輸出資料(例如,自控制器140及/或主機100輸出資料及/或將資料輸入至控制器140及/或主機100)。在一寫入操作期間,可將一電壓(高=1、低=0)施加至一DQ(例如,一接針)。此電壓可轉變成一適當信號且藉由一選定記憶體胞儲存。在一讀取操作期間,一旦完成存取,自一選定記憶體胞讀取之一資料值便可出現於DQ處且(例如,藉由輸出啟用信號為低)啟用輸出。在其他時間,DQ可處於一高阻抗狀態中,使得DQ未流出或汲入電流且未向系統呈現一信號。當兩個或兩個以上器件(例如,庫)共用一經組合資料匯流排時,此亦可減少DQ爭用,如本文中所描述。此等DQ係單獨的且相異於在陣列130本地之一資料 路徑中之複數個共用I/O線155(在圖1B及圖1C中)。
狀態及異常資訊可(例如)透過一頻帶外(OOB)匯流排157(例如,高速介面(HSI))自記憶體器件120之控制器140提供至一通道控制器143,繼而可自該通道控制器143提供至主機110。該通道控制器143可包含一邏輯組件以將複數個位置(例如,針對子陣列之控制器)分配於各自庫之陣列中以儲存與複數個記憶體器件120之各者之操作相關聯的各種庫之庫命令、應用程式指令(例如,針對操作序列)及引數(PIM命令)。通道控制器143可將命令(例如,PIM命令)分派給複數個記憶體器件120以將該等程式指令儲存於一記憶體器件120之一給定庫121(圖1D至圖1F之庫121及121-1)內。
透過位址電路142接收位址信號且藉由一列解碼器146及一行解碼器152解碼該等位址信號以存取記憶體陣列130。可藉由使用感測電路150之如本文中所描述之數個感測放大器感測在感測線(數位線)上之電壓及/或電流變化而自記憶體陣列130感測(讀取)資料。一感測放大器可自記憶體陣列130讀取及鎖存一頁(例如,一列)資料。如本文中所描述,額外計算電路可耦合至感測電路150且可結合感測放大器一起用於感測、儲存(例如,快取及/或緩衝)、執行計算功能(例如,運算)及/或移動資料。可使用I/O電路144以經由資料匯流排156(例如,64位元寬資料匯流排)與主機110進行雙向資料通信。可使用寫入電路148以將資料寫入至記憶體陣列130。
控制器140(例如,圖5中所展示之庫控制邏輯、定序器及時序電路)可解碼藉由控制匯流排154自主機110提供之信號(例如,命令)。此等信號可包含晶片啟用信號、寫入啟用信號及/或位址鎖存信號,該等信號可用於控制對記憶體陣列130執行之操作,包含資料感測、資料儲存、資料切 換、資料移動(例如,複製、傳送及/或輸送資料值)、資料寫入及/或資料擦除操作以及其他操作。在各項實施例中,控制器140可負責執行來自主機110之指令及/或存取記憶體陣列130。控制器140可為一狀態機、一定序器或某一其他類型之控制器。控制器140可控制使資料在一陣列(例如,記憶體陣列130)之一列中移位(例如,向右或向左),可在數個經儲存切換協定之間啟用及/或選擇(例如,使用發送至一在記憶體中資料切換網路之信號)及/或可執行微碼指令以執行諸如計算操作之運算(例如,AND、OR、NOR、XOR、加法、減法、乘法、除法等)以及其他功能性。
下文(例如,在圖2及圖3中)進一步描述感測電路150之實例。例如,在一些實施例中,感測電路150可包含數個感測放大器。在一些實施例中,感測電路150可包含該數目個感測放大器及對應數目個計算組件,其等可用作一累加器且除了本文中所描述之在資料路徑中計算操作之外亦可用於在各子陣列中(例如,對與互補感測線相關聯之資料)執行操作。
在一些實施例中,感測電路150可用於使用藉由記憶體陣列130儲存之資料作為輸入執行操作且參與將用於複製、傳送、輸送、寫入、邏輯及/或儲存操作之資料移動至記憶體陣列130中及/或邏輯條109中之一不同位置而不經由一感測線位址存取傳送資料(例如,未觸發一行解碼信號)。因而,在一些實施例中,各種計算功能可使用感測電路150且在感測電路150內執行而非藉由感測電路150外部之處理資源(例如,藉由與主機110相關聯之一處理器及/或定位於器件120上(諸如定位於控制器140上或別處)之其他處理電路,諸如ALU電路)執行(或與由感測電路150外部之處理資源執行相關聯)。然而,此外,本文中所描述之實施例可對自陣列之列移動至一計算單元中之複數個計算組件131-1、…、131-M及/或邏輯條 109-0、…、109-N-1之資料值執行在資料路徑中計算功能及/或操作。作為一實例,根據一些實施例,可在該計算單元中以2ns之速度(相較於觸發陣列中之列所需之60ns之一例示性時間)控制計算操作而無需將該等資料值移動回至該等列中。
在各種先前方法中,(例如)與一運算元相關聯之資料將經由感測電路自記憶體讀取且經由I/O線(例如,經由本地I/O線及/或全域I/O線)提供至外部ALU電路。外部ALU電路可包含數個暫存器且將使用運算元執行計算功能且結果將經由I/O電路144傳送回至陣列。
相比而言,本文中之實施例在陣列本地之一資料路徑中之一計算單元中對經由複數個共用I/O線155自陣列之列及/或子列移動至複數個計算組件131-1、…、131-M及/或邏輯條109-0、…、109-N-1之資料值執行計算功能。此外,感測電路150可經組態以對藉由記憶體陣列130儲存之資料執行運算且在未啟用耦合至感測電路150之一I/O線(例如,一本地I/O線)的情況下將結果儲存回至記憶體陣列130。然而,一旦經載入,便可在計算單元中更快(例如,以2ns之速度)(相較於觸發陣列中之列所需之一例示性時間(例如,60ns))地控制計算操作而無需將該等資料值移動回至列及/或子列中。感測電路150可形成於與陣列之記憶體胞之間距上。與複數個共用I/O線155之資料路徑相關聯的複數個計算組件131-1、…、131-M及/或邏輯條109-0、…、109-N-1可具有等於該資料路徑之間距之一間距且該間距依據記憶體胞陣列之數位線之一間距而變化。
例如,本文中所描述之感測電路150可形成於與一對互補感測線(例如,數位線)相同之一間距上。作為一實例,一對互補記憶體胞可具有擁有一6F2間距(例如,3F x 2F)之一胞大小,其中F係一特徵大小。若該等 互補記憶體胞之一對互補感測線之間距係3F,則感測電路在間距上指示該感測電路(例如,每對各自互補感測線一感測放大器及/或一對應計算組件)經形成以裝配於該等互補感測線之3F間距內。同樣地,與複數個共用I/O線155之資料路徑相關聯之邏輯條109-0、…、109-N-1之計算組件131-1、…、131-M具有依據該等互補感測線之3F間距而變化之一間距。例如,邏輯條109-0、…、109-N-1之計算組件131-1、…、131-M可具有記憶體胞陣列之數位線之3F間距的整數倍之一間距,該間距亦可對應於複數個共用I/O線155之一間距。
相比而言,各種先前系統之(若干)處理資源(例如,一計算引擎,諸如一ALU)之電路可不符合與一記憶體陣列相關聯之間距規則。例如,一記憶體陣列之記憶體胞可具有一4F2或6F2胞大小。因而,與先前系統之ALU電路相關聯之器件(例如,邏輯閘)可不能夠形成於與記憶體胞之間距上(例如,形成於與感測線相同之一間距上),例如,此可影響晶片大小及/或記憶體密度。在一些計算系統及子系統(例如,一中央處理單元(CPU))之背景內容中,可在並不處於與記憶體(例如,陣列中之記憶體胞)之間距上及/或具有記憶體之晶片上之一位置中處理資料,如本文中所描述。例如,可藉由與一主機相關聯之一處理資源(例如,而非在與記憶體之間距上)處理資料。
因而,在數項實施例中,不需要在陣列130及感測電路150外部之電路來執行計算功能,因為感測電路150可在不使用一外部處理資源的情況下執行適當操作以執行此等計算功能或可在陣列本地之複數個共用I/O線之一資料路徑中執行此等操作。因此,感測電路150及/或複數個共用I/O線155之一資料路徑中之一計算單元中的複數個計算組件131-1、…、131- M及/或邏輯條109-0、…、109-N-1可用於至少在一定程度上補充或取代此一外部處理資源(或此一外部處理資源之至少頻寬消耗)。在一些實施例中,感測電路150及/或複數個共用I/O線155之一資料路徑中之一計算單元中的複數個計算組件131-1、…、131-M及/或邏輯條109-0、…、109-N-1可用於執行除了藉由一外部處理資源(例如,主機110)執行之操作以外的操作(例如,執行指令)。例如,主機110及/或感測電路150可限於僅執行特定操作及/或特定數目個操作。
本文中所描述之操作可包含與一具備PIM能力之器件相關聯之操作。具備PIM能力之器件操作可使用基於位元向量之操作。如本文中所使用,術語「位元向量」意謂一位元向量記憶體器件(例如,一PIM器件)上之實體上連續或非連續儲存於一記憶體胞陣列之一列中之數個位元。因此,如本文中所使用,一「位元向量操作」意謂對一位元向量(其係(例如,藉由一PIM器件使用之)虛擬位址空間之一連續或非連續部分)執行之一操作。例如,該PIM器件中之虛擬位址空間之一列可具有16K個位元之一位元長度(例如,對應於一DRAM組態中之16K對互補記憶體胞)。如本文中所描述,用於此一16K位元列之感測電路150可包含形成於與可選擇地耦合至該16位元列中之對應記憶體胞之感測線之間距上的一對應16K個感測放大器206及/或處理元件(例如,計算組件231)。PIM器件之感測電路及/或邏輯條中之一計算組件可作為一單位元處理元件(PE)而對藉由感測電路150感測(例如,藉由一感測放大器感測及/或儲存,如本文中所描述)之記憶體胞之列或子列之位元向量的一單個位元進行操作。類似地,複數個共用I/O線155之一資料路徑中之一計算單元中的邏輯條109-0、…、109-N-1之複數個計算組件131-1、…、131-M可各作為一單位元PE而對在一陣列 中感測之記憶體胞之列及/或子列之位元向量的一單個位元進行操作。
啟用一I/O線可包含啟用(例如,接通、啟動)具有耦合至一解碼信號(例如,一行解碼信號)之一閘極及/或耦合至該I/O線之一源極/汲極之一電晶體。然而,實施例並不限於不啟用一I/O線。例如,在數項實施例中,感測電路(例如,150)可用於在不啟用陣列之行解碼線的情況下執行操作。
然而,可啟用複數個共用I/O線155以便將資料值載入至該複數個共用I/O線155之一資料路徑中之一計算單元中的複數個計算組件131-1、…、131-M及/或邏輯條109-0、…、109-N-1(其中可更快地控制計算操作)。例如,在該計算單元中之該複數個計算組件131-1、…、131-M及/或109-0、…、109-N-1中,可依2ns之速度執行計算操作。此速度增強可歸因於無需憑藉用於觸發陣列中之列之相關聯時間(例如,60ns)將資料值移動回至列及/或子列中。
替代性地或此外,可啟用複數個共用I/O線155以便將資料值載入至一在記憶體中資料切換網路172。本文中描述資料切換網路之各項實施例。在一些實施例中,資料切換網路(例如,如以372所展示且結合圖3所描述)可(例如,實體上)定位於具有一記憶體胞陣列(例如,包含如以125及/或126所展示且結合圖1B及圖1C及本文中別處所描述之子陣列)之晶片上,資料切換網路可藉由共用I/O線可選擇地耦合至該記憶體胞陣列。如本文中所描述,位於具有其他事物之晶片上意謂形成於與對應子陣列中之記憶體胞相同之晶片上。因而,在各項實施例中,資料切換網路可經形成而鄰近陣列及/或與陣列之控制器140或陣列之控制器140之部分相關聯。在一些實施例中,資料切換網路(例如,如以472所展示且結合圖4所描述) 可形成於與陣列(例如,子陣列425-1、…、425-32)之間距上及/或具有該陣列之晶片上,且可為計算單元460之部分(例如,資料切換網路之層級可對應於計算單元460之一些或全部邏輯條409-0、…、409-N-1)。
圖1B及圖1C係根據本發明之數項實施例之一記憶體器件之庫區段之方塊圖。圖1B係一記憶體器件之一庫區段123之一方塊圖。例如,庫區段123可表示一記憶體器件之一庫之數個庫區段(例如,庫區段0、庫區段1、…、庫區段M)之一例示性區段。如圖1B中所展示,一庫架構可包含複數個記憶體行122(水平展示為X)(例如,在一例示性DRAM庫及庫區段中之16,384行)。此外,庫區段123可劃分成分別以125-0、125-1、…、125-N-1展示之子陣列0、子陣列1、…、及子陣列N-1(例如,128個子陣列),該等子陣列藉由經組態以耦合至一資料路徑(例如,本文中所描述之共用I/O線)之放大區域而分離。因而,該等子陣列125-0、125-1、…、125-N-1可各具有分別對應於感測組件條0、感測組件條1、…、及感測組件條N-1之展示為124-0、124-1、…、124-N-1之放大區域。
各行122經組態以耦合至感測電路150,如結合圖1A及本文中別處所描述。因而,一子陣列中之各行可個別耦合至促成該子陣列之一感測組件條之一感測放大器及計算組件。例如,如圖1B中所展示,庫架構可包含各具有擁有感測放大器及計算組件之感測電路150之感測組件條0、感測組件條1、…、感測組件條N-1,在各項實施例中,該等感測放大器及計算組件可用作暫存器、快取區及資料緩衝區且耦合至子陣列125-0、125-1、…、125-N-1中之各行122。
子陣列125-0、125-1、…、125-N-1之各者可包含複數個列119(垂直展示為Y)(例如,在一例示性DRAM庫中,各子陣列可包含512列)。在 一些實施例中,子陣列之一或多者(例如,所有子陣列)中之列之數目可實質上相等(例如,全部具有128列、256列、512列以及其他可能性)。例如,複數個子陣列之各子陣列在一行中可包含實質上等於一鄰近子陣列之一行中之記憶體胞之一數目之數目個記憶體胞(例如,全部具有128個、256個、512個記憶體胞以及其他可能性)及/或各子陣列之一感測線可具有實質上等於該鄰近子陣列(例如,陣列中之所有子陣列)之該行之一感測線之一長度之一長度。實施例並不限於本文中所描述之行及列之例示性水平及垂直定向或行及列之例示性數目。
如圖1B中所展示,庫架構可與控制器140相關聯。在各項實例中,圖1B中所展示之控制器140可表示藉由圖1A中所展示之控制器140體現且在控制器140中所含有之功能性之至少一部分。如結合圖1A及本文中別處所描述,控制器可包含用於控制在記憶體中資料切換網路172之切換組件171。除本文中所描述之功能性外,控制器140可引導(例如,控制)基於命令及資料141將控制信號輸入至庫架構及自庫架構輸出資料(例如,至主機110)且控制庫架構中之資料移動,如本文中所描述。庫架構可包含DRAM DQ之一資料匯流排156(例如,64位元寬資料匯流排),資料匯流排156可對應於結合圖1A所描述之資料匯流排156。
圖1C係根據本發明之數項實施例之一記憶體器件之一庫區段123之一方塊圖。庫區段123可表示一記憶體器件之一庫之數個庫區段(例如,庫區段0、庫區段1、…、庫區段M)之一例示性區段。如圖1C中所展示,一庫區段123可包含複數個記憶體行122(水平展示為X)(例如,在一例示性DRAM庫及庫區段中之16,384行)。此外,該庫區段123可劃分成在相同庫區段中如以125-0及125-1展示為兩個短數位線(例如,快取)子陣列之實例 及以126-0、…、126-N-1展示為數個長數位線(例如,儲存)子陣列之實例之子陣列0、子陣列1、…、及子陣列N-1(例如,32個、64個、128個或各種奇數數目個子陣列)。圖1C中所繪示之實施例之組態(例如,短數位線子陣列及長數位線子陣列之數目及/或定位)僅為清楚起見而展示且並不限於此等組態。
短數位線子陣列及長數位線子陣列分別藉由經組態以耦合至一資料路徑(例如,本文中所描述之共用I/O線)之放大區域而分離。因而,短數位線子陣列125-0及125-1與長數位線子陣列126-0、…、126-N-1可各具有分別對應於感測組件條0、感測組件條1、…、及感測組件條N-1之放大區域124-0、124-1、…、124-N-1。
各行122可經組態以耦合至感測電路150,如結合圖1A及本文中別處所描述。因而,一子陣列中之各行可個別耦合至促成該子陣列之一感測組件條之一感測放大器及/或一計算組件之至少一者。例如,如圖1C中所展示,庫區段123可包含各具有擁有至少感測放大器之感測電路150之感測組件條0、感測組件條1、…、感測組件條N-1,在各項實施例中,該等感測放大器可用作暫存器、快取區及資料緩衝區等且耦合至子陣列125-0及125-1及126-0、…、126-N-1中之各行122。
在一些實施例中,一計算組件可耦合至各各自感測組件條(其耦合至一短數位線子陣列)中(例如,在分別耦合至短數位線子陣列125-0及125-1之感測組件條124-0及124-1中)之感測電路150內之各感測放大器。然而,實施例並不限於此。例如,在一些實施例中,感測放大器之數目與計算組件之數目之間可能不存在1:1相關性(例如,每計算組件可存在一個以上感測放大器或每感測放大器可存在一個以上計算組件,此可在子陣列、分割 區、庫等之間改變)。
短數位線子陣列125-0及125-1之各者可包含複數個列119(垂直展示為Y)(例如,在一例示性DRAM庫中,各子陣列可包含512列)。長數位線子陣列126-0、…、126-N-1之各者可包含複數個列118(垂直展示為Z)(例如,在一例示性DRAM庫中,各子陣列可包含1024列)。因而,在各項實施例中,子陣列之一或多者(例如,所有子陣列)中之列之數目可不同於其他子陣列中之列之數目。例如,在一些實施例中,第一子集之一子陣列(例如,一短數位線子陣列)之一行中之記憶體胞之一數目可至多為第二子集之一子陣列(例如,一長數位線子陣列)之一行中之記憶體胞之一數目的一半,及/或第一子集之一子陣列之一數位線(感測線)可具有至多為第二子集之子陣列之一數位線之一長度的一半之一長度。實施例並不限於本文中所描述之行及列之例示性水平及垂直定向或行及列之例示性數目。
PIM DRAM架構之實施方案可在感測放大器及計算組件層級處(例如,在一感測組件條中)執行處理。PIM DRAM架構之實施方案可容許有限數目個記憶體胞(例如,大約1K或1024個記憶體胞)連接至各感測放大器。一感測組件條可包含自大約8K至大約16K個感測放大器。例如,用於一長數位線子陣列之一感測組件條可包含16K個感測放大器且可經組態以耦合至1K列及大約16K行之一陣列,其中在該等列及行之各交叉點處具有一記憶體胞以便產生每行1K(1024)個記憶體胞。藉由比較,用於一短數位線子陣列之一感測組件條可包含16K個感測放大器及計算組件且可經組態以耦合至(例如)具有至多長數位線子陣列之1K列之一半之一陣列以便產生每行512個記憶體胞。在一些實施例中,各自感測組件條中之感測放大器及/或計算組件之數目(例如,對應於一列中之記憶體胞之一數目)可在至 少一些短數位線子陣列之間改變(相較於長數位線子陣列)。
剛提出之列數目、行數目及每行之記憶體胞數目及/或長數位線子陣列及短數位線子陣列中之行之間的記憶體胞之數目之比率僅藉由實例且非限制而提供。例如,長數位線子陣列可具有各具有各自1024個記憶體胞之行且短數位線子陣列可具有各具有各自512個、256個或128個記憶體胞之行,以及小於512之其他可能數目。在各項實施例中,長數位線子陣列可具有每行少於或多於1024個記憶體胞,其中短數位線子陣列中每行之記憶體胞之數目如剛描述般組態。替代性地或此外,快取子陣列可經形成而具有小於、等於或大於長數位線子陣列(儲存子陣列)之數位線長度之一數位線長度使得快取子陣列並非剛描述之短數位線子陣列。例如,與儲存子陣列之組態相比,快取子陣列之數位線及/或記憶體胞之組態可提供更快計算(例如,2T2C代替1T1C、SRAM代替DRAM等)。
因此,一快取子陣列中之記憶體胞之列之數目及/或每數位線之記憶體胞之對應數目可小於、等於或大於一儲存子陣列中之記憶體胞之列之數目及/或儲存子陣列之每數位線之記憶體胞之對應數目。在一些實施例中,一長數位線子陣列之一列中之記憶體胞之一數目可不同於一短數位線子陣列之一列中之記憶體胞之一數目。例如,經組態為2T2C之一短數位線子陣列之一記憶體胞的寬度可近似為經組態為1T1C之一長數位線子陣列之一記憶體胞的兩倍,此係因為2T2C記憶體胞具有兩個電晶體及兩個電容器而1T1C記憶體胞具有一個電晶體及一個電容器。為在一晶片及/或庫架構上整合子陣列之此兩種組態之寬度,可調整列中之記憶體胞之數目(例如,使得一短數位線子陣列可(例如)具有一長數位線子陣列之一列中之記憶體胞之大約一半。一控制器可具有用以適應在子陣列之此兩種組態 之間移動資料值之指令或藉由該等指令引導。
在一些實施例中,長數位線子陣列126-N-1可為128個子陣列中之子陣列32且可為子陣列之四個分割區之一第一分割區中之在一第一方向上之一最後子陣列,如本文中所描述。隔離條(未展示)可包含經組態以可選擇地(例如,如藉由控制器140引導)連接及斷開一選定共用I/O線之部分之數個隔離電晶體。可選擇地啟用(例如,啟動及撤銷啟動)該等隔離電晶體連接及斷開資料值經由共用I/O線在分割區之間往返於感測放大器及/或計算組件(例如,在感測組件條中,如本文中所描述)的移動。
因而,複數個子陣列125-0及125-1及126-0、…、126-N-1、複數個感測組件條124-0、124-1、…、124-N-1及隔離條可被視為一單個分割區128。然而,在一些實施例中,取決於資料移動之方向,一單個隔離條可由兩個鄰近分割區共用。
如圖1C中所展示,庫區段123可與控制器140相關聯。在各項實例中,圖1C中所展示之控制器140可表示藉由圖1A及圖1B中所展示之控制器140體現且在控制器140中所含有之功能性之至少一部分。控制器140可引導(例如,控制)將命令及/或資料141輸入至庫區段123及自庫區段123輸出資料(例如,至主機110)且控制庫區段123中之資料移動,如本文中所描述。庫區段123可包含DRAM DQ之一資料匯流排156(例如,64位元寬資料匯流排),資料匯流排156可對應於結合圖1A及圖1B所描述之資料匯流排156。控制器140(例如,回應於一命令)可被委派負責引導對本文中所描述之在記憶體中操作中之資料值執行之移動及/或操作(例如,經由切換組件171控制資料切換網路172)。
圖1D及圖1E係根據本發明之數項實施例之分別對應於圖1B及圖1C 之一記憶體器件之庫的方塊圖。圖1D係根據本發明之數項實施例之一記憶體器件之一庫121的一方塊圖。例如,庫121可表示一記憶體器件之一例示性庫(例如,庫0、庫1、…、庫M)。如圖1D中所展示,一庫架構可包含耦合至一控制器140之一位址/控制(A/C)路徑153(例如,一匯流排)。又,在各項實例中,圖1D中所展示之控制器140可表示藉由圖1A至圖1C中所展示之控制器140體現且在控制器140中所含有之功能性之至少一部分。
如圖1D中所展示,一庫架構可包含一特定庫121中之複數個庫區段(例如,庫區段123)。如圖1D中進一步展示,庫區段123可細分成分別藉由如圖1B中所展示之感測組件條124-0、124-1、…、124-N-1分離之複數個子陣列(例如,以125-0、125-1、…、125-N-1展示之子陣列0、子陣列1、…、子陣列N-1),該等感測組件條包含感測電路150及邏輯電路,如圖1A中所展示且結合圖2至圖9進一步描述。
如本文中所描述,一I/O線155可經由耦合至子陣列之各者之感測組件條而由記憶體胞之複數個分割區、子陣列、列、特定行及/或一在記憶體中資料切換網路可選擇地共用。例如,數個行之一可選擇子集(例如,總數目個行之八個行子集)之各者之感測放大器及/或計算組件可選擇地耦合至複數個共用I/O線之各者以使儲存(快取)於感測組件條中之資料值移動(例如,傳送、輸送及/或饋送)至複數個共用I/O線之各者。
如圖1D中示意性地展示,一庫121之一架構及該庫之各區段123可包含經組態以耦合至該庫區段123及複數個庫(未展示)之記憶體胞之複數個子陣列125-0、125-1、…、125-N-1之複數個共用I/O線155(例如,資料路徑、匯流排)。共用I/O線155可經由圖1B中所展示之藉由124-0、124- 1、…、124-N-1表示之感測組件條可選擇地耦合於記憶體胞之子陣列、列、特定行及/或在記憶體中資料切換網路之間。如所提及,感測組件條124-0、124-1、…、124-N-1各包含具有經組態以耦合至各子陣列中之記憶體胞之各行之感測放大器及計算組件之感測電路150,如圖1A中所展示且結合圖2至圖9進一步描述。
可利用共用I/O線155以增大一PIM陣列中(例如,在子陣列及/或在記憶體中資料切換網路之間)之資料移動之一速度、速率及/或效率。在至少一項實施例中,使用共用I/O線155藉由提供至少一千位元寬度而提供一經改良資料路徑。在一項實施例中,2048條共用I/O線耦合至16,384個行以提供一2048位元寬度。所繪示之共用I/O線155可形成於與陣列之記憶體胞之間距上。
在一些實施例中,控制器140可經組態以經由共用I/O線155憑藉控制及資料暫存器151及/或一指令讀取路徑161將指令(基於命令之控制信號)及資料提供至記憶體陣列130中之一特定庫121之複數個位置、至感測組件條124-0、124-1、…、124-N-1及/或至在記憶體中資料切換網路172。例如,控制及資料暫存器151及/或指令讀取路徑161可提供待藉由使用感測組件條124-0、124-1、…、124-N-1中之感測電路150之感測放大器及計算組件執行之指令。圖1D繪示與控制器140相關聯且耦合至庫121中之子陣列125-0、…、125-N-1之各者及/或資料切換網路172之一寫入路徑149之一切換組件171。
PIM DRAM架構之實施方案可在感測放大器及計算組件層級處執行處理。PIM DRAM架構之實施方案可容許僅有限數目個記憶體胞(例如,大約512個記憶體胞)連接至各感測放大器。一感測組件條124可包含自大 約8,000個至大約16,000個感測放大器。例如,一感測組件條124可經組態以耦合至512列及大約16,000行之一陣列。一感測組件條可用作一建置區塊以建構較大記憶體。在一記憶體器件之一陣列中,可存在對應於128個子陣列之128個感測組件條,如本文中所描述。因此,512列乘以218個感測組件條將產生大約66,000列×大約16,000行以形成大約十億位元之DRAM。
因而,當在感測放大器層級處處理時,僅512列記憶體胞可用於互相執行邏輯函數且無法對其中資料耦合至不同感測組件條之多個列容易地執行邏輯函數。為完成耦合至不同感測組件條之不同子陣列中之資料之處理,將待處理之所有資料移動至相同子陣列中以便耦合至相同感測組件條。
然而,已利用DRAM實施方案以將資料自一個感測組件條移動至另一感測組件條及/或自一記憶體陣列及/或感測組件條移動至一在記憶體中資料切換網路(例如,一蝴蝶式網路,僅藉由圖解而非限制)。如所提及,一感測組件條可含有對應於大約16,000行或將自各列儲存(例如,快取)之資料之大約16,000個資料值(例如,位元)之多至16,000個感測放大器。一DRAM DQ資料匯流排(例如,如以圖1A至圖1C中之156所展示)可經組態為一64位元部分。因而,使用一DRAM DQ資料匯流排將來自一16,000位元列之全部資料自一個感測組件條傳送(移動)至另一感測組件條將花費(例如)256個循環(例如,16,000除以64)。
為在PIM DRAM實施方案中達成以一高速度、速率及效率進行之自一個感測組件條至另一感測組件條及/或至資料切換網路172之資料移動,本文中描述共用I/O線155。例如,運用經組態為2048位元寬共用I/O線 155之2048條共用I/O線,如剛描述之自全列之資料移動將花費8個循環,在資料移動之速度、速率及效率上增大32倍。因而,相較於其他PIM DRAM實施方案(例如,相對於64位元寬資料路徑),利用本發明中所描述之結構及程序節省資料移動之時間。在各項實施例中,可(例如)藉由無需自一個庫、庫區段及其子陣列讀出資料、儲存該資料且接著將該資料寫入於另一位置中及/或藉由減少資料移動之循環數目而節省時間。
因此,例如,如結合圖1A、圖1B及圖1D所展示及描述,一記憶體器件120可包含一記憶體胞陣列,及經可選擇地耦合至該記憶體胞陣列之感測電路,其中一I/O線155經共用為用於與該陣列相關聯之在記憶體中資料切換之一資料路徑。記憶體器件120可包含經可選擇地耦合至各自共用I/O線155之一在記憶體中資料切換網路(例如,如分別以172及372所展示,且結合圖1A及圖3所描述)。記憶體器件120可進一步包含經組態(例如,經由切換組件171)以耦合至該在記憶體中資料切換網路且引導一切換協定之啟用之一控制器140,如本文中所描述。
在一些實施例中,在記憶體中資料切換網路經可選擇地耦合至陣列(例如,在分別以125-0、125-1、…、125-N-1及以325展示且結合圖1B及圖3所描述之子陣列中)之對應記憶體胞之一感測線(例如,分別以205及305所展示且結合圖2及圖3所描述之數位線)及共用I/O線(例如,如分別以155及355所展示且結合圖1D及圖3所描述)。在一些實施例中,在記憶體中資料切換網路經可選擇地耦合至感測電路(例如,如分別以150及350所展示且結合圖1A及圖3所描述)及共用I/O線。如本文中所描述,感測電路可係形成於與陣列之對應記憶體胞之互補感測線的間距上。感測電路可包含經可選擇地耦合至一感測線之一感測放大器(例如,如以206及306所展 示且結合圖2及圖3及本文中別處所描述)。
圖1E係根據本發明之數項實施例之一記憶體器件之一庫121之一方塊圖。庫121可表示一記憶體器件之一例示性庫(例如,庫0、庫1、…、庫M-1)。如圖1E中所展示,一庫121可包含經耦合至一控制器140之一A/C路徑153(例如,一匯流排)。又,在各項實例中,圖1E中所展示之控制器140可表示由圖1A至圖1D中所展示之控制器140體現且在控制器140中所含有之功能性的至少一部分。
如圖1E中所展示,一庫121可包含複數個庫區段(例如,庫區段123)。如圖1E中進一步展示,一庫區段123可被細分成複數個子陣列(例如,短數位線子陣列之以125-0、125-1及125-2展示及長數位線子陣列之以126-0、126-1、…、126-N-1展示之子陣列0、子陣列1…、子陣列N-1)。圖1E中所繪示之短數位線子陣列及長數位線子陣列之數目及/或經定位之組態係為清楚目的而展示,且並不限於此等組態。儘管一庫區段123可如所展示般經組態為一短數位線子陣列125-0位於一長數位線子陣列126-0之頂部上,接著另一短數位線子陣列125-1位於另一長數位線子陣列126-1之頂部上(其中總共四個子陣列依1:1比率均勻散佈(例如,在一分割區128-0中)),然短數位線子陣列及/或長數位線子陣列之其他數目及/或比率亦係可能的。例如,任何可行數目個短數位線子陣列及/或長數位線子陣列可係依經判定為適用於短數位線子陣列對長數位線子陣列之一特定實施方案(例如,具有1:1、1:2、1:4、1:8等之比率)(其中一或多個短數位線子陣列之各分組定位成鄰近一或多個長數位線子陣列之一群組)之任何排序配置以及其他組態而被包含於一庫區段123及/或其之一分割區128中。因此,在一些實施例中,一個以上短數位線子陣列可係彼此鄰近地連續定 位,及/或一個以上長數位線子陣列可係彼此鄰近地連續定位。
短數位線子陣列之以125-0、125-1及125-2所展示及長數位線子陣列之以126-0、126-1、…、126-N-1所展示之複數個子陣列可各耦合至感測組件條124-0、124-1、…、124-N-1及/或藉由該等感測組件條分離,該等感測組件條可包含感測電路150及邏輯電路(例如,如以713所展示且結合圖7所描述)。如所提及,感測組件條124-0、124-1、…、124-N-1各包含具有經組態以耦合至各子陣列中之記憶體胞之各行之至少感測放大器之感測電路150,如圖2中所展示且結合圖3至圖9進一步描述。子陣列及相關聯感測組件條可劃分成共用一I/O線155之數個分割區(例如,128-0、128-1、…、128-M-1),如本文中進一步描述。
如圖1E中示意性地展示,一庫121及該庫之各區段123可包含作為一資料路徑(例如,匯流排)耦合至一指令及/或資料(例如,程式指令(PIM命令))讀取路徑161中之複數個控制/資料暫存器151且耦合至複數個庫區段(例如,一特定庫121中之庫區段123)之一共用I/O線155。控制器140可經組態以接收一命令以在一給定庫(例如,庫121-1)中開始執行一操作。控制器140可經組態以(例如,使用耦合至控制及資料暫存器151之共用I/O線155)自特定庫之複數個位置擷取指令及/或常數資料且使用感測電路150之計算組件執行一操作。控制器140可快取在特定庫本地之經擷取指令及/或常數資料(例如,在切換組件171及/或邏輯電路713中)。
如本文中所描述,一I/O線可經由耦合至子陣列之各者之感測組件條而由記憶體胞之複數個分割區、子陣列、列、特定行及/或資料切換網路172可選擇地共用。例如,數個行之一可選擇子集(例如,總數目個行之八個行子集)之各者之感測放大器及/或計算組件可選擇地耦合至複數個共用 I/O線之各者以使儲存(快取)於感測組件條中之資料值移動(例如,傳送、輸送及/或饋送)至複數個共用I/O線之各者。
在一些實施例中,控制器140可經組態以藉由經由耦合至控制及資料暫存器151之共用I/O線155提供指令(命令)及資料至記憶體陣列130中之一特定庫121之複數個位置及至感測組件條124-0、124-1、…、124-N-1而進行引導。例如,控制及資料暫存器151可中繼待藉由感測組件條124-0、124-1、…、124-N-1中之感測電路150之感測放大器及/或計算組件執行之指令。例如,圖1E將控制器140繪示為與切換組件171相關聯且經由一寫入路徑149耦合至庫121中之短數位線子陣列125-0、125-1及125-2、長數位線子陣列126-0、126-1、…、126-N-1及/或感測組件條124-0、124-1、…、124-N-1之各者及/或資料切換網路172。
然而,本文中所描述之共用I/O線155及/或連接電路232可經組態(例如,經形成及/或啟用)以將執行一單個操作或複數個循序操作之一結果移動至一合適位置而非移動回至記憶體陣列130之子陣列之第一子集125及/或第二子集126。例如,在各項實施例中,結果資料值可經由共用I/O線155及/或連接電路232移動至一外部暫存器。此等外部暫存器之實施例可包含與記憶體器件120之庫121之控制器140相關聯(例如,可選擇地耦合至控制器140)之數個庫暫存器(未展示)及/或與主機110相關聯之暫存器(未展示)(例如,其等可藉由I/O電路144經由資料匯流排156直接存取及/或透過頻帶外匯流排157經由控制器140間接存取)。此外,可輸入藉由一特定長數位線儲存子陣列及/或一特定短數位線快取子陣列儲存及/或處理之資料值及/或命令。該輸入可(例如)使用來自主機CPU之一資料傳送協定(諸如DDR4等)藉由I/O電路144經由資料匯流排156直接執行及/或透過控制匯 流排154經由控制器140間接執行。
如結合圖1C所描述,複數個子陣列(例如,藉由圖1C中之實例所展示之四個子陣列125-0、125-1、126-0及126-1)及其等各自感測組件條可構成一第一分割區128-0。一隔離條(未展示)可定位於子陣列3(126-1)與子陣列4(125-2)之間使得子陣列126-1係第一分割區128-0在一第一方向上(例如,在圖1E之背景內容中向下)之一最後子陣列,且子陣列125-2係一第二分割區128-1中在該第一方向上之一第一子陣列。數個子陣列及其等各自感測組件條可在該第一方向上進一步延伸直至一第二隔離條(未展示)定位於第二分割區128-1與一第三分割區128-M-1之一第一子陣列126-N-1之間。如先前所指示,子陣列可依任何順序配置於各庫區段123及/或分割區128中使得(例如)短數位線子陣列125-0及125-2可分別為分割區128-0及128-1中之第一子陣列,而長數位線子陣列126-N-1可為分割區128-M-1中之第一子陣列,以及其他可能組態。
然而,實施例並不限於此。例如,在各項實施例中,在庫區段123中可存在任何數目個短數位線子陣列125及任何數目個長數位線子陣列126,其等可藉由隔離條分離成任何數目個分割區(例如,只要在各種分割區中存在至少一個短數位線子陣列與至少一個長數位線子陣列之一組合)。在各項實施例中,取決於實施方案,分割區可各包含相同數目或不同數目個短數位線子陣列及/或長數位線子陣列、感測組件條等。
因此,例如,如結合圖1A、圖1C及圖1E所展示及描述,一記憶體器件120可包含一記憶體胞陣列及可選擇地耦合至該記憶體胞陣列之感測電路,該感測電路包含一感測放大器(例如,至少一感測放大器)。該記憶體器件120可包含可選擇地共用為與該陣列相關聯之用於在記憶體中資料切 換及將一資料值自該陣列中之一源位置移動至一目的地位置之一資料路徑之複數個I/O線155。在各項實施例中,該源位置可為陣列中之一第一子陣列或可在該第一子陣列中且該目的地位置可為陣列中之一第二子陣列或可在該第二子陣列中(例如,以125-0及125-1及126-0、…、126-N-1所展示且結合圖1C所描述之子陣列之任一者)。
記憶體器件120可包含一在記憶體中資料切換網路(例如,如分別以172及372所展示且結合圖1A及圖3所描述)。記憶體器件120可進一步包含一控制器140,控制器140經組態以將各自複數個共用I/O線可選擇地耦合至該在記憶體中資料切換網路且引導(例如,經由切換組件171)在記憶體中資料切換網路之如本文中所描述之一切換協定之啟用。在一些實施例中,該控制器可經組態以可選擇地啟用複數個切換協定。該經啟用切換協定可執行數個切換操作以將經由複數個共用I/O線移動之資料值之一序列中之一資料值之一位置自陣列切換至在記憶體中資料切換網路。
記憶體器件120可經組態以使用耦合至各自複數個共用I/O線之複數個第一感測放大器自源位置移動複數個資料值且使用耦合至複數個共用I/O線之複數個第二感測放大器將該複數個資料值移動至目的地位置。在一些實施例中,記憶體器件120可進一步經組態以經由可選擇地耦合至各自複數個共用I/O線155之複數個感測放大器將複數個資料值移動至在記憶體中資料切換網路。在一些實施例中,記憶體器件120可進一步經組態以經由可選擇地耦合至各自複數個共用I/O線155之複數個感測線(例如,分別以205及305所展示且結合圖2及圖3所描述之數位線)將複數個資料值移動至在記憶體中資料切換網路。
如本文中所描述,在記憶體中資料切換網路可包含各具有複數個切 換節點之複數個層級。一資料切換網路472之該複數個層級係以409-0、…、409-N-1所展示且結合圖4所描述。替代性地或此外,一資料切換網路972-1及972-2之複數個層級係以967-0、…、967-N-1展示且結合圖9A及圖9B描述。在各項實施例中,一切換節點(例如,如以966所展示且結合圖9A所描述)可包含數個鎖存器及數個切換器(例如,如分別以970及963所展示,且結合圖9A所描述)。在一些實施例中,每層級之複數個切換節點(例如,如以966-0、…、966-M-1所展示且結合圖9A及圖9B所描述)之一數目可對應於耦合至陣列之複數個感測放大器之一數目。
在各項實施例中,切換節點之數目可與耦合至陣列之感測放大器之數目相同,或切換節點之數目可為感測放大器之數目的倍數或分率(例如,八分之一、十六分之一等)(例如,經由使用圖3中所展示且結合圖3所描述之行選擇電路358-1及358-2多工化,以及其他可能性)。例如,在一些實施例中,記憶體器件120可包含耦合至記憶體胞陣列之對應複數個行之複數個感測放大器及經組態以選擇一感測放大器以耦合至一共用I/O線以將一資料值移動至在記憶體中資料切換網路之一多工器。替代性地或此外,在一些實施例中,記憶體器件120可包含記憶體胞陣列之複數個行及包含行選擇電路之一多工器。該多工器可經組態以選擇一行之一記憶體胞以耦合至一共用I/O線以將一資料值移動至在記憶體中資料切換網路。
在各項實施例中,記憶體器件120可包含記憶體胞之複數個子陣列(例如,如以125-0、125-1…、125-N-1所展示且結合圖1B所描述)。感測電路可經由記憶體胞之複數個行(例如,如以122所展示且結合圖1B及圖1C所描述及以322-0所展示且結合圖3所描述)耦合至該複數個子陣列。此感測電路可包含耦合至複數個行之各者之感測放大器及一計算組件(例 如,如分別以231及331所展示且結合圖2及圖3所描述)。在一些實施例中,此一記憶體器件之各自複數個子陣列之各子陣列在一行中可包含實質上等於一鄰近子陣列之一行中之記憶體胞之一數目之數目個記憶體胞(例如,與所有子陣列中相同)。
在各項實施例中,記憶體器件120可包含記憶體胞之複數個子陣列之一第一子集(例如,以125-0及125-1所展示且結合圖1C及圖1E所描述之短數位線子陣列)。在各項實施例中,記憶體器件120可進一步包含各自複數個子陣列之一第二子集(例如,展示為126-0、…、126-N-1且結合圖1C及圖1E所描述之長數位線子陣列)。感測電路可選擇地耦合至該第一子集及該第二子集。感測電路可包含耦合至第一子集(短數位線子陣列)之一各自感測線之一感測放大器及一計算組件,及耦合至第二子集(長數位線子陣列)之一各自感測線之一感測放大器(無一計算組件)。在一些實施例中,第一子集之一子陣列之一行中之記憶體胞之一數目可至多為第二子集之一子陣列之一行中之記憶體胞之一數目的一半。
在各項實施例中,記憶體器件120可包含一感測組件條(例如,如以124-0、…、124-N-1所展示且結合圖1B至圖1E所描述),該感測組件條可包含對應於一子陣列中之記憶體胞之複數個行之一數目之數目個複數個感測放大器及/或計算組件。該數目個複數個感測放大器及/或計算組件可選擇地耦合至各自複數個共用I/O線以將對應複數個資料值移動至在記憶體中資料切換網路。
圖1F係根據本發明之數項實施例之呈一計算系統之形式之一裝置的另一方塊圖,該計算系統包含具有在一陣列之庫區段123-0、123-1、…、123-N-1本地之一資料路徑中之一I/O線155之一記憶體器件。例如,庫 121-1可表示一記憶體器件120之一例示性庫。如圖1F中所展示,一庫121-1可包含複數個主記憶體行(水平展示為X)(例如,在一例示性DRAM庫中之16,384行)。此外,該庫121-1可劃分成庫區段(例如,32個子陣列之象限)123-0、123-1、…、123-N-1。各庫區段可與複數個共用I/O線155之一資料路徑中之一計算單元460中之邏輯條109-0、109-1、…、109-N-1中的複數個計算組件131-1、…、131-M相關聯。該等庫區段123-0、…、123-N-1之各者可包含複數個列(垂直展示為Y)(例如,各區段可為一例示性DRAM庫中之包含32個子陣列之一象限,各子陣列各可包含512列及每列16個子列)。實施例並不限於本文所描述之行及列及子列之例示性水平及/或垂直定向或該等行及列及子列之例示性數目。
在一些實施例中,各庫區段可具有在與其相關聯之複數個共用I/O線155之一資料路徑中之計算單元460中的複數個計算組件131-1、…、131-M及邏輯條109-0、…、109-N-1。在各項實施例中,該等邏輯條亦可包含複數個切換節點(例如,如以966所展示且結合圖9A及圖9B所描述)。在一些實施例中,複數個計算組件之一數目可對應於複數個切換節點之一數目及/或複數個共用I/O線之一數目。例如,用於將資料值移動至邏輯條中之計算組件之共用I/O線之數目可對應於用於將資料值移動至邏輯條中之切換節點之共用I/O線之數目。在一些實施例中,可使用相同共用I/O線以將資料值可選擇地移動至計算組件或切換節點。在一些實施例中,計算組件可與切換節點或其之部分相關聯。庫121-1可包含與各庫區段及/或子陣列相關聯之一控制器140及/或數個控制器以引導對載入至複數個共用I/O線155之一資料路徑中之一計算單元460中之邏輯條109-0、…、109-N-1中的複數個計算組件131-1、…、131-M及/或切換節點966-0、966-1、…、 966-M-1之資料值之移動(例如,經由共用I/O線155)及/或切換操作(例如,經由切換組件171)。
圖2係繪示根據本發明之數項實施例之一記憶體器件120之電路之一示意圖,該電路包含在各項實施例中各可包含於感測電路250及/或邏輯條124中之一感測放大器206及一計算組件231。該感測電路250可對應於圖1A中所展示之感測電路150。
如圖2之例示性實施例中所展示,一記憶體胞可包含一儲存元件(例如,電容器)及一存取器件(例如,電晶體)。例如,一第一記憶體胞可包含電晶體202-1及電容器203-1,且一第二記憶體胞可包含電晶體202-2及電容器203-2等。在此實施例中,記憶體陣列230係1T1C(一電晶體一電容器)記憶體胞之一DRAM陣列,但可使用其他組態實施例(例如,每記憶體胞具有兩個電晶體及兩個電容器之2T2C)。在數項實施例中,記憶體胞可為破壞性讀取記憶體胞(例如,讀取藉由胞儲存之資料損毀該資料使得最初藉由胞儲存之資料在被讀取之後再新)。
記憶體陣列230之胞可配置成藉由存取(字)線204-X(列X)、204-Y(列Y)等耦合之列及藉由互補感測線對(例如,圖2中所展示之數位線DIGIT(D)及DIGIT(D)_)耦合之行。對應於各對互補感測線之個別感測線亦可分別被稱為數位線205-1 DIGIT(D)及205-2 DIGIT(D)_或圖3中之對應元件符號。儘管圖2中展示僅一對互補數位線,然本發明之實施例並不受限於此,且一記憶體胞陣列可包含額外行之記憶體胞及數位線(例如,4,096、8,192、16,384等)。
儘管列及行係繪示為正交定向在一平面中,但實施例並不受限於此。例如,列及行可相對於彼此依任何可行三維組態定向。例如,列及行 可相對於彼此定向成任何角度,可定向於一實質上水平平面中或一實質上垂直平面中,及/或可定向成一折疊拓撲以及其他可能三維組態。
記憶體胞可耦合至不同數位線及字線。例如,電晶體202-1之一第一源極/汲極區域可耦合至數位線205-1(D),電晶體202-1之一第二源極/汲極區域可耦合至電容器203-1且電晶體202-1之一閘極可耦合至字線204-Y。電晶體202-2之一第一源極/汲極區域可耦合至數位線205-2(D)_,電晶體202-2之一第二源極/汲極區域可耦合至電容器203-2且電晶體202-2之一閘極可耦合至字線204-X。如圖2中所展示之一胞板可耦合至電容器203-1及203-2之各者。該胞板可為一共同節點,在各種記憶體陣列組態中可將一參考電壓(例如,接地)施加至該共同節點。
根據本發明之數項實施例,記憶體陣列230經組態以耦合至感測電路250。在此實施例中,該感測電路250包括對應於各自記憶體胞行(例如,耦合至各自互補數位線對)之一感測放大器206及一計算組件231。然而,在一些實施例中,用於藉由邏輯條之計算組件執行之在資料路徑中計算操作之感測電路250可不包含感測電路250中之計算組件。感測放大器206可耦合至互補數位線對205-1及205-2。計算組件231(若存在)可經由傳遞閘207-1及207-2耦合至感測放大器206。該等傳遞閘207-1及207-2之閘極可耦合至運算選擇邏輯213。
運算選擇邏輯213可包含:傳遞閘邏輯,其用於控制傳遞閘以將未轉置之互補數位線對耦合於感測放大器206與計算組件231之間;及交換閘邏輯,其用於控制交換閘以將經轉置之互補數位線對耦合於感測放大器206與計算組件231之間。運算選擇邏輯213亦可耦合至互補數位線對205-1及205-2。運算選擇邏輯213可經組態以基於一選定操作控制傳遞閘207- 1及207-2之連續性。
可操作感測放大器206以判定藉由一選定記憶體胞儲存之一資料值(例如,邏輯狀態)。感測放大器206可包括一交叉耦合鎖存器(其在本文中可被稱為一主要鎖存器)。在圖2中所繪示之實例中,對應於感測放大器206之電路包括一鎖存器215,鎖存器215包含耦合至一對互補數位線D205-1及(D)_205-2之四個電晶體。然而,實施例並不限於此實例。鎖存器215可為一交叉耦合鎖存器(例如,諸如n通道電晶體(例如,NMOS電晶體)227-1及227-2之一對電晶體之閘極與諸如p通道電晶體(例如,PMOS電晶體)229-1及229-2之另一對電晶體之閘極交叉耦合)。包括電晶體227-1、227-2、229-1及229-2之交叉耦合鎖存器215可被稱為主要鎖存器。
在操作中,當感測(例如,讀取)一記憶體胞時,數位線205-1(D)或205-2(D)_之一者上之電壓將略大於數位線205-1(D)或205-2(D)_之另一者上之電壓。可驅使一ACT信號及一RNL*信號降低以啟用(例如,觸發)感測放大器206。具有較低電壓之數位線205-1(D)或205-2(D)_將接通PMOS電晶體229-1或229-2之一者至大於PMOS電晶體229-1或229-2之另一者之程度,藉此驅使具有較高電壓之數位線205-1(D)或205-2(D)_升高至大於另一數位線205-1(D)或205-2(D)_經驅使而升高之程度。
類似地,具有較高電壓之數位線205-1(D)或205-2(D)_將接通NMOS電晶體227-1或227-2之一者至大於NMOS電晶體227-1或227-2之另一者之程度,藉此驅使具有較低電壓之數位線205-1(D)或205-2(D)_降低至大於另一數位線205-1(D)或205-2(D)_經驅使而降低之程度。因此,在一短暫延遲之後,具有稍大電壓之數位線205-1(D)或205-2(D)_透過一流出電晶體驅動至供應電壓VCC/2之電壓,且另一數位線205-1(D) 或205-2(D)_透過一汲入電晶體驅動至參考電壓之電壓(例如,接地)。因此,交叉耦合NMOS電晶體227-1及227-1及PMOS電晶體229-1及229-2用作一感測放大器對,其等放大數位線205-1(D)及205-2(D)_上之差分電壓且操作以鎖存自選定記憶體胞感測之一資料值。
實施例並不限於圖2中所繪示之感測放大器206組態。作為一實例,感測放大器206可為一電流模式感測放大器及一單端感測放大器(例如,耦合至一條數位線之感測放大器)。又,本發明之實施例並不限於一折疊數位線架構(諸如圖2中所展示之架構)。
感測放大器206可連同計算組件231一起操作以使用來自一陣列之資料作為輸入而執行各種運算。在數項實施例中,可在不經由一數位線位址存取傳送資料的情況下(例如,在未觸發一行解碼信號使得經由本地I/O線將資料傳送至陣列及感測電路外部的電路之情況下)將一運算之結果儲存回至該陣列。因而,本發明之數項實施例可能夠使用少於各種先前方法之功率執行運算及與該等運算相關聯的計算功能。此外,因為數項實施例無需跨本地及全域I/O線傳送資料以便執行計算功能(例如,在記憶體與離散處理器之間),所以相較於先前方法,數項實施例可實現一增大(例如,更快)之處理能力。
感測放大器206可進一步包含平衡電路214,平衡電路214可經組態以使數位線205-1(D)及205-2(D)_平衡。在此實例中,平衡電路214包括耦合於數位線205-1(D)與205-2(D)_之間的一電晶體224。平衡電路214亦包括各具有耦合至一平衡電壓(例如,VDD/2)之一第一源極/汲極區域之電晶體225-1及225-2,其中VDD係與陣列相關聯的一供應電壓。電晶體225-1之一第二源極/汲極區域可耦合至數位線205-1(D),且電晶體225-2之一 第二源極/汲極區域可耦合至數位線205-2(D)_。電晶體224、225-1及225-2之閘極可耦合在一起且耦合至一平衡(EQ)控制信號線226。因而,啟動EQ啟用電晶體224、225-1及225-2,此將數位線205-1(D)及205-2(D)_有效地短接在一起且短接至平衡電壓(例如,VDD/2)。
儘管圖2展示包括平衡電路214之感測放大器206,然實施例並不受限於此,且平衡電路214可與感測放大器206離散地實施,以與圖2中所展示之組態不同之一組態實施,或完全不實施。
如下文進一步描述,在數項實施例中,感測電路250(例如,感測放大器206及計算組件231)可經操作以執行一選定運算且在不經由一本地或全域I/O線傳送來自感測電路之資料之情況下(例如,在不經由例如啟動一行解碼信號執行一感測線位址存取之情況下)首先將結果儲存於感測放大器206或計算組件231之一者中。
然而,在本文中所描述之實施例中,具有感測放大器206之感測電路250(其在一些實施例中亦可包含如圖2中所展示之計算組件231)亦可將來自一陣列中之記憶體胞之一經多工化行之記憶體胞耦合至如結合圖4所論述之在該陣列本地之複數個共用I/O線455之資料路徑中之一計算單元460中的計算組件431-1、…、431-Z及/或邏輯條409-0、…、409-N-1。以此方式,計算組件431-1、…、431-Z及/或邏輯條409-0、…、409-N-1可經由選擇邏輯(結合圖3至圖9所論述)透過該複數個共用I/O線455間接耦合至一行之記憶體胞。
運算(例如,涉及資料值之布林邏輯運算)之執行係基本且常用的。布林邏輯運算係用於許多更高階運算中。因此,可藉由改良運算實現之速度及/或功率效率可轉變成更高階功能性之速度及/或功率效率。
如圖2中所展示,計算組件231亦可包括一鎖存器(其在本文中被稱為一次要鎖存器264)。次要鎖存器264可依類似於上文關於主要鎖存器215所描述之方式之一方式組態及操作,惟以下除外:包含於次要鎖存器中之交叉耦合之p通道電晶體(例如,PMOS電晶體)對可具有耦合至一供應電壓(例如,VDD 212-2)之其等各自源極,且次要鎖存器之交叉耦合之n通道電晶體(例如,NMOS電晶體)對可具有選擇性地耦合至一參考電壓(例如,接地212-1)之其等各自源極,使得連續地啟用次要鎖存器。計算組件231之組態並不限於圖2中所展示之組態,且各種其他實施例係可行的,例如,用作結合圖4之邏輯條409-0、…、409-N-1所描述之計算組件431-1、…、431-Z。
邏輯條409-0、…、409-N-1可對應於本文中所描述之在記憶體中資料切換網路472。邏輯條(例如,計算單元460中之邏輯條之一子集或全部)亦可對應於資料切換網路472之層級(例如,如以967-0、967-1、967-N-1所展示且結合圖9A及圖9B所描述)。
如本文中所描述,一記憶體器件(例如,圖1A中之120)可經組態以經由一資料匯流排(例如,156)及一控制匯流排(例如,154)耦合至一主機(例如,110)。記憶體器件120中之一庫121可包含記憶體胞之複數個庫區段(圖1F中之123-0、…、123-N-1)。庫121可包含經由記憶體胞之複數個行(圖1B及圖1C)耦合至複數個陣列之感測電路(例如,圖1A中之150及圖2及圖3中之對應元件符號)。該感測電路可包含耦合至該等行之各者之一感測放大器及/或一計算組件(例如,在圖2中分別為206及231)。
各庫區段123可與在陣列230本地之複數個共用I/O線(圖1F中之155)之一資料路徑中之一計算單元中的複數個邏輯條(例如,圖1F中之109-0、 109-1、…、109-N-1)相關聯。耦合至庫之一控制器(例如,圖1A及圖1B中之140)可經組態以如本文中所描述引導資料值移動至陣列230本地之一共用I/O線355/455(圖3及圖4)之一資料路徑中之一計算單元360/460(圖3及圖4)中的一邏輯條409(圖4)中之一計算組件431(圖4)。
記憶體器件可包含具有各可對應於一子列(例如,圖4中之465-1、…、465-16)中之記憶體胞之複數個行(圖1B及圖1C)之一數目之複數個計算組件(例如,圖4中之431-1、…、431-Z)之一邏輯條(例如,圖1F中之109及圖4中之409)。如結合圖3進一步論述,感測電路250中之該數目個感測放大器206及/或計算組件231可選擇地耦合(例如,經由圖3中之行選擇電路358-1及358-1多工化)至複數個共用I/O線355(圖3)。該行選擇電路可經組態以藉由可選擇地耦合至複數個(例如,四個、八個及十六個以及其他可能)感測放大器及/或計算組件而可選擇地感測一陣列之記憶體胞之一特定行中之資料。
在一些實施例中,一庫中之複數個邏輯條(例如,圖1F中之109-0、…、109-N-1)之一數目可對應於該庫中之圖1B中之庫區段123-0、…、123-N-1(例如,具有複數個子陣列之一象限)之一數目。替代性地或此外,一庫中之複數個邏輯條之該數目可對應於一DRAM陣列之一列中之複數個子列之一數目。一邏輯條可包含在陣列230本地之一共用I/O線455(圖4)之一資料路徑中之複數個計算組件431-1、…、431-Z(圖4),其等可如同圖2中所展示之計算組件231般組態及/或操作。一邏輯條可進一步包含複數個切換節點966-0、966-1、…、966-M-1,藉此複數個邏輯條(例如,圖1F中之109-0、…、109-N-1及/或圖9A及圖9B中之967-0、…、967-N-1)可如本文中所描述之在記憶體中資料切換網路(例如,如以172及 472所展示且結合圖1A及圖4及本文中別處所描述)般組態及/或操作。如圖3中將展示,自陣列之一列或子列感測之資料值可藉由行選擇邏輯經由複數個共用I/O線355(圖3)並行移動至複數個共用I/O線355/455(圖3及圖4)之一資料路徑之一計算單元360/460(圖3及圖4)中的複數個計算組件431(圖4)及/或切換節點966(圖9A及圖9B)。在一些實施例中,資料量可對應於該複數個共用I/O線之1K位元寬度,其亦可對應於一子列之記憶體胞及/或資料值之數目。
在各項實施例中,連接電路232-1可(例如)耦合於一主要鎖存器215之217-1處且連接電路232-2可耦合於該主要鎖存器215之217-2處(例如,感測放大器206用作與一邏輯條中之一計算組件231相關聯之一鎖存器)以用於已對其執行一操作之一邏輯條之經感測、經儲存及/或資料值之移動。資料值可經由連接電路232-1及232-2(例如,作為位元串列鏈路)直接移動(例如,未經由一共用I/O線移動)至另一邏輯條中之一選定鎖存器、計算組件231及/或切換節點966,如本文中所描述。
儘管圖2展示分別耦合於主要鎖存器215之217-1及217-2處之連接電路232-1及232-2,然實施例並不受限於此。例如,連接電路232-1及232-2可(例如)耦合至次要鎖存器264(例如,計算組件231)以經由連接電路232-1及232-2將資料值移動至另一邏輯條中之一選定鎖存器及/或計算組件231。例如,此等連接電路232-1及232-2可(例如,如藉由控制器140引導)實現將資料值(位元)自一第一邏輯條中之鎖存器、計算組件及/或切換節點級聯至一第二邏輯條(例如,一鄰近邏輯條)中之對應鎖存器及/或計算組件以執行複數個邏輯條中之一序列計算及/或切換操作(例如,如結合圖9A及圖9B所描述)。
圖3係繪示根據本發明之數項實施例之用於一陣列之一資料路徑中之複數個共用I/O線之電路的一示意圖。如結合圖3所描述,裝置可經組態以將資料自包含與第一數目個感測放大器及/或計算組件相關聯之一特定列(例如,圖3中之319)及行位址之一源位置移動(例如,複製、傳送及/或輸送)至一共用I/O線(例如,圖3中之355)。此外,裝置可經組態以將資料移動至包含與共用I/O線355(圖3)之一資料路徑中之一計算單元360(圖3)及/或一在記憶體中資料切換網路372相關聯的一特定邏輯條409(圖4)之一目的地位置。例如,在一些實施例中,資料切換網路372可經組態為計算單元360/460之邏輯條409之部分。然而,在一些實施例中,資料切換網路372可與記憶體器件之記憶體陣列相關聯(例如,儘管與該記憶體陣列分離但位於具有該記憶體陣列之晶片上)(例如,在圖1B至圖1E中所展示且結合圖1B至圖1E所描述之實施例中)。
如讀者將瞭解,各共用I/O線355(圖3)可為單條線或可包含一對互補共用I/O線(例如,圖3中之共用I/O線及共用I/O線*)。在一些實施例中,2K條共用I/O線(例如,互補共用I/O線對)可經組態為一2K位元寬共用I/O線。在一些實施例中,1K條共用I/O線(例如,互補共用I/O線對)可經組態為一1K位元寬共用I/O線。
圖3展示各耦合至各自互補共用I/O線355對(例如,共用I/O線及共用I/O線*)之八個感測放大器(例如,分別以306-0、306-1、…、306-7展示之感測放大器0、1、…、7)。圖3亦展示各經由各自傳遞閘307-1及307-2以及數位線305-1及305-2耦合至一各自感測放大器(例如,如對於感測放大器0以306-0展示)之八個計算組件(例如,以331-0、331-1、…、331-7展示之計算組件0、1、…、7)。該等傳遞閘可如圖2中所展示般連接且可 藉由一運算選擇信號Pass加以控制。例如,選擇邏輯之一輸出可耦合至傳遞閘307-1及307-2之閘極以及數位線305-1及305-2。在一些實施例中,對應感測放大器及計算組件對可促進形成以350-0、350-1、…、350-7指示之感測電路。
可將存在於互補數位線對305-1及305-2上之資料值載入至感測放大器306-0中,如結合圖2所描述。在一些實施例中,當啟用傳遞閘307-1及307-2時,可將該對互補數位線305-1及305-2上之資料值自感測放大器傳遞至計算組件(例如,306-0至331-0)。當觸發感測放大器306-0時該對互補數位線305-1及305-2上之資料值可為藉由該感測放大器儲存之資料值。
圖3中之感測放大器306-0、306-1、…、306-7可各對應於圖2中所展示之感測放大器206。圖3中所展示之計算組件331-0、331-1、…、331-7可各對應於圖2中所展示之計算組件231。一個別感測放大器或一個感測放大器與一個計算組件之一組合可促成耦合至一共用I/O線355(其由該等共用I/O線355之一資料路徑中之計算單元360之數個邏輯條共用)之一DRAM記憶體子陣列325之一部分之感測電路(例如,350-0、350-1、…、350-7)。
圖3中所繪示之實施例之組態係為清楚目的而展示且並不限於此。例如,圖3中所繪示之用於感測放大器306-0、306-1、…、306-7連同計算組件331-0、331-1、…、331-7及共用I/O線355之組態並不限於感測電路之感測放大器306-0、306-1、…、306-7及/或計算組件331-0、331-1、…、331-7之組合之一半形成於記憶體胞行322(未展示)上方且一半形成於記憶體胞行322下方。形成經組態以耦合至一共用I/O線之感測電路之感測放大器及/或計算組件之此等組合的數目亦不限於八個。例如,當每列之子 列之數目及/或邏輯條之數目係16時,形成經組態以耦合至一共用I/O線之感測電路之感測放大器及/或計算組件之數目可為16。此外,共用I/O線355之組態並不限於分成單獨耦合兩組互補數位線305-1及305-2之各者之兩個部分,共用I/O線355亦不限於定位於形成感測電路之感測放大器及/或計算組件之組合的中間(例如,而非定位於感測放大器與計算組件之組合之任一端處)。
圖3中所繪示之電路亦展示行選擇電路358-1及358-2,其經組態以藉由相對於特定感測電路350(例如,其之感測放大器及/或計算組件)、一子陣列325之特定行322、與其相關聯之互補數位線305-1及305-2、資料切換網路372及/或共用I/O線355多工化而實施資料移動操作(例如,如藉由圖1A至圖1F中所展示之控制器140引導)。例如,行選擇電路358-1具有經組態以與對應行(諸如行0(332-0)、行2、行4及行6)耦合之選擇線0、2、4及6。行選擇電路358-2具有經組態以與對應行(諸如行1、行3、行5及行7)耦合之選擇線1、3、5及7。在各項實施例中,結合圖3所描述之行選擇電路358可表示藉由多工器(例如,一8路多工器、一16路多工器等)體現及包含在多工器中之功能性之至少一部分。
控制器140可耦合至行選擇電路358以控制選擇線(例如,選擇線0)以存取藉由感測放大器、計算組件儲存及/或存在於互補數位線對(例如,305-1及305-2,當經由來自選擇線0之信號啟動選擇電晶體359-1及359-2時)上之資料值。啟動選擇電晶體359-1及359-2(例如,如藉由控制器140引導)實現行0(322-0)之感測放大器306-0、計算組件331-0及/或互補數位線305-1及305-2之耦合以將數位線0及數位線0*上之資料值移動至共用I/O線355。例如,該等經移動之資料值可為來自儲存(快取)於感測放大器 306-0及/或計算組件331-0中之一特定列319之資料值。類似地可藉由控制器140啟動適當選擇電晶體而選擇來自行0至行7之各者之資料值。
此外,啟用(例如,啟動)選擇電晶體(例如,選擇電晶體359-1及359-2)可啟用行0(322-0)之一特定感測放大器及/或計算組件(例如,分別為306-0及/或331-0)及/或互補數位線305-1及305-2以與一共用I/O線355耦合使得可將資料值移動至該共用I/O線355(例如,放置於共用I/O線355上及/或傳送至共用I/O線355)。在一些實施例中,每次選擇一個行(例如,行322-0)以耦合至一特定共用I/O線355以移動(例如,複製、傳送及/或輸送)經儲存資料值。在圖3之例示性組態中,共用I/O線355係繪示為一共用、差分I/O線對(例如,共用I/O線及共用I/O線*)。因此,選擇行0(322-0)可自一列(例如,列319)之一子列產生兩個資料值(例如,具有值0及/或1之兩個位元)及/或可產生如藉由與互補數位線305-1及305-2相關聯之感測放大器及/或計算組件儲存之兩個資料值。此等資料值可並行輸入至共用差分I/O線355之各共用、差分I/O對(例如,共用I/O線及共用I/O線*)。
圖4A係繪示根據本發明之數項實施例之藉由在一陣列130(圖1A)本地之一資料路徑中之複數個共用I/O線455耦合至具有複數個邏輯條(409-0、…、409-N-1)之一計算單元460的該陣列130之一庫區段423的一方塊圖。
如本文中所使用,序數可不用於指示組件之間的一特定排序及/或關係。例如,一第一資料值經由共用I/O線自一記憶體陣列之一第一列之一第一子列移動至一第一邏輯條之一第一計算組件意欲指示來自一特定列之一特定子列(其可為但並不一定為一子列序列中之第一子列)之一特定資料值可移動至一特定邏輯條之一特定計算組件(其等之各者可為但並不一定 為計算組件及/或邏輯條之一序列中之第一者)。類似地,來自該第一列之一第二子列(其可為鄰近先前提及之第一子列之下一子列,但可為卻並不一定為該子列序列中之第二子列)之一第二資料值之移動意欲指示來自相同列之第二子列之一特定資料值可移動至一不同邏輯條之一特定計算組件。例如,關於將該第二資料值移動至第二邏輯條之第二計算組件係用於使第二資料值與不同於先前被稱為此等組件之第一者之計算組件及邏輯條之一計算組件及/或一邏輯條相關聯。因而,第二計算組件可為但並不一定為第二邏輯條之計算組件之一序列中之第一計算組件及/或第二邏輯條可為但並不一定為一邏輯條序列中之第二邏輯條。
類似地,如本文中所描述,一控制器經組態以在一第一操作循環中引導第一子列之數個複數個資料值至第一邏輯條之對應數目個複數個第一計算組件之一第一並行移動意欲指示在一特定操作循環中(例如,在大約2奈秒(ns)至60ns之一時框中)該控制器可引導對應於第一子列之複數個資料值之特定數目個資料值移動至第一邏輯條之相同數目個計算組件之執行。控制器經組態以在一第二操作循環中引導第二子列之數個複數個資料值至第二邏輯條之對應數目個複數個第二計算組件之一第二並行移動意欲指示在第二操作循環(其可為但並不一定為下一個(例如,鄰近)2ns至60ns時框)中該控制器可引導對應於第二子列之複數個資料值之特定數目個資料值至第二邏輯條之相同數目個計算組件之移動之執行。第二子列之複數個資料值及/或第二邏輯條之第二計算組件之特定數目可為但並不一定為與第一子列之資料值及/或第一邏輯條之第一計算組件之數目相同之數目。
如本文中所描述,複數個共用I/O線455可經由耦合至各陣列之選擇 邏輯而由記憶體胞之複數個子陣列、庫區段、象限、列、子列及/或特定行可選擇地共用。例如,包含一感測放大器及用於多工化數個行之可選擇數目個子集(例如,總數目個行之8個、16個等行子集)之各者之選擇邏輯的感測電路150及/或額外鎖存器170可選擇地耦合至複數個共用I/O線455之各者以使資料值移動至該複數個共用I/O線455之一資料路徑中之一計算單元460中的複數個計算組件431-1、…、431-Z及/或邏輯條409-0、…、409-N-1。在一些實施例中,可選擇地耦合至複數個共用I/O線455之各者之複數個計算組件431-1、…、431-Z可對應於可選擇地耦合至該複數個共用I/O線之行數(例如,2K、1K等)。
複數個共用I/O線455可經由感測電路將陣列之一列之一第一子列可選擇地耦合至在資料路徑中之一第一計算組件431及/或切換節點966(例如,如結合圖9A及圖9B所描述之各切換節點966之數個鎖存器970及/或切換器963)以將一第一資料值自該第一子列移動至第一計算組件431及/或切換節點966。如本文中所使用,一「子列」意謂儲存預定數目個資料值之陣列之列之記憶體胞之一預定子集。例如,一列之一個子列可為具有16,384(16K)個記憶體胞之一列之預定1024(1K)個記憶體胞,藉此導致該列之16個子列(例如,如以465-1、465-2、…、465-16所展示且結合圖4及本文中別處所描述)。複數個共用I/O線經由感測電路將各自列之一第二子列可選擇地耦合至資料路徑中之一第二計算組件及/或切換節點以將一第二資料值自該第二子列移動至該第二計算組件及/或切換節點。可使用第一計算組件及/或切換節點對來自第一子列之第一資料值執行(例如,如藉由一控制器引導)一操作,實質上同時將第二資料值自第二子列移動至第二計算組件及/或切換節點。
在一些實施例中,計算組件及/或切換節點可在與資料之共用I/O線相關聯之一邏輯條(例如,如以409-0、409-1、…、409-N-1所展示且結合圖4及本文中別處所描述)中。陣列可具有用於在該陣列本地之資料路徑之複數個共用I/O線且各邏輯條可具有複數個計算組件(例如,如以431-1、431-2、…、431-Z所展示且結合圖4及本文中別處所描述)及/或複數個切換節點(例如,如以966-0、966-1、…、966-M-1所展示且結合圖9A及圖9B及本文中別處所描述)。該複數個計算組件及/或切換節點之各者可與資料路徑之複數個共用I/O線之至少一者相關聯。在一些實施例中,該複數個計算組件及/或切換節點中之每一個計算組件及/或切換節點可與資料路徑之複數個共用I/O線之一特定者相關聯。
在各項實施例中,複數個計算組件及/或切換節點之各者可移位至資料路徑之複數個共用I/O線之另一者。例如,一列(例如,如以319所展示且結合圖3及本文中別處所描述)之行及/或記憶體胞之數目(例如,16,384個行及/或記憶體胞,以及其他可能組態)可經多工化使得(例如)藉由選擇而獲得16個子列(16個子列各具有1024個鄰近行及/或記憶體胞,如圖4中所展示)以耦合至該列中之複數個連續行及/或記憶體胞且經由複數個共用I/O線(例如,1024條個別共用I/O線)並行移動資料值使得可並行移動來自該等連續記憶體胞之資料值(例如,1024個資料值)。替代性地或此外,列之行及/或記憶體胞之數目可經多工化(例如)使得可藉由選擇而獲得16個子列以耦合至該列中之每第十六行及/或記憶體胞且經由共用I/O線並行移動資料值使得可並行移動來自每第十六個記憶體胞之資料值(例如,1024個資料值)。在一些實施例中,陣列可為一DRAM陣列且用於感測及/或放大選定記憶體胞中之資料值之感測電路可包含一感測放大器及/或一計算 組件。
記憶體器件120包含一控制器(例如,如以140所展示且結合圖1A至圖1F及本文中別處所描述)。除其他功能外,控制器140可經組態以引導一資料值自陣列中之一記憶體胞列(例如,其之一選定子列)移動至與資料路徑之複數個共用I/O線之一者相關聯之一計算組件及/或切換節點。
本發明描述實現對藉由記憶體胞儲存之資料值(例如,在移動至一計算組件及/或切換節點時,如本文中所描述)執行如本文中所描述之在資料路徑中計算操作(例如,PIM運算,諸如AND、OR、再新、列複製、移位、加法、乘法等)及切換操作,實質上同時對來自一相同庫、相同庫中之一相同子陣列及/或相同子陣列中之一相同列(例如,在一DRAM陣列中,以及其他類型之記憶體陣列中)之資料值執行(例如)讀取及/或寫入操作。例如,可對儲存於一子陣列之一列中之記憶體胞之一子列中之資料值執行移動操作,實質上同時如藉由一控制器及/或一主機引導對先前移動至資料路徑中之一計算組件及/或切換節點(例如,至一選定邏輯條)之相同資料執行(例如)邏輯運算,如本文中所描述。
因此,當一子列經啟動以在一陣列中經感測時,藉由該子列之記憶體胞儲存之複數個資料值(例如,整個子列之資料值)可移動(例如,複製、傳送及/或輸送)至與該陣列相關聯之一資料路徑中之對應複數個計算組件及/或切換節點(例如,其等各形成如以460所展示且結合圖4及本文中別處所描述之一計算單元中之一邏輯條409之至少一部分)。複數個共用I/O線將該等資料值耦合至該資料路徑中之該複數個計算組件及/或切換節點。在一些實施例中,一計算單元中之數個邏輯條之複數個計算組件及/或切換節點可與一陣列之一庫之各庫區段相關聯。與一共用I/O線相關聯 之計算組件及/或切換節點可經組態以耦合(例如,直接或間接連接,如本文中所描述)至陣列本地之共用I/O線之一資料路徑。在一些實施例中,計算組件431、切換節點966、邏輯條409及/或計算單元460可進一步耦合至連接至遠離記憶體器件之主機110之一資料匯流排及/或耦合至將記憶體器件上之一陣列之一庫連接至一陣列之另一庫的一資料匯流排。
在一些實施例中,本發明描述在感測一列時,該列中之資料值(例如,來自該列中之所有16,384(16K)個記憶體胞之資料值)可經移動以儲存(例如,快取)於一鎖存器組件(例如,一感測放大器)中以進一步在一共用I/O線上移動至陣列本地之共用I/O線之資料路徑中的一計算單元中之一邏輯條。在一些實例中,2048(2K)條共用I/O線可經組態為一2K位元寬共用I/O線。根據一些實施例,可藉由以複數個共用I/O線之2K位元寬度除與陣列中之一記憶體胞列交叉之陣列中之行之數目而判定用於將資料自一源位置中之一第一列移動至一目的地位置中之一第二列之循環數目。例如,一陣列(例如,一庫、一庫區段或其之一子陣列)可具有可對應於一列中之16K個資料值之16K行,其在除以與該列交叉之複數個共用I/O線之2K位元寬度時可產生八個循環,各單獨循環係在實質上相同時間點(例如,並行)以移動列中之資料之各2K位元分率使得在完成該八個循環之後移動列中之所有16K個資料位元。例如,源位置之感測電路350中之複數個(例如,八個之一子集,如圖3中所展示)感測放大器306或計算組件331之僅一者可每次耦合至一各自共用I/O線355。在具有16K條共用I/O線之實施例中,可並行移動所有16K個資料位元。
在一個實例中,2K個資料值可藉由八路多工器透過2K條共用I/O線自16K行(例如,數位線對)之2K個感測放大器每次(例如,並行)多工化至 一計算單元之各邏輯條(例如,各邏輯條具有2K個計算組件及/或切換節點)中之2K個計算組件及/或切換節點(例如,以儲存及/或處理總共2K個位元)。在一些實施例中,該計算單元可具有八個邏輯條以每邏輯條儲存2K個資料值,藉此能夠每計算單元儲存已在八個循環中藉由2K條共用I/O線移動之16K個資料值。在另一實例中,1K個資料值可藉由十六路多工器透過1K條共用I/O線自16K行之1K個感測放大器每次多工化至一計算單元之一邏輯條(例如,各邏輯條具有1K個計算組件)中之1K個計算組件及/或切換節點(例如,以儲存及/或處理總共1K個位元)。在一些實施例中,該計算單元(例如,如以460所展示且結合圖4所描述)可具有十六(16)個邏輯條以每邏輯條儲存1K個資料值,藉此能夠每計算單元儲存已在16個循環中藉由1K條共用I/O線移動之16K個資料值。例如,16個邏輯條(例如,以409-0、409-1、…、409-N所展示且結合圖4所描述)之各者及各邏輯條中之1K個計算組件及/或切換節點可對應於透過各自1K條共用I/O線自其移動(例如,多工化)1K個資料值之一子列(例如,以465-1、465-2、…、465-16所展示且結合圖4所描述)。
因而,自其移動資料值之庫、子陣列、列及/或子列中之記憶體胞可用於(例如,藉由使原始資料值移動至陣列本地之共用I/O線之資料路徑中之計算單元中之一邏輯條)對經儲存於其中的其他資料值執行計算及/或切換操作。在各項實施例中,各邏輯條可包含對應於計算組件及/或切換節點之數目(例如,與計算組件及/或切換節點之數目相同或為該數目的整數倍)之數目的複數個鎖存器,以儲存自另一庫、子陣列、列及/或子列移動的複數個資料值,以實現對藉由與計算組件及/或切換節點相關聯之鎖存器儲存的資料值執行數個操作(例如,邏輯運算及/或切換操作)。
用於在資料路徑中計算操作之DRAM架構的實施方案可在感測放大器及計算組件層級處(例如,在一邏輯條中)執行處理,及/或在鎖存器及切換器層級處執行切換操作。用於在資料路徑中計算及/或切換操作之DRAM架構的實施方案可容許僅有限數目個記憶體胞(例如,1K個記憶體胞,如上文一個實例中給出)被連接至共用I/O線之資料路徑中之一邏輯條中的計算組件。一陣列可包含自大約8K至大約16K個行(數位線對)及相關聯感測放大器。在一些實施例中,例如,如圖4中所展示,一陣列之一庫區段423可被劃分成四個象限,且各象限可具有複數個子陣列(例如,32個子陣列)。各子陣列可具有複數個列(例如,512列),且可被耦合至16K行。如本文中所描述,各列可包含各具有1K個記憶體胞(例如,藉由多工化判定選擇哪些記憶體胞構成經由感測電路耦合至特定共用I/O線之1K個記憶體胞)的16個子列。然而,實施例並不限於此闡釋性實例。
在一些實施例中,作為一計算單元之部分之複數個邏輯條可係與各象限相關聯。例如,在共用I/O線之資料路徑中之一計算單元中的各邏輯條可係與一庫之各象限中之一子陣列相關聯。因此,在以上實例中,於陣列本地之共用I/O線之資料路徑中之一計算單元可具有128個邏輯條(4個象限,一個邏輯條針對每象限32個子陣列之各者)。然而,實施例並不限於此闡釋性實例。在一些實施例中,記憶體(例如,一DRAM陣列中之記憶體胞之)之一庫可包含DRAM之64K列×16K行,以提供大約十億位元之記憶體。
本發明描述在一陣列本地之一共用I/O線之一資料路徑中的一計算組件及/或切換節點,其可包含用作感測放大器以儲存(快取)自與該陣列相關聯之感測電路移動(例如,複製、傳送及/或輸送)之資料值的複數個鎖存 器。計算組件及/或切換節點可在陣列本地之複數個共用I/O線之資料路徑中之一計算單元中的複數個邏輯條中使得該複數個邏輯條各包含總數目個計算組件及/或切換節點之一子集。邏輯條409-0、…、409-N-1之計算組件431-1、…、431-Z及/或切換節點966-0、…、966-M-1(例如,如分別結合圖4及圖9A及圖9B展示及描述)可具有等於在陣列之一庫121-1本地之複數個共用I/O線455之資料路徑之間距的一間距。在一些實施例中,複數個共用I/O線455之資料路徑之間距可依據一記憶體胞陣列之數位線(例如,如以圖2中之205-1及205-2及圖3中之305-1及305-2所展示)之一間距而變化。計算組件、切換節點及/或邏輯條可藉由感測電路150(例如,感測電路之感測放大器206)及/或額外鎖存器170(如圖1F中所展示)耦合至複數個共用I/O線455之資料路徑。
因而,用於在資料路徑中計算操作之架構可促進儲存於一陣列之一列之一子列中之資料值移動(例如,複製、傳送及/或輸送)至該陣列本地之複數個共用I/O線之資料路徑中的計算組件、切換節點及/或邏輯條。具有感測放大器之感測電路150(其在一些實施例中亦可包含如圖2中所展示之計算組件)可將來自一陣列中之記憶體胞之一經多工化行之記憶體胞耦合至複數個共用I/O線455之資料路徑中之一計算單元中的計算組件、切換節點及/或邏輯條。以此方式,計算組件、切換節點及/或邏輯條可經由操作為一多工器之行選擇電路(例如,如以358所展示且結合圖3所描述)及相關聯選擇邏輯(如結合圖3至圖9所論述)透過複數個共用I/O線455間接耦合至一行之記憶體胞。
記憶體陣列架構可提供除剛描述之益處以外之數個益處。可藉由(例如)與其他操作(例如,執行DDR4 I/O操作)之執行並行地實現對藉由記憶 體胞儲存之資料執行之邏輯運算及/或切換操作而增大整體處理速度。例如,可在陣列本地之共用I/O線455之資料路徑中的具有複數個計算組件431-1、…、431-Z、切換節點966-0、…、966-M-1及/或邏輯條409-0、…、409-N-1之一計算單元中執行邏輯運算及/或切換操作。藉由實例且非限制地,一旦將資料值自陣列之子列載入至計算單元中之複數個計算組件、切換節點及/或邏輯條,便可在該計算單元中以2ns之速度(相較於觸發陣列中之列所需之60ns之一例示性時間)控制計算操作而無需將該等資料值移動回至該等列中。以此方式,計算組件、切換節點及/或邏輯條(連同相關聯鎖存器)可提供經移動資料值之儲存以執行特定功能(例如,AND、OR、NOR、XOR、加法、減法、乘法、除法、切換操作等),同時可將一子列之原始資料值保存回至一列,保存於別處及/或覆寫。如結合圖5及圖6更多論述,可藉由一庫121之一控制器140引導複數個共用I/O線之資料路徑中之計算單元中的計算組件、切換節點及/或邏輯條之操作。
在圖4之實施例中,一庫區段423(例如,具有複數個庫象限)經展示為具有每象限複數個子陣列425-1、…、425-32。在圖4中,在庫象限1中繪示32個子陣列。然而,實施例並不限於此實例。此實例將一庫區段423展示為具有16K行,其等可藉由每列16個子列465-1、…、465-16(例如,經由以358-1及358-2所展示且結合圖3所描述之行選擇電路)多工化至共用I/O線455。在一些實施例中,每第十六行及一經耦合記憶體胞可提供可作為1K個位元之一群組作為一子列並行移動至計算單元460之一資料值。替代性地或此外,一連續1K行及經耦合記憶體胞可提供可作為1K個位元之一群組作為一子列並行移動至計算單元460之1K個資料值。在任一實施例 以及其他可能實施例中,1K個位元之群組可在16個循環中透過共用I/O線455循序移動至16個經指定邏輯條409-0、…、409-N-1之1K個經指定計算組件431-1、…、431-Z及/或切換節點966-0、…、966-M-1。
例如,來自第一子列465-1之一序列中之一第一感測放大器及/或記憶體胞之一位元可(例如,藉由控制器140)經引導以藉由第一邏輯條409-0中之計算組件序列中之一第一計算組件431-1及/或一第一切換節點966-0或一相關聯鎖存器儲存。來自第一子列465-1之該序列中之一第二感測放大器及/或記憶體胞之一位元可經引導以藉由第一邏輯條409-0中之計算組件及/或切換節點之序列中之一第二計算組件431-2及/或一第二切換節點966-1或一相關聯鎖存器儲存。此外,來自第二子列465-2之一序列中之一第一感測放大器及/或記憶體胞之一位元可經引導以藉由第二邏輯條409-1中之計算組件之序列中之一第一計算組件431-1及/或一第一切換節點966-0或一相關聯鎖存器儲存。來自第二子列465-2之該序列中之一第二感測放大器及/或記憶體胞之一位元可經引導以藉由第二邏輯條409-1中之計算組件之序列中之一第二計算組件及/或一第二切換節點或一相關聯鎖存器儲存。對應於每列之子列465-1、465-2、…、465-16之序列中之各感測放大器及/或記憶體胞之位元可類似地經指定以藉由邏輯條409-0、…、409-N-1之序列中之一對應計算組件及/或切換節點或一相關聯鎖存器儲存(例如,來自子列465-1之資料值移動至邏輯條409-0,來自子列465-2之資料值移動至邏輯條409-1等)。移動可經由可提供至計算單元460之1K位元寬資料路徑之共用I/O線455引導至一經指定邏輯條。
在圖4之實例中,各邏輯條409-0、…、409-N-1可具有複數個計算組件431-1、…、431-Z,如本文中已結合圖2之感測電路250描述之計算組 件231。在一些實施例中,複數個邏輯條409-0、…、409-N-1之各者可經組態以使用該複數個計算組件431-1、…、431-Z執行一計算功能。在一些實施例中,複數個邏輯條409-0、…、424-Z之各者可使用複數個計算組件431-1、…、431-Z執行一不同邏輯運算。例如,複數個邏輯條409-0、…、409-N-1之至少一者可經組態以執行一AND運算且複數個邏輯條409-0、…、409-N-1之至少一者可經組態以執行一NOR運算,以及邏輯運算之各種組合及/或序列。
在一些實施例中,與庫區段相關聯之控制器140(圖1A)可執行微碼指令以引導1K個資料值自與複數個子陣列425-1、…、425-32中之一特定經存取子列連接之對應1K個經多工化行並行移動至計算單元460中之一特定邏輯條409-0、…、409-N-1之一特定計算組件431-1、…、431-Z及/或一特定切換節點966-0、…、966-M-1。
在一些實施例中,共用I/O線可用於將1K個資料值連接至複數個邏輯條409-0、…、409-N-1之一各自者中之複數個計算組件431-1、…、431-Z及/或切換節點966-0、…、966-M-1之一各自者。藉由實例且非限制地,可將1K個位元之資料值並行移動至與各子列相關聯的一特定邏輯條。在各項實施例中,例如,可存在與一庫區段423之4個象限之各者中之32個子陣列425-1、…、425-32之各者相關聯之一計算單元460,或計算單元可在子陣列、象限及/或庫區段之各種組合之間共用。可根據來自控制器140(圖1A)之微碼指令操作載入至計算單元460之邏輯條409-0、…、409-N-1中之複數個計算組件431-1、…、431-Z及/或切換節點966-0、…、966-M-1的資料值以對該等資料值執行操作(例如,AND、OR、NOR、XOR、加法、減法、乘法、除法、切換等),如本文中已結 合圖2之感測電路250及本文中別處描述。
如本文中所描述,例如,一旦將一第一子列465-1之1K個資料值移動(例如,載入)至計算單元460之一第一邏輯條409-0,便可在來自一第二子列465-2之資料值移動至計算單元460之一第二邏輯條409-1之前及/或實質上同時對此等資料值起始計算及/或切換操作。可根據藉由控制器140(圖1A)執行之微碼指令更快地(例如,以大約2ns之速度)控制在計算單元之邏輯條中執行之此等操作而無需將該等資料值移動回至陣列130(圖1A)之列中。例如,可使用計算單元460以一更快速度(相較於觸發及存取陣列130(圖1A)中之列所需之(例如,大約60ns)之一例示性時間)執行計算操作。如結合圖2所描述,連接電路232-1及232-2可實現已對其執行一操作之一邏輯條之經感測、經儲存及/或之資料值在未經由一共用I/O線移動之情況下在邏輯條之間之移動。
因此,在各項實施例中,一記憶體器件120可包含共用為與一記憶體胞陣列130相關聯之用於在資料路徑中計算操作之一資料路徑之複數個I/O線。該複數個共用I/O線可經由感測電路(例如,350)將該陣列之一列之一第一子列(例如,465-1)可選擇地耦合至該資料路徑中之一第一計算組件(例如,431-1)及/或一第一切換節點(例如,966-0)以將一第一資料值自該第一子列移動至該第一計算組件及/或該第一切換節點。該複數個共用I/O線可經由感測電路將各自列之一第二子列(例如,465-2)可選擇地耦合至資料路徑中之一第二計算組件及/或切換節點(例如,對應於第一邏輯條中之第一計算組件及/或切換節點之位置)以將一第二資料值自該第二子列移動至該第二計算組件及/或切換節點。例如,第一邏輯條(例如,409-0)可包含第一計算組件及/或第一切換節點且一第二邏輯條(例如,409-1)可包 含第二計算組件及/或第二切換節點。如本文中所描述,可使用第一計算組件對來自第一子列之第一資料值執行一操作,實質上同時將第二資料值自第二子列移動至第二計算組件。
在各項實施例中,資料路徑可進一步包含:第一邏輯條(例如,409-0),其可包含對應於第一子列(例如,465-1)之複數個記憶體胞(未展示)之一數目之數目個複數個第一計算組件及/或第一切換節點;及第二邏輯條(例如,409-1),其可包含對應於第二子列(例如,465-2)之複數個記憶體胞之一數目之數目個複數個第二計算組件及/或切換節點。複數個邏輯條(例如,409-0、…、424N)之一數目可對應於各自列之複數個子列(例如,465-1、…、465-16)之一數目。一計算單元(例如,460)可包含可各包含複數個計算組件(例如,431-1、…、431-Z)及/或切換節點(例如,966-0、…、966-M-1)之複數個邏輯條(例如,409-0、…、424N),其中該複數個計算組件之各者可與陣列本地之複數個共用I/O線455之至少一者相關聯(例如,可選擇地耦合至陣列本地之複數個共用I/O線455之至少一者)。複數個共用I/O線之一數目可對應於各自列之一子列之複數個記憶體胞之一數目(例如,一個別共用I/O線用於子列或列之每8個或16個記憶體胞及/或行,以及其他可能組態)。一邏輯條(例如,409-0)可包含對應於耦合至一各自邏輯條之子列之複數個記憶體胞之數目之數目個複數個計算組件及/或切換節點。
圖5係繪示根據本發明之數項實施例之一記憶體器件520之一控制器540之一實例的一方塊圖。在一些實施方案中,圖5之方塊圖提供一具備PIM能力之器件(諸如圖1A中之記憶體器件120)之一個實例之一部分的更多細節。在圖5之實例中,控制器540-0、…、540-7(通稱為控制器540) 可與具備PIM能力之器件520之各庫521-0、…、521-7(通稱為庫521)相關聯。在圖5之實例中展示八個庫。然而,實施例並不限於此例示性數目。例如,控制器540可表示圖1A中及本文中別處所展示之控制器140。各庫可包含一或多個記憶體胞陣列(未展示)。例如,各庫可包含一或多個陣列(諸如圖1A中之陣列130)且可包含如圖1A中所展示之解碼器、其他電路及/或暫存器。在圖5中所展示之例示性記憶體器件520中,控制器540-0、…、540-7經展示為具有控制邏輯531-0、…、531-7、定序器532-0、…、532-7及時序電路533-0、…、533-7作為一記憶體器件520之一或多個庫521上之一控制器540之部分。具備PIM能力之器件520可表示圖1A中所展示之記憶體器件120之部分。
如圖5中所展示,記憶體器件520可包含用以在該具備PIM能力之器件520處接收資料、位址、控制信號及/或命令之一高速介面(HSI)541。在各項實施例中,該HSI 541可耦合至與具備PIM能力之器件520相關聯之一庫仲裁器545。HSI 541可經組態以自一主機(例如,如圖1A中之110)接收命令及/或資料。如圖5中所展示,該庫仲裁器545可耦合至複數個庫521-0、…、521-7。
在圖5中所展示之實例中,控制邏輯531-0、…、531-7可呈負責提取及執行來自各庫521-0、…、521-7之部分之一記憶體胞陣列(例如,圖1A中之陣列130)之機器指令(例如,微碼指令)之一微碼引擎之形式。定序器532-0、…、532-7亦可呈微碼引擎之形式。替代性地,控制邏輯531-0、…、531-7可呈特大指令字(VLIW)類型處理資源之形式且定序器532-0、…、532-7及時序電路533-0、…、533-7可呈狀態機及電晶體電路之形式。
控制邏輯531-0、…、531-7可將微碼指令解碼成藉由定序器532-0、…、532-7實施之函式呼叫(例如,微碼函式呼叫(uCODE))。圖6繪示在圖6中展示為642之控制器540之另一實施例,其繪示根據本發明之實施例之一定序器之一更詳細部分。微碼函式呼叫可為定序器532-0、…、532-7接收及執行以引起記憶體器件520使用感測電路(諸如圖1A中之感測電路150)或使用圖4及圖6中分別展示之計算單元460及660之計算組件431-1、…、431-Z及631-1、…、631-Z,及/或圖9A及圖9B中所展示之切換節點966-0、…、966-M-1執行特定邏輯運算及/或切換操作(例如,選自此等操作之替代物,其等可使指令儲存於記憶體中及/或可藉由選擇特定應用特定積體電路而啟用,以及其他可能)之操作。時序電路533-0、…、533-7可提供時序以協調藉由圖4及圖6中分別展示之計算單元460及660之邏輯條409-0、…、409-N-1及609-0、…、609-N-1執行邏輯運算,協調執行結合圖9A及圖9B所描述之切換操作,及/或負責提供對陣列(諸如圖1A中之陣列130)之無衝突存取。
如結合圖1A所描述,控制器540-0、…、540-7可經由圖5中展示為555-0、…、555-7之控制線及資料路徑耦合至與記憶體胞陣列相關聯之感測電路150、資料切換網路472、計算單元460/660及/或額外邏輯電路713(包含快取區、緩衝器、感測放大器、擴展列位址(XRA)鎖存器及/或暫存器)。因而,圖1A、圖4及圖6中所展示之感測電路150、計算單元460/660及邏輯170及圖5中所展示之感測電路及邏輯550/570-0、…、550/570-7可(例如,使用圖5中以555-0、…、555-7展示之共用I/O線及/或其他I/O電路)與記憶體胞陣列130相關聯。控制器540-0、…、540-7可控制陣列之常規DRAM操作(諸如讀取、寫入、複製及/或擦除操作等)。此外,然而, 藉由控制邏輯531-0、…、531-7擷取及執行之微碼指令及藉由定序器532-0、…、532-7接收及執行之微碼函式呼叫引起圖1A、圖4及圖6中所展示之感測電路150及/或計算單元460/660執行額外邏輯運算(諸如加法、乘法或(作為一更特定實例)布林運算,諸如AND、OR、XOR等)及/或切換操作,其等不同於常規DRAM讀取及寫入操作(例如,比常規DRAM讀取及寫入操作更複雜)。因此,在此例示性記憶體器件520中,可在一具備PIM能力之器件之庫521-0、…、521-7上執行微碼指令執行、邏輯運算及/或切換操作。
在各項實施例中,控制邏輯531-0、…、531-7、定序器532-0、…、532-7及時序電路533-0、…、533-7可操作以針對一DRAM陣列產生操作循環序列及/或引導記憶體器件520上(例如,庫521-0、…、521-7上,包含在共用I/O線455-0、…、455-7之一資料路徑中之一計算單元460/660中)之運算(例如,邏輯運算及/或切換操作)的執行。在具備PIM能力之器件實例中,各序列可經設計以執行一起達成一特定功能之運算(諸如布林邏輯運算AND、OR、XOR等)。例如,運算序列可重複執行一(1)位元加法之一邏輯運算以計算一多位元總和。在另一實例中,可執行用於操作序列之指令以執行數個切換操作,以及各種其他類型之操作。可將各操作序列饋送至耦合至時序電路533-0、…、533-7之一先進/先出(FIFO)緩衝器中以提供與和圖1A中所展示之記憶體胞陣列130(例如,DRAM陣列)相關聯之感測電路150、計算單元460/660及/或額外邏輯電路713之時序協調。
在圖5中所展示之例示性具備PIM能力之記憶體器件520中,時序電路533-0、…、533-7可提供時序且可提供對來自四個(4)FIFO佇列之陣列之無衝突存取及/或可協調計算單元460/660中之操作之時序。在此實例 中,一個FIFO佇列可支援陣列計算,一個FIFO佇列用於微碼(例如,Ucode)指令提取,一個FIFO佇列可用於控制與共用I/O線、邏輯條、計算單元、連接電路等有關之資料路徑且一個FIFO佇列用於DRAM I/O。控制邏輯531-0、…、531-7及定序器532-0、…、532-7兩者皆可產生經由一FIFO介面投送回至庫仲裁器545之狀態資訊。庫仲裁器545可彙總此狀態資料且(例如)經由HSI 541將其報告回至主機110。
圖6係繪示一記憶體器件520(圖5)之一控制器642之一部分之另一實例的一方塊圖。根據本發明之數項實施例,除其他功能外,控制器642經組態以控制使用在一陣列130(圖1A)本地之一資料路徑中之一共用I/O線655將資料值移動至具有複數個邏輯條609-0、…、609-N-1之一計算單元660。在圖6之實例中,控制器642之部分係一控制器之一定序器部分(諸如圖5中之定序器532)之一實例。
在圖6之實施例中,控制器642之定序器部分可對四種類別之微碼指令(陣列操作、計算組件操作、切換節點操作及控制操作)操作。如601處所展示,位元值可提供為一子陣列遮罩之部分以識別一庫區段之一象限中之一特定子陣列,如上文所描述。在602-1及602-2處,與如結合圖2之感測電路250描述且在圖7中更詳細展示為731(A)及706(B)之一主要鎖存器及次要鎖存器相關聯之A及B位址指標提供一陣列130(圖1A)中之資料值之實體位址之指標。在603處,位元值可另外提供一額外索引至陣列130(圖1A)中。如圖6之實例中所展示,位址指標602-1及602-2以及索引603係用於存取一陣列130(圖1A)之特定列及感測線(例如,列字線及位元線)。
本文中所描述之複數個共用I/O線655可將陣列130(圖1A)連接至在 該陣列本地之共用I/O線655之一資料路徑中的計算單元660。將指令自控制器642提供至一資料切換網路672中之該計算單元以將來自共用I/O線655之資料值載入至計算單元660之一給定邏輯條609-0、…、609-N-1中之一給定計算組件631-1、…、631-Z及/或切換節點966-0、…、966-M-1。計算單元660之一遮罩條641可能夠選擇一感測線及計算組件值以用於讀取或寫入。
在604處,來自一線或(wired OR)邏輯組態之一條件碼可提供運用計算單元660之一線或運算之一位元值結果。在611處,位元值可提供一暫存器位址作為用於計算組件操作及/或切換節點操作指令之一第二暫存器源之一指標。在612處,位元值可指示計算單元660之一邏輯條609-0、…、609-N-1之一暫存器索引以及用於計算組件操作及/或切換節點操作指令之一第二暫存器源之暫存器位址指標611。
圖7係繪示根據本發明之數項實施例之一邏輯條(例如,如以109、409及609所展示且結合圖1F、圖4及圖6所描述)之計算組件731的一示意圖。圖7亦係繪示根據本發明之數項實施例之能夠實施邏輯運算之計算單元460/660電路的一示意圖。
在一些實施例中,圖7展示直接耦合至一對互補共用I/O線755-1及755-2(例如,如結合圖3中之共用I/O線355展示及描述)之一鎖存器706、及/或邏輯運算選擇邏輯713及經由傳遞閘707-1及707-2耦合至該鎖存器706之一計算組件731。藉由圖解而非限制,鎖存器706在圖7中展示為直接耦合至該對互補共用I/O線755-1及755-2。例如,一共用I/O線可為單條共用I/O線755或可包含圖7中所展示之互補共用I/O線對。在各項實施例中,共用I/O線之任一實施例可選擇地及/或直接耦合至鎖存器706以載入 (例如,儲存)來自一陣列之一第一列之一第一子列之一第一資料值及/或可選擇地及/或直接耦合至計算組件731以載入(例如,儲存)來自一第二列之一第二子列之一第二資料值以實現藉由計算組件731使用該兩個經儲存資料值執行一邏輯運算。
在一些實施例中,可存在與一計算組件731相關聯之複數個鎖存器706使得在各項實施例中該等鎖存器可選擇地、直接及/或間接耦合至共用I/O線以將一資料值載入至該等鎖存器之各者,該資料值可接著藉由一相關聯計算組件可選擇地使用(例如,如藉由一控制器引導)以執行(例如,如藉由鎖存器之數目的平方判定之)複數個邏輯運算。因此,傳遞閘707-1及707-2可在各項實施例中用於使鎖存器706、計算組件731及/或邏輯運算選擇邏輯713彼此直接及/或間接耦合及/或將共用I/O線755間接連接至鎖存器706、計算組件731及/或邏輯運算選擇邏輯713。
圖7中所展示之鎖存器706可依類似於在圖2中展示且結合圖2描述為與感測電路250相關聯之感測放大器206(例如,主要鎖存器)之一方式運作。圖7中所展示之計算組件731可類似於圖2中所展示之如與感測電路250相關聯之計算組件231(例如,次要鎖存器)運作。圖7中所展示之邏輯運算選擇邏輯713可類似於圖2中所展示之與感測電路250相關聯之邏輯運算選擇邏輯213運作。傳遞閘707-1及707-2之閘極可由一邏輯運算選擇邏輯713信號(例如,Pass)加以控制。例如,邏輯運算選擇邏輯713之一輸出可耦合至傳遞閘707-1及707-2之閘極。此外,計算組件731可包括經組態以使資料值向左及向右移位之一可載入移位暫存器。
在圖7中所繪示之實施例中,計算組件731可包括經組態以使資料值向左及向右移位之一可載入移位暫存器之各自層級(例如,移位胞)。例 如,如圖7中所繪示,該移位暫存器之各計算組件731(例如,層級)包括一對右移位電晶體781及786、一對左移位電晶體789及790以及一對反相器787及788。可將信號PHASE 1R、PHASE 2R、PHASE 1L及PHASE 2L施加至各自控制線782、783、791及792以啟用/停用對應計算組件731之鎖存器上與根據本文中所描述之實施例執行邏輯運算及/或移位資料相關聯之回饋。
圖7中所展示之計算單元460/660電路展示耦合至數個邏輯選擇控制輸入控制線(包含ISO、TF、TT、FT及FF)之運算選擇邏輯713。自邏輯選擇控制輸入線上之邏輯選擇控制信號之條件以及在經由確證ISO控制信號啟用隔離電晶體750-1及750-2時存在於互補共用I/O線對755-1及755-2上之資料值而判定自複數個邏輯運算之一邏輯運算選擇。
根據各項實施例,運算選擇邏輯713可包含四個邏輯選擇電晶體:耦合於交換電晶體742之閘極與一TF信號控制線之間的邏輯選擇電晶體762、耦合於傳遞閘707-1及707-2之閘極與一TT信號控制線之間的邏輯選擇電晶體752、耦合於傳遞閘707-1及707-2之閘極與一FT信號控制線之間的邏輯選擇電晶體754及耦合於交換電晶體742之閘極與一FF信號控制線之間的邏輯選擇電晶體764。邏輯選擇電晶體762及752之閘極透過隔離電晶體750-1(其具有耦合至一ISO信號控制線之一閘極)耦合至真感測線。邏輯選擇電晶體764及754之閘極透過隔離電晶體750-2(其亦具有耦合至一ISO信號控制線之一閘極)耦合至互補感測線。
可經由傳遞閘707-1及707-2將存在於互補共用I/O線對755-1及755-2上之資料值載入至計算組件731中。計算組件731可包括一可載入移位暫存器。當傳遞閘707-1及707-2開啟時,互補共用I/O線對755-1及755-2上 之資料值(「A」)經傳遞至計算組件731且藉此經載入至該可載入移位暫存器中。互補共用I/O線對755-1及755-2上之資料值可為在觸發感測放大器706時藉由該感測放大器儲存之資料值(「B」)。在此實例中,邏輯運算選擇邏輯信號Pass為高以開啟傳遞閘707-1及707-2。
ISO、TF、TT、FT及FF控制信號可操作以基於感測放大器706中之資料值(「B」)及計算組件731中之資料值(「A」)選擇一邏輯函數進行實施。特定言之,ISO、TF、TT、FT及FF控制信號經組態以獨立於存在於互補共用I/O線對755-1及755-2上之資料值而選擇邏輯函數進行實施(儘管經實施邏輯運算之結果可取決於存在於互補共用I/O線對755-1及755-2上之資料值)。例如,ISO、TF、TT、FT及FF控制信號直接選擇邏輯運算進行實施,此係因為存在於互補共用I/O線對755-1及755-2上之資料值並未傳遞通過用以操作傳遞閘707-1及707-2之閘極之邏輯。
此外,圖7展示經組態以在感測放大器706與計算組件731之間交換互補共用I/O線對755-1及755-2之定向之交換電晶體742。當交換電晶體742開啟時,在交換電晶體742之感測放大器706側上之互補共用I/O線對755-1及755-2上之資料值相反耦合(oppositely-coupled)至在交換電晶體742之計算組件731側上之互補共用I/O線對755-1及755-2,且藉此載入至計算組件731之可載入移位暫存器中。
當ISO控制信號線經啟動且TT控制信號在真共用I/O線上之資料值為「1」之情況下經啟動(例如,為高)或FT控制信號在互補共用I/O線上之資料值為「1」之情況下經啟動(例如,為高)時,邏輯運算選擇邏輯713信號Pass可經啟動(例如,為高)以開啟傳遞閘707-1及707-2(例如,傳導)。
真共用I/O線上之資料值係一「1」開啟邏輯選擇電晶體752及762。 互補共用I/O線上之資料值係一「1」開啟邏輯選擇電晶體754及764。若ISO控制信號或對應共用I/O線(例如,特定邏輯選擇電晶體之閘極耦合至之共用I/O線)上之各自TT/FT控制信號或資料值並非為高,則傳遞閘707-1及707-2將不會由一特定邏輯選擇電晶體開啟。
當ISO控制信號線經啟動且TF控制信號在真共用I/O線上之資料值為「1」之情況下經啟動(例如,為高)或FF控制信號在互補共用I/O線上之資料值為「1」之情況下經啟動(例如,為高)時,邏輯運算選擇邏輯信號Pass*可經啟動(例如,為高)以開啟交換電晶體742(例如,傳導)。若對應共用I/O線(例如,特定邏輯選擇電晶體之閘極耦合至之共用I/O線)上之各自控制信號或資料值並非為高,則交換電晶體742將不會由一特定邏輯選擇電晶體開啟。
Pass*控制信號不一定與Pass控制信號互補。可同時啟動或撤銷啟動Pass及Pass*控制信號兩者。然而,Pass及Pass*控制信號兩者之同時啟動使互補共用I/O線對短接在一起,此可為應避免之一破壞性組態。
圖7中所繪示之計算單元460/660電路經組態以自四個邏輯選擇控制信號直接選擇複數個邏輯運算之一者來實施(例如,邏輯運算選擇並不取決於存在於互補共用I/O線對上之資料值)。邏輯選擇控制信號之一些組合可引起傳遞閘707-1及707-2及交換電晶體742兩者同時開啟,此將互補共用I/O線對755-1及755-2短接在一起。根據本發明之數項實施例,可藉由圖7中所繪示之計算單元460/660電路實施之邏輯運算可為圖8中展示之邏輯表中概述之邏輯運算。
圖8係繪示根據本發明之數項實施例之藉由圖7中所展示之計算組件 731及相關聯電路實施之可選擇邏輯運算結果的一邏輯表。可藉由圖7中所展示之複數個共用I/O線755-1及755-2之一資料路徑中之計算單元460/660電路實施該等可選擇邏輯運算結果。四個邏輯選擇控制信號(例如,TF、TT、FT及FF)連同存在於互補共用I/O線上之一特定資料值一起可用於選擇複數個邏輯運算之一者進行實施,此涉及藉由計算單元460/660電路之感測放大器706(例如,主要鎖存器)及計算組件731(例如,次要鎖存器)儲存之起始資料值(「A」及「B」)。該四個控制信號連同存在於互補共用I/O線上之一特定資料值一起控制傳遞閘707-1及707-2以及交換電晶體742之連續性,此繼而影響在觸發之前/之後在計算組件731及/或感測放大器706中之資料值。可選擇地控制交換電晶體742之連續性之能力促進實施涉及反相資料值(例如,反相運算元及/或反相結果)等之邏輯運算。
圖8中所繪示之邏輯表8-1展示在844處之欄A中所展示之藉由計算組件731(例如,次要鎖存器)儲存之一起始資料值及在845處之欄B中所展示之藉由鎖存器(例如,作為一主要鎖存器之感測放大器706)儲存之一起始資料值。邏輯表8-1中之其他3欄標頭係指傳遞閘707-1及707-2以及交換電晶體742之連續性,其等可取決於四個邏輯選擇控制信號(例如,TF、TT、FT及FF)之狀態以及存在於互補共用I/O線對755-1及755-2上之一特定資料值而分別控制為開啟或關閉。「Not Open」欄856對應於傳遞閘707-1及707-2以及交換電晶體742皆處於一非傳導條件下,「Open True」欄870對應於傳遞閘707-1及707-2處於一傳導條件下且「Open Invert」欄871對應於交換電晶體742處於一傳導條件下。在邏輯表8-1中未反映對應於傳遞閘707-1及707-2以及交換電晶體742皆處於一傳導條件 下之組態,此係因為此導致感測線短接在一起。
經由傳遞閘707-1及707-2以及交換電晶體742之連續性之選擇性控制,邏輯表8-1之上部分之三個行之各者可與邏輯表8-1之下部分之三個行之各者組合以提供對應於九個不同邏輯運算之3 x 3=9個不同結果組合,如藉由875處所展示之各種連接路徑所指示。在圖8中所繪示之邏輯表8-2中概述可藉由計算單元460/660電路實施之九個不同可選擇邏輯運算(包含AND、OR、NOT、NAND、NOR及XOR邏輯運算)。
圖8中所繪示之邏輯表8-2之行展示包含邏輯選擇控制信號之狀態之一標頭880。例如,在表8-2之列876中提供一第一邏輯選擇控制信號之狀態,在表8-2之列877中提供一第二邏輯選擇控制信號之狀態,在表8-2之列878中提供一第三邏輯選擇控制信號之狀態且在表8-2之列879中提供一第四邏輯選擇控制信號之狀態。在表8-2之列847中概述對應於結果之特定邏輯運算。
圖9A及圖9B係繪示根據本發明之數項實施例之在記憶體中資料切換網路之示意圖。圖9A中所繪示之實施例意欲繪示實施為層級967-0、…、967-N-1之在記憶體中資料切換網路972-1之一實例。如本文中所描述,該等層級可對應於邏輯條(例如,圖4及圖6中所展示之計算單元460及660之409-0、…、409-N-1及609-0、…、609-N-1)及/或可為可(例如,實體上)定位於具有一記憶體胞陣列(例如,包含如以125及/或126所展示且結合圖1B及圖1C及本文中別處所描述之子陣列)之晶片上之資料切換網路(例如,如以372所展示且結合圖3所描述)之層級,該資料切換網路可藉由共用I/O線可選擇地耦合至該記憶體胞陣列。藉由實例且非限制,圖9A中所展示之層級之數目係展示為六個層級。例如,儘管層級可為複數個層 級,然層級之實際數目可為2個、3個、4個、…、16個或更多個層級,如藉由待執行以達成(例如,如藉由一選定切換協定判定之)預期完成切換操作之預期切換操作而判定。
層級967-0、…、967-N-1之各者經展示以包含複數個切換節點966-0、…、966-M-1。複數個切換節點966-0、…、966-M-1之數目可對應於一陣列之一列中之記憶體胞之一數目(例如,4K個、8K個、16K個等記憶體胞,如結合圖1B及圖1C所描述)及/或一列之一子列中之複數個記憶體胞之一數目(例如,1K個記憶體胞,如結合圖4所描述)。在一些實施例中,可減少資料切換網路之一層級中之切換節點之數目。例如,可經由多工化來自列及/或子列之資料值而減少經由一共用I/O線移動至一第一層級967-0之資料值之數目(例如,至總資料值之八分之一或十六分之一,如結合圖3及本文中別處所描述)。
可藉由一切換節點966之數個鎖存器970儲存移動至該切換節點之資料值且可藉由該切換節點之切換器963對該經儲存資料值執行切換操作。在一些實施例中,可存在與一切換器963相關聯之複數個鎖存器970使得在各項實施例中該等鎖存器可選擇地、直接及/或間接耦合至共用I/O線以將一資料值載入至該等鎖存器之各者,該資料值可接著藉由一相關聯切換器可選擇地使用(例如,如藉由一控制器引導)以執行(例如,如藉由鎖存器之數目之平方判定之)複數個切換操作。
在一些實施例中,一層級中之切換節點之各者可經組態以執行一固定切換操作。例如,第一層級967-0中之各切換節點966-0、…、966-M-1可經組態以(例如,經由本文中所描述之連接電路232)將一經接收資料值切換至經組態以藉由通過層級序列中之經指定切換節點達成對資料值之預 期完成切換操作之複數個層級967-0、…、967-N-1(例如,序列)之一第二層級967-1中之一預定位置。如圖9A中所展示,在一些實施例中,層級之各者中之對應位置處之切換節點可經組態以將一資料值移動(例如,切換)至不同於該資料值在前一及/或後續層級中切換至之一位置之一位置中之一切換節點。當完成切換操作時,所得資料值可儲存於其等新位置中。在各項實施例中,所得資料值可藉由最後層級967-N-1中之切換節點之鎖存器970儲存及/或所得資料值可經移動以藉由耦合至最後層級967-N-1中之切換節點之鎖存器968-0、…、968-M-1儲存。
在一些實施例中,一層級中之切換節點之各者可經組態以執行資料值之複數個移動(例如,切換)。一控制器140(例如,如結合圖5及圖6及本文中別處所描述)可經組態以(例如,經由切換組件171)發送指令至切換節點966以將(例如,如藉由選擇一第一切換協定而判定之)下一層級中之一第一切換節點之一資料值之一移動方向切換至該下一層級中之一不同第二切換節點(例如,如藉由選擇一第二切換協定而判定)。在各項實施例中,該控制器140可經組態以執行微碼指令以引導(例如,實現)藉由一在記憶體中資料切換網路中之一切換節點966之各切換器963執行特定切換操作。在各項實施例中,切換節點966之切換器963可使用圖2中以232-1及232-2展示之連接電路、圖5中以555-0、…、555-7展示之共用I/O線及/或諸如一多工器(未展示)之其他電路而啟用。如此啟用一特定切換協定可導致預定切換操作藉由各層級中之各切換節點執行使得透過資料切換網路之資料值之各者之移動將遵循一預定路線以達成該切換協定之一預期完成切換操作。
在一些實施例中,各切換節點966-0、…、966-M-1自身可被視作一 可程式化多工器。例如,與實施為層級967-0、…、967-N-1之資料切換網路972-1一致之一實施例(例如,在二維拓撲中,但並不限於此)可具有由(k+1)2k個切換節點組成之一網路拓撲。該等切換節點可配置成k+1個等級,各等級具有n=2k個切換節點,其中k表示網路之級數。在其中各層級包含(例如)256(28)個切換節點(例如,28位元寬)之一資料切換網路中,可藉由可在9個層級中均勻分佈之(8+1)28=2304個切換節點而判定該資料切換網路之深度(例如,2304÷256=9)。
例如,第一層級967-0中之各切換節點966-0、…、966-M-1可經組態以取決於自切換組件171發送哪些指令來啟用一特定切換協定而將一經接收資料值切換至複數個層級967-0、…、967-N-1(例如,序列)之一第二層級967-1中之複數個位置。因此,使資料值通過層級序列中之經指定切換節點可經組態以達成複數個切換操作(例如,各層級中之一不同切換操作)以達成(例如,如藉由自複數個切換協定選擇而判定之)預期完成切換操作。
一記憶體器件120可包含一記憶體胞陣列(例如,該陣列之包含子陣列425-1、…、425-32之以423所展示且結合圖4所描述之庫區段)。該記憶體器件120可包含可選擇地耦合至該記憶體胞陣列之感測電路,其中該感測電路包含一感測放大器。一I/O線(例如,如以455所展示且結合圖4所描述)可共用為與陣列相關聯之用於在記憶體中資料切換之一資料路徑。共用I/O線455可將感測電路可選擇地耦合至共用I/O線之資料路徑中之一切換節點(例如,如以966-0、…、966-M-1所展示且結合圖9A及圖9B所描述)。記憶體器件120可進一步包含在資料路徑中之複數個邏輯條。該複數個邏輯條係(例如)以409-0、…、409-N-1及609-0、…、609-N-1所展示且 結合圖4及圖6所描述且以967-0、…、967-N-1所展示且結合圖9A及圖9B所描述。一第一邏輯條(例如,409-0、609-0及/或967-0)可包含(例如)對應於陣列之一列之一第一子列(例如,以465-1所展示且結合圖4所描述之子列)之複數個記憶體胞之一數目之數目個複數個第一切換節點(例如,1K個切換節點),但實施例並不限於此。例如,切換節點之數目可不同於子列之記憶體胞之數目(例如,藉由如本文中所描述般多工化)。
記憶體器件120可進一步包含與陣列相關聯之一控制器(例如,如以140所展示且結合圖1A至圖1F及圖5所描述及以642所展示且結合圖6所描述)。在一些實施例中,該控制器可經組態以經由感測電路引導一第一資料值經由共用I/O線自陣列之一第一列之一第一子列移動至資料路徑中之第一邏輯條之一第一切換節點。控制器可經組態以引導使用該第一切換節點對來自該第一子列之該第一資料值執行一切換協定之一第一切換操作。控制器可進一步經組態以引導源自該第一切換操作之執行之一第一經切換資料值經由連接電路自第一邏輯條移動至資料路徑中之一第二邏輯條之一第二切換節點。
在一些實施例中,第一邏輯條(例如,圖4中之409-0)可對應於用於執行切換協定之複數個切換操作之一在記憶體中資料切換網路972之複數個層級之一第一層級(例如,圖9A及圖9B中之967-0)。可藉由該複數個層級(例如,藉由使一資料值循序通過層級967-0、…、967-N-1)對資料值循序執行該複數個切換操作。源自完成對第一資料值執行切換協定之一資料值可藉由耦合至在記憶體中資料切換網路972-1之一最後層級(例如,層級967-M-1)之一切換節點之一鎖存器(例如,如以鎖存器968-0、…、968-M-1所展示且結合圖9A所描述)儲存。
控制器可進一步經組態以引導源自完成對第一資料值執行切換協定之一資料值經由共用I/O線移動至陣列(例如,至圖4中所展示且結合圖4所描述之子陣列425-1、…、425-32中之一列之一記憶體胞)。可自耦合至在記憶體中資料切換網路之一最後層級之一切換節點之一鎖存器(例如,如以968-0、…、968-M-1所展示且結合圖9A所描述)移動所得資料值。
控制器可進一步經組態以可選擇地啟用來自複數個切換協定之第一切換協定。可藉由執行(例如,經由切換組件171及結合圖5及圖6所描述之指令)發送至分佈於一在記憶體中資料切換網路之複數個層級之間的複數個切換節點之指令而啟用第一切換協定以藉由該複數個切換節點可選擇地實現第一切換協定之複數個切換操作之執行。
在各項實施例中,第一邏輯條(例如,圖4中之409-0)可進一步包含對應於陣列之列之第一子列(例如,465-1)之複數個記憶體胞之數目之數目個複數個計算組件(例如,如以431-1、…、431Z所展示)。控制器可進一步經組態以可選擇地引導經由共用I/O線至用於執行一邏輯運算(例如,選自布林運算等,如本文中所描述)之一選定計算組件之移動或至用於執行一切換操作之一選定切換節點之移動,如本文中所描述。
圖9B中所繪示之實施例意欲繪示實施為層級967-0、…、967-N-1之一在記憶體中資料切換網路972-2之一實例。在一些實施例中,圖9B中所繪示之層級之數目可對應於少於圖1A中所繪示之層級。例如,在圖9B中所繪示之組態中執行切換操作之可逆性可使層級之數目減少至圖9A中所繪示之組態中所利用之層級之數目之一分率(例如,1/2、1/3等)以達成預期完成切換操作。
在一些實施例中,控制器140(例如,其之切換組件171)可引導層級 967-0、…、967-N-1(例如,四個層級)之各者中之切換節點966-0、…、966-M-1經組態(例如,經啟用、經程式化等)以執行一切換操作序列之一第一部分969-1。在完成該序列之第一部分969-1之後,可(例如,在耦合至最後層級967-N-1中之切換節點之對應數目個鎖存器968-0、…、968-M-1中)儲存所得資料值。
控制器140可接著引導層級967-0、…、967-N-1(例如,四個層級)之各者中之切換節點966-0、…、966-M-1經重新組態以執行切換操作序列之一第二部分969-2(例如,其中在層級之至少一者中執行之切換操作不同於在序列之第一部分969-1中執行之切換操作)。在一些實施例中,可藉由使資料值在與在第一部分969-1中通過相反之一方向上通過層級而執行序列之第二部分969-2。在完成序列之第二部分969-2之後,可(例如,在耦合至第一層級967-0中之切換節點之對應數目個鎖存器968-0、…、968-M-1中)儲存所得資料值。在一些實施例中,可藉由憑藉(例如)使所得資料值自最後層級967-N-1循環至第一層級967-0而使資料值在與在第一部分969-1中通過相同之一方向上通過來執行序列之第二部分969-2。
如此執行之切換操作序列之部分(例如,969-1、969-2、…、969-M)之數目不受限制,此可連續使各通過中執行之序列之分率變小。如此使資料值在複數個部分中通過相同層級以達成預期完成切換操作可縮小晶片上用於在記憶體中資料切換網路之層級之區域及/或其成本。在一些實施例中,剛描述之部分969可對應於一陣列之分割區(例如,如以128所展示且結合圖1E所描述)及/或一計算單元之分割區(例如,分別結合圖4及圖6所描述之計算單元460及660之分割區)。
因此,如剛描述之記憶體器件120可經組態以經由定位於資料路徑中 之感測電路、共用I/O線、連接電路及/或切換節點執行切換操作。本文中所描述之切換操作藉此包含不同於藉由定位於資料路徑外部之蝴蝶式網路(例如,包含定位於除本文中所描述之資料路徑中以外之位置處之硬體、韌體及/或軟體組件之蝴蝶式網路)之先前實施方案執行之操作之操作。
因此,本文中所描述之實施例提供一種操作用於在記憶體中資料切換網路之一記憶體器件之方法,該方法可藉由憑藉一處理資源執行非暫時性指令而執行。如文本中所描述,該方法可包含藉由一第一邏輯條(例如,圖4中所展示且結合圖4所描述之邏輯條409-0,其對應於以967-0所展示且結合圖9B所描述之第一層級)對一資料值執行複數個切換操作之一第一子集(例如,如以969-1所展示且結合圖9B所描述)之一第一切換操作。該資料值可已經由由一陣列及第一邏輯條共用之一I/O自該陣列之一記憶體胞移動。該方法可包含經由自第一邏輯條至一最後邏輯條(例如,圖4中所展示且結合圖4所描述之邏輯條409-N-1,其對應於以967-N-1所展示且結合圖9B所描述之最後層級)可選擇地耦合邏輯條之連接電路(例如,結合圖2所描述之連接電路232)將資料值(對其執行複數個切換操作之第一子集)循序移動至該最後邏輯條。該方法亦可包含藉由最後邏輯條執行第一子集之一最後切換操作及藉由最後邏輯條對源自完成複數個切換操作之第一子集之執行之一資料值執行複數個切換操作之一第二子集(例如,如以969-2所展示)之一第一切換操作。
該方法可進一步包含藉由將源自完成複數個切換操作之第一子集之執行之資料值自最後邏輯條移動至第一邏輯條而完成複數個切換操作之第二子集之執行。在一些實施例中,該方法可進一步包含藉由控制器引導藉由最後邏輯條執行為第一子集之最後切換操作之切換操作不同於藉由最後 邏輯條執行之第二子集之第一切換操作。
該方法可進一步包含藉由耦合至最後邏輯條(例如,最後層級967-N-1)之一切換節點之一鎖存器(例如,如以968-0、…、968-M-1所展示)儲存源自藉由最後邏輯條執行第一子集969-1之最後切換操作之一資料值,及藉由最後邏輯條起始對該經儲存資料值執行複數個切換操作之第二子集969-2之第一切換操作。該方法可進一步包含藉由耦合至第一邏輯條(例如,第一層級967-0)之一切換節點之一鎖存器(例如,如以968-0、…、968-M-1所展示)儲存源自藉由第一邏輯條執行第二子集969-2之一最後切換操作之一資料值,及經由共用I/O線將該經儲存資料值移動至陣列(例如,至圖4中所展示且結合圖4所描述之子陣列425-1、…、425-32中之一列之一記憶體胞)。
雖然在本文中已繪示及描述包含感測電路、感測放大器、計算組件、鎖存器、邏輯條、共用I/O線、行選擇電路、連接電路、多工器、在記憶體中資料切換網路、其層級、切換節點、切換器等之各種組合及組態的例示性實施例,但本發明之實施例並不限於本文中明確敘述之該等組合。本文中所揭示之感測電路、感測放大器、計算組件、鎖存器、邏輯條、共用I/O線、行選擇電路、連接電路、多工器、在記憶體中資料切換網路、其層級、切換節點、切換器等之其他組合及組態係明確包含於本發明之範疇內。
儘管在本文中已繪示及描述特定實施例,然一般技術者將瞭解,經計算以達成相同結果之一配置可替代所展示之特定實施例。本發明旨在涵蓋本發明之一或多項實施例之調適或變動。應理解,已以一闡釋性方式且非一限制性方式作出上文描述。熟習此項技術者在檢視上文描述之後將明 白在本文中未具體描述之上述實施例之組合及其他實施例。本發明之一或多項實施例之範疇包含其中使用上述結構及程序之其他應用。因此,應參考隨附發明申請專利範圍以及此等發明申請專利範圍所授權之等效物之全範圍而判定本發明之一或多項實施例之範疇。
在前述[實施方式]中,出於簡化本發明之目的,將一些特徵集中於一單個實施例中。本發明之此方法不應解釋為反映本發明之所揭示實施例必須使用多於每一請求項中明確敘述之特徵之一意圖。實情係,如以下發明申請專利範圍反映,本發明標的在於少於一單個所揭示實施例之所有特徵。因此,以下發明申請專利範圍特此併入[實施方式]中,其中每一請求項自身獨立地作為一單獨實施例。

Claims (20)

  1. 一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列;一輸入/輸出(I/O)線,其經共用為與該陣列相關聯之用於在記憶體中資料切換之一資料路徑;一在記憶體中資料切換網路,其經可選擇地耦合至該各自共用I/O線,其中該記憶體中資料切換網路包括複數個計算組件,該複數個計算組件經組態以在該共用I/O線之一資料路徑中執行邏輯運算;及一控制器,其經組態以:耦合至該在記憶體中資料切換網路;及引導一切換協定之啟用。
  2. 如請求項1之裝置,其中該在記憶體中資料切換網路經可選擇地耦合至:用於該陣列之對應記憶體胞之一感測線;及該共用I/O線。
  3. 如請求項1之裝置,其中該在記憶體中資料切換網路經可選擇地耦合至:該感測電路;及該共用I/O線。
  4. 如請求項1之裝置,其中該記憶體胞陣列係動態隨機存取記憶體(DRAM)胞之一陣列。
  5. 一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列,該感測電路包含一感測放大器;複數個輸入/輸出(I/O)線,其等經可選擇地共用為與該陣列相關聯之用於在記憶體中資料切換及將一資料值自該陣列中之一源位置移動至一目的地位置之一資料路徑;一在記憶體中資料切換網路;及一控制器,其經組態以:將該各自複數個共用I/O線可選擇地耦合至該在記憶體中資料切換網路;及引導該在記憶體中資料切換網路之一切換協定之啟用,以將經由該複數個共用I/O線移動之資料值之一序列中之一資料值之一位置自該陣列切換至該在記憶體中資料切換網路,其中該資料值經切換至該序列中另一位置。
  6. 如請求項5之裝置,其中該源位置及該目的地位置係該陣列中之一第一子陣列及一第二子陣列。
  7. 如請求項5之裝置,其中該裝置經組態以:使用經耦合至該各自複數個共用I/O線之複數個第一感測放大器,自該源位置移動複數個資料值;及使用經耦合至該各自複數個共用I/O線之複數個第二感測放大器將該複數個資料值移動至該目的地位置。
  8. 如請求項5之裝置,其中該裝置經組態以經由經可選擇地耦合至該各自複數個共用I/O線之複數個感測放大器,將複數個資料值移動至該在記憶體中資料切換網路。
  9. 如請求項5之裝置,其中該裝置經組態以經由經可選擇地耦合至該各自複數個共用I/O線之複數個感測線,將複數個資料值移動至該在記憶體中資料切換網路。
  10. 如請求項5之裝置,其中該在記憶體中資料切換網路包括:複數個層級,其等各具有複數個切換節點;一切換節點,其包含一鎖存器及一切換器;且其中每層級之該複數個切換節點之一數目對應於經耦合至該陣列之複數個感測放大器之一數目。
  11. 如請求項5之裝置,其中該裝置進一步包括:該感測電路之複數個感測放大器,該複數個感測放大器經耦合至該記憶體胞陣列之對應複數個行;及一多工器,其經組態以選擇一感測放大器以耦合至一共用I/O線,以將一資料值移動至該在記憶體中資料切換網路。
  12. 如請求項5之裝置,其中該裝置進一步包括:該記憶體胞陣列之複數個行;及包含行選擇電路之一多工器,該多工器經組態以選擇一行之一記憶體胞以耦合至一共用I/O線,以將一資料值移動至該在記憶體中資料切換網路。
  13. 如請求項5之裝置,其中該裝置進一步包括:一感測組件條,其包含對應於一子陣列中之記憶體胞之複數個行之一數目之數目的複數個感測放大器及/或計算組件;且其中該數目的複數個感測放大器及/或計算組件經可選擇地耦合至該各自複數個共用I/O線,以將對應複數個資料值移動至該在記憶體中資料切換網路。
  14. 一種裝置,其包括:一記憶體胞陣列;感測電路,其經可選擇地耦合至該記憶體胞陣列,該感測電路包含一感測放大器;一輸入/輸出(I/O)線,其經共用為與該陣列相關聯之用於在記憶體中資料切換之一資料路徑,其中該共用I/O線將該感測電路可選擇地耦合至該等共用I/O線之該資料路徑中之一切換節點;該資料路徑中之複數個邏輯條,其等包含一第一邏輯條,該第一邏輯條包括對應於該陣列之一列之一第一子列之複數個記憶體胞之一數目之數目的複數個第一切換節點;及與該陣列相關聯之一控制器,該控制器經組態以:經由該感測電路,引導一第一資料值經由該共用I/O線自該陣列之一第一列之一第一子列移動至該資料路徑中之該第一邏輯條之一第一切換節點;引導使用該第一切換節點對來自該第一子列之該第一資料值執行一切換協定之一第一切換操作;及引導源自該第一切換操作之執行之一第一經切換資料值,經由連接電路,自該第一邏輯條移動至該資料路徑中之一第二邏輯條之一第二切換節點。
  15. 如請求項14之裝置,其中該控制器進一步經組態以:藉由以下操作可選擇地啟用來自複數個切換協定之該第一切換協定:執行發送至分佈於一在記憶體中資料切換網路之複數個層級之間之複數個切換節點的指令,以藉由該複數個切換節點來可選擇地實現該第一切換協定之該複數個切換操作的執行。
  16. 如請求項14之裝置,其中:該第一邏輯條進一步包括對應於該陣列之該列之該第一子列之該複數個記憶體胞之該數目之數目的複數個計算組件;且該控制器進一步經組態以可選擇地引導經由該共用I/O線至用於執行一邏輯運算之一選定計算組件或至用於執行一切換操作之一選定切換節點的移動。
  17. 一種用於操作一記憶體器件之方法,其包括:藉由一第一邏輯條對一資料值執行複數個切換操作之一第一子集之一第一切換操作,該資料值係經由由一陣列及該第一邏輯條共用之一輸入/輸出線(I/O)自該陣列之一記憶體胞移動;經由自該第一邏輯條至一最後邏輯條經可選擇地耦合邏輯條之連接電路,將對其執行該複數個切換操作之該第一子集之該資料值循序移動至該最後邏輯條;藉由該最後邏輯條,執行該第一子集之一最後切換操作;及藉由該最後邏輯條,對源自完成該複數個切換操作之該第一子集之執行之一資料值執行該複數個切換操作之一第二子集之一第一切換操作。
  18. 如請求項17之方法,其中該方法進一步包括:藉由以下操作來完成該複數個切換操作之該第二子集之執行;將源自完成該複數個切換操作之該第一子集之執行之該資料值自該最後邏輯條循序移動至該第一邏輯條。
  19. 如請求項17之方法,其中該方法進一步包括:藉由經耦合至該最後邏輯條之一切換節點之一鎖存器來儲存源自藉由該最後邏輯條執行該第一子集之該最後切換操作之一資料值;及藉由該最後邏輯條,起始對該經儲存資料值執行該複數個切換操作之該第二子集之該第一切換操作。
  20. 如請求項17之方法,其中該方法進一步包括:藉由經耦合至該第一邏輯條之一切換節點之一鎖存器來儲存源自藉由該第一邏輯條執行該第二子集之一最後切換操作之一資料值;及經由該共用I/O線,將該經儲存資料值移動至該陣列。
TW107109409A 2017-03-21 2018-03-20 用於在記憶體中資料切換網路的裝置及方法 TWI671744B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/465,340 US10838899B2 (en) 2017-03-21 2017-03-21 Apparatuses and methods for in-memory data switching networks
US15/465,340 2017-03-21

Publications (2)

Publication Number Publication Date
TW201903769A TW201903769A (zh) 2019-01-16
TWI671744B true TWI671744B (zh) 2019-09-11

Family

ID=63583456

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107109409A TWI671744B (zh) 2017-03-21 2018-03-20 用於在記憶體中資料切換網路的裝置及方法

Country Status (6)

Country Link
US (2) US10838899B2 (zh)
EP (1) EP3602560A4 (zh)
KR (1) KR102375680B1 (zh)
CN (1) CN110476212B (zh)
TW (1) TWI671744B (zh)
WO (1) WO2018175121A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10185674B2 (en) 2017-03-22 2019-01-22 Micron Technology, Inc. Apparatus and methods for in data path compute operations
KR20200036461A (ko) * 2018-09-28 2020-04-07 삼성전자주식회사 메모리 디바이스들 사이의 직접 통신을 위한 메모리 시스템 및 메모리 디바이스
US10768899B2 (en) * 2019-01-29 2020-09-08 SambaNova Systems, Inc. Matrix normal/transpose read and a reconfigurable data processor including same
KR20210042757A (ko) * 2019-10-10 2021-04-20 삼성전자주식회사 Pim을 채용하는 반도체 메모리 장치 및 그 동작 방법
CN111159002B (zh) * 2019-12-31 2023-04-28 山东有人物联网股份有限公司 一种基于分组的数据边缘采集方法、边缘采集设备及系统
US11262949B2 (en) * 2020-05-28 2022-03-01 Advanced Micro Devices, Inc. Command throughput in PIM-enabled memory using available data bus bandwidth
US11275581B2 (en) * 2020-06-19 2022-03-15 Micron Technology, Inc. Expended memory component
CN114255795A (zh) * 2020-11-20 2022-03-29 台湾积体电路制造股份有限公司 存储器器件的控制电路

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6269040B1 (en) * 2000-06-26 2001-07-31 International Business Machines Corporation Interconnection network for connecting memory cells to sense amplifiers
TW576970B (en) * 2000-12-22 2004-02-21 Hitachi Ltd Write method of non-volatile memory
CN1538540A (zh) * 2003-03-27 2004-10-20 三星电子株式会社 具有恢复功能的相变存储器和方法
US20080101395A1 (en) * 2006-10-30 2008-05-01 Raytheon Company System and Method for Networking Computer Clusters
US20100110748A1 (en) * 2007-04-17 2010-05-06 Best Scott C Hybrid volatile and non-volatile memory device
WO2016144726A1 (en) * 2015-03-12 2016-09-15 Micron Technology, Inc. Apparatuses and methods for data movement

Family Cites Families (314)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4380046A (en) 1979-05-21 1983-04-12 Nasa Massively parallel processor computer
JPS6032911B2 (ja) 1979-07-26 1985-07-31 株式会社東芝 半導体記憶装置
US4435792A (en) 1982-06-30 1984-03-06 Sun Microsystems, Inc. Raster memory manipulation apparatus
US4727474A (en) 1983-02-18 1988-02-23 Loral Corporation Staging memory for massively parallel processor
EP0214718A3 (en) 1985-07-22 1990-04-04 Alliant Computer Systems Corporation Digital computer
US5201039A (en) 1987-09-30 1993-04-06 Mitsubishi Denki Kabushiki Kaisha Multiple address-space data processor with addressable register and context switching
US4843264A (en) 1987-11-25 1989-06-27 Visic, Inc. Dynamic sense amplifier for CMOS static RAM
US5276643A (en) 1988-08-11 1994-01-04 Siemens Aktiengesellschaft Integrated semiconductor circuit
JPH0713858B2 (ja) 1988-08-30 1995-02-15 三菱電機株式会社 半導体記憶装置
US5023838A (en) 1988-12-02 1991-06-11 Ncr Corporation Random access memory device with integral logic capability
US4958378A (en) 1989-04-26 1990-09-18 Sun Microsystems, Inc. Method and apparatus for detecting changes in raster data
US5253308A (en) 1989-06-21 1993-10-12 Amber Engineering, Inc. Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing
US5233690A (en) * 1989-07-28 1993-08-03 Texas Instruments Incorporated Video graphics display memory swizzle logic and expansion circuit and method
DE69132495T2 (de) 1990-03-16 2001-06-13 Texas Instruments Inc., Dallas Verteilter Verarbeitungsspeicher
US5034636A (en) 1990-06-04 1991-07-23 Motorola, Inc. Sense amplifier with an integral logic function
US5210850A (en) 1990-06-15 1993-05-11 Compaq Computer Corporation Memory address space determination using programmable limit registers with single-ended comparators
JP3361825B2 (ja) 1990-08-22 2003-01-07 テキサス インスツルメンツ インコーポレイテツド メモリ・アレイ・アーキテクチャ
JPH06103599B2 (ja) 1990-11-16 1994-12-14 三菱電機株式会社 半導体集積回路装置
US5325500A (en) * 1990-12-14 1994-06-28 Xerox Corporation Parallel processing units on a substrate, each including a column of memory
US5325519A (en) 1991-10-18 1994-06-28 Texas Microsystems, Inc. Fault tolerant computer with archival rollback capabilities
FR2685973B1 (fr) 1992-01-03 1994-02-25 France Telecom Point memoire pour memoire associative.
KR950005095Y1 (ko) 1992-03-18 1995-06-22 문정환 양방향성 그로벌 비트 라인을 갖는 dram
EP0573179A3 (en) * 1992-06-02 1996-06-05 American Telephone & Telegraph Non-fully-decoded test address generator
KR940004434A (ko) 1992-08-25 1994-03-15 윌리엄 이. 힐러 스마트 다이나믹 랜덤 억세스 메모리 및 그 처리방법
KR950004854B1 (ko) 1992-10-08 1995-05-15 삼성전자 주식회사 반도체 메모리 장치
US5606347A (en) * 1992-12-16 1997-02-25 Texas Instruments Incorporated Devices systems and methods for flexible format data storage
US5440482A (en) 1993-03-25 1995-08-08 Taligent, Inc. Forward and reverse Boyer-Moore string searching of multilingual text having a defined collation order
US5485373A (en) 1993-03-25 1996-01-16 Taligent, Inc. Language-sensitive text searching system with modified Boyer-Moore process
US5754478A (en) 1993-04-20 1998-05-19 Micron Technology, Inc. Fast, low power, write scheme for memory circuits using pulsed off isolation device
US5369622A (en) 1993-04-20 1994-11-29 Micron Semiconductor, Inc. Memory with isolated digit lines
JP2663838B2 (ja) 1993-07-27 1997-10-15 日本電気株式会社 半導体集積回路装置
JP3252306B2 (ja) 1993-08-10 2002-02-04 株式会社日立製作所 半導体不揮発性記憶装置
JP3904244B2 (ja) 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
JP3251421B2 (ja) 1994-04-11 2002-01-28 株式会社日立製作所 半導体集積回路
US5655113A (en) 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
JPH0831168A (ja) 1994-07-13 1996-02-02 Hitachi Ltd 半導体記憶装置
US5481500A (en) 1994-07-22 1996-01-02 International Business Machines Corporation Precharged bit decoder and sense amplifier with integrated latch usable in pipelined memories
US5615404A (en) 1994-10-31 1997-03-25 Intel Corporation System having independently addressable bus interfaces coupled to serially connected multi-ported signal distributors generating and maintaining frame based polling schedule favoring isochronous peripherals
US5638128A (en) 1994-11-08 1997-06-10 General Instrument Corporation Of Delaware Pixel interpolation filters for video decompression processor
US5724366A (en) 1995-05-16 1998-03-03 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device
KR0146530B1 (ko) 1995-05-25 1998-09-15 김광호 단속제어회로를 구비한 반도체 메모리 장치와 제어방법
US7301541B2 (en) 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
JP2812262B2 (ja) 1995-08-31 1998-10-22 日本電気株式会社 連想記憶装置
US6385634B1 (en) 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
US6185222B1 (en) * 1995-09-28 2001-02-06 Cisco Technology, Inc. Asymmetric switch architecture for use in a network switch node
JP2817836B2 (ja) 1995-11-30 1998-10-30 日本電気株式会社 半導体メモリ装置
JP3356612B2 (ja) 1996-02-29 2002-12-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 高速な輪郭スムージング方法及び装置
US6092186A (en) 1996-05-07 2000-07-18 Lucent Technologies Inc. Apparatus and method for aborting un-needed instruction fetches in a digital microprocessor device
JP3579205B2 (ja) * 1996-08-06 2004-10-20 株式会社ルネサステクノロジ 半導体記憶装置、半導体装置、データ処理装置及びコンピュータシステム
US5915084A (en) 1996-09-30 1999-06-22 Advanced Micro Devices, Inc. Scannable sense amplifier circuit
US5991209A (en) 1997-04-11 1999-11-23 Raytheon Company Split sense amplifier and staging buffer for wide memory architecture
JP3592887B2 (ja) 1997-04-30 2004-11-24 株式会社東芝 不揮発性半導体記憶装置
US6510098B1 (en) 1997-05-28 2003-01-21 Cirrus Logic, Inc. Method and apparatus for transferring data in a dual port memory
JPH1115773A (ja) 1997-06-24 1999-01-22 Matsushita Electron Corp 半導体集積回路、コンピュータシステム、データ処理装置及びデータ処理方法
US5935263A (en) 1997-07-01 1999-08-10 Micron Technology, Inc. Method and apparatus for memory array compressed data testing
US6195734B1 (en) 1997-07-02 2001-02-27 Micron Technology, Inc. System for implementing a graphic address remapping table as a virtual register file in system memory
US6181698B1 (en) 1997-07-09 2001-01-30 Yoichi Hariguchi Network routing table using content addressable memory
US6025221A (en) 1997-08-22 2000-02-15 Micron Technology, Inc. Processing methods of forming integrated circuitry memory devices, methods of forming DRAM arrays, and related semiconductor masks
US5991785A (en) 1997-11-13 1999-11-23 Lucent Technologies Inc. Determining an extremum value and its index in an array using a dual-accumulation processor
US5867429A (en) 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
US6163862A (en) 1997-12-01 2000-12-19 International Business Machines Corporation On-chip test circuit for evaluating an on-chip signal using an external test signal
JP3488612B2 (ja) 1997-12-11 2004-01-19 株式会社東芝 センス増幅回路
US5986942A (en) 1998-01-20 1999-11-16 Nec Corporation Semiconductor memory device
JPH11260057A (ja) 1998-03-13 1999-09-24 Nec Corp 半導体記憶装置
JPH11265995A (ja) 1998-03-17 1999-09-28 Mitsubishi Electric Corp 半導体記憶装置
JPH11306751A (ja) 1998-04-22 1999-11-05 Toshiba Corp 半導体記憶装置
US6005799A (en) 1998-08-06 1999-12-21 Silicon Aquarius Methods and circuits for single-memory dynamic cell multivalue data storage
US6141286A (en) 1998-08-21 2000-10-31 Micron Technology, Inc. Embedded DRAM architecture with local data drivers and programmable number of data read and data write lines
US7409694B2 (en) 1998-09-09 2008-08-05 Microsoft Corporation Highly componentized system architecture with loadable virtual memory manager
JP2000173269A (ja) 1998-12-08 2000-06-23 Mitsubishi Electric Corp 半導体記憶装置
KR100381968B1 (ko) 1998-12-30 2004-03-24 주식회사 하이닉스반도체 고속동작용디램
US5999435A (en) 1999-01-15 1999-12-07 Fast-Chip, Inc. Content addressable memory device
US6389507B1 (en) 1999-01-15 2002-05-14 Gigabus, Inc. Memory device search system and method
KR100464940B1 (ko) * 1999-04-19 2005-01-05 주식회사 하이닉스반도체 데이터버스라인을 공유한 병렬 테스트 모드의 반도체메모리장치
US6134164A (en) 1999-04-22 2000-10-17 International Business Machines Corp. Sensing circuit for a memory cell array
US6741104B2 (en) 1999-05-26 2004-05-25 Micron Technology, Inc. DRAM sense amplifier for low voltages
US6157578A (en) 1999-07-15 2000-12-05 Stmicroelectronics, Inc. Method and apparatus for accessing a memory device
US6208544B1 (en) 1999-09-09 2001-03-27 Harris Corporation Content addressable memory cell providing simultaneous read and compare capability
US6578058B1 (en) 1999-10-06 2003-06-10 Agilent Technologies, Inc. System and method for comparing values from target systems
US7124221B1 (en) 1999-10-19 2006-10-17 Rambus Inc. Low latency multi-level communication interface
US6418498B1 (en) 1999-12-30 2002-07-09 Intel Corporation Integrated system management memory for system management interrupt handler independent of BIOS and operating system
JP4627103B2 (ja) 2000-01-18 2011-02-09 富士通セミコンダクター株式会社 半導体記憶装置及びその制御方法
US6687175B1 (en) 2000-02-04 2004-02-03 Renesas Technology Corporation Semiconductor device
AU2001239907A1 (en) 2000-02-29 2001-09-12 Stephen J. Guerreri Method and apparatus for building a memory image
JP3983969B2 (ja) 2000-03-08 2007-09-26 株式会社東芝 不揮発性半導体記憶装置
US7028170B2 (en) 2000-03-08 2006-04-11 Sun Microsystems, Inc. Processing architecture having a compare capability
US6678678B2 (en) 2000-03-09 2004-01-13 Braodcom Corporation Method and apparatus for high speed table search
JP3822412B2 (ja) 2000-03-28 2006-09-20 株式会社東芝 半導体記憶装置
US6965648B1 (en) 2000-05-04 2005-11-15 Sun Microsystems, Inc. Source synchronous link integrity validation
JP5431624B2 (ja) * 2000-05-30 2014-03-05 ピーエスフォー ルクスコ エスエイアールエル 半導体記憶装置
AU2001270400A1 (en) 2000-07-07 2002-01-21 Mosaid Technologies Incorporated A high speed dram architecture with uniform access latency
US6466499B1 (en) 2000-07-11 2002-10-15 Micron Technology, Inc. DRAM sense amplifier having pre-charged transistor body nodes
AU2001285161A1 (en) 2000-08-21 2002-03-04 United States Postal Services Delivery point validation system
US6301164B1 (en) 2000-08-25 2001-10-09 Micron Technology, Inc. Antifuse method to repair columns in a prefetched output memory architecture
US6704828B1 (en) 2000-08-31 2004-03-09 Micron Technology, Inc. System and method for implementing data pre-fetch having reduced data lines and/or higher data rates
US6948056B1 (en) 2000-09-28 2005-09-20 Intel Corporation Maintaining even and odd array pointers to extreme values by searching and comparing multiple elements concurrently where a pointer is adjusted after processing to account for a number of pipeline stages
US6304477B1 (en) 2001-01-31 2001-10-16 Motorola, Inc. Content addressable magnetic random access memory
US6563754B1 (en) 2001-02-08 2003-05-13 Integrated Device Technology, Inc. DRAM circuit with separate refresh memory
US6650158B2 (en) 2001-02-21 2003-11-18 Ramtron International Corporation Ferroelectric non-volatile logic elements
US7546438B2 (en) 2001-07-19 2009-06-09 Chung Shine C Algorithm mapping, specialized instructions and architecture features for smart memory computing
US6807614B2 (en) 2001-07-19 2004-10-19 Shine C. Chung Method and apparatus for using smart memories in computing
ITRM20010531A1 (it) 2001-08-31 2003-02-28 Micron Technology Inc Dispositivo rilevatore a bassa potenza e alta tensione per memorie ditipo flash.
US7260672B2 (en) 2001-09-07 2007-08-21 Intel Corporation Using data stored in a destructive-read memory
US7062689B2 (en) 2001-12-20 2006-06-13 Arm Limited Method and apparatus for memory self testing
US20040073773A1 (en) 2002-02-06 2004-04-15 Victor Demjanenko Vector processor architecture and methods performed therein
US6707729B2 (en) 2002-02-15 2004-03-16 Micron Technology, Inc. Physically alternating sense amplifier activation
WO2003088033A1 (en) 2002-04-09 2003-10-23 University Of Rochester Multiplier-based processor-in-memory architectures for image and graphics processing
JP2003331598A (ja) 2002-05-13 2003-11-21 Mitsubishi Electric Corp 半導体記憶装置
US7406494B2 (en) 2002-05-14 2008-07-29 Texas Instruments Incorporated Method of generating a cycle-efficient bit-reverse index array for a wireless communication system
JP2003346484A (ja) 2002-05-23 2003-12-05 Mitsubishi Electric Corp 不揮発性半導体記憶装置
US6789099B2 (en) 2002-06-10 2004-09-07 International Business Machines Corporation Sense-amp based adder with source follower evaluation tree
US7054178B1 (en) 2002-09-06 2006-05-30 Etron Technology, Inc. Datapath architecture for high area efficiency
US6987693B2 (en) 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US7079407B1 (en) 2002-10-18 2006-07-18 Netlogic Microsystems, Inc. Content addressable memory (CAM) device including match line sensing
US6765834B2 (en) 2002-11-19 2004-07-20 Hewlett-Packard Development Company, L.P. System and method for sensing memory cells of an array of memory cells
US6731542B1 (en) 2002-12-05 2004-05-04 Advanced Micro Devices, Inc. Circuit for accurate memory read operations
KR100546307B1 (ko) 2002-12-05 2006-01-26 삼성전자주식회사 글로벌 입출력라인을 프리차지 및/또는 이퀄라이징하기위한 프리차지 회로를 구비하는 반도체 장치 및프리차지 및/또는 이퀄라이즈하는 트랜지스터의 레이아웃
US6888372B1 (en) 2002-12-20 2005-05-03 Altera Corporation Programmable logic device with soft multiplier
US20050015557A1 (en) 2002-12-27 2005-01-20 Chih-Hung Wang Nonvolatile memory unit with specific cache
US7346903B2 (en) 2003-02-04 2008-03-18 Sun Microsystems, Inc. Compiling and linking modules of a cycle-based logic design
US6768679B1 (en) 2003-02-10 2004-07-27 Advanced Micro Devices, Inc. Selection circuit for accurate memory read operations
US6819612B1 (en) 2003-03-13 2004-11-16 Advanced Micro Devices, Inc. Apparatus and method for a sense amplifier circuit that samples and holds a reference voltage
US6865122B2 (en) 2003-04-11 2005-03-08 Intel Corporation Reclaiming blocks in a block-alterable memory
US7574466B2 (en) 2003-04-23 2009-08-11 Micron Technology, Inc. Method for finding global extrema of a set of shorts distributed across an array of parallel processing elements
US7454451B2 (en) 2003-04-23 2008-11-18 Micron Technology, Inc. Method for finding local extrema of a set of values for a parallel processing element
US7447720B2 (en) 2003-04-23 2008-11-04 Micron Technology, Inc. Method for finding global extrema of a set of bytes distributed across an array of parallel processing elements
US9015390B2 (en) 2003-04-25 2015-04-21 Micron Technology, Inc. Active memory data compression system and method
DE10319271A1 (de) 2003-04-29 2004-11-25 Infineon Technologies Ag Speicher-Schaltungsanordnung und Verfahren zur Herstellung
JP3898152B2 (ja) 2003-05-27 2007-03-28 ローム株式会社 演算機能付き記憶装置および演算記憶方法
WO2005024843A1 (en) 2003-09-04 2005-03-17 Koninklijke Philips Electronics N.V. Integrated circuit and a method of cache remapping
US6956770B2 (en) 2003-09-17 2005-10-18 Sandisk Corporation Non-volatile memory and method with bit line compensation dependent on neighboring operating modes
US7177183B2 (en) 2003-09-30 2007-02-13 Sandisk 3D Llc Multiple twin cell non-volatile memory array and logic block structure and method therefor
US7913125B2 (en) 2003-11-04 2011-03-22 Lsi Corporation BISR mode to test the redundant elements and regular functional memory to avoid test escapes
US6950771B1 (en) 2003-12-09 2005-09-27 Xilinx, Inc. Correlation of electrical test data with physical defect data
US7631236B2 (en) 2004-01-29 2009-12-08 International Business Machines Corporation Hybrid built-in self test (BIST) architecture for embedded memory arrays and an associated method
US7401281B2 (en) 2004-01-29 2008-07-15 International Business Machines Corporation Remote BIST high speed test and redundancy calculation
JP4819316B2 (ja) 2004-02-23 2011-11-24 ルネサスエレクトロニクス株式会社 半導体装置
US7088606B2 (en) 2004-03-10 2006-08-08 Altera Corporation Dynamic RAM storage techniques
US7020017B2 (en) 2004-04-06 2006-03-28 Sandisk Corporation Variable programming of non-volatile memory
US7120063B1 (en) 2004-05-07 2006-10-10 Spansion Llc Flash memory cell and methods for programming and erasing
US8522205B2 (en) 2004-05-18 2013-08-27 Oracle International Corporation Packaging multiple groups of read-only files of an application's components into multiple shared libraries
JP2006127460A (ja) 2004-06-09 2006-05-18 Renesas Technology Corp 半導体装置、半導体信号処理装置、およびクロスバースイッチ
US7061817B2 (en) 2004-06-30 2006-06-13 Micron Technology, Inc. Data path having grounded precharge operation and test compression capability
US7116602B2 (en) 2004-07-15 2006-10-03 Micron Technology, Inc. Method and system for controlling refresh to avoid memory cell data losses
US7434024B2 (en) 2004-08-30 2008-10-07 Ati Technologies, Inc. SIMD processor with register addressing, buffer stall and methods
JP2006099232A (ja) * 2004-09-28 2006-04-13 Renesas Technology Corp 半導体信号処理装置
US7685365B2 (en) 2004-09-30 2010-03-23 Intel Corporation Transactional memory execution utilizing virtual memory
US20060069849A1 (en) 2004-09-30 2006-03-30 Rudelic John C Methods and apparatus to update information in a memory
US20060149804A1 (en) 2004-11-30 2006-07-06 International Business Machines Corporation Multiply-sum dot product instruction with mask and splat
US7230851B2 (en) 2004-12-23 2007-06-12 Sandisk Corporation Reducing floating gate to floating gate coupling effect
KR100673901B1 (ko) 2005-01-28 2007-01-25 주식회사 하이닉스반도체 저전압용 반도체 메모리 장치
US7543119B2 (en) 2005-02-10 2009-06-02 Richard Edward Hessel Vector processor
US7624313B2 (en) 2005-03-28 2009-11-24 Hewlett-Packard Development Company, L.P. TCAM BIST with redundancy
US7196928B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7187585B2 (en) 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
US7193898B2 (en) 2005-06-20 2007-03-20 Sandisk Corporation Compensation currents in non-volatile memory read operations
US8032688B2 (en) * 2005-06-30 2011-10-04 Intel Corporation Micro-tile memory interfaces
KR100720644B1 (ko) 2005-11-17 2007-05-21 삼성전자주식회사 메모리 장치 및 메모리 그 동작 방법
WO2007069295A1 (ja) 2005-12-13 2007-06-21 Spansion Llc 半導体装置およびその制御方法
JP5129450B2 (ja) 2006-01-16 2013-01-30 ルネサスエレクトロニクス株式会社 情報処理装置
US8077533B2 (en) 2006-01-23 2011-12-13 Freescale Semiconductor, Inc. Memory and method for sensing data in a memory using complementary sensing scheme
JP4989900B2 (ja) 2006-01-31 2012-08-01 ルネサスエレクトロニクス株式会社 並列演算処理装置
US7400532B2 (en) 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
KR100755370B1 (ko) 2006-04-17 2007-09-04 삼성전자주식회사 반도체 메모리 장치
TW200828333A (en) 2006-04-28 2008-07-01 Samsung Electronics Co Ltd Sense amplifier circuit and sense amplifier-based flip-flop having the same
US7752417B2 (en) 2006-06-05 2010-07-06 Oracle America, Inc. Dynamic selection of memory virtualization techniques
US7372715B2 (en) 2006-06-14 2008-05-13 Micron Technology, Inc. Architecture and method for NAND flash memory
US8069377B2 (en) 2006-06-26 2011-11-29 Micron Technology, Inc. Integrated circuit having memory array including ECC and column redundancy and method of operating the same
US7724559B2 (en) 2006-07-14 2010-05-25 International Business Machines Corporation Self-referenced match-line sense amplifier for content addressable memories
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7443729B2 (en) 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7692466B2 (en) 2006-08-18 2010-04-06 Ati Technologies Ulc Sense amplifier based flip-flop
US7805587B1 (en) 2006-11-01 2010-09-28 Nvidia Corporation Memory addressing controlled by PTE fields
US8151082B2 (en) 2007-12-06 2012-04-03 Fusion-Io, Inc. Apparatus, system, and method for converting a storage request into an append data storage command
US7471536B2 (en) 2006-12-08 2008-12-30 Texas Instruments Incorporated Match mismatch emulation scheme for an addressed location in a CAM
US8769251B2 (en) * 2006-12-13 2014-07-01 Arm Limited Data processing apparatus and method for converting data values between endian formats
US7460387B2 (en) 2007-01-05 2008-12-02 International Business Machines Corporation eDRAM hierarchical differential sense amp
US7743303B2 (en) 2007-01-22 2010-06-22 Micron Technology, Inc. Defective memory block remapping method and system, and memory device and processor-based system using same
US7937535B2 (en) 2007-02-22 2011-05-03 Arm Limited Managing cache coherency in a data processing apparatus
US7804718B2 (en) 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
US7492640B2 (en) 2007-06-07 2009-02-17 Sandisk Corporation Sensing with bit-line lockout control in non-volatile memory
JP2009009665A (ja) 2007-06-29 2009-01-15 Elpida Memory Inc 半導体記憶装置
US7996749B2 (en) 2007-07-03 2011-08-09 Altera Corporation Signal loss detector for high-speed serial interface of a programmable logic device
US7489543B1 (en) 2007-07-25 2009-02-10 Micron Technology, Inc. Programming multilevel cell memory arrays
US7694195B2 (en) 2007-08-14 2010-04-06 Dell Products L.P. System and method for using a memory mapping function to map memory defects
US7869273B2 (en) 2007-09-04 2011-01-11 Sandisk Corporation Reducing the impact of interference during programming
US7787319B2 (en) 2007-09-06 2010-08-31 Innovative Silicon Isi Sa Sense amplifier circuitry for integrated circuit having memory cell array, and method of operating same
US8042082B2 (en) 2007-09-12 2011-10-18 Neal Solomon Three dimensional memory in a system on a chip
US7965564B2 (en) 2007-09-18 2011-06-21 Zikbit Ltd. Processor arrays made of standard memory cells
US7663928B2 (en) 2007-10-09 2010-02-16 Ememory Technology Inc. Sense amplifier circuit having current mirror architecture
WO2009052525A1 (en) 2007-10-19 2009-04-23 Virident Systems, Inc. Managing memory systems containing components with asymmetric characteristics
US7924628B2 (en) 2007-11-14 2011-04-12 Spansion Israel Ltd Operation of a non-volatile memory array
US7979667B2 (en) 2007-12-10 2011-07-12 Spansion Llc Memory array search engine
US7755960B2 (en) 2007-12-17 2010-07-13 Stmicroelectronics Sa Memory including a performance test circuit
US8495438B2 (en) 2007-12-28 2013-07-23 Texas Instruments Incorporated Technique for memory imprint reliability improvement
US7808854B2 (en) 2008-02-19 2010-10-05 Kabushiki Kaisha Toshiba Systems and methods for data transfers between memory cells
JP5194302B2 (ja) 2008-02-20 2013-05-08 ルネサスエレクトロニクス株式会社 半導体信号処理装置
US8332580B2 (en) 2008-04-02 2012-12-11 Zikbit Ltd. System, method and apparatus for memory with embedded associative section for computations
US20090254694A1 (en) 2008-04-02 2009-10-08 Zikbit Ltd. Memory device with integrated parallel processing
US7957206B2 (en) 2008-04-04 2011-06-07 Micron Technology, Inc. Read circuitry for an integrated circuit having memory cells and/or a memory cell array, and method of operating same
US8339824B2 (en) 2008-07-02 2012-12-25 Cooke Laurence H Nearest neighbor serial content addressable memory
US8555037B2 (en) 2008-08-15 2013-10-08 Apple Inc. Processing vectors using wrapping minima and maxima instructions in the macroscalar architecture
US8417921B2 (en) 2008-08-15 2013-04-09 Apple Inc. Running-min and running-max instructions for processing vectors using a base value from a key element of an input vector
US8259509B2 (en) 2008-08-18 2012-09-04 Elpida Memory, Inc. Semiconductor memory device and method with auxiliary I/O line assist circuit and functionality
ITRM20080543A1 (it) 2008-10-09 2010-04-10 Micron Technology Inc Architettura e metodo per la programmazione di memorie.
KR101596283B1 (ko) 2008-12-19 2016-02-23 삼성전자 주식회사 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치
KR101622922B1 (ko) 2009-03-06 2016-05-20 삼성전자 주식회사 개선된 로컬 입출력라인 프리차아지 스킴을 갖는 반도체 메모리 장치
US8484276B2 (en) 2009-03-18 2013-07-09 International Business Machines Corporation Processing array data on SIMD multi-core processor architectures
KR20100134235A (ko) 2009-06-15 2010-12-23 삼성전자주식회사 반도체 메모리 장치
US7898864B2 (en) 2009-06-24 2011-03-01 Sandisk Corporation Read operation for memory with compensation for coupling based on write-erase cycles
US8412987B2 (en) 2009-06-30 2013-04-02 Micron Technology, Inc. Non-volatile memory to store memory remap information
US8412985B1 (en) 2009-06-30 2013-04-02 Micron Technology, Inc. Hardwired remapped memory
US8238173B2 (en) 2009-07-16 2012-08-07 Zikbit Ltd Using storage cells to perform computation
US9076527B2 (en) 2009-07-16 2015-07-07 Mikamonu Group Ltd. Charge sharing in a TCAM array
JP4951041B2 (ja) 2009-08-06 2012-06-13 株式会社東芝 半導体記憶装置
US8059438B2 (en) 2009-08-28 2011-11-15 International Business Machines Corporation Content addressable memory array programmed to perform logic operations
US8077532B2 (en) 2009-09-02 2011-12-13 Micron Technology, Inc. Small unit internal verify read in a memory device
US8482975B2 (en) 2009-09-14 2013-07-09 Micron Technology, Inc. Memory kink checking
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US9477636B2 (en) 2009-10-21 2016-10-25 Micron Technology, Inc. Memory having internal processors and data communication methods in memory
US20120246380A1 (en) 2009-10-21 2012-09-27 Avidan Akerib Neighborhood operations for parallel processing
US8650232B2 (en) 2009-10-26 2014-02-11 Via Technologies, Inc. System and method for determination of a horizontal minimum of digital values
KR101634340B1 (ko) 2009-11-03 2016-06-28 삼성전자주식회사 반도체 메모리 장치의 프로그램 방법
US8583896B2 (en) 2009-11-13 2013-11-12 Nec Laboratories America, Inc. Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain
KR20110054773A (ko) 2009-11-18 2011-05-25 삼성전자주식회사 비트라인 디스털번스를 개선하는 반도체 메모리 장치
US8089815B2 (en) 2009-11-24 2012-01-03 Sandisk Technologies Inc. Programming memory with bit line floating to reduce channel-to-floating gate coupling
US8605015B2 (en) 2009-12-23 2013-12-10 Syndiant, Inc. Spatial light modulator with masking-comparators
JP2011146102A (ja) 2010-01-15 2011-07-28 Elpida Memory Inc 半導体装置及びデータ処理システム
CN102141905B (zh) 2010-01-29 2015-02-25 上海芯豪微电子有限公司 一种处理器体系结构
US8164942B2 (en) 2010-02-01 2012-04-24 International Business Machines Corporation High performance eDRAM sense amplifier
US8533245B1 (en) 2010-03-03 2013-09-10 Altera Corporation Multipliers with a reduced number of memory blocks
US9317536B2 (en) 2010-04-27 2016-04-19 Cornell University System and methods for mapping and searching objects in multidimensional space
KR101119371B1 (ko) 2010-04-29 2012-03-06 주식회사 하이닉스반도체 반도체 메모리 장치 및 이의 동작 방법
US8559232B2 (en) 2010-05-03 2013-10-15 Aplus Flash Technology, Inc. DRAM-like NVM memory array and sense amplifier design for high temperature and high endurance operation
US8351278B2 (en) 2010-06-23 2013-01-08 International Business Machines Corporation Jam latch for latching memory array output data
KR101143471B1 (ko) 2010-07-02 2012-05-11 에스케이하이닉스 주식회사 센스앰프 및 이를 포함하는 반도체 장치
US20120017039A1 (en) 2010-07-16 2012-01-19 Plx Technology, Inc. Caching using virtual memory
US8462532B1 (en) 2010-08-31 2013-06-11 Netlogic Microsystems, Inc. Fast quaternary content addressable memory cell
US8347154B2 (en) 2010-09-21 2013-01-01 International Business Machines Corporation Use of hashing function to distinguish random and repeat errors in a memory system
US8904115B2 (en) 2010-09-28 2014-12-02 Texas Instruments Incorporated Cache with multiple access pipelines
US8332367B2 (en) 2010-10-20 2012-12-11 International Business Machines Corporation Parallel data redundancy removal
KR101148352B1 (ko) 2010-11-02 2012-05-21 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그의 동작 방법
JP5528987B2 (ja) 2010-11-11 2014-06-25 ピーエスフォー ルクスコ エスエイアールエル 半導体装置
US8553481B2 (en) 2010-11-29 2013-10-08 Apple Inc. Sense amplifier latch with integrated test data multiplexer
WO2012104674A1 (en) 2011-01-31 2012-08-09 Freescale Semiconductor, Inc. Integrated circuit device and method for determining an index of an extreme value within an array of values
KR20120088973A (ko) 2011-02-01 2012-08-09 삼성전자주식회사 로컬 센스앰프 회로 및 이를 포함하는 반도체 메모리 장치
JP2012174016A (ja) 2011-02-22 2012-09-10 Renesas Electronics Corp データ処理装置およびそのデータ処理方法
JP5259765B2 (ja) 2011-03-29 2013-08-07 株式会社東芝 不揮発性半導体メモリ
US8725730B2 (en) 2011-05-23 2014-05-13 Hewlett-Packard Development Company, L.P. Responding to a query in a data processing system
US8706958B2 (en) 2011-09-01 2014-04-22 Thomas Hein Data mask encoding in data bit inversion scheme
US20140247673A1 (en) 2011-10-28 2014-09-04 Naveen Muralimanohar Row shifting shiftable memory
US8891297B2 (en) 2011-11-01 2014-11-18 Micron Technology, Inc. Memory cell sensing
US9830158B2 (en) 2011-11-04 2017-11-28 Nvidia Corporation Speculative execution and rollback
KR101321481B1 (ko) 2011-11-04 2013-10-28 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이를 위한 테스트 회로
KR20130052971A (ko) 2011-11-14 2013-05-23 삼성전자주식회사 비휘발성 메모리 장치의 동작 방법
GB2511957B (en) 2011-11-22 2015-02-11 Mips Tech Inc Processor with kernel mode access to user space virtual addresses
CN103959237B (zh) 2011-11-30 2016-09-28 英特尔公司 用于提供向量横向比较功能的指令和逻辑
KR20130072869A (ko) 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 프리차지 회로 및 비휘발성 메모리 장치
CN104011657B (zh) 2011-12-22 2016-10-12 英特尔公司 用于向量计算和累计的装置和方法
US20130286705A1 (en) 2012-04-26 2013-10-31 David B. Grover Low power content addressable memory hitline precharge and sensing circuit
US8938603B2 (en) 2012-05-31 2015-01-20 Samsung Electronics Co., Ltd. Cache system optimized for cache miss detection
US20130332707A1 (en) 2012-06-07 2013-12-12 Intel Corporation Speed up big-number multiplication using single instruction multiple data (simd) architectures
KR102062301B1 (ko) 2013-01-03 2020-01-03 삼성전자주식회사 메모리 장치의 페이지 복사 방법 및 메모리 시스템의 페이지 관리 방법
US20140215185A1 (en) 2013-01-29 2014-07-31 Atmel Norway Fetching instructions of a loop routine
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9171153B2 (en) 2013-05-17 2015-10-27 Hewlett-Packard Development Company, L.P. Bloom filter with memory element
US8964496B2 (en) 2013-07-26 2015-02-24 Micron Technology, Inc. Apparatuses and methods for performing compare operations using sensing circuitry
US8971124B1 (en) 2013-08-08 2015-03-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9153305B2 (en) 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
US9019785B2 (en) 2013-09-19 2015-04-28 Micron Technology, Inc. Data shifting via a number of isolation devices
US9536577B2 (en) 2013-09-26 2017-01-03 Intel Corporation Data movement in memory devices
US9449675B2 (en) 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
US9430191B2 (en) 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
US20150270015A1 (en) 2014-03-19 2015-09-24 Micron Technology, Inc. Memory mapping
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
CN106462501B (zh) 2014-05-08 2019-07-09 美光科技公司 基于混合存储器立方体系统互连目录的高速缓冲存储器一致性方法
CN106415522B (zh) 2014-05-08 2020-07-21 美光科技公司 存储器内轻量一致性
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US9704540B2 (en) 2014-06-05 2017-07-11 Micron Technology, Inc. Apparatuses and methods for parity determination using sensing circuitry
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9847110B2 (en) 2014-09-03 2017-12-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication operations in memory
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US9740607B2 (en) * 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
US10163467B2 (en) 2014-10-16 2018-12-25 Micron Technology, Inc. Multiple endianness compatibility
US10147480B2 (en) 2014-10-24 2018-12-04 Micron Technology, Inc. Sort operation in memory
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9747960B2 (en) 2014-12-01 2017-08-29 Micron Technology, Inc. Apparatuses and methods for converting a mask to an index
US10073635B2 (en) 2014-12-01 2018-09-11 Micron Technology, Inc. Multiple endianness compatibility
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
US9898253B2 (en) 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US10146537B2 (en) 2015-03-13 2018-12-04 Micron Technology, Inc. Vector population count determination in memory
US10049054B2 (en) 2015-04-01 2018-08-14 Micron Technology, Inc. Virtual register file
US10140104B2 (en) 2015-04-14 2018-11-27 Micron Technology, Inc. Target architecture determination
US9959923B2 (en) 2015-04-16 2018-05-01 Micron Technology, Inc. Apparatuses and methods to reverse data stored in memory
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6269040B1 (en) * 2000-06-26 2001-07-31 International Business Machines Corporation Interconnection network for connecting memory cells to sense amplifiers
TW576970B (en) * 2000-12-22 2004-02-21 Hitachi Ltd Write method of non-volatile memory
CN1538540A (zh) * 2003-03-27 2004-10-20 三星电子株式会社 具有恢复功能的相变存储器和方法
US20080101395A1 (en) * 2006-10-30 2008-05-01 Raytheon Company System and Method for Networking Computer Clusters
US20100110748A1 (en) * 2007-04-17 2010-05-06 Best Scott C Hybrid volatile and non-volatile memory device
WO2016144726A1 (en) * 2015-03-12 2016-09-15 Micron Technology, Inc. Apparatuses and methods for data movement

Also Published As

Publication number Publication date
EP3602560A1 (en) 2020-02-05
KR20190121402A (ko) 2019-10-25
EP3602560A4 (en) 2021-01-13
KR102375680B1 (ko) 2022-03-18
TW201903769A (zh) 2019-01-16
US20180275883A1 (en) 2018-09-27
WO2018175121A1 (en) 2018-09-27
CN110476212B (zh) 2023-07-21
US11474965B2 (en) 2022-10-18
US10838899B2 (en) 2020-11-17
US20210073159A1 (en) 2021-03-11
CN110476212A (zh) 2019-11-19

Similar Documents

Publication Publication Date Title
TWI656533B (zh) 用於在資料路徑中計算之裝置及方法
TWI671744B (zh) 用於在記憶體中資料切換網路的裝置及方法
TWI622991B (zh) 用於快取操作之裝置及方法
US11594274B2 (en) Processing in memory (PIM)capable memory device having timing circuity to control timing of operations
CN109147842B (zh) 同时进行数据路径中计算操作的设备及方法
KR102292449B1 (ko) 메모리내 연산을 위한 장치 및 방법
CN108885887B (zh) 用于数据移动的设备及方法
TWI659427B (zh) 用於資料路徑內計算操作之裝置及方法
TWI660362B (zh) 用於記憶體內操作之裝置及方法